*{box-sizing:border-box}:root{--color-neutral-0:#fff;--color-neutral-50:#fbfaf6;--color-neutral-100:#f3f5f7;--color-neutral-150:#eaf0f4;--color-neutral-200:#d9e2ea;--color-neutral-300:#b7c5d2;--color-neutral-500:#5e6b7d;--color-neutral-600:#465466;--color-neutral-900:#162031;--color-neutral-950:#0d1625;--color-ukraine-blue:#195da8;--color-ukraine-blue-strong:#124a86;--color-ukraine-blue-soft:#e8f1fb;--color-ukraine-yellow:#f1c94e;--color-ukraine-yellow-strong:#8a5a00;--color-success:#21795b;--color-success-soft:#e8f6ef;--color-warning:#9a6500;--color-warning-strong:#704700;--color-warning-soft:#fff3d6;--color-danger:#b42318;--color-danger-soft:#fdecea;--color-ink:var(--color-neutral-900);--color-ink-strong:var(--color-neutral-950);--color-ink-muted:var(--color-neutral-500);--color-muted:var(--color-neutral-600);--color-subtle:var(--color-neutral-500);--color-canvas:var(--color-neutral-100);--color-canvas-tint:#edf5f6;--color-surface:var(--color-neutral-0);--color-surface-soft:var(--color-neutral-50);--color-surface-header:#fffffff2;--color-border:var(--color-neutral-200);--color-border-soft:var(--color-neutral-150);--color-border-strong:var(--color-neutral-300);--color-primary:var(--color-ukraine-blue);--color-primary-strong:var(--color-ukraine-blue-strong);--color-primary-soft:var(--color-ukraine-blue-soft);--color-accent:var(--color-ukraine-yellow);--color-accent-strong:var(--color-ukraine-yellow-strong);--font-family-base:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-md:1.125rem;--font-size-lg:1.25rem;--font-size-xl:2.25rem;--font-size-2xl:3.75rem;--line-height-tight:1;--line-height-base:1.55;--line-height-body:var(--line-height-base);--line-height-normal:1.45;--line-height-relaxed:1.7;--line-height-control:1.2;--line-height-sm:1.35;--font-weight-semibold:700;--font-weight-bold:800;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-round:999px;--border-width:1px;--shadow-panel:0 1rem 2.75rem #1620311a;--shadow-card:var(--shadow-panel);--shadow-control:0 .5rem 1.25rem #16203114;--shadow-soft:var(--shadow-control);--color-focus:var(--focus-ring-color);--focus-ring-color:#195da859;--focus-ring-contrast:var(--color-accent);--focus-ring-width:.1875rem;--content-max-width:73.75rem;--content-gutter:clamp(var(--space-5), 6vw, var(--space-16));--header-min-height:4.625rem;color:var(--color-ink);background:var(--color-canvas);font-family:var(--font-family-base);font-synthesis:none;line-height:var(--line-height-base);text-rendering:optimizelegibility}html{background:var(--color-canvas);min-width:320px}@media (width>=1181px) and (pointer:fine){html{font-size:clamp(87.5%,41% + .96vh,100%)}}body{background:repeating-linear-gradient(0deg, #16203105 0, #16203105 1px, transparent 1px, transparent 14px), linear-gradient(180deg, var(--color-surface) 0%, var(--color-canvas) 46%, var(--color-canvas-tint) 100%);min-width:320px;min-height:100vh;margin:0}#app{min-height:100vh}body,button,input,textarea,select{font:inherit}a{color:var(--color-primary);text-underline-offset:.18em;text-decoration-thickness:.08em}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-contrast);outline-offset:var(--space-1);box-shadow:0 0 0 calc(var(--focus-ring-width) * 2) var(--focus-ring-color)}:focus:not(:focus-visible){outline:none}button,input,textarea,select{border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-ink);background:var(--color-surface)}button,a,input,textarea,select{transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s}button,select{min-height:2.75rem;line-height:var(--line-height-control)}input,textarea,select{width:100%;padding:.6875rem var(--space-3)}button{cursor:pointer}button:hover:not(:disabled),select:hover:not(:disabled),input:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--color-primary)}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;color:var(--color-subtle);background:var(--color-neutral-150);border-color:var(--color-border)}h1,h2,h3{color:var(--color-ink-strong);line-height:var(--line-height-tight);margin:0}p{margin:0}.eyebrow{margin:0 0 var(--space-3);color:var(--color-primary);font-size:.8125rem;font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:uppercase}h1{max-width:11ch;font-size:var(--font-size-2xl)}.page-lede{max-width:42.5rem;margin:var(--space-6) 0 0;color:var(--color-muted);font-size:var(--font-size-md);line-height:var(--line-height-relaxed)}.hero-actions{gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.button{justify-content:center;align-items:center;gap:var(--space-2);max-width:100%;min-height:2.75rem;padding:0 var(--space-5);border:var(--border-width) solid transparent;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-bold);line-height:var(--line-height-control);text-align:center;overflow-wrap:anywhere;text-decoration:none;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,transform .12s;display:inline-flex}.button:hover:not([aria-disabled=true]):not(:disabled){box-shadow:var(--shadow-control)}.button:active:not([aria-disabled=true]):not(:disabled){transform:translateY(1px)}.button-primary{background:var(--color-primary);color:var(--color-surface)}.button-primary:hover{background:var(--color-primary-strong)}.button-secondary{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-ink)}.button-secondary:hover{border-color:var(--color-primary);color:var(--color-primary-strong)}.button-danger{border-color:var(--color-danger);color:var(--color-danger)}.button-danger:hover{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger)}.button-light{border-color:var(--color-surface);background:var(--color-surface);color:var(--color-primary-strong)}.button-light:hover{border-color:var(--color-accent);background:var(--color-surface-soft)}.button-small{min-height:2.375rem;padding:0 var(--space-3);font-size:var(--font-size-sm)}.button[aria-disabled=true],.button:disabled{cursor:not-allowed;border-color:var(--color-border);background:var(--color-neutral-150);color:var(--color-subtle);box-shadow:none;transform:none}.ui-panel{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-panel);overflow:hidden}.panel-header{padding:var(--space-6);border-bottom:var(--border-width) solid var(--color-border);background:var(--color-surface-soft);gap:.375rem;display:grid}.panel-header span{color:var(--color-subtle);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.panel-header strong{color:var(--color-ink);font-size:var(--font-size-lg)}.panel-body{gap:var(--space-5);padding:var(--space-6);display:grid}.panel-footer{gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:var(--border-width) solid var(--color-border);background:var(--color-surface-soft);flex-wrap:wrap;display:flex}.card-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));display:grid}.ui-card{min-width:0;padding:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.card-title{color:var(--color-ink-strong);font-weight:var(--font-weight-bold)}.card-text{margin-top:var(--space-2);color:var(--color-muted);font-size:var(--font-size-sm)}.form-stack{gap:var(--space-5);display:grid}.field{gap:var(--space-2);display:grid}.field-row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field-label{color:var(--color-ink-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.field-hint,.field-error{font-size:var(--font-size-sm);line-height:var(--line-height-base)}.field-hint{color:var(--color-muted)}.field-error{color:var(--color-danger);font-weight:var(--font-weight-semibold)}.text-input,.select-input,.textarea-input{background:var(--color-surface);min-height:2.875rem}.textarea-input{resize:vertical;min-height:6rem}.choice-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));display:grid}.auth-page,.account-page{gap:var(--space-8);min-width:0;max-width:64rem;display:grid}.auth-copy,.account-header{min-width:0}.auth-page h1,.account-page h1{max-width:13ch}.auth-grid{align-items:start;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(16rem,.42fr);min-width:0;display:grid}.auth-panel{min-width:0}.auth-form-footer{justify-content:space-between}.auth-sidecar,.account-surface{gap:var(--space-5);min-width:0;display:grid}.auth-sidecar{padding:var(--space-5);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);box-shadow:var(--shadow-control)}.auth-sidecar h2{max-width:12ch;font-size:var(--font-size-lg);line-height:1.15}.auth-sidecar p,.account-surface>p{color:var(--color-muted)}.auth-alert{padding:var(--space-3);border:var(--border-width) solid #b4231842;border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.account-section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.account-section-heading p{margin:var(--space-1) 0 0;color:var(--color-muted);overflow-wrap:anywhere}.account-summary-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.account-summary-card{gap:var(--space-2);display:grid}.account-summary-card strong{overflow-wrap:anywhere;min-width:0}.account-actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.settings-form-grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.learning-path-fieldset{border:0;min-width:0;padding:0}.learning-path-options{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.learning-path-option{gap:var(--space-3);min-width:0;padding:var(--space-4);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.learning-path-option-selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.learning-path-option span{gap:var(--space-1);min-width:0;display:grid}.learning-path-option strong,.learning-path-option small{overflow-wrap:anywhere;min-width:0}.learning-path-option small{color:var(--color-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase}.form-status{padding:var(--space-3);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.form-status-success{background:var(--color-success-soft);color:var(--color-success);border-color:#15803d47}.form-status-warning{background:var(--color-danger-soft);color:var(--color-danger);border-color:#b4231842}.settings-support-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.settings-support-grid article{gap:var(--space-1);min-width:0;padding:var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);display:grid}.settings-support-grid strong{overflow-wrap:anywhere;min-width:0}.status-pill{align-items:center;gap:var(--space-2);max-width:100%;min-height:2rem;padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-round);background:var(--color-surface);color:var(--color-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-control);overflow-wrap:anywhere;display:inline-flex}.status-pill:before{content:"";border-radius:var(--radius-round);background:currentColor;flex:none;width:.5rem;height:.5rem}.status-pill-success{background:var(--color-success-soft);color:var(--color-success);border-color:#21795b47}.status-pill-warning{background:var(--color-warning-soft);color:var(--color-warning);border-color:#9a650047}.status-pill-danger{background:var(--color-danger-soft);color:var(--color-danger);border-color:#b4231842}.status-pill-current{background:var(--color-primary-soft);color:var(--color-primary-strong);border-color:#195da847}.status-label{min-height:1.5rem;padding:0 var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-soft);color:var(--color-muted);font-size:.6875rem;font-weight:var(--font-weight-bold);line-height:var(--line-height-control);text-transform:uppercase;place-items:center;display:inline-grid}.course-unit-code,.lesson-station-badge{border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-round);background:var(--color-primary-soft);min-width:2.75rem;min-height:2.75rem;color:var(--color-primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-control);place-items:center;display:inline-grid}.progress-meter{border-radius:var(--radius-round);background:var(--color-neutral-200);width:100%;height:.625rem;position:relative;overflow:hidden}.progress-meter>span{width:var(--progress-value,0%);border-radius:inherit;background:linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 100%);height:100%;display:block}.route-node{border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-round);background:var(--color-surface);width:2rem;height:2rem;color:var(--color-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);place-items:center;display:inline-grid}.route-complete .route-node{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success)}.route-current .route-node{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-surface)}.route-future{color:var(--color-subtle)}.workspace-main{gap:var(--space-5);min-width:0;display:grid}.dashboard-surface{gap:var(--space-8);min-width:0;padding:var(--space-6);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-panel);display:grid}.section-heading{align-items:center;gap:var(--space-3);display:flex}.section-heading h2{color:var(--color-ink-strong);font-size:var(--font-size-lg);text-transform:uppercase}.learning-card-header,.section-heading{justify-content:space-between}.flashcard-load-state,.flashcard-empty-card,.review-state-panel{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);border:var(--border-width) solid #195da83d;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-muted);font-size:var(--font-size-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.flashcard-load-state>div,.review-state-panel>div{gap:var(--space-1);min-width:0;display:grid}.retry-load-action{margin-top:var(--space-1);justify-self:start}.review-state-actions{gap:var(--space-2);min-width:0;margin-top:var(--space-2);flex-wrap:wrap;display:flex}.flashcard-load-state strong,.flashcard-empty-card strong,.review-state-panel strong{color:var(--color-ink-strong)}.flashcard-load-state span,.flashcard-empty-card span,.review-state-panel span{overflow-wrap:anywhere;min-width:0}.state-kicker{min-height:1.75rem;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:var(--line-height-control);text-transform:uppercase;white-space:nowrap;place-items:center;display:inline-grid}.flashcard-state-warning{background:var(--color-warning-soft);border-color:#9a65004d}.flashcard-state-warning .state-kicker,.review-state-warning .state-kicker{color:var(--color-warning)}.flashcard-state-empty,.review-state-empty{border-color:var(--color-border-strong);background:var(--color-surface-soft)}.review-state-warning{background:var(--color-warning-soft);border-color:#9a65004d}.review-state-success{background:var(--color-success-soft);border-color:#21795b47}.review-state-success .state-kicker{color:var(--color-success)}.review-auth-panel{gap:var(--space-5);padding:var(--space-6);display:grid}.review-auth-panel h2{color:var(--color-ink-strong);font-size:var(--font-size-lg);line-height:var(--line-height-tight);margin:0}.review-auth-panel p{margin:var(--space-3) 0 0;color:var(--color-muted)}.review-auth-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.page-section{gap:var(--space-8);max-width:47.5rem;display:grid}.page-section.surface-preview{max-width:100%}.page-section h1{max-width:12ch}.page-section.surface-preview h1{max-width:16ch}.not-found{gap:var(--space-5);display:grid}.not-found .button{width:fit-content}.shell-placeholder-page{max-width:56rem}.placeholder-ticket{align-items:center;gap:var(--space-5);min-width:0;padding:var(--space-6);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);background:linear-gradient(90deg, #195da81a 0 .375rem, transparent .375rem), var(--color-surface);box-shadow:var(--shadow-control);grid-template-columns:auto minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden}.placeholder-ticket .ticket-flag{width:.45rem;height:100%;top:0;bottom:0;left:0}.placeholder-ticket h1{max-width:18ch}.placeholder-station{border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-round);background:var(--color-primary-soft);width:4rem;height:4rem;color:var(--color-primary-strong);font-weight:var(--font-weight-bold);place-items:center;display:inline-grid}.placeholder-surface{gap:var(--space-5);padding:var(--space-6)}.placeholder-surface .button{justify-self:start}.shell-steps{gap:0;margin:0;padding:0;list-style:none;display:grid}.shell-steps li{align-items:center;gap:var(--space-4);min-height:4.5rem;padding:var(--space-4) var(--space-6);border-top:var(--border-width) solid var(--color-border-soft);color:var(--color-muted);font-weight:var(--font-weight-semibold);grid-template-columns:2.25rem minmax(0,1fr);display:grid}.shell-steps li span:last-child{overflow-wrap:anywhere;min-width:0}.shell-steps li:first-child{border-top:0}.step-index{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-round);background:var(--color-primary-soft);width:2.25rem;height:2.25rem;color:var(--color-primary-strong);font-size:var(--font-size-sm);place-items:center;display:inline-grid}.route-strip.placeholder-route{padding-bottom:var(--space-2);margin-top:0}.not-found-actions{margin-top:0}.app-frame{grid-template-columns:minmax(15.75rem,18rem) minmax(0,1fr);min-height:100vh;padding-bottom:0;display:grid;position:relative}.app-content-shell{min-width:0}.skip-link{top:var(--space-3);left:var(--space-3);z-index:30;transform:translateY(calc(-100% - var(--space-6)));padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-ink-strong);color:var(--color-surface);font-weight:var(--font-weight-bold);text-decoration:none;position:fixed}.skip-link:focus-visible{transform:translateY(0)}.app-sidebar{z-index:10;min-width:0;height:100vh;padding:var(--space-6);border-right:var(--border-width) solid #ffffff1a;background:linear-gradient(180deg, #195da838, transparent 32%), var(--color-neutral-950);color:var(--color-surface);grid-template-rows:auto minmax(0,1fr) auto;align-self:start;display:grid;position:sticky;top:0;overflow-y:auto}.brand{min-width:0;color:var(--color-ink);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);align-items:center;gap:.625rem;text-decoration:none;display:inline-flex}.sidebar-brand{align-self:start}.app-sidebar .brand,.app-sidebar .brand-copy strong{color:var(--color-surface)}.app-sidebar .brand-copy small{color:var(--color-accent)}.brand span:last-child{overflow-wrap:anywhere}.brand-copy{gap:.0625rem;display:grid}.brand-copy strong{color:var(--color-ink-strong);font-size:var(--font-size-base);line-height:1.1}.brand-copy small{color:var(--color-primary);font-size:.6875rem;font-weight:var(--font-weight-bold);text-transform:uppercase;line-height:1.1}.brand-mark{border-radius:var(--radius-md);border:var(--border-width) solid var(--color-primary-strong);background:linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-strong) 100%);width:2.375rem;height:2.375rem;color:var(--color-surface);letter-spacing:0;flex:none;place-items:center;font-size:.8125rem;display:inline-grid;position:relative;overflow:hidden}.primary-nav{align-content:start;gap:var(--space-2);margin-top:var(--space-8);display:grid}.primary-nav a{align-items:center;gap:var(--space-3);min-height:3.85rem;padding:.55rem var(--space-3);border:var(--border-width) solid transparent;border-radius:var(--radius-md);color:#ffffffb8;font-size:.9375rem;font-weight:var(--font-weight-semibold);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.nav-route-code{border-radius:var(--radius-sm);background:var(--color-surface);min-width:2rem;height:2rem;color:var(--color-primary-strong);font-size:.75rem;font-weight:var(--font-weight-bold);line-height:var(--line-height-control);place-items:center;display:inline-grid}.nav-copy{gap:.12rem;min-width:0;display:grid}.nav-label{color:currentColor;overflow-wrap:anywhere;min-width:0}.nav-detail{color:#ffffff9e;min-width:0;font-size:.75rem;font-weight:400;line-height:var(--line-height-control);overflow-wrap:anywhere}.nav-chevron{filter:brightness(0)invert();opacity:.72;background:url(/assets/progress-arrow-right-BpVUPwJK.png) 50%/contain no-repeat;width:1.15rem;height:1.15rem}.primary-nav a:hover{color:var(--color-surface);background:#ffffff12;border-color:#ffffff2e}.primary-nav a:hover,.primary-nav a.router-link-active{background:var(--color-primary);color:var(--color-surface);border-color:#f1c94e47;box-shadow:0 .75rem 1.8rem #03091238}.primary-nav a.router-link-active .nav-route-code{background:var(--color-accent);color:var(--color-neutral-950)}.primary-nav a:hover .nav-detail,.primary-nav a.router-link-active .nav-detail{color:#ffffffc7}.primary-nav a.router-link-active .nav-chevron{opacity:1}.primary-nav a:active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-surface)}.shell-status{justify-items:start;gap:var(--space-2);min-width:0;margin-top:var(--space-6);color:#ffffffad;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:left;display:grid}.shell-status .status-pill{min-height:1.875rem}.shell-account-summary,.shell-account-actions{justify-items:center;gap:var(--space-2);width:100%;min-width:0;display:grid}.shell-account-summary>span:last-child{overflow-wrap:anywhere;min-width:0;max-width:100%}.shell-account-actions{margin-top:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.shell-account-actions .button{width:100%;padding-right:var(--space-2);padding-left:var(--space-2)}.shell-logout-button,.shell-register-link{color:var(--color-surface);background:0 0;border-color:#ffffff52}.shell-logout-button:hover,.shell-register-link:hover{border-color:var(--color-accent);color:var(--color-surface);background:#ffffff14}.shell-account-actions .shell-logout-button,.shell-account-actions .shell-register-link{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-ink)}.shell-account-actions .shell-logout-button:hover,.shell-account-actions .shell-register-link:hover{border-color:var(--color-primary);color:var(--color-primary-strong);background:#ffffff14}.learner-pass{aspect-ratio:700/850;width:min(100%,8rem);height:auto;display:block}.app-sidebar .shell-status{text-align:center;justify-items:center}.station-code{min-width:2.25rem;min-height:1.35rem;padding:0 var(--space-1);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-soft);color:var(--color-subtle);font-size:.625rem;font-weight:var(--font-weight-bold);line-height:var(--line-height-control);place-items:center;display:inline-grid}.app-main{width:min(100%, var(--content-max-width));padding:var(--space-16) var(--content-gutter);margin:0 auto}@media (width<=1180px) and (pointer:fine){.app-frame:has(.admin-page){grid-template-columns:minmax(0,1fr)}.app-frame:has(.admin-page) .app-sidebar{display:none}.app-frame:has(.admin-page) .app-main{width:100%;padding:var(--space-4)}}.native-app-page{min-height:100dvh;padding:clamp(var(--space-6), 8vw, var(--space-16));background:repeating-linear-gradient(0deg, #16203106 0, #16203106 1px, transparent 1px, transparent 14px), linear-gradient(180deg, var(--color-surface) 0%, var(--color-canvas-tint) 100%);place-items:center;display:grid}.native-app-panel{gap:var(--space-5);width:min(100%,44rem);padding:var(--space-8);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-panel);display:grid}.native-app-eyebrow{color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.08em;line-height:var(--line-height-control);text-transform:uppercase}.native-app-panel h1{max-width:13ch;font-size:var(--font-size-xl);line-height:1.08}.native-app-panel p:not(.native-app-eyebrow){max-width:34rem;color:var(--color-muted);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal)}.native-app-downloads{gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.native-app-downloads .button{min-width:12rem}.app-frame:has(.dashboard-page) .app-main{padding-top:var(--space-10)}.brand-mark{box-shadow:var(--shadow-control);background:url(/assets/brand-mark-D9Kx10R6.png) 50%/contain no-repeat;border:0}
