.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:12px;transform:translateY(-180%);z-index:1000;background:var(--panel);padding:10px 16px;border-radius:8px}.skip-link:focus{transform:none}.site-header{height:68px;display:flex;align-items:center;gap:32px;padding:0 max(24px,calc((100vw - 1152px)/2));position:relative;z-index:20;background:var(--panel);border-bottom:1px solid var(--line);white-space:nowrap}.site-brand{font-size:22px;font-weight:750;display:flex;align-items:center;gap:10px;color:var(--accent-deep)}.brand-symbol{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;color:white;background:var(--accent);font-size:21px}.site-nav{display:flex;gap:22px;align-items:center;flex:1;font-size:15px;font-weight:600}.site-nav a:hover,.nav-menu summary:hover{color:var(--accent-deep)}.nav-menu{position:relative}.nav-menu summary{list-style:none;cursor:pointer}.nav-menu summary:after{content:'⌄';font-size:13px;margin-left:6px}.nav-menu>div{position:absolute;top:34px;left:-16px;background:var(--panel);border:1px solid var(--line);border-radius:12px;min-width:130px;padding:8px;box-shadow:0 10px 30px #152f4118;display:grid;gap:3px}.nav-menu a{padding:7px 10px;border-radius:7px}.nav-menu a:hover{background:var(--accent-soft)}.nav-actions{display:flex;align-items:center;gap:5px;margin-left:auto}.nav-actions button{border:0;background:none;border-radius:8px;min-height:36px;min-width:32px;padding:5px 7px;font-size:19px;display:flex;align-items:center;justify-content:center;gap:6px}.nav-actions button:hover{background:var(--accent-soft)}.nav-actions span{font-size:12px;color:var(--muted)}[data-menu-toggle]{display:none!important}.site-footer{text-align:center;color:var(--muted);font-size:12px;line-height:1.8;padding:8px 24px 32px}.site-footer p{margin:2px}.site-footer a:hover{color:var(--accent-deep)}body[data-page-kind=home] .site-footer{color:#c5d7e6;position:relative;z-index:1;padding:4px 24px 12px}.navigation-progress{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;z-index:1000;transition:transform .25s ease}[data-navigating] .navigation-progress{transform:scaleX(.8);transition:transform 8s cubic-bezier(.05,.6,.1,1)}
dialog{color:var(--ink);border:1px solid var(--line);background:var(--panel);border-radius:20px;padding:24px;width:min(680px,calc(100vw - 32px));max-height:calc(100svh - 48px);box-shadow:0 22px 80px #071c3340}dialog::backdrop{background:#0a1e3280;backdrop-filter:blur(6px)}.dialog-header{display:flex;align-items:center;gap:16px;margin-bottom:18px}.dialog-header>div{flex:1;min-width:0}.dialog-header h2{font-size:20px;margin:0}.dialog-header p{font-size:12px;color:var(--muted);margin:3px 0 0}.dialog-header>button{margin-left:auto;flex-shrink:0}.dialog-header button,.form-actions button,.comment-toolbar button,.comment-list button,.comment-list+button{border:1px solid var(--line);background:var(--accent-soft);border-radius:8px;padding:7px 13px;color:var(--accent-deep);font-size:13px}.form-actions .primary-button{background:var(--accent);border-color:var(--accent);color:#fff}.form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;align-items:center}.form-status{font-size:13px;color:var(--muted);min-height:1.7em;margin:12px 0}.comment-form input,.comment-form textarea,.chat-form textarea,.search-dialog input{background:var(--page-bg);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:11px 13px;min-width:0;width:100%;outline-offset:2px}.comment-form textarea,.chat-form textarea{resize:vertical;max-height:260px}.comment-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.comment-form .form-actions{margin-top:10px}.comment-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--line);padding:12px 0}.comment-toolbar strong{margin-right:auto;font-size:15px}.comment-toolbar select{background:var(--panel);border:0;color:var(--muted);font-size:13px}.comment-item{padding:22px 0;border-bottom:1px solid var(--line)}.comment-item header{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap;font-size:14px}.comment-item time{font-size:11px;color:var(--muted)}.comment-body{font-size:14px;line-height:1.85;overflow-wrap:anywhere;margin:10px 0}.comment-body p{margin:0 0 8px}.comment-body a{color:var(--accent-deep);text-decoration:underline}.comment-body pre{overflow:auto;background:var(--page-bg);border-radius:8px;padding:12px}.comment-child{margin-left:20px;padding-left:16px;border-left:2px solid var(--line);border-bottom:0}.comment-reply{font-size:13px;color:var(--accent-deep);margin:0 0 8px}.search-dialog .dialog-header input{flex:1;font-size:17px}.search-results{display:grid;gap:10px}.search-result{display:block;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--page-bg)}.search-result:hover{border-color:var(--accent)}.search-result strong{font-size:16px;color:var(--accent-deep)}.search-result p{font-size:13px;color:var(--muted);margin:7px 0 0;overflow-wrap:anywhere}.chat-dialog{height:min(690px,calc(100svh - 36px));width:min(580px,calc(100vw - 24px));padding:20px}.chat-dialog[open]{display:flex;flex-direction:column}.chat-dialog .dialog-header{flex-shrink:0;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:0}.chat-portrait{width:48px;height:48px;object-fit:cover;border-radius:14px}.chat-messages{flex:1;overflow:auto;min-height:0;padding:20px 0;scrollbar-width:thin}.chat-empty{padding:50px 20px;text-align:center;color:var(--muted);font-size:14px}.chat-message{max-width:90%;padding:12px 15px;border-radius:14px;background:var(--page-bg);margin-bottom:14px;font-size:14px;line-height:1.9;overflow-wrap:anywhere}.chat-message p{margin:0;white-space:pre-wrap}.chat-message.user{margin-left:auto;background:var(--accent-soft);color:var(--accent-deep);border-bottom-right-radius:3px}.chat-message.assistant{border-bottom-left-radius:3px}.chat-sources{border-top:1px solid var(--line);margin-top:10px;padding-top:8px;display:grid;gap:6px}.chat-sources a{color:var(--accent-deep);font-size:12px;text-decoration:underline}.chat-form{flex-shrink:0}.chat-form .form-actions{margin-top:8px}.chat-dialog>.form-status{margin:2px 0 8px}
@media(max-width:1100px){.site-header{gap:20px;padding-inline:24px}.site-nav{gap:15px}.nav-actions span{display:none}}
@media(max-width:800px){.site-header{height:60px;padding-inline:18px}.site-brand{font-size:19px}.site-nav{display:none;position:absolute;left:12px;right:12px;top:65px;border-radius:14px;padding:18px;background:var(--panel);box-shadow:0 10px 40px #13243922;border:1px solid var(--line);max-height:calc(100svh - 90px);overflow:auto}.menu-open .site-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px}.nav-menu>div{position:static;box-shadow:none;min-width:0;margin-top:7px;background:var(--page-bg);font-size:13px}.nav-actions{gap:2px}[data-menu-toggle]{display:flex!important}.site-footer{padding-bottom:68px}.comment-child{margin-left:8px;padding-left:10px}}
@media(max-width:480px){dialog{padding:18px;border-radius:15px}.comment-meta{grid-template-columns:1fr;gap:8px}.site-header{gap:10px;padding-inline:12px}.site-brand{font-size:17px}.brand-symbol{width:26px;height:26px;font-size:18px}.nav-actions button{min-width:30px;padding-inline:5px}.chat-dialog .dialog-header{gap:10px}.chat-dialog .dialog-header h2{font-size:17px}.chat-dialog .dialog-header p{font-size:11px}.chat-portrait{width:40px;height:40px}.chat-message{max-width:94%}}
.chat-note{font-size:11px;color:var(--muted);text-align:center;margin:10px 0 0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.navigation-progress{transition:none!important}}
