/* tutorials.css */
/* Guide Sans character ranges are supplied by font-subsets.css. */
:root{--bg:#080611;--text:#f7f8ff;--muted:#a7adc2;--cyan:#70f3ed;--violet:#a494ff;--line:rgba(171,177,218,.16);--radius:14px;color-scheme:dark;font-family:Guide Sans,"Microsoft YaHei",sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;min-width:320px;font-size:15px;line-height:1.8;background:radial-gradient(ellipse 60% 400px at 80% 0,rgba(108,70,196,.13),transparent),var(--bg)}a{color:inherit;text-decoration:none;text-underline-offset:4px}button{font:inherit;cursor:pointer;color:inherit}a,button{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:default;opacity:.45}button[hidden],[hidden]{display:none!important}::selection{color:#080611;background:var(--cyan)}:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}*{scrollbar-width:thin;scrollbar-color:#46445c #0d0c18}img,svg{display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.35;font-weight:650;text-wrap:balance}p{color:var(--muted)}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip-link{position:fixed;z-index:20;left:20px;top:-80px;padding:12px 20px;background:var(--cyan);color:var(--bg)}.skip-link:focus{top:12px}.tutorial-header{position:sticky;top:0;z-index:10;background:rgba(8,6,17,.88);backdrop-filter:blur(22px);border-bottom:1px solid var(--line)}.header-inner{max-width:1280px;margin:auto;min-height:83px;padding:0 40px;display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:11px;font-size:17px;font-weight:650;white-space:nowrap}.brand-mark{width:29px;height:29px;color:var(--cyan);fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}#top-nav{display:flex;gap:34px;margin:auto;font-size:14px;color:var(--muted)}#top-nav a{position:relative;padding:28px 0}#top-nav a:hover,#top-nav a[aria-current]{color:var(--text)}#top-nav a[aria-current]:after{content:"";position:absolute;bottom:17px;height:2px;background:var(--cyan);left:0;right:0}.back-home{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.back-home:hover{color:var(--cyan)}.menu-toggle{display:none;background:transparent;padding:10px}.tutorial-wrap{max-width:1180px;margin:auto;padding:0 40px}.tutorial-intro{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:64px 0 38px}.intro-copy h1{font-size:40px;letter-spacing:-.035em}.intro-copy p{margin-top:14px;font-size:16px;max-width:650px}.intro-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;color:var(--muted);width:155px;flex-shrink:0}.intro-note>span:last-child{width:100%;text-align:right;font-size:11px;color:#8e95b0}.note-dot{width:5px;height:5px;background:var(--cyan);border-radius:50%;display:inline-block}.topic-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:35px;overflow:auto}.topic-tabs a{display:flex;align-items:center;gap:9px;padding:13px 0 17px;white-space:nowrap;position:relative;color:var(--muted);font-size:14px}.topic-tabs img{width:21px;height:21px;object-fit:contain}.white-logo{filter:brightness(0) invert(1)}.topic-tabs a:hover{color:var(--text)}.topic-tabs a[aria-current]{color:var(--text)}.topic-tabs a[aria-current]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--violet)}.route-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.route-intro p{font-size:13px}.save-label{font-size:11px;color:#9ca5bb;display:flex;align-items:center;gap:6px}.route-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:26px}.route-choice{padding:18px 20px;text-align:left;border:1px solid var(--line);border-radius:10px;background:transparent;position:relative;transition:background .2s,border-color .2s}.route-choice strong{display:block;font-size:14px;font-weight:550}.route-choice small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.route-choice.selected{border-color:rgba(164,148,255,.57);background:rgba(132,108,217,.1)}.route-choice.selected:after{content:"";position:absolute;right:15px;top:21px;width:6px;height:6px;background:var(--violet);border-radius:50%}.route-choice:hover{background:rgba(164,148,255,.07)}.reading-workspace{display:grid;grid-template-columns:224px minmax(0,1fr);align-items:start;gap:35px}.guide-sidebar{padding-top:24px;position:sticky;top:108px}.progress-copy{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}.progress-copy strong{color:var(--cyan);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}progress{width:100%;height:3px;border:0;display:block;margin:12px 0 24px;appearance:none;background:#252235;border-radius:3px;overflow:hidden}progress::-webkit-progress-bar{background:#252235}progress::-webkit-progress-value{background:var(--cyan)}progress::-moz-progress-bar{background:var(--cyan)}#step-nav{display:grid;gap:4px}.step-nav-button{display:flex;align-items:center;gap:13px;text-align:left;background:transparent;width:100%;padding:12px;font-size:13px;border-radius:9px;color:var(--muted)}.step-nav-button:hover{color:var(--text);background:rgba(255,255,255,.035)}.step-nav-button.active{color:var(--text);background:rgba(164,148,255,.1)}.step-nav-num{width:23px;height:23px;display:grid;place-items:center;color:#8189a6;font-variant-numeric:tabular-nums;font-size:11px;border:1px solid #393649;border-radius:50%;flex-shrink:0}.step-nav-num .icon{width:13px;height:13px;color:var(--cyan)}.step-nav-button.active .step-nav-num{border-color:var(--violet);color:var(--violet)}.reset-link{background:transparent;color:#989fb8;padding:17px 12px;font-size:11px;text-decoration:underline;text-underline-offset:4px}.reset-link:hover{color:var(--text)}.step-content{background:linear-gradient(145deg,rgba(25,26,45,.75),rgba(16,16,29,.8));border:1px solid var(--line);border-radius:var(--radius);padding:34px 36px;min-height:590px;scroll-margin-top:105px}.step-title-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.step-title-row h2{font-size:24px;letter-spacing:-.02em}.step-counter{font-size:11px;color:#8991ab;white-space:nowrap;font-variant-numeric:tabular-nums}.step-summary{margin:16px 0 28px;font-size:14px;max-width:65ch;line-height:1.85}.task-list{list-style:none;counter-reset:tasks;margin:0;padding:0;display:grid;gap:23px}.task-list li{display:flex;gap:16px}.task-number{font-size:11px;color:var(--violet);line-height:27px;font-variant-numeric:tabular-nums}.task-list strong{display:block;font-size:14px;font-weight:550;color:var(--text);margin-bottom:5px}.task-list li p{font-size:13px;line-height:1.9;max-width:68ch}.step-resource{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{min-height:43px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;padding:10px 16px;font-size:12px;line-height:1.5;font-weight:550;transition:background .18s,transform .18s}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--cyan);color:#092626}.button.primary:hover{background:#a5fff9}.button.secondary{border:1px solid #454155;background:rgba(8,6,17,.2);color:var(--text)}.button.secondary:hover{background:rgba(164,148,255,.12)}.button .icon{width:16px;height:16px}.text-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#c2b9ed}.text-link:hover{color:var(--cyan)}.text-link .icon{width:15px;height:15px}.step-note{font-size:11px;line-height:1.85;color:#a0a8bf;margin-top:18px;max-width:76ch}.step-footer{border-top:1px solid var(--line);padding-top:23px;margin-top:28px;justify-content:space-between;align-items:center;gap:16px}.skip-step{background:none;font-size:12px;color:var(--muted);padding:10px 0;margin-left:auto}.skip-step:hover{color:var(--text)}.completion-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:23px}.completion-symbol{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(112,243,237,.4);border-radius:50%;color:var(--cyan)}.completion-content h2{font-size:27px}.completion-content p{font-size:14px;max-width:53ch}.section-summary{max-width:710px;color:var(--muted);font-size:14px;margin-bottom:26px}.static-article{max-width:740px;margin:0 auto;border-top:1px solid var(--line)}.article-block{padding:30px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:42px 1fr;gap:18px}.article-number{color:var(--violet);font-size:12px;font-variant-numeric:tabular-nums;padding-top:5px}.article-block h2{font-size:21px;margin-bottom:11px}.article-block p{font-size:14px;line-height:1.95;max-width:66ch}.article-block p+p{margin-top:10px}.article-block .text-link,.article-block .button{margin-top:18px}.article-callout{padding:23px 0 12px;color:var(--muted);font-size:12px}.article-callout a{color:var(--cyan);text-decoration:underline}.more-intro{margin:0 0 30px;font-size:15px;max-width:760px}.tool-directory{border-top:1px solid var(--line)}.tool-row{padding:28px 0;display:grid;grid-template-columns:50px 180px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid var(--line)}.tool-logo{height:35px;width:35px;object-fit:contain}.tool-monogram{font-size:18px;font-weight:650;color:var(--violet);text-align:center}.tool-row h2{font-size:18px}.tool-row h2 small{display:block;margin-top:5px;color:var(--muted);font-weight:400;font-size:11px}.tool-row p{font-size:13px;line-height:1.85;padding-right:20px;max-width:67ch}.help-section{display:grid;grid-template-columns:270px 1fr;gap:72px;padding:78px 0 65px;margin-top:25px}.help-section h2{font-size:26px}.help-section>div>p{font-size:13px;margin:16px 0 23px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:14px;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}summary::-webkit-details-marker{display:none}summary .icon{width:16px;height:16px;color:var(--muted);transition:transform .2s}details[open] summary .icon{transform:rotate(45deg)}details p{font-size:13px;line-height:1.95;padding:0 25px 23px 0}details a{color:var(--cyan);text-decoration:underline}.tutorial-footer{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:34px 40px;border-top:1px solid var(--line)}.tutorial-footer .brand{font-size:13px}.tutorial-footer .brand-mark{width:25px;height:25px;font-size:11px}.tutorial-footer p{font-size:11px;line-height:1.8}.tutorial-footer>a:last-child{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}dialog{color:var(--text);background:#171523;padding:28px;max-width:430px;width:calc(100% - 36px);border:1px solid #514b67;border-radius:14px}dialog::backdrop{background:rgba(4,2,10,.78);backdrop-filter:blur(6px)}dialog h2{font-size:23px}dialog p{font-size:13px;margin:14px 0 23px}.dialog-actions{display:flex;gap:12px;justify-content:flex-end}.toast{position:fixed;bottom:25px;left:50%;max-width:min(600px,calc(100% - 32px));transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:13px 20px;background:#282536;border:1px solid #5d566c;border-radius:10px;color:var(--text);font-size:13px;z-index:20;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.noscript{text-align:center;padding:30px}
@media(max-width:980px){.header-inner{padding:0 28px}.back-home{display:none}.tutorial-wrap{padding:0 28px}.intro-copy h1{font-size:34px}.reading-workspace{grid-template-columns:190px minmax(0,1fr);gap:23px}.step-content{padding:28px}.route-choice{padding:16px}.route-choice small{font-size:11px}.route-choice.selected:after{display:none}.help-section{gap:35px;grid-template-columns:230px 1fr}.tool-row{grid-template-columns:40px 150px 1fr}.tool-row .text-link{grid-column:3}.tutorial-footer{padding:30px 28px}.tutorial-footer p{max-width:310px}}
@media(max-width:700px){html{scroll-padding-top:82px}.header-inner{min-height:69px;padding:0 20px;justify-content:space-between}.brand{font-size:15px}.brand-mark{width:28px;height:28px}.menu-toggle{display:block}#top-nav{display:none;position:absolute;left:0;right:0;top:69px;background:#11101e;padding:12px 20px;border-bottom:1px solid var(--line);justify-content:space-between}#top-nav.open{display:flex}#top-nav a{padding:12px 8px;font-size:12px}#top-nav a[aria-current]:after{bottom:5px;left:8px;right:8px}.tutorial-wrap{padding:0 20px}.tutorial-intro{padding:37px 0 25px}.intro-copy h1{font-size:29px}.intro-copy p{font-size:13px;margin-top:11px}.intro-note{display:none}.topic-tabs{gap:24px;margin-bottom:26px;margin-right:-20px;padding-right:20px}.topic-tabs a{font-size:12px;gap:7px;padding-bottom:14px}.topic-tabs img,.topic-tabs .icon{width:18px;height:18px}.route-intro{display:block}.route-intro p{font-size:12px}.save-label{font-size:11px;margin-top:5px}.route-choices{display:flex;gap:7px;overflow:auto;margin-right:-20px;padding:0 20px 8px 0;margin-bottom:20px}.route-choice{padding:12px 13px;min-width:154px}.route-choice strong{font-size:12px}.route-choice small{font-size:11px;margin-top:3px}.reading-workspace{display:block}.guide-sidebar{position:static;padding:0}.progress-copy{font-size:11px}progress{margin:9px 0 15px}#step-nav{display:flex;gap:8px;overflow:auto;margin-right:-20px;padding:0 20px 8px 0}.step-nav-button{width:auto;white-space:nowrap;padding:7px 9px;font-size:11px;gap:7px}.step-nav-num{width:19px;height:19px;font-size:11px}.reset-link{font-size:11px;padding:10px 0 18px}.step-content{min-height:0;scroll-margin-top:88px}.step-title-row{gap:15px}.step-title-row h2{font-size:21px}.step-counter{font-size:11px}.step-summary{font-size:13px;margin:14px 0 25px}.task-list{gap:23px}.task-list li{gap:11px}.task-list strong{font-size:13px}.task-list li p{font-size:12px;line-height:1.95}.step-resource{gap:15px;margin-top:25px}.button{font-size:11px;padding:10px 13px;min-height:42px}.text-link{font-size:11px}.step-note{font-size:11px}.step-footer{flex-wrap:wrap;padding-top:19px;gap:12px}.step-footer>.text-link{width:100%}.step-footer .skip-step{margin-left:0;margin-right:auto;font-size:11px}.step-footer .primary{margin-left:auto}.help-section{display:block;padding:50px 0 35px;margin-top:10px}.help-section h2{font-size:24px}.help-section h2 br{display:none}.help-section>div>p{font-size:12px;margin:12px 0 18px}.help-section>div>p br{display:none}.faq-list{margin-top:26px}summary{font-size:12px;padding:18px 0}details p{font-size:12px;padding-right:5px}.tutorial-footer{padding:27px 20px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.tutorial-footer p{grid-column:1/-1;grid-row:2;font-size:11px}.tutorial-footer>a:last-child{justify-self:end;font-size:11px}.tutorial-footer .brand{font-size:12px}.article-block{grid-template-columns:24px 1fr;gap:12px;padding:25px 0}.article-block h2{font-size:19px}.article-block p{font-size:12px}.article-number{font-size:11px}.article-callout{font-size:11px}.more-intro{font-size:13px}.tool-row{grid-template-columns:35px 1fr auto;gap:10px 15px;padding:25px 0}.tool-row p{grid-row:2;grid-column:2/-1;font-size:12px;padding:0}.tool-row .text-link{grid-column:3;grid-row:1}.tool-row h2{font-size:16px}.tool-row h2 small{font-size:11px}.tool-logo{width:29px;height:29px}.completion-content{gap:20px}.completion-content h2{font-size:23px}}
@media(max-width:540px){.topic-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;overflow:visible;margin-right:0;padding-right:0}.topic-tabs a{min-width:0;padding:12px 0;white-space:normal}.route-choices{display:grid;grid-template-columns:1fr;gap:7px;overflow:visible;margin-right:0;padding:0}.route-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px 13px}.route-choice strong{flex-shrink:0}.route-choice small{margin:0;text-align:right;line-height:1.6}.route-choice.selected{border-color:rgba(164,148,255,.75)}#step-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;margin-right:0;padding:0}.step-nav-button{width:100%;min-width:0;justify-content:flex-start;white-space:normal;gap:6px;padding:8px 5px;line-height:1.5}.step-nav-num{flex-shrink:0}.reset-link{padding-top:13px}.guide-sidebar{margin-top:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.button:hover{transform:none}}

/* Contextual support, reusable route checklists and compact mobile position. */
.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}
.print-only{display:none}.external-resource>span{display:grid;gap:3px}.external-note{display:block;color:var(--muted);font-size:11px;font-weight:400;line-height:1.5;letter-spacing:0}.external-note.inline{display:inline;font-size:11px;margin-left:5px}.button.primary .external-note{color:#235253}.context-help{margin-top:27px;padding-top:19px;border-top:1px solid var(--line)}.context-help>p{font-size:12px;line-height:1.8}.context-actions{display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap;margin-top:11px}.context-actions button{background:transparent;padding:5px 0}.context-actions .text-link{min-height:32px}.step-footer{display:block}.next-preview{display:grid;gap:4px;margin-bottom:15px}.next-preview>span{font-size:11px;color:var(--muted)}.next-preview strong{font-size:14px;font-weight:550}.advance-actions{display:flex;justify-content:space-between;align-items:center;gap:14px}.advance-actions .skip-step{margin-left:0}.advance-actions .primary{margin-left:auto}.route-checklist{margin:0 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.route-checklist>summary{font-size:13px;padding:15px 0}.checklist-summary-note{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px}.checklist-rows{list-style:none;padding:0;margin:0;display:grid}.checklist-rows li{display:flex;align-items:center;gap:14px;padding:13px 0;border-top:1px solid var(--line)}.checklist-status{font-size:11px;white-space:nowrap;align-self:flex-start;margin-top:3px;color:var(--muted)}.checklist-status.done{color:var(--cyan)}.checklist-rows li>div{flex:1;min-width:0}.checklist-rows strong{font-size:13px;font-weight:550}.checklist-rows p{padding:0;margin-top:3px;font-size:11px;line-height:1.7;max-width:86ch}.checklist-rows button{background:none;padding:8px 0}.checklist-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0}.checklist-footer p{padding:0;font-size:11px}.completion-list{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:11px}.completion-list li{display:flex;align-items:center;gap:12px;font-size:13px}.completion-list .icon{color:var(--cyan);width:17px;height:17px}.completion-list .text-link{margin-left:auto;border:0;background:none;padding:4px}.completion-actions{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap}.mobile-step-location{display:none}.help-actions{display:grid;justify-items:start;gap:16px}.search-label{display:block;font-size:12px;color:var(--text);margin-bottom:9px}.faq-search{display:flex;align-items:center;border:1px solid #48435d;border-radius:9px;padding:0 12px;background:#11101e}.faq-search:focus-within{outline:2px solid var(--cyan);outline-offset:3px}.faq-search input{min-width:0;width:100%;height:45px;border:0;background:transparent;color:var(--text);font:inherit;font-size:12px;caret-color:var(--cyan)}.faq-search input:focus-visible{outline:none}.faq-search input::placeholder{color:var(--muted)}.faq-search button{flex-shrink:0;background:none;color:var(--cyan);font-size:11px;min-height:42px;padding:0 6px}.faq-count{font-size:11px;margin:10px 0 14px!important;min-height:20px}.faq-empty{padding:18px 0}.faq-empty p{font-size:13px;line-height:1.8;margin-bottom:16px}.faq-empty>.text-link{margin-left:15px}.footer-links{display:flex;align-items:center;gap:20px}.footer-links a{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.footer-links a:hover{color:var(--cyan)}.footer-links .icon{height:14px;width:14px}#copy-fallback{margin-top:20px}#copy-fallback label{display:block;font-size:12px;color:var(--text);margin-bottom:8px}#copy-text{width:100%;resize:vertical;min-height:190px;font:inherit;font-size:12px;line-height:1.7;color:var(--text);background:#11101e;border:1px solid #48435d;border-radius:8px;padding:12px;caret-color:var(--cyan)}.tool-row>.context-help{grid-column:2/-1;margin-top:2px;padding-top:12px;width:100%}.article-block .context-actions .text-link{margin-top:0}.article-block h2,.tool-row h2{scroll-margin-top:116px}
@media(max-width:980px){#top-nav{gap:20px}.header-inner{gap:24px}.tutorial-footer{flex-wrap:wrap}.footer-links{margin-left:auto}}
@media(max-width:700px){#top-nav{gap:0;padding-left:12px;padding-right:12px}#top-nav a{padding-left:6px;padding-right:6px}.route-checklist{margin-bottom:20px}.route-checklist>summary{font-size:12px;gap:10px}.checklist-summary-note{font-size:11px}.checklist-rows li{gap:10px;align-items:flex-start}.checklist-rows p{font-size:11px}.checklist-rows strong{font-size:12px}.checklist-status{font-size:11px}.checklist-footer{align-items:flex-start;gap:12px}.checklist-footer p{font-size:11px;max-width:150px}.checklist-footer .button{flex-shrink:0}.guide-sidebar{margin-top:0;margin-bottom:17px}.guide-sidebar>.progress-copy,.guide-sidebar>progress{display:none}.mobile-step-location{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;text-align:left;width:100%;padding:12px 14px;background:#141322;border:1px solid var(--line);border-radius:9px}.mobile-step-location strong{font-weight:550;font-size:12px}.mobile-step-location>span{grid-column:1;font-size:11px;color:var(--muted)}.mobile-step-location>.icon{grid-column:2;grid-row:1/3;width:17px;height:17px;color:var(--violet)}.mobile-step-location[aria-expanded=true]>.icon{transform:rotate(45deg)}.step-nav-wrap{display:none}.step-nav-wrap.expanded{display:block;padding-top:12px}.step-content{padding:24px 18px}.context-help{margin-top:22px;padding-top:16px}.context-help>p{font-size:11px}.context-actions{gap:4px 17px}.context-actions .text-link{font-size:11px;min-height:39px}.next-preview strong{font-size:13px}.advance-actions{flex-direction:column;align-items:stretch;gap:9px}.advance-actions .skip-step{margin:0;padding:6px 0;text-align:left;order:2}.advance-actions .primary{margin-left:0;width:100%;min-height:44px}.external-note{font-size:11px}.faq-column{margin-top:29px}.faq-column .faq-list{margin-top:0}.help-actions{gap:13px}.faq-empty>.text-link{display:flex;margin:15px 0 0}.completion-list{gap:12px}.completion-actions{gap:12px}.completion-actions .button{flex:1 1 100%}.completion-content p{font-size:12px}.footer-links{margin-left:0;flex-wrap:wrap;justify-content:flex-end;gap:10px}.footer-links a{font-size:11px}.tool-row>.context-help{grid-column:1/-1}.article-block h2,.tool-row h2{scroll-margin-top:90px}.toast{bottom:14px;font-size:12px}.checklist-rows li>.text-link{white-space:nowrap;min-height:38px}}
@media print{@page{size:A4;margin:15mm}html,body{background:white!important;color:#161616!important;font-size:11pt}body>.svg-defs,body>.skip-link,body>.tutorial-header,body>.tutorial-footer,body>dialog,body>.toast,body>noscript{display:none!important}.tutorial-wrap{padding:0;max-width:none}.tutorial-wrap>*{display:none!important}.tutorial-wrap>#print-checklist{display:block!important}#print-checklist h1{font-size:19pt;color:#111}#print-checklist>p{font-size:11pt;color:#444;margin:6mm 0}#print-checklist .checklist-rows li{padding:4mm 0;border-color:#ccc;break-inside:avoid}#print-checklist .checklist-status{color:#222;font-size:10pt;min-width:15mm}#print-checklist strong{color:#111;font-size:11pt}#print-checklist p{color:#444;font-size:10pt;line-height:1.6}#print-checklist .print-note{margin-top:6mm;font-size:9pt;color:#555}}

/* theme.css */
/* Theme roles. Load after page and shared component styles. */
:root {
  --page-bg: #080611;
  --surface: #141020;
  --surface-soft: #1c172a;
  --ink: #f6f6ff;
  --muted-ink: #bcb0cd;
  --accent: #85f5ea;
  --accent-soft: #183331;
  --accent-ink: #092626;
  --border: #443a54;
  --success: #94e2bc;
  --success-soft: #15372b;
  --warning: #edc582;
  --warning-soft: #342a1a;
  --danger: #f1a4aa;
}
:root[data-theme="light"] {
  color-scheme: light;
  --page-bg: #ffffff;
  --bg: #ffffff;
  --surface: #ffffff;
  
  
  
  
  
  --accent: #4840d4;
  --accent-strong: #3830b8;
  --accent-soft: #f0effd;
  --accent-soft-2: #e4e2fb;
  --accent-line: #b9b4f0;
  --accent-ink: #ffffff;
  --cyan: #4840d4;
  --violet: #6952ab;
  
  
  --control-bg: #ffffff;
  
  
  --success: #117653;
  --success-soft: #edf8f2;
  --warning: #936000;
  --warning-soft: #fff6e2;
  --danger: #b43943;
  color: var(--ink);
  background: var(--page-bg);
}
.theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  gap: 7px;
  min-width: 44px;
  min-height: 44px;
  padding: 9px 11px;
  border: 1px solid var(--border);
  border-radius: 9px;
  color: var(--ink);
  background: var(--surface);
  font: inherit;
  font-size: 12px;
  line-height: 1.4;
  cursor: pointer;
}
.theme-toggle svg {
  display: block;
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.theme-toggle:hover { background: var(--surface-soft); border-color: var(--accent); }
.theme-toggle:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
:root[data-theme="light"] body { background: var(--page-bg); color: var(--ink); }
:root[data-theme="light"] * { scrollbar-color: #a1afc3 #f4f6fa; }
:root[data-theme="light"] ::selection {  background: var(--accent-soft-2); }
:root[data-theme="light"] :is(input, select, textarea) { color: var(--ink); caret-color: var(--accent); }
:root[data-theme="light"] :is(input, textarea)::placeholder { color: #657184; }
:root[data-theme="light"] select option { background: white; color: var(--ink); }
:root[data-theme="light"] :is(.skip, .skip-link) { background: var(--accent); color: #fff; }
:root[data-theme="light"] :is(.mono, .white-logo, .dock-featured .dock-icon img) { filter: brightness(0); }

/* A clear daylight canvas retains the orbit and floating brand composition. */
:root[data-theme="light"] .site-nav { background: linear-gradient(#ffffffed, #ffffff00); }
:root[data-theme="light"] :is(.site-nav.is-scrolled, .tutorial-header, .support-header) {
  background: #ffffffed;
  border-bottom-color: var(--line);
}
:root[data-theme="light"] :is(nav > a, .motion-toggle) { color: #566277; }
:root[data-theme="light"] :is(nav > a:hover, nav > a.active) { color: var(--ink); }
:root[data-theme="light"] nav > a.active:after { background: var(--accent); box-shadow: none; }
:root[data-theme="light"] .nav-start { border-color: #b8c2d3; background: #fff9; color: var(--ink); }
:root[data-theme="light"] .nav-start:hover { border-color: var(--accent); background: var(--accent-soft); }
:root[data-theme="light"] .icon-button:hover { background: #eaf0f9; color: var(--accent); }

:root[data-theme="light"] .space:after { background: linear-gradient(0deg, #fff, transparent 20%, transparent 86%, #ffffff60); }
:root[data-theme="light"] .nebula { opacity: .18; }

:root[data-theme="light"] .nebula-cyan { background: radial-gradient(ellipse, #7fced9, transparent 65%); opacity: .17; }
:root[data-theme="light"] .orbit-one {  background: none; box-shadow: none; }


:root[data-theme="light"] .horizon { background: radial-gradient(ellipse, #b5c3e82b, transparent 68%); }
:root[data-theme="light"] #stardust { opacity: .23; mix-blend-mode: multiply; }
:root[data-theme="light"] .logo-face,
:root[data-theme="light"] :is(.float-gpt, .float-claude) .logo-face {
  
  border-color: transparent;
  
}
:root[data-theme="light"] .logo-face:before { background: none; }

:root[data-theme="light"] :is(.float-muse, .float-ollama) { opacity: .8; }
:root[data-theme="light"] .hero-panel {
  
  border-color: transparent;
  
}
:root[data-theme="light"] .hero-panel:before { background: none; }

:root[data-theme="light"] h1 { text-shadow: none; }
:root[data-theme="light"] .title-ai { color: var(--accent); }
:root[data-theme="light"] .title-dot {  box-shadow: none; }

:root[data-theme="light"] :is(.hero-copy, .hero-evidence-link, .price-note, .hero-foot, .hero-foot > a) { color: #606e83; }
:root[data-theme="light"] :is(.primary-action, .button.primary) { color: #fff; background: var(--accent); }
:root[data-theme="light"] :is(.primary-action:hover, .button.primary:hover) { color: #fff; background: var(--accent-strong); box-shadow: 0 8px 22px #4840d41f; }
:root[data-theme="light"] .button.primary .external-note { color: #e3ecff; }
:root[data-theme="light"] .tutorial-dock { border-top-color: var(--line); }
:root[data-theme="light"] .dock-link + .dock-link:before { background: var(--line); }
:root[data-theme="light"] .dock-link:hover { background: #f0f4fb; }
:root[data-theme="light"] .dock-text small { color: #627089; }

/* Records and all search/control states share one light surface vocabulary. */
:root[data-theme="light"] :is(.section-intro h2 > span, .support-teaser h2 span) { color: #53647e; }
:root[data-theme="light"] :is(.evidence-caption, .evidence-caption > span:last-child, .record-count, .record-amount, .record-meta, .record-meta > span:last-child, .evidence-bottom p) { color: var(--muted-ink); }
:root[data-theme="light"] .filters button { color: #5c677c; }
:root[data-theme="light"] .filters button:hover { color: var(--ink); }

:root[data-theme="light"] .filters button.selected:after { box-shadow: none; }
:root[data-theme="light"] :is(.record-search, .select-field select, .search-box, .faq-search) { background: white; border-color: #b9c4d6; }
:root[data-theme="light"] :is(.record-search > .icon, .select-field, .select-field select) { color: #47566e; }
:root[data-theme="light"] .record-visual { background: #f0f3f8; }
:root[data-theme="light"] .record-card:hover .record-visual { background: #e9eef7; }
:root[data-theme="light"] .record-visual img { box-shadow: 0 9px 20px #273c6212; }
:root[data-theme="light"] .zoom-indicator { background: #ffffffed; border-color: #d7deea; color: #355179; }
:root[data-theme="light"] .plan-label { color: #52617a; background: #fffffff2; border-color: #d7deea; }
:root[data-theme="light"] .record-spotlight .plan-label { color: var(--accent-strong); background: var(--accent-soft); border-color: var(--accent-line); }
:root[data-theme="light"] .record-type { color: #1e7768; }
:root[data-theme="light"] .record-type.verification { color: #886027; }
:root[data-theme="light"] .record-type.status { color: #7359a0; }
:root[data-theme="light"] .record-spotlight .record-amount { color: #435873; }
:root[data-theme="light"] .record-visual .image-error { color: var(--muted-ink); }
:root[data-theme="light"] .empty-records { border-color: #a7b5cd; }
:root[data-theme="light"] :is(.text-button, .text-link, .download-link, .issue-shortcuts a) { color: var(--accent); }
:root[data-theme="light"] :is(.text-button:hover, .text-link:hover, .download-link:hover, .issue-shortcuts a:hover, .copy-number:hover) { color: var(--accent-strong); }
:root[data-theme="light"] :is(.outline-button, .button.secondary, .chat-controls button, .story-toolbar button) {
  color: #354661; background: #fff; border-color: #bdc8d9;
}
:root[data-theme="light"] :is(.outline-button:hover, .button.secondary:hover, .chat-controls button:hover:not(:disabled), .story-toolbar button:hover:not(:disabled)) {
  color: var(--accent-strong); background: var(--accent-soft); border-color: var(--accent-line);
}
:root[data-theme="light"] :is(.outline-button[aria-pressed="true"], .chat-controls button[aria-pressed="true"], .story-toolbar button[aria-pressed="true"]) {
  color: var(--accent-strong); background: var(--accent-soft); border-color: var(--accent-line);
}

/* The records remain the focus: restrained color frames genuine chat content. */
:root[data-theme="light"] .stories-section { border-top-color: var(--line);  }
:root[data-theme="light"] .stories-glow { background: radial-gradient(ellipse at 50% 50%, #e9effc99, transparent 68%); }
:root[data-theme="light"] .stories-heading h2 { color: var(--ink); }
:root[data-theme="light"] :is(.stories-heading > p, .stories-heading > span, .story-hint, .next-chapter > span) { color: var(--muted-ink); }
:root[data-theme="light"] .chat-bubble { background: #fff; border-color: #dce6ec; box-shadow: 0 8px 23px #3850840a; }
:root[data-theme="light"] .chat-float:nth-child(3n + 2) .chat-bubble { background: #f7f5fe; border-color: #e4ddf3; }
:root[data-theme="light"] .chat-float:nth-child(3n) .chat-bubble { background: #f0f8f6; border-color: #d5e9e2; }
:root[data-theme="light"] :is(.chat-meta, .chat-float:nth-child(3n + 2) .chat-meta, .chat-float:nth-child(3n) .chat-meta, .chat-static-card .chat-meta) { color: #616e82; }
:root[data-theme="light"] .chat-text { color: #23324b; }
:root[data-theme="light"] .chat-avatar { background: #e1e8f3; }
:root[data-theme="light"] .chat-avatar.avatar-unavailable { background: #d1dceb; }
:root[data-theme="light"] .chat-static-card { background: #fff; border-color: #dae2ee; }
:root[data-theme="light"] .chat-source { border-top-color: var(--line); }
:root[data-theme="light"] :is(.chat-source summary, .chat-source summary span, .chat-source p, .chat-source > small, .chat-empty) { color: var(--muted-ink); }
:root[data-theme="light"] .chat-source blockquote { color: #263750; }
:root[data-theme="light"] .chat-source summary:hover,
:root[data-theme="light"] .chat-source[open] summary { color: var(--accent); }
:root[data-theme="light"] :is(.support-intro h1 span, .support-conversations h2 span) { color: #526681; }
:root[data-theme="light"] :is(.support-conversations .conversation-intro > p, .support-conversations .conversation-intro > .conversation-source-note, .support-thread-heading .chat-meta, .support-chat-copy > small, #support-chat-hint) { color: var(--muted-ink); }
:root[data-theme="light"] .support-thread-heading { border-bottom-color: var(--line); }
:root[data-theme="light"] .support-thread-heading h3 { color: var(--ink); }
:root[data-theme="light"] .support-chat-copy > p { background: #edf1f8; color: #273750; }
:root[data-theme="light"] .support-chat-line[data-role="support"] .support-chat-copy > p { background: #e8f4ee; color: #235b45; }
:root[data-theme="light"] .support-chat-line[data-role="support"] .support-chat-copy > small { color: #306d58; }
:root[data-theme="light"] .support-thread-dots button > span { background: #b8c4d7; }
:root[data-theme="light"] .support-thread-dots button:hover > span { background: #6e8bc0; }
:root[data-theme="light"] .support-thread-dots button:is([aria-current="true"], [aria-selected="true"], [aria-pressed="true"]) > span { background: var(--accent); }

/* Support, QR images, ordinary text and system feedback. */
:root[data-theme="light"] .support-teaser { border-top-color: var(--line);  }
:root[data-theme="light"] .support-teaser-copy > p { color: var(--muted-ink); }
:root[data-theme="light"] :is(.support-teaser-copy strong, .support-path > p, .service-note p, .scan-help strong) { color: #344762; }
:root[data-theme="light"] .support-path { border-top-color: #bdc8d9; }
:root[data-theme="light"] .support-path li { border-bottom-color: var(--line); }
:root[data-theme="light"] .support-path small { color: var(--muted-ink); }
:root[data-theme="light"] .group-card { background: #f7f9fc; border-color: #e0e6ef; }
:root[data-theme="light"] .qr-open > span { background: #eef3fcee; color: #304563; }
:root[data-theme="light"] .group-tabs button { color: #52617a; background: #f6f8fb; border-color: #d4ddeb; }
:root[data-theme="light"] .group-tabs button[aria-selected="true"] { color: var(--accent-strong); background: var(--accent-soft); border-color: var(--accent-line); }
:root[data-theme="light"] :is(.search-count, .template-panel > label, .template-panel > p) { color: var(--muted-ink); }
:root[data-theme="light"] .template-panel { background: #f5f7fb; border-color: #dbe3ef; }
:root[data-theme="light"] .copy-fallback { background: #f0f4fb; }
:root[data-theme="light"] :is(.copy-fallback textarea, #copy-text, #record-link-fallback) { background: #fff; border-color: #b9c6da; color: var(--ink); }
:root[data-theme="light"] :is(.toast, .site-toast) { background: #193358; color: #fff; border-color: transparent; box-shadow: 0 8px 24px #13294a2b; }
:root[data-theme="light"] .footer > p,
:root[data-theme="light"] .footer > div,
:root[data-theme="light"] .footer > small { color: var(--muted-ink); border-color: var(--line); }
:root[data-theme="light"] dialog { background: #fff; border-color: transparent; color: var(--ink); box-shadow: 0 28px 90px #25375435; }
:root[data-theme="light"] dialog::backdrop { background: #24324765; backdrop-filter: blur(8px); }
:root[data-theme="light"] .dialog-image-wrap { background: #f1f4f8; }
:root[data-theme="light"] .dialog-facts { background: var(--accent-soft); color: #4d607d; }
:root[data-theme="light"] :is(.dialog-category, .dialog-bottom > p, .dialog-paging > span) { color: var(--muted-ink); }
:root[data-theme="light"] .dialog-source { color: var(--muted-ink) !important; }
:root[data-theme="light"] .dialog-feedback { color: var(--accent) !important; }

/* Existing tutorial route remains readable when shared as a deep link. */
:root[data-theme="light"] :is(.intro-note > span:last-child, .save-label, .step-counter, .reset-link, .step-note) { color: var(--muted-ink); }
:root[data-theme="light"] .route-choice { background: #fff; border-color: #d7deea; }
:root[data-theme="light"] .route-choice:hover { background: #f5f8fd; }
:root[data-theme="light"] .route-choice.selected { background: var(--accent-soft); border-color: var(--accent-line); }
:root[data-theme="light"] .route-choice.selected:after { background: var(--accent); }
:root[data-theme="light"] progress,
:root[data-theme="light"] progress::-webkit-progress-bar { background: #e5ebf5; }
:root[data-theme="light"] .step-nav-button:hover { background: #f2f5fa; }

:root[data-theme="light"] .step-nav-num { color: #64738a; border-color: #bac7da; }
:root[data-theme="light"] .step-nav-button.active .step-nav-num { color: var(--accent); border-color: var(--accent-line); }
:root[data-theme="light"] .step-content { background: #fff;  }
:root[data-theme="light"] .mobile-step-location { background: #f2f5fb; border-color: #d7e0ee; }
:root[data-theme="light"] .completion-symbol { border-color: var(--accent-line); }

@media (max-width: 1150px) {
  .theme-toggle { padding: 9px; }
  .theme-toggle > span { display: none; }
  .site-nav .nav-actions { gap: 10px; }
}
@media (max-width: 800px) {
  :root[data-theme="light"] .site-nav nav { background: #fffffff7; border-color: var(--line); box-shadow: 0 16px 26px #223b6412; }
}
@media (max-width: 760px) {
  .header-inner { gap: 10px; }
  .header-inner > .theme-toggle { margin-left: auto; }
  .header-inner > .menu-toggle { flex-shrink: 0; }
  :root[data-theme="light"] #top-nav { background: #fffffff7; border-color: var(--line); }
}
@media (max-width: 540px) {
  .site-nav .nav-actions { gap: 4px; }
  .site-nav { gap: 9px; }
  .theme-toggle { min-width: 40px; padding: 9px; }
  :root[data-theme="light"] .hero-panel { background: #ffffffeb; box-shadow: 0 18px 46px -18px #586f9c36; }
}
@media print { .theme-toggle { display: none !important; } }

/* tutorial-cabinet.css */
/* Compact tutorial cabinet: choices stay visible in the vertical page flow. */
.topic-tabs.topic-cabinet{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
 margin:0 0 36px;padding:0;border:0;overflow:visible;
}
.topic-cabinet .topic-tile{
 display:flex;align-items:center;gap:12px;min-width:0;min-height:68px;
 padding:16px 18px;border:1px solid var(--line);border-radius:10px;
 background:var(--surface);color:var(--text);white-space:normal;text-decoration:none;
 transition:background-color .16s ease-out,border-color .16s ease-out;
}
.topic-cabinet .topic-tile:after{display:none}
.topic-cabinet .topic-emblem{display:grid;place-items:center;flex:none;width:28px;height:28px;color:var(--muted)}
.topic-cabinet svg{
 display:block;width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.65;
 stroke-linecap:round;stroke-linejoin:round;
}
.topic-cabinet .topic-brand{display:block;width:26px;height:26px;object-fit:contain}
.topic-cabinet .topic-muse{color:var(--cyan);stroke-width:2.4}
.topic-cabinet .topic-phrase{white-space:nowrap}
.topic-cabinet .topic-copy{display:block;min-width:0}
.topic-cabinet .topic-title{display:block;font-size:15px;line-height:1.55;font-weight:550}
.topic-cabinet .topic-tile:hover{background:var(--surface-soft);border-color:var(--control-border,var(--border))}
.topic-cabinet .topic-tile:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.topic-cabinet .topic-tile[aria-current]{border-color:var(--cyan);background:var(--accent-soft);color:var(--text)}
.topic-cabinet .topic-tile[aria-current] .topic-title{font-weight:650}
html:not([data-theme="light"]) .topic-cabinet .topic-brand-monochrome{filter:invert(1)}
@media(max-width:700px){
 .topic-tabs.topic-cabinet{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 30px;padding:0;overflow:visible}
 .topic-cabinet .topic-tile{gap:9px;min-height:68px;padding:12px;border-radius:8px}
 .topic-cabinet .topic-emblem{width:25px;height:25px}
 .topic-cabinet .topic-brand,.topic-cabinet svg{width:23px;height:23px}
 .topic-cabinet .topic-title{font-size:14px;line-height:1.5}
 .topic-cabinet .topic-tile:last-child{grid-column:1/-1;min-height:56px}
}
@media(prefers-reduced-motion:reduce){.topic-cabinet .topic-tile{transition:none}}

/* polish.css */
/* ==========================================================================
   polish.css · 统一设计规范层
   --------------------------------------------------------------------------
   在原有样式之后最后加载，只做「收口」：统一字号、颜色、圆角、阴影、间距，
   并精修首页 / 教程 / 答疑页的细节。原有结构与交互不变。
   想回到改版前：把 qa/speed/page-assets.json 里的 "polish.css" 删掉，重新构建即可。
   ========================================================================== */

/* ---------- 1. 设计令牌（Design tokens） ---------- */
:root {
  /* 字号阶梯：只用这 9 档 */
  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-22: 22px;
  --fs-h2: clamp(30px, 3.1vw, 42px);
  --fs-h1: clamp(56px, 6vw, 88px);

  /* 圆角：可点击的控件用胶囊，容器用 12 / 16 / 24 */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-xl: 24px;
  --r-pill: 999px;

  /* 间距 */
  --section-y: clamp(88px, 9vw, 128px);
  --shell-x: 48px;

  /* 动效 */
  --ease-out: cubic-bezier(.16, 1, .3, 1);

  /* 深色主题下的补充令牌 */
  --ink-2: #dcd6ec;
  --accent-strong: #c2fff8;
  --accent-soft-2: #1e3e3b;
  --accent-line: #3e6f6a;
  --hairline: rgba(197, 190, 242, .14);
  --card: rgba(255, 255, 255, .035);
  --card-hover: rgba(255, 255, 255, .06);
  --btn-bg: #b8f6ed;
  --btn-ink: #0b1220;
  --btn-hover: #d6fffa;
  --ghost-border: rgba(233, 230, 255, .22);
  --sh-1: 0 1px 2px rgba(0, 0, 0, .25);
  --sh-2: 0 1px 2px rgba(0, 0, 0, .2), 0 16px 40px -16px rgba(0, 0, 0, .55);
  --sh-3: 0 2px 6px rgba(0, 0, 0, .25), 0 40px 100px -30px rgba(1, 1, 8, .85);
  --brand-teal: #8cf5e9;
}

:root[data-theme="light"] {
  --ink: #121624;
  --text: #121624;
  --ink-2: #394256;
  --muted-ink: #636c7f;
  --muted: #636c7f;
  --readable-muted: #636c7f;
  --line: #e9ebf1;
  --border: #e2e5ec;
  --hairline: #e9ebf1;
  --control-border: #d5d9e2;
  --surface-soft: #f6f7fa;
  --card: #f6f7fa;
  --card-hover: #f1f2f7;
  --btn-bg: #141722;
  --btn-ink: #ffffff;
  --btn-hover: #000000;
  --ghost-border: #d9dce5;
  --sh-1: 0 1px 2px rgba(18, 22, 40, .05);
  --sh-2: 0 1px 2px rgba(18, 22, 40, .04), 0 14px 34px -14px rgba(28, 32, 72, .16);
  --sh-3: 0 1px 3px rgba(18, 22, 40, .04), 0 40px 90px -36px rgba(46, 44, 120, .24);
  --brand-teal: #1f9a8f;
}

/* ---------- 2. 全局基础 ---------- */
body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
:root[data-theme] :is(h1, h2, h3) { text-wrap: balance; }
:root[data-theme] ::selection { background: var(--accent-soft-2); }
:root[data-theme="light"] ::selection { color: var(--accent-strong); }

/* 统一的「主按钮」：深色实底、胶囊形 */
:root[data-theme] :is(.primary-action, .button.primary) {
  border-radius: var(--r-pill);
  color: var(--btn-ink);
  background: var(--btn-bg);
  font-weight: 600;
  letter-spacing: .01em;
  box-shadow: var(--sh-1);
  transition: background .2s var(--ease-out), transform .35s var(--ease-out), box-shadow .3s var(--ease-out);
}
:root[data-theme] :is(.primary-action, .button.primary):hover {
  color: var(--btn-ink);
  background: var(--btn-hover);
  transform: translateY(-1px);
  box-shadow: var(--sh-2);
}
:root[data-theme] :is(.primary-action, .button.primary):active { transform: translateY(0); }

/* 统一的「次按钮」：细描边、胶囊形 */
:root[data-theme] :is(.outline-button, .button.secondary, .chat-controls button, .story-toolbar button) {
  border-radius: var(--r-pill);
  border-color: var(--ghost-border);
  background: transparent;
  color: var(--ink);
  font-weight: 500;
  transition: background .2s, border-color .2s, color .2s;
}
:root[data-theme] :is(.outline-button, .button.secondary, .chat-controls button, .story-toolbar button):hover:not(:disabled) {
  border-color: var(--ink);
  background: transparent;
  color: var(--ink);
}
:root[data-theme] :is(.outline-button, .chat-controls button, .story-toolbar button)[aria-pressed="true"] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--page-bg, #080611);
}
:root[data-theme="light"] :is(.outline-button, .chat-controls button, .story-toolbar button)[aria-pressed="true"] { color: #fff; }

/* 文字链接 */
:root[data-theme] :is(.text-button, .text-link, .download-link) { color: var(--accent); font-weight: 500; }
:root[data-theme] :is(.text-button, .text-link, .download-link):hover { color: var(--accent-strong); }

/* 顶部导航按钮、主题切换：统一成胶囊 */
:root[data-theme] :is(.theme-toggle, .nav-start, .header-action, .back-home) { border-radius: var(--r-pill); }
:root[data-theme] .theme-toggle { border-color: var(--ghost-border); background: transparent; font-size: var(--fs-13); }
:root[data-theme] .theme-toggle:hover { border-color: var(--ink); background: transparent; }
:root[data-theme] .nav-start { border-color: var(--ghost-border); background: transparent; padding: 9px 18px; gap: 12px; font-weight: 500; }
:root[data-theme] .nav-start:hover { border-color: var(--ink); background: transparent; }

/* 区块小标题（eyebrow）：编号 + 名称 */
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  font-size: var(--fs-13);
  font-weight: 600;
  letter-spacing: .16em;
  color: var(--accent);
}
.eyebrow > span {
  display: inline-grid;
  place-items: center;
  min-width: 30px;
  height: 22px;
  padding: 0 8px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .06em;
  color: var(--muted-ink);
  font-variant-numeric: tabular-nums;
}

/* 区块大标题：统一字号与层级（第二行为浅色） */
:root[data-theme] :is(.section-intro h2, .support-teaser h2, .stories-heading h2, .conversation-intro h2) {
  font-size: var(--fs-h2);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.03em;
  color: var(--ink);
}
:root[data-theme] :is(.section-intro h2 > span, .support-teaser h2 span),
:root[data-theme] #evidence .section-intro h2 > span { color: var(--muted-ink); font-size: inherit; font-weight: 700; }

/* 教程页 / 答疑页里位于窄栏的标题，字号收小一档避免断行 */
:root[data-theme] .help-section h2 {
  font-size: clamp(28px, 2.6vw, 36px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -.03em;
}
.eyebrow + h2 { margin-top: 0; }

/* ---------- 3. 首页 · 导航 ---------- */
:root[data-theme] .site-nav nav { gap: 30px; }
:root[data-theme] .site-nav nav > a { font-size: var(--fs-14); }
:root[data-theme] .site-nav nav > a.active { font-weight: 600; }
:root[data-theme="light"] .site-nav.is-scrolled { background: rgba(255, 255, 255, .82); backdrop-filter: saturate(1.6) blur(18px); -webkit-backdrop-filter: saturate(1.6) blur(18px); }
:root[data-theme] .wordmark { font-weight: 700; letter-spacing: -.02em; }

/* ---------- 4. 首页 · 主视觉 ---------- */
/* 背景：轨道更细、更淡，让中间的面板成为焦点 */
/* Keep the same breathing light without filtering the entire moving orbit each frame. */
@keyframes orbit-breathe { from { opacity: .5; } to { opacity: 1; } }
:root[data-theme="light"] .space { background: radial-gradient(ellipse 70% 60% at 50% 48%, #f1f0ff 0, #f8f8fe 45%, #ffffff 78%); }
:root[data-theme="light"] .orbit-one { border-color: #d3d0f3; }
:root[data-theme="light"] .orbit-two { border-color: #e6e5f6; }
:root[data-theme="light"] .orbit-three { border-color: #e1eef0; }
:root[data-theme="light"] .nebula-violet { background: radial-gradient(ellipse, #b4a8f3, transparent 66%); }

/* 漂浮的品牌卡片：统一材质、细描边、柔和阴影 */
:root[data-theme] .logo-face { border-radius: 22px; }
:root[data-theme="light"] .logo-face,
:root[data-theme="light"] :is(.float-gpt, .float-claude) .logo-face {
  background: rgba(255, 255, 255, .78);
  border: 1px solid rgba(20, 24, 48, .06);
  box-shadow: var(--sh-2);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
:root[data-theme] .logo-face span { font-size: 11px; font-weight: 500; letter-spacing: .06em; }
:root[data-theme="light"] .logo-face span { color: #6a7286; }

/* 中央面板 */
:root[data-theme] .hero-stage { width: min(800px, calc(100% - 48px)); }
:root[data-theme] .hero-panel {
  padding: 48px 48px 26px;
  border-radius: 28px;
}
:root[data-theme="light"] .hero-panel {
  background: rgba(255, 255, 255, .74);
  border: 1px solid rgba(20, 24, 48, .06);
  box-shadow: var(--sh-3), inset 0 1px 0 rgba(255, 255, 255, .9);
  backdrop-filter: blur(22px) saturate(1.4);
  -webkit-backdrop-filter: blur(22px) saturate(1.4);
}
:root[data-theme="light"] .panel-edge { background: linear-gradient(90deg, transparent, #b3abef, transparent); opacity: .7; }
:root[data-theme="light"] .edge-right { background: linear-gradient(90deg, transparent, #8fd6cf, transparent); }

/* 更新日期：做成标题上方的小徽章 */
:root[data-theme] .hero-panel .hero-updated {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 22px;
  padding: 5px 13px 5px 11px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  background: var(--card);
  color: var(--muted-ink);
  font-size: var(--fs-12);
  line-height: 1.6;
  letter-spacing: .02em;
}
.hero-updated-dot {
  position: relative;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--brand-teal);
}
.hero-updated-dot:after {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 1px solid var(--brand-teal);
  opacity: .35;
}

/* 标题组 */
:root[data-theme] .hero-panel h1 { display: flex; justify-content: center; font-weight: 700; letter-spacing: -.045em; line-height: 1.16; }
:root[data-theme] .title-ai { font-weight: 650; }
:root[data-theme="light"] .hero-panel h1 { color: var(--ink); }
:root[data-theme="light"] .title-dot { background: var(--brand-teal); }
:root[data-theme] .hero-subtitle {
  margin-top: 14px;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: .42em;
  text-indent: .42em; /* 抵消末尾字距，保证视觉居中 */
}
:root[data-theme="light"] .hero-subtitle { color: var(--ink-2); }
:root[data-theme] .hero-copy {
  margin-top: 18px;
  font-size: var(--fs-16);
  line-height: 1.75;
  letter-spacing: .01em;
}
:root[data-theme="light"] .hero-copy { color: var(--muted-ink); }

/* 主次按钮并排，留出呼吸感 */
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 30px;
}
:root[data-theme] .hero-actions .primary-action { margin: 0; gap: 14px; padding: 14px 26px; font-size: var(--fs-15); min-height: 50px; }
:root[data-theme] .hero-actions .hero-evidence-link {
  margin: 0;
  gap: 8px;
  min-height: 50px;
  padding: 0 22px;
  border: 1px solid var(--ghost-border);
  border-radius: var(--r-pill);
  color: var(--ink);
  font-size: var(--fs-15);
  font-weight: 500;
  transition: border-color .2s, background .2s;
}
:root[data-theme] .hero-actions .hero-evidence-link:hover { border-color: var(--ink); color: var(--ink); }
:root[data-theme] .hero-evidence-link .icon { width: 15px; height: 15px; }
:root[data-theme] .resume-reading { margin: 14px auto -6px; font-size: var(--fs-12); }

/* 快捷入口：去掉灰色底框，改为一条细分隔线下的四个入口 */
:root[data-theme] .hero-panel .hero-shortcuts {
  margin-top: 34px;
  padding: 18px 0 0;
  gap: 6px;
  border: 0;
  border-top: 1px solid var(--hairline);
  border-radius: 0;
  background: transparent;
}
:root[data-theme] .hero-shortcuts .dock-link {
  min-height: 68px;
  padding: 12px 12px;
  border-radius: var(--r-md);
}
:root[data-theme] .hero-shortcuts .dock-link:is(:hover, :focus-visible) { background: var(--card); }
:root[data-theme] .hero-shortcuts .dock-text strong { font-size: var(--fs-14); font-weight: 600; }
:root[data-theme] .hero-shortcuts .dock-text small { font-size: var(--fs-12); }
:root[data-theme] .hero-panel .price-note { margin-top: 12px; font-size: var(--fs-12); letter-spacing: .01em; }
:root[data-theme="light"] .hero-panel .price-note { color: #8a91a2; }

:root[data-theme] .hero-foot { font-size: var(--fs-12); letter-spacing: .06em; }
:root[data-theme] .hero-foot > a { font-size: var(--fs-12); }
:root[data-theme] .hero-foot { gap: 20px; }
:root[data-theme] :is(.nav-share, .hero-foot > .hero-share) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid var(--ghost-border);
  border-radius: var(--r-pill);
  color: var(--ink);
  letter-spacing: normal;
}
:root[data-theme] :is(.nav-share, .hero-foot > .hero-share):hover {
  border-color: var(--ink);
  background: var(--surface-soft);
}
:root[data-theme] :is(.nav-share, .hero-share) .icon { width: 16px; height: 16px; }
.share-section { scroll-margin-top: 0; }
@media (max-width: 1100px) { :root[data-theme] .site-nav nav { gap: 20px; } }

/* ---------- 5. 首页 · 通用区块 ---------- */
:root[data-theme] .section-shell { max-width: 1240px; }
:root[data-theme] #evidence { padding-top: var(--section-y); padding-bottom: calc(var(--section-y) * .8); }
:root[data-theme] .section-intro { margin-bottom: 48px; align-items: flex-end; }
:root[data-theme] #evidence .section-intro > div > p {
  max-width: 58ch;
  margin-top: 18px;
  font-size: var(--fs-16);
  line-height: 1.85;
}
:root[data-theme] .evidence-caption { font-size: var(--fs-13); line-height: 2; }

/* 平台筛选：胶囊分段按钮，代替下划线 Tab */
:root[data-theme] .filter-row { border-bottom: 0; margin-bottom: 16px; }
:root[data-theme] .filters { gap: 8px; flex-wrap: wrap; }
:root[data-theme] .filters button {
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  font-size: var(--fs-14);
  color: var(--muted-ink);
  transition: color .2s, border-color .2s, background .2s;
}
:root[data-theme] .filters button:hover { color: var(--ink); border-color: var(--ghost-border); }
:root[data-theme] .filters button.selected { color: var(--page-bg, #080611); background: var(--ink); border-color: var(--ink); }
:root[data-theme="light"] .filters button.selected { color: #fff; }
:root[data-theme] .filters button.selected:after { content: none; }

/* 搜索与下拉：同一行、同一高度、柔和底色 */
:root[data-theme] .evidence-tools { gap: 10px; }
:root[data-theme] :is(.record-search, .select-field select) {
  height: 46px;
  min-height: 46px;
  border: 1px solid transparent;
  border-radius: var(--r-md);
  background-color: var(--card);
  font-size: var(--fs-14);
  transition: border-color .2s, background-color .2s;
}
:root[data-theme] .record-search:focus-within,
:root[data-theme] .select-field select:focus { border-color: var(--accent); background-color: var(--surface); outline: none; }
:root[data-theme] .record-search input { font-size: var(--fs-14); }
:root[data-theme] .select-field { font-size: var(--fs-13); color: var(--muted-ink); }
:root[data-theme] .evidence-status { margin-top: 14px; }
:root[data-theme] .record-count { font-size: var(--fs-13); }

/* 记录卡片：去掉描边，图片区用浅底 + 悬停浮起 */
:root[data-theme] #evidence .evidence-grid { gap: 40px 24px; margin-top: 8px; }
:root[data-theme] #evidence .record-card .record-visual {
  border: 1px solid transparent;
  border-radius: var(--r-lg);
  background: var(--card);
  transition: transform .4s var(--ease-out), box-shadow .4s var(--ease-out), background .3s;
}
:root[data-theme] #evidence .record-card:hover .record-visual {
  border-color: transparent;
  background: var(--card-hover);
  box-shadow: var(--sh-2);
  transform: translateY(-3px);
}
:root[data-theme] #evidence .record-card .record-visual img { border-radius: 6px; box-shadow: var(--sh-1); }
:root[data-theme] #evidence .zoom-indicator { border-radius: var(--r-pill); font-size: 11px; }
:root[data-theme] .plan-label { border-radius: var(--r-pill); font-size: 11px; font-weight: 500; }
:root[data-theme] #evidence .record-meta { margin-top: 16px; font-size: var(--fs-12); }
:root[data-theme] #evidence .record-card h3 { margin-top: 6px; font-size: var(--fs-16); font-weight: 600; letter-spacing: -.01em; }
:root[data-theme] #evidence .record-amount { font-size: var(--fs-14); font-variant-numeric: tabular-nums; }
:root[data-theme] #evidence .evidence-bottom { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--hairline); align-items: center; }
:root[data-theme] #evidence .evidence-bottom p { font-size: var(--fs-12); }
:root[data-theme] #evidence .evidence-bottom .text-button { font-size: var(--fs-14); }

/* 答疑交流：整块放进一张柔和的卡片 */
:root[data-theme] .support-teaser {
  max-width: 1240px;
  margin: 0 auto;
  padding: 72px 72px;
  gap: 72px;
  border: 1px solid var(--hairline);
  border-radius: 32px;
  background: var(--card);
}
:root[data-theme="light"] .support-teaser {
  background: linear-gradient(135deg, #f7f7fc 0%, #f4f6fa 60%, #f1f8f7 100%);
  border-color: var(--hairline);
}
:root[data-theme] .support-teaser-copy > p { font-size: var(--fs-16); line-height: 1.85; margin-top: 18px; max-width: 46ch; }
:root[data-theme] .support-teaser .primary-action { margin-top: 30px; padding: 14px 26px; gap: 14px; font-size: var(--fs-15); }
:root[data-theme] .support-path { border-top: 0; padding-top: 0; }
:root[data-theme] .support-path > p { font-size: var(--fs-13); font-weight: 600; letter-spacing: .14em; color: var(--muted-ink); }
:root[data-theme] .support-path ol { margin: 14px 0 22px; }
:root[data-theme] .support-path li { padding: 18px 0 18px 52px; border-bottom: 1px solid var(--hairline); }
:root[data-theme] .support-path li:last-child { border-bottom: 0; }
:root[data-theme] .support-path li:before {
  top: 18px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--surface);
  box-shadow: var(--sh-1), inset 0 0 0 1px var(--hairline);
  color: var(--accent);
  font-size: var(--fs-13);
  font-weight: 600;
}
:root[data-theme] .support-path li span { font-size: var(--fs-16); font-weight: 600; color: var(--ink); }
:root[data-theme] .support-path small { font-size: var(--fs-13); margin-top: 4px; }
:root[data-theme] .support-path > a { font-size: var(--fs-14); font-weight: 500; color: var(--accent); }

/* 留言墙 */
:root[data-theme] .stories-section { padding-top: var(--section-y); padding-bottom: var(--section-y); }
:root[data-theme="light"] .stories-section { background: linear-gradient(#fff, #f8f8fc 30%, #f8f8fc 70%, #fff); border-top: 0; }
:root[data-theme] .stories-heading > p { margin-top: 16px; font-size: var(--fs-16); }
:root[data-theme] .stories-heading > span { font-size: var(--fs-12); margin-top: 6px; }
:root[data-theme] .story-controls { gap: 8px; }
:root[data-theme] .story-controls .select-field select { height: 40px; min-height: 40px; border-radius: var(--r-pill); padding-left: 16px; }
:root[data-theme] .story-controls .outline-button { min-height: 40px; padding: 0 18px; font-size: var(--fs-13); }
:root[data-theme] .chat-bubble { border-radius: 18px 18px 18px 6px; padding: 16px 18px; }
:root[data-theme] .chat-float:nth-child(4n+2) .chat-bubble { border-radius: 18px 18px 6px 18px; }
:root[data-theme="light"] .chat-bubble,
:root[data-theme="light"] .chat-float:nth-child(3n + 2) .chat-bubble,
:root[data-theme="light"] .chat-float:nth-child(3n) .chat-bubble {
  background: #fff;
  border-color: rgba(20, 24, 48, .06);
  box-shadow: var(--sh-2);
}
:root[data-theme] .chat-stream .chat-text { font-size: var(--fs-14); line-height: 1.75; }
:root[data-theme] .chat-stream .chat-meta { font-size: 11px; letter-spacing: .02em; }
:root[data-theme] .story-hint { font-size: var(--fs-12); }
:root[data-theme] .next-chapter {
  width: fit-content;
  max-width: calc(100% - 32px);
  margin: 40px auto 0;
  padding: 10px 10px 10px 28px;
  gap: 24px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  background: var(--surface);
  box-shadow: var(--sh-2);
}
:root[data-theme] .next-chapter > span { font-size: var(--fs-15); color: var(--ink); font-weight: 500; }
:root[data-theme] .next-chapter .primary-action { padding: 13px 22px; font-size: var(--fs-14); gap: 12px; }

/* 页脚 */
:root[data-theme] .footer { padding-top: 48px; padding-bottom: 36px; gap: 24px; border-top: 1px solid var(--hairline); }
:root[data-theme] .footer > p { font-size: var(--fs-13); }
:root[data-theme] .footer > div { gap: 28px; font-size: var(--fs-13); }
:root[data-theme] .footer > div a { transition: color .2s; }
:root[data-theme] .footer > div a:hover { color: var(--ink); }
:root[data-theme] .footer > small { font-size: var(--fs-12); border-top-color: var(--hairline); padding-top: 24px; }

/* 记录弹窗 */
:root[data-theme] dialog { border-radius: var(--r-xl); }
:root[data-theme] .dialog-image-wrap { border-radius: var(--r-md); }
:root[data-theme] .dialog-facts { border-radius: var(--r-md); }

/* ---------- 6. 教程页 / 答疑页 / 家宽页 共用 ---------- */
:root[data-theme] :is(.tutorial-header, .support-header) .header-inner { min-height: 72px; }
:root[data-theme="light"] :is(.tutorial-header, .support-header) {
  background: rgba(255, 255, 255, .84);
  backdrop-filter: saturate(1.6) blur(18px);
  -webkit-backdrop-filter: saturate(1.6) blur(18px);
  border-bottom-color: var(--hairline);
}
:root[data-theme] :is(.tutorial-header, .support-header) .brand { font-weight: 700; letter-spacing: -.02em; }
:root[data-theme] :is(.tutorial-header, .support-header) #top-nav a { font-size: var(--fs-14); }
:root[data-theme] :is(.tutorial-header, .support-header) #top-nav a[aria-current="page"] { font-weight: 600; }

/* 页面大标题 */
:root[data-theme] :is(.intro-copy h1, .directory-copy h1) {
  font-size: clamp(36px, 4vw, 52px);
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -.035em;
}
:root[data-theme] :is(#guide-description, .directory-intro) { font-size: var(--fs-16); line-height: 1.8; margin-top: 14px; }

/* 教程分类：从「一排排表单按钮」变成带图标底座的卡片 */

:root[data-theme] .topic-cabinet .topic-tile {
  
  
  
  transition: border-color .2s, box-shadow .3s var(--ease-out), transform .3s var(--ease-out), background .2s;
}

:root[data-theme] .topic-cabinet .topic-tile:is([aria-current="page"], [aria-current="true"], .active, .selected) {
  border-color: var(--ink);
  background: var(--surface);
  box-shadow: var(--sh-2);
}
:root[data-theme] .topic-cabinet .topic-emblem {
  display: grid;
  place-items: center;
  
  
  
  
  
}
:root[data-theme] .topic-cabinet .topic-title {   letter-spacing: -.005em; }

/* 阅读区：卡片更轻、圆角统一 */
:root[data-theme] .step-content { border-radius: var(--r-xl); }
:root[data-theme="light"] .step-content { border-color: var(--hairline); box-shadow: var(--sh-2); }
:root[data-theme] :is(.route-choice, .guide-choice) { border-radius: var(--r-lg); }
:root[data-theme="light"] :is(.route-choice, .guide-choice) { border-color: var(--hairline); }
:root[data-theme="light"] :is(.route-choice, .guide-choice):hover { border-color: var(--ghost-border); background: #fafbfd; }
:root[data-theme] .step-nav-button { border-radius: var(--r-md); }
:root[data-theme="light"] .step-nav-button.active { background: var(--accent-soft); color: var(--accent-strong); }
:root[data-theme] .button { border-radius: var(--r-pill); }
:root[data-theme] .wizard-controls > .button.primary { padding-inline: 24px; }

/* 常见问题 / 搜索框 */
:root[data-theme] body :is(.faq-search, .search-box) {
  border-radius: var(--r-md);
  border-color: transparent;
  background: var(--card);
}
:root[data-theme] body :is(.faq-search, .search-box):focus-within { border-color: var(--accent); background: var(--surface); }
:root[data-theme] :is(.faq-list details, .faq-item) { border-color: var(--hairline); }
:root[data-theme] :is(.faq-list summary) { font-size: var(--fs-15); }

/* 答疑页：群号选择 */
:root[data-theme] .directory-switch { gap: 8px; }
:root[data-theme] .directory-switch button {
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  background: transparent;
  color: var(--muted-ink);
  font-size: var(--fs-14);
  transition: color .2s, border-color .2s, background .2s;
}
:root[data-theme] .directory-switch button:hover { color: var(--ink); border-color: var(--ghost-border); }
:root[data-theme] .directory-switch button[aria-pressed="true"] { color: var(--page-bg, #080611); background: var(--ink); border-color: var(--ink); }
:root[data-theme="light"] .directory-switch button[aria-pressed="true"] { color: #fff; }
:root[data-theme] .directory-switch button[aria-pressed="true"] span { color: inherit; opacity: .72; }
:root[data-theme] .directory-qr { border-radius: var(--r-xl); }
:root[data-theme] .directory-qr .qr-open { border-radius: var(--r-xl); }
:root[data-theme="light"] .directory-qr .qr-open { border-color: var(--hairline); box-shadow: var(--sh-3); }
:root[data-theme] .mystery-entry { border-radius: var(--r-lg); }
:root[data-theme="light"] .mystery-entry { border-color: var(--hairline); }
:root[data-theme="light"] .mystery-entry:hover { box-shadow: var(--sh-2); }

/* ---------- 7. 响应式 ---------- */
@media (max-width: 1100px) {
  :root[data-theme] .support-teaser { padding: 56px 48px; gap: 48px; margin-inline: 30px; }
}
@media (max-width: 800px) {
  :root { --section-y: 80px; }
  :root[data-theme] .hero-panel { padding: 40px 24px 22px; border-radius: 24px; }
  :root[data-theme] .hero-subtitle { font-size: 20px; letter-spacing: .32em; text-indent: .32em; }
  :root[data-theme] .hero-copy { font-size: var(--fs-15); }
  :root[data-theme] .support-teaser { grid-template-columns: 1fr; padding: 44px 32px; margin-inline: 30px; border-radius: 24px; }
  :root[data-theme] .section-intro { margin-bottom: 32px; }
  :root[data-theme] #evidence .section-intro > div > p { font-size: var(--fs-15); }
}
@media (max-width: 540px) {
  :root[data-theme] .hero-stage { width: calc(100% - 32px); }
  :root[data-theme] .hero-panel { padding: 32px 18px 20px; }
  :root[data-theme] .hero-panel .hero-updated { margin-bottom: 18px; font-size: 11px; }
  :root[data-theme] .hero-panel h1 { font-size: 52px; }
  :root[data-theme] .hero-subtitle { font-size: 18px; letter-spacing: .26em; text-indent: .26em; }
  :root[data-theme] .hero-copy { font-size: var(--fs-14); }
  .hero-actions { gap: 10px; margin-top: 24px; }
  :root[data-theme] .hero-actions .primary-action,
  :root[data-theme] .hero-actions .hero-evidence-link { min-height: 46px; padding: 0 18px; font-size: var(--fs-14); }
  :root[data-theme] .hero-panel .hero-shortcuts { margin-top: 24px; padding-top: 12px; }
  :root[data-theme] .support-teaser { padding: 36px 22px; margin-inline: 16px; border-radius: 22px; }
  :root[data-theme] .support-path li { padding-left: 46px; }
  :root[data-theme] .filters { gap: 6px; }
  :root[data-theme] .filters button { min-height: 36px; padding: 0 13px; font-size: var(--fs-13); }
  :root[data-theme] .next-chapter { flex-direction: column; gap: 12px; padding: 20px; border-radius: var(--r-xl); text-align: center; }
  .eyebrow { margin-bottom: 14px; }
  :root[data-theme] .topic-cabinet { gap: 8px; }
  :root[data-theme] .topic-cabinet .topic-tile { gap: 10px; padding-inline: 12px; }
  :root[data-theme] .topic-cabinet .topic-emblem { width: 30px; height: 30px; border-radius: 8px; }
  :root[data-theme] .topic-cabinet .topic-brand { width: 20px; height: 20px; }
  :root[data-theme] .topic-cabinet .topic-emblem svg { width: 20px; height: 20px; }
  :root[data-theme] .topic-cabinet .topic-title { font-size: var(--fs-14); }
}
/* 首页漂浮卡片：让 Muse / Ollama 不再被中央面板压住 */
@media (min-width: 801px) {
  :root[data-theme] .float-muse { top: 12%; left: 16.5%; }
  :root[data-theme] .float-ollama { top: 86%; right: 21%; }
}
@media (prefers-reduced-motion: reduce) {
  :root[data-theme] :is(.primary-action, .button.primary, #evidence .record-card .record-visual, .topic-cabinet .topic-tile) { transition: none; transform: none !important; }
}

/* ==========================================================================
   第二轮（2026-10-23）：分享、关于我、站主小人、教程切换栏、更多筛选、浮现
   ========================================================================== */

/* ---------- 首页首屏：快捷入口改为 3 个 ---------- */
:root[data-theme] .hero-panel .hero-shortcuts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 800px) {
  :root[data-theme] .hero-panel .hero-shortcuts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  :root[data-theme] .hero-shortcuts .dock-link { grid-template-columns: 1fr; justify-items: center; text-align: center; row-gap: 6px; }
  :root[data-theme] .hero-shortcuts .shortcut-arrow { display: none; }
}

/* ---------- 记录区：更多筛选 ---------- */
:root[data-theme] .evidence-tools { flex-wrap: wrap; }
:root[data-theme] .evidence-tools .record-search { flex: 1 1 320px; }
.filter-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 46px;
  padding: 0 16px;
  border: 1px solid transparent;
  border-radius: var(--r-md);
  background: var(--card);
  color: var(--ink);
  font-size: var(--fs-14);
  white-space: nowrap;
  transition: border-color .2s, background .2s;
}
.filter-toggle .icon { width: 18px; height: 18px; color: var(--muted-ink); }
.filter-toggle:hover { border-color: var(--ghost-border); }
.filter-toggle[aria-expanded="true"] { border-color: var(--ink); background: var(--surface); }
.filter-summary {
  padding-left: 10px;
  margin-left: 2px;
  border-left: 1px solid var(--hairline);
  color: var(--muted-ink);
  font-size: var(--fs-13);
}
.filter-more {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  flex-basis: 100%;
  padding: 14px 16px;
  border-radius: var(--r-md);
  background: var(--card);
}
.filter-more[hidden] { display: none; }
:root[data-theme] .filter-more .select-field select { background-color: var(--surface); min-width: 180px; }
@media (max-width: 540px) {
  .filter-toggle { flex: 1 1 100%; justify-content: flex-start; }
  .filter-summary { margin-left: auto; }
  .filter-more { flex-direction: column; }
  :root[data-theme] .filter-more .select-field { width: 100%; justify-content: space-between; }
  :root[data-theme] .filter-more .select-field select { flex: 1; width: auto; }
}

/* ---------- 通用按钮（分享面板、找到站主弹窗） ---------- */
.sh-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid var(--ghost-border);
  border-radius: var(--r-pill);
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-size: var(--fs-14);
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition: border-color .2s, background .2s, color .2s;
}
.sh-btn:hover { border-color: var(--ink); }
.sh-btn-primary { border-color: var(--btn-bg); background: var(--btn-bg); color: var(--btn-ink); font-weight: 600; }
.sh-btn-primary:hover { border-color: var(--btn-hover); background: var(--btn-hover); color: var(--btn-ink); }
.sh-btn[hidden] { display: none; }

/* ---------- 首页 · 分享本站 ---------- */
:root[data-theme] .share-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 520px);
  align-items: center;
  gap: 72px;
  padding-top: calc(var(--section-y) * .5);
  padding-bottom: var(--section-y);
}
.share-copy > p { max-width: 46ch; margin-top: 18px; font-size: var(--fs-16); line-height: 1.85; color: var(--muted-ink); }
:root[data-theme] .share-section h2 {
  font-size: var(--fs-h2);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.03em;
  color: var(--ink);
}
:root[data-theme] .share-section h2 span { color: var(--muted-ink); }
.share-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
:root[data-theme] .share-actions .primary-action { padding: 14px 24px; gap: 12px; font-size: var(--fs-15); min-height: 50px; }
:root[data-theme] .share-actions .primary-action .icon { width: 18px; height: 18px; }
:root[data-theme] .share-actions .outline-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 50px;
  padding: 0 20px;
  border: 1px solid var(--ghost-border);
  font-size: var(--fs-14);
}
.share-actions .outline-button .icon { width: 17px; height: 17px; }
.share-guides { margin-top: 36px; padding-top: 22px; border-top: 1px solid var(--hairline); }
.share-guides > p { font-size: var(--fs-13); color: var(--muted-ink); letter-spacing: .04em; }
.share-guide-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.share-guide-list button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 14px 0 10px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  background: var(--surface);
  color: var(--ink-2);
  font-size: var(--fs-13);
  transition: border-color .2s, transform .25s var(--ease-out), box-shadow .25s;
}
.share-guide-list button:hover { border-color: var(--ghost-border); box-shadow: var(--sh-1); transform: translateY(-1px); }
.share-guide-list img, .share-guide-list .icon { width: 18px; height: 18px; object-fit: contain; color: var(--muted-ink); }

/* 分享卡片：一张可爱的「免费入场券」 */
.share-stage {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 360px;
  padding: 32px 8px;
}
.share-stage:before {
  content: '';
  position: absolute;
  inset: 8% 4%;
  border-radius: 50%;
  border: 1px solid var(--hairline);
  transform: rotate(-12deg);
}
.share-stage:after {
  content: '';
  position: absolute;
  inset: 20% 14%;
  border-radius: 50%;
  background: radial-gradient(ellipse, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%);
  filter: blur(30px);
  z-index: -1;
}
.share-ticket {
  --paper: #ffffff;
  --paper-ink: #121624;
  --paper-muted: #6a7286;
  --paper-line: #e6e8ef;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 168px;
  width: min(100%, 500px);
  margin: 0;
  border-radius: 22px;
  background: var(--paper);
  color: var(--paper-ink);
  box-shadow: 0 1px 2px rgba(18, 22, 40, .06), 0 30px 70px -28px rgba(46, 44, 120, .35);
  transform: rotate(-3.5deg);
  transition: transform .6s var(--ease-out), box-shadow .6s var(--ease-out);
}
.share-ticket:hover { transform: rotate(-1deg) translateY(-4px); box-shadow: 0 1px 2px rgba(18, 22, 40, .06), 0 40px 80px -30px rgba(46, 44, 120, .4); }
/* 打孔分割线和两端缺口 */
.ticket-stub {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 22px 16px;
  border-left: 2px dashed var(--paper-line);
}
.ticket-stub:before, .ticket-stub:after {
  content: '';
  position: absolute;
  left: -13px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--page-bg, #fff);
}
.ticket-stub:before { top: -12px; }
.ticket-stub:after { bottom: -12px; }
.ticket-qr { width: 120px; height: 120px; padding: 6px; border-radius: 12px; border: 1px solid var(--paper-line); background: #fff; }
.ticket-stub p { font-size: var(--fs-13); font-weight: 600; margin-top: 8px; }
.ticket-stub .ticket-url { margin-top: 0; font-size: 11px; font-weight: 500; color: var(--paper-muted); letter-spacing: .04em; }
.ticket-main { position: relative; padding: 26px 24px 22px 28px; overflow: hidden; border-radius: 22px 0 0 22px; }
.ticket-main:before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 90% 70% at 30% 20%, #f1f0ff, transparent 70%), radial-gradient(ellipse 60% 50% at 90% 100%, #e8f6f4, transparent 70%);
  z-index: 0;
}
.ticket-main > * { position: relative; z-index: 1; }
.ticket-kicker { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 600; color: var(--paper-muted); letter-spacing: .08em; }
.ticket-kicker span { padding: 2px 8px; border-radius: var(--r-pill); background: #141722; color: #fff; font-size: 10px; letter-spacing: .14em; }
.ticket-title { display: flex; align-items: baseline; gap: 8px; margin-top: 16px; font-size: 40px; font-weight: 700; letter-spacing: -.045em; line-height: 1.1; }
.ticket-title b { color: #4840d4; font-weight: 650; font-size: 1.08em; }
.ticket-title i { width: 7px; height: 7px; border-radius: 50%; background: #1f9a8f; align-self: center; transform: translateY(10px); }
.ticket-sub { margin-top: 8px; font-size: 14px; letter-spacing: .36em; color: #394256; }
.ticket-stickers { display: flex; gap: 8px; margin-top: 18px; }
.ticket-stickers span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(18, 22, 40, .08), 0 6px 14px -6px rgba(28, 32, 72, .25);
  transform: rotate(var(--r, -6deg));
}
.ticket-stickers span:nth-child(2) { --r: 5deg; }
.ticket-stickers span:nth-child(3) { --r: -3deg; }
.ticket-stickers span:nth-child(4) { --r: 8deg; }
.ticket-stickers img { width: 22px; height: 22px; object-fit: contain; }
.ticket-stickers img.ink { filter: brightness(0); }
.ticket-foot { margin-top: 18px; font-size: 12px; color: var(--paper-muted); }
.ticket-stamp {
  position: absolute;
  right: 18px;
  bottom: 50px;
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  border: 2px solid color-mix(in srgb, #4840d4 70%, transparent);
  border-radius: 50%;
  color: #4840d4;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  letter-spacing: .1em;
  transform: rotate(14deg);
  opacity: .82;
  box-shadow: inset 0 0 0 3px #fff, inset 0 0 0 4px color-mix(in srgb, #4840d4 40%, transparent);
}
:root[data-theme="dark"] .share-ticket { box-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 40px 90px -30px rgba(0, 0, 0, .9), 0 0 0 1px rgba(255, 255, 255, .06); }
@media (max-width: 960px) {
  :root[data-theme] .share-section { grid-template-columns: 1fr; gap: 40px; }
  .share-stage { min-height: 0; }
}
@media (max-width: 540px) {
  .share-ticket { grid-template-columns: minmax(0, 1fr) 118px; border-radius: 18px; transform: rotate(-2deg); }
  .ticket-main { padding: 20px 14px 18px 18px; border-radius: 18px 0 0 18px; }
  .ticket-title { font-size: 30px; margin-top: 12px; }
  .ticket-sub { font-size: 12px; letter-spacing: .28em; }
  .ticket-stickers span { width: 30px; height: 30px; border-radius: 9px; }
  .ticket-stickers img { width: 18px; height: 18px; }
  .ticket-stamp { display: none; }
  .ticket-foot { font-size: 11px; }
  .ticket-qr { width: 88px; height: 88px; padding: 4px; border-radius: 9px; }
  .ticket-stub { padding: 16px 10px; }
  .share-actions .primary-action, .share-actions .outline-button { flex: 1 1 auto; justify-content: center; }
}

/* ---------- 分享面板 ---------- */
.share-dialog {
  width: min(560px, calc(100% - 32px));
  max-height: calc(100% - 32px);
  padding: 0;
  border: 1px solid var(--hairline);
  border-radius: var(--r-xl);
  background: var(--surface);
  color: var(--ink);
  box-shadow: var(--sh-3);
}
.share-dialog::backdrop { background: rgba(14, 16, 32, .42); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.share-dialog[open] { animation: share-in .35s var(--ease-out); }
@keyframes share-in { from { opacity: 0; transform: translateY(12px) scale(.98); } }
.share-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 24px 24px 0; }
.share-kicker { font-size: var(--fs-12); font-weight: 600; color: var(--accent); letter-spacing: .14em; }
.share-head h2 { margin-top: 6px; font-size: var(--fs-22); font-weight: 700; letter-spacing: -.02em; line-height: 1.35; }
.share-close {
  display: grid;
  place-items: center;
  flex: none;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--card);
  color: var(--ink);
}
.share-close svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.share-close:hover { background: var(--card-hover); }
.share-body { display: grid; grid-template-columns: 176px minmax(0, 1fr); gap: 24px; padding: 20px 24px 24px; }
.share-qr { margin: 0; text-align: center; }
.share-qr img { width: 176px; height: 176px; padding: 10px; border: 1px solid var(--hairline); border-radius: var(--r-lg); background: #fff; }
.share-qr figcaption { margin-top: 8px; font-size: var(--fs-12); color: var(--muted-ink); }
.share-desc { font-size: var(--fs-14); line-height: 1.8; color: var(--muted-ink); }
.share-url { display: flex; align-items: center; gap: 6px; margin-top: 14px; padding: 4px 4px 4px 12px; border-radius: var(--r-md); background: var(--card); }
.share-url input { flex: 1; min-width: 0; height: 36px; border: 0; background: transparent; color: var(--ink); font: inherit; font-size: var(--fs-13); outline: none; }
.share-url button { flex: none; height: 36px; padding: 0 14px; border-radius: 9px; background: var(--surface); color: var(--ink); font-size: var(--fs-13); font-weight: 500; box-shadow: var(--sh-1); }
.share-url button:hover { color: var(--accent); }
.share-btns { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.share-status { min-height: 1.6em; margin-top: 10px; font-size: var(--fs-13); color: var(--accent); }
html.share-open { overflow: hidden; }
@media (max-width: 540px) {
  .share-body { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .share-info { width: 100%; }
  .share-btns { justify-content: center; }
  .share-btns .sh-btn { flex: 1 1 auto; }
}

/* 全站轻提示 */
.enh-toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 120;
  max-width: calc(100% - 32px);
  padding: 12px 18px;
  border-radius: var(--r-pill);
  background: #141722;
  color: #fff;
  font-size: var(--fs-14);
  box-shadow: 0 12px 30px -10px rgba(10, 12, 30, .45);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity .25s, transform .35s var(--ease-out);
}
.enh-toast.visible { opacity: 1; transform: translate(-50%, 0); }
:root[data-theme="dark"] .enh-toast { background: #f1effa; color: #141722; }

/* ---------- 教程页：分享按钮、参考价格 ---------- */
.intro-side { display: flex; flex-direction: column; align-items: flex-end; gap: 14px; flex: none; }
.intro-share {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid var(--ghost-border);
  border-radius: var(--r-pill);
  background: var(--surface);
  color: var(--ink);
  font-size: var(--fs-13);
  font-weight: 500;
  white-space: nowrap;
  transition: border-color .2s, box-shadow .25s;
}
.intro-share .icon { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.intro-share:hover { border-color: var(--ink); box-shadow: var(--sh-1); }
.ip-intro .intro-side > a { display: inline-flex; align-items: center; gap: 8px; }
.intro-price {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
  padding: 6px 14px 6px 6px;
  border-radius: var(--r-pill);
  background: var(--card);
  color: var(--ink-2);
  font-size: var(--fs-13);
  font-variant-numeric: tabular-nums;
}
.intro-price span { padding: 2px 10px; border-radius: var(--r-pill); background: var(--surface); color: var(--accent); font-weight: 600; font-size: var(--fs-12); box-shadow: var(--sh-1); }
@media (max-width: 760px) {
  :root[data-theme] .tutorial-intro, :root[data-theme] .ip-intro { flex-wrap: wrap; align-items: flex-start; }
  .intro-side { width: 100%; flex-direction: row; align-items: center; justify-content: flex-start; gap: 12px; }
  .intro-price { display: flex; flex-wrap: nowrap; align-items: flex-start; border-radius: var(--r-md); padding: 8px 12px 8px 8px; line-height: 1.6; }
  .intro-price span { flex: none; }
}

/* ---------- 教程切换栏：从大卡片网格收成一条紧凑的胶囊栏 ---------- */
:root[data-theme] .topic-cabinet {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 28px;
  padding: 0;
  border: 0;
  overflow: visible;
}
:root[data-theme] .topic-cabinet .topic-tile {
  flex: 0 0 auto;
  min-height: 42px;
  gap: 8px;
  padding: 0 14px 0 6px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-pill);
  background: var(--surface);
  box-shadow: none;
  transform: none;
}
:root[data-theme] .topic-cabinet .topic-tile:hover { border-color: var(--ghost-border); box-shadow: var(--sh-1); transform: none; }
:root[data-theme] .topic-cabinet .topic-tile[aria-current] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--page-bg, #080611);
  box-shadow: var(--sh-2);
}
:root[data-theme="light"] .topic-cabinet .topic-tile[aria-current] { color: #fff; }
:root[data-theme] .topic-cabinet .topic-tile[aria-current] .topic-title { color: inherit; }
:root[data-theme] .topic-cabinet .topic-emblem {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--card);
  box-shadow: none;
}
:root[data-theme] .topic-cabinet .topic-tile[aria-current] .topic-emblem { background: #fff; color: #141722; }
:root[data-theme] .topic-cabinet .topic-brand { width: 18px; height: 18px; }
:root[data-theme] .topic-cabinet .topic-emblem svg { width: 18px; height: 18px; }
:root[data-theme] .topic-cabinet .topic-tile[aria-current] .topic-brand-monochrome { filter: brightness(0); }
:root[data-theme] .topic-cabinet .topic-title { font-size: var(--fs-14); font-weight: 500; white-space: nowrap; }
:root[data-theme] .topic-cabinet .topic-tile[aria-current] .topic-title { font-weight: 600; }
/* 手机：一行横向滑动，两端渐隐提示还能滑 */
@media (max-width: 760px) {
  :root[data-theme] .topic-cabinet {
    flex-wrap: nowrap;
    gap: 8px;
    margin: 0 -20px 22px;
    padding: 4px 20px 10px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 20px, #000 calc(100% - 28px), transparent);
            mask-image: linear-gradient(90deg, transparent 0, #000 20px, #000 calc(100% - 28px), transparent);
  }
  :root[data-theme] .topic-cabinet::-webkit-scrollbar { display: none; }
  :root[data-theme] .topic-cabinet .topic-tile { scroll-snap-align: center; min-height: 40px; }
  :root[data-theme] .topic-cabinet .topic-emblem { width: 28px; height: 28px; }
  :root[data-theme] .topic-cabinet .topic-title { font-size: var(--fs-13); }
}

/* ---------- 答疑页：关于我 ---------- */
:root[data-theme] .community-directory { grid-template-columns: minmax(0, 560px) 300px; justify-content: space-between; column-gap: 64px; }
.about-owner { padding: 56px 0 8px; scroll-margin-top: 96px; }
.about-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 36px;
  padding: 36px 40px;
  border: 1px solid var(--hairline);
  border-radius: 28px;
  background: linear-gradient(120deg, color-mix(in srgb, var(--accent) 6%, var(--surface)) 0%, var(--surface) 55%, color-mix(in srgb, var(--brand-teal) 6%, var(--surface)) 100%);
}
.about-avatar { position: relative; flex: none; }
.about-avatar img {
  display: block;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 4px solid var(--surface);
  box-shadow: var(--sh-2), 0 0 0 1px var(--hairline);
}
.about-badge {
  position: absolute;
  left: 50%;
  bottom: -6px;
  transform: translateX(-50%);
  padding: 2px 12px;
  border-radius: var(--r-pill);
  background: var(--btn-bg);
  color: var(--btn-ink);
  font-size: var(--fs-12);
  font-weight: 600;
  letter-spacing: .1em;
  white-space: nowrap;
  box-shadow: 0 0 0 3px var(--surface);
}
.about-copy .eyebrow { margin-bottom: 10px; }
.about-copy h2 { font-size: clamp(24px, 2.4vw, 30px); font-weight: 700; letter-spacing: -.02em; line-height: 1.35; color: var(--ink); }
.about-copy h2 span { color: var(--accent); margin-left: .2em; }
.about-copy > p { max-width: 52ch; margin-top: 10px; font-size: var(--fs-15); line-height: 1.85; color: var(--muted-ink); }
.about-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-top: 18px; }
:root[data-theme] .about-actions .button { min-height: 42px; padding: 0 18px; gap: 8px; font-size: var(--fs-14); }
.about-actions .text-link { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-14); }
.about-actions .icon { width: 16px; height: 16px; }
.about-facts { display: grid; gap: 12px; margin: 0; padding: 0 0 0 36px; list-style: none; border-left: 1px solid var(--hairline); }
.about-facts li { display: flex; align-items: baseline; gap: 12px; }
.about-facts strong { min-width: 3.2em; font-size: var(--fs-22); font-weight: 700; letter-spacing: -.02em; color: var(--ink); font-variant-numeric: tabular-nums; }
.about-facts span { font-size: var(--fs-13); color: var(--muted-ink); white-space: nowrap; }
@media (max-width: 1000px) {
  .about-card { grid-template-columns: auto minmax(0, 1fr); }
  .about-facts { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 20px 0 0; border-left: 0; border-top: 1px solid var(--hairline); }
  .about-facts li { flex-direction: column; gap: 2px; }
}
@media (max-width: 760px) {
  :root[data-theme] .community-directory { grid-template-columns: 1fr; }
  .about-owner { padding-top: 36px; }
  .about-card { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: 22px; padding: 32px 22px 26px; border-radius: 24px; }
  .about-copy > p { margin-inline: auto; }
  .about-actions { justify-content: center; }
  .about-facts span { white-space: normal; }
  .about-copy h2 span { display: block; margin: 2px 0 0; }
}

/* ---------- 角落里的站主小人 ---------- */
.peek-buddy {
  position: absolute;
  z-index: 0;
  width: 64px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  transition: transform .5s var(--ease-out);
  -webkit-tap-highlight-color: transparent;
}
.peek-buddy img { display: block; width: 100%; height: auto; pointer-events: none; filter: drop-shadow(0 4px 8px rgba(20, 24, 48, .14)); }
.peek-buddy:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 12px; }
/* 首页页脚右下角：只露出头顶的盒子和眼睛 */
:root[data-theme] .footer { position: relative; overflow: hidden; }
.peek-footer { right: 4%; bottom: 0; transform: translateY(50%); }
.peek-footer:hover, .peek-footer:focus-visible, .peek-footer.found { transform: translateY(18%); }
/* 教程页页脚左下角，侧着探出来 */
:root[data-theme] .tutorial-footer { position: relative; overflow: hidden; }
.peek-tfooter { left: 10px; bottom: 0; width: 54px; transform: translate(-58%, 30%) rotate(18deg); }
.peek-tfooter:hover, .peek-tfooter:focus-visible, .peek-tfooter.found { transform: translate(-8%, 12%) rotate(6deg); }
/* 答疑页：躲在二维码卡片后面，从上沿探头 */
:root[data-theme] .directory-qr { position: relative; isolation: isolate; }
:root[data-theme] .directory-qr .qr-open { position: relative; z-index: 1; }
.peek-qr { right: 22px; top: -16px; width: 58px; transform: translateY(-46%); z-index: 0; }
.peek-qr:hover, .peek-qr:focus-visible, .peek-qr.found { transform: translateY(-78%); }
/* 偶尔探一下头，提醒有人藏着 */
@media (prefers-reduced-motion: no-preference) {
  .peek-footer:not(:hover):not(.found) { animation: peek-footer 9s var(--ease-out) 3s infinite; }
  .peek-qr:not(:hover):not(.found) { animation: peek-qr 11s var(--ease-out) 4s infinite; }
}
@keyframes peek-footer { 0%, 84%, 100% { transform: translateY(50%); } 88%, 93% { transform: translateY(28%); } }
@keyframes peek-qr { 0%, 86%, 100% { transform: translateY(-46%); } 90%, 95% { transform: translateY(-66%); } }
@media print { .peek-buddy, .peek-pop, .share-dialog { display: none !important; } }

/* 找到站主后的小卡片 */
.peek-pop {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 110;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: start;
  gap: 16px;
  width: min(460px, calc(100% - 32px));
  padding: 18px 16px 18px 18px;
  border: 1px solid var(--hairline);
  border-radius: var(--r-xl);
  background: var(--surface);
  color: var(--ink);
  box-shadow: var(--sh-3);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 16px) scale(.98);
  transition: opacity .3s, transform .45s var(--ease-out), visibility 0s .45s;
}
.peek-pop.visible { opacity: 1; visibility: visible; transform: translate(-50%, 0); transition: opacity .3s, transform .45s var(--ease-out); }
.peek-pop > img { width: 64px; height: 64px; border-radius: 50%; box-shadow: 0 0 0 1px var(--hairline); }
.peek-pop strong { display: block; font-size: var(--fs-16); font-weight: 700; }
.peek-pop p { margin-top: 4px; font-size: var(--fs-13); line-height: 1.75; color: var(--muted-ink); }
.peek-pop-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.peek-pop-actions .sh-btn { min-height: 36px; padding: 0 14px; font-size: var(--fs-13); }
.peek-pop-close { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--card); color: var(--muted-ink); }
.peek-pop-close svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
@media (max-width: 420px) { .peek-pop { grid-template-columns: 48px minmax(0, 1fr) auto; gap: 12px; } .peek-pop > img { width: 48px; height: 48px; } }

/* ---------- 进入视野时浮现 ---------- */
.reveal-on [data-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .8s var(--ease-out) var(--reveal-delay, 0ms), transform .9s var(--ease-out) var(--reveal-delay, 0ms);
}
.reveal-on [data-reveal].is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .reveal-on [data-reveal] { opacity: 1 !important; transform: none !important; transition: none; } }
@media print { .reveal-on [data-reveal] { opacity: 1 !important; transform: none !important; } }

/* api-credits.css */
/* Extends the site's tutorial typography, palette and compact topic cabinet. */
.credits-guide { --credits-accent:var(--gold-ink,var(--accent,#285bcc)); --credits-soft:var(--gold-soft,var(--accent-soft,#eaf0ff)); }
.credits-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:32px; }
.credits-intro h1 { margin:0 0 16px; font-size:clamp(28px,3vw,40px); line-height:1.4; letter-spacing:-.025em; }
.credits-intro p { max-width:68ch; margin:0; font-size:15px; line-height:1.9; color:var(--muted-ink); }
.credits-intro strong { color:var(--ink); font-weight:550; }
.credits-intro .credits-meta { margin-top:14px; font-size:12px; }
.credits-layout { display:grid; grid-template-columns:200px minmax(0,1fr); gap:36px; margin-top:36px; margin-bottom:36px; }
.credits-sidebar { position:sticky; top:108px; align-self:start; }
.credits-reading { margin:0 0 14px; font-size:13px; color:var(--muted-ink); font-variant-numeric:tabular-nums; }
.credits-sidebar ol { list-style:none; margin:0; padding:0; display:grid; gap:4px; }
.credits-sidebar a { display:flex; align-items:center; gap:12px; min-height:46px; padding:10px 12px; border-radius:8px; color:var(--muted-ink); text-decoration:none; font-size:14px; }
.credits-sidebar a span { color:var(--credits-accent); font-size:12px; font-variant-numeric:tabular-nums; }
.credits-sidebar a[aria-current="step"] { color:var(--ink); background:var(--credits-soft); font-weight:600; }
.credits-sidebar a:hover { color:var(--ink); background:var(--surface-soft); }
.credits-storage { font-size:12px; line-height:1.8; color:var(--muted-ink); margin-top:20px; }
.credits-step-picker { display:none; }
.credits-step-picker select { width:100%; min-height:44px; padding:10px 12px; border:1px solid var(--control-border,var(--border)); border-radius:8px; color:var(--ink); background:var(--surface); font:inherit; font-size:14px; }
.credits-body { min-width:0; }
.credits-panel { padding:30px; border:1px solid var(--line,var(--hairline)); border-radius:14px; background:var(--surface); scroll-margin-top:110px; min-width:0; }
.credits-panel + .credits-panel { margin-top:28px; }
.credits-enhanced .credits-panel { margin-top:0; }
.credits-panel:focus { outline:none; }
.credits-panel h2 { font-size:clamp(23px,2.4vw,30px); line-height:1.5; letter-spacing:-.02em; margin:0 0 20px; }
.credits-panel h3 { font-size:18px; line-height:1.6; margin:32px 0 12px; }
.credits-panel p,.credits-panel li { font-size:15px; line-height:1.9; overflow-wrap:anywhere; }
.credits-panel p { color:var(--muted-ink); margin:12px 0; }
.credits-panel strong { color:var(--ink); }
.credits-panel ul,.credits-panel ol { margin:20px 0; padding-left:22px; }
.credits-panel li + li { margin-top:10px; }
.credits-panel a:not(.credits-button) { color:var(--credits-accent); text-underline-offset:4px; }
.credits-panel code { font-size:.9em; overflow-wrap:anywhere; }
.credits-requirements { list-style:none; padding:0 !important; margin:24px 0 !important; }
.credits-requirements li { padding:15px 0; border-bottom:1px solid var(--hairline); margin:0 !important; }
.credits-requirements li:first-child { padding-top:0; }
.credits-requirements strong,.credits-requirements span { display:block; }
.credits-requirements span { margin-top:5px; color:var(--muted-ink); }
.credits-note { background:var(--surface-soft); padding:18px 20px; border-radius:10px; margin:24px 0; }
.credits-note p { font-size:14px; margin:0; }
.credits-small { font-size:13px !important; }
.credits-table-wrap { margin:24px 0; overflow:auto; }
.credits-panel table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; line-height:1.8; font-variant-numeric:tabular-nums; }
.credits-panel caption { text-align:left; color:var(--muted-ink); font-size:12px; margin-bottom:10px; }
.credits-panel th,.credits-panel td { padding:13px 14px; border-bottom:1px solid var(--hairline); vertical-align:top; }
.credits-panel thead th { background:var(--surface-soft); color:var(--ink); font-weight:600; }
.credits-panel tbody th { color:var(--ink); font-weight:550; width:49%; }
.credits-panel td { color:var(--muted-ink); }
.credits-details { border-top:1px solid var(--hairline); margin-top:28px; padding-top:16px; }
.credits-details summary { color:var(--muted-ink); font-size:14px; min-height:40px; cursor:pointer; padding:6px 0; }
.credits-details p { font-size:14px; }
.credits-routes { border:0; padding:0; margin:24px 0; display:flex; flex-wrap:wrap; gap:8px; }
.credits-routes legend { font-size:14px; font-weight:600; margin-bottom:12px; }
.credits-routes label { position:relative; display:flex; align-items:center; gap:8px; min-height:44px; padding:8px 14px; border:1px solid var(--control-border,var(--border)); border-radius:8px; color:var(--ink); font-size:14px; cursor:pointer; }
.credits-routes input { width:16px; height:16px; margin:0; accent-color:var(--credits-accent); }
.credits-routes label:has(input:checked) { background:var(--credits-soft); border-color:var(--credits-accent); }
.credits-figure { margin:24px 0 28px; }
.credits-image-link { display:block; position:relative; border-radius:10px; overflow:hidden; background:#fff; }
.credits-image-link img { display:block; width:100%; height:auto; }
.credits-image-link:hover img { opacity:.94; }
.credits-image-link .credits-image-open { display:flex; align-items:center; justify-content:flex-end; gap:7px; padding:10px 13px; background:var(--surface-soft); color:var(--credits-accent); font-size:12px; }
.credits-figure figcaption { margin-top:10px; color:var(--muted-ink); font-size:12px; line-height:1.8; }
.credits-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:22px 0; }
.credits-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 17px; border:1px solid var(--control-border,var(--border)); border-radius:8px; background:var(--surface); color:var(--ink); text-decoration:none; font:inherit; font-size:14px; font-weight:600; line-height:1.5; cursor:pointer; }
.credits-button:hover { border-color:var(--credits-accent); color:var(--credits-accent); }
.credits-button-primary { background:var(--ink); color:var(--surface); border-color:var(--ink); }
.credits-button-primary:hover { color:var(--surface); opacity:.9; }
.credits-faq { margin:28px 0; border-top:1px solid var(--hairline); }
.credits-faq details { border-bottom:1px solid var(--hairline); padding:12px 0; }
.credits-faq summary { cursor:pointer; color:var(--ink); font-size:15px; line-height:1.7; padding:8px 0; }
.credits-faq p { font-size:14px; margin:8px 0 16px; }
.credits-pager { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:28px; padding-top:22px; border-top:1px solid var(--hairline); }
.credits-pager #credits-next { margin-inline-start:auto; }
.credits-guide [hidden] { display:none !important; }
.credits-guide :is(a,button,input,select,summary):focus-visible,.credits-image-dialog :is(a,button):focus-visible { outline:2px solid var(--credits-accent,var(--accent)); outline-offset:4px; }
.credits-image-dialog { width:min(1200px,96vw); max-width:96vw; max-height:94dvh; padding:0; border:1px solid var(--line,var(--hairline)); border-radius:14px; background:var(--surface); color:var(--ink); }
.credits-image-dialog::backdrop { background:rgb(8 6 17 / .78); }
.credits-image-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 18px; border-bottom:1px solid var(--hairline); }
.credits-image-head h2 { font-size:16px; margin:0; line-height:1.5; }
.credits-image-tools { display:flex; gap:8px; flex:none; }
.credits-image-tools button { min-width:44px; min-height:44px; padding:8px; border:1px solid var(--control-border,var(--border)); border-radius:8px; background:var(--surface); color:var(--ink); cursor:pointer; }
.credits-image-tools svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; }
.credits-image-stage { overflow:auto; max-height:calc(94dvh - 150px); padding:14px; background:var(--surface-soft); overscroll-behavior:contain; }
.credits-image-stage img { display:block; max-width:100%; width:auto; height:auto; max-height:calc(94dvh - 180px); margin:auto; }
.credits-image-stage.is-zoomed img { width:auto; max-width:none; max-height:none; margin:0; }
.credits-image-caption { margin:0; padding:12px 18px; font-size:12px; line-height:1.7; color:var(--muted-ink); }
html.credits-image-open { overflow:hidden; }
@media(max-width:760px) {
  .credits-intro { display:block; margin-bottom:24px; }
  .credits-intro .intro-share { margin-top:18px; }
  .credits-layout { display:block; margin-top:26px; }
  .credits-sidebar { position:static; margin-bottom:22px; }
  .credits-enhanced .credits-step-picker { display:block; }
  .credits-enhanced .credits-sidebar nav { display:none; }
  .credits-sidebar ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 8px; }
  .credits-sidebar a { font-size:13px; padding:9px 8px; gap:8px; }
  .credits-storage { margin-top:10px; }
  .credits-panel { padding:22px 18px; scroll-margin-top:92px; }
  .credits-panel p,.credits-panel li { font-size:14px; }
  .credits-panel h2 { font-size:24px; }
  .credits-panel h3 { font-size:17px; }
  .credits-panel th,.credits-panel td { padding:11px 9px; font-size:13px; }
  .credits-note { padding:16px; }
  .credits-image-stage { padding:8px; }
  .credits-image-head { padding:10px 12px; gap:8px; }
  .credits-image-head h2 { font-size:14px; }
}
@media(max-width:360px) {
  :root[data-theme] .credits-page .header-inner { gap:6px; padding-inline:14px; }
  :root[data-theme] .credits-page .brand { gap:6px; font-size:13px; }
  :root[data-theme] .credits-page .brand-mark { width:24px; height:24px; }
  :root[data-theme] .credits-page :is(.theme-toggle,.menu-toggle) { width:36px; min-width:36px; height:36px; }
}
@media(prefers-reduced-motion:reduce) { .credits-guide { scroll-behavior:auto; } }

/* font-subsets.css */
/* Generated by qa/speed/font-subsets.py; keep both ranges together. */
@font-face{font-family:'Guide Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/guide-sans-031e841c20e7.woff2') format('woff2');unicode-range:U+0020-007E,U+00B7,U+00D7,U+2013-2014,U+201C-201D,U+3001-3002,U+300C-300D,U+4E00,U+4E03,U+4E07,U+4E09-4E0B,U+4E0D-4E0E,U+4E24,U+4E2A,U+4E2D,U+4E34,U+4E3A-4E3B,U+4E45,U+4E48,U+4E4B,U+4E5D,U+4E5F-4E60,U+4E70,U+4E86,U+4E8B-4E8C,U+4E8E,U+4E94,U+4EA4,U+4EA7,U+4EAB,U+4EBA,U+4EC0,U+4EC5,U+4ECD-4ECE,U+4ED4,U+4ED6,U+4ED8,U+4EE3,U+4EE5,U+4EF6-4EF7,U+4EFB,U+4EFD,U+4F18,U+4F1A,U+4F20,U+4F46,U+4F4D,U+4F4F,U+4F53,U+4F55,U+4F59,U+4F5C,U+4F60,U+4F7F,U+4F9B,U+4FA7,U+4FDD,U+4FE1,U+500D,U+5019,U+503C,U+505A,U+505C,U+50CF,U+5143,U+5145,U+5148,U+514B,U+514D,U+5151,U+5165,U+5168,U+516C-516D,U+5171,U+5173,U+5176-5177,U+517C,U+5185,U+518C-518D,U+5199,U+51B2-51B3,U+51B5,U+51BB,U+51C6,U+51CF,U+51E0,U+51ED,U+51FA-51FB,U+5200,U+5206-5207,U+5212,U+5217,U+5219-521A,U+521D,U+5229,U+522B,U+5230,U+5236,U+524D,U+529B,U+529E-52A1,U+52A8-52A9,U+52B3,U+5305,U+5316,U+5339-533B,U+5341,U+5347,U+5355,U+5357,U+535A,U+5361,U+5370,U+5386,U+539F,U+53BB,U+53CA-53CB,U+53CD,U+53D1,U+53D6,U+53D8,U+53E0,U+53E3,U+53E6,U+53EA,U+53EF-53F0,U+53F2-53F3,U+53F7,U+5408,U+540C-540E,U+5411,U+5417,U+5426-5427,U+542B,U+542F,U+5458,U+548C,U+54A8,U+54C1,U+54CD,U+54E5-54E6,U+54EA,U+552E-552F,U+5546,U+554A,U+55EF,U+5662,U+5668,U+56DB,U+56DE,U+56E0,U+56ED,U+56FD-56FE,U+5728,U+5730,U+573A,U+5740,U+5747,U+5757,U+578B,U+57DF,U+586B,U+5883,U+5899,U+589E,U+58F0,U+5904,U+5907,U+590D,U+5916,U+591A,U+591F,U+5927,U+5929-592A,U+5931,U+5934,U+5957,U+597D,U+5982,U+5999,U+59CB,U+59D3,U+5B57-5B58,U+5B66,U+5B83,U+5B85,U+5B89,U+5B8C,U+5B98,U+5B9A,U+5B9E,U+5BA1-5BA3,U+5BB6,U+5BB9,U+5BBD-5BBE,U+5BF8-5BF9,U+5BFC,U+5C06,U+5C0F,U+5C11,U+5C1A,U+5C1D,U+5C31,U+5C3A,U+5C3E,U+5C40,U+5C4B,U+5C55,U+5C5E,U+5DE5-5DE6,U+5DEE,U+5DF1-5DF2,U+5E01,U+5E26,U+5E2E,U+5E38,U+5E73-5E74,U+5E76,U+5E8F,U+5E93-5E94,U+5E9F,U+5EA6,U+5EFA,U+5F00,U+5F02,U+5F04,U+5F0F,U+5F15,U+5F20,U+5F2F,U+5F52-5F53,U+5F55,U+5F71,U+5F84-5F85,U+5F8B,U+5F97,U+5FB7,U+5FBD,U+5FC3,U+5FEB,U+6000-6001,U+600E,U+601D,U+6027,U+603B,U+6062,U+606F,U+60A8,U+60AC,U+60C5,U+60D1,U+60E0,U+610F,U+611F,U+6210-6211,U+6216,U+622A,U+6237,U+6240,U+624B,U+6253,U+6263,U+626B,U+627E-627F,U+628A,U+6298,U+62CD,U+62D2,U+62DF,U+62E9,U+62FF,U+6301,U+6307,U+6309,U+6321,U+6362,U+636E,U+6377,U+6388-6389,U+638C,U+6392,U+63A2,U+63A5,U+63A8-63A9,U+63CF-63D0,U+63E1,U+641C,U+641E,U+6458,U+64AD,U+64CD,U+652F,U+6536,U+6539,U+653E,U+6545,U+6548,U+654F,U+6559,U+6570,U+6574,U+6587,U+65AD,U+65B0,U+65B9,U+65E0,U+65E5,U+65E7,U+65E9,U+65F6,U+660E,U+6613,U+662F,U+663E,U+666F,U+6682,U+6697,U+66F4,U+66FE,U+6700,U+6708-6709,U+670B,U+670D,U+671F,U+672A,U+672C,U+673A,U+6742-6743,U+6761,U+6765,U+677F,U+679C,U+67E5,U+6807,U+680F,U+6821,U+6837-6838,U+683C,U+6848,U+6863,U+68C0,U+695A,U+6B21,U+6B3E,U+6B4C,U+6B63-6B65,U+6BB5,U+6BCF,U+6C14,U+6CA1,U+6CD5,U+6CDB,U+6CE1,U+6CE8,U+6D3B,U+6D41,U+6D45,U+6D4B,U+6D4F,U+6D6E,U+6D88-6D89,U+6DF1,U+6DF7,U+6DFB,U+6E05,U+6E90,U+6EE1,U+6F0F,U+6FC0,U+70B9,U+7136,U+7167,U+7247-7248,U+724C,U+725B,U+72B6,U+72EC,U+73A9,U+73AF-73B0,U+7406,U+751F,U+7528,U+7535,U+753B,U+7559,U+7591,U+767B,U+7684,U+76CA,U+76D2,U+76D6,U+76EE,U+76F4,U+76F8,U+770B,U+771F,U+7740,U+77E5,U+7801,U+786E,U+793A,U+795E,U+7968,U+79CD,U+79D8,U+79F0,U+79FB,U+7A0B,U+7A0D,U+7A33,U+7A76,U+7A7A,U+7A97,U+7ACB,U+7AD9,U+7ADF,U+7AEF,U+7B14,U+7B26,U+7B2C,U+7B49,U+7B54,U+7B5B,U+7B97,U+7BA1,U+7BB1,U+7BC7,U+7C7B,U+7C98,U+7CBE,U+7CFB,U+7D22,U+7EA7,U+7EC4,U+7EC6,U+7EC8,U+7ECF,U+7ED1,U+7ED3,U+7ED9,U+7EDC,U+7EDF,U+7EE7,U+7EED,U+7EF4,U+7F16,U+7F3A,U+7F51,U+7F6E,U+7F8E,U+7FA4,U+8001,U+800C,U+804A,U+8054,U+80CC,U+80FD,U+8111,U+811A,U+817E,U+81EA,U+81F3-81F4,U+822A,U+8272,U+8282,U+82F9,U+83AB,U+83F2,U+8499,U+85CF,U+865A,U+884C,U+8865,U+8868,U+88AB,U+88C1,U+88C5,U+8981,U+89C1,U+89C4,U+89C6,U+89C8,U+89D2,U+89E3,U+89E6,U+8A00,U+8BA1-8BA2,U+8BA4,U+8BA8-8BA9,U+8BAE,U+8BB0,U+8BB2,U+8BBA,U+8BBE-8BBF,U+8BC1,U+8BC6,U+8BCA,U+8BD5,U+8BDD,U+8BE2,U+8BE5,U+8BED,U+8BEF,U+8BF4,U+8BF7,U+8BFA-8BFB,U+8C03,U+8C08,U+8C22,U+8C37,U+8D25-8D26,U+8D28,U+8D2D,U+8D34,U+8D39,U+8D44,U+8D70,U+8D77,U+8DB3,U+8DC3,U+8DDF,U+8DEF,U+8DF3,U+8EAB,U+8F6C,U+8F6E-8F6F,U+8F7D,U+8F83,U+8F93,U+8FB9,U+8FC1,U+8FC7,U+8FD4,U+8FD8-8FD9,U+8FDB,U+8FDE,U+8FF0,U+9000-9002,U+9009,U+9010,U+901A,U+901F,U+903C,U+9047,U+906E,U+9080,U+90A3,U+90AE,U+90E8,U+90FD,U+914D,U+9192,U+91C7,U+91CA,U+91CC-91CF,U+91D1,U+9488,U+94FE,U+9500,U+9519,U+952E,U+95E8,U+95ED-95EE,U+9605,U+9644,U+9650,U+9664,U+968F,U+969C,U+96F6,U+9700,U+9759,U+975E,U+9760,U+9762,U+9875,U+9879,U+987E,U+9898,U+989D,U+9910,U+9988,U+9996,U+9A8C,U+9AA4,U+9E3F,U+9ED1,U+9F84,U+FF01,U+FF08-FF09,U+FF0C,U+FF1A-FF1B,U+FF1F}
@font-face{font-family:'Guide Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/guide-sans-02040f01c292.woff2') format('woff2');unicode-range:U+2026,U+2192,U+2248,U+300A-300B,U+4E13-4E14,U+4E1A,U+4E1C-4E1D,U+4E3D-4E3E,U+4E49,U+4E50,U+4E88,U+4E91-4E92,U+4E9A-4E9B,U+4EBF,U+4ECA-4ECB,U+4ED3,U+4EE4,U+4EEA,U+4EEC,U+4F17,U+4F19,U+4F30,U+4F34,U+4F38,U+4F4E,U+4F63,U+4F8B,U+4F9D,U+4FBF,U+4FEE,U+504F,U+50F5,U+5141,U+5149,U+517B,U+5192,U+51C0,U+521B,U+5220,U+5224,U+5237,U+523B,U+5251,U+5269,U+526F,U+52B1,U+52FE-52FF,U+534A,U+534F,U+5353,U+5356,U+5373-5374,U+538B,U+53C2,U+53C8-53C9,U+53CC,U+53D7,U+53E5,U+5404,U+542C,U+544A,U+5468,U+5473,U+547C-547D,U+5584,U+559C,U+56F4,U+56FA,U+5708,U+573E,U+575B,U+5783,U+57CE,U+57FA,U+590F,U+5939,U+5956,U+59C6,U+5A18,U+5A1C,U+5B50,U+5BC6,U+5BDF,U+5BFB,U+5C01,U+5C14,U+5C38,U+5C3D,U+5C42,U+5C45,U+5C4F,U+5C81,U+5DDE,U+5E02-5E03,U+5E0C,U+5E16,U+5E72,U+5E7B,U+5E7F,U+5E95,U+5E97,U+5E9C,U+5EAD,U+5EF6,U+5F39-5F3A,U+5F62,U+5F80,U+5F88,U+5FAA,U+5FC5,U+5FD7,U+5FD9,U+609F,U+60EF,U+60F3,U+61C2,U+620F,U+6218,U+623F,U+624D,U+6258,U+6267,U+6269,U+6279,U+6284,U+62A4-62A5,U+62C9,U+62E6,U+62E8,U+62EC,U+62FC,U+6302,U+63A7,U+63AA,U+63D2,U+642C,U+643A,U+6444,U+64A4,U+653F,U+6599,U+659C,U+65AF,U+65BD,U+65C1,U+65E2,U+6620,U+666E,U+6670,U+667A,U+66B4,U+66FF,U+671B,U+672B,U+6749,U+6750,U+675F-6760,U+6781,U+6784,U+6790,U+67B6,U+67D0,U+67D3,U+6839,U+6846,U+684C,U+68B3,U+690D,U+6982,U+6A21,U+6A59,U+6B22,U+6B27,U+6B3A,U+6B47,U+6B62,U+6B67,U+6B8A,U+6BD4-6BD5,U+6C11,U+6C42,U+6C47,U+6C60,U+6C9F,U+6CBF,U+6CC4,U+6CE2,U+6D0B,U+6D1B,U+6DC6,U+6E10,U+6E20,U+6E29,U+6E2F,U+6E32,U+6E38,U+6EE4,U+6F14,U+6F2B,U+706F,U+70C8,U+70ED,U+7126,U+7231,U+7269,U+7279,U+7387,U+7531,U+7533,U+754C,U+767E,U+76D1,U+76D8,U+76F2,U+7701,U+77ED,U+77F6,U+7840,U+78B0,U+78C1,U+793C,U+793E,U+7981,U+79BB,U+79C1,U+7A0E,U+7ADE,U+7AE0,U+7B7E,U+7B80,U+7BAD,U+7CCA,U+7D27,U+7D2B,U+7E41,U+7EA2,U+7EA6,U+7EAF,U+7EB9,U+7EBD,U+7EBF,U+7EC7,U+7ECD,U+7ED5,U+7EDD,U+7EFC,U+7EFF-7F00,U+7F13,U+7F29,U+7F72,U+8003,U+8005,U+8017,U+805A,U+8131,U+8138,U+820D,U+827E,U+82E5,U+82F1,U+8303,U+8349,U+8350,U+8352,U+8389,U+83B7,U+83DC,U+8425,U+84DD,U+857E,U+8651,U+871C,U+8986,U+89C2,U+8A89,U+8B66,U+8BB8,U+8BC4,U+8BC8-8BC9,U+8BCD,U+8BE6,U+8C13,U+8C61,U+8D1F,U+8D23,U+8D27,U+8D56,U+8D5A-8D5B,U+8D5E,U+8D85,U+8DE8,U+8EBA,U+8F91,U+8FA8,U+8FBE,U+8FCE,U+8FD0-8FD1,U+8FDC,U+8FDF,U+8FED,U+900F,U+9014,U+9020,U+9053,U+907F,U+949F,U+94A5,U+94AE,U+94B1,U+94F6,U+94FA,U+9501,U+9556,U+955C,U+957F,U+95F4,U+961F,U+9632-9633,U+9636,U+9645,U+964C-964D,U+9669,U+9690,U+96C5-96C6,U+9732,U+97F3,U+9876,U+987A-987B,U+9884,U+9886,U+9891,U+989C,U+98CE,U+9999,U+9A6C,U+9AD8,U+9EA6,U+9ED8,U+9F50}
