/* 恢复原有编号、纸面文字和滑动下划线，只调整六个入口的布局。 */
.site-nav { display:flex;align-items:center;gap:clamp(8px,1.4vw,20px);min-width:0; }
.site-nav .theme-toggle { margin-left:0; }
.site-nav .theme-toggle[aria-disabled="true"] { cursor:wait; }
.site-search-icon { display:grid;place-items:center;flex:none;width:38px;height:38px;margin-left:auto;color:var(--ink-soft);border-radius:50%; }
.site-search-icon:hover { color:var(--teal);background:var(--paper-deep); }
.site-search-icon svg { width:19px;height:19px; }
.content > .site-nav.nav { column-gap:clamp(8px,1vw,14px);z-index:50; }
.site-header .site-nav { gap:clamp(8px,1vw,14px);justify-content:flex-start; }
.site-header.discovery-header .site-nav { justify-content:flex-start; }
body:has(.voyage-page) > .site-header { max-width:980px;margin:0 auto;padding:22px 24px; }
.site-footer-links { display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:16px;font-size:13px; }
.site-footer-links a,.home-shortcuts a { color:var(--teal); }
.home-shortcuts { display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0 32px; }
.home-shortcuts a { font-size:14px;border-bottom:1px solid var(--rule);padding:6px 0; }
.project-section { padding-bottom:32px;margin-bottom:40px;border-bottom:1px solid var(--rule); }
.project-section .hero-title { font-size:clamp(28px,4vw,38px); }
.tool-section { scroll-margin-top:90px; }
.home-reading { margin-top:36px;padding-top:28px;border-top:1px solid var(--rule); }
.home-reading h3 { font:700 25px var(--serif); }
.home-reading p { color:var(--ink-soft);font-size:14px;margin:12px 0; }
.home-reading-links { display:grid;gap:12px;font-size:14px; }
.home-reading-links a { color:var(--teal); }
/* 图标保留各自品牌，纸面与文字继续使用本站主题。 */
.work-hero { margin-bottom:30px; }
.work-hero .hero-title { font-size:clamp(34px,4vw,46px);letter-spacing:-.03em; }
.work-jump { display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px;font-size:14px; }
.work-jump a { color:var(--teal);padding:6px 0;border-bottom:1px solid var(--rule); }
.work-section { margin-top:32px;scroll-margin-top:96px; }
.work-section-head { margin-bottom:18px;scroll-margin-top:96px; }
.work-section-head h3 { font:700 25px var(--serif); }
.work-section-head p { margin-top:6px;font-size:13px;color:var(--ink-soft); }
.product-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start; }
.product-grid.is-masonry { grid-auto-rows:4px;row-gap:0; }
.product-card { min-width:0;padding:22px;background:var(--card);border:1px solid var(--rule);border-radius:16px;scroll-margin-top:96px; }
.product-core { border-top:3px solid var(--teal); }
.product-head { display:flex;align-items:center;gap:14px;margin-bottom:18px; }
.product-logo { display:flex;align-items:center;justify-content:center;flex:none;width:72px;height:72px;overflow:hidden;border-radius:16px;background:var(--paper-deep); }
.product-logo img { width:72px;height:72px;object-fit:contain; }
.product-logo-paywallpro { background:color-mix(in srgb,var(--teal) 6%,var(--card)); }
.product-logo-paywallpro img { width:160px;height:96px;max-width:none;flex:none; }
.product-name { min-width:0; }
.product-name h4 { font:700 24px/1.3 var(--serif);overflow-wrap:anywhere; }
.product-meta { display:flex;gap:8px;flex-wrap:wrap;color:var(--ink-soft);font-size:11px;margin-bottom:6px; }
.product-priority { color:var(--teal); }
.product-purpose { font-weight:600;font-size:15px;line-height:1.65; }
.product-description { color:var(--ink-soft);font-size:13px;line-height:1.9;margin-top:8px; }
.product-open { min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:13px;border-top:1px solid var(--rule);color:var(--teal);font-size:13px;font-weight:600; }
.product-open:hover { color:var(--ink); }
.utility-list { border-top:1px solid var(--rule); }
.utility-row { position:relative;display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--rule);scroll-margin-top:96px; }
.work-anchor-alias { position:absolute;top:0;left:0;width:1px;height:1px;scroll-margin-top:96px; }
.utility-symbol { flex:none;display:grid;place-items:center;width:40px;height:40px;background:var(--paper-deep);border-radius:10px;color:var(--teal);font:700 21px var(--serif); }
.utility-body { flex:1;min-width:0; }
.utility-heading { display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px; }
.utility-heading h4 { font-size:15px; }
.utility-status { font-size:11px;color:var(--teal); }
.utility-pending { color:var(--ink-soft); }
.utility-body p { font-size:12px;color:var(--ink-soft);line-height:1.8;margin-top:5px; }
.utility-use,.utility-wait { flex:none;font-size:12px;color:var(--teal); }
.utility-wait { color:var(--ink-soft); }
.utility-note { font-size:11px;color:var(--ink-soft);line-height:1.9;margin-top:16px; }
.utility-features { display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px;color:var(--teal);font-size:11px; }
.utility-features li { list-style:none; }
/* 时间线区分已做、正在做和后续计划，不给未确定的计划编日期。 */
.progress-section { margin-top:42px; }
.progress-timeline { position:relative;margin-top:24px; }
.progress-entry { position:relative;display:grid;grid-template-columns:156px minmax(0,1fr);gap:24px;padding:0 0 30px 24px;border-left:1px solid var(--rule); }
.progress-entry:last-child { padding-bottom:0; }
.progress-entry::before { content:"";position:absolute;left:-5px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px var(--paper); }
.progress-next::before { background:var(--paper);border:1px solid var(--ink-soft); }
.progress-when { display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:12px;color:var(--ink-soft); }
.progress-state { font-size:11px;color:var(--teal); }
.progress-next .progress-state { color:var(--ink-soft); }
.progress-content h4 { font:700 20px/1.5 var(--serif); }
.progress-content p { color:var(--ink-soft);font-size:13px;line-height:1.9;margin-top:8px;max-width:68ch; }
.progress-content a { display:inline-block;color:var(--teal);font-size:12px;margin-top:10px;border-bottom:1px solid var(--rule); }
.work-follow { display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:32px;padding-top:22px;border-top:1px solid var(--rule); }
.work-follow div { flex:1 1 250px; }
.work-follow h3 { font:700 21px var(--serif); }
.work-follow p { color:var(--ink-soft);font-size:13px;margin-top:8px; }
.work-follow a { color:var(--teal);font-size:14px;border-bottom:1px solid var(--rule); }
@media(max-width:700px) {
 .product-grid,.product-grid.is-masonry { grid-template-columns:1fr;grid-auto-rows:auto; }
 .product-card { grid-row-end:auto !important;padding:20px; }
 .work-jump { gap:12px 20px; }
 .work-hero { margin-bottom:26px; }
 .utility-row { flex-wrap:wrap;gap:10px 12px; }
 .utility-body { flex-basis:calc(100% - 52px); }
 .utility-use,.utility-wait { margin-left:52px; }
 .progress-entry { grid-template-columns:minmax(0,1fr);gap:8px;padding-left:20px;padding-bottom:28px; }
 .progress-when { flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:8px 14px; }
}
/* 单独的太阳、月亮沿短弧线升落，网页颜色从按钮处展开。 */
.theme-orbit { position:fixed;width:48px;height:48px;pointer-events:none;z-index:1000;view-transition-name:theme-orb; }
:root .theme-orbit svg.ic-sun,:root .theme-orbit svg.ic-moon { width:48px;height:48px;opacity:1;transform:none; }
.theme-orbit .ic-sun { color:var(--signal); }
.theme-orbit .ic-moon { color:var(--teal); }
.theme-changing * { transition:none !important; }
.theme-changing::view-transition-group(root),.theme-changing::view-transition-group(theme-orb) { animation:none; }
.theme-changing::view-transition-image-pair(root) { isolation:auto; }
.theme-changing::view-transition-old(root),.theme-changing::view-transition-new(root) { animation:none;mix-blend-mode:normal; }
.theme-changing::view-transition-old(root) { z-index:1; }
.theme-changing::view-transition-new(root) { z-index:2; }
.theme-changing::view-transition-group(theme-orb) { z-index:3; }
.theme-changing::view-transition-old(theme-orb) { animation:theme-setting 520ms ease-in both;mix-blend-mode:normal; }
.theme-changing::view-transition-new(theme-orb) { animation:theme-rising 680ms cubic-bezier(.22,.7,.18,1) both;mix-blend-mode:normal; }
@keyframes theme-setting { from{opacity:1;transform:translate(0,0) rotate(0);}to{opacity:0;transform:translate(35px,80px) rotate(40deg);} }
@keyframes theme-rising { 0%{opacity:0;transform:translate(-35px,95px) rotate(-35deg);}70%{opacity:1;transform:translate(0,-8px) rotate(0);}100%{opacity:0;transform:translate(8px,-25px) rotate(8deg);} }
.theme-orbit-fallback { animation:theme-rising 650ms ease-out both; }
.theme-fallback body,.theme-fallback .search-result,.theme-fallback .case-item,.theme-fallback .case-panel,.theme-fallback .goal-link,.theme-fallback .route-resource { transition:background-color .4s,color .4s,border-color .4s; }
@media(max-width:1150px) {
 .site-header { flex-wrap:wrap;padding:20px 0;gap:12px; }
 .site-header .site-nav { width:100%;overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap; }
 .site-header .site-nav .nav-link { font-size:13px;letter-spacing:0; }
 .site-header .site-nav .nav-link i { display:none; }
}
@media(max-width:700px) {
 .site-nav.nav { overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap;gap:14px; }
 .site-nav .nav-link { font-size:13px;letter-spacing:0; }
 .site-nav .nav-link i { display:none; }
 .site-header.discovery-header nav { max-width:none; }
}
@media(prefers-reduced-motion:reduce) { .theme-orbit { display:none; } }

