:root{color-scheme:light;--ink:#162019;--muted:#526057;--paper:#fbfcf7;--panel:#fff;--line:#d8ded8;--brand:#176a45;--brand-dark:#0d4f31;--soft:#e8f5ec;--error:#9d261f;--shadow:0 18px 50px rgba(22,32,25,.08);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}a{color:var(--brand-dark)}.skip{position:absolute;left:-999px;top:8px}.skip:focus{left:8px;background:#fff;padding:8px;z-index:20}header{min-height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:28px;padding:0 max(24px,calc((100% - 1120px)/2));background:rgba(251,252,247,.96);position:sticky;top:0;z-index:10}.brand{font-weight:800;font-size:1.1rem;text-decoration:none;white-space:nowrap}nav{display:flex;gap:18px;overflow:auto;margin-left:auto}nav a{font-size:.88rem;text-decoration:none;white-space:nowrap}.nav-toggle{display:none}main{max-width:1120px;margin:0 auto;padding:54px 24px 80px}.hero,.home-hero{max-width:780px;margin-bottom:40px}.hero h1,.home-hero h1{font-size:clamp(2.25rem,7vw,4.8rem);letter-spacing:-.055em;line-height:1.02;margin:.15em 0}.home-hero p,.hero>p{font-size:1.2rem;max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem!important;font-weight:800;color:var(--brand)}.local{background:var(--soft);border-left:4px solid var(--brand);padding:12px 16px;border-radius:4px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.card{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid var(--line);background:var(--panel);border-radius:16px;text-decoration:none;box-shadow:var(--shadow)}.card span{font-weight:800;font-size:1.25rem}.card small{color:var(--muted);font-size:.94rem}.principles,.explain,.prose{max-width:760px;margin-top:48px}.workspace,.result{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow);margin:24px 0}.input-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:24px}.options{display:flex;flex-direction:column;gap:12px}label,legend{font-weight:700;display:block;margin:0 0 7px}textarea,select,input[type=file]{width:100%;border:1px solid #aeb8b0;border-radius:8px;background:#fff;color:var(--ink);padding:11px;font:14px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}select{font-family:inherit}textarea{resize:vertical;min-height:120px}textarea:focus,select:focus,input:focus,button:focus{outline:3px solid #80c89f;outline-offset:2px}.check{font-weight:500;display:flex;gap:9px;align-items:flex-start}.check input{margin-top:5px}fieldset{border:1px solid var(--line);border-radius:9px;padding:12px}.hint{color:var(--muted);font-size:.88rem}.actions,.result-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.actions{margin-top:20px}button{border:0;border-radius:8px;background:var(--brand);color:#fff;padding:11px 17px;font-weight:750;cursor:pointer}button:hover{background:var(--brand-dark)}button.secondary{background:#e5efe8;color:var(--brand-dark)}button.quiet{background:transparent;color:var(--muted)}button:disabled{opacity:.55;cursor:wait}.message{margin-top:16px;min-height:1.5em}.message.error{color:var(--error);font-weight:700}.message.success{color:var(--brand-dark);font-weight:700}.result-head{justify-content:space-between}.result h2{margin:0}.summary-grid{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.metric{background:var(--soft);border-radius:9px;padding:9px 13px}.metric strong{display:block;font-size:1.2rem}.error-list{max-height:300px;overflow:auto;background:#fff4f2;padding:12px 12px 12px 32px;border-radius:8px}.prose h1{font-size:3rem;letter-spacing:-.04em}.prose h2{margin-top:2em}footer{border-top:1px solid var(--line);max-width:1120px;margin:0 auto;padding:32px 24px 56px;color:var(--muted)}@media(max-width:780px){header{padding:14px 20px;flex-wrap:wrap}.nav-toggle{display:block;margin-left:auto}.nav-toggle[aria-expanded=false]+nav{display:none}nav{width:100%;display:grid;gap:9px}.cards,.input-grid{grid-template-columns:1fr}main{padding:36px 18px 64px}.workspace,.result{padding:19px}.hero h1,.home-hero h1{font-size:2.65rem}.prose h1{font-size:2.4rem}}
