:root{--bg:#0e0b14;--panel:#19131f;--panel2:#221a2b;--ink:#ece7f2;--mute:#ab9fbd;--fel:#7ed957;--fel2:#b4f08e;--violet:#a66bff;--line:#352a42}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(1000px 480px at 90% -10%,rgba(126,217,87,.14),transparent 60%),radial-gradient(900px 460px at 0% 0%,rgba(166,107,255,.16),transparent 60%),var(--bg);color:var(--ink);font:17px/1.7 Manrope,system-ui,sans-serif}
.wrap{max-width:960px;margin:0 auto;padding:0 16px}
a{color:var(--fel2);text-decoration:none}a:hover{color:#fff}
a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--fel2);outline-offset:3px;border-radius:6px}
h1,h2,h3,.brand{font-family:"Marcellus SC",Georgia,serif;letter-spacing:-.01em;line-height:1.2}
h1{font-size:clamp(28px,5vw,44px);margin:28px 0 10px;color:var(--fel2)}
h2{font-size:24px;margin:32px 0 8px;color:var(--fel)}
.top{border-bottom:1px solid var(--line);background:rgba(14,11,20,.86);position:sticky;top:0;backdrop-filter:blur(6px);z-index:5}
.top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding:12px 16px}
.brand{font-size:21px;color:var(--ink);display:flex;align-items:center;gap:10px}
.rune{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--violet),#4b1d8f);color:#fff;font:700 14px Manrope,sans-serif;box-shadow:0 0 16px rgba(166,107,255,.45)}
nav{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:15px}nav a{color:var(--mute)}nav a:hover{color:var(--fel2)}
.hero{padding:30px 0 6px}.hero p{color:var(--mute);max-width:640px;font-size:19px}
.tool{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:20px;margin:20px 0 10px;box-shadow:0 18px 40px -20px rgba(0,0,0,.75),0 0 30px -18px rgba(126,217,87,.35)}
.tool h2{margin:0 0 12px}
.tool-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
@media (max-width:700px){.tool-body{grid-template-columns:1fr}}
#calc label{display:block;font-weight:600;font-size:15px;margin-bottom:12px}
select,input{display:block;width:100%;margin-top:4px;background:#0b0810;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:16px Manrope,sans-serif}
#calc-out{background:#0b0810;border:1px solid var(--line);border-radius:12px;padding:16px}
#calc-out p{margin:4px 0}.big{font:28px "Marcellus SC",serif;color:var(--fel2)}
.meter{height:10px;background:#2a2033;border-radius:6px;overflow:hidden;margin:12px 0}
.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--fel));transform-origin:left;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.ok{color:var(--fel2)}.muted,.note{color:var(--mute)}.note{font-size:14px;margin:12px 0 0}
.sec{margin-top:40px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:16px 0 50px}
.card{display:block;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:12px;padding:20px;color:var(--ink);box-shadow:0 12px 30px -16px rgba(0,0,0,.7);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}
.card:hover{transform:translateY(-3px);color:var(--ink)}.card:active{transform:translateY(0)}
.card h3{margin:0 0 6px;color:var(--fel2);font-size:20px}.card p{margin:0 0 12px;color:var(--mute);font-size:15px}.card span{color:var(--violet);font-weight:700;font-size:14px}
article{max-width:720px;padding-bottom:50px}.lead{font-size:20px;color:var(--mute)}.crumb{font-size:14px;color:var(--mute);margin-top:24px}
ul{padding-left:22px}li{margin:6px 0}strong{color:#fff}
footer{border-top:1px solid var(--line);color:var(--mute);font-size:13px;padding:20px 0 30px}
