:root{color:#f4f5fb;background:#0c0d12;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;min-height:100dvh;background:radial-gradient(circle at 12% 12%,rgba(112,77,255,.18),transparent 34rem),radial-gradient(circle at 88% 82%,rgba(50,209,159,.1),transparent 30rem),#0c0d12}button,input{font:inherit}button{border:0;border-radius:13px;padding:13px 18px;color:#0e0f15;background:#d9d3ff;font-weight:750;cursor:pointer}button:hover:not(:disabled){background:#eeeaff;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55}.centered-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.auth-card{width:min(100%,460px);padding:34px;border:1px solid rgba(255,255,255,.1);border-radius:25px;background:#16171fe0;box-shadow:0 25px 90px #00000073;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#b5a8ff,#6c53ff);box-shadow:0 10px 32px #6c53ff59;color:#fff;font-size:17px;font-weight:900}.brand-mark.small{width:36px;height:36px;border-radius:11px;font-size:12px}.eyebrow{margin:22px 0 7px;color:#a99bff;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1{margin:0;font-size:clamp(29px,5vw,42px);line-height:1.05;letter-spacing:-.035em}.auth-intro,.notice,.security-note{color:#a9acb9;line-height:1.55}.factor-list{display:grid;gap:10px;padding:0;margin:27px 0;list-style:none}.factor-list li{display:flex;align-items:center;gap:13px;padding:13px;border:1px solid #292b35;border-radius:14px;color:#747784}.factor-list li>span{width:31px;height:31px;display:grid;place-items:center;border:1px solid #393c49;border-radius:50%;font-size:13px;font-weight:800}.factor-list div{display:grid;gap:3px}.factor-list strong{color:#c5c7d1}.factor-list small{font-size:12px}.factor-list li.active{border-color:#7562dd;background:#7562dd1c;color:#bcb1ff}.factor-list li.active>span{background:#7562dd;border-color:#7562dd;color:#fff}.factor-list li.done>span{background:#2cb88d;border-color:#2cb88d;color:#081711}.auth-card>button,form>button:not(.text-button){width:100%}form{display:grid;gap:10px}label{color:#d8dae3;font-size:13px;font-weight:700}input{width:100%;padding:15px;border:1px solid #393c49;border-radius:13px;outline:none;background:#111219;color:#fff;font-size:24px;font-weight:800;letter-spacing:.2em;text-align:center}input:focus{border-color:#9383f2;box-shadow:0 0 0 3px #9383f226}.text-button{padding:8px;background:transparent;color:#a99bff;font-size:13px}.text-button:hover:not(:disabled){background:transparent;color:#d5ceff;transform:none}.notice{padding:12px 14px;border-radius:12px;background:#ffffff0b;font-size:13px}.security-note{margin:23px 0 0;padding-top:18px;border-top:1px solid #292b35;font-size:12px}.error-message{padding:11px 13px;border:1px solid rgba(255,98,113,.32);border-radius:12px;color:#ffafb7;background:#ff4a5c17;font-size:13px}.loader{width:36px;height:36px;border:3px solid #2c2e38;border-top-color:#a99bff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.admin-layout{min-height:100dvh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{padding:23px 17px;display:flex;flex-direction:column;border-right:1px solid #242630;background:#0e0f15e6}.sidebar>div{display:flex;align-items:center;gap:11px;padding:0 8px 25px}.sidebar nav{display:grid;gap:5px}.sidebar nav a,.sidebar nav span{display:flex;justify-content:space-between;padding:11px 13px;border-radius:10px;color:#898c98;text-decoration:none;font-size:14px}.sidebar nav a.selected{color:#fff;background:#262833}.sidebar nav small{color:#676a75}.logout-button{margin-top:auto;color:#c1c3cd;background:#22242d}.dashboard{padding:clamp(25px,5vw,58px)}.dashboard header{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.dashboard header .eyebrow{margin-top:0}.session-pill{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #2d302f;border-radius:999px;color:#aaaeb5;background:#17191c;font-size:12px;white-space:nowrap}.session-pill span{width:8px;height:8px;border-radius:50%;background:#3bd39e;box-shadow:0 0 12px #3bd39e}.empty-dashboard{margin-top:55px;min-height:430px;display:grid;align-content:center;justify-items:center;padding:45px;border:1px dashed #353843;border-radius:24px;background:#ffffff05;text-align:center}.empty-dashboard h2{margin:18px 0 8px;font-size:25px}.empty-dashboard>p{max-width:590px;margin:0;color:#9699a6;line-height:1.55}.empty-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;color:#0d1a15;background:#5be0b5;font-size:24px;font-weight:900}.future-grid{width:min(100%,760px);display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px;text-align:left}.future-grid article{display:grid;gap:7px;padding:16px;border:1px solid #2c2e38;border-radius:14px;background:#15161d}.future-grid span{color:#848793;font-size:12px;line-height:1.45}@media(min-width:761px)and (max-width:1366px){.admin-layout{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding:20px 14px}.dashboard{padding:32px}.empty-dashboard{margin-top:32px;min-height:min(430px,calc(100dvh - 190px));padding:34px}}@media(min-width:761px)and (max-height:720px){.centered-page{padding:14px 24px}.auth-card{padding:24px 30px}.eyebrow{margin-top:14px}.factor-list{margin:18px 0}.factor-list li{padding:11px 13px}.security-note{margin-top:16px;padding-top:14px}}@media(max-width:760px){.admin-layout{grid-template-columns:1fr}.sidebar{min-height:auto;position:sticky;top:0;z-index:10;flex-direction:row;align-items:center;gap:12px;padding:max(12px,env(safe-area-inset-top)) 16px 12px;border-right:0;border-bottom:1px solid #242630;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar>div{padding:0}.sidebar>div strong{font-size:13px}.sidebar nav{display:none}.logout-button{margin:0 0 0 auto;padding:9px 13px}.dashboard{padding:24px 18px max(24px,env(safe-area-inset-bottom))}.dashboard header{display:grid}.dashboard h1{font-size:clamp(28px,9vw,36px)}.empty-dashboard{margin-top:28px;min-height:0;padding:32px 18px;border-radius:20px}.future-grid{grid-template-columns:1fr}.centered-page{place-items:start center;padding:max(20px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom))}.auth-card{margin:auto 0;padding:26px 22px}}
