.school-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4)}.school-logo{max-height:56px;max-width:160px;object-fit:contain}.school-logo-preview{max-height:96px;max-width:240px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s2);background:var(--surface)}.school-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--s4)}.school-stat{display:flex;flex-direction:column;gap:var(--s1);color:var(--ink-soft)}.school-stat-value{font-size:2em;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.1}.school-flag{display:block;width:fit-content;margin-top:var(--s1);padding:0 var(--s2);border:1px solid var(--border-strong, var(--border));border-radius:var(--radius-sm);font-size:var(--t-hint);color:var(--ink-soft)}.school-pupils th,.school-pupils td:nth-child(2){white-space:normal}.school-tour-open{margin-inline-start:auto}.school-tour{border:var(--control-border-width, 1px) solid var(--primary)}.school-tour h3:focus{outline:none}.school-tour-count{margin:0;font-size:var(--t-hint)}.school-role{background:var(--surface);border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius);padding:var(--s2) var(--s3);min-height:44px}.school-checks{border:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5)}.school-checks legend{font-weight:600;margin-bottom:var(--s2);padding:0}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.datefield{position:relative;width:100%}.datefield-input{width:100%;padding-inline-end:48px;cursor:pointer}.datefield-input:disabled{cursor:default}.datefield-toggle{position:absolute;inset-block:0;inset-inline-end:4px;width:44px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:var(--ink-soft);cursor:pointer}.datefield-pop{position:absolute;inset-inline-start:0;top:calc(100% + var(--s2));z-index:1100;padding:var(--s3);background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);--rdp-accent-color: var(--primary);--rdp-accent-background-color: var(--surface-soft);--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--primary);--rdp-today-color: var(--primary);--rdp-nav-height: 44px;--rdp-nav_button-height: 44px;--rdp-nav_button-width: 44px}.datefield-pop .rdp-root{font:inherit}.datefield-pop .rdp-selected .rdp-day_button{background:var(--primary);color:var(--primary-ink);font-weight:700}.datefield-pop .rdp-today:not(.rdp-selected) .rdp-day_button{font-weight:700;text-decoration:underline;text-underline-offset:3px}.datefield-pop .rdp-day_button:focus-visible{outline:3px solid var(--focus, var(--primary));outline-offset:2px}.datefield-pop .rdp-dropdown_root select{font:inherit}.datefield-pop .rdp-chevron{fill:var(--ink)}.datefield-actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2)}.datefield-actions .btn{min-height:44px}@media (max-width: 720px){.datefield-pop{position:fixed;inset-inline:var(--s3);top:auto;bottom:calc(var(--s3) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center}.datefield-pop{--rdp-day-height: 42px;--rdp-day-width: 42px;--rdp-day_button-height: 40px;--rdp-day_button-width: 40px}}.planner-review-board{display:flex;flex-direction:column;gap:var(--s4)}.planner-review-intro{margin:0;max-width:62ch;color:var(--ink-soft);line-height:1.55}.planner-review-start{display:flex;flex-direction:column;gap:var(--s3);max-width:44rem}.planner-review-start h3{margin:0}.planner-review-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3)}.planner-review-item{display:flex;flex-direction:column;gap:var(--s2)}.planner-review-item p{margin:0}.planner-review-item-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--s2) var(--s4)}.planner-review-item-title{margin:0;font-size:var(--t-lead);overflow-wrap:anywhere}.planner-review-status.pill{margin-inline-start:0;font-weight:600}.planner-review-status.is-signed{border-color:var(--success);border-width:2px}.planner-review-status.is-draft{border-style:dashed}.planner-review-bar{justify-content:space-between}.planner-review-sheet{display:flex;flex-direction:column;gap:var(--s5);width:100%}.planner-review-head{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2)}.planner-review-head .field{width:100%;margin:0}.planner-review-sheet-title{margin:0;font-size:var(--t-lead);overflow-wrap:anywhere}.planner-review-period{margin:0;font-weight:600}.planner-review-section h4,.planner-review-goal-title{margin:0 0 var(--s3);font-size:var(--t-lead);overflow-wrap:anywhere}.planner-review-section textarea,.planner-review-target textarea{width:100%}.planner-review-goal{border-top:1px solid var(--border);padding-top:var(--s4)}.planner-review-area{margin:0 0 var(--s1);font-size:var(--t-small);color:var(--ink-soft);font-weight:600}.planner-review-targets{margin:0;padding:0;list-style:none;display:grid;gap:var(--s4)}.planner-review-target{padding:var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.planner-review-target-body{display:flex;flex-direction:column;gap:var(--s3)}.planner-review-target-title{margin:0;font-size:1rem;line-height:1.4;overflow-wrap:anywhere}.planner-review-auto{margin:0;padding:var(--s3) var(--s4);padding-inline-start:calc(var(--s4) + 1em);border-inline-start:3px solid var(--border-strong);line-height:1.55}.planner-review-read{display:grid;gap:var(--s3);margin:0}.planner-review-read dt{font-weight:600;font-size:var(--t-small);color:var(--ink-soft)}.planner-review-read dd{margin:var(--s1) 0 0;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}.planner-review-save{position:sticky;bottom:0;padding:var(--s3) 0;background:var(--surface)}.planner-review-sign{border-top:1px solid var(--border);padding-top:var(--s4)}.planner-review-signature{margin:0 0 var(--s2);font-weight:600}.planner-review-sign-form{max-width:28rem}.planner-evidence{display:flex;flex-direction:column;gap:var(--s3)}.planner-evidence-title{margin:0}.planner-evidence-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3)}.planner-evidence-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);padding:var(--s2);border:1px solid var(--border);border-radius:var(--radius)}.planner-evidence-thumb{flex:0 0 auto;width:4.5rem;height:4.5rem;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface)}.planner-evidence-thumb.is-file{display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--t-small);color:var(--ink-soft)}.planner-evidence-text{flex:1 1 12rem;min-width:0;display:flex;flex-direction:column;gap:var(--s1);overflow-wrap:anywhere}.planner-evidence-add{display:flex;flex-direction:column;gap:var(--s2);max-width:36rem}.planner-evidence-add .field{margin:0}@media (max-width: 720px){.planner-review-target{padding:var(--s3)}.planner-review-bar>.btn{flex:1 1 auto}}@media print{.planner-review-print h3{font-size:11pt;margin:8pt 0 2pt}.planner-review-print p{margin:0 0 4pt;white-space:pre-line}.planner-review-print-goal{border-top:1px solid #999;padding-top:6pt}.planner-review-print-target{break-inside:avoid;margin-bottom:6pt}.planner-review-print dl{margin:0;display:grid;grid-template-columns:12em 1fr;gap:2pt 8pt}.planner-review-print dt{font-weight:600}.planner-review-print dd{margin:0;white-space:pre-line}}.planner-tpl-dialog{max-width:760px}.planner-tpl-desc{margin:0 0 var(--s4);color:var(--ink-soft);line-height:1.55;max-width:62ch}.planner-tpl-filter{max-width:320px}.planner-tpl-list{list-style:none;margin:var(--s4) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--s3)}.planner-tpl-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3) var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.planner-tpl-text{display:flex;flex-direction:column;gap:var(--s1);flex:1 1 20rem;min-width:0;line-height:1.5}.planner-tpl-title{font-size:1.05rem}.planner-tpl-item>.btn{flex:0 0 auto}.planner-tpl-area{margin:0 0 var(--s3);font-weight:600}.planner-tpl-heading{margin:var(--s4) 0 var(--s2);font-size:1rem;font-weight:700}.planner-tpl-targets{margin:0 0 var(--s3);padding-inline-start:var(--s5);display:flex;flex-direction:column;gap:var(--s3)}.planner-tpl-target{margin:0 0 var(--s1);font-weight:600;line-height:1.45}.planner-tpl-activities{margin:var(--s2) 0 0;padding-inline-start:var(--s5);line-height:1.5}.planner-tpl-copy{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3) var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft)}.planner-tpl-copy .field{max-width:360px;margin:0}.planner-tpl-done{margin:0;font-weight:600;color:var(--ink)}.planner-tpl-changes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s2)}.planner-tpl-changes li{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3);padding-inline-start:var(--s3);border-inline-start:3px solid var(--border-strong);line-height:1.5}.planner-tpl-change-day{font-weight:600;color:var(--ink-soft);white-space:nowrap}.planner-tpl-series{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--border)}.planner-tpl-series .planner-tpl-heading{margin-top:0}.planner-now{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--s7) var(--s4) var(--s6);background:var(--bg);color:var(--ink);font-size:28px;line-height:1.35}.planner-now *,.planner-now *:before,.planner-now *:after{animation:none!important;transition:none!important}.planner-now-back{position:absolute;top:var(--s3);inset-inline-end:var(--s4);font-size:var(--t-body);color:var(--ink-soft)}.planner-now-message{margin:0;font-size:28px;text-align:center}.planner-now-stage{width:100%;max-width:900px;display:flex;flex-direction:column;gap:var(--s5)}.planner-now-card{display:flex;flex-direction:column;align-items:center;gap:var(--s3);padding:var(--s6) var(--s5);border:3px solid var(--ink);border-radius:var(--radius-lg);background:var(--surface);text-align:center}.planner-now-card.is-next{padding:var(--s4) var(--s5);border-width:2px;border-color:var(--border-strong);color:var(--ink-soft)}.planner-now-card.is-done{border-color:var(--success)}.planner-now-label{margin:0;font-size:28px;font-weight:700;letter-spacing:.02em}.planner-now-name{margin:0;font-size:48px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.planner-now-card.is-next .planner-now-name{font-size:32px}.planner-now-name:focus{outline:none}.planner-now-detail{margin:0;font-size:28px}.planner-now-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s4);margin-top:var(--s3)}.planner-now-button{min-height:88px;min-width:240px;padding:var(--s4) var(--s6);font-size:32px}.planner-now-tick{width:120px;height:120px;color:var(--success)}@media (max-width: 600px){.planner-now-name{font-size:36px}.planner-now-card.is-next .planner-now-name{font-size:28px}.planner-now-button{min-width:0;width:100%}}.planner-goal-board{display:flex;flex-direction:column;gap:var(--s4)}.planner-goal-intro{margin:0;max-width:62ch;color:var(--ink-soft);line-height:1.55}.planner-goal-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s3) var(--s4)}.planner-goal-filters>.field{flex:1 1 200px;min-width:0;margin:0}.planner-goal-filters>.planner-goal-filter-check{flex:0 1 auto;align-self:center}.planner-goal-filters>.btn{flex:0 0 auto}@media (max-width: 720px){.planner-goal-filters>.field,.planner-goal-filters>.btn{flex-basis:100%}}.planner-goal-empty{max-width:62ch}.planner-goal-empty p{line-height:1.55}.planner-goal-area>h2{margin:var(--s4) 0 var(--s3);font-size:var(--t-lead);font-weight:700}.planner-goal{display:flex;flex-direction:column;gap:var(--s4)}.planner-goal.card{margin-bottom:var(--s4)}.planner-goal-head,.planner-target-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--s2) var(--s4)}.planner-goal-statement,.planner-target-statement{margin:0;flex:1 1 20rem;min-width:0;line-height:1.4;overflow-wrap:anywhere}.planner-goal-statement{font-size:var(--t-lead);font-weight:700}.planner-target-statement{font-size:1rem;font-weight:700}.planner-goal-status.pill{margin-inline-start:0;padding:var(--s1) var(--s3);font-size:var(--t-small);font-weight:600}.planner-goal-status.is-achieved{border-color:var(--success);border-width:2px}.planner-goal-status.is-not_achieved,.planner-goal-status.is-stopped{border-color:var(--border-strong);border-style:dashed}.planner-goal-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--s3) var(--s5);margin:0}.planner-goal-meta dt{font-weight:600;font-size:var(--t-small);color:var(--ink-soft)}.planner-goal-meta dd{margin:var(--s1) 0 0;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}.planner-goal-gas h4,.planner-goal-targets>h4,.planner-target-provision-view h5,.planner-target-activities>h5{margin:0 0 var(--s2);font-size:var(--t-small);font-weight:700;color:var(--ink-soft)}.planner-goal-gas ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.planner-goal-gas li{display:grid;grid-template-columns:3rem 1fr;gap:var(--s3);align-items:baseline}.planner-goal-gas-level{font-weight:700;font-variant-numeric:tabular-nums;text-align:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);padding:var(--s1) 0}.planner-goal-gas-name{display:block;font-size:var(--t-small);font-weight:600;color:var(--ink-soft)}.planner-goal-waiting{margin:0;font-weight:600;color:var(--ink)}.planner-goal-waiting:before{content:"? ";font-weight:700;color:var(--primary)}.planner-goal-targets{border-top:1px solid var(--border);padding-top:var(--s4)}.planner-target-list,.planner-activity-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3)}.planner-target{display:flex;flex-direction:column;gap:var(--s3);background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s4)}.planner-target.is-editing{background:var(--surface)}.planner-target-review{display:block;font-size:var(--t-small);color:var(--ink-soft)}.planner-target-review.is-overdue{font-weight:700;color:var(--ink)}.planner-target-progress{display:flex;flex-direction:column;gap:var(--s1)}.planner-target-progress p{margin:0}.planner-target-activities{border-top:1px solid var(--border);padding-top:var(--s3)}.planner-target-provision{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3) var(--s4) 0;margin:0 0 var(--s4)}.planner-target-provision legend{padding:0 var(--s2)}.planner-activity{display:flex;flex-direction:column;gap:var(--s2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3) var(--s4)}.planner-activity-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2) var(--s3)}.planner-activity-kind.pill{margin-inline-start:0}.planner-activity-title{overflow-wrap:anywhere}.planner-activity-toggle.btn{align-self:flex-start;padding-inline:var(--s2)}.planner-activity-instructions{margin:0;white-space:pre-line;line-height:1.55;padding:var(--s3);border-inline-start:3px solid var(--border);background:var(--surface-soft);border-radius:var(--radius)}.planner-activity-auto{margin:0;line-height:1.5}.planner-activity-kinds{border:0;padding:0;margin:0 0 var(--s4)}.planner-goal-editor h3,.planner-target-editor h4,.planner-activity-editor h5{margin:0 0 var(--s4);font-size:var(--t-lead);font-weight:700}.planner-goal-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:0 var(--s4)}.planner-goal-gas-editor{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3) var(--s4);margin-bottom:var(--s4)}.planner-goal-gas-editor>summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}.planner-goal-delete.btn{margin-inline-start:auto}.planner-prog{display:flex;flex-direction:column;gap:var(--s4)}.planner-prog-period{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s3) var(--s5)}.planner-prog-period .row{margin:0}.planner-prog-period .btn[aria-pressed=true],.planner-timeline-bar-tools .btn[aria-pressed=true]{border-color:var(--primary);border-width:2px;font-weight:700;background:var(--surface-soft)}.planner-prog-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s5)}.planner-prog-section>h3{margin:0 0 var(--s3);font-size:var(--t-lead)}.planner-prog-lead{margin:0 0 var(--s2);font-weight:700}.planner-prog-sub{margin:0 0 var(--s2);color:var(--ink-soft);font-size:var(--t-small)}.planner-prog-facts{margin:var(--s2) 0;color:var(--ink-soft);font-size:var(--t-small);line-height:1.55}.planner-prog-achieved{margin:var(--s2) 0;font-weight:700;color:var(--success)}.planner-prog-date{font-weight:700;margin-inline-end:var(--s2);white-space:nowrap}.planner-prog-goal{margin-top:var(--s5)}.planner-prog-goal>h4{margin:0 0 var(--s1);font-size:var(--t-body)}.planner-prog-target{border-top:1px solid var(--border);padding:var(--s4) 0 var(--s2)}.planner-prog-target>h5{margin:0 0 var(--s1);font-size:var(--t-body);font-weight:700}.planner-prog-status{font-weight:700;color:var(--ink)}.planner-prog-figure{margin:var(--s3) 0}.planner-prog-chart{width:100%;min-width:0;overflow:hidden}.planner-prog-chart svg{display:block;max-width:100%;height:auto}.planner-prog-grid{stroke:var(--border);stroke-width:1}.planner-prog-baseline{stroke:var(--ink-soft);stroke-width:1}.planner-prog-axis{fill:var(--ink-soft);font-size:12px;font-family:var(--font)}.planner-prog-bar{stroke-width:1.5}.planner-prog-bar.is-planned{fill:var(--surface);stroke:var(--ink-soft)}.planner-prog-bar.is-done{fill:var(--primary);stroke:var(--primary)}.planner-prog-bar.is-missed{stroke:var(--ink-soft)}.planner-prog-hatch-bg{fill:var(--surface)}.planner-prog-hatch-line{stroke:var(--ink-soft);stroke-width:2}.planner-prog-line{fill:none;stroke:var(--primary);stroke-width:2}.planner-prog-mark{fill:var(--surface);stroke:var(--primary);stroke-width:2}.planner-prog-step{fill:none;stroke:var(--success);stroke-width:2}.planner-prog-change{stroke:var(--ink-soft);stroke-width:1.5;stroke-dasharray:5 4}.planner-prog-change-tag{fill:var(--surface);stroke:var(--ink-soft)}.planner-prog-change-num{fill:var(--ink);font-size:11px;font-weight:700;font-family:var(--font)}.planner-prog-review{stroke:var(--ink);stroke-width:1.5;stroke-dasharray:1 3}.planner-prog-review-text{fill:var(--ink);font-weight:700}.planner-prog-tick{fill:var(--success);font-size:15px;font-weight:700}.planner-prog-legend{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);list-style:none;margin:var(--s2) 0;padding:0;font-size:var(--t-small);color:var(--ink-soft)}.planner-prog-legend li{display:inline-flex;align-items:center;gap:var(--s1)}.planner-prog-swatch{flex:none}.planner-prog-changes h6{margin:var(--s3) 0 var(--s1);font-size:var(--t-small)}.planner-prog-changes ol{margin:0;padding-inline-start:1.5em;font-size:var(--t-small);line-height:1.55}.planner-prog-achieved-list{margin:var(--s3) 0 0;padding-inline-start:1.5em;line-height:1.6}.planner-prog-numbers{margin-top:var(--s2);font-size:var(--t-small)}.planner-prog-numbers>summary{cursor:pointer;color:var(--primary);font-weight:600;min-height:32px;display:list-item}.planner-timeline{display:flex;flex-direction:column;gap:var(--s3)}.planner-timeline-bar-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3)}.planner-timeline-range{margin:0;font-size:var(--t-lead)}.planner-timeline-chart{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s4)}.planner-timeline-row{display:grid;grid-template-columns:minmax(9rem,15rem) 1fr;gap:var(--s3);align-items:stretch;min-height:2.75rem}.planner-timeline-label{margin:0;padding:var(--s2) 0;font-size:var(--t-small);line-height:1.35;overflow-wrap:anywhere}.planner-timeline-goal-row{border-top:1px solid var(--border);margin-top:var(--s2)}.planner-timeline-goal-row .planner-timeline-label{font-size:var(--t-body);font-weight:700}.planner-timeline-track{position:relative;min-width:0}.planner-timeline-head{min-height:2.25rem}.planner-timeline-month{position:absolute;top:0;padding-inline-start:var(--s1);font-size:var(--t-hint);color:var(--ink-soft);white-space:nowrap}.planner-timeline-today{position:absolute;bottom:0;transform:translate(-50%);font-size:var(--t-hint);font-weight:700;color:var(--ink);background:var(--surface);padding:0 var(--s1);z-index:2}.planner-timeline-month-line,.planner-timeline-today-line{position:absolute;top:0;bottom:0;width:0;pointer-events:none}.planner-timeline-month-line{border-inline-start:1px solid var(--border)}.planner-timeline-today-line{border-inline-start:2px solid var(--ink);z-index:1}.planner-timeline-target{position:absolute;top:.35rem;bottom:.35rem;min-width:1.5rem;display:flex;align-items:center;padding:0 var(--s2);border:2px solid var(--primary);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--ink);font:inherit;font-size:var(--t-hint);font-weight:600;cursor:pointer;overflow:hidden;z-index:2}.planner-timeline-target:hover{border-color:var(--ink)}.planner-timeline-target[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:1px}.planner-timeline-target.is-ACHIEVED{background:var(--primary);color:var(--primary-ink)}.planner-timeline-target.is-NOT_ACHIEVED{border-style:dashed;background:var(--surface)}.planner-timeline-target.is-STOPPED{border-style:dotted;border-color:var(--ink-soft);background:var(--surface);color:var(--ink-soft)}.planner-timeline-target.is-cut-start{border-start-start-radius:0;border-end-start-radius:0;border-inline-start-style:none}.planner-timeline-target.is-cut-end{border-start-end-radius:0;border-end-end-radius:0;border-inline-end-style:none}.planner-timeline-target-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planner-timeline-tick{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:var(--t-body);font-weight:700;background:var(--surface);color:var(--success);border:1px solid var(--success);border-radius:50%;width:1.3em;height:1.3em;line-height:1.2em;text-align:center}.planner-timeline-undated{position:absolute;inset-block:.35rem;inset-inline-start:0;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font:inherit;font-size:var(--t-hint);padding:0 var(--s2);cursor:pointer;z-index:2}.planner-timeline-goal-mark{position:absolute;top:50%;transform:translate(-.5em,-50%);font-size:var(--t-hint);font-weight:700;white-space:nowrap;background:var(--surface);padding-inline-end:var(--s1);z-index:2}.planner-timeline-legend{margin-top:var(--s4)}.planner-timeline-key{display:inline-block;width:1.6em;height:.9em;border:2px solid var(--primary);border-radius:3px;background:var(--surface-soft)}.planner-timeline-key.is-ACHIEVED{background:var(--primary)}.planner-timeline-key.is-NOT_ACHIEVED{border-style:dashed;background:var(--surface)}.planner-timeline-key.is-STOPPED{border-style:dotted;border-color:var(--ink-soft);background:var(--surface)}.planner-timeline-list{display:flex;flex-direction:column;gap:var(--s3)}.planner-timeline-list-month{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3) var(--s4)}.planner-timeline-list-month h4{margin:0 0 var(--s2)}.planner-timeline-list-month ul{list-style:none;margin:0;padding:0}.planner-timeline-list-month li{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s1) var(--s2);padding:var(--s2) 0;border-top:1px solid var(--border)}.planner-timeline-list-month li:first-child{border-top:none}.planner-timeline-list-month li.is-today{border-inline-start:3px solid var(--ink);padding-inline-start:var(--s2)}.planner-timeline-kind{font-size:var(--t-small);color:var(--ink-soft);font-weight:700}.planner-timeline-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:var(--s1) 0;min-height:44px;font:inherit;color:var(--primary);text-decoration:underline;text-align:start;cursor:pointer;flex:1 1 100%}.planner-timeline-details h3{margin:0 0 var(--s1);font-size:var(--t-lead)}.planner-timeline-details h4{margin:var(--s4) 0 var(--s2);font-size:var(--t-body)}.planner-timeline-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--s2) var(--s4);margin:var(--s3) 0 0}.planner-timeline-facts dt{font-size:var(--t-small);color:var(--ink-soft)}.planner-timeline-facts dd{margin:0;font-weight:600}@media (max-width: 720px){.planner-prog-section{padding:var(--s4)}.planner-timeline-bar-tools{flex-direction:column}}.card .planner-prog-section{border:none;padding:0;margin-top:var(--s4)}.planner-cal-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s3)}.planner-cal-top h2{margin:0}.planner-cal-bar{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s4)}.planner-cal-title{margin:0;flex:1 1 12rem;font-variant-numeric:tabular-nums}.planner-cal-views .btn,.planner-cal-bar .btn{min-height:44px}.planner-cal-help{margin-top:var(--s3)}.planner-cal-month{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.planner-cal-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.planner-cal-row+.planner-cal-row{border-top:1px solid var(--border)}.planner-cal-colhead{padding:var(--s2);font-weight:600;color:var(--ink-soft);text-align:center}.planner-cal-colhead abbr{text-decoration:none}.planner-cal-cell{min-height:9rem;padding:var(--s1);display:flex;flex-direction:column;gap:var(--s1);min-width:0}.planner-cal-cell+.planner-cal-cell{border-inline-start:1px solid var(--border)}.planner-cal-cell:focus-visible,.planner-cal-col:focus-within{outline:3px solid var(--primary);outline-offset:-3px}.planner-cal-cell.is-outside{background:var(--surface-soft)}.planner-cal-cell.is-outside .planner-cal-daynum{color:var(--ink-soft);font-weight:400}.planner-cal-daynum{align-self:flex-start;min-width:2em;padding:0 var(--s1);font-weight:600;text-align:center;border:2px solid transparent;border-radius:999px}.planner-cal-cell.is-today .planner-cal-daynum{border-color:var(--ink)}.planner-cal-cell.is-drop,.planner-cal-col.is-drop{outline:3px dashed var(--primary);outline-offset:-3px}.planner-cal-more{min-height:44px;padding:var(--s1) var(--s2);justify-content:flex-start}.planner-cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--s2)}.planner-cal-col{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:var(--s2);min-height:14rem;min-width:0}.planner-cal-col.is-today{border-color:var(--ink);border-width:2px}.planner-cal-col .planner-cal-colhead{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s1);margin:0 0 var(--s2);padding:0;font-size:inherit}.planner-cal-daylink{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:var(--s1) var(--s2);min-height:44px;font:inherit;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;border-radius:var(--radius)}.planner-cal-daylink:hover{background:var(--surface-soft)}.planner-cal-empty{margin:0}.planner-cal-chips{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s2)}.planner-cal-list{display:flex;flex-direction:column;gap:var(--s4)}.planner-cal-listday h3{display:flex;align-items:center;gap:var(--s2);margin:0 0 var(--s2);font-size:inherit}.planner-cal-day{display:flex;flex-direction:column;gap:var(--s3)}.planner-session-wrap{position:relative;min-width:0}.planner-session-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;align-items:stretch;gap:2px;width:100%;min-height:44px;padding:var(--s1) var(--s2);border:1px solid var(--border);border-inline-start:4px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--t-small);text-align:start;cursor:pointer}.planner-session-chip:hover{background:var(--surface-soft)}.planner-session-chip:focus-visible{outline:3px solid var(--primary);outline-offset:1px}.planner-session-chip[draggable=true]{cursor:grab}.planner-session-chip.is-done{border-inline-start-color:var(--primary)}.planner-session-chip.is-partly{border-inline-start-style:double;border-inline-start-color:var(--primary)}.planner-session-chip.is-missed{border-inline-start-style:dotted;border-inline-start-color:var(--ink-soft)}.planner-session-chip.is-planned{border-inline-start-style:dashed}.planner-chip-time{font-weight:600;font-variant-numeric:tabular-nums}.planner-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-session-wrap.is-wide .planner-chip-name{white-space:normal}.planner-chip-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2);color:var(--ink-soft)}.planner-chip-score{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.planner-status{display:inline-flex;align-items:center;gap:.3em;font-weight:500}.planner-status-icon{display:inline-block;min-width:1em;text-align:center}.planner-comment-count{display:inline-flex;align-items:center;gap:.25em}.planner-session-pop{position:absolute;top:100%;inset-inline-start:0;z-index:40;padding-top:var(--s1);width:min(22rem,85vw)}.planner-session-pop.is-end{inset-inline-start:auto;inset-inline-end:0}.planner-session-card{background:var(--surface);border:1px solid var(--border-strong, var(--border));border-radius:var(--radius);padding:var(--s4);box-shadow:var(--shadow-md);color:var(--ink);font-size:var(--t-small)}.planner-session-card p{margin:0 0 var(--s2)}.planner-card-title{display:flex;flex-wrap:wrap;gap:var(--s2);font-weight:700}.planner-when{margin:0 0 var(--s1);font-weight:600}.planner-meta{display:block;margin:0 0 var(--s1);color:var(--ink-soft)}.planner-item-summary{list-style:none;margin:var(--s2) 0;padding:0;display:flex;flex-direction:column;gap:var(--s2)}.planner-item-summary li{padding-inline-start:var(--s2);border-inline-start:2px solid var(--border)}.planner-item-name{display:block;font-weight:600}.planner-latest-comment{margin:var(--s2) 0;padding:var(--s2) var(--s3);background:var(--surface-soft);border-radius:var(--radius)}.planner-move{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s2)}.planner-move .field{margin:0;flex:1 1 10rem}.planner-move.is-compact{width:100%}.planner-session-full .planner-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);margin-bottom:var(--s2)}.planner-session-full .planner-card-head h3{margin:0}.planner-session-full .toolbar{margin-top:var(--s3)}html .modal-backdrop.planner-dialog-backdrop{align-items:flex-start;overflow-y:auto}.planner-dialog{max-width:760px;margin-block:var(--s4)}.planner-dialog.planner-scope-dialog,.planner-dialog.planner-export-dialog{max-width:540px}.planner-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s3)}.planner-dialog-head .btn{min-height:44px}.planner-dialog h3{margin:var(--s5) 0 var(--s3)}.planner-scope-choices{display:flex;flex-direction:column;gap:var(--s2)}.planner-scope-choices .btn{min-height:44px;justify-content:flex-start}.planner-fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3) var(--s4);margin:var(--s4) 0}.planner-fieldset legend{padding:0 var(--s2);font-weight:600}.planner-radios{display:flex;flex-wrap:wrap;gap:var(--s2)}.planner-radios label{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:var(--s1) var(--s3);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.planner-radios input{width:1.2em;height:1.2em}.planner-weekdays{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s3) 0}.planner-weekday{min-width:56px;min-height:44px;padding:var(--s2) var(--s3)}.planner-weekday abbr{text-decoration:none}.planner-repeat-sentence{font-weight:600;margin:var(--s2) 0 0}.planner-edit-items,.planner-view-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s3)}.planner-edit-item,.planner-item-panel{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s4);background:var(--surface)}.planner-edit-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-bottom:var(--s2)}.planner-add-items{margin-top:var(--s4);padding:var(--s4);border-radius:var(--radius);background:var(--surface-soft)}.planner-add-items h3{margin-top:0}.planner-add-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s3);margin-bottom:var(--s3)}.planner-add-row .field{flex:1 1 16rem;margin:0;min-width:0}.planner-add-row .btn{min-height:44px}.planner-view-head{margin-bottom:var(--s3)}.planner-view-head .toolbar{margin-top:var(--s3)}.planner-item-facts{list-style:none;margin:0 0 var(--s2);padding:0;display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4);color:var(--ink-soft)}.planner-instructions{white-space:pre-wrap}.planner-item-program{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin:var(--s3) 0}.planner-item-program .btn{min-height:44px}.planner-result{margin-top:var(--s3)}.planner-view-outcome{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--border)}.planner-quick{margin-bottom:var(--s4)}@media (max-width: 720px){.planner-cal-top .toolbar,.planner-cal-bar .toolbar{width:100%}.planner-cal-bar .toolbar>.btn{flex:1 1 auto}.planner-dialog{padding:var(--s4)}.planner-session-pop{width:min(20rem,calc(100vw - 2 * var(--s4)))}}.planner-print{display:none}@media print{body.planner-printing>:not(.planner-print){display:none!important}body.planner-printing{background:#fff}body.planner-printing .planner-print{display:block;color:#000;background:#fff;font-size:11pt}.planner-print h1{font-size:18pt;margin:0 0 6pt}.planner-print h2{font-size:12pt;margin:12pt 0 4pt}.planner-print-session{break-inside:avoid;border-top:1px solid #999;padding-top:6pt}.planner-print ol{margin:4pt 0;padding-inline-start:18pt}.planner-print .planner-status{font-weight:600}}.planner-comment-list{list-style:none;margin:0 0 var(--s3);padding:0;display:grid;gap:var(--s3)}.planner-comment{padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.planner-comment p{margin:var(--s2) 0;white-space:pre-wrap}.planner-comment-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}:root{--bg: #f3efe6;--surface: #ffffff;--surface-soft: #eaf2ee;--ink: #2c3a36;--ink-soft: #51625c;--ink-faint: #5d6c66;--primary: #4f7d6a;--primary-hover: #436b5b;--primary-ink: #ffffff;--accent: #b6c9b1;--success: #2f7d4f;--success-bg: #dceadf;--danger: #a24a4a;--border: #ded8cb;--border-strong: #8f8777;--focus: #3d6d96;--shadow-sm: 0 1px 2px rgba(44, 58, 54, .06);--shadow-md: 0 2px 8px rgba(44, 58, 54, .08);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--tile-radius: 18px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--gap: var(--s4);--font: "Atkinson Hyperlegible", "Verdana", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-size-base: 18px;--t-hint: .82em;--t-small: .92em;--t-body: 1em;--t-lead: 1.15em;--t-title: 1.35em;--t-display: 2em;--transition: .18s ease;--measure: 68ch}[data-palette=cool]{--bg: #f1eee9;--surface: #ffffff;--surface-soft: #ebeeef;--ink: #1f2628;--ink-soft: #48565b;--ink-faint: #53656a;--primary: #3b6368;--primary-hover: #325458;--primary-ink: #ffffff;--accent: #a4c7cc;--success: #21503a;--success-bg: #cceadc;--danger: #9c4a45;--border: #e3ddd3;--border-strong: #5e7278;--focus: #4d8289}[data-palette=dark],[data-theme=calm-dark]{--bg: #1c2421;--surface: #232c29;--surface-soft: #2a3431;--ink: #e8ece9;--ink-soft: #a8b3af;--ink-faint: #929d97;--primary: #8ab8a4;--primary-hover: #9cc5b3;--primary-ink: #0f1614;--accent: #4f6258;--success: #88c79a;--success-bg: #2e4435;--danger: #d09090;--border: #38423e;--border-strong: #748479;--focus: #9bb6cd;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .35)}[data-palette=high-contrast],[data-theme=high-contrast]{--bg: #ffffff;--surface: #ffffff;--surface-soft: #f0f0f0;--ink: #000000;--ink-soft: #1a1a1a;--ink-faint: #333333;--primary: #003366;--primary-hover: #00294f;--primary-ink: #ffffff;--accent: #ffd400;--success: #006b34;--success-bg: #e6f4ec;--danger: #8a0000;--border: #000000;--border-strong: #000000;--focus: #003366;--shadow-sm: none;--shadow-md: none}[data-palette=stone]{--bg: #f4f5f7;--surface: #ffffff;--surface-soft: #eceef3;--ink: #1d2130;--ink-soft: #464c5e;--ink-faint: #555b6d;--primary: #4a5396;--primary-hover: #3f477f;--primary-ink: #ffffff;--accent: #c4c9e4;--success: #24704a;--success-bg: #e3f1e8;--danger: #a1403f;--border: #e1e4ea;--border-strong: #7e8496;--focus: #4a5396;--shadow-sm: 0 1px 2px rgba(29, 33, 48, .05);--shadow-md: 0 1px 4px rgba(29, 33, 48, .07)}[data-palette=lavender]{--bg: #f5f3f8;--surface: #ffffff;--surface-soft: #eeeaf5;--ink: #272231;--ink-soft: #4f4860;--ink-faint: #5c556c;--primary: #64548c;--primary-hover: #564877;--primary-ink: #ffffff;--accent: #d2c9e6;--success: #24704a;--success-bg: #e3f1e8;--danger: #a1403f;--border: #e4dfec;--border-strong: #857e95;--focus: #64548c}[data-palette=midnight]{--bg: #121826;--surface: #192133;--surface-soft: #212a3e;--ink: #e6e9f0;--ink-soft: #a9b1c3;--ink-faint: #969eb1;--primary: #9fb1e8;--primary-hover: #b2c1ee;--primary-ink: #0f1626;--accent: #3a4766;--success: #8fd0a7;--success-bg: #1f3a30;--danger: #e09a9a;--border: #2b3448;--border-strong: #6f7a94;--focus: #b2c1ee;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4)}[data-palette=graphite]{--bg: #17181a;--surface: #1f2023;--surface-soft: #27292c;--ink: #ebebec;--ink-soft: #b0b2b6;--ink-faint: #9b9da2;--primary: #7fc1ba;--primary-hover: #95cdc7;--primary-ink: #0e1413;--accent: #33403e;--success: #96cf9f;--success-bg: #20352a;--danger: #e09a9a;--border: #303236;--border-strong: #73767c;--focus: #95cdc7;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4)}[data-palette=indigo]{--bg: #f7f7fc;--surface: #ffffff;--surface-soft: #efeefb;--ink: #1c1b33;--ink-soft: #4b4a66;--ink-faint: #57566f;--primary: #4f46c8;--primary-hover: #433bb0;--primary-ink: #ffffff;--accent: #d9d6f7;--success: #23704a;--success-bg: #e3f1e8;--danger: #a1403f;--border: #e6e5f2;--border-strong: #7f7d99;--focus: #4f46c8}[data-palette=meadow]{--bg: #f6f8f5;--surface: #ffffff;--surface-soft: #eaf3ec;--ink: #172219;--ink-soft: #45524a;--ink-faint: #526058;--primary: #1f7a4d;--primary-hover: #19663f;--primary-ink: #ffffff;--accent: #f6c79a;--success: #1d6b45;--success-bg: #e3f1e8;--danger: #a1403f;--border: #e3e8e2;--border-strong: #7a857c;--focus: #1f7a4d}[data-palette=peach]{--bg: #fff8f2;--surface: #ffffff;--surface-soft: #fdeee3;--ink: #2a2233;--ink-soft: #574e60;--ink-faint: #61586a;--primary: #6a55b0;--primary-hover: #5a4799;--primary-ink: #ffffff;--accent: #bfe8dc;--success: #23704a;--success-bg: #e3f1e8;--danger: #a1403f;--border: #f0e3d8;--border-strong: #8a7f86;--focus: #6a55b0}[data-palette=sunrise]{--bg: #ffffff;--surface: #ffffff;--surface-soft: #fdf1e9;--ink: #1f2328;--ink-soft: #454b52;--ink-faint: #535a62;--primary: #b4470e;--primary-hover: #9a3c0b;--primary-ink: #ffffff;--accent: #fcd9c0;--success: #22703f;--success-bg: #e2f2e7;--danger: #9e2a2b;--border: #e4e0dc;--border-strong: #6d6862;--focus: #1d5fa8}[data-palette=sky]{--bg: #f4f8fc;--surface: #ffffff;--surface-soft: #e6f0fa;--ink: #14223a;--ink-soft: #42506a;--ink-faint: #4f5d76;--primary: #1f63c4;--primary-hover: #1a54a6;--primary-ink: #ffffff;--accent: #cfe2f7;--success: #237043;--success-bg: #e1f2e6;--danger: #a3363a;--border: #dce6f2;--border-strong: #74839c;--focus: #1f63c4}[data-palette=ocean]{--bg: #f5f7f9;--surface: #ffffff;--surface-soft: #eef2f6;--ink: #1b2430;--ink-soft: #48525e;--ink-faint: #56606c;--primary: #0b5cad;--primary-hover: #094d91;--primary-ink: #ffffff;--accent: #cfe0f2;--success: #1f6e40;--success-bg: #e1f1e6;--danger: #a3333a;--border: #dfe4ea;--border-strong: #7a8390;--focus: #0b5cad}[data-palette=paper]{--bg: #faf6ee;--surface: #fffdf8;--surface-soft: #f2ecdf;--ink: #1e1b16;--ink-soft: #4d473d;--ink-faint: #5a5348;--primary: #1e1b16;--primary-hover: #3a352c;--primary-ink: #fffdf8;--accent: #e8dcc4;--success: #2a6b3c;--success-bg: #e4efe2;--danger: #9c3326;--border: #e6dfd0;--border-strong: #7f776a;--focus: #8a4b14}[data-palette=chalk]{--bg: #fbfaf7;--surface: #ffffff;--surface-soft: #fff3c4;--ink: #111111;--ink-soft: #3d3d3d;--ink-faint: #4a4a4a;--primary: #111111;--primary-hover: #333333;--primary-ink: #ffffff;--accent: #ffe27a;--success: #1f6e3a;--success-bg: #d9f2df;--danger: #a12b2b;--border: #2b2b2b;--border-strong: #111111;--focus: #2557d6}[data-palette=wood]{--bg: #f6ecd9;--surface: #fff8ea;--surface-soft: #f6e6c8;--ink: #3b2414;--ink-soft: #5e4128;--ink-faint: #6a4b31;--primary: #a8501c;--primary-hover: #8e4216;--primary-ink: #ffffff;--accent: #f3c27a;--success: #2f6e34;--success-bg: #e2f0d8;--danger: #a3332a;--border: #ead2a8;--border-strong: #96693d;--focus: #1d5fa8}[data-palette=parchment]{--bg: #f3e8d2;--surface: #fbf4e4;--surface-soft: #efe0c2;--ink: #2a1d10;--ink-soft: #55402a;--ink-faint: #604a32;--primary: #9c3d1c;--primary-hover: #823115;--primary-ink: #ffffff;--accent: #f0c15a;--success: #2c6a3a;--success-bg: #dfeed9;--danger: #a12f2a;--border: #e2cfa8;--border-strong: #8d6a3f;--focus: #1d5fa8}[data-palette=garden]{--bg: #eef5e6;--surface: #ffffff;--surface-soft: #f1f7ea;--ink: #1f2d1a;--ink-soft: #46583c;--ink-faint: #52644a;--primary: #2f7a3a;--primary-hover: #25632e;--primary-ink: #ffffff;--accent: #ffd166;--success: #1f6b40;--success-bg: #ddf0e1;--danger: #a23b3b;--border: #d6e5c8;--border-strong: #6f8f5c;--focus: #1d5fa8}[data-palette=storybook]{--bg: #f4ecdc;--surface: #fffdf7;--surface-soft: #f6eedd;--ink: #1f2f4d;--ink-soft: #4a5873;--ink-faint: #56627a;--primary: #2d4f7c;--primary-hover: #223e63;--primary-ink: #ffffff;--accent: #f2b6a6;--success: #2c6b3c;--success-bg: #e0efdc;--danger: #b0372a;--border: #e6dac2;--border-strong: #8a7a5c;--focus: #c2412d}[data-palette=toybox]{--bg: #eef1f6;--surface: #ffffff;--surface-soft: #f1f3f8;--ink: #1b1f27;--ink-soft: #454c5a;--ink-faint: #555c6a;--primary: #2f5bd3;--primary-hover: #2449ad;--primary-ink: #ffffff;--accent: #ffc53d;--success: #1f6e3a;--success-bg: #d9f2df;--danger: #b02a2a;--border: #d9dee8;--border-strong: #1b1f27;--focus: #c4421f}[data-palette=glacier]{--bg: #e9edfb;--surface: #ffffff;--surface-soft: #f1f3fd;--ink: #161b33;--ink-soft: #3e4566;--ink-faint: #4f5677;--primary: #3d4fc4;--primary-hover: #3141a6;--primary-ink: #ffffff;--accent: #b9e3f7;--success: #1f6b4a;--success-bg: #dcf1e6;--danger: #a3354a;--border: #d3d8f0;--border-strong: #6d75a3;--focus: #2a3bb0}[data-palette=blush]{--bg: #f7ece4;--surface: #fffaf6;--surface-soft: #fbf1ea;--ink: #2e1f22;--ink-soft: #5b4347;--ink-faint: #6a5155;--primary: #8c3b4f;--primary-hover: #74303f;--primary-ink: #ffffff;--accent: #f2c4ad;--success: #2d6a46;--success-bg: #e0f0e4;--danger: #a3302e;--border: #ead6cb;--border-strong: #9a7a78;--focus: #6a2a3a}[data-palette=steel]{--bg: #14171d;--surface: #1d2129;--surface-soft: #252a34;--ink: #eef1f5;--ink-soft: #b4bccb;--ink-faint: #9ea7b8;--primary: #c9d3e3;--primary-hover: #dde4ef;--primary-ink: #14171d;--accent: #39404d;--success: #93d3ac;--success-bg: #1e3a2c;--danger: #ec9c9c;--border: #2f3541;--border-strong: #7b8597;--focus: #dde4ef;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 2px 10px rgba(0, 0, 0, .45)}[data-text-scale=large]{--font-size-base: 21px}[data-text-scale=larger]{--font-size-base: 24px}[data-line-spacing=relaxed]{--line: 1.7}[data-line-spacing=loose]{--line: 1.9}[data-border-weight=strong]{--control-border-width: 2px;--tile-border-width: 6px}[data-tile-size=large]{--tile-min-height: 200px;--tile-font-size: 1.75em}[data-feedback=subtle]{--correct-border-width: 4px;--correct-fill: var(--surface)}[data-feedback=strong]{--correct-border-width: 8px}[data-reduce-motion=true] *:not(.tile-grid),[data-reduce-motion=true] *:before,[data-reduce-motion=true] *:after{transition:none!important;animation:none!important}html,body,#root{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--font-size-base);line-height:var(--line, 1.55);min-height:100%}*{box-sizing:border-box}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}a.btn,a.template-card,a.program-action{text-decoration:none}h1,h2,h3{line-height:1.25;letter-spacing:-.01em}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app-shell{max-width:1080px;margin:0 auto;padding:0 var(--s5) var(--s7)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;padding:var(--s4) 0;border-bottom:1px solid var(--border);margin-bottom:var(--s6)}.topbar h1{margin:0;font-size:var(--t-title);font-weight:700;letter-spacing:-.02em;white-space:nowrap}.brand{display:inline-flex;align-items:center;gap:var(--s3)}.brand-mark{display:block;flex:none;width:1.45em;height:1.45em;color:var(--primary);--mark-answered: var(--success)}.topbar nav{display:flex;gap:var(--s1);align-items:center;flex-wrap:wrap;margin-inline-start:auto}.topbar>.usermenu{flex:none}.fit-measuring,.fit-measuring *{flex-wrap:nowrap!important;flex-shrink:0!important;white-space:nowrap!important}.topbar.is-tight{flex-wrap:wrap;column-gap:var(--s2);row-gap:var(--s2)}.topbar.is-tight .brand{flex:1 1 0;min-width:0;font-size:clamp(1.15rem,5.4vw,1.5rem);order:0}.topbar.is-tight .usermenu-trigger{max-width:44vw}.topbar.is-tight .usermenu-trigger>:first-child,.topbar.is-tight .usermenu-trigger{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar.is-tight>.usermenu{order:1}.topbar.is-tight nav{order:2;flex:1 1 100%;flex-wrap:nowrap;margin-inline-start:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.topbar.is-tight nav::-webkit-scrollbar{display:none}.topbar.is-tight nav>a{flex:none;white-space:nowrap}.topbar nav a{text-decoration:none;padding:var(--s2) var(--s3);border-radius:999px;color:var(--ink-soft);font-size:var(--t-small);transition:background-color var(--transition),color var(--transition)}.topbar nav a:hover{color:var(--ink);background:var(--surface-soft)}.topbar nav a.active{background:var(--surface-soft);color:var(--ink);font-weight:600}.topbar-min{justify-content:flex-end;padding:var(--s1) 0;margin-bottom:var(--s3);border-bottom:0}.topbar .topbar-toggle{font-size:var(--t-small);padding:var(--s2) var(--s3);min-height:44px}.topbar nav .btn.ghost{margin-inline-start:var(--s2);font-size:var(--t-small);padding:var(--s2) var(--s3);min-height:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s5);box-shadow:var(--shadow-sm);margin-bottom:var(--s5)}.card h2{margin-top:0;margin-bottom:var(--s4);font-size:var(--t-lead);font-weight:700}.card>p:first-of-type{margin-top:0}.muted{color:var(--ink-soft)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);border:1px solid var(--primary);background:var(--primary);color:var(--primary-ink);padding:var(--s3) var(--s5);border-radius:var(--radius);cursor:pointer;font-weight:600;text-align:center;transition:background-color var(--transition),border-color var(--transition);min-height:48px}.btn:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}.btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--primary)}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink-soft)}.btn.ghost:hover:not(:disabled){background:var(--surface-soft);color:var(--ink)}.btn.quiet-danger{background:transparent;border-color:var(--border-strong);color:var(--ink-soft)}.btn.quiet-danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger);background:transparent}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover:not(:disabled){background:#8f3f3f;border-color:#8f3f3f}[data-palette=dark] .btn.danger,[data-theme=calm-dark] .btn.danger,[data-palette=midnight] .btn.danger,[data-palette=graphite] .btn.danger{color:#1c0f0f}[data-palette=high-contrast] .btn.danger,[data-theme=high-contrast] .btn.danger{border-color:#000;color:#fff}.field{display:flex;flex-direction:column;gap:var(--s2);margin-bottom:var(--s4);min-width:0}.field label,.field-label{font-weight:600;color:var(--ink-soft);font-size:var(--t-small)}.field input,.field select,.field textarea,.chip-add input{background:var(--surface);border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius);padding:var(--s3) var(--s3);min-height:48px;width:100%;transition:border-color var(--transition)}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--primary)}.field textarea{min-height:96px;resize:vertical}.field-hint{color:var(--ink-faint);font-size:var(--t-hint)}.pin-input{font-size:var(--t-title);letter-spacing:.4em;text-align:center}input[type=checkbox],input[type=radio]{accent-color:var(--primary);width:22px;height:22px;margin:0;cursor:pointer;flex:none}input[type=range]{accent-color:var(--primary);width:100%;min-height:44px}.check{display:flex;align-items:flex-start;gap:var(--s3);font-weight:500;color:var(--ink);cursor:pointer;padding:var(--s2) 0;min-height:44px;line-height:1.4}.check-group{display:flex;flex-direction:column;gap:var(--s1)}.feature-group+.feature-group{margin-top:var(--s5)}.feature-group h3{margin:0 0 var(--s2);font-size:1rem;font-weight:600;color:var(--ink)}.check.is-pending{opacity:.62;cursor:default}.pill.is-due{border-color:var(--success);color:var(--success)}.pill{display:inline-block;margin-inline-start:var(--s3);padding:0 var(--s2);border-radius:var(--radius);background:var(--surface-soft);border:1px solid var(--primary);font-size:.78rem;font-weight:500;white-space:nowrap}.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--s4) var(--s5);align-items:start}.library-filters{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s4)}.library-filters>.field{flex:1 1 160px;min-width:0;margin:0}.library-filters>.field:first-child{flex:2 1 160px}@media (max-width: 720px){.library-filters>.field{flex-basis:100%}}.spaced>*+*{margin-top:var(--s3)}.toolbar{display:flex;gap:var(--s3);flex-wrap:wrap;align-items:center}.label-short{display:none}@media (max-width: 720px){.label-long{display:none}.label-short{display:inline}.topbar.is-tight{margin-bottom:var(--s3);padding-bottom:var(--s2)}main .toolbar{gap:var(--s2)}main .toolbar>.btn,main .toolbar>a.btn,main .toolbar .rowmenu-trigger{min-height:44px;padding:.4em .95em;font-size:var(--t-small);white-space:nowrap}main .toolbar>.field{flex:1 1 140px;min-width:0;max-width:none!important}main .toolbar>.field select{min-height:44px;width:100%;font-size:var(--t-small);padding-inline-start:.7em;padding-inline-end:1.6em;text-overflow:ellipsis}}.form-actions{display:flex;gap:var(--s3);flex-wrap:wrap;align-items:center;margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--border)}.list{display:grid;gap:var(--s3);list-style:none;padding:0;margin:0}.list-item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s3) var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s4);transition:border-color var(--transition)}.list-item:hover{border-color:var(--border-strong)}.list-item .name{font-weight:700;font-size:var(--t-body)}.list-item-text{min-width:0;flex:1 1 15rem}.list-item-meta{color:var(--ink-soft);font-size:var(--t-hint)}.list-item .toolbar{flex:0 0 auto}@media (max-width: 640px){.list-item{flex-direction:column;align-items:stretch}.list-item-text{flex:0 0 auto}.list-item .toolbar{justify-content:flex-start}.list-item .toolbar>*{flex:1 1 auto}}.list.program-rows{gap:0}.list.program-rows>.list-item{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--s2);background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;padding:var(--s2) 0}.list.program-rows>.list-item:last-child{border-bottom:0}.list.program-rows .list-item-text{flex:1 1 auto}.list.program-rows .toolbar{flex-wrap:nowrap;gap:var(--s1)}.list.program-rows .toolbar>*{flex:0 0 auto}.list.program-rows .toolbar .btn{padding-inline:var(--s3)}.list.program-rows .rowmenu-trigger .usermenu-caret{display:none}.list.program-rows .reward-give{gap:2px}@media (max-width: 480px){.list.program-rows>.list-item{flex-wrap:wrap;row-gap:var(--s1)}.list.program-rows .list-item-text{flex:1 1 100%}.list.program-rows .toolbar{margin-inline-start:auto}}.banner{background:var(--surface-soft);border:1px solid transparent;border-inline-start:4px solid var(--primary);padding:var(--s3) var(--s4);border-radius:var(--radius);margin-bottom:var(--s4)}.error{background:var(--surface-soft);border:1px solid rgba(162,74,74,.35);border-inline-start:4px solid var(--danger);padding:var(--s3) var(--s4);border-radius:var(--radius);margin-bottom:var(--s3);color:var(--ink)}.tile-grid{display:grid;gap:var(--gap);margin-top:var(--s4);opacity:1;transform:translateY(0);transition-property:opacity,transform;transition-duration:var(--round-transition-ms, .8s);transition-timing-function:ease}.tile-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tile-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tile-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tile-grid.fading-out{pointer-events:none}.tile-grid.round-fade.fading-out{opacity:0}.tile-grid.round-slide.fading-out{opacity:0;transform:translateY(-24px)}.tile-grid.round-none{transition-duration:0ms}.tile-grid.round-none.fading-out{opacity:0}.tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--surface);border:var(--tile-border-width, 4px) solid var(--border-strong);border-radius:var(--tile-radius);padding:var(--s5) var(--s4);font-size:var(--tile-font-size, 1.5em);font-weight:700;line-height:1.25;color:var(--ink);cursor:pointer;min-height:var(--tile-min-height, 160px);transition:border-color var(--transition),background-color var(--transition)}.tile:hover:not(:disabled){border-color:var(--primary)}.tile.correct{border:var(--correct-border-width, 6px) solid var(--success);background:var(--correct-fill, var(--success-bg));color:var(--ink)}.tile:disabled{cursor:default}.template-list{list-style:none;margin:var(--s2) 0 0;padding:0;display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.template-list>li{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.template-list>li>.template-card{flex:1 1 auto;height:auto}.template-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s1);width:100%;height:100%;text-align:start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s4);cursor:pointer;font:inherit;color:inherit;transition:border-color var(--transition),background-color var(--transition)}.template-card:hover,.template-card:focus-visible{border-color:var(--primary);background:var(--surface-soft)}.template-card-title{font-weight:700;font-size:var(--t-body)}.template-card-desc{color:var(--ink-soft);font-size:var(--t-small);line-height:1.45}.week-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s4)}.week-title{font-size:var(--t-lead);font-weight:700;font-variant-numeric:tabular-nums}.progress-track{position:relative;background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;height:14px;overflow:hidden;min-width:8rem}.progress-fill{height:100%;background:var(--primary);border-radius:999px;transition:width var(--transition)}.progress-fill.met{background:var(--success)}.prose-terms{max-width:68ch}.prose-terms h3{font-size:var(--t-body);font-weight:700;margin:var(--s5) 0 var(--s2)}.prose-terms h3:first-of-type{margin-top:var(--s4)}.prose-terms p{margin:0 0 var(--s3);line-height:1.6;color:var(--ink)}.library-table{border-collapse:collapse;width:100%}.library-table th,.library-table td{text-align:start;vertical-align:top;padding:var(--s3);border-bottom:1px solid var(--border)}.library-table th{color:var(--ink-soft);font-size:var(--t-small);font-weight:600}.library-table tbody tr:last-child td{border-bottom:0}.library-name{display:block;font-weight:600}.library-desc{display:block;color:var(--ink-soft);font-size:var(--t-small)}.library-actions{display:flex;flex-wrap:nowrap;white-space:nowrap;gap:var(--s2);align-items:center;justify-content:flex-end}.library-added{font-weight:600;color:var(--success)}@media (max-width: 760px){.library-table thead{display:none}.library-table,.library-table tbody,.library-table tr,.library-table td{display:block}.library-table tr{padding:var(--s3) 0;border-bottom:1px solid var(--border)}.library-table tbody tr:last-child{border-bottom:0}.library-table td{border-bottom:0;padding:var(--s1) 0}.library-table td[data-label]:before{content:attr(data-label) ": ";color:var(--ink-soft);font-size:var(--t-small)}.library-actions{flex-wrap:wrap;justify-content:flex-start;padding-top:var(--s2)}}@media (min-width: 761px) and (max-width: 1100px){.library-table.has-code thead{display:none}.library-table.has-code,.library-table.has-code tbody,.library-table.has-code tr,.library-table.has-code td{display:block}.library-table.has-code tr{padding:var(--s3) 0;border-bottom:1px solid var(--border)}.library-table.has-code tbody tr:last-child{border-bottom:0}.library-table.has-code td{border-bottom:0;padding:var(--s1) 0}.library-table.has-code td[data-label]:before{content:attr(data-label) ": ";color:var(--ink-soft);font-size:var(--t-small)}.library-table.has-code .library-actions{flex-wrap:wrap;justify-content:flex-start;padding-top:var(--s2)}}.table-wrap{overflow-x:auto;margin-top:var(--s3)}.report-table{border-collapse:collapse;width:100%;font-size:var(--t-small)}.report-table th,.report-table td{text-align:start;padding:var(--s2) var(--s3);border-bottom:1px solid var(--border);white-space:nowrap}.report-table th{color:var(--ink-soft);font-weight:600}.report-table td.num,.report-table th.num{text-align:end;font-variant-numeric:tabular-nums}.report-table tbody tr:last-child td{border-bottom:none}.learner-bar{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;margin:calc(var(--s6) * -1 + var(--s3)) 0 var(--s5);padding-bottom:var(--s3);border-bottom:1px solid var(--border)}.learner-bar-label{font-size:var(--t-small);color:var(--ink-faint)}.learner-bar select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);background-color:var(--surface-soft);background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 16px) 55%,calc(100% - 11px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;border-radius:999px;padding:var(--s2) 36px var(--s2) var(--s3);min-height:0;font:inherit;font-size:var(--t-small);font-weight:600;color:var(--ink);cursor:pointer;max-width:16rem}.learner-bar select:hover{border-color:var(--primary)}.learner-bar select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.list-item.is-dragging{opacity:.45}.drop-target{outline:2px dashed var(--primary);outline-offset:4px;border-radius:var(--radius)}.reward-total{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}.reward-total-glyph{font-size:1.6rem;line-height:1}.board-total{display:flex;align-items:center;justify-content:flex-end;gap:var(--s2);margin-bottom:var(--s3);font-size:var(--t-small);color:var(--ink-soft)}.board-total strong{font-variant-numeric:tabular-nums;color:var(--ink)}.break-bar{justify-content:center;margin-top:var(--s5)}.tabs{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s4);border-bottom:1px solid var(--border);padding-bottom:var(--s2)}.tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);padding:var(--s2) var(--s4);min-height:44px;font:inherit;font-weight:500;color:var(--ink-soft);cursor:pointer}.tab:hover{background:var(--surface-soft)}@media (max-width: 720px){html[data-design] .tabs{display:flex;flex-wrap:nowrap;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}html[data-design] .tabs::-webkit-scrollbar{display:none}html[data-design] .tab{flex:none;white-space:nowrap}}.tab.is-active{background:var(--surface);border-color:var(--border-strong);color:var(--ink)}.chart-wrap{margin-top:var(--s4);display:flex;flex-direction:column;gap:var(--s3)}.chart{width:100%;height:auto;overflow:visible}.chart-grid{stroke:var(--border);stroke-width:1}.chart-tick{fill:var(--ink-soft);font-size:12px;font-variant-numeric:tabular-nums}.chart-line{fill:none;stroke:var(--primary);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.chart-goal{stroke:var(--success);stroke-width:2;stroke-dasharray:6 5}.chart-goal-label{fill:var(--success);font-size:12px}.chart-dot{fill:var(--primary)}.chart-probe{fill:var(--surface);stroke:var(--success);stroke-width:2.5}.chart-key{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);font-size:var(--t-small);color:var(--ink-soft)}.chart-key span{display:inline-flex;align-items:center;gap:var(--s2)}.chart-key-dot{width:10px;height:10px;border-radius:999px;background:var(--primary)}.chart-key-dot.is-probe{background:var(--surface);border:2px solid var(--success)}.figure{font-size:1.7rem;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.1}.progress-figures{font-variant-numeric:tabular-nums;font-size:var(--t-small);color:var(--ink-soft);white-space:nowrap}.plan-item-kind{font-size:var(--t-hint);color:var(--ink-faint)}.plan-empty{color:var(--ink-soft);padding:var(--s4) 0}.icon-choices{display:flex;flex-wrap:wrap;gap:var(--s2)}.icon-choice{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:56px;font-size:1.6em;line-height:1;background:var(--surface);border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius);cursor:pointer;transition:border-color var(--transition),background-color var(--transition)}.icon-choice:hover{border-color:var(--primary)}.icon-choice.is-selected{border-color:var(--primary);background:var(--surface-soft);box-shadow:inset 0 0 0 1px var(--primary)}.icon-choice input[type=radio]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.icon-choice:focus-within{outline:3px solid var(--focus);outline-offset:2px}.reward-marks{display:inline-flex;align-items:center;gap:1px;font-size:.95em;line-height:1}.reward-marks .more{color:var(--ink-faint);font-size:var(--t-hint);margin-inline-start:var(--s1)}.usermenu{position:relative}@media (max-width: 720px){.usermenu-panel{right:auto;left:0;max-width:calc(100vw - 2 * var(--s4))}}.usermenu-trigger{display:inline-flex;align-items:center;gap:var(--s2);background:transparent;border:1px solid var(--border-strong);color:var(--ink);border-radius:999px;padding:var(--s2) var(--s3);font-size:var(--t-small);font-weight:600;cursor:pointer;min-height:44px;transition:background-color var(--transition),border-color var(--transition)}.usermenu-trigger:hover{background:var(--surface-soft);border-color:var(--primary)}.usermenu-caret{font-size:.7em;opacity:.7}.usermenu-panel{position:absolute;top:calc(100% + var(--s2));inset-inline-end:0;z-index:900;min-width:15rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:var(--s2);display:flex;flex-direction:column;gap:2px}.usermenu-who{padding:var(--s2) var(--s3) var(--s3);border-bottom:1px solid var(--border);margin-bottom:var(--s2)}.usermenu-who .name{font-weight:700}.usermenu-who .email{display:block;color:var(--ink-faint);font-size:var(--t-hint);word-break:break-all}.usermenu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;text-align:start;background:transparent;border:0;border-radius:var(--radius-sm);padding:var(--s3);font:inherit;color:var(--ink);text-decoration:none;cursor:pointer;min-height:44px}.usermenu-item:hover,.usermenu-item:focus-visible{background:var(--surface-soft)}.usermenu-item.danger{color:var(--danger)}.usermenu-item.danger:hover{background:var(--surface-soft)}.rowmenu{position:relative}.rowmenu-panel{min-width:12rem;width:max-content;max-width:calc(100vw - 2 * var(--s4))}.rowmenu-panel .usermenu-item{white-space:nowrap}.usermenu-panel.is-floating{position:fixed;inset-inline-end:auto;z-index:1050;max-width:calc(100vw - 16px);overflow-y:auto}.rowmenu-trigger{gap:var(--s2)}.reward-total-link{display:inline-flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius);color:inherit;text-decoration:none;flex-wrap:wrap}.reward-total-link:hover{border-color:var(--accent)}.balance-bar{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--s3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3) var(--s4);margin-bottom:var(--s4)}.balance-glyph{font-size:2rem;line-height:1}.balance-figure{font-size:2.4rem;line-height:1;font-variant-numeric:tabular-nums}.balance-name{font-size:var(--t-small)}.balance-detail{margin-inline-start:auto;color:var(--ink-faint);font-size:var(--t-hint)}.plan-list{display:grid;gap:var(--s3);margin:0 0 var(--s4)}.plan-option{display:flex;align-items:flex-start;gap:var(--s3);background:var(--surface);border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius);padding:var(--s4);cursor:pointer;transition:border-color var(--transition),background-color var(--transition)}.plan-option:hover{border-color:var(--primary)}.plan-option.is-disabled{opacity:.55}.plan-option.is-disabled:hover{border-color:var(--border-strong)}.sub-group{border:0;margin:0 0 var(--s4);padding:0;display:flex;flex-direction:column;gap:var(--s2)}.sub-cycles{display:flex;flex-wrap:wrap;gap:var(--s2)}.sub-cycle{display:inline-flex;align-items:center;gap:var(--s2);min-height:48px;padding:var(--s2) var(--s4);border:2px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);font-weight:700;cursor:pointer}.sub-cycle.is-selected{border-color:var(--primary);background:var(--surface-soft)}.sub-cycle.is-disabled{opacity:.55;cursor:not-allowed}.sub-cycle-price{font-weight:400;color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.sub-saving{padding:2px 8px;border-radius:999px;background:var(--success-bg);color:var(--success);font-size:var(--t-hint)}.sub-summary{display:flex;flex-direction:column;gap:var(--s1);margin:0 0 var(--s4);padding:var(--s3) var(--s4);border-radius:var(--radius);background:var(--surface-soft)}.sub-line{display:flex;justify-content:space-between;gap:var(--s3);font-variant-numeric:tabular-nums}.library-table td[data-label=Difficulty] select{min-width:8.75rem}.library-code{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:700;line-height:1.35;color:var(--ink-soft);background:var(--surface-soft);border-radius:4px;padding:1px 4px;-webkit-user-select:all;user-select:all}.library-code>span{white-space:nowrap}.library-table.has-code td:nth-child(2){min-width:14rem}.library-table.has-code th,.library-table.has-code td{padding-inline-start:var(--s2);padding-inline-end:var(--s2)}.library-code[title]{cursor:help}.dash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:var(--s3);margin-top:var(--s4)}.dash-stat{display:flex;flex-direction:column;gap:2px;padding:var(--s3) var(--s4);border-radius:var(--radius);background:var(--surface-soft)}.dash-stat strong{font-size:2rem;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}.dash-stat span{color:var(--ink-soft);font-size:var(--t-small)}.dash-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:var(--s4)}.dash-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s3)}.dash-bar-head{display:flex;justify-content:space-between;gap:var(--s3)}.dash-bar{height:10px;border-radius:999px;background:var(--surface-soft);overflow:hidden;margin-top:4px}.dash-bar span{display:block;height:100%;background:var(--primary);border-radius:999px}.dash-weeks{display:grid;grid-template-columns:repeat(12,1fr);gap:4px;align-items:end;height:160px}.dash-week{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}.dash-week-bar{width:70%;min-height:2px;background:var(--primary);border-radius:4px 4px 0 0}.dash-week-n{font-size:var(--t-hint);color:var(--ink-soft);font-variant-numeric:tabular-nums}.dash-week-d{font-size:.7rem;color:var(--ink-faint);margin-top:4px;white-space:nowrap;overflow:hidden;max-width:100%}.sub-promo{max-width:28rem}.sub-promo-row{display:flex;gap:var(--s2)}.sub-promo-row input{flex:1 1 auto;min-width:0}.sub-usage{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--border)}.sub-usage h3{margin:0 0 var(--s2)}.sub-usage meter{display:block;width:100%;height:14px}.sub-usage .field-hint{margin:var(--s2) 0 0}.sub-total{margin-top:var(--s1);padding-top:var(--s2);border-top:1px solid var(--border);font-weight:800}.ai-interest{margin-top:var(--s5);padding:var(--s4);border:2px dashed var(--border-strong);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--s2)}.ai-interest p{margin:0}.ai-interest-head{display:flex;align-items:center;gap:var(--s2)}.ai-interest-head h3{margin:0}.ai-soon{padding:2px 10px;border-radius:999px;background:var(--surface-soft);color:var(--ink-soft);font-size:var(--t-hint);font-weight:700}.ai-check{display:flex;align-items:center;gap:var(--s2);min-height:40px}.ai-check input{width:20px;height:20px;accent-color:var(--primary)}.ai-bands{display:flex;flex-wrap:wrap;gap:var(--s2)}.plan-option.is-selected{border-color:var(--primary);background:var(--surface-soft);box-shadow:inset 0 0 0 1px var(--primary)}.plan-option-body{display:flex;flex-direction:column;gap:var(--s1);min-width:0}.plan-option-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s1) var(--s3)}.plan-name{font-weight:700;font-size:var(--t-lead)}.plan-price{color:var(--ink-soft);font-variant-numeric:tabular-nums}.plan-covers{color:var(--ink-faint);font-size:var(--t-hint)}.chip-list{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;margin:var(--s2) 0 var(--s3);padding:0}.chip{display:inline-flex;align-items:center;gap:var(--s2);background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;padding:var(--s1) var(--s1) var(--s1) var(--s4);font-size:var(--t-small);line-height:1.3}.chip-x{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink-soft);cursor:pointer;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:var(--t-lead);line-height:1;padding:0;transition:background-color var(--transition),color var(--transition)}.chip-x:hover,.chip-x:focus-visible{background:var(--surface);color:var(--danger)}.chip-add{display:flex;gap:var(--s2);align-items:center}.chip-add input{flex:1 1 auto}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#141c1a80;display:flex;align-items:center;justify-content:center;padding:var(--s4);z-index:1000}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s5);max-width:460px;width:100%;box-shadow:var(--shadow-md)}.modal-title{margin:0 0 var(--s2);font-size:var(--t-lead);font-weight:700}.modal-body{margin:0 0 var(--s5);color:var(--ink-soft)}.modal-actions{display:flex;gap:var(--s3);justify-content:flex-end;flex-wrap:wrap}.concept-prompt-text{font-size:var(--t-title);font-weight:700;color:var(--ink);margin:var(--s2) 0 var(--s3);text-align:center}.concept-prompt-big{font-size:var(--t-display);font-weight:700;color:var(--ink);text-align:center;margin:var(--s5) 0 var(--s4);min-height:1.2em;line-height:1.25}.concept-sequence-row{display:flex;gap:var(--s2);justify-content:center;margin:var(--s3) 0 var(--s5);flex-wrap:wrap}.concept-seq-slot{display:inline-flex;align-items:center;justify-content:center;min-width:60px;min-height:52px;padding:var(--s1) var(--s3);border:2px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface);font-weight:700;color:var(--ink-soft)}.concept-seq-slot.filled{border-style:solid;border-color:var(--success);background:var(--success-bg);color:var(--ink)}.concept-timer{text-align:center}.concept-timer-display{font-size:var(--t-display);font-weight:700;color:var(--primary);margin:var(--s4) 0;font-variant-numeric:tabular-nums}@media (max-width: 560px){.app-shell{padding:0 var(--s4) var(--s6)}.tile{min-height:132px;font-size:var(--t-title)}}.studio{display:grid;gap:var(--s4)}.studio .tabs{margin-bottom:var(--s4)}.studio-type{display:grid;gap:var(--s3)}.studio-type-head{display:flex;gap:var(--s3);align-items:center;justify-content:space-between;flex-wrap:wrap}.studio-type-form{display:grid;gap:var(--s2);border-top:1px solid var(--border);padding-top:var(--s3)}.studio-sent{margin:var(--s3) 0;padding:var(--s3);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-soft)}.studio-sent-text{margin:0;white-space:pre-wrap;word-break:break-word;font:inherit}.studio-data{margin-top:var(--s4);border-top:1px solid var(--border);padding-top:var(--s3)}.studio-data summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}.studio-data p{margin:var(--s2) 0}.studio-gen{display:grid;gap:var(--s3)}.studio-gen p{margin:0}.studio-failing{margin:0;padding-inline-start:1.2em}.studio-preview{display:grid;gap:var(--s2);padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.studio-preview-bar{display:flex;gap:var(--s3);align-items:center;justify-content:space-between;flex-wrap:wrap}.studio-data-summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}.studio-shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s3)}.studio-shot{margin:0;display:grid;gap:var(--s1)}.studio-shot img,.studio-shot-empty{width:100%;aspect-ratio:4 / 3;object-fit:contain;object-position:top;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft)}.studio-shot figcaption{font-size:.9em;color:var(--ink-soft)}.studio-photo-check{display:flex;gap:var(--s2);align-items:center;min-height:44px;margin-top:var(--s2)}.studio-photo-preview{display:flex;gap:var(--s3);align-items:flex-end;flex-wrap:wrap;margin-top:var(--s2)}.studio-photo-preview img{max-width:min(100%,320px);max-height:240px;border:1px solid var(--border);border-radius:var(--radius)}.ai-page{display:grid;gap:var(--s4)}.flow-open{justify-self:start;min-height:44px}.flow-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:var(--s3);background:#14161c73}.flow-dialog{width:min(1040px,100%);max-height:calc(100vh - 32px);overflow:auto;display:grid;gap:var(--s3)}.flow-map{width:100%;height:auto;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius);touch-action:none;-webkit-user-select:none;user-select:none}.flow-sphere{cursor:grab;stroke:var(--border-strong);stroke-width:1}.flow-sphere:active{cursor:grabbing}.flow-sea-light{stop-color:var(--surface)}.flow-sea-dark{stop-color:var(--surface-soft)}.flow-glow{pointer-events:none}.flow-glow-in{stop-color:var(--primary);stop-opacity:.14}.flow-glow-out{stop-color:var(--primary);stop-opacity:0}.flow-grid{fill:none;stroke:var(--border);stroke-width:.6;pointer-events:none}.flow-land{fill:var(--border-strong);fill-opacity:.55;stroke:var(--surface);stroke-width:.5;pointer-events:none}.flow-edge{cursor:pointer}.flow-edge-hit{fill:none;stroke:transparent;stroke-width:18}.flow-edge-line{fill:none;stroke:var(--ink-soft);stroke-width:2;stroke-linecap:round}.flow-behind .flow-edge-line{stroke-dasharray:2 5;opacity:.45;pointer-events:none}.flow-edge.is-on .flow-edge-line{stroke:var(--primary);stroke-width:4}.flow-edge-flow{fill:none;stroke:var(--surface);stroke-width:2;stroke-linecap:round;stroke-dasharray:2 14;opacity:.8;pointer-events:none}.flow-map.is-moving .flow-edge-flow{animation:flow-dash 1.1s linear infinite}@keyframes flow-dash{to{stroke-dashoffset:-16}}.flow-pulse{fill:var(--primary);stroke:var(--surface);stroke-width:2.5;pointer-events:none}.flow-arrow{fill:var(--ink-soft)}.flow-arrow-on{fill:var(--primary)}.flow-node{cursor:pointer}.flow-node circle{fill:var(--surface);stroke:var(--primary);stroke-width:3}.flow-node circle.flow-node-halo{fill:var(--primary);fill-opacity:.12;stroke:none}.flow-node.is-on circle{fill:var(--primary)}.flow-node.is-on circle.flow-node-halo{fill-opacity:.2}.flow-node.is-behind{opacity:.3}.flow-node.is-unplaced circle{stroke-dasharray:4 3}.flow-node text.flow-node-note{font-weight:400;font-size:13px;fill:var(--ink-soft)}.flow-node text{font:700 15px var(--font, system-ui);fill:var(--ink);paint-order:stroke;stroke:var(--surface-soft);stroke-width:4px}.flow-body{display:grid;grid-template-columns:minmax(200px,300px) 1fr;gap:var(--s3);align-items:start}@media (max-width: 720px){.flow-body{grid-template-columns:1fr}}.flow-steps{margin:0;padding:0;list-style:none;display:grid;gap:var(--s1)}.flow-step{width:100%;min-height:44px;display:grid;gap:2px;text-align:start;padding:var(--s2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}.flow-step.is-on{border:2px solid var(--primary)}.flow-step-label{font-weight:700}.flow-detail h3{margin:0}.flow-section{margin-top:var(--s2)}.flow-section p{margin:0}.flow-history{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.flow-history li{display:flex;gap:var(--s3);justify-content:space-between;align-items:center;flex-wrap:wrap;padding:var(--s2) var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.assist-home{display:grid;gap:var(--s4)}.assist-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--s4)}.assist-option{display:grid;grid-template-rows:auto 1fr auto;gap:var(--s2);color:inherit;text-decoration:none}.assist-option h2,.assist-option p{margin:0}.assist-option .btn{justify-self:start}.assist-option.is-locked .btn{opacity:.6;cursor:default}.assist-expert,.assist-work{display:grid;gap:var(--s2);padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.assist-tags{display:flex;flex-wrap:wrap;gap:var(--s1);margin:0}.assist-booking,.assist-form{display:grid;gap:var(--s2);border-top:1px solid var(--border);padding-top:var(--s3)}.assist-log{margin:var(--s2) 0 0;padding-inline-start:1.2em}.assist-flags{margin:0;padding-inline-start:1.2em}.assist-time{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center}.assist-time input{flex:1 1 200px;min-height:44px}.assist-table{width:100%;border-collapse:collapse}.assist-table th,.assist-table td{text-align:start;padding:var(--s2);border-bottom:1px solid var(--border);vertical-align:top}.acting-banner{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3);align-items:center;justify-content:space-between;max-width:1040px;margin:var(--s2) auto;padding:var(--s2) var(--s3);border:2px solid var(--primary);border-radius:var(--radius);background:var(--surface)}.ai-credits{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3);align-items:center;margin:var(--s3) 0 0;padding:var(--s2) var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.ai-credits.is-empty{border-color:var(--border-strong)}.ai-credits-out{flex-basis:100%;font-weight:700}.ai-shop{margin-top:var(--s4)}.ai-shop-message{font-weight:700}.sub-pack{display:flex;align-items:center;gap:var(--s3)}.sub-pack .plan-option-body{flex:1 1 auto}.sub-pack-qty select{min-width:4.5rem}.ai-offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--s3)}.ai-offer{display:grid;gap:var(--s1);grid-template-rows:auto auto 1fr auto;padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.ai-offer p{margin:0}.ai-offer.is-current{border:2px solid var(--primary)}.ai-offer .btn,.ai-offer .pill{justify-self:start;align-self:end;margin-top:var(--s2)}.ai-sources{margin-top:var(--s2)}.ai-sources ol{margin:var(--s1) 0 0;padding-inline-start:1.4em}.ai-sources a{word-break:break-word}.ai-turns{display:grid;gap:var(--s3);margin-bottom:var(--s3)}.ai-turn{padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.ai-turn.is-user{background:var(--surface-soft)}.ai-who{margin:0 0 var(--s1);font-weight:700;font-size:.9em;color:var(--ink-soft)}.ai-text{white-space:pre-wrap;word-break:break-word}.ai-sent{margin-top:var(--s2)}.ai-sent summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--ink-soft)}.ai-sent p{white-space:pre-wrap;margin:var(--s2) 0 0;padding:var(--s2) var(--s3);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-soft);font-size:.95em}.ai-notice{padding:var(--s2) var(--s3);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-soft)}.ai-turn-note{margin:var(--s2) 0 0}.ai-data{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s2) var(--s3);margin:0 0 var(--s3);display:grid;gap:2px}.ai-data-option{display:flex;gap:var(--s2);align-items:center;min-height:44px}.ai-suggestions{display:grid;gap:var(--s3);padding-inline-start:1.4em}.ai-suggestions p{margin:0 0 var(--s1)}.studio-history{display:grid;gap:var(--s1);margin-top:var(--s4);border-top:1px solid var(--border);padding-top:var(--s3)}.home-bar{display:none}@media (max-width: 720px){.home-controls{display:none}.home-bar{position:fixed;left:var(--s3);right:var(--s3);bottom:calc(env(safe-area-inset-bottom,0px) + var(--s2));z-index:20;display:flex;align-items:center;gap:var(--s2);min-height:56px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-md)}.home-bar>.btn{min-height:44px}.home-bar-end{min-width:0}.home-bar-end{margin-inline-start:auto;display:flex}.home-bar-options{position:absolute;left:0;right:0;bottom:calc(100% + var(--s2));display:grid;gap:var(--s2);padding:var(--s3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-md)}.home-bar-options .field{margin:0}html:has(.home-bar-options) .tb-launcher{display:none}html:has(.home-bar) .app-shell{padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--home-bar-h, 64px) + var(--s5) * 2)}html:has(.home-bar) .tb-launcher{bottom:calc(env(safe-area-inset-bottom,0px) + var(--home-bar-h, 64px) + var(--s2) + var(--s3))}}.learn{display:grid;gap:var(--s4)}.learn-section h2{margin-top:0}.learn-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.learn-item{display:grid;gap:var(--s1);padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius);color:inherit;text-decoration:none;background:var(--surface)}.learn-item:hover{background:var(--surface-soft)}.learn-title{font-weight:700;color:var(--primary)}.learn-summary{color:var(--ink-soft)}.learn-status{justify-self:start}.guide{display:grid;gap:var(--s4);max-width:760px;margin:0 auto}.guide>*,.learn>*{min-width:0}.guide h1{margin:0 0 var(--s2)}.guide-summary{font-size:1.1em;color:var(--ink-soft)}.guide-body{max-width:68ch}.guide-body h2{font-size:1.2em;margin:var(--s5) 0 var(--s2)}.guide-body p,.guide-body li{line-height:1.65}.guide-body ol,.guide-body ul{padding-inline-start:1.4em}.guide-body li+li{margin-top:var(--s1)}.guide-body{overflow-wrap:anywhere}.guide-cite{font-size:.75em;line-height:0}.guide-footer{margin-top:var(--s5);padding-top:var(--s3);border-top:1px solid var(--border);color:var(--ink-soft)}.guide-draft{margin-bottom:var(--s3)}.guide-review h3{margin:var(--s5) 0 var(--s2)}.guide-review-form{margin-top:var(--s4)}.guide-history{padding-inline-start:1.2em}.guide-history-note{white-space:pre-wrap;color:var(--ink-soft);margin-top:var(--s1)}.navgroup{display:inline-flex}.topbar nav .navgroup-trigger{cursor:pointer;display:inline-flex;align-items:center;gap:.3em;white-space:nowrap}.navgroup-panel .usermenu-item.active{font-weight:700;background:var(--surface-soft)}.ai-credits-meter{display:block;flex:1 1 140px;height:10px;border:1px solid var(--border-strong, var(--border));border-radius:999px;overflow:hidden;background:var(--surface)}.ai-credits-meter>span{display:block;height:100%;background:var(--primary)}.ai-terms ul{padding-inline-start:1.2em}.ai-terms li+li{margin-top:var(--s1)}.backup-codes{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem}.backup-codes code,.two-factor-key{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.05em;letter-spacing:.04em;overflow-wrap:anywhere}.home-top{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-bottom:16px}.home-top .home-controls{margin:0}.home-top .home-reward{margin-inline-start:auto}.preference-prompt h2{margin-top:0}.g-board{display:flex;flex-direction:column;align-items:center;gap:var(--s4);width:100%;transition:opacity var(--round-transition-ms, .3s) ease}.g-board.is-fading{opacity:0;pointer-events:none}.g-prompt{display:flex;align-items:center;justify-content:center;gap:var(--s3);min-height:56px;text-align:center}.g-prompt-text{font-size:var(--t-display);font-weight:700;line-height:1.2;color:var(--ink)}.g-say{flex:none;width:48px;height:48px;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface);font-size:1.3em;cursor:pointer}.g-scene{position:relative;width:min(100%,760px,calc(52vh * var(--ar, 1.33)));border-radius:var(--radius-lg);overflow:hidden;border:2px solid var(--border);background:var(--surface);touch-action:none}.g-scene svg{display:block;width:100%;height:100%}.g-scene-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.g-scene-overlay>*{pointer-events:auto}.g-hit{fill:transparent;cursor:pointer}.g-hit:focus-visible{outline:none;stroke:var(--focus);stroke-width:4}.g-outline{fill:none;stroke:var(--success);stroke-width:5;stroke-dasharray:10 6}.g-spot{position:absolute;width:48px;height:48px;margin:-24px 0 0 -24px;padding:0;border-radius:50%;border:3px dashed var(--border-strong);background:color-mix(in srgb,var(--surface) 70%,transparent);cursor:pointer}.g-spot.is-hidden{border-color:transparent;background:transparent;width:64px;height:64px;margin:-32px 0 0 -32px}.g-spot.is-open{border-color:var(--primary);border-style:solid;background:color-mix(in srgb,var(--primary) 18%,transparent)}.g-spot.is-target{border-color:var(--success);background:color-mix(in srgb,var(--success) 25%,transparent);border-width:4px}.g-spot.is-zone{width:auto;height:auto;margin:0;border-radius:var(--radius);border:3px dashed transparent;background:transparent}.g-spot.is-zone.is-open{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent)}.g-spot:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.g-tag{position:absolute;transform:translate(-50%,-50%);padding:4px 12px;border-radius:999px;background:var(--surface);border:2px solid var(--success);color:var(--ink);font-weight:700;white-space:nowrap;box-shadow:var(--shadow-md)}.g-tray{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s3);min-height:112px;width:min(100%,900px);padding:var(--s3);border-radius:var(--radius-lg);background:var(--surface-soft)}.g-chip{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:96px;min-height:96px;padding:var(--s2) var(--s3);border:3px solid var(--border-strong);border-radius:var(--tile-radius);background:var(--surface);color:var(--ink);font:inherit;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:transform .12s ease,box-shadow .12s ease,border-color var(--transition);animation:g-chip-in .22s ease-out}@keyframes g-chip-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}[data-reduce-motion=true] .g-chip{animation:none}.g-chip.is-held{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 30%,transparent)}.g-chip.is-dragging{cursor:grabbing;box-shadow:0 12px 28px #00000040}.g-chip.is-word{min-height:64px}.g-chip.is-word .g-chip-word{font-size:var(--t-lead)}.g-chip.is-big{min-width:140px;min-height:140px}.g-chip.is-big .g-chip-emoji{font-size:72px}.g-chip-pic{width:64px;height:64px;display:block;border-radius:10px}.g-chip-emoji{display:grid;place-items:center;font-size:46px;line-height:1}.g-chip-word{font-weight:700;font-size:var(--t-body);line-height:1.1}.is-bounce{animation:g-bounce .38s ease}@keyframes g-bounce{0%,to{transform:translate(0)}30%{transform:translate(-8px)}65%{transform:translate(6px)}}[data-reduce-motion=true] .is-bounce{animation:none}.g-hero{font-size:120px;line-height:1;text-align:center}.g-yesno-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);width:min(100%,620px)}.g-yn{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s2);font-size:var(--t-title);font-weight:800}.g-yn-mark{font-size:2.4em;line-height:1}.g-yn.is-yes .g-yn-mark{color:var(--success)}.g-yn.is-no .g-yn-mark{color:var(--danger)}.g-face{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative}.g-tile-pic{font-size:52px;line-height:1}.g-tile-word{font-weight:700}.tile.is-picked{border-color:var(--primary);border-width:5px;background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.g-tick{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--primary);color:var(--primary-ink);font-weight:800}.g-done-bar{justify-content:center}.g-card .g-card-back{font-size:2.4em;font-weight:800;color:var(--primary)}.g-card:not(.is-shown){background:color-mix(in srgb,var(--primary) 14%,var(--surface))}.g-slot-row{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s2)}.g-slot{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:96px;min-height:84px;padding:var(--s2);border:3px dashed var(--border-strong);border-radius:var(--tile-radius);background:var(--surface);font:inherit;font-weight:700;font-size:var(--t-lead);color:var(--ink)}.g-slot.is-open{border-color:var(--primary);border-style:solid}.g-slot.is-filled{border-style:solid;border-color:var(--success);background:var(--success-bg)}.g-slot-n{color:var(--ink-faint);font-size:var(--t-title)}.g-copy-row{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s6)}.g-copy-side{display:flex;flex-direction:column;align-items:center;gap:var(--s2)}.g-blocks{display:grid;gap:6px;width:min(42vw,240px);aspect-ratio:1;padding:6px;border-radius:var(--radius);background:var(--surface-soft);border:2px solid var(--border-strong)}.g-hidden-model{display:grid;place-items:center;font-size:3em;color:var(--ink-faint)}.g-block{border:2px solid var(--border-strong);border-radius:8px;background:var(--surface);padding:0;cursor:pointer;aspect-ratio:1}span.g-block{cursor:default}.g-palette{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s3)}.g-swatch{display:flex;align-items:flex-end;justify-content:center;width:84px;height:84px;padding-bottom:4px;border:3px solid var(--border-strong);border-radius:var(--radius);cursor:pointer}.g-swatch.is-held{outline:4px solid var(--primary);outline-offset:3px}.g-swatch-word{padding:0 6px;border-radius:6px;background:var(--surface);color:var(--ink);font-weight:700;font-size:var(--t-hint)}.g-chain-title{margin:0;text-align:center}.g-chain-steps{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none}.g-chain-n{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface);font-weight:700}.g-chain-steps .is-done .g-chain-n{background:var(--success-bg);border-color:var(--success);color:var(--success)}.g-chain-steps .is-now .g-chain-n{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.g-levels{display:flex;flex-direction:column;gap:var(--s2);width:min(100%,420px);padding:var(--s4);border-radius:var(--radius-lg);background:var(--surface-soft)}.g-chain-summary{display:flex;flex-direction:column;align-items:center;gap:var(--s3)}.g-chain-summary ul{margin:0;padding:0;list-style:none}.g-wait{gap:var(--s5)}.g-wait-count{margin:0;color:var(--ink-soft)}.g-wait-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s3);width:min(78vw,320px);aspect-ratio:1;border-radius:50%;border:6px solid var(--border-strong);background:var(--surface-soft);color:var(--ink);font:inherit;font-size:var(--t-title);font-weight:800;cursor:pointer}.g-wait-btn.is-go,.g-wait-btn.is-done{border-color:var(--success);background:var(--success-bg)}.g-wait-sign{font-size:3em;line-height:1}.g-wait-end{display:flex;flex-direction:column;align-items:center;gap:var(--s3)}.g-bins{display:grid;gap:var(--s3);width:min(100%,900px)}.g-spot.is-bin{position:static;width:auto;height:auto;min-height:180px;margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--s2);padding:var(--s3);border-radius:var(--radius-lg);border:3px dashed var(--border-strong);background:var(--surface)}.g-spot.is-bin.is-open{border-style:solid;border-color:var(--primary)}.g-bin-head{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-lead);font-weight:800;color:var(--ink)}.g-bin-pic{font-size:1.8em}.g-bin-items{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;font-size:1.6em}.g-stage3d{width:min(100%,760px);aspect-ratio:4 / 3;border-radius:var(--radius-lg);overflow:hidden;border:2px solid var(--border);background:var(--surface-soft)}.g-canvas3d{display:block;width:100%;height:100%;touch-action:none}.g-turn-row{display:flex;gap:var(--s3)}.g-turn{min-width:140px;min-height:56px;font-size:var(--t-lead)}.scene-editor{border:0;padding:0;margin:0}.scene-editor-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--s4);align-items:start}.scene-editor-preview .g-scene{width:100%}.scene-editor-parts{display:flex;flex-direction:column;gap:var(--s1)}.scene-editor-part{display:flex;align-items:center;gap:var(--s2);min-height:40px;font-weight:600}.scene-editor-part input{width:22px;height:22px;accent-color:var(--primary)}@media (max-width: 720px){.scene-editor-body{grid-template-columns:1fr}.g-chip{min-width:84px;min-height:84px}.g-chip-pic{width:52px;height:52px}.g-hero{font-size:96px}.g-yn{min-height:140px}.g-copy-row{gap:var(--s4)}}.g-studio-frame{display:block;width:100%;border:0;background:transparent;color-scheme:normal}.g-trace{display:grid;justify-items:center;gap:var(--s3)}.g-trace-pad{width:min(100%,640px);aspect-ratio:640 / 300;height:auto;touch-action:none;background:var(--surface);border:var(--tile-border-width, 2px) solid var(--border-strong);border-radius:var(--tile-radius, var(--radius-lg));cursor:crosshair}.g-trace-pad.correct{border-color:var(--success);box-shadow:inset 0 0 0 3px var(--success)}.g-trace-model{width:min(50%,240px);aspect-ratio:640 / 300;height:auto;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius)}.g-trace-actions{display:flex;gap:var(--s3);flex-wrap:wrap;justify-content:center}.g-trace-actions .btn{min-height:56px;min-width:140px}.custom-pic{display:block;object-fit:cover;border-radius:10px}.g-tile-img{width:72px;height:72px;margin:0 auto}.g-chip-pic.custom-pic{width:64px;height:64px}.g-hero-img{width:160px;height:160px;border-radius:var(--radius-lg);margin:0 auto}.g-bin-img{width:44px;height:44px}.g-slot-img{width:40px;height:40px}.face-text{display:inline-flex;flex-direction:column;align-items:center;gap:6px}.md-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000059}.md-drawer{position:absolute;top:0;right:0;bottom:0;width:min(520px,100vw);display:flex;flex-direction:column;gap:var(--s3);padding:var(--s4);overflow-y:auto;background:var(--surface);color:var(--ink);box-shadow:-12px 0 40px #00000040}.md-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s3)}.md-head h2,.md-intro{margin:0}.md-scope{display:flex;flex-wrap:wrap;gap:var(--s4);font-weight:600}.md-scope input{accent-color:var(--primary)}.md-upsell{display:flex;flex-direction:column;gap:var(--s3);align-items:flex-start}.md-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--s2)}.md-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--s2) var(--s3);align-items:center;padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius)}.md-pic{display:grid;place-items:center;width:64px;height:64px;border-radius:12px;background:var(--surface-soft);font-size:34px;overflow:hidden}.md-pic img{width:100%;height:100%;object-fit:cover}.md-word{display:flex;flex-direction:column;gap:2px;min-width:0}.md-word strong{font-size:var(--t-lead)}.md-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--s2)}.md-actions .btn{min-height:40px;padding:0 var(--s3)}.md-recording{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s2);padding:var(--s1) var(--s2);border-radius:var(--radius);background:var(--surface-soft)}.md-dot{width:12px;height:12px;border-radius:50%;background:var(--danger)}.tb{--tb-people: #fff3b0;--tb-people-edge: #b38f00;--tb-action: #d6f2d0;--tb-action-edge: #3c8a2e;--tb-describe: #d4e6fb;--tb-describe-edge: #2f66b0;--tb-thing: #ffe0c2;--tb-thing-edge: #b5651d;--tb-social: #fbd9ea;--tb-social-edge: #b0407a;--tb-question: #e6dbf7;--tb-question-edge: #6a43a8;--tb-little: #eeeeee;--tb-little-edge: #6b6b6b;--tb-ink: #1b1b1b;display:flex;flex-direction:column;gap:var(--s3)}.tb-strip{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;padding:var(--s3);border:2px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface)}.tb-sentence{flex:1 1 320px;min-height:56px;display:flex;flex-wrap:wrap;gap:var(--s1);align-items:center}.tb-placeholder{color:var(--ink-faint)}.tb-chip{padding:6px 12px;border-radius:var(--radius);border:2px solid;color:var(--tb-ink);font-weight:700;font-size:var(--t-lead)}.tb-strip-actions{display:flex;gap:var(--s2)}.tb-speak{font-size:var(--t-lead);min-height:52px}.tb-core,.tb-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s2)}.tb-cell{display:flex;flex-direction:column;gap:4px;min-width:0}.tb-cell.is-gap{min-height:112px}.tb-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:112px;padding:var(--s2);border:3px solid;border-radius:var(--tile-radius);color:var(--tb-ink);font:inherit;font-weight:800;cursor:pointer}.tb-btn:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.tb-btn.is-hidden{opacity:.4;border-style:dashed}.tb-pic{font-size:44px;line-height:1}.tb-photo{width:64px;height:64px}.tb-word{font-size:var(--t-lead);line-height:1.1;text-align:center;overflow-wrap:anywhere}.tb-state{font-size:var(--t-hint);font-weight:600}.tb-remove{min-height:32px}.tb-people{background:var(--tb-people);border-color:var(--tb-people-edge)}.tb-action{background:var(--tb-action);border-color:var(--tb-action-edge)}.tb-describe{background:var(--tb-describe);border-color:var(--tb-describe-edge)}.tb-thing{background:var(--tb-thing);border-color:var(--tb-thing-edge)}.tb-social{background:var(--tb-social);border-color:var(--tb-social-edge)}.tb-question{background:var(--tb-question);border-color:var(--tb-question-edge)}.tb-little{background:var(--tb-little);border-color:var(--tb-little-edge)}.tb-tabs{display:flex;gap:var(--s2);overflow-x:auto;padding-bottom:4px}.tb-tab{flex:none;min-height:48px;padding:0 var(--s4);border:2px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.tb-tab.is-active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.tb-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s3)}.tb-add h3{margin-top:0}.tb-chip .custom-pic.tb-chip-photo{width:28px;height:28px;object-fit:cover;border-radius:6px;vertical-align:middle}.tb-launcher{position:fixed;inset-inline-end:calc(var(--s4) + env(safe-area-inset-right,0px));bottom:calc(var(--s4) + env(safe-area-inset-bottom,0px));z-index:900;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:76px;height:76px;border:3px solid var(--primary);border-radius:50%;background:var(--surface);color:var(--primary);font:inherit;font-weight:700;cursor:pointer;box-shadow:var(--shadow-md)}.tb-launcher>span:first-child{font-size:28px;line-height:1}.tb-launcher:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.tb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;flex-direction:column;background:var(--bg)}.tb-overlay-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid var(--border);background:var(--surface)}.tb-overlay-body{flex:1;overflow-y:auto;padding:var(--s4);width:min(100%,1100px);margin:0 auto}@media (max-width: 720px){.tb-launcher{width:64px;height:64px}.tb-core,.tb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tb-btn,.tb-cell.is-gap{min-height:96px}.tb-pic{font-size:36px}}.tb-helper{display:grid;gap:var(--s2)}.tb-helper h3{margin:0}.tb-helper-row{display:flex;gap:var(--s2);flex-wrap:wrap}.tb-helper-row input{flex:1 1 220px;min-height:44px}.tb-helper-result ul{margin:var(--s2) 0;padding-inline-start:1.2em}html:not([lang=en]) .tb-launcher>span:last-child{max-width:70px;font-size:.72rem;line-height:1.1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-vietnamese-wght-normal-RvljkFvg.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-ext-wght-normal-B6JQhE1e.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-wght-normal-ci0D1wrL.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAa0ABQAAAAADOwAAAZHAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJtP01WQVJGBmA/U1RBVIEcAGQvXBEICoMkgmcLFgAwhEwBNgIkAyYEIAWGXAdiDAcbOgtRlHLSRcD8TEzkdoghPRuspKefbVnJIM5yRfA8vZv9uTNJSCZY21Scrigr6qyJ/C3sE1OFKuVP3e+lxUTbYio1zb/kFdk2bufY2BlhWERRBrcDUBhB5GEpd2Cy+MDxqf9zLPX+XVsk5r+s50d6IpWLatqbdT6f2MAikiOKQocbjya2QT0DqPDX4R0jQBgAUAiCRhDA0EkvYeLk9X3I2bEWI8jBAihIANm+kUWQBgggWChcBBdFhXlAUgOCAgBA0AgKjUJ8HKvjddFCKSgAVklEBYAeEJgCQJH0qB3B+neDg4sAA4hAD0AVIEAA0IACJGeaUjMIIIhBUE/zNABjTQMBwEVRcwcYBUCObLERABAgjAA1M/ZSa9hSi4OlpsnZ2KBOVUsAZlRGl1W0NZ6gSwhQPIAFs7YFL0QS91vRQgdgx2VDAnIegKpQvwAJIoLgooBAGtCJcHizg0TDiz8vhPgIcVXaDJu37ZyDAIjFy4AAiC1JAA0olJwN6nFAACQk/zfQVUuA3t5ELKMT9hpBSRj+HBSggYCIAIEkUoC4PCIQIWHGA8+IStxf0PW15ntP22gc+Wo+BLyQAHECQiAVd+c3Ba8gZ4NOACBaLOhsbIMkAXEmuHsSAvkf4oJaAogH6nEQAzoBIEihUAwAA0AACAObAGcANYAAABaqgMmpWAhiiVyrvNyqFV8tMQ5Iyq6r9Lf7W82i8ILl2cv8zbfdJ5lnPzSnvt/XXPfRR/5pH3xA+u5uS0798EPJ3Fft33w36Wc+8E/7aIB/9fvvb1pE9erNXLB9mkw//cSg8Cnx03VGXDvZnRzKqV9Xkhn7eRHb3wVjHpg19nkZpX9bBU+vnHegrsuQcbW9Bi7oO33h+8SU0Tly/MbeYUuG1cftVz6oNxrW0qH1iezq446fkDFo/rgvTkqt7zmteFzncZ0uxXti09FFF2z+C7CODpjUudOE5NSeb3bv/mbPKcmOEzpWQ3VBgBAuj/AOY3qMm7UvgA8qo3+qvAUBBAX0wADQG4AG+jCKaSxkBe/zvcTG8jRpRZgqhCog4sd++cOo7J+/RdvaaMoc78Ri/PNPSclx6fDvG1Kt3qQFi1rq+5EaavTtt9TVvfvucYsA5wc4oESU+E1ikF9TkrOkIsIH5Fawx7SBNLnMcWlM3skBluCmQNs7GeyFvYVDamsqwhxx18n/+WdxzDgOLU1AqbUlb3m+KOT9+ONvY/7XlrdLS//5v7nN97XHj0VzJpJvz4spq0V7ioXDuv2YrSxtF/KZmvbWfKtorXSh8dfvgGu+ev/nFSaXM6jyuCE/f/EpmuP7Rqu8R98vP/+tXUdrOgKlZP9Q/s+fRF9+3CHZd4EugfPv158me9X7v/6aSMCxMJmIr//65bNXngl7+uiPP5oKx+y27D8trp+psUzMacpm80XlnYeMAct0LynxhNYgaP3dtn8/LBAi+ksr+7NvjjtJV+UXrz0uLXV1x08AZRN1S2A8EaVE5afk/dfGjz//+fdHn36Xdttz2d9/z+bawZ8/slNN1aYtq+ZPGzNuPGdwOsfYflwmHCkPgs5DcKizvdpS/3gEUMW9/lvQvWp1bGTW1fpngC/uSVYAfH3TeSusL8TtlHUD4KAAEHjahk4YpuffGwEBN/dUmpHqdHyJ3Ap8O3UlQ4gCNrMRwLBBKiskL6a+RoBi/9XGlgc8L4/CUejQxaiIyqmomdhktOhfgDbDfaNDb4+yKIPd6IgmzDa0CByijWFmL2dlSRKagTIWXeIU9HDphoZiJeBTjAefHMxDhVSRFUgVcOkW3EGMahYVMFjWHhMluB2wAcbHYqF1LpsDF9C6s+CI2fDgh4wSuFEyGadjXAmIk3CugIRibLIti9ZtC8S4VSqfikGqPaoI122XyRYLBmsOmdiiTpqK1OklUQzpMcZmQRQV4M4oJCMkfRQXK+qvjifUcQd1bRdetW/LWjacYxvcttnVjWg5h0q4xw6rZyejSpZVZ78LzC4uyDNRQ4bymHSTMyM+SZ7D75mg/7YTlmNz7W8T00h0VEiGKB+F7iWYZFvSTiA4LVxttm2ATt5EoUWLJbY4EnLGrfsvEROlHtzlKn3H9VUT5tU/2dt3/EBv7foYzV/W4upyj04woO/gh6Vwwt3WGQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-ext-400-normal-DRk46D-x.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-400-normal-Bbz-b3yf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-ext-700-normal-BoVPHkS0.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-700-normal-CKkU2Dpt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}[data-design=scholar]{--font: "Lexend Variable", "Lexend", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Fraunces Variable", "Fraunces", Georgia, "Times New Roman", serif;--radius-sm: 10px;--radius: 14px;--radius-lg: 20px;--tile-radius: 20px;--shadow-sm: 0 1px 2px rgba(28, 27, 51, .04), 0 8px 24px rgba(28, 27, 51, .06);--shadow-md: 0 2px 6px rgba(28, 27, 51, .06), 0 16px 40px rgba(28, 27, 51, .12)}[data-design=scholar] h1,[data-design=scholar] h2,[data-design=scholar] h3,[data-design=scholar] .brand,[data-design=scholar] .modal-title{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em}[data-design=scholar] .card h2{font-size:var(--t-title)}[data-design=scholar] .topbar{border-bottom:0;padding:var(--s5) 0}[data-design=scholar] .brand-mark{color:var(--primary)}[data-design=scholar] .topbar nav{gap:var(--s2)}[data-design=scholar] .topbar nav a{border-radius:0;padding:var(--s2) var(--s2);font-weight:500}[data-design=scholar] .topbar nav a:hover{background:none;color:var(--primary)}[data-design=scholar] .topbar nav a.active{background:none;color:var(--primary);font-weight:600;box-shadow:inset 0 -2px 0 var(--primary)}[data-design=scholar] .usermenu-trigger{border-color:var(--border-strong)}[data-design=scholar] .card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s6);box-shadow:var(--shadow-sm)}[data-design=scholar] .banner{background:var(--surface-soft);border:0;border-radius:var(--radius-lg);padding:var(--s4) var(--s5)}[data-design=scholar] .banner strong{font-family:var(--font-display);font-weight:600}[data-design=scholar] .error{border:0;border-inline-start:4px solid var(--danger);border-radius:var(--radius)}[data-design=scholar] .btn{border-radius:999px;padding:var(--s3) var(--s5);font-weight:600}[data-design=scholar] .btn.secondary{color:var(--primary);border-color:var(--border-strong)}[data-design=scholar] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--primary)}[data-design=scholar] .field input,[data-design=scholar] .field select,[data-design=scholar] .field textarea{border-radius:var(--radius);padding:var(--s3) var(--s4);min-height:52px;background:var(--surface)}[data-design=scholar] .field label,[data-design=scholar] .field-label{font-weight:600}[data-design=scholar] .tabs{display:inline-flex;gap:var(--s1);padding:var(--s1);border:0;border-radius:999px;background:var(--surface-soft)}[data-design=scholar] .tab{border:0;border-radius:999px;padding:var(--s2) var(--s4)}[data-design=scholar] .tab:hover{background:var(--surface)}[data-design=scholar] .tab.is-active{background:var(--surface);color:var(--primary);font-weight:600;box-shadow:var(--shadow-sm)}[data-design=scholar] .pill,[data-design=scholar] .chip{border-radius:999px}[data-design=scholar] .list{gap:var(--s3)}[data-design=scholar] .list-item{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s4) var(--s5);background:var(--surface)}[data-design=scholar] .list-item:hover{border-color:var(--accent)}[data-design=scholar] .list-item .name{font-family:var(--font-display);font-size:var(--t-lead);font-weight:600}[data-design=scholar] .library-table th,[data-design=scholar] .report-table th{font-weight:600;color:var(--ink-soft)}[data-design=scholar] .library-name{font-family:var(--font-display);font-size:var(--t-lead);font-weight:600}[data-design=scholar] .template-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}[data-design=scholar] .template-card-title{font-family:var(--font-display)}[data-design=scholar] .usermenu-panel{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--s2)}[data-design=scholar] .usermenu-item{border-radius:var(--radius-sm)}[data-design=scholar] .modal{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}[data-design=scholar][data-screen=game] .card{box-shadow:none}[data-design=scholar][data-screen=game] .tile,[data-design=scholar][data-screen=game] .concept-prompt-big{font-family:var(--font)}[data-design=fresh]{--font: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 10px;--radius: 12px;--radius-lg: 18px;--tile-radius: 18px;--leaf: 16px 16px 16px 4px;--leaf-lg: 22px 22px 22px 6px;--shadow-sm: 0 1px 2px rgba(23, 34, 25, .05), 0 10px 30px rgba(23, 34, 25, .07);--shadow-md: 0 4px 10px rgba(23, 34, 25, .08), 0 18px 44px rgba(23, 34, 25, .12)}[data-design=fresh] h1,[data-design=fresh] h2,[data-design=fresh] h3,[data-design=fresh] .brand,[data-design=fresh] .modal-title{font-weight:800;letter-spacing:-.025em}[data-design=fresh] .card h2{font-size:var(--t-title)}[data-design=fresh] .topbar{border-bottom:0}[data-design=fresh] .topbar nav{gap:var(--s1);padding:var(--s1);border-radius:999px;background:var(--surface-soft)}[data-design=fresh] .topbar.is-tight nav{border-radius:var(--radius-lg)}[data-design=fresh] .topbar nav a{border-radius:var(--leaf);padding:var(--s2) var(--s3);min-height:40px;display:inline-flex;align-items:center;color:var(--ink);font-weight:600}[data-design=fresh] .topbar nav a:hover{background:var(--surface);color:var(--ink)}[data-design=fresh] .topbar nav a.active{background:var(--primary);color:var(--primary-ink);font-weight:800}[data-design=fresh] .usermenu-trigger{border-radius:var(--leaf);background:var(--surface-soft);border-width:1.5px}[data-design=fresh] .usermenu-panel{border:0;border-radius:var(--leaf-lg);box-shadow:var(--shadow-md);padding:var(--s3);gap:var(--s1)}[data-design=fresh] .usermenu-who{background:var(--surface-soft);border:0;border-radius:var(--leaf);padding:var(--s3)}[data-design=fresh] .usermenu-item{border-radius:var(--leaf);font-weight:600}[data-design=fresh] .card{border:0;border-radius:var(--radius-lg);padding:var(--s6);box-shadow:var(--shadow-sm)}[data-design=fresh] .banner{border:0;border-inline-start:5px solid var(--accent);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}[data-design=fresh] .btn{border-radius:var(--leaf);padding:var(--s3) var(--s5);font-weight:700}[data-design=fresh] .btn.secondary{border-width:1.5px;color:var(--primary)}[data-design=fresh] .field input,[data-design=fresh] .field select,[data-design=fresh] .field textarea{background:var(--surface-soft);border:0;border-bottom:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);border-radius:var(--radius) var(--radius) 0 0;min-height:50px}[data-design=fresh] .field input:focus,[data-design=fresh] .field select:focus,[data-design=fresh] .field textarea:focus{border-bottom-color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}[data-design=fresh] .field label,[data-design=fresh] .field-label{font-weight:700}[data-design=fresh] .tabs{border-bottom:0;gap:var(--s2);padding-bottom:0}[data-design=fresh] .tab{border:0;border-radius:var(--leaf);background:var(--surface-soft);color:var(--ink);font-weight:600}[data-design=fresh] .tab:hover{background:color-mix(in srgb,var(--primary) 12%,var(--surface))}[data-design=fresh] .tab.is-active{background:var(--primary);color:var(--primary-ink);font-weight:800}[data-design=fresh] .list{gap:var(--s3)}[data-design=fresh] .list-item{border:1px solid var(--border);border-radius:var(--radius);padding:var(--s4) var(--s5)}[data-design=fresh] .list-item .name,[data-design=fresh] .library-name{font-weight:800}[data-design=fresh] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}@media (max-width: 720px){[data-design=fresh] .list.program-rows{grid-template-columns:minmax(0,1fr);gap:var(--s3)}}[data-design=fresh] .list.program-rows>.list-item,[data-design=fresh] .list.program-rows>.list-item:last-child{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--s3);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--leaf-lg);padding:var(--s4)}[data-design=fresh] .list.program-rows .list-item-text{flex:1 1 auto}[data-design=fresh] .list.program-rows .toolbar{margin:0;gap:var(--s2)}[data-design=fresh] .list.program-rows .toolbar>a.btn{flex:1 1 auto}[data-design=fresh] .list.program-rows .toolbar>*{flex:0 0 auto}[data-design=fresh] .reward-total-link{border-radius:var(--leaf);background:var(--surface-soft);border-color:var(--border-strong)}[data-design=fresh] .modal{border:0;border-radius:24px 24px 24px 8px;box-shadow:var(--shadow-md)}[data-design=fresh] .pill,[data-design=fresh] .chip{border-radius:999px}[data-design=fresh][data-screen=game] .card{box-shadow:none;border:1px solid var(--border)}[data-design=fresh][data-screen=game] .tile{font-weight:800}@media (max-width: 560px){[data-design=fresh] .card{padding:var(--s4)}[data-design=fresh] .list.program-rows>.list-item,[data-design=fresh] .list.program-rows>.list-item:last-child{padding:var(--s3)}}[data-design=pastel]{--font: "DM Sans Variable", "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 10px;--radius: 12px;--radius-lg: 20px;--tile-radius: 16px;--shadow-sm: none;--shadow-md: none;--soft-primary: color-mix(in srgb, var(--primary) 12%, var(--surface));--soft-primary-strong: color-mix(in srgb, var(--primary) 20%, var(--surface))}[data-design=pastel] h1,[data-design=pastel] h2,[data-design=pastel] h3,[data-design=pastel] .brand,[data-design=pastel] .modal-title{font-weight:700;letter-spacing:-.01em}[data-design=pastel] .topbar{border-bottom:0}[data-design=pastel] .topbar nav{gap:var(--s2)}[data-design=pastel] .topbar nav a{border-radius:var(--radius);background:var(--surface-soft);color:var(--ink);padding:var(--s2) var(--s4);min-height:44px;display:inline-flex;align-items:center}[data-design=pastel] .topbar nav a:hover{background:var(--soft-primary);color:var(--ink)}[data-design=pastel] .topbar nav a.active{background:var(--soft-primary-strong);color:var(--ink);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--primary)}[data-design=pastel] .usermenu-trigger{border-color:transparent;border-radius:var(--radius);background:var(--soft-primary)}[data-design=pastel] .usermenu-trigger:hover{border-color:transparent;background:var(--soft-primary-strong)}[data-design=pastel] .usermenu-panel{border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--s3);gap:var(--s1)}[data-design=pastel] .usermenu-who{border:0;border-radius:var(--radius);background:var(--surface-soft);padding:var(--s3)}[data-design=pastel] .usermenu-item{border-radius:var(--radius)}[data-design=pastel] .usermenu-item:hover,[data-design=pastel] .usermenu-item:focus-visible{background:var(--soft-primary)}[data-design=pastel] .card{border:0;border-radius:var(--radius-lg)}[data-design=pastel] .banner{background:var(--accent);border:0;border-radius:var(--radius-lg);color:var(--ink)}[data-design=pastel] .banner .muted{color:var(--ink)}[data-design=pastel] .btn{border-color:transparent;border-radius:var(--radius)}[data-design=pastel] .btn:hover:not(:disabled){border-color:transparent}[data-design=pastel] .btn.secondary{background:var(--soft-primary);border-color:transparent;color:var(--ink)}[data-design=pastel] .btn.secondary:hover:not(:disabled){background:var(--soft-primary-strong);border-color:transparent}[data-design=pastel] .btn.ghost:hover:not(:disabled){background:var(--soft-primary)}[data-design=pastel] .field input,[data-design=pastel] .field select,[data-design=pastel] .field textarea{background:var(--surface-soft);border-radius:var(--radius)}[data-design=pastel] .field input:focus,[data-design=pastel] .field select:focus,[data-design=pastel] .field textarea:focus{background:var(--surface);border-color:var(--primary)}[data-design=pastel] .tabs{border-bottom:0;gap:var(--s2);padding-bottom:0}[data-design=pastel] .tab{border:0;border-radius:999px;background:var(--surface-soft);color:var(--ink);padding:var(--s2) var(--s5)}[data-design=pastel] .tab:hover{background:var(--soft-primary)}[data-design=pastel] .tab.is-active{background:var(--soft-primary-strong);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--primary)}[data-design=pastel] .list-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}[data-design=pastel] .list-item .name,[data-design=pastel] .library-name{font-weight:700}[data-design=pastel] .list.program-rows{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}@media (max-width: 900px){[data-design=pastel] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){[data-design=pastel] .list.program-rows{grid-template-columns:minmax(0,1fr);gap:var(--s3)}}[data-design=pastel] .list.program-rows>.list-item,[data-design=pastel] .list.program-rows>.list-item:last-child{flex-direction:column;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:var(--s3);text-align:center;border:0;border-radius:var(--radius-lg);padding:var(--s5) var(--s4) var(--s4);background:var(--soft-primary)}[data-design=pastel] .list.program-rows>.list-item:nth-child(3n+2){background:color-mix(in srgb,var(--accent) 40%,var(--surface))}[data-design=pastel] .list.program-rows>.list-item:nth-child(3n){background:color-mix(in srgb,var(--success) 12%,var(--surface))}[data-design=pastel] .list.program-rows .list-item-text{flex:0 0 auto}[data-design=pastel] .list.program-rows .list-item-meta{color:var(--ink)}[data-design=pastel] .list.program-rows .toolbar{margin:0;justify-content:center;gap:var(--s2)}[data-design=pastel] .list.program-rows .toolbar>*{flex:0 0 auto}[data-design=pastel] .list.program-rows .toolbar .btn.secondary{background:var(--surface)}[data-design=pastel] .reward-total-link{border-color:transparent;border-radius:999px;background:color-mix(in srgb,var(--accent) 40%,var(--surface));padding-inline:var(--s4)}[data-design=pastel] .modal{border:0;border-radius:var(--radius-lg);padding:var(--s6)}[data-design=pastel][data-screen=game] .tile{font-weight:700}[data-design=symbol]{--font: "Atkinson Hyperlegible", Verdana, system-ui, sans-serif;--control-border-width: 2px;--heavy: calc(var(--control-border-width, 2px) + 1px);--radius-sm: 6px;--radius: 8px;--radius-lg: 10px;--tile-radius: 12px;--shadow-sm: none;--shadow-md: 0 4px 16px rgba(0, 0, 0, .12)}[data-design=symbol] h1,[data-design=symbol] h2,[data-design=symbol] h3,[data-design=symbol] .brand,[data-design=symbol] .modal-title{font-weight:700;letter-spacing:0}[data-design=symbol] .topbar{padding-bottom:0;border-bottom:4px solid var(--primary);row-gap:var(--s2)}[data-design=symbol] .topbar .brand,[data-design=symbol] .topbar>.usermenu{margin-bottom:var(--s3)}[data-design=symbol] .topbar nav{align-self:flex-end;gap:var(--s1)}[data-design=symbol] .topbar nav a{border:3px solid var(--border-strong);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--surface-soft);color:var(--ink);font-weight:700;padding:var(--s2) var(--s4);min-height:44px;display:inline-flex;align-items:center}[data-design=symbol] .topbar nav a:hover{background:var(--surface);color:var(--ink)}[data-design=symbol] .topbar nav a.active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}[data-design=symbol] .usermenu-trigger{border-width:3px;border-radius:var(--radius);font-weight:700}[data-design=symbol] .usermenu-panel{border:3px solid var(--border-strong);border-radius:var(--radius);padding:0;gap:0}[data-design=symbol] .usermenu-who{margin:0;padding:var(--s3);border-bottom:3px solid var(--border-strong)}[data-design=symbol] .usermenu-item{border-radius:0;min-height:52px;font-weight:700}[data-design=symbol] .usermenu-item+.usermenu-item{border-top:2px solid var(--border)}[data-design=symbol] .usermenu-item:hover,[data-design=symbol] .usermenu-item:focus-visible{background:var(--surface-soft);box-shadow:inset 6px 0 0 var(--primary)}[data-design=symbol] .card{border:3px solid var(--border);border-radius:var(--radius-lg)}[data-design=symbol] .banner{border:3px solid var(--border-strong);border-inline-start:10px solid var(--primary);border-radius:var(--radius-sm)}[data-design=symbol] .btn{border-width:3px;border-radius:var(--radius);font-weight:700;min-height:52px}[data-design=symbol] .btn.secondary{border-color:var(--border-strong)}[data-design=symbol] .btn.ghost{border-width:3px}[data-design=symbol] .field input,[data-design=symbol] .field select,[data-design=symbol] .field textarea{border-width:var(--heavy);border-radius:var(--radius-sm);min-height:56px;padding:var(--s3) var(--s4)}[data-design=symbol] .field input:focus,[data-design=symbol] .field select:focus,[data-design=symbol] .field textarea:focus{border-color:var(--primary)}[data-design=symbol] .field label,[data-design=symbol] .field-label{font-weight:700;color:var(--ink);font-size:var(--t-body)}[data-design=symbol] .check{font-weight:700}[data-design=symbol] .check input[type=checkbox],[data-design=symbol] .check input[type=radio]{width:26px;height:26px}[data-design=symbol] .tabs{border-bottom:4px solid var(--primary);gap:var(--s1);padding-bottom:0}[data-design=symbol] .tab{border:3px solid var(--border-strong);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--surface-soft);color:var(--ink);font-weight:700}[data-design=symbol] .tab:hover{background:var(--surface)}[data-design=symbol] .tab.is-active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}[data-design=symbol] .list-item{border:3px solid var(--border);border-radius:var(--radius)}[data-design=symbol] .list-item .name,[data-design=symbol] .library-name{font-weight:700}[data-design=symbol] .list.program-rows{gap:var(--s3)}[data-design=symbol] .list.program-rows>.list-item,[data-design=symbol] .list.program-rows>.list-item:last-child{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"play text reward more";align-items:center;gap:var(--s2) var(--s4);background:var(--surface);border:3px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--s3)}[data-design=symbol] .list.program-rows .toolbar{display:contents}[data-design=symbol] .list.program-rows .list-item-text{grid-area:text}[data-design=symbol] .list.program-rows .list-item .name{font-size:var(--t-lead)}[data-design=symbol] .list.program-rows .toolbar>a.btn{grid-area:play;min-height:64px;min-width:6.5rem;font-size:var(--t-lead);padding-inline:var(--s5)}[data-design=symbol] .list.program-rows .reward-give{grid-area:reward}[data-design=symbol] .list.program-rows .toolbar>.rowmenu{grid-area:more}@media (max-width: 560px){[data-design=symbol] .list.program-rows>.list-item,[data-design=symbol] .list.program-rows>.list-item:last-child{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"text text text" "play reward more";gap:var(--s3) var(--s2)}[data-design=symbol] .list.program-rows .toolbar>a.btn{min-height:56px}[data-design=symbol] .card{padding:var(--s3)}}[data-design=symbol] .reward-total-link{border-width:3px;border-radius:var(--radius);font-weight:700}[data-design=symbol] .modal{border:3px solid var(--border-strong)}[data-design=symbol] .modal-title{padding-bottom:var(--s2);margin-bottom:var(--s3);border-bottom:4px solid var(--primary)}[data-design=classroom]{--font: "Lexend Variable", "Lexend", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 14px;--radius: 18px;--radius-lg: 24px;--tile-radius: 26px;--shadow-sm: none;--shadow-md: 0 12px 36px color-mix(in srgb, var(--ink) 14%, transparent);--strip: 6px}[data-design=classroom] h1,[data-design=classroom] h2,[data-design=classroom] h3,[data-design=classroom] .brand,[data-design=classroom] .modal-title{font-weight:700;letter-spacing:-.02em}[data-design=classroom] .topbar{border-bottom:0}[data-design=classroom] .topbar nav{gap:2px;padding:4px;background:var(--surface);border:2px solid var(--border);border-radius:999px}[data-design=classroom] .topbar nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;border-radius:999px;padding:var(--s2) var(--s4);font-weight:500;color:var(--ink-soft)}[data-design=classroom] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=classroom] .topbar nav a.active{background:var(--surface-soft);color:var(--ink);font-weight:700}[data-design=classroom] .topbar nav a.active:after{content:"";position:absolute;left:50%;bottom:4px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--primary)}[data-design=classroom] .topbar.is-tight nav{flex:1 1 100%}[data-design=classroom] .usermenu-trigger{background:var(--surface);border:2px solid var(--border-strong);padding:var(--s2) var(--s4);font-weight:700}[data-design=classroom] .usermenu-panel{border:2px solid var(--border-strong);border-top:var(--strip) solid var(--primary);border-radius:var(--radius-lg);padding:var(--s3);gap:4px}[data-design=classroom] .usermenu-who{border-bottom:2px solid var(--border)}[data-design=classroom] .usermenu-item{border-radius:999px;padding:var(--s3) var(--s4);font-weight:500}[data-design=classroom] .card{border:2px solid var(--border);border-top:var(--strip) solid var(--primary);border-radius:var(--radius-lg);padding:var(--s5) var(--s6) var(--s6)}[data-design=classroom] .card h2{font-size:var(--t-title);margin-bottom:var(--s5)}[data-design=classroom] .banner{background:var(--surface-soft);border:2px solid var(--border);border-top:var(--strip) solid var(--primary);border-radius:var(--radius-lg);padding:var(--s4) var(--s5)}[data-design=classroom] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}[data-design=classroom] .list.program-rows>.list-item,[data-design=classroom] .list.program-rows>.list-item:last-child{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--s4);background:var(--surface);border:2px solid var(--border);border-top:var(--strip) solid var(--primary);border-radius:var(--radius);padding:var(--s4) var(--s5) var(--s5)}[data-design=classroom] .list.program-rows>.list-item:hover{border-color:var(--border-strong);border-top-color:var(--primary)}[data-design=classroom] .list.program-rows .list-item-text{flex:0 0 auto}[data-design=classroom] .list.program-rows .name{font-size:var(--t-lead);font-weight:700;line-height:1.3}[data-design=classroom] .list.program-rows .list-item-meta{margin-top:var(--s2);padding-top:var(--s2);border-top:2px solid var(--border);font-size:var(--t-small)}[data-design=classroom] .list.program-rows .toolbar{margin-top:auto;margin-inline-start:0;justify-content:flex-start;gap:var(--s2)}[data-design=classroom] .list.program-rows .toolbar .btn{padding-inline:var(--s4)}@media (max-width: 640px){[data-design=classroom] .card{padding:var(--s4) var(--s4) var(--s5)}[data-design=classroom] .list.program-rows{grid-template-columns:minmax(0,1fr);gap:var(--s3)}[data-design=classroom] .list.program-rows>.list-item{padding:var(--s3) var(--s4) var(--s4)}[data-design=classroom] .list.program-rows .toolbar>*{flex:0 0 auto}}[data-design=classroom] .list{gap:var(--s3)}[data-design=classroom] .list-item{border:2px solid var(--border);border-radius:var(--radius);padding:var(--s4) var(--s5)}[data-design=classroom] .list-item .name,[data-design=classroom] .library-name{font-weight:700}[data-design=classroom] .btn{border-width:2px;border-radius:999px;padding:var(--s3) var(--s5);min-height:50px;font-weight:700}[data-design=classroom] .btn.secondary{background:var(--surface);border-color:var(--border-strong)}[data-design=classroom] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--primary)}[data-design=classroom] .btn.ghost{border-color:transparent}[data-design=classroom] .btn.ghost:hover:not(:disabled){border-color:var(--border)}[data-design=classroom] .btn:disabled{opacity:.5}[data-design=classroom] .btn:focus-visible,[data-design=classroom] .usermenu-trigger:focus-visible,[data-design=classroom] .tab:focus-visible{outline-offset:3px;border-radius:999px}[data-design=classroom] .field label:not(.check),[data-design=classroom] .field-label{color:var(--ink);font-weight:700}[data-design=classroom] .field input,[data-design=classroom] .field select,[data-design=classroom] .field textarea{border-width:max(2px,var(--control-border-width, 1px));border-radius:999px;min-height:52px;padding:var(--s3) var(--s4)}[data-design=classroom] .field textarea{border-radius:var(--radius)}[data-design=classroom] .field input:focus,[data-design=classroom] .field select:focus,[data-design=classroom] .field textarea:focus{border-color:var(--primary)}[data-design=classroom] .check{font-weight:500}[data-design=classroom] .tabs{border-bottom:0;gap:var(--s2);padding-bottom:0}[data-design=classroom] .tab{border:2px solid var(--border);border-radius:999px;background:var(--surface);padding:var(--s2) var(--s5);font-weight:500}[data-design=classroom] .tab:hover{border-color:var(--border-strong);background:var(--surface)}[data-design=classroom] .tab.is-active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);font-weight:700}[data-design=classroom] .modal-backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}[data-design=classroom] .modal{border:2px solid var(--border);border-top:var(--strip) solid var(--primary);border-radius:var(--radius-lg);padding:var(--s5) var(--s6) var(--s6)}[data-design=classroom] .modal-title{font-size:var(--t-title)}[data-design=classroom] .home-top{gap:var(--s3);margin-bottom:var(--s5)}[data-design=classroom] .reward-total-link,[data-design=classroom] .home-reward:not(:has(.reward-total-link)){background:var(--surface);border:max(2px,var(--control-border-width, 1px)) solid var(--border-strong);border-radius:999px;padding:var(--s2) var(--s5) var(--s2) var(--s3);min-height:48px}[data-design=classroom] .reward-total-link:hover{border-color:var(--primary)}[data-design=classroom] .home-reward .figure{font-size:var(--t-title);font-weight:700}[data-design=classroom] .pill,[data-design=classroom] .chip{border-radius:999px}[data-design=classroom][data-screen=game] .card{border-top-width:2px;border-top-color:var(--border)}[data-design=classroom][data-screen=game] .tile{font-weight:700}[data-design=tactile]{--font: "Nunito Variable", "Nunito", ui-rounded, system-ui, sans-serif;--radius-sm: 10px;--radius: 14px;--radius-lg: 18px;--tile-radius: 20px;--shadow-sm: none;--shadow-md: 0 6px 0 var(--border-strong);--key-edge: var(--border-strong);--key-edge-primary: color-mix(in srgb, var(--primary) 62%, black);--key-depth: 4px;--well: inset 0 3px 0 color-mix(in srgb, var(--ink) 12%, transparent)}[data-design=tactile] h1,[data-design=tactile] h2,[data-design=tactile] h3,[data-design=tactile] .brand,[data-design=tactile] .modal-title{font-weight:800;letter-spacing:-.01em}[data-design=tactile] .topbar{border-bottom:2px solid var(--border)}[data-design=tactile] .topbar nav{gap:0;padding-bottom:var(--key-depth)}[data-design=tactile] .topbar nav>a,[data-design=tactile] .topbar nav>.navgroup>a{display:inline-flex;align-items:center;min-height:44px;padding:var(--s2) var(--s4);background:var(--surface);color:var(--ink);font-weight:700;border:2px solid var(--key-edge);border-radius:0;box-shadow:0 var(--key-depth) 0 var(--key-edge)}[data-design=tactile] .topbar nav>*+a,[data-design=tactile] .topbar nav>*+.navgroup{margin-inline-start:-2px}[data-design=tactile] .topbar nav>a:first-child,[data-design=tactile] .topbar nav>.navgroup:first-child>a{border-start-start-radius:var(--radius);border-end-start-radius:var(--radius)}[data-design=tactile] .topbar nav>a:last-child,[data-design=tactile] .topbar nav>.navgroup:last-child>a{border-start-end-radius:var(--radius);border-end-end-radius:var(--radius)}[data-design=tactile] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=tactile] .topbar nav a.active{position:relative;z-index:1;background:var(--surface-soft);color:var(--ink);font-weight:800;transform:translateY(var(--key-depth));box-shadow:var(--well)}[data-design=tactile] .topbar.is-tight nav{padding-bottom:calc(var(--key-depth) + 2px)}[data-design=tactile] .btn,[data-design=tactile] .usermenu-trigger,[data-design=tactile] .reward-total-link{border-width:2px;border-style:solid;border-radius:var(--radius);font-weight:800;box-shadow:0 var(--key-depth) 0 var(--key-edge);margin-bottom:var(--key-depth)}[data-design=tactile] .btn{border-color:var(--key-edge-primary);box-shadow:0 var(--key-depth) 0 var(--key-edge-primary)}[data-design=tactile] .btn.secondary,[data-design=tactile] .usermenu-trigger,[data-design=tactile] .reward-total-link{background:var(--surface);color:var(--ink);border-color:var(--key-edge);box-shadow:0 var(--key-depth) 0 var(--key-edge)}[data-design=tactile] .btn.secondary:hover:not(:disabled),[data-design=tactile] .usermenu-trigger:hover,[data-design=tactile] .reward-total-link:hover{background:var(--surface-soft);border-color:var(--key-edge)}[data-design=tactile] .btn:hover:not(:disabled){border-color:var(--key-edge-primary)}[data-design=tactile] .btn.secondary:hover:not(:disabled){border-color:var(--key-edge)}[data-design=tactile] .btn.danger,[data-design=tactile] .btn.danger:hover:not(:disabled){--key-edge-primary: color-mix(in srgb, var(--danger) 62%, black);border-color:var(--key-edge-primary)}[data-design=tactile] .btn.quiet-danger{--key-edge-primary: var(--key-edge);border-color:var(--key-edge)}[data-design=tactile] .btn.ghost{background:transparent;border-color:transparent;box-shadow:none}[data-design=tactile] .btn.ghost:hover:not(:disabled){background:var(--surface-soft);border-color:var(--border)}[data-design=tactile] .btn:active:not(:disabled),[data-design=tactile] .usermenu-trigger:active,[data-design=tactile] .usermenu-trigger[aria-expanded=true],[data-design=tactile] .reward-total-link:active{transform:translateY(calc(var(--key-depth) - 1px));box-shadow:0 1px 0 var(--key-edge)}[data-design=tactile] .btn:not(.secondary):not(.ghost):active:not(:disabled){box-shadow:0 1px 0 var(--key-edge-primary)}[data-design=tactile] .btn.ghost:active:not(:disabled){box-shadow:none}[data-design=tactile] .btn:disabled{opacity:.55;transform:translateY(calc(var(--key-depth) - 1px));box-shadow:0 1px 0 var(--key-edge)}[data-design=tactile] .btn:focus-visible,[data-design=tactile] .usermenu-trigger:focus-visible,[data-design=tactile] .reward-total-link:focus-visible{outline-offset:4px}@media (prefers-reduced-motion: no-preference){[data-design=tactile] .btn,[data-design=tactile] .usermenu-trigger,[data-design=tactile] .reward-total-link,[data-design=tactile] .tab,[data-design=tactile] .topbar nav a{transition:transform 80ms ease,box-shadow 80ms ease,background-color var(--transition)}}[data-design=tactile] .usermenu-panel{border:2px solid var(--key-edge);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--key-edge);padding:var(--s2);gap:4px}[data-design=tactile] .usermenu-who{background:var(--surface-soft);border-bottom:0;border-radius:var(--radius-sm);box-shadow:var(--well);margin-bottom:var(--s1)}[data-design=tactile] .usermenu-item{border-radius:var(--radius-sm);font-weight:700}[data-design=tactile] .usermenu-item:hover,[data-design=tactile] .usermenu-item:focus-visible{background:var(--surface-soft)}[data-design=tactile] .card{border:2px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--border)}[data-design=tactile] .card h2{font-weight:800}[data-design=tactile] .banner{background:var(--surface-soft);border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--well)}[data-design=tactile] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5) var(--s4);padding-bottom:6px}[data-design=tactile] .list.program-rows>.list-item,[data-design=tactile] .list.program-rows>.list-item:last-child{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--s3);background:var(--surface);border:2px solid var(--key-edge);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--key-edge);padding:var(--s4)}[data-design=tactile] .list.program-rows .list-item-text{flex:0 0 auto}[data-design=tactile] .list.program-rows .name{font-size:var(--t-lead);font-weight:800}[data-design=tactile] .list.program-rows .list-item-meta{font-size:var(--t-small);font-weight:600}[data-design=tactile] .list.program-rows .toolbar{margin-top:auto;margin-inline-start:0;justify-content:flex-start;gap:var(--s2)}@media (max-width: 640px){[data-design=tactile] .list.program-rows{grid-template-columns:minmax(0,1fr);gap:var(--s4)}[data-design=tactile] .list.program-rows .toolbar>*{flex:0 0 auto}}[data-design=tactile] .list{gap:var(--s3)}[data-design=tactile] .list-item{border:2px solid var(--border);border-radius:var(--radius);box-shadow:0 3px 0 var(--border)}[data-design=tactile] .list-item .name,[data-design=tactile] .library-name{font-weight:800}[data-design=tactile] .field label:not(.check),[data-design=tactile] .field-label{font-weight:800;color:var(--ink)}[data-design=tactile] .field input,[data-design=tactile] .field select,[data-design=tactile] .field textarea{background:var(--surface-soft);border-width:max(2px,var(--control-border-width, 1px));border-radius:var(--radius-sm);box-shadow:var(--well);min-height:52px;padding-top:calc(var(--s3) + 2px)}[data-design=tactile] .field input:focus,[data-design=tactile] .field select:focus,[data-design=tactile] .field textarea:focus{background:var(--surface);border-color:var(--primary)}[data-design=tactile] .check{font-weight:600}[data-design=tactile] .tabs{border-bottom:0;gap:0;padding-bottom:var(--key-depth)}[data-design=tactile] .tab{background:var(--surface);color:var(--ink);border:2px solid var(--key-edge);border-radius:0;font-weight:700;box-shadow:0 var(--key-depth) 0 var(--key-edge)}[data-design=tactile] .tab+.tab{margin-inline-start:-2px}[data-design=tactile] .tab:first-child{border-start-start-radius:var(--radius);border-end-start-radius:var(--radius)}[data-design=tactile] .tab:last-child{border-start-end-radius:var(--radius);border-end-end-radius:var(--radius)}[data-design=tactile] .tab:hover{background:var(--surface-soft)}[data-design=tactile] .tab.is-active{position:relative;z-index:1;background:var(--surface-soft);border-color:var(--key-edge);color:var(--ink);font-weight:800;transform:translateY(var(--key-depth));box-shadow:var(--well)}@media (max-width: 720px){[data-design=tactile] .tabs{padding-bottom:calc(var(--key-depth) + 2px)}}[data-design=tactile] .modal-backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}[data-design=tactile] .modal{border:2px solid var(--key-edge);border-radius:var(--radius-lg);box-shadow:0 8px 0 var(--key-edge)}[data-design=tactile] .home-top{margin-bottom:var(--s5)}[data-design=tactile] .reward-total-link{padding:var(--s2) var(--s4);min-height:48px}[data-design=tactile] .home-reward:not(:has(.reward-total-link)){background:var(--surface-soft);border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--well);padding:var(--s2) var(--s4)}[data-design=tactile] .home-reward .figure{font-size:var(--t-title);font-weight:800}[data-design=tactile][data-screen=game] .card{box-shadow:none}[data-design=tactile][data-screen=game] .tile{font-weight:800;box-shadow:0 6px 0 var(--border-strong)}@media (prefers-reduced-motion: no-preference){[data-design=tactile][data-screen=game] .tile{transition:transform 80ms ease,box-shadow 80ms ease,border-color var(--transition),background-color var(--transition)}}[data-design=tactile][data-screen=game] .tile:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px 0 var(--border-strong)}[data-design=tactile][data-screen=game] .tile.correct{box-shadow:0 6px 0 var(--success)}[data-design=clinical]{--font: "IBM Plex Sans Variable", "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 3px;--radius: 4px;--radius-lg: 4px;--tile-radius: 8px;--shadow-sm: none;--shadow-md: 0 4px 14px color-mix(in srgb, var(--ink) 14%, transparent)}[data-design=clinical],[data-design=clinical] body,[data-design=clinical] #root{font-size:calc(var(--font-size-base) * .92)}[data-design=clinical] h1,[data-design=clinical] h2,[data-design=clinical] h3,[data-design=clinical] .brand,[data-design=clinical] .modal-title{font-weight:600;letter-spacing:0}[data-design=clinical] .topbar{border-bottom:1px solid var(--border-strong);padding:var(--s2) 0;margin-bottom:var(--s5);gap:var(--s3)}[data-design=clinical] .brand{font-size:var(--t-lead);gap:var(--s2)}[data-design=clinical] .topbar nav{gap:2px;margin-inline-start:var(--s5);margin-inline-end:auto}[data-design=clinical] .topbar>.usermenu{margin-inline-start:auto}[data-design=clinical] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;border-radius:0;padding:var(--s1) var(--s3);font-size:var(--t-small);font-weight:500;color:var(--ink-soft)}[data-design=clinical] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=clinical] .topbar nav a.active{background:var(--surface-soft);color:var(--ink);font-weight:600;box-shadow:inset 3px 0 0 var(--primary)}[data-design=clinical] .topbar.is-tight nav{margin-inline-start:0}[data-design=clinical] .usermenu-trigger{border-radius:var(--radius);border-width:1px;font-weight:500;padding:var(--s1) var(--s3)}[data-design=clinical] .usermenu-panel{border-radius:var(--radius);padding:0;gap:0;overflow:hidden}[data-design=clinical] .usermenu-who{background:var(--surface-soft);margin:0;padding:var(--s2) var(--s3);border-bottom:1px solid var(--border-strong)}[data-design=clinical] .usermenu-item{border-radius:0;padding:var(--s2) var(--s3);font-size:var(--t-small)}[data-design=clinical] .usermenu-item+.usermenu-item{border-top:1px solid var(--border)}[data-design=clinical] .usermenu-item:hover,[data-design=clinical] .usermenu-item:focus-visible{box-shadow:inset 3px 0 0 var(--primary)}[data-design=clinical] .card{border-radius:var(--radius);padding:var(--s4) var(--s5);margin-bottom:var(--s4)}[data-design=clinical] .card h2{font-size:var(--t-body);font-weight:600;margin:0 0 var(--s3);padding-bottom:var(--s2);border-bottom:1px solid var(--border-strong)}[data-design=clinical] .card h3{font-size:var(--t-small);font-weight:600}[data-design=clinical] .banner{background:var(--surface);border:1px solid var(--border);border-inline-start:3px solid var(--primary);border-radius:var(--radius);padding:var(--s2) var(--s3)}[data-design=clinical] .list.program-rows{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:0;border:1px solid var(--border);border-radius:var(--radius)}[data-design=clinical] .list.program-rows>.list-item,[data-design=clinical] .list.program-rows>.list-item:last-child{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center;gap:0;padding:0;border:0;border-radius:0;background:var(--surface)}[data-design=clinical] .list.program-rows>.list-item:nth-child(2n){background:var(--surface-soft)}[data-design=clinical] .list.program-rows>.list-item+.list-item{border-top:1px solid var(--border)}[data-design=clinical] .list.program-rows>.list-item:hover{box-shadow:inset 3px 0 0 var(--primary)}[data-design=clinical] .list.program-rows .list-item-text{display:contents}[data-design=clinical] .list.program-rows .name,[data-design=clinical] .list.program-rows .list-item-meta,[data-design=clinical] .list.program-rows .toolbar{padding:var(--s1) var(--s3);min-width:0}[data-design=clinical] .list.program-rows .name{font-size:var(--t-small);font-weight:600}[data-design=clinical] .list.program-rows .list-item-meta{font-size:var(--t-small);color:var(--ink-soft);border-inline-start:1px solid var(--border);align-self:stretch;display:flex;align-items:center}[data-design=clinical] .list.program-rows .toolbar{justify-content:flex-end;margin:0;gap:var(--s1)}[data-design=clinical] .list.program-rows .toolbar .btn{min-height:44px;padding:var(--s1) var(--s3);font-size:var(--t-small)}[data-design=clinical] .list.program-rows .pill{margin-inline-start:var(--s2)}@media (max-width: 640px){[data-design=clinical] .list.program-rows{grid-template-columns:minmax(0,1fr)}[data-design=clinical] .list.program-rows>.list-item,[data-design=clinical] .list.program-rows>.list-item:last-child{grid-template-columns:minmax(0,1fr);padding:var(--s1) 0}[data-design=clinical] .list.program-rows .name{padding-bottom:0}[data-design=clinical] .list.program-rows .list-item-meta{border-inline-start:0;padding-top:0}[data-design=clinical] .list.program-rows .toolbar{justify-content:flex-start}[data-design=clinical] .list.program-rows .toolbar>*{flex:0 0 auto}}[data-design=clinical] .list{gap:0}[data-design=clinical] .list-item{border:0;border-bottom:1px solid var(--border);border-radius:0;padding:var(--s3) 0}[data-design=clinical] .list-item:last-child{border-bottom:0}[data-design=clinical] .list-item .name,[data-design=clinical] .library-name{font-weight:600}[data-design=clinical] .library-table th,[data-design=clinical] .library-table td{padding:var(--s2) var(--s3)}[data-design=clinical] .library-table tbody tr:nth-child(2n),[data-design=clinical] .report-table tbody tr:nth-child(2n){background:var(--surface-soft)}[data-design=clinical] .btn{min-height:44px;padding:var(--s2) var(--s4);border-radius:var(--radius);font-size:var(--t-small)}[data-design=clinical] .btn.secondary{border-color:var(--border-strong)}[data-design=clinical] .btn:focus-visible,[data-design=clinical] .tab:focus-visible{outline-width:2px;outline-offset:2px}[data-design=clinical] .field{margin-bottom:var(--s3);gap:var(--s1)}[data-design=clinical] .field label:not(.check),[data-design=clinical] .field-label{font-size:var(--t-small);font-weight:600;color:var(--ink)}[data-design=clinical] .field input,[data-design=clinical] .field select,[data-design=clinical] .field textarea{border-radius:var(--radius);min-height:44px;padding:var(--s2) var(--s3)}[data-design=clinical] .field input:focus,[data-design=clinical] .field select:focus,[data-design=clinical] .field textarea:focus{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}[data-design=clinical] .check{padding:var(--s1) 0;font-weight:400}[data-design=clinical] .check input[type=checkbox]{width:20px;height:20px;margin-top:2px}[data-design=clinical] .tabs{gap:0;padding-bottom:0;border-bottom:1px solid var(--border-strong)}[data-design=clinical] .tab{border:0;border-bottom:3px solid transparent;border-radius:0;margin-bottom:-1px;padding:var(--s2) var(--s3);font-size:var(--t-small)}[data-design=clinical] .tab:hover{background:var(--surface-soft);color:var(--ink)}[data-design=clinical] .tab.is-active{background:none;border:0;border-bottom:3px solid var(--primary);color:var(--ink);font-weight:600}[data-design=clinical] .modal-backdrop{background:color-mix(in srgb,var(--ink) 40%,transparent)}[data-design=clinical] .modal{border-radius:var(--radius);border-color:var(--border-strong);padding:var(--s4) var(--s5)}[data-design=clinical] .modal-title{font-size:var(--t-body);padding-bottom:var(--s2);margin-bottom:var(--s3);border-bottom:1px solid var(--border-strong)}[data-design=clinical] .home-top{margin-bottom:var(--s4);gap:var(--s2)}[data-design=clinical] .home-reward{gap:var(--s2);font-size:var(--t-small)}[data-design=clinical] .reward-total-link{gap:var(--s2);border-radius:var(--radius);padding:var(--s1) var(--s3);min-height:44px;background:var(--surface)}[data-design=clinical] .reward-total-link:hover{border-color:var(--primary)}[data-design=clinical] .home-reward .reward-total-glyph{font-size:1.2rem}[data-design=clinical] .home-reward .figure{font-variant-numeric:tabular-nums;font-size:var(--t-lead)}[data-design=editorial]{--font: "DM Sans Variable", "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Fraunces Variable", "Fraunces", Georgia, "Times New Roman", serif;--radius-sm: 0;--radius: 0;--radius-lg: 0;--tile-radius: 6px;--shadow-sm: none;--shadow-md: 0 6px 24px color-mix(in srgb, var(--ink) 14%, transparent)}[data-design=editorial] h1,[data-design=editorial] h2,[data-design=editorial] h3,[data-design=editorial] .brand,[data-design=editorial] .modal-title{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em}[data-design=editorial] .topbar{border-bottom:4px double var(--ink);padding:var(--s4) 0 var(--s3)}[data-design=editorial] .brand{font-size:calc(var(--t-title) * 1.15);font-weight:600}[data-design=editorial] .topbar nav{gap:0}[data-design=editorial] .topbar nav>*+a,[data-design=editorial] .topbar nav>*+.navgroup{border-inline-start:1px solid var(--border-strong)}[data-design=editorial] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;border-radius:0;padding:0 var(--s3);color:var(--ink-soft);font-size:var(--t-hint);font-weight:600;letter-spacing:.08em}[data-design=editorial] .topbar nav a:hover{background:none;color:var(--ink);text-decoration:underline;text-underline-offset:4px}[data-design=editorial] .topbar nav a.active{background:none;color:var(--ink);font-weight:700;box-shadow:inset 0 3px 0 var(--ink)}[data-design=editorial] .usermenu-trigger{border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:var(--s2) var(--s1);background:transparent}[data-design=editorial] .usermenu-trigger:hover{background:transparent;border-color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink)}[data-design=editorial] .usermenu-panel{border:1px solid var(--ink);border-top:3px solid var(--ink);border-radius:0;padding:var(--s2) var(--s3);gap:0}[data-design=editorial] .usermenu-who .name{font-family:var(--font-display);font-weight:600;font-size:var(--t-lead)}[data-design=editorial] .usermenu-who{border-bottom:1px solid var(--ink);padding-inline:0}[data-design=editorial] .usermenu-item{border-radius:0;padding:var(--s3) 0}[data-design=editorial] .usermenu-item+.usermenu-item{border-top:1px solid var(--border)}[data-design=editorial] .usermenu-item:hover,[data-design=editorial] .usermenu-item:focus-visible{background:none;text-decoration:underline;text-underline-offset:4px}[data-design=editorial] .card{background:transparent;border:0;border-top:1px solid var(--ink);border-radius:0;box-shadow:none;padding:var(--s4) 0 var(--s5)}[data-design=editorial] .card h2{font-size:calc(var(--t-title) * 1.15);margin-bottom:var(--s4)}[data-design=editorial] .banner{background:transparent;border:0;border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);border-radius:0;padding:var(--s3) 0;font-family:var(--font-display);font-size:var(--t-lead)}[data-design=editorial] .banner .btn{font-family:var(--font);font-size:var(--t-body)}[data-design=editorial] .list.program-rows{counter-reset:programme;border-top:1px solid var(--border-strong)}[data-design=editorial] .list.program-rows>.list-item,[data-design=editorial] .list.program-rows>.list-item:last-child{counter-increment:programme;display:grid;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;column-gap:var(--s4);row-gap:var(--s1);background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:var(--s4) 0}[data-design=editorial] .list.program-rows>.list-item:before{content:counter(programme,decimal-leading-zero);align-self:start;font-family:var(--font-display);font-size:var(--t-title);font-weight:400;line-height:1.2;color:var(--ink-soft);font-variant-numeric:lining-nums tabular-nums}[data-design=editorial] .list.program-rows .list-item-text{min-width:0}[data-design=editorial] .list.program-rows .name{font-family:var(--font-display);font-size:var(--t-title);font-weight:500;line-height:1.2}[data-design=editorial] .list.program-rows .name .pill{font-family:var(--font);vertical-align:middle}[data-design=editorial] .list.program-rows .list-item-meta{margin-top:var(--s1);font-size:var(--t-small);letter-spacing:.02em}[data-design=editorial] .list.program-rows .toolbar{gap:var(--s2);margin:0}[data-design=editorial] .list.program-rows .toolbar .btn.secondary{background:transparent;border-color:transparent;color:var(--ink);padding-inline:var(--s2);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}[data-design=editorial] .list.program-rows .toolbar .btn.secondary:hover:not(:disabled){background:transparent;border-color:transparent;text-decoration-thickness:2px}@media (max-width: 640px){[data-design=editorial] .list.program-rows>.list-item,[data-design=editorial] .list.program-rows>.list-item:last-child{grid-template-columns:2.2rem minmax(0,1fr)}[data-design=editorial] .list.program-rows>.list-item:before{font-size:var(--t-lead);grid-row:1 / span 2}[data-design=editorial] .list.program-rows .name{font-size:var(--t-lead)}[data-design=editorial] .list.program-rows .toolbar{grid-column:2;justify-content:flex-start;margin-inline-start:0}[data-design=editorial] .list.program-rows .toolbar>*{flex:0 0 auto}}[data-design=editorial] .list{gap:0}[data-design=editorial] .list-item{background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:var(--s4) 0}[data-design=editorial] .list-item:last-child{border-bottom:0}[data-design=editorial] .list-item .name,[data-design=editorial] .library-name{font-family:var(--font-display);font-size:var(--t-lead);font-weight:500}[data-design=editorial] .btn{border-radius:0;letter-spacing:.02em}[data-design=editorial] .btn.secondary{background:transparent;border-color:var(--ink);color:var(--ink)}[data-design=editorial] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink)}[data-design=editorial] .btn.ghost:hover:not(:disabled){background:none;text-decoration:underline;text-underline-offset:5px}[data-design=editorial] .btn:focus-visible,[data-design=editorial] .tab:focus-visible,[data-design=editorial] .usermenu-trigger:focus-visible{outline-width:2px;outline-offset:3px;border-radius:0}[data-design=editorial] .field label:not(.check),[data-design=editorial] .field-label{font-size:var(--t-hint);font-weight:600;letter-spacing:.06em;color:var(--ink-soft)}[data-design=editorial] .field input,[data-design=editorial] .field select,[data-design=editorial] .field textarea{background:transparent;border:0;border-bottom:max(1px,var(--control-border-width, 1px)) solid var(--border-strong);border-radius:0;padding-inline:0}[data-design=editorial] .field select{padding-inline-end:var(--s2)}[data-design=editorial] .field input:hover,[data-design=editorial] .field select:hover,[data-design=editorial] .field textarea:hover{border-color:var(--ink)}[data-design=editorial] .field input:focus,[data-design=editorial] .field select:focus,[data-design=editorial] .field textarea:focus{border-color:var(--ink);box-shadow:0 1px 0 var(--ink)}[data-design=editorial] .field input:focus-visible,[data-design=editorial] .field select:focus-visible,[data-design=editorial] .field textarea:focus-visible{outline-offset:4px}[data-design=editorial] .tabs{border-bottom:1px solid var(--border-strong);gap:var(--s5);padding-bottom:0}[data-design=editorial] .tab{border:0;border-radius:0;padding:var(--s2) 0;color:var(--ink-soft)}[data-design=editorial] .tab:hover{background:none;color:var(--ink)}[data-design=editorial] .tab.is-active{background:none;border:0;color:var(--ink);font-weight:700;box-shadow:inset 0 -3px 0 var(--ink)}[data-design=editorial] .modal-backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}[data-design=editorial] .modal{border:1px solid var(--ink);border-top:4px solid var(--ink);border-radius:0}[data-design=editorial] .modal-title{font-size:var(--t-title);padding-bottom:var(--s2);border-bottom:1px solid var(--border)}[data-design=editorial] .home-top{margin-bottom:var(--s5)}[data-design=editorial] .reward-total-link,[data-design=editorial] .home-reward:not(:has(.reward-total-link)){border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);border-radius:0;padding:var(--s1) var(--s2);min-height:44px}[data-design=editorial] .reward-total-link:hover{border-color:var(--ink);background:var(--surface-soft)}[data-design=editorial] .home-reward .figure{font-family:var(--font-display);font-size:var(--t-title);font-weight:500}[data-design=editorial] .pill{border-radius:0}[data-design=editorial][data-screen=game] .card{background:var(--surface)}[data-design=bold]{--font: "Space Grotesk Variable", "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 6px;--radius: 8px;--radius-lg: 10px;--tile-radius: 12px;--shadow-sm: 4px 4px 0 var(--ink);--shadow-md: 6px 6px 0 var(--ink);--bold-line: calc(var(--control-border-width, 1px) + 1px)}[data-design=bold] h1,[data-design=bold] h2,[data-design=bold] h3,[data-design=bold] .brand,[data-design=bold] .modal-title{font-weight:700;letter-spacing:-.02em}[data-design=bold] .topbar{border-bottom:3px solid var(--ink)}[data-design=bold] .brand{font-weight:700}[data-design=bold] .topbar nav{gap:var(--s2);padding:2px 6px 6px 2px}[data-design=bold] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius-sm);color:var(--ink);font-weight:600}[data-design=bold] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=bold] .topbar nav a.active{background:var(--accent);border-color:var(--ink);color:var(--ink);font-weight:700;box-shadow:3px 3px 0 var(--ink)}[data-design=bold] .usermenu-trigger{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius-sm);box-shadow:3px 3px 0 var(--ink)}[data-design=bold] .usermenu-trigger:hover{background:var(--surface-soft);border-color:var(--ink)}[data-design=bold] .usermenu-trigger[aria-expanded=true]{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}[data-design=bold] .usermenu-panel{border:2px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--s2);gap:var(--s1)}[data-design=bold] .usermenu-who{border-bottom:2px solid var(--ink)}[data-design=bold] .usermenu-item{border:2px solid transparent;border-radius:var(--radius-sm);font-weight:600}[data-design=bold] .usermenu-item:hover,[data-design=bold] .usermenu-item:focus-visible{background:var(--surface-soft);border-color:var(--ink)}[data-design=bold] .navgroup-panel .usermenu-item.active{background:var(--accent);border-color:var(--ink)}[data-design=bold] .card{border:2px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}[data-design=bold] .card h2{display:inline-block;padding-bottom:var(--s1);border-bottom:3px solid var(--ink)}[data-design=bold] .banner{background:var(--surface-soft);border:2px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--ink)}[data-design=bold] .banner .muted{color:var(--ink)}[data-design=bold] .btn:where(:not(.danger,.quiet-danger)){background:var(--accent);color:var(--ink);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:3px 3px 0 var(--ink);font-weight:700;transition:transform 80ms ease,box-shadow 80ms ease,background-color var(--transition)}[data-design=bold] .btn:where(:not(.danger,.quiet-danger)):hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink)}[data-design=bold] .btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}[data-design=bold] .btn:disabled{box-shadow:none;border-style:dashed}[data-design=bold] .btn:focus-visible{outline-offset:4px}[data-design=bold] .btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--ink)}[data-design=bold] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink)}[data-design=bold] .btn.ghost{background:transparent;border-color:transparent;box-shadow:none}[data-design=bold] .btn.ghost:hover:not(:disabled){border-color:var(--ink)}[data-design=bold] .field label,[data-design=bold] .field-label{color:var(--ink);font-weight:700}[data-design=bold] .field input,[data-design=bold] .field select,[data-design=bold] .field textarea{border:var(--bold-line) solid var(--ink);border-radius:var(--radius-sm)}[data-design=bold] .field input:hover,[data-design=bold] .field select:hover,[data-design=bold] .field textarea:hover{border-color:var(--ink);background:var(--surface-soft)}[data-design=bold] .field-hint{color:var(--ink-soft)}[data-design=bold] .check{font-weight:600}[data-design=bold] .tabs{border-bottom:0;gap:var(--s2);padding:2px 6px 8px 2px}[data-design=bold] .tab{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius-sm);color:var(--ink);font-weight:600}[data-design=bold] .tab:hover{background:var(--surface-soft)}[data-design=bold] .tab.is-active{background:var(--accent);border-color:var(--ink);font-weight:700;box-shadow:3px 3px 0 var(--ink)}[data-design=bold] .list{gap:var(--s3)}[data-design=bold] .list-item{border:2px solid var(--ink);border-radius:var(--radius)}[data-design=bold] .list-item .name,[data-design=bold] .library-name{font-weight:700}[data-design=bold] .list.program-rows{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5) var(--s4);padding:0 6px 6px 0}[data-design=bold] .list.program-rows>.list-item{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;padding:0;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}[data-design=bold] .list.program-rows>.list-item:last-child{border-bottom:2px solid var(--ink)}[data-design=bold] .list.program-rows .list-item-text{flex:1 1 auto;padding:var(--s4)}[data-design=bold] .list.program-rows .list-item .name{font-size:var(--t-lead);line-height:1.3}[data-design=bold] .list.program-rows .list-item .pill{margin-inline-start:0;margin-inline-end:var(--s2);border:2px solid var(--ink);color:var(--ink);font-weight:600}[data-design=bold] .list.program-rows .list-item .name>.pill:first-of-type{margin-inline-start:var(--s2)}[data-design=bold] .list.program-rows .list-item-meta{margin-top:var(--s1);color:var(--ink-soft)}[data-design=bold] .list.program-rows .toolbar{display:flex;flex-wrap:nowrap;gap:var(--s2);margin:0;padding:var(--s3);border-top:2px solid var(--ink);background:var(--surface-soft);border-radius:0 0 calc(var(--radius-lg) - 2px) calc(var(--radius-lg) - 2px)}[data-design=bold] .list.program-rows .toolbar>*{flex:0 0 auto}[data-design=bold] .list.program-rows .toolbar>a.btn:first-child{flex:1 1 auto;font-size:var(--t-body)}[data-design=bold] .list.program-rows .toolbar .btn{min-height:48px}@media (max-width: 960px){[data-design=bold] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){[data-design=bold] .list.program-rows{grid-template-columns:minmax(0,1fr)}}[data-design=bold] .home-top{gap:var(--s4)}[data-design=bold] .reward-total-link,[data-design=bold] .home-reward:not(:has(.reward-total-link)){background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:3px 3px 0 var(--ink);padding:var(--s2) var(--s4)}[data-design=bold] .reward-total-link:hover{background:var(--surface-soft);border-color:var(--ink)}[data-design=bold] .home-reward .figure{font-size:1.5em;font-weight:700}[data-design=bold] .home-reward .muted{color:var(--ink);font-weight:600}[data-design=bold] .modal-backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}[data-design=bold] .modal{border:2px solid var(--ink);border-radius:var(--radius-lg);box-shadow:8px 8px 0 var(--ink)}[data-design=bold] .modal-title{padding-bottom:var(--s2);margin-bottom:var(--s3);border-bottom:3px solid var(--ink)}[data-design=bold][data-screen=game] .card,[data-design=bold][data-screen=game] .btn{box-shadow:none}[data-design=bold][data-screen=game] .tile{font-weight:700}[data-design=classic]{--radius-sm: 3px;--radius: 4px;--radius-lg: 4px;--shadow-sm: none;--shadow-md: none}[data-design=classic] .topbar{border-bottom:1px solid var(--border-strong)}[data-design=classic] .topbar nav{gap:var(--s2)}[data-design=classic] .topbar nav a{border-radius:0;padding:var(--s2) var(--s1);color:var(--ink-soft)}[data-design=classic] .topbar nav a:hover{background:none;color:var(--ink);text-decoration:underline;text-underline-offset:4px}[data-design=classic] .topbar nav a.active{background:none;color:var(--ink);font-weight:700;box-shadow:inset 0 -4px 0 var(--primary)}[data-design=classic] .usermenu-trigger,[data-design=classic] .reward-total-link{border-radius:var(--radius)}[data-design=classic] .usermenu-panel{padding:0;gap:0;border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:none}[data-design=classic] .usermenu-who{margin:0;padding:var(--s3)}[data-design=classic] .usermenu-item{border-radius:0;padding:var(--s3)}[data-design=classic] .usermenu-item+.usermenu-item{border-top:1px solid var(--border)}[data-design=classic] .card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:none}[data-design=classic] .banner{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--primary);border-radius:0}[data-design=classic] .btn{border-radius:var(--radius-sm)}[data-design=classic] .btn.secondary{background:transparent;color:var(--ink);border-color:var(--border-strong)}[data-design=classic] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink)}[data-design=classic] .btn.ghost{border-radius:var(--radius-sm)}[data-design=classic] .field input,[data-design=classic] .field select,[data-design=classic] .field textarea{border-radius:var(--radius-sm);background:var(--surface)}[data-design=classic] .field input:focus,[data-design=classic] .field select:focus,[data-design=classic] .field textarea:focus{border-color:var(--primary)}[data-design=classic] .field label,[data-design=classic] .field-label{color:var(--ink);font-weight:700}[data-design=classic] .tabs{gap:var(--s4);padding-bottom:0;border-bottom:1px solid var(--border-strong)}[data-design=classic] .tab{border:0;border-radius:0;padding:var(--s2) var(--s1)}[data-design=classic] .tab:hover{background:none;color:var(--ink)}[data-design=classic] .tab.is-active{background:none;color:var(--ink);font-weight:700;box-shadow:inset 0 -4px 0 var(--primary)}[data-design=classic] .list.program-rows{border-top:1px solid var(--border-strong)}[data-design=classic] .list.program-rows>.list-item,[data-design=classic] .list.program-rows>.list-item:last-child{border-bottom:1px solid var(--border);padding:var(--s2) var(--s1)}[data-design=classic] .list.program-rows>.list-item:hover{background:var(--surface-soft)}@media (min-width: 721px){[data-design=classic] .list.program-rows .list-item-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,19rem);align-items:center;column-gap:var(--s4)}[data-design=classic] .list.program-rows .list-item-meta{font-size:var(--t-small)}}[data-design=classic] .list-item{border-radius:var(--radius);box-shadow:none}[data-design=classic] .modal{border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:none}[data-design=classic] .modal-title{padding-bottom:var(--s2);margin-bottom:var(--s3);border-bottom:1px solid var(--border)}[data-design=classic] .list.program-rows .toolbar{gap:var(--s2)}[data-design=night]{--font: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--tile-radius: 14px;--shadow-sm: none;--shadow-md: 0 16px 40px color-mix(in srgb, var(--bg) 70%, transparent);--night-line: var(--control-border-width, 1px)}[data-design=night] h1,[data-design=night] h2,[data-design=night] h3,[data-design=night] .brand,[data-design=night] .modal-title{font-weight:700;letter-spacing:-.02em}[data-design=night] .topbar{border-bottom:1px solid var(--border)}[data-design=night] .topbar nav{gap:2px;padding:3px;background:var(--bg);border:1px solid var(--border-strong);border-radius:999px}[data-design=night] .topbar nav a{display:inline-flex;align-items:center;min-height:40px;border-radius:999px;color:var(--ink-soft);font-weight:500}[data-design=night] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=night] .topbar nav a.active{background:var(--primary);color:var(--primary-ink);font-weight:700;box-shadow:none}[data-design=night] .topbar.is-tight nav{flex:1 1 100%}[data-design=night] .usermenu-trigger{background:var(--bg);border:1px solid var(--border-strong);border-radius:999px;font-weight:600}[data-design=night] .usermenu-trigger:hover{background:var(--surface-soft);border-color:var(--primary)}[data-design=night] .usermenu-trigger[aria-expanded=true]{border-color:var(--primary)}[data-design=night] .usermenu-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--s1);gap:0}[data-design=night] .usermenu-who{padding:var(--s3);margin-bottom:var(--s1);border-bottom:1px solid var(--border)}[data-design=night] .usermenu-item{border-radius:var(--radius-sm);border-inline-start:2px solid transparent}[data-design=night] .usermenu-item:hover,[data-design=night] .usermenu-item:focus-visible{background:var(--surface-soft);border-inline-start-color:var(--primary)}[data-design=night] .navgroup-panel .usermenu-item.active{background:var(--surface-soft);border-inline-start-color:var(--primary)}[data-design=night] .card{border:1px solid var(--border);border-radius:var(--radius-lg)}[data-design=night] .card h2{font-size:var(--t-small);font-weight:700;letter-spacing:.02em;color:var(--ink-soft);padding-bottom:var(--s3);border-bottom:1px solid var(--border)}[data-design=night] .banner{background:var(--surface);border:1px solid var(--border);border-inline-start:4px solid var(--primary);border-radius:var(--radius)}[data-design=night] .btn:where(:not(.danger,.quiet-danger)){background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--ink);border:1px solid var(--primary);border-radius:var(--radius);font-weight:700}[data-design=night] .btn:where(:not(.danger,.quiet-danger)):hover:not(:disabled){background:color-mix(in srgb,var(--primary) 22%,var(--surface));border-color:var(--primary-hover)}[data-design=night] .btn:active:not(:disabled){background:var(--surface-soft)}[data-design=night] .btn:disabled{border-style:dashed}[data-design=night] .btn.secondary{background:transparent;color:var(--ink);border-color:var(--border-strong);font-weight:600}[data-design=night] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink-soft)}[data-design=night] .btn.ghost{background:transparent;border-color:transparent;color:var(--ink-soft)}[data-design=night] .btn.ghost:hover:not(:disabled){background:var(--surface-soft);border-color:var(--border);color:var(--ink)}[data-design=night] .field label,[data-design=night] .field-label{color:var(--ink-soft);font-weight:600}[data-design=night] .field input,[data-design=night] .field select,[data-design=night] .field textarea{background:var(--bg);border:var(--night-line) solid var(--border-strong);border-radius:var(--radius-sm)}[data-design=night] .field input:hover,[data-design=night] .field select:hover,[data-design=night] .field textarea:hover{border-color:var(--primary)}[data-design=night] .field input:focus-visible,[data-design=night] .field select:focus-visible,[data-design=night] .field textarea:focus-visible{border-color:var(--primary);outline-offset:1px}[data-design=night] .field-hint{color:var(--ink-faint)}[data-design=night] .tabs{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg)}[data-design=night] .tab{border:0;border-radius:var(--radius-sm);min-height:44px;color:var(--ink-soft)}[data-design=night] .tab:hover{background:var(--surface-soft);color:var(--ink)}[data-design=night] .tab.is-active{background:var(--surface-soft);border:0;color:var(--ink);font-weight:700;box-shadow:inset 0 0 0 1px var(--border-strong),inset 0 -2px 0 var(--primary)}[data-design=night] .list{gap:var(--s2)}[data-design=night] .list-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}[data-design=night] .list-item .name,[data-design=night] .library-name{font-weight:700}[data-design=night] .list.program-rows{gap:var(--s2)}[data-design=night] .list.program-rows>.list-item,[data-design=night] .list.program-rows>.list-item:last-child{gap:var(--s3);padding:var(--s3) var(--s3) var(--s3) var(--s4);background:var(--bg);border:1px solid var(--border);border-inline-start:4px solid var(--primary);border-radius:var(--radius-sm)}[data-design=night] .list.program-rows>.list-item:hover{border-color:var(--border-strong);border-inline-start-color:var(--primary)}[data-design=night] .list.program-rows .list-item-meta{color:var(--ink-faint);margin-top:2px}[data-design=night] .list.program-rows .toolbar{gap:var(--s2)}[data-design=night] .list.program-rows .rowmenu-trigger{min-width:44px}[data-design=night] .reward-total-link,[data-design=night] .home-reward:not(:has(.reward-total-link)){background:var(--bg);border:1px solid var(--border-strong);border-radius:999px;padding:var(--s1) var(--s4) var(--s1) var(--s2);gap:var(--s2)}[data-design=night] .reward-total-link:hover{border-color:var(--primary)}[data-design=night] .home-reward .figure{font-variant-numeric:tabular-nums;font-size:1.25em;color:var(--ink)}[data-design=night] .modal-backdrop{background:color-mix(in srgb,var(--bg) 75%,transparent)}[data-design=night] .modal{border:1px solid var(--border-strong);border-top:3px solid var(--primary);border-radius:var(--radius-lg)}[data-design=night] .modal-actions{padding-top:var(--s4);border-top:1px solid var(--border)}[data-design=flow]{--font: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 12px;--radius: 16px;--radius-lg: 24px;--tile-radius: 18px;--shadow-sm: 0 1px 2px color-mix(in srgb, var(--ink) 5%, transparent), 0 10px 28px color-mix(in srgb, var(--ink) 7%, transparent);--shadow-md: 0 18px 44px color-mix(in srgb, var(--ink) 14%, transparent);--shadow-float: 0 2px 4px color-mix(in srgb, var(--ink) 4%, transparent), 0 6px 18px color-mix(in srgb, var(--ink) 8%, transparent);--ease-out: cubic-bezier(.22, .8, .24, 1)}[data-design=flow] h1,[data-design=flow] h2,[data-design=flow] h3,[data-design=flow] .brand,[data-design=flow] .modal-title{font-weight:700;letter-spacing:-.02em}[data-design=flow] .topbar{border-bottom:0}[data-design=flow] .topbar nav{margin-inline:auto;gap:2px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow-float)}[data-design=flow] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--s4);border-radius:999px;color:var(--ink-soft);font-weight:600}[data-design=flow] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=flow] .topbar nav a.active{background:var(--primary);color:var(--primary-ink);font-weight:700}[data-design=flow] .topbar.is-tight{padding-bottom:var(--s3)}[data-design=flow] .topbar.is-tight nav{margin-inline:0}[data-design=flow] .usermenu-trigger{background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;padding-inline:var(--s4);box-shadow:var(--shadow-float)}[data-design=flow] .usermenu-trigger:hover{background:var(--surface-soft);border-color:var(--primary)}[data-design=flow] .usermenu-panel{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--s2);gap:2px}[data-design=flow] .usermenu-who{margin:0 0 var(--s2);padding:var(--s3) var(--s4);border-bottom:0;background:var(--surface-soft);border-radius:var(--radius)}[data-design=flow] .usermenu-item{border-radius:999px;padding-inline:var(--s4)}[data-design=flow] .navgroup-panel .usermenu-item.active{background:var(--primary);color:var(--primary-ink)}[data-design=flow] .card{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}[data-design=flow] .card:has(>.list.program-rows){background:transparent;border-color:transparent;box-shadow:none;padding:var(--s3) 0}[data-design=flow] .card:has(>.list.program-rows)>h2{padding-inline:var(--s2)}[data-design=flow] .banner{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--s4) var(--s5)}[data-design=flow] .btn{border-radius:999px;padding-inline:var(--s5)}[data-design=flow] .btn:where(:not(.danger,.quiet-danger,.secondary,.ghost)){box-shadow:var(--shadow-float)}[data-design=flow] .btn.secondary{background:var(--surface);border-color:var(--border-strong)}[data-design=flow] .btn.ghost:hover:not(:disabled){background:var(--surface-soft)}[data-design=flow] .field input,[data-design=flow] .field select,[data-design=flow] .field textarea{border-radius:var(--radius);padding-inline:var(--s4);box-shadow:0 1px 3px color-mix(in srgb,var(--ink) 6%,transparent)}[data-design=flow] .field select{border-radius:999px}[data-design=flow] .field label,[data-design=flow] .field-label,[data-design=flow] .field-hint{padding-inline-start:var(--s2)}[data-design=flow] .tabs{display:inline-flex;gap:2px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow-float)}[data-design=flow] .tab{border:0;border-radius:999px;padding-inline:var(--s4);font-weight:600}[data-design=flow] .tab:hover{background:var(--surface-soft);color:var(--ink)}[data-design=flow] .tab.is-active{background:var(--primary);border:0;color:var(--primary-ink);font-weight:700}[data-design=flow] .list{gap:var(--s3)}[data-design=flow] .list-item{border-radius:var(--radius)}[data-design=flow] .list.program-rows{gap:var(--s3)}[data-design=flow] .list.program-rows>.list-item,[data-design=flow] .list.program-rows>.list-item:last-child{gap:var(--s3);padding:var(--s2) var(--s2) var(--s2) var(--s5);background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow-float)}[data-design=flow] .list.program-rows>.list-item:hover{border-color:var(--border-strong)}[data-design=flow] .list.program-rows .toolbar{gap:var(--s2)}[data-design=flow] .list.program-rows .toolbar .btn{min-width:48px;min-height:48px;padding-inline:var(--s3)}[data-design=flow] .list.program-rows .toolbar>a.btn:first-child{width:60px;height:60px;min-height:60px;padding:0;border-radius:50%;font-size:var(--t-small)}@media (max-width: 480px){[data-design=flow] .list.program-rows>.list-item,[data-design=flow] .list.program-rows>.list-item:last-child{border-radius:var(--radius-lg);padding:var(--s3) var(--s3) var(--s3) var(--s4)}}[data-design=flow] .reward-total-link,[data-design=flow] .home-reward:not(:has(.reward-total-link)){background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;box-shadow:var(--shadow-float);padding:var(--s1) var(--s4) var(--s1) var(--s2)}[data-design=flow] .reward-total-link:hover{border-color:var(--primary)}[data-design=flow] .home-reward .figure{font-size:1.3em}[data-design=flow] .modal-backdrop{background:color-mix(in srgb,var(--ink) 30%,transparent)}[data-design=flow] .modal{border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow-md);padding:var(--s6) var(--s5) var(--s5)}@media (prefers-reduced-motion: no-preference){@keyframes flow-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes flow-open{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}@keyframes flow-fade{0%{opacity:0}to{opacity:1}}[data-design=flow][data-screen=teacher] main .banner,[data-design=flow][data-screen=teacher] main .card,[data-design=flow][data-screen=teacher] main .list-item,[data-design=flow][data-screen=teacher] main .library-table tbody tr{animation:flow-rise .46s var(--ease-out) both}[data-design=flow][data-screen=teacher] main>div>:nth-child(2){animation-delay:50ms}[data-design=flow][data-screen=teacher] main>div>:nth-child(3){animation-delay:.1s}[data-design=flow][data-screen=teacher] main>div>:nth-child(n+4){animation-delay:.15s}[data-design=flow][data-screen=teacher] main .list-item:nth-child(2),[data-design=flow][data-screen=teacher] main tbody tr:nth-child(2){animation-delay:.16s}[data-design=flow][data-screen=teacher] main .list-item:nth-child(3),[data-design=flow][data-screen=teacher] main tbody tr:nth-child(3){animation-delay:.22s}[data-design=flow][data-screen=teacher] main .list-item:nth-child(4),[data-design=flow][data-screen=teacher] main tbody tr:nth-child(4){animation-delay:.28s}[data-design=flow][data-screen=teacher] main .list-item:nth-child(n+5),[data-design=flow][data-screen=teacher] main tbody tr:nth-child(n+5){animation-delay:.34s}[data-design=flow] .usermenu-panel{transform-origin:top;animation:flow-open .22s var(--ease-out) both}[data-design=flow] .modal{animation:flow-open .26s var(--ease-out) both}[data-design=flow] .modal-backdrop{animation:flow-fade .2s ease-out both}[data-design=flow] .btn{transition:transform .16s var(--ease-out),background-color .2s ease,border-color .2s ease}[data-design=flow] .btn:active:not(:disabled){transform:scale(.97)}[data-design=flow] .tab{transition:background-color .22s ease,color .22s ease}[data-design=flow][data-screen=game] .tile{transition:transform .14s var(--ease-out),border-color .2s ease,background-color .2s ease}[data-design=flow][data-screen=game] .tile:active:not(:disabled){transform:scale(.98)}}[data-design=kinetic]{--font: "Space Grotesk Variable", "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 2px;--radius: 2px;--radius-lg: 2px;--tile-radius: 12px;--shadow-sm: none;--shadow-md: 0 12px 32px color-mix(in srgb, var(--ink) 16%, transparent);--k-line: max(1.5px, var(--control-border-width, 1px));--k-cut: 10px;--k-cut-lg: 18px}[data-design=kinetic] h1,[data-design=kinetic] h2,[data-design=kinetic] h3,[data-design=kinetic] .brand,[data-design=kinetic] .modal-title{font-weight:700;letter-spacing:-.02em}[data-design=kinetic] .topbar{border-bottom:1.5px solid var(--border-strong)}[data-design=kinetic] .topbar nav{gap:2px}[data-design=kinetic] .topbar nav a{position:relative;isolation:isolate;display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--s4);border-radius:0;color:var(--ink);font-weight:500}[data-design=kinetic] .topbar nav a:hover,[data-design=kinetic] .topbar nav a.active{background:none}[data-design=kinetic] .topbar nav a:after{content:"";position:absolute;left:var(--s3);right:var(--s3);bottom:4px;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:left}[data-design=kinetic] .topbar nav a:hover:not(.active):after{transform:scaleX(1)}[data-design=kinetic] .topbar nav a.active{color:var(--primary-ink);font-weight:700}[data-design=kinetic] .topbar nav a.active:before{content:"";position:absolute;top:5px;right:6px;bottom:5px;left:6px;z-index:-1;background:var(--primary);transform:skew(-14deg)}[data-design=kinetic] .usermenu-trigger{border:var(--k-line) solid var(--border-strong);border-radius:var(--k-cut) 0;corner-shape:bevel;padding-inline:var(--s4)}[data-design=kinetic] .usermenu-panel{border:1.5px solid var(--border-strong);border-radius:var(--k-cut-lg) 0;corner-shape:bevel;padding:var(--s2)}[data-design=kinetic] .usermenu-who{border-bottom:1.5px solid var(--border-strong)}[data-design=kinetic] .usermenu-item{position:relative;border-radius:0;padding-inline-start:var(--s4)}[data-design=kinetic] .usermenu-item:hover,[data-design=kinetic] .usermenu-item:focus-visible{box-shadow:inset 4px 0 0 var(--primary)}[data-design=kinetic] .navgroup-panel .usermenu-item.active{box-shadow:inset 4px 0 0 var(--primary)}[data-design=kinetic] .card{border:1.5px solid var(--border-strong);border-radius:0 var(--k-cut-lg);corner-shape:bevel}[data-design=kinetic] .card h2{display:flex;align-items:center;gap:var(--s3)}[data-design=kinetic] .card h2:before{content:"";flex:none;width:14px;height:14px;background:var(--primary);clip-path:polygon(0 0,100% 0,0 100%)}[data-design=kinetic] .banner{border:1.5px solid var(--border);border-inline-start:4px solid var(--primary);border-radius:0 var(--k-cut) 0 0;corner-shape:bevel}[data-design=kinetic] .btn{border-width:1.5px;border-radius:0;clip-path:polygon(var(--k-cut) 0,100% 0,100% calc(100% - var(--k-cut)),calc(100% - var(--k-cut)) 100%,0 100%,0 var(--k-cut))}[data-design=kinetic] .btn:focus-visible{outline-offset:-6px}[data-design=kinetic] .btn:where(:not(.secondary,.ghost,.danger,.quiet-danger)){background-color:var(--primary);background-image:linear-gradient(var(--primary-hover),var(--primary-hover));background-repeat:no-repeat;background-size:0% 100%}[data-design=kinetic] .btn:where(:not(.secondary,.ghost,.danger,.quiet-danger)):hover:not(:disabled){background-color:var(--primary);background-image:linear-gradient(var(--primary-hover),var(--primary-hover));background-size:100% 100%}[data-design=kinetic] .btn:where(:not(.secondary,.ghost,.danger,.quiet-danger)):focus-visible{outline-color:var(--primary-ink)}[data-design=kinetic] .btn.secondary,[data-design=kinetic] .btn.quiet-danger{position:relative;isolation:isolate;background:var(--border-strong);border-color:transparent}[data-design=kinetic] .btn.secondary:before,[data-design=kinetic] .btn.quiet-danger:before{content:"";position:absolute;inset:var(--k-line);z-index:-1;background:var(--surface);clip-path:polygon(calc(var(--k-cut) - .6 * var(--k-line)) 0,100% 0,100% calc(100% - var(--k-cut) + .6 * var(--k-line)),calc(100% - var(--k-cut) + .6 * var(--k-line)) 100%,0 100%,0 calc(var(--k-cut) - .6 * var(--k-line)))}[data-design=kinetic] .btn.secondary:hover:not(:disabled){background:var(--primary);border-color:transparent}[data-design=kinetic] .btn.secondary:hover:not(:disabled):before{background:var(--surface-soft)}[data-design=kinetic] .btn.quiet-danger:hover:not(:disabled){background:var(--danger);border-color:transparent}[data-design=kinetic] .btn.ghost{clip-path:none}[data-design=kinetic] .field label,[data-design=kinetic] .field-label{color:var(--ink);font-weight:700}[data-design=kinetic] .field input,[data-design=kinetic] .field select,[data-design=kinetic] .field textarea{border-width:var(--k-line);border-radius:var(--k-cut) 0;corner-shape:bevel}[data-design=kinetic] .tabs{gap:2px;border-bottom:1.5px solid var(--border-strong)}[data-design=kinetic] .tab{position:relative;isolation:isolate;border:0;border-radius:0;color:var(--ink)}[data-design=kinetic] .tab:hover{background:none;box-shadow:inset 0 -2px 0 var(--primary)}[data-design=kinetic] .tab.is-active{background:none;border:0;color:var(--primary-ink);font-weight:700;box-shadow:none}[data-design=kinetic] .tab.is-active:before{content:"";position:absolute;top:3px;right:7px;bottom:3px;left:7px;z-index:-1;background:var(--primary);transform:skew(-14deg)}[data-design=kinetic] .list-item{border:1.5px solid var(--border);border-radius:0}[data-design=kinetic] .list-item .name,[data-design=kinetic] .library-name{font-weight:700}[data-design=kinetic] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}[data-design=kinetic] .list.program-rows>.list-item,[data-design=kinetic] .list.program-rows>.list-item:last-child{position:relative;isolation:isolate;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--s3);padding:var(--s4) var(--s4) var(--s3) var(--s5);background:var(--border-strong);border:0;clip-path:polygon(0 0,calc(100% - var(--k-cut-lg)) 0,100% var(--k-cut-lg),100% 100%,var(--k-cut-lg) 100%,0 calc(100% - var(--k-cut-lg)))}[data-design=kinetic] .list.program-rows>.list-item:before{content:"";position:absolute;inset:var(--k-line);z-index:-1;background:var(--surface);clip-path:polygon(0 0,calc(100% - var(--k-cut-lg) + .6 * var(--k-line)) 0,100% calc(var(--k-cut-lg) - .6 * var(--k-line)),100% 100%,calc(var(--k-cut-lg) - .6 * var(--k-line)) 100%,0 calc(100% - var(--k-cut-lg) + .6 * var(--k-line)))}[data-design=kinetic] .list.program-rows>.list-item:after{content:"";position:absolute;top:var(--s4);bottom:var(--s4);left:var(--k-line);width:4px;background:var(--primary)}[data-design=kinetic] .list.program-rows>.list-item:hover:before{background:var(--surface-soft)}[data-design=kinetic] .list.program-rows .list-item-text{flex:1 1 auto}[data-design=kinetic] .list.program-rows .toolbar{justify-content:flex-start;gap:var(--s2);margin:0;padding-top:var(--s3);border-top:1px dashed var(--border)}[data-design=kinetic] .list.program-rows .toolbar>*{flex:0 0 auto}[data-design=kinetic] .list.program-rows .toolbar>a.btn:first-child{min-width:7rem}[data-design=kinetic] .list.program-rows .rowmenu{margin-inline-start:auto}@media (max-width: 760px){[data-design=kinetic] .list.program-rows{grid-template-columns:minmax(0,1fr)}}[data-design=kinetic] .reward-total-link,[data-design=kinetic] .home-reward:not(:has(.reward-total-link)){border:var(--k-line) solid var(--border-strong);border-radius:var(--k-cut) 0;corner-shape:bevel;padding:var(--s1) var(--s4)}[data-design=kinetic] .reward-total-link:hover{border-color:var(--primary)}[data-design=kinetic] .home-reward .figure{font-size:1.35em;font-variant-numeric:tabular-nums}[data-design=kinetic] .modal{border:1.5px solid var(--border-strong);border-radius:0 var(--k-cut-lg);corner-shape:bevel}@media (prefers-reduced-motion: no-preference){@keyframes kinetic-slide{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}[data-design=kinetic] .topbar nav a:after{transition:transform .26s cubic-bezier(.2,.8,.2,1)}[data-design=kinetic] .btn{transition:background-size .3s cubic-bezier(.2,.8,.2,1),border-color .2s ease,transform .14s ease}[data-design=kinetic] .btn:active:not(:disabled){transform:translateY(1px)}[data-design=kinetic] .tab{transition:box-shadow .22s ease,color .22s ease}[data-design=kinetic][data-screen=teacher] main h2{animation:kinetic-slide .38s cubic-bezier(.2,.8,.2,1) both}[data-design=kinetic][data-screen=game] .tile{transition:transform .12s ease,border-color .2s ease,background-color .2s ease}[data-design=kinetic][data-screen=game] .tile:active:not(:disabled){transform:translateY(2px)}}[data-design=spring]{--font: "Nunito Variable", "Nunito", ui-rounded, system-ui, sans-serif;--radius-sm: 16px;--radius: 22px;--radius-lg: 32px;--tile-radius: 24px;--bub-edge: var(--border-strong);--shadow-sm: 0 2px 4px color-mix(in srgb, var(--ink) 5%, transparent), 0 10px 24px color-mix(in srgb, var(--ink) 7%, transparent);--shadow-md: 0 20px 48px color-mix(in srgb, var(--ink) 16%, transparent);--spring: cubic-bezier(.34, 1.56, .64, 1)}[data-design=spring] h1,[data-design=spring] h2,[data-design=spring] h3,[data-design=spring] .brand,[data-design=spring] .modal-title{font-weight:800;letter-spacing:-.01em}[data-design=spring] .topbar{border-bottom:0}[data-design=spring] .topbar nav{gap:var(--s2)}[data-design=spring] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;padding:var(--s2) var(--s4);border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--ink);font-weight:700;box-shadow:var(--shadow-sm)}[data-design=spring] .topbar nav a:hover{background:var(--surface-soft);border-color:var(--bub-edge)}[data-design=spring] .topbar nav a.active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);font-weight:800}[data-design=spring] .usermenu-trigger{min-height:44px;padding:var(--s2) var(--s4);border-radius:999px;background:var(--surface);border:1px solid var(--bub-edge);font-weight:700;box-shadow:var(--shadow-sm)}[data-design=spring] .usermenu-panel{border:0;border-radius:var(--radius-lg);padding:var(--s3);gap:var(--s1);box-shadow:var(--shadow-md),0 0 0 1px var(--border)}[data-design=spring] .usermenu-who{border-bottom:0;background:var(--surface-soft);border-radius:var(--radius);padding:var(--s3) var(--s4)}[data-design=spring] .usermenu-item{border-radius:999px;padding:var(--s3) var(--s4);font-weight:700}[data-design=spring] .card{border:0;border-radius:var(--radius-lg);padding:var(--s5) var(--s5) var(--s6);box-shadow:var(--shadow-sm)}[data-design=spring] .card h2{font-size:var(--t-title)}[data-design=spring] .banner{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s4) var(--s5)}[data-design=spring] .list.program-rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}[data-design=spring] .list.program-rows>.list-item,[data-design=spring] .list.program-rows>.list-item:last-child{flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:space-between;gap:var(--s4);min-height:9.5rem;padding:var(--s5);background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-lg)}[data-design=spring] .list.program-rows>.list-item:hover{border-color:var(--bub-edge)}[data-design=spring] .list.program-rows .list-item-text{flex:0 0 auto}[data-design=spring] .list.program-rows .list-item .name{font-size:var(--t-lead);font-weight:800}[data-design=spring] .list.program-rows .toolbar{flex-wrap:nowrap;gap:var(--s2);margin-inline-start:0;justify-content:flex-start}[data-design=spring] .list.program-rows .toolbar>a.btn:not(.secondary){flex:1 1 auto}[data-design=spring] .list.program-rows .toolbar .btn{padding-inline:var(--s4)}[data-design=spring] .list.program-rows .rowmenu-trigger{min-width:48px}@media (max-width: 960px){[data-design=spring] .list.program-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){[data-design=spring] .list.program-rows{grid-template-columns:minmax(0,1fr);gap:var(--s3)}[data-design=spring] .list.program-rows>.list-item,[data-design=spring] .list.program-rows>.list-item:last-child{min-height:0;padding:var(--s4);gap:var(--s3)}}[data-design=spring] .list-item .name,[data-design=spring] .library-name{font-weight:800}[data-design=spring] .list:not(.program-rows){gap:var(--s3)}[data-design=spring] .list:not(.program-rows)>.list-item{border-radius:var(--radius-lg);padding:var(--s4) var(--s5);background:var(--surface-soft)}[data-design=spring] .btn{border-radius:999px;font-weight:800;padding-inline:var(--s5)}[data-design=spring] .btn.secondary{background:var(--surface);border:2px solid var(--bub-edge);color:var(--ink)}[data-design=spring] .btn.secondary:hover:not(:disabled){border-color:var(--primary);background:var(--surface)}[data-design=spring] .btn.ghost{border-radius:999px}[data-design=spring] .btn:focus-visible,[data-design=spring] .tab:focus-visible,[data-design=spring] .usermenu-trigger:focus-visible,[data-design=spring] .topbar nav a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[data-design=spring] .field label,[data-design=spring] .field-label{font-weight:700;color:var(--ink);padding-inline-start:var(--s3)}[data-design=spring] .field input,[data-design=spring] .field select{min-height:52px;border-radius:999px;padding-inline:var(--s5);background:var(--surface-soft)}[data-design=spring] .field textarea{border-radius:var(--radius);padding:var(--s3) var(--s4);background:var(--surface-soft)}[data-design=spring] .field input:focus,[data-design=spring] .field select:focus,[data-design=spring] .field textarea:focus{background:var(--surface)}[data-design=spring] .field-hint{padding-inline-start:var(--s3)}[data-design=spring] .check{padding:var(--s2) var(--s3);border-radius:999px}[data-design=spring] .check:hover{background:var(--surface-soft)}[data-design=spring] .tabs{border-bottom:0;gap:var(--s2);padding-bottom:var(--s1)}[data-design=spring] .tab{border:1px solid var(--bub-edge);border-radius:999px;background:var(--surface);color:var(--ink);font-weight:700;padding-inline:var(--s5)}[data-design=spring] .tab:hover{background:var(--surface-soft)}[data-design=spring] .tab.is-active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);font-weight:800}[data-design=spring] .modal{border:0;border-radius:36px;padding:var(--s6) var(--s5) var(--s5);box-shadow:var(--shadow-md);text-align:center}[data-design=spring] .modal-actions{justify-content:center}[data-design=spring] .reward-total-link{border-radius:999px;padding:var(--s2) var(--s4);background:var(--surface);border:1px solid var(--bub-edge);font-weight:700;box-shadow:var(--shadow-sm)}[data-design=spring] .pill{border-radius:999px;padding:0 var(--s3)}@media (prefers-reduced-motion: no-preference){@keyframes spring-pop{0%{opacity:0;transform:scale(.94)}60%{opacity:1;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}[data-design=spring][data-screen=teacher] main .banner,[data-design=spring][data-screen=teacher] main .card,[data-design=spring][data-screen=teacher] main .list-item{animation:spring-pop .52s ease-out both}[data-design=spring][data-screen=teacher] main .list-item:nth-child(2){animation-delay:60ms}[data-design=spring][data-screen=teacher] main .list-item:nth-child(3){animation-delay:.12s}[data-design=spring][data-screen=teacher] main .list-item:nth-child(n+4){animation-delay:.18s}[data-design=spring] .usermenu-panel{transform-origin:top left;animation:spring-pop .32s ease-out both}[data-design=spring] .modal{animation:spring-pop .36s ease-out both}[data-design=spring] .btn{transition:transform .3s var(--spring),background-color .2s ease}[data-design=spring] .btn:active:not(:disabled){transform:scale(.93);transition-duration:90ms}[data-design=spring] .tab{transition:transform .3s var(--spring),background-color .2s ease}[data-design=spring] .tab:active{transform:scale(.95)}[data-design=spring][data-screen=game] .tile{transition:transform .32s var(--spring),border-color .2s ease,background-color .2s ease}[data-design=spring][data-screen=game] .tile:active:not(:disabled){transform:scale(.95);transition-duration:90ms}}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-devanagari-wght-normal-B4j4n2PV.woff2) format("woff2-variations");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-vietnamese-wght-normal-C4ZonJY6.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-latin-ext-wght-normal-Dz43yst_.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-latin-wght-normal-B_TVFhwJ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}[data-design=playroom]{--font: "Fredoka Variable", "Fredoka", ui-rounded, system-ui, sans-serif;--font-display: "Baloo 2 Variable", "Baloo 2", "Fredoka Variable", sans-serif;--radius-sm: 12px;--radius: 16px;--radius-lg: 24px;--tile-radius: 22px;--shadow-sm: none;--shadow-md: 0 6px 0 var(--border-strong);--wood-edge: color-mix(in srgb, var(--border-strong) 55%, var(--border));--peg-edge: color-mix(in srgb, var(--primary) 60%, var(--ink))}[data-design=playroom] h1,[data-design=playroom] h2,[data-design=playroom] h3,[data-design=playroom] .brand,[data-design=playroom] .modal-title{font-family:var(--font-display);font-weight:800;letter-spacing:0}[data-design=playroom] .topbar{border-bottom:0;align-items:flex-end}[data-design=playroom] .topbar nav{gap:6px;align-items:flex-end;padding:6px 10px 0;border-bottom:8px solid var(--wood-edge);border-radius:0 0 6px 6px;box-shadow:0 4px 0 var(--border-strong)}[data-design=playroom] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;padding:var(--s2) var(--s4);background:var(--surface);border:3px solid var(--border-strong);border-bottom:0;border-radius:14px 14px 3px 3px;color:var(--ink);font-weight:600}[data-design=playroom] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=playroom] .topbar nav a.active{min-height:52px;background:var(--primary);border-color:var(--peg-edge);color:var(--primary-ink);font-weight:700}[data-design=playroom] .topbar nav a:focus-visible{outline-offset:-5px}[data-design=playroom] .topbar.is-tight nav{flex:1 1 100%}[data-design=playroom] .usermenu-trigger{min-height:46px;padding:var(--s2) var(--s4);background:var(--surface);border:3px solid var(--border-strong);border-radius:999px;color:var(--ink);font-weight:600;box-shadow:0 4px 0 var(--border-strong)}[data-design=playroom] .usermenu-trigger:hover{background:var(--surface-soft);border-color:var(--border-strong)}[data-design=playroom] .usermenu-panel{padding:var(--s3);gap:6px;background:var(--surface);border:4px solid var(--wood-edge);border-radius:var(--radius-lg);box-shadow:0 8px 0 var(--border-strong)}[data-design=playroom] .usermenu-who{border-bottom:4px solid var(--surface-soft)}[data-design=playroom] .usermenu-item{border:2px solid transparent;border-radius:999px;padding:var(--s2) var(--s4);font-weight:600}[data-design=playroom] .usermenu-item:hover,[data-design=playroom] .usermenu-item:focus-visible{background:var(--surface-soft);border-color:var(--border-strong)}[data-design=playroom] .card{background:var(--surface);border:4px solid var(--wood-edge);border-radius:var(--radius-lg);box-shadow:inset 0 -6px 0 var(--surface-soft),0 8px 0 var(--border-strong);padding:var(--s5) var(--s5) calc(var(--s5) + 6px)}[data-design=playroom] .card h2{font-size:var(--t-title)}[data-design=playroom] .banner{background:var(--surface-soft);border:4px solid var(--wood-edge);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--border-strong)}[data-design=playroom] .btn{min-height:50px;padding:var(--s3) var(--s5);border:3px solid var(--peg-edge);border-radius:999px;font-weight:700;box-shadow:0 5px 0 var(--peg-edge);transition:transform 80ms ease,box-shadow 80ms ease,background-color var(--transition)}[data-design=playroom] .btn:hover:not(:disabled){border-color:var(--peg-edge)}[data-design=playroom] .btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 var(--peg-edge)}[data-design=playroom] .btn.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--ink);box-shadow:0 5px 0 var(--border-strong)}[data-design=playroom] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--border-strong)}[data-design=playroom] .btn.secondary:active:not(:disabled){box-shadow:0 2px 0 var(--border-strong)}[data-design=playroom] .btn.ghost,[data-design=playroom] .btn.quiet-danger{box-shadow:none;border-width:2px}[data-design=playroom] .btn.ghost{border-color:transparent}[data-design=playroom] .btn.danger{border-color:var(--danger);box-shadow:0 5px color-mix(in srgb,var(--danger) 60%,var(--ink))}[data-design=playroom] .btn:disabled{box-shadow:none}[data-design=playroom] .field input,[data-design=playroom] .field select,[data-design=playroom] .field textarea{min-height:50px;background:var(--surface);border:calc(var(--control-border-width, 1px) + 2px) solid var(--border-strong);border-radius:var(--radius);box-shadow:inset 0 4px 0 var(--surface-soft)}[data-design=playroom] .field label,[data-design=playroom] .field-label{font-family:var(--font-display);font-weight:700;color:var(--ink)}[data-design=playroom] .check input[type=checkbox]{width:26px;height:26px}[data-design=playroom] .tabs{gap:6px;padding:6px;background:var(--surface-soft);border:3px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:inset 0 4px color-mix(in srgb,var(--border) 60%,transparent)}[data-design=playroom] .tab{border:3px solid transparent;border-radius:999px;color:var(--ink);font-weight:600}[data-design=playroom] .tab:hover{background:var(--surface)}[data-design=playroom] .tab.is-active{background:var(--surface);border-color:var(--border-strong);color:var(--ink);font-weight:700;box-shadow:0 4px 0 var(--border-strong)}[data-design=playroom] .list{gap:var(--s3)}[data-design=playroom] .list-item{border:3px solid var(--wood-edge);border-radius:var(--radius-lg);box-shadow:0 5px 0 var(--border-strong)}[data-design=playroom] .list.program-rows{gap:var(--s4)}[data-design=playroom] .list.program-rows>.list-item,[data-design=playroom] .list.program-rows>.list-item:last-child{padding:var(--s3) var(--s4);background:var(--surface);border:3px solid var(--wood-edge);border-radius:var(--radius-lg);box-shadow:0 5px 0 var(--border-strong)}[data-design=playroom] .list-item .name,[data-design=playroom] .library-name{font-family:var(--font-display);font-weight:700}[data-design=playroom] .reward-total-link{min-height:46px;background:var(--surface);border:calc(var(--control-border-width, 1px) + 2px) solid var(--border-strong);border-radius:999px;box-shadow:0 4px 0 var(--border-strong)}[data-design=playroom] .modal-backdrop{background:color-mix(in srgb,var(--ink) 50%,transparent)}[data-design=playroom] .modal{border:5px solid var(--wood-edge);border-radius:var(--radius-lg);box-shadow:inset 0 -6px 0 var(--surface-soft),0 10px 0 var(--border-strong)}[data-design=playroom] .modal-title{font-size:var(--t-title)}[data-design=playroom][data-screen=game] .card{box-shadow:none}[data-design=playroom][data-screen=game] .tile{border-radius:var(--tile-radius);box-shadow:0 5px 0 var(--border-strong);transition:transform 80ms ease,box-shadow 80ms ease,border-color var(--transition),background-color var(--transition)}[data-design=playroom][data-screen=game] .tile:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px 0 var(--border-strong)}[data-design=playroom][data-screen=game] .tile.correct{box-shadow:0 5px 0 var(--success)}.room-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:-1;pointer-events:auto}[data-room] body{overflow:hidden}[data-room] .app-shell{position:relative;z-index:1;pointer-events:none}[data-room] .topbar,[data-room] .learner-bar,[data-room] .room-top,[data-room] .room-bottom,[data-room] .room-error{pointer-events:auto}[data-room] .topbar{border-bottom:0;margin-bottom:var(--s3)}[data-room] .topbar .brand{color:#fffaf0;text-shadow:0 2px 6px rgba(40,20,8,.6)}[data-room] main{min-height:calc(100vh - 120px)}.room-top{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap}.room-chips{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center}.room-chip,.room-select{min-height:44px;padding:var(--s2) var(--s4);background:var(--surface);border:2px solid var(--border-strong);border-radius:999px;color:var(--ink);font:inherit;font-weight:600;box-shadow:0 3px 0 var(--border-strong);cursor:pointer}.room-chip{display:inline-flex;align-items:center;gap:var(--s2)}.room-chip.is-active{background:var(--accent)}.room-count{min-width:1.6em;padding:0 var(--s2);border-radius:999px;background:var(--surface-soft);font-size:var(--t-hint);text-align:center}.room-actions{display:flex;gap:var(--s2);flex-wrap:wrap}.room-short,.room-top.is-tight .room-long{display:none}.room-top.is-tight .room-short{display:inline}.room-top.is-tight{gap:var(--s2);flex-wrap:nowrap}.room-top.is-tight .room-chips{flex-wrap:nowrap;overflow-x:auto;flex:1 1 0;min-width:0;scrollbar-width:none}.room-top.is-tight .room-actions{flex:0 0 auto;flex-wrap:nowrap;margin-left:auto}.room-top.is-tight .room-actions .btn{font-size:var(--t-small);white-space:nowrap;padding:var(--s1) var(--s3);min-height:40px}.room-top.is-tight .room-chip,.room-top.is-tight .room-select{min-height:40px;padding:var(--s1) var(--s3);white-space:nowrap;flex:none}.room-top.is-tight .room-actions .rowmenu-trigger{padding:var(--s1) var(--s3);min-height:40px;font-size:var(--t-small);white-space:nowrap}.room-bottom{position:fixed;left:50%;bottom:var(--s4);transform:translate(-50%);width:min(1040px,calc(100vw - 2 * var(--s4)));display:flex;flex-direction:column;align-items:center;gap:var(--s2)}.room-title{margin:0;font-family:var(--font-display);font-size:var(--t-title);font-weight:800;color:#fffaf0;text-shadow:0 2px 8px rgba(40,20,8,.75)}.room-chosen{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s2) var(--s2) var(--s5);background:var(--surface);border:3px solid var(--border-strong);border-radius:999px;box-shadow:0 8px 20px #3c1e0a59}.room-chosen-name{font-family:var(--font-display);font-weight:800;font-size:var(--t-lead)}.room-row{display:flex;align-items:center;gap:var(--s3);width:100%;justify-content:center}.room-arrow{flex:none;width:52px;height:52px;border-radius:50%;border:3px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:1.8em;line-height:1;cursor:pointer;box-shadow:0 4px 0 var(--border-strong)}.room-arrow:disabled{opacity:.45;cursor:default}.room-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,220px);gap:var(--s3);margin:0;padding:0;list-style:none}.room-card{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3);background:var(--surface);border:3px solid var(--border);border-radius:18px;box-shadow:0 8px 18px #3c1e0a4d}.room-card.is-chosen{border-color:var(--primary)}.room-card-pick{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:var(--s2);align-items:center;padding:0;background:none;border:0;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.room-card-glyph{grid-row:span 2;font-size:1.9em}.room-card-name{font-family:var(--font-display);font-weight:800;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-card-meta{font-size:var(--t-hint);color:var(--ink-soft)}.room-card-actions{display:flex;gap:var(--s2)}.room-card-actions .btn{flex:1;min-height:40px;padding:var(--s1) var(--s3)}.room-dots{display:flex;gap:6px}.room-dots span{width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--border-strong)}.room-dots span.is-on{background:var(--accent)}@media (max-width: 720px){.room-top.is-tight{flex-wrap:wrap}.room-top.is-tight .room-chips{flex:1 1 14rem}.room-cards{grid-auto-columns:minmax(0,1fr);flex:1}.room-title{font-size:var(--t-lead)}}[data-design=expedition]{--font: "Lexend Variable", "Lexend", system-ui, sans-serif;--font-display: "Fraunces Variable", "Fraunces", Georgia, serif;--night: #0f1a2b;--night-soft: #1c2a40;--radius-sm: 3px;--radius: 4px;--radius-lg: 6px;--tile-radius: 14px;--shadow-sm: none;--shadow-md: 0 2px 0 var(--border)}[data-design=expedition] h1,[data-design=expedition] h2,[data-design=expedition] h3,[data-design=expedition] .brand,[data-design=expedition] .modal-title{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}[data-design=expedition] .topbar{border-bottom:1px dashed var(--border-strong)}[data-design=expedition] .topbar nav{gap:0;padding:3px;border:1.5px solid var(--border-strong);border-radius:var(--radius)}[data-design=expedition] .topbar nav a{display:inline-flex;align-items:center;gap:var(--s2);min-height:42px;padding:var(--s1) var(--s3);border-radius:2px;font-weight:500;color:inherit}[data-design=expedition] .topbar nav>:not(:first-child){box-shadow:-1px 0 color-mix(in srgb,var(--border-strong) 55%,transparent)}[data-design=expedition] .topbar nav a:before{content:"";flex:none;width:.6em;height:.6em;border:1.5px solid currentColor;border-radius:1px}[data-design=expedition] .topbar nav a:hover{background:transparent;text-decoration:underline dashed;text-underline-offset:4px}[data-design=expedition] .topbar nav a.active{background:transparent;color:inherit;font-weight:700;outline:2px solid currentColor;outline-offset:-2px}[data-design=expedition] .topbar nav a.active:before{background:currentColor}[data-design=expedition] .topbar nav a.active:focus-visible{outline:3px solid var(--focus)}[data-design=expedition] .usermenu-trigger{min-height:44px;border:4px double var(--border-strong);border-radius:var(--radius);font-weight:600}[data-design=expedition] .usermenu-panel{padding:var(--s3);border:1px solid var(--border-strong);border-radius:var(--radius);outline:1px dashed var(--border-strong);outline-offset:-7px;box-shadow:0 14px 36px color-mix(in srgb,var(--ink) 22%,transparent);gap:0}[data-design=expedition] .usermenu-who{border-bottom:3px double var(--border-strong)}[data-design=expedition] .usermenu-item{border-radius:0;border-bottom:1px dashed var(--border)}[data-design=expedition] .usermenu-item:last-child{border-bottom:0}[data-design=expedition] .usermenu-item:hover,[data-design=expedition] .usermenu-item:focus-visible{background:var(--surface-soft)}[data-design=expedition] .card{border:1px solid var(--border-strong);border-radius:var(--radius-lg);outline:1.5px dashed color-mix(in srgb,var(--border-strong) 70%,var(--border));outline-offset:-9px;box-shadow:0 2px 0 var(--border);padding:calc(var(--s5) + 4px)}[data-design=expedition] .card h2{padding-bottom:var(--s2);border-bottom:1px solid var(--border)}[data-design=expedition] .banner{background:var(--surface);border:1px dashed var(--border-strong);border-inline-start:6px double var(--primary);border-radius:var(--radius)}[data-design=expedition] .btn{border:4px double var(--primary-ink);border-radius:var(--radius);box-shadow:0 0 0 1.5px var(--primary);font-weight:600;letter-spacing:.02em}[data-design=expedition] .btn:hover:not(:disabled){border-color:var(--primary-ink);box-shadow:0 0 0 1.5px var(--primary-hover)}[data-design=expedition] .btn.secondary{background:var(--surface);border:4px double var(--border-strong);box-shadow:none;color:var(--ink)}[data-design=expedition] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink);box-shadow:none}[data-design=expedition] .btn.ghost{border:1.5px dashed transparent;box-shadow:none;letter-spacing:0}[data-design=expedition] .btn.ghost:hover:not(:disabled){border-color:var(--border-strong);box-shadow:none}[data-design=expedition] .btn.quiet-danger{border:1.5px dashed var(--border-strong);box-shadow:none}[data-design=expedition] .btn.quiet-danger:hover:not(:disabled){border-color:var(--danger);box-shadow:none}[data-design=expedition] .btn.danger{border-color:var(--surface);box-shadow:0 0 0 1.5px var(--danger)}[data-design=expedition] .field input,[data-design=expedition] .field select,[data-design=expedition] .field textarea{background:transparent;border:0;border-bottom:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);border-radius:0;padding-inline:var(--s1)}[data-design=expedition] .field select{background:var(--surface)}[data-design=expedition] .field textarea{border:1px solid var(--border);border-inline-start:3px double var(--border-strong);border-bottom:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);padding-inline:var(--s3);background:var(--surface)}[data-design=expedition] .field input:focus,[data-design=expedition] .field select:focus,[data-design=expedition] .field textarea:focus{border-bottom-color:var(--primary)}[data-design=expedition] .field label,[data-design=expedition] .field-label{font-size:var(--t-small);font-weight:600;letter-spacing:.03em;color:var(--ink-soft)}[data-design=expedition] .field-hint{font-style:normal}[data-design=expedition] .tabs{border-bottom:1px dashed var(--border-strong);gap:var(--s2)}[data-design=expedition] .tab{border:1.5px dashed var(--border-strong);border-radius:var(--radius);background:transparent;color:var(--ink-soft);font-weight:500}[data-design=expedition] .tab:hover{background:var(--surface);color:var(--ink)}[data-design=expedition] .tab.is-active{background:var(--surface);border:2px solid var(--ink);color:var(--ink);font-weight:700}[data-design=expedition] .list{gap:0}[data-design=expedition] .list-item{border:0;border-bottom:1px dashed var(--border-strong);border-radius:0;background:transparent;box-shadow:none}[data-design=expedition] .list.program-rows{counter-reset:exp-row}[data-design=expedition] .list.program-rows>.list-item{border-bottom:1px dashed var(--border-strong);padding:var(--s2) 0}[data-design=expedition] .list.program-rows>.list-item:before{counter-increment:exp-row;content:counter(exp-row,decimal-leading-zero);flex:none;min-width:2.2em;font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink-soft)}[data-design=expedition] .list-item .name,[data-design=expedition] .library-name{font-family:var(--font-display);font-weight:700}[data-design=expedition] .reward-total-link{border:4px double var(--border-strong);border-radius:var(--radius)}[data-design=expedition] .modal-backdrop{background:color-mix(in srgb,var(--ink) 50%,transparent)}[data-design=expedition] .modal{border:1px solid var(--border-strong);border-radius:var(--radius-lg);outline:1.5px dashed color-mix(in srgb,var(--border-strong) 70%,var(--border));outline-offset:-9px;box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 30%,transparent);padding:calc(var(--s5) + 6px)}[data-design=expedition] .modal-title{padding-bottom:var(--s2);border-bottom:3px double var(--border-strong)}[data-design=expedition][data-screen=game] .card{box-shadow:none;outline:0}[data-design=expedition][data-screen=game] .tile{border-radius:var(--tile-radius);box-shadow:inset 0 0 0 4px var(--surface),inset 0 0 0 5px var(--border)}[data-design=expedition][data-screen=game] .tile.correct{box-shadow:inset 0 0 0 4px var(--success-bg),inset 0 0 0 6px var(--success)}[data-expedition],[data-expedition] body,[data-expedition] #root{background:var(--night)}[data-expedition] .topbar{border-bottom:0}[data-expedition] .topbar .brand,[data-expedition] .topbar nav a{color:#f6ead0}[data-expedition] .topbar nav a.active{background:var(--night-soft);color:var(--accent)}[data-expedition] .usermenu-trigger{color:#f6ead0;border-color:#5b4a30;background:var(--night-soft)}[data-expedition] .learner-bar,[data-expedition] .learner-bar label{color:#f6ead0}.exp{display:grid;grid-template-columns:minmax(320px,420px) 1fr;gap:var(--s4);height:calc(100vh - 140px);min-height:520px}.exp-panel{display:flex;flex-direction:column;gap:var(--s3);min-height:0;padding:var(--s5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 20px 50px #00000073}.exp-tabs{display:flex;gap:var(--s1);padding:4px;background:var(--surface-soft);border-radius:999px}.exp-tab{flex:1;display:inline-flex;justify-content:center;align-items:center;gap:var(--s2);min-height:40px;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;cursor:pointer}.exp-tab.is-active{background:var(--night);color:#f6ead0}.exp-count{font-size:var(--t-hint);opacity:.8}.exp-kicker{margin:0;font-size:var(--t-hint);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.exp-title{margin:var(--s1) 0 var(--s2);font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.1}.exp-body{margin:0;color:var(--ink-soft)}.exp-entry-actions{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s3)}.exp-list{flex:1;min-height:0;overflow-y:auto;margin:0;padding:var(--s2) 0 0;list-style:none;border-top:1px solid var(--border)}.exp-item{display:flex;align-items:center;gap:var(--s3);width:100%;min-height:44px;padding:var(--s2) var(--s3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.exp-item:hover{background:var(--surface-soft)}.exp-item.is-active{background:var(--night);color:#f6ead0}.exp-item-dot{flex:none;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 2px var(--surface)}.exp-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exp-item-due{font-size:var(--t-hint);padding:0 var(--s2);border-radius:999px;background:var(--accent);color:var(--ink)}.exp-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s2);flex-wrap:wrap}.exp-steps{display:flex;gap:var(--s2)}.exp-step{width:44px;height:44px;border-radius:50%;border:2px solid var(--border-strong);background:transparent;color:var(--ink);font-size:1.5em;line-height:1;cursor:pointer}.exp-step:disabled{opacity:.4;cursor:default}.exp-actions{display:flex;gap:var(--s2);flex-wrap:wrap}.exp-stage{position:relative;min-height:0;border-radius:var(--radius-lg);overflow:hidden;background:radial-gradient(120% 90% at 60% 40%,#24365a 0%,var(--night) 70%)}.exp-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;cursor:grab;touch-action:none}.exp-fallback{margin:var(--s6);color:#f6ead0}.exp-tip{position:absolute;transform:translate(-50%,-150%);padding:var(--s1) var(--s3);background:var(--surface);color:var(--ink);border-radius:999px;font-weight:600;white-space:nowrap;pointer-events:none;box-shadow:0 6px 16px #0006}.exp-scenes{position:absolute;left:var(--s4);right:var(--s4);bottom:var(--s4);display:flex;gap:var(--s2);overflow-x:auto}.exp-scene{flex:none;display:inline-flex;align-items:baseline;gap:var(--s2);min-height:40px;padding:var(--s2) var(--s3);border:1px solid rgba(246,234,208,.35);border-radius:999px;background:#0f1a2bbf;color:#f6ead0;font:inherit;cursor:pointer}.exp-scene.is-active{background:var(--accent);border-color:var(--accent);color:var(--ink)}.exp-scene-n{font-family:var(--font-display);font-weight:700}@media (max-width: 820px){.exp{grid-template-columns:1fr;grid-template-rows:46vh auto;height:auto}.exp-stage{order:-1}.exp-panel{padding:var(--s4)}.exp-list{max-height:40vh}.exp-scene-name{display:none}}.scene-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:-1;touch-action:none;pointer-events:auto}[data-scene] body{overflow:hidden}[data-scene] body,[data-scene] #root{background:transparent}[data-scene] .app-shell,[data-scene] .app-shell main{pointer-events:none}[data-scene] .app-shell>:not(main),[data-scene] .app-shell main>*>:not(canvas),[data-scene] .modal-backdrop,[data-scene] .rowmenu-panel{pointer-events:auto}[data-scene] .topbar{border-bottom:0}.view-controls{position:fixed;right:var(--s3);top:50%;transform:translateY(-50%);z-index:15;display:flex;flex-direction:column;gap:var(--s2);pointer-events:auto}.view-controls.is-inline{position:absolute;top:var(--s3);right:var(--s3);transform:none;z-index:2}.view-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 10px;border:1px solid var(--border-strong);border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--ink);font:inherit;font-size:1.25rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm)}.view-btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.view-reset,.view-reset-text{font-size:var(--t-small)}@media (max-width: 720px){.view-reset-text{display:none}.view-reset{font-size:1.25rem}}[data-design=garden]{--font: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, sans-serif;--font-display: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, sans-serif;--radius-sm: 10px;--radius: 14px;--radius-lg: 18px;--tile-radius: 26px;--leaf: 72px;--shadow-sm: 0 2px 6px color-mix(in srgb, var(--ink) 6%, transparent);--shadow-md: 0 12px 32px color-mix(in srgb, var(--ink) 10%, transparent)}[data-design=garden] h1,[data-design=garden] h2,[data-design=garden] h3,[data-design=garden] .brand,[data-design=garden] .modal-title{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em}[data-design=garden] .topbar{border-bottom:0}[data-design=garden] .topbar nav{gap:2px;padding:4px;background:var(--surface);border:1.5px solid var(--border);border-radius:999px;box-shadow:var(--shadow-sm)}[data-design=garden] .topbar nav a{display:inline-flex;align-items:center;min-height:42px;padding:var(--s1) var(--s4);border-radius:999px;color:var(--ink);font-weight:600}[data-design=garden] .topbar nav a:hover{background:var(--surface-soft)}[data-design=garden] .topbar nav a.active{background:var(--primary);color:var(--primary-ink);font-weight:800}[data-design=garden] .topbar nav a:focus-visible{outline-offset:-3px;border-radius:999px}[data-design=garden] .usermenu-trigger{background:var(--surface);border:1.5px solid var(--border-strong);border-radius:999px;padding-inline:var(--s4);box-shadow:var(--shadow-sm)}[data-design=garden] .usermenu-panel{padding:var(--s3);border:1.5px solid var(--border);border-radius:var(--leaf) var(--radius-sm) var(--radius-lg) var(--radius-sm);box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 20%,transparent)}[data-design=garden] .usermenu-who{padding-inline-start:var(--s5)}[data-design=garden] .usermenu-item{border-radius:999px;padding-inline:var(--s4);font-weight:600}[data-design=garden] .card{border:1.5px solid var(--border);border-radius:var(--radius-sm) var(--leaf) var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow-md)}[data-design=garden] .card>h2:first-child,[data-design=garden] .card>h3:first-child{padding-inline-end:calc(var(--leaf) / 2)}[data-design=garden] .banner{border:0;border-inline-start:4px solid var(--primary);border-radius:var(--radius-sm) var(--radius-sm) var(--leaf) var(--radius-sm);background:var(--surface-soft)}[data-design=garden] .btn{border-radius:999px;font-weight:700;padding-inline:1.3em}[data-design=garden] .btn.secondary{background:var(--surface);border:1.5px solid var(--border-strong);color:var(--ink)}[data-design=garden] .btn.ghost{border-radius:999px}[data-design=garden] .btn.quiet-danger{border-width:1.5px}[data-design=garden] .field input,[data-design=garden] .field select,[data-design=garden] .field textarea{border-radius:var(--radius-sm) var(--radius) var(--radius-sm) var(--radius);border-width:calc(var(--control-border-width, 1px) + .5px);background:var(--surface);min-height:50px;padding-inline:var(--s4)}[data-design=garden] .field label,[data-design=garden] .field-label{font-weight:700;color:var(--ink)}[data-design=garden] .tabs{border-bottom:0;gap:var(--s2)}[data-design=garden] .tab{border:1.5px solid var(--border-strong);border-radius:var(--radius-lg) 4px var(--radius-lg) 4px;background:var(--surface);color:var(--ink);font-weight:700}[data-design=garden] .tab:hover{background:var(--surface-soft)}[data-design=garden] .tab.is-active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}[data-design=garden] .list{gap:var(--s3)}[data-design=garden] .list-item{border:1.5px solid var(--border);border-radius:var(--radius-sm) var(--radius-lg) var(--radius-sm) var(--radius-lg);box-shadow:var(--shadow-sm)}[data-design=garden] .list.program-rows{gap:var(--s2)}[data-design=garden] .list.program-rows>.list-item,[data-design=garden] .list.program-rows>.list-item:last-child{padding:var(--s2) var(--s3) var(--s2) var(--s4);background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-sm) var(--radius-lg) var(--radius-sm) var(--radius-lg)}[data-design=garden] .list-item .name,[data-design=garden] .library-name{font-weight:800}[data-design=garden] .reward-total-link{border-radius:999px;background:var(--surface)}[data-design=garden] .gdn-list{padding:var(--s3);border-radius:var(--radius-sm) var(--leaf) var(--radius-sm) var(--radius-sm)}@media (min-width: 721px){[data-design=garden] .gdn-list{position:absolute;top:auto;bottom:auto;right:max(var(--s4),calc(50vw - 516px));margin-top:var(--s3);max-height:52vh}}[data-design=garden] .gdn-list ul{display:flex;flex-direction:column;gap:var(--s2)}[data-design=garden] .gdn-item{position:relative;min-height:56px;padding:var(--s2) var(--s3) var(--s2) 42px;background:var(--surface-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;clip-path:polygon(20px 0,100% 0,100% 100%,20px 100%,0 50%)}[data-design=garden] .gdn-item:before{content:"";position:absolute;left:18px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 2px var(--border-strong)}[data-design=garden] .gdn-item:hover{background:color-mix(in srgb,var(--surface-soft) 70%,var(--border))}[data-design=garden] .gdn-item.is-active{background:var(--primary);color:var(--primary-ink);box-shadow:none}[data-design=garden] .gdn-item.is-active .gdn-item-name{font-weight:800}[data-design=garden] .gdn-item.is-active .gdn-item-meta{color:inherit}[data-design=garden] .gdn-item.is-active:before{box-shadow:inset 0 0 0 2px var(--primary-ink)}[data-design=garden] .gdn-item:focus-visible{outline:0;box-shadow:inset 0 0 0 3px var(--focus)}[data-design=garden] .modal-backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}[data-design=garden] .modal{border:1.5px solid var(--border);border-radius:var(--radius-sm) var(--leaf) var(--radius-sm) var(--radius-sm);box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 22%,transparent)}[data-design=garden] .modal-title{padding-inline-end:calc(var(--leaf) / 2)}[data-design=garden][data-screen=game] .card{box-shadow:none;border-radius:var(--radius-lg)}[data-design=garden][data-screen=game] .tile{border-radius:var(--tile-radius);border-width:3px}[data-design=garden][data-screen=game] .tile.correct{background:var(--success-bg)}[data-scene=garden]{background:linear-gradient(180deg,#bfe1f2,#e4f1dc 55%,#cfe5b8) fixed}.gdn-bar{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;padding:var(--s2);background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:999px;box-shadow:0 10px 30px #28461e1f}.gdn-bar-end{margin-left:auto;display:flex;gap:var(--s2)}.gdn-options{display:contents}.gdn-options-toggle{display:none}.gdn-tabs{display:flex;gap:2px;padding:3px;background:var(--surface-soft);border-radius:999px}.gdn-tab,.gdn-pill,.gdn-select{min-height:40px;padding:0 var(--s4);border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:700;cursor:pointer}.gdn-tab{display:inline-flex;align-items:center;gap:var(--s2)}.gdn-tab.is-active{background:var(--primary);color:var(--primary-ink)}.gdn-count{font-size:var(--t-hint);opacity:.85}.gdn-pill,.gdn-select{background:var(--surface-soft);color:var(--ink)}.gdn-error{margin-top:var(--s3)}.gdn-empty{max-width:420px;margin:18vh auto 0;padding:var(--s5);background:color-mix(in srgb,var(--surface) 94%,transparent);border-radius:var(--radius-lg);text-align:center;box-shadow:0 16px 40px #28461e26}.gdn-empty h2{margin:0 0 var(--s2)}.gdn-empty p{margin:0;color:var(--ink-soft)}.gdn-list{position:fixed;right:var(--s4);top:180px;bottom:var(--s4);width:min(340px,calc(100vw - 2 * var(--s4)));overflow-y:auto;padding:var(--s2);background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 16px 40px #28461e26}.gdn-list ul{margin:0;padding:0;list-style:none}.gdn-item{display:flex;align-items:center;gap:var(--s3);width:100%;padding:var(--s2) var(--s3);border:0;border-radius:var(--radius);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.gdn-item:hover{background:var(--surface-soft)}.gdn-item.is-active{background:var(--surface-soft);box-shadow:inset 0 0 0 2px var(--primary)}.gdn-item-glyph{font-size:1.6em}.gdn-item-text{display:flex;flex-direction:column;min-width:0}.gdn-item-name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gdn-item-meta{font-size:var(--t-hint);color:var(--ink-soft)}.gdn-tip{position:fixed;left:0;top:0;visibility:hidden;pointer-events:none!important}.gdn-tip span{display:block;transform:translate(-50%,calc(-100% - 10px));padding:var(--s1) var(--s3);background:var(--ink);color:var(--surface);border-radius:999px;font-weight:700;white-space:nowrap}.gdn-card{position:fixed;left:var(--s3);right:var(--s3);bottom:var(--s3)}.gdn-card.is-floating{left:0;top:0;right:auto;bottom:auto;visibility:hidden}.gdn-card-inner{width:100%;padding:var(--s4);background:var(--surface);border-radius:var(--radius-lg);box-shadow:0 20px 50px #1e3c1447}.gdn-card.is-floating .gdn-card-inner{width:300px;transform:translate(28px,-50%);position:relative}.gdn-card.is-floating .gdn-card-inner:before{content:"";position:absolute;left:-8px;top:50%;width:16px;height:16px;background:var(--surface);transform:translateY(-50%) rotate(45deg)}.gdn-card-head{display:flex;gap:var(--s3);align-items:center}.gdn-card-glyph{display:grid;place-items:center;width:52px;height:52px;flex:none;border-radius:16px;background:var(--surface-soft);font-size:1.7em}.gdn-card-name{margin:0;font-weight:800;font-size:var(--t-lead);line-height:1.2}.gdn-card-meta{margin:0;font-size:var(--t-hint);color:var(--ink-soft)}.gdn-meter{display:flex;gap:4px;margin:var(--s3) 0 var(--s1)}.gdn-meter span{flex:1;height:8px;border-radius:999px;background:var(--border)}.gdn-meter span.is-on{background:var(--primary)}.gdn-card-growth{margin:0 0 var(--s3);font-size:var(--t-hint);color:var(--ink-soft)}.gdn-card-actions{display:flex;gap:var(--s2);flex-wrap:wrap}.gdn-bar.is-tight{flex-wrap:wrap;border-radius:var(--radius-lg)}.gdn-bar.is-tight .gdn-tabs{order:1;flex:0 1 auto;min-width:0}.gdn-bar.is-tight .gdn-options-toggle{order:2;display:inline-flex;align-items:center;gap:4px;padding-inline:12px}.gdn-bar.is-tight .gdn-bar-end{order:3;margin-left:auto}.gdn-bar.is-tight .gdn-options{order:4;display:none;width:100%;flex-wrap:wrap;gap:var(--s2)}.gdn-bar.is-tight .gdn-options.is-open{display:flex}@media (max-width: 720px){.gdn-bar{position:fixed;left:var(--s3);right:var(--s3);bottom:calc(var(--s3) + env(safe-area-inset-bottom,0px));z-index:20;border-radius:var(--radius-lg)}html:has(.gdn-bar) .tb-launcher{bottom:calc(var(--gdn-bar-h, 120px) + var(--s3) * 2 + env(safe-area-inset-bottom,0px))}html:has(.tb-launcher) .gdn-card,html:has(.tb-launcher) .gdn-list{bottom:calc(var(--gdn-bar-h, 120px) + var(--s3) * 3 + 64px)}.gdn-card{bottom:calc(var(--gdn-bar-h, 120px) + var(--s3) * 2)}.gdn-bar{gap:4px;padding:5px}.gdn-tab{padding-inline:6px;min-width:0}.gdn-bar.is-tight .gdn-options-toggle{padding-inline:10px}.gdn-bar-end .rowmenu-trigger{padding-inline:14px}.gdn-tab,.gdn-options-toggle,.gdn-bar-end .rowmenu-trigger{font-size:var(--t-small)}.gdn-options .gdn-select{flex:1 1 100%;min-width:0}.gdn-list{top:auto;bottom:calc(var(--gdn-bar-h, 120px) + var(--s3) * 2);height:min(46vh,calc(100dvh - var(--gdn-bar-h, 120px) - 9rem))}}[data-design=popup]{--font: "Nunito Variable", "Nunito", system-ui, sans-serif;--font-display: "Nunito Variable", "Nunito", system-ui, sans-serif;--radius-sm: 6px;--radius: 10px;--radius-lg: 6px;--tile-radius: 14px;--fold: 30px;--shadow-sm: 0 1px 0 var(--border);--shadow-md: 0 1px 0 var(--border), 0 10px 24px color-mix(in srgb, var(--ink) 12%, transparent);--flap: color-mix(in srgb, var(--border-strong) 35%, var(--surface))}[data-design=popup] h1,[data-design=popup] h2,[data-design=popup] h3,[data-design=popup] .brand,[data-design=popup] .modal-title{font-weight:900;letter-spacing:-.01em}[data-design=popup] .topbar{border-bottom:2px solid var(--border);padding-top:0;align-items:flex-start}[data-design=popup] .topbar .brand{padding-top:var(--s4)}[data-design=popup] .topbar>.usermenu{margin-top:var(--s3)}[data-design=popup] .topbar nav{gap:6px;align-items:flex-start}[data-design=popup] .topbar nav a{display:inline-flex;align-items:center;min-height:52px;padding:var(--s3) var(--s4) 20px;background:var(--surface);box-shadow:inset 1.5px 0 0 var(--border-strong),inset -1.5px 0 0 var(--border-strong);border-radius:0;color:var(--ink);font-weight:800;clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 10px),0 100%)}[data-design=popup] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=popup] .topbar nav a.active{min-height:64px;padding-top:var(--s4);background:var(--primary);color:var(--primary-ink);box-shadow:none}[data-design=popup] .topbar nav a:focus-visible{outline:0;box-shadow:inset 0 0 0 3px var(--focus)}[data-design=popup][data-scene=popup] .topbar nav a:not(.active){color:var(--ink);text-shadow:none}[data-design=popup] .topbar.is-tight{padding-top:var(--s2);align-items:center}[data-design=popup] .topbar.is-tight .brand{padding-top:0}[data-design=popup] .topbar.is-tight>.usermenu{margin-top:0}[data-design=popup] .usermenu-trigger{border:2px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);box-shadow:inset 0 0 0 3px var(--surface)}[data-design=popup] .usermenu-panel{padding:var(--s3) var(--s3) var(--s3) var(--s4);border:1px solid var(--border);border-inline-start:6px double var(--border-strong);border-radius:2px var(--radius) var(--radius) 2px;box-shadow:0 18px 44px color-mix(in srgb,var(--ink) 25%,transparent)}[data-design=popup] .usermenu-item{border-radius:var(--radius-sm);font-weight:700}[data-design=popup] .usermenu-who{border-bottom:2px solid var(--border)}[data-design=popup] .card,[data-design=popup] .modal{position:relative;border:1.5px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;clip-path:polygon(0 0,calc(100% - var(--fold)) 0,100% var(--fold),100% 100%,0 100%)}[data-design=popup] .card:after,[data-design=popup] .modal:after{content:"";position:absolute;top:-1.5px;right:-1.5px;width:var(--fold);height:var(--fold);background:var(--flap);border-bottom-left-radius:4px;clip-path:polygon(0 0,100% 100%,0 100%);pointer-events:none}[data-design=popup] .card>h2:first-child,[data-design=popup] .card>h3:first-child{padding-inline-end:var(--fold)}[data-design=popup] .banner{background:var(--surface);border:1.5px dashed var(--border-strong);border-inline-start:6px solid var(--primary);border-radius:var(--radius-sm)}[data-design=popup] .btn{border:2px solid var(--border-strong);border-radius:var(--radius);box-shadow:inset 0 0 0 3px var(--surface);font-weight:800}[data-design=popup] .btn:hover:not(:disabled){border-color:var(--ink)}[data-design=popup] .btn.secondary{background:var(--surface-soft);color:var(--ink)}[data-design=popup] .btn.secondary:hover:not(:disabled){background:var(--surface)}[data-design=popup] .btn.ghost{border-color:transparent;box-shadow:none}[data-design=popup] .btn.ghost:hover:not(:disabled){border-color:transparent}[data-design=popup] .btn.quiet-danger{box-shadow:none}[data-design=popup] .btn.danger{border-color:var(--border-strong)}[data-design=popup] .field input,[data-design=popup] .field select,[data-design=popup] .field textarea{border:0;border-bottom:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--surface-soft)}[data-design=popup] .field label,[data-design=popup] .field-label{font-weight:800;color:var(--ink)}[data-design=popup] .tabs{border-bottom:3px solid var(--border-strong);gap:4px;padding-bottom:0;align-items:flex-end}[data-design=popup] .tab{min-height:44px;border:1.5px solid var(--border-strong);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--surface-soft);color:var(--ink);font-weight:700}[data-design=popup] .tab:nth-child(2n){background:color-mix(in srgb,var(--surface-soft) 55%,var(--border))}[data-design=popup] .tab:hover{background:var(--surface)}[data-design=popup] .tab.is-active,[data-design=popup] .tab.is-active:nth-child(2n){min-height:52px;background:var(--surface);border-color:var(--border-strong);border-top:5px solid var(--primary);color:var(--ink);font-weight:900}[data-design=popup] .list{gap:var(--s3)}[data-design=popup] .list-item{border:1.5px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}[data-design=popup] .list.program-rows{gap:var(--s2)}[data-design=popup] .list.program-rows>.list-item,[data-design=popup] .list.program-rows>.list-item:last-child{padding:var(--s2) var(--s3) var(--s2) var(--s4);background:var(--surface);border:1.5px solid var(--border);border-inline-start:6px double var(--border-strong);border-radius:2px var(--radius-sm) var(--radius-sm) 2px}[data-design=popup] .list-item .name,[data-design=popup] .library-name{font-weight:900}[data-design=popup] .reward-total-link{background:var(--surface);border:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);box-shadow:inset 0 0 0 3px var(--surface)}[data-design=popup] .modal-backdrop{background:color-mix(in srgb,var(--ink) 50%,transparent)}[data-design=popup] .modal-title{padding-inline-end:var(--fold)}[data-design=popup][data-screen=game] .card{box-shadow:none;clip-path:none}[data-design=popup][data-screen=game] .card:after{display:none}[data-design=popup][data-screen=game] .tile{border-radius:var(--tile-radius);box-shadow:0 4px 0 var(--border-strong);transition:transform 80ms ease,box-shadow 80ms ease,border-color var(--transition),background-color var(--transition)}[data-design=popup][data-screen=game] .tile:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--border-strong)}[data-design=popup][data-screen=game] .tile.correct{box-shadow:0 4px 0 var(--success)}[data-scene=popup]{background:#b98a5c}[data-scene=popup] .topbar .brand,[data-scene=popup] .topbar nav a:not(.active){color:#fff8ec;text-shadow:0 1px 3px rgba(60,35,15,.6)}.pop-head{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.pop-head-end{margin-left:auto;display:flex;gap:var(--s2)}.pop-short,.pop-head.is-tight .pop-long{display:none}.pop-head.is-tight .pop-short{display:inline}.pop-tabs{display:flex;gap:var(--s1);align-items:flex-end}.pop-tab{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:var(--s2) var(--s4) var(--s3);border:0;border-radius:var(--radius) var(--radius) 2px 2px;background:var(--surface-soft);color:var(--ink-soft);font:inherit;font-weight:800;cursor:pointer;box-shadow:0 3px 8px #3c230f40;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)}.pop-tab.is-active{background:var(--primary);color:var(--primary-ink);padding-bottom:var(--s4)}.pop-count{font-size:var(--t-hint);opacity:.85}.pop-contents{min-height:44px;padding:0 var(--s3);border:1.5px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-weight:700}.pop-empty{max-width:420px;margin:16vh auto 0;padding:var(--s5);background:var(--surface);border-radius:var(--radius-lg);text-align:center;box-shadow:0 16px 40px #3c230f40}.pop-empty h2{margin:0 0 var(--s2)}.pop-empty p{margin:0;color:var(--ink-soft)}.pop-tip{position:fixed;left:0;top:0;visibility:hidden;pointer-events:none!important}.pop-tip span{display:block;transform:translate(-50%,calc(-100% - 8px));padding:var(--s1) var(--s3);background:var(--ink);color:var(--surface);border-radius:var(--radius);font-weight:800;white-space:nowrap}.pop-card{position:fixed;left:var(--s3);right:var(--s3);bottom:150px;z-index:2}.pop-card.is-floating{left:0;top:0;right:auto;bottom:auto;visibility:hidden}.pop-card-inner{padding:var(--s4);background:var(--surface);border-radius:var(--radius-lg);border-top:6px solid var(--primary);box-shadow:0 18px 44px #28190a59}.pop-card.is-floating .pop-card-inner{width:290px;transform:translate(-50%,calc(-100% - 16px))}.pop-card-name{margin:0;font-weight:900;font-size:var(--t-lead);line-height:1.2}.pop-card-meta{margin:var(--s1) 0 var(--s3);font-size:var(--t-hint);color:var(--ink-soft)}.pop-card-actions{display:flex;gap:var(--s2);flex-wrap:wrap}.pop-foot{position:fixed;left:50%;bottom:var(--s4);transform:translate(-50%);width:min(920px,calc(100vw - 2 * var(--s3)));display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);background:var(--surface);border-radius:var(--radius-lg);box-shadow:0 14px 36px #28190a59}.pop-turn{flex:none;width:52px;height:52px;border:0;border-radius:50% 50% 50% 8px;background:var(--primary);color:var(--primary-ink);font-size:1.9em;line-height:1;cursor:pointer;box-shadow:0 3px #00000040}.pop-turn:last-child{border-radius:50% 50% 8px}.pop-turn:disabled{opacity:.35;cursor:default}.pop-foot-mid{flex:1;min-width:0}.pop-where{margin:0 0 var(--s1);color:var(--ink-soft);text-align:center}.pop-where strong{color:var(--ink)}.pop-chips{display:flex;gap:var(--s1);margin:0;padding:0;list-style:none;overflow-x:auto;justify-content:center}.pop-chip{min-height:36px;padding:0 var(--s3);border:1.5px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--ink);font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}.pop-chip.is-active{border-color:var(--primary);background:var(--surface);box-shadow:inset 0 0 0 1px var(--primary)}@media (max-width: 720px){.pop-head-end{margin-left:0}.pop-contents{flex:1 1 100%;min-width:0;order:1}.pop-head-end{order:2;flex-wrap:nowrap}.pop-head-end .btn,.pop-head-end .rowmenu-trigger{font-size:var(--t-small);white-space:nowrap;padding:var(--s1) var(--s3);min-height:40px}.pop-long{display:none}.pop-short{display:inline}.pop-chips{justify-content:flex-start}.pop-turn{width:44px;height:44px}}[data-design=blocks]{--font: "Space Grotesk Variable", "Space Grotesk", system-ui, sans-serif;--font-display: "Space Grotesk Variable", "Space Grotesk", system-ui, sans-serif;--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--tile-radius: 12px;--shadow-sm: none;--shadow-md: 0 6px 0 var(--border-strong);--brick-edge: color-mix(in srgb, var(--primary) 60%, var(--ink))}[data-design=blocks] h1,[data-design=blocks] h2,[data-design=blocks] h3,[data-design=blocks] .brand,[data-design=blocks] .modal-title{font-weight:700;letter-spacing:-.03em}[data-design=blocks] .btn,[data-design=blocks] .topbar nav a,[data-design=blocks] .usermenu-trigger,[data-design=blocks] .tab.is-active{position:relative}[data-design=blocks] .btn:before,[data-design=blocks] .btn:after,[data-design=blocks] .topbar nav a:before,[data-design=blocks] .topbar nav a:after,[data-design=blocks] .usermenu-trigger:before,[data-design=blocks] .usermenu-trigger:after,[data-design=blocks] .tab.is-active:before,[data-design=blocks] .tab.is-active:after{content:"";position:absolute;top:-8px;width:16px;height:6px;background:inherit;border:2px solid var(--border-strong);border-bottom:0;border-radius:6px 6px 0 0;pointer-events:none}[data-design=blocks] .btn:before,[data-design=blocks] .topbar nav a:before,[data-design=blocks] .usermenu-trigger:before,[data-design=blocks] .tab.is-active:before{left:14%}[data-design=blocks] .btn:after,[data-design=blocks] .topbar nav a:after,[data-design=blocks] .usermenu-trigger:after,[data-design=blocks] .tab.is-active:after{right:14%}[data-design=blocks] .topbar{border-bottom:0;box-shadow:0 2px 0 var(--border-strong)}[data-design=blocks] .topbar nav{gap:0;padding-top:10px;align-items:stretch}[data-design=blocks] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;padding:var(--s2) var(--s4);background:var(--surface);border:2px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--ink);font-weight:600;box-shadow:0 4px 0 var(--border-strong)}[data-design=blocks] .topbar nav>*+*{margin-inline-start:-2px}[data-design=blocks] .topbar nav a:hover{background:var(--surface-soft);color:var(--ink)}[data-design=blocks] .topbar nav a.active{z-index:1;background:var(--primary);border-color:var(--brick-edge);color:var(--primary-ink);font-weight:700;box-shadow:0 4px 0 var(--brick-edge)}[data-design=blocks] .topbar nav a.active:before,[data-design=blocks] .topbar nav a.active:after{border-color:var(--brick-edge)}[data-design=blocks] .topbar.is-tight nav{padding-bottom:6px}[data-design=blocks] .usermenu-trigger{margin-top:8px;background:var(--surface);border:2px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:0 4px 0 var(--border-strong)}[data-design=blocks] .usermenu-trigger:hover{border-color:var(--border-strong)}[data-design=blocks] .usermenu-panel{padding:var(--s2);gap:6px;border:2px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:0 8px 0 var(--border-strong)}[data-design=blocks] .usermenu-who{border-bottom:2px solid var(--border-strong)}[data-design=blocks] .usermenu-item{border:2px solid transparent;border-radius:var(--radius-sm);font-weight:600}[data-design=blocks] .usermenu-item:hover,[data-design=blocks] .usermenu-item:focus-visible{background:var(--surface-soft);border-color:var(--border-strong)}[data-design=blocks] .card{border:2px solid var(--border-strong);border-radius:var(--radius-lg);padding-top:calc(var(--s5) + 14px);box-shadow:inset 0 14px color-mix(in srgb,var(--border-strong) 22%,var(--surface)),inset 0 16px 0 var(--border-strong),0 6px 0 var(--border-strong)}[data-design=blocks] .banner{background:var(--surface-soft);border:2px solid var(--border-strong);border-inline-start-width:10px;border-radius:var(--radius);box-shadow:0 4px 0 var(--border-strong)}[data-design=blocks] .btn{margin-top:8px;border:2px solid var(--brick-edge);border-radius:var(--radius-sm);font-weight:700;box-shadow:0 5px 0 var(--brick-edge);transition:transform 80ms ease,box-shadow 80ms ease,background-color var(--transition)}[data-design=blocks] .btn:before,[data-design=blocks] .btn:after{border-color:var(--brick-edge)}[data-design=blocks] .btn:hover:not(:disabled){border-color:var(--brick-edge)}[data-design=blocks] .btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 var(--brick-edge)}[data-design=blocks] .btn.secondary,[data-design=blocks] .btn.secondary:hover:not(:disabled){border-color:var(--border-strong);color:var(--ink)}[data-design=blocks] .btn.secondary{background:var(--surface);box-shadow:0 5px 0 var(--border-strong)}[data-design=blocks] .btn.secondary:before,[data-design=blocks] .btn.secondary:after{border-color:var(--border-strong)}[data-design=blocks] .btn.secondary:active:not(:disabled){box-shadow:0 2px 0 var(--border-strong)}[data-design=blocks] .btn.danger{border-color:var(--danger);box-shadow:0 5px color-mix(in srgb,var(--danger) 60%,var(--ink))}[data-design=blocks] .btn.danger:before,[data-design=blocks] .btn.danger:after{border-color:var(--danger)}[data-design=blocks] .btn.ghost,[data-design=blocks] .btn.quiet-danger{margin-top:0;box-shadow:none}[data-design=blocks] .btn.ghost{border-color:transparent}[data-design=blocks] .btn.ghost:before,[data-design=blocks] .btn.ghost:after,[data-design=blocks] .btn.quiet-danger:before,[data-design=blocks] .btn.quiet-danger:after{display:none}[data-design=blocks] .btn:disabled{box-shadow:none}[data-design=blocks] .field input,[data-design=blocks] .field select,[data-design=blocks] .field textarea{border:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:inset 0 4px 0 var(--surface-soft)}[data-design=blocks] .field label,[data-design=blocks] .field-label{font-weight:700;color:var(--ink)}[data-design=blocks] .tabs{gap:4px;padding:12px 6px 8px;background:var(--surface-soft);border:2px solid var(--border-strong);border-radius:var(--radius)}[data-design=blocks] .tab{border:2px solid transparent;border-radius:var(--radius-sm);color:var(--ink);font-weight:600}[data-design=blocks] .tab:hover{background:var(--surface);border-color:var(--border-strong)}[data-design=blocks] .tab.is-active{background:var(--surface);border-color:var(--border-strong);color:var(--ink);font-weight:700;box-shadow:0 4px 0 var(--border-strong)}@media (max-width: 720px){html[data-design=blocks] .tabs{padding-top:12px}}[data-design=blocks] .list{gap:var(--s3)}[data-design=blocks] .list-item{border:2px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 4px 0 var(--border-strong)}[data-design=blocks] .list.program-rows{gap:var(--s4)}[data-design=blocks] .list.program-rows>.list-item,[data-design=blocks] .list.program-rows>.list-item:last-child{padding:var(--s2) var(--s3);background:var(--surface);border:2px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 4px 0 var(--border-strong)}[data-design=blocks] .list.program-rows .toolbar .btn{margin-top:0}[data-design=blocks] .list.program-rows .toolbar .btn:before,[data-design=blocks] .list.program-rows .toolbar .btn:after{display:none}[data-design=blocks] .list-item .name,[data-design=blocks] .library-name{font-weight:700}[data-design=blocks] .reward-total-link{background:var(--surface);border:calc(var(--control-border-width, 1px) + 1px) solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:0 4px 0 var(--border-strong)}[data-design=blocks] .modal-backdrop{background:color-mix(in srgb,var(--ink) 50%,transparent)}[data-design=blocks] .modal{border:2px solid var(--border-strong);border-radius:var(--radius-lg);padding-top:calc(var(--s5) + 14px);box-shadow:inset 0 14px color-mix(in srgb,var(--border-strong) 22%,var(--surface)),inset 0 16px 0 var(--border-strong),0 8px 0 var(--border-strong)}[data-design=blocks][data-screen=game] .card{box-shadow:none;padding-top:var(--s5)}[data-design=blocks][data-screen=game] .tile{border-width:2px;border-radius:var(--tile-radius);box-shadow:0 5px 0 var(--border-strong);transition:transform 80ms ease,box-shadow 80ms ease,border-color var(--transition),background-color var(--transition)}[data-design=blocks][data-screen=game] .tile:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px 0 var(--border-strong)}[data-design=blocks][data-screen=game] .tile.correct{box-shadow:0 5px 0 var(--success)}[data-scene=blocks]{background:linear-gradient(160deg,#dbe6f6,#f3efe6) fixed}.blk-panel{position:fixed;left:max(var(--s4),calc(50vw - 540px));top:112px;bottom:var(--s4);width:300px;display:flex;flex-direction:column;gap:var(--s3);padding:var(--s4);overflow-y:auto;background:color-mix(in srgb,var(--surface) 95%,transparent);border:2px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--border-strong)}.blk-score{display:flex;align-items:center;gap:var(--s3)}.blk-score-big{font-size:3rem;font-weight:700;line-height:1;letter-spacing:-.05em}.blk-score-big small{font-size:.45em;color:var(--ink-soft)}.blk-score-text{font-size:var(--t-hint);color:var(--ink-soft);line-height:1.3}.blk-select{min-height:42px;padding:0 var(--s3);border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-weight:600}.blk-empty{margin:0;color:var(--ink-soft)}.blk-towers{flex:1;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--s2)}.blk-tower{display:flex;align-items:center;gap:var(--s2);width:100%;min-height:42px;padding:var(--s1) var(--s2);border:2px solid transparent;border-radius:var(--radius);background:transparent;color:var(--ink);font:inherit;font-weight:700;text-align:left;cursor:pointer}.blk-tower:hover{background:var(--surface-soft)}.blk-tower.is-active{border-color:var(--border-strong);background:var(--surface-soft)}.blk-tower-n{display:grid;place-items:center;width:30px;height:30px;flex:none;border:2px solid var(--ink);border-radius:8px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.45);font-size:.95em}.blk-tower-name{flex:1}.blk-tower-meta{font-size:var(--t-hint);color:var(--ink-soft)}.blk-rows{margin:0 0 0 38px;padding:0;list-style:none}.blk-row{display:flex;flex-direction:column;gap:4px;width:100%;padding:var(--s1) var(--s2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.blk-row:hover{background:var(--surface-soft)}.blk-row.is-active{background:var(--ink);color:var(--surface)}.blk-row-name{font-size:.95em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blk-row-bar{display:block;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.blk-row-bar span{display:block;height:100%}.blk-actions{display:flex;gap:var(--s2);flex-wrap:wrap}.blk-tip{position:fixed;left:0;top:0;visibility:hidden;pointer-events:none!important}.blk-tip span{display:block;transform:translate(-50%,calc(-100% - 10px));padding:var(--s1) var(--s3);background:var(--ink);color:var(--surface);border-radius:var(--radius-sm);font-weight:700;white-space:nowrap}.blk-card{position:fixed;left:var(--s3);right:var(--s3);bottom:var(--s3);z-index:2}.blk-card.is-floating{left:0;top:0;right:auto;bottom:auto;visibility:hidden}.blk-card-inner{padding:var(--s4);background:var(--surface);border:2px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--border-strong)}.blk-card.is-floating .blk-card-inner{width:290px;transform:translate(40px,-60%)}.blk-card-name{margin:0;font-size:var(--t-lead);font-weight:700;line-height:1.2}.blk-card-meta{margin:var(--s1) 0;font-size:var(--t-hint);color:var(--ink-soft)}.blk-card-fill{height:10px;margin:var(--s2) 0 0;border:2px solid var(--ink);border-radius:6px;overflow:hidden}.blk-card-fill span{display:block;height:100%;background:var(--accent)}.blk-card-actions{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s3)}@media (min-width: 721px){[data-design=blocks] .preference-prompt{margin-inline-start:calc(300px + var(--s4))}}@media (max-width: 720px){.blk-panel{left:var(--s3);right:var(--s3);top:auto;width:auto;max-height:40vh}.blk-score-big{font-size:2.2rem}}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-ext-wght-normal-CawQDOvP.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-wght-normal-DdqRvwsR.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAcwABUAAAAADVQAAAbBAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGkQbgR4cLj9IVkFSYD9NVkFSRgZgP1NUQVSBECcqAFwvZBEICoMkgnELFAAwhH4BNgIkAyIEIAWGEAdnDAcboAsonoWxMy2MW9VSU/H2d24ggnj6P7/qdF8kHtj4XCsDah+E/KT39YIFcHcr5mdFZwLNDw9CeW4KlnBLVwQRet6nWJGSNRWvjZZM5AF9/V+YzdmiNbWZhBUUSOGWSLhW2RoXvEtYlxCEfCMrFAA6BuFam7oKRUZVCFWhRR/qJMlMiCgVZ/4ca0sETSHYgDJIJKezg6AEeH4/UIDkWQgqQABAB41AABe1VKK6dOsdhehnpalC9DfR1iEaDRCEADJ7qqmDPyCAYODEgeBAUIADRQ2tgB4qkWgAgOBp5BnH2tUEgA3ErCKtimIziMYx+tZRkDo+B2CcYroAUAMQQMOC/DExNOyf1AIEqIEEKgEKoAEFyK2JYdUjqxX9gAAwZpyto8zKVlMAICtmCHZvvscvU9uhetlltjPXxFCpcgAT1C41AqC3NxEZR3GGgPFsQPEn9Dv9AAEV1gUdEnSDES/lADn+6DGoZioeqIBCEBwIUIQ/UAa5fLpoEwZQQLIclVoNmiUiAMTkNhAAsaQOgAYUSg6A+hsQAHFIasTfqUaMdhH93bqCn0dv0Y1Mxwz/rMEkngeFGyecLPOg2jTgjVHHlnFn1ePPoBCvIU0PgI97z1hU0OQ8V6Iq/BwEUU8EQ4OB4FQdyadBEOByAhRAIhThj4OXDnAXcgDG2hAxxIQMtyzUgY0DcCA1wwnPy+biZg5xg64AiKelqxEkCD8ATgAKAdzAdMBJoAx4e5naGUU9jSAGahwNjTq+8W7DtfwYMsuPz6g1XPyMe4OHcM9wzZ544OVL2fjTo1fDhz95JRtfunY9r+B6JRd3737xgg3f338+ZMjD5wE2vLjmvqrsfi7KpklBNhwDNs4hLtfZB1nVo/LtXbteDo7bGL+x9LnOu7gSi0s45CJc/mquZ+53Had/3dvtr8Ybttd9ifzjnXq4Zb+pTblf584tP9A9sdAIX89W9cqWOy8urXS6243Og4UTLSdNOtqi74T6Wi+zp5Xr6RpTqLOrX2Wp2FTquoyMtjObjK4jpZMt84p3bd218fcnDp+IoMbXTl0+vgP56caMH6fVqeP+OKNQ34WDI8PmIJDVIAAbW7oRW9vBIzQAYINeo695N38DAQQF1BAAQB1AaXV6TEEMP0RLzQ5ctUHhwY/gB6cDpZRWWNvhvV7xtTdCTx62RTr+t9EROf52+4hqwKoHM4/P3FgXpe6yLMD76VNExDcBX1jIH3Yp7lSX+fKlzCapUmWPbtYsN7eRA47ZYTVbbEp/xcTqp40a3d8kgcC2lmDn2kCI59VnWx1NAZbGgyDNV1vAFJu5FO3miyhkCFmswIrSVn+m4cGofr9T0gtXmTw09dO1a16PkZUSH/IBkrx9G5qSFfLgxvTvUt01arz+FBpnGCEhx00R2RZKkZ2alp0fzE1LDbpKNhShcYSQv0hQG1qZDr/fmZca/ghYVGJxlLKSkix/drZ/c6tCgVkxImp4WHxugc/XJo8s3HRlyqfYLHfRckwVJGlsXycqqOGwidPXFPr25z/Nmxau/p9Rr57aFGS1RW4u7iIFAw1tFS5Mxb/8VkR5k5cXVEauSXY2pXVWSkRkklGk1rBYI0tr8nLTSpb8G+5yhXMADzyTaevXgL1Zp6VZlh0QM3fsx6LChf9nUFEe5Rfxel+//BCekJby74034cm1Sj0pKdGfMTg6JQXHolu80R26VNVeFRGjTGrML/a3KLdYsfRSwdIdF/wS97oFBJCflu4t3XhyfFibNIfWkQCf9r4tAJ9v5YH5D/L/t64YRwELBYDAz9xlvaUoc/8UQJDdHboro2Mz9jFInPDh9H5qASpKQgBOzmMzgG87VkOtVdB9GjGcwLdyIEJCoawjhU8WkKZZWpFBpZQgk2Guk0Ul58N9NCPHEwMP48ikiG6ycNGBbHyygBx4aEJOCsggFw7KkJtCAo/uwQV0olqyQtFmHZtpSTNMxXktRyAaKYo+cK9zaHpJBCK7ld6ZnAkoolP/ZzYvSzUPD8sKk8TLZmFYJCoGZhJ4DGjXa4xuGebQcRBOoWGIwKFaYhqHmCwSTJeiCKMCq0gNAc+GYSrLDBajCqNYJQYHcZXJJ0A4xapUqMKZ6z2NlL69lfVr0u8Nccx9YwPV6tkC81rPZI+nqPdmFSuWYpQISRkjH5QNMRmyUjejicO9FXMknCLnOWQIJNp0jmWMFZiWYyRwhQrhmdU9JWEPp+eCXCSYbnA0cgpOoIp7UWjRYogpltVxkolc5Ld0nsQ2aGrgvbG4QXMT38TJjo3+3UW3hhd38NKijMZseaj+FQn2vbEXAA==) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-vietnamese-wght-normal-rat7GD3o.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-ext-wght-normal-D6H-S6MW.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-normal-C2je3j2s.woff2) format("woff2"),url(/assets/instrument-serif-latin-ext-400-normal-CFCUzsTy.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.lq-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:var(--bg)}.lq-backdrop-canvas{width:100%;height:100%}[data-backdrop] body,[data-backdrop] #root,[data-backdrop] .app-shell{background:transparent}.lq-mark{display:inline-block;width:36px;height:36px;border-radius:10px;overflow:hidden;vertical-align:middle}.lq-mark canvas{display:block;width:100%;height:100%}[data-design=glass]{--font: "Manrope Variable", "Manrope", system-ui, sans-serif;--font-display: "Manrope Variable", "Manrope", system-ui, sans-serif;--radius-sm: 14px;--radius: 20px;--radius-lg: 28px;--tile-radius: 28px;--lq-pane: color-mix(in srgb, var(--surface) 78%, transparent);--lq-pane-strong: color-mix(in srgb, var(--surface) 92%, transparent);--lq-pane-row: color-mix(in srgb, var(--surface) 88%, transparent);--lq-rim: color-mix(in srgb, var(--surface) 75%, transparent);--lq-edge: color-mix(in srgb, var(--border-strong) 40%, transparent);--lq-shine: inset 0 1px 0 color-mix(in srgb, var(--surface) 90%, transparent);--lq-blur: blur(22px) saturate(165%);--shadow-sm: 0 2px 8px color-mix(in srgb, var(--ink) 8%, transparent);--shadow-md: 0 14px 40px color-mix(in srgb, var(--ink) 14%, transparent)}[data-design=glass] h1,[data-design=glass] h2,[data-design=glass] h3,[data-design=glass] .brand,[data-design=glass] .modal-title{font-family:var(--font-display);font-weight:800;letter-spacing:-.025em}[data-design=glass][data-screen=teacher] .topbar{position:sticky;top:var(--s2);z-index:30;margin-top:var(--s2);padding:var(--s2) var(--s2) var(--s2) var(--s4);border:1px solid var(--lq-rim);border-radius:999px;background:var(--lq-pane-strong);backdrop-filter:var(--lq-blur);-webkit-backdrop-filter:var(--lq-blur);box-shadow:var(--lq-shine),0 0 0 1px var(--lq-edge),var(--shadow-md)}@media (max-width: 720px){[data-design=glass][data-screen=teacher] .topbar{position:static;border-radius:var(--radius-lg);padding:var(--s3)}}[data-design=glass] .topbar nav{gap:2px}[data-design=glass] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--s4);border-radius:999px;font-weight:700;color:var(--ink-soft)}[data-design=glass] .topbar nav a:hover{background:color-mix(in srgb,var(--surface-soft) 80%,transparent);color:var(--ink)}[data-design=glass] .topbar nav a.active{background:var(--primary);color:var(--primary-ink);font-weight:800;box-shadow:inset 0 1px color-mix(in srgb,var(--primary-ink) 30%,transparent),0 4px 12px color-mix(in srgb,var(--primary) 30%,transparent)}[data-design=glass] .usermenu-trigger{border:1px solid var(--lq-edge);background:color-mix(in srgb,var(--surface-soft) 80%,transparent);border-radius:999px;padding-inline:var(--s4);font-weight:700}[data-design=glass][data-screen=teacher] .card,[data-design=glass][data-screen=teacher] .banner,[data-design=glass] .usermenu-panel,[data-design=glass] .modal{border:1px solid var(--lq-rim);border-radius:var(--radius-lg);background:var(--lq-pane);backdrop-filter:var(--lq-blur);-webkit-backdrop-filter:var(--lq-blur);box-shadow:var(--lq-shine),0 0 0 1px color-mix(in srgb,var(--border) 60%,transparent),var(--shadow-md)}[data-design=glass][data-screen=teacher] .card{padding:var(--s5)}[data-design=glass] .usermenu-panel,[data-design=glass] .modal{background:var(--lq-pane-strong)}[data-design=glass] .usermenu-panel{padding:var(--s2);gap:var(--s1);border-radius:var(--radius)}[data-design=glass] .usermenu-who{border-bottom:0;margin-bottom:var(--s1);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-soft) 85%,transparent)}[data-design=glass] .usermenu-item{border-radius:var(--radius-sm);font-weight:600}[data-design=glass] .usermenu-item:hover,[data-design=glass] .usermenu-item:focus-visible{background:color-mix(in srgb,var(--primary) 12%,var(--surface))}[data-design=glass] .modal-backdrop{background:color-mix(in srgb,var(--ink) 30%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}[data-design=glass] .modal{padding:var(--s6) var(--s5) var(--s5)}[data-design=glass] .list.program-rows{gap:var(--s3)}[data-design=glass] .list.program-rows>.list-item,[data-design=glass] .list.program-rows>.list-item:last-child{gap:var(--s3);padding:var(--s3) var(--s3) var(--s3) var(--s5);border:1px solid var(--lq-rim);border-radius:999px;background:var(--lq-pane-row);box-shadow:var(--lq-shine),0 0 0 1px color-mix(in srgb,var(--border) 70%,transparent),var(--shadow-sm)}[data-design=glass] .list.program-rows>.list-item:hover{box-shadow:var(--lq-shine),0 0 0 1px var(--lq-edge),var(--shadow-sm)}[data-design=glass] .list.program-rows .toolbar{gap:var(--s2)}@media (max-width: 640px){[data-design=glass] .list.program-rows>.list-item,[data-design=glass] .list.program-rows>.list-item:last-child{border-radius:var(--radius);padding:var(--s3) var(--s4);row-gap:var(--s2)}}[data-design=glass][data-screen=teacher] .list:not(.program-rows)>.list-item{border:1px solid var(--lq-rim);border-radius:var(--radius);background:var(--lq-pane-row);box-shadow:var(--lq-shine),0 0 0 1px color-mix(in srgb,var(--border) 70%,transparent)}[data-design=glass] .btn{border-radius:999px;font-weight:700;padding-inline:1.35em}[data-design=glass] .btn:not(.secondary):not(.ghost):not(.danger):not(.quiet-danger){box-shadow:inset 0 1px color-mix(in srgb,var(--primary-ink) 30%,transparent),0 6px 18px color-mix(in srgb,var(--primary) 30%,transparent)}[data-design=glass] .btn.secondary{background:var(--lq-pane-strong);border:1px solid var(--border-strong);color:var(--primary);backdrop-filter:var(--lq-blur);-webkit-backdrop-filter:var(--lq-blur);box-shadow:var(--lq-shine)}[data-design=glass] .btn.secondary:hover:not(:disabled){background:var(--surface);border-color:var(--primary)}[data-design=glass] .btn.ghost{border-radius:999px}[data-design=glass] .btn:focus-visible,[data-design=glass] .tab:focus-visible,[data-design=glass] .topbar nav a:focus-visible,[data-design=glass] .usermenu-trigger:focus-visible{outline:3px solid var(--focus);outline-offset:2px}[data-design=glass] .field input,[data-design=glass] .field select,[data-design=glass] .field textarea{min-height:50px;border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius-sm);background:var(--lq-pane-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--ink) 8%,transparent)}[data-design=glass] .field input:focus,[data-design=glass] .field select:focus,[data-design=glass] .field textarea:focus{background:var(--surface)}[data-design=glass] .field label,[data-design=glass] .field-label{font-weight:700;color:var(--ink)}[data-design=glass] .field-hint{color:var(--ink-soft)}[data-design=glass] .tabs{display:inline-flex;max-width:100%;gap:2px;padding:4px;border:1px solid var(--lq-rim);border-radius:999px;background:var(--lq-pane);backdrop-filter:var(--lq-blur);-webkit-backdrop-filter:var(--lq-blur);box-shadow:0 0 0 1px color-mix(in srgb,var(--border) 70%,transparent)}[data-design=glass] .tab{border:0;border-radius:999px;font-weight:700;color:var(--ink-soft)}[data-design=glass] .tab:hover{background:color-mix(in srgb,var(--surface) 60%,transparent);color:var(--ink)}[data-design=glass] .tab.is-active{background:var(--surface);color:var(--primary);font-weight:800;box-shadow:var(--shadow-sm),0 0 0 1px var(--lq-edge)}[data-design=glass] .reward-total-link{border-radius:999px;padding-inline:var(--s4);background:var(--lq-pane-strong);border:1px solid var(--lq-rim);box-shadow:var(--lq-shine),0 0 0 1px var(--lq-edge)}[data-design=glass] .reward-total-link .muted{color:var(--ink-soft)}[data-design=glass] .pill{border-radius:999px}[data-design=glass][data-screen=game] .card{box-shadow:none}[data-design=glass][data-screen=game] .tile,[data-design=glass][data-screen=game] .g-chip,[data-design=glass][data-screen=game] .g-tile{border-radius:var(--tile-radius);box-shadow:none}[data-design=silk]{--font: "Manrope Variable", "Manrope", system-ui, sans-serif;--font-display: "Instrument Serif", Georgia, serif;--radius-sm: 2px;--radius: 3px;--radius-lg: 4px;--tile-radius: 20px;--silk-rule: color-mix(in srgb, var(--border-strong) 45%, var(--border));--lq-pane: color-mix(in srgb, var(--surface) 94%, transparent);--shadow-sm: none;--shadow-md: 0 24px 60px color-mix(in srgb, var(--ink) 10%, transparent)}[data-design=silk] h1,[data-design=silk] h2,[data-design=silk] .brand,[data-design=silk] .modal-title{font-family:var(--font-display);font-weight:400;letter-spacing:0}[data-design=silk] h1{font-size:calc(var(--t-display, 2rem) * 1.15)}[data-design=silk] h2{font-size:calc(var(--t-title, 1.5rem) * 1.15)}[data-design=silk] h3{font-weight:700}@media (max-width: 720px){[data-design=silk] .brand{font-size:1.6rem}}[data-design=silk][data-screen=teacher] .topbar{border-bottom:1px solid var(--silk-rule);padding-block:var(--s5);margin-bottom:var(--s7)}@media (max-width: 720px){[data-design=silk][data-screen=teacher] .topbar{padding-block:var(--s3) 0;margin-bottom:var(--s5)}}[data-design=silk] .topbar:not(.is-tight) nav{margin-inline:auto;justify-content:center;gap:var(--s3)}[data-design=silk] .topbar nav a{display:inline-flex;align-items:center;min-height:44px;padding:var(--s2) var(--s2);border-radius:0;letter-spacing:.06em;font-weight:500;font-size:var(--t-body);color:var(--ink)}[data-design=silk] .topbar nav a:hover{background:transparent;color:var(--ink);box-shadow:inset 0 -1px 0 var(--silk-rule)}[data-design=silk] .topbar nav a.active{background:transparent;color:var(--ink);font-weight:800;box-shadow:inset 0 -2px 0 var(--primary)}[data-design=silk] .usermenu-trigger{border:0;border-bottom:1px solid var(--border-strong);border-radius:0;padding-inline:var(--s1);font-weight:600}[data-design=silk] .usermenu-trigger:hover{background:transparent;border-color:var(--ink)}[data-design=silk][data-screen=teacher] .card{border:1px solid var(--silk-rule);border-radius:var(--radius-lg);background:var(--lq-pane);padding:var(--s6);margin-bottom:var(--s6);box-shadow:none}[data-design=silk][data-screen=teacher] .card h2{margin-bottom:var(--s5)}[data-design=silk][data-screen=teacher] .banner{border:0;border-top:1px solid var(--silk-rule);border-bottom:1px solid var(--silk-rule);border-radius:0;background:var(--lq-pane);padding:var(--s5) var(--s6)}@media (max-width: 720px){[data-design=silk][data-screen=teacher] .banner{padding:var(--s4)}}@media (max-width: 720px){[data-design=silk][data-screen=teacher] .card{padding:var(--s5) var(--s4)}}[data-design=silk] .usermenu-panel{border:1px solid var(--silk-rule);border-radius:var(--radius);background:var(--surface);padding:var(--s2) var(--s4);gap:0;box-shadow:var(--shadow-md)}[data-design=silk] .usermenu-who{border-bottom:1px solid var(--silk-rule);padding-inline:0}[data-design=silk] .usermenu-who .name{font-family:var(--font-display);font-weight:400;font-size:var(--t-lead)}[data-design=silk] .usermenu-item{border-radius:0;padding-inline:0;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}[data-design=silk] .usermenu-item:last-child{border-bottom:0}[data-design=silk] .usermenu-item:hover,[data-design=silk] .usermenu-item:focus-visible{background:transparent;text-decoration:underline;text-underline-offset:.25em}[data-design=silk] .list.program-rows>.list-item{padding:var(--s5) 0;gap:var(--s4);border-bottom:1px solid var(--silk-rule)}[data-design=silk] .list.program-rows>.list-item:first-child{padding-top:var(--s2)}[data-design=silk] .list.program-rows .list-item .name{font-family:var(--font-display);font-weight:400;font-size:var(--t-title);line-height:1.2}[data-design=silk] .list.program-rows .list-item-meta{margin-top:var(--s1)}[data-design=silk] .list.program-rows .toolbar{gap:var(--s2)}[data-design=silk] .list:not(.program-rows)>.list-item{border:0;border-bottom:1px solid var(--silk-rule);border-radius:0;background:transparent;padding-inline:0}[data-design=silk] .btn{border-radius:var(--radius-sm);font-weight:600;letter-spacing:.04em;padding-inline:1.6em}[data-design=silk] .btn.secondary{background:transparent;border:1px solid var(--border-strong);color:var(--ink)}[data-design=silk] .btn.secondary:hover:not(:disabled){background:transparent;border-color:var(--ink)}[data-design=silk] .btn.ghost{border-radius:var(--radius-sm);text-decoration:none}[data-design=silk] .btn.ghost:hover:not(:disabled){background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:.25em}[data-design=silk] .btn:focus-visible,[data-design=silk] .tab:focus-visible,[data-design=silk] .topbar nav a:focus-visible,[data-design=silk] .usermenu-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:4px}[data-design=silk] .field label,[data-design=silk] .field-label{font-weight:600;letter-spacing:.04em;color:var(--ink-soft)}[data-design=silk] .field input,[data-design=silk] .field select,[data-design=silk] .field textarea{min-height:48px;border:0;border-bottom:var(--control-border-width, 1px) solid var(--border-strong);border-radius:0;background:transparent;padding-inline:0}[data-design=silk] .field textarea{border:var(--control-border-width, 1px) solid var(--silk-rule);border-bottom-color:var(--border-strong);padding-inline:var(--s3)}[data-design=silk] .field input:hover,[data-design=silk] .field select:hover,[data-design=silk] .field textarea:hover{border-bottom-color:var(--ink)}[data-design=silk] .field input:focus,[data-design=silk] .field select:focus,[data-design=silk] .field textarea:focus{outline:0;border-bottom-color:var(--primary);box-shadow:0 1px 0 var(--primary)}[data-design=silk] .field select option{background:var(--surface);color:var(--ink)}[data-design=silk] .tabs{border-bottom:1px solid var(--silk-rule);gap:var(--s5);padding-bottom:0}[data-design=silk] .tab{border:0;border-radius:0;padding-inline:0;font-weight:500;color:var(--ink);letter-spacing:.06em}[data-design=silk] .tab:hover{background:transparent;color:var(--ink)}[data-design=silk] .tab.is-active{background:transparent;color:var(--ink);font-weight:800;box-shadow:inset 0 -2px 0 var(--primary)}[data-design=silk] .modal-backdrop{background:color-mix(in srgb,var(--ink) 35%,transparent)}[data-design=silk] .modal{border:1px solid var(--silk-rule);border-radius:var(--radius-lg);background:var(--surface);padding:var(--s7) var(--s6) var(--s6);box-shadow:var(--shadow-md)}[data-design=silk] .modal-title{font-size:var(--t-display);line-height:1.1;margin-bottom:var(--s4)}@media (max-width: 720px){[data-design=silk] .modal{padding:var(--s6) var(--s4) var(--s4)}}[data-design=silk] .reward-total-link{border:0;border-bottom:1px solid var(--border-strong);border-radius:0;padding-inline:0}[data-design=silk] .reward-total-link:hover{border-color:var(--ink)}[data-design=silk] .reward-total-link .muted{color:var(--ink)}[data-design=silk] .home-top{margin-bottom:var(--s5)}[data-design=silk] .pill{border-radius:var(--radius-sm)}[data-design=silk][data-screen=game] .card{box-shadow:none}[data-design=silk][data-screen=game] .tile,[data-design=silk][data-screen=game] .g-chip,[data-design=silk][data-screen=game] .g-tile{border-radius:var(--tile-radius);box-shadow:inset 0 1px color-mix(in srgb,var(--surface) 90%,transparent)}[data-design=chrome]{--font: "Sora Variable", "Sora", system-ui, sans-serif;--font-display: "Unbounded Variable", "Unbounded", "Sora Variable", sans-serif;--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--tile-radius: 16px;--ch-hi: color-mix(in srgb, var(--ink) 16%, transparent);--ch-lo: color-mix(in srgb, var(--bg) 80%, transparent);--ch-plate: color-mix(in srgb, var(--surface-soft) 70%, var(--surface));--ch-well: color-mix(in srgb, var(--bg) 85%, var(--surface));--ch-bevel: inset 0 1px 0 var(--ch-hi), inset 1px 0 0 color-mix(in srgb, var(--ink) 7%, transparent), inset 0 -2px 0 var(--ch-lo);--ch-recess: inset 0 2px 4px color-mix(in srgb, var(--bg) 90%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--ink) 10%, transparent);--lq-pane: color-mix(in srgb, var(--surface) 92%, transparent)}[data-design=chrome] h1,[data-design=chrome] h2,[data-design=chrome] .brand,[data-design=chrome] .modal-title{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}[data-design=chrome] h3{font-weight:700}[data-design=chrome][data-screen=teacher] .topbar{border-bottom:1px solid var(--border);box-shadow:0 1px 0 var(--ch-hi)}[data-design=chrome] .topbar nav{gap:0;padding:3px;border-radius:var(--radius);background:var(--ch-well);box-shadow:var(--ch-recess),0 0 0 1px var(--border)}[data-design=chrome] .topbar.is-tight nav{gap:0}[data-design=chrome] .topbar nav a{position:relative;display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding-inline:calc(var(--s3) + 30px) var(--s3);border-radius:var(--radius-sm);font-weight:600;color:var(--ink-soft)}[data-design=chrome] .topbar nav a:before{content:"";position:absolute;inset-inline-start:var(--s3);top:50%;width:24px;height:14px;margin-top:-7px;border-radius:999px;border:1px solid var(--border-strong);background:var(--ch-well);box-shadow:var(--ch-recess)}[data-design=chrome] .topbar nav a:after{content:"";position:absolute;inset-inline-start:calc(var(--s3) + 3px);top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--border-strong)}[data-design=chrome] .topbar nav a:hover{background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--ink)}[data-design=chrome] .topbar nav a.active{background:var(--ch-plate);color:var(--ink);font-weight:800;box-shadow:var(--ch-bevel),0 0 0 1px var(--border-strong),0 2px 4px var(--ch-lo)}[data-design=chrome] .topbar nav a.active:before{background:var(--success);border-color:var(--success);box-shadow:none}[data-design=chrome] .topbar nav a.active:after{inset-inline-start:calc(var(--s3) + 13px);background:var(--surface)}[data-design=chrome] .usermenu-trigger{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--ch-plate);box-shadow:var(--ch-bevel);font-weight:700}[data-design=chrome][data-screen=teacher] .card,[data-design=chrome][data-screen=teacher] .banner,[data-design=chrome] .usermenu-panel,[data-design=chrome] .modal{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--lq-pane);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:var(--ch-bevel),0 8px 24px var(--ch-lo)}[data-design=chrome][data-screen=teacher] .card h2{font-family:var(--font-display);font-weight:600;padding-bottom:var(--s3);border-bottom:1px solid var(--border);box-shadow:0 1px 0 var(--ch-hi)}[data-design=chrome][data-screen=teacher] .banner{border-inline-start:4px solid var(--primary)}[data-design=chrome] .usermenu-panel,[data-design=chrome] .modal{background:var(--surface)}[data-design=chrome] .usermenu-panel{padding:var(--s2);gap:3px}[data-design=chrome] .usermenu-who{border-bottom:0;margin-bottom:var(--s1);border-radius:var(--radius-sm);background:var(--ch-well);box-shadow:var(--ch-recess)}[data-design=chrome] .usermenu-item{border-radius:var(--radius-sm);font-weight:600}[data-design=chrome] .usermenu-item:hover,[data-design=chrome] .usermenu-item:focus-visible{background:var(--ch-plate);box-shadow:var(--ch-bevel),0 0 0 1px var(--border-strong)}[data-design=chrome] .list.program-rows{gap:var(--s2)}[data-design=chrome] .list.program-rows>.list-item,[data-design=chrome] .list.program-rows>.list-item:last-child{gap:var(--s3);padding:var(--s3) var(--s3) var(--s3) var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--ch-plate);box-shadow:var(--ch-bevel)}[data-design=chrome] .list.program-rows>.list-item:hover{border-color:var(--border-strong)}[data-design=chrome] .list.program-rows .toolbar{gap:var(--s2)}[data-design=chrome][data-screen=teacher] .list:not(.program-rows)>.list-item{border-radius:var(--radius);background:var(--ch-plate);box-shadow:var(--ch-bevel)}[data-design=chrome] .btn{border-radius:var(--radius);font-weight:700;letter-spacing:.02em}[data-design=chrome] .btn:not(.secondary):not(.ghost):not(.danger):not(.quiet-danger){border-color:color-mix(in srgb,var(--primary) 70%,var(--bg));box-shadow:inset 0 1px color-mix(in srgb,var(--primary-ink) 25%,transparent),inset 0 -2px color-mix(in srgb,var(--primary-ink) 22%,transparent),0 2px 4px var(--ch-lo)}[data-design=chrome] .btn.secondary{background:var(--ch-plate);border:1px solid var(--border-strong);color:var(--ink);box-shadow:var(--ch-bevel),0 2px 4px var(--ch-lo)}[data-design=chrome] .btn.secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--ink-soft)}[data-design=chrome] .btn:active:not(:disabled){box-shadow:var(--ch-recess)}[data-design=chrome] .btn.ghost:not(:hover){box-shadow:none}[data-design=chrome] .btn:focus-visible,[data-design=chrome] .tab:focus-visible,[data-design=chrome] .topbar nav a:focus-visible,[data-design=chrome] .usermenu-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px}[data-design=chrome] .field input,[data-design=chrome] .field select,[data-design=chrome] .field textarea{min-height:48px;border:var(--control-border-width, 1px) solid var(--border-strong);border-radius:var(--radius-sm);background:var(--ch-well);box-shadow:var(--ch-recess)}[data-design=chrome] .field select option{background:var(--surface);color:var(--ink)}[data-design=chrome] .field label,[data-design=chrome] .field-label{font-weight:700;letter-spacing:.02em;color:var(--ink)}[data-design=chrome] .check{padding:var(--s2) var(--s3);border-radius:var(--radius-sm)}[data-design=chrome] .check:hover{background:var(--ch-well)}[data-design=chrome] .tabs{display:inline-flex;max-width:100%;gap:3px;padding:3px;border:1px solid var(--border);border-radius:var(--radius);background:var(--ch-well);box-shadow:var(--ch-recess)}[data-design=chrome] .tab{border:0;border-radius:var(--radius-sm);font-weight:700}[data-design=chrome] .tab:hover{background:color-mix(in srgb,var(--surface) 70%,transparent)}[data-design=chrome] .tab.is-active{background:var(--ch-plate);color:var(--ink);font-weight:800;box-shadow:var(--ch-bevel),0 0 0 1px var(--border-strong)}[data-design=chrome] .modal-backdrop{background:color-mix(in srgb,var(--bg) 70%,transparent)}[data-design=chrome] .modal-title{padding-bottom:var(--s3);border-bottom:1px solid var(--border);box-shadow:0 1px 0 var(--ch-hi);margin-bottom:var(--s4)}[data-design=chrome] .reward-total-link{border-radius:var(--radius);background:var(--ch-well);box-shadow:var(--ch-recess);font-variant-numeric:tabular-nums}[data-design=chrome] .pill{border-radius:var(--radius-sm)}[data-design=chrome][data-screen=game] .card{box-shadow:none}[data-design=chrome][data-screen=game] .tile,[data-design=chrome][data-screen=game] .g-chip,[data-design=chrome][data-screen=game] .g-tile{border-radius:var(--tile-radius);box-shadow:none}