.article-actions { display:flex;align-items:center;gap:16px;flex-wrap:wrap; }
.article-actions .theme-toggle { margin:0; }
@media(max-width:700px) { .article-top:has(.article-actions) { display:flex;flex-wrap:wrap;gap:12px; } .article-actions { gap:12px; } }

/* 装备卡片先看图标和名字，再看说明与优惠。 */
.gear-root .sec-title .sec-no { flex:none;white-space:nowrap; }
.gear-heading { display:flex;align-items:center;gap:13px;min-width:0;margin-bottom:5px; }
.gear-heading-text { min-width:0; }
.gear-heading .gear-tag { letter-spacing:.08em;flex-wrap:wrap;row-gap:4px;margin-bottom:5px; }
.gear-heading h4 { font-family:var(--sans);font-size:16px;font-weight:650;line-height:1.45;overflow-wrap:anywhere; }
.gear-identity { display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:13px;background:var(--paper-deep);color:var(--teal); }
.gear-symbol { width:27px;height:27px; }
.gear-identity.has-brand-logo { background:#F5F3EB;border:1px solid var(--rule);overflow:hidden; }
.gear-identity.has-brand-logo .gear-symbol { display:none; }
.gear-identity img { width:38px;height:38px;object-fit:contain; }
.gear-item { min-width:0; }
/* 招牌、货品和进店按钮分开，保持横幅轻巧。 */
.shop-depot { position:relative;display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:22px;padding:24px;border-left:0;background:linear-gradient(115deg,color-mix(in srgb,var(--signal) 7%,var(--card)),var(--card) 62%);overflow:hidden; }
.shop-depot::before { content:'';position:absolute;inset:0 auto 0 0;width:4px;background:var(--signal); }
.sp-store-mark { width:80px;height:80px;display:block;transform:rotate(-4deg); }
.sp-store-mark img { width:100%;height:100%; }
.shop-depot .sp-text { gap:7px; }
.shop-depot .sp-text b { font:700 25px/1.25 var(--serif); }
.shop-depot .sp-kicker { color:var(--signal);font-size:10px;letter-spacing:.1em; }
.shop-depot .sp-text small { font-size:13px;line-height:1.7; }
.sp-benefits { display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--ink-soft);font-size:10px; }
.sp-benefits span::before { content:'✓';margin-right:4px;color:var(--teal); }
.shop-depot .sp-cta { margin-left:0;padding:12px 16px;border:1px solid var(--signal);border-radius:8px;transition:background .2s,color .2s; }
.shop-depot:hover .sp-cta { background:var(--signal);color:var(--paper); }
/* 中文和英文字形分开控制，避免 AI 看起来像上标。 */
.site-header .discovery-brand:has(.brand-latin) { display:inline-flex;align-items:baseline;gap:.22em;flex:none;line-height:1.4; }
.site-header .brand-chinese { display:block; }
.site-header .brand-latin { display:block;font-family:var(--sans);font-size:.82em;line-height:inherit;letter-spacing:0; }
@media(max-width:640px) {
 .shop-depot { grid-template-columns:60px minmax(0,1fr);gap:16px;padding:20px; }
 .sp-store-mark { width:60px;height:60px; }
 .shop-depot .sp-text b { font-size:23px; }
 .shop-depot .sp-cta { grid-column:2;justify-self:start;padding:9px 14px;font-size:12px; }
 .sp-benefits { gap:4px 9px; }
 .gear-heading { gap:12px; }
}

