:root{color:#e2e8f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#07101d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}html{background:#07101d;min-width:320px;min-height:100%}body{background:radial-gradient(circle at 15% 0,#0ea5e917,#0000 28rem),linear-gradient(#07101d 0%,#091421 100%);min-width:320px;min-height:100vh;margin:0}body,button,input,textarea,select{font:inherit}button,input,textarea,select{margin:0}button{border:0}img,svg{max-width:100%;display:block}a{color:inherit}p,h1,h2,h3{overflow-wrap:break-word}#root{min-height:100vh}::selection{color:#f8fafc;background:#0ea5e96b}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.session-control{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07101df0;border:1px solid #94a3b838;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;width:min(420px,100vw - 36px);min-width:0;padding:14px 16px;display:grid;position:fixed;bottom:18px;right:18px;box-shadow:0 18px 48px #02081761}.session-control-identity{gap:3px;min-width:0;display:grid}.session-control-name{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;line-height:1.3;overflow:hidden}.session-control-role{color:#7dd3fc;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.session-control-button{color:#07101d;min-width:92px;min-height:42px;font:inherit;cursor:pointer;background:#38bdf8;border:1px solid #7dd3fc61;border-radius:10px;padding:9px 16px;font-size:.82rem;font-weight:800;transition:background-color .16s,box-shadow .16s,transform .16s}.session-control-button:hover:not(:disabled){background:#7dd3fc;transform:translateY(-1px);box-shadow:0 10px 24px #0ea5e933}.session-control-button:focus-visible{outline-offset:3px;outline:3px solid #7dd3fc73}.session-control-button:disabled{color:#94a3b8;cursor:wait;opacity:.8;background:#1e293bd1}.session-control-error{color:#fecaca;border-top:1px solid #f8717133;grid-column:1/-1;margin:0;padding-top:9px;font-size:.76rem;line-height:1.45}@media (width<=480px){.session-control{grid-template-columns:minmax(0,1fr);width:auto;bottom:12px;left:12px;right:12px}.session-control-button{width:100%;min-height:46px}}.app-shell{width:min(1180px,100% - 40px);min-height:100vh;margin:0 auto;padding:32px 0 24px}.topbar{justify-content:space-between;align-items:center;gap:24px;padding:4px 0 28px;display:flex}.topbar h1{color:#f8fafc;letter-spacing:-.04em;margin:2px 0 0;font-size:clamp(1.65rem,3vw,2.2rem);font-weight:750}.eyebrow{color:#38bdf8;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:750}.status-badge{color:#7dd3fc;letter-spacing:.08em;background:#0ea5e914;border:1px solid #38bdf84d;border-radius:999px;flex-shrink:0;padding:9px 13px;font-size:.72rem;font-weight:750}.hero-panel{background:radial-gradient(circle at 90% 5%,#0ea5e933,#0000 34%),linear-gradient(145deg,#111f35 0%,#0b1424 58%,#08101d 100%);border:1px solid #94a3b829;border-radius:28px;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);align-items:end;gap:48px;padding:clamp(34px,6vw,68px);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 80px #02081757}.hero-panel:before{border-radius:inherit;content:"";pointer-events:none;background:linear-gradient(110deg,#ffffff0a,#0000 34%);position:absolute;inset:0}.hero-copy,.hero-actions{z-index:1;position:relative}.hero-copy h2{color:#f8fafc;letter-spacing:-.055em;max-width:760px;margin:18px 0 22px;font-size:clamp(2.15rem,5vw,4.35rem);line-height:1.02}.hero-copy>p:last-child{color:#aebdd0;max-width:680px;margin:0;font-size:clamp(1rem,1.8vw,1.14rem);line-height:1.7}.hero-actions{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#030a1666;border:1px solid #94a3b824;border-radius:18px;flex-direction:column;align-items:stretch;gap:12px;padding:22px;display:flex}.hero-primary-action{color:#f8fafc;width:100%;min-height:48px;font:inherit;text-align:center;cursor:pointer;background:linear-gradient(135deg,#0284c7,#0369a1);border:1px solid #38bdf873;border-radius:12px;justify-content:center;align-items:center;font-weight:750;text-decoration:none;transition:border-color .16s,background .16s,transform .16s;display:inline-flex}.hero-primary-action:hover{background:linear-gradient(135deg,#0ea5e9,#0284c7);border-color:#7dd3fcbf;transform:translateY(-1px)}.hero-primary-action:focus-visible{outline-offset:3px;outline:3px solid #7dd3fc8c}.hero-actions span{color:#7f90a8;text-align:center;font-size:.78rem;line-height:1.5}.modules-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.module-card{background:#0f1b2eb8;border:1px solid #94a3b824;border-radius:20px;grid-template-columns:auto 1fr;gap:20px;min-height:150px;padding:26px;display:grid;box-shadow:0 16px 40px #02081733}.module-number{color:#7dd3fc;background:#0ea5e914;border:1px solid #38bdf83d;border-radius:12px;place-items:center;width:42px;height:42px;font-size:.76rem;font-weight:800;display:grid}.module-card h3{color:#e8eef8;margin:2px 0 10px;font-size:1.1rem}.module-card p{color:#92a4ba;margin:0;font-size:.92rem;line-height:1.65}.foundation-panel{background:#0a1423b8;border:1px solid #94a3b824;border-radius:20px;grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr);align-items:center;gap:40px;margin-top:20px;padding:30px;display:grid}.foundation-panel h2{color:#e8eef8;letter-spacing:-.035em;margin:10px 0 0;font-size:clamp(1.45rem,3vw,2rem)}.foundation-panel ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.foundation-panel li{color:#a5b4c7;padding-left:26px;font-size:.9rem;line-height:1.5;position:relative}.foundation-panel li:before{content:"";border:2px solid #38bdf8;border-radius:50%;width:8px;height:8px;position:absolute;top:.42em;left:2px}.footer{color:#64748b;justify-content:space-between;gap:20px;padding:24px 4px 0;font-size:.76rem;display:flex}@media (width<=820px){.app-shell{width:min(100% - 28px,680px);padding-top:22px}.topbar,.footer{flex-direction:column;align-items:flex-start}.hero-panel,.foundation-panel{grid-template-columns:1fr}.hero-panel{gap:32px;padding:34px 24px}.modules-grid{grid-template-columns:1fr}}@media (width<=480px){.status-badge{white-space:normal}.hero-copy h2{font-size:2.2rem}.module-card{grid-template-columns:1fr}.foundation-panel{padding:24px}}.define-password-page{overflow-x:hidden}.define-password-layout{background:radial-gradient(circle at 8% 10%,#0ea5e92e,#0000 34%),linear-gradient(145deg,#111f35 0%,#0b1424 58%,#08101d 100%);border:1px solid #94a3b829;border-radius:28px;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:center;gap:clamp(32px,6vw,72px);padding:clamp(32px,6vw,68px);display:grid;box-shadow:0 28px 80px #02081757}.define-password-introduction h2{color:#f8fafc;letter-spacing:-.055em;max-width:680px;margin:18px 0 22px;font-size:clamp(2.1rem,5vw,4rem);line-height:1.04}.define-password-introduction>p:last-child{color:#aebdd0;max-width:620px;margin:0;font-size:1.05rem;line-height:1.7}.define-password-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#030a169e;border:1px solid #94a3b82e;border-radius:20px;justify-self:end;width:100%;min-width:0;max-width:460px;min-height:320px;padding:clamp(24px,4vw,34px);box-shadow:0 18px 48px #02081747}.define-password-card-header h2,.define-password-status h2{color:#f8fafc;letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(1.45rem,3vw,1.9rem)}.define-password-card-header p,.define-password-status p{color:#92a4ba;margin:0;font-size:.9rem;line-height:1.6}.define-password-status{text-align:center;align-content:center;gap:12px;min-height:250px;display:grid}.define-password-form{gap:18px;margin-top:28px;display:grid}.define-password-field{gap:8px;min-width:0;display:grid}.define-password-field label{color:#cbd5e1;font-size:.84rem;font-weight:700}.define-password-field input{color:#f8fafc;background:#0f1b2ed1;border:1px solid #94a3b847;border-radius:12px;outline:none;width:100%;min-width:0;min-height:50px;padding:12px 14px;font-size:1rem;transition:border-color .16s,box-shadow .16s,background-color .16s}.define-password-field input:hover:not(:disabled){border-color:#7dd3fc85}.define-password-field input:focus-visible{background:#111f35f5;border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf82e}.define-password-field input:disabled{color:#7f90a8;cursor:not-allowed;opacity:.72;background:#1e293b9e}.define-password-visibility{color:#7dd3fc;min-width:44px;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:8px 12px;font-size:.82rem;font-weight:700}.define-password-visibility:focus-visible,.define-password-login-link:focus-visible{outline-offset:4px;outline:3px solid #7dd3fc73}.define-password-error{color:#fecaca;background:#7f1d1d33;border:1px solid #f871714d;border-radius:12px;margin:0;padding:12px 14px;font-size:.85rem;line-height:1.55}.define-password-submit,.define-password-login-link{color:#07101d;min-height:50px;font:inherit;text-align:center;cursor:pointer;background:#38bdf8;border:1px solid #7dd3fc66;border-radius:12px;justify-content:center;align-items:center;padding:12px 18px;font-weight:800;text-decoration:none;display:inline-flex}.define-password-submit:focus-visible{outline-offset:3px;outline:3px solid #7dd3fc73}.define-password-submit:disabled{color:#94a3b8;cursor:wait;opacity:.78;background:#1e293bc2}.define-password-login-link{margin-top:10px}@media (width<=820px){.define-password-layout{grid-template-columns:minmax(0,1fr);gap:34px;padding:34px 24px}.define-password-card{justify-self:stretch;max-width:none}}@media (width<=480px){.define-password-introduction h2{font-size:2.15rem}.define-password-card{min-height:0;padding:24px 18px}.define-password-field input,.define-password-submit,.define-password-login-link{min-height:52px}}.login-page{overflow-x:hidden}.login-loading{text-align:center;background:radial-gradient(circle at 90% 5%,#0ea5e933,#0000 38%),linear-gradient(145deg,#111f35 0%,#0b1424 58%,#08101d 100%);border:1px solid #94a3b829;border-radius:28px;gap:14px;width:min(100%,620px);margin:clamp(72px,16vh,160px) auto 0;padding:clamp(30px,6vw,52px);display:grid;box-shadow:0 28px 80px #02081757}.login-loading h1{color:#f8fafc;letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,5vw,2.8rem)}.login-loading>p:last-child{color:#aebdd0;margin:0;line-height:1.7}.login-layout{background:radial-gradient(circle at 8% 10%,#0ea5e92e,#0000 34%),linear-gradient(145deg,#111f35 0%,#0b1424 58%,#08101d 100%);border:1px solid #94a3b829;border-radius:28px;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(32px,6vw,72px);padding:clamp(32px,6vw,68px);display:grid;overflow:hidden;box-shadow:0 28px 80px #02081757}.login-introduction{min-width:0}.login-introduction h2{color:#f8fafc;letter-spacing:-.055em;max-width:680px;margin:18px 0 22px;font-size:clamp(2.1rem,5vw,4rem);line-height:1.04}.login-introduction>p:last-of-type{color:#aebdd0;max-width:620px;margin:0;font-size:1.05rem;line-height:1.7}.login-benefits{gap:13px;margin:30px 0 0;padding:0;list-style:none;display:grid}.login-benefits li{color:#a5b4c7;padding-left:27px;line-height:1.55;position:relative}.login-benefits li:before{content:"";border:2px solid #38bdf8;border-radius:50%;width:9px;height:9px;position:absolute;top:.42em;left:2px}.login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#030a169e;border:1px solid #94a3b82e;border-radius:20px;justify-self:end;width:100%;min-width:0;max-width:460px;padding:clamp(24px,4vw,34px);box-shadow:0 18px 48px #02081747}.login-card-header{min-width:0}.login-card-header h2{color:#f8fafc;letter-spacing:-.035em;margin:10px 0 8px;font-size:clamp(1.45rem,3vw,1.9rem)}.login-card-header>p:last-child{color:#92a4ba;margin:0;font-size:.9rem;line-height:1.6}.login-form{gap:18px;margin-top:28px;display:grid}.login-field{gap:8px;min-width:0;display:grid}.login-field span{color:#cbd5e1;font-size:.84rem;font-weight:700}.login-field input{color:#f8fafc;background:#0f1b2ed1;border:1px solid #94a3b847;border-radius:12px;outline:none;width:100%;min-width:0;min-height:50px;padding:12px 14px;transition:border-color .16s,box-shadow .16s,background-color .16s}.login-field input:hover:not(:disabled){border-color:#7dd3fc85}.login-field input:focus-visible{background:#111f35f5;border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf82e}.login-field input:disabled{color:#7f90a8;cursor:not-allowed;opacity:.72;background:#1e293b9e}.login-error{color:#fecaca;background:#7f1d1d33;border:1px solid #f871714d;border-radius:12px;margin:0;padding:12px 14px;font-size:.85rem;line-height:1.55}.login-submit{color:#07101d;cursor:pointer;background:#38bdf8;border:1px solid #7dd3fc66;border-radius:12px;width:100%;min-height:50px;padding:12px 18px;font-weight:800;transition:background-color .16s,box-shadow .16s,transform .16s}.login-submit:hover:not(:disabled){background:#7dd3fc;transform:translateY(-1px);box-shadow:0 12px 26px #0ea5e933}.login-submit:focus-visible{outline-offset:3px;outline:3px solid #7dd3fc73}.login-submit:disabled{color:#94a3b8;cursor:wait;opacity:.78;background:#1e293bc2}.login-support{color:#7f90a8;text-align:center;margin:22px 0 0;font-size:.78rem;line-height:1.55}@media (width<=820px){.login-layout{grid-template-columns:minmax(0,1fr);gap:34px;padding:34px 24px}.login-card{justify-self:stretch;max-width:none}}@media (width<=480px){.login-loading{margin-top:48px;padding:28px 20px}.login-introduction h2{font-size:2.15rem}.login-card{padding:24px 18px}.login-field input,.login-submit{min-height:52px}}
