/* Tabs 的未增强状态保留全部正文；tabs.js 接管后才隐藏非当前面板。 */
.tabs{min-width:0}
[role="tablist"]{display:flex;align-items:center;gap:8px;max-width:100%;overflow-x:auto;padding:4px 2px 12px;overscroll-behavior-inline:contain}
[role="tab"]{flex-shrink:0;min-height:44px;padding:10px 18px;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--bg);color:var(--text-muted);font-family:var(--font-body);font-weight:var(--weight-medium);white-space:nowrap}
[role="tab"]:hover{background:var(--bg-panel);color:var(--text)}
[role="tab"][aria-selected="true"]{background:var(--mint-soft);color:var(--accent-dark);border-color:var(--accent-dark)}
[role="tabpanel"]{min-width:0;scroll-margin-top:88px}
[role="tabpanel"]:focus-visible{outline:2px solid var(--accent-dark);outline-offset:5px}
.features-band{position:relative;display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;margin-inline:20px;padding:64px clamp(24px,5vw,80px);border-radius:var(--r-card);background:linear-gradient(120deg,var(--field-deep),var(--field-black));color:var(--white);overflow-x:clip}
.features-band [role="tablist"]{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:12px;overflow:visible;padding:0}
.features-band [role="tab"]{position:relative;white-space:normal;text-align:left;background:var(--clear);color:var(--white);border:0;border-left:2px solid var(--on-dark-line);border-radius:0;font-weight:var(--weight-regular)}
.features-band [role="tab"][aria-selected="true"]{background:var(--clear);color:var(--mint);border-left-color:var(--accent)}
.feature-detail{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-deep);min-width:0}
.feature-demo{padding:24px;border-bottom:1px solid var(--border);background:var(--bg-panel);color:var(--text);border-radius:var(--r-card) var(--r-card) 0 0}
.feature-demo .fg+.fg{margin-top:16px}
.feature-copy{padding:28px}
.feature-copy p{font-size:15px;line-height:1.85;color:var(--text-muted)}
.toc{position:sticky;top:16px;z-index:10;display:flex;flex-wrap:wrap;gap:8px;padding:12px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg);color:var(--text);box-shadow:var(--shadow-menu);margin-bottom:36px}
.toc a{display:flex;align-items:center;min-height:44px;padding:9px 12px;border-radius:var(--r-ctl);font-size:14px;color:var(--text-muted)}
.toc a:hover,.toc a[aria-current="location"]{background:var(--mint-soft);color:var(--accent-dark)}
.faq-item{border-bottom:1px solid var(--border);background:var(--bg);color:var(--text)}
.faq-item summary{position:relative;padding:22px 36px 22px 0;min-height:44px;cursor:pointer;list-style:none;font-size:17px;font-weight:var(--weight-semibold)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:4px;top:20px;font-size:22px;color:var(--accent-dark)}
.faq-item[open] summary::after{content:"−"}
.faq-answer{padding-bottom:24px;color:var(--text-muted);max-width:76ch}
.faq-answer p:last-child{margin-bottom:0}
.term-card{padding:24px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-panel);color:var(--text);min-width:0}
.term-card h3{margin-bottom:8px}
.term-category{display:block;font-size:12px;color:var(--accent-dark);font-weight:var(--weight-semibold);margin-bottom:14px}
.term-card p{font-size:15px;color:var(--text-muted);margin-bottom:0}
.client-card{padding:28px;border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-card);background:var(--bg);color:var(--text);min-width:0}
.client-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.client-head img{width:56px;height:56px;flex-shrink:0}
.client-head h3{margin:0}
.client-info{flex:1;min-width:0}
.client-info p{margin:4px 0 0;color:var(--text-muted);font-size:14px}
.client-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.client-foot{margin-top:20px;padding-top:16px;border-top:1px solid var(--border);font-size:13px;color:var(--text-muted)}
.badge,.tag{display:inline-block;vertical-align:middle;max-width:100%;overflow:hidden;overflow-wrap:anywhere;border:1px solid var(--border);border-radius:var(--r-ctl);padding:3px 8px;background:var(--bg-panel);color:var(--text-muted);font-size:12px;line-height:1.5;font-weight:var(--weight-semibold)}
.badge-first{background:var(--mint);color:var(--accent-dark);border-color:var(--mint)}
.badge-recommended{background:var(--mint-soft);color:var(--accent-dark);border-color:var(--border)}
.badge-retired{background:var(--bg-panel-2);color:var(--text-muted);border-color:var(--border-strong)}
.badge-warning{background:var(--bg-panel);color:var(--warn-ink);border-color:var(--warn)}
.badge-error{background:var(--bg);color:var(--error-ink);border-color:var(--error)}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.article-card{display:flex;flex-direction:column;gap:16px;padding:28px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg);color:var(--text);box-shadow:var(--shadow-card);min-width:0}
.article-card h3{margin:0;font-size:20px;line-height:1.45}
.article-card h3 a:hover{color:var(--accent-dark)}
.article-card p{color:var(--text-muted);font-size:15px;margin:0}
.article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--text-muted)}
.article-card .text-link{margin-top:auto;align-self:flex-start;font-size:14px}
.callout{margin:24px 0;padding:20px 24px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-ctl);background:var(--mint-soft);color:var(--text)}
.callout p:last-child{margin-bottom:0}
.callout-title{display:block;font-weight:var(--weight-bold);margin-bottom:8px}
.callout.is-warning{background:var(--bg-panel);color:var(--text);border-left-color:var(--warn)}
.callout.is-error{background:var(--bg-panel);color:var(--text);border-left-color:var(--error)}
.table-scroll{overflow-x:auto;max-width:100%;min-width:0;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--r-ctl)}
.data-table{width:100%;border-collapse:collapse;font-size:14px;background:var(--bg);color:var(--text)}
.data-table th,.data-table td,.prose table th,.prose table td,.article-body table th,.article-body table td{min-width:7em;padding:14px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border);overflow-wrap:normal;word-break:normal}
.data-table th,.prose table th,.article-body table th{background:var(--bg-panel);color:var(--text);font-weight:var(--weight-semibold)}
.data-table tr:last-child td{border-bottom:0}
.prose table,.article-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;min-width:0;border-collapse:collapse;font-size:14px;background:var(--bg);color:var(--text)}
.prose table code,.article-body table code{overflow-wrap:anywhere;white-space:normal}
.article-body{min-width:0;max-width:100%}
.article-download{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:48px;padding:28px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-panel);color:var(--text)}
.article-download h2{font-size:24px;margin-bottom:8px}
.article-download p{margin:0;color:var(--text-muted)}
.dl-fab{position:fixed;right:24px;bottom:24px;z-index:18;display:flex;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:14px 18px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-card)}
.dl-fab svg{width:22px;height:22px;flex-shrink:0;color:var(--accent-dark)}
.dl-fab b{display:block;font-size:14px;font-weight:var(--weight-semibold)}
.dl-fab small{display:block;font-size:12px;color:var(--text-muted)}
.dl-fab:hover{border-color:var(--accent-dark)}
.has-dl-fab .site-footer{padding-bottom:112px}

