:root{--bg:#071a33;--card:#0b2446;--stroke:rgba(255,255,255,.08);--text:#e8f0ff;--muted:rgba(232,240,255,.7);--btn:#2563eb;--btn2:rgba(255,255,255,.12);--bad:#ff4d4d;--ok:#3ddc97;}
*{box-sizing:border-box;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;}
body{margin:0;background:radial-gradient(1200px 600px at 20% 0%, #0a2b58 0%, var(--bg) 60%);color:var(--text);}
.wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;}
.card{width:min(620px,100%);background:rgba(11,36,70,.9);border:1px solid var(--stroke);border-radius:18px;box-shadow:0 14px 50px rgba(0,0,0,.45);padding:22px;backdrop-filter: blur(6px);}
.card.wide{width:min(900px,100%)}
.top{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:6px;}
.brand{font-weight:900;letter-spacing:1px}
.pill{font-size:12px;color:var(--muted);border:1px solid var(--stroke);padding:4px 10px;border-radius:999px}
.link{color:var(--muted);text-decoration:none;border:1px solid var(--stroke);padding:6px 10px;border-radius:10px}
.link:hover{color:var(--text)}
h1{margin:10px 0 4px;font-size:28px}
h2{margin:12px 0 8px;font-size:18px}
.muted{color:var(--muted)}
.small{font-size:12px}
.row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:none;background:var(--btn);color:white;padding:10px 14px;border-radius:12px;font-weight:800;cursor:pointer;text-decoration:none}
.btn.secondary{background:var(--btn2);border:1px solid var(--stroke)}
.btn:active{transform:translateY(1px)}
label{display:block;margin-top:10px;color:var(--muted);font-size:13px}
input{width:100%;margin-top:6px;padding:10px 12px;border-radius:12px;border:1px solid var(--stroke);background:rgba(0,0,0,.18);color:var(--text);outline:none}
input:focus{border-color:rgba(37,99,235,.8)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:10px}
@media (max-width:820px){.grid2{grid-template-columns:1fr}}
.notice{margin:12px 0;padding:10px 12px;border-radius:12px;border:1px solid var(--stroke);background:rgba(0,0,0,.12);color:var(--muted)}
.notice.bad{border-color:rgba(255,77,77,.55);color:#ffd1d1}
.notice.ok{border-color:rgba(61,220,151,.55);color:#c8ffe8}
.box{border:1px solid var(--stroke);border-radius:14px;padding:12px;margin-top:10px;background:rgba(0,0,0,.10)}
.footer{margin-top:16px;color:rgba(232,240,255,.5);font-size:12px}
