.legal-page{background:var(--surface);min-height:100dvh;color:var(--text);flex-direction:column;display:flex}.legal-header{z-index:var(--z-header);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.legal-header-inner{justify-content:space-between;align-items:center;gap:var(--space-4);height:var(--topbar-h);max-width:calc(var(--content-max-reading) + 240px + var(--space-16) + 2 * var(--gutter));padding:0 var(--gutter);margin:0 auto;display:flex}.legal-header .brand-logo-img{max-width:170px;height:34px}.legal-body{width:100%;max-width:calc(var(--content-max-reading) + 2 * var(--gutter));padding:var(--space-8) var(--gutter) var(--space-16);flex:1;margin:0 auto}.legal-body--toc{max-width:calc(var(--content-max-reading) + 240px + var(--space-16) + 2 * var(--gutter));grid-template-columns:minmax(0, var(--content-max-reading)) 240px;gap:var(--space-16);align-items:start;display:grid}.legal-main{min-width:0}.legal-back{margin:0 0 var(--space-6);margin-left:calc(-1 * var(--space-1))}.legal-back:hover{color:var(--text)}.legal-main h1{margin:0 0 var(--space-2);font:var(--type-page-title);font-size:var(--text-4xl);letter-spacing:-.015em;text-wrap:balance;line-height:40px}.legal-meta{margin:0 0 var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--border);font:var(--type-secondary);color:var(--muted)}.legal-document{font:var(--type-body-lg);color:var(--text);overflow-wrap:anywhere}.legal-document p{margin:0 0 var(--space-4);line-height:inherit}.legal-document h2{margin:var(--space-10) 0 var(--space-3);font:var(--type-section-title);font-size:var(--text-2xl);scroll-margin-top:calc(var(--topbar-h) + var(--space-6));line-height:28px}.legal-document h3{margin:var(--space-8) 0 var(--space-2);font:var(--type-section-title);scroll-margin-top:calc(var(--topbar-h) + var(--space-6))}.legal-document h4{margin:var(--space-6) 0 var(--space-2);font:var(--type-card-title);scroll-margin-top:calc(var(--topbar-h) + var(--space-6))}.legal-document>:first-child{margin-top:0}.legal-toc{top:calc(var(--topbar-h) + var(--space-8));max-height:calc(100dvh - var(--topbar-h) - var(--space-16));padding-top:calc(44px + var(--space-6));position:sticky;overflow-y:auto}.legal-toc-title{margin:0 0 var(--space-3);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--subtle)}.legal-toc ol{border-left:1px solid var(--border);margin:0;padding:0;list-style:none}.legal-toc a{padding:var(--space-1) var(--space-3);font:var(--type-secondary);color:var(--muted);border-left:2px solid #0000;margin-left:-1px;display:block}.legal-toc a:hover{color:var(--text);border-left-color:var(--border-strong)}.legal-page :is(a,button):focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}@media (max-width:1099px){.legal-body--toc{max-width:calc(var(--content-max-reading) + 2 * var(--gutter));display:block}.legal-toc{display:none}}@media (max-width:1023px){.legal-header-inner,.legal-body{padding-inline:var(--space-6)}}@media (max-width:599px){.legal-header-inner{height:56px;padding-inline:var(--space-4)}.legal-header .brand-logo-img{max-width:128px;height:28px}.legal-body{padding:var(--space-5) var(--space-4) var(--space-12)}.legal-back{margin-bottom:var(--space-3)}.legal-main h1{font-size:var(--text-2xl);line-height:28px}.legal-meta{margin-bottom:var(--space-6);padding-bottom:var(--space-4)}.legal-document h2{margin-top:var(--space-8);font-size:var(--text-xl);line-height:26px}}.legal-document ul,.legal-document ol{padding-left:1.4em}.legal-document li+li{margin-top:.3em}.legal-document a{color:var(--primary);text-decoration:underline}.legal-document code{background:var(--raised);border-radius:var(--radius-sm);padding:0 .3em;font-size:.92em}.legal-document hr{border:0;border-top:1px solid var(--border);margin:2em 0}.legal-document dl{gap:var(--space-3) var(--space-6);margin:0 0 var(--space-6);grid-template-columns:minmax(140px,max-content) 1fr;display:grid}.legal-document dt{font-weight:600}.legal-document dd{margin:0}.legal-footer{border-top:1px solid var(--border);padding:var(--space-5) var(--space-4);font:var(--type-secondary);color:var(--muted)}.legal-footer nav{flex-wrap:wrap;justify-content:center;gap:4px 20px;display:flex}.legal-footer a{min-height:44px;color:inherit;align-items:center;display:inline-flex}.legal-footer a:hover,.legal-footer a:focus-visible{color:var(--text);text-decoration:underline}.legal-footer p{text-align:center;margin:var(--space-1) 0 0;font:var(--type-caption);font-weight:var(--weight-regular);color:var(--subtle)}.markdown-preview{max-height:480px;margin-top:12px;overflow:auto}.policy-editor textarea{min-height:280px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.policy-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.policy-list li{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:12px 0;display:flex}.policy-list li:last-child{border-bottom:0}@media (max-width:600px){.legal-document dl{grid-template-columns:1fr;gap:2px}.legal-document dd{margin-bottom:10px}}:root[data-theme=dark] .legal-page .button.secondary{color:var(--text)}.auth-page{--auth-card:440px;background:var(--bg);min-height:100dvh;color:var(--text);flex-direction:column;display:flex}.auth-page--wide{--auth-card:600px}.auth-topbar{justify-content:space-between;align-items:center;gap:var(--space-4);height:var(--topbar-h);padding:0 var(--gutter);display:flex}.auth-topbar .brand-logo-img{max-width:170px;height:34px}.auth-topbar-actions{align-items:center;gap:var(--space-2);display:flex}.auth-top-link{min-height:var(--touch);padding:0 var(--space-2);font:var(--type-button);color:var(--muted);white-space:nowrap;align-items:center;display:inline-flex}.auth-top-link a,a.auth-top-link{color:var(--primary)}.auth-top-link a:hover,a.auth-top-link:hover{text-underline-offset:3px;text-decoration:underline}.auth-main{padding:var(--space-6) var(--space-4) var(--space-10);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.auth-card,.auth-below{width:100%;max-width:var(--auth-card)}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8)}.auth-below{margin-top:var(--space-6)}.auth-heading{margin-bottom:var(--space-6)}.auth-heading-icon{width:44px;height:44px;margin-bottom:var(--space-4);border-radius:var(--radius-full);background:var(--tint);color:var(--primary);justify-content:center;align-items:center;display:inline-flex}.auth-overline{margin:0 0 var(--space-2);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--primary)}.auth-heading :is(h1,h2){margin:0 0 var(--space-2);font:var(--type-page-title);letter-spacing:-.01em;text-wrap:balance}.auth-description{font:var(--type-body);color:var(--muted);margin:0}.auth-centred{text-align:center}.auth-centred .auth-heading-icon{margin-inline:auto}.auth-card .field{gap:var(--space-2);margin-bottom:var(--space-4)}.auth-card .field>span:not(.field-error),.auth-card .field>label,.auth-card .password-field>label{font:var(--type-label);color:var(--text)}.auth-card :where(input:not([type=checkbox]):not([type=radio]),select){min-height:var(--control-md);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);font:var(--type-body);color:var(--text);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}.auth-card .password-input>input{padding-right:48px}.auth-card :is(input,select)::placeholder{color:var(--subtle)}.auth-card :is(input,select):hover:not(:disabled):not(:focus){border-color:color-mix(in srgb, var(--text) 30%, var(--border-strong))}.auth-card :is(input,select):focus,.auth-card :is(input,select):focus-visible{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.auth-card :is(input,select)[aria-invalid=true]{border-color:var(--danger)}.auth-card :is(input,select)[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 22%, transparent)}.auth-card :is(input,select):disabled{background:var(--raised);color:var(--muted)}.auth-card .password-toggle{width:var(--control-md);height:var(--control-md);min-width:var(--control-md);min-height:var(--control-md);right:0}.auth-card .field-error,.auth-card .field.password-field>span.field-error{font:var(--type-secondary);color:var(--danger);align-items:flex-start;gap:6px;margin:0;display:flex}.auth-card .field-error:before{content:"";background:currentColor;flex:none;width:16px;height:16px;margin-top:2px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' x2='12' y1='8' y2='12'/%3E%3Cline x1='12' x2='12.01' y1='16' y2='16'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' x2='12' y1='8' y2='12'/%3E%3Cline x1='12' x2='12.01' y1='16' y2='16'/%3E%3C/svg%3E") 50%/contain no-repeat}.auth-card .field-error:has(>svg):before{content:none}.auth-card .field-error>svg{flex:none;width:16px;height:16px;margin-top:2px}.auth-card .field+.field-error,.auth-card .form-grid .field+.field-error{margin:calc(-1 * var(--space-2)) 0 var(--space-4)}.auth-hint,.auth-card small[role=status]{margin:0 0 var(--space-4);font:var(--type-secondary);color:var(--muted);display:block}.auth-card .form-grid{gap:0 var(--space-4)}.auth-row-end{margin:calc(-1 * var(--space-2)) 0 var(--space-4);justify-content:flex-end;display:flex}.auth-text-link,.auth-switch a{min-height:var(--touch);font:var(--type-label);color:var(--primary);align-items:center;display:inline-flex}.auth-text-link:hover,.auth-switch a:hover{text-underline-offset:3px;text-decoration:underline}.auth-card .button{min-height:var(--control-md);padding:0 var(--space-4);gap:var(--space-2);border-radius:var(--radius-md);font:var(--type-button)}.auth-card .button.auth-submit,.auth-card .button.full{width:100%;min-height:var(--control-lg);margin-top:0}.auth-captcha{margin-bottom:var(--space-4)}.auth-switch{margin:var(--space-6) 0 0;text-align:center;font:var(--type-body);color:var(--muted)}.auth-switch a{min-height:0}.auth-footnote{align-items:flex-start;gap:var(--space-2);margin:var(--space-6) 0 0;padding-top:var(--space-4);border-top:1px solid var(--border);font:var(--type-secondary);color:var(--muted);display:flex}.auth-footnote svg{color:var(--primary);margin-top:2px}.auth-card .auth-notice{margin:0 0 var(--space-5)}.auth-card .auth-notice>.notice{font:var(--type-secondary);margin:0}.auth-card .error,.auth-card .notice{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font:var(--type-secondary)}.auth-page .auth-legal{padding:var(--space-5) var(--gutter) var(--space-6);align-items:center;gap:var(--space-1);text-align:center;font:var(--type-secondary);color:var(--subtle);border-top:0;flex-direction:column;margin:0;display:flex}.auth-page .auth-legal nav{justify-content:center;gap:0 var(--space-5);flex-wrap:wrap;display:flex}.auth-page .auth-legal a{min-height:36px;color:var(--muted);align-items:center;display:inline-flex}.auth-page .auth-legal a:hover{color:var(--text);text-decoration:underline}.auth-page .auth-legal p{margin:0}.auth-page :is(a,button):focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.auth-card .password-toggle:focus-visible{outline-offset:-2px}.signup-steps{margin:0 0 var(--space-6);gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;display:grid}.signup-steps li{gap:var(--space-2);font:var(--type-caption);color:var(--subtle);flex-direction:column;display:flex}.signup-steps li[tabindex]:focus{outline:none}.signup-steps li:before{content:"";border-radius:var(--radius-full);background:var(--border);height:4px}.signup-steps li.active,.signup-steps li.complete{color:var(--text)}.signup-steps li.active:before,.signup-steps li.complete:before{background:var(--primary)}.signup-steps li>span{align-items:center;gap:var(--space-1);display:inline-flex}.signup-steps li svg{color:var(--primary)}.signup-fieldset{margin:0 0 var(--space-2);border:0;min-width:0;padding:0}.signup-fieldset+.signup-fieldset{padding-top:var(--space-5);border-top:1px solid var(--border)}.signup-fieldset>legend{float:left;width:100%;margin-bottom:var(--space-4);font:var(--type-card-title);padding:0}.signup-fieldset>legend+*{clear:both}.signup-fieldset>legend+.auth-hint{margin-top:calc(-1 * var(--space-3))}.inline-input{gap:var(--space-2);display:flex}.inline-input>input{flex:1;min-width:0}.inline-input>.button{flex:none}.email-verification .text-button{min-height:var(--touch);font:var(--type-label)}.password-strength{margin:0}.password-strength progress{width:100%;height:4px;margin-bottom:var(--space-2);border-radius:var(--radius-full);background:var(--border);appearance:none;border:0;display:block;overflow:hidden}.password-strength progress::-webkit-progress-bar{background:var(--border)}.password-strength progress::-webkit-progress-value{background:var(--primary)}.password-strength progress::-moz-progress-bar{background:var(--primary)}.password-strength small{font:var(--type-secondary);color:var(--muted);display:block}.username-suggestions .button-row{gap:var(--space-2)}.username-suggestions .button{min-height:var(--control-sm);padding:0 var(--space-3)}.signup-review{margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--raised)}.signup-review h3{margin:0 0 var(--space-3);font:var(--type-card-title)}.signup-review dl{gap:var(--space-2) var(--space-4);margin:0 0 var(--space-3);font:var(--type-body);grid-template-columns:auto minmax(0,1fr);display:grid}.signup-review dt{color:var(--muted)}.signup-review dd{overflow-wrap:anywhere;margin:0}.signup-review p{font:var(--type-secondary);color:var(--muted);margin:0}.consent-option{align-items:flex-start;gap:var(--space-3);min-height:var(--touch);padding:var(--space-2) 0;font:var(--type-body);cursor:pointer;display:flex}.consent-option input{width:18px;height:18px;min-height:0;accent-color:var(--primary);flex:none;margin:2px 0 0}.consent-option+.field-error{margin:0 0 var(--space-3) calc(18px + var(--space-3))}.consent-option a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.signup-controls{gap:var(--space-3);margin-top:var(--space-6);display:flex}.signup-controls>.button:last-child{min-height:var(--control-lg);flex:1}.signup-controls>.button.secondary{min-height:var(--control-lg)}.signup-welcome-details{margin:0 0 var(--space-6);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--raised);text-align:left}.signup-welcome-details p{margin:0 0 var(--space-2);font:var(--type-body)}.signup-welcome-details p:last-child,.signup-welcome-details .auth-hint{margin:0}.signup-welcome-details code{font:var(--type-section-title);font-family:var(--font-sans);color:var(--primary);overflow-wrap:anywhere}.signup-welcome-details hr{margin:var(--space-4) 0;border:0;border-top:1px solid var(--border)}.activate-waiting{padding:var(--space-8) 0;text-align:center}.activate-waiting .spinner{margin:0 auto var(--space-4)}.auth-qr{margin:0 auto var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:block}:root[data-theme=dark] .auth-qr{background:var(--text)}.auth-card details{margin:0 0 var(--space-5);font:var(--type-secondary);color:var(--muted)}.auth-card summary{min-height:var(--touch);cursor:pointer;font:var(--type-label);color:var(--primary);align-items:center;display:flex}.auth-card details code{padding:var(--space-3);border-radius:var(--radius-md);background:var(--raised);color:var(--text);overflow-wrap:anywhere;display:block}.auth-secondary-action{margin-top:var(--space-4);justify-content:center;display:flex}.auth-card .auth-secondary-action .button{width:100%}@media (max-width:1023px){.auth-topbar{padding:0 var(--space-6)}}@media (max-width:599px){.auth-page{background:var(--surface)}.auth-topbar{height:56px;padding:0 var(--space-4);border-bottom:1px solid var(--border)}.auth-topbar .brand-logo-img{max-width:128px;height:28px}.auth-main{padding:var(--space-6) var(--space-4) var(--space-8);justify-content:flex-start}.auth-card{background:0 0;border:0;border-radius:0;padding:0}.auth-heading :is(h1,h2){font-size:var(--text-2xl);line-height:28px}.auth-card .form-grid{grid-template-columns:1fr}.signup-controls{z-index:var(--z-sticky);margin:var(--space-6) calc(-1 * var(--space-4)) 0;padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);box-shadow:var(--shadow-xs);position:sticky;bottom:0}.auth-page .auth-legal{padding:var(--space-4) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.auth-page .auth-legal a{min-height:var(--touch)}}@media (max-width:359px){.inline-input{flex-wrap:wrap}.inline-input>.button{flex:100%}}@media (max-width:599px),(pointer:coarse){.auth-card :is(input:not([type=checkbox]):not([type=radio]),select),.auth-card .button{min-height:var(--touch);font-size:var(--text-lg)}.auth-card .password-toggle{width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch)}.auth-card .button.auth-submit,.auth-card .button.full,.signup-controls>.button{min-height:var(--control-lg)}.username-suggestions .button{min-height:var(--touch)}}@media (prefers-reduced-motion:reduce){.auth-card :is(input,select){transition:none}}.password-control{min-width:0}.password-input{align-items:center;display:flex;position:relative}.password-input>input{width:100%;padding-right:52px}.password-toggle{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.password-toggle:hover{background:var(--raised);color:var(--text)}.password-toggle[aria-pressed=true]{color:var(--text)}.password-toggle:focus-visible{outline:3px solid var(--primary);outline-offset:0}.password-caps:not(:empty){color:var(--warning);margin-top:6px;font-size:12px;font-weight:600;display:block}.field.password-field>span.field-error{font-size:var(--text-base);font-weight:var(--weight-regular)}.account-switcher{flex:none;position:relative}.user-profile-pill{height:44px;padding:0 var(--space-2) 0 var(--space-1);border-radius:var(--radius-md);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:10px;display:flex}.user-profile-pill:hover,.user-profile-pill[aria-expanded=true]{background:var(--raised)}.avatar.avatar-small{width:32px;min-width:32px;height:32px;font:var(--type-label)}.user-profile-info{flex-direction:column;min-width:0;max-width:160px;display:flex}.user-profile-info strong,.user-profile-info small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-profile-info strong{color:var(--text);font:var(--weight-medium) var(--text-base) / 1.3 var(--font-sans)}.user-profile-info small{color:var(--muted);font:var(--weight-regular) var(--text-xs) / 1.33 var(--font-sans)}.profile-chevron{color:var(--muted);transition:transform var(--duration-fast) var(--ease-out);flex:none}.user-profile-pill[aria-expanded=true] .profile-chevron{transform:rotate(180deg)}.account-menu{top:calc(100% + var(--space-2));z-index:var(--z-dropdown);width:min(320px, calc(100vw - 2 * var(--space-4)));max-height:calc(100dvh - var(--topbar-h) - var(--space-6));padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);position:absolute;right:0;overflow-y:auto}.account-menu ul,.saved-accounts ul{margin:0;padding:0;list-style:none}.account-menu-section{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);gap:2px;display:grid}.account-menu-heading{margin:var(--space-1) var(--space-2) 2px;color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase}.account-row{align-items:center;gap:var(--space-1);display:flex}.account-pick{align-items:center;gap:var(--space-3);min-width:0;min-height:48px;padding:var(--space-2);border-radius:var(--radius-md);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;display:flex}.account-pick:disabled{opacity:1;cursor:default}.account-pick:not(:disabled):hover,.account-action:hover{background:var(--raised)}.account-menu-current .account-pick .avatar{width:40px;min-width:40px;height:40px;font:var(--type-card-title)}.account-text{flex-direction:column;flex:1;min-width:0;display:flex}.account-text strong,.account-text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-text strong{font:var(--weight-semibold) var(--text-base) / 1.43 var(--font-sans)}.account-text small{color:var(--muted);font:var(--type-secondary)}.account-current-check{color:var(--primary);flex:none}.account-remove{width:var(--touch);height:var(--touch);border-radius:var(--radius-md);color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.account-remove:hover{background:var(--danger-bg);color:var(--danger)}.account-action{align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-2);border-radius:var(--radius-md);color:var(--text);font:var(--type-button);text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.account-action svg{color:var(--muted);stroke-width:1.75px;flex:none}.account-signout:hover,.account-signout:hover svg{color:var(--danger)}.account-pick:focus-visible,.account-action:focus-visible,.account-remove:focus-visible{outline:var(--focus-outline);outline-offset:-2px}.account-error{margin:var(--space-1) var(--space-2) var(--space-2);color:var(--danger);font:var(--type-secondary)}.saved-accounts{margin-bottom:var(--space-4);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg)}.saved-accounts>p{margin:0 var(--space-2) var(--space-1)}@media (prefers-reduced-motion:reduce){.user-profile-pill,.profile-chevron{transition:none}}.header-support-trigger{justify-content:center;align-items:center;gap:var(--space-2);min-width:44px;min-height:44px;padding:0 var(--space-4) 0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0;line-height:1;text-decoration:none;display:inline-flex;position:relative}.header-support-trigger:hover{background:var(--raised);border-color:color-mix(in srgb, var(--text) 18%, var(--border))}.header-support-trigger svg{color:var(--muted);flex-shrink:0}.header-support-trigger:hover svg{color:var(--text)}.header-support-trigger[aria-current=page]{border-color:var(--primary)}.header-support-trigger[aria-current=page] svg{color:var(--primary)}.header-support-count{border-radius:var(--radius-full);background:var(--primary);min-width:20px;height:20px;color:var(--on-primary);font-size:var(--text-xs);font-weight:var(--weight-bold);text-align:center;font-variant-numeric:tabular-nums;padding:0 6px;line-height:20px}@media (max-width:1199px){.header-support-trigger{border-radius:var(--radius-control);background:0 0;border-color:#0000;width:44px;padding:0}.header-support-trigger:hover,.header-support-trigger[aria-current=page]{border-color:#0000}.header-support-label{white-space:nowrap;clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header-support-count{min-width:18px;height:18px;box-shadow:0 0 0 2px var(--surface);padding:0 4px;line-height:18px;position:absolute;top:2px;right:0}}@media (max-width:767px){.header-support-count{box-shadow:0 0 0 2px var(--bg)}}.support-dialog{--support-dialog-pad:var(--space-6);gap:var(--space-4);display:grid}.support-dialog .support-actions{bottom:calc(-1 * var(--support-dialog-pad));z-index:1;margin:0 calc(-1 * var(--support-dialog-pad)) calc(-1 * var(--support-dialog-pad));padding:var(--space-3) var(--support-dialog-pad) calc(var(--space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface);position:sticky}.support-dialog-origin{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--raised);font:var(--type-secondary);color:var(--muted);margin:0}.support-dialog-origin strong{color:var(--text);font-weight:var(--weight-semibold)}@media (max-width:640px){.support-dialog{--support-dialog-pad:var(--space-4)}}.auth-card .signup-fieldset .field-is-required>span:first-child:after,.auth-card .signup-fieldset .field-is-required>label:first-child:after,.auth-card .consent-option.field-is-required>span:after{content:" *";content:" *" / "";color:var(--danger)}.signup-required-note{margin:0 0 var(--space-4)}.email-verification-status:empty{margin:0}.email-verification-status:not(:empty){margin:calc(-1 * var(--space-2)) 0 var(--space-4);font:var(--type-secondary);color:var(--muted)}.signup-load-error{margin:0 0 var(--space-4)}.signup-load-error .text-button{min-height:var(--touch);padding:0 var(--space-1)}.signup-available{align-items:center;gap:var(--space-1);color:var(--success)!important;display:flex!important}.signup-review-title{margin:0 0 var(--space-3);font:var(--type-card-title)}.auth-submit-hint{margin:var(--space-2) 0 0;text-align:center}.auth-card .referral-invited{margin:0 0 var(--space-5)}@media (max-width:599px){.auth-top-hint{display:none}}.email-verification .inline-input>.button{font-variant-numeric:tabular-nums}.auth-card .signup-name-hint,.auth-card .signup-name-hint+.field-error{margin:calc(-1 * var(--space-2)) 0 var(--space-4)}.signup-review dd.signup-review-certificate{align-items:center;gap:0 var(--space-3);flex-wrap:wrap;display:flex}.signup-review dt:has(+dd.signup-review-certificate){align-self:center}.signup-review-certificate>span{min-width:0;font-weight:var(--weight-semibold)}.signup-review-certificate .text-button{min-height:var(--touch);padding:0 var(--space-1);text-underline-offset:3px;text-decoration:underline}.intro-video{margin-top:var(--space-6)}.intro-video-title{margin:0 0 var(--space-3);font-size:var(--text-base)}.intro-video-frame{aspect-ratio:16/9;border-radius:var(--radius-md,12px);background:#000;width:100%;position:relative;overflow:hidden}.intro-video-frame iframe,.intro-video-frame video{border:0;width:100%;height:100%;position:absolute;inset:0}.resources-page{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.resources-page>.page-title{margin-bottom:var(--space-2)}.resources-filters{gap:var(--space-3);flex-direction:column;display:flex}.resources-filters .toolbar-bar{margin-bottom:0}.resources-filters .segmented{align-self:flex-start;max-width:100%;overflow-x:auto}.resources-count{margin-left:var(--space-2);font:var(--type-caption);font-variant-numeric:tabular-nums;color:var(--muted)}.segmented-item[aria-pressed=true] .resources-count{color:inherit}.resources-search{position:relative}.resources-search>svg{top:50%;left:var(--space-3);width:var(--icon-sm);height:var(--icon-sm);color:var(--subtle);pointer-events:none;position:absolute;transform:translateY(-50%)}.resources-search>input{width:100%;padding-left:calc(var(--space-3) + var(--icon-sm) + var(--space-2))}.resources-summary{font:var(--type-secondary);color:var(--muted);margin:0}.resources-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin:0;padding:0;list-style:none;display:grid}.resource-card{gap:var(--space-2);min-width:0;padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);flex-direction:column;display:flex;position:relative}.resource-card:hover{border-color:var(--border-strong)}.resource-card:focus-within:has(.resource-card-link:focus-visible){outline:var(--focus-outline);outline-offset:var(--focus-offset)}.resource-card-top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-1);display:flex}.resource-card-icon{border-radius:var(--radius-md);background:var(--tint);width:40px;height:40px;color:var(--primary);flex:none;place-items:center;display:inline-grid}.resource-card-icon svg{width:var(--icon-md);height:var(--icon-md)}.resource-card-title{font:var(--type-card-title);overflow-wrap:anywhere;margin:0}.resource-card-link{color:var(--text);text-decoration:none}.resource-card-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.resource-card-link:focus-visible{outline:none}.resource-card-desc{font:var(--type-body);color:var(--muted);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.resource-card-meta{gap:var(--space-1) var(--space-2);font:var(--type-secondary);color:var(--muted);flex-wrap:wrap;margin:0;display:flex}.resource-card-meta>span+span:before{content:"·";margin-right:var(--space-2);color:var(--subtle)}.resource-card-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);margin-top:auto;display:flex}.resource-card-read{align-items:center;gap:var(--space-1);font:var(--type-button);color:var(--primary);display:inline-flex}.resource-card-read svg{width:var(--icon-sm);height:var(--icon-sm);transition:transform var(--duration-fast) var(--ease-out)}.resource-card:hover .resource-card-read svg{transform:translate(2px)}.resource-visibility{z-index:1;width:auto;min-width:0;max-width:calc(100% - 72px);min-height:var(--control-sm);font:var(--type-secondary);flex:0 auto;position:relative}.resources-empty{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface)}.resource-upload form{flex-direction:column;display:flex}.resource-dropzone{align-items:center;gap:var(--space-1);padding:var(--space-6) var(--space-4);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--raised);text-align:center;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out);flex-direction:column;display:flex}.resource-dropzone:hover{border-color:var(--primary)}.resource-dropzone:focus-within{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.resource-dropzone-icon{width:40px;height:40px;margin-bottom:var(--space-1);border-radius:var(--radius-full);background:var(--surface);color:var(--primary);place-items:center;display:inline-grid}.resource-dropzone-icon svg{width:var(--icon-md);height:var(--icon-md)}.resource-dropzone-text{font:var(--type-label);color:var(--text);overflow-wrap:anywhere}.resource-dropzone-hint{font:var(--type-secondary);color:var(--muted)}.resource-upload-note{align-items:center;gap:var(--space-2);margin:var(--space-2) 0 var(--space-5);font:var(--type-secondary);color:var(--muted);display:flex}.resource-upload-note svg{width:var(--icon-sm);height:var(--icon-sm);flex:none}.resource-upload-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:767px){.resources-page{gap:var(--space-3)}.resources-filters .segmented{align-self:stretch}.resources-grid{gap:var(--space-3)}.resource-card{column-gap:var(--space-3);row-gap:var(--space-1);padding:var(--space-4);grid-template-columns:40px minmax(0,1fr);display:grid}.resource-card-top{display:contents}.resource-card-icon{grid-row:1/span 3}.resource-card-top .badge{grid-area:1/2;justify-self:start}.resource-card>:not(.resource-card-top){grid-column:2}.resource-card-footer{padding-top:var(--space-2)}.resource-card-read{display:none}.resource-card-footer:not(:has(select)){display:none}.resource-visibility{width:100%;max-width:none;min-height:var(--touch)}.resource-upload-actions>.button{flex:auto}}@media (prefers-reduced-motion:reduce){.resource-card,.resource-card-read svg,.resource-dropzone{transition:none}}.calendar-accent{--calendar-accent-fg:var(--primary);--calendar-accent-bg:var(--tint)}.calendar-accent[data-accent=emerald]{--calendar-accent-fg:var(--accent-emerald-fg);--calendar-accent-bg:var(--accent-emerald-bg)}.calendar-accent[data-accent=indigo]{--calendar-accent-fg:var(--accent-indigo-fg);--calendar-accent-bg:var(--accent-indigo-bg)}.calendar-accent[data-accent=rose]{--calendar-accent-fg:var(--accent-rose-fg);--calendar-accent-bg:var(--accent-rose-bg)}.calendar-accent[data-accent=blue]{--calendar-accent-fg:var(--accent-blue-fg);--calendar-accent-bg:var(--accent-blue-bg)}.calendar-accent[data-accent=amber]{--calendar-accent-fg:var(--accent-amber-fg);--calendar-accent-bg:var(--accent-amber-bg)}.calendar-accent[data-accent=teal]{--calendar-accent-fg:var(--accent-teal-fg);--calendar-accent-bg:var(--accent-teal-bg)}.calendar-accent[data-accent=violet]{--calendar-accent-fg:var(--accent-violet-fg);--calendar-accent-bg:var(--accent-violet-bg)}.calendar-accent[data-accent=purple]{--calendar-accent-fg:var(--accent-purple-fg);--calendar-accent-bg:var(--accent-purple-bg)}.calendar-accent[data-accent=orange]{--calendar-accent-fg:var(--accent-orange-fg);--calendar-accent-bg:var(--accent-orange-bg)}.calendar-accent[data-accent=sky]{--calendar-accent-fg:var(--accent-sky-fg);--calendar-accent-bg:var(--accent-sky-bg)}.calendar-accent[data-accent=fuchsia]{--calendar-accent-fg:var(--accent-fuchsia-fg);--calendar-accent-bg:var(--accent-fuchsia-bg)}.calendar-accent[data-accent=slate]{--calendar-accent-fg:var(--accent-slate-fg);--calendar-accent-bg:var(--accent-slate-bg)}.reminder-colors{border:0;min-width:0;margin:0;padding:0}.reminder-colors legend{margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);padding:0}.reminder-swatches{gap:var(--space-1);flex-wrap:wrap;display:flex}.reminder-swatch{border-radius:var(--radius-full);cursor:pointer;place-items:center;width:44px;height:44px;display:inline-grid}.reminder-swatch input{appearance:none;border-radius:var(--radius-full);background:var(--calendar-accent-fg);cursor:pointer;border:0;width:28px;height:28px;min-height:28px;margin:0;padding:0}.reminder-swatch input:checked{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--text)}.event-drawer{--event-stripe:var(--calendar-accent-fg);gap:var(--space-4);padding-top:var(--space-3);border-top:3px solid var(--event-stripe);flex-direction:column;display:flex}.event-drawer-badges{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.event-type-badge{min-height:22px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--calendar-accent-bg);color:var(--calendar-accent-fg);font:var(--type-caption);align-items:center;display:inline-flex}.event-live-badge .badge-dot{animation:2s infinite pulse}.event-drawer-success{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--success-border);border-radius:var(--radius-md);background:var(--success-bg);color:var(--text);font:var(--type-secondary);margin:0;display:flex}.event-drawer-success svg{color:var(--success);flex:none}.event-drawer-details{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.event-drawer-row{gap:var(--space-3);grid-template-columns:20px minmax(0,1fr);align-items:start;display:grid}.event-drawer-row dt{color:var(--subtle);padding-top:3px;display:inline-flex}.event-drawer-row dd{font:var(--type-body);overflow-wrap:anywhere;margin:0}.event-drawer-ist{color:var(--muted);font:var(--type-secondary);display:block}.event-drawer-description{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--raised);font:var(--type-body);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.event-drawer-actions{align-items:stretch;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border);flex-direction:column;display:flex}.event-drawer-actions>.button{white-space:normal;text-align:center;justify-content:center}.event-drawer .event-drawer-actions .button.secondary.event-drawer-delete{color:var(--danger)}.event-reschedule-form{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.event-reschedule-form h3{margin:0 0 var(--space-2);font:var(--type-card-title)}.event-reschedule-form p{margin:0 0 var(--space-3);font:var(--type-secondary)}.feed-drawer{gap:var(--space-4);flex-direction:column;display:flex}.feed-drawer-lede{color:var(--muted);font:var(--type-body);margin:0}.feed-drawer-body{gap:var(--space-4);flex-direction:column;display:flex}.feed-url-row{gap:var(--space-2);display:flex}.feed-url-input{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-md);flex:1}.feed-copied-icon{color:var(--success)}.feed-drawer-actions{gap:var(--space-2);flex-direction:column;display:flex}.feed-drawer-actions>.button{white-space:normal;text-align:center;justify-content:center}.feed-drawer-privacy{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--raised);color:var(--muted);font:var(--type-secondary);margin:0;display:flex}.feed-drawer-privacy svg{flex:none;margin-top:2px}.feed-drawer-rotate{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.feed-drawer-rotate h3{font:var(--type-label);margin:0}.feed-drawer-rotate p{color:var(--muted);font:var(--type-secondary);margin:0}.calendar-page>.page-title{row-gap:var(--space-4);flex-wrap:wrap}.calendar-page>.page-title>div:first-child{flex:260px;min-width:0}.calendar-actions{gap:var(--space-2);flex-wrap:wrap;flex:0 auto;min-width:0;display:flex}.calendar-filters{gap:var(--space-2);margin:0 0 var(--space-4);scrollbar-width:none;padding-bottom:2px;display:flex;overflow-x:auto}.calendar-filters::-webkit-scrollbar{display:none}.calendar-filter{min-height:var(--control-sm);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--muted);font:var(--type-label);white-space:nowrap;cursor:pointer;flex:none}.calendar-filter:hover{border-color:var(--border-strong);color:var(--text)}.calendar-filter[aria-pressed=true]{border-color:var(--primary);background:var(--tint);color:var(--sage-text)}.calendar-filter:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.calendar-page .tabs{margin-bottom:var(--space-4)}.calendar-panel{gap:var(--space-4);flex-direction:column;display:flex}.month-calendar,.week-calendar{padding:var(--space-5)}.calendar-nav{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.calendar-month-label{align-items:center;gap:var(--space-1);min-width:0;display:flex}.calendar-month-label h2{min-width:0;margin:0 var(--space-2);font:var(--type-section-title)}.calendar-month-label .icon-button{width:var(--control-md);min-height:var(--control-md);color:var(--muted);background:0 0}.calendar-month-label .icon-button:hover{background:var(--surface-hover);color:var(--text)}.month-grid{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--border);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.weekday{padding:var(--space-2);background:var(--raised);color:var(--muted);font:var(--type-caption);text-align:center}.month-cell{gap:var(--space-1);min-width:0;min-height:112px;padding:var(--space-2);background:var(--surface);flex-direction:column;display:flex}.month-cell.outside{background:var(--bg);color:var(--subtle)}.day-number{border-radius:var(--radius-full);width:28px;height:28px;font:var(--type-label);font-variant-numeric:tabular-nums;place-items:center;display:grid}.today>.day-number,.week-day.today .day-number{background:var(--primary);color:var(--on-primary)}.month-cell-events{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.month-cell-more{padding:0 var(--space-2);color:var(--muted);font:var(--type-caption)}.month-cell-dots{display:none}.calendar-event-chip{width:100%;min-width:0;padding:var(--space-1) var(--space-2);border:0;border-left:3px solid var(--calendar-accent-fg);border-radius:var(--radius-sm);background:var(--calendar-accent-bg);color:var(--text);font:var(--type-caption);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;display:block;position:relative;overflow:hidden}.calendar-event-chip>span:first-child{color:var(--muted);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums;display:block}.calendar-event-chip.is-cancelled{text-decoration:line-through}.week-grid{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--border);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.week-day{background:var(--surface);flex-direction:column;min-width:0;min-height:280px;display:flex}.week-day-head{justify-content:space-between;align-items:center;gap:var(--space-1);padding:var(--space-2);background:var(--raised);color:var(--muted);font:var(--type-caption);margin:0;display:flex}.week-day-events{gap:var(--space-1);padding:var(--space-2);flex-direction:column;display:flex}.week-day-events .calendar-event-chip{white-space:normal}.week-day-empty{color:var(--subtle);font:var(--type-caption)}.calendar-list-head{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.calendar-list-head h2{font:var(--type-section-title);margin:0}.agenda-list{gap:var(--space-5);flex-direction:column;display:flex}.agenda-day-title{margin:0 0 var(--space-2);color:var(--muted);font:var(--type-label)}.agenda-events{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.agenda-events>li+li{border-top:1px solid var(--border)}.agenda-event{gap:var(--space-4);width:100%;min-height:64px;padding:var(--space-3) var(--space-4);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:76px minmax(0,1fr) auto auto;align-items:center;display:grid}.agenda-event:hover,.agenda-event.selected{background:var(--surface-hover)}.agenda-event:focus-visible{outline:var(--focus-outline);outline-offset:calc(var(--focus-offset) * -1)}.agenda-event-time{white-space:nowrap;padding-left:var(--space-3);border-left:3px solid var(--calendar-accent-fg);font:var(--type-label);font-variant-numeric:tabular-nums;flex-direction:column;display:flex}.agenda-event-time small{color:var(--muted);font:var(--type-secondary)}.agenda-event-body{flex-direction:column;gap:2px;min-width:0;display:flex}.agenda-event-body strong{font:var(--type-label);font-size:var(--text-base);overflow-wrap:anywhere}.agenda-event.is-cancelled strong{text-decoration:line-through}.agenda-event-meta{align-items:center;gap:var(--space-1) var(--space-2);color:var(--muted);font:var(--type-secondary);flex-wrap:wrap;display:flex}.agenda-event-type{min-height:20px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--calendar-accent-bg);color:var(--calendar-accent-fg);font:var(--type-caption);align-items:center;display:inline-flex}.agenda-event-chevron{color:var(--subtle)}@media (max-width:1023px){.month-cell{min-height:96px;padding:var(--space-1)}.calendar-event-chip{padding:2px var(--space-1)}}@media (max-width:767px){.calendar-actions{width:100%}.calendar-actions>.button{min-height:var(--touch);flex:auto}.calendar-filter{min-height:var(--touch)}.month-calendar,.week-calendar{padding:var(--space-3)}.calendar-month-label h2{font:var(--type-card-title)}.calendar-month-label .icon-button{width:var(--touch);min-height:var(--touch)}.calendar-nav .button{min-height:var(--touch)}.month-cell{align-items:center;min-height:52px}.month-cell-events{display:none}.month-cell-dots{gap:3px;display:flex}.month-cell-dots>span{border-radius:var(--radius-full);background:var(--calendar-accent-fg);width:6px;height:6px}.day-number{width:26px;height:26px}.week-grid{grid-template-columns:minmax(0,1fr)}.week-day{min-height:0}.week-day-events .calendar-event-chip{min-height:var(--touch)}.agenda-event{gap:var(--space-3);padding:var(--space-3);grid-template-columns:80px minmax(0,1fr) auto}.agenda-event>.badge{grid-area:2/2;justify-self:start}.agenda-event-chevron{grid-area:1/3}.event-reschedule-form{padding:var(--space-3)}.feed-url-row{flex-direction:column}}@media (prefers-reduced-motion:reduce){.event-live-badge .badge-dot{animation:none}}.journey-stepper{padding:var(--space-5);margin-bottom:var(--space-6);border-radius:var(--radius-md);border:1px solid var(--border)}.journey-stepper:not(.is-learning){background:linear-gradient(180deg, var(--tint) 0%, transparent 100%)}.journey-stepper-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.journey-stepper-head>div{align-items:center;gap:var(--space-2);color:var(--primary);display:flex}.journey-stepper-head h2{font:var(--type-section-title);color:var(--text);margin:0}.journey-rail{margin:0 0 var(--space-5);padding:0 0 var(--space-2);scrollbar-width:none;justify-content:space-between;align-items:flex-start;list-style:none;display:flex;position:relative;overflow-x:auto}.journey-rail::-webkit-scrollbar{display:none}.journey-milestone{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;min-width:78px;display:flex}.journey-milestone-dot{border-radius:var(--radius-full);background:var(--raised);width:28px;height:28px;color:var(--muted);flex:none;place-items:center;display:grid}.journey-milestone.is-done .journey-milestone-dot{background:var(--success);color:var(--on-primary)}.journey-milestone.is-current .journey-milestone-dot{background:var(--primary);color:var(--on-primary)}.journey-milestone-label{font-size:var(--text-sm);color:var(--muted)}.journey-milestone.is-current .journey-milestone-label{color:var(--text);font-weight:var(--weight-semibold)}@media (max-width:767px){.journey-rail{align-items:stretch;gap:var(--space-1);flex-direction:column;padding-bottom:0;overflow:visible}.journey-milestone{text-align:left;justify-content:flex-start;align-items:center;gap:var(--space-3);flex-direction:row;min-width:0;min-height:36px;position:relative}.journey-milestone:not(:last-child):before{content:"";background:var(--border);width:2px;position:absolute;top:32px;bottom:-8px;left:13px}.journey-milestone.is-done:not(:last-child):before{background:var(--success)}.journey-milestone-label{font-size:var(--text-base)}}.journey-callout{background:var(--raised);padding:var(--space-4);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.journey-callout--good{background:var(--success-bg);color:var(--success)}.journey-callout--next{background:var(--tint)}.journey-callout strong{margin-bottom:var(--space-1);display:block}.journey-callout p{margin:0}.journey-callout--good p{color:inherit}.journey-callout .button{align-items:center;gap:var(--space-1);display:inline-flex}.journey-level-slot{margin-top:var(--space-4)}.journey-learning-note{align-items:center;gap:var(--space-3);font-size:var(--text-base);color:var(--muted);display:flex}.journey-learning-note>svg{color:var(--primary);flex:none}.journey-pipeline{margin:0 0 var(--space-6);gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));padding:0;list-style:none;display:grid}.journey-stage-card{align-items:flex-start;gap:var(--space-1);width:100%;height:100%;padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;text-align:left;font:inherit;color:inherit;flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex}.journey-stage-card:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.journey-stage-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.journey-stage-count{font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.journey-stage-label{font-size:var(--text-md);color:var(--muted)}.journey-roster{border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-5);flex-direction:column;display:flex;overflow:hidden}.journey-roster-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);cursor:pointer;display:flex}.journey-roster-row:last-child{border-bottom:0}.journey-roster-row:hover{background:var(--raised)}.journey-roster-name{flex-direction:column;flex:1;min-width:0;display:flex}.journey-bulk{gap:var(--space-3);grid-template-columns:1fr 1fr auto;align-items:end;display:grid}@media (max-width:640px){.journey-bulk{grid-template-columns:1fr}}.journey-requirements{margin:0 0 var(--space-6);gap:var(--space-2);padding:0;list-style:none;display:grid}.journey-requirements li{align-items:center;gap:var(--space-2);font-size:var(--text-base);display:flex}.journey-history{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.journey-history li{padding-left:var(--space-4);border-left:2px solid var(--border)}.journey-history li>div{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;display:flex}.journey-history p{margin:var(--space-1) 0 0}.journey-config-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.journey-config-head p{max-width:60ch;margin:0}.journey-config-list{margin:0 0 var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;padding:0;list-style:none;display:flex;overflow:hidden}.journey-config-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--border);background:var(--surface);display:flex}.journey-config-row:last-child{border-bottom:0}.journey-config-main{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.journey-config-main p{flex-basis:100%;margin:0}.journey-config-actions{gap:var(--space-2);flex:none;display:flex}.journey-check{align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--text-base);display:flex}.journey-matrix-panel{margin-bottom:var(--space-6)}.journey-matrix-panel h3{margin:0 0 var(--space-1)}.journey-matrix-panel>p{margin:0 0 var(--space-4)}.journey-matrix-scroll{overflow-x:auto}.journey-matrix{border-collapse:collapse;font-size:var(--text-md);min-width:100%}.journey-matrix th,.journey-matrix td{padding:var(--space-2) var(--space-3);border:1px solid var(--border);text-align:center;white-space:nowrap}.journey-matrix thead th{background:var(--raised);font-weight:var(--weight-semibold);vertical-align:bottom}.journey-matrix tbody th{text-align:left;background:var(--raised);position:sticky;left:0}.journey-matrix-self{color:var(--muted);background:var(--raised)}.journey-matrix-cell{align-items:center;gap:var(--space-1);cursor:pointer;min-height:32px;display:inline-flex}.journey-self{border:1px solid var(--border);color:var(--muted);border-radius:var(--radius-full);padding:1px var(--space-2);font-size:var(--text-2xs);cursor:pointer;background:0 0}.journey-self.is-on{background:var(--tint);border-color:var(--primary);color:var(--primary);font-weight:var(--weight-semibold)}.orientation-wizard{gap:var(--space-6);flex-direction:column;display:flex}.orientation-steps{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.orientation-step{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);font-size:var(--text-md);display:flex}.orientation-step.is-current{background:var(--tint);color:var(--primary);font-weight:var(--weight-semibold)}.orientation-step.is-done{color:var(--success)}.orientation-step-dot{border-radius:var(--radius-full);background:var(--surface);width:22px;height:22px;font-size:var(--text-2xs);font-weight:var(--weight-bold);flex:none;place-items:center;display:grid}.orientation-body h2{margin:0 0 var(--space-2)}.orientation-video{margin:var(--space-5) 0 0}.orientation-video iframe,.orientation-video video{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#000;border:0;width:100%;display:block}.orientation-video figcaption{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--muted)}.orientation-copy p{margin:var(--space-4) 0 0;line-height:var(--leading-relaxed)}.orientation-actions{justify-content:flex-end;gap:var(--space-3);display:flex}.level-selection{padding:var(--space-6)}.level-selection-head{text-align:center;margin-bottom:var(--space-6)}.level-selection-head h2{margin:0 0 var(--space-2)}.level-selection-head p{margin:0}.level-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.level-card{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex}.level-card-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.level-card-head h3{font-size:var(--text-xl);margin:0}.level-card p{margin:0}.level-card .button{justify-content:center;margin-top:auto}.level-courses{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.level-courses li{align-items:center;gap:var(--space-2);font-size:var(--text-base);display:flex}.level-courses svg{color:var(--primary);flex:none}.level-card-meta{margin:0}.level-card-price{font-weight:var(--weight-semibold);color:var(--text);margin:0}.level-quiz{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border)}.level-questions{margin:var(--space-4) 0 0;gap:var(--space-5);padding:0;list-style:none;display:grid}.level-questions p{margin:0 0 var(--space-2)}.level-answer{gap:var(--space-2);display:flex}.level-recommendation{align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4);border-radius:var(--radius-md);background:var(--success-bg);color:var(--success);flex-wrap:wrap;display:flex}.level-recommendation p{flex:1;margin:0}.journey-video-source{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.journey-video-upload{gap:var(--space-3);margin-bottom:var(--space-3);display:grid}.journey-video-upload video{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#000;width:100%}.journey-video-upload-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.journey-video-drop{justify-items:center;gap:var(--space-1);padding:var(--space-6) var(--space-4);border:2px dashed var(--border);border-radius:var(--radius-lg);text-align:center;cursor:pointer;display:grid}.journey-video-drop:hover,.journey-video-drop:focus-within{border-color:var(--primary)}.journey-video-progress{gap:var(--space-2);display:grid}.journey-video-progress progress{width:100%}.journey-skeleton{gap:var(--space-5);flex-direction:column;display:flex}.journey-skeleton-rail{gap:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.journey-skeleton-rail>span{border-radius:var(--radius-md);height:44px}@media (max-width:767px){.journey-skeleton-rail{grid-template-columns:minmax(0,1fr)}.journey-skeleton-rail>span{height:24px}}.orientation-page{gap:var(--space-6);flex-direction:column;display:flex}.orientation-page .orientation-wizard{padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-xs)}.orientation-body h2:focus{outline:none}.orientation-body h2:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs)}.orientation-done{gap:var(--space-5);flex-direction:column;display:flex}.orientation-success{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--success-border);border-radius:var(--radius-lg);background:var(--success-bg);color:var(--text);display:flex}.orientation-success>svg{color:var(--success);flex:none;margin-top:2px}.orientation-success strong{font-size:var(--text-lg);display:block}.orientation-success p{color:var(--muted);margin:2px 0 0}.orientation-watch-hint{justify-content:flex-end;align-items:center;gap:var(--space-2);margin:var(--space-4) 0 var(--space-2);font-size:var(--text-md);color:var(--muted);display:flex}.orientation-actions--start{justify-content:flex-start}.orientation-actions .button{min-height:44px}@media (max-width:767px){.orientation-page .orientation-wizard{padding:var(--space-4)}.orientation-actions{flex-wrap:wrap}.orientation-actions .button{flex:auto}}.account-section{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.account-section>h3,.account-divider>h3{font:var(--type-card-title);margin:0}.account-section>h3+h3{margin-top:var(--space-4)}.account-section>.account-list+h3{margin-top:var(--space-5)}.account-section h4{font:var(--type-label);color:var(--text);margin:0}.account-section .notice,.account-section .error{margin:0}.account-hint{font:var(--type-secondary);color:var(--muted);margin:0}.account-fields{flex-direction:column;max-width:440px;display:flex}.account-fields>.field{margin-bottom:var(--space-4)}.account-fields>.account-hint{margin:calc(var(--space-2) * -1) 0 var(--space-4)}.account-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.account-subform{gap:var(--space-3);max-width:560px;padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);flex-direction:column;display:flex}.account-subform .field{margin-bottom:0}.account-subform textarea,.request-actions textarea{resize:vertical;width:100%}.account-divider{gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--border);flex-direction:column;display:flex}.account-danger>h3{color:var(--danger)}.account-section .empty{padding:var(--space-6) var(--space-4)}.account-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.account-list>li{align-items:center;gap:var(--space-3) var(--space-4);min-height:56px;padding:var(--space-3) 0;border-top:1px solid var(--border);display:flex}.account-list>li:first-child{border-top:0}.account-list-icon{border-radius:var(--radius-md);background:var(--raised);width:32px;height:32px;color:var(--muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.account-list-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.account-list-text>strong{font:var(--type-label);font-size:var(--text-base);color:var(--text);overflow-wrap:anywhere}.account-list-text>span{font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere}.account-list-end{justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;flex:none;display:flex}.account-link{align-items:center;gap:var(--space-1);min-height:var(--control-sm);font:var(--type-label);color:var(--primary);display:inline-flex}.request-details{white-space:pre-wrap}.account-switch{align-items:center;gap:var(--space-2);min-height:var(--touch);cursor:pointer;flex:none;display:inline-flex}.account-switch-state{min-width:3.5em;font:var(--type-label);color:var(--muted);text-align:right}.account-switch input[role=switch]{appearance:none;border:1px solid var(--border-strong);border-radius:var(--radius-full);background:var(--raised);cursor:pointer;width:40px;height:24px;min-height:0;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);flex:none;margin:0;padding:0;position:relative}.account-switch input[role=switch]:after{content:"";border-radius:var(--radius-full);background:var(--muted);width:16px;height:16px;transition:transform var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);position:absolute;top:3px;left:3px}.account-switch input[role=switch]:checked{border-color:var(--primary);background:var(--primary)}.account-switch input[role=switch]:checked:after{background:var(--on-primary);transform:translate(16px)}.account-switch input[role=switch]:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.account-switch input[role=switch]:disabled{cursor:progress;opacity:.6}@media (prefers-reduced-motion:reduce){.account-switch input[role=switch],.account-switch input[role=switch]:after{transition:none}}.session-facts{gap:var(--space-3) var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));margin:0;display:grid}.session-facts>div{min-width:0}.session-facts dt{font:var(--type-caption);color:var(--muted)}.session-facts dd{font:var(--type-label);font-size:var(--text-base);overflow-wrap:anywhere;margin:2px 0 0}.session-history{gap:var(--space-1);margin-top:var(--space-2);flex-direction:column;display:flex}.session-history .account-list{margin-top:var(--space-2)}.request-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.request-card{padding:var(--space-5)}.request-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.request-card p{margin:var(--space-2) 0}.request-card .request-details{overflow-wrap:anywhere;font:var(--type-body)}.request-actions,.request-actions .account-actions{margin-top:var(--space-3)}.compact-field{min-width:140px;margin-bottom:0}.password-field{position:relative}@media (max-width:767px){.account-list>li{flex-wrap:wrap}.account-list-end{justify-content:flex-start}.account-list>li:has(.account-switch){flex-wrap:nowrap}.account-fields,.account-subform{max-width:none}.account-actions>.button{flex:100%}}.settings-page{min-width:0}.settings-layout{gap:var(--space-8);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.settings-nav{display:none}.settings-nav ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.settings-nav a{align-items:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-3);border-radius:var(--radius-md);font:var(--type-label);font-size:var(--text-base);color:var(--muted);transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);text-decoration:none;display:flex}.settings-nav a:hover{background:var(--surface-hover);color:var(--text)}.settings-nav a[aria-current]{background:var(--tint);color:var(--primary)}.settings-nav a:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}@media (min-width:1024px){.settings-layout{grid-template-columns:208px minmax(0,1fr)}.settings-nav{top:calc(var(--topbar-h) + var(--space-6));display:block;position:sticky}}@media (min-width:1280px){.settings-layout{grid-template-columns:224px minmax(0,880px)}}.settings-sections{gap:var(--space-10);flex-direction:column;min-width:0;display:flex}.settings-section{min-width:0;scroll-margin-top:calc(var(--topbar-h) + var(--space-6))}.settings-section:focus{outline:none}.settings-section>.journey-stepper{margin:0}.settings-section-head{margin-bottom:var(--space-4)}.settings-section-head h2{font:var(--type-section-title);color:var(--text);margin:0}.settings-section-head h2:focus{outline:none}.settings-section-head h2:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.settings-section-head p{margin:var(--space-1) 0 0;font:var(--type-secondary);color:var(--muted)}.panel.settings-card{gap:var(--space-4);padding:var(--space-6);box-shadow:none;flex-direction:column;display:flex}.settings-group{padding-top:var(--space-5);border-top:1px solid var(--border)}.settings-note{font:var(--type-secondary);color:var(--muted);margin:0}.settings-note a{color:var(--primary);font-weight:var(--weight-medium)}.settings-identity{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.settings-avatar{border-radius:var(--radius-full);background:var(--tint);width:56px;height:56px;color:var(--primary);font:var(--type-section-title);font-size:var(--text-2xl);flex:none;place-items:center;display:grid}.settings-identity-text{flex:200px;min-width:0}.settings-identity-name{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere;margin:0}.settings-identity-role{font:var(--type-secondary);color:var(--muted);text-transform:capitalize;margin:2px 0 0}.settings-facts{gap:var(--space-2) var(--space-8);flex-wrap:wrap;margin:0;display:flex}.settings-facts>div{min-width:0}.settings-facts dt{font:var(--type-caption);color:var(--muted)}.settings-facts dd{font:var(--type-label);font-size:var(--text-base);color:var(--text);overflow-wrap:anywhere;margin:2px 0 0}.settings-form{gap:var(--space-4);flex-direction:column;display:flex}.settings-form .error{margin:0}.settings-form-grid{gap:var(--space-4) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-form-grid>.field,.settings-form .settings-check{margin-bottom:0}.settings-actions{justify-content:flex-start;gap:var(--space-2);padding-top:var(--space-2);display:flex}.settings-row{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.settings-row-text{min-width:0}.settings-row-title{font:var(--type-label);font-size:var(--text-base);color:var(--text);margin:0}.settings-row-meta{font:var(--type-secondary);color:var(--muted);margin:2px 0 0}.settings-row .icon-button{border:1px solid var(--border-strong);flex:none}.settings-links{column-gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-links>a{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border);min-height:48px;font:var(--type-body);color:var(--text);text-decoration:none;display:flex}.settings-links>a>svg:first-child{color:var(--muted);flex:none}.settings-links>a>span{flex:1;min-width:0}.settings-links-chevron{color:var(--subtle);flex:none}.settings-links>a:hover>span{color:var(--primary)}.settings-links>a:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset);border-radius:var(--radius-sm)}.settings-card .tv-shelf-stats>div{border:0}.settings-card .tv-shelf-list{gap:0}.settings-card .tv-shelf-item{padding:var(--space-3) 0;border:0;border-top:1px solid var(--border);background:0 0;border-radius:0}.settings-card .tv-shelf-item:last-child{padding-bottom:0}.settings-index-identity{margin-bottom:var(--space-4)}.settings-index ul{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.settings-index li+li{border-top:1px solid var(--border)}.settings-index a{align-items:center;gap:var(--space-3);min-height:60px;padding:var(--space-3) var(--space-4);color:var(--text);text-decoration:none;display:flex}.settings-index a:active{background:var(--surface-hover)}.settings-index a:focus-visible{outline:var(--focus-outline);outline-offset:calc(-1 * var(--focus-offset) - 2px)}.settings-index-icon{border-radius:var(--radius-md);background:var(--raised);width:36px;height:36px;color:var(--muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.settings-index-text{flex-direction:column;flex:1;min-width:0;display:flex}.settings-index-label{font:var(--type-label);font-size:var(--text-base)}.settings-index-hint{font:var(--type-secondary);color:var(--muted)}.settings-page.is-drilled .settings-section-head h2{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.settings-back{margin-left:calc(-1 * var(--space-3))}@media (max-width:767px){.settings-sections{gap:var(--space-8)}.panel.settings-card{padding:var(--space-4)}.settings-form-grid{grid-template-columns:minmax(0,1fr)}.settings-form-spacer{display:none}.settings-actions>.button{flex:1}.settings-links{grid-template-columns:minmax(0,1fr)}.settings-links>a{min-height:var(--touch)}.settings-links>a:last-child{border-bottom:0}.settings-identity{align-items:flex-start}.settings-avatar{width:48px;height:48px;font-size:var(--text-xl)}.settings-facts{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.settings-nav a{transition:none}}.profile-certificate{margin:0 0 var(--space-5);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--raised)}.profile-certificate h3{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font:var(--type-card-title);color:var(--text);display:flex}.profile-certificate h3 svg{color:var(--primary);flex:none}.profile-certificate-list{gap:var(--space-3) var(--space-8);flex-wrap:wrap;margin:0;display:flex}.profile-certificate-list>div{min-width:0}.profile-certificate-list dt{font:var(--type-caption);color:var(--muted)}.profile-certificate-list dd{flex-direction:column;gap:2px;min-width:0;margin:2px 0 0;display:flex}.profile-certificate-value{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere}.profile-certificate-note{font:var(--type-secondary);color:var(--muted)}.profile-certificate-help{margin:var(--space-3) 0 0;font:var(--type-secondary);color:var(--muted)}.profile-certificate-help a{color:var(--primary);font-weight:var(--weight-medium)}@media (max-width:767px){.profile-certificate{padding:var(--space-4)}.profile-certificate-list{flex-direction:column}}.standalone.certificate-verify{max-width:720px;margin:var(--space-10) auto;padding:0 var(--space-4)}.certificate-verify-top{margin-bottom:var(--space-6)}.certificate-back{align-items:center;gap:var(--space-2);min-height:var(--touch);margin-bottom:var(--space-2);font:var(--type-label);color:var(--muted);display:inline-flex}.certificate-back:hover{color:var(--text)}.certificate-verify .page-title{margin-bottom:0}.panel.certificate-search{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-6);padding:var(--space-5);box-shadow:none;display:flex}.certificate-search .certificate-search-field{flex:1;min-width:0;margin-bottom:0}.certificate-search>.button{margin-top:calc(var(--text-md) * 1.54 + var(--space-2));flex:none}.panel.certificate-state{padding:var(--space-10) var(--space-6);text-align:center;box-shadow:none;flex-direction:column;align-items:center;display:flex}.certificate-state-icon{width:48px;height:48px;margin-bottom:var(--space-4);border-radius:var(--radius-full);background:var(--tint);color:var(--primary);justify-content:center;align-items:center;display:inline-flex}.certificate-state h2{margin:0 0 var(--space-2);font:var(--type-card-title);color:var(--text)}.certificate-state p{max-width:440px;font:var(--type-body);color:var(--muted);overflow-wrap:anywhere;margin:0}.certificate-state-error .certificate-state-icon{background:var(--danger-bg);color:var(--danger)}.panel.certificate-result{padding:var(--space-8);box-shadow:none}.certificate-result-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--border);display:flex}.certificate-result-issuer{align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;min-width:0;display:flex}.certificate-result-issuer>div{min-width:0}.certificate-result-issuer h2{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere;margin:0}.certificate-verified-label{align-items:center;gap:var(--space-1);min-height:24px;padding:0 var(--space-2);border:1px solid var(--success-border);border-radius:var(--radius-sm);background:var(--success-bg);color:var(--success);font:var(--type-label);display:inline-flex}.certificate-status-banner{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-4);border:1px solid var(--success-border);border-radius:var(--radius-md);background:var(--success-bg);color:var(--text);flex-direction:column;display:flex}.certificate-status-banner p{font:var(--type-body);color:var(--text);overflow-wrap:anywhere;margin:0}.certificate-status-banner.is-withdrawn{border-color:var(--warning-border);background:var(--warning-bg)}.certificate-withdrawn-label{align-items:center;gap:var(--space-1);min-height:24px;padding:0 var(--space-2);border:1px solid var(--warning-border);border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--warning);font:var(--type-label);display:inline-flex}.certificate-withdrawn-label>svg{flex:none}.panel.certificate-result.is-withdrawn{border-color:var(--warning-border)}.certificate-logos{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.certificate-logo-plate{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;justify-content:center;align-items:center;height:56px;padding:6px 10px;display:inline-flex}.certificate-logo-brand{object-fit:contain;width:auto;max-width:170px;height:40px;display:block}.certificate-logo-school{object-fit:contain;width:auto;max-width:120px;height:44px;display:block}.certificate-title{font:var(--type-label);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted);overflow-wrap:anywhere;margin:0}.certificate-emblem{object-fit:contain;flex:none;width:48px;height:48px}.certificate-details{gap:var(--space-5);display:grid}.certificate-details>div{min-width:0}.certificate-label{font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted)}.certificate-value{margin-top:var(--space-1);font:var(--type-section-title);color:var(--text);overflow-wrap:anywhere}.certificate-value-lg{font:var(--type-page-title)}.certificate-value-aside{font:var(--type-body);color:var(--muted)}.certificate-value-note{margin-top:var(--space-1);font:var(--type-secondary);color:var(--muted)}.certificate-facts{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));margin:0;display:grid}.certificate-facts>div{min-width:0}.certificate-fact-label{font:var(--type-caption);color:var(--muted)}.certificate-fact{font:var(--type-label);font-size:var(--text-base);color:var(--text);overflow-wrap:anywhere;margin:2px 0 0}.certificate-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.certificate-status{align-items:center;gap:var(--space-1);text-transform:capitalize;display:flex}.certificate-status>svg{color:var(--success);flex:none}.certificate-status.is-withdrawn{text-transform:none}.certificate-status.is-withdrawn>svg{color:var(--warning)}.certificate-result-footer{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.certificate-footer-text{min-width:0;font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere}.certificate-token{font-size:var(--text-xs)}.certificate-result-skeleton{gap:var(--space-4);flex-direction:column;display:flex}.certificate-skel{border-radius:var(--radius-sm);background:var(--raised);height:16px;animation:pulse 1.6s var(--ease-in-out) infinite;display:block}.certificate-skel-pill{width:160px;height:24px}.certificate-skel-title{width:60%;height:32px}.certificate-skel-line{width:80%}.certificate-skel-line.short{width:45%}@media (prefers-reduced-motion:reduce){.certificate-skel{animation:none}}@media (max-width:767px){.standalone.certificate-verify{margin:var(--space-6) auto}.panel.certificate-search{padding:var(--space-4);flex-direction:column;align-items:stretch}.certificate-search>.button{min-height:var(--touch);margin-top:0}.panel.certificate-result{padding:var(--space-5)}.certificate-result-header{align-items:flex-start}.certificate-value-lg{font:var(--type-section-title);font-size:var(--text-2xl)}.certificate-result-footer>.button{width:100%;min-height:var(--touch)}.certificate-logo-plate{height:48px}.certificate-logo-brand{max-width:130px;height:32px}.certificate-logo-school{max-width:96px;height:36px}}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2)format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:var(--font-sans);--text-2xs:.75rem;--text-xs:.75rem;--text-sm:.75rem;--text-md:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.25rem;--text-3xl:1.5rem;--text-4xl:2rem;--text-5xl:2.75rem;--type-display:var(--weight-semibold) var(--text-5xl) / 1.18 var(--font-display);--type-page-title:var(--weight-semibold) var(--text-3xl) / 1.33 var(--font-display);--type-section-title:var(--weight-semibold) var(--text-xl) / 1.44 var(--font-display);--type-card-title:var(--weight-semibold) var(--text-lg) / 1.5 var(--font-sans);--type-body:var(--weight-regular) var(--text-base) / 1.57 var(--font-sans);--type-body-lg:var(--weight-regular) var(--text-lg) / 1.62 var(--font-sans);--type-secondary:var(--weight-regular) var(--text-md) / 1.54 var(--font-sans);--type-label:var(--weight-medium) var(--text-md) / 1.54 var(--font-sans);--type-caption:var(--weight-medium) var(--text-xs) / 1.33 var(--font-sans);--type-button:var(--weight-medium) var(--text-base) / 1.43 var(--font-sans);--tracking-overline:.04em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--radius:12px;--radius-control:8px;--control-sm:32px;--control-md:40px;--control-lg:48px;--touch:44px;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--sidebar-w:248px;--sidebar-w-collapsed:72px;--topbar-h:60px;--tabbar-h:64px;--content-max:1200px;--content-max-wide:1440px;--content-max-reading:760px;--gutter:32px;--z-sticky:20;--z-header:30;--z-nav:40;--z-dropdown:50;--z-overlay:60;--z-modal:70;--z-toast:80;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--duration-fast:.12s;--duration-base:.18s;--duration-slow:.26s;--shadow-xs:0 1px 2px #0f17200d;--shadow-sm:0 2px 6px -1px #0f172014, 0 1px 2px #0f17200a;--shadow-md:0 8px 20px -4px #0f17201a, 0 2px 6px -2px #0f17200d;--shadow-lg:0 16px 36px -8px #0f172029, 0 4px 10px -4px #0f17200f;--shadow-xl:0 24px 56px -12px #0f172038;--bg:#f6f7f8;--surface:#fff;--raised:#f1f3f4;--surface-hover:#f6f7f8;--border:#e2e5e8;--border-strong:#cdd2d7;--text:#0f1720;--muted:#4a5562;--subtle:#68737f;--primary:#08764c;--primary-hover:#055e3c;--on-primary:#fff;--tint:#e6f4ed;--sage:#e8f5ee;--sage-text:#075d3e;--board-light:#f0e7d5;--board-dark:#95a38a;--stage:#0d1613;--stage-sunken:#080e0c;--stage-chrome:#0e1613e0;--stage-chrome-hover:#ffffff1f;--stage-chrome-border:#ffffff2e;--stage-text:#eef6f2;--stage-text-muted:#a9bcb1;--success:#047857;--success-bg:#ecfdf5;--success-border:#a7f3d0;--warning:#b45309;--warning-bg:#fffbeb;--warning-border:#fde68a;--danger:#b52a32;--danger-bg:#fef2f2;--danger-border:#fecaca;--info:#2563eb;--info-bg:#eff6ff;--info-border:#bfdbfe;--on-danger:#fff;--accent-emerald-bg:#ecfdf5;--accent-emerald-fg:#059669;--accent-indigo-bg:#eef2ff;--accent-indigo-fg:#4f46e5;--accent-rose-bg:#fff1f2;--accent-rose-fg:#e11d48;--accent-blue-bg:#eff6ff;--accent-blue-fg:#2563eb;--accent-amber-bg:#fffbeb;--accent-amber-fg:#d97706;--accent-teal-bg:#f0fdfa;--accent-teal-fg:#0d9488;--accent-violet-bg:#f5f3ff;--accent-violet-fg:#7c3aed;--accent-purple-bg:#faf5ff;--accent-purple-fg:#9333ea;--accent-orange-bg:#fff7ed;--accent-orange-fg:#ea580c;--accent-sky-bg:#f0f9ff;--accent-sky-fg:#0284c7;--accent-fuchsia-bg:#fdf4ff;--accent-fuchsia-fg:#c026d3;--accent-slate-bg:#f1f5f9;--accent-slate-fg:#475569;--focus-ring:0 0 0 3px color-mix(in srgb, var(--primary) 30%, transparent);--focus-outline:2px solid var(--primary);--focus-offset:2px;--overlay:#10182873;color:var(--text);background:var(--bg)}:root[data-portal=educator],:root[data-portal=admin]{--primary:#d7172b;--primary-hover:#b20f20;--tint:#fff0f1;--sage:#fcebed;--sage-text:#a81c2a}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--on-primary:#101916;--board-light:#aab29c;--board-dark:#586c53;--bg:#0e1412;--surface:#16201c;--raised:#1f2b26;--surface-hover:#1b2621;--border:#2d3c35;--border-strong:#3e5047;--text:#ecf3ef;--muted:#a8b8af;--subtle:#8a9b92;--primary:#68d4a6;--primary-hover:#94e8c3;--tint:#213c2f;--sage:#244031;--sage-text:#c3f0d9;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 2px 6px -1px #0006;--shadow-md:0 8px 20px -4px #0000007a;--shadow-lg:0 16px 36px -8px #0000008f;--shadow-xl:0 24px 56px -12px #0000009e;--success:#34d399;--success-bg:#10b9812e;--success-border:#10b98159;--warning:#fbbf24;--warning-bg:#f59e0b2e;--warning-border:#f59e0b59;--danger:#ffb0ae;--danger-bg:#f43f5e2e;--danger-border:#f43f5e59;--info:#60a5fa;--info-bg:#3b82f62e;--info-border:#3b82f659;--on-danger:#2a0f11;--accent-emerald-bg:#10b9812e;--accent-emerald-fg:#34d399;--accent-indigo-bg:#6366f12e;--accent-indigo-fg:#818cf8;--accent-rose-bg:#f43f5e2e;--accent-rose-fg:#fb7185;--accent-blue-bg:#3b82f62e;--accent-blue-fg:#60a5fa;--accent-amber-bg:#f59e0b2e;--accent-amber-fg:#fbbf24;--accent-teal-bg:#14b8a62e;--accent-teal-fg:#2dd4bf;--accent-violet-bg:#8b5cf62e;--accent-violet-fg:#a78bfa;--accent-purple-bg:#a855f72e;--accent-purple-fg:#c084fc;--accent-orange-bg:#f973162e;--accent-orange-fg:#fb923c;--accent-sky-bg:#0ea5e92e;--accent-sky-fg:#38bdf8;--accent-fuchsia-bg:#d946ef2e;--accent-fuchsia-fg:#e879f9;--accent-slate-bg:#94a3b82e;--accent-slate-fg:#94a3b8;--overlay:#0000009e}:root[data-theme=dark][data-portal=educator],:root[data-theme=dark][data-portal=admin]{--bg:#141418;--surface:#1d1d23;--raised:#26262e;--surface-hover:#222229;--border:#36363f;--border-strong:#4a4a55;--text:#f4f2f4;--muted:#bcb5bf;--subtle:#9c95a0;--primary:#ff8993;--primary-hover:#ffb0b7;--tint:#44252c;--sage:#42262d;--sage-text:#ffced4}*{box-sizing:border-box}body{min-width:320px;font:var(--type-body);color:var(--text);background:var(--bg);margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}html{scroll-padding-top:calc(var(--topbar-h) + var(--space-4))}h1,h2,h3,h4,h5,h6,p{margin-top:0}p{line-height:1.6}small{font-size:var(--text-xs)}svg{flex-shrink:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:-.01em;color:var(--text);text-wrap:balance}h1{margin-bottom:var(--space-2);font-size:var(--text-3xl);line-height:1.33}h2{margin-bottom:var(--space-3);font-size:var(--text-xl);line-height:1.44}h3{margin-bottom:var(--space-2);font-size:var(--text-lg);letter-spacing:0;line-height:1.5}h4,h5,h6{margin-bottom:var(--space-1);font-size:var(--text-base);letter-spacing:0;line-height:1.43}strong,b{font-weight:var(--weight-semibold)}input,textarea,select{width:100%;min-height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--text);font-size:var(--text-base);padding:8px 12px;line-height:1.43}input::placeholder,textarea::placeholder{color:var(--subtle);opacity:1}textarea{resize:vertical;min-height:96px;padding:10px 12px;line-height:1.57}select{cursor:pointer}select:not([multiple],[size]){appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);text-overflow:ellipsis;background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}select:not([multiple],[size]):disabled{background-image:linear-gradient(45deg, transparent 50%, var(--subtle) 50%), linear-gradient(135deg, var(--subtle) 50%, transparent 50%)}select option{background:var(--surface);color:var(--text)}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;accent-color:var(--primary);flex:none;margin:0;padding:0}input[type=range]{min-height:auto;accent-color:var(--primary);background:0 0;border:0;padding:0}input[type=color]{width:var(--control-md);padding:4px}input[type=file]{min-height:auto;padding:var(--space-4);background:var(--raised);color:var(--muted);font-size:var(--text-md);border-style:dashed}input[type=file]::file-selector-button{min-height:var(--control-sm);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);padding:0 var(--space-3);margin-right:var(--space-3);color:var(--text);font:var(--type-button);cursor:pointer}input:is([type=date],[type=time],[type=datetime-local],[type=month],[type=week]){min-width:0;height:var(--control-md);font-variant-numeric:tabular-nums;padding-block:0}::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7}:root[data-theme=dark] ::-webkit-calendar-picker-indicator{filter:invert()}@media (max-width:767px),(pointer:coarse){input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),select{min-height:var(--touch);font-size:var(--text-lg)}input:is([type=date],[type=time],[type=datetime-local],[type=month],[type=week]){height:var(--touch)}}:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}::selection{background:color-mix(in srgb, var(--primary) 24%, transparent);color:inherit}.muted{color:var(--muted)}.visually-hidden,.sr-only{white-space:nowrap;clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.small{font-size:var(--text-md)}.eyebrow{font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted);margin:0 0 var(--space-2)}.button,.text-button,.icon-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-md);font:var(--type-button);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:0;text-decoration:none;display:inline-flex}.button svg,.text-button svg{width:var(--icon-sm);height:var(--icon-sm)}.text-button,.icon-button{border-radius:var(--radius-control)}.button:hover:where(:not(:disabled)){background:var(--primary-hover)}.button.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong)}.button.secondary:hover:where(:not(:disabled)){background:var(--surface-hover);border-color:color-mix(in srgb, var(--text) 30%, var(--border-strong))}.button.full{width:100%;margin-top:var(--space-5)}.button:active:where(:not(:disabled)),.icon-button:active:where(:not(:disabled)){transform:scale(.98)}.text-button{min-height:auto;color:var(--primary);text-align:left;background:0 0;justify-content:flex-start;padding:4px 0}.icon-button{width:var(--control-md);min-width:var(--control-md);color:var(--muted);background:0 0;padding:0}.icon-button svg{width:var(--icon-md);height:var(--icon-md)}.icon-button:hover:where(:not(:disabled)){background:var(--surface-hover);color:var(--text)}.text-button:hover:where(:not(:disabled)){text-underline-offset:3px;text-decoration:underline}.button-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}@media (max-width:767px),(pointer:coarse){.button,.icon-button{min-height:var(--touch)}.icon-button{width:var(--touch);min-width:var(--touch)}.text-button{min-height:var(--touch)}}.avatar{border-radius:var(--radius-full);background:var(--tint);width:36px;height:36px;color:var(--sage-text);font-size:var(--text-md);font-weight:var(--weight-semibold);object-fit:cover;-webkit-user-select:none;user-select:none;flex:none;place-items:center;line-height:1;display:inline-grid;overflow:hidden}.avatar.large{width:64px;height:64px;font-size:var(--text-2xl)}.status{min-height:22px;padding:0 var(--space-2);border-radius:var(--radius-sm);font:var(--type-caption);background:var(--tint);color:var(--sage-text);white-space:nowrap;text-transform:capitalize;align-self:flex-start;align-items:center;gap:6px;display:inline-flex}.section-spaced{margin-top:var(--space-8)}.section-heading{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.section-heading h2,.section-heading p{margin-bottom:0}.section-heading h2{font:var(--type-section-title)}.section-heading .eyebrow{margin-bottom:var(--space-1)}.section-heading-text{min-width:0}.section-heading-text>p{margin-top:var(--space-1);color:var(--muted);font:var(--type-secondary)}.empty{text-align:center;justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-4);flex-direction:column;display:flex}.empty-icon{width:56px;height:56px;margin-bottom:var(--space-2);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);place-items:center;display:grid}.empty-icon svg{width:var(--icon-lg);height:var(--icon-lg)}.empty p{max-width:44ch;font:var(--type-body);color:var(--muted);margin:0}.empty h2,.empty h3,.empty h4,.empty .empty-title{font:var(--type-card-title);margin:0}.empty-action{justify-content:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.empty.empty-compact{padding:var(--space-6) var(--space-4)}.empty.empty-compact .empty-icon{width:40px;height:40px}.empty.empty-compact .empty-icon svg{width:var(--icon-md);height:var(--icon-md)}.error{align-items:flex-start;gap:var(--space-3);color:var(--text);border:1px solid var(--danger-border);background:var(--danger-bg);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin:var(--space-4) 0;font:var(--type-body);display:flex}.error>svg{color:var(--danger);width:var(--icon-md);height:var(--icon-md);margin-top:1px}.error>div{align-items:flex-start;gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.error-title{font-weight:var(--weight-semibold)}.error .text-button{min-height:var(--control-sm);color:var(--danger);font-weight:var(--weight-semibold);padding:0;display:inline-flex}.notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);background:var(--raised);color:var(--text);font:var(--type-body);border-radius:var(--radius-lg);margin:var(--space-4) 0;display:flex}.notice>svg{width:var(--icon-md);height:var(--icon-md);color:var(--muted);margin-top:1px}.notice>:is(p,div):only-child,.notice>svg+:is(p,div,span){min-width:0;margin:0}.notice-body{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.notice-body>p{margin:0}.notice-title{font-weight:var(--weight-semibold)}.notice-action{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.notice.notice-info{background:var(--info-bg);border-color:var(--info-border)}.notice.notice-info>svg{color:var(--info)}.notice.notice-success{background:var(--success-bg);border-color:var(--success-border)}.notice.notice-success>svg{color:var(--success)}.notice.notice-warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--text)}.notice.notice-warning>svg{color:var(--warning)}.notice.notice-danger{background:var(--danger-bg);border-color:var(--danger-border)}.notice.notice-danger>svg{color:var(--danger)}.field{margin-bottom:var(--space-4);flex-direction:column;gap:6px;min-width:0;display:flex}.field>span:first-child,.field>label,.field-label{font:var(--type-label);color:var(--text)}.form-grid{gap:0 var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-panel{max-width:var(--content-max-reading);margin-bottom:var(--space-7)}fieldset{border:0;min-width:0;margin:0;padding:0}legend{font:var(--type-label);padding:0}.skeleton-stack{gap:var(--space-3);width:100%;padding:var(--space-5);display:grid}.skeleton-stack>.skeleton-bar:first-child{width:40%;height:20px}.skeleton-bar:nth-child(3n+2){width:85%}.skeleton-bar:nth-child(3n){width:60%}@keyframes pulse{50%{opacity:.45}}@media (max-width:767px){h1,.page-title h1{font-size:var(--text-2xl);line-height:1.4}.form-grid{grid-template-columns:minmax(0,1fr)}.empty{padding:var(--space-8) var(--space-4)}.section-spaced{margin-top:var(--space-6)}.notebook-mode-btn,.notebook-modes>[role=tab]{min-height:var(--touch)}}.standalone{max-width:600px;margin:80px auto;padding:28px}.back-link{min-height:44px;color:var(--muted);font-size:var(--text-md);align-items:center;gap:8px;margin-bottom:20px;display:inline-flex}.agenda{flex-direction:column;padding:24px;display:flex}.agenda h2{font-size:23px}.agenda .empty{flex:1;min-height:210px;padding:15px}.agenda .empty-icon{width:45px;height:45px}.agenda .empty h3{font-size:var(--text-base)}.agenda .empty p{font-size:var(--text-sm)}.agenda>.text-button{border-top:1px solid var(--border);justify-content:space-between;padding-top:14px}.course-card{flex-direction:column;align-items:flex-start;display:flex;position:relative;overflow:hidden}.course-emblem{background:var(--sage);color:var(--sage-text);border-radius:var(--radius-lg);margin-bottom:20px;padding:5px 10px;font-size:32px;line-height:1.2}.course-card h3{margin-top:18px}.course-card p{font-size:var(--text-md);color:var(--muted)}.people-list>div{border-bottom:1px solid var(--border);align-items:center;gap:15px;min-width:0;padding:19px 0;display:flex}.people-list>div:last-child{border-bottom:0}.people-list strong{font-size:var(--text-md)}.people-list small{color:var(--muted);margin-top:4px;display:block}.people-list select{width:auto;max-width:200px;margin-left:auto}.people-list .status{margin-left:auto}.checkbox-label{align-items:center;gap:var(--space-2);font:var(--type-body);min-height:var(--control-md);cursor:pointer;display:flex}.chess-light{background:var(--board-light)}.chess-dark{background:var(--board-dark)}.white-piece,.black-piece{font-variant-emoji:text;font-family:Segoe UI Symbol,Apple Symbols,"Noto Sans Symbols 2",Georgia,serif;line-height:1}.white-piece{color:#fff;text-shadow:0 0 1px #000000f2,0 0 1px #000000f2,0 1px 2px #00000073}.black-piece{color:var(--stage-sunken);text-shadow:0 1px 1px #ffffff4d}.notebook-modes{background:var(--raised);border:1px solid var(--border);border-radius:var(--radius-md);scrollbar-width:none;gap:2px;margin:0;padding:3px;display:flex;overflow-x:auto}.notebook-modes::-webkit-scrollbar{display:none}.notebook-mode-btn,.notebook-modes>[role=tab]{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--muted);font:var(--type-label);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;flex:1;display:inline-flex}@keyframes engine-pulse{}.public-practice{max-width:1200px;margin:auto;padding:30px}.pagination{font-size:var(--text-sm);justify-content:flex-end;margin-top:20px}.button{padding:0 var(--space-4);background:var(--primary);color:var(--on-primary);white-space:nowrap;border-radius:var(--radius-md)}.panel{border:1px solid var(--border);background:var(--surface);padding:var(--space-6);border-radius:var(--radius-lg);min-width:0}.full{width:100%}.checkbox{align-items:flex-start;gap:var(--space-3);margin:var(--space-3) 0;font:var(--type-body);cursor:pointer;display:flex}.checkbox>input{flex:none;margin-top:calc(.5lh - 9px)}.section-heading h2,.panel>h2{align-items:center;gap:8px;display:flex}.page-title{justify-content:space-between;align-items:flex-start;gap:var(--space-3) var(--space-6);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-title>div:first-child,.page-title-text{flex:320px;min-width:0}.page-title h1{font:var(--type-page-title);letter-spacing:-.01em;margin:0}.page-title .eyebrow{display:none}.page-title p,.page-title .muted{max-width:68ch;margin:var(--space-1) 0 0;font:var(--type-body);color:var(--muted)}.page-title-crumb{margin-bottom:var(--space-2);font:var(--type-secondary);color:var(--muted)}.page-title-crumb a:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}.page-title-actions,.page-title>.button-row{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.page-title>.button{flex:none}.badge{min-height:22px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--raised);color:var(--muted);font:var(--type-caption);white-space:nowrap;vertical-align:middle;align-items:center;gap:6px;display:inline-flex}.badge svg{width:12px;height:12px}.badge-emerald{background:var(--accent-emerald-bg);color:var(--accent-emerald-fg)}.badge-indigo{background:var(--accent-indigo-bg);color:var(--accent-indigo-fg)}.badge-rose{background:var(--accent-rose-bg);color:var(--accent-rose-fg)}.badge-blue{background:var(--accent-blue-bg);color:var(--accent-blue-fg)}.badge-amber{background:var(--accent-amber-bg);color:var(--accent-amber-fg)}.badge-teal{background:var(--accent-teal-bg);color:var(--accent-teal-fg)}.badge-violet{background:var(--accent-violet-bg);color:var(--accent-violet-fg)}.badge-purple{background:var(--accent-purple-bg);color:var(--accent-purple-fg)}.badge-orange{background:var(--accent-orange-bg);color:var(--accent-orange-fg)}.badge-sky{background:var(--accent-sky-bg);color:var(--accent-sky-fg)}.badge-fuchsia{background:var(--accent-fuchsia-bg);color:var(--accent-fuchsia-fg)}.badge-slate{background:var(--accent-slate-bg);color:var(--accent-slate-fg)}.search-field{max-width:440px;color:var(--muted);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.search-field input{background:0 0;border:0;padding-left:0}@media (max-width:900px){.agenda .empty{min-height:140px}}@media (max-width:767px){.panel{border-radius:var(--radius-xl);padding:23px}.agenda .empty{min-height:175px}.search-field{width:100%;max-width:none}.back-link{margin-bottom:10px}.public-practice{padding:20px}.people-list>div{flex-wrap:wrap;gap:10px}.people-list select{font-size:var(--text-sm);max-width:145px}.people-list time{font-size:var(--text-xs)}.standalone{margin:35px auto;padding:24px}}progress{width:100%;height:8px;accent-color:var(--primary);border:0;border-radius:10px;margin:3px 0 2px;overflow:hidden}progress::-webkit-progress-bar{background:var(--raised)}progress::-webkit-progress-value{background:var(--primary);border-radius:10px}.journey-next{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;display:flex}.journey-next-icon{border-radius:var(--radius-full);background:var(--tint);width:38px;height:38px;color:var(--primary);flex:none;place-items:center;display:grid}.journey-next-copy{flex:220px;min-width:0}.journey-next-copy strong{font-size:var(--text-lg);letter-spacing:-.01em;display:block}.journey-next-copy p{font-size:var(--text-base);color:var(--muted);line-height:var(--leading-snug);margin:2px 0 0}.journey-next .button{gap:var(--space-2);flex:none}.tone-0{background:var(--tint)}.tone-1{background:#edf3fa}.tone-2{background:#f6f0fc}[data-theme=dark] .tone-1,[data-theme=dark] .tone-2{background:var(--raised)}.toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.toolbar .tabs{margin:0}.toolbar .search-field{max-width:260px}.curriculum-lesson{text-align:left;width:100%;font-size:var(--text-sm);background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;min-height:48px;padding:12px 8px;display:flex}.curriculum-lesson small{color:var(--muted);font-size:var(--text-2xs);margin-top:4px;display:block}.lesson-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.content-editor{min-height:280px}.quiz-question{border:1px solid var(--border);border-radius:10px;margin:18px 0;padding:18px}.quiz-question legend{font-weight:700;font-size:var(--text-base);max-width:100%}.quiz-option{min-height:48px;font-size:var(--text-base);border-radius:7px;align-items:center;gap:12px;padding:8px;display:flex}.quiz-option input{width:20px;min-height:20px;accent-color:var(--primary)}.quiz-option:has(input:checked){background:var(--tint)}.quiz-result{text-align:center;border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:35px}.quiz-result>span{color:var(--primary);font-size:60px}.quiz-result>strong{font-size:40px}.pgn-content{white-space:pre-wrap;word-break:break-word;font-size:var(--text-sm)}.access-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 0;display:flex}.access-row>div{flex:1}.access-row small{color:var(--muted);font-size:var(--text-xs);display:block}@media (max-width:767px){.journey-next{padding:var(--space-4);gap:var(--space-3)}.journey-next .button{flex:100%}.toolbar{flex-direction:column;align-items:stretch;gap:16px}.toolbar .search-field{max-width:none}.access-row{flex-wrap:wrap}.access-row>div{flex-basis:100%}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.verified-video{margin:20px 0}.verified-video video{aspect-ratio:16/9;background:var(--stage);border-radius:var(--radius-lg);width:100%}.video-policy{font-size:var(--text-sm);color:var(--muted);justify-content:space-between;gap:12px;margin:8px 0 20px;display:flex}img,video{max-width:100%;height:auto}button,input,select,textarea{line-height:inherit}button{cursor:pointer;color:inherit;background:0 0}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-accent{background:var(--tint);color:var(--sage-text)}.countdown{font-variant-numeric:tabular-nums}@media (max-width:400px){input:is([type=date],[type=time],[type=datetime-local]){padding-inline:var(--space-2)}}:where(a,button,input,select,textarea,summary,[role=tab]){transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out)}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range],[type=color]),select,textarea):hover:not(:disabled,[readonly],:focus){border-color:color-mix(in srgb, var(--text) 30%, var(--border-strong))}:where(input:not([type=checkbox],[type=radio],[type=range],[type=color]),select,textarea):focus-visible{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}:where(input,select,textarea):disabled{background:var(--raised);border-color:var(--border);color:var(--subtle);cursor:not-allowed;opacity:1}:where(input,select,textarea)[aria-invalid=true]{border-color:var(--danger)}:where(input,select,textarea)[aria-invalid=true]:focus-visible{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 25%, transparent)}:where(.has-success) :where(input,select,textarea):not([aria-invalid=true]){border-color:var(--success)}:where(input,textarea)[readonly]{background:var(--bg)}:where(input[type=checkbox],input[type=radio]){accent-color:var(--primary);cursor:pointer}:where(input[type=checkbox],input[type=radio]):focus-visible{outline:2px solid var(--primary);outline-offset:2px}:where(input[type=checkbox],input[type=radio]):disabled{cursor:not-allowed}:where(label):has(>input:disabled){color:var(--muted);cursor:not-allowed}:where(.table-scroll) tbody tr:hover>td{background:var(--surface-hover)}:where([aria-disabled=true],fieldset:disabled){cursor:not-allowed}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.route-error{width:100%;max-width:480px;margin:var(--space-10) auto;text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.route-error h1{margin:var(--space-1) 0 0;font:var(--type-section-title)}.route-error p{max-width:40ch;margin:0}.route-error .button-row{margin-top:var(--space-2);justify-content:center}.notebook-mode-btn:hover,.notebook-modes>[role=tab]:hover{color:var(--text)}.notebook-mode-btn.active,.notebook-modes>[role=tab][aria-selected=true]{background:var(--surface);color:var(--text);font-weight:var(--weight-semibold);box-shadow:var(--shadow-xs)}.notebook-modes>[role=tab]:focus-visible{outline:var(--focus-outline);outline-offset:-2px}h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus,main[tabindex="-1"]:focus,[tabindex="-1"]:focus:not(:focus-visible){box-shadow:none;outline:none}[role=tabpanel]:focus:not(:focus-visible){outline:none}.route-error{justify-items:start;gap:8px;max-width:640px;display:grid}.route-error>svg{color:var(--danger)}.route-error h1{margin:0;font-size:24px}.chessboard .square:focus-visible{outline:3px solid var(--primary);outline-offset:-3px;z-index:2}.chessboard .square[aria-disabled=true]{cursor:default}.chessboard .square:not([aria-disabled=true]){cursor:pointer}.calendar-event-chip{min-height:44px}.reader-toolbar .icon-button{width:44px;min-width:44px;min-height:44px}@media (max-width:767px){.month-cell{padding:3px 1px}.calendar-event-chip{min-height:44px;padding:4px 3px}}@media (max-width:1023px){:root{--gutter:24px}}@media (max-width:767px){:root{--gutter:16px}}.skip-link{top:var(--space-2);left:var(--space-2);z-index:var(--z-toast);padding:10px var(--space-4);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font:var(--type-button);position:fixed;transform:translateY(calc(-100% - 16px))}.skip-link:focus{box-shadow:var(--shadow-md);outline:var(--focus-outline);outline-offset:var(--focus-offset);transform:none}.brand{color:var(--text);white-space:nowrap;align-items:center;gap:10px;display:inline-flex}.app-shell{--shell-sidebar:var(--sidebar-w);background:var(--bg);min-height:100dvh;display:flex}.app-shell .sidebar{z-index:var(--z-nav);flex:0 0 var(--shell-sidebar);width:var(--shell-sidebar);border-right:1px solid var(--border);background:var(--surface);flex-direction:column;align-self:flex-start;height:100dvh;display:flex;position:sticky;top:0}.sidebar-head{height:var(--topbar-h);padding:0 var(--space-5);border-bottom:1px solid var(--border);flex:none;align-items:center;display:flex}.app-shell .shell-brand .brand-logo-img{max-width:184px;height:36px}.app-shell .shell-brand{border-radius:var(--radius-md)}.app-shell .shell-brand:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.sidebar-nav{gap:var(--space-4);min-height:0;padding:var(--space-4) var(--space-3);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex-direction:column;flex:auto;display:flex;overflow-y:auto}.nav-group,.nav-group-items{flex-direction:column;gap:2px;display:flex}.nav-group-header{padding:0 var(--space-3) 6px;color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase}.nav-link,.sidebar-footer-link{align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-md);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--muted);font:var(--type-button);text-align:left;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;text-decoration:none;display:flex;position:relative}.nav-link svg,.sidebar-footer-link svg,.bottom-nav svg,.more-sheet svg{stroke-width:1.75px}.nav-link:hover,.sidebar-footer-link:hover{background:var(--raised);color:var(--text)}.nav-link.active,.nav-link[aria-current=page]{background:var(--tint);color:var(--primary);font-weight:var(--weight-semibold)}.nav-link:focus-visible,.sidebar-footer-link:focus-visible{outline:var(--focus-outline);outline-offset:-2px}.nav-link-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nav-link.is-locked{color:var(--subtle);cursor:not-allowed}.nav-link.is-locked:hover{color:var(--subtle);background:0 0}.nav-lock{flex:none;margin-left:auto}.sidebar-footer{padding:var(--space-3);border-top:1px solid var(--border);flex-direction:column;flex:none;gap:2px;display:flex}.sidebar-account{align-items:center;gap:var(--space-1);margin-top:var(--space-1);display:flex}.sidebar-account-link{align-items:center;gap:var(--space-3);min-width:0;min-height:48px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--text);transition:background-color var(--duration-fast) var(--ease-out);flex:auto;text-decoration:none;display:flex}.sidebar-account-link:hover{background:var(--raised)}.sidebar-account-link .avatar{width:32px;min-width:32px;height:32px;font:var(--type-label)}.sidebar-account-text{flex-direction:column;line-height:1.25;display:flex}.sidebar-account-text strong{font:var(--type-label);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-account-text small{color:var(--muted);font:var(--type-caption)}.sidebar-signout{width:var(--control-md);height:var(--control-md);border-radius:var(--radius-md);color:var(--muted);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.sidebar-signout:hover{background:var(--danger-bg);color:var(--danger)}.sidebar-account-link:focus-visible,.sidebar-signout:focus-visible{outline:var(--focus-outline);outline-offset:-2px}.sidebar-rail-toggle{display:none}@media (pointer:coarse){.nav-link,.sidebar-footer-link{min-height:var(--touch)}}.shell-tooltip{z-index:var(--z-dropdown);border-radius:var(--radius-sm);background:var(--text);max-width:240px;color:var(--surface);font:var(--type-caption);box-shadow:var(--shadow-sm);pointer-events:none;padding:6px 10px;position:fixed;transform:translateY(-50%)}.workspace{flex-direction:column;flex:auto;min-width:0;min-height:100dvh;display:flex}.topbar{z-index:var(--z-header);align-items:center;gap:var(--space-4);height:var(--topbar-h);padding:0 var(--gutter);border-bottom:1px solid var(--border);background:var(--surface);display:flex;position:sticky;top:0}.topbar-start{display:none}.topbar .top-search{align-items:center;gap:var(--space-2);min-width:0;max-width:480px;height:var(--control-md);padding:0 6px 0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--subtle);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);flex:auto;margin:0;display:flex;position:relative}.topbar .top-search:hover{border-color:var(--border-strong)}.topbar .top-search:focus-within{border-color:var(--primary);background:var(--surface);box-shadow:var(--focus-ring)}.topbar .top-search input{width:auto;min-width:0;height:100%;min-height:0;color:var(--text);font:var(--type-body);box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;flex:1;padding:0}.topbar .top-search input::placeholder{color:var(--subtle)}.top-search-kbd{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface);color:var(--subtle);font:var(--type-caption);font-family:var(--font-sans);flex:none;padding:2px 6px}.top-search:focus-within .top-search-kbd,.top-search input:not(:placeholder-shown)~.top-search-kbd{display:none}.topbar-actions{align-items:center;gap:var(--space-1);flex:none;margin-left:auto;display:flex}.topbar-theme{display:contents}.topbar .icon-button{width:var(--control-md);min-width:var(--control-md);height:var(--control-md);min-height:var(--control-md);border-radius:var(--radius-md);color:var(--muted);padding:0;position:relative}.topbar .icon-button:hover{background:var(--raised);color:var(--text)}.topbar .icon-button:focus-visible,.topbar .header-support-trigger:focus-visible,.topbar .user-profile-pill:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.topbar .bell-link[aria-current=page]{background:var(--tint);color:var(--primary)}.notification-dot{border-radius:var(--radius-full);background:var(--primary);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);position:absolute;top:8px;right:8px}.topbar .header-support-trigger{width:var(--control-md);min-width:var(--control-md);height:var(--control-md);min-height:var(--control-md);border-radius:var(--radius-md);color:var(--muted);background:0 0;border:0;padding:0}.topbar .header-support-trigger svg{color:currentColor}.topbar .header-support-trigger:hover{background:var(--raised);color:var(--text)}.topbar .header-support-trigger[aria-current=page]{background:var(--tint);color:var(--primary)}.topbar .header-support-label{white-space:nowrap;clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.topbar .header-support-count{min-width:18px;height:18px;font-size:var(--text-xs);box-shadow:0 0 0 2px var(--surface);padding:0 4px;line-height:18px;position:absolute;top:0;right:-2px}.topbar-divider{width:1px;height:24px;margin:0 var(--space-2);background:var(--border)}@media (hover:hover) and (min-width:768px){.topbar-actions>.icon-button[aria-label]:after,.topbar-theme>.icon-button[aria-label]:after{content:attr(aria-label);z-index:var(--z-dropdown);border-radius:var(--radius-sm);background:var(--text);color:var(--surface);font:var(--type-caption);white-space:nowrap;box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);padding:6px 10px;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-2px)}.topbar-actions>.icon-button[aria-label]:hover:after,.topbar-theme>.icon-button[aria-label]:hover:after{opacity:1;transition-delay:.4s;transform:translate(-50%)}.topbar-actions>.icon-button[aria-label]:focus-visible:after,.topbar-theme>.icon-button[aria-label]:focus-visible:after{opacity:1;transform:translate(-50%)}}.shell-breadcrumb{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));padding:var(--space-4) var(--gutter) 0;color:var(--muted);font:var(--type-secondary);margin:0 auto}.shell-breadcrumb ol{flex-wrap:wrap;gap:4px 0;margin:0;padding:0;list-style:none;display:flex}.shell-breadcrumb li{align-items:center;min-width:0;display:inline-flex}.shell-breadcrumb li+li:before{content:"/";margin:0 var(--space-2);color:var(--border-strong)}.shell-breadcrumb a{border-radius:var(--radius-xs);min-height:32px;color:var(--muted);align-items:center;display:inline-flex}.shell-breadcrumb a:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}.shell-breadcrumb [aria-current=page]{max-width:50ch;color:var(--text);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell-breadcrumb+main{padding-top:var(--space-4)}.workspace-main{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));padding:var(--space-8) var(--gutter) var(--space-16);outline:none;flex:1 0 auto;margin:0 auto;overflow-x:clip}.workspace-main:has(.page-wide){max-width:calc(var(--content-max-wide) + 2 * var(--gutter))}.workspace:has(.page-wide)>.shell-breadcrumb{max-width:calc(var(--content-max-wide) + 2 * var(--gutter))}.workspace:has(.page-wide)>.app-footer{max-width:calc(var(--content-max-wide) + 2 * var(--gutter))}.workspace-main:has(.page-full){max-width:none}.workspace:has(.page-full)>.shell-breadcrumb{max-width:none}.workspace:has(.page-full)>.app-footer{max-width:none}:is(.workspace-main:has(.reader-container),.workspace-main:has(.reader)){max-width:none;padding:var(--space-3) var(--gutter) var(--space-8)}.app-shell--live-room .workspace-main{max-width:none}.workspace>.legal-footer.app-footer{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));padding:var(--space-4) var(--gutter);border-top:1px solid var(--border);color:var(--subtle);font:var(--type-secondary);gap:0 var(--space-6);margin:0 auto}.workspace>.legal-footer.app-footer nav{justify-content:flex-start;gap:0 var(--space-5)}.workspace>.legal-footer.app-footer a{min-height:32px;color:var(--muted)}.workspace>.legal-footer.app-footer a:hover{color:var(--text)}.shell-banners:empty{display:none}.offline-banner{top:calc(var(--topbar-h) + var(--space-2));left:calc(50% + var(--shell-sidebar) / 2);z-index:var(--z-toast);align-items:center;gap:var(--space-2);max-width:calc(100vw - 2 * var(--space-4));padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--text);color:var(--surface);font:var(--type-label);box-shadow:var(--shadow-md);display:flex;position:fixed;transform:translate(-50%)}.offline-banner--online{border:1px solid var(--success-border);background:linear-gradient(var(--success-bg), var(--success-bg)), var(--surface);color:var(--success)}.offline-banner svg{flex:none}.reconsent-banner{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) max(var(--gutter), calc((100% - var(--content-max)) / 2));border-bottom:1px solid var(--warning-border);background:var(--warning-bg);color:var(--text);font:var(--type-body);flex-wrap:wrap;display:flex}.reconsent-banner-icon{color:var(--warning);flex:none}.reconsent-banner p{min-width:0;line-height:inherit;flex:280px;margin:0}.reconsent-banner-action{min-height:var(--control-sm);color:var(--text);font-weight:var(--weight-semibold);text-underline-offset:3px;white-space:nowrap;align-items:center;gap:6px;text-decoration:underline;display:inline-flex}.reconsent-banner-action:hover{color:var(--primary)}.bottom-nav{display:none}.more-sheet{overscroll-behavior:contain;border:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--surface);width:100%;max-width:560px;max-height:min(88dvh,760px);color:var(--text);box-shadow:var(--shadow-lg);border-bottom:0;margin:auto auto 0;padding:0;overflow-y:auto}.more-sheet::backdrop{background:var(--overlay)}.more-sheet-body{padding:0 var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.more-sheet-handle{width:36px;height:4px;margin:var(--space-2) auto 0;border-radius:var(--radius-full);background:var(--border-strong);display:block}.more-sheet-header{z-index:1;margin:0 calc(-1 * var(--space-4));padding:var(--space-1) var(--space-2) var(--space-1) var(--space-4);background:var(--surface);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.more-sheet-header h2{font:var(--type-section-title);margin:0}.more-sheet-header .icon-button{width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch);border-radius:var(--radius-full)}.more-sheet-account{align-items:center;gap:var(--space-3);margin:var(--space-1) 0 var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--raised);display:flex}.more-sheet-account .avatar{width:40px;min-width:40px;height:40px;font:var(--type-card-title)}.more-sheet-account-text{flex-direction:column;min-width:0;display:flex}.more-sheet-account-text strong{font:var(--type-card-title);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.more-sheet-account-text small{color:var(--muted);font:var(--type-secondary)}.more-sheet-nav{margin:var(--space-1) 0 0}.more-sheet-note{align-items:flex-start;gap:var(--space-2);margin:var(--space-2) 0;padding:10px var(--space-3);border-radius:var(--radius-md);background:var(--raised);color:var(--text);font:var(--type-secondary);display:flex}.more-sheet-note>svg{color:var(--muted);flex:none;margin-top:2px}.more-sheet-group+.more-sheet-group{margin-top:var(--space-2)}.more-sheet-group-heading{margin:var(--space-3) var(--space-3) var(--space-1);color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase}.more-sheet .more-sheet-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.more-sheet .more-sheet-link,.more-sheet .more-sheet-row{align-items:center;gap:var(--space-3);width:100%;min-height:48px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text);font:var(--weight-medium) var(--text-lg) / 1.5 var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.more-sheet a.more-sheet-link:hover,.more-sheet .more-sheet-row:hover{background:var(--raised)}.more-sheet a.more-sheet-link.active{background:var(--tint);color:var(--primary);font-weight:var(--weight-semibold)}.more-sheet a.more-sheet-link:focus-visible,.more-sheet .more-sheet-row:focus-visible{outline:var(--focus-outline);outline-offset:-2px}.more-sheet-icon{flex:none}.more-sheet-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.more-sheet .more-sheet-link.is-locked{color:var(--subtle);cursor:not-allowed}.more-sheet-lock{align-items:center;gap:var(--space-1);color:var(--subtle);font:var(--type-caption);flex:none;display:inline-flex}.more-sheet-footer{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);gap:2px;display:grid}.more-sheet-switch{border-radius:var(--radius-full);background:var(--subtle);width:40px;height:24px;transition:background-color var(--duration-fast) var(--ease-out);flex:none;position:relative}.more-sheet-switch:after{content:"";border-radius:var(--radius-full);background:var(--surface);width:20px;height:20px;box-shadow:var(--shadow-xs);transition:transform var(--duration-fast) var(--ease-out);position:absolute;top:2px;left:2px}.more-sheet-row[aria-checked=true] .more-sheet-switch{background:var(--primary)}.more-sheet-row[aria-checked=true] .more-sheet-switch:after{transform:translate(16px)}.more-sheet-signout{width:100%;min-height:48px;margin-top:var(--space-2)}@media (prefers-reduced-motion:no-preference){.more-sheet[open]{animation:more-sheet-in var(--duration-slow) var(--ease-out)}.more-sheet[open]::backdrop{animation:more-sheet-fade var(--duration-slow) var(--ease-out)}@keyframes more-sheet-in{0%{opacity:0;transform:translateY(32px)}}@keyframes more-sheet-fade{0%{opacity:0}}}@media (min-width:768px) and (max-width:1023px){.app-shell{--shell-sidebar:var(--sidebar-w-collapsed)}.app-shell.app-shell--rail-expanded{--shell-sidebar:var(--sidebar-w)}.sidebar-rail-toggle{display:flex}.app-shell:not(.app-shell--rail-expanded) .sidebar-head{justify-content:center;padding:0}.app-shell:not(.app-shell--rail-expanded) .shell-brand .brand-logo-img{object-fit:cover;object-position:left center;width:32px;max-width:none;height:40px}:root[data-theme=dark] .app-shell:not(.app-shell--rail-expanded) .sidebar .shell-brand{padding:2px}.app-shell:not(.app-shell--rail-expanded) .sidebar-nav{gap:var(--space-2);padding:var(--space-3) var(--space-2);scrollbar-width:none}.app-shell:not(.app-shell--rail-expanded) .nav-group+.nav-group{padding-top:var(--space-2);border-top:1px solid var(--border)}.app-shell:not(.app-shell--rail-expanded) .nav-group-header,.app-shell:not(.app-shell--rail-expanded) .sidebar .nav-link-label{white-space:nowrap;clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell:not(.app-shell--rail-expanded) .nav-link,.app-shell:not(.app-shell--rail-expanded) .sidebar-footer-link{width:100%;min-height:var(--touch);justify-content:center;padding:0}.app-shell:not(.app-shell--rail-expanded) .sidebar-footer{padding:var(--space-2)}.app-shell:not(.app-shell--rail-expanded) .sidebar-account{flex-direction:column;gap:2px}.app-shell:not(.app-shell--rail-expanded) .sidebar-account-link{width:100%;min-height:var(--touch);justify-content:center;padding:0}.app-shell:not(.app-shell--rail-expanded) .sidebar-signout{width:100%;height:var(--touch)}.app-shell:not(.app-shell--rail-expanded) .nav-lock{width:12px;height:12px;position:absolute;top:6px;right:10px}.topbar{gap:var(--space-3)}.topbar .user-profile-info,.topbar .profile-chevron{display:none}}@media (max-width:767px){body{padding-top:env(safe-area-inset-top)}body:has(.app-shell){padding-top:0}.app-shell{--shell-sidebar:0px}.app-shell .sidebar{display:none}.workspace{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}.topbar{gap:var(--space-2);height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(var(--space-2), env(safe-area-inset-right)) 0 max(var(--gutter), env(safe-area-inset-left))}.topbar-start{align-items:center;gap:var(--space-1);flex:auto;min-width:0;display:flex}.topbar-start .shell-brand{min-height:var(--touch)}.topbar-start .shell-brand .brand-logo-img{max-width:150px;height:32px}.topbar .topbar-back{margin-left:calc(-1 * var(--space-3))}.topbar-title{min-width:0;color:var(--text);font:var(--weight-semibold) var(--text-xl) / 1.3 var(--font-sans);text-overflow:ellipsis;white-space:nowrap;transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);overflow:hidden}.topbar-title--tucked{opacity:0;transform:translateY(4px)}.topbar-swap{align-items:center;min-width:0;display:grid}.topbar-swap>*{grid-area:1/1;min-width:0}.topbar-swap-brand{transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);display:flex}.topbar-swap-brand--out{opacity:0;pointer-events:none;transform:translateY(-4px)}.topbar .top-search,.topbar .header-support-trigger,.topbar-theme,.topbar-divider{display:none}.topbar-actions{gap:0}.topbar .icon-button,.topbar .user-profile-pill{width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch)}.topbar .user-profile-info,.topbar .profile-chevron{display:none}.topbar .user-profile-pill{justify-content:center;padding:0}.shell-breadcrumb{display:none}.workspace-main{padding:var(--space-4) var(--gutter) var(--space-8)}.offline-banner{top:auto;right:var(--space-4);bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--space-2));left:var(--space-4);border-radius:var(--radius-lg);max-width:none;transform:none}.reconsent-banner-action{min-height:var(--touch)}.workspace>.legal-footer.app-footer{padding-bottom:var(--space-6);flex-direction:column;align-items:flex-start}.workspace>.legal-footer.app-footer a{min-height:var(--touch)}.bottom-nav{z-index:var(--z-nav);height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:0 max(var(--space-1), env(safe-area-inset-right)) env(safe-area-inset-bottom) max(var(--space-1), env(safe-area-inset-left));border-top:1px solid var(--border);background:var(--surface);align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{border-radius:var(--radius-md);min-width:0;color:var(--muted);font:var(--type-caption);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;margin:0;padding:6px 2px;text-decoration:none;display:flex;position:relative}.bottom-nav-icon{border-radius:var(--radius-full);width:56px;max-width:100%;height:30px;transition:background-color var(--duration-fast) var(--ease-out);place-items:center;display:grid;position:relative}.bottom-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav-item.active,.bottom-nav-item[aria-expanded=true]{color:var(--primary);font-weight:var(--weight-semibold)}.bottom-nav-item.active .bottom-nav-icon,.bottom-nav-item[aria-expanded=true] .bottom-nav-icon{background:var(--tint)}.bottom-nav-item:focus-visible{outline:var(--focus-outline);outline-offset:-2px}.bottom-nav-item.is-locked{color:var(--subtle);cursor:not-allowed}.bottom-nav-lock{border-radius:var(--radius-full);background:var(--surface);padding:1px;position:absolute;top:0;right:10px}.more-sheet{border-left:0;border-right:0;max-width:none}}@media (prefers-reduced-motion:reduce){.nav-link,.sidebar-footer-link,.topbar .top-search,.bottom-nav-icon,.more-sheet-switch,.topbar-title,.topbar-swap-brand,.more-sheet-switch:after{transition:none}}.cert-filter{margin-bottom:var(--space-5)}.cert-filter .segmented{flex-wrap:wrap;max-width:100%}.cert-filter .segmented-item{flex:auto}.certificates-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.certificate-item{gap:var(--space-3);min-width:0;padding:var(--space-4);flex-direction:column;display:flex}.certificate-item+.certificate-item,.certificates-list>li+li{border-top:1px solid var(--border)}.certificates-list>li{min-width:0}.certificate-item-main{align-items:flex-start;gap:var(--space-3);flex:1;min-width:0;display:flex}.certificate-item-icon{border-radius:var(--radius-md);background:var(--tint);width:40px;height:40px;color:var(--primary);flex:none;justify-content:center;align-items:center;display:inline-flex}.certificate-item-text{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.certificate-item.has-accent .certificate-item-icon{background:color-mix(in srgb, var(--cert-accent) 14%, var(--surface));color:color-mix(in srgb, var(--cert-accent) 60%, var(--text))}.certificate-item-badge{align-self:flex-start}.certificate-item-kind{font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted)}.certificate-item-text h2{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere;margin:0}.certificate-item-meta{font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere;margin:0}.certificate-item-meta strong{font-weight:var(--weight-semibold);color:var(--text)}.certificate-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm);color:var(--muted);overflow-wrap:anywhere;margin:0}.certificate-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.certificate-item-error{min-width:0}.certificate-item-error>.error{margin:0}.certificate-item.is-withdrawn .certificate-item-icon{background:var(--raised);color:var(--muted)}.certificate-item-withdrawn{align-items:flex-start;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg);font:var(--type-secondary);color:var(--text);display:flex}.certificate-item-withdrawn>svg{color:var(--warning);flex:none;margin-top:2px}.certificate-item-withdrawn p{overflow-wrap:anywhere;margin:0}.certificate-item-withdrawn a{font-weight:var(--weight-semibold);color:var(--text);text-underline-offset:2px;text-decoration:underline}@media (min-width:768px){.certificate-item{align-items:center;gap:var(--space-3) var(--space-6);padding:var(--space-5) var(--space-6);flex-flow:wrap}.certificate-item-main{flex-basis:320px}.certificate-item-withdrawn,.certificate-item-error{flex:100%}.certificate-actions{flex-wrap:nowrap;flex:none;padding-left:0}}.certificates-empty{box-shadow:none}@media (max-width:767px){.certificate-actions{gap:var(--space-1)}.certificate-actions>.button{min-height:var(--touch)}.certificate-actions>.button.secondary{flex:auto}}@media (max-width:389px){.certificate-actions>.button.secondary{flex-basis:100%}}.referrals-page{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.referrals-page>.page-title,.referrals-page>.stat-cards{margin-bottom:0}.referral-hint{font:var(--type-secondary);color:var(--muted);margin:0}.panel.referral-hero{gap:var(--space-5);padding:var(--space-6);box-shadow:none;flex-direction:column;display:flex}.referral-hero-copy{align-items:center;gap:var(--space-4);display:flex}.referral-hero-copy h2{font:var(--type-section-title);margin:0 0 2px}.referral-hero-icon,.referral-card-icon{border-radius:var(--radius-lg);background:var(--tint);width:48px;height:48px;color:var(--primary);flex:none;justify-content:center;align-items:center;display:inline-flex}.referral-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:var(--weight-semibold);letter-spacing:.08em;color:var(--text)}.referral-share{align-items:flex-end;gap:var(--space-3) var(--space-2);flex-wrap:wrap;min-width:0;display:flex;container-type:inline-size}.referral-share>*{flex:100%;min-width:0}.referral-hero .referral-share{max-width:880px}.referral-link-row{align-items:flex-end;gap:var(--space-2);display:flex}.referral-link-field{flex:1;min-width:0;margin:0}.referral-link-field>label{font:var(--type-label);color:var(--text)}.referral-link-field input{background:var(--raised);width:100%;color:var(--text);text-overflow:ellipsis}.referral-link-row>.button{flex:none}.referral-share-buttons{gap:var(--space-2);flex-wrap:wrap;display:flex}@container (width>=720px){.referral-share>.referral-link-row{flex:420px}.referral-share>.referral-share-buttons{flex:none}.referral-share>.referral-hint{order:3}}@container (width<=440px){.referral-link-row{flex-direction:column;align-items:stretch}.referral-share-buttons>*{flex:auto}}.referrals-columns{gap:var(--space-6);grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;display:grid}.panel.referral-how,.panel.referral-people{padding:var(--space-6);box-shadow:none}.referral-how h2,.referral-people h2{font:var(--type-card-title);margin:0}.referral-steps{gap:var(--space-4);margin:var(--space-4) 0 0;counter-reset:referral-step;flex-direction:column;padding:0;list-style:none;display:flex}.referral-steps li{min-height:32px;padding-left:calc(32px + var(--space-3));counter-increment:referral-step;flex-direction:column;gap:2px;display:flex;position:relative}.referral-steps li:before{content:counter(referral-step);border-radius:var(--radius-full);background:var(--tint);width:32px;height:32px;color:var(--primary);font:var(--type-label);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;left:0}.referral-steps strong{font:var(--type-label);font-size:var(--text-base);color:var(--text)}.referral-steps span{font:var(--type-secondary);color:var(--muted)}.referral-people-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.referral-list{margin:var(--space-3) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.referral-list li{align-items:center;gap:var(--space-3);min-height:60px;padding:var(--space-3) 0;border-top:1px solid var(--border);display:flex}.referral-list li:first-child{border-top:0}.referral-list li>.avatar{flex:none}.referral-list-text{flex-direction:column;flex:1;min-width:0;display:flex}.referral-list-text strong{font:var(--type-label);font-size:var(--text-base);color:var(--text);overflow-wrap:anywhere}.referral-list-text span{font:var(--type-secondary);color:var(--muted)}.referral-list-status{align-items:center;gap:var(--space-3);flex:none;display:flex}.referral-xp{font:var(--type-label);color:var(--success)}.referral-people .empty{padding:var(--space-8) var(--space-4)}.referrals-skeleton{gap:var(--space-6);flex-direction:column;display:flex}.referrals-skel{border-radius:var(--radius-lg);background:var(--raised);animation:pulse 1.6s var(--ease-in-out) infinite;display:block}.referrals-skel-hero{height:200px}.referrals-skel-stats{height:96px}.referrals-skel-list{height:240px}@media (prefers-reduced-motion:reduce){.referrals-skel{animation:none}}.referral-paused,.referral-invited{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--info-border);background:var(--info-bg);color:var(--text);font:var(--type-body);margin:0;display:flex}.referral-paused svg{color:var(--info);flex:none}.referral-invited{border-color:var(--success-border);background:var(--success-bg);margin:var(--space-3) 0}.referral-invited svg{color:var(--success);flex:none}.panel.referral-card{gap:var(--space-3);padding:var(--space-5);box-shadow:none;flex-direction:column;display:flex}.referral-card-head{align-items:center;gap:var(--space-3);display:flex}.referral-card-icon{border-radius:var(--radius-md);width:36px;height:36px}.referral-card-head h2{min-width:0;font:var(--type-card-title);flex:1;margin:0}.referral-card-more{align-items:center;gap:var(--space-1);min-height:var(--control-sm);font:var(--type-label);color:var(--primary);flex:none;display:inline-flex}@media (max-width:767px),(pointer:coarse){.referral-card-more{min-height:var(--touch)}}.referral-card-text{font:var(--type-secondary);color:var(--muted);margin:0}.referral-settings{gap:var(--space-3);max-width:420px;margin-top:var(--space-4);flex-direction:column;display:flex}.referral-toggle{align-items:center;gap:var(--space-2);min-height:var(--touch);display:flex}@media (max-width:1023px){.referrals-columns{grid-template-columns:minmax(0,1fr)}}@media (max-width:767px){.referrals-page>.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.panel.referral-hero,.panel.referral-how,.panel.referral-people{padding:var(--space-4)}.referral-hero-icon{width:40px;height:40px}.referral-share .button{min-height:var(--touch)}.referral-list li{flex-wrap:wrap}.referral-list-status{margin-left:calc(var(--space-3) + 40px)}}@media (max-width:389px){.referral-list-status{margin-left:0}}.mk{--mk-gutter:var(--gutter);background:var(--surface);min-height:100dvh;color:var(--text);flex-direction:column;display:flex}.mk main{flex:1}.mk :is(.mk-header-inner,.mk-hero,.mk-features,.mk-audience,.mk-closing,.mk-footer){width:100%;max-width:calc(var(--content-max) + 2 * var(--mk-gutter));padding-inline:var(--mk-gutter);margin-inline:auto}.mk-overline{margin:0 0 var(--space-3);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--primary)}.mk-header{z-index:var(--z-header);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.mk-header-inner{align-items:center;gap:var(--space-6);height:68px;display:flex}.mk-header .brand-logo-img{max-width:180px;height:36px}.mk-nav{align-items:center;gap:var(--space-1);display:flex}.mk-nav a{min-height:var(--control-md);padding:0 var(--space-3);border-radius:var(--radius-md);font:var(--type-button);color:var(--muted);white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);align-items:center;display:inline-flex}.mk-nav a:hover{background:var(--surface-hover);color:var(--text)}.mk-nav a[aria-current=page]{color:var(--text)}.mk-header-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.mk-header-actions .button{min-height:var(--control-md);padding:0 var(--space-4);font:var(--type-button)}.mk-hero{align-items:center;gap:var(--space-12);padding-block:var(--space-16) var(--space-12);grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);display:grid}.mk-hero h1{margin:0 0 var(--space-5);max-width:14ch;font:var(--type-display);font-size:var(--text-5xl);letter-spacing:-.02em;text-wrap:balance;line-height:52px}.mk-lede{margin:0 0 var(--space-8);max-width:36rem;font:var(--type-body-lg);color:var(--muted);font-size:1.125rem;line-height:1.6}.mk-ctas{gap:var(--space-3);flex-wrap:wrap;display:flex}.mk-ctas .button{min-height:var(--control-lg);padding:0 var(--space-6);gap:var(--space-2);font:var(--type-button);font-size:var(--text-lg)}.mk-trust{align-items:center;gap:var(--space-2);margin:var(--space-6) 0 0;font:var(--type-secondary);color:var(--muted);display:flex}.mk-trust svg{color:var(--primary)}.mk-hero-media{border-radius:var(--radius-2xl);background:var(--raised);aspect-ratio:5/4;margin:0;overflow:hidden}.mk-hero-media img{object-fit:cover;object-position:66% center;width:100%;height:100%;display:block}:root[data-theme=dark] .mk-hero-media img{filter:brightness(.9)}.mk-features ul{padding:var(--space-8) 0;gap:var(--space-8);border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;list-style:none;display:grid}.mk-features li,.mk-audience-list li{align-items:flex-start;gap:var(--space-4);min-width:0;display:flex}.mk-feature-icon{border-radius:var(--radius-md);background:var(--tint);width:40px;height:40px;color:var(--primary);flex:none;justify-content:center;align-items:center;display:inline-flex}.mk-features h2{margin:0 0 var(--space-1);font:var(--type-card-title)}.mk-features p{font:var(--type-secondary);color:var(--muted);margin:0}.mk-audience{gap:var(--space-12);padding-block:var(--space-16);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.mk-audience-intro h2{margin:0 0 var(--space-3);font:var(--type-page-title);letter-spacing:-.015em;text-wrap:balance;font-size:2rem;line-height:40px}.mk-audience-intro>p:last-child{max-width:28rem;font:var(--type-body-lg);color:var(--muted);margin:0}.mk-audience-list{border:1px solid var(--border);border-radius:var(--radius-lg);margin:0;padding:0;list-style:none}.mk-audience-list li{padding:var(--space-6)}.mk-audience-list li+li{border-top:1px solid var(--border)}.mk-audience-list h3{margin:0 0 var(--space-1);font:var(--type-card-title)}.mk-audience-list p{margin:0 0 var(--space-2);font:var(--type-body);color:var(--muted)}.mk-arrow-link{align-items:center;gap:var(--space-1);min-height:var(--touch);font:var(--type-button);color:var(--primary);display:inline-flex}.mk-arrow-link svg{transition:transform var(--duration-fast) var(--ease-out)}.mk-arrow-link:hover{text-underline-offset:3px;text-decoration:underline}.mk-arrow-link:hover svg{transform:translate(2px)}.mk-closing{padding-bottom:var(--space-16)}.mk-closing-card{justify-content:space-between;align-items:center;gap:var(--space-8);padding:var(--space-10);background:var(--raised);border-radius:var(--radius-xl);display:flex}.mk-closing h2{margin:0 0 var(--space-2);font:var(--type-page-title);letter-spacing:-.01em}.mk-closing p{font:var(--type-body-lg);color:var(--muted);margin:0}.mk-closing .button{min-height:var(--control-lg);padding:0 var(--space-6);gap:var(--space-2);font:var(--type-button);font-size:var(--text-lg);flex:none}.mk-footer{background:linear-gradient(var(--border), var(--border)) var(--mk-gutter) 0 / calc(100% - 2 * var(--mk-gutter)) 1px no-repeat;padding-block:var(--space-12) var(--space-8)}.mk-footer-inner{gap:var(--space-12);grid-template-columns:minmax(0,1fr) auto;display:grid}.mk-footer .brand-logo-img{height:32px}.mk-footer-brand p{margin:var(--space-3) 0 0;font:var(--type-secondary);color:var(--muted)}.mk-footer-nav{gap:var(--space-10);grid-template-columns:repeat(3,minmax(140px,auto));display:grid}.mk-footer-nav>div{flex-direction:column;align-items:flex-start;display:flex}.mk-footer-nav h2{margin:0 0 var(--space-2);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--subtle)}.mk-footer-nav a{min-height:36px;font:var(--type-body);color:var(--muted);align-items:center;display:inline-flex}.mk-footer-nav a:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}.mk-footer-copy{margin:var(--space-10) 0 0;padding-top:var(--space-6);border-top:1px solid var(--border);font:var(--type-secondary);color:var(--subtle)}.mk :is(a,button):focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}@media (max-width:1100px){.mk-features ul{gap:var(--space-6) var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1023px){.mk{--mk-gutter:var(--space-6)}.mk-hero{gap:var(--space-8);padding-block:var(--space-12) var(--space-10)}.mk-hero h1{font-size:2.5rem;line-height:48px}.mk-audience{gap:var(--space-8);padding-block:var(--space-12);grid-template-columns:1fr}.mk-footer-inner{gap:var(--space-8);grid-template-columns:1fr}}@media (max-width:899px){.mk-nav{display:none}.mk-hero{grid-template-columns:1fr}.mk-hero h1{max-width:18ch}.mk-hero-media{aspect-ratio:16/10}.mk-closing-card{flex-direction:column;align-items:flex-start}}@media (max-width:599px){.mk{--mk-gutter:var(--space-4)}.mk-header-inner{gap:var(--space-2);height:56px}.mk-header .brand-logo-img{max-width:132px;height:30px}.mk-header-cta:not(:only-child):last-child{display:none}.mk-header-actions .button{min-height:var(--touch);padding:0 var(--space-3)}.mk-hero{gap:var(--space-8);padding-block:var(--space-8)}.mk-hero h1{font-size:var(--text-4xl);margin-bottom:var(--space-4);line-height:40px}.mk-lede{font-size:var(--text-lg);margin-bottom:var(--space-6)}.mk-ctas{flex-direction:column}.mk-ctas .button{width:100%}.mk-trust{align-items:flex-start}.mk-trust svg{margin-top:2px}.mk-hero-media{aspect-ratio:4/3;border-radius:var(--radius-xl)}.mk-features ul{gap:var(--space-5);padding-block:var(--space-6);grid-template-columns:1fr}.mk-audience{padding-block:var(--space-10)}.mk-audience-intro h2{font-size:var(--text-3xl);line-height:32px}.mk-audience-list li{padding:var(--space-5) var(--space-4)}.mk-closing{padding-bottom:var(--space-10)}.mk-closing-card{padding:var(--space-8) var(--space-5)}.mk-closing h2{font-size:var(--text-2xl);line-height:28px}.mk-closing .button{width:100%}.mk-footer{padding-block:var(--space-10) var(--space-8)}.mk-footer-nav{gap:var(--space-6) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.mk-footer-nav a{min-height:var(--touch)}}@media (prefers-reduced-motion:reduce){.mk-arrow-link svg{transition:none}}.mk-footer-brand .brand{display:inline-flex}.ach-page{gap:var(--space-5);min-width:0;display:grid}.ach-placeholder{background:var(--accent-amber-bg);width:100%;height:100%;min-height:120px;color:var(--accent-amber-fg);place-items:center;display:grid;position:relative;overflow:hidden}.ach-placeholder.is-compact{min-height:0}.ach-placeholder-piece{opacity:.18;font-size:96px;line-height:1;position:absolute;bottom:-14%;right:6%}.ach-placeholder.is-compact .ach-placeholder-piece{display:none}.ach-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin:0;padding:0;list-style:none;display:grid}.ach-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-rows:auto 1fr;min-width:0;display:grid;overflow:hidden}.ach-card-media{aspect-ratio:16/9;background:var(--raised);overflow:hidden}.ach-card-media img{object-fit:cover;width:100%;height:100%;display:block}.ach-card-body{align-content:start;gap:var(--space-2);padding:var(--space-4);min-width:0;display:grid}.ach-card-badges{gap:var(--space-2);flex-wrap:wrap;display:flex}.ach-card-title{font-size:var(--text-lg);line-height:var(--leading-snug);overflow-wrap:anywhere;margin:0}.ach-card-meta{color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0}.ach-note{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--warning-border);background:var(--warning-bg);color:var(--text);font-size:var(--text-sm);overflow-wrap:anywhere}.ach-file-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.ach-file-list li{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;display:flex}.ach-file-name{overflow-wrap:anywhere;min-width:0;font-size:var(--text-sm)}.ach-form{gap:var(--space-4);min-width:0;display:grid}.ach-form h2{margin:0}.ach-fields{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ach-fields .form-field{min-width:0;margin:0}.ach-span-2{grid-column:1/-1}.ach-consent{padding:var(--space-3);border-radius:var(--radius-md);background:var(--tint);border:1px solid var(--border)}.ach-stored{gap:var(--space-2);display:grid}.ach-picker{gap:var(--space-2);min-width:0;display:grid}.ach-picker-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ach-progress{color:var(--muted);font-size:var(--text-sm);margin:0}.ach-pending{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.ach-pending-item{align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;display:flex}.ach-pending-item.is-failed{border-color:var(--danger-border);background:var(--danger-bg)}.ach-pending-item.is-done{border-color:var(--success-border)}.ach-pending-thumb{border-radius:var(--radius-sm);background:var(--raised);width:56px;height:56px;color:var(--muted);flex:none;place-items:center;display:grid;overflow:hidden}.ach-pending-thumb img{object-fit:cover;width:100%;height:100%}.ach-pending-text{flex:1;gap:2px;min-width:0;display:grid}.ach-pending-text small{color:var(--muted)}.ach-queue-panel{gap:var(--space-4);padding-top:var(--space-4);min-width:0;display:grid}.ach-queue{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.ach-queue-row{align-items:stretch;gap:var(--space-2);min-width:0;display:flex}.ach-queue-item{gap:var(--space-3);min-width:0;padding:var(--space-3);text-align:left;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;flex:1;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;display:grid}.ach-queue-item:hover{border-color:var(--primary);background:var(--tint)}.ach-queue-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ach-queue-thumb{border-radius:var(--radius-sm);background:var(--raised);width:72px;height:72px;overflow:hidden}.ach-queue-thumb img{object-fit:cover;width:100%;height:100%;display:block}.ach-queue-text{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.ach-queue-title{font-size:var(--text-base)}.ach-queue-badges{justify-content:flex-end;gap:var(--space-1);flex-wrap:wrap;display:flex}.ach-order{gap:var(--space-1);align-content:center;display:grid}.ach-pager{justify-content:center;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ach-review{gap:var(--space-5);min-width:0;display:grid}.ach-review-head{gap:var(--space-2);display:grid}.ach-review-head p{margin:0}.ach-review-title{font-size:var(--text-xl);overflow-wrap:anywhere;margin:0}.ach-details{gap:var(--space-2) var(--space-4);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.ach-details dt{color:var(--muted);font-size:var(--text-sm)}.ach-details dd{overflow-wrap:anywhere;margin:0}.ach-pre{white-space:pre-wrap}.ach-section{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);min-width:0;display:grid}.ach-section h3{font-size:var(--text-lg);margin:0}.ach-gallery{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));margin:0;padding:0;list-style:none;display:grid}.ach-gallery-item{gap:var(--space-2);min-width:0;display:grid}.ach-gallery-media{aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--raised);color:var(--muted);place-items:center;display:grid;overflow:hidden}.ach-gallery-media img{object-fit:cover;width:100%;height:100%}.ach-consent-line{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--raised);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.ach-cover{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.ach-cover-options{gap:var(--space-2);flex-wrap:wrap;display:flex}.ach-cover-option{align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;min-width:0;max-width:100%;display:flex}.ach-cover-option:has(input:checked){border-color:var(--primary);background:var(--tint)}.ach-cover-thumb{border-radius:var(--radius-sm);flex:none;width:48px;height:48px;overflow:hidden}.ach-cover-thumb img{object-fit:cover;width:100%;height:100%}.ach-preview{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--raised);display:grid}.ach-preview>h4{font-size:var(--text-base);margin:0}.ach-preview .ach-showcase-card{max-width:360px}.ach-danger{padding-top:var(--space-4);border-top:1px solid var(--border)}.ach-student-pick{gap:var(--space-2);display:grid}.ach-student-pick p{margin:0}.ach-student-results{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.ach-student-option{text-align:left;width:100%;font:inherit;color:var(--text);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer}.ach-student-option:hover{border-color:var(--primary);background:var(--tint)}.ach-compact{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.ach-compact li{gap:2px;display:grid}.ach-compact small{color:var(--muted)}.ach-compact-title{align-items:center;gap:var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.ach-coach-title{align-items:center;gap:var(--space-2);font-size:var(--text-md);margin:0 0 var(--space-3);display:flex}.ach-showcase{gap:var(--space-5);padding:var(--space-6) 2.2%;display:grid}.ach-showcase-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.ach-showcase-head h2{font-size:var(--text-2xl);margin:0}.ach-showcase-head .eyebrow{margin-bottom:var(--space-2)}.ach-showcase-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));margin:0;padding:0;list-style:none;display:grid}.ach-showcase-grid>li{min-width:0;display:grid}.ach-showcase-card{background:var(--surface);min-width:0;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-rows:auto 1fr;display:grid;overflow:hidden}.ach-showcase-media{aspect-ratio:4/3;background:var(--raised);overflow:hidden}.ach-showcase-media img{object-fit:cover;width:100%;height:100%;display:block}.ach-showcase-body{align-content:start;gap:var(--space-1);padding:var(--space-4);min-width:0;display:grid}.ach-showcase-body p{margin:0}.ach-showcase-kicker{color:var(--primary);font-size:var(--text-sm)}.ach-showcase-title{font-size:var(--text-lg);line-height:var(--leading-snug);overflow-wrap:anywhere;margin:0}.ach-showcase-name{font-weight:var(--weight-semibold)}.ach-showcase-event{color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere}.ach-showcase-body .ach-showcase-caption{margin-top:var(--space-2);font-size:var(--text-sm);line-height:var(--leading-relaxed);overflow-wrap:anywhere}.ach-public{gap:var(--space-5);display:grid}.ach-public-head h1{margin:0 0 var(--space-2)}.ach-public-head p{margin:0}.ach-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.ach-chip{min-height:40px;padding:var(--space-2) var(--space-4);font:inherit;font-size:var(--text-sm);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer}.ach-chip:hover{border-color:var(--primary)}.ach-chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.ach-chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (max-width:640px){.ach-fields{grid-template-columns:minmax(0,1fr)}.ach-queue-item{grid-template-columns:56px minmax(0,1fr)}.ach-queue-thumb{width:56px;height:56px}.ach-queue-badges{grid-column:1/-1;justify-content:flex-start}.ach-details{grid-template-columns:minmax(0,1fr);gap:0}.ach-details dd{margin-bottom:var(--space-2)}.ach-showcase{padding:var(--space-5) 5%}.ach-showcase-head h2{font-size:var(--text-xl)}}.ach-picker>.field-label,.ach-stored>.field-label,.ach-cover>.field-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);padding:0}.ach-queue-text>span{font-size:var(--text-sm)}.ach-cover-option input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--primary);flex:none;margin:0;padding:0}.ach-cover-option .ach-file-name{overflow-wrap:anywhere;max-width:160px}.tv-empty{padding:var(--space-4) 0}.tv-live{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--danger);display:inline-flex}.tv-live-dot{border-radius:var(--radius-full);background:var(--danger);width:.5rem;height:.5rem;animation:1.6s ease-in-out infinite tv-pulse;display:inline-block}@keyframes tv-pulse{0%,to{opacity:1}50%{opacity:.35}}.tv-tag{padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--accent-amber-bg);color:var(--accent-amber-fg);font-size:var(--text-2xs);font-weight:var(--weight-semibold);white-space:nowrap;align-items:center;line-height:1.6;display:inline-flex}.tv-pill{padding:.1rem var(--space-2);border-radius:var(--radius-full);border:1px solid var(--border);background:var(--raised);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap;align-items:center;display:inline-flex}.tv-pill.is-success{background:var(--success-bg);border-color:var(--success-border);color:var(--success)}.tv-pill.is-warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning)}.tv-pill.is-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.tv-bracket-scroll{overscroll-behavior-x:contain;max-width:100%;padding-bottom:var(--space-2);border-radius:var(--radius-md);overflow-x:auto}.tv-bracket-scroll:focus-visible{box-shadow:var(--focus-ring);outline:none}.tv-bracket{column-gap:0;row-gap:var(--space-4);grid-auto-rows:auto;min-width:min-content;display:grid}.tv-bracket-col{flex-direction:column;grid-row:1;min-width:0;display:flex}.tv-bracket-label{margin:0 0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:center;padding:0 1.25rem}.tv-bracket-label abbr{text-decoration:none}.is-final-col .tv-bracket-label{color:var(--primary)}.tv-bracket-body{flex-direction:column;flex:1;display:flex}.tv-slot{padding:var(--space-2) 1.25rem;flex:1;align-items:center;display:flex;position:relative}.tv-line-in,.tv-line-out,.tv-line-join{pointer-events:none;border-color:var(--border);border-style:solid;border-width:0;position:absolute}.tv-line-in{border-top-width:2px;width:1.25rem;top:50%;left:0}.tv-line-out{border-top-width:2px;width:1.25rem;top:50%;right:0}.tv-line-join{border-right-width:2px;height:50%;right:0}.tv-line-join.down{top:50%}.tv-line-join.up{bottom:50%}.tv-match{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-xs);font-size:var(--text-sm);position:relative;overflow:hidden}.tv-match.is-final{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary), var(--shadow-sm)}.tv-match.is-live{border-color:var(--danger-border)}.tv-match.is-path{outline:2px solid var(--primary);outline-offset:2px}.tv-match.is-upcoming{box-shadow:none;color:var(--muted);background:0 0;border-style:dashed}.tv-bracket-row{align-items:center;gap:var(--space-2);padding:.35rem var(--space-2);grid-template-columns:1.5rem minmax(0,1fr) auto;min-height:2rem;display:grid}.tv-bracket-row+.tv-bracket-row{border-top:1px solid var(--border)}.tv-seed{font-size:var(--text-2xs);color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.tv-bracket-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text);overflow:hidden}.tv-bracket-score{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--text)}.tv-bracket-row.is-winner{background:var(--tint)}.tv-bracket-row.is-winner .tv-bracket-name,.tv-bracket-row.is-winner .tv-bracket-score{font-weight:var(--weight-bold);color:var(--primary)}.tv-bracket-row.is-loser .tv-bracket-name,.tv-bracket-row.is-loser .tv-bracket-score{color:var(--muted)}.tv-bracket-row.is-bye .tv-bracket-name{color:var(--muted);font-style:italic}.tv-bracket-row.is-me .tv-bracket-name{font-weight:var(--weight-semibold);color:var(--text)}.tv-match-notes{gap:var(--space-1);padding:.25rem var(--space-2);border-top:1px solid var(--border);background:var(--raised);flex-wrap:wrap;display:flex}.tv-champion{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-4) var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--muted);text-align:center;flex-direction:column;display:flex}.tv-champion.is-crowned{border:2px solid var(--accent-amber-fg);background:var(--accent-amber-bg);color:var(--accent-amber-fg)}.tv-champion.is-crowned strong{color:var(--text);font-size:var(--text-md)}.tv-champion.is-path{outline:2px solid var(--primary);outline-offset:2px}.tv-champion-col .tv-slot{padding-right:0}.tv-third-place{grid-row:2;padding:0 1.25rem}.tv-standings{gap:var(--space-2);flex-direction:column;display:flex}.tv-standings-toggle{align-self:flex-end;display:none}.tv-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);max-width:100%;overflow-x:auto}.tv-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.tv-table th,.tv-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.tv-table thead th{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--muted);background:var(--raised)}.tv-table abbr{cursor:help;text-decoration:none}.tv-table tbody tr:last-child>*{border-bottom:0}.tv-table .num{text-align:right;font-variant-numeric:tabular-nums}.tv-table .name{font-weight:var(--weight-medium);color:var(--text);white-space:normal;min-width:8rem}.tv-table .strong{font-weight:var(--weight-bold);color:var(--text)}.tv-table tr.is-out>*{color:var(--muted)}.tv-table tr.is-out .tv-name{text-decoration:line-through;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border)}.tv-table tr.is-me>*{background:var(--tint)}.tv-table tr.is-me>:first-child{box-shadow:inset 3px 0 0 var(--primary)}.tv-you{margin-left:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--primary);color:var(--on-primary);font-size:var(--text-2xs);font-weight:var(--weight-semibold)}.tv-status-note{margin-left:var(--space-2);font-size:var(--text-2xs);font-weight:var(--weight-regular);color:var(--muted);text-transform:capitalize}.tv-medal{font-weight:var(--weight-bold);align-items:center;gap:.15rem;display:inline-flex}.tv-medal.gold{color:var(--accent-amber-fg)}.tv-medal.silver{color:var(--accent-slate-fg)}.tv-medal.bronze{color:var(--accent-orange-fg)}@media (max-width:640px){.tv-standings-toggle{min-height:var(--touch);align-items:center;display:inline-flex}.tv-standings:not(.show-all) .tv-extra{display:none}.tv-table-wrap{overflow:visible}.tv-table,.tv-table tbody{display:block}.tv-table thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tv-table tbody tr{align-items:center;gap:2px var(--space-3);min-height:64px;padding:var(--space-3) var(--space-4) var(--space-3) calc(var(--space-4) + 2.25rem);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex;position:relative}.tv-table tbody tr:last-child{border-bottom:0}.tv-table tbody tr:before{content:"";flex:0 0 100%;order:2;height:0}.tv-table tbody tr>*{white-space:nowrap;border:0;padding:0}.tv-table tbody .tv-rank{left:var(--space-4);top:var(--space-3);width:2rem;line-height:var(--leading-normal);text-align:left;font-weight:var(--weight-semibold);position:absolute}.tv-table tbody .name{min-width:0;font:var(--type-body);font-weight:var(--weight-medium);flex:1 1 0}.tv-table tbody .tv-points{font:var(--weight-bold) var(--text-lg) / 1.2 var(--font-sans)}.tv-table tbody .tv-points:after{content:" pts";font:var(--type-caption);color:var(--muted)}.tv-table tbody td[data-label]{font:var(--type-secondary);color:var(--text);order:3}.tv-table tbody td[data-label]:before{content:attr(data-label) " ";color:var(--muted)}.tv-table tr.is-me{background:var(--tint);box-shadow:inset 3px 0 0 var(--primary)}.tv-table tr.is-me>*,.tv-table tr.is-me>:first-child{box-shadow:none;background:0 0}}.tv-rounds{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.tv-round-pills{gap:var(--space-2);padding:2px 2px var(--space-1);max-width:100%;display:flex;overflow-x:auto}.tv-round-pill{align-items:center;gap:var(--space-2);min-height:2.25rem;padding:0 var(--space-4);border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;flex:none;display:inline-flex}.tv-round-pill:hover{border-color:var(--primary)}.tv-round-pill:focus-visible{box-shadow:var(--focus-ring);outline:none}.tv-round-pill.is-active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.tv-round-pill.is-active .tv-live-dot{background:var(--on-primary)}.tv-round-summary{margin:0}.tv-boards{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tv-board{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:4.5rem minmax(0,1fr) auto auto;display:grid}.tv-board.is-mine{background:var(--tint);box-shadow:inset 3px 0 0 var(--primary)}.tv-board-no{font:var(--type-caption);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.tv-board-players{align-items:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.tv-board-player{align-items:center;gap:var(--space-2);min-width:0;color:var(--text);overflow-wrap:anywhere;display:inline-flex}.tv-board-player.is-winner{font-weight:var(--weight-bold);color:var(--primary)}.tv-board-player.is-me{font-weight:var(--weight-semibold)}.tv-colour{border-radius:var(--radius-xs);border:1px solid var(--muted);flex:none;width:.75rem;height:.75rem}.tv-colour.white{background:var(--stage-text)}.tv-colour.black{background:var(--stage-sunken)}.tv-board-result{font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--text)}.tv-board-meta{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.tv-reason{font:var(--type-caption);font-weight:var(--weight-regular);color:var(--muted);max-width:14rem}.tv-board-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}@media (max-width:720px){.tv-board{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"no meta""players players""actions actions"}.tv-board-no{grid-area:no}.tv-board-meta{grid-area:meta;align-items:flex-end}.tv-board-players{gap:var(--space-2) var(--space-3);grid-area:players;grid-template-columns:minmax(0,1fr) auto;display:grid}.tv-board-players>.tv-board-result{font-size:var(--text-lg);grid-area:1/2/span 2;align-self:center}.tv-board-players>.tv-board-result+.tv-board-player{grid-area:2/1}.tv-board-players>.tv-tag{grid-column:1/-1;justify-self:start}.tv-board-actions{grid-area:actions;justify-content:stretch}.tv-board-actions>.button{min-height:var(--touch);flex:1 1 0;justify-content:center}.tv-board{padding:var(--space-4)}.tv-round-pill{min-height:var(--touch)}}.tv-podium{align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);text-align:center;flex-direction:column;display:flex;position:relative;overflow:hidden}.tv-podium-hero{align-items:center;gap:var(--space-1);flex-direction:column;display:flex;position:relative}.tv-podium-trophy{border-radius:var(--radius-full);background:var(--accent-amber-bg);width:4.5rem;height:4.5rem;color:var(--accent-amber-fg);margin-bottom:var(--space-2);justify-content:center;align-items:center;display:inline-flex}.tv-podium-kicker{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-amber-fg);margin:0}.tv-podium-champion{font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--leading-tight);color:var(--text);overflow-wrap:anywhere;margin:0}.tv-podium-hero p{margin:0}.tv-podium-steps{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:28rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.tv-podium-step{align-items:center;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);overflow-wrap:anywhere;flex-direction:column;display:flex}.tv-podium-step.rank-2{border-top:4px solid var(--accent-slate-fg)}.tv-podium-step.rank-3{border-top:4px solid var(--accent-orange-fg)}.tv-podium-place{align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--muted);display:inline-flex}.tv-podium-cta{align-items:center;gap:var(--space-2);flex-direction:column;display:flex;position:relative}.tv-podium-cta p{font-weight:var(--weight-semibold);color:var(--text);margin:0}.tv-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.tv-confetti-bit{opacity:0;border-radius:2px;width:.5rem;height:.8rem;animation:3.2s ease-in .2s 2 forwards tv-confetti-fall;position:absolute;top:-1rem}.tv-confetti-bit.c0{background:var(--accent-amber-fg)}.tv-confetti-bit.c1{background:var(--primary)}.tv-confetti-bit.c2{background:var(--accent-sky-fg)}.tv-confetti-bit.c3{background:var(--accent-rose-fg)}.tv-confetti-bit.c4{background:var(--accent-purple-fg)}.tv-confetti-bit.c5{background:var(--accent-emerald-fg)}.tv-confetti-bit:first-child{animation-delay:0s;left:4%}.tv-confetti-bit:nth-child(2){animation-delay:.4s;left:10%}.tv-confetti-bit:nth-child(3){animation-delay:.9s;left:16%}.tv-confetti-bit:nth-child(4){animation-delay:.2s;left:22%}.tv-confetti-bit:nth-child(5){animation-delay:1.1s;left:28%}.tv-confetti-bit:nth-child(6){animation-delay:.6s;left:34%}.tv-confetti-bit:nth-child(7){animation-delay:.1s;left:40%}.tv-confetti-bit:nth-child(8){animation-delay:.8s;left:46%}.tv-confetti-bit:nth-child(9){animation-delay:.3s;left:52%}.tv-confetti-bit:nth-child(10){animation-delay:1.2s;left:58%}.tv-confetti-bit:nth-child(11){animation-delay:.5s;left:64%}.tv-confetti-bit:nth-child(12){animation-delay:0s;left:70%}.tv-confetti-bit:nth-child(13){animation-delay:.7s;left:76%}.tv-confetti-bit:nth-child(14){animation-delay:1s;left:82%}.tv-confetti-bit:nth-child(15){animation-delay:.25s;left:88%}.tv-confetti-bit:nth-child(16){animation-delay:.65s;left:94%}.tv-confetti-bit:nth-child(17){animation-delay:1.4s;left:13%}.tv-confetti-bit:nth-child(18){animation-delay:1.5s;left:67%}@keyframes tv-confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(26rem)rotate(540deg)}}@media (prefers-reduced-motion:reduce){.tv-confetti{display:none}.tv-live-dot{animation:none}}.tv-next-game{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));border-radius:var(--radius-lg);background:var(--tint);display:flex}.tv-next-game-icon{border-radius:var(--radius-full);background:var(--primary);width:2.5rem;height:2.5rem;color:var(--on-primary);flex:none;justify-content:center;align-items:center;display:inline-flex}.tv-next-game-icon svg{width:var(--icon-md);height:var(--icon-md)}.tv-next-game-copy{flex:1;min-width:0}.tv-next-game-kicker{font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere;margin:0 0 2px}.tv-next-game-title{font:var(--type-card-title);color:var(--text);margin:0}.tv-next-game-play{flex:none}@media (max-width:640px){.tv-next-game{padding:var(--space-4);flex-wrap:wrap;align-items:flex-start}.tv-next-game-copy{flex-basis:calc(100% - 3.5rem)}.tv-next-game-play{width:100%;min-height:var(--touch);justify-content:center}}.tv-certificate-page{gap:var(--space-4);flex-direction:column;max-width:52rem;margin:0 auto;display:flex}.tv-cert-actions{justify-content:space-between;gap:var(--space-2);display:flex}.tv-cert-message{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);text-align:center;color:var(--primary);flex-direction:column;display:flex}.tv-cert-message h2,.tv-cert-message p{margin:0}.tv-cert-message h2{color:var(--text)}.tv-certificate{padding:var(--space-3);border:3px solid var(--primary);border-radius:var(--radius-lg);background:var(--surface)}.tv-certificate.rank-1{border-color:var(--accent-amber-fg)}.tv-cert-inner{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;color:var(--text);flex-direction:column;display:flex}.tv-cert-inner p{margin:0}.tv-cert-seal{border-radius:var(--radius-full);background:var(--accent-amber-bg);width:4.5rem;height:4.5rem;color:var(--accent-amber-fg);justify-content:center;align-items:center;display:inline-flex}.tv-cert-kicker{font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.tv-cert-lead{color:var(--muted)}.tv-cert-name{margin:var(--space-2) 0;font-family:var(--font-display);font-size:var(--text-4xl);line-height:var(--leading-tight);color:var(--text);overflow-wrap:anywhere}.tv-cert-place{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--accent-amber-fg)}.tv-cert-facts{justify-content:center;gap:var(--space-4) var(--space-8);margin:var(--space-4) 0 0;flex-wrap:wrap;display:flex}.tv-cert-facts div{flex-direction:column;display:flex}.tv-cert-facts dt{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.tv-cert-facts dd{font-weight:var(--weight-semibold);margin:0}.tv-cert-sign{margin-top:var(--space-6);padding-top:var(--space-2);border-top:1px solid var(--muted);flex-direction:column;align-items:center;min-width:12rem;display:flex}.tv-cert-signature{font-weight:var(--weight-semibold)}.tv-cert-role{font-size:var(--text-xs);color:var(--muted)}.tv-cert-verify{align-items:flex-start;gap:var(--space-2);max-width:100%;margin-top:var(--space-5);padding:var(--space-2) var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--muted);text-align:left;display:flex}.tv-cert-verify svg{color:var(--primary);flex:none}.tv-cert-verify p{overflow-wrap:anywhere;min-width:0;margin:0}.tv-cert-number{color:var(--text);letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}@media (max-width:640px){.tv-cert-name{font-size:var(--text-2xl)}.tv-cert-place{font-size:var(--text-xl)}.tv-cert-inner{padding:var(--space-6) var(--space-3)}}@media print{body *{visibility:hidden}.tv-certificate,.tv-certificate *{visibility:visible}.tv-certificate{color:#000;-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact;background:#fff;margin:0;position:absolute;inset:0}.tv-cert-inner,.tv-cert-name,.tv-cert-facts dd,.tv-cert-signature,.tv-cert-number,.tv-cert-verify,.tv-cert-verify a,.tv-cert-verify svg{color:#000}.tv-cert-verify{border-color:#000}.tv-confetti{display:none}@page{size:landscape;margin:1.5cm}}.tv-shelf{gap:var(--space-4);display:grid}.tv-shelf-stats{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.tv-shelf-stats>div{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);text-align:center}.tv-shelf-stats dt{font-size:var(--text-xs);color:var(--muted)}.tv-shelf-stats dd{margin:var(--space-1) 0 0;font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text)}.tv-shelf-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.tv-shelf-item{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-wrap:wrap;display:flex}.tv-shelf-rank{align-items:center;gap:var(--space-1);min-width:5.5rem;font-weight:var(--weight-bold);flex:none;display:inline-flex}.tv-shelf-of{font-weight:var(--weight-regular);color:var(--muted);font-size:var(--text-xs)}.tv-shelf-main{overflow-wrap:anywhere;flex:10rem;min-width:0;display:grid}.tv-shelf-main a{font-weight:var(--weight-semibold)}@media (max-width:767px),(pointer:coarse){.tv-shelf-main a{align-items:center;min-height:44px;display:inline-flex}}@media (max-width:480px){.tv-shelf-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--gami-gold:var(--warning);--gami-gold-bg:var(--warning-bg);--gami-gold-border:var(--warning-border);--gami-gold-text:var(--warning);--gami-gold-fill:var(--primary);--gami-gold-fill-end:var(--primary);--gami-on-gold:var(--on-primary);--gami-done-text:var(--success)}.gamification-page{gap:var(--space-8);flex-direction:column;width:100%;min-width:0;display:flex}.gamification-page>.page-title{margin-bottom:calc(-1 * var(--space-2))}.gami-section-head{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.gami-section-head>div:first-child{min-width:0}.gami-section-title{font:var(--type-section-title);color:var(--text);margin:0}.gami-section-desc{margin:var(--space-1) 0 0;font:var(--type-secondary);color:var(--muted)}.gami-summary{gap:var(--space-5);padding:var(--space-6);flex-direction:column;display:flex}.gami-stats{padding-top:var(--space-5);border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.gami-stat{gap:var(--space-1);min-width:0;padding:0 var(--space-5);border-left:1px solid var(--border);flex-direction:column;display:flex}.gami-stat:first-child{border-left:0;padding-left:0}.gami-stat dt{align-items:center;gap:var(--space-2);font:var(--type-label);color:var(--muted);display:flex}.gami-stat dt svg{color:var(--subtle);flex:none}.gami-stat.is-hot dt svg{color:var(--warning)}.gami-stat dd{flex-direction:column;min-width:0;margin:0;display:flex}.gami-stat-value{font:var(--type-section-title);font-variant-numeric:tabular-nums;color:var(--text)}.gami-stat-hint{font:var(--type-secondary);color:var(--muted)}.gami-skeleton{gap:var(--space-6);flex-direction:column;display:flex}.gami-skeleton-summary{min-height:180px}.gami-skeleton-row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gami-skeleton-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));display:grid}.level-badge{align-items:center;gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--raised);max-width:100%;color:var(--text);font:var(--type-caption);white-space:nowrap;vertical-align:middle;display:inline-flex}.level-badge--sm{min-height:22px;padding:0 var(--space-2)}.level-badge--md{min-height:26px;padding:0 var(--space-3);font:var(--type-label)}.level-badge--lg{min-height:32px;padding:0 var(--space-3);font:var(--type-label);font-weight:var(--weight-semibold)}.level-badge-icon{color:var(--primary);font-size:1.15em;line-height:1}.level-badge-level{color:var(--muted);font-weight:var(--weight-medium)}.level-badge-level--solo{color:var(--text)}.streak-flame{align-items:center;gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font:var(--type-label);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-flex}.streak-flame--sm{min-height:24px;padding:0 var(--space-2);font:var(--type-caption);font-weight:var(--weight-semibold)}.streak-flame--md{min-height:28px;padding:0 var(--space-3)}.streak-flame--lg{min-height:34px;padding:0 var(--space-3)}.streak-flame-icon{flex:none}.streak-flame--hot .streak-flame-icon{color:var(--warning)}.streak-flame--cold .streak-flame-icon{color:var(--subtle)}.streak-flame--cold{color:var(--muted)}.streak-flame-unit{color:var(--muted);font-weight:var(--weight-regular)}.streak-flame-freezes{margin-left:var(--space-1);padding-left:var(--space-2);border-left:1px solid var(--border);color:var(--info);align-items:center;gap:2px;display:inline-flex}.streak-flame-freeze-count{color:var(--text)}.xp-bar-container{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.xp-bar-summary{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.xp-bar-identity{align-items:center;gap:var(--space-4);min-width:0;display:flex}.xp-bar-label,.xp-bar-next-label{font:var(--type-label);color:var(--muted)}.xp-bar-total{font-weight:var(--weight-bold);font-size:var(--text-4xl);font-variant-numeric:tabular-nums;color:var(--text);line-height:1.2}.xp-bar-next{text-align:right}.xp-bar-next-value{font:var(--type-card-title);font-variant-numeric:tabular-nums;color:var(--text)}.xp-bar-progress{gap:var(--space-2);flex-direction:column;display:flex}.xp-bar-meta{justify-content:space-between;gap:var(--space-3);font:var(--type-secondary);font-variant-numeric:tabular-nums;color:var(--muted);display:flex}.xp-bar-track{border-radius:var(--radius-full);background:var(--raised);height:8px;overflow:hidden}.xp-bar-track--thin{height:6px}.xp-bar-fill{width:var(--xp-pct,0%);border-radius:inherit;background:var(--primary);height:100%;transition:width var(--duration-slow) var(--ease-out)}.xp-bar-compact{align-items:center;gap:var(--space-3);min-width:0;display:flex}.xp-bar-compact-body{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.xp-bar-compact .xp-bar-meta{font:var(--type-caption)}.quest-list-container{min-width:0}.quest-groups{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));align-items:start;display:grid}.quest-group{min-width:0;padding:0}.quest-group-head{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.quest-group-heading{font:var(--type-card-title);color:var(--text);margin:0}.quest-group-hint{font:var(--type-secondary);color:var(--muted)}.quest-rows{margin:0;padding:0;list-style:none}.omca-quest-card{align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head head""progress action";display:grid}.omca-quest-card:last-child{border-bottom:0}.quest-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);grid-area:head;display:flex}.quest-card-heading{min-width:0}.quest-card-title{font:var(--type-body);font-weight:var(--weight-semibold);color:var(--text);margin:0}.quest-card-desc{font:var(--type-secondary);color:var(--muted);margin:2px 0 0}.quest-xp-badge{padding:1px var(--space-2);border-radius:var(--radius-sm);background:var(--raised);color:var(--text);font:var(--type-caption);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.quest-card-progress{align-items:center;gap:var(--space-3);grid-area:progress;min-width:0;display:flex}.quest-progress-track{border-radius:var(--radius-full);background:var(--raised);flex:1;height:6px;overflow:hidden}.quest-progress-fill{width:var(--quest-pct,0%);border-radius:inherit;background:var(--primary);height:100%;transition:width var(--duration-slow) var(--ease-out)}.quest-progress-fill--complete{background:var(--success)}.quest-progress-count{min-width:3.5em;font:var(--type-secondary);font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;flex:none}.quest-card-footer{grid-area:action;justify-content:flex-end;display:flex}.quest-status-in-progress{font:var(--type-secondary);color:var(--muted);white-space:nowrap}.quest-status-claimed{align-items:center;gap:var(--space-1);font:var(--type-label);color:var(--success);white-space:nowrap;display:inline-flex}.omca-quest-card--claimed .quest-card-title{color:var(--muted)}.quest-claim-btn{white-space:nowrap}.badge-showcase-container{min-width:0}.badge-title-row{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.badge-unlocked-pill{padding:1px var(--space-2);border-radius:var(--radius-sm);background:var(--raised);color:var(--muted);font:var(--type-caption);font-variant-numeric:tabular-nums}.badge-filter-bar{min-width:0;max-width:100%}.badge-filter-bar .segmented{flex-wrap:wrap;max-width:100%}.badge-groups{gap:var(--space-6);flex-direction:column;display:flex}.badge-group-heading{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font:var(--type-label);color:var(--muted);display:flex}.badge-group-count{padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--raised);font:var(--type-caption);font-variant-numeric:tabular-nums}.badge-cards-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));margin:0;padding:0;list-style:none;display:grid}.omca-badge-card{align-items:flex-start;gap:var(--space-4);min-width:0;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:flex}.badge-icon-box{border-radius:var(--radius-full);background:var(--tint);width:44px;height:44px;color:var(--primary);flex:none;place-items:center;display:grid;position:relative}.omca-badge-card--locked .badge-icon-box{background:var(--raised);color:var(--subtle)}.badge-icon-lock{border:2px solid var(--surface);border-radius:var(--radius-full);background:var(--raised);width:20px;height:20px;color:var(--muted);place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.badge-card-content{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.badge-card-title{font:var(--type-body);font-weight:var(--weight-semibold);color:var(--text);overflow-wrap:anywhere;margin:0}.badge-card-meta{align-items:center;gap:var(--space-1);font:var(--type-caption);color:var(--muted);flex-wrap:wrap;margin:0;display:flex}.badge-rarity-pill,.badge-xp-bonus{font:inherit;color:inherit;text-transform:capitalize}.badge-card-desc{margin:var(--space-1) 0 0;font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere}.badge-card-how{font-weight:var(--weight-medium);color:var(--text)}.badge-kudos-quote{margin:var(--space-1) 0 0;padding-left:var(--space-3);border-left:2px solid var(--border-strong);font:var(--type-secondary);color:var(--text);overflow-wrap:anywhere;font-style:italic}.badge-status-unlocked{align-items:center;gap:var(--space-1);margin:var(--space-2) 0 0;font:var(--type-label);color:var(--success);flex-wrap:wrap;display:inline-flex}.badge-status-date{font-weight:var(--weight-regular);color:var(--muted)}.badge-card-bottom{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.badge-status-locked{align-items:center;gap:var(--space-1);font:var(--type-label);color:var(--muted);display:inline-flex}.badge-next-link{align-items:center;gap:var(--space-1);min-height:32px;font:var(--type-label);color:var(--primary);text-decoration:none;display:inline-flex}.badge-next-link:hover{text-underline-offset:3px;text-decoration:underline}.badge-next-link:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset);border-radius:var(--radius-xs)}.badge-next-hint{font:var(--type-secondary);color:var(--muted)}@media (max-width:1023px){.gami-stats{row-gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.gami-stat:nth-child(odd){border-left:0;padding-left:0}}@media (max-width:767px){.gamification-page{gap:var(--space-6)}.gami-summary{padding:var(--space-4);gap:var(--space-4)}.gami-stats{padding-top:var(--space-4);row-gap:var(--space-4)}.gami-stat{padding:0 var(--space-3)}.gami-stat-value{font:var(--type-card-title)}.xp-bar-total{font-size:var(--text-3xl)}.xp-bar-next{text-align:left}.xp-bar-summary{align-items:flex-start}.gami-skeleton-row{grid-template-columns:minmax(0,1fr)}.quest-group-head,.omca-quest-card{padding-left:var(--space-4);padding-right:var(--space-4)}.omca-quest-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""progress""action"}.quest-card-footer{justify-content:flex-start}.quest-card-footer:has(>.quest-status-in-progress){display:none}.quest-claim-btn{width:100%;min-height:var(--touch)}.omca-badge-card{padding:var(--space-4);gap:var(--space-3)}.badge-filter-bar{width:100%}.badge-next-link{min-height:var(--touch)}}.kudos-form{flex-direction:column;gap:14px;display:flex}.kudos-fieldset{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.kudos-fieldset legend{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text);margin-bottom:8px;padding:0}.kudos-options-list{flex-direction:column;gap:8px;display:flex}.kudos-option{font:inherit;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-control);cursor:pointer;background:var(--surface);text-align:left;align-items:flex-start;gap:12px;width:100%;padding:12px;transition:background-color .15s,border-color .15s;display:flex}.kudos-option:hover{background-color:var(--raised);border-color:color-mix(in srgb, var(--muted) 45%, var(--border))}.kudos-option:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.kudos-option--selected,.kudos-option--selected:hover{border-color:var(--primary);background-color:var(--tint)}.kudos-option-icon{background:var(--raised);color:var(--muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:8px;display:flex}.kudos-option--selected .kudos-option-icon{background:var(--primary);color:var(--on-primary)}.kudos-option-info{flex:1;min-width:0}.kudos-option-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;display:flex}.kudos-option-name{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text)}.kudos-option-bonus{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--muted)}.kudos-option-desc{font-size:var(--text-sm);color:var(--muted);margin:3px 0 0;line-height:1.4}.kudos-form .kudos-reason-field{margin:0}.admin-gamification-page{flex-direction:column;gap:24px;display:flex}.admin-gamification-tabs [role=tab]{gap:var(--space-2)}.admin-gamification-table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.admin-gamification-table{border-collapse:collapse;text-align:left;width:100%;font:var(--type-body)}.admin-gamification-table th{background:var(--surface);padding:var(--space-3) var(--space-4);font:var(--type-caption);color:var(--muted);border-bottom:1px solid var(--border)}.admin-gamification-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);color:var(--text)}.admin-gamification-table tr:last-child td{border-bottom:0}.admin-gamification-table tr:hover td{background:var(--surface-hover)}@media (prefers-reduced-motion:reduce){.xp-bar-fill,.quest-progress-fill,.quest-claim-btn,.kudos-option{transition:none}.quest-claim-btn:hover:not(:disabled),.quest-claim-btn:active:not(:disabled){transform:none}}.daily-board{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.db-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.daily-board .db-head h2{align-items:baseline;gap:0 var(--space-2);min-width:0;font:var(--type-section-title);color:var(--text);flex-wrap:wrap;margin:0;display:flex}.daily-board-compact .db-head h2{font:var(--type-card-title)}.db-head-sep{color:var(--muted)}.db-head-date{color:var(--muted);font-weight:var(--weight-medium)}.daily-board-compact .db-head-sep{display:none}.daily-board-compact .db-head-date{font:var(--type-secondary);flex-basis:100%}.db-tiles{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:stretch;display:grid}.db-tile{gap:var(--space-3);min-width:0;padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);flex-direction:column;display:flex}.daily-board-compact .db-tiles{grid-template-columns:minmax(0,1fr);gap:0}.daily-board-compact .db-tile{padding:var(--space-4) 0;background:0 0;border-radius:0}.daily-board-compact .db-tile:first-child{padding-top:0}.daily-board-compact .db-tile+.db-tile{border-top:1px solid var(--border)}.db-tile-title{align-items:center;gap:var(--space-2);font:var(--type-label);color:var(--muted);margin:0;display:flex}.db-tile-title svg{color:var(--muted);flex:none}.db-empty,.db-hint{color:var(--muted);margin:0}.db-empty{font-size:var(--text-base)}.db-hint{font-size:var(--text-sm)}.db-links{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin-top:auto;display:flex}.db-puzzle{align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.db-puzzle-copy{align-items:flex-start;gap:var(--space-2);flex-direction:column;flex:140px;min-width:0;display:flex}.db-puzzle-name{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere;margin:0}.db-meta{align-items:center;gap:var(--space-1) var(--space-2);color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;margin:0;display:flex}.db-solved{align-items:center;gap:var(--space-1);color:var(--success);font-weight:var(--weight-semibold);font-size:var(--text-sm);margin:0;display:inline-flex}.db-thumb{aspect-ratio:1;border-radius:var(--radius-md);width:160px;box-shadow:var(--shadow-xs);flex:none;grid-template-columns:repeat(8,1fr);display:grid;overflow:hidden}.db-thumb-sm{width:112px}.db-thumb>span{aspect-ratio:1;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:16px;line-height:1;display:grid}.db-thumb-sm>span{font-size:11px}.db-thumb-missing{color:var(--muted);font-size:var(--text-sm);margin:0}.db-question{align-items:stretch;gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.db-question fieldset{border:0;min-width:0;margin:0;padding:0}.db-question-text{margin:0 0 var(--space-1);color:var(--text);font:var(--type-card-title);overflow-wrap:anywhere;padding:0}.db-question fieldset .db-hint{margin-bottom:var(--space-2)}.db-question>.button{align-self:flex-start}.db-options{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.db-option{align-items:center;gap:var(--space-2) var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);flex-wrap:wrap;display:flex}.db-option.is-choosable{cursor:pointer}.db-option.is-choosable:hover{border-color:var(--primary)}.db-option.is-chosen{border-color:var(--primary);background:var(--tint)}.db-option:focus-within{box-shadow:var(--focus-ring)}.db-option input[type=radio]{width:18px;height:18px;accent-color:var(--primary);flex:none;margin:0}.db-option.is-correct{border-color:var(--success-border);background:var(--success-bg)}.db-option.is-wrong{border-color:var(--danger-border);background:var(--danger-bg)}.db-option-letter{border-radius:var(--radius-full);background:var(--raised);width:24px;height:24px;font-size:var(--text-sm);font-weight:var(--weight-bold);flex:none;place-items:center;display:grid}.db-option-text{overflow-wrap:anywhere;flex:8rem;min-width:0}.db-option-note{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:inline-flex}.db-option.is-correct .db-option-note{color:var(--success)}.db-option.is-wrong .db-option-note{color:var(--danger)}.db-result:empty{display:none}.db-result:focus{outline:none}.db-result:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.db-result p{align-items:center;gap:var(--space-2);margin:0;display:flex}.db-result p.is-correct{color:var(--success);font-weight:var(--weight-semibold)}.db-result p.is-wrong{color:var(--danger);font-weight:var(--weight-semibold)}.db-result svg{flex:none}.db-explanation{padding:var(--space-3);border-radius:var(--radius-md);background:var(--raised);font-size:var(--text-sm);line-height:var(--leading-normal);overflow-wrap:anywhere;margin:0}.db-thought{padding-left:var(--space-3);border-left:3px solid var(--primary);margin:0}.db-thought blockquote{margin:0}.db-thought blockquote p{font-size:var(--text-base);font-style:italic;line-height:var(--leading-relaxed);overflow-wrap:anywhere;margin:0}.db-thought figcaption{margin-top:var(--space-2);color:var(--muted);font-size:var(--text-sm)}.db-planner{gap:var(--space-6);min-width:0;display:grid}.db-planner>.panel{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.db-planner h2{margin:0}.db-planner-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.db-planner-head p{margin:var(--space-1) 0 0;max-width:60ch}.db-planner-count{color:var(--muted);white-space:nowrap}.db-planner-count strong{color:var(--text);font-size:var(--text-xl)}.db-saved{align-items:center;gap:var(--space-2);color:var(--success);font-weight:var(--weight-medium);margin:0;display:flex}.db-days{margin:0;padding:0;list-style:none}.db-days>li{align-items:center;gap:var(--space-1) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border);grid-template-columns:10rem minmax(0,1fr) auto;grid-template-areas:"date chips action""date meta action";display:grid}.db-days>li:last-child{border-bottom:0}.db-days-past>li{grid-template-columns:10rem minmax(0,1fr);grid-template-areas:"date chips""date meta"}.db-day-date{align-items:center;gap:var(--space-2);flex-wrap:wrap;grid-area:date;display:flex}.db-days>li>.db-chips{grid-area:chips}.db-day-meta{align-items:center;gap:var(--space-1) var(--space-3);color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;grid-area:meta;margin:0;display:flex}.db-day-meta:empty{display:none}.db-days>li>.button{grid-area:action}.db-chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.db-chip{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-medium);display:inline-flex}.db-chip.is-set{border-color:var(--success-border);background:var(--success-bg);color:var(--success)}.db-chip.is-auto{border-color:var(--info-border);background:var(--info-bg);color:var(--info)}.db-chip.is-missing{color:var(--muted);border-style:dashed}@media (max-width:640px){.db-days>li{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"date action""chips chips""meta meta"}.db-days-past>li{grid-template-columns:minmax(0,1fr);grid-template-areas:"date""chips""meta"}}.db-editor{gap:var(--space-5);min-width:0;display:grid}.db-editor-section{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);margin:0;display:grid}.db-editor-section>legend{padding:0 var(--space-2);font-weight:var(--weight-semibold)}.db-answers{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.db-answers>legend{margin-bottom:var(--space-2);font-size:var(--text-md);font-weight:var(--weight-medium);padding:0}.db-answers>.button{justify-self:start}.db-answer-row{align-items:flex-start;gap:var(--space-2);min-width:0;display:flex}.db-answer-correct{cursor:pointer;flex:none;place-items:center;min-width:44px;min-height:46px;display:grid}.db-answer-correct input{width:20px;height:20px;accent-color:var(--primary);margin:0}.db-answer-row .db-answer-input{flex:auto;min-width:0;margin:0}.db-answer-row>.button{flex:none;min-height:46px}.db-lock{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg);color:var(--text);font-size:var(--text-sm);margin:0;display:flex}.db-lock svg{color:var(--warning);flex:none}.db-form-error{padding:var(--space-3);border:1px solid var(--danger-border);border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger);font-weight:var(--weight-medium);margin:0}.db-picker{gap:var(--space-3);min-width:0;display:grid}.db-picker-chosen{align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.db-picker-chosen>div{gap:var(--space-2);flex-direction:column;flex:160px;min-width:0;display:flex}.db-row-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.db-picker-browse{gap:var(--space-3);min-width:0;display:grid}.db-picker-list{gap:var(--space-2);max-height:320px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.db-picker-list>li{align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.db-picker-list .db-thumb{width:72px}.db-picker-list .db-thumb>span{font-size:8px}.db-picker-copy{gap:var(--space-1);flex-direction:column;flex:140px;min-width:0;display:flex}.db-editor-footer{align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%;display:flex}.db-editor-spacer{flex:auto}.db-archive{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.db-archive>h2{align-items:center;gap:var(--space-2);font:var(--type-section-title);color:var(--text);margin:0;display:flex}.db-archive>h2 svg{color:var(--muted)}.db-archive>.button{align-self:flex-start}.db-past-days{gap:var(--space-6);margin:0;padding:0;list-style:none;display:grid}.db-past-days>li+li{padding-top:var(--space-6);border-top:1px solid var(--border)}.db-past-day h3{margin:0 0 var(--space-3);font:var(--type-card-title);color:var(--text)}.db-archive .db-explanation,.daily-board-full .db-explanation{background:var(--surface)}.student-home{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.student-home .skeleton{height:auto;padding:var(--space-1) 0;gap:var(--space-2);background:0 0}.student-home .skeleton span{background:var(--raised);height:14px}.student-home .home-card .error,.student-home .home-todo .error{margin:0}.student-home .home-hero{gap:var(--space-5);display:grid}.student-home .home-hero-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4) var(--space-8);flex-wrap:wrap;display:flex}.student-home .home-hero-date{margin:0 0 var(--space-1);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted)}.student-home .home-hero h1{font:var(--type-page-title);letter-spacing:-.01em;color:var(--text);overflow-wrap:anywhere;margin:0}.student-home .greeting-thought{min-width:0;padding-left:var(--space-3);border-left:2px solid var(--border-strong);flex:0 42ch;margin:0}.student-home .greeting-thought blockquote{margin:0}.student-home .greeting-thought p{font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere;margin:0;font-style:italic}.student-home .greeting-thought cite{font:var(--type-caption);color:var(--subtle);margin-top:2px;font-style:normal;display:block}.student-home .home-next{align-items:center;gap:var(--space-4) var(--space-5);padding:var(--space-5) var(--space-6);border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border));border-radius:var(--radius-lg);background:var(--tint);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.student-home .home-next-icon{width:var(--control-lg);height:var(--control-lg);border-radius:var(--radius-full);background:var(--surface);color:var(--primary);place-items:center;display:grid}.student-home .home-next.is-live .home-next-icon{color:var(--danger)}.student-home .home-next-copy{min-width:0}.student-home .home-next-label{font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--sage-text);margin:0}.student-home .home-next.is-live .home-next-label{color:var(--danger)}.student-home .home-next-line{font:var(--weight-medium) var(--text-lg) / 1.5 var(--font-sans);color:var(--text);overflow-wrap:anywhere;margin:2px 0 0}.student-home .greeting-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.student-home .greeting-actions .button{min-height:var(--control-md);gap:var(--space-2);padding-block:0}.student-home .greeting-actions .button.secondary{background:var(--surface)}.student-home .home-todo{gap:var(--space-3);display:grid}.student-home .home-section-title{font:var(--type-card-title);color:var(--text);margin:0}.student-home .home-todo-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.student-home .home-todo-item{align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-4) var(--space-5);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.student-home .home-todo-item+.home-todo-item{border-top:1px solid var(--border)}.student-home .home-todo-item.tone-urgent{background:var(--danger-bg)}.student-home .home-todo-icon{width:var(--control-md);height:var(--control-md);border-radius:var(--radius-full);background:var(--tint);color:var(--primary);place-items:center;display:grid}.student-home .tone-urgent .home-todo-icon{background:var(--surface);color:var(--danger)}.student-home .tone-info .home-todo-icon{background:var(--info-bg);color:var(--info)}.student-home .home-todo-copy strong{font:var(--weight-semibold) var(--text-base) / 1.5 var(--font-sans);color:var(--text);display:block}.student-home .tone-urgent .home-todo-copy strong{color:var(--danger)}.student-home .home-todo-copy p{font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere;margin:2px 0 0}.student-home .home-todo-item .button{min-height:var(--control-md);gap:var(--space-2);padding-block:0}.student-home .home-todo-clear{align-items:center;gap:var(--space-2);font:var(--type-body);color:var(--muted);margin:0;display:flex}.student-home .home-todo-clear svg{color:var(--success);flex:none}.student-home .mobile-quick-actions{display:none}.student-home .home-layout{gap:var(--space-6);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.student-home .home-main{gap:var(--space-6);grid-column:span 8;min-width:0;display:grid}.student-home .home-aside{gap:var(--space-6);grid-column:span 4;min-width:0;display:grid}.student-home .home-board-slot,.student-home .home-referral-slot{min-width:0}.student-home .home-referral-slot:empty{display:none}.student-home .home-board-slot>.panel,.student-home .home-referral-slot>.panel{margin:0}.student-home .home-card{gap:var(--space-4);min-width:0;padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);box-shadow:none;flex-direction:column;display:flex;container-type:inline-size}.student-home .home-card-head{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--control-sm);display:flex}.student-home .home-card-head h2{align-items:center;gap:var(--space-2);font:var(--type-card-title);color:var(--text);flex-wrap:wrap;margin:0;display:flex}.student-home .home-card-link{min-height:var(--control-sm);font:var(--type-label);color:var(--primary);white-space:nowrap;align-items:center;display:inline-flex}.student-home .home-card-link:hover{text-underline-offset:3px;text-decoration:underline}.student-home .home-label{align-items:center;gap:var(--space-2);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted);flex-wrap:wrap;margin:0;display:flex}.student-home .home-label .badge{text-transform:none;letter-spacing:0}.student-home .home-card .muted{font:var(--type-secondary);color:var(--muted);margin:0}.student-home .home-card .button{min-height:var(--control-md);gap:var(--space-2);padding-block:0}.student-home .home-card .empty{min-height:0;padding:var(--space-2) 0 0;text-align:left;align-items:flex-start}.student-home .home-card .empty-icon{width:var(--control-md);height:var(--control-md);margin-bottom:var(--space-3);border-radius:var(--radius-full);background:var(--raised);color:var(--muted)}.student-home .home-card .empty .empty-title{margin:0 0 var(--space-1);font:var(--weight-semibold) var(--text-base) / 1.5 var(--font-sans)}.student-home .home-card .empty p{max-width:52ch;font:var(--type-secondary)}.student-home .home-card .empty .button{margin-top:var(--space-4)}.student-home .home-course-main{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.student-home .home-course-batch{font:var(--type-section-title);color:var(--text);overflow-wrap:anywhere;margin:0}.student-home .home-facts{gap:var(--space-3) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.student-home .home-facts dt{font:var(--type-caption);color:var(--muted)}.student-home .home-facts dd{font:var(--weight-medium) var(--text-base) / 1.5 var(--font-sans);color:var(--text);overflow-wrap:anywhere;margin:2px 0 0}.student-home .home-course-progress{gap:var(--space-1);display:grid}.student-home .home-course-progress-head{font:var(--type-label);color:var(--muted);justify-content:space-between;display:flex}.student-home .home-course-progress-head strong{color:var(--text);font-variant-numeric:tabular-nums}.student-home .home-course-progress small{font:var(--type-caption)}.student-home .home-course-progress progress,.student-home .home-level-bar progress{width:100%;margin:0}.student-home .home-course-soon{align-items:flex-start;gap:var(--space-2);font:var(--type-secondary);color:var(--muted);margin:0;display:flex}.student-home .home-course-soon svg{flex:none;margin-top:2px}.student-home .home-inline-error{font:var(--type-secondary);color:var(--muted);margin:0}.student-home .home-inline-error .text-button{min-height:0;display:inline}.student-home .home-card-actions{align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.student-home .home-next-class{align-items:center;gap:var(--space-3) var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;min-width:0;display:grid}.student-home .home-next-class>.skeleton,.student-home .home-next-class>.error{grid-column:1/-1}.student-home .home-next-class-icon{width:var(--control-md);height:var(--control-md);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);place-items:center;display:grid}.student-home .home-next-class.is-live .home-next-class-icon{background:var(--danger-bg);color:var(--danger)}.student-home .home-next-class.is-starting .home-next-class-icon{background:var(--tint);color:var(--primary)}.student-home .home-next-class-copy{gap:2px;min-width:0;display:grid}.student-home .home-next-class h3{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere;margin:0}.student-home .home-countdown{font:var(--type-secondary);color:var(--muted);font-variant-numeric:tabular-nums;margin:0}.student-home .home-countdown strong{color:var(--text);font-weight:var(--weight-semibold)}.student-home .home-course>.empty+.home-next-class{margin-top:var(--space-1)}.student-home .home-list{margin:0;padding:0;list-style:none}.student-home .home-list li+li{border-top:1px solid var(--border)}.student-home .home-list-row{align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) 0;color:inherit;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.student-home .home-list-icon{width:var(--control-sm);height:var(--control-sm);border-radius:var(--radius-md);background:var(--raised);color:var(--muted);place-items:center;display:grid}.student-home .home-list-copy{min-width:0}.student-home .home-list-copy strong{font:var(--weight-medium) var(--text-base) / 1.5 var(--font-sans);color:var(--text);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.student-home .home-list-copy small{font:var(--type-secondary);color:var(--muted);display:block}.student-home .home-list-row.is-overdue small{color:var(--danger)}.student-home .home-list-row.is-overdue .home-list-icon{background:var(--danger-bg);color:var(--danger)}.student-home .home-list-chevron{color:var(--subtle)}.student-home .home-list-row:hover strong{color:var(--primary)}.student-home .home-progress-body{gap:var(--space-4);display:grid}.student-home .home-level{align-items:center;gap:var(--space-3);min-width:0;display:flex}.student-home .home-level-ring{width:var(--control-lg);height:var(--control-lg);border:3px solid var(--primary);border-radius:var(--radius-full);background:var(--tint);color:var(--text);font:var(--weight-bold) var(--text-lg) / 1 var(--font-sans);font-variant-numeric:tabular-nums;flex:none;place-items:center;display:grid}.student-home .home-level-copy{min-width:0;display:grid}.student-home .home-level-copy strong{font:var(--weight-semibold) var(--text-base) / 1.5 var(--font-sans);color:var(--text)}.student-home .home-level-copy .muted{font:var(--type-secondary)}.student-home .home-level-bar{gap:var(--space-1);display:grid}.student-home .home-level-bar small{font:var(--type-caption)}.student-home .home-stats{padding-top:var(--space-4);border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.student-home .home-stats>div{min-width:0;padding-inline:var(--space-3)}.student-home .home-stats>div:first-child{padding-left:0}.student-home .home-stats>div+div{border-left:1px solid var(--border)}.student-home .home-stats dt{align-items:center;gap:var(--space-1);font:var(--type-caption);color:var(--muted);white-space:nowrap;display:flex}.student-home .home-stats dt svg{color:var(--subtle);flex:none}.student-home .home-stats dd{margin:var(--space-1) 0 0;font:var(--weight-bold) var(--text-2xl) / 1.2 var(--font-sans);color:var(--text);font-variant-numeric:tabular-nums}.student-home .home-payment-body{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.student-home .home-amount{font:var(--weight-semibold) var(--text-2xl) / 1.4 var(--font-sans);letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;margin:0}.student-home .home-payment-body .button{margin-top:var(--space-2)}.student-home .home-payment-note{padding-top:var(--space-3);border-top:1px solid var(--border);font:var(--type-secondary);color:var(--muted);margin:0}.student-home .home-payment-note a{color:var(--primary);font-weight:var(--weight-semibold)}.student-home .home-podium{gap:2px;margin:0;padding:0;list-style:none;display:grid}.student-home .home-podium li{align-items:center;gap:var(--space-3);min-height:var(--control-md);padding:0 var(--space-2);border-radius:var(--radius-md);font:var(--type-body);display:flex}.student-home .home-podium li.is-self{background:var(--tint);font-weight:var(--weight-semibold)}.student-home .home-podium-rank{border-radius:var(--radius-full);background:var(--raised);width:24px;height:24px;color:var(--muted);font:var(--type-caption);font-variant-numeric:tabular-nums;flex:none;place-items:center;display:grid}.student-home .home-podium-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.student-home .home-podium-score{font:var(--type-secondary);color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.student-home .home-support{align-items:flex-start;gap:var(--space-3);flex-direction:row}.student-home .home-support-icon{width:var(--control-md);height:var(--control-md);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);flex:none;place-items:center;display:grid}.student-home .home-support-copy{flex:1;min-width:0}.student-home .home-support-copy h2{align-items:center;gap:var(--space-2);font:var(--type-card-title);flex-wrap:wrap;margin:0;display:flex}@container (width<=480px){.student-home .home-next-class{grid-template-columns:auto minmax(0,1fr)}.student-home .home-next-class>.button,.student-home .home-next-class>.home-card-link{grid-column:2;justify-self:start}}@container (width<=300px){.student-home .home-support{flex-wrap:wrap}}@media (max-width:1199px){.student-home .home-layout{align-items:stretch;gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.student-home .home-main,.student-home .home-aside{display:contents}.student-home .home-course{order:1;grid-column:1/-1}.student-home .home-due{order:2}.student-home .home-progress{order:3}.student-home .home-payment{order:4}.student-home .home-board{order:5}.student-home .home-board-slot{order:6;grid-column:1/-1}.student-home .home-support{order:7}.student-home .home-referral-slot{order:8}.student-home .home-next{grid-template-columns:auto minmax(0,1fr)}.student-home .home-next .greeting-actions{grid-column:2}}@media (max-width:959px){.student-home .home-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:767px){.student-home{gap:var(--space-5)}.student-home .home-hero{gap:var(--space-4)}.student-home .home-hero h1{font-size:var(--text-2xl);line-height:1.4}.student-home .greeting-thought{flex-basis:100%}.student-home .home-next{gap:var(--space-3);padding:var(--space-4);grid-template-columns:auto minmax(0,1fr)}.student-home .home-next-icon{width:var(--control-md);height:var(--control-md)}.student-home .home-next .greeting-actions{gap:var(--space-2);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-home .greeting-actions .button,.student-home .home-todo-item .button,.student-home .home-card .button,.student-home .home-card-link{min-height:var(--touch)}.student-home .home-todo-item{padding:var(--space-4);grid-template-columns:auto minmax(0,1fr)}.student-home .home-todo-item .button{grid-column:2;justify-self:start}.student-home .mobile-quick-actions{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.student-home .mobile-quick-actions>a{align-items:center;gap:var(--space-1);min-height:72px;padding:var(--space-2) 0;border-radius:var(--radius-md);font:var(--type-caption);color:var(--text);text-align:center;flex-direction:column;display:flex}.student-home .mobile-quick-actions span{width:var(--control-lg);height:var(--control-lg);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);place-items:center;display:grid}.student-home .mobile-quick-actions>a:active span{background:var(--raised)}.student-home .home-layout{align-items:stretch;gap:var(--space-4);flex-direction:column;display:flex}.student-home .home-main,.student-home .home-aside{display:contents}.student-home .home-course{order:1}.student-home .home-due{order:2}.student-home .home-progress{order:3}.student-home .home-payment{order:4}.student-home .home-board-slot{order:5}.student-home .home-board{order:6}.student-home .home-support{order:7}.student-home .home-referral-slot{order:8}.student-home .home-card{padding:var(--space-4)}.student-home .home-payment-body .button{align-self:stretch}}@media (max-width:400px){.student-home .home-next .greeting-actions,.student-home .home-facts{grid-template-columns:minmax(0,1fr)}.student-home .home-stats>div{padding-inline:var(--space-2)}}.student-home .home-todo.is-clear .home-section-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.course-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,248px),1fr));align-items:stretch;display:grid}.course-tile{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;transition:border-color var(--duration-fast) var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.course-tile:hover{border-color:var(--border-strong)}.course-tile.is-selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.course-tile-cover{aspect-ratio:16/9;border-bottom:1px solid var(--border);background-color:var(--raised);background-image:repeating-conic-gradient(color-mix(in srgb, var(--border) 40%, transparent) 0 25%, transparent 0 50%);background-position:50%;background-size:40px 40px;place-items:center;display:grid}.course-tile-cover .emblem-mark{box-shadow:0 0 0 6px var(--surface)}.course-tile-badges{top:var(--space-3);right:var(--space-3);justify-content:flex-end;gap:var(--space-1);max-width:calc(100% - var(--space-6));flex-wrap:wrap;display:flex;position:absolute}.course-tile-body{gap:var(--space-2);min-width:0;padding:var(--space-5);flex-direction:column;flex:1;display:flex}.course-tile-overline{color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;margin:0}.course-tile-title{color:var(--text);font:var(--type-card-title);overflow-wrap:anywhere;margin:0}.course-tile-meta{gap:0 var(--space-2);color:var(--muted);font:var(--type-secondary);overflow-wrap:anywhere;flex-wrap:wrap;margin:0;display:flex}.course-tile-meta>span+span:before{content:"·";margin-right:var(--space-2);color:var(--subtle)}.course-tile-description{color:var(--muted);font:var(--type-body);overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.course-tile-progress{gap:var(--space-1);margin-top:var(--space-1);flex-direction:column;display:flex}.course-tile-progress-label{justify-content:space-between;gap:var(--space-2);color:var(--muted);font:var(--type-secondary);display:flex}.course-tile-progress-label>span:last-child{color:var(--text);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.course-tile-progress progress{width:100%;margin:0}.course-tile-actions{align-items:stretch;gap:var(--space-2);padding-top:var(--space-3);flex-direction:column;margin-top:auto;display:flex}.course-tile-actions>.button{white-space:normal;justify-content:center;width:100%}.course-tile-actions>.text-button{align-self:center}.course-tile-actions>.course-tile-note{color:var(--muted);font:var(--type-secondary);text-align:center;margin:0}@media (max-width:767px){.course-grid{gap:var(--space-4)}.course-tile-cover{aspect-ratio:2}.course-tile-body{padding:var(--space-4)}.course-tile-actions>.button{min-height:var(--touch)}}@media (prefers-reduced-motion:reduce){.course-tile{transition:none}}.course-tile-badges .badge{align-items:center;gap:var(--space-1);box-shadow:0 0 0 1px var(--surface)}.course-search{align-items:center;min-width:0;display:flex;position:relative}.course-search>svg{left:var(--space-3);color:var(--subtle);pointer-events:none;position:absolute}.course-search>input{width:100%;min-height:var(--control-md);padding-left:calc(var(--space-3) + 24px)}@media (max-width:767px){.course-search>input{min-height:var(--touch)}}.catalogue-toolbar{margin-bottom:var(--space-5)}.catalogue-toolbar .toolbar-bar{margin-bottom:0}.catalogue-filters-inline{gap:var(--space-3);flex-wrap:wrap;display:flex}.catalogue-filters-inline .field{align-items:center;gap:var(--space-2);flex-direction:row;margin:0}.catalogue-filters-inline .field>span{color:var(--muted);font:var(--type-label);white-space:nowrap}.catalogue-filters-button{display:none}.catalogue-count{margin:var(--space-2) 0 0;color:var(--muted);font:var(--type-secondary)}.catalogue-filters-sheet{gap:var(--space-4);flex-direction:column;display:flex}.catalogue-filters-sheet .field{margin:0}.catalogue-sheet-done{width:100%}@media (max-width:767px){.catalogue-filters-inline{display:none}.catalogue-filters-button{min-height:var(--touch);display:inline-flex}.catalogue-toolbar .toolbar-bar{flex-flow:row;align-items:center}.catalogue-toolbar .toolbar-search{flex:1 1 0;min-width:0}.catalogue-toolbar .toolbar-filters{flex:none;display:flex}}.emblem{--emblem-fg:var(--accent-emerald-fg);--emblem-box:36px;--emblem-label:var(--text-md);--emblem-ribbon:var(--text-2xs);align-items:center;gap:var(--space-2);min-width:0;display:inline-flex;position:relative}.emblem-sm{--emblem-box:26px;--emblem-label:var(--text-sm)}.emblem-lg{--emblem-box:48px;--emblem-label:var(--text-lg);--emblem-ribbon:var(--text-xs)}.emblem-xl{--emblem-box:64px;--emblem-label:var(--text-xl);--emblem-ribbon:var(--text-sm)}.emblem[data-tone=amber]{--emblem-fg:var(--accent-amber-fg)}.emblem[data-tone=purple]{--emblem-fg:var(--accent-purple-fg)}.emblem[data-tone=emerald]{--emblem-fg:var(--accent-emerald-fg)}.emblem[data-tone=rose]{--emblem-fg:var(--accent-rose-fg)}.emblem[data-tone=sky]{--emblem-fg:var(--accent-sky-fg)}.emblem[data-tone=blue]{--emblem-fg:var(--accent-blue-fg)}.emblem[data-tone=gold]{--emblem-fg:#ca8a04}:root[data-theme=dark] .emblem[data-tone=gold]{--emblem-fg:#facc15}.emblem[data-tone=custom]{--emblem-fg:var(--emblem-color)}:root[data-theme=dark] .emblem[data-tone=custom]{--emblem-fg:color-mix(in srgb, var(--emblem-color) 60%, var(--text))}.emblem-mark{width:var(--emblem-box);height:var(--emblem-box);border:1px solid color-mix(in srgb, var(--emblem-fg) 40%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--emblem-fg) 12%, transparent);color:var(--emblem-fg);box-shadow:var(--shadow-xs);flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.emblem-lg .emblem-mark,.emblem-xl .emblem-mark{border-radius:var(--radius-lg)}.emblem-ribbon{padding:1px var(--space-1);border-radius:var(--radius-xs);background:var(--emblem-fg);color:var(--on-primary);font-size:var(--emblem-ribbon);font-weight:var(--weight-bold);letter-spacing:.02em;white-space:nowrap;box-shadow:var(--shadow-sm);pointer-events:none;line-height:1.1;position:absolute;bottom:-4px;right:-4px}.emblem-label{min-width:0;font-size:var(--emblem-label);font-weight:var(--weight-semibold);color:var(--emblem-fg);overflow-wrap:anywhere}.my-courses-empty-actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.course-player{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.player-back{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--control-sm);color:var(--muted);font:var(--type-label);border-radius:var(--radius-md);text-decoration:none;display:inline-flex}.player-back:hover{color:var(--text)}.player-back:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.course-hero{gap:var(--space-6);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:auto minmax(0,1fr) minmax(240px,300px);align-items:center;display:grid}.course-hero-emblem{border-radius:var(--radius-lg);background:var(--tint);width:64px;height:64px;color:var(--primary);place-items:center;font-size:34px;line-height:1;display:grid}.course-hero-main{min-width:0}.course-hero-main .eyebrow{margin:0 0 var(--space-1);color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase}.course-hero-main h1{font:var(--type-page-title);overflow-wrap:anywhere;margin:0}.course-hero-lede{margin:var(--space-1) 0 0;max-width:62ch;color:var(--muted);font:var(--type-body)}.course-hero-facts{gap:var(--space-2) var(--space-5);margin:var(--space-3) 0 0;color:var(--muted);font:var(--type-secondary);flex-wrap:wrap;padding:0;list-style:none;display:flex}.course-hero-facts li{align-items:center;gap:var(--space-2);overflow-wrap:anywhere;min-width:0;display:inline-flex}.course-hero-facts svg{color:var(--subtle);flex:none}.course-hero-progress{gap:var(--space-2);padding-left:var(--space-6);border-left:1px solid var(--border);flex-direction:column;justify-content:center;align-self:stretch;display:flex}.course-hero-progress-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);font:var(--type-secondary);display:flex}.course-hero-progress-head strong{color:var(--text);font-size:var(--text-2xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.course-hero-progress progress{width:100%;margin:0}.course-hero-progress .button{width:100%;min-width:0;margin-top:var(--space-1);justify-content:center}.course-hero-cta-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.course-soon{gap:var(--space-8);padding:var(--space-8);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;display:grid}.course-soon-icon{border-radius:var(--radius-lg);background:var(--tint);width:52px;height:52px;color:var(--primary);margin-bottom:var(--space-4);place-items:center;display:grid}.course-soon-copy h2{margin:0 0 var(--space-2);font:var(--type-section-title)}.course-soon-copy p{font:var(--type-body);margin:0}.course-soon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.course-soon-tile{border:1px solid var(--border);border-radius:var(--radius-md,12px);background:var(--surface);min-height:44px;color:var(--text);transition:border-color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;text-decoration:none;display:grid}.course-soon-tile:hover{border-color:var(--border-strong);background:var(--surface-hover)}.course-soon-tile:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.course-soon-tile-icon{border-radius:var(--radius-md);background:var(--tint);width:40px;height:40px;color:var(--primary);place-items:center;display:grid}.course-soon-tile strong{font:var(--type-label);color:var(--text);display:block}.course-soon-tile small{color:var(--muted);font:var(--type-secondary);margin-top:2px;display:block}.course-player-layout{gap:var(--space-8);grid-template-columns:300px minmax(0,1fr);align-items:start;display:grid}.course-player-layout.is-collapsed{grid-template-columns:var(--control-md) minmax(0, 1fr)}.curriculum-panel,.curriculum-rail{top:calc(var(--topbar-h) + var(--space-4));position:sticky}.curriculum-panel{max-height:calc(100dvh - var(--topbar-h) - var(--space-8));overscroll-behavior:contain;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow-y:auto}.curriculum-rail .icon-button,.curriculum-head .icon-button{width:var(--control-md);min-height:var(--control-md);border:1px solid var(--border);background:var(--surface);color:var(--muted)}.curriculum-head .icon-button{width:var(--control-sm);min-height:var(--control-sm);border-color:#0000}.curriculum-rail .icon-button:hover,.curriculum-head .icon-button:hover{background:var(--surface-hover);color:var(--text)}.curriculum-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.curriculum-heading{font:var(--type-card-title);margin:0}.curriculum-progress{margin:var(--space-1) 0 var(--space-3);color:var(--muted);font:var(--type-secondary)}.curriculum-module{border-top:1px solid var(--border)}.curriculum-module>summary{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:var(--space-2) 0;cursor:pointer;font:var(--type-label);color:var(--text);list-style:none;display:flex}.curriculum-module>summary::-webkit-details-marker{display:none}.curriculum-module>summary:before{content:"";width:8px;height:8px;margin:0 var(--space-1) 0 2px;border-right:1.75px solid var(--subtle);border-bottom:1.75px solid var(--subtle);transition:transform var(--duration-fast) var(--ease-out);flex:none;transform:rotate(-45deg)}.curriculum-module[open]>summary:before{transform:rotate(45deg)}.curriculum-module-title{overflow-wrap:anywhere;flex:1;min-width:0}.curriculum-module>summary small{color:var(--muted);font:var(--type-secondary);font-variant-numeric:tabular-nums;flex:none}.curriculum-module>summary:focus-visible{outline:var(--focus-outline);outline-offset:calc(var(--focus-offset) * -1);border-radius:var(--radius-md)}.curriculum-lessons{margin:0 0 var(--space-2);padding:0;list-style:none}.curriculum-lesson{align-items:flex-start;gap:var(--space-3);width:100%;min-height:var(--touch);padding:var(--space-2);border-radius:var(--radius-md);color:var(--text);font:var(--type-body);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.curriculum-lesson:hover:not(.selected){background:var(--surface-hover)}.curriculum-lesson:focus-visible{outline:var(--focus-outline);outline-offset:calc(var(--focus-offset) * -1)}.curriculum-lesson.selected{background:var(--tint);color:var(--sage-text)}.curriculum-lesson-icon{color:var(--subtle);flex:none;margin-top:2px;display:inline-flex}.curriculum-lesson.selected .curriculum-lesson-icon{color:var(--primary)}.curriculum-lesson.is-done .curriculum-lesson-icon{color:var(--success)}.curriculum-lesson.is-locked{color:var(--muted)}.curriculum-lesson.is-locked .curriculum-lesson-text small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.curriculum-lesson-text{overflow-wrap:anywhere;min-width:0}.curriculum-lesson-text small{color:var(--muted);font:var(--type-secondary);margin-top:2px;display:block}.curriculum-toggle{display:none}.lesson-main{gap:var(--space-5);width:100%;max-width:var(--content-max-reading);flex-direction:column;min-width:0;display:flex}.course-player-layout.is-collapsed .lesson-main{justify-self:center}.lesson-anchor{height:0;scroll-margin-top:calc(var(--topbar-h) + var(--space-4))}.lesson-header{gap:var(--space-2);flex-direction:column;display:flex}.lesson-position{color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;margin:0}.lesson-title{font:var(--type-page-title);overflow-wrap:anywhere;margin:0}.lesson-description{color:var(--muted);font:var(--type-body-lg);overflow-wrap:anywhere;margin:0}.lesson-chips{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.lesson-chips .badge{align-items:center;gap:var(--space-1)}.lesson-block{min-width:0;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.lesson-block>h3,.lesson-block h3{margin:0 0 var(--space-2);font:var(--type-card-title)}.lesson-block-video{padding:0;overflow:hidden}.lesson-block-quiz{padding:var(--space-5)}.lesson-main>.lesson-content{color:var(--text);font:var(--type-body-lg);white-space:normal;margin:0}.lesson-main>.lesson-content p{margin:0 0 var(--space-4);white-space:pre-wrap}.lesson-main>.lesson-content p:last-child{margin-bottom:0}.resource-lesson{gap:var(--space-4);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.resource-lesson>.button{grid-column:2;justify-self:start}.resource-lesson p{font:var(--type-body);margin:0}.resource-lesson-icon,.locked-lesson-icon{border-radius:var(--radius-md);background:var(--tint);width:48px;height:48px;color:var(--primary);place-items:center;display:grid}.lesson-block-pgn .pgn-content{margin:0 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);font:var(--type-body);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.locked-lesson{align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.locked-lesson-icon{background:var(--raised);color:var(--muted)}.locked-lesson h2{font:var(--type-section-title);overflow-wrap:anywhere;margin:0}.locked-lesson p{font:var(--type-body);overflow-wrap:anywhere;margin:0}.lesson-tab{padding:var(--space-5) 0 0}.lesson-main .tabs{margin-bottom:0}.lesson-tab h3{margin:0 0 var(--space-2);font:var(--type-card-title)}.lesson-tab p{margin:0 0 var(--space-2);font:var(--type-body)}.lesson-tab textarea{width:100%;min-height:160px}.lesson-upnext{padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);flex-direction:column;gap:2px;display:flex}.lesson-upnext-label{color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase}.lesson-upnext strong{font:var(--type-label);font-size:var(--text-base);overflow-wrap:anywhere}.lesson-upnext small{align-items:center;gap:var(--space-1);color:var(--muted);font:var(--type-secondary);display:inline-flex}.lesson-upnext.is-finished{align-items:center;gap:var(--space-3);background:var(--success-bg);color:var(--text);flex-direction:row}.lesson-upnext.is-finished svg{color:var(--success);flex:none}.lesson-hint{margin:calc(var(--space-2) * -1) 0 0;color:var(--muted);font:var(--type-secondary)}.lesson-actions{z-index:var(--z-sticky);justify-content:space-between;gap:var(--space-3);margin:0 calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;position:sticky;bottom:0}.lesson-actions .button{min-width:0}.lesson-actions .button:last-child{flex:0 auto}.player-skel-back{width:120px;height:20px}.player-skel-hero{border-radius:var(--radius-lg);height:148px}.player-skel-toc{border-radius:var(--radius-lg);height:420px}.player-skel-title{width:60%;height:32px}.player-skel-line{width:80%}.player-skel-block{border-radius:var(--radius-lg);height:280px}@media (max-width:1279px){.course-hero{grid-template-columns:auto minmax(0,1fr)}.course-hero-progress{padding:var(--space-4) 0 0;border-left:0;border-top:1px solid var(--border);grid-column:1/-1}.course-soon{grid-template-columns:1fr}.course-player-layout{gap:var(--space-6);grid-template-columns:264px minmax(0,1fr)}}@media (max-width:1023px){.course-player-layout,.course-player-layout.is-collapsed{grid-template-columns:minmax(0,1fr)}.curriculum-panel,.curriculum-rail,.player-skel-toc{display:none}.curriculum-toggle{align-self:flex-start;display:inline-flex}.lesson-main{justify-self:center}}@media (max-width:767px){.course-player{gap:var(--space-4)}.course-hero{gap:var(--space-4);padding:var(--space-4);grid-template-columns:minmax(0,1fr)}.course-hero-emblem{display:none}.course-hero-main h1,.lesson-title{font-size:var(--text-2xl);line-height:1.4}.course-soon{padding:var(--space-5);gap:var(--space-5)}.course-soon-grid{grid-template-columns:1fr}.curriculum-toggle{min-height:var(--touch);justify-content:center;align-self:stretch}.lesson-block{padding:var(--space-4)}.lesson-block-video{padding:0}.resource-lesson{grid-template-columns:minmax(0,1fr)}.resource-lesson>.button{grid-column:1;justify-self:stretch}.lesson-actions{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));margin:0 calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4);background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-xs)}.lesson-actions .button{min-height:var(--touch);flex:1 1 0;justify-content:center}.lesson-actions .button:last-child{flex:2 1 0}}@media (prefers-reduced-motion:reduce){.course-soon-tile,.curriculum-module>summary:before{transition:none}}.assignment-status{display:inline-flex}.assignment-status .badge{align-items:center;gap:var(--space-1);white-space:nowrap}.assignment-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));display:grid}.assignment-card{gap:var(--space-2);min-width:0;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex}.assignment-card-top{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.assignment-card-score{font:var(--type-card-title);font-variant-numeric:tabular-nums}.assignment-card-title{font:var(--type-card-title);overflow-wrap:anywhere;margin:0}.assignment-card-meta{gap:0 var(--space-2);color:var(--muted);font:var(--type-secondary);flex-wrap:wrap;margin:0;display:flex}.assignment-card-meta>span+span:before{content:"·";margin-right:var(--space-2)}.assignment-card-text{color:var(--text);font:var(--type-body);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.assignment-card-note{align-items:flex-start;gap:var(--space-2);color:var(--muted);font:var(--type-secondary);margin:0;display:flex}.assignment-card-note svg{flex:none;margin-top:3px}.assignment-card-foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);flex-wrap:wrap;margin-top:auto;display:flex}.assignment-card-foot>.button:only-child{margin-left:auto}.assignment-due{align-items:center;gap:var(--space-1);color:var(--muted);font:var(--type-label);display:inline-flex}.assignment-due.is-late,.assignment-meta .is-late{color:var(--danger)}.assignment-card-skeleton{min-height:220px}.skel-badge{width:88px;height:22px}.skel-title{width:70%;height:20px}.skel-line.short{width:55%}.skel-button{width:150px;height:var(--control-md);border-radius:var(--radius-md);margin-top:auto;margin-left:auto}.assignment-detail{gap:var(--space-6);max-width:var(--content-max-reading,760px);display:grid}.assignment-back{justify-self:start;align-items:center;gap:var(--space-2);min-height:var(--control-sm);padding:0 var(--space-2);margin-left:calc(var(--space-2) * -1);border-radius:var(--radius-md);color:var(--muted);font:var(--type-button);cursor:pointer;background:0 0;border:0;display:inline-flex}.assignment-back:hover{background:var(--surface-hover);color:var(--text)}.assignment-detail-head{justify-items:start;gap:var(--space-2);display:grid}.assignment-detail-head h1{font:var(--type-page-title);overflow-wrap:anywhere;margin:0}.assignment-meta{gap:var(--space-2) var(--space-5);color:var(--muted);font:var(--type-secondary);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.assignment-meta li{align-items:center;gap:var(--space-2);display:inline-flex}.assignment-section{gap:var(--space-3);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid}.assignment-section>h2{font:var(--type-section-title);margin:0}.assignment-section .text-button{justify-self:start}.assignment-instructions{font:var(--type-body-lg);white-space:pre-line;overflow-wrap:anywhere;margin:0}.assignment-submitted-on{color:var(--muted);font:var(--type-secondary);margin:0}.assignment-well{padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);font:var(--type-body);white-space:pre-line;overflow-wrap:anywhere;margin:0}.assignment-feedback{gap:var(--space-3);display:grid}.assignment-feedback p{white-space:pre-line;margin:0}.assignment-score{align-items:baseline;gap:var(--space-2);display:inline-flex}.assignment-score strong{font-size:var(--text-3xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;line-height:1}.assignment-score span{color:var(--muted);font:var(--type-label)}.assignment-waiting,.assignment-blocked{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);color:var(--muted);font:var(--type-body);margin:0;display:flex}.assignment-waiting svg,.assignment-blocked svg{flex:none;margin-top:2px}.assignment-blocked{border:1px solid var(--border)}.assignment-form textarea{resize:vertical;min-height:160px}.assignment-submit-bar{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);display:flex}.assignment-activities{gap:var(--space-3);display:grid}.assignment-activity{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);display:grid}.assignment-activity h3{font:var(--type-card-title);margin:0}.assignment-activity>.button{justify-self:start}.assignment-activity-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;display:flex}.assignment-activity-req{color:var(--muted);font:var(--type-secondary)}.assignment-activity-state{align-items:center;gap:var(--space-1);color:var(--muted);font:var(--type-label);margin:0;display:inline-flex}.assignment-activity-state.is-done{color:var(--success)}.assignment-activity-prompt{font:var(--type-body);white-space:pre-line;margin:0}.assignment-activity-pgn{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font:var(--type-secondary);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}@media (max-width:767px){.assignment-card{padding:var(--space-4)}.assignment-card-foot>.button{min-height:var(--touch);flex:100%;justify-content:center}.assignment-detail{gap:var(--space-4)}.assignment-detail-head h1{font-size:var(--text-xl);line-height:28px}.assignment-section{padding:var(--space-4)}.assignment-back{min-height:var(--touch)}.assignment-submit-bar{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:var(--z-sticky);margin:0 calc(var(--space-4) * -1) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-xs);position:sticky}.assignment-submit-bar .button{min-height:var(--touch);flex:1 1 0;justify-content:center}}.teach-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.assignment-composer{margin-bottom:var(--space-6);padding:var(--space-6)}.assignment-composer-form{gap:var(--space-6);display:grid}.assignment-composer-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.assignment-composer-head h2{font:var(--type-section-title);margin:0}.assignment-composer-head p{margin:var(--space-1) 0 0;color:var(--muted);font:var(--type-secondary)}.assignment-composer-head .button{flex:none}.assignment-fieldset{gap:var(--space-4);min-width:0;padding:var(--space-6) 0 0;border:0;border-top:1px solid var(--border);margin:0;display:grid}.assignment-fieldset>legend{float:left;width:100%;margin:0 0 var(--space-1);font:var(--type-card-title);padding:0}.assignment-fieldset>legend+*{clear:both}.assignment-fieldset .field,.assignment-fieldset .checkbox{margin:0}.assignment-fieldset select[multiple]{min-height:120px}.assignment-fieldset-hint{color:var(--muted);font:var(--type-secondary);margin:0}.assignment-fieldset .button-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.assignment-activity-editor{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised);display:grid}.assignment-remove{justify-self:start;align-items:center;gap:var(--space-1);color:var(--danger);display:inline-flex}.assignment-add-activity{justify-self:start}.assignment-weekdays{gap:var(--space-2) var(--space-4);border:0;flex-wrap:wrap;min-width:0;margin:0;padding:0;display:flex}.assignment-weekdays>legend{margin-bottom:var(--space-2);font:var(--type-label);padding:0}.assignment-weekdays .checkbox{margin:0}.assignment-weekdays .field{flex-basis:100%}.assignment-saved{color:var(--success);font:var(--type-label);margin:0}.assignment-form-actions{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.teach-list{margin:0;padding:0;list-style:none;overflow:hidden}.teach-row{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);grid-template-columns:minmax(0,2.2fr) minmax(0,1.4fr) minmax(0,.9fr) minmax(0,1.3fr);display:grid}.teach-row+.teach-row{border-top:1px solid var(--border)}.teach-row-main{min-width:0}.teach-row-title{font:var(--type-card-title);overflow-wrap:anywhere;margin:0}.teach-row-text{color:var(--muted);font:var(--type-secondary);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;overflow:hidden}.teach-row-meta{color:var(--muted);font:var(--type-secondary);margin:0;display:grid}.teach-row-meta span:first-child{color:var(--text)}.teach-row-count{color:var(--muted);font:var(--type-secondary);margin:0}.teach-row-count strong{color:var(--text);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.teach-row-status{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.teach-row-skeleton{grid-template-columns:2fr 1fr 1fr}.teach-row-skeleton .skeleton-bar{height:18px}.review-bulk-bar{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-6);margin-bottom:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-wrap:wrap;display:flex}.review-bulk-bar:not(.has-selection){justify-content:flex-start;align-items:center}.review-bulk-bar>.checkbox{min-height:var(--control-md);font:var(--type-label);margin:0}.review-bulk-bar>.checkbox>input{align-self:center;margin-top:0}.review-bulk-hint{color:var(--muted);font:var(--type-secondary);margin:0}.review-bulk-score{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.review-bulk-score .field{margin:0}.review-bulk-score input{width:120px}.review-bulk-bar>.error,.review-bulk-bar>[role=alert]{flex-basis:100%}.review-list{gap:var(--space-4);display:grid}.review-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0}.review-item-head{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);display:flex}.review-item-select{width:18px;height:18px;accent-color:var(--primary);flex:none;margin:3px 0 0}.review-item-who{flex:1;min-width:0}.review-item-who h2{font:var(--type-card-title);margin:0}.review-item-who p{color:var(--muted);font:var(--type-secondary);overflow-wrap:anywhere;margin:2px 0 0}.review-item-badges{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.review-item-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.review-item-work,.review-item-grade{align-content:start;gap:var(--space-3);min-width:0;padding:var(--space-5);display:grid}.review-item-grade{border-left:1px solid var(--border)}.review-item-work>h3{font:var(--type-label);color:var(--muted);margin:0}.review-item-work .assignment-activity h3{font:var(--type-label)}.review-result{gap:var(--space-3);display:grid}.review-result p{white-space:pre-line;margin:0}@media (min-width:1280px){.review-item-work{top:calc(var(--topbar-h) + var(--space-4));align-self:start;position:sticky}}@media (max-width:1279px){.review-item-body{grid-template-columns:minmax(0,1fr)}.review-item-grade{border-left:0;border-top:1px solid var(--border)}}@media (max-width:1023px){.teach-row{gap:var(--space-2) var(--space-4);grid-template-columns:minmax(0,1fr) auto}.teach-row-main{grid-column:1/-1}.teach-row-meta{gap:0 var(--space-2);flex-wrap:wrap;display:flex}.teach-row-meta span+span:before{content:"·";margin-right:var(--space-2)}.teach-row-count{grid-column:1}.teach-row-status{grid-area:2/2/span 2}}@media (max-width:767px){.teach-actions{width:100%}.teach-actions .button{min-height:var(--touch);flex:auto}.assignment-composer{padding:var(--space-4)}.assignment-composer-form{gap:var(--space-5)}.assignment-fieldset{padding-top:var(--space-5)}.assignment-form-actions .button{min-height:var(--touch);flex:auto}.teach-row{padding:var(--space-4);grid-template-columns:minmax(0,1fr)}.teach-row-text{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.teach-row-status{grid-area:auto/1;justify-content:space-between}.teach-row-status .button{min-height:var(--touch)}.review-bulk-bar{padding:var(--space-3) var(--space-4);gap:var(--space-2) var(--space-4)}.review-bulk-bar.has-selection{z-index:var(--z-sticky);top:calc(var(--topbar-h) + var(--space-2));box-shadow:var(--shadow-xs);position:sticky}.review-bulk-bar>.checkbox{min-height:var(--touch)}.review-bulk-score{flex-wrap:nowrap;width:100%}.review-bulk-score .field{flex:0 0 112px}.review-bulk-score input{width:100%}.review-bulk-score .button{min-height:var(--touch);flex:auto}.review-item-head{padding:var(--space-4);flex-wrap:wrap}.review-item-badges{padding-left:calc(18px + var(--space-3));flex-basis:100%;justify-content:flex-start}.review-item-work,.review-item-grade{padding:var(--space-4)}}.lb{gap:var(--space-5);min-width:0;display:grid}.lb .page-title{margin-bottom:0}.lb-controls{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.lb-controls .segmented{align-self:flex-end}.lb-controls .segmented-item{justify-content:center;align-items:center;gap:var(--space-2);min-height:calc(var(--control-md) - 8px);display:inline-flex}.lb-filters{gap:var(--space-3);flex-wrap:wrap;display:flex}.lb-filters .field{gap:var(--space-1);min-width:160px;margin:0;display:grid}.lb-filters .field>span{font:var(--type-label);color:var(--muted)}.lb-filters select{height:var(--control-md);min-height:var(--control-md)}.lb-summary{font:var(--type-body);color:var(--muted);margin:0}.lb-summary strong{color:var(--text);font-weight:var(--weight-semibold)}.lb-privacy{align-items:center;gap:var(--space-2);font:var(--type-secondary);color:var(--muted);margin:0;display:flex}.lb-privacy svg{flex-shrink:0}.lb-avatar{border-radius:var(--radius-full);background:var(--raised);width:36px;height:36px;color:var(--muted);font:var(--type-label);font-weight:var(--weight-semibold);flex-shrink:0;place-items:center;display:inline-grid}.lb-avatar-lg{width:48px;height:48px;font:var(--type-card-title)}[aria-current=true]>.lb-avatar{background:var(--primary);color:var(--on-primary)}.lb-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lb-you{height:20px;padding:0 var(--space-2);border-radius:var(--radius-xs);background:var(--tint);color:var(--primary);font:var(--type-caption);flex-shrink:0;align-items:center;display:inline-flex}.lb-score{font:var(--type-card-title);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.lb-score-unit{font:var(--type-caption);color:var(--muted)}.lb-podium{align-items:end;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.lb-podium-place{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-5) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;flex-direction:column;display:flex}.lb-podium-1{padding-top:var(--space-8);padding-bottom:var(--space-6);border-color:var(--border-strong);order:2}.lb-podium-2{order:1}.lb-podium-3{order:3}.lb-podium-place[aria-current=true]{background:var(--tint);border-color:var(--primary)}.lb-podium-medal{align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);font:var(--type-label);font-weight:var(--weight-semibold);display:inline-flex}.lb-podium-1 .lb-podium-medal{background:var(--primary);color:var(--on-primary)}.lb-podium-name{justify-content:center;align-items:center;gap:var(--space-2);max-width:100%;font:var(--type-label);font-weight:var(--weight-semibold);color:var(--text);display:flex}.lb-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin:0;padding:0;list-style:none;overflow:hidden}.lb-row{align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--space-5);grid-template-columns:40px 36px minmax(0,1fr) auto;display:grid}.lb-row+.lb-row{border-top:1px solid var(--border)}.lb-row[aria-current=true]{background:var(--tint)}.lb-rank{font:var(--type-label);font-variant-numeric:tabular-nums;color:var(--muted)}.lb-who{align-items:center;gap:var(--space-3);min-width:0;display:flex}.lb-name{align-items:center;gap:var(--space-2);min-width:0;font:var(--type-body);font-weight:var(--weight-medium);color:var(--text);display:flex}.lb-meta{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.lb-emblem{object-fit:contain;width:20px;height:20px}.lb-skeleton{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.lb-skeleton-row{align-items:center;gap:var(--space-3);height:56px;padding:0 var(--space-5);grid-template-columns:40px 36px minmax(0,1fr) 64px;display:grid}.lb-skeleton-row+.lb-skeleton-row{border-top:1px solid var(--border)}.lb-skel{border-radius:var(--radius-xs);background:var(--raised);height:12px;animation:lb-pulse 1.4s var(--ease-in-out) infinite;display:block}.lb-skel-rank{width:24px}.lb-skel-avatar{border-radius:var(--radius-full);width:36px;height:36px}.lb-skel-name{width:min(180px,70%)}@keyframes lb-pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.lb-skel{animation:none}}@media (max-width:1023px){.lb-controls{flex-direction:column;align-items:stretch}.lb-controls .segmented{align-self:flex-start}.lb-filters .field{flex:160px}}@media (max-width:767px){.lb{gap:var(--space-4)}.lb-controls .segmented{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-self:stretch;display:grid}.lb-controls .segmented-item{min-height:calc(var(--touch) - 8px);padding-inline:var(--space-2)}.lb-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lb-filters .field{min-width:0}.lb-filters .field:first-child:nth-last-child(3){grid-column:1/-1}.lb-filters select{height:var(--touch);min-height:var(--touch)}.lb-podium{gap:var(--space-2)}.lb-podium-place{padding:var(--space-4) var(--space-2)}.lb-podium-1{padding-top:var(--space-6)}.lb-podium-name{gap:var(--space-1);flex-direction:column}.lb-row{padding:var(--space-2) var(--space-4);grid-template-columns:32px 36px minmax(0,1fr) auto;min-height:64px}.lb-who{align-items:flex-start;gap:var(--space-1);flex-direction:column}.lb-name{max-width:100%}}@media (max-width:419px){.lb-controls .segmented-item{white-space:normal;line-height:var(--leading-tight);text-align:center}.lb-controls .segmented-item svg{display:none}}.payments-page{min-width:0;max-width:100%}.payments-page :is(h2,h3,h4,p,small,td),.checkout-line-item span:first-child{overflow-wrap:anywhere;min-width:0}.payments-page :is(h2,h3):focus{outline:none}.payments-page :is(h2,h3):focus-visible{outline:var(--focus-outline);outline-offset:4px;border-radius:var(--radius-xs)}.payments-page :is(section[id],h2,h3){scroll-margin-top:calc(var(--topbar-h) + var(--space-4))}.pay-section{margin-top:var(--space-10)}.pay-section-head{gap:var(--space-1);margin-bottom:var(--space-4);display:grid}.pay-section-head h2{font:var(--type-section-title);margin:0}.pay-section-head p{font:var(--type-secondary);color:var(--muted);margin:0}.pay-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;overflow:hidden}.pay-card-pad{padding:var(--space-5)}.pay-card .empty{min-height:0;padding:var(--space-10) var(--space-6)}.pay-overline{font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--muted);margin:0}.pay-alert{align-items:flex-start;gap:var(--space-3);margin:var(--space-6) 0 0;padding:var(--space-4);border:1px solid var(--info-border);border-radius:var(--radius-lg);background:var(--info-bg);color:var(--text);font:var(--type-body);display:flex}.pay-section .pay-alert{margin:0 0 var(--space-4)}.pay-alert>svg{color:var(--info);flex:none;margin-top:1px}.pay-alert p{margin:0}.pay-alert strong{font-weight:var(--weight-semibold);margin-bottom:2px;display:block}.pay-alert[data-tone=warning]{border-color:var(--warning-border);background:var(--warning-bg)}.pay-alert[data-tone=warning]>svg{color:var(--warning)}.pay-alert a,.payments-status a:not(.button){color:inherit;font-weight:var(--weight-semibold);text-underline-offset:2px;text-decoration:underline}.payments-status{align-items:flex-start;gap:var(--space-4);margin-top:var(--space-6);padding:var(--space-5) var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex}.payments-status-icon{border-radius:var(--radius-full);background:var(--raised);width:40px;height:40px;color:var(--muted);flex:none;place-items:center;display:grid}.payments-status[data-tone=success]{border-color:var(--success-border)}.payments-status[data-tone=success] .payments-status-icon{background:var(--success-bg);color:var(--success)}.payments-status[data-tone=warning]{border-color:var(--warning-border)}.payments-status[data-tone=warning] .payments-status-icon{background:var(--warning-bg);color:var(--warning)}.payments-status[data-tone=danger]{border-color:var(--danger-border)}.payments-status[data-tone=danger] .payments-status-icon{background:var(--danger-bg);color:var(--danger)}.payments-status[data-tone=info] .payments-status-icon{background:var(--info-bg);color:var(--info)}.payments-status-main{gap:var(--space-2);flex:1;min-width:0;display:grid}.payments-status h2{font:var(--type-section-title);margin:0}.payments-status-body{gap:var(--space-2);font:var(--type-body);color:var(--muted);display:grid}.payments-status-body p{margin:0}.payments-status-body strong{color:var(--text)}.pay-status-hold,.pay-status-next{align-items:flex-start;gap:var(--space-2);font:var(--type-secondary);display:flex}.pay-status-hold>svg,.pay-status-next>svg{flex:none;margin-top:2px}.pay-status-hold strong{font-variant-numeric:tabular-nums}.payments-status .button-row{margin-top:var(--space-2);gap:var(--space-3)}.payments-status .button{min-height:var(--control-md)}.payments-spinner{border-radius:var(--radius-full);border:2px solid var(--border-strong);border-top-color:var(--info);flex:none;width:20px;height:20px;animation:.9s linear infinite payments-spin}@keyframes payments-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.payments-spinner{border-top-color:var(--border-strong);animation:none}}.pay-due-list{margin:0;padding:0;list-style:none}.pay-due{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto;display:grid}.pay-due:last-child{border-bottom:0}.pay-due-icon,.pay-clear-icon{border-radius:var(--radius-full);background:var(--raised);width:40px;height:40px;color:var(--muted);flex:none;place-items:center;display:grid}.pay-due[data-overdue] .pay-due-icon{background:var(--danger-bg);color:var(--danger)}.pay-due-main strong{font:var(--type-card-title);font-variant-numeric:tabular-nums;display:block}.pay-due-main small{font:var(--type-secondary);color:var(--muted);display:block}.pay-due-action{min-height:var(--control-md)}.pay-due-note{font:var(--type-secondary);color:var(--muted)}.pay-due-note a{color:var(--primary);font-weight:var(--weight-medium)}.pay-clear{align-items:flex-start;gap:var(--space-4);padding:var(--space-5);display:flex}.pay-clear-icon{background:var(--success-bg);color:var(--success)}.pay-clear h3{font:var(--type-card-title);margin:0}.pay-clear p{font:var(--type-secondary);color:var(--muted);max-width:60ch;margin:2px 0 0}.payments-plan-grid,.pay-plan-skeleton .card-skeleton{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));display:grid}.pay-plan-skeleton .card-skeleton>span{height:288px}.pay-plan{min-width:0;padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--duration-fast) var(--ease-out);flex-direction:column;display:flex}.pay-plan:hover{border-color:var(--border-strong)}.pay-plan[data-selected]{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.pay-plan-title{margin:var(--space-2) 0 0;font:var(--type-card-title)}.pay-plan-price{align-items:baseline;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.pay-plan-price strong{font-size:var(--text-4xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}.pay-plan-price span{font:var(--type-secondary);color:var(--muted)}.pay-plan-tax{margin:var(--space-1) 0 0;font:var(--type-caption);color:var(--muted)}.pay-plan-desc{margin:var(--space-4) 0 0;padding-top:var(--space-4);border-top:1px solid var(--border);font:var(--type-body);color:var(--muted)}.pay-plan-includes{margin-top:var(--space-4)}.pay-plan-includes p{margin:0 0 var(--space-2);font:var(--type-label)}.pay-plan-includes ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.pay-plan-includes li{align-items:flex-start;gap:var(--space-2);font:var(--type-secondary);color:var(--muted);font-variant-numeric:tabular-nums;display:flex}.pay-plan-includes li>svg{color:var(--primary);flex:none;margin-top:2px}.pay-plan-action{padding-top:var(--space-5);margin-top:auto}.pay-plan-cta{width:100%;min-height:var(--control-md)}.pay-plan-cta.is-selected,.pay-plan-cta.is-selected:hover:where(:not(:disabled)){border-color:var(--primary);background:var(--tint);color:var(--primary)}.pay-plans-locked{align-items:center;gap:var(--space-2);margin:0 0 var(--space-4);font:var(--type-secondary);color:var(--muted);display:flex}.pay-plans-locked>svg{flex:none}.checkout-form{min-width:0;margin-top:var(--space-6);padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.pay-checkout-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--border);display:flex}.pay-checkout-head>div{min-width:0}.pay-checkout-head h3{margin:var(--space-1) 0 0;font:var(--type-section-title)}.pay-checkout-close{min-height:var(--control-md);flex:none}.pay-checkout{align-items:start;gap:var(--space-8);grid-template-columns:minmax(0,1fr) minmax(300px,360px);display:grid}.pay-checkout-fields{gap:var(--space-8);min-width:0;display:grid}.pay-fieldset{gap:var(--space-4);border:0;min-width:0;margin:0;padding:0;display:grid}.pay-fieldset-title{font:var(--type-card-title);margin:0;padding:0}legend.pay-fieldset-title{margin-bottom:var(--space-4)}.payments-page .field{gap:var(--space-2);margin:0}.payments-page .field>span{font:var(--type-label)}.checkout-form .field :is(input,select,textarea){width:100%;max-width:100%}.pay-field-pair{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));display:grid}.checkout-batch-note:empty{display:none}.checkout-batch-note{font:var(--type-secondary)}.checkout-batch-note .pay-alert{margin:0}.pay-checkout-aside{top:calc(var(--topbar-h) + var(--space-4));gap:var(--space-4);min-width:0;display:grid;position:sticky}.checkout-summary-card{padding:var(--space-4);border-radius:var(--radius-md);background:var(--raised)}.checkout-summary-card h4{margin:0 0 var(--space-2);font:var(--type-label)}.checkout-line-item{justify-content:space-between;gap:var(--space-3);padding:var(--space-1) 0;font:var(--type-secondary);color:var(--muted);display:flex}.checkout-line-item span:last-child,.checkout-total-row span:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.checkout-line-item span:last-child{color:var(--text)}.checkout-total-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border);font:var(--type-label);display:flex}.checkout-total-row span:last-child{font-size:var(--text-xl);font-weight:var(--weight-bold)}.checkout-schedule{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--border-strong);font:var(--type-secondary);color:var(--muted)}.checkout-schedule strong{margin-bottom:var(--space-1);font:var(--type-label);color:var(--text);display:block}.checkout-schedule ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.checkout-schedule li{justify-content:space-between;gap:var(--space-3);font-variant-numeric:tabular-nums;display:flex}.checkout-tax-note{margin:var(--space-3) 0 0;font:var(--type-caption);font-weight:var(--weight-regular);color:var(--muted)}.checkout-legal{font:var(--type-secondary);color:var(--muted)}.checkout-legal p{margin:0}.checkout-legal p:first-child{font:var(--type-label);color:var(--text);margin-bottom:2px}.checkout-legal a{color:inherit;text-underline-offset:2px;text-decoration:underline}.checkout-terms{align-items:flex-start;gap:var(--space-3);min-height:var(--touch);font:var(--type-secondary);color:var(--text);cursor:pointer;display:flex}.checkout-terms input{width:18px;height:18px;accent-color:var(--primary);flex:none;margin:1px 0 0}.checkout-hint{margin-top:calc(-1 * var(--space-3));font:var(--type-caption);color:var(--muted);display:block}.pay-checkout-aside>.field-error{margin-top:calc(-1 * var(--space-3))}.checkout-paybar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.checkout-paybar-total{line-height:var(--leading-tight);display:none}.checkout-paybar-total small{font:var(--type-caption);color:var(--muted)}.checkout-paybar-total strong{font-size:var(--text-xl);font-variant-numeric:tabular-nums;white-space:nowrap}.checkout-paybar .button{min-height:var(--control-lg);flex:auto}.checkout-secondary{gap:var(--space-2);display:grid}.checkout-secondary .button{width:100%;min-height:var(--control-md)}.checkout-secondary p{font:var(--type-caption);font-weight:var(--weight-regular);color:var(--muted);text-align:center;margin:0}.pay-trust{gap:var(--space-2);padding:var(--space-4) 0 0;border-top:1px solid var(--border);margin:0;list-style:none;display:grid}.pay-trust li{align-items:flex-start;gap:var(--space-2);font:var(--type-secondary);color:var(--muted);display:flex}.pay-trust li>svg{flex:none;margin-top:2px}.pay-trust a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.pay-table{border-collapse:collapse;width:100%;font:var(--type-body)}.pay-table th{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);font:var(--type-caption);color:var(--muted);text-align:left;white-space:nowrap}.pay-table td{height:56px;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);vertical-align:middle}.pay-table tbody tr:last-child td{border-bottom:0}.pay-table tbody tr:hover{background:var(--surface-hover)}.pay-table .pay-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.pay-cell-title strong{font-weight:var(--weight-medium);display:block}.payments-list-row-note{font:var(--type-secondary);color:var(--muted);margin-top:2px;display:block}.pay-cell-date{white-space:nowrap;color:var(--muted)}.pay-cell-status{white-space:nowrap}.pay-cell-action{text-align:right;white-space:nowrap;width:1%}.pay-cell-action .button{min-height:var(--control-sm);padding-inline:var(--space-3)}@media (max-width:1023px){.pay-checkout{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}.pay-checkout-aside{display:contents}.checkout-summary-card{order:-1}.checkout-paybar{z-index:var(--z-sticky);margin:0 calc(-1 * var(--space-6));padding:var(--space-3) var(--space-6);background:var(--surface);border-top:1px solid var(--border);box-shadow:var(--shadow-sm);position:sticky;bottom:0}.checkout-paybar-total{display:grid}.checkout-paybar .button{flex:0 auto;min-width:200px}.checkout-hint,.pay-checkout>.field-error{margin-top:calc(-1 * var(--space-4))}}@media (max-width:767px){.pay-section{margin-top:var(--space-8)}.payments-status{gap:var(--space-3);padding:var(--space-4)}.payments-status-icon{width:36px;height:36px}.payments-status h2{font:var(--type-card-title)}.payments-status .button-row .button{min-height:var(--touch);flex:100%}.pay-due{gap:var(--space-2) var(--space-3);padding:var(--space-4);grid-template-columns:auto minmax(0,1fr) auto}.pay-due-action,.pay-due-note{grid-column:1/-1}.pay-due-action{width:100%;min-height:var(--touch);margin-top:var(--space-2)}.pay-clear{padding:var(--space-4);gap:var(--space-3)}.payments-plan-grid{gap:var(--space-3)}.pay-plan{padding:var(--space-5)}.pay-plan-price strong{font-size:var(--text-3xl)}.pay-plan-cta{min-height:var(--touch)}.checkout-form{padding:var(--space-4)}.pay-checkout-head{margin-bottom:var(--space-5);padding-bottom:var(--space-4)}.pay-checkout-close,.checkout-form .field :is(input,select){min-height:var(--touch)}.checkout-paybar{bottom:calc(max(var(--tabbar-h), 68px) + env(safe-area-inset-bottom));margin:0 calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4)}.checkout-paybar .button{min-width:0;min-height:var(--touch);flex:auto}.checkout-secondary .button{min-height:var(--touch)}.pay-table,.pay-table tbody,.pay-table td{display:block}.pay-table thead{display:none}.pay-table tr{align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;display:grid}.pay-table tbody tr:last-child{border-bottom:0}.pay-table td{border:0;height:auto;padding:0}.pay-cell-title{grid-area:1/1}.pay-table .pay-cell-amount{font-weight:var(--weight-semibold);grid-area:1/2;align-self:start}.pay-cell-date{font:var(--type-secondary);grid-area:2/1}.pay-cell-status{grid-area:2/2;justify-self:end}.pay-cell-action{width:auto;margin-top:var(--space-2);grid-column:1/-1}.pay-cell-action .button{width:100%;min-height:var(--touch)}}.live-sessions-page{flex-direction:column;min-width:0;display:flex}.live-tab{align-items:center;gap:var(--space-2);display:inline-flex}.tab-label-badge{min-width:20px;height:20px;padding:0 var(--space-1);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);font:var(--type-caption);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex}[role=tab][aria-selected=true] .tab-label-badge{background:var(--tint);color:var(--primary)}.live-search{align-items:center;display:flex;position:relative}.live-search-icon{left:var(--space-3);color:var(--subtle);pointer-events:none;position:absolute}.live-search input{width:100%;padding-left:calc(var(--space-3) + var(--icon-sm) + var(--space-2))}.live-filter-select{width:auto;min-width:150px}.live-schedule{gap:var(--space-8);flex-direction:column;display:flex}.live-day-title{margin:0 0 var(--space-3);color:var(--muted);font:var(--type-caption);letter-spacing:var(--tracking-overline);text-transform:uppercase}.live-day-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.live-day--now .live-day-title{color:var(--primary)}.live-day--now .live-day-list{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:color-mix(in srgb, var(--tint) 60%, var(--surface))}.live-session-card{gap:var(--space-2) var(--space-6);padding:var(--space-5) var(--space-6);grid-template-columns:88px minmax(0,1fr) auto;align-items:start;display:grid}.live-session-card+.live-session-card{border-top:1px solid var(--border)}.live-session-when{gap:var(--space-1);flex-direction:column;padding-top:2px;display:flex}.live-session-time{color:var(--text);font:var(--type-label);font-weight:var(--weight-semibold);white-space:nowrap}.live-session-length{color:var(--muted);font:var(--type-secondary)}.live-session-main{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.live-session-status{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);flex-wrap:wrap;display:flex}.live-session-title{color:var(--text);font:var(--type-card-title);overflow-wrap:anywhere;margin:0}.live-session-card--active .live-session-title{font:var(--type-section-title)}.live-session-meta{align-items:center;gap:var(--space-1) var(--space-2);color:var(--muted);font:var(--type-secondary);flex-wrap:wrap;margin:0;display:flex}.live-session-meta>span:not(:last-child):after{content:"·";margin-left:var(--space-2);color:var(--subtle)}.live-session-batch{align-items:center;gap:var(--space-1);display:inline-flex}.live-session-batch svg{flex:none}.live-session-desc{max-width:68ch;margin:var(--space-1) 0 0;color:var(--muted);font:var(--type-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.live-session-link{align-items:center;gap:var(--space-1);width:-moz-fit-content;width:fit-content;margin-top:var(--space-2);color:var(--primary);font:var(--type-label);display:inline-flex}.live-session-link:hover{text-underline-offset:3px;text-decoration:underline}.live-session-wait{margin:var(--space-1) 0 0;color:var(--muted);font:var(--type-secondary)}.live-session-card--past .live-session-title{color:var(--muted)}.live-session-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;max-width:420px;display:flex}@media (min-width:1280px){.live-session-actions{flex-wrap:nowrap;max-width:none}}.live-session-actions:empty{display:none}.live-status{align-items:center;gap:var(--space-1);height:22px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--raised);color:var(--muted);font:var(--type-caption);white-space:nowrap;display:inline-flex}.live-status svg{flex:none}.live-status--live{border-color:var(--success-border);background:var(--success-bg);color:var(--success)}.live-status--soon{border-color:var(--info-border);background:var(--info-bg);color:var(--info)}.live-status--warn{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning)}.live-status--cancelled{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.live-status .live-status-dot{border-radius:var(--radius-full);width:6px;height:6px;animation:liveListPulse 1.8s var(--ease-in-out) infinite;background:currentColor}@keyframes liveListPulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.live-status .live-status-dot{animation:none}}.live-countdown{color:var(--muted);font:var(--type-secondary);font-variant-numeric:tabular-nums}.live-session-card--active .live-countdown,.live-session-card--lead .live-countdown{color:var(--text);font-weight:var(--weight-medium)}.live-skeleton{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.live-skeleton-row{gap:var(--space-6);padding:var(--space-6);grid-template-columns:88px minmax(0,1fr) 160px;align-items:center;display:grid}.live-skeleton-row+.live-skeleton-row{border-top:1px solid var(--border)}.live-skeleton-row .skeleton-bar{width:100%;height:14px}.live-skeleton-row .skeleton-bar:nth-child(2){max-width:420px;height:18px}.live-skeleton-row .skeleton-bar:nth-child(3){height:var(--control-md);border-radius:var(--radius-md)}.live-empty-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-12) var(--space-6);text-align:center}.live-empty-actions{margin-top:var(--space-4);justify-content:center}.live-schedule-form{gap:var(--space-4);flex-direction:column;display:flex}.live-schedule-form .field{margin:0}.live-schedule-row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.live-duration{align-items:center;gap:var(--space-2);margin-top:calc(var(--space-2) * -1);flex-wrap:wrap;display:flex}.live-duration-label{margin-right:var(--space-1);color:var(--muted);font:var(--type-label)}.live-duration-chip{height:var(--control-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font:var(--type-label);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);align-items:center;display:inline-flex}.live-duration-chip:hover:where(:not(:disabled)){background:var(--surface-hover)}.live-duration-chip[aria-pressed=true]{border-color:var(--primary);background:var(--tint);color:var(--primary)}.live-duration-chip:disabled{opacity:.5;cursor:not-allowed}.live-duration-chip:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.live-schedule-suffix{align-items:center;gap:var(--space-2);color:var(--muted);font:var(--type-body);display:inline-flex}.live-schedule-suffix input{width:96px}.live-schedule-hint{color:var(--muted);font:var(--type-secondary);margin:0}.live-day-list{container-type:inline-size}@container (width<=820px){.live-session-card{grid-template-columns:72px minmax(0,1fr)}.live-session-actions{max-width:none;margin-top:var(--space-2);grid-column:2;justify-content:flex-start}@media (min-width:768px){.live-session-actions>.button.ghost:first-child{margin-inline-start:calc(var(--space-4) * -1)}}}@media (max-width:767px){.live-schedule{gap:var(--space-6)}.live-session-card{align-items:stretch;gap:var(--space-2);padding:var(--space-4);flex-direction:column;display:flex}.live-session-when{gap:var(--space-2);flex-direction:row;padding:0}.live-session-when>*+:before{content:"·";margin-right:var(--space-2);color:var(--subtle)}.live-session-card--active .live-session-title{font:var(--type-card-title)}.live-session-range{display:none}.live-session-actions{margin-top:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.live-session-actions>.button:not(.ghost),.live-session-actions>:only-child{grid-column:1/-1}.live-session-actions>.button{min-height:var(--touch)}.live-skeleton-row{gap:var(--space-3);padding:var(--space-4);grid-template-columns:1fr}.live-empty-panel{padding:var(--space-8) var(--space-4)}.live-filter-select{flex:140px;min-width:0}.live-schedule-row{grid-template-columns:minmax(0,1fr)}.live-duration-chip,.live-session-link{min-height:var(--touch)}}.notification-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.notification-count,.notification-chip-count{min-width:20px;height:20px;padding:0 var(--space-1);margin-left:var(--space-2);border-radius:var(--radius-full);background:var(--primary);color:var(--on-primary);font:var(--type-caption);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex}.notification-filters{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:minmax(0,1fr);display:grid}.notification-chips{gap:var(--space-2);flex-wrap:wrap;display:flex;position:relative}.notification-chips button{min-height:var(--control-sm);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--muted);font:var(--type-label);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);align-items:center;display:inline-flex}.notification-chips button:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text)}.notification-chips button[aria-pressed=true]{border-color:var(--primary);background:var(--tint);color:var(--text);font-weight:var(--weight-semibold)}.notification-chips button:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.updates-toolbar{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.updates-toolbar-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.notification-unread-toggle .checkbox,.notification-quiet-toggle .checkbox{min-height:var(--control-md);font:var(--type-label);color:var(--text);cursor:pointer;margin:0}.notification-unread-toggle .checkbox>input,.notification-quiet-toggle .checkbox>input{align-self:center;margin-top:0}.notification-groups{gap:var(--space-6);display:grid}.notification-swipe{position:relative;overflow:hidden}.notification-swipe+.notification-swipe{border-top:1px solid var(--border)}.notification-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-6);background:var(--surface);touch-action:pan-y;will-change:transform;display:flex;position:relative}.notification-row.unread{background:color-mix(in srgb, var(--primary) 4%, var(--surface))}.notification-unread-dot{top:calc(var(--space-4) + 14px);left:var(--space-2);border-radius:var(--radius-full);background:var(--primary);width:8px;height:8px;position:absolute}.notification-icon{border-radius:var(--radius-full);background:var(--raised);width:36px;height:36px;color:var(--muted);flex:none;place-items:center;display:grid}.notification-row.unread .notification-icon{color:var(--text)}.notification-link{min-width:0;color:inherit;border-radius:var(--radius-sm);flex:1;gap:2px;text-decoration:none;display:grid}.notification-link:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.notification-title{font:var(--type-body);font-weight:var(--weight-medium);color:var(--text);overflow-wrap:anywhere}.notification-row.unread .notification-title{font-weight:var(--weight-semibold)}.notification-link:hover .notification-title{text-underline-offset:3px;text-decoration:underline}.notification-body{font:var(--type-secondary);color:var(--muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.notification-event{justify-self:start;align-items:center;gap:var(--space-2);margin-top:var(--space-1);padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--raised);font:var(--type-label);color:var(--text);display:inline-flex}.notification-event>svg{color:var(--muted)}.notification-meta{margin-top:var(--space-1);font:var(--type-caption);font-weight:var(--weight-regular);color:var(--subtle)}.notification-category{font-weight:var(--weight-medium);color:var(--muted)}.notification-more{justify-self:center}.notification-row-actions{align-items:center;gap:var(--space-1);margin:-6px calc(-1 * var(--space-2)) -6px 0;flex:none;display:flex}.notification-delete:hover:not(:disabled),.notification-delete:focus-visible{color:var(--danger);background:var(--danger-bg)}@media (hover:hover) and (pointer:fine) and (min-width:768px){.notification-row-actions .icon-button{width:var(--control-md);min-width:var(--control-md);min-height:var(--control-md)}}@media (hover:hover) and (pointer:fine){.notification-row .notification-row-actions{opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.notification-row:hover .notification-row-actions,.notification-row:focus-within .notification-row-actions{opacity:1}}.notification-swipe-hint{justify-content:flex-end;align-items:center;gap:var(--space-2);padding-right:var(--space-5);background:var(--danger-bg);color:var(--danger);font:var(--type-label);font-weight:var(--weight-semibold);pointer-events:none;display:flex;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.notification-row{transition:none!important}}.notification-settings{gap:var(--space-6);max-width:var(--content-max-reading);display:grid}.notification-prefs{padding:var(--space-6);box-shadow:none}.notification-prefs-head{gap:var(--space-1);margin-bottom:var(--space-5);display:grid}.notification-prefs-head h2{align-items:center;gap:var(--space-2);font:var(--type-card-title);margin:0;display:flex}.notification-prefs-head h2>svg{color:var(--muted)}.notification-prefs-head p{font:var(--type-secondary);margin:0}.notification-prefs-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.notification-pref-table{border-collapse:collapse;width:100%}.notification-pref-table th,.notification-pref-table td{padding:var(--space-3) var(--space-2);border-top:1px solid var(--border);text-align:left;vertical-align:middle}.notification-pref-table thead th{font:var(--type-caption);color:var(--muted);border-top:0;padding-top:0}.notification-pref-table th:first-child{padding-left:0}.notification-pref-table tbody th{font-weight:var(--weight-regular)}.notification-pref-table tbody th strong{font:var(--type-body);font-weight:var(--weight-medium);display:block}.notification-pref-table tbody th small{font:var(--type-secondary);margin-top:2px;display:block}.notification-pref-na{font:var(--type-secondary);color:var(--subtle)}.notification-switch{align-items:center;gap:var(--space-2);min-height:var(--control-md);cursor:pointer;display:inline-flex;position:relative}.notification-switch input{opacity:0;cursor:pointer;width:40px;height:24px;margin:auto 0;position:absolute;inset:0}.notification-switch-track{border-radius:var(--radius-full);background:var(--border-strong);width:40px;height:24px;transition:background-color var(--duration-fast) var(--ease-out);flex:none;position:relative}.notification-switch-track:after{content:"";border-radius:var(--radius-full);background:var(--surface);width:18px;height:18px;box-shadow:var(--shadow-xs);transition:transform var(--duration-fast) var(--ease-out);position:absolute;top:3px;left:3px}.notification-switch input:checked+.notification-switch-track{background:var(--primary)}.notification-switch input:checked+.notification-switch-track:after{transform:translate(16px)}.notification-switch input:focus-visible+.notification-switch-track{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.notification-switch input:disabled,.notification-switch.locked{cursor:not-allowed}.notification-switch input:disabled+.notification-switch-track{opacity:.55}.notification-switch-lock{align-items:center;gap:var(--space-1);font:var(--type-caption);color:var(--muted);display:inline-flex}.notification-quiet,.notification-parent{gap:var(--space-4);display:grid}.notification-quiet-fields,.notification-parent-fields{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));display:grid}.notification-quiet-fields .field,.notification-parent-fields .field{margin-bottom:0}.notification-parent-consents{gap:var(--space-1);display:grid}.notification-parent-consents .checkbox{min-height:var(--control-md);margin:0}.notification-quiet .control:disabled{opacity:.6}@media (prefers-reduced-motion:reduce){.notification-switch-track,.notification-switch-track:after{transition:none}}.delivery-logs-section .toolbar-bar{margin-bottom:var(--space-4)}.delivery-logs-section .toolbar-filters .control{width:auto;min-width:160px}.delivery-channel{font:var(--type-label);color:var(--muted)}.delivery-primary{font-weight:var(--weight-medium);color:var(--text);overflow-wrap:anywhere;display:block}.delivery-role{font:var(--type-secondary);color:var(--muted);text-transform:capitalize;display:block}.delivery-error{font:var(--type-secondary);color:var(--danger);overflow-wrap:anywhere;margin-top:2px;display:block}.delivery-table .data-table td{vertical-align:top}.delivery-card{gap:var(--space-1);padding:var(--space-4);display:grid}.delivery-card+.delivery-card{border-top:1px solid var(--border)}.delivery-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.delivery-card-meta{font:var(--type-secondary);color:var(--muted);margin:0}.announce-audience{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));display:grid}.announce-audience .field{margin-bottom:0}.announce-channels{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.announce-channels legend{padding:0 0 var(--space-2);font:var(--type-label);color:var(--text)}.announce-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.announce-chip{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex}.announce-chip-face{align-items:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);font:var(--type-label);transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);display:inline-flex}.announce-chip:hover .announce-chip-face{border-color:var(--primary);color:var(--text)}.announce-chip input:checked+.announce-chip-face{background:var(--tint);border-color:var(--primary);color:var(--text);font-weight:var(--weight-semibold)}.announce-chip input:focus-visible+.announce-chip-face{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.announce-chip-icon{color:var(--muted);display:inline-flex}.announce-chip input:checked+.announce-chip-face .announce-chip-icon{color:var(--primary)}.announce-composer-foot{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;width:100%;display:flex}.announce-reach{align-items:flex-start;gap:var(--space-2);min-width:0;font:var(--type-secondary);color:var(--muted);flex:260px;margin:0;display:flex}.announce-reach>svg{flex:none;margin-top:2px}.announce-composer-actions{gap:var(--space-2);margin-left:auto;display:flex}@media (max-width:767px){.notification-chips{max-width:100%;padding-bottom:var(--space-1);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.notification-filters,.updates-toolbar{min-width:0}.updates-toolbar-actions{width:100%}.updates-toolbar-actions>.button{min-height:var(--touch);flex:auto}.notification-chips::-webkit-scrollbar{display:none}.notification-chips button{min-height:var(--touch);min-width:var(--touch);flex:none}.notification-unread-toggle .checkbox,.notification-quiet-toggle .checkbox,.notification-parent-consents .checkbox{min-height:var(--touch)}.notification-row{padding:var(--space-3) var(--space-3) var(--space-3) var(--space-5)}.notification-unread-dot{top:calc(var(--space-3) + 14px);left:6px}.notification-prefs{padding:var(--space-4)}.notification-prefs-actions>.button{flex:auto}.notification-pref-table thead{display:none}.notification-pref-table,.notification-pref-table tbody,.notification-pref-table tr{display:block}.notification-pref-table tr{padding:var(--space-3) 0;border-top:1px solid var(--border)}.notification-pref-table tbody tr:first-child{border-top:0;padding-top:0}.notification-pref-table tbody th,.notification-pref-table td{border:0;padding:0;display:flex}.notification-pref-table tbody th{margin-bottom:var(--space-1);display:block}.notification-pref-table td{min-height:var(--touch);justify-content:space-between;align-items:center}.notification-pref-table td:before{content:attr(data-label);font:var(--type-body);color:var(--text)}.notification-switch{min-height:var(--touch);flex-direction:row-reverse}.delivery-logs-section .toolbar-filters{width:100%}.delivery-logs-section .toolbar-filters .control{flex:140px;min-width:0}.announce-chip-face{min-height:var(--touch)}.announce-composer-actions{width:100%;margin-left:0}.announce-composer-actions>.button{flex:1}}.notice-board{gap:var(--space-8);display:grid}.notice-section{gap:var(--space-3);display:grid}.nb-group-heading{font:var(--type-label);font-weight:var(--weight-semibold);color:var(--muted);margin:0}.nb-tab-intro{margin:0 0 var(--space-4);font:var(--type-secondary);color:var(--muted)}.nb-actions{justify-content:flex-end;display:flex}.nb-empty{padding:var(--space-4);box-shadow:none}.nb-badge{align-items:center;gap:var(--space-1);white-space:nowrap;display:inline-flex}.nb-badge>svg{flex:none}.nb-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.notice-list>li+li{border-top:1px solid var(--border)}.notice-list>li{min-width:0}.notice-card{align-items:flex-start;gap:var(--space-4);min-width:0;padding:var(--space-5);background:var(--surface);scroll-margin:calc(var(--topbar-h) + var(--space-4));display:flex;position:relative}.notice-card:focus-visible{outline:var(--focus-outline);outline-offset:-2px}.notice-card.is-highlighted{background:color-mix(in srgb, var(--primary) 5%, var(--surface));box-shadow:inset 3px 0 0 var(--primary)}.notice-icon{border-radius:var(--radius-md);flex:none;place-items:center;width:40px;height:40px;display:grid}.notice-card-main{gap:var(--space-2);flex:1;min-width:0;display:grid}.notice-card-head{align-items:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;min-height:22px;display:flex}.notice-kind{font:var(--type-caption);color:var(--muted)}.notice-pinned{align-items:center;gap:var(--space-1);font:var(--type-caption);color:var(--text);display:inline-flex}.notice-pinned>svg{color:var(--primary)}.notice-card-title{font:var(--type-card-title);color:var(--text);overflow-wrap:anywhere;margin:0}.notice-card-body{max-width:72ch;font:var(--type-body);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.notice-card-foot{gap:var(--space-1) var(--space-4);font:var(--type-secondary);color:var(--muted);flex-wrap:wrap;display:flex}.notice-event{justify-self:start;align-items:flex-start;gap:var(--space-2);max-width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);font:var(--type-secondary);color:var(--text);overflow-wrap:anywhere;margin:0;display:flex}.notice-event strong{font-weight:var(--weight-semibold)}.notice-event>svg{color:var(--muted);flex:none;margin-top:2px}.notice-event.is-soon{border-color:var(--warning-border);background:var(--warning-bg)}.notice-event.is-soon>svg{color:var(--warning)}.notice-event.is-soon .notice-event-relative{font-weight:var(--weight-semibold)}.notice-event.is-past{color:var(--muted)}.notice-missing{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--info-border);border-radius:var(--radius-lg);background:var(--info-bg);color:var(--text);font:var(--type-body);display:flex}.notice-missing>svg{color:var(--info);flex:none}.notice-missing p{flex:1;margin:0}.nb-skeleton-row{align-items:center;gap:var(--space-4);padding:var(--space-5);display:flex}.nb-skeleton-row+.nb-skeleton-row{border-top:1px solid var(--border)}.nb-skeleton-icon.skeleton-bar{border-radius:var(--radius-md);flex:none;width:40px;height:40px}.nb-skeleton-lines{gap:var(--space-2);flex:1;display:grid}.nb-skeleton-lines>.skeleton-bar:first-child{width:min(320px,70%);height:16px}.nb-skeleton-lines>.skeleton-bar:last-child{width:min(520px,90%);height:12px}.notice-filters{margin-bottom:var(--space-4);scrollbar-width:none;max-width:100%;overflow-x:auto}.notice-filters::-webkit-scrollbar{display:none}.managed-notice.is-archived .notice-card-title,.managed-notice.is-ended .notice-card-title{color:var(--muted)}.managed-notice-body{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.managed-notice-meta{gap:var(--space-1) var(--space-5);font:var(--type-secondary);flex-wrap:wrap;margin:0;display:flex}.managed-notice-meta>div{gap:var(--space-1);min-width:0;display:flex}.managed-notice-meta dt{color:var(--muted)}.managed-notice-meta dd{font-weight:var(--weight-medium);color:var(--text);overflow-wrap:anywhere;margin:0}.managed-notice-actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.managed-notice-archive{color:var(--danger)}.managed-notice-archive:hover:where(:not(:disabled)){background:var(--danger-bg)}.notice-composer{gap:var(--space-6);display:grid}.notice-composer>.error{margin:0}.notice-composer-row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));display:grid}.notice-composer-row.is-title{grid-template-columns:minmax(0,12rem) minmax(0,1fr)}.notice-composer .field{margin-bottom:0}.notice-composer .checkbox{min-height:var(--control-md);margin:0}.notice-fieldset{gap:var(--space-4);min-width:0;padding:var(--space-5) 0 0;border:0;border-top:1px solid var(--border);margin:0;display:grid}.notice-fieldset:first-of-type{border-top:0;padding-top:0}.notice-fieldset>legend{float:left;width:100%;font:var(--type-card-title);color:var(--text);margin:0;padding:0}.notice-fieldset>legend+*{clear:both}.notice-fieldset:disabled .announce-chip,.notice-fieldset:disabled select{cursor:not-allowed;opacity:.7}.notice-fixed-note{font:var(--type-secondary);margin:0}.notice-publish-field{max-width:320px}.notice-facts{gap:var(--space-1);margin:0;padding-left:1.2em;display:grid}@media (max-width:767px){.notice-board{gap:var(--space-6)}.notice-card{gap:var(--space-3);padding:var(--space-4)}.notice-icon{width:36px;height:36px}.nb-skeleton-row{padding:var(--space-4)}.notice-composer-row.is-title{grid-template-columns:minmax(0,1fr)}.notice-composer .checkbox{min-height:var(--touch)}.notice-publish-field{max-width:none}.notice-filters .segmented-item{min-height:var(--touch);min-width:var(--touch)}.managed-notice-actions .button{min-height:var(--touch);flex:auto}}.notice-composer .checkbox>input{align-self:center;margin-top:0}.programme-page .skeleton{gap:var(--space-3);background:0 0;height:auto}.programme-page .skeleton span{background:var(--raised);height:18px}.programme-checkout{align-items:center;gap:var(--space-3);margin:0 0 var(--space-5);flex-wrap:wrap;display:flex}.programme-checkout p{flex:240px;margin:0}.programme-steps{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.programme-step{padding:var(--space-6);border-left:3px solid var(--border)}.programme-step[data-state=current]{border-left-color:var(--primary);background:linear-gradient(180deg, var(--tint) 0%, var(--surface) 140px)}.programme-step[data-state=active],.programme-step[data-state=done]{border-left-color:var(--success)}.programme-step[data-state=waiting]{border-left-color:var(--warning)}.programme-step-head{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.programme-step-marker{border-radius:var(--radius-full);background:var(--raised);width:36px;height:36px;color:var(--muted);font-weight:var(--weight-bold);flex:none;place-items:center;display:grid}.programme-step[data-state=current] .programme-step-marker{background:var(--primary);color:var(--on-primary)}.programme-step[data-state=active] .programme-step-marker,.programme-step[data-state=done] .programme-step-marker{background:var(--success-bg);color:var(--success)}.programme-step-titles{flex:180px;min-width:0}.programme-step-kicker{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}.programme-step-head h2{font-size:var(--text-xl);line-height:var(--leading-snug);margin:2px 0 0}.programme-step-head .badge{align-self:center}.programme-step-body{gap:var(--space-4);display:grid}.programme-lead{align-items:flex-start;gap:var(--space-2);line-height:var(--leading-normal);margin:0;display:flex}.programme-lead svg{color:var(--primary);flex:none;margin-top:2px}.programme-lead.muted svg{color:var(--muted)}.programme-join{gap:var(--space-4);display:grid}.programme-choices{border:0;min-width:0;margin:0;padding:0}.programme-choices legend{margin-bottom:var(--space-2);font-size:var(--text-md);font-weight:var(--weight-semibold);padding:0}.programme-choice-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));display:grid}.programme-choice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;min-width:0;display:flex}.programme-choice:hover:not(.is-full){border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.programme-choice[data-checked]{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:var(--tint)}.programme-choice:focus-within{box-shadow:var(--focus-ring)}.programme-choice input{width:18px;height:18px;min-height:0;accent-color:var(--primary);flex:none;margin:3px 0 0;padding:0}.programme-choice.is-full{cursor:not-allowed;opacity:.6}.programme-single-plan{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.programme-plan,.programme-batch{gap:var(--space-1);flex:1;min-width:0;display:grid}.programme-plan-head,.programme-batch-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.programme-plan-price{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text)}.programme-plan-meta,.programme-plan-description{font-size:var(--text-md);color:var(--muted);line-height:var(--leading-normal)}.programme-plan-description{color:var(--text)}.programme-batch-meta{font-size:var(--text-md);color:var(--muted);gap:2px;display:grid}.programme-batch-meta>span{align-items:center;gap:var(--space-1);display:inline-flex}.programme-batch-meta svg{flex:none}.programme-seats{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--success)}.programme-seats.is-full{color:var(--danger)}.programme-action{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.programme-hint{flex:220px;margin:0}.programme-preview h3{margin:0 0 var(--space-2);font-size:var(--text-md);color:var(--muted)}.programme-plan-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.programme-plan-list>li{padding:var(--space-3) var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-lg)}.programme-enrolment{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--raised);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));margin:0;display:grid}.programme-enrolment dt{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.programme-enrolment dd{font-weight:var(--weight-semibold);overflow-wrap:anywhere;margin:2px 0 0}.programme-orientation{align-items:center;gap:var(--space-3);margin:var(--space-3) 0 0;flex-wrap:wrap;display:flex}.programme-orientation>svg{flex:none}.programme-orientation>span{flex:240px}.programme-orientation-done{align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;display:flex}@media (max-width:560px){.programme-step{padding:var(--space-4)}.programme-action .button,.programme-orientation .button{white-space:normal;width:100%}}.pp-page,.pp-tab{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.pp-page .tab-nav,.pp-page .page-title{margin-bottom:0}.pp-settings-link{flex:none}.pp-block{display:block}.pp-na{color:var(--muted);font-style:italic;font-weight:var(--weight-regular)}.pp-note{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.pp-warning{margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3);border:1px solid var(--danger-border);border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger);font-size:var(--text-sm)}.pp-filters{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex}.pp-filters-row{justify-content:space-between;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.pp-filters-row .segmented{max-width:100%;overflow-x:auto}.pp-filters-selects,.pp-filters-dates{gap:var(--space-3);flex:360px;grid-template-columns:repeat(2,minmax(min(100%,180px),1fr));max-width:560px;display:grid}.pp-filters-selects .field,.pp-filters-dates .field{margin:0}.pp-filters-summary{font-size:var(--text-sm);margin:0}.pp-section{gap:var(--space-3);flex-direction:column;display:flex}.pp-section-head{align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-1);flex-wrap:wrap;display:flex}.pp-section-head h2{align-items:center;gap:var(--space-2);font-size:var(--text-lg);margin:0;display:flex}.pp-section-head h2 svg{color:var(--primary)}.pp-section-action{margin-left:auto}.pp-scope{padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--raised);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap}.pp-section h3{margin:var(--space-2) 0 var(--space-1);font-size:var(--text-md)}.pp-stat-skeleton{border-radius:var(--radius-lg);height:88px;display:block}.pp-figures{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));margin:0;display:grid}.pp-figure{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);flex-direction:column;gap:2px;min-width:0;display:flex}.pp-figure dt{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.pp-figure dd{flex-direction:column;margin:0;display:flex}.pp-figure strong{font-size:var(--text-xl);overflow-wrap:anywhere}.pp-figure small{color:var(--muted);font-size:var(--text-xs)}.pp-status{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;display:inline-flex}.pp-status-present{background:var(--success-bg);border-color:var(--success-border);color:var(--success)}.pp-status-late{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning)}.pp-status-absent{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.pp-status-excused{background:var(--info-bg);border-color:var(--info-border);color:var(--info)}.pp-status-none{background:var(--raised);color:var(--muted)}.pp-bar{border:1px solid var(--border);border-radius:var(--radius-full);background:var(--raised);flex:none;width:120px;max-width:100%;height:8px;display:inline-block;overflow:hidden}.pp-bar-fill{background:var(--success);height:100%;display:block}.pp-bar-fill.is-low{background:var(--danger)}.pp-overview-bar{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.pp-busy,.pp-report-status{color:var(--muted);font-size:var(--text-sm)}.pp-identity-head{align-items:center;gap:var(--space-4);min-width:0;display:flex}.pp-identity-head h2{font-size:var(--text-xl);overflow-wrap:anywhere;margin:0}.pp-identity-head p{margin:0}.pp-facts{gap:var(--space-3) var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));margin:0;display:grid}.pp-facts dt{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.pp-facts dd{margin:2px 0 0}.pp-facts-wide{grid-column:1/-1}.pp-inline-list{gap:var(--space-1) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.pp-quick{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));margin:0;padding:0;list-style:none;display:grid}.pp-quick-card{height:100%;min-height:44px;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);flex-direction:column;gap:2px;text-decoration:none;display:flex}.pp-quick-card:hover{border-color:var(--primary)}.pp-quick-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.pp-quick-card svg{color:var(--primary)}.pp-quick-label{color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.pp-quick-value{font-size:var(--text-xl)}.pp-quick-hint{color:var(--muted);font-size:var(--text-xs)}.pp-quick-skeleton{border-radius:var(--radius-lg);height:110px;display:block}.pp-unavailable{font-size:var(--text-sm);margin:0}.pp-batches,.pp-courses,.pp-results,.pp-class-list,.pp-history-cards,.pp-report-files,.pp-plain-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pp-batch{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.pp-batch-name{flex-direction:column;min-width:0;display:flex}.pp-batch-rate{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pp-batch .pp-warning{flex-basis:100%}.pp-how summary{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-2);min-height:44px;list-style:none;display:flex}.pp-how summary::-webkit-details-marker{display:none}.pp-how summary:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.pp-how-chevron{color:var(--muted);flex:none;transition:transform .15s}.pp-how[open] .pp-how-chevron{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.pp-how-chevron{transition:none}}.pp-how summary h2{font-size:var(--text-lg);margin:0;display:inline}.pp-how ul{gap:var(--space-2);margin:var(--space-2) 0 0;padding-left:var(--space-5);flex-direction:column;display:flex}.pp-history-table td{vertical-align:top}.pp-history-table th{text-align:left}.pp-when{white-space:nowrap}.pp-tab .stat-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));margin-bottom:0}.pp-history-table td small{font-size:var(--text-xs)}.pp-history-cards{display:none}.pp-history-card,.pp-class-card,.pp-course,.pp-result,.pp-report-file{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0}.pp-history-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pp-history-card p{margin:var(--space-1) 0;font-size:var(--text-sm)}.pp-mini-facts{gap:var(--space-1);font-size:var(--text-sm);margin:0;display:grid}.pp-mini-facts>div{gap:var(--space-2);grid-template-columns:minmax(96px,35%) 1fr;display:grid}.pp-mini-facts dt{color:var(--muted)}.pp-mini-facts dd{overflow-wrap:anywhere;margin:0}.pp-coach-note{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.pp-coach-note span{font-weight:var(--weight-semibold)}.pp-class-card{gap:var(--space-2);flex-direction:column;display:flex}.pp-class-head h3{font-size:var(--text-md);overflow-wrap:anywhere;margin:0}.pp-class-head p{font-size:var(--text-sm);margin:2px 0 0}.pp-class-state{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0;display:inline-flex}.pp-class-facts{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));margin:0;display:grid}.pp-class-facts dt{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.pp-class-facts dd{font-size:var(--text-sm);margin:2px 0 0}.pp-topics{align-items:baseline;gap:var(--space-1) var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.pp-topics-label{color:var(--muted);font-weight:var(--weight-semibold)}.pp-topics ul{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.pp-topics li{padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--raised)}.pp-class-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.pp-course{gap:var(--space-2);flex-direction:column;display:flex}.pp-course-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pp-course-head h3{overflow-wrap:anywhere;margin:0}.pp-course-progress{align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.pp-course-progress .pp-bar{width:200px}.pp-course-meta{font-size:var(--text-sm);margin:0}.pp-two-col,.pp-three-col{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.pp-three-col{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.pp-three-col p{margin:0 0 var(--space-2)}.pp-plain-list{gap:var(--space-1);margin-bottom:var(--space-2)}.pp-plain-list li{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.pp-plain-list svg{color:var(--warning)}.pp-result{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pp-result-score{align-items:center;gap:var(--space-2);display:flex}.pp-report>p{margin:0}.pp-report-scope{gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0;display:flex}.pp-report-scope dt{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.pp-report-scope dd{font-weight:var(--weight-semibold);margin:0}.pp-report-file{align-items:center;gap:var(--space-3) var(--space-4);grid-template-columns:auto 1fr auto;display:grid}.pp-report-file>svg{color:var(--primary)}.pp-report-file h3{margin:0}.pp-report-file p{font-size:var(--text-sm);margin:2px 0 0}@media (max-width:767px){.pp-page .page-title{flex-direction:column;align-items:stretch}.pp-page .panel{padding:var(--space-4)}.pp-filters-row .segmented{grid-template-columns:1fr 1fr;width:100%;display:grid;overflow:visible}.pp-filters-row .segmented-item{min-height:44px}.pp-filters-selects,.pp-filters-dates{flex-basis:100%;grid-template-columns:1fr 1fr;max-width:none}.pp-filters-selects select{text-overflow:ellipsis;min-width:0}.pp-filters{padding:var(--space-3)}.pp-tab .stat-card{align-items:flex-start;gap:var(--space-2);flex-direction:column}.pp-class-facts,.pp-figures,.pp-quick{grid-template-columns:1fr 1fr}.pp-three-col>div>a,.pp-results a{align-items:center;min-height:44px;display:inline-flex}.pp-history-table{display:none}.pp-history-cards{display:flex}.pp-section-action{width:100%;margin-left:0}.pp-section-action .segmented{width:100%}.pp-section-action .segmented-item{flex:1;min-height:44px}.pp-report-file{grid-template-columns:auto 1fr}.pp-report-file .button{grid-column:1/-1;width:100%}.pp-overview-bar .button,.pp-class-actions .button{min-height:44px}.pp-page .tab-nav{flex-wrap:wrap;column-gap:0;overflow:visible}.pp-page .tab-nav-item{min-height:44px;padding:var(--space-2) var(--space-3);align-items:center;display:inline-flex}}.pp-nowrap{white-space:nowrap}