/* 静态设计预览专用陈列。 */
.spec-section{padding-top:64px;padding-bottom:64px;border-top:1px solid var(--border)}
.spec-section h2{margin-bottom:28px}
.spec-note{font-size:14px;color:var(--text-muted)}
.swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}
.swatch{min-width:0;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--bg);color:var(--text);overflow:hidden}
.swatch-sample{height:64px;border-bottom:1px solid var(--border)}
.swatch code{display:block;padding:10px;font-size:12px;color:var(--text)}
.sw-bg{background:var(--bg);color:var(--text)}
.sw-panel{background:var(--bg-panel);color:var(--text)}
.sw-panel2{background:var(--bg-panel-2);color:var(--text)}
.sw-border{background:var(--border);color:var(--text)}
.sw-border-strong{background:var(--border-strong);color:var(--text)}
.sw-accent{background:var(--accent);color:var(--text)}
.sw-accent-dark{background:var(--accent-dark);color:var(--white)}
.sw-mint{background:var(--mint);color:var(--text)}
.sw-mint-soft{background:var(--mint-soft);color:var(--text)}
.sw-text{background:var(--text);color:var(--white)}
.sw-muted{background:var(--text-muted);color:var(--white)}
.sw-faint{background:var(--text-faint);color:var(--text)}
.sw-success{background:var(--success);color:var(--text)}
.sw-warn{background:var(--warn);color:var(--text)}
.sw-error{background:var(--error);color:var(--text)}
.sw-warn-ink{background:var(--warn-ink);color:var(--white)}
.sw-error-ink{background:var(--error-ink);color:var(--white)}
.sw-field-mint{background:var(--field-mint);color:var(--text)}
.sw-field-light{background:var(--field-light);color:var(--text)}
.sw-field-sage{background:var(--field-sage);color:var(--text)}
.sw-field-moss{background:var(--field-moss);color:var(--white)}
.sw-field-deep{background:var(--field-deep);color:var(--white)}
.sw-field-black{background:var(--field-black);color:var(--white)}
.sw-field-edge{background:var(--field-edge);color:var(--text)}
.sw-glow{background:var(--glow);color:var(--text)}
.sw-dark-line{background:var(--on-dark-line);color:var(--text)}
.sw-orbit-line{background:var(--orbit-line);color:var(--text)}
.sw-orbit-text{background:var(--orbit-text);color:var(--text)}
.sw-veil{background:var(--veil);color:var(--text)}
.sw-clear{background:var(--clear);color:var(--text)}
.type-display{font-family:var(--font-display);font-size:var(--size-h1);font-weight:var(--weight-display);line-height:1.2;letter-spacing:var(--tracking-title)}
.spec-buttons{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
@media(max-width:900px){
  .features-band{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px 24px}
  .features-band [role="tablist"]{flex-direction:row;align-items:center;overflow-x:auto;gap:8px;padding:4px}
  .features-band [role="tab"]{white-space:nowrap;border:1px solid var(--on-dark-line);border-radius:var(--r-pill)}
  .features-band [role="tab"][aria-selected="true"]{border-color:var(--accent)}
}
@media(max-width:640px){
  .features-band{margin-inline:12px;padding:24px 16px}
  .feature-demo,.feature-copy{padding:20px}
  .toc{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;top:8px}
  .toc a{flex-shrink:0;white-space:nowrap}
  .client-card,.article-card,.term-card{padding:20px}
  .dl-fab{right:16px;bottom:16px;padding:12px 14px}
  .article-download{padding:20px}
  .swatches{grid-template-columns:repeat(2,minmax(0,1fr))}
}