/* 优惠码与底部操作分成固定的两行，折扣不会再挤歪相邻卡片。 */
.gear-item { padding-bottom:18px; }
.gear-foot { gap:10px;padding-top:0;margin-top:8px;border-top:0;font-family:var(--sans); }
.gear-foot .copy-chip { display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;height:64px;padding:10px 12px;border:1px solid var(--rule);border-radius:8px;background:transparent;color:var(--ink);font-family:var(--sans);font-size:14px;text-align:left; }
.coupon-content { display:grid;gap:3px;min-width:0; }
.coupon-label { font-size:12px;line-height:1.3;color:var(--ink-soft); }
.gear-foot .copy-chip b { font-family:var(--sans);font-size:18px;font-weight:750;line-height:1.3;letter-spacing:.02em;overflow-wrap:anywhere; }
.gear-foot .copy-chip .copy-hint { display:grid;place-items:center;flex:none;width:60px;min-width:60px;min-height:36px;padding:7px 8px;border-radius:6px;background:var(--teal);color:var(--paper);font-family:var(--sans);font-size:13px;font-weight:650;line-height:1.4;opacity:1; }
.gear-foot .copy-chip:hover { border-color:var(--teal);background:color-mix(in srgb,var(--teal) 3%,var(--card)); }
.gear-foot .copy-chip:focus-visible { outline:2px solid var(--teal);outline-offset:3px; }
.gear-foot .copy-chip.copied { border-color:var(--teal);background:transparent; }
.gear-action-row { display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px; }
.gear-foot .gear-deal { padding:0;border:0;border-radius:0;background:none;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:0;line-height:1.4;color:var(--signal); }
.gear-action-row .go,.gear-action-row .gear-soon { margin-left:auto;font-family:var(--sans);font-size:12px;line-height:1.5; }
.gear-action-row .go { font-weight:600; }
/* 小屏电脑留足优惠码的宽度，手机保持单列。 */
@media(max-width:1300px) { .gear-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) { .gear-grid { grid-template-columns:minmax(0,1fr); } }
