:root{--bg:#f6f7fb;--card:#fff;--ink:#16181d;--muted:#5c6273;--line:#e6e8ef;--acc:#4f46e5;--acc2:#eef0fe}
@media(prefers-color-scheme:dark){:root{--bg:#0f1117;--card:#171a22;--ink:#e8eaf0;--muted:#9aa1b1;--line:#2a2f3a;--acc:#8b89ff;--acc2:#20233a}}
*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}
a{color:var(--acc)}header,main,footer{max-width:860px;margin:0 auto;padding:1.1rem 1.2rem}
h1{font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.02em;margin:.4rem 0 .6rem}
.sub{color:var(--muted);font-size:1.05rem}
.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem;margin:1rem 0}
textarea,input,select{width:100%;border:1px solid var(--line);border-radius:10px;padding:.7rem;font:1rem/1.5 ui-sans-serif,system-ui;background:var(--bg);color:var(--ink)}
textarea{min-height:220px;resize:vertical}
.row{display:flex;gap:.5rem;flex-wrap:wrap;margin:.7rem 0}
button,.btn{border:0;border-radius:10px;padding:.55rem .9rem;background:var(--acc);color:#fff;font-weight:650;cursor:pointer;text-decoration:none;display:inline-block}
button.ghost{background:var(--acc2);color:var(--acc)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.6rem;margin-top:.8rem}
.stat{background:var(--acc2);border-radius:10px;padding:.7rem;text-align:center}
.stat b{display:block;font-size:1.3rem}
.stat span{color:var(--muted);font-size:.8rem}
.out{white-space:pre-wrap;word-break:break-word;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:.8rem;min-height:80px}
.badge{font-size:.78rem;color:var(--muted)}
footer{color:var(--muted);font-size:.88rem;border-top:1px solid var(--line)}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.8rem 1rem;margin:.45rem 0}