/* Dropworld legal, help and 404 pages. Uses shared.css + dash.css tokens. */
.doc{max-width:720px;width:100%;margin-inline:auto;display:grid;gap:18px}
.doc h2{font-size:1.2rem;margin-top:8px}
.doc p,.doc li{font-size:.97rem}
.doc ul,.doc ol{margin:0;padding-left:1.2em;display:grid;gap:6px}
.status-b{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--panel-2);font-size:.9rem;display:grid;gap:4px}
.status-b.live{border-color:var(--good)}
.status-b.draft{border-color:var(--accent)}
.status-b strong{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}
.status-b.live strong{color:var(--good)}.status-b.draft strong{color:var(--accent)}
.planned{border:1px dashed var(--accent);border-radius:16px;padding:16px;display:grid;gap:10px;background:var(--panel)}
.planned h2{margin-top:0}
.crumbs{font-size:.84rem}
.crumbs a,.doc a,.hub a.cardlink{color:var(--accent)}
.hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.hub a.cardlink{text-decoration:none;color:var(--fg);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;gap:8px;min-height:44px}
.hub a.cardlink:hover,.hub a.cardlink:focus-visible{border-color:var(--accent)}
.hub a.cardlink:focus-visible{outline:2px solid var(--dusk);outline-offset:2px}
.table{width:100%;border-collapse:collapse;font-size:.9rem}
.table th,.table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.table th{color:var(--muted);font-weight:600}
.tw{overflow-x:auto}
.faq{display:grid;gap:10px}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:12px}
.faq summary{cursor:pointer;padding:12px 14px;min-height:44px;font-weight:600;display:flex;align-items:center;gap:10px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";font-family:var(--mono);color:var(--accent);width:1em;flex:none}
.faq details[open] summary::before{content:"\2212"}
.faq summary:focus-visible{outline:2px solid var(--dusk);outline-offset:2px;border-radius:12px}
.faq .a{padding:0 14px 14px 38px;font-size:.93rem;display:grid;gap:8px}
.faq .cat{font-family:var(--mono);font-size:.64rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.form{display:grid;gap:12px}
.field{display:grid;gap:6px}
.field>label{font-weight:600;font-size:.92rem}
select.input,input.input,textarea.input{width:100%;flex:none}
textarea.input{min-height:110px;resize:vertical;font-family:var(--body)}
.status{font-size:.9rem;min-height:1.3em;color:var(--muted)}
.status.good{color:var(--good)}.status.bad{color:var(--bad)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nf{min-height:50vh;display:grid;align-content:center;gap:16px;justify-items:start;padding-block:24px}
.nf .big404{font-family:var(--display);font-weight:800;font-size:clamp(4rem,18vw,9rem);line-height:.9;color:var(--accent)}
.cols2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
footer.pv a{color:var(--fg);min-height:44px;display:inline-flex;align-items:center;padding:0 6px}
