:root{--bg: #171513;--bg-raised: #211e1b;--bg-sunken: #0f0e0c;--border: #3a352f;--text: #f4f1ea;--text-dim: #a89f93;--accent: #d9a52e;--accent-press: #b9870f;--accent-ink: #1a1611;--good: #6fce8f;--warn: #e8743c;--bad: #ef6b6b;--radius: 14px;--tap: 48px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.2;margin:0 0 .5rem}h1{font-size:1.7rem}h2{font-size:1.3rem}h3{font-size:1.1rem}p{margin:0 0 .75rem}a{color:var(--accent)}button{font:inherit;cursor:pointer;border:none;border-radius:var(--radius);min-height:var(--tap);padding:0 1.1rem}.btn-primary{background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:1.05rem;width:100%}.btn-primary:active{background:var(--accent-press)}.btn-primary:disabled{opacity:.5;cursor:default}.btn-secondary{background:var(--bg-raised);color:var(--text);border:1px solid var(--border);font-weight:600}.btn-ghost{background:none;color:var(--accent);font-weight:600;min-height:var(--tap)}input,textarea{font:inherit;width:100%;background:var(--bg-sunken);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1rem;min-height:var(--tap)}textarea{min-height:110px;resize:vertical}input:focus,textarea:focus{outline:2px solid var(--accent);border-color:transparent}label{display:block;font-weight:600;margin-bottom:.35rem}.screen{max-width:560px;margin:0 auto;padding:1.25rem 1.1rem calc(76px + env(safe-area-inset-bottom));min-height:100%}.screen-centered{max-width:420px;margin:0 auto;padding:9vh 1.25rem 2rem}.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:.9rem}.muted{color:var(--text-dim)}.small{font-size:.85rem}.stack>*+*{margin-top:.75rem}.badge{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.2rem .6rem}.badge-good{background:#6fce8f24;color:var(--good)}.badge-warn{background:#e8743c26;color:var(--warn)}.badge-bad{background:#ef6b6b26;color:var(--bad)}.badge-dim{background:#a89f9326;color:var(--text-dim)}.status-line{font-weight:700;font-size:1rem}.status-neutral{color:var(--text)}.status-partial{color:var(--warn)}.status-none{color:var(--text-dim)}.citation{font-weight:800;font-size:1.15rem;letter-spacing:.01em}.freshness{font-size:.8rem;color:var(--text-dim);display:flex;align-items:center;gap:.4rem}.freshness .stale{color:var(--warn);font-weight:700}.disclaimer{font-size:.78rem;color:var(--text-dim);border-top:1px solid var(--border);padding-top:.6rem;margin-top:.8rem}.app-header{position:sticky;top:0;z-index:10;background:#171513eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);padding:.7rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:.6rem}.app-header .brand{font-weight:800;font-size:1.05rem}.jurisdiction-chip{font-size:.8rem;font-weight:700;background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;padding:.25rem .7rem;color:var(--text-dim)}.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;background:var(--bg-sunken);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.55rem 0 .5rem;min-height:var(--tap);text-decoration:none;color:var(--text-dim);font-size:.72rem;font-weight:700}.tabbar a.active{color:var(--accent)}.tabbar .tab-icon{font-size:1.25rem;line-height:1}.dev-banner{background:#2a2118;color:var(--accent);border-bottom:1px solid var(--accent-press);text-align:center;font-size:.75rem;font-weight:700;padding:.3rem .6rem}.present-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--bg);padding:2rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;justify-content:center}.present-overlay h1{font-size:2rem}.present-overlay p{font-size:1.35rem;line-height:1.4}.present-overlay .squad-prompt{color:var(--accent);font-weight:700}.expander{border-top:1px solid var(--border)}.expander summary{cursor:pointer;font-weight:700;padding:.7rem 0;min-height:var(--tap);display:flex;align-items:center;justify-content:space-between}ul.elements{padding-left:1.2rem;margin:.25rem 0 .75rem}ul.elements li{margin-bottom:.35rem}.feed-divider{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin:1.2rem 0 .6rem}.price-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.price{font-size:1.5rem;font-weight:800}.price .per{font-size:.85rem;font-weight:600;color:var(--text-dim)}.error-text{color:var(--bad);font-weight:600}.segmented{display:flex;flex-wrap:wrap;background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--radius);padding:4px;margin-bottom:1rem}.segmented button{flex:1;background:none;color:var(--text-dim);font-weight:700;border-radius:calc(var(--radius) - 4px);min-height:calc(var(--tap) - 8px)}.segmented button.active{background:var(--bg-raised);color:var(--text);border:1px solid var(--border)}
