/*
Theme Name: 娱星开发部
Author: 娱星开发部
Description: 娱星开发部出品的极简个人博客经典主题。
Version: 2.7.7
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: yuxing-dev
*/
:root{--cover-width:40%;--ink:#303332;--muted:#90938f;--line:#eee;--accent:#2f3332;--surface:#f8f8f7;--panel-padding:50px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.8;overflow-wrap:anywhere}
a{color:var(--accent);text-decoration:none;text-underline-offset:4px}
a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
img{max-width:100%;height:auto;vertical-align:middle}
button,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:wait;opacity:.55}
[hidden]{display:none!important}
h1,h2,h3,h4,h5,h6{line-height:1.4;color:var(--ink)}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;top:12px;left:12px;padding:10px 16px;background:#fff;z-index:1000;margin:0}
.site-cover{position:fixed;inset:0 auto 0 0;width:var(--cover-width);height:100vh;background:#fff;overflow:hidden}
.site-cover img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.site-panel{margin-left:var(--cover-width);min-height:100vh;display:flex;flex-direction:column;position:relative}
.site-header{position:relative;min-height:110px;padding:42px var(--panel-padding) 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:20px;z-index:20}
.site-home{font-size:13px;color:var(--muted);margin-right:auto}
.menu-toggle{display:block;width:30px;height:30px;border:0;background:transparent;padding:3px 0;position:relative}
.menu-toggle span{display:block;height:1px;background:var(--ink);margin:6px 0;transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.site-navigation{padding:24px;background:white;border:1px solid var(--line);flex-basis:100%}
.site-navigation .menu{padding:0;margin:0 0 20px;list-style:none}
.site-navigation .menu>li{margin:0 0 8px}
.site-navigation .sub-menu{padding-left:20px;list-style:none}
.site-navigation .current-menu-item>a{text-decoration:underline}
.content-main{width:100%;max-width:1060px;margin:0 auto;padding:0 var(--panel-padding) 35px;flex:1}
.entry-header{margin-bottom:55px}
.entry-header h1,.archive-header h1{font-size:34px;font-weight:700;letter-spacing:-.8px;margin:0 0 22px;line-height:1.4}
.post-meta{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--muted);font-size:12px;line-height:1.8}
.post-meta a{color:inherit}
.post-meta span[aria-hidden]{margin-right:4px}
.archive-header{margin:0 0 60px}
.archive-description{color:var(--muted);line-height:2;border-bottom:1px solid var(--line);padding:0 0 22px}
.archive-description p{margin:0}
.post-card{display:flex;gap:26px;border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:35px;align-items:flex-start}
.post-card-image{flex:0 0 26%;display:block;overflow:hidden;background:var(--surface)}
.post-card-image img{display:block;width:100%;aspect-ratio:10/7;object-fit:cover;transition:transform .25s}
.post-card-image:hover img{transform:scale(1.025)}
.post-card-default{background:#fff;border:1px solid var(--line);border-radius:12px}
.post-card-default img{object-fit:contain;padding:18px}
.post-card-body{flex:1;min-width:0}
.post-card h2{font-size:20px;font-weight:700;margin:0 0 10px;line-height:1.6}
.post-card .post-meta{gap:8px 16px}
.post-excerpt{color:#898c89;line-height:2;font-size:14px;margin-top:10px}
.post-excerpt p{margin:0}
.navigation{margin:40px 0}
.pagination .nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:13px}
.pagination .current{font-weight:bold;text-decoration:underline;text-underline-offset:5px}
.profile-main{flex:1;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:60px 35px}
.profile-card{text-align:center;width:100%}
.profile-avatar{width:140px;height:140px;object-fit:cover;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.avatar-placeholder{background:#e8edeb;color:#677d78;font-size:32px;font-weight:300;letter-spacing:3px}
.profile-card h1{font-size:30px;margin:20px 0;font-weight:700;letter-spacing:-.6px}
.profile-description{font-size:16px;line-height:1.9;width:70%;max-width:620px;margin:20px auto}
.profile-location{margin:22px 0 28px;font-size:14px}
.profile-navigation .menu{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;margin:0;padding:0}
.profile-navigation a{text-decoration:underline}
.profile-navigation .sub-menu{list-style:none;padding:0;margin-top:6px;font-size:12px}
.cu-front-card .site-header{display:none}
.site-footer{padding:20px var(--panel-padding) 30px;display:flex;gap:20px;justify-content:space-between;align-items:flex-start;color:var(--muted);font-size:12px;line-height:1.7}
.site-footer p{margin:0}
.site-footer p:last-child{text-align:right}
.site-footer a{color:inherit}
.site-footer p:first-child a{display:inline-block;margin-left:8px}
.entry-content{font-size:16px;line-height:2}
.entry-content::after{content:"";display:block;clear:both}
.entry-content p{margin:0 0 22px}
.entry-content h2{font-size:21px;margin:25px 0 24px}
.entry-content h3{font-size:19px;margin:25px 0 20px}
.entry-content h4{font-size:17px}
.entry-content a{text-decoration:underline}
.entry-content ul,.entry-content ol{padding-left:24px;margin:0 0 24px}
.entry-content li{margin:8px 0}
.entry-content blockquote{padding:12px 24px;margin:25px 0;background:var(--surface);border-left:4px solid #e4e5e2}
.entry-content blockquote p:last-child{margin:0}
.entry-content pre{padding:22px;background:#f4f5f3;font-size:13px;line-height:1.8;overflow:auto;white-space:pre;overflow-wrap:normal;border-radius:3px}
.entry-content code{font-family:Consolas,Menlo,monospace;font-size:.88em;background:#f4f5f3;padding:2px 5px}
.entry-content pre code{padding:0}
.entry-content table{border-collapse:collapse;width:100%;font-size:14px}
.entry-content td,.entry-content th{border:1px solid #e5e5e2;padding:10px 14px;text-align:left}
.entry-content .wp-block-table{overflow-x:auto;margin:25px 0}
.entry-content figure{margin:25px 0;max-width:100%}
.entry-content figcaption,.wp-caption-text{font-size:12px;text-align:center;color:var(--muted);margin:10px 0}
.entry-content .alignleft{float:left;margin:6px 24px 20px 0}
.entry-content .alignright{float:right;margin:6px 0 20px 24px}
.entry-content .aligncenter{display:block;margin:25px auto;clear:both}
.entry-content .alignwide{width:calc(100% + 40px);max-width:calc(100% + 40px);margin-left:-20px}
.entry-content .alignfull{width:calc(100% + 2 * var(--panel-padding));max-width:calc(100% + 2 * var(--panel-padding));margin-left:calc(-1 * var(--panel-padding))}
.entry-content hr{border:0;border-top:1px solid var(--line);margin:35px 0}
.entry-content iframe,.entry-content video{max-width:100%}
.entry-tags{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;margin:30px 0}
.entry-tags a::before{content:"#";color:var(--muted);margin-right:4px}
.post-navigation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;font-size:14px}
.post-navigation .nav-links{display:flex;justify-content:space-between;gap:25px}
.post-navigation .nav-previous,.post-navigation .nav-next{max-width:48%}
.post-navigation .nav-next{text-align:right;margin-left:auto}
.post-navigation span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}
.page-links{display:flex;gap:14px;margin:30px 0;font-size:14px}
.search-form{display:flex;gap:8px;max-width:450px;margin:18px 0}
input[type="text"],input[type="email"],input[type="url"],input[type="search"],input[type="password"],textarea{width:100%;min-width:0;border:1px solid #e8e9e6;border-radius:2px;padding:10px 12px;background:var(--surface);color:var(--ink)}
.search-form input{flex:1}
.search-form button,.submit,.post-password-form input[type="submit"]{border:1px solid var(--ink);padding:9px 18px;background:var(--ink);color:#fff;border-radius:2px;font-size:13px}
.empty-state{margin:35px 0 60px;color:var(--muted)}
.empty-state h2{font-size:20px}
.eyebrow{font-size:12px;color:var(--muted);letter-spacing:3px;margin:0 0 12px}
.archive-months{list-style:none;margin:10px 0;padding:0}
.archive-months li{padding:15px 0;border-bottom:1px solid var(--line);color:var(--muted)}
.archive-months a{display:inline-block;margin-right:20px}
.tag-directory{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}
.tag-directory a{padding:10px 16px;border:1px solid var(--line)}
.tag-directory small{margin-left:12px;color:var(--muted)}
.links-group{margin:35px 0}
.links-group h2{font-size:18px}
.links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.friend-link{padding:20px;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.friend-link span{font-size:12px;color:var(--muted)}
.comments-area{margin:45px 0 20px;font-size:14px}
.comments-title,.comment-reply-title{font-size:18px;font-weight:600;margin:0 0 25px}
.comment-list,.comment-list .children{list-style:none;padding:0}
.comment-list .children{margin-left:38px}
.comment-body{padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid var(--line);position:relative}
.comment-meta{font-size:12px;margin-bottom:12px;min-height:40px}
.comment-author .avatar{float:left;margin-right:12px;border-radius:50%}
.comment-author .fn{font-weight:500}
.comment-author .says{display:none}
.comment-metadata{color:var(--muted)}
.comment-metadata a{color:inherit}
.comment-content{padding-left:52px;line-height:1.9}
.comment-content p{margin:0 0 8px}
.comment-content pre{overflow:auto}
.comment-content a{text-decoration:underline}
.reply{font-size:12px;text-align:right}
.comment-awaiting-moderation{color:var(--muted);margin:8px 0}
.bypostauthor>.comment-body .fn::after{content:" · Author";color:var(--muted);font-size:11px}
.comment-form{display:flex;gap:14px;flex-wrap:wrap}
.comment-form p{margin:0}
.comment-form label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}
.comment-form .comment-form-comment,.comment-form .comment-notes,.comment-form .logged-in-as,.comment-form .comment-form-cookies-consent,.comment-form .form-submit,.comment-status{width:100%}
.comment-form-author,.comment-form-email,.comment-form-url{flex:1;min-width:0}
.comment-form textarea{resize:vertical;min-height:125px}
.comment-form .comment-form-cookies-consent{display:flex;align-items:flex-start;gap:8px}
.comment-form-cookies-consent input{margin-top:5px}
.comment-form-cookies-consent label{margin:0}
.comment-form .form-submit{text-align:right}
.comment-notes,.logged-in-as{font-size:12px;color:var(--muted)}
.comment-status{color:var(--muted);font-size:13px}
.comment-status.is-error{color:#b24639}
.comment-reply-title small{margin-left:15px;font-size:12px;font-weight:normal}
.admin-bar .site-cover{top:32px;height:calc(100vh - 32px)}
.admin-bar .site-panel{min-height:calc(100vh - 32px)}
.admin-bar .profile-main{min-height:calc(100svh - 32px)}
@media(min-width:1600px){:root{--panel-padding:70px}.profile-description{max-width:620px}}
@media(max-width:1100px){:root{--panel-padding:35px}.post-card{gap:20px}.post-card h2{font-size:18px}.profile-description{width:85%}.site-footer{flex-direction:column;gap:6px}.site-footer p:last-child{text-align:left}}
@media(max-width:960px){:root{--cover-width:0%;--panel-padding:32px}.site-cover{display:none}.site-panel{margin-left:0}.content-main{max-width:820px}.site-header{min-height:100px;max-width:820px;width:100%;margin:auto;padding-top:32px}.site-footer{max-width:820px;width:100%;margin:auto}.post-card-image{flex-basis:26%}}
@media(max-width:640px){:root{--panel-padding:24px}.site-header{min-height:90px;padding-top:26px}.content-main{padding-bottom:20px}.entry-header h1,.archive-header h1{font-size:28px}.entry-header{margin-bottom:35px}.archive-header{margin-bottom:35px}.post-card{gap:16px;padding-bottom:26px;margin-bottom:26px}.post-card h2{font-size:17px;line-height:1.5}.post-card .post-meta{gap:6px 12px;font-size:11px}.post-excerpt{line-height:1.9;font-size:13px}.post-card-image{flex-basis:28%}.entry-content{font-size:15px}.entry-content .alignwide{width:100%;max-width:100%;margin-left:0}.entry-content .alignleft,.entry-content .alignright{float:none;margin:20px 0}.profile-main{padding:50px 24px}.profile-avatar{width:120px;height:120px}.profile-card h1{font-size:28px}.profile-description{width:100%;max-width:440px;font-size:15px}.profile-navigation .menu{gap:12px 18px}.site-footer{font-size:11px;padding-bottom:24px}.cu-front-card .site-footer{text-align:center;align-items:center}.cu-front-card .site-footer p:last-child{text-align:center}.links-grid{grid-template-columns:1fr}.comment-form-author,.comment-form-email,.comment-form-url{flex-basis:100%}.comment-list .children{margin-left:20px}.comment-content{padding-left:0}.post-navigation .nav-links{font-size:13px}.site-home{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{.site-cover,.site-header,.site-footer,.comments-area,.post-navigation{display:none}.site-panel{margin:0}.content-main{padding:0;max-width:none}.entry-content{font-size:12pt}}

.post-read-more{text-align:center;margin:35px 0}
.post-read-more a{display:inline-block;min-width:120px;border:2px solid #ccc;padding:4px 20px;font-size:12px;transition:background .2s,color .2s,border-color .2s}
.post-read-more a:hover,.post-read-more a.loading{background:var(--ink);border-color:var(--ink);color:white;text-decoration:none}
.post-read-more span{display:block;font-size:12px;color:var(--muted);margin-top:10px}
.typing-particles{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1003}
.admin-bar.navigation-enhanced .menu-toggle{top:72px}
.admin-bar.navigation-enhanced .site-navigation{top:32px;height:calc(100dvh - 32px)}
@media(max-width:640px){.navigation-enhanced .menu-toggle{top:15px;right:10px}.site-navigation .profile-card h2{font-size:28px}.admin-bar.navigation-enhanced .menu-toggle{top:61px}.admin-bar.navigation-enhanced .site-navigation{top:46px;height:calc(100dvh - 46px)}}
@media(prefers-reduced-motion:reduce){.navigation-enhanced .site-navigation,.navigation-enhanced .menu-toggle,.navigation-enhanced .menu-toggle span{transition:none}.typing-particles{display:none}}


/* Navigation: SVG path morph + actual width tween. */
.navigation-enhanced .menu-toggle{position:fixed;right:30px;top:40px;width:60px;height:60px;z-index:1002;padding:0;border:0;background:transparent;transform:none;transition:none}
.menu-toggle svg{display:block;width:100%;height:100%;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform 400ms}
.menu-toggle .active{transform:rotate(45deg)}
.menu-toggle .line{fill:none;transition:stroke-dasharray 400ms,stroke-dashoffset 400ms;stroke:#000;stroke-width:2;stroke-linecap:round}
.menu-toggle .top{stroke-dasharray:40 139}
.menu-toggle .bottom{stroke-dasharray:40 180}
.menu-toggle .active .top{stroke-dashoffset:-98px}
.menu-toggle .active .bottom{stroke-dashoffset:-138px}
.navigation-enhanced .site-navigation{position:fixed;inset:0 auto 0 0;width:100%;height:100vh;display:flex;align-items:center;justify-content:center;border:0;box-shadow:none;overflow:hidden;padding:0;z-index:1001;transition:none;background:#fff}
.site-navigation .profile-card{width:auto;max-width:none;margin:auto;font-weight:300;flex-shrink:1;min-width:0}
.site-navigation .profile-avatar{width:140px;height:140px}
.site-navigation .profile-card h2{font-size:30px;margin:20px 0;font-weight:700}
.site-navigation .profile-description{font-size:16px;line-height:30px;width:70%;max-width:none;margin:20px auto}
.site-navigation .profile-location{margin:0;font-size:14px;line-height:1.8}
.site-navigation .profile-navigation .menu{display:block;padding:0;margin:20px 0 0;list-style:none}
.site-navigation .profile-navigation .menu>li{display:inline-block;margin:6px}
.admin-bar.navigation-enhanced .menu-toggle{top:72px}
.admin-bar.navigation-enhanced .site-navigation{top:32px;height:calc(100vh - 32px)}
@media(max-width:768px){.navigation-enhanced .menu-toggle{top:15px;right:0;width:50px;height:50px}.site-navigation .profile-card{width:90%}.site-navigation .profile-description{width:100%}.admin-bar.navigation-enhanced .menu-toggle{top:61px}.admin-bar.navigation-enhanced .site-navigation{top:46px;height:calc(100vh - 46px)}}
@media(prefers-reduced-motion:reduce){.menu-toggle svg,.menu-toggle .line{transition:none}.typing-particles{display:none}}

.no-cover .site-panel{margin-left:0;width:100%}
.no-cover .content-main,.no-cover .site-header,.no-cover .site-footer{max-width:none;width:100%}

/* Brand proportions and an anchored reading column across desktop sizes. */
@media(min-width:961px){
 :root{--cover-width:min(36vw,760px);--panel-padding:clamp(28px,3vw,64px)}
 .content-main{max-width:1280px;margin-left:0;margin-right:0}
 .site-footer{max-width:1280px}
 .entry-content{max-width:78ch}
}
.profile-card img.profile-avatar{display:block;width:auto;height:auto;max-width:min(100%,420px);max-height:200px;object-fit:contain;border-radius:0;margin:0 auto}
.profile-main .profile-card{max-width:760px}
.profile-main .profile-description{width:100%;max-width:560px;margin:24px auto;line-height:1.9}
.profile-card h1{margin:28px 0 16px}
@media(max-width:640px){.profile-card img.profile-avatar{max-width:min(100%,320px);max-height:160px}.profile-main{padding:48px 24px}.profile-card h1{margin-top:24px}}

/* Compact editorial lists: brand icon, readable copy and one row target. */
@media(min-width:961px){:root{--cover-width:min(25vw,620px);--panel-padding:clamp(28px,3vw,64px)}}
.post-card{position:relative;align-items:flex-start;gap:22px;margin:0;padding:24px 12px;border-bottom:1px solid var(--line);border-radius:10px;transition:background-color .2s}
.post-card:hover,.post-card:focus-within{background:#f7f9fb}
.post-card-image{flex:0 0 148px;border-radius:8px}
.post-card-image img{aspect-ratio:4/3}
.post-card-default{flex:0 0 56px;width:56px;border:0;border-radius:0;background:transparent;margin-top:3px}
.post-card-default img{width:56px;height:56px;aspect-ratio:1;object-fit:contain;padding:0;transform:none}
.post-card-default:hover img{transform:none}
.post-card h2{font-size:19px;line-height:1.55;margin:0 0 8px}
.post-card h2 a{transition:color .2s}
.post-card h2 a::after{content:"";position:absolute;inset:0;border-radius:10px}
.post-card h2 a:hover{color:#087fa2;text-decoration:none}
.post-card .post-meta{position:relative;z-index:1;font-size:12px;color:#838b94}
.post-excerpt{font-size:14px;line-height:1.8;color:#626c76;margin-top:8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.archive-header{margin-bottom:24px}
@media(max-width:640px){.post-card{gap:14px;padding:20px 4px}.post-card-default{flex-basis:48px;width:48px}.post-card-default img{width:48px;height:48px}.post-card-image:not(.post-card-default){flex-basis:96px}.post-card h2{font-size:17px}.post-excerpt{font-size:13px}}
@media(prefers-reduced-motion:reduce){.post-card,.post-card h2 a{transition:none}}

/* Reading rhythm for service documentation and long tutorials. */
:root{--ink:#27313c;--muted:#77828e;--line:#e9edf1}
.single .content-main{max-width:960px}
.single .entry-content{max-width:100%;font-size:16px;line-height:1.9;color:#374351}
.single .entry-header{padding-bottom:26px;margin-bottom:32px;border-bottom:1px solid var(--line)}
.entry-header h1,.archive-header h1{font-size:clamp(27px,2.1vw,38px);line-height:1.4;letter-spacing:0;font-weight:700;text-wrap:pretty}
.single .entry-header h1{margin-bottom:16px}
.entry-content p{margin:0 0 1.4em}
.entry-content h2{font-size:25px;margin:2em 0 .8em;line-height:1.45;padding-bottom:10px;border-bottom:1px solid var(--line)}
.entry-content h3{font-size:20px;margin:1.6em 0 .75em;line-height:1.5}
.entry-content h4{font-size:17px;margin:1.4em 0 .65em}
.entry-content h2,.entry-content h3,.entry-content h4{scroll-margin-top:40px}
.entry-content ul,.entry-content ol{padding-left:1.5em;margin:0 0 1.5em}
.entry-content li{margin:.55em 0;padding-left:.2em}
.entry-content li>ul,.entry-content li>ol{margin:.7em 0 1em}
.entry-content li::marker{color:#63788b;font-weight:600}
.entry-content a{color:#087fa2;text-decoration-color:#b8dbe5;text-underline-offset:4px}
.entry-content a:hover{text-decoration-color:currentColor}
.entry-content img{height:auto;border-radius:8px}
.entry-content figure{margin:30px 0}
.entry-content blockquote{border-left:3px solid #79b5ca;background:#f5f9fb;border-radius:0 8px 8px 0;padding:18px 22px;margin:28px 0}
.entry-content pre{background:#f4f6f8;border:1px solid var(--line);border-radius:10px;padding:20px;tab-size:4}
.entry-content :not(pre)>code{background:#f1f4f7;border-radius:4px;padding:3px 6px}
.entry-content th{background:#f5f7f9;font-weight:600}
.entry-content td,.entry-content th{border-color:var(--line);padding:12px 16px}
.post-navigation{margin-top:40px;padding:24px 0}
.post-navigation .nav-links a{display:block;line-height:1.7}
.post-navigation .nav-links a span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}
.profile-main .profile-navigation .menu{gap:12px;max-width:700px;margin:0 auto}


@media(max-width:640px){.single .entry-content{font-size:15px;line-height:1.85}.single .entry-header{padding-bottom:20px;margin-bottom:26px}.entry-content h2{font-size:22px}.entry-content h3{font-size:19px}.post-navigation .nav-links{gap:18px}.profile-main .profile-navigation .menu{gap:10px}.profile-main .profile-navigation .menu>li>a{font-size:13px}.entry-content blockquote{padding:16px}.entry-content .alignwide{width:100%;max-width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){.profile-main .profile-navigation .menu>li>a{transition:none}}

/* Service navigation and document aids. */
.profile-main .profile-navigation .menu>li>a{padding:0;background:none;border:0;border-radius:0;text-decoration:none}
.profile-main .profile-navigation .menu>li>a:hover{background:none;color:var(--accent);text-decoration:underline}
.home-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px;max-width:700px;margin:0 auto;text-align:left}
.home-group h2{font-size:13px;font-weight:500;color:var(--muted);margin:0 0 12px}
.home-group ul{display:flex;gap:10px 20px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.home-group a{font-size:14px;text-decoration:none;line-height:1.8}
.home-group a:hover{text-decoration:underline}
.contact-strip{margin:0 auto 32px;font-size:14px;line-height:1.8}
.contact-strip button{border:0;border-bottom:1px solid #c8d2da;background:none;color:var(--ink);padding:0;margin-left:12px;font-size:12px}
.contact-strip p{font-size:13px;color:var(--muted);margin:8px 0 0}
.copy-status{display:block;font-size:12px;color:#477c64}
.document-search{display:flex;gap:12px;border-bottom:1px solid #cad3dc;margin-top:24px;padding-bottom:10px;max-width:620px}
.document-search input[type=search]{flex:1;width:100%;min-width:0;border:0;background:none;padding:6px 0;color:var(--ink);font-size:14px;appearance:none}
.document-search button{border:0;background:none;padding:6px 12px;color:var(--ink);flex-shrink:0}
.document-categories{display:flex;flex-wrap:wrap;gap:12px 22px;margin:20px 0 12px;font-size:13px}
.document-categories a{color:#677583}
.document-categories [aria-current]{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:6px}
.article-toc{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 32px;padding:16px 0;font-size:14px}
.article-toc summary{cursor:pointer;font-weight:600}
.article-toc ol{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:9px}
.article-toc .toc-sub{padding-left:18px;font-size:13px}
.article-toc a{color:#586b7b;text-decoration:none}
.article-toc a:hover{text-decoration:underline}
.download-resource,.entry-content .wp-block-file{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0;font-size:15px}
.download-resource>div{min-width:0}.download-resource strong{display:block;font-size:16px}
.download-resource p{font-size:13px;color:var(--muted);margin:6px 0 0}
.download-resource>a{flex-shrink:0;font-size:13px}
.entry-content .wp-block-file__button{background:#eef4f7;color:#245e75;border-radius:6px;font-size:13px;padding:8px 14px;text-decoration:none}
.entry-content .wp-block-file:has(object){display:block}
@media(max-width:640px){.home-groups{gap:24px;grid-template-columns:1fr;width:100%}.home-group ul{gap:10px 18px}.download-resource{align-items:flex-start;flex-direction:column;gap:12px}.document-categories{gap:12px 18px}.article-toc{margin-bottom:26px}}

/* Keep the sidebar artwork secondary to the reading column. */
@media(min-width:961px){
 :root{--cover-width:min(22vw,500px)}
 .site-cover{display:flex;align-items:center;justify-content:center;border-right:1px solid #f2f4f6}
 .site-cover img{width:84%;height:90%;object-fit:contain;opacity:.62;filter:saturate(.65)}
}
.site-navigation .home-group h2{font-size:13px;font-weight:500;color:var(--muted);margin:0 0 12px}
.site-navigation .home-groups{padding:0 24px}

/* Subpages reuse the homepage identity instead of decorative cover art. */
.profile-sidebar{display:none}
@media(min-width:961px){
 .has-profile-sidebar{--cover-width:clamp(260px,24vw,360px)}
 .profile-sidebar{display:flex;position:fixed;inset:0 auto 0 0;width:var(--cover-width);height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:56px 28px 32px;border-right:1px solid var(--line);background:#fff}
 .profile-sidebar .profile-card{margin:auto 0;text-align:left;min-width:0}
 .profile-sidebar .profile-avatar{max-width:100%;max-height:120px;margin:0;object-fit:contain}
 .profile-sidebar h2{font-size:21px;margin:24px 0 14px}
 .profile-sidebar .profile-description{width:100%;font-size:13px;line-height:1.85;margin:0 0 18px}
 .profile-sidebar .profile-location{font-size:12px;color:var(--muted);margin:0 0 22px}
 .profile-sidebar .contact-strip{font-size:13px;margin:0 0 28px}
 .profile-sidebar .contact-strip button{margin:8px 0 0;display:block}
 .profile-sidebar .home-groups{grid-template-columns:1fr;gap:24px}
 .profile-sidebar .home-group a{font-size:13px}
 .profile-sidebar .profile-navigation .menu{justify-content:flex-start;gap:12px 18px}
 .profile-sidebar .profile-navigation a{text-decoration:none}
 .profile-sidebar .profile-navigation a:hover{text-decoration:underline}
 .profile-sidebar .profile-navigation .sub-menu{margin-top:8px}
}
.profile-sidebar .home-group h2{font-size:13px;font-weight:500;color:var(--muted);margin:0 0 12px}
.admin-bar .profile-sidebar{top:32px;height:calc(100dvh - 32px)}

/* Approved compact sidebar: small brand, quick links, collapsible groups. */
@media(min-width:961px){
 .has-profile-sidebar{--cover-width:272px}
 .profile-sidebar{padding:36px 28px}
 .profile-sidebar .profile-card{display:flex;flex-direction:column;min-height:100%;margin:0;width:100%}
 .profile-sidebar .sidebar-brand{display:block;margin-bottom:36px}
 .profile-sidebar img.profile-avatar{width:auto;height:auto;max-width:190px;max-height:90px;margin:0}
 .profile-sidebar .avatar-placeholder{width:90px;height:90px}
 .sidebar-quick{display:grid;gap:6px;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:20px}
 .sidebar-quick a{display:block;padding:7px 10px;border-radius:5px;font-size:14px}
 .sidebar-quick [aria-current]{background:#f3f7f9;color:#176c83;font-weight:600}
 .sidebar-caption{font-size:11px;color:#94a0ab;letter-spacing:1px;margin:0 0 12px 10px}
 .sidebar-category{margin-bottom:8px}
 .sidebar-category summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#5b6875;padding:9px 10px}
 .sidebar-category summary::-webkit-details-marker{display:none}
 .sidebar-category summary::after{content:'＋';color:#94a0ab;flex-shrink:0}
 .sidebar-category[open] summary::after{content:'−'}
 .sidebar-category-links{display:grid;margin:4px 0 12px 10px;border-left:1px solid #e4eaee;padding-left:12px}
 .sidebar-category-links a{font-size:13px;padding:7px 10px;color:#65717c}
 .sidebar-category-links [aria-current]{color:#087fa2;font-weight:600}
 .sidebar-quick a:hover,.sidebar-category-links a:hover{color:#087fa2}
 .profile-sidebar .sidebar-contact{margin:auto 0 0;padding:32px 10px 0;font-size:12px;color:#82909b}
 .sidebar-contact>span,.sidebar-contact strong{display:block}
 .sidebar-contact strong{color:#52606d;font-weight:500;margin-top:3px}
 .profile-sidebar .sidebar-contact button{font-size:12px;color:#647582;margin-top:6px;align-self:flex-start}
}
/* Homepage categories share menu data with fullscreen navigation. */
.home-hover-navigation .home-groups{display:flex;justify-content:center;flex-wrap:wrap;gap:16px 38px;max-width:700px}
.home-hover-navigation .home-group{position:relative;text-align:left}
.home-hover-navigation summary{list-style:none;font-size:15px;font-weight:400;color:#556170;cursor:pointer;padding:8px 0;border-bottom:1px solid transparent}
.home-hover-navigation summary::-webkit-details-marker{display:none}
.home-hover-navigation summary:hover,.home-hover-navigation details[open]>summary{color:#233c50;border-bottom-color:currentColor}
.home-hover-navigation .home-group ul{position:absolute;top:100%;left:50%;transform:translateX(-50%);z-index:20;min-width:250px;max-width:min(340px,calc(100vw - 48px));display:flex;flex-direction:column;gap:14px;margin:10px 0 0;padding:22px 26px;background:#fff;border:1px solid #edf0f3;border-radius:12px;box-shadow:0 16px 48px #21364d0c;animation:home-nav-fade .18s ease}
.home-hover-navigation .home-group:not([open]) ul{display:none}
.home-hover-navigation .home-group ul:before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.home-hover-navigation .home-group li{margin:0;width:100%}.home-hover-navigation .home-group a{display:block;overflow-wrap:anywhere;font-size:14px}
@keyframes home-nav-fade{from{opacity:0}to{opacity:1}}
@media(max-width:640px){.home-hover-navigation .home-groups{gap:12px 26px}.home-hover-navigation .home-group{position:static}.home-hover-navigation{position:relative}.home-hover-navigation .home-group ul{left:0;right:0;transform:none;top:100%;width:100%;max-width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.home-hover-navigation .home-group ul{animation:none}}
/* Render native menu hierarchy without creating or hiding entries. */
.home-hover-navigation>.menu{display:flex;justify-content:center;flex-wrap:wrap;gap:16px 38px;list-style:none;padding:0}
.home-hover-navigation .menu li{position:relative;margin:0}.home-hover-navigation .menu>.menu-item>a{display:block;padding:8px 0}
.home-hover-navigation .menu .sub-menu{display:none;position:absolute;top:100%;left:0;z-index:20;min-width:240px;padding:20px 24px;list-style:none;background:#fff;border:1px solid #edf0f3;border-radius:12px;box-shadow:0 16px 48px #21364d0c;text-align:left}
.home-hover-navigation .menu li:hover>.sub-menu,.home-hover-navigation .menu li:focus-within>.sub-menu{display:block}.home-hover-navigation .menu .sub-menu li{display:block;margin:0 0 10px}.home-hover-navigation .menu .sub-menu a{display:block}.home-hover-navigation .menu .sub-menu .sub-menu{left:100%;top:0}
.sidebar-native-menu,.sidebar-native-menu ul{list-style:none;padding:0;margin:0}.sidebar-native-menu>li{margin:18px 0}.sidebar-native-menu ul{padding-left:14px;border-left:1px solid #edf0f3;margin:10px 0}.sidebar-native-menu ul li{margin:8px 0}.sidebar-native-menu a{font-size:13px}
@media(max-width:640px){.home-hover-navigation .menu .sub-menu{min-width:190px;max-width:calc(100vw - 48px)}.home-hover-navigation .menu .sub-menu .sub-menu{position:static;border:0;box-shadow:none;padding:10px}}
.home-hover-navigation .menu>.menu-item-has-children>a{display:inline-block}.submenu-toggle{background:none;border:0;padding:8px 6px;color:var(--muted);cursor:pointer}.home-hover-navigation .menu li.submenu-open>.sub-menu{display:block}
@media(hover:none){.home-hover-navigation .menu li:hover>.sub-menu,.home-hover-navigation .menu li:focus-within>.sub-menu{display:none}.home-hover-navigation .menu li.submenu-open>.sub-menu{display:block}}
/* Keep plain links and submenu controls on the same row baseline. */
.profile-main .home-hover-navigation>.menu{align-items:center;column-gap:22px;row-gap:12px}
.profile-main .home-hover-navigation>.menu>li{display:inline-flex;align-items:center;min-height:40px;line-height:1.5}
.profile-main .home-hover-navigation>.menu>li>a{display:inline-flex;align-items:center;min-height:40px;padding:0;line-height:1.5}
.home-hover-navigation .submenu-toggle{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:28px;height:40px;padding:0;line-height:1;flex:none;font-size:0}
.home-hover-navigation .submenu-toggle:after{content:"";width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.home-hover-navigation .submenu-toggle[aria-expanded="true"]:after{transform:translateY(2px) rotate(225deg)}
/* Continuous hit area from navigation to dropdown; JS adds exit tolerance. */
.home-hover-navigation .menu .sub-menu{margin:0;padding-top:20px}
.home-hover-navigation .menu .sub-menu:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
.home-hover-navigation .menu .sub-menu li{margin:0}
.home-hover-navigation .menu .sub-menu a{padding:8px 0;line-height:1.6}
.home-hover-navigation .menu li.submenu-enhanced:hover>.sub-menu,.home-hover-navigation .menu li.submenu-enhanced:focus-within>.sub-menu{display:none}
.home-hover-navigation .menu li.submenu-enhanced.submenu-open>.sub-menu{display:block}
/* Full-screen navigation uses explicit submenu disclosure. */
#site-navigation .profile-navigation .menu>li{position:relative;align-self:flex-start;line-height:40px}
#site-navigation .submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:40px;padding:0;font-size:0;vertical-align:middle}
#site-navigation .submenu-toggle:after{content:"";width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg)}
#site-navigation .submenu-toggle[aria-expanded="true"]:after{transform:translateY(2px) rotate(225deg)}
#site-navigation .submenu-enhanced>.sub-menu{display:none}
#site-navigation .submenu-enhanced.submenu-open>.sub-menu{display:block;margin:6px 0 0;padding:0 12px;text-align:left;line-height:1.6}
#site-navigation .sub-menu li{margin:0}
#site-navigation .sub-menu a{display:inline-block;padding:8px 0}
