:root{--bg:#0A0B0D;--bg2:#121418;--card:#16191E;--line:#262A31;--txt:#F2F4F7;--mut:#9AA3AF;--dim:#6B7280;--acc:#C6F432;--acc-ink:#0A0B0D;--acc-soft:rgba(198,244,50,.12);--ok:#34D399;--warn:#FBBF24;--bad:#F87171;--r:14px}
@media (prefers-color-scheme:light){:root{--bg:#F7F8F5;--bg2:#FFFFFF;--card:#FFFFFF;--line:#E3E6E0;--txt:#0B0D10;--mut:#4B5563;--dim:#6B7280;--acc:#B5E61D;--acc-ink:#0A0B0D;--acc-soft:rgba(140,190,0,.14);--ok:#059669;--warn:#B45309;--bad:#DC2626}}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--txt);line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}
a{color:inherit;text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:12px;font-weight:600;font-size:15px;border:1px solid var(--line);background:var(--bg2);color:var(--txt);cursor:pointer;transition:transform .15s,background .2s,border-color .2s;white-space:nowrap;font-family:inherit}
.btn:hover{border-color:var(--mut)}
.btn:active{transform:scale(.98)}
.btn.pri{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}
.btn.pri:hover{filter:brightness(1.06)}
.btn.sm{height:36px;padding:0 14px;font-size:13px;border-radius:10px}
input,select{font-family:inherit;font-size:15px;height:48px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg2);color:var(--txt);outline:none;width:100%}
input:focus,select:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-soft)}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:20px;letter-spacing:-.02em}
.logo b{color:var(--acc);font-weight:700}
@media (prefers-color-scheme:light){.logo b{color:#6E9A00}}
.logo svg{width:30px;height:30px}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;color:var(--mut);background:var(--bg2)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 0 var(--acc);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(198,244,50,.6)}70%{box-shadow:0 0 0 10px rgba(198,244,50,0)}100%{box-shadow:0 0 0 0 rgba(198,244,50,0)}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.mut{color:var(--mut)}
.err{color:var(--bad);font-size:13px;min-height:18px;margin-top:6px}
.fade{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.fade.in{opacity:1;transform:none}
code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
