:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;font-optical-sizing:auto;font-weight:400;--ink:#172033;--muted:#68748a;--line:#e5e9f0;--blue:#3569df;--blue-dark:#244fb6;--wash:#eef3ff;--green:#19835a}
*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{cursor:pointer}a{color:inherit}#app{min-height:100vh}.boot-mark{height:100vh;display:grid;place-items:center}.boot-mark span{width:34px;height:34px;border:3px solid #dfe6f4;border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.auth-wrap{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,480px);background:#fff}.auth-story{padding:clamp(28px,6vw,84px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(ellipse at 18% 20%,#eff4ff 0,transparent 45%),#f6f8fc}.brand{display:flex;align-items:center;gap:11px;font-weight:750;letter-spacing:-.025em;font-size:19px}.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--blue);display:grid;place-items:center;color:#fff;box-shadow:0 8px 20px #3569df35}.brand-mark svg{width:21px;height:21px}.story-copy{max-width:540px;margin:52px 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:750;color:var(--blue)}.story-copy h1{font-size:clamp(38px,5.2vw,64px);line-height:1.04;letter-spacing:-.055em;margin:15px 0 18px}.story-copy p{font-size:18px;line-height:1.65;color:var(--muted);max-width:500px;margin:0}.story-points{display:grid;gap:15px;margin-top:34px}.story-point{display:flex;align-items:center;gap:11px;color:#465269;font-size:14px}.check{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#e6f6ee;color:var(--green);font-size:13px;font-weight:800}.story-foot{font-size:12px;color:#8590a4}.auth-panel{display:flex;align-items:center;justify-content:center;padding:30px}.auth-card{width:min(100%,380px)}.auth-card h2{font-size:26px;letter-spacing:-.035em;margin:0 0 8px}.auth-intro{color:var(--muted);font-size:14px;line-height:1.55;margin:0 0 26px}.field{display:grid;gap:7px;margin-bottom:16px}.field label{font-size:13px;font-weight:650;color:#344158}.field input{width:100%;height:46px;border:1px solid #dce2ec;border-radius:9px;padding:0 13px;color:var(--ink);outline:none;background:#fff}.field input:focus{border-color:#7899eb;box-shadow:0 0 0 3px #3569df1c}.field input::placeholder{color:#9aa4b5}.primary{border:0;background:var(--blue);color:white;border-radius:9px;min-height:46px;padding:0 16px;font-weight:700;transition:background .15s,transform .15s}.primary:hover{background:var(--blue-dark)}.primary:active{transform:translateY(1px)}.primary:disabled{opacity:.65;cursor:wait}.auth-submit{width:100%;margin-top:6px}.auth-switch{text-align:center;color:var(--muted);font-size:13px;margin:19px 0 0}.text-button{border:0;background:none;color:var(--blue);font-weight:700;padding:4px}.auth-message{display:none;border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4;margin:0 0 14px}.auth-message.show{display:block}.auth-message.error{background:#fff0ef;color:#a5362e}.auth-message.success{background:#edf8f2;color:#176c49}.privacy-note{border-top:1px solid var(--line);padding-top:17px;margin-top:25px;color:#8290a5;font-size:11px;line-height:1.5}.demo-note{background:#f4f7fc;border-radius:8px;padding:10px 12px;color:#6d7890;font-size:12px;line-height:1.5;margin-top:15px}
.frame{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr);background:#f7f8fb}.sidebar{background:#fff;border-right:1px solid var(--line);padding:23px 14px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.sidebar .brand{padding:0 9px 27px}.nav-label{padding:0 10px;margin:11px 0 8px;text-transform:uppercase;letter-spacing:.1em;color:#9aa4b4;font-size:10px;font-weight:750}.nav-list{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;padding:10px 11px;border:0;border-radius:8px;background:none;color:#59657a;text-align:left;font-size:13px;font-weight:600}.nav-item svg{width:17px;height:17px;opacity:.72;flex:none}.nav-item:hover{background:#f5f7fb;color:var(--ink)}.nav-item.active{background:#edf2ff;color:#2a58c4}.nav-item.active svg{opacity:1}.sidebar-bottom{margin-top:auto}.help-card{background:#f5f7fb;border:1px solid #edf0f5;border-radius:10px;padding:12px;margin:0 2px 16px}.help-card strong{font-size:12px}.help-card p{font-size:11px;line-height:1.5;color:var(--muted);margin:5px 0 0}.profile-row{display:flex;align-items:center;gap:10px;padding:11px 8px 0;border-top:1px solid var(--line)}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#eaf0ff;color:#2b5bc4;font-size:12px;font-weight:800}.profile-copy{min-width:0;flex:1}.profile-copy strong,.profile-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy strong{font-size:12px}.profile-copy small{font-size:10px;color:#909bad;margin-top:2px}.signout{border:0;background:none;color:#8792a4;padding:7px;border-radius:7px}.signout:hover{background:#f0f2f6;color:#43516a}.main-area{min-width:0}.topbar{height:65px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,38px);position:sticky;top:0;z-index:10}.crumb{font-size:13px;color:#8994a7}.crumb b{color:#243047;font-weight:650}.top-right{display:flex;align-items:center;gap:10px;color:#79859a;font-size:12px}.status-dot{width:7px;height:7px;background:#42b27d;border-radius:50%;display:inline-block;margin-right:6px}.mobile-menu{display:none;border:0;background:none;font-size:22px;color:#526078;padding:5px}.page-wrap{max-width:1280px;margin:0 auto;padding:clamp(21px,3.6vw,42px)}.welcome{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:27px}.welcome h1{font-size:27px;letter-spacing:-.04em;margin:0 0 8px}.welcome p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.welcome-tag{font-size:11px;font-weight:700;color:#3862bf;background:#edf2ff;border-radius:999px;padding:7px 10px;white-space:nowrap}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.quick-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:19px;min-height:143px}.quick-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#3767d1;margin-bottom:15px}.quick-icon svg{width:19px;height:19px}.quick-card h2{font-size:14px;margin:0 0 7px;letter-spacing:-.01em}.quick-card p{font-size:12px;color:var(--muted);line-height:1.55;margin:0}.section-head{display:flex;align-items:center;justify-content:space-between;margin:32px 0 13px}.section-head h2{font-size:15px;margin:0}.section-head span{color:#8994a7;font-size:11px}.step-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.step{display:flex;gap:11px;padding:3px 15px}.step:first-child{padding-left:0}.step+.step{border-left:1px solid var(--line)}.step-num{width:25px;height:25px;border:1px solid #dce3ef;border-radius:50%;display:grid;place-items:center;color:#647189;font-size:11px;font-weight:750;flex:none}.step strong{display:block;font-size:12px;margin:2px 0 4px}.step p{font-size:11px;line-height:1.45;color:#818da0;margin:0}.desk-frame{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:480px}.desk-nav{display:flex;gap:3px;overflow:auto;padding:11px 13px;border-bottom:1px solid var(--line);background:#fff}.desk-link{border:0;border-radius:7px;background:none;padding:8px 11px;font-size:12px;font-weight:650;color:#69758a;white-space:nowrap}.desk-link:hover,.desk-link.active{background:#edf2ff;color:#2f5fc7}.desk-content{padding:22px;min-width:0}.desk-content .vl-page{max-width:none;margin:0}.desk-content .page-title{font-size:24px!important}.desk-content .vl-sub{color:#6c788d!important}.desk-content [class*=vla-],.desk-content [class*=vlm-]{max-width:100%}.app-error{background:#fff0ef;color:#943e37;padding:12px 14px;border-radius:9px;font-size:13px}.toast-shell{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:10000;background:#152139;color:#fff;border-radius:9px;padding:11px 15px;box-shadow:0 8px 26px #15213935;font-size:12px;max-width:calc(100vw - 30px)}
@media(max-width:850px){.auth-wrap{grid-template-columns:minmax(0,1fr) minmax(330px,410px)}.auth-story{padding:35px}.story-copy h1{font-size:44px}.frame{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-inline:10px}.quick-grid{gap:9px}.quick-card{padding:15px}}
@media(max-width:680px){.auth-wrap{display:block;background:#f6f8fc;padding:22px 16px 30px}.auth-story{padding:0;background:none}.auth-story .brand{padding:2px 3px}.auth-story .story-copy{margin:30px 0 23px}.story-copy h1{font-size:37px;max-width:390px}.story-copy p{font-size:15px}.story-points{display:none}.story-foot{display:none}.auth-panel{padding:0;display:block}.auth-card{max-width:440px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px 20px;box-shadow:0 9px 28px #2737520c}.auth-card h2{font-size:23px}.frame{display:block}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:min(285px,84vw);height:100dvh;min-height:0;transform:translateX(-105%);transition:transform .2s ease;box-shadow:8px 0 28px #1b294218}.frame.menu-open .sidebar{transform:translateX(0)}.menu-scrim{position:fixed;z-index:20;inset:0;background:#1822376b;border:0}.mobile-menu{display:inline-flex}.topbar{height:57px;padding:0 15px}.crumb{flex:1;margin-left:10px}.top-right{font-size:11px}.page-wrap{padding:22px 15px}.welcome{display:block;margin-bottom:20px}.welcome h1{font-size:24px}.welcome-tag{display:inline-block;margin-top:12px}.quick-grid{grid-template-columns:1fr;gap:9px}.quick-card{min-height:auto;display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;padding:13px}.quick-icon{grid-row:span 2;margin:0}.quick-card h2{align-self:end;margin:0 0 3px}.quick-card p{font-size:11.5px}.section-head{margin-top:24px}.step-card{grid-template-columns:1fr;padding:5px 14px}.step{padding:12px 0}.step+.step{border-left:0;border-top:1px solid var(--line)}.desk-frame{min-height:420px}.desk-nav{padding:9px;gap:2px}.desk-link{padding:8px 9px;font-size:11px}.desk-content{padding:14px 11px}.desk-content .page-title{font-size:21px!important}.desk-content .vl-folders{grid-template-columns:repeat(2,minmax(0,1fr))}.desk-content .vlm-bar1,.desk-content .vla-bar1{flex-wrap:wrap}.desk-content .vl-cards{grid-template-columns:1fr}.desk-content .vl-split{grid-template-columns:1fr}.desk-content .vl-row{flex-wrap:wrap}.desk-content .vla-wall{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.auth-wrap{padding-inline:12px}.auth-card{padding:20px 16px}.story-copy h1{font-size:33px}.step{gap:9px}.desk-nav{overflow-x:auto}}

/* Round 2: one nav, live home counts, and a sidebar that follows the full desktop canvas. */
.frame{align-items:stretch;background:linear-gradient(to right,#fff 244px,#f7f8fb 244px)}
.sidebar{height:100vh;min-height:100vh;align-self:start}
.home-page .live-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 27px}
.live-stat{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;column-gap:11px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 15px;min-width:0}
.live-stat-icon{grid-row:span 2;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#3767d1}
.live-stat-icon svg{width:19px;height:19px}
.live-stat div{display:flex;align-items:baseline;gap:7px}
.live-stat strong{font-size:20px;letter-spacing:-.04em}
.live-stat div span{font-size:12px;font-weight:650;color:#59657a}
.live-stat small{font-size:10px;color:#8994a7}
.desk-content{padding:0}
.desk-content .vl-page{margin:0;max-width:none}
.desk-content .page-title{font-size:26px!important}
@media(max-width:680px){
  .frame{background:#f7f8fb}
  .sidebar{position:fixed;height:100dvh;min-height:0;align-self:auto}
  .home-page .live-stats{gap:9px;margin-bottom:22px}
  .live-stat{padding:12px 11px;column-gap:8px}
  .live-stat-icon{width:32px;height:32px}
  .live-stat strong{font-size:18px}
  .desk-content .page-title{font-size:22px!important}
}
@media(min-width:681px) and (max-width:850px){.frame{background:linear-gradient(to right,#fff 205px,#f7f8fb 205px)}}
@media(max-width:420px){.home-page .live-stats{grid-template-columns:1fr}}

/* Accessibility: clear keyboard focus and readable helper text throughout the shell. */
:root{--muted:#566276}
input::placeholder,textarea::placeholder{color:#647087;opacity:1}
.story-foot,.privacy-note,.profile-copy small,.nav-label,.section-head>span,.live-stat small,.step p,.crumb,.top-right,.account-form label small,.session-info span{color:#59657a}
.desk-content .vl-sub{color:#566276!important}
.desk-content .vla-mv-prog li{color:#566276}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.vla-code-label{display:flex;flex:1;min-width:0}
.account-button{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-align:left;padding:0;border:0;border-radius:8px;background:transparent;color:inherit}.account-button:hover,.account-button.current{background:#f3f6fc}.account-button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.account-page{max-width:820px;margin:0 auto}.account-heading{margin:0 0 22px}.account-heading h1{font-size:27px;letter-spacing:-.04em;margin:0 0 7px}.account-heading p,.account-copy{color:var(--muted);font-size:13px;line-height:1.55;margin:0}.account-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin:0 0 14px;min-width:0}.account-card h2{font-size:16px;letter-spacing:-.02em;margin:0 0 6px}.account-card .account-copy{margin-bottom:14px}.account-form{display:grid;gap:12px;max-width:460px}.account-form label{display:grid;gap:6px;font-size:12px;font-weight:650;color:#344158}.account-form input{width:100%;height:43px;border:1px solid #dce2ec;border-radius:8px;padding:0 11px;color:var(--ink);outline:none;background:#fff}.account-form input:focus{border-color:#7899eb;box-shadow:0 0 0 3px #3569df1c}.account-form label small{font-size:11px;font-weight:450;color:#8590a4}.account-form .primary{justify-self:start;min-height:42px}.account-message{border-radius:8px;padding:9px 11px;margin:0 0 12px;font-size:12px;line-height:1.45}.account-message[hidden]{display:none}.account-message.error{background:#fff0ef;color:#a5362e}.account-message.success{background:#edf8f2;color:#176c49}.account-error{color:#a5362e}.sessions-list{display:grid;gap:8px}.session-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #edf0f5;border-radius:9px;background:#fcfdff;min-width:0}.session-info{display:grid;gap:4px;min-width:0}.session-info strong{font-size:12px}.session-info span{font-size:11px;color:#78849a}.secondary{border:1px solid #dce2ec;border-radius:8px;padding:8px 11px;background:#fff;color:#344158;font-size:12px;font-weight:650;white-space:nowrap}.secondary:hover{background:#f5f7fb}.secondary:disabled{opacity:.6;cursor:wait}.account-signout-card{display:flex;align-items:center;justify-content:space-between;gap:14px}.account-signout-card .account-copy{margin:0}
@media(max-width:520px){.account-card{padding:17px 15px}.account-heading{margin-bottom:17px}.account-heading h1{font-size:24px}.session-row{align-items:flex-start;flex-direction:column}.account-signout-card{align-items:flex-start;flex-direction:column}}

/* Keep the accessibility overrides after screen-specific component rules. */
:focus-visible{outline:3px solid #2458c5!important;outline-offset:2px}
.field input::placeholder{color:#647087}
.account-form label small,.session-info span{color:#59657a}
.desk-content .vlm-kv span,.desk-content .vls-facts dt{color:#59657a}
