/* ==========================================================================
   1983CIVILRIGHTS.COM: the deadline tool
   Loaded only on deadline-tool.html. Every color is a token from cr.tokens.css
   or a pair in tools/retone.py's audit table (SOUL.md 5.1).
   ========================================================================== */
.dt{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4);align-items:start}
@media(max-width:900px){.dt{grid-template-columns:1fr}}

.dt-step{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:22px 22px 18px;margin-bottom:var(--s-3)}
.dt-step h2{font-size:1.15rem;margin:0 0 4px;letter-spacing:0}
.dt-step .dt-hint{color:var(--muted);font-size:.9rem;margin:0 0 14px}
.dt-step legend{font-weight:700;font-size:1.02rem;margin-bottom:10px;padding:0}
.dt-step fieldset{border:0;padding:0;margin:0 0 6px;min-width:0}

.dt-choices{display:grid;gap:10px}
.dt-choices.cols-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:560px){.dt-choices.cols-2{grid-template-columns:1fr}}
.dt-choice{position:relative;display:block;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:12px 14px 12px 40px;cursor:pointer;background:var(--surface);min-height:var(--tap);transition:border-color .18s,background .18s}
.dt-choice:hover{border-color:var(--gold-2)}
.dt-choice input{position:absolute;left:14px;top:15px;width:18px;height:18px;margin:0;accent-color:var(--gold-2)}
.dt-choice b{display:block;font-weight:700;color:var(--ink);font-size:.97rem}
.dt-choice small{display:block;color:var(--muted);font-size:.84rem;line-height:1.4;margin-top:2px}
.dt-choice:has(input:checked){border-color:var(--gold-2);background:#F7F1E4;box-shadow:inset 0 0 0 1px var(--gold-2)}

.dt-date{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}
@media(max-width:560px){.dt-date{grid-template-columns:1fr}}
.dt-date label{display:block;font-weight:700;font-size:.95rem;margin-bottom:6px}
.dt-date input[type=date]{width:100%;min-height:var(--tap);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:10px 12px;font:inherit;color:var(--ink);background:var(--surface)}
.dt-date input[type=date]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.dt-today{min-height:var(--tap)}

.dt-result{position:sticky;top:96px}
@media(max-width:900px){.dt-result{position:static}}
.dt-card{background:var(--indigo-2);color:#E6E7EF;border-radius:var(--radius);padding:24px 24px 20px;border:1px solid rgba(238,223,176,.2)}
.dt-card h2{color:#fff;font-size:1.25rem;margin:0 0 4px;letter-spacing:0}
.dt-card .dt-sub{color:#B7BFD0;font-size:.9rem;margin:0 0 16px}
.dt-card .dt-empty{color:#CDD3E0;font-size:.97rem;margin:0}

.dt-row{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:12px 14px;border-radius:var(--radius-sm);margin:0 0 10px;font-size:.92rem;border:1px solid transparent}
.dt-row .lvl{font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:999px;border:1px solid currentColor;white-space:nowrap;margin-top:2px}
.dt-row b{display:block;font-weight:700;margin-bottom:2px}
.dt-row .when{display:block;font-family:var(--font-display);font-size:1.15rem;font-weight:600;margin:2px 0 4px}
.dt-row p{margin:0;line-height:1.5}
.dt-row .cite{font-size:.8rem;margin:6px 0 0;opacity:.9}
.dt-row.risk{background:#FBEDE4;border-color:#7A3319;color:#7A3319}
.dt-row.warn{background:#F7F1E4;border-color:var(--gold-2);color:var(--gold-2)}
.dt-row.ok{background:#EAF3EC;border-color:#154A33;color:#154A33}
.dt-row.note{background:var(--ivory-2);border-color:var(--ivory-2);color:var(--ink-soft)}
.dt-row.info{background:#E9EFF6;border-color:#E9EFF6;color:var(--steel-2)}
.dt-row .cite a{color:inherit;text-decoration:underline}

.dt-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.dt-actions .btn{min-height:var(--tap)}
.dt-foot{font-size:.8rem;color:#B7BFD0;margin:14px 0 0;line-height:1.5}
.dt-foot a{color:var(--gold-soft)}
.dt-copied{font-size:.85rem;color:var(--gold-soft);margin:8px 0 0;min-height:1.2em}

@media print{.dt-result{position:static}.dt-card{background:#fff;color:#000;border:1px solid #000}.dt-card h2{color:#000}}
