:root{--ink:#172033;--muted:#6f7c91;--line:#e6ebf2;--surface:#fff;--canvas:#f4f7fb;--navy:#142238;--navy-soft:#1b2d48;--blue:#4f7cff;--blue-dark:#315fd9;--cyan:#4dc8d8;--green:#26a96c;--amber:#d89423;--shadow:0 20px 55px #1d304e1a}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #4f7cff47}.brand{align-items:center;gap:12px;display:inline-flex}.brand>span:last-child{gap:2px;display:grid}.brand strong{letter-spacing:-.02em;font-size:17px}.brand small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px}.brand-mark{color:#fff;letter-spacing:-.03em;background:linear-gradient(145deg,#5d8aff,#3a64e8);border-radius:13px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:800;display:grid;box-shadow:0 12px 28px #4f7cff52}.brand-on-dark strong{color:#fff}.brand-on-dark small{color:#8fa2bd}.eyebrow{color:var(--blue-dark);letter-spacing:.16em;font-size:10px;font-weight:800;display:inline-block}.eyebrow-light{color:#8faeff}.login-page{background:#fff;grid-template-columns:minmax(360px,.9fr) minmax(500px,1.1fr);min-height:100vh;display:grid}.login-story{color:#fff;background:radial-gradient(circle at 78% 18%,#4dc8d82e,#0000 28%),radial-gradient(circle at 15% 80%,#4f7cff3d,#0000 36%),linear-gradient(145deg,#0f1d31 0%,#172a46 58%,#132238 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:54px clamp(42px,5vw,78px);display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:460px;height:460px;position:absolute;bottom:-170px;right:-150px;box-shadow:0 0 0 54px #ffffff06,0 0 0 108px #ffffff05}.story-copy{z-index:1;max-width:520px;position:relative}.story-copy h1{letter-spacing:-.055em;max-width:500px;margin:18px 0 22px;font-size:clamp(42px,5.2vw,70px);line-height:1.02}.story-copy p{color:#aebbd0;max-width:490px;margin:0;font-size:17px;line-height:1.75}.security-note{z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0e;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:12px;width:fit-content;padding:14px 18px;display:flex;position:relative}.security-note>span:last-child{gap:3px;display:grid}.security-note strong{font-size:13px}.security-note small{color:#9daec5;font-size:11px}.security-icon{color:#75e1bb;background:#26a96c24;border-radius:10px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.login-panel{background-color:#fff;background-image:linear-gradient(#e6ebf26b 1px,#0000 1px),linear-gradient(90deg,#e6ebf26b 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:36px 36px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;place-items:center;min-height:100vh;padding:54px 28px;display:grid}.login-card{width:min(100%,440px);box-shadow:var(--shadow);background:#fffffff5;border:1px solid #dfe5eee6;border-radius:24px;padding:50px}.mobile-brand{margin-bottom:34px;display:none}.login-card h2{letter-spacing:-.04em;margin:12px 0 8px;font-size:34px;line-height:1.15}.form-intro,.support-copy{color:var(--muted);font-size:13px;line-height:1.6}.form-intro{margin:0 0 32px}.login-form{gap:11px;display:grid}.login-form label{color:#344159;margin-top:8px;font-size:12px;font-weight:700}.input-wrap{background:#fbfcfe;border:1px solid #dfe5ee;border-radius:13px;align-items:center;transition:border-color .16s,box-shadow .16s;display:flex}.input-wrap:focus-within{border-color:#86a4ff;box-shadow:0 0 0 4px #4f7cff1a}.input-wrap>span{color:#94a0b3;text-align:center;width:46px;font-size:13px;font-weight:700}.input-wrap input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:14px 14px 14px 0;font-size:13px}.input-wrap input::placeholder{color:#a7b0be}.form-error{color:#c33b4f;min-height:20px;font-size:12px;line-height:1.5}.primary-button{color:#fff;background:linear-gradient(135deg, var(--blue), var(--blue-dark));cursor:pointer;border:0;border-radius:13px;justify-content:space-between;align-items:center;width:100%;margin-top:2px;padding:14px 17px;font-size:13px;font-weight:750;transition:transform .16s,box-shadow .16s,opacity .16s;display:flex;box-shadow:0 12px 26px #315fd93d}.primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 15px 30px #315fd94d}.primary-button:disabled{cursor:wait;opacity:.7}.support-copy{text-align:center;margin:24px 0 0;font-size:11px}.dashboard-loading{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:16px;display:grid}.loading-mark{color:#fff;background:var(--blue);border-radius:18px;place-items:center;width:56px;height:56px;font-weight:800;animation:1.4s ease-in-out infinite breathe;display:grid;box-shadow:0 18px 36px #4f7cff42}@keyframes breathe{50%{transform:translateY(-4px)}}.dashboard-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#b9c5d6;background:linear-gradient(180deg, var(--navy) 0%, #101c2e 100%);flex-direction:column;height:100vh;padding:26px 18px 20px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff12;padding:0 8px 26px}.sidebar-nav{gap:6px;padding-top:25px;display:grid}.nav-label{color:#6f829d;letter-spacing:.16em;padding:0 12px 8px;font-size:9px;font-weight:800}.nav-label-spaced{padding-top:20px}.nav-item{color:#9fadc0;cursor:default;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;width:100%;padding:11px 13px;font-size:12px;text-decoration:none;display:flex}.nav-item>span{color:#7790b1;text-align:center;width:19px;font-size:15px}.nav-item small{color:#8faeff;text-transform:uppercase;background:#4f7cff1f;border-radius:6px;margin-left:auto;padding:3px 6px;font-size:8px;font-weight:800}.nav-item.active{color:#fff;background:linear-gradient(135deg,#4f7cff42,#4f7cff21);box-shadow:inset 3px 0 #6d93ff}.nav-item.active>span{color:#8faeff}.nav-item:disabled{opacity:.72}.sidebar-foot{background:#ffffff09;border:1px solid #ffffff12;border-radius:13px;align-items:center;gap:10px;margin-top:auto;padding:14px;display:flex}.sidebar-foot>span:last-child{gap:2px;display:grid}.sidebar-foot strong{color:#e3e9f1;font-size:10px}.sidebar-foot small{color:#7f92ac;font-size:9px}.environment-dot{background:#42c987;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #42c9871a}.dashboard-main{min-width:0}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;justify-content:space-between;align-items:center;min-height:76px;padding:14px clamp(22px,4vw,48px);display:flex;position:sticky;top:0}.topbar>div:first-child{gap:3px;display:grid}.topbar>div:first-child strong{font-size:14px}.mobile-kicker{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:9px;display:none}.admin-profile{align-items:center;gap:11px;display:flex}.profile-avatar{color:#fff;background:linear-gradient(145deg,#263c5f,#17263e);border-radius:12px;place-items:center;width:38px;height:38px;font-size:11px;font-weight:800;display:grid}.profile-copy{gap:2px;min-width:118px;display:grid}.profile-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:11px;overflow:hidden}.profile-copy small{color:var(--muted);font-size:9px}.logout-button{border:1px solid var(--line);color:#536176;cursor:pointer;background:#fff;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:700}.logout-button:hover:not(:disabled){color:var(--ink);border-color:#cbd5e3}.dashboard-content{gap:26px;padding:34px clamp(22px,4vw,48px) 52px;display:grid}.welcome-card{color:#fff;background:radial-gradient(circle at 84% 30%,#4dc8d829,#0000 27%),linear-gradient(125deg,#172b49,#1e3c67 72%,#254873);border-radius:22px;justify-content:space-between;align-items:center;min-height:230px;padding:clamp(30px,4vw,50px);display:flex;position:relative;overflow:hidden;box-shadow:0 20px 45px #172b4926}.welcome-card:after{content:"";border:1px solid #ffffff1a;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-120px;right:-70px}.welcome-card>div:first-child{z-index:1;max-width:680px;position:relative}.welcome-card h1{letter-spacing:-.045em;margin:13px 0 12px;font-size:clamp(29px,4vw,44px)}.welcome-card p{color:#b8c7da;max-width:650px;margin:0;font-size:13px;line-height:1.75}.welcome-badge{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff12;border:1px solid #ffffff21;border-radius:18px;place-items:center;gap:4px;min-width:115px;padding:22px;display:grid;position:relative}.welcome-badge span{letter-spacing:-.05em;font-size:35px;font-weight:800}.welcome-badge small{color:#aebed2;text-transform:uppercase;font-size:9px}.section-heading{justify-content:space-between;align-items:end;padding-top:3px;display:flex}.section-heading h2,.account-card h2{letter-spacing:-.03em;margin:8px 0 0;font-size:20px}.live-chip{color:#287c56;background:#f1faf6;border:1px solid #dcebe4;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:9px;font-weight:750;display:inline-flex}.live-chip i{background:var(--green);border-radius:50%;width:6px;height:6px}.module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.module-card{border:1px solid var(--line);background:var(--surface);border-radius:17px;min-height:190px;padding:21px;position:relative;box-shadow:0 10px 26px #1d304e0b}.module-icon{color:#54708f;background:#eef2f7;border-radius:12px;place-items:center;width:39px;height:39px;font-size:10px;font-weight:800;display:grid}.module-icon.ready{color:#fff;background:linear-gradient(145deg, var(--blue), var(--blue-dark))}.module-icon.next{color:#7c5a17;background:#fff5dc}.status-chip{color:#758298;letter-spacing:.06em;text-transform:uppercase;background:#f1f4f8;border-radius:7px;padding:4px 7px;font-size:8px;font-weight:800;position:absolute;top:22px;right:20px}.status-chip.ready{color:#248156;background:#eaf8f1}.status-chip.next{color:#946719;background:#fff5dc}.module-card h3{letter-spacing:-.02em;margin:25px 0 7px;font-size:14px}.module-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.65}.account-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:34px;padding:28px;display:grid}.account-card p{max-width:620px;color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.7}.account-details{gap:10px;margin:0;display:grid}.account-details>div{border-bottom:1px solid #eef1f5;grid-template-columns:80px minmax(0,1fr);gap:12px;padding-bottom:9px;display:grid}.account-details>div:last-child{border-bottom:0;padding-bottom:0}.account-details dt{color:var(--muted);text-transform:uppercase;font-size:9px}.account-details dd{color:#38465b;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;font-weight:700;overflow:hidden}.active-status{color:#248156}@media (max-width:1100px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-card{grid-template-columns:1fr}}@media (max-width:900px){.login-page{grid-template-columns:1fr}.login-story{display:none}.mobile-brand{display:inline-flex}.dashboard-shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-kicker{display:block}}@media (max-width:640px){.login-panel{align-items:start;padding:24px 16px}.login-card{border-radius:19px;padding:30px 24px}.topbar{align-items:flex-start;gap:12px;padding:14px 16px}.topbar>div:first-child strong,.profile-copy{display:none}.dashboard-content{padding:22px 16px 36px}.welcome-card{min-height:0;padding:28px 24px}.welcome-badge{display:none}.module-grid{grid-template-columns:1fr}.section-heading{align-items:center}.account-card{padding:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
