:root{--ink:#0d1f38;--muted:#536178;--brand:#2157d8;--brand-dark:#15398e;--paper:#fff;--soft:#f0f5ff;--line:#d9e1ee;--risk:#a44813;--good:#087052;--shadow:0 20px 55px rgba(20,43,82,.12)}
*{box-sizing:border-box}body{margin:0;background:#f8faff;color:var(--ink);font:16px/1.55 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--brand-dark)}
.skip-link{position:absolute;left:-9999px;top:1rem;background:#fff;padding:.8rem 1rem;z-index:10}.skip-link:focus{left:1rem}
.site-header{height:70px;padding:0 max(1rem,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.65rem;color:var(--ink);font-weight:850;text-decoration:none}.brand img{display:block}main{max-width:1160px;margin:auto;padding:0 1.25rem}
.hero{padding:68px 0 38px;max-width:900px}.eyebrow,.result-label{color:var(--brand);font-size:.78rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
h1{font-size:clamp(2.3rem,6vw,4.6rem);letter-spacing:-.05em;line-height:1;margin:.35rem 0 1.2rem}h2{font-size:clamp(1.45rem,3vw,2.15rem);line-height:1.15;letter-spacing:-.025em}h3{line-height:1.25}
.lead{font-size:1.16rem;color:var(--muted);max-width:760px}.trust-row{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;list-style:none}.trust-row li{background:#e8f7f1;color:#075c45;padding:.4rem .7rem;border-radius:999px;font-size:.88rem;font-weight:750}
.studio{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:1.5rem}.upload-card,.results,.tool-grid,.faq{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(1.1rem,3vw,2rem);box-shadow:var(--shadow)}
.upload-card h2,.results h2{margin-top:0}.drop-zone{display:flex;min-height:230px;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:.45rem;background:var(--soft);border:2px dashed #97acd0;border-radius:14px;padding:1.2rem;cursor:pointer}.drop-zone:hover{border-color:var(--brand)}
.drop-zone input{position:absolute;width:1px;height:1px;opacity:0}.drop-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:15px;background:var(--brand);color:#fff;font-weight:900}.drop-zone strong{font-size:1.1rem}.drop-zone span:last-of-type{color:var(--muted);font-size:.9rem}
.file-state{min-height:1.5rem;font-weight:700}.privacy-note,.limitation{background:#fff6df;border-left:4px solid #d68a00;padding:1rem;font-size:.9rem}
button{border:0;border-radius:10px;padding:.78rem 1rem;font:inherit;font-weight:800;cursor:pointer}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-dark)}.secondary,.copy-button{background:#e7edfa;color:var(--ink)}button:disabled{opacity:.5;cursor:not-allowed}
button:focus-visible,a:focus-visible,label:focus-within,summary:focus-visible{outline:3px solid #f2a000;outline-offset:3px}.results{border-top:5px solid var(--good)}.results[data-risk="review"]{border-top-color:var(--risk)}.results[hidden]{display:none}
.score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.score-grid article{background:var(--soft);border-radius:12px;padding:1rem;min-width:0}.score-grid span,.score-grid small{display:block;color:var(--muted)}.score-grid strong{display:block;font-size:1.65rem}.score-grid code{display:block;overflow-wrap:anywhere;margin:.45rem 0;font-size:.78rem}
.result-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.result-columns ul{padding-left:1.2rem}.result-columns li{margin:.45rem 0}.tool-grid,.faq{margin-top:2rem}.tool-grid>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.tool-grid article{background:var(--soft);border-radius:12px;padding:1rem}.tool-grid b{color:var(--brand)}.tool-grid h3{font-size:1rem}
details{border-top:1px solid var(--line);padding:1rem 0}summary{font-weight:800;cursor:pointer}footer{text-align:center;color:var(--muted);padding:3rem 1rem}
@media(max-width:900px){.studio{grid-template-columns:1fr}.tool-grid>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){main{padding:0 .85rem}.hero{padding-top:48px}.score-grid,.result-columns,.tool-grid>div{grid-template-columns:1fr}.actions{display:grid;gap:.55rem}.actions button{width:100%}.site-header{height:62px;font-size:.9rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
