:root{--bg: #f4efe8;--card: #fffdf8;--ink: #1f2427;--muted: #5b6267;--accent: #e2552f;--accent-strong: #b63d1e;--line: #e6d8cb}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:var(--ink);min-height:100vh;background:radial-gradient(circle at 15% 20%,#ffe5d2 0%,transparent 30%),radial-gradient(circle at 85% 10%,#ffd9b0 0%,transparent 38%),linear-gradient(165deg,#f5f1ec,#efe4d8)}.app-shell{max-width:980px;margin:0 auto;padding:1rem;display:grid;gap:1rem}.hero-card,.card{background:color-mix(in srgb,var(--card) 88%,#ffffff 12%);border:1px solid var(--line);border-radius:20px;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-strong);font-size:.75rem;font-weight:700}h1{margin:.35rem 0;font-size:clamp(1.5rem,6vw,2.4rem)}.subtitle{margin:0 0 .9rem;color:var(--muted)}label{display:block;font-size:.85rem;margin-bottom:.35rem}input{width:100%;border:1px solid var(--line);border-radius:12px;padding:.85rem;font-size:.95rem;background:#fff}button{margin-top:.75rem;width:100%;border:0;border-radius:999px;padding:.9rem 1rem;background:linear-gradient(135deg,var(--accent),#ef7a43);color:#fff;font-weight:700;font-size:1rem}button:disabled{opacity:.65}.error-text{color:#a52020;margin-top:.7rem}.result-stack{display:grid;gap:1rem}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.stat-label{color:var(--muted);margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.stat-value{margin:.25rem 0 0;font-size:1.3rem;font-weight:700}h2{margin:0;font-size:1.05rem}.meta{margin:.35rem 0 .8rem;color:var(--muted);font-size:.9rem}ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}li{display:grid;grid-template-columns:1fr auto;gap:.35rem .6rem;padding-bottom:.45rem;border-bottom:1px dashed var(--line)}li span:first-child{word-break:break-word;font-size:.9rem}li span:not(:first-child){color:var(--muted);font-size:.82rem}@media(min-width:760px){.app-shell{padding:2rem;gap:1.2rem}.hero-card,.card{padding:1.25rem 1.35rem}.stat-grid{grid-template-columns:repeat(4,1fr)}li{grid-template-columns:minmax(320px,1fr) auto auto;align-items:baseline}}
