.admin-cabinet-layout{background:var(--color-bg);min-height:100vh}.admin-cabinet-topbar{z-index:15;justify-content:space-between;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--page-gutter);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex;position:sticky;top:0}.admin-cabinet-role{color:var(--color-muted);font-size:var(--font-secondary);font-weight:500}.admin-cabinet-content{min-width:0;padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--space-6))}.page-subtitle{margin:calc(-1 * var(--space-3)) 0 var(--space-3);color:var(--color-muted);max-width:720px}.page-subtitle:last-of-type{margin-bottom:var(--space-5)}.admin-cabinet-nav{z-index:30;padding:0 var(--space-2) env(safe-area-inset-bottom,0px);border-top:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:3fr 1fr;display:grid;position:fixed;bottom:0;left:0;right:0}.admin-cabinet-brand,.admin-cabinet-nav .sidebar-illustration{display:none}.admin-cabinet-nav ul{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.admin-cabinet-nav li:not(.is-primary){display:none}.admin-cabinet-nav a,.admin-cabinet-more{min-width:0;min-height:var(--bottom-nav-height);padding:var(--space-2) 2px;color:var(--color-navy);font-size:var(--font-nav);overflow-wrap:anywhere;background:0 0;border:0;align-content:center;justify-items:center;gap:2px;font-weight:500;text-decoration:none;display:grid;position:relative}.admin-cabinet-nav a .icon,.admin-cabinet-more .icon{color:var(--color-muted)}.admin-cabinet-nav a.is-active,.admin-cabinet-more.is-active{color:var(--color-green-text)}.admin-cabinet-nav a.is-active .icon,.admin-cabinet-more.is-active .icon{color:var(--color-green)}.admin-cabinet-nav a.is-active:before,.admin-cabinet-more.is-active:before{content:"";background:var(--color-green);border-radius:0 0 3px 3px;height:3px;position:absolute;top:0;left:25%;right:25%}.admin-cabinet-logout{z-index:16;top:6px;right:var(--page-gutter);align-items:center;gap:var(--space-2);min-height:var(--touch-target);padding:0 var(--space-2);border-radius:var(--radius-nav);color:var(--color-muted);text-align:left;background:0 0;border:0;font-weight:500;display:flex;position:fixed}.admin-cabinet-logout:hover{color:var(--color-navy);background:var(--color-blue-soft)}.admin-cabinet-topbar{padding-right:calc(var(--page-gutter) + 96px)}.admin-cabinet-nav.is-expanded ul{padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider);grid-area:1/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-cabinet-nav.is-expanded li:not(.is-primary){display:block}.admin-cabinet-nav.is-expanded .admin-cabinet-more{grid-area:2/2}.admin-cabinet-nav.is-expanded{border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:var(--shadow-float)}.admin-cabinet-backdrop{z-index:25;background:var(--color-overlay);border:0;position:fixed;inset:0}@media (width>=768px){.admin-cabinet-nav.is-expanded ul{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1080px){.admin-cabinet-layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);align-items:start;display:grid}.admin-cabinet-topbar,.admin-cabinet-more,.admin-cabinet-backdrop{display:none}.admin-cabinet-nav,.admin-cabinet-nav.is-expanded{height:100vh;padding:var(--space-8) 0 0;border-top:0;border-right:1px solid var(--color-border);background:var(--color-sidebar-bg);box-shadow:none;border-radius:0;flex-direction:column;grid-template-columns:none;display:flex;position:sticky;top:0;overflow:hidden auto}.admin-cabinet-brand{gap:var(--space-1);margin:0 var(--space-6) var(--space-6);display:grid}.admin-cabinet-nav ul,.admin-cabinet-nav.is-expanded ul{padding:0 var(--space-4);border:0;grid-template-columns:1fr;gap:2px;display:grid}.admin-cabinet-nav li:not(.is-primary){display:block}.admin-cabinet-nav a{place-items:center start;gap:var(--space-3);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-nav);font-size:var(--font-body);display:flex}.admin-cabinet-nav a .icon{color:var(--color-navy)}.admin-cabinet-nav a:hover{background:var(--color-surface)}.admin-cabinet-nav a.is-active{color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.admin-cabinet-nav a.is-active:before{content:none}.admin-cabinet-logout{gap:var(--space-3);min-height:48px;margin:var(--space-2) var(--space-4) 0;padding:0 var(--space-4);position:static}.admin-cabinet-topbar{padding-right:var(--page-gutter)}.admin-cabinet-nav .sidebar-illustration{flex:none;max-height:200px;margin-top:auto;display:block}.admin-cabinet-content{padding-bottom:var(--space-12)}}.parent-programs-entry{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.parent-programs-entry h2{margin:0 0 var(--space-1);color:var(--color-navy);font-size:var(--font-card-title)}.parent-programs-entry p{overflow-wrap:anywhere;margin:0}.admin-filter-card-wide{grid-template-columns:minmax(260px,2fr) repeat(3,minmax(140px,1fr))}.admin-registry-list{gap:var(--space-3);display:grid}.admin-registry-card{align-items:center;gap:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:minmax(220px,.85fr) minmax(0,1.8fr) minmax(150px,auto);display:grid}.admin-registry-main{min-width:0}.admin-registry-main .eyebrow,.admin-registry-main h2{margin:0}.admin-registry-main h2{margin-top:var(--space-1);font-size:var(--font-card-title);overflow-wrap:anywhere}.admin-registry-main>span{margin-top:var(--space-1);color:var(--color-muted);font-size:var(--font-secondary);display:block}.admin-registry-action{justify-items:start;gap:var(--space-2);display:grid}.admin-pagination{justify-content:center;align-items:center;gap:var(--space-3);margin-top:var(--space-5);display:flex}.admin-pagination button{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-blue);background:var(--color-surface);font-weight:600}.admin-pagination button:disabled{color:var(--color-muted);background:var(--color-disabled-bg);cursor:default}.admin-linked-list{gap:var(--space-2);display:grid}.admin-linked-list article{gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--color-divider);grid-template-columns:minmax(220px,1.3fr) minmax(180px,1fr) auto;align-items:center;display:grid}.admin-linked-list article:first-child{border-top:0}.admin-linked-list article>div{gap:var(--space-1);display:grid}.admin-linked-list article span{color:var(--color-muted)}.admin-zero-payment-note{background:var(--color-bg);border-style:dashed}.admin-zero-payment-note h2,.admin-zero-payment-note p{margin-top:0}@media (width<=1040px){.admin-registry-card{grid-template-columns:minmax(200px,.8fr) minmax(0,1.6fr)}.admin-registry-action{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.admin-filter-card-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-filter-card-wide .admin-search-field{grid-column:span 2}}@media (width<=760px){.admin-filter-card-wide,.admin-registry-card,.admin-linked-list article{grid-template-columns:1fr}.admin-filter-card-wide .admin-search-field,.admin-registry-action{grid-column:auto}.admin-registry-action{flex-wrap:wrap;display:flex}}@media (width<=520px){.admin-registry-action,.admin-registry-action .admin-secondary-link{width:100%}.admin-registry-action .admin-secondary-link{text-align:center;justify-content:center}.admin-pagination{justify-content:space-between}}.admin-review-note{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-bg)}.admin-selection-list{gap:var(--space-2);margin:var(--space-4) 0;display:grid}.admin-selection-card{align-items:center;gap:var(--space-3);min-height:var(--choice-row-height);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.admin-selection-card.is-selected{border-color:var(--color-green-border);background:var(--color-green-soft)}.admin-selection-card:has(input:disabled){color:var(--color-muted);background:var(--color-disabled-bg);cursor:not-allowed}.admin-selection-card input{width:20px;height:20px;accent-color:var(--color-green)}.admin-selection-card>span:not(.admin-status-badge){gap:var(--space-1);display:grid}.admin-selection-card small{color:var(--color-muted)}.admin-sticky-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-3) 0;display:flex}.admin-sticky-actions-split{justify-content:space-between}.admin-sticky-actions .primary-button,.admin-sticky-actions .admin-header-link{min-height:var(--touch-target)}.admin-form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=820px){.admin-form-grid-two{grid-template-columns:1fr}}@media (width<=1079px){.admin-sticky-actions,.admin-sticky-actions-split{z-index:4;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));padding:var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface);position:sticky}}@media (width<=520px){.admin-selection-card{grid-template-columns:auto minmax(0,1fr)}.admin-selection-card .admin-status-badge{grid-column:2;justify-self:start}.admin-sticky-actions,.admin-sticky-actions-split{margin:var(--space-5) calc(-1 * var(--space-3)) 0;grid-template-columns:1fr;display:grid}.admin-sticky-actions .primary-button,.admin-sticky-actions .admin-header-link{justify-content:center;width:100%}}.admin-settings-page{width:min(1180px, calc(100% - 2 * var(--page-gutter)));padding:var(--space-6) 0 var(--space-8);margin:0 auto}.admin-settings-card h2{margin:var(--space-1) 0 var(--space-2)}.admin-card-heading p{color:var(--color-muted);max-width:720px;margin:0}.admin-config-badge{white-space:nowrap}.admin-a24-tabs{gap:var(--space-2);padding-bottom:var(--space-2);margin-bottom:var(--space-5);display:flex;overflow-x:auto}.admin-a24-tabs span{min-height:var(--touch-target);padding:0 var(--space-4);border-radius:var(--radius-pill);white-space:nowrap;color:var(--color-muted);background:var(--color-disabled-bg);align-items:center;display:inline-flex}.admin-a24-tabs .is-active{color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.admin-settings-form{gap:var(--space-5);display:grid}.admin-settings-card{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-card-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-5);display:flex}.admin-card-heading>p{max-width:460px}.admin-price-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-field{color:var(--color-text);gap:6px;font-weight:500;display:grid}.admin-field input,.admin-field select,.admin-field textarea{width:100%;min-height:var(--field-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-surface)}.admin-field textarea{padding:var(--space-3);resize:vertical}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:var(--color-blue);box-shadow:var(--focus-ring);outline:0}.admin-access-field{margin-top:var(--space-4);max-width:360px}.admin-confirm-row{align-items:flex-start;gap:var(--space-3);margin:var(--space-4) 0;color:var(--color-text);font-weight:500;display:flex}.admin-confirm-row input{width:20px;height:20px;accent-color:var(--color-green);margin-top:2px}.admin-publish-card .primary-button{min-width:220px}.admin-success{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.admin-operations-page{color:var(--color-text)}.admin-header-link,.admin-secondary-link{color:var(--color-blue);font-weight:600;text-decoration:none}.admin-header-link{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-surface);box-shadow:var(--shadow-card);white-space:nowrap;align-items:center;display:inline-flex}.admin-header-link:hover{border-color:var(--color-blue);background:var(--color-blue-soft)}.admin-record-tabs,.admin-detail-nav{gap:var(--space-2);margin-bottom:var(--space-5);padding-bottom:var(--space-1);display:flex;overflow-x:auto}.admin-record-tabs button,.admin-detail-nav a{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-navy);white-space:nowrap;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.admin-record-tabs button.is-active{border-color:var(--color-green-border);color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.admin-filter-card{gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:minmax(240px,2fr) repeat(3,minmax(150px,1fr));display:grid}.admin-results-summary{margin:0 0 var(--space-3);color:var(--color-muted);font-weight:500}.admin-order-list{gap:var(--space-3);display:grid}.admin-order-card,.admin-empty-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-empty-card h2,.admin-empty-card p,.admin-order-card h2{margin:0}.admin-empty-card p{color:var(--color-muted);margin-top:6px}.admin-order-card-topline{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-3);display:flex}.admin-order-card .eyebrow{margin:0 0 var(--space-1)}.admin-archived-note{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-muted);background:var(--color-disabled-bg)}.admin-status-badge{white-space:nowrap}.admin-fact-grid{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.admin-fact-grid>div{min-width:0}.admin-fact-grid dt{color:var(--color-muted);font-size:var(--font-hint);margin-bottom:2px}.admin-fact-grid dd{overflow-wrap:anywhere;color:var(--color-text);margin:0;font-weight:500}.admin-card-actions{align-items:center;gap:var(--space-4);margin-top:var(--space-4);display:flex}.admin-action-link{min-height:var(--touch-target);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.admin-item-list{gap:var(--space-2);margin-top:var(--space-4);display:grid}.admin-item-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--color-divider);display:flex}.admin-item-row>div:first-child{gap:2px;display:grid}.admin-item-row span{color:var(--color-muted);font-size:var(--font-secondary)}.admin-delivery-form{gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-divider);display:grid}.admin-form-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-history-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.admin-history-list li{gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-divider);grid-template-columns:minmax(140px,.8fr) minmax(220px,1.5fr) auto;align-items:center;display:grid}.admin-history-list li:first-child{border-top:0}.admin-history-list span,.admin-history-list time{color:var(--color-muted)}.admin-history-list time{white-space:nowrap}.admin-access-list{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-access-list article{gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);display:grid}.admin-access-list span{color:var(--color-muted)}.admin-mono{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}@media (width>=1000px){.admin-order-card{align-items:center;gap:var(--space-5);grid-template-columns:minmax(240px,.9fr) minmax(0,2fr) auto;display:grid}.admin-order-card-topline,.admin-card-actions{margin:0}.admin-order-card .admin-fact-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.admin-card-actions{justify-items:stretch;display:grid}}@media (width<=820px){.admin-card-heading{display:grid}.admin-price-grid,.admin-form-grid,.admin-access-list{grid-template-columns:1fr}.admin-filter-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-search-field{grid-column:1/-1}.admin-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-settings-card{padding:var(--space-4)}.admin-config-badge,.admin-header-link{justify-self:start}.admin-access-field,.admin-publish-card .primary-button{width:100%;max-width:none}.admin-history-list li{gap:var(--space-1);grid-template-columns:1fr}}@media (width<=520px){.admin-filter-card,.admin-fact-grid{grid-template-columns:1fr}.admin-search-field{grid-column:auto}.admin-order-card-topline,.admin-item-row,.admin-card-actions{display:grid}.admin-card-actions .primary-button,.admin-card-actions .admin-secondary-link{text-align:center;width:100%}.admin-settings-card form>.primary-button,.admin-delivery-form>.primary-button{z-index:2;bottom:calc(var(--bottom-nav-height) + var(--space-2));width:100%;position:sticky}}.admin-home-action{white-space:nowrap;text-decoration:none}.admin-attention-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.admin-attention-list a{justify-content:space-between;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-navy);background:var(--color-surface);flex-wrap:wrap;text-decoration:none;display:flex}.admin-attention-list li.is-urgent a{border-color:var(--color-error);background:var(--color-error-soft)}.admin-metric-grid{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}.admin-metric-card{gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);color:var(--color-navy);text-decoration:none;display:grid}.admin-metric-card strong{font-size:28px;line-height:1.1}.admin-metric-card small{color:var(--color-muted)}.admin-task-card.is-urgent{border-color:var(--color-error)}.admin-a24-tabs button{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-surface);white-space:nowrap;font-weight:500}.admin-a24-tabs button.is-active{border-color:var(--color-green-border);color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.admin-link-button{color:var(--color-blue);background:0 0;border:0;padding:0;font-weight:600}.admin-document-current-version{max-width:360px;color:var(--color-muted);text-align:right;font-weight:500}@media (width<=640px){.admin-document-current-version{text-align:left;max-width:none}}.admin-course-sections{margin-bottom:0}.admin-resource-card{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);min-width:0;display:grid}.admin-resource-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.admin-resource-head .eyebrow{overflow-wrap:anywhere;margin:0}.admin-resource-head h3{font-size:var(--font-body);overflow-wrap:anywhere;margin:2px 0 0}.admin-product-form,.admin-product-fields{gap:var(--space-3);display:grid}.admin-product-flags{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.admin-product-flags legend{margin-bottom:var(--space-2);color:var(--color-text);padding:0;font-weight:500}.admin-file-button{cursor:pointer;position:relative}.admin-file-button:focus-within{box-shadow:var(--focus-ring)}.admin-archived{gap:var(--space-2);margin-top:var(--space-3);display:grid}.admin-archived summary{color:var(--color-blue);cursor:pointer}.admin-archived-row{justify-content:space-between;align-items:center;gap:var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.admin-queue-tabs{margin-bottom:0}.admin-queue-filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-queue-list{gap:var(--space-3);display:grid}.admin-queue-emails{gap:var(--space-1);margin:0;display:grid}.admin-queue-emails div{gap:var(--space-2);grid-template-columns:minmax(96px,auto) minmax(0,1fr);display:grid}.admin-queue-emails dt{color:var(--color-muted)}.admin-queue-emails dd{overflow-wrap:anywhere;word-break:break-word;margin:0}.admin-queue-decision{gap:var(--space-3);display:grid}.admin-queue-badges{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width>=768px){.admin-product-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-product-fields .admin-field-wide,.admin-product-fields .admin-product-flags{grid-column:1/-1}.admin-product-flags{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-invite-link-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.admin-invite-link-row code{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-bg);overflow-wrap:anywhere}.admin-invite-metrics{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-invite-metrics>div{gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg);display:grid}.admin-invite-metrics strong{color:var(--color-navy);font-size:24px}.admin-invite-metrics span,.admin-invite-issued,.admin-invite-history small{color:var(--color-muted)}.admin-invite-history{gap:var(--space-3);display:grid}.admin-invite-history>article{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card)}.admin-invite-history-head{justify-content:space-between;gap:var(--space-3);align-items:flex-start;display:flex}.admin-invite-history-head>div{gap:var(--space-1);display:grid}.admin-invite-metrics.is-compact{margin:var(--space-3) 0}.admin-danger-button{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-error);border-radius:var(--radius-button);color:var(--color-error-text);background:var(--color-surface);font-weight:600}.admin-danger-button:hover:not(:disabled){background:var(--color-error-soft)}.admin-danger-button:disabled{color:var(--color-muted);border-color:var(--color-disabled);cursor:not-allowed}@media (width<=620px){.admin-invite-link-row,.admin-invite-metrics{grid-template-columns:1fr}.admin-invite-link-row .primary-button,.admin-danger-button{width:100%}.admin-invite-history-head{display:grid}}.admin-audit-list{gap:var(--space-3);display:grid}.admin-audit-entry{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-audit-entry-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.admin-audit-entry-heading h3,.admin-audit-entry-heading p{margin:0}.admin-audit-entry-heading h3{margin-top:var(--space-1);overflow-wrap:anywhere}.admin-audit-entry-heading time{color:var(--color-muted);white-space:nowrap}.admin-audit-meta{gap:var(--space-3);margin:var(--space-4) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-audit-meta dt,.admin-audit-snapshot dt{color:var(--color-muted);font-size:var(--font-hint)}.admin-audit-meta dd,.admin-audit-snapshot dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:500}.admin-audit-reason{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.admin-audit-changes{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.admin-audit-changes summary{min-height:var(--touch-target);color:var(--color-blue);cursor:pointer;font-weight:600}.admin-audit-change-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-audit-change-grid>section{min-width:0;padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-field)}.admin-audit-change-grid h4,.admin-audit-change-grid p{margin:0}.admin-audit-snapshot{gap:var(--space-2);margin:var(--space-3) 0 0;display:grid}.admin-audit-pagination{justify-content:center;align-items:center;gap:var(--space-3);margin-top:var(--space-5);display:flex}.admin-audit-pagination button{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-blue);background:var(--color-surface);font-weight:600}.admin-audit-pagination button:disabled{color:var(--color-muted);background:var(--color-disabled-bg);cursor:default}@media (width<=620px){.admin-audit-entry-heading,.admin-audit-meta,.admin-audit-change-grid{grid-template-columns:1fr;display:grid}.admin-audit-entry-heading time{white-space:normal}}.rte{gap:var(--space-2);display:grid}.rte-label{color:var(--color-navy);font-size:var(--font-secondary);font-weight:600}.rte-toolbar{gap:var(--space-1);flex-wrap:wrap;display:flex}.rte-button{min-width:var(--touch-target);min-height:var(--touch-target);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-navy);background:var(--color-surface);font-size:var(--font-body)}.rte-button:hover:not(:disabled){border-color:var(--color-blue);background:var(--color-blue-soft)}.rte-button:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}.rte-underline{text-decoration:underline}.rte-area{min-height:160px;max-height:480px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface);overflow:auto}.rte-area:focus{outline:2px solid var(--color-blue);outline-offset:1px}.rte-hint{color:var(--color-muted);font-size:var(--font-hint)}.product-description{color:var(--color-text);font-size:var(--font-body);overflow-wrap:anywhere;line-height:1.5}.product-description>:first-child{margin-top:0}.product-description>:last-child{margin-bottom:0}.product-description h2,.product-description h3{margin:var(--space-4) 0 var(--space-2);color:var(--color-navy);font-size:var(--font-section-title)}.product-description p,.product-description ul,.product-description ol,.product-description blockquote{margin:0 0 var(--space-3)}.product-description ul,.product-description ol{padding-left:var(--space-5)}.product-description a{color:var(--color-blue)}.product-description img{max-width:100%;height:auto;margin:var(--space-3) 0;border-radius:var(--radius-field);display:block}.product-description blockquote{padding-left:var(--space-3);border-left:3px solid var(--color-border);color:var(--color-muted)}.admin-lesson-list{gap:var(--space-3);display:grid}.admin-lesson-card{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.admin-lesson-card h3{font-size:var(--font-body);margin:2px 0 0}.admin-lesson-state{gap:var(--space-1);margin:0;display:grid}.admin-lesson-state div{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-lesson-state dt{color:var(--color-muted)}.admin-lesson-state dd{margin:0}.admin-file-picker input{max-width:100%}.admin-file-picker small{color:var(--color-muted)}.admin-material-sequence{gap:var(--space-2);margin:0 0 var(--space-4);padding:0;list-style:none;display:grid}.admin-material-sequence li{gap:var(--space-2) var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface);cursor:grab;grid-template-columns:auto auto minmax(0,1fr);align-items:center;display:grid}.admin-material-sequence li.is-dragged{opacity:.5}.admin-material-sequence li.is-drop-target{border-color:var(--color-blue);box-shadow:var(--focus-ring)}.admin-sequence-number{width:32px;height:32px;color:var(--color-navy);background:var(--color-blue-soft);border-radius:50%;place-items:center;font-weight:600;display:inline-grid}.admin-sequence-copy{gap:2px;min-width:0;display:grid}.admin-sequence-copy strong{color:var(--color-navy);overflow-wrap:anywhere}.admin-sequence-copy span{color:var(--color-muted);font-size:var(--font-secondary)}.admin-sequence-actions{gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;align-items:center;display:flex}.admin-sequence-handle{color:var(--color-muted);cursor:grab;font-size:18px}.admin-upload-progress{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);background:var(--color-bg);gap:6px;margin:0;list-style:none;display:grid}.admin-upload-progress li{justify-content:space-between;gap:var(--space-3);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.admin-upload-progress li.is-failed strong{color:var(--color-error-text)}.admin-rename-form{gap:var(--space-2);flex-wrap:wrap;align-items:end;min-width:0;display:flex}.admin-rename-form .admin-field{flex:180px;min-width:0;margin:0}.admin-rename-form .admin-field input{min-width:0}.admin-lesson-add,.admin-lesson-add-fields{gap:var(--space-3);display:grid}.admin-lesson-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-lesson-materials{gap:var(--space-4);min-width:0;padding-top:var(--space-3);border-top:1px solid var(--color-divider);grid-column:1/-1;display:grid}.admin-material-audiences{gap:var(--space-4);display:grid}.admin-material-audience{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-top:4px solid var(--color-disabled);border-radius:var(--radius-card);background:var(--color-bg);display:grid}.admin-material-audience h3{font-size:var(--font-body);margin:2px 0 0}.admin-material-audience[data-audience=teacher]{border-top-color:var(--color-blue)}.admin-material-audience[data-audience=parent]{border-top-color:var(--color-green)}.admin-material-audience.is-file-target{background:var(--color-blue-soft);border-style:dashed}.admin-material-audience-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-material-count{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-surface);font-size:var(--font-secondary);white-space:nowrap;font-weight:600}.admin-material-hint,.admin-material-order-hint,.admin-material-empty{margin:var(--space-2) 0 var(--space-3);color:var(--color-muted)}.admin-material-empty{padding:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-field);text-align:center}@media (width>=768px){.admin-lesson-card{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto}.admin-material-sequence li{grid-template-columns:auto auto minmax(0,1fr) auto}.admin-sequence-actions{grid-column:auto;justify-content:flex-end}.admin-material-sequence li:has(.admin-rename-form) .admin-sequence-copy{grid-column:3/-1}.admin-material-sequence li:has(.admin-rename-form) .admin-sequence-actions{grid-column:1/-1;justify-content:flex-start}.admin-lesson-add-fields{grid-template-columns:110px 110px minmax(0,1fr) auto;align-items:end}.admin-lesson-add-fields.is-course{grid-template-columns:minmax(0,1fr) auto}}@media (width>=1500px){.admin-material-audiences{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.club-detail-heading,.section-heading,.club-card-top,.form-section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.primary-button.compact{min-height:var(--button-secondary-height);padding-inline:var(--space-4);font-size:var(--font-body);white-space:nowrap}.clubs-loading{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-muted);background:var(--color-surface);text-align:center}.clubs-empty{max-width:560px;margin:var(--space-10) auto 0;padding:var(--space-8) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center}.clubs-empty-icon{width:72px;height:72px;margin:0 auto var(--space-4);color:var(--color-teal);background:var(--color-green-soft);border-radius:50%;place-items:center;display:grid}.clubs-empty h2{margin-bottom:var(--space-2)}.clubs-empty p{margin:0 auto var(--space-5);color:var(--color-muted)}.clubs-grid{gap:var(--space-3);display:grid}.club-card{width:100%;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);color:inherit;background:var(--color-surface);box-shadow:var(--shadow-card);text-align:left}.club-card:hover{border-color:var(--color-blue)}.club-card h2{font-size:var(--font-card-title);margin:0 0 2px}.club-card p{color:var(--color-muted);font-size:var(--font-secondary);margin:0}.club-card-top{min-width:0}.club-card .club-card-top{justify-content:flex-start;align-items:center}.club-card .club-card-top>div{flex:auto;min-width:0}.club-illustration{width:56px;height:56px;color:var(--color-teal);background:var(--color-green-soft);border-radius:50%;flex:none;place-items:center;display:grid}.club-card-meta{gap:var(--space-3);margin:var(--space-4) 0;display:grid}.club-card-meta div{min-width:0}.club-card-meta dt{color:var(--color-muted);font-size:var(--font-hint);margin-bottom:2px}.club-card-meta dd{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-weight:500}.club-card-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider);color:var(--color-blue);display:flex}.club-card-footer .muted{font-size:var(--font-secondary)}.club-detail-heading{margin:calc(-1 * var(--space-3)) 0 var(--space-5);align-items:center}.club-detail-heading p{color:var(--color-muted);margin:0}.club-detail-schedule{overflow-wrap:anywhere;min-width:0;color:var(--color-text);font-weight:500}.success-banner{margin-bottom:var(--space-4)}.club-warning{margin:0 0 var(--space-4);padding:var(--space-4);border:1px solid var(--color-warning);border-radius:var(--radius-card);background:var(--color-warning-soft)}.club-warning.danger{border-color:var(--color-error);background:var(--color-error-soft)}.club-warning h2{margin-bottom:var(--space-1)}.club-warning p{color:var(--color-text);margin-bottom:0}.club-warning ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.review-history{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.field-hint{margin:var(--space-3) 0 0;padding:var(--space-3);border-radius:var(--radius-field);color:var(--color-muted);background:var(--color-bg);font-size:var(--font-secondary)}.club-invite-panel{gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-green-border);border-radius:var(--radius-card);background:var(--color-green-soft);box-shadow:var(--shadow-card);display:grid}.club-invite-panel h2{font-size:var(--font-card-title);margin:0}.club-invite-panel p{color:var(--color-muted);font-size:var(--font-hint);margin:0}.invite-copy-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;min-width:0;display:grid}.invite-copy-row input{width:100%;min-width:0;min-height:var(--field-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-surface)}.section-heading{margin:var(--space-6) 0 var(--space-3);align-items:end}.section-heading h2{margin:var(--space-1) 0 0}.club-actions-grid{gap:var(--space-2);display:grid}.section-link{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-blue);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:left;display:flex}.section-link:hover{border-color:var(--color-blue)}.section-link>span:first-child{min-width:0}.section-link strong,.section-link small{display:block}.section-link strong{color:var(--color-navy);font-weight:600}.section-link small{color:var(--color-muted);font-size:var(--font-secondary);margin-top:2px}.sticky-actions{z-index:5;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));gap:var(--space-2);margin-top:var(--space-5);padding:var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface);display:grid;position:sticky}.review-history{margin-top:var(--space-4)}.review-history summary{color:var(--color-navy);cursor:pointer;font-weight:600}.review-history ol{margin:var(--space-3) 0 0;padding-left:var(--space-5)}.review-history li{margin-bottom:var(--space-3)}.review-history p{margin-bottom:2px}.review-history small{color:var(--color-muted)}.club-wizard-page{background:var(--color-bg);min-height:100%}.club-wizard-shell{width:min(100%,720px);margin:0 auto}.wizard-card{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.wizard-card>h2{margin-bottom:0}.form-field{min-width:0;color:var(--color-text);font-size:var(--font-body);gap:6px;font-weight:500;display:grid}.form-field input,.form-field textarea,.form-field select,.schedule-row select,.schedule-row input{width:100%;min-width:0;min-height:var(--field-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-surface)}.form-field textarea{min-height:90px;padding:var(--space-3)}.form-field input:focus,.form-field textarea:focus,.form-field select:focus,.schedule-row select:focus,.schedule-row input:focus{border-color:var(--color-blue);box-shadow:var(--focus-ring);outline:0}.form-field input:disabled,.form-field textarea:disabled,.form-field select:disabled,.schedule-row select:disabled,.schedule-row input:disabled{color:var(--color-muted);background:var(--color-disabled-bg)}.form-field strong{color:var(--color-navy);font-weight:600}.field-error.standalone{margin-top:calc(-1 * var(--space-2))}.check-row{align-items:start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface);cursor:pointer;grid-template-columns:22px minmax(0,1fr);display:grid}.check-row:has(input:checked){border-color:var(--color-green-border);background:var(--color-green-soft)}.check-row input{margin:2px 0 0}.check-row strong,.check-row small{display:block}.check-row strong{color:var(--color-navy);font-weight:600}.check-row small{margin-top:var(--space-1);color:var(--color-muted);font-size:var(--font-secondary)}.form-section-heading{padding-top:var(--space-1);align-items:center}.form-section-heading h3{margin-bottom:2px}.form-section-heading p{color:var(--color-muted);font-size:var(--font-secondary);margin-bottom:0}.schedule-editor{gap:var(--space-2);display:grid}.schedule-row{gap:var(--space-2);grid-template-columns:minmax(0,1.35fr) minmax(110px,.65fr);display:grid}.schedule-row label{min-width:0;font-size:var(--font-secondary);gap:6px;font-weight:500;display:grid}.two-column-fields{gap:var(--space-3);display:grid}.calculation-panel{gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);background:var(--color-green-soft);display:grid}.calculation-panel strong{color:var(--color-navy)}.calculation-panel span{color:var(--color-green-text);font-weight:600}.calculation-panel small{color:var(--color-muted)}.wizard-actions{z-index:5;gap:var(--space-2);margin:var(--space-1) calc(-1 * var(--space-5)) calc(-1 * var(--space-5));padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-card) var(--radius-card);background:var(--color-surface);display:grid;position:sticky;bottom:0}.wizard-actions.multi{grid-template-columns:1fr}@media (width>=768px){.clubs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.club-invite-panel{align-items:center;column-gap:var(--space-4);grid-template-columns:max-content minmax(0,1fr)}.club-invite-panel p{grid-column:2}.club-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.club-illustration{width:64px;height:64px}.sticky-actions{background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,max-content));justify-content:end;padding:0;position:static}.two-column-fields{grid-template-columns:1fr 1fr}.wizard-actions{margin:var(--space-1) 0 0;background:0 0;border:0;grid-template-columns:minmax(180px,1fr);justify-content:end;padding:0;position:static}.wizard-actions.multi{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-actions.multi>:nth-child(3){grid-column:1/-1}}@media (width>=1080px){.clubs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.club-actions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=430px){.club-detail-heading{align-items:flex-start;gap:var(--space-2);flex-direction:column}.club-card-top{gap:var(--space-2);flex-direction:column}.club-card .club-card-top{gap:var(--space-2) var(--space-4);flex-flow:wrap}.club-card .club-card-top>div{flex:calc(100% - 72px)}.club-card .club-status{margin-left:72px}.schedule-row{grid-template-columns:1fr}}.catalog-page{gap:var(--space-4);display:grid}.catalog-page h2{color:var(--color-navy);font-size:var(--font-card-title);margin:0}.catalog-page h3{color:var(--color-navy);font-size:var(--font-body);margin:0}.catalog-error{gap:var(--space-2);justify-items:start;display:grid}.catalog-empty{gap:var(--space-3);justify-items:start;display:grid}.catalog-empty p{margin:0}.catalog-program-filter{max-width:360px}.catalog-grid{gap:var(--space-3);display:grid}.catalog-product{gap:var(--space-3);align-content:start;display:grid}.catalog-product-head{gap:var(--space-1);display:grid}.catalog-product-head .eyebrow{margin:0}.catalog-product-link{color:inherit;text-decoration:none}.catalog-product-link:hover,.catalog-product-link:focus-visible{color:var(--color-blue);text-decoration:underline}.catalog-product-detail{gap:var(--space-4)}.catalog-facts{gap:var(--space-2);color:var(--color-muted);font-size:var(--font-secondary);margin:0;padding:0;list-style:none;display:grid}.catalog-facts li{align-items:flex-start;gap:var(--space-2);display:flex}.catalog-facts .icon{color:var(--color-teal);flex:none}.catalog-product-footer{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.catalog-price{color:var(--color-navy);font-size:var(--font-section-title)}.quantity-stepper{align-items:center;gap:var(--space-2);display:inline-flex}.quantity-stepper button{width:var(--touch-target);height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-blue);background:var(--color-surface);font-size:var(--font-section-title);cursor:pointer}.quantity-stepper button:disabled{color:var(--color-muted);background:var(--color-disabled-bg);cursor:not-allowed}.quantity-stepper button:focus-visible,.quantity-stepper input:focus-visible{box-shadow:var(--focus-ring);outline:0}.quantity-stepper input{width:64px;height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-surface);font:inherit;text-align:center}.catalog-cart{gap:var(--space-3);display:grid}.catalog-cart.is-pinned{z-index:5;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--space-2));gap:var(--space-2);box-shadow:var(--shadow-float);position:sticky}.catalog-cart-details summary{justify-content:space-between;align-items:baseline;gap:var(--space-2);min-height:var(--touch-target);color:var(--color-navy);cursor:pointer;flex-wrap:wrap;align-content:center;display:flex}.catalog-cart-details summary strong{font-size:var(--font-card-title)}.catalog-cart-details[open] .catalog-cart-lines{margin-top:var(--space-2)}.catalog-cart-footer{justify-content:space-between;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.catalog-cart-footer .catalog-totals{flex:180px}.catalog-cart-footer .primary-button{flex:160px}.catalog-cart-lines{gap:var(--space-2);font-size:var(--font-body);margin:0;padding:0;list-style:none;display:grid}.catalog-cart-lines li{justify-content:space-between;gap:var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.catalog-cart-lines li.is-invalid,.catalog-line.is-invalid{color:var(--color-error-text)}.catalog-totals{gap:var(--space-2);margin:0;display:grid}.catalog-totals div{justify-content:space-between;gap:var(--space-3);color:var(--color-muted);font-size:var(--font-secondary);display:flex}.catalog-totals dt,.catalog-totals dd{margin:0}.catalog-totals .catalog-total-row{padding-top:var(--space-2);border-top:1px solid var(--color-divider);color:var(--color-navy);font-size:var(--font-card-title);font-weight:700}.catalog-checkout-form{gap:var(--space-4);display:grid}.catalog-section{gap:var(--space-3);align-content:start;display:grid}.catalog-section p{margin:0}.catalog-lines{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.catalog-line{gap:var(--space-2) var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-divider);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.catalog-line:last-child{border-bottom:0;padding-bottom:0}.catalog-line-title{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.catalog-line-title .eyebrow{margin:0}.catalog-line .quantity-stepper{grid-column:1}.catalog-line-total{color:var(--color-navy);grid-area:1/2;justify-self:end}.catalog-email-group{gap:var(--space-3);border:0;min-width:0;margin:0;padding:0;display:grid}.catalog-email-group legend{margin-bottom:var(--space-2);color:var(--color-navy);padding:0;font-weight:600}.catalog-email-grid{gap:var(--space-3);display:grid}.catalog-checkout-total{z-index:2;box-shadow:var(--shadow-float);position:sticky;bottom:0}.catalog-link-button{text-decoration:none}.catalog-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.catalog-order-list,.catalog-order-card{gap:var(--space-3);display:grid}.catalog-order-card-head,.catalog-order-hero,.catalog-slot-head,.catalog-slots-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.catalog-order-card-head .eyebrow,.catalog-slot-head .eyebrow{margin:0 0 2px}.catalog-order-meta{gap:var(--space-2) var(--space-6);font-size:var(--font-secondary);flex-wrap:wrap;margin:0;display:flex}.catalog-order-meta dt{color:var(--color-muted)}.catalog-order-meta dd{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-weight:600}.catalog-access-lines{gap:var(--space-1);padding-left:var(--space-5);color:var(--color-text);font-size:var(--font-secondary);margin:0;display:grid}.catalog-order-hero{align-items:center}.catalog-order-hero .eyebrow{margin:0 0 var(--space-2)}.catalog-order-amount{color:var(--color-navy);font-size:var(--font-page-title)}.catalog-order-grid{gap:var(--space-4);display:grid}.catalog-delivery-state{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.catalog-slots{gap:var(--space-3);display:grid}.catalog-slots>p{margin:0}.catalog-slot{gap:var(--space-3);display:grid}.catalog-slot-email{align-items:center;gap:var(--space-2);color:var(--color-text);margin:0;font-weight:600;display:flex}.catalog-slot-email .icon{color:var(--color-muted);flex:none}.catalog-email-value{overflow-wrap:anywhere;word-break:break-word;min-width:0}.catalog-slot-form{gap:var(--space-3);display:grid}.catalog-slot-form .secondary-button{justify-self:start}.catalog-confirm{gap:var(--space-2);display:grid}.catalog-confirm p{margin:0}.catalog-slot-status{align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--font-secondary);flex-wrap:wrap;display:flex}.catalog-change-request{gap:var(--space-1);display:grid}.catalog-change-request p{font-size:var(--font-secondary);margin:0}.catalog-slot>.link-button{justify-self:start}@media (width>=1080px){.catalog-cart.is-pinned{bottom:var(--space-4)}}@media (width>=768px){.catalog-grid,.catalog-email-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-line{grid-template-columns:minmax(0,1fr) auto auto}.catalog-line .quantity-stepper{grid-area:1/2}.catalog-line-total{text-align:right;grid-column:3;min-width:96px}.catalog-order-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.generated-documents-kicker{color:var(--color-muted);font-size:var(--font-secondary);margin:0;font-weight:500}.generated-documents-grid,.generated-documents-history{gap:var(--space-3);display:grid}.generated-documents-section{margin-top:var(--space-6)}.generated-documents-section>h2{margin:0 0 var(--space-3)}.generated-document-card,.generated-documents-empty,.generated-documents-form{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.generated-document-card{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.generated-document-card h3{margin:var(--space-1) 0;font-size:var(--font-body)}.generated-document-card p,.generated-documents-empty p{color:var(--color-muted);font-size:var(--font-secondary);margin:0}.generated-document-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.generated-document-button,.generated-document-link{min-height:var(--button-secondary-height);padding:0 var(--space-4);border-radius:var(--radius-button);color:var(--color-surface);background:var(--gradient-primary);box-shadow:var(--shadow-button);border:0;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.generated-document-button:disabled,.generated-document-disabled{color:var(--color-muted);background:var(--color-disabled-bg);box-shadow:none}.generated-document-link,.generated-document-secondary{border:1px solid var(--color-border);color:var(--color-blue);background:var(--color-surface);box-shadow:var(--shadow-card)}.generated-document-link:hover,.generated-document-secondary:hover:not(:disabled){border-color:var(--color-blue);background:var(--color-blue-soft)}.generated-document-select{align-items:center;gap:var(--space-2);min-height:var(--touch-target);font-size:var(--font-secondary);display:inline-flex}.generated-document-select input{width:18px;height:18px;accent-color:var(--color-green)}.generated-documents-form{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid}.generated-documents-form label{gap:6px;font-weight:500;display:grid}.generated-documents-form input{min-height:var(--field-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface)}.generated-documents-note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-blue);background:var(--color-blue-soft)}@media (width<=680px){.generated-document-card,.generated-documents-form{flex-direction:column;align-items:stretch;display:flex}}.generated-pdf{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.documents-eyebrow,.documents-format{color:var(--color-muted);font-size:var(--font-secondary);margin:0;font-weight:500}.documents-tabs{gap:var(--space-2);margin:var(--space-5) 0;padding-bottom:var(--space-1);display:flex;overflow-x:auto}.documents-tabs button{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-surface);white-space:nowrap;font-weight:500}.documents-tabs button.is-active{border-color:var(--color-green-border);color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.documents-list{gap:var(--space-3);display:grid}.documents-card,.documents-empty{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.documents-card{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.documents-card h2,.documents-empty h2{margin:var(--space-1) 0;font-size:var(--font-card-title)}.documents-card p:last-child,.documents-empty p{color:var(--color-muted);margin:0}.documents-download{min-height:var(--button-secondary-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-blue);background:var(--color-surface);box-shadow:var(--shadow-card);flex:none;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.documents-download:hover{border-color:var(--color-blue);background:var(--color-blue-soft)}@media (width<=640px){.documents-card{flex-direction:column;align-items:stretch}}.presentation-page{z-index:50;color:var(--projector-text);background:var(--projector-bg);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.presentation-page.is-idle{cursor:none}.presentation-stage{place-items:center;display:grid;position:absolute;inset:0 0 72px}.presentation-page.is-idle .presentation-stage{inset:0}.presentation-media{object-fit:contain;background:var(--projector-bg);width:100%;height:100%;display:block}.presentation-pdf{place-items:center;width:100%;height:100%;display:grid}.presentation-pdf canvas{background:var(--projector-page);display:block}.presentation-message{justify-items:center;gap:var(--space-4);text-align:center;max-width:min(100% - 32px,560px);margin:0;font-size:18px;line-height:1.45;display:grid}.presentation-message p{margin:0}.presentation-bar{gap:var(--space-2) var(--space-3);min-height:72px;padding:var(--space-2) var(--space-4);background:var(--projector-bar);flex-wrap:wrap;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:auto 0 0}.presentation-page.is-idle .presentation-bar{opacity:0;pointer-events:none}.presentation-status{gap:var(--space-1) var(--space-3);flex-wrap:wrap;justify-content:center;align-items:baseline;min-width:0;max-width:min(100%,560px);margin:0;display:flex}.presentation-status span{color:var(--projector-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.presentation-button{min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--projector-button-border);border-radius:var(--radius-button);color:var(--projector-text);background:var(--projector-button-bg);font-weight:600}.presentation-button:hover:not(:disabled),.presentation-button:focus-visible{background:var(--projector-button-hover)}.presentation-button:disabled{opacity:.35;cursor:default}.presentation-arrow{min-width:56px;font-size:20px}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-navy:#153567;--color-text:#1c2b3f;--color-muted:#74839d;--color-blue:#3485d6;--color-blue-soft:#edf5ff;--color-green:#4aac32;--color-green-text:#37811f;--color-green-soft:#eff8eb;--color-green-border:#8ccb7c;--color-teal:#1a9d91;--color-bg:#f7fbff;--color-surface:#fff;--color-border:#dce5ee;--color-divider:#edf2f7;--color-disabled:#c7d1de;--color-disabled-bg:#eef2f7;--color-warning:#d99018;--color-warning-text:#9a6108;--color-warning-soft:#fff7e6;--color-error:#d65757;--color-error-text:#b43e3e;--color-error-soft:#fff0f0;--color-sidebar-bg:#f2f8ff;--color-overlay:#1c2b3f66;--color-dark-media:#1c2b3f;--illustration-sky:#e4f1fc;--illustration-cloud:#fff;--illustration-hill:#cfe8c4;--illustration-hill-back:#ddefd5;--illustration-tree:#a9d596;--illustration-tree-dark:#8cc578;--illustration-trunk:#c9a27e;--illustration-book-red:#e7a48f;--illustration-book-blue:#9cc3ea;--illustration-book-yellow:#f3d48b;--illustration-pages:#fff8ec;--illustration-star:#f3c95b;--projector-bg:#000;--projector-text:#f5f8fc;--projector-text-muted:#c9d3e0;--projector-page:#fff;--projector-bar:#0c1421e0;--projector-button-bg:#ffffff14;--projector-button-hover:#fff3;--projector-button-border:#ffffff52;--gradient-primary:linear-gradient(90deg, #54b638 0%, #43a52d 100%);--gradient-primary-hover:linear-gradient(90deg, #4daa33 0%, #3c9728 100%);--shadow-card:0 4px 14px #14345d14;--shadow-button:0 4px 10px #43a52d2e;--shadow-float:0 8px 24px #14345d1f;--focus-ring:0 0 0 3px #3485d640;--radius-button:12px;--radius-field:12px;--radius-card:16px;--radius-nav:12px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--page-gutter:16px;--content-width:816px;--sidebar-width:288px;--font-family:"Inter Variable", Inter, "SF Pro Display", "Segoe UI", Arial, sans-serif;--font-page-title:18px;--font-section-title:16px;--font-card-title:16px;--font-body:14px;--font-secondary:13px;--font-hint:12px;--font-nav:12px;--font-button:15px;--line-height:1.45;--button-height:48px;--button-secondary-height:40px;--field-height:48px;--choice-row-height:56px;--touch-target:44px;--bottom-nav-height:64px;--primary:var(--color-green);--primary-dark:var(--color-navy);--primary-soft:var(--color-green-soft);--surface:var(--color-surface);--muted:var(--color-muted);--border:var(--color-border);--danger:var(--color-error-text);--radius-sm:var(--radius-field);--radius-md:var(--radius-card);--radius-lg:var(--radius-card);--shadow:var(--shadow-card)}@media (width>=768px){:root{--page-gutter:40px;--font-page-title:20px}}@media (width>=1080px){:root{--page-gutter:48px}}:root{font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);font-synthesis:none;-webkit-font-smoothing:antialiased;font-size:16px}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%}body{background:var(--color-bg);min-height:100vh;font-size:var(--font-body);line-height:var(--line-height);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:var(--color-navy);line-height:1.3}h1{font-size:var(--font-page-title);font-weight:700}h2{font-size:var(--font-section-title);font-weight:700}h3{font-size:var(--font-card-title);font-weight:600}h4{font-size:var(--font-body);font-weight:600}a{color:var(--color-blue)}:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{flex:none;display:block}.muted{color:var(--color-muted)}textarea{resize:vertical;min-height:88px}.eyebrow{margin-bottom:var(--space-1);color:var(--color-muted);font-size:var(--font-secondary);letter-spacing:0;text-transform:none;font-weight:500}.primary-button,.secondary-button{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-button);text-align:center;font-weight:600;text-decoration:none;transition:background-color .15s,box-shadow .15s,border-color .15s;display:inline-flex}.primary-button{min-height:var(--button-height);padding:0 var(--space-5);color:var(--color-surface);background:var(--gradient-primary);box-shadow:var(--shadow-button);font-size:var(--font-button);border:0}.primary-button:hover:not(:disabled){background:var(--gradient-primary-hover)}.secondary-button{min-height:var(--button-secondary-height);padding:0 var(--space-4);border:1px solid var(--color-border);color:var(--color-blue);background:var(--color-surface);box-shadow:var(--shadow-card);font-size:var(--font-body)}.secondary-button:hover:not(:disabled){border-color:var(--color-blue);background:var(--color-blue-soft)}.primary-button:disabled,.secondary-button:disabled{color:var(--color-muted);background:var(--color-disabled-bg);border-color:var(--color-disabled-bg);box-shadow:none}.danger-button,.secondary-button.danger-button{border-color:var(--color-error);color:var(--color-error-text);background:var(--color-surface)}.danger-button:hover:not(:disabled){background:var(--color-error-soft)}.full-width{width:100%}.text-link,.link-button{align-items:center;gap:var(--space-2);min-height:var(--touch-target);color:var(--color-blue);font-size:var(--font-body);background:0 0;border:0;padding:0;font-weight:600;text-decoration:none;display:inline-flex}.text-link:disabled{color:var(--color-muted)}.inline-link{width:max-content;margin:0}.form{gap:var(--space-4);display:grid}.field{gap:var(--space-2);color:var(--color-text);font-weight:500;display:grid}.field>span{font-size:var(--font-body)}.field small{color:var(--color-muted);font-size:var(--font-hint);font-weight:400}.field input,.field select,.field textarea{width:100%;min-height:var(--field-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-surface)}.field textarea{padding:var(--space-3) var(--space-4)}.field input::placeholder,.field textarea::placeholder{color:var(--color-muted)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-blue);box-shadow:var(--focus-ring);outline:0}.field input[aria-invalid=true]{border-color:var(--color-error)}.field input:disabled,.field textarea:disabled{color:var(--color-muted);background:var(--color-disabled-bg)}.field-optional{color:var(--color-muted);font-size:var(--font-hint);font-weight:400}.field-error{font-size:var(--font-hint);display:block;color:var(--color-error-text)!important;font-weight:500!important}.checkbox-field{align-items:center;gap:var(--space-3);color:var(--color-text);font-size:var(--font-body);display:flex}.checkbox-field input,.check-row input{width:20px;height:20px;accent-color:var(--color-green)}.code-control{position:relative}.code-control input{z-index:2;opacity:0;cursor:text;width:100%;position:absolute;inset:0}.code-slots{justify-content:center;gap:var(--space-3);grid-template-columns:repeat(4,56px);display:grid}.code-slots>span{border:1px solid var(--color-border);border-radius:var(--radius-field);height:56px;color:var(--color-navy);background:var(--color-surface);place-items:center;font-size:24px;font-weight:700;display:grid}.code-control:focus-within .code-slots>span{border-color:var(--color-blue);box-shadow:var(--focus-ring)}.choice-list{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.choice-row{align-items:center;gap:var(--space-3);min-height:var(--choice-row-height);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-text);background:var(--color-surface);cursor:pointer;font-weight:500;display:flex}.choice-row input{width:20px;height:20px;accent-color:var(--color-green);flex:none;margin:0}.choice-row.is-selected{border-color:var(--color-green-border);background:var(--color-green-soft)}.choice-row small{color:var(--color-muted);font-size:var(--font-hint);font-weight:400;display:block}.choice-row:focus-within{box-shadow:var(--focus-ring)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-error-text);background:var(--color-error-soft);font-size:var(--font-body)}.success-message,.success-banner{padding:var(--space-3) var(--space-4);border:1px solid var(--color-green-border);border-radius:var(--radius-field);color:var(--color-green-text);background:var(--color-green-soft);margin:0}.warning-message{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-warning-text);background:var(--color-warning-soft)}.card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.status-badge,.child-state,.enrollment-status-badge,.club-status,.materials-state,.request-badge,.lock-label,.admin-status-badge,.admin-lesson-status,.admin-config-badge,.attendance-readonly,.teacher-new-label{--badge-color:var(--color-muted);--badge-bg:var(--color-disabled-bg);--badge-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3C/svg%3E");border-radius:var(--radius-pill);width:fit-content;min-height:32px;font-size:var(--font-secondary);white-space:normal;border:0;align-items:center;gap:6px;padding:6px 12px;font-weight:600;line-height:1.25;display:inline-flex;color:var(--badge-color)!important;background:var(--badge-bg)!important}.status-badge:before,.child-state:before,.enrollment-status-badge:before,.club-status:before,.materials-state:before,.request-badge:before,.lock-label:before,.admin-status-badge:before,.admin-lesson-status:before,.admin-config-badge:before,.attendance-readonly:before,.teacher-new-label:before{content:"";width:16px;height:16px;-webkit-mask:var(--badge-icon) center / contain no-repeat;-webkit-mask:var(--badge-icon) center / contain no-repeat;mask:var(--badge-icon) center / contain no-repeat;background:currentColor;border-radius:0;flex:none}.badge-success,.status-active,.status-approved,.status-paid,.status-confirmed_zero,.status-successful,.status-ready_for_pickup,.status-received,.status-ready,.child-state-clubs_available,.child-state-approved,.materials-state.state-available,.admin-lesson-status.is-published,.admin-config-badge.is-ready{--badge-color:var(--color-green-text);--badge-bg:var(--color-green-soft);--badge-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8.2 12.3 2.5 2.5 5.1-5.3'/%3E%3C/svg%3E")}.badge-info,.status-available,.status-handed_to_carrier,.status-in_transit,.status-conducted,.child-state-available,.materials-state.state-conducted{--badge-color:var(--color-blue);--badge-bg:var(--color-blue-soft);--badge-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5.5'/%3E%3Cpath d='M12 7.5h.01'/%3E%3C/svg%3E")}.badge-warning,.status-pending,.status-pending_review,.status-suspended,.status-awaiting_payment,.status-assembly,.status-processing,.child-state-pending,.materials-state.state-future,.admin-lesson-status.is-draft,.admin-config-badge{--badge-color:var(--color-warning-text);--badge-bg:var(--color-warning-soft);--badge-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5V12l3 2'/%3E%3C/svg%3E")}.badge-error,.status-rejected,.status-payment_failed,.status-cancelled,.status-expired,.status-removed,.status-error,.status-failed,.status-revoked,.materials-state.state-closed,.request-badge,.teacher-new-label,.task-priority-high{--badge-color:var(--color-error-text);--badge-bg:var(--color-error-soft);--badge-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5.5'/%3E%3Cpath d='M12 16.5h.01'/%3E%3C/svg%3E")}.badge-neutral,.status-draft,.status-completed,.status-archived,.status-queued,.status-cancelled_by_parent,.status-removed_by_teacher,.child-state-no_clubs,.child-state-rejected,.child-state-cancelled_by_parent,.child-state-removed_by_teacher,.lock-label,.attendance-readonly{--badge-color:var(--color-muted);--badge-bg:var(--color-disabled-bg)}.lock-label{--badge-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='5' y='10.5' width='14' height='10' rx='2.5'/%3E%3Cpath d='M8 10.5V8a4 4 0 0 1 8 0v2.5'/%3E%3C/svg%3E")}.status-rejected.enrollment-status-badge,.child-state-rejected{--badge-color:var(--color-error-text);--badge-bg:var(--color-error-soft)}.page-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.page-header h1{margin:0}.page-back{width:var(--touch-target);height:var(--touch-target);margin-left:calc(-1 * var(--space-3));border-radius:var(--radius-button);color:var(--color-navy);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.page-back:hover{background:var(--color-blue-soft)}.page-header-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.page-title-group{align-items:center;gap:var(--space-1);min-width:0;display:flex}.page-title-group h1{overflow-wrap:anywhere;min-width:0}.page-title-action{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-button);color:var(--color-blue);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.page-title-action:hover{background:var(--color-blue-soft)}@media (width<=767px){.page-header{flex-wrap:wrap}.page-header h1{overflow-wrap:anywhere;flex:160px;min-width:0}.page-title-group{flex:160px}.page-title-group h1{flex:0 auto}.page-header-actions{flex-wrap:wrap;justify-content:flex-end}}.auth-page{min-height:100vh;padding:var(--space-8) var(--page-gutter);background:var(--color-bg);place-items:center;display:grid}.auth-card{width:min(100%,440px);padding:var(--space-6) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.auth-brand{color:inherit;text-decoration:none;display:inline-flex}.auth-heading{margin:var(--space-6) 0}.auth-heading h1{margin-bottom:var(--space-2)}.auth-heading p{color:var(--color-muted);font-size:var(--font-body);margin:0}.auth-card .text-link{width:100%;margin-top:var(--space-2);justify-content:center;display:flex}.privacy-note{margin:var(--space-5) 0 0;color:var(--color-muted);font-size:var(--font-hint);text-align:center}.legal-links{justify-content:center;gap:var(--space-1) var(--space-4);margin:var(--space-5) 0 0;padding:var(--space-4) 0 0;border-top:1px solid var(--color-divider);flex-wrap:wrap;list-style:none;display:flex}.legal-links a{min-height:var(--touch-target);color:var(--color-blue);font-size:var(--font-secondary);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.legal-links a:hover{text-decoration:underline}.form-card{width:100%;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.form-card-heading{margin-bottom:var(--space-5)}.form-card-heading h2{margin-bottom:var(--space-1)}.form-card-heading p{color:var(--color-muted);margin:0}.role-picker{gap:var(--space-3);margin:0 0 var(--space-5);border:0;padding:0;display:grid}.role-option{align-items:center;gap:var(--space-3);min-height:72px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface);cursor:pointer;grid-template-columns:0 44px 1fr;display:grid}.role-option input{opacity:0;width:0;height:0}.role-option.selected{border-color:var(--color-green-border);background:var(--color-green-soft)}.role-option:focus-within{box-shadow:var(--focus-ring)}.role-icon,.card-icon{width:44px;height:44px;color:var(--color-blue);background:var(--color-blue-soft);border-radius:50%;place-items:center;font-weight:700;display:grid}.role-option.selected .role-icon{color:var(--color-green-text);background:var(--color-surface)}.role-option strong,.role-option small{display:block}.role-option strong{color:var(--color-navy);font-size:var(--font-card-title);font-weight:600}.role-option small{color:var(--color-muted);font-size:var(--font-secondary);margin-top:2px}.legal-page{width:min(100% - 2 * var(--page-gutter), var(--content-width));padding:var(--space-6) 0 var(--space-12);margin:0 auto}.legal-document{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.legal-document h2{margin:var(--space-6) 0 var(--space-2)}.legal-document p,.legal-document li{color:var(--color-text);font-size:var(--font-body)}.legal-document ul{margin:0 0 var(--space-3);padding-left:var(--space-5)}.legal-meta{color:var(--color-muted);font-size:var(--font-secondary)}.legal-page .brand-logo{margin-bottom:var(--space-5)}.brand-logo{align-items:center;gap:var(--space-2);color:var(--color-navy);display:inline-flex}.brand-logo-mark{flex:none;width:44px;height:45px}.brand-logo-compact .brand-logo-mark{width:34px;height:35px}.brand-logo-copy{line-height:1.1;display:grid}.brand-logo-name{color:var(--color-navy);letter-spacing:-.01em;font-size:22px;font-weight:800}.brand-logo-compact .brand-logo-name{font-size:17px}.cabinet-user-name{margin:var(--space-2) 0 0;color:var(--color-navy);font-size:var(--font-body);overflow-wrap:anywhere;font-weight:600}.cabinet-user-email{color:var(--color-muted);font-size:var(--font-secondary);overflow-wrap:anywhere;margin:2px 0 0}.sidebar-illustration{width:100%;height:auto;max-height:260px;display:block}.ill-cloud{fill:var(--illustration-cloud)}.ill-hill-back{fill:var(--illustration-hill-back)}.ill-hill{fill:var(--illustration-hill)}.ill-trunk{fill:var(--illustration-trunk)}.ill-tree{fill:var(--illustration-tree)}.ill-tree-dark{fill:var(--illustration-tree-dark)}.ill-book-red{fill:var(--illustration-book-red)}.ill-book-blue{fill:var(--illustration-book-blue)}.ill-book-yellow{fill:var(--illustration-book-yellow)}.ill-pages{fill:var(--illustration-pages)}.ill-open-book{fill:var(--illustration-pages);stroke:var(--illustration-book-blue);stroke-width:2px;stroke-linejoin:round}.ill-star{fill:var(--illustration-star)}.cabinet-layout{background:var(--color-bg);min-height:100vh}.cabinet-sidebar{display:none}.cabinet-topbar{z-index:15;justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);min-height:56px;padding:var(--space-2) var(--page-gutter);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap;display:flex;position:sticky;top:0}.cabinet-topbar-actions{justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.cabinet-logout-button{align-items:center;gap:var(--space-2);min-height:var(--touch-target);padding:0 var(--space-2);border-radius:var(--radius-button);color:var(--color-muted);background:0 0;border:0;font-weight:500;display:inline-flex}.cabinet-logout-button:hover{color:var(--color-navy);background:var(--color-blue-soft)}.cabinet-content{min-width:0;padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--space-6))}.cabinet-content.menu-hidden{padding-bottom:var(--space-6)}.cabinet-content>main{width:min(100% - 2 * var(--page-gutter), var(--content-width));padding:var(--space-6) 0 var(--space-8);margin:0 auto}.cabinet-bottom-nav{z-index:20;padding:0 var(--space-2) env(safe-area-inset-bottom,0px);border-top:1px solid var(--color-border);background:var(--color-surface);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.cabinet-bottom-item{min-width:0;min-height:var(--bottom-nav-height);padding:var(--space-2) 2px;color:var(--color-navy);font-size:var(--font-nav);overflow-wrap:anywhere;background:0 0;border:0;align-content:center;justify-items:center;gap:2px;font-weight:500;display:grid;position:relative}.cabinet-bottom-item .icon{color:var(--color-muted)}.cabinet-bottom-item.active{color:var(--color-green-text)}.cabinet-bottom-item.active .icon{color:var(--color-green)}.cabinet-bottom-item.active:before{content:"";background:var(--color-green);border-radius:0 0 3px 3px;height:3px;position:absolute;top:0;left:25%;right:25%}.cabinet-role-switch{align-items:center;gap:var(--space-2);min-height:var(--touch-target);color:var(--color-navy);font-size:var(--font-body);display:inline-flex}.cabinet-role-option{min-height:var(--touch-target);border-radius:var(--radius-nav);color:var(--color-muted);cursor:pointer;align-items:center;font-weight:500;display:inline-flex;position:relative}.cabinet-role-option:hover{color:var(--color-navy)}.cabinet-role-option.is-current{color:var(--color-navy);font-weight:700}.cabinet-role-option:focus-within{outline:2px solid var(--color-blue);outline-offset:2px}.cabinet-role-switch.is-busy .cabinet-role-option{cursor:progress;opacity:.6}.cabinet-role-separator{color:var(--color-disabled)}@media (width>=1080px){.cabinet-layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);align-items:start;display:grid}.cabinet-sidebar{height:100vh;padding:var(--space-8) 0 0;border-right:1px solid var(--color-border);background:var(--color-sidebar-bg);flex-direction:column;display:flex;position:sticky;top:0;overflow:hidden auto}.cabinet-sidebar .cabinet-brand{margin:0 var(--space-6) var(--space-8)}.cabinet-sidebar .cabinet-role-switch{margin:calc(-1 * var(--space-4)) var(--space-6) var(--space-4)}.cabinet-sidebar-nav{gap:var(--space-1);padding:0 var(--space-4);display:grid}.cabinet-sidebar .nav-item{align-items:center;gap:var(--space-3);min-height:48px;padding:0 var(--space-4);border-radius:var(--radius-nav);color:var(--color-navy);font-size:var(--font-body);text-align:left;background:0 0;border:0;font-weight:500;display:flex}.cabinet-sidebar .nav-item .icon{color:var(--color-navy)}.cabinet-sidebar .nav-item:hover{background:var(--color-surface)}.cabinet-sidebar .nav-item.active{color:var(--color-green-text);background:var(--color-green-soft);font-weight:600}.cabinet-sidebar .nav-item.active .icon{color:var(--color-green)}.cabinet-sidebar .cabinet-logout{margin:var(--space-2) var(--space-4) 0;color:var(--color-muted)}.cabinet-sidebar .sidebar-illustration{margin-top:auto}.cabinet-topbar,.cabinet-bottom-nav{display:none}.cabinet-content,.cabinet-content.menu-hidden{padding-bottom:var(--space-12)}}.app-layout{min-height:100%}.app-content{width:min(100% - 2 * var(--page-gutter), var(--content-width));padding:var(--space-6) 0 var(--space-8);margin:0 auto}.app-header{margin-bottom:var(--space-5)}.app-header h1{margin:0}.dashboard{gap:var(--space-4);display:grid}.welcome-panel{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-green-soft)}.welcome-panel .eyebrow{color:var(--color-green-text)}.welcome-panel h2{margin:var(--space-1) 0 var(--space-2)}.welcome-panel p{color:var(--color-text);margin:0}.dashboard-grid{gap:var(--space-3);display:grid}.dashboard-card{align-content:start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.dashboard-card h3{margin:var(--space-2) 0 0}.dashboard-card p{margin:0 0 var(--space-2);color:var(--color-muted)}.dashboard-card .secondary-button{justify-self:start}@media (width>=768px){.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.profile-page{gap:var(--space-4);display:grid}.profile-page section[aria-label=Роли\ пользователя]{gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-divider);display:grid}.profile-page section[aria-label=Роли\ пользователя] p{color:var(--color-muted);margin:0}.profile-page ul[aria-label=Выбранные\ файлы]{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.profile-page ul[aria-label=Выбранные\ файлы] li{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);flex-wrap:wrap;display:flex}.profile-page ul[aria-label=Выбранные\ файлы] li button{min-height:var(--touch-target);color:var(--color-error-text);background:0 0;border:0;font-weight:500}.invite-page{min-height:100vh;padding:var(--space-6) var(--page-gutter) 120px;background:var(--color-bg)}.invite-panel{width:min(100%,640px);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);margin:0 auto}.invite-heading{margin:var(--space-6) 0 var(--space-5)}.invite-heading h1{margin:var(--space-1) 0 var(--space-2)}.invite-heading>p:last-child{color:var(--color-muted);margin:0}.invite-loader{padding:var(--space-5);border-radius:var(--radius-field);color:var(--color-muted);background:var(--color-bg);text-align:center}.invite-club-card{gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:56px 1fr;display:grid}.invite-club-mark{width:56px;height:56px;color:var(--color-teal);background:var(--color-green-soft);border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid}.invite-club-card h2{margin:2px 0 var(--space-2);font-size:var(--font-card-title)}.invite-club-meta{margin:var(--space-1) 0;color:var(--color-muted);font-size:var(--font-secondary)}.invite-schedule{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.invite-schedule span{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:var(--color-blue);background:var(--color-blue-soft);font-size:var(--font-secondary);font-weight:500}.invite-role-note{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-field);background:var(--color-bg)}.invite-children{gap:var(--space-3);margin-top:var(--space-5);display:grid}.invite-children h2{font-size:var(--font-card-title);margin:0}.invite-children-empty{color:var(--color-muted);margin:0}.invite-children-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.invite-child-row{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);align-items:center;display:grid}.invite-child-copy{gap:var(--space-1);justify-items:start;min-width:0;display:grid}.invite-child-copy strong{overflow-wrap:anywhere;color:var(--color-navy)}.invite-child-copy .child-state{margin:0}.invite-child-note{color:var(--color-muted);font-size:var(--font-secondary);margin:0}.invite-child-copy .field-error{margin:0}.invite-add-child{justify-self:start}.invite-role-note p{margin:var(--space-1) 0 0;color:var(--color-muted)}.invite-actions{z-index:10;gap:var(--space-2);padding:var(--space-3) var(--page-gutter) calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border);background:var(--color-surface);display:grid;position:fixed;bottom:0;left:0;right:0}@media (width>=768px){.invite-panel{padding:var(--space-8)}.invite-child-row{grid-template-columns:minmax(0,1fr) auto}.invite-actions{margin-top:var(--space-6);background:0 0;border:0;padding:0;position:static}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.child-avatar{--avatar-hair-light:color-mix(in srgb, var(--avatar-hair) 83%, #d79560);--avatar-hair-dark:color-mix(in srgb, var(--avatar-hair) 77%, #251b22);--avatar-hair-shine:color-mix(in srgb, var(--avatar-hair) 65%, #edb375);--avatar-skin-light:color-mix(in srgb, var(--avatar-skin) 88%, #fff0d4);--avatar-skin-shadow:color-mix(in srgb, var(--avatar-skin) 78%, #ac5942);--avatar-shirt-light:color-mix(in srgb, var(--avatar-shirt) 83%, #fff1cf);--avatar-shirt-shadow:color-mix(in srgb, var(--avatar-shirt) 78%, #293d49);--avatar-background-light:color-mix(in srgb, var(--avatar-background) 90%, #fff7dd);--avatar-strap:#f3ca74;--avatar-cream:#fff7e8;--avatar-blush:#ed816f;--avatar-nose:color-mix(in srgb, var(--avatar-skin) 45%, #ad5d45);--avatar-ink:#30242a;--avatar-mouth:#672e36;--avatar-tongue:#e58285;vertical-align:middle;isolation:isolate;border-radius:50%;flex:none;display:inline-flex;overflow:hidden}.child-avatar svg{width:100%;height:100%;display:block}.child-avatar-large{width:136px;height:136px}.child-avatar-small{width:56px;height:56px}.avatar-preview-panel .child-avatar-large{width:192px;height:192px}.child-avatar-empty{color:var(--color-blue);background:var(--color-blue-soft);place-items:center;font-weight:700;display:grid}@media (width>=768px){.child-avatar-small{width:72px;height:72px}.avatar-preview-panel .child-avatar-large{width:208px;height:208px}}.children-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.children-header .inline-link{flex-basis:100%}.children-header h1{margin:0}.add-child-button.primary-button{min-height:var(--button-secondary-height);padding:0 var(--space-4);font-size:var(--font-body)}.child-info-note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-blue);background:var(--color-blue-soft)}.children-loading{padding:var(--space-8);color:var(--color-muted);text-align:center}.children-empty{justify-items:center;gap:var(--space-3);padding:var(--space-10) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;display:grid}.children-empty h2,.children-empty p{margin-bottom:0}.children-empty p{max-width:480px;color:var(--color-muted)}.children-empty-icon{width:72px;height:72px;color:var(--color-blue);background:var(--color-blue-soft);border-radius:50%;place-items:center;font-size:24px;font-weight:700;display:grid}.children-list{gap:var(--space-3);display:grid}.child-card{gap:var(--space-3) var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.child-card-body{min-width:0}.child-card-body h2{margin:0 0 var(--space-1);font-size:var(--font-card-title);overflow-wrap:anywhere}.child-card-body>p{margin:var(--space-1) 0;color:var(--color-muted);font-size:var(--font-secondary)}.child-state{margin-top:var(--space-2)!important}.child-card-actions{gap:var(--space-2);grid-column:1/-1;display:grid}.child-clubs-button,.child-card-actions .child-edit-button{width:100%}.child-club-rows{gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.child-club-row{gap:2px var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-bg);grid-template-columns:minmax(0,1fr);display:grid}.child-club-title{color:var(--color-navy);overflow-wrap:anywhere;font-weight:600}.child-club-schedule{color:var(--color-muted);font-size:var(--font-secondary)}.child-club-row .child-state{justify-self:start;margin:var(--space-1) 0 0!important}.child-form{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.avatar-form-section{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.avatar-form-section h2{margin-bottom:var(--space-1)}.avatar-form-section p{margin-bottom:var(--space-3);color:var(--color-muted);font-size:var(--font-secondary)}.sticky-save-button{z-index:5;bottom:var(--space-3);width:100%;position:sticky}.avatar-editor-layout{gap:var(--space-5);align-items:start;display:grid}.avatar-editor-controls{gap:var(--space-5);min-width:0;display:grid}.avatar-editor-controls .avatar-setting{margin:0}.avatar-preview-panel{justify-items:center;gap:var(--space-3);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;display:grid}.avatar-preview-panel h2{margin:var(--space-1) 0 0;font-size:var(--font-section-title)}.avatar-preview-panel p{color:var(--color-muted);font-size:var(--font-secondary);margin:0}.avatar-setting{min-width:0;margin:var(--space-4) 0 0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.avatar-setting legend{padding:0 var(--space-2);color:var(--color-navy);font-weight:600}.avatar-type-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.avatar-type-grid .child-avatar,.hairstyle-grid .child-avatar{aspect-ratio:1;max-width:100%;height:auto}.avatar-type-grid button,.hairstyle-grid button{justify-items:center;gap:var(--space-2);min-width:0;min-height:var(--touch-target);padding:var(--space-2) var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-field);color:var(--color-muted);background:var(--color-surface);font-size:var(--font-hint);font-weight:500;display:grid}.avatar-type-grid button.selected,.hairstyle-grid button.selected{border-color:var(--color-green-border);color:var(--color-green-text);background:var(--color-green-soft)}.avatar-choice-label{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--space-5);display:inline-flex}.avatar-choice-label .icon{flex:none}.avatar-setting-value{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--font-hint)}.avatar-settings-grid{gap:var(--space-4);display:grid}.color-palette{gap:var(--space-3);flex-wrap:wrap;display:flex}.color-palette button{width:var(--touch-target);height:var(--touch-target);border:3px solid var(--color-surface);box-shadow:0 0 0 1px var(--color-border);border-radius:50%;place-items:center;padding:0;display:grid}.color-palette button.selected{box-shadow:0 0 0 3px var(--color-green)}.palette-check{border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-surface);place-items:center;display:grid}.avatar-editor-controls button:focus-visible{outline:2px solid var(--color-blue);outline-offset:var(--space-1)}.hairstyle-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=768px){.child-card{padding:var(--space-5);grid-template-columns:auto minmax(0,1fr) auto}.child-card-actions{grid-column:auto;min-width:180px}.child-club-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.child-club-row .child-state{grid-area:1/2/span 2;margin:0!important}.child-form{padding:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}.child-form .checkbox-field,.child-form .avatar-form-section,.child-form .child-info-note,.child-form .sticky-save-button{grid-column:1/-1}.avatar-type-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.avatar-settings-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.hairstyle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sticky-save-button{position:static}}@media (width>=1080px){.avatar-editor-layout{gap:var(--space-6);grid-template-columns:232px minmax(0,1fr)}.avatar-preview-panel{top:var(--space-6);padding:var(--space-4);position:sticky}.avatar-preview-panel .child-avatar-large{width:192px;height:192px}.avatar-editor-controls .hairstyle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.enrollment-loading{padding:var(--space-8) var(--space-5);color:var(--color-muted);text-align:center}.section-title{align-items:center;gap:var(--space-2);margin:var(--space-6) 0 var(--space-3);color:var(--color-navy);font-size:var(--font-section-title);font-weight:700;display:flex}.section-title .icon{color:var(--color-blue)}.child-summary-card{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.child-summary-copy{min-width:0}.child-summary-copy h2{margin:0 0 var(--space-1);font-size:var(--font-card-title);overflow-wrap:anywhere;font-weight:600}.child-summary-birth,.club-schedule{color:var(--color-muted);font-size:var(--font-secondary);align-items:center;gap:6px;margin:0;display:flex}.child-summary-birth:before,.club-schedule:before{content:"";background:currentColor;flex:none;width:16px;height:16px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round'%3E%3Crect x='4' y='5.5' width='16' height='14.5' rx='2.5'/%3E%3Cpath d='M8 3.5v4M16 3.5v4M4 10h16'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round'%3E%3Crect x='4' y='5.5' width='16' height='14.5' rx='2.5'/%3E%3Cpath d='M8 3.5v4M16 3.5v4M4 10h16'/%3E%3C/svg%3E") 50%/contain no-repeat}.child-summary-edit.secondary-button{min-height:36px;padding:0 var(--space-3);font-size:var(--font-secondary)}@media (width<=767px){.child-summary-card{gap:var(--space-2) var(--space-3);padding:var(--space-3)}.child-summary-copy h2{font-size:15px}.child-summary-edit.secondary-button{padding:0 var(--space-2);gap:6px}}.enrollment-state{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.enrollment-state h2,.enrollment-state p{margin:0}.enrollment-state h2{font-size:var(--font-card-title)}.enrollment-state p{margin-top:var(--space-1);color:var(--color-muted)}.enrollment-state-icon{width:40px;height:40px;color:var(--color-blue);background:var(--color-blue-soft);border-radius:50%;place-items:center;display:grid}.enrollment-state-pending .enrollment-state-icon{color:var(--color-warning-text);background:var(--color-warning-soft)}.enrollment-state-approved .enrollment-state-icon{color:var(--color-green-text);background:var(--color-green-soft)}.enrollment-state-rejected .enrollment-state-icon,.enrollment-state-cancelled_by_parent .enrollment-state-icon,.enrollment-state-removed_by_teacher .enrollment-state-icon{color:var(--color-error-text);background:var(--color-error-soft)}.enrollment-empty{justify-items:start;gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.enrollment-empty h2,.enrollment-empty p{margin:0}.enrollment-empty p{color:var(--color-muted)}.enrollment-neutral{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-muted);font-size:var(--font-secondary);margin:0}.enrollment-club-list{gap:var(--space-4);display:grid}.enrollment-club-card{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.enrollment-club-heading{align-items:center;gap:var(--space-2) var(--space-4);grid-template-columns:auto minmax(0,1fr);display:grid}.club-illustration{width:56px;height:56px;color:var(--color-teal);background:var(--color-green-soft);border-radius:50%;place-items:center;display:grid}.enrollment-club-copy{gap:2px;min-width:0;display:grid}.enrollment-club-copy h3,.enrollment-club-copy p{margin:0}.enrollment-club-copy h3{font-size:var(--font-card-title);overflow-wrap:anywhere;font-weight:700}.enrollment-club-copy>p:not(.club-schedule){color:var(--color-muted);font-size:var(--font-secondary)}.enrollment-club-heading .enrollment-status-badge{grid-column:2}.enrollment-club-details{gap:var(--space-2);margin:0;display:grid}.enrollment-club-details div{gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-divider);grid-template-columns:92px minmax(0,1fr);display:grid}.enrollment-club-details div:last-child{border-bottom:0;padding-bottom:0}.enrollment-club-details dt{color:var(--color-muted);font-size:var(--font-secondary)}.enrollment-club-details dd{overflow-wrap:anywhere;margin:0}.enrollment-age-warning,.enrollment-age-note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);font-size:var(--font-secondary);margin:0}.enrollment-age-warning{color:var(--color-warning-text);background:var(--color-warning-soft)}.enrollment-age-note{color:var(--color-muted);background:var(--color-bg)}.enrollment-actions{gap:var(--space-2);display:grid}.enrollment-actions:empty{display:none}.enrollment-actions>button{width:100%}.enrollment-confirm{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-error);border-radius:var(--radius-card);background:var(--color-error-soft);display:grid}.enrollment-confirm p{margin:0}.enrollment-confirm>div{gap:var(--space-2);display:grid}.enrollment-confirm button{width:100%}@media (width>=768px){.child-summary-card,.enrollment-club-card{padding:var(--space-5)}.enrollment-club-heading{grid-template-columns:auto minmax(0,1fr) auto}.club-illustration{width:72px;height:72px}.enrollment-club-heading .enrollment-status-badge{grid-column:3;justify-self:end}.enrollment-club-details{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.enrollment-club-details div{border:0;grid-template-columns:1fr;gap:2px;padding:0}.enrollment-actions{grid-template-columns:repeat(2,minmax(0,max-content));justify-content:end}.enrollment-actions>button{width:auto}.enrollment-confirm{grid-column:1/-1}.enrollment-confirm>div{grid-template-columns:repeat(2,minmax(0,max-content));justify-content:end}.enrollment-confirm button{width:auto}}.teacher-enrollment-loading{padding:var(--space-8);color:var(--color-muted);text-align:center}.teacher-enrollment-empty,.teacher-neutral-empty{justify-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;display:grid}.teacher-enrollment-empty span{width:56px;height:56px;color:var(--color-green-text);background:var(--color-green-soft);border-radius:50%;place-items:center;font-size:22px;font-weight:700;display:grid}.teacher-enrollment-empty h2,.teacher-enrollment-empty p,.teacher-neutral-empty p{margin:0}.teacher-enrollment-empty p,.teacher-neutral-empty p{color:var(--color-muted)}.teacher-t10-section{gap:var(--space-3);margin-top:var(--space-6);display:grid}.teacher-section-heading{justify-content:space-between;align-items:end;gap:var(--space-4);display:flex}.teacher-section-heading h2,.teacher-section-heading p{margin:0}.teacher-section-heading h2{margin-top:var(--space-1)}.teacher-section-heading>span{min-width:32px;height:32px;padding:0 var(--space-2);border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-blue-soft);place-items:center;font-weight:600;display:grid}.teacher-request-list,.teacher-participant-list{gap:var(--space-3);display:grid}.teacher-request-list{margin:0;padding:0;list-style:none}.teacher-request-actions{gap:var(--space-2);display:grid}.teacher-request-card,.teacher-participant-card,.teacher-request-detail,.teacher-child-detail{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.teacher-request-card{gap:var(--space-3);padding:var(--space-4);display:grid}.teacher-request-card-new{border-color:var(--color-error);background:var(--color-error-soft)}.teacher-new-label{margin:var(--space-1) 0 0}.teacher-request-card h3,.teacher-request-card p{margin:0}.teacher-request-card h3{margin:var(--space-1) 0}.teacher-request-card .primary-button,.teacher-request-card .secondary-button{width:100%}.teacher-participant-card{gap:var(--space-3);padding:var(--space-4);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.teacher-participant-body{min-width:0}.teacher-participant-body h3,.teacher-participant-body p{margin:0}.teacher-participant-body h3{margin:var(--space-1) 0 var(--space-2);overflow-wrap:anywhere}.teacher-part-accesses{flex-wrap:wrap;gap:6px;display:flex}.teacher-part-accesses span{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--font-hint);font-weight:600}.teacher-part-accesses .is-open{color:var(--color-green-text);background:var(--color-green-soft)}.teacher-part-accesses .is-locked{color:var(--color-muted);background:var(--color-disabled-bg)}.teacher-participant-menu{align-self:start;position:relative}.teacher-participant-menu-trigger{width:var(--touch-target);height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-navy);background:var(--color-surface);place-items:center;padding:0;font-size:20px;font-weight:700;line-height:1;display:grid}.teacher-participant-menu-trigger[aria-expanded=true]{border-color:var(--color-blue);background:var(--color-blue-soft)}.teacher-participant-menu-popover{z-index:4;top:calc(100% + var(--space-2));border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);min-width:210px;max-width:calc(100vw - 48px);box-shadow:var(--shadow-float);padding:6px;display:grid;position:absolute;right:0}.teacher-participant-menu-popover button{width:100%;min-height:var(--touch-target);padding:0 var(--space-3);border-radius:var(--radius-button);color:var(--color-text);text-align:left;background:0 0;border:0;font-weight:500}.teacher-participant-menu-popover button:hover,.teacher-participant-menu-popover button:focus-visible{background:var(--color-blue-soft)}.teacher-participant-menu-popover .teacher-participant-menu-danger{color:var(--color-error-text)}.teacher-participant-remove-confirmation,.teacher-reject-panel,.teacher-remove-panel{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-error);border-radius:var(--radius-card);background:var(--color-error-soft);display:grid}.teacher-participant-remove-confirmation{grid-column:1/-1}.teacher-participant-remove-confirmation h3,.teacher-participant-remove-confirmation p,.teacher-reject-panel h2,.teacher-reject-panel p,.teacher-remove-panel h2,.teacher-remove-panel p{margin:0}.teacher-participant-remove-confirmation p{color:var(--color-muted)}.teacher-request-detail,.teacher-child-detail{gap:var(--space-4);padding:var(--space-4);display:grid}.teacher-detail-block{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg)}.teacher-detail-block h2,.teacher-detail-block p{margin:0}.teacher-detail-block h2{margin:var(--space-1) 0 var(--space-2)}.teacher-detail-block p:not(.eyebrow){margin-top:var(--space-1);color:var(--color-muted)}.teacher-detail-club ul{margin:var(--space-3) 0 0;padding-left:var(--space-5)}.teacher-child-hero{align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);background:var(--color-bg);display:flex}.teacher-child-hero h2,.teacher-child-hero p{margin:0}.teacher-child-hero h2{margin:var(--space-1) 0 var(--space-2)}.teacher-part-accesses-large{display:grid}.teacher-child-documents-note{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-muted)}.teacher-child-documents-note strong{color:var(--color-navy)}.teacher-child-documents-note p{margin:var(--space-1) 0 0}.teacher-decision-actions{gap:var(--space-2);display:grid}.teacher-decision-actions button,.teacher-remove-button{width:100%}.danger-button{min-height:var(--button-secondary-height);padding:0 var(--space-4);border:1px solid var(--color-error);border-radius:var(--radius-button);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.teacher-reject-panel label{margin-top:var(--space-1);font-weight:600}.teacher-reject-panel textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-surface);resize:vertical}.teacher-reject-panel>p:last-of-type{color:var(--color-muted);font-size:var(--font-hint);text-align:right}@media (width>=768px){.teacher-request-card{padding:var(--space-5);grid-template-columns:1fr auto;align-items:center}.teacher-request-card .primary-button,.teacher-request-card .secondary-button{width:auto}.teacher-request-actions{grid-auto-flow:column;align-items:center}.teacher-participant-card{padding:var(--space-5)}.teacher-request-detail,.teacher-child-detail{padding:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-child-hero,.teacher-detail-club,.teacher-decision-actions,.teacher-reject-panel,.teacher-remove-panel,.teacher-child-documents-note,.teacher-remove-button{grid-column:1/-1}.teacher-decision-actions{grid-template-columns:repeat(2,minmax(0,max-content));justify-content:end}.teacher-decision-actions button{width:auto}}@media (width>=1080px){.teacher-request-list,.teacher-participant-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.teacher-request-card{grid-template-columns:1fr}.teacher-request-card .primary-button,.teacher-request-card .secondary-button{width:100%}.teacher-request-actions{grid-auto-flow:row}}.commerce-page{width:min(100% - 2 * var(--page-gutter), var(--content-width));padding:var(--space-6) 0 var(--space-8);margin:0 auto}.commerce-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.commerce-detail-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.commerce-detail-card ul{margin:var(--space-2) 0 var(--space-4);padding-left:var(--space-5)}.commerce-detail-card h2{margin-top:0}.commerce-detail-card li{justify-content:space-between;gap:var(--space-3);margin:var(--space-2) 0;display:flex}.attendance-page{--attendance-child-width:190px}.attendance-pending-card{justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-4);border:1px solid var(--color-error);border-radius:var(--radius-card);background:var(--color-error-soft);flex-wrap:wrap;display:flex}.attendance-pending-card p{margin:var(--space-1) 0 0;color:var(--color-muted)}.attendance-scroll{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);max-height:calc(100vh - 220px);box-shadow:var(--shadow-card);overscroll-behavior:contain;overflow:auto}.attendance-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:var(--font-secondary)}.attendance-table th,.attendance-table td{width:156px;min-width:156px;padding:var(--space-2);border-right:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);background:var(--color-surface);text-align:center;vertical-align:middle}.attendance-table thead th{z-index:4;color:var(--color-navy);background:var(--color-bg);font-weight:600;position:sticky;top:0}.attendance-table thead th span,.attendance-table thead th strong,.attendance-table thead th small{display:block}.attendance-table thead th strong{font-size:var(--font-body);margin:2px 0}.attendance-table thead th small{color:var(--color-muted);font-weight:400}.attendance-table .attendance-child-column{z-index:5;width:var(--attendance-child-width);min-width:var(--attendance-child-width);max-width:var(--attendance-child-width);background:var(--color-surface);text-align:left;position:sticky;left:0}.attendance-table thead .attendance-child-column{z-index:7;background:var(--color-bg)}.attendance-child-column strong{color:var(--color-navy);font-size:var(--font-body);font-weight:600;display:block}.attendance-blocked-reason{margin-top:var(--space-1);color:var(--color-error-text);font-size:var(--font-hint);font-weight:500;display:block}.attendance-table .attendance-focus-column{z-index:3;left:var(--attendance-child-width);background:var(--color-green-soft);box-shadow:inset 2px 0 var(--color-green), inset -2px 0 var(--color-green);position:sticky}.attendance-table thead .attendance-focus-column{z-index:6;background:var(--color-green-soft)}.attendance-legend{gap:var(--space-2) var(--space-5);margin:0 0 var(--space-4);color:var(--color-navy);font-size:var(--font-secondary);flex-wrap:wrap;padding:0;list-style:none;display:flex}.attendance-legend li{align-items:center;gap:var(--space-2);display:inline-flex}.attendance-mark-icon{border-radius:var(--radius-pill);place-items:center;width:28px;height:28px;display:inline-grid}.attendance-mark-present{color:var(--color-green-text)}.attendance-mark-absent{color:var(--color-error-text)}.attendance-mark-excused_absence{color:var(--color-warning-text)}.attendance-mark-icon.attendance-mark-present{background:var(--color-green-soft)}.attendance-mark-icon.attendance-mark-absent{background:var(--color-error-soft)}.attendance-mark-icon.attendance-mark-excused_absence{background:var(--color-warning-soft)}.attendance-mark-group{justify-content:center;gap:var(--space-1);display:flex}.attendance-mark-button{width:var(--touch-target);height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-muted);background:var(--color-surface);place-items:center;padding:0;display:grid}.attendance-mark-button.selected.attendance-mark-present{border-color:var(--color-green);color:var(--color-green-text);background:var(--color-green-soft)}.attendance-mark-button.selected.attendance-mark-absent{border-color:var(--color-error);color:var(--color-error-text);background:var(--color-error-soft)}.attendance-mark-button.selected.attendance-mark-excused_absence{border-color:var(--color-warning);color:var(--color-warning-text);background:var(--color-warning-soft)}.attendance-mark-button:focus-visible,.attendance-date-button:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}.attendance-date-button{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--touch-target);padding:0 var(--space-2);border-radius:var(--radius-button);color:var(--color-blue);background:0 0;border:0;margin:2px auto;display:inline-flex}.attendance-date-button strong{font-size:var(--font-body)}.attendance-date-editor{gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.attendance-date-editor h2{font-size:var(--font-section-title);margin:0}.attendance-date-editor p{margin:0}.attendance-date-actions{justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.attendance-sync-state,.attendance-sync-error{margin-top:var(--space-1);font-size:11px;display:block}.attendance-sync-state{color:var(--color-muted)}.attendance-sync-error{color:var(--color-error-text);font-weight:600}.attendance-cell-error{background:var(--color-error-soft)!important}.attendance-retry{margin-top:var(--space-1);color:var(--color-blue);font-size:var(--font-hint);background:0 0;border:0;padding:2px 6px;font-weight:600;text-decoration:underline}.attendance-locked-label{color:var(--color-muted);font-size:var(--font-hint);line-height:1.25;display:inline-block}@media (width<=640px){.attendance-page{--attendance-child-width:148px}.attendance-pending-card .secondary-button{width:100%}.attendance-scroll{border-radius:var(--radius-field);max-height:calc(100vh - 250px)}.attendance-table th,.attendance-table td{width:150px;min-width:150px;padding:6px}.attendance-date-actions .secondary-button,.attendance-date-actions .primary-button{flex:1}}.materials-page{gap:var(--space-4);display:grid}.materials-loading{padding:var(--space-5);color:var(--color-muted);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.materials-lessons{gap:var(--space-6);display:grid}.materials-part{gap:var(--space-3);display:grid}.materials-part-heading{justify-content:space-between;align-items:end;gap:var(--space-4);display:flex}.materials-part-heading h2{margin:var(--space-1) 0 0}.materials-lesson-grid{gap:var(--space-2);display:grid}.materials-lesson-card{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:44px minmax(0,1fr);align-items:center;display:grid}.materials-lesson-card .secondary-button{grid-column:1/-1;width:100%}.materials-lesson-card.locked_part,.materials-lesson-card.closed{background:var(--color-bg);box-shadow:none}.materials-lesson-card.conducted{border-color:var(--color-green-border)}.materials-lesson-card.future{border-style:dashed}.materials-lesson-number{width:44px;height:44px;color:var(--color-green-text);background:var(--color-green-soft);border-radius:50%;place-items:center;font-weight:700;display:grid}.materials-lesson-card.locked_part .materials-lesson-number,.materials-lesson-card.closed .materials-lesson-number{color:var(--color-muted);background:var(--color-disabled-bg)}.materials-lesson-copy{min-width:0}.materials-lesson-copy h3{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-body);margin:0 0 2px;font-weight:600;overflow:hidden}.materials-lesson-copy p{color:var(--color-muted);font-size:var(--font-secondary);margin-bottom:2px}.materials-lesson-copy small{color:var(--color-muted);font-size:var(--font-hint);display:block}.materials-detail-summary,.materials-file-card,.teacher-material-card,.materials-conduct-card{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.materials-detail-summary h2,.materials-file-card h2,.teacher-material-card h2,.materials-conduct-card h2{margin:var(--space-1) 0 0}.materials-expiry{padding:var(--space-2) var(--space-3);border-radius:var(--radius-field);background:var(--color-green-soft);justify-self:start;gap:2px;display:grid}.materials-expiry span{color:var(--color-muted);font-size:var(--font-hint)}.materials-video-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.materials-section-heading{margin-bottom:var(--space-3)}.materials-section-heading h2{margin:var(--space-1) 0 0}.materials-video{border-radius:var(--radius-field);background:var(--color-dark-media);width:100%;max-height:70vh;display:block}.materials-file-card p:last-child,.teacher-material-card p:last-child{color:var(--color-muted);margin-bottom:0}.materials-file-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.materials-file-actions .primary-button,.materials-file-actions .secondary-button,.materials-link-button{min-width:132px}.teacher-material-files{gap:var(--space-3);display:grid}.teacher-material-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.teacher-material-files .teacher-material-card{grid-template-columns:44px minmax(0,1fr);align-items:center}.teacher-material-files .teacher-material-card .materials-file-actions{grid-column:1/-1}.teacher-material-copy{min-width:0}.teacher-material-copy h2{overflow-wrap:anywhere}.teacher-lesson-tools{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-green-border);border-radius:var(--radius-card);background:var(--color-green-soft);display:grid}.teacher-lesson-tools h2{margin:var(--space-1) 0 var(--space-2)}.teacher-lesson-tools p:last-child{color:var(--color-text);margin-bottom:0}.materials-notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-field);color:var(--color-blue);background:var(--color-blue-soft);margin:0}.materials-conduct-card{align-items:center}.parent-material-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.materials-image{border-radius:var(--radius-field);object-fit:contain;max-width:100%;max-height:60vh;display:block}@media (width>=768px){.materials-lesson-card{grid-template-columns:48px minmax(0,1fr) auto}.materials-lesson-number{width:48px;height:48px}.materials-lesson-card .secondary-button{grid-column:auto;width:auto}.materials-detail-summary,.materials-file-card,.teacher-material-card,.materials-conduct-card{padding:var(--space-5);grid-template-columns:minmax(0,1fr) auto;align-items:center}.materials-expiry{justify-self:end}.teacher-lesson-tools{padding:var(--space-5);grid-template-columns:minmax(0,1fr) auto;align-items:center}.teacher-material-files .teacher-material-card{grid-template-columns:48px minmax(0,1fr) auto}.teacher-material-files .teacher-material-card .materials-file-actions{grid-column:auto}}
