:root { color-scheme: light; --ink:#25211f; --paper:#f5f0e8; --card:#fffdf8; --accent:#a34f38; --muted:#786f68; --line:#ded3c7; font-family: Georgia, 'Times New Roman', serif; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:radial-gradient(circle at 80% 0,#ead8c4 0,transparent 35rem),var(--paper); }
#app { min-height:100vh; }
.result-hero,.result-content,.state-card { width:min(760px,calc(100% - 2rem)); margin-inline:auto; }
.result-hero { padding:clamp(4rem,12vw,8rem) 0 3rem; border-bottom:1px solid var(--line); }
.eyebrow { font:700 .75rem/1.2 system-ui,sans-serif; letter-spacing:.22em; color:var(--accent); }
h1 { margin:.55rem 0 1.2rem; font-size:clamp(2.6rem,8vw,5.2rem); line-height:.96; font-weight:500; letter-spacing:-.04em; }
.lead { font-size:clamp(1.12rem,2.5vw,1.4rem); line-height:1.65; }
.expiry { color:var(--muted); font:500 .85rem/1.4 system-ui,sans-serif; }
.result-content { padding:3rem 0 6rem; display:grid; gap:1.2rem; }
.content-group { padding:clamp(1.3rem,4vw,2.2rem); background:color-mix(in srgb,var(--card) 92%,transparent); border:1px solid var(--line); border-radius:1.2rem; box-shadow:0 16px 50px #6845320b; }
.content-group h3 { margin:0 0 1rem; color:var(--accent); font-size:1.45rem; }
.content-group p,.content-card p { font-size:1.04rem; line-height:1.62; }
.content-card { padding:.8rem 0 .8rem 1.2rem; border-left:2px solid var(--line); }
.result-list { display:grid; gap:.45rem; }
.print-button { justify-self:start; margin-top:1rem; padding:.9rem 1.2rem; border:0; border-radius:999px; background:var(--ink); color:white; font:700 .9rem/1 system-ui,sans-serif; cursor:pointer; }
.print-button:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.state-card { min-height:100vh; display:grid; align-content:center; padding:3rem 0; }
.state-card h1 { max-width:14ch; font-size:clamp(2.3rem,7vw,4.5rem); }
@media (max-width:520px) { .result-hero,.result-content,.state-card { width:min(100% - 1.25rem,760px); } .content-group { border-radius:.8rem; } }
@media print { body { background:white; } .result-hero { padding-top:1rem; } .print-button { display:none; } .content-group { break-inside:avoid; box-shadow:none; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; } }
