:root{--primary:#0f7a55;--primary-dark:#0b5a3f;--primary-deep:#083f2d;--accent:#2bb673;--teal:#00a6a0;--blue:#2c7be5;--purple:#874dcc;--amber:#f5ab23;--light:#f5f7f5;--charcoal:#1f2937;--bg:var(--light);--surface:#fff;--text:var(--charcoal);--muted:#5b6573;--border:#dfe5e1;--brand:var(--primary);--brand-ink:#fff;--ok:#157a46;--ok-bg:#e3f5ea;--warn:#8a5a00;--warn-bg:#fdf2dc;--bad:#b42318;--bad-bg:#fde8e7;--radius:14px;--shadow:0 1px 2px #1018280f, 0 4px 12px #1018280f;--font:Aptos, "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1512;--surface:#16201b;--text:#e7eee9;--muted:#9fb0a6;--border:#273630;--brand:#3fcf8a;--brand-ink:#062419;--ok:#6fd39b;--ok-bg:#12301f;--warn:#f0c060;--warn-bg:#33270d;--bad:#ff8a80;--bad-bg:#3a1513;--shadow:0 1px 2px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0e1512;--surface:#16201b;--text:#e7eee9;--muted:#9fb0a6;--border:#273630;--brand:#3fcf8a;--brand-ink:#062419;--ok:#6fd39b;--ok-bg:#12301f;--warn:#f0c060;--warn-bg:#33270d;--bad:#ff8a80;--bad-bg:#3a1513;--shadow:0 1px 2px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font:15px/1.5 var(--font)}a{color:var(--brand)}h1{margin:0 0 6px;font-size:26px;line-height:1.2}h2{margin:28px 0 12px;font-size:19px}h3{margin:0}.sub{color:var(--muted);margin:0 0 20px}.hint{color:var(--muted);margin:4px 0 0;font-size:13px}.center{text-align:center}.wide{width:100%}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button,.btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;text-decoration:none;display:inline-flex}button.primary,.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}button.primary:hover,.btn.primary:hover{background:var(--primary-dark)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) button.primary,:root:not([data-theme=light]) .btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}}:root[data-theme=dark] button.primary,:root[data-theme=dark] .btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}button:disabled{opacity:.55;cursor:default}:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.linklike{color:var(--brand);background:0 0;border:0;padding:0;text-decoration:underline}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.course{flex-direction:column;gap:8px;display:flex}.course h3{font-size:16px}.course .meta{color:var(--muted);font-size:13px}.course .actions{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px;display:flex}.pill{background:var(--bg);color:var(--muted);border:1px solid var(--border);border-radius:99px;width:fit-content;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.pill.completed{background:var(--ok-bg);color:var(--ok);border-color:#0000}.pill.in_progress,.pill.available{background:var(--warn-bg);color:var(--warn);border-color:#0000}.pill.locked{color:#4b5563;background:#e8ecef;border-color:#0000}.notice{border-radius:10px;margin:8px 0;padding:10px 12px;font-size:14px}.notice.warn{background:var(--warn-bg);color:var(--warn)}.notice.bad{background:var(--bad-bg);color:var(--bad)}.notice.ok{background:var(--ok-bg);color:var(--ok)}label{margin:12px 0 4px;font-size:13px;font-weight:600;display:block}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:10px;padding:9px 11px}.row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.row>*{flex:200px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 10px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px;font-weight:600}.checklist{border:1px solid var(--border);border-radius:10px;max-height:240px;padding:6px 10px;overflow:auto}.checklist label{align-items:center;gap:8px;margin:4px 0;font-weight:400;display:flex}.checklist input{width:auto}.tag{background:var(--bg);border:1px solid var(--border);border-radius:5px;margin-right:4px;padding:1px 7px;font-size:11px;display:inline-block}.role-tags{grid-template-columns:repeat(2,max-content);gap:4px;display:grid}.role-tags .tag{text-align:center;margin-right:0}.role-tags.confirm{grid-template-columns:repeat(3,max-content);margin:6px 0}.role-tags.confirm .tag{color:#14532d;background:#e8f5ee;border-color:#b9e0cb;padding:3px 10px;font-size:13px}.role-tags.confirm .tag-remove{color:#8a1c1c;background:#fdecec;border-color:#f5c2c2}.small-actions{flex-wrap:wrap;gap:6px;display:flex}.small-actions button{padding:4px 9px;font-size:13px}.app{grid-template:"top top""side main"1fr/92px 1fr;min-height:100vh;display:grid}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;grid-area:top;align-items:center;gap:18px;padding:10px 20px;display:flex;position:sticky;top:0}.topbar .logo{align-items:center;text-decoration:none;display:flex}.topbar .logo img{width:auto;height:46px}.topbar .divider{background:var(--border);align-self:stretch;width:1px}.topbar .academy{flex-direction:column;line-height:1.1;display:flex}.topbar .academy strong{letter-spacing:1px;color:var(--primary);font-size:26px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .topbar .academy strong{color:var(--brand)}}:root[data-theme=dark] .topbar .academy strong{color:var(--brand)}.topbar .academy span{color:var(--muted);font-size:13px}.topbar .academy span b{color:var(--text)}.topbar .argenbright{letter-spacing:1.5px;text-align:center;color:var(--text);font-size:14px;font-weight:700;line-height:1.1}.topbar .argenbright small{letter-spacing:5px;color:var(--muted);font-size:9px;font-weight:600;display:block}.topbar .spacer{flex:1}.topbar .search{width:min(280px,30vw);position:relative}.topbar .search input{border-radius:99px;padding-left:36px}.topbar .search svg{color:var(--muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.topbar .avatar{background:var(--primary);color:#fff;border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;font-weight:700;display:grid}.menu-wrap{position:relative}.menu{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);z-index:30;border-radius:12px;min-width:220px;padding:8px;position:absolute;top:48px;right:0}.menu .who{border-bottom:1px solid var(--border);color:var(--muted);margin-bottom:6px;padding:6px 10px 10px;font-size:13px}.menu .who strong{color:var(--text);font-size:14px;display:block}.menu button{border:0;justify-content:flex-start;width:100%}.hamburger{background:0 0;border:0;padding:6px;display:none}.sidebar{background:var(--primary-deep);color:#e3f2ea;flex-direction:column;grid-area:side;gap:4px;height:calc(100vh - 67px);padding:16px 12px;display:flex;position:sticky;top:67px;overflow-y:auto}.sidebar a,.sidebar .soon{white-space:nowrap;color:#e3f2ea;border-radius:12px;align-items:center;gap:12px;padding:11px 14px;font-weight:500;text-decoration:none;display:flex}.sidebar a:hover{background:#ffffff14}.sidebar a.active{background:var(--accent);color:#fff;font-weight:700;box-shadow:0 2px 8px #0003}.sidebar .soon{opacity:.55;cursor:default}.sidebar .soon em{text-transform:uppercase;letter-spacing:.5px;border:1px solid #fff6;border-radius:99px;margin-left:auto;padding:0 6px;font-size:10px;font-style:normal}.sidebar .foot{flex-wrap:wrap;gap:10px;margin-top:auto;padding:12px 14px 0;font-size:12px;display:flex}.sidebar .foot a{color:#b9d8c8;padding:0;font-weight:400}.sidebar .foot a.active{box-shadow:none;background:0 0;text-decoration:underline}main.content{grid-area:main;min-width:0;padding:22px 24px 64px}main.content>.page{max-width:1240px;margin:0 auto}@media (width<=900px){.app{grid-template-columns:1fr;grid-template-areas:"top""main"}.hamburger{display:inline-flex}.sidebar{z-index:25;width:240px;height:auto;transition:transform .2s;position:fixed;top:64px;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:none;box-shadow:4px 0 24px #0000004d}.topbar{gap:10px;padding:8px 12px}.topbar .argenbright,.topbar .divider,.topbar .search,.topbar .academy span{display:none}.topbar .logo img{height:36px}.topbar .academy strong{font-size:20px}main.content{padding:16px 16px 48px}}.hero{box-shadow:var(--shadow);background:#7cc1f2;border-radius:18px;position:relative;overflow:hidden}.map{aspect-ratio:2400/1400;width:100%;position:relative}.map img.bg{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hero .welcome{color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-shadow:0 1px 3px #0009;background:linear-gradient(135deg,#0a3d2ac7,#0a3d2a8c);border-radius:14px;max-width:40%;padding:clamp(8px,1vw,14px) clamp(12px,1.4vw,20px);position:absolute;top:4%;left:2.5%;box-shadow:0 4px 18px #0000002e}.hero .welcome h1{margin:0 0 4px;font-size:clamp(20px,2.6vw,38px)}.hero .welcome h1 .bang{color:inherit}.hero .welcome p{margin:0;font-size:clamp(12px,1.2vw,17px);font-weight:500}.marker{color:#fff;z-index:2;border:3px solid #fff;border-radius:50%;place-items:center;width:clamp(30px,3.4vw,50px);height:clamp(30px,3.4vw,50px);padding:0;transition:transform .15s;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px 10px #00000059}.marker:hover,.marker:focus-visible{transform:translate(-50%,-50%)scale(1.12)}.marker svg{width:55%;height:55%}.marker.completed{background:var(--accent)}.marker.in_progress{background:var(--amber)}.marker.available{background:var(--primary);animation:1.8s infinite pulse}.marker.locked{background:#4b5563}.marker.coming_soon{background:#9ca3af}@keyframes pulse{0%{box-shadow:0 0 #2bb673b3}70%{box-shadow:0 0 0 16px #2bb67300}to{box-shadow:0 0 #2bb67300}}@media (prefers-reduced-motion:reduce){.marker.available{animation:none}}.marker .count{color:var(--charcoal);white-space:nowrap;background:#fff;border-radius:99px;padding:0 6px;font-size:11px;font-weight:700;position:absolute;bottom:-10px;right:-12px;box-shadow:0 1px 4px #0000004d}.journey-card{width:min(440px,34%);color:var(--charcoal);background:#fffffff5;border-radius:16px;align-items:center;gap:14px;padding:14px 16px;display:flex;position:absolute;top:4%;right:2%;box-shadow:0 6px 24px #0000002e}.journey-card h2{margin:0 0 6px;font-size:15px}.ring{--p:0;background:conic-gradient(var(--accent) calc(var(--p) * 1%), #e6ece8 0);border-radius:50%;flex:none;place-items:center;width:84px;height:84px;display:grid}.ring span{background:#fff;border-radius:50%;place-items:center;width:66px;height:66px;font-size:20px;font-weight:800;display:grid}.journey-card ul{grid-template-columns:auto auto;justify-content:start;gap:4px 16px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.journey-card li{white-space:nowrap}.journey-card li:nth-child(3),.journey-card li.overdue-line{grid-column:1/-1}.journey-card li b{font-size:15px}.next-up{width:min(250px,21%);color:var(--charcoal);background:#fffffff7;border-radius:14px;align-items:center;gap:10px;padding:20px 12px 10px;display:flex;position:absolute;bottom:4%;right:2%;box-shadow:0 6px 24px #0000002e}.next-up .label{background:var(--accent);color:#fff;border-radius:8px;padding:2px 12px;font-size:13px;font-weight:700;position:absolute;top:-13px;left:14px}.next-up .info{flex:1;min-width:0}.next-up .info strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.next-up .info span{color:#4b5563;font-size:13px}.next-up .play{background:var(--accent);color:#fff;border:0;border-radius:50%;flex:none;width:36px;height:36px;padding:0}.hero-cards{display:contents}@media (width<=760px){.hero-cards{gap:22px;padding:22px 12px 12px;display:grid}.hero .journey-card,.hero .next-up{width:auto;position:relative;inset:auto}.hero .journey-card{box-shadow:none;border:1px solid var(--border)}.hero{background:var(--surface)}.hero .welcome{max-width:70%}.hero .welcome p{display:none}}.section-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-top:18px;display:grid}.section-item{text-align:left;border-radius:var(--radius);align-items:center;gap:12px;width:100%;padding:14px;display:flex}.section-item .num{color:#fff;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.section-item .num.completed{background:var(--accent)}.section-item .num.in_progress{background:var(--amber)}.section-item .num.available{background:var(--primary)}.section-item .num.locked,.section-item .num.coming_soon{background:#6b7280}.section-item strong{display:block}.section-item span{color:var(--muted);font-size:13px}dialog.panel{background:var(--surface);width:min(560px,100vw - 32px);color:var(--text);border:0;border-radius:18px;padding:0;box-shadow:0 20px 60px #00000059}dialog.panel::backdrop{background:#081e148c}.panel-head{background:linear-gradient(135deg, var(--primary), var(--teal));color:#fff;padding:20px 22px 14px;position:relative}.panel-head h2{margin:2px 0 4px;font-size:22px}.panel-head p{opacity:.92;margin:0;font-size:14px}.panel-head .close{color:#fff;background:#ffffff2e;border:0;border-radius:50%;width:34px;height:34px;padding:0;position:absolute;top:12px;right:12px}.panel-body{padding:16px 22px 22px}.progress-bar{background:var(--border);border-radius:99px;height:8px;margin:6px 0 14px;overflow:hidden}.progress-bar span{background:var(--accent);height:100%;display:block}.course-row{border-top:1px solid var(--border);align-items:center;gap:12px;padding:12px 0;display:flex}.course-row .t{flex:1;min-width:0}.course-row .t strong{display:block}.course-row .t span{color:var(--muted);font-size:13px}.cards-row{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:20px;display:grid}.feature-card{flex-direction:column;gap:10px;display:flex}.feature-card .chip{background:var(--ok-bg);color:var(--ok);border:0;border-radius:99px;align-items:center;gap:6px;width:fit-content;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.feature-card h3{font-size:22px}.feature-card .facts{color:var(--muted);flex-wrap:wrap;gap:18px;font-size:13px;display:flex}.feature-card .big{margin-top:auto;padding:12px;font-size:16px}.player{background:var(--bg);z-index:40;flex-direction:column;display:flex;position:fixed;inset:0}.player .bar{background:var(--primary-deep);color:#fff;align-items:center;gap:12px;padding:8px 12px;display:flex}.player .bar img{filter:brightness(0)invert();height:30px}.player .bar .title{text-overflow:ellipsis;white-space:nowrap;margin-right:auto;font-weight:600;overflow:hidden}.player .bar .save{opacity:.85;font-size:13px}.player .bar button.primary{background:var(--accent);border-color:var(--accent)}.player iframe{background:#fff;border:0;flex:1;width:100%}.auth{background:linear-gradient(160deg, var(--primary-deep), var(--primary) 55%, var(--teal));justify-content:center;min-height:100vh;padding:6vh 16px;display:flex}.auth-card{align-self:flex-start;width:100%;max-width:440px;padding:30px}.auth-brand{color:var(--primary);letter-spacing:4px;text-transform:uppercase;flex-direction:column;align-items:center;gap:2px;margin-bottom:14px;font-size:15px;font-weight:800;display:flex}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .auth-brand{color:var(--brand)}:root:not([data-theme=light]) .auth-brand img{content:url(/brand/outscale-logo-reversed.png)}}:root[data-theme=dark] .auth-brand{color:var(--brand)}:root[data-theme=dark] .auth-brand img,:root[data-theme=dark] .topbar .logo img{content:url(/brand/outscale-logo-reversed.png)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .topbar .logo img{content:url(/brand/outscale-logo-reversed.png)}}.auth h1{margin-bottom:12px}.auth-links{text-align:center;color:var(--muted);margin-top:16px;font-size:12px}.auth-links a{color:var(--muted)}label.check{align-items:flex-start;gap:8px;margin-top:14px;font-weight:400;display:flex}label.check input{width:auto;margin-top:4px}.strength{align-items:center;gap:10px;margin-top:6px;display:flex}.strength .bar{background:var(--border);border-radius:99px;flex:1;height:6px;overflow:hidden}.strength .bar span{background:var(--bad);height:100%;transition:width .2s;display:block}.strength .bar span[data-score="2"]{background:var(--amber)}.strength .bar span[data-score="3"],.strength .bar span[data-score="4"]{background:var(--accent)}.qr{text-align:center;margin:12px 0}.qr img{background:#fff;border-radius:8px;padding:8px}.qr code{letter-spacing:1px;font-size:14px}.pw-wrap{position:relative}.pw-wrap input{padding-right:44px}.pw-wrap .eye{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:6px;line-height:0;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pw-wrap .eye:hover{color:var(--text)}.checklist-rules{gap:4px;margin:10px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.checklist-rules li{color:var(--muted);align-items:baseline;gap:8px;display:flex}.checklist-rules li.ok{color:var(--ok)}.checklist-rules .tick{width:1em;font-weight:700}.legal{max-width:780px;margin:0 auto}.legal h2{margin-top:26px}.legal-standalone{background:var(--bg);min-height:100vh;padding:32px 16px 64px}.map-editor{cursor:crosshair;border-radius:14px;position:relative;overflow:hidden}.map-editor .marker{cursor:pointer}.map-editor .marker.selected{outline:4px solid var(--amber)}.map-editor .marker .n{font-size:14px;font-weight:800}dialog.feedback{width:min(480px,100vw - 32px)}dialog.feedback .close{font-size:22px;line-height:1}.stars{color:#9ca3af;border:0;justify-content:center;gap:6px;margin:6px 0 0;padding:0;display:flex}.stars label{cursor:pointer;border-radius:8px;margin:0;padding:2px;line-height:0;transition:transform .1s}.stars label:hover{transform:scale(1.1)}.stars label:has(input:focus-visible){outline:3px solid var(--amber)}.fb-actions{justify-content:space-between;gap:10px;margin-top:14px;display:flex}.fb-actions button{flex:1}dialog.welcome{width:min(620px,100vw - 32px);max-height:calc(100vh - 32px)}.welcome-video{aspect-ratio:16/9;background:#000}.welcome-video iframe,.welcome-video video{border:0;width:100%;height:100%;display:block}.welcome-video.placeholder{color:#fff;background:radial-gradient(circle at 30% 20%, var(--accent), var(--primary) 45%, var(--primary-deep));flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.welcome-video .wv-kicker{letter-spacing:6px;text-transform:uppercase;font-size:clamp(20px,4vw,30px);font-weight:300}.welcome-video .wv-note{opacity:.8;border:1px dashed #fff9;border-radius:99px;margin-top:4px;padding:2px 10px;font-size:12px}dialog.welcome h2{margin:4px 0 8px;font-size:24px}dialog.welcome p{margin:0 0 10px}.welcome-actions{justify-items:center;gap:10px;margin-top:14px;display:grid}.welcome-actions .primary{width:100%}.tour{z-index:60;position:fixed;inset:0}.tour-hole{outline:3px solid var(--amber);pointer-events:none;border-radius:14px;transition:all .25s;position:fixed;box-shadow:0 0 0 9999px #081e149e}.tour-dim{background:#081e149e;position:fixed;inset:0}.tour-card{background:var(--surface);color:var(--text);border-radius:16px;outline:none;padding:16px 18px;position:fixed;box-shadow:0 16px 48px #00000059}.tour-card h2{margin:2px 0 6px;font-size:18px}.tour-card p{margin:0;font-size:14px}.tour-count{color:var(--primary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tour-count{color:var(--brand)}}:root[data-theme=dark] .tour-count{color:var(--brand)}.tour-actions{align-items:center;gap:8px;margin-top:14px;display:flex}@media (prefers-reduced-motion:reduce){.tour-hole{transition:none}}.due-badge{white-space:nowrap;border-radius:99px;width:fit-content;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.due-badge.due{color:#8a5a00;background:#fdf2dc;border:1px solid #f5ab23}.due-badge.overdue{color:#b42318;background:#fde8e7;border:1px solid #f04438}.course .badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.locked-course{opacity:.8}.course-row .t .due-badge{margin-top:4px}.next-up .info .due-badge{margin:2px 0}.marker .alert{color:#fff;background:#d92d20;border:2px solid #fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:12px;font-weight:800;display:grid;position:absolute;top:-6px;right:-6px}.panel-rule{background:#ffffff2e;border-radius:99px;padding:2px 10px;font-weight:600;display:inline-block;margin-top:6px!important;font-size:13px!important}.journey-card .overdue-line{color:#b42318}.section-item .due-badge{margin-left:auto}.lock-hint{white-space:nowrap}.pill.locked svg{vertical-align:-1px}.app.rail-expanded{grid-template-columns:236px 1fr}.hamburger{color:var(--text);background:0 0;border:0;padding:6px;display:inline-flex}@media (width>=901px){.app:not(.rail-expanded) .sidebar{align-items:stretch;padding:12px 6px}.app:not(.rail-expanded) .sidebar a,.app:not(.rail-expanded) .sidebar .soon{text-align:center;white-space:normal;flex-direction:column;gap:4px;padding:10px 4px;font-size:11.5px;font-weight:500;line-height:1.15}.app:not(.rail-expanded) .sidebar a svg,.app:not(.rail-expanded) .sidebar .soon svg{width:24px;height:24px}.app:not(.rail-expanded) .sidebar .soon em,.app:not(.rail-expanded) .sidebar .foot{display:none}.app:not(.rail-expanded) .sidebar a.active{box-shadow:none}}.avatar-btn{background:0 0;border:0;border-radius:50%;padding:0;line-height:0}.avatar-img{object-fit:cover;background:var(--border);border-radius:50%;display:inline-block}.avatar-initials{background:var(--primary);color:#fff;border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.menu .who{align-items:center;gap:10px;display:flex}.profile{gap:16px;max-width:820px;margin:0 auto;display:grid}.profile h1{margin-bottom:0}.profile .card h2{margin:0 0 8px}.profile .card h3{margin:0 0 6px;font-size:15px}.profile-head{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.profile-head .who h2{margin:0;font-size:24px}.profile-head .who p{margin:2px 0 8px}.photo-wrap{position:relative}.photo-btn{background:var(--accent);color:#fff;border:3px solid var(--surface);border-radius:50%;width:38px;height:38px;padding:0;position:absolute;bottom:-2px;right:-2px}.downloads{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.downloads:first-of-type{border-top:0}.downloads p{margin:2px 0 0}.seg{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.seg label{cursor:pointer;align-items:center;gap:6px;margin:0;padding:8px 14px;font-weight:500;display:flex}.seg label input{opacity:0;width:1px;height:1px;position:absolute}.seg label.on{background:var(--primary);color:#fff}.seg label:has(input:focus-visible){outline:3px solid var(--amber);outline-offset:-3px}.bell-wrap{position:relative}.bell{color:var(--text);background:0 0;border:0;border-radius:50%;padding:8px;line-height:0;position:relative}.bell:hover{background:var(--bg)}.bell-dot{border:2px solid var(--surface);background:#d92d20;border-radius:50%;width:10px;height:10px;position:absolute;top:6px;right:7px}.bell-panel{color:#e5e7eb;z-index:35;background:#1f2937;border-radius:14px;width:min(400px,100vw - 24px);position:absolute;top:50px;right:-52px;overflow:hidden;box-shadow:0 16px 48px #00000059}.bp-head{text-transform:uppercase;letter-spacing:1px;color:#cbd5e1;justify-content:space-between;align-items:center;padding:14px 18px 8px;font-size:13px;font-weight:600;display:flex}.bp-head .linklike{color:#7dd3a8;text-transform:none;letter-spacing:0;font-size:13px}.bp-empty{color:#cbd5e1;margin:0;padding:8px 18px 16px;font-size:14px}.bp-list{max-height:min(420px,60vh);margin:0;padding:0 6px;list-style:none;overflow-y:auto}.notice-item button{text-align:left;width:100%;color:inherit;background:0 0;border:0;border-bottom:1px solid #ffffff14;border-radius:0;align-items:flex-start;gap:12px;padding:12px;display:flex}.notice-item button:hover{background:#ffffff0d}.notice-item .ni-icon{font-size:18px;line-height:1.3}.notice-item .ni-text{flex:1;gap:2px;min-width:0;display:grid}.notice-item strong{font-size:14px;font-weight:500}.notice-item.unread strong{font-weight:700}.notice-item .ni-body{opacity:.85;font-size:13px}.notice-item .ni-time{opacity:.6;text-align:right;font-size:12px}.notice-item .ni-dot{background:#2bb673;border-radius:50%;flex:none;width:8px;height:8px;margin-top:7px}.notice-item.warn strong{color:#fca5a5}.bp-all{color:#e5e7eb;background:#ffffff0a;border:0;border-radius:0;width:100%;padding:12px;font-weight:600}.bp-all:hover{background:#ffffff1a}.notifications-page{max-width:760px;margin:0 auto}.notifications-page .notice-item button{border-bottom-color:var(--border);color:var(--text)}.notifications-page .notice-item button:hover{background:var(--bg)}.notifications-page .notice-item.warn strong{color:var(--bad)}@media (width<=900px){.bell-panel{width:auto;position:fixed;top:60px;left:12px;right:12px}}.ascent-page{gap:16px;max-width:980px;margin:0 auto;display:grid}.ascent-page h1{margin-bottom:0}.ascent-page .card h2{margin:0 0 10px}.ok-text{color:var(--ok);font-weight:600}.warn-text{color:#b26b00;font-weight:600}.badge-list,.cert-list,.ledger{margin:0;padding:0;list-style:none}.badge-row{border-top:1px solid var(--border);align-items:center;gap:18px;padding:14px 0;display:flex}.badge-row:first-child{border-top:0}.badge-row .br-text{flex:1;gap:2px;display:grid}.badge-row .br-text strong{font-size:16px}.medal.locked{opacity:.9}.cert-list li{border-top:1px solid var(--border);align-items:center;gap:16px;padding:12px 0;display:flex}.cert-list li:first-child{border-top:0}.cert-list li>div:nth-child(2){flex:1;gap:2px;display:grid}.cert-seal{background:var(--bg);filter:grayscale();opacity:.6;border-radius:12px;place-items:center;width:60px;height:60px;font-size:30px;display:grid}.cert-list li.issued .cert-seal{background:var(--ok-bg);filter:none;opacity:1}.level-hero{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.level-hero h2{font-size:28px;margin:2px 0!important}.xp-line{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-top:12px;display:flex}.xp-line strong{font-size:20px}.progress-bar.big{height:12px;margin-top:6px}.levels{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.levels li{text-align:center;border-radius:12px;justify-items:center;gap:2px;padding:10px;display:grid}.levels li.current{background:var(--ok-bg);outline:2px solid var(--accent)}.levels li.ahead{opacity:.75}.levels li span:last-child{color:var(--muted);font-size:12px}.two-col{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.ledger li{border-top:1px solid var(--border);justify-content:space-between;gap:10px;padding:7px 0;font-size:14px;display:flex}.ledger li:first-child{border-top:0}.ledger strong{color:var(--ok)}.earn ul{gap:6px;margin:0;padding-left:18px;font-size:14px;display:grid}dialog.celebrate{width:min(440px,100vw - 32px);overflow:hidden}dialog.celebrate .panel-body{padding-top:22px;position:relative}.cel-kicker{text-transform:uppercase;letter-spacing:2px;color:var(--primary);margin:0 0 8px;font-weight:700}dialog.celebrate h2{margin:10px 0 4px;font-size:24px}.cert-big{font-size:96px;line-height:1.2}.confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.confetti i{top:-12px;left:calc(var(--i) * 3.9%);background:hsl(calc(var(--i) * 47), 80%, 55%);width:8px;height:14px;animation:fall 2.6s calc(var(--i) * 70ms) ease-in forwards;border-radius:2px;position:absolute}@keyframes fall{to{transform:translateY(560px) rotate(calc(var(--i) * 77deg));opacity:0}}@media (prefers-reduced-motion:reduce){.confetti{display:none}}.lb-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.tracker{height:150px;margin:30px 30px 0;position:relative}.track-bar{background:linear-gradient(90deg,#7f8c8d,#a9744f 18%,#7f9bb3 36%,#c9a23a 55%,#3f8f6b 74%,#7b5fb0);border-radius:99px;height:12px;position:absolute;top:74px;left:0;right:0}.track-tick{color:var(--muted);white-space:nowrap;font-size:12px;position:absolute;top:94px;transform:translate(0)}.track-tick:before{content:"";background:#fffc;width:2px;height:12px;position:absolute;top:-20px;left:0}.track-person{background:var(--surface);border-radius:50%;line-height:0;position:absolute;top:60px;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #f5ab23,0 2px 8px #0003}.track-person.you{z-index:2;top:48px;box-shadow:0 0 0 5px #f5ab23,0 4px 14px #00000040}.lb-who{align-items:center;gap:6px;display:flex}.track-you{white-space:nowrap;color:var(--text);font-size:14px;font-weight:700;line-height:1.2;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.lb-list{margin:0;padding:0;list-style:none}.lb-list li{border-top:1px solid var(--border);align-items:center;gap:10px;padding:8px 6px;display:flex}.lb-list li:first-child{border-top:0}.lb-list li.you{background:var(--ok-bg);border-radius:10px}.lb-rank{width:28px;color:var(--muted);font-variant-numeric:tabular-nums}.lb-name{flex:1;display:grid}.lb-level{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.lb-xp{color:#c2410c;font-variant-numeric:tabular-nums;font-weight:700}.you-tag{background:var(--primary);color:#fff;border-radius:5px;width:fit-content;padding:1px 7px;font-size:11px;font-weight:700}@media (width<=700px){.track-tick{display:none}.tracker{margin:10px 20px 0}}.import-chips{flex-wrap:wrap;gap:6px;margin:8px 0 12px;display:flex}.chip-stat{border:1px solid var(--border);background:var(--bg);border-radius:99px;padding:3px 10px;font-size:13px}.chip-stat.bad{background:var(--bad-bg);color:var(--bad);border-color:#0000}.chip-stat.good{background:var(--ok-bg);color:var(--ok);border-color:#0000}tr.row-bad td{background:color-mix(in srgb, var(--bad-bg) 60%, transparent)}.err-line{color:var(--bad);font-weight:600}.pos-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.pos-row label{flex:1}.pos-row input[type=number]{width:90px;padding:4px 8px}.team-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.team-stats .card{gap:2px;padding:14px 16px;display:grid}.team-stats .card b{font-size:26px}.team-stats .card span{color:var(--muted);font-size:13px}.team-stats .card.bad b{color:var(--bad)}.team-table tbody tr{cursor:pointer}.team-table tbody tr:hover td{background:var(--bg)}.team-table tr.left td{opacity:.55}.person-link{color:var(--text);align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.mini-bar{background:var(--border);border-radius:99px;width:110px;height:8px;overflow:hidden}.mini-bar span{background:var(--accent);height:100%;display:block}dialog.team-panel{width:min(760px,100vw - 32px)}.team-panel .panel-head p{margin:2px 0 0}.tp-stats{flex-wrap:wrap;gap:16px;margin-bottom:10px;font-size:14px;display:flex}.bad-text{color:var(--bad)}.pill.overdue-pill{background:var(--bad-bg);color:var(--bad);border-color:#0000}.menu .view-as{border-bottom:1px solid var(--border);margin-bottom:6px;padding-bottom:6px}.menu .view-as-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:4px 10px;font-size:11px;font-weight:700;display:block}.menu .view-as button{gap:10px}.menu .view-as .radio{border:2px solid var(--muted);border-radius:50%;flex:none;width:16px;height:16px}.menu .view-as button.on{font-weight:700}.menu .view-as button.on .radio{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 4px, transparent 5px)}.sidebar .nav-group{letter-spacing:.08em;text-transform:uppercase;color:#9cc7b2;white-space:nowrap;padding:12px 14px 4px;font-size:11px;font-weight:700}.sidebar .nav-group:first-child{padding-top:2px}@media (width>=901px){.app:not(.rail-expanded) .sidebar .nav-group{border-top:1px solid #ffffff26;margin:4px 8px;padding:6px 0;font-size:0}.app:not(.rail-expanded) .sidebar .nav-group:first-child{border-top:0;margin:0;padding:0}}.users-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.users-buttons{gap:8px;margin-top:10px;display:flex}.dropdown{position:relative}.dropdown>button{align-items:center;gap:6px;display:inline-flex}.dropdown .menu{min-width:230px;top:44px}.menu button.danger{color:var(--bad)}.stat-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:14px 0;display:grid}.stat-strip button{text-align:left;background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;font-size:13px;font-weight:500;display:flex}.stat-strip button strong{color:var(--text);font-size:24px}.stat-strip button.on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent)}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;padding:10px 14px;font-weight:600}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}.filters{flex-wrap:wrap;gap:8px;margin:14px 0 10px;display:flex}.filters input[type=search]{flex:2 260px}.filters select{flex:150px;width:auto}.user-list{padding:0;overflow:hidden}.user-row{grid-template-columns:28px minmax(0,2.2fr) minmax(0,1.4fr) minmax(0,1.4fr) 36px;align-items:center;gap:12px;padding:10px 14px;display:grid}.user-row>input{width:auto}.user-row-head{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);background:var(--bg);font-size:12px;font-weight:700}.user-item{border-bottom:1px solid var(--border)}.user-item:last-child{border-bottom:0}.user-item.open{background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.user-row small{color:var(--muted);text-overflow:ellipsis;font-size:12.5px;display:block;overflow:hidden}.user-name{box-shadow:none;text-align:left;width:100%;min-width:0;font:inherit;color:inherit;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:12px;padding:0;display:flex}.user-name>span{min-width:0}.user-name .pill{vertical-align:1px;margin-left:6px}.tag.lead{color:#7a5a00;background:#fff4d6;border-color:#f1d48a;margin-left:4px}.chev{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:6px}.user-item.open .chev svg{transform:rotate(180deg)}.user-detail{padding:4px 14px 16px 54px}.user-detail dl{grid-template-columns:max-content 1fr max-content 1fr;gap:6px 16px;margin:0 0 14px;font-size:14px;display:grid}.user-detail dt{color:var(--muted)}.user-detail dd{margin:0}@media (width<=760px){.user-row{grid-template-columns:28px minmax(0,1fr) 36px}.hide-sm{display:none}.user-detail{padding-left:14px}.user-detail dl{grid-template-columns:max-content 1fr}}dialog.panel.wide{width:min(760px,100vw - 32px)}.person-form fieldset{border:1px solid var(--border);border-radius:12px;min-width:0;margin:0 0 12px;padding:4px 14px 14px}.person-form legend{padding:0 6px;font-weight:700}.grid2{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}@media (width<=600px){.grid2{grid-template-columns:1fr}}.with-add{gap:6px;display:flex}.with-add select{flex:1}.with-add button{flex:none;padding:6px 10px}.label{margin:12px 0 4px;font-size:13px;font-weight:600;display:block}.user-table{padding:0}.user-table table{width:100%}.user-table th,.user-table td{vertical-align:middle}.user-table th.cb,.user-table td.cb{width:36px;padding-left:12px;padding-right:4px}.user-table td.cb input{width:auto}.user-table td small{color:var(--muted);font-size:12.5px;display:block}.user-table .user-name .pill{margin-left:6px}.user-table tr.open>td{background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.user-table tr.detail-row>td{background:color-mix(in srgb, var(--accent) 6%, var(--surface));white-space:normal}.user-table tr.open .chev svg{transform:rotate(180deg)}.user-table .user-detail{padding:2px 6px 10px 44px}.colpick{display:inline-block;position:relative}.colpick-btn{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:4px}.colpick-btn:hover,.colpick-btn[aria-expanded=true]{color:var(--primary);background:var(--bg)}.colpick-pop{z-index:60;background:var(--surface);border:1px solid var(--border);width:300px;box-shadow:var(--shadow);text-transform:none;letter-spacing:normal;color:var(--text);border-radius:12px;flex-direction:column;padding:10px 6px 8px;font-size:14px;font-weight:400;display:flex;position:fixed}.colpick-title{margin:0 8px 6px;font-weight:700}.colpick-pop ul{flex:auto;min-height:0;margin:0;padding:0;list-style:none;overflow:auto}.colpick-pop li{border-radius:8px;justify-content:space-between;align-items:center;padding:2px 8px;display:flex}.colpick-pop li:hover{background:var(--bg)}.colpick-pop li.fixed{color:var(--muted);padding:6px 8px}.colpick-pop label{cursor:pointer;flex:1;align-items:center;gap:8px;margin:0;padding:6px 0;font-weight:500;display:flex}.colpick-pop label input{opacity:0;width:1px;height:1px;position:absolute}.colpick-pop label:has(input:focus-visible){outline:3px solid var(--amber);outline-offset:2px;border-radius:6px}.colpick-pop .tick{width:16px;color:var(--primary);font-weight:700;display:inline-block}.colpick-pop .order{gap:2px;display:flex}.colpick-pop .order button{border-radius:6px;padding:0 6px;font-size:12px;line-height:20px}.colpick-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:6px;padding:8px 6px 0;display:flex}.colpick-foot button{padding:5px 10px;font-size:13px}.dash-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:14px;display:grid}@media (width<=980px){.dash-grid{grid-template-columns:1fr}}.dash-grid h2,.focus-card h2,section.card>h2{margin:0 0 10px;font-size:17px}.gauge-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}@media (width<=560px){.gauge-row{grid-template-columns:1fr}}.gauge{text-align:center;margin:0}.gauge svg{width:100%;max-width:210px;margin:0 auto;display:block}.gauge-num{fill:var(--text);font-size:30px;font-weight:800}.gauge figcaption strong{font-size:14px;display:block}.gauge figcaption span{color:var(--muted);font-size:12.5px;display:block}.summary-tiles{gap:10px;display:grid}.summary-tiles>div{border:1px solid var(--border);border-radius:12px;grid-template-columns:auto 1fr;align-items:baseline;column-gap:12px;padding:10px 12px;display:grid}.summary-tiles b{grid-row:span 2;font-size:26px}.summary-tiles span{font-weight:600}.summary-tiles small{color:var(--muted)}.donut-wrap{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.donut{flex:none;width:190px;height:190px}.donut-num{fill:var(--text);font-size:32px;font-weight:800}.donut-cap{fill:var(--muted);font-size:13px}.donut-legend{gap:4px;margin:0;padding:0;list-style:none;display:grid}.donut-legend button{text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:flex-start;align-items:center;gap:10px;padding:6px 10px;font-weight:500;display:flex}.donut-legend button:hover:not(:disabled),.donut-legend button.on{border-color:var(--border);background:var(--bg)}.donut-legend .sw,.comp-tag .sw{border-radius:4px;flex:none;width:16px;height:16px;display:inline-block}.comp-tag{align-items:center;gap:6px;font-size:13px;display:inline-flex}.focus-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.focus-head h2{margin:0 6px 0 0}.focus-head select{flex:320px;width:auto}.focus-bar{background:var(--border);border-radius:99px;height:16px;display:flex;overflow:hidden}.focus-bar span{min-width:6px}.fb-completed{background:#4caf7d}.fb-inProgress{background:#f2d34f}.fb-notStarted{background:#9aa4b2}.fb-pastDue{background:#e05a47}.focus-counts{flex-wrap:wrap;align-items:center;gap:16px;margin:10px 0 12px;font-size:14px;display:flex}.focus-counts i{vertical-align:-1px;border-radius:3px;width:12px;height:12px;margin-right:4px;display:inline-block}.reports-page{max-width:1320px}.reports-page section.card{margin-top:12px}.reports-page h2{margin:0 0 10px;font-size:17px}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.sec-head h2{margin:0}.sec-head select{width:auto}.dash[aria-busy=true] .kpi-band,.dash[aria-busy=true] .dash-row,.dash[aria-busy=true] section.card:not(.dash-controls){opacity:.55;transition:opacity .2s}.dash-opts{flex-wrap:wrap;align-items:end;gap:10px;margin-top:10px;display:flex}.dash-opts label{flex-direction:column;gap:3px;margin:0;font-size:12.5px;display:flex}.dash-opts select,.dash-opts input{width:auto}.dash-opts .spacer{flex:1}.defs{background:var(--bg);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 18px;margin:12px 0 0;padding:12px;font-size:13px;display:grid}.defs dt{font-weight:700}.defs dd{color:var(--muted);margin:0}.kpi-band{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}@media (width<=900px){.kpi-band{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi{border:1px solid var(--border);background:var(--surface);text-align:center;border-radius:12px;flex-direction:column;align-items:center;padding:10px 14px;display:flex}.kpi span{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11.5px;font-weight:700}.kpi strong{font-size:26px;line-height:1.25}.kpi.big strong{font-size:30px}.kpi small{color:var(--muted);font-size:12px}.kpi.band-green{background:#e6f4ec;border-color:#b8dfc8}.kpi.band-green strong{color:#1f6b43}.kpi.band-yellow{background:#fff4dc;border-color:#f3d79a}.kpi.band-yellow strong{color:#8a5a00}.kpi.band-red{background:#fde8e6;border-color:#f2b8b2}.kpi.band-red strong{color:#a52a1f}.dash-row{flex-wrap:wrap;gap:12px;display:flex}.dash-row>section{flex:320px}.dash-row>section.grow{flex:3 520px}.bars{flex-direction:column;display:flex}.bars-area{border-bottom:1px solid var(--border);align-items:flex-end;gap:6px;height:230px;padding-left:34px;display:flex;position:relative}.th-line{pointer-events:none;border-top:1px dashed #2e8b57;position:absolute;left:34px;right:0}.th-line.y{border-top-color:#f0a43a}.th-line em{color:var(--muted);font-size:10.5px;font-style:normal;position:absolute;top:-8px;left:-34px}.bars .bar{background:0 0;border:0;border-radius:6px 6px 0 0;flex-direction:column;flex:1 1 0;justify-content:flex-end;align-items:stretch;min-width:18px;max-width:64px;height:100%;padding:0;display:flex;position:relative}.bars .bar:hover .bar-fill,.bars .bar:focus-visible .bar-fill{filter:brightness(1.12);outline:2px solid var(--text);outline-offset:1px}.bars .bar-fill{border-radius:6px 6px 0 0;min-height:2px;display:block}.bars .bar-val{text-align:center;white-space:nowrap;margin-bottom:2px;font-size:10.5px;font-weight:700}.bars-labels{gap:6px;padding-left:34px;display:flex}.bars-labels span{min-width:18px;max-width:64px;color:var(--muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;padding-top:4px;font-size:11px;overflow:hidden}.trend{width:100%;height:auto}.trend .axis{fill:var(--muted);font-size:11px}.heatmap th,.heatmap td{text-align:center}.heatmap th[scope=row],.heatmap thead th:first-child{text-align:left}.heatmap thead th{white-space:normal;min-width:90px;font-size:11.5px}.hm{border:0;border-radius:8px;min-width:58px;padding:6px 8px;font-size:13px;font-weight:700}.hm.band-green{color:#1f6b43;background:#cfe9d9}.hm.band-yellow{color:#7a5000;background:#fde9bf}.hm.band-red{color:#8f2219;background:#f8cbc6}.hm-empty{color:var(--muted)}th.num,td.num{text-align:right}.band-dot{vertical-align:0;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.filter-bar{flex-direction:column;gap:8px;display:flex}.tok-search{position:relative}.tok-search input{width:100%}.tok-list{z-index:50;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;max-height:360px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.tok-list li{border-radius:8px;align-items:stretch;display:flex}.tok-list li.on{background:var(--bg)}.tok-list li>button:first-child{text-align:left;background:0 0;border:0;flex:1;justify-content:flex-start;padding:7px 10px;font-weight:500;display:block}.tok-list li>button small{color:var(--muted);font-size:12px;font-weight:400;display:block}.tok-list .tok-ex{color:var(--bad);background:0 0;border:0;padding:0 12px;font-weight:800}.tok-list .tok-head{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:6px 10px 2px;font-size:11px;font-weight:700}.tok-list .tok-tip{color:var(--muted);border-top:1px solid var(--border);margin-top:4px;padding:6px 10px 2px;font-size:11.5px}.tok-kind{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-right:4px;font-size:10.5px;font-weight:700}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{background:#e3f3ea;border:1px solid #b8dfc8;border-radius:99px;align-items:center;display:inline-flex;overflow:hidden}.chip.ex{background:#fdeae7;border-color:#f2b8b2}.chip.ex .chip-main{text-decoration:line-through;text-decoration-thickness:1px}.chip-main{background:0 0;border:0;padding:4px 4px 4px 10px;font-size:13px;font-weight:600}.chip-x{background:0 0;border:0;padding:2px 9px;font-size:15px;line-height:1}.filter-toggles{flex-wrap:wrap;gap:18px;font-size:13.5px;display:flex}.export-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.export-grid>section:nth-child(-n+3){grid-column:1/-1}.export-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}@media (width<=900px){.export-grid{grid-template-columns:1fr}}.type-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.type-cards label{border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;gap:3px;margin:0;padding:10px 12px;font-weight:400;display:flex}.type-cards label.on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent);background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.type-cards input{opacity:0;width:1px;height:1px;position:absolute}.type-cards label:has(input:focus-visible){outline:3px solid var(--amber)}.type-cards span{color:var(--muted);font-size:12.5px}.state-checks{flex-wrap:wrap;gap:14px;display:flex}.col-list{columns:2 220px;column-gap:16px;max-height:340px;margin:0;padding:0;list-style:none;overflow:auto}.col-list li{break-inside:avoid;border-radius:8px;justify-content:space-between;align-items:center;padding:0 6px;display:flex}.col-list li.on{background:color-mix(in srgb, var(--accent) 7%, transparent)}.col-list label{flex:1;align-items:center;gap:8px;margin:0;padding:5px 0;font-weight:500;display:flex}.col-list label input{width:auto}.col-list .order button{border-radius:6px;padding:0 6px;font-size:12px;line-height:20px}.icon-btn{color:var(--primary);background:0 0;border:0;padding:4px}tr.paused td{opacity:.6}dialog.sched-dialog{width:min(620px,100vw - 32px)}.pill.signoff{color:#4b3a99;background:#ece8fb;border-color:#0000}dl.kv{grid-template-columns:max-content 1fr;gap:10px 22px;margin:0;display:grid}dl.kv dt{color:var(--muted);font-weight:700}dl.kv dd{margin:0}dl.kv.compact{gap:4px 16px;font-size:14px}fieldset.ev-q{border:1px solid var(--border);border-radius:12px;margin:12px 0;padding:4px 14px 12px}fieldset.ev-q legend{padding:0 6px;font-weight:700}fieldset.ev-q p{margin:4px 0 10px}.preview-head{background:linear-gradient(135deg, var(--primary-deep), var(--teal));color:#fff;border-radius:12px;margin-bottom:12px;padding:14px 16px}.author-actions{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:14px 0;display:grid}.author-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow);flex-direction:column;gap:6px;padding:18px;text-decoration:none;display:flex}.author-card svg{color:var(--primary)}.author-card span{color:var(--muted);font-size:13.5px}.author-card:hover{border-color:var(--accent)}.stat-link{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;font-size:13px;text-decoration:none;display:flex}.stat-link strong{color:var(--text);font-size:24px}.course-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.ccard{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.ccard-cover{background:linear-gradient(135deg, var(--primary-deep), var(--teal));background-position:50%;background-size:cover;align-items:flex-end;height:150px;padding:12px;display:flex;position:relative}.ccard-cover:after{content:"";background:linear-gradient(#0000000d,#0009);position:absolute;inset:0}.ccard-cover h3{z-index:1;color:#fff;margin:0;font-size:17px;line-height:1.25;position:relative}.ccard-kind{z-index:1;color:#fff;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700;position:absolute;top:10px;left:12px}.ccard-status{z-index:1;position:absolute;top:8px;right:10px}.ccard-body{flex-direction:column;flex:1;gap:4px;padding:10px 14px 14px;display:flex}.ccard-body p{margin:0;font-size:13.5px}.ccard-body .small-actions{margin-top:auto;padding-top:8px}.cover-preview{border:1px solid var(--border);background-position:50%;background-size:cover;border-radius:10px;height:90px;margin-top:8px}.path-list{margin:8px 0 12px;padding-left:22px}.path-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:4px 0;display:flex}.path-list .order button{border-radius:6px;margin-left:2px;padding:0 7px;font-size:12px;line-height:22px}.plan-items{margin:8px 0}.plan-items td{border-bottom:1px solid var(--border);padding:6px 8px}label.inline{align-items:center;gap:6px;margin:0;font-weight:400;display:inline-flex}.empty-state{text-align:center;color:var(--muted);padding:30px}.aid-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.card.aid{color:var(--text);flex-direction:column;gap:4px;text-decoration:none;display:flex}.card.aid span{color:var(--muted);font-size:13.5px}.card.aid small{color:var(--primary);font-weight:600}.replace-box{border:1px dashed var(--border);border-radius:12px;margin-top:10px;padding:12px 14px}label.choice{border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;margin:6px 0;padding:10px 12px;font-weight:400;display:flex}label.choice.on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--surface))}label.choice input{width:auto;margin-top:4px}button.danger-btn{background:var(--bad);border-color:var(--bad)}.person-head{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.person-head .ph-main{flex:320px;min-width:0}.person-head h1 .pill{vertical-align:4px;margin-left:6px;font-size:13px}.enroll-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.enroll-bar select{flex:280px;width:auto}.enroll-bar input[type=date]{width:auto}details.add-people{border:1px solid var(--border);border-radius:10px;margin-top:8px;padding:6px 10px}details.add-people summary{cursor:pointer;color:var(--primary);font-weight:600}.people-picker{margin-top:8px}.journey-card .ring{width:72px;height:72px}.journey-card .ring span{width:56px;height:56px;font-size:18px}.course-cover{aspect-ratio:2;background:linear-gradient(135deg, var(--primary-deep), var(--teal));background-position:50%;background-size:cover;flex:none}.course-cover.no-img{background-image:linear-gradient(135deg, var(--primary-deep), var(--teal))}.card .course-cover.banner{border-radius:var(--radius) var(--radius) 0 0;margin:-18px -18px 4px}.course-cover.thumb{border-radius:8px;width:96px;box-shadow:0 1px 4px #00000026}.next-up .course-cover.thumb{width:84px}.locked-course .course-cover{filter:grayscale(.75)}.course-row.locked-row .course-cover{filter:grayscale(.75);opacity:.8}@media (width<=520px){.course-cover.thumb{width:72px}}.role-pick .role-opt{border-bottom:1px solid var(--border);padding:6px 0}.role-pick .role-opt:last-child{border-bottom:0}.role-pick .role-opt label{align-items:flex-start;gap:8px;display:flex}.role-pick details{margin:2px 0 0 26px;font-size:13px}.role-pick summary{cursor:pointer;color:var(--primary);font-size:12.5px;font-weight:600}.role-pick details ul{color:var(--muted);margin:4px 0 2px;padding-left:18px}.role-pick .lock-note{font-style:italic}.author-video{aspect-ratio:16/9;background:#000;border-radius:10px;width:100%;max-width:560px;display:block}.quiz-edit{gap:14px;margin:10px 0;padding-left:20px;display:grid}.quiz-edit>li{border:1px solid var(--border);border-radius:10px;padding:10px 12px}.quiz-opt{grid-template-columns:90px 1fr auto;align-items:center;gap:8px;margin-top:6px;display:grid}.quiz-opt label{align-items:center;gap:6px;margin:0;font-weight:400;display:flex}.video-course{flex:1;padding:18px 16px 40px;overflow:auto}.video-course .video-wrap{max-width:1100px;box-shadow:var(--shadow);background:#000;border-radius:12px;margin:0 auto;position:relative;overflow:hidden}.video-course video{background:#000;width:100%;max-height:calc(100vh - 170px);display:block}.video-course .skip-note{color:#fff;background:#000000c7;border-radius:8px;padding:8px 14px;font-size:14px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.video-course .video-side{max-width:1100px;margin:14px auto 0}.video-quiz h2{margin-top:0}.video-quiz ol{gap:12px;padding-left:20px;display:grid}.video-quiz fieldset{border:0;margin:0;padding:0}.video-quiz legend{margin-bottom:4px;font-weight:600}.video-quiz li.wrong{background:#fdf2f2;border-radius:8px;padding:6px 8px}.video-quiz .wrong-tag{color:#b42318;font-weight:600}.person-form .table-wrap td{overflow-wrap:anywhere}.recur-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:14px;display:flex}.recur-row input,.recur-row select{width:auto}.quick-groups{flex-wrap:wrap;gap:6px 18px;margin:6px 0 8px;display:flex}.course-open{cursor:pointer;background:0 0;border:0;width:auto;margin:-18px -18px 4px;padding:0;display:block}.course-open .course-cover.banner{margin:0}.linklike.course-title{font:inherit;color:inherit;text-align:left;padding:0;text-decoration:none}.linklike.course-title:hover{color:var(--primary);text-decoration:underline}.course-details{max-width:620px;padding:0}.course-details .cd-cover{position:relative}.course-details .cd-cover .course-cover.banner{aspect-ratio:2.4;border-radius:0;margin:0}.course-details .cd-cover .close{color:#fff;background:#00000073;border:0;position:absolute;top:10px;right:10px}.course-details .cd-facts{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.course-details .cd-desc{white-space:pre-line;margin:0 0 10px;line-height:1.55}.course-details .cd-notes{color:var(--muted);gap:4px;margin:0;padding-left:18px;font-size:14px;display:grid}.team-badges{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.team-badge{align-items:flex-start;gap:12px;display:flex}.team-badge.none{opacity:.7}.team-badge .tb-count{margin-top:6px;font-size:14px}.tb-bar{background:var(--border);border-radius:99px;flex:1;height:8px;margin-top:4px;display:block;overflow:hidden}.tb-bar>span{background:var(--accent);border-radius:99px;height:100%;display:block}.count-row{grid-template-columns:minmax(120px,1.2fr) 2fr 36px;align-items:center;gap:10px;padding:6px 0;font-size:14px;display:grid}.count-row b{text-align:right}.my-team-rank{border:2px solid var(--accent);background:#effaf3;align-items:center;gap:16px;display:flex}.my-team-rank .rank{color:var(--primary);font-size:32px;font-weight:800}.my-team-rank .xp{margin-left:auto;font-size:15px}tr.mine-row td{background:#effaf3;font-weight:600}.level-dot{vertical-align:middle;border-radius:50%;width:10px;height:10px;display:inline-block}.team-stats .stat{flex-direction:column;gap:2px;display:flex}.team-stats .stat strong{font-size:26px}.preview-banner{color:#fff;text-align:center;background:#c62828;border-bottom:3px solid #8e1b1b;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 16px;padding:10px 16px;display:flex}.preview-banner strong{letter-spacing:.06em;font-size:17px;font-weight:800}.preview-banner span{font-size:14px;font-weight:600}.glitter{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.glitter .g{width:var(--s);height:var(--s);background:var(--c,#2bb673);opacity:0;will-change:transform, opacity;position:absolute}.glitter .g.dot{border-radius:50%}.glitter .g.dia{transform:rotate(45deg)}.glitter .g.strip{height:calc(var(--s) * .45);width:calc(var(--s) * 1.8);border-radius:2px}.glitter .g.gold{background:linear-gradient(135deg,#fff3c4 0%,#f5ab23 35%,#c98a10 65%,#ffe08a 100%);box-shadow:0 0 6px #f5ab23bf}.glitter .g.black{background:linear-gradient(135deg,#3a3a3a 0%,#050505 55%,#2a2a2a 100%);box-shadow:inset 1px 1px #ffffff8c}.glitter .g.rain{top:-4vh;left:var(--x);animation:glitter-fall var(--t) var(--d) cubic-bezier(.3, .1, .6, 1) forwards, glitter-twinkle .6s var(--d) ease-in-out infinite alternate}.glitter .g.burst{animation:glitter-burst var(--t) var(--d) cubic-bezier(.15, .75, .35, 1) forwards, glitter-twinkle .5s var(--d) ease-in-out infinite alternate;top:102vh}.glitter .g.burst.left{left:2vw}.glitter .g.burst.right{left:98vw}@keyframes glitter-fall{0%{opacity:1;transform:translate(0,0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate3d(var(--sway), 108vh, 0) rotate(var(--r))}}@keyframes glitter-burst{0%{opacity:1;transform:translate(0,0)scale(.3)rotate(0)}30%{opacity:1;transform:translate3d(var(--bx), var(--by), 0) scale(1) rotate(calc(var(--r) / 2))}85%{opacity:1}to{opacity:0;transform:translate3d(calc(var(--bx) + var(--sway)), calc(var(--by) + 105vh), 0) rotate(var(--r))}}@keyframes glitter-twinkle{0%{filter:brightness(.75)}to{filter:brightness(1.45)}}@media (prefers-reduced-motion:reduce){.glitter{display:none}}.celebrate .panel-body{z-index:1;position:relative}.cert-preview{border-radius:10px;width:min(320px,80%);margin:6px auto 4px;display:block;box-shadow:0 8px 26px #00000040}.next-up .info{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.next-up .info .due-badge{font-size:11.5px}.update-banner{z-index:60;background:var(--primary-deep);color:#fff;border-radius:12px;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:10px 12px 10px 16px;font-size:14.5px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000047}.update-banner .primary{background:var(--accent);border-color:var(--accent);padding:6px 14px}.update-banner .linklike{color:#cfe9dc}@media (width<=520px){.update-banner{text-align:center;flex-wrap:wrap;justify-content:center}}.badge-row .how-to{font-size:13.5px}.badge-row .how-to b{color:var(--primary)}.cert-thumb{border-radius:6px;flex:none;width:96px;box-shadow:0 2px 8px #0000002e}.next-up:hover .info strong,.next-up:focus-within .info strong{-webkit-line-clamp:unset;display:block}.next-up{transition:box-shadow .15s}.next-up:hover{box-shadow:0 10px 30px #00000047}.staging-tag{z-index:70;color:#fff;letter-spacing:.04em;white-space:nowrap;pointer-events:none;background:#ea580c;border-radius:0 0 10px 10px;padding:3px 14px;font-size:12px;font-weight:800;position:fixed;top:0;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000040}
