:root{color-scheme:dark;--ink:#ecf4f7;--muted:#a7b7bf;--cyan:#57e1eb;--violet:#a990ff;--panel:#142129;--line:#2e424c}*{box-sizing:border-box}body{margin:0;background:#0d171c;color:var(--ink);font-family:Arial,sans-serif}a{color:inherit}.landing,.narrow{min-height:100vh;padding:24px clamp(20px,6vw,92px)}nav{display:flex;justify-content:space-between;align-items:center;gap:20px}.wordmark{font-size:24px;font-weight:800;text-decoration:none;letter-spacing:-1px}.wordmark span{color:var(--cyan)}.cta-row,.nav-actions,footer{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.nav-actions a,footer a{color:var(--muted);text-decoration:none}.hero{max-width:820px;padding:15vh 0 10vh}.eyebrow{color:var(--cyan);letter-spacing:.14em;font-size:12px;font-weight:700}h1{font-size:clamp(42px,8vw,88px);line-height:.96;letter-spacing:-.06em;margin:12px 0 24px}h2{font-size:20px;margin:0 0 8px}.narrow h1{font-size:clamp(32px,5vw,56px)}.lede,.narrow p{max-width:660px;color:var(--muted);font-size:20px;line-height:1.55}.button{display:inline-block;border:1px solid var(--cyan);background:var(--cyan);color:#071418;padding:12px 18px;border-radius:8px;font-weight:700;text-decoration:none}.button.quiet{background:transparent;color:var(--ink);border-color:var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px;max-width:1000px;padding-bottom:80px}.trust-grid article{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px}.muted,.notice p,.trust-grid p{color:var(--muted);line-height:1.5}footer{border-top:1px solid var(--line);padding-top:24px}.narrow{max-width:760px;margin:auto;padding-top:64px}.notice{margin:30px 0;border-left:3px solid var(--violet);padding:16px;background:#122027}.access-form{display:grid;grid-gap:16px;gap:16px;max-width:620px;margin:30px 0}.access-form label{display:grid;grid-gap:7px;gap:7px;font-weight:700}.access-form input{width:100%;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#0b1418;padding:12px;font:inherit}.access-form input:focus{outline:2px solid var(--cyan);outline-offset:2px}.access-form .button{justify-self:start;cursor:pointer}.access-form .button:disabled{cursor:wait;opacity:.72}.success{color:#8cf0b3;line-height:1.5}.error{color:#ffabb7;line-height:1.5}.dashboard{min-height:100vh;padding:24px clamp(20px,6vw,92px);max-width:1080px;margin:0 auto}.dashboard-head{margin:40px 0 8px}.dashboard-head h1{font-size:clamp(30px,5vw,52px);margin:0}.credit-line{color:var(--cyan);font-weight:700;margin:12px 0 0}.dev-badge{border:1px solid var(--violet);color:var(--violet);border-radius:6px;padding:3px 8px;font-size:11px;font-weight:800;letter-spacing:.08em}.history-panel,.upload-panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px;margin-top:24px}.upload-form{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px}.upload-form input[type=file]{color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#0b1418;padding:10px;font:inherit;max-width:100%}.upload-form input[type=file]:focus{outline:2px solid var(--cyan);outline-offset:2px}.button:disabled{cursor:wait;opacity:.72}.upload-flow{margin-top:16px}.status{color:var(--muted);line-height:1.5;margin:8px 0}.review-card{display:grid;grid-gap:14px;gap:14px;margin-top:12px;padding:18px;border:1px solid var(--line);border-radius:10px;background:#0f1b21;max-width:640px}.review-actions{display:flex;gap:12px;flex-wrap:wrap}.review-actions .button{cursor:pointer}.history-list{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.history-item{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#0f1b21}.history-date{color:var(--muted);font-size:14px}.history-item .button{margin-left:auto;cursor:pointer}.badge{font-size:12px;font-weight:800;letter-spacing:.04em;padding:4px 10px;border-radius:999px;border:1px solid var(--line);color:var(--ink)}.badge.state-report_ready{border-color:#2f7d55;color:#8cf0b3}.badge.state-failed_refunded{border-color:#7d3742;color:#ffabb7}.badge.state-queued,.badge.state-running,.badge.state-validating{border-color:#3a5a66;color:var(--cyan)}.report-view{min-height:100vh;display:flex;flex-direction:column}.report-nav{padding:14px clamp(16px,4vw,40px);border-bottom:1px solid var(--line)}.report-frame{flex:1 1 auto;width:100%;border:0;background:#fff;min-height:0}@media (max-width:680px){.trust-grid{grid-template-columns:1fr}.landing,.narrow{padding:20px}.hero{padding:12vh 0 8vh}.nav-actions{gap:10px}.dashboard{padding:20px}.history-item .button,.upload-form .button{margin-left:0}}