/* Content pages (requirements, legal) — follows DESIGN.md */
.doc-page{padding:28px 0 96px}
.crumbs ol{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--mute)}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--line)}
.crumbs a{color:var(--mute);text-decoration:none}
.crumbs a:hover{color:var(--go)}
.doc-page h1{font-size:clamp(34px,4.4vw,50px);max-width:18em}
.doc-page .lead{font-size:19px;margin-top:16px;max-width:40em}
.checked{margin-top:14px;font-size:14px;color:var(--mute)}
.checked a,.source-note a{color:var(--go)}
.doc-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.doc-main section{margin-top:52px}
.doc-main h2{font-size:28px;margin-bottom:18px}
.spec-list{margin:0;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--paper)}
.spec-list div{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line)}
.spec-list div:last-child{border-bottom:0}
.spec-list dt{font-weight:600;color:var(--ink)}
.spec-list dd{margin:0;font-variant-numeric:tabular-nums}
.rules{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.rules li{padding:18px 0;border-bottom:1px solid var(--line)}
.rules h3{font-size:18px}
.rules p{margin-top:6px;max-width:62ch}
.how{list-style:none;counter-reset:h;margin:0;padding:0;display:grid;gap:18px}
.how li{counter-increment:h;display:grid;grid-template-columns:40px 1fr;gap:4px 14px}
.how li::before{content:counter(h);grid-row:span 2;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:800 16px var(--display)}
.how h3{font-size:18px}
.how p{max-width:60ch}
.doc-main .faq details{border-bottom:1px solid var(--line)}
.doc-main .faq summary{list-style:none;cursor:pointer;padding:18px 36px 18px 0;font:700 18px/1.35 var(--display);color:var(--ink);position:relative}
.doc-main .faq summary::-webkit-details-marker{display:none}
.doc-main .faq summary::after{content:"";position:absolute;right:6px;top:24px;width:9px;height:9px;border-right:2.4px solid var(--ink);border-bottom:2.4px solid var(--ink);transform:rotate(45deg);transition:transform .2s}
.doc-main .faq details[open] summary::after{transform:rotate(225deg);top:29px}
.doc-main .faq details p{padding:0 0 20px;max-width:62ch}
.source-note{margin-top:40px;font-size:14px;color:var(--mute);border-top:1px solid var(--line);padding-top:18px}
.doc-side{position:sticky;top:92px}
.cta-card{background:var(--ink);color:#C9D4E3;border-radius:var(--r-card);padding:28px}
.cta-card h2{color:#fff;font-size:24px}
.cta-card p{margin:12px 0 20px}
.cta-card .btn{width:100%}
.cta-card .fine{color:#9FB0C7;margin:14px 0 0}
.cta-muted{background:var(--canvas);color:var(--body)}
.cta-muted h2{color:var(--ink)}
.doc-page .table-scroll{margin-top:32px}
.muted{color:var(--mute)}
.specs th a{color:var(--ink);text-decoration:none}
.specs th a:hover{color:var(--go);text-decoration:underline}
.prose{max-width:46em}
.prose h2{font-size:24px;margin:40px 0 12px}
.prose p,.prose li{margin-top:10px}
.prose ul{padding-left:22px}
@media (max-width:960px){
  .doc-grid{grid-template-columns:1fr;gap:40px}
  .doc-side{position:static}
}
@media (max-width:760px){
  .spec-list div{grid-template-columns:1fr;gap:2px;padding:12px 16px}
  .doc-main section{margin-top:40px}
}
.tool-list{list-style:none;margin:32px 0 0;padding:0;border-top:1px solid var(--line);max-width:52em}
.tool-list li{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}
.tool-list a{display:flex;flex-direction:column;gap:4px;padding:22px 0;text-decoration:none;flex:1}
.tool-list b{font:700 20px var(--display);color:var(--ink)}
.tool-list a:hover b{color:var(--go)}
.tool-list span{color:var(--body)}
.tag-price{font-weight:600;color:var(--go)!important;white-space:nowrap}

/* ===== Scanner theme: content pages ===== */
.how li::before{background:transparent;border:1.5px solid var(--cyan);color:var(--cyan);font-family:var(--mono);font-size:14px}
.cta-card{background:linear-gradient(150deg,#103064,#0A1D42);border:1px solid var(--line);color:var(--body);position:relative;overflow:hidden}
.cta-card::after{content:"";position:absolute;left:0;right:0;height:50%;top:-50%;background:linear-gradient(180deg,transparent,rgba(56,225,255,.12));animation:msweep 4s linear infinite;pointer-events:none}
.cta-muted{background:var(--paper)}
.spec-list{background:var(--paper)}
.spec-list dt{font-family:var(--mono);font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--mute);font-weight:500}
.spec-list dd{color:var(--ink)}
.rules li{border-color:var(--line)}
.rules h3::before{content:"✓";color:var(--go);margin-right:10px}
.tool-list b{color:var(--ink)}
.crumbs li+li::before{color:var(--mute)}
/* tools hub as cards */
.tool-list{border-top:0;display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:none}
.tool-list li{position:relative;border:1px solid var(--line);border-radius:18px;background:var(--paper);padding:0 22px;transition:transform .3s,border-color .3s}
.tool-list li:hover{transform:translateY(-3px);border-color:var(--cyan)}
.tool-list li:first-child{grid-column:1/-1;background:linear-gradient(120deg,#10305F,#0B2048);border-color:#2D4C85}
.tool-list li:first-child b{font-size:26px}
.tag-price{font:600 12px var(--mono)!important;letter-spacing:.06em;border:1px solid currentColor;border-radius:999px;padding:6px 10px}
@media (max-width:760px){.tool-list{grid-template-columns:1fr}.tool-list li{flex-direction:column;align-items:flex-start;padding-bottom:18px}.tool-list a{padding-bottom:8px}}
