:root{--bg-0: #071525;--bg-1: #0B1F3A;--surface: #0F2742;--graphite: #1F2937;--glass: rgba(15, 39, 66, .78);--glass-brd: rgba(200, 169, 107, .2);--txt: #FFFFFF;--txt-dim: #AEBACB;--platinum: #E5E7EB;--gold: #C8A96B;--gold-2: #b8965a;--gold-soft: rgba(200, 169, 107, .12);--brand: #C8A96B;--green: #4ADE80;--danger: #E5707E;--radius: 14px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:"Exo 2",system-ui,-apple-system,Segoe UI,sans-serif;color:var(--txt);background:var(--bg-0);overflow-x:hidden}.aurora{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(70% 55% at 18% 8%,rgba(200,169,107,.07),transparent 60%),radial-gradient(60% 50% at 85% 92%,rgba(31,41,55,.55),transparent 60%),linear-gradient(160deg,var(--bg-1) 0%,var(--bg-0) 70%)}.fx-canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:block;opacity:.5}.app-layer{position:relative;z-index:2}h1,h2,h3,.font-display{font-family:Orbitron,"Exo 2",sans-serif;letter-spacing:.06em}.neon{color:var(--platinum);text-shadow:0 1px 0 rgba(0,0,0,.4),0 0 18px rgba(200,169,107,.18)}.glass{background:var(--glass);border:1px solid var(--glass-brd);border-radius:var(--radius);backdrop-filter:blur(14px) saturate(115%);-webkit-backdrop-filter:blur(14px) saturate(115%);box-shadow:0 24px 60px #00000073,inset 0 1px #e5e7eb0d}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:400px;padding:38px 34px}.brand-badge{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;font-family:Orbitron;font-weight:800;font-size:21px;letter-spacing:.02em;color:var(--gold);background:linear-gradient(135deg,var(--surface),var(--graphite));border:1px solid rgba(200,169,107,.45);box-shadow:0 0 22px -6px #c8a96b73,inset 0 1px #e5e7eb0f;margin-bottom:18px}.title{font-size:26px;margin:0 0 4px;color:var(--platinum)}.subtitle{color:var(--txt-dim);font-size:14px;margin:0 0 26px}.field{width:100%;padding:13px 15px;margin-bottom:14px;font-size:15px;color:var(--txt);background:#e5e7eb0a;border:1px solid rgba(229,231,235,.12);border-radius:11px;outline:none;transition:border-color .2s,box-shadow .2s;font-family:inherit}.field::placeholder{color:#7d8aa0}.field:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c8a96b29}.field.code{letter-spacing:10px;text-align:center;font-size:22px;font-family:Orbitron;color:var(--platinum)}.btn{width:100%;padding:14px;font-size:15px;font-weight:700;cursor:pointer;color:#0b1f3a;border:none;border-radius:11px;font-family:inherit;letter-spacing:.02em;background:linear-gradient(135deg,var(--gold),var(--gold-2));box-shadow:0 10px 26px -8px #c8a96b80;transition:transform .15s,box-shadow .2s,opacity .2s}.btn:hover:not(:disabled){box-shadow:0 14px 32px -8px #c8a96bb3;transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.err{color:var(--danger);font-size:13px;margin-top:12px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid rgba(200,169,107,.14);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b1f3a8c}.topbar h1{font-size:19px;margin:0;color:var(--platinum)}.logout{background:transparent;border:1px solid rgba(229,231,235,.18);color:var(--txt-dim);padding:8px 16px;border-radius:9px;cursor:pointer;font-family:inherit;font-size:13px;transition:all .2s}.logout:hover{color:var(--gold);border-color:var(--gold)}.portal-main{max-width:1180px;margin:0 auto;padding:40px 28px 64px}.portal-head{text-align:center;margin-bottom:40px}.portal-head h2{font-size:clamp(26px,4vw,40px);margin:0 0 8px;color:var(--platinum)}.portal-head p{color:var(--txt-dim);margin:0}.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));perspective:1400px}.card{position:relative;padding:24px;cursor:pointer;text-align:left;transform-style:preserve-3d;transition:transform .25s cubic-bezier(.2,.7,.3,1),box-shadow .25s,border-color .25s;will-change:transform;overflow:hidden}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius);background:radial-gradient(120% 80% at 50% -10%,var(--accent, var(--gold)),transparent 55%);opacity:.1;transition:opacity .25s}.card:hover{border-color:var(--accent, var(--gold));box-shadow:0 26px 64px #00000080,0 0 24px -10px var(--accent, var(--gold))}.card:hover:before{opacity:.2}.card-ico{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-family:Orbitron;font-weight:700;color:#0b1f3a;margin-bottom:16px;background:linear-gradient(135deg,var(--accent, var(--gold)),rgba(229,231,235,.5));box-shadow:0 0 18px -4px var(--accent, var(--gold));transform:translateZ(40px)}.card h3{font-size:16px;margin:0 0 6px;color:var(--platinum);transform:translateZ(28px)}.card .desc{color:var(--txt-dim);font-size:13px;margin:0 0 14px;transform:translateZ(18px)}.card .status{font-size:12px;color:var(--green);font-weight:600;transform:translateZ(14px)}.card .arrow{position:absolute;top:22px;right:22px;color:var(--txt-dim);transition:transform .25s,color .25s;transform:translateZ(30px)}.card:hover .arrow{color:var(--accent, var(--gold));transform:translateZ(30px) translate(3px)}@media (prefers-reduced-motion: reduce){.card,.btn,.arrow{transition:none}}
