:root{--bg:#f8fafc;--fg:#0f172a;--mu:#64748b;--cd:#fff;--bd:#e2e8f0;--ac:#4f46e5;--ac2:#06b6d4}
@media(prefers-color-scheme:dark){:root{--bg:#0b1020;--fg:#e5e7eb;--mu:#94a3b8;--cd:#131a31;--bd:#26304f}}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg)}
a{color:var(--ac);text-decoration:none}.w{max-width:1080px;margin:auto;padding:0 16px}
header{background:var(--cd);border-bottom:1px solid var(--bd);position:sticky;top:0;z-index:5}.hd{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:10px 16px}
.logo{font-size:1.4rem;color:var(--fg);font-weight:500}.logo b{color:var(--ac)}nav a{margin-right:14px;color:var(--mu);font-size:.92rem}nav a:hover{color:var(--ac)}
.hero{text-align:center;padding:40px 0 20px}.hero h1{font-size:clamp(1.7rem,4vw,2.6rem);margin:0 0 8px;background:linear-gradient(90deg,var(--ac),var(--ac2));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:var(--mu)}#q{width:100%;max-width:560px;padding:14px 18px;border-radius:999px;border:1px solid var(--bd);background:var(--cd);color:var(--fg);font-size:1rem}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:20px 0}.cat{display:flex;flex-direction:column;align-items:center;padding:18px;background:var(--cd);border:1px solid var(--bd);border-radius:16px;color:var(--fg)}.cat i{font-size:2rem;font-style:normal}.cat small{color:var(--mu)}.cat:hover{border-color:var(--ac)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin:12px 0 24px;text-align:left}.card{padding:12px 14px;background:var(--cd);border:1px solid var(--bd);border-radius:12px;color:var(--fg);font-size:.93rem}.card:hover{border-color:var(--ac);transform:translateY(-1px)}
.box{background:var(--cd);border:1px solid var(--bd);border-radius:18px;padding:20px;max-width:640px}.calc{display:grid;gap:12px}label{display:grid;gap:4px;font-size:.88rem;color:var(--mu)}
input,select{padding:11px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--fg);font-size:1rem;width:100%}input:focus,select:focus{outline:2px solid var(--ac)}
button{padding:12px;border:0;border-radius:10px;background:linear-gradient(90deg,var(--ac),var(--ac2));color:#fff;font-weight:600;font-size:1rem;cursor:pointer}
.out{margin-top:16px;display:grid;gap:8px}.row{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;background:var(--bg);border-left:4px solid var(--ac)}.row b{font-size:1.1rem;text-align:right}
.bc{font-size:.85rem;color:var(--mu);margin:16px 0}.lead{color:var(--mu)}h1{margin:.4em 0}footer{margin-top:50px;padding:24px 0;border-top:1px solid var(--bd);color:var(--mu);font-size:.88rem;text-align:center}
