@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17211f;--muted:#71807b;--line:#dce5e0;--paper:#f6f8f5;--accent:#c9f269;--danger:#e76f51;--amber:#e9a23b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,system-ui,sans-serif}.shell{max-width:1180px;margin:auto;padding:28px 32px;min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.brand{color:var(--ink);font-size:19px;font-weight:800;text-decoration:none;letter-spacing:-.04em}.brand-mark{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:7px;background:var(--ink);color:var(--accent);border-radius:50%;font-size:13px}.nav-note,.eyebrow,small,.consent,.results-label,footer{font-family:'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.nav-note{color:var(--muted)}.hero{padding:105px 0 75px;max-width:780px}.eyebrow{color:#789060;margin:0 0 24px}.hero h1{font-size:clamp(42px,7vw,86px);letter-spacing:-.075em;line-height:.98;margin:0 0 30px;font-weight:700}.hero h1 em{font-style:normal;color:#87938e}.lede{max-width:520px;font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 42px}.scan-form{max-width:700px}.scan-form>label:first-child{display:block;font-size:12px;font-weight:700;margin-bottom:10px}.input-row{display:flex;background:#fff;border:1px solid var(--line);padding:6px;border-radius:12px;box-shadow:0 8px 35px #263d2d0a}.input-row input{min-width:0;flex:1;border:0;padding:14px;font:15px Manrope;outline:0;color:var(--ink)}button{border:0;background:var(--ink);color:#fff;padding:0 24px;border-radius:8px;font:600 14px Manrope;cursor:pointer}button:hover{background:#334b43}button span{color:var(--accent);font-size:20px;margin-left:12px}.consent{display:flex;align-items:center;gap:8px;margin-top:16px;color:var(--muted);text-transform:none;letter-spacing:0;font-family:Manrope;font-size:11px}.consent input{accent-color:var(--ink)}.error{color:var(--danger);font-size:12px;min-height:17px}.hidden{display:none!important}.state{text-align:center;padding:90px 0}.loader{width:28px;height:28px;border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.state p{font-weight:700}.state small{color:var(--muted);text-transform:none;letter-spacing:0}.results{padding:50px 0 80px;border-top:1px solid var(--line)}.result-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:34px}.result-head h2{font-size:clamp(28px,4vw,50px);letter-spacing:-.06em;margin:8px 0 0}.result-head p{color:var(--muted);margin:0}.score{font-size:42px;font-weight:800;letter-spacing:-.07em}.score.good{color:#4c8a62}.score.warn{color:var(--amber)}.score.bad{color:var(--danger)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;min-height:150px}.card h3{margin:12px 0 8px;font-size:15px}.card p{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.pill{display:inline-block;padding:5px 8px;border-radius:20px;background:#eef4ec;color:#527054;font:500 10px 'DM Mono'}.pill.warn{background:#fff4df;color:#9b6c20}.pill.bad{background:#ffebe6;color:#a74c38}.evidence{margin-top:36px}.evidence h3{font-size:18px}.finding{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px}.finding span:last-child{color:var(--muted);font-family:'DM Mono';font-size:11px}footer{margin-top:auto;padding-top:24px;border-top:1px solid var(--line);color:#9aa7a1;display:flex;justify-content:space-between} @media(max-width:700px){.shell{padding:20px}.hero{padding:72px 0 50px}.input-row{display:block;background:transparent;border:0;box-shadow:none;padding:0}.input-row input{width:100%;border:1px solid var(--line);border-radius:8px;margin-bottom:8px}.input-row button{height:50px;width:100%}.cards{grid-template-columns:1fr}.result-head{align-items:start;flex-direction:column}footer{display:block;line-height:2.2}}
