@charset "UTF-8";:root{--fk-red: #e11d2e;--fk-red-dark: #be123c;--fk-red-light: #f87171;--fk-red-glow: rgba(225, 29, 46, .2);--fk-spacing-xs: .25rem;--fk-spacing-sm: .5rem;--fk-spacing-md: 1rem;--fk-spacing-lg: 1.5rem;--fk-spacing-xl: 2rem;--fk-spacing-2xl: 3rem;--fk-radius-sm: 8px;--fk-radius-md: 12px;--fk-radius-lg: 16px;--fk-radius-xl: 20px;--fk-radius-full: 9999px;--fk-transition-fast: .15s ease;--fk-transition-base: .2s ease;--fk-transition-slow: .3s ease}:root,:root[data-theme=dark]{color-scheme:dark;--fk-bg-main: #0a0e1a;--fk-bg-surface: #111827;--fk-bg-elevated: #1a1f2e;--fk-bg-hover: rgba(255, 255, 255, .05);--fk-text-primary: #ffffff;--fk-text-secondary: #e5e7eb;--fk-text-muted: #9ca3af;--fk-text-disabled: #6b7280;--fk-border: #1f2937;--fk-border-light: rgba(255, 255, 255, .1);--fk-border-hover: rgba(255, 255, 255, .15);--fk-focus-glow: rgba(225, 29, 46, .25);--fk-shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--fk-shadow-md: 0 8px 24px rgba(0, 0, 0, .4);--fk-shadow-lg: 0 16px 48px rgba(0, 0, 0, .5);--fk-shadow-xl: 0 24px 64px rgba(0, 0, 0, .6);--fk-sidebar-bg: radial-gradient(ellipse 90% 40% at 0% 0%, rgba(225, 29, 46, .12), transparent 55%), linear-gradient(180deg, rgba(17, 24, 39, .98), rgba(8, 12, 22, .98));--fk-mobile-sidebar-bg: linear-gradient( 180deg, rgba(17, 24, 39, .98), rgba(10, 14, 26, .98) );--fk-topbar-bg: linear-gradient( 180deg, rgba(17, 24, 39, .88), rgba(10, 14, 26, .78) );--fk-panel-bg: linear-gradient(180deg, rgba(17, 24, 39, .92), rgba(10, 14, 26, .88));--fk-card-bg: radial-gradient(ellipse 70% 80% at 0% 0%, rgba(225, 29, 46, .08), transparent 50%), linear-gradient(160deg, rgba(17, 24, 39, .96), rgba(8, 12, 22, .94));--fk-card-details-bg: rgba(3, 7, 18, .28);--fk-input-bg: rgba(10, 14, 26, .84);--fk-list-item-bg: rgba(255, 255, 255, .035);--fk-soft-card-bg: rgba(3, 7, 18, .4);--fk-table-mobile-row-bg: radial-gradient(ellipse 70% 80% at 0% 0%, rgba(225, 29, 46, .08), transparent 50%), linear-gradient(160deg, rgba(17, 24, 39, .96), rgba(8, 12, 22, .94));--fk-backdrop-bg: rgba(2, 6, 23, .68);--fk-theme-panel-bg: var(--fk-card-bg);--fk-theme-panel-border: var(--fk-border-light);--fk-theme-panel-shadow: var(--fk-shadow-md);--fk-theme-raised-bg: rgba(3, 7, 18, .42);--fk-theme-inset-bg: rgba(3, 7, 18, .35);--fk-theme-field-bg: #0b1220;--fk-theme-title: #ffffff;--fk-theme-copy: rgba(226, 232, 240, .72);--fk-theme-muted: rgba(226, 232, 240, .58)}:root[data-theme=light]{color-scheme:light;--fk-bg-main: #f8f5ef;--fk-bg-surface: #ffffff;--fk-bg-elevated: #fffaf4;--fk-bg-hover: rgba(15, 23, 42, .06);--fk-text-primary: #111827;--fk-text-secondary: #334155;--fk-text-muted: #64748b;--fk-text-disabled: #94a3b8;--fk-border: rgba(15, 23, 42, .12);--fk-border-light: rgba(15, 23, 42, .1);--fk-border-hover: rgba(15, 23, 42, .2);--fk-focus-glow: rgba(225, 29, 46, .18);--fk-shadow-sm: 0 2px 8px rgba(15, 23, 42, .08);--fk-shadow-md: 0 8px 24px rgba(15, 23, 42, .1);--fk-shadow-lg: 0 16px 48px rgba(15, 23, 42, .14);--fk-shadow-xl: 0 24px 64px rgba(15, 23, 42, .18);--fk-sidebar-bg: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 245, 239, .98));--fk-mobile-sidebar-bg: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 245, 239, .98));--fk-topbar-bg: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(248, 245, 239, .84));--fk-panel-bg: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(255, 250, 244, .92));--fk-card-bg: linear-gradient(160deg, rgba(255, 255, 255, .98), rgba(255, 250, 244, .95));--fk-card-details-bg: rgba(241, 245, 249, .68);--fk-input-bg: rgba(255, 255, 255, .92);--fk-list-item-bg: rgba(255, 255, 255, .74);--fk-soft-card-bg: rgba(255, 255, 255, .68);--fk-table-mobile-row-bg: linear-gradient(160deg, rgba(255, 255, 255, .98), rgba(255, 250, 244, .95));--fk-backdrop-bg: rgba(15, 23, 42, .35);--fk-theme-panel-bg: var(--fk-card-bg);--fk-theme-panel-border: var(--fk-border-light);--fk-theme-panel-shadow: var(--fk-shadow-md);--fk-theme-raised-bg: rgba(255, 255, 255, .78);--fk-theme-inset-bg: rgba(255, 255, 255, .68);--fk-theme-field-bg: rgba(255, 255, 255, .92);--fk-theme-title: var(--fk-text-primary);--fk-theme-copy: var(--fk-text-secondary);--fk-theme-muted: var(--fk-text-muted);--fk-theme-accent-text: #be123c;--fk-theme-accent-strong: #9f1239;--fk-theme-warning-text: #92400e;--fk-theme-warning-strong: #78350f;--fk-theme-success-text: #047857;--fk-theme-info-text: #075985;--fk-theme-danger-text: #991b1b;--fk-theme-accent-soft: rgba(225, 29, 46, .08);--fk-theme-warning-soft: rgba(245, 158, 11, .12);--fk-theme-success-soft: rgba(16, 185, 129, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{min-height:100%;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;line-height:1.6;background:var(--fk-bg-main);color:var(--fk-text-primary);overflow-x:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,select,input[type=checkbox]{touch-action:manipulation}input,select,textarea{min-width:0}input[type=checkbox]{appearance:none;-webkit-appearance:none;inline-size:24px;block-size:24px;flex:0 0 auto;display:inline-grid;place-content:center;margin:0;border:1px solid rgba(148,163,184,.32);border-radius:7px;background:var(--fk-input-bg);color:#fff;cursor:pointer;vertical-align:middle;box-shadow:inset 0 1px #ffffff14,0 8px 18px #00000038;transition:background var(--fk-transition-base),border-color var(--fk-transition-base),box-shadow var(--fk-transition-base),transform var(--fk-transition-base),opacity var(--fk-transition-base)}input[type=checkbox]:before{content:"";inline-size:7px;block-size:12px;margin-top:-2px;border:solid currentColor;border-width:0 2px 2px 0;opacity:0;transform:rotate(45deg) scale(.78);transition:opacity var(--fk-transition-fast),transform var(--fk-transition-fast)}input[type=checkbox]:hover:not(:disabled){border-color:#e11d2e94;box-shadow:inset 0 1px #ffffff1a,0 0 0 4px #e11d2e14,0 10px 24px #00000047}input[type=checkbox]:focus-visible{outline:none;border-color:#e11d2eb8;box-shadow:inset 0 1px #ffffff1f,0 0 0 4px var(--fk-focus-glow)}input[type=checkbox]:checked{border-color:#f87171b8;background:linear-gradient(135deg,var(--fk-red),var(--fk-red-dark)),var(--fk-red);box-shadow:inset 0 1px #fff3,0 10px 28px #e11d2e47}input[type=checkbox]:checked:before{opacity:1;transform:rotate(45deg) scale(1)}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--fk-text-primary)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{line-height:1.7;color:var(--fk-text-secondary)}@media(max-width:640px){body{font-size:15px}h1{font-size:1.65rem}h2{font-size:1.35rem}h3{font-size:1.15rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}a{color:var(--fk-red);text-decoration:none;transition:color var(--fk-transition-base)}a:hover{color:var(--fk-red-light)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--fk-bg-main)}::-webkit-scrollbar-thumb{background:var(--fk-border);border-radius:var(--fk-radius-full);border:2px solid var(--fk-bg-main)}::-webkit-scrollbar-thumb:hover{background:var(--fk-border-hover)}.fk-button-primary{padding:14px 24px;border-radius:var(--fk-radius-md);border:none;font-weight:600;font-size:15px;letter-spacing:.01em;color:#fff;background:linear-gradient(135deg,var(--fk-red),var(--fk-red-dark));box-shadow:0 4px 16px #e11d2e4d,0 0 #e11d2e00;cursor:pointer;transition:all var(--fk-transition-base);position:relative;overflow:hidden}.fk-button-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent);opacity:0;transition:opacity var(--fk-transition-base)}.fk-button-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #e11d2e66,0 0 0 4px #e11d2e1a}.fk-button-primary:hover:not(:disabled):before{opacity:1}.fk-button-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 16px #e11d2e4d,0 0 0 2px #e11d2e33}.fk-button-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.fk-button-ghost{padding:12px 20px;border-radius:var(--fk-radius-md);border:1px solid var(--fk-border);background:transparent;color:var(--fk-text-primary);font-weight:500;font-size:14px;cursor:pointer;transition:all var(--fk-transition-base)}.fk-button-ghost:hover:not(:disabled){background:var(--fk-bg-hover);border-color:var(--fk-border-hover);color:var(--fk-text-primary)}.fk-button-ghost:disabled{opacity:.5;cursor:not-allowed}.fk-password-control{position:relative;display:block;width:100%}.fk-password-control input{width:100%;padding-right:3.5rem}.fk-password-toggle{position:absolute;top:50%;right:.55rem;transform:translateY(-50%);display:inline-grid;place-items:center;width:42px;height:42px;min-width:42px;min-height:42px;margin-top:0;padding:0;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:#ffffff0f;color:var(--fk-text-muted);font-size:0;cursor:pointer;transition:color var(--fk-transition-base),border-color var(--fk-transition-base),background var(--fk-transition-base)}.fk-password-toggle .material-icons{font-size:22px;line-height:1}.fk-password-toggle:hover,.fk-password-toggle:focus-visible{color:var(--fk-text-primary);border-color:#e11d2e7a;background:#e11d2e1f;outline:none}select{color-scheme:inherit}select option{background:var(--fk-bg-surface);color:var(--fk-text-primary)}.modal-content,.admin-modal,.session-modal{position:relative}.modal-header,.admin-modal-header{padding-right:3rem}.modal-close,.admin-modal-close,.session-modal__close{position:absolute;top:1rem;right:1rem;z-index:4;display:inline-flex;align-items:center;justify-content:center;padding:0}.modal-close .material-icons,.admin-modal-close .material-icons,.session-modal__close .material-icons{font-size:20px;line-height:1}.fk-page{position:relative;isolation:isolate;width:min(1440px,100%);margin:0 auto;padding:var(--fk-spacing-xl);color:var(--fk-text-primary)}.fk-page:before{content:"";position:absolute;inset:-1.25rem -.5rem auto;height:14rem;z-index:-1;pointer-events:none;opacity:.9;background:radial-gradient(ellipse 48% 70% at 8% 0%,rgba(225,29,46,.1),transparent 70%),radial-gradient(ellipse 42% 55% at 92% 8%,rgba(148,163,184,.05),transparent 68%)}.fk-page-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin-bottom:1.25rem}.fk-page-hero__copy{min-width:0}.fk-eyebrow{margin:0 0 .4rem;color:#fecaca;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.fk-brand{margin:0;font-size:clamp(2.1rem,5vw,2.85rem);font-weight:900;letter-spacing:-.045em;line-height:.95}.fk-lead{margin:.55rem 0 0;max-width:34rem;color:var(--fk-text-muted);font-size:.95rem;line-height:1.45}.fk-page-hero__actions{display:flex;flex-wrap:wrap;gap:.55rem;flex-shrink:0}.fk-glass-panel{display:grid;gap:.95rem;margin-bottom:1rem;padding:1rem 1.05rem;border:1px solid var(--fk-border-light);border-radius:1.2rem;background:var(--fk-panel-bg);box-shadow:var(--fk-shadow-md)}.fk-glass-panel--row{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.fk-card-list{display:grid;gap:.85rem}.fk-row-card{overflow:hidden;border:1px solid var(--fk-border-light);border-radius:1.2rem;background:var(--fk-card-bg);box-shadow:var(--fk-shadow-md);transition:border-color .18s ease,box-shadow .18s ease}.fk-row-card:hover,.fk-row-card--open{border-color:#e11d2e47;box-shadow:var(--fk-shadow-lg)}.fk-row-card__summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem 1.1rem}.fk-row-card__details{display:grid;gap:.9rem;padding:0 1.1rem 1.1rem;border-top:1px solid var(--fk-border-light);background:var(--fk-card-details-bg)}.fk-kicker{display:block;color:var(--fk-text-muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.fk-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:0 .95rem;border-radius:.85rem;font-size:.86rem;font-weight:800;letter-spacing:-.01em;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.fk-btn .material-icons{font-size:1.1rem}.fk-btn:hover:not(:disabled){transform:translateY(-1px)}.fk-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.fk-btn--primary{border:0;background:linear-gradient(135deg,#e11d2e,#be123c);color:#fff;box-shadow:0 10px 22px #e11d2e42}.fk-btn--ghost{border:1px solid var(--fk-border-light);background:var(--fk-bg-hover);color:var(--fk-text-primary)}.fk-btn--danger{border:1px solid rgba(248,113,113,.28);background:#7f1d1d38;color:#fecaca}.fk-btn--confirm{border:1px solid rgba(34,197,94,.28);background:linear-gradient(135deg,#16a34a2e,#15803d1f);color:#86efac}.fk-empty{display:grid;justify-items:center;gap:.5rem;padding:2.5rem 1.25rem;border:1px dashed var(--fk-border-light);border-radius:1.2rem;text-align:center;color:var(--fk-text-muted);background:var(--fk-soft-card-bg)}.fk-empty .material-icons{font-size:2rem;color:#fecacabf}.fk-empty strong{color:var(--fk-text-primary);font-size:1.05rem}.fk-actions{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:1024px){.fk-page{padding:var(--fk-spacing-lg)}.fk-page:before{inset:-1rem -.75rem auto;height:14rem}.fk-page-hero{flex-direction:column;align-items:stretch}.fk-page-hero__actions{width:100%}.fk-page-hero__actions .fk-btn,.fk-page-hero__actions .admin-button,.fk-page-hero__actions .admin-button-secondary{flex:1 1 auto;min-height:48px}}@media(max-width:720px){.fk-page{padding:var(--fk-spacing-md)}.fk-glass-panel--row,.fk-actions{display:grid;grid-template-columns:1fr}.fk-row-card__summary{grid-template-columns:1fr;padding:.95rem}.fk-btn{width:100%;min-height:48px}}@media(max-width:420px){.fk-page{padding:.85rem .75rem calc(.85rem + env(safe-area-inset-bottom))}.fk-brand{font-size:clamp(1.85rem,9vw,2.25rem)}.fk-row-card__summary,.fk-row-card__details{padding-inline:.85rem}.fk-glass-panel{padding:.85rem}}.search-hero,.lessons-hero,.people-hero,.page-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin-bottom:1.25rem}.search-hero__copy,.lessons-hero__copy,.people-hero__copy,.page-hero__copy{min-width:0}.search-eyebrow,.lessons-eyebrow,.people-eyebrow,.page-hero__eyebrow{margin:0 0 .4rem;color:#fecaca;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.search-brand,.lessons-brand,.page-hero__title{margin:0;font-size:clamp(2.1rem,5vw,2.85rem);font-weight:900;letter-spacing:-.045em;line-height:.95}.search-hero__lead,.lessons-hero__lead,.page-hero__lead{margin:.55rem 0 0;max-width:34rem;color:var(--fk-text-muted);font-size:.95rem;line-height:1.45}.people-hero__actions,.page-hero__actions{display:flex;flex-wrap:wrap;gap:.55rem;flex-shrink:0}.lessons-hero__cta,.page-hero__cta{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:0 1.05rem;border:0;border-radius:.85rem;background:linear-gradient(135deg,#e11d2e,#be123c);color:#fff;font-size:.9rem;font-weight:800;cursor:pointer;box-shadow:0 10px 22px #e11d2e42;transition:transform .15s ease,box-shadow .15s ease}.lessons-hero__cta:hover,.page-hero__cta:hover{transform:translateY(-1px);box-shadow:0 14px 28px #e11d2e57}.lessons-hero__cta .material-icons,.page-hero__cta .material-icons{font-size:1.15rem}@media(max-width:1024px){.search-hero,.lessons-hero,.people-hero,.page-hero{flex-direction:column;align-items:stretch}.lessons-hero__cta,.page-hero__cta,.people-hero__actions .admin-button,.people-hero__actions .admin-button-secondary{width:100%;min-height:48px}}.admin-page{position:relative;width:min(1440px,100%);margin:0 auto;padding:var(--fk-spacing-xl);color:var(--fk-text-primary);background:radial-gradient(ellipse 70% 80% at 12% -2%,rgba(225,29,46,.2),transparent 58%),radial-gradient(ellipse 50% 60% at 88% 8%,rgba(56,189,248,.07),transparent 55%);background-repeat:no-repeat}.admin-page-header{display:flex;justify-content:space-between;gap:1.25rem;align-items:flex-end;margin-bottom:1.25rem}.admin-page-title{margin:0;font-size:clamp(2.05rem,5vw,2.75rem);font-weight:900;letter-spacing:-.045em;line-height:.96}.admin-page-lead{margin-top:.55rem;max-width:34rem;color:var(--fk-text-muted);font-size:.95rem;line-height:1.45}.admin-toolbar,.admin-filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end}.admin-filters{margin-bottom:1rem;padding:1rem 1.05rem;border:1px solid var(--fk-border-light);border-radius:1.2rem;background:var(--fk-panel-bg);box-shadow:var(--fk-shadow-md)}.admin-field{display:grid;min-width:160px;gap:.35rem;color:var(--fk-text-muted);font-size:.78rem;font-weight:700}.admin-field--wide{min-width:min(320px,100%);flex:1 1 260px}.admin-input,.admin-select,.admin-textarea{width:100%;min-height:42px;padding:0 .85rem;border:1px solid var(--fk-border-light);border-radius:var(--fk-radius-md);background:var(--fk-input-bg);color:var(--fk-text-primary);outline:none;transition:border-color var(--fk-transition-base),box-shadow var(--fk-transition-base)}.admin-textarea{min-height:108px;padding-top:.75rem;resize:vertical}.admin-input:focus,.admin-select:focus,.admin-textarea:focus{border-color:#e11d2ead;box-shadow:0 0 0 3px var(--fk-focus-glow)}.admin-button,.admin-button-secondary,.admin-button-danger{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:0 1.05rem;border-radius:.85rem;border:1px solid transparent;font-weight:800;cursor:pointer;transition:transform var(--fk-transition-base),border-color var(--fk-transition-base),background var(--fk-transition-base),opacity var(--fk-transition-base),box-shadow var(--fk-transition-base)}.admin-button{background:linear-gradient(135deg,var(--fk-red),var(--fk-red-dark));color:#fff;box-shadow:0 10px 22px #e11d2e42}.admin-button-secondary{background:var(--fk-bg-hover);color:var(--fk-text-primary);border-color:var(--fk-border)}.admin-button-danger{background:#f871711f;color:#fecaca;border-color:#f871714d}.admin-button:hover,.admin-button-secondary:hover,.admin-button-danger:hover{transform:translateY(-1px)}.admin-button:disabled,.admin-button-secondary:disabled,.admin-button-danger:disabled{opacity:.55;cursor:not-allowed;transform:none}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--fk-spacing-md)}.admin-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-card,.admin-stat-card,.admin-panel{border:1px solid var(--fk-border-light);border-radius:1.15rem;background:var(--fk-card-bg);box-shadow:var(--fk-shadow-md)}.admin-card,.admin-panel{padding:var(--fk-spacing-lg)}.admin-stat-card{display:grid;gap:.35rem;padding:var(--fk-spacing-lg)}.admin-stat-label{color:var(--fk-text-muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.admin-stat-value{color:var(--fk-text-primary);font-size:1.8rem;font-weight:800;line-height:1.1}.admin-section-title{margin:0 0 var(--fk-spacing-md);font-size:1.15rem;letter-spacing:0}.admin-muted{color:var(--fk-text-muted)}.admin-table-wrap{overflow-x:auto;border:1px solid var(--fk-border-light);border-radius:1.15rem;background:var(--fk-panel-bg);box-shadow:var(--fk-shadow-md)}.admin-table{width:100%;min-width:860px;border-collapse:collapse}.admin-table th,.admin-table td{padding:.9rem 1rem;text-align:left;border-bottom:1px solid var(--fk-border);vertical-align:top}.admin-table th{color:var(--fk-text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.admin-table td small,.admin-subline{display:block;margin-top:.25rem;color:var(--fk-text-muted);font-size:.8rem}.admin-table tr:last-child td{border-bottom:0}.admin-row-click{cursor:pointer}.admin-row-click:hover{background:var(--fk-bg-hover)}.admin-badge{display:inline-flex;align-items:center;min-height:26px;padding:.25rem .65rem;border-radius:var(--fk-radius-full);border:1px solid var(--fk-border-light);background:#ffffff0f;color:var(--fk-text-secondary);font-size:.78rem;font-weight:700;white-space:nowrap}.admin-badge--success,.admin-badge--paid{border-color:#4ade8042;background:#4ade801f;color:#bbf7d0}.admin-badge--warning,.admin-badge--pending,.admin-badge--partial,.admin-badge--draft{border-color:#fbbf2447;background:#fbbf241f;color:#fde68a}.admin-badge--danger,.admin-badge--overdue{border-color:#f8717152;background:#f871711f;color:#fecaca}.admin-badge--ready,.admin-badge--scheduled{border-color:#60a5fa4d;background:#60a5fa1f;color:#bfdbfe}.admin-chips{display:flex;flex-wrap:wrap;gap:.4rem}.admin-chip{display:inline-flex;align-items:center;min-height:26px;padding:.22rem .55rem;border-radius:var(--fk-radius-full);background:var(--fk-bg-hover);color:var(--fk-text-secondary);font-size:.78rem;font-weight:650}.admin-tabs{display:flex;gap:var(--fk-spacing-sm);overflow-x:auto;margin-bottom:var(--fk-spacing-lg)}.admin-tab{min-height:40px;padding:0 .9rem;border-radius:var(--fk-radius-full);border:1px solid var(--fk-border);background:var(--fk-bg-hover);color:var(--fk-text-muted);font-weight:800;cursor:pointer;white-space:nowrap}.admin-tab.active{border-color:#e11d2e80;background:#e11d2e24;color:var(--fk-text-primary)}.admin-split{display:grid;grid-template-columns:minmax(260px,.92fr) minmax(360px,1.35fr);gap:var(--fk-spacing-lg);align-items:start}.admin-list{display:grid;gap:var(--fk-spacing-sm)}.admin-list-item{width:100%;padding:.95rem;border:1px solid var(--fk-border);border-radius:var(--fk-radius-md);background:var(--fk-list-item-bg);color:var(--fk-text-primary);text-align:left;cursor:pointer}.admin-list-item.active,.admin-list-item:hover{border-color:#e11d2e73;background:#e11d2e1a}.admin-profile-head{display:flex;justify-content:space-between;gap:var(--fk-spacing-md);align-items:flex-start;margin-bottom:var(--fk-spacing-lg)}.admin-actions{display:flex;flex-wrap:wrap;gap:var(--fk-spacing-sm)}.admin-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));gap:var(--fk-spacing-sm)}.admin-calendar-day{min-height:180px;padding:var(--fk-spacing-md);border:1px solid var(--fk-border);border-radius:var(--fk-radius-lg);background:var(--fk-soft-card-bg)}.admin-calendar-entry{margin-top:.6rem;padding:.65rem;border-radius:var(--fk-radius-md);background:#e11d2e1a;border:1px solid rgba(225,29,46,.2)}.admin-progress{height:8px;border-radius:var(--fk-radius-full);background:var(--fk-bg-hover);overflow:hidden}.admin-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--fk-red),var(--fk-red-light))}.admin-empty{padding:var(--fk-spacing-lg);border:1px dashed var(--fk-border-light);border-radius:var(--fk-radius-lg);color:var(--fk-text-muted);text-align:center}@media(max-width:1180px){.admin-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-calendar-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}}@media(max-width:820px){.admin-page{padding:var(--fk-spacing-lg)}.admin-page:before{inset:-1rem -.75rem auto;height:14rem}.admin-page-header,.admin-profile-head{display:grid;align-items:stretch}.admin-page-header .admin-button,.admin-page-header .admin-button-secondary,.admin-profile-head .admin-button,.admin-profile-head .admin-button-secondary{width:100%;min-height:48px}.admin-split,.admin-grid--two,.admin-grid--three,.admin-calendar-grid{grid-template-columns:1fr}}@media(max-width:720px){.admin-page{padding:var(--fk-spacing-md)}.admin-toolbar,.admin-filters,.admin-actions{display:grid;grid-template-columns:1fr}.admin-field,.admin-field--wide{min-width:0;width:100%}.admin-button,.admin-button-secondary,.admin-button-danger{width:100%;min-height:48px}.admin-table-wrap{border:0;background:transparent;box-shadow:none;overflow:visible}.admin-table,.admin-table thead,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%}.admin-table{min-width:0}.admin-table thead{display:none}.admin-table tr{margin-bottom:.85rem;border:1px solid var(--fk-border-light);border-radius:1.1rem;background:var(--fk-table-mobile-row-bg);box-shadow:var(--fk-shadow-md);overflow:hidden}.admin-table td{display:grid;grid-template-columns:minmax(104px,34%) minmax(0,1fr);gap:var(--fk-spacing-sm);padding:.8rem .95rem}.admin-table td:before{content:attr(data-label);color:var(--fk-text-muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}}.debtor-card__note-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.35rem 0 0;overflow:hidden;color:#e2e8f0b3;font-size:.82rem;font-weight:650;line-height:1.4}.debtor-card__note-preview .material-icons{margin-right:.28rem;color:#fecaca;font-size:1rem;vertical-align:-.18rem}.debtor-card__note-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.38rem;min-height:42px;padding:0 .85rem;border:1px solid rgba(255,255,255,.12);border-radius:.85rem;background:#ffffff0a;color:#fecaca;font:inherit;font-size:.82rem;font-weight:850;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.debtor-card__note-btn:hover:not(:disabled){border-color:#e11d2e6b;background:#e11d2e1f;transform:translateY(-1px)}.debtor-card__note-btn:disabled{opacity:.55;cursor:wait}.debtor-card__note-btn .material-icons{font-size:1.05rem}.debtor-note-backdrop{position:fixed;inset:0;z-index:5400;display:grid;place-items:center;padding:var(--fk-spacing-lg);background:#030712b8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.debtor-note-modal{position:relative;display:grid;gap:1rem;width:min(620px,100%);max-height:calc(100dvh - 2rem);overflow:auto;padding:1.35rem;border:1px solid rgba(255,255,255,.1);border-radius:1.25rem;background:radial-gradient(ellipse 70% 90% at 0% 0%,rgba(225,29,46,.14),transparent 55%),linear-gradient(180deg,#111827fa,#080c16fa);box-shadow:0 24px 80px #0000008c}.debtor-note-modal__close{position:absolute;top:.85rem;right:.85rem;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:.85rem;background:#ffffff0a;color:var(--fk-text-primary);cursor:pointer}.debtor-note-modal__close:disabled{opacity:.55;cursor:wait}.debtor-note-modal__head{display:grid;gap:.28rem;padding-right:3rem}.debtor-note-modal__eyebrow{margin:0;color:#fecaca;font-size:.7rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.debtor-note-modal__head h3{margin:0;color:#fff;font-size:clamp(1.35rem,3vw,1.7rem);font-weight:900;letter-spacing:-.035em;line-height:1.1}.debtor-note-modal__head p:last-child{margin:0;color:#e2e8f0ad;font-size:.9rem;line-height:1.4}.debtor-note-modal__loading{display:grid;justify-items:center;gap:.5rem;padding:2rem 1rem;color:#e2e8f0ad;text-align:center}.debtor-note-modal__loading .material-icons{color:#fecaca;font-size:1.7rem}.debtor-note-modal__form{display:grid;gap:.85rem}.debtor-note-modal__textarea{min-height:170px}.debtor-note-modal__error{margin:0;padding:.75rem .85rem;border:1px solid rgba(225,29,46,.28);border-radius:.85rem;background:#e11d2e1a;color:#fecaca;font-size:.86rem;font-weight:750}.debtor-note-modal__footer{display:flex;justify-content:flex-end;gap:.65rem}.debtor-note-modal__btn{appearance:none;min-height:44px;padding:0 1rem;border-radius:.9rem;font:inherit;font-size:.86rem;font-weight:900;cursor:pointer}.debtor-note-modal__btn--ghost{border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:var(--fk-text-primary)}.debtor-note-modal__btn--save{border:0;background:linear-gradient(135deg,#fecaca,#f87171 42%,#e11d2e);color:#450a0a;box-shadow:0 14px 28px #e11d2e40}.debtor-note-modal__btn:disabled{opacity:.58;cursor:wait;box-shadow:none}@media(max-width:640px){.debtor-note-backdrop{align-items:end;padding:.75rem}.debtor-note-modal{border-radius:1.15rem;padding:1.1rem}.debtor-note-modal__footer{display:grid;grid-template-columns:1fr}.debtor-note-modal__btn{width:100%}}.teacher-page,.dashboard-section,.availability-section,.lessons-section,.lessons-page-root,.calendar-section,.profile-page,.profile-section,.settlements-section,.link-page{position:relative;isolation:isolate}.teacher-page.fk-page,.dashboard-section.fk-page,.lessons-section.fk-page,.calendar-section.fk-page,.settlements-section.fk-page,.availability-shell.fk-page,.profile-shell.fk-page,.link-page.fk-page{max-width:min(1440px,100%)}.page-title,.availability-page-header .page-title{margin:0;font-size:clamp(2rem,5vw,2.7rem);font-weight:900;letter-spacing:-.045em;line-height:.98}.page-subtitle,.section-description{margin:.5rem 0 0;max-width:36rem;color:var(--fk-text-muted);font-size:.95rem;line-height:1.45}.availability-page-header{margin-bottom:1.25rem}.card,.stat-card,.teacher-card{border:1px solid var(--fk-border-light)!important;border-radius:1.15rem!important;background:var(--fk-card-bg)!important;box-shadow:var(--fk-shadow-md)!important}.section-title{font-weight:850!important;letter-spacing:-.02em}.btn-join,.btn-primary,.btn-secondary,.btn-link,.primary-button,.fk-button-primary,.fk-button-ghost{min-height:44px;border-radius:.85rem;font-weight:800}.btn-join,.btn-primary,.primary-button,.fk-button-primary{border:0;background:linear-gradient(135deg,#e11d2e,#be123c);color:#fff;box-shadow:0 10px 22px #e11d2e38}.lesson-item{border:1px solid var(--fk-border-light)!important;border-radius:.95rem!important;background:var(--fk-soft-card-bg)!important}.teacher-sticky-bar{display:none}@media(max-width:1024px){.dashboard-section,.teacher-page,.availability-section,.lessons-section,.calendar-section,.settlements-section{padding-inline:.25rem}.stats-grid,.dashboard-grid{grid-template-columns:1fr!important}.btn-join,.btn-primary,.btn-secondary,.primary-button,.fk-button-primary,.fk-button-ghost{width:100%;min-height:48px}.teacher-sticky-bar{display:flex;position:sticky;bottom:calc(.65rem + env(safe-area-inset-bottom));z-index:30;gap:.55rem;margin-top:.85rem;padding:.7rem;border:1px solid var(--fk-border-light);border-radius:1.05rem;background:var(--fk-panel-bg);box-shadow:var(--fk-shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teacher-sticky-bar .fk-btn,.teacher-sticky-bar .fk-button-primary,.teacher-sticky-bar .btn-primary{flex:1 1 auto}.calendar-toolbar.teacher-sticky-toolbar,.cal-toolbar.teacher-sticky-toolbar{position:sticky;top:.55rem;z-index:25}}@media(max-width:720px){.lesson-item{display:grid!important;gap:.65rem}.lesson-actions{width:100%}.fk-actions,.slot-actions,.meta .actions{display:grid;grid-template-columns:1fr;width:100%}}@media(max-width:420px){.fk-brand{font-size:clamp(1.85rem,9vw,2.25rem)}.quick-actions{grid-template-columns:1fr!important}}.recurrence-section{margin-bottom:1.15rem}.recurrence-toggle-card,.booking-recurrence-toggle{appearance:none;-webkit-appearance:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;width:100%;min-height:4.4rem;padding:.95rem 1.05rem;overflow:hidden;isolation:isolate;border-radius:1.15rem;border:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 45%),radial-gradient(ellipse 70% 120% at 0% 50%,rgba(225,29,46,.14),transparent 58%),#0307127a;color:inherit;font:inherit;text-align:left;cursor:pointer;box-shadow:0 14px 32px #0000003d,inset 0 1px #ffffff14;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.recurrence-toggle-card:hover,.booking-recurrence-toggle:hover{border-color:#fecaca52;transform:translateY(-1px);box-shadow:0 18px 40px #0000004d,inset 0 1px #ffffff1a}.recurrence-toggle-card.is-active,.booking-recurrence-toggle.is-active{border-color:#fecaca66;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 42%),radial-gradient(ellipse 70% 120% at 0% 50%,rgba(225,29,46,.22),transparent 58%),#0307128c;box-shadow:0 18px 42px #0000004d,0 0 0 1px #e11d2e24,inset 0 1px #ffffff1a}.recurrence-toggle-card:active,.booking-recurrence-toggle:active{transform:translateY(0)}.recurrence-toggle-leading,.booking-recurrence-icon{display:inline-grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:.9rem;border:1px solid rgba(254,202,202,.32);background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18),transparent 50%),linear-gradient(160deg,rgba(255,255,255,.08),transparent 55%),#e11d2e2e;color:#fecaca;box-shadow:inset 0 1px #ffffff1f}.recurrence-toggle-leading.material-icons,.recurrence-toggle-leading .material-icons,.booking-recurrence-icon.material-icons,.booking-recurrence-icon .material-icons{font-size:1.25rem}.recurrence-toggle-card.is-active .recurrence-toggle-leading,.booking-recurrence-toggle.is-active .booking-recurrence-icon{border-color:#fecaca80;background:linear-gradient(135deg,#fff,#fecaca);color:#7f1d1d;box-shadow:0 8px 18px #fecaca38,inset 0 1px #ffffffd9}.recurrence-toggle-content,.booking-recurrence-copy{display:grid;gap:.18rem;min-width:0}.recurrence-toggle-content strong,.booking-recurrence-copy strong{color:#fff;font-size:.98rem;font-weight:900;letter-spacing:-.025em;line-height:1.15}.recurrence-toggle-content span,.booking-recurrence-copy span{color:#e2e8f09e;font-size:.8rem;font-weight:600;line-height:1.35}.recurrence-toggle-switch,.booking-recurrence-switch{position:relative;flex:0 0 auto;width:3rem;height:1.85rem;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px #ffffff0a;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.recurrence-toggle-switch span,.booking-recurrence-switch span{position:absolute;top:3px;left:3px;width:1.35rem;height:1.35rem;border-radius:50%;background:linear-gradient(180deg,#fff,#e2e8f0);box-shadow:0 4px 10px #00000047;transition:transform .2s cubic-bezier(.22,1,.36,1)}.recurrence-toggle-switch.is-on,.booking-recurrence-switch.is-on{background:linear-gradient(135deg,#fff,#fecaca);border-color:#fecaca8c;box-shadow:0 8px 18px #fecaca33,inset 0 1px #ffffffd9}.recurrence-toggle-switch.is-on span,.booking-recurrence-switch.is-on span{transform:translate(1.15rem);background:linear-gradient(180deg,#9f1239,#7f1d1d);box-shadow:0 4px 10px #7f1d1d59}.recurrence-panel{display:grid;gap:1rem;margin-top:.85rem;padding:1rem 1.05rem;border-radius:1.15rem;border:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 48%),#0307126b;box-shadow:inset 0 1px #ffffff0d}.recurring-series-panel{margin-top:0}.recurrence-panel-block{display:grid;gap:.65rem}.recurrence-panel-label{font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#e2e8f08c}.recurrence-range-options,.recurrence-custom-options{grid-template-columns:repeat(2,minmax(0,1fr))}.recurrence-input-field{margin-bottom:0}@media(prefers-reduced-motion:reduce){.recurrence-toggle-card,.booking-recurrence-toggle,.recurrence-toggle-switch span,.booking-recurrence-switch span{transition:none}}:root[data-theme=light] .fk-page:before,:root[data-theme=light] .admin-page:before,:root[data-theme=light] .tmsg-spotlight__glow,:root[data-theme=light] .tset-payout__glow,:root[data-theme=light] .tdash-payout__glow,:root[data-theme=light] .live-alert__glow{display:none!important}:root[data-theme=light] .admin-page{background:transparent!important}:root[data-theme=light] .fk-glass-panel,:root[data-theme=light] .fk-row-card,:root[data-theme=light] .admin-card,:root[data-theme=light] .admin-stat-card,:root[data-theme=light] .admin-panel,:root[data-theme=light] .admin-filters,:root[data-theme=light] .admin-table-wrap,:root[data-theme=light] .import-sheet,:root[data-theme=light] .history-sheet,:root[data-theme=light] .teacher-card,:root[data-theme=light] .card,:root[data-theme=light] .stat-card,:root[data-theme=light] .lesson-card,:root[data-theme=light] .lesson-card.active,:root[data-theme=light] .lesson-card.soon,:root[data-theme=light] .lesson-card.past,:root[data-theme=light] .cal-toolbar,:root[data-theme=light] .cal-day,:root[data-theme=light] .date-picker-panel,:root[data-theme=light] .debtor-note-modal,:root[data-theme=light] .modal-content.join-modal,:root[data-theme=light] .modal-content.semester-end-modal,:root[data-theme=light] .modal-content.extra-lesson-modal,:root[data-theme=light] .modal-content.recurring-lesson-modal,:root[data-theme=light] .cal-modal,:root[data-theme=light] .cal-spotlight,:root[data-theme=light] .cal-action,:root[data-theme=light] .cal-dropzone,:root[data-theme=light] .av-panel,:root[data-theme=light] .av-modal,:root[data-theme=light] .tset-payout,:root[data-theme=light] .tset-panel,:root[data-theme=light] .tset-loading,:root[data-theme=light] .tmsg-spotlight,:root[data-theme=light] .tmsg-panel,:root[data-theme=light] .tdash-payout,:root[data-theme=light] .tdash-panel{background:var(--fk-theme-panel-bg)!important;border-color:var(--fk-theme-panel-border)!important;box-shadow:var(--fk-theme-panel-shadow)!important;color:var(--fk-theme-title)!important}:root[data-theme=light] .fk-row-card__details,:root[data-theme=light] .lesson-card__details,:root[data-theme=light] .cal-day__list,:root[data-theme=light] .cal-modal__scroll,:root[data-theme=light] .cal-modal__dock,:root[data-theme=light] .av-modal__body,:root[data-theme=light] .av-modal__dock,:root[data-theme=light] .av-calendar,:root[data-theme=light] .av-list,:root[data-theme=light] .av-form,:root[data-theme=light] .av-detail,:root[data-theme=light] .tset-list,:root[data-theme=light] .tset-weeks,:root[data-theme=light] .tmsg-thread{background:var(--fk-card-details-bg)!important;border-color:var(--fk-theme-panel-border)!important}:root[data-theme=light] .cal-lesson,:root[data-theme=light] .cal-file,:root[data-theme=light] .date-picker-display,:root[data-theme=light] .lesson-info-card,:root[data-theme=light] .semester-end-summary,:root[data-theme=light] .semester-end-notice,:root[data-theme=light] .extra-lesson-block,:root[data-theme=light] .join-next-reminder,:root[data-theme=light] .link-button,:root[data-theme=light] .copy-link-button,:root[data-theme=light] .lesson-tool,:root[data-theme=light] .av-toggle,:root[data-theme=light] .av-toggle__box,:root[data-theme=light] .recurrence-panel,:root[data-theme=light] .recurrence-toggle-card,:root[data-theme=light] .av-slot,:root[data-theme=light] .av-confirm,:root[data-theme=light] .av-detail__slot,:root[data-theme=light] .tset-confirm,:root[data-theme=light] .tset-lesson,:root[data-theme=light] .tset-week,:root[data-theme=light] .tmsg-item,:root[data-theme=light] .tdash-lesson,:root[data-theme=light] .tdash-upcoming,:root[data-theme=light] .tdash-action{background:var(--fk-theme-raised-bg)!important;border-color:var(--fk-theme-panel-border)!important;box-shadow:var(--fk-shadow-sm)!important;color:var(--fk-theme-title)!important}:root[data-theme=light] .cal-day__empty,:root[data-theme=light] .av-detail__empty,:root[data-theme=light] .av-strip,:root[data-theme=light] .av-strip__day,:root[data-theme=light] .tset-metric,:root[data-theme=light] .tset-empty,:root[data-theme=light] .tmsg-metric,:root[data-theme=light] .tmsg-empty,:root[data-theme=light] .tmsg-loading,:root[data-theme=light] .tdash-metric,:root[data-theme=light] .tdash-empty,:root[data-theme=light] .fk-empty,:root[data-theme=light] .picker-display,:root[data-theme=light] .wheel,:root[data-theme=light] .date-picker-day:not(.selected),:root[data-theme=light] .import-row,:root[data-theme=light] .history-row,:root[data-theme=light] .import-detail__stats div,:root[data-theme=light] .import-recipient-row,:root[data-theme=light] .import-transaction-row,:root[data-theme=light] .cal-pill:not(.cal-pill--live):not(.cal-pill--premium),:root[data-theme=light] .duration-tile:not(.active){background:var(--fk-theme-inset-bg)!important;border-color:var(--fk-theme-panel-border)!important;box-shadow:none!important;color:var(--fk-theme-title)!important}:root[data-theme=light] .lesson-card:before,:root[data-theme=light] .lesson-card.active:before,:root[data-theme=light] .lesson-card.soon:before,:root[data-theme=light] .cal-toolbar:before,:root[data-theme=light] .cal-modal:before,:root[data-theme=light] .date-picker-panel:before,:root[data-theme=light] .debtor-note-modal:before,:root[data-theme=light] .modal-content.join-modal:before,:root[data-theme=light] .modal-content.semester-end-modal:before,:root[data-theme=light] .modal-content.extra-lesson-modal:before,:root[data-theme=light] .modal-content.recurring-lesson-modal:before,:root[data-theme=light] .av-panel:before,:root[data-theme=light] .av-modal:before,:root[data-theme=light] .tset-payout:before,:root[data-theme=light] .tset-panel:before,:root[data-theme=light] .tmsg-spotlight:before,:root[data-theme=light] .tmsg-panel:before,:root[data-theme=light] .tdash-payout:before,:root[data-theme=light] .tdash-panel:before{box-shadow:none!important}:root[data-theme=light] .lesson-card.past{opacity:1!important}:root[data-theme=light] .cal-lesson--past{opacity:1!important;filter:none!important}:root[data-theme=light] .lesson-card__time,:root[data-theme=light] .tdash-lesson__time,:root[data-theme=light] .cal-spotlight__time{border-color:var(--fk-theme-panel-border)!important}:root[data-theme=light] .lesson-card__time strong,:root[data-theme=light] .lesson-card__subject,:root[data-theme=light] .lesson-tool__copy strong,:root[data-theme=light] .fk-date-picker-trigger .trigger-value,:root[data-theme=light] .fk-time-picker-trigger .trigger-value,:root[data-theme=light] .lesson-modal-title,:root[data-theme=light] .cal-toolbar__period-range,:root[data-theme=light] .import-sheet__title,:root[data-theme=light] .history-sheet__title,:root[data-theme=light] .history-row__main strong,:root[data-theme=light] .import-detail__stats strong,:root[data-theme=light] .import-recipient-row strong,:root[data-theme=light] .import-transaction-row strong,:root[data-theme=light] .cal-day__date,:root[data-theme=light] .cal-day__empty strong,:root[data-theme=light] .cal-lesson__subject,:root[data-theme=light] .cal-modal__title,:root[data-theme=light] .cal-spotlight__student,:root[data-theme=light] .cal-action__label,:root[data-theme=light] .av-panel__title,:root[data-theme=light] .av-slot__time,:root[data-theme=light] .av-toggle__copy strong,:root[data-theme=light] .av-month-nav__title,:root[data-theme=light] .av-strip__num,:root[data-theme=light] .av-confirm__btn,:root[data-theme=light] .av-detail__title,:root[data-theme=light] .av-detail__slot-time,:root[data-theme=light] .av-detail__empty p,:root[data-theme=light] .av-modal__title,:root[data-theme=light] .tset-payout__amount,:root[data-theme=light] .tset-panel__title,:root[data-theme=light] .tset-metric__value,:root[data-theme=light] .tset-confirm__copy strong,:root[data-theme=light] .tset-lesson__subject,:root[data-theme=light] .tset-lesson__when strong,:root[data-theme=light] .tset-month-nav__title,:root[data-theme=light] .tset-week__range,:root[data-theme=light] .tset-empty strong,:root[data-theme=light] .tmsg-spotlight__title,:root[data-theme=light] .tmsg-panel__title,:root[data-theme=light] .tmsg-metric__value,:root[data-theme=light] .tmsg-item__subject,:root[data-theme=light] .tmsg-empty strong,:root[data-theme=light] .tmsg-loading strong,:root[data-theme=light] .tdash-panel__title,:root[data-theme=light] .tdash-metric__value,:root[data-theme=light] .tdash-empty strong,:root[data-theme=light] .tdash-lesson__subject,:root[data-theme=light] .tdash-action__label,:root[data-theme=light] .picker-title,:root[data-theme=light] .picker-display strong,:root[data-theme=light] .wheel-value,:root[data-theme=light] .duration-tile:not(.active) strong{color:var(--fk-theme-title)!important;text-shadow:none!important}:root[data-theme=light] .lesson-card__time span,:root[data-theme=light] .lesson-card__detail,:root[data-theme=light] .lesson-tool__copy span,:root[data-theme=light] .debtor-card__note-preview,:root[data-theme=light] .debtor-note-modal__head p:last-child,:root[data-theme=light] .debtor-note-modal__loading,:root[data-theme=light] .history-row__main span,:root[data-theme=light] .history-row__stats,:root[data-theme=light] .import-detail__stats span,:root[data-theme=light] .import-recipient-row span,:root[data-theme=light] .import-transaction-row span,:root[data-theme=light] .join-next-reminder__copy span,:root[data-theme=light] .fk-date-picker-trigger .trigger-hint,:root[data-theme=light] .fk-time-picker-trigger .trigger-hint,:root[data-theme=light] .fk-date-picker-trigger.placeholder .trigger-value,:root[data-theme=light] .fk-time-picker-trigger.placeholder .trigger-value,:root[data-theme=light] .cal-lesson__detail,:root[data-theme=light] .cal-modal__lead,:root[data-theme=light] .cal-spotlight__note,:root[data-theme=light] .cal-action__hint,:root[data-theme=light] .av-panel__lead,:root[data-theme=light] .av-slot__when,:root[data-theme=light] .av-toggle__copy span,:root[data-theme=light] .av-confirm__status,:root[data-theme=light] .av-strip__weekday,:root[data-theme=light] .av-detail__date,:root[data-theme=light] .av-detail__hint,:root[data-theme=light] .av-detail__slot-meta,:root[data-theme=light] .av-detail__empty span,:root[data-theme=light] .av-modal__lead,:root[data-theme=light] .tset-payout__range,:root[data-theme=light] .tset-panel__lead,:root[data-theme=light] .tset-metric__label,:root[data-theme=light] .tset-confirm__copy span,:root[data-theme=light] .tset-page-size__label,:root[data-theme=light] .tset-pager__meta,:root[data-theme=light] .tset-empty span:last-child,:root[data-theme=light] .tset-lesson__detail,:root[data-theme=light] .tset-lesson__when span,:root[data-theme=light] .tset-week__stats,:root[data-theme=light] .tmsg-spotlight__hint,:root[data-theme=light] .tmsg-panel__lead,:root[data-theme=light] .tmsg-metric__label,:root[data-theme=light] .tmsg-item__party,:root[data-theme=light] .tmsg-item__text,:root[data-theme=light] .tmsg-item__when,:root[data-theme=light] .tmsg-empty span:last-child,:root[data-theme=light] .tmsg-loading .material-icons,:root[data-theme=light] .tdash-panel__lead,:root[data-theme=light] .tdash-metric__label,:root[data-theme=light] .tdash-empty p,:root[data-theme=light] .tdash-lesson__detail,:root[data-theme=light] .tdash-action__hint,:root[data-theme=light] .picker-display span,:root[data-theme=light] .wheel-label,:root[data-theme=light] .wheel-separator,:root[data-theme=light] .duration-tile:not(.active) span{color:var(--fk-theme-muted)!important}:root[data-theme=light] .lesson-pill{text-shadow:none!important;box-shadow:none!important}:root[data-theme=light] .fk-eyebrow,:root[data-theme=light] .cal-day__label,:root[data-theme=light] .cal-lesson__when,:root[data-theme=light] .lesson-pill--soon,:root[data-theme=light] .cal-toolbar__period-mode,:root[data-theme=light] .cal-toolbar__period-icon,:root[data-theme=light] .date-picker-eyebrow,:root[data-theme=light] .import-sheet__eyebrow,:root[data-theme=light] .import-detail__label,:root[data-theme=light] .debtor-note-modal__eyebrow,:root[data-theme=light] .join-eyebrow,:root[data-theme=light] .extra-lesson-eyebrow,:root[data-theme=light] .extra-lesson-block__title,:root[data-theme=light] .cal-modal__eyebrow,:root[data-theme=light] .cal-spotlight__eyebrow,:root[data-theme=light] .cal-actions__label,:root[data-theme=light] .av-panel__eyebrow,:root[data-theme=light] .av-list__label,:root[data-theme=light] .av-detail__eyebrow,:root[data-theme=light] .av-modal__eyebrow,:root[data-theme=light] .tset-payout__eyebrow,:root[data-theme=light] .tset-panel__eyebrow,:root[data-theme=light] .tset-weeks__label,:root[data-theme=light] .tmsg-spotlight__eyebrow,:root[data-theme=light] .tmsg-panel__eyebrow,:root[data-theme=light] .tdash-payout__eyebrow,:root[data-theme=light] .tdash-panel__eyebrow,:root[data-theme=light] .tdash-upcoming__when,:root[data-theme=light] .picker-eyebrow{color:var(--fk-theme-accent-text)!important}:root[data-theme=light] .live-alert__badge,:root[data-theme=light] .lesson-pill--live,:root[data-theme=light] .tdash-pill--live,:root[data-theme=light] .cal-day__count,:root[data-theme=light] .cal-pill--live{background:#e11d2e1a!important;border-color:#e11d2e47!important;color:var(--fk-theme-accent-strong)!important;box-shadow:none!important}:root[data-theme=light] .lesson-pill--mute{background:#64748b17!important;border-color:#64748b3d!important;color:var(--fk-theme-muted)!important}:root[data-theme=light] .lesson-pill--recurring{background:#3b82f61a!important;border-color:#2563eb47!important;color:var(--fk-theme-info-text)!important}:root[data-theme=light] .lesson-pill--done{background:#10b9811a!important;border-color:#10b98147!important;color:var(--fk-theme-success-text)!important}:root[data-theme=light] .lesson-pill--soon,:root[data-theme=light] .tdash-pill--soon,:root[data-theme=light] .cal-pill--premium,:root[data-theme=light] .semester-end-notice__orb,:root[data-theme=light] .join-next-reminder__icon{background:var(--fk-theme-warning-soft)!important;border-color:#f59e0b47!important;color:var(--fk-theme-warning-strong)!important;box-shadow:none!important;text-shadow:none!important}:root[data-theme=light] .live-alert--soon .live-alert__eyebrow,:root[data-theme=light] .semester-end-eyebrow,:root[data-theme=light] .semester-end-summary__label,:root[data-theme=light] .join-next-reminder__copy strong{color:var(--fk-theme-warning-strong)!important;text-shadow:none!important}:root[data-theme=light] .tdash-payout__amount,:root[data-theme=light] .tset-payout__amount,:root[data-theme=light] .tset-lesson__amount,:root[data-theme=light] .tset-metric--amount .tset-metric__value,:root[data-theme=light] .tset-week__pay{color:var(--fk-theme-success-text)!important;text-shadow:none!important}:root[data-theme=light] .tdash-payout__eyebrow,:root[data-theme=light] .tset-payout__eyebrow{color:var(--fk-theme-success-text)!important}:root[data-theme=light] .tset-metric--premium .tset-metric__value,:root[data-theme=light] .tset-week__premium{color:var(--fk-theme-warning-text)!important}:root[data-theme=light] .fk-select__trigger,:root[data-theme=light] .fk-select__menu,:root[data-theme=light] .fk-select__option:not(.fk-select__option--active),:root[data-theme=light] .fk-date-picker-panel,:root[data-theme=light] .fk-time-picker-panel,:root[data-theme=light] .fk-date-picker-trigger,:root[data-theme=light] .fk-time-picker-trigger,:root[data-theme=light] .fk-date-picker-trigger:disabled,:root[data-theme=light] .fk-time-picker-trigger:disabled,:root[data-theme=light] .picker-close,:root[data-theme=light] .picker-nav,:root[data-theme=light] .picker-day:not(.selected),:root[data-theme=light] .picker-cancel,:root[data-theme=light] .wheel-btn,:root[data-theme=light] .preset:not(.preset--active),:root[data-theme=light] .cal-toolbar__nav,:root[data-theme=light] .cal-toolbar__period-btn,:root[data-theme=light] .cal-toolbar__modes,:root[data-theme=light] .cal-toolbar__mode:not(.active),:root[data-theme=light] .date-picker-close,:root[data-theme=light] .date-picker-nav,:root[data-theme=light] .date-picker-cancel,:root[data-theme=light] .debtor-card__note-btn,:root[data-theme=light] .debtor-note-modal__close,:root[data-theme=light] .debtor-note-modal__btn--ghost,:root[data-theme=light] .history-row__actions .ghost-button,:root[data-theme=light] .modal-close,:root[data-theme=light] .modal-btn--ghost,:root[data-theme=light] .btn-secondary,:root[data-theme=light] .av-month-nav__btn,:root[data-theme=light] .av-month-nav__today,:root[data-theme=light] .av-confirm__btn,:root[data-theme=light] .tset-month-nav__btn,:root[data-theme=light] .tset-month-nav__today,:root[data-theme=light] .tset-page-size__btn:not(.active),:root[data-theme=light] .tset-pager__btn,:root[data-theme=light] .tset-week__btn,:root[data-theme=light] .tmsg-panel__compose-toggle,:root[data-theme=light] .lesson-btn,:root[data-theme=light] .recurrence-toggle-switch,:root[data-theme=light] .duration-btn:not(.active){background:var(--fk-theme-field-bg)!important;border-color:var(--fk-theme-panel-border)!important;box-shadow:none!important;color:var(--fk-theme-title)!important}:root[data-theme=light] .fk-date-picker-trigger:disabled,:root[data-theme=light] .fk-time-picker-trigger:disabled,:root[data-theme=light] .av-confirm__btn:disabled,:root[data-theme=light] .av-cta:disabled,:root[data-theme=light] .btn-primary:disabled,:root[data-theme=light] .btn-secondary:disabled{opacity:1!important;cursor:not-allowed!important}:root[data-theme=light] .fk-date-picker-trigger:disabled,:root[data-theme=light] .fk-time-picker-trigger:disabled,:root[data-theme=light] .av-confirm__btn:disabled{background:#f8fafcb8!important;color:var(--fk-theme-muted)!important}:root[data-theme=light] .fk-date-picker-trigger .trigger-icon,:root[data-theme=light] .fk-time-picker-trigger .trigger-icon,:root[data-theme=light] .lesson-tool__orb,:root[data-theme=light] .lesson-tool__chevron,:root[data-theme=light] .cal-day__empty-orb,:root[data-theme=light] .cal-lesson__chevron,:root[data-theme=light] .debtor-card__note-preview .material-icons,:root[data-theme=light] .debtor-note-modal__loading .material-icons,:root[data-theme=light] .tset-empty__orb,:root[data-theme=light] .av-detail__slot .material-icons{color:#e11d2e61!important}:root[data-theme=light] .lesson-tool--semester .lesson-tool__orb,:root[data-theme=light] .lesson-tool--semester .lesson-tool__chevron{color:var(--fk-theme-warning-text)!important}:root[data-theme=light] .fk-date-picker-modal,:root[data-theme=light] .fk-time-picker-modal,:root[data-theme=light] .date-picker-modal,:root[data-theme=light] .debtor-note-backdrop,:root[data-theme=light] .modal-overlay,:root[data-theme=light] .modal-backdrop{background:var(--fk-backdrop-bg)!important}:root[data-theme=light] input:not([type=checkbox]):not([type=radio]),:root[data-theme=light] textarea,:root[data-theme=light] select,:root[data-theme=light] .admin-input,:root[data-theme=light] .admin-select,:root[data-theme=light] .admin-textarea,:root[data-theme=light] .tmsg-field__input,:root[data-theme=light] .edit-lesson-note-field{background:var(--fk-theme-field-bg)!important;border-color:var(--fk-theme-panel-border)!important;color:var(--fk-text-primary)!important;box-shadow:none!important}:root[data-theme=light] input::placeholder,:root[data-theme=light] textarea::placeholder,:root[data-theme=light] .tmsg-field__input::placeholder{color:var(--fk-text-disabled)!important}:root[data-theme=light] .form-field label,:root[data-theme=light] .info-label,:root[data-theme=light] .button-subtitle,:root[data-theme=light] .modal-hint,:root[data-theme=light] .extra-lesson-context,:root[data-theme=light] .extra-lesson-context span,:root[data-theme=light] .semester-end-notice p,:root[data-theme=light] .semester-end-field label span,:root[data-theme=light] .recurrence-panel-label,:root[data-theme=light] .recurrence-toggle-content span,:root[data-theme=light] .tmsg-field__label,:root[data-theme=light] .picker-weekdays span{color:var(--fk-theme-muted)!important}:root[data-theme=light] .modal-header h3,:root[data-theme=light] .debtor-note-modal__head h3,:root[data-theme=light] .date-picker-heading,:root[data-theme=light] .date-picker-title,:root[data-theme=light] .info-value,:root[data-theme=light] .button-title,:root[data-theme=light] .extra-lesson-context strong,:root[data-theme=light] .section-title,:root[data-theme=light] .semester-end-summary__value,:root[data-theme=light] .semester-end-field label,:root[data-theme=light] .recurrence-toggle-content strong{color:var(--fk-theme-title)!important;text-shadow:none!important}:root[data-theme=light] .form-section.readonly{background:var(--fk-card-details-bg)!important;border-color:var(--fk-theme-panel-border)!important}:root[data-theme=light] .av-strip__day--other{opacity:1!important}:root[data-theme=light] .av-strip__day--other .av-strip__weekday,:root[data-theme=light] .av-strip__day--other .av-strip__num{color:var(--fk-text-disabled)!important}:root[data-theme=light] .av-strip__day--today .av-strip__num{background:linear-gradient(135deg,#fb7185,#e11d2e)!important;color:#fff!important}:root[data-theme=light] .av-confirm--done .av-confirm__status,:root[data-theme=light] .av-confirm--done .av-confirm__btn{color:var(--fk-theme-success-text)!important}:root[data-theme=light] .tset-week__status{background:#e11d2e14!important;border-color:#e11d2e3d!important;color:var(--fk-theme-accent-strong)!important}:root[data-theme=light] .tset-week--done{border-color:#10b9813d!important}:root[data-theme=light] .tset-week--done .tset-week__status,:root[data-theme=light] .tset-confirm--done .tset-confirm__copy span,:root[data-theme=light] .tset-confirm--done .tset-confirm__btn,:root[data-theme=light] .tset-week--done .tset-week__btn{color:var(--fk-theme-success-text)!important}:root[data-theme=light] .tset-week--done .tset-week__status,:root[data-theme=light] .tset-confirm--done .tset-confirm__btn{background:#10b9811a!important;border-color:#10b9814d!important}:root[data-theme=light] .tset-week__rail{background:linear-gradient(180deg,rgba(251,113,133,.48),var(--fk-theme-accent-text))!important;box-shadow:none!important}:root[data-theme=light] .tset-week--done .tset-week__rail{background:linear-gradient(180deg,rgba(52,211,153,.5),var(--fk-theme-success-text))!important}:root[data-theme=light] .toast{background:linear-gradient(180deg,#fffffffa,#f8fafcf5)!important;border-color:#e2e8f0f2!important;box-shadow:0 18px 40px #0f172a24,inset 0 1px #ffffffe6!important;color:var(--fk-theme-title)!important;text-shadow:none!important}:root[data-theme=light] .toast-success{border-left-color:var(--fk-theme-success-text)!important}:root[data-theme=light] .toast-error{border-left-color:var(--fk-theme-danger-text)!important}:root[data-theme=light] .toast-warning{border-left-color:var(--fk-theme-warning-text)!important}:root[data-theme=light] .toast-info{border-left-color:var(--fk-theme-info-text)!important}:root[data-theme=light] .toast-icon{background:#e11d2e1a!important;color:var(--fk-theme-accent-strong)!important}:root[data-theme=light] .toast-success .toast-icon{background:#10b98124!important;color:var(--fk-theme-success-text)!important}:root[data-theme=light] .toast-error .toast-icon{background:#e11d2e1a!important;color:var(--fk-theme-danger-text)!important}:root[data-theme=light] .toast-warning .toast-icon{background:var(--fk-theme-warning-soft)!important;color:var(--fk-theme-warning-strong)!important}:root[data-theme=light] .toast-info .toast-icon{background:#38bdf81f!important;color:var(--fk-theme-info-text)!important}:root[data-theme=light] .toast-text{color:var(--fk-theme-title)!important}:root[data-theme=light] .tmsg-item--unread{background:#ffffffdb!important;border-color:#e11d2e38!important}:root[data-theme=light] .tmsg-item__avatar{background:#e11d2e1f!important;color:var(--fk-theme-accent-strong)!important}:root[data-theme=light] .tmsg-item--out .tmsg-item__avatar{background:#64748b1a!important;color:var(--fk-theme-muted)!important}:root[data-theme=light] .tmsg-item__rail{background:linear-gradient(180deg,rgba(251,113,133,.48),var(--fk-theme-accent-text))!important;box-shadow:none!important;opacity:1!important}:root[data-theme=light] .tmsg-item--out .tmsg-item__rail{background:linear-gradient(180deg,#94a3b873,#64748bb8)!important;opacity:1!important}:root[data-theme=light] .debtor-card__note-btn{color:var(--fk-theme-accent-strong)!important}:root[data-theme=light] .debtor-note-modal__btn--save{color:#450a0a!important}:root[data-theme=light] .debtor-note-modal__error{color:var(--fk-theme-danger-text)!important;background:#e11d2e14!important;border-color:#e11d2e47!important}:root[data-theme=light] .form-error{color:var(--fk-theme-danger-text)!important;background:#e11d2e14!important;border-color:#e11d2e47!important}.lesson-filter-deck{position:relative;display:grid;gap:1rem;overflow:hidden;margin-bottom:1rem;padding:1.1rem;border:1px solid rgba(248,113,113,.26);border-radius:18px;background:radial-gradient(circle at 4% 0%,rgba(248,113,113,.2),transparent 30%),radial-gradient(circle at 96% 100%,rgba(251,191,36,.1),transparent 32%),linear-gradient(135deg,#26121ce6,#0c1322f5);box-shadow:inset 0 1px #ffffff14,0 18px 38px #0307123d}.lesson-filter-deck:after{content:"";position:absolute;top:-3rem;right:12%;width:10rem;height:10rem;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}.lesson-filter-deck__top,.lesson-filter-deck__fields,.lesson-filter-deck__hint{position:relative;z-index:1}.lesson-filter-deck__top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.lesson-filter-deck__top strong{display:block;margin-top:.16rem;color:#fff7f8;font-size:1.05rem;letter-spacing:-.02em}.lesson-filter-deck__eyebrow{color:#fda4af;font-size:.68rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.lesson-filter-deck__count{padding:.42rem .65rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#fee2e2;background:#0f172a85;font-size:.75rem;font-weight:800;white-space:nowrap}.lesson-filter-deck__fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.7rem;align-items:end}.lesson-filter-field{display:grid;gap:.42rem;min-width:0}.lesson-filter-field__label{display:inline-flex;align-items:center;gap:.32rem;color:#fee2e2b8;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.lesson-filter-field__label .material-icons{color:#fb7185;font-size:.95rem}.lesson-filter-field input,.lesson-filter-field select{width:100%;min-height:46px;padding:.7rem .8rem;border:1px solid rgba(255,255,255,.12);border-radius:12px;outline:none;color:#fff7f8;background:#02061094;box-shadow:inset 0 1px #ffffff0a;font:inherit;font-size:.88rem;font-weight:750;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.lesson-filter-field select option{color:#0f172a;background:#fff}.lesson-filter-field input:focus,.lesson-filter-field select:focus{border-color:#fb7185d9;background:#020610c2;box-shadow:0 0 0 3px #f43f5e26}.lesson-filter-field small{color:#fda4af;font-size:.68rem}.lesson-filter-reset{display:inline-flex;align-items:center;justify-content:center;gap:.38rem;min-height:46px;padding:.7rem .9rem;border:1px solid rgba(255,255,255,.14);border-radius:12px;color:#fff7f8;background:#ffffff12;font:inherit;font-size:.82rem;font-weight:850;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease}.lesson-filter-reset:hover{border-color:#fb7185b8;background:#e11d2e2e;transform:translateY(-1px)}.lesson-filter-reset .material-icons{font-size:1rem}.lesson-filter-deck__hint{display:inline-flex;align-items:center;gap:.35rem;margin:0;color:#fee2e2a8;font-size:.74rem;line-height:1.4}.lesson-filter-deck__hint .material-icons{color:#fbbf24;font-size:.9rem}@media(max-width:900px){.lesson-filter-deck__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-filter-reset{width:100%}}@media(max-width:720px){.lesson-filter-deck{padding:.9rem}.lesson-filter-deck__top{align-items:flex-start;flex-direction:column}.lesson-filter-deck__fields{grid-template-columns:1fr}}@font-face{font-family:TeX Gyre Heros;src:url(/assets/fonts/texgyreheros-regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TeX Gyre Heros;src:url(/assets/fonts/texgyreheros-italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:TeX Gyre Heros;src:url(/assets/fonts/texgyreheros-bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}.shape-picker{display:inline-flex;align-items:center;gap:.3rem;min-height:38px;padding:0;border:0;border-radius:0;background:transparent;position:relative}.shape-picker__trigger{display:inline-grid;grid-template-columns:1fr auto;align-items:center;justify-items:center;width:58px;gap:0}.shape-picker__trigger--open{border-color:#fecaca57;background:linear-gradient(180deg,#ffffff1f,#ffffff08),#0f172adb}.shape-picker__chevron{margin-left:-.15rem;font-size:.98rem!important;opacity:.74}.shape-picker__popover{position:absolute;z-index:45;top:calc(100% + 10px);left:0;display:grid;grid-template-columns:1fr;gap:.35rem;width:13.2rem;max-width:calc(100vw - 2rem);padding:.55rem;border:1px solid rgba(148,163,184,.2);border-radius:16px;background:linear-gradient(145deg,#121a2bfa,#050a16fa),#0b1120;box-shadow:0 22px 48px #0000006b,0 0 0 1px #ffffff0a,inset 0 1px #ffffff14}.shape-picker__popover:before{content:"";position:absolute;top:-5px;left:20px;width:10px;height:10px;border-top:1px solid rgba(148,163,184,.2);border-left:1px solid rgba(148,163,184,.2);background:#111827;transform:rotate(45deg)}.shape-picker__option{display:grid;grid-template-columns:1.55rem minmax(0,1fr);align-items:center;gap:.55rem;min-height:38px;padding:.38rem .55rem;border:1px solid rgba(148,163,184,.14);border-radius:12px;background:linear-gradient(180deg,#ffffff0e,#ffffff03),#0f172a94;color:#e2e8f0e6;font-size:.78rem;font-weight:850;letter-spacing:0;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.shape-picker__option span:not(.material-icons){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shape-picker__option .material-icons{justify-self:center;color:#e2e8f0e0;font-size:1.1rem}.shape-picker__option:hover:not(:disabled){border-color:#fecaca42;background:var(--board-toolbar-control-hover, rgba(255, 255, 255, .08));color:#fff;transform:translateY(-1px)}.shape-picker__trigger:focus-visible,.shape-picker__option:focus-visible{outline:none;box-shadow:0 0 0 3px #e11d2e2e,inset 0 1px #ffffff14}.shape-picker__option--active{border-color:#e11d2e94;background:linear-gradient(145deg,#e11d2e47,#7f1d1d38);color:#fff;box-shadow:0 10px 22px #e11d2e29,inset 0 1px #ffffff24}.shape-picker__option--active .material-icons{color:#fff;font-variation-settings:"FILL" 1,"wght" 720,"GRAD" 160,"opsz" 24}.board-text-item,.board-image,.board-transform-hitbox{transform-origin:center center}.board-transform-hitbox{position:absolute;z-index:5;box-sizing:border-box;border:1px solid transparent;border-radius:10px;background:transparent;cursor:grab;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none}.tutor-board-selection-layer--pen-writing .board-transform-hitbox{pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.board-frame:not(.board-frame--move) .board-transform-hitbox{display:none}.board-transform-hitbox--selected,.board-transform-hitbox--moving,.board-transform-hitbox--rotating{z-index:8;border-color:#e11d2ea3;background:#e11d2e09;box-shadow:0 0 0 4px #e11d2e1f,inset 0 0 0 1px #ffffff9e}.board-transform-hitbox--moving{cursor:grabbing}.board-transform-hitbox--rotating,.board-transform-hitbox__rotate{cursor:grab}.board-transform-hitbox__resize{cursor:nwse-resize}.board-transform-hitbox__actions{position:absolute;right:0;bottom:calc(100% + 10px);display:inline-flex;align-items:center;gap:6px;padding:4px;border:1px solid rgba(15,23,42,.14);border-radius:12px;background:#fffffff5;box-shadow:0 12px 28px #0f172a2e;pointer-events:auto}.board-transform-hitbox__actions--below{top:calc(100% + 10px);bottom:auto}.board-transform-hitbox__action{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:9px;background:#f1f5f9;color:#334155;cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease}.board-transform-hitbox__action:hover,.board-transform-hitbox__action:focus-visible{background:#e0f2fe;color:#075985;outline:none;transform:translateY(-1px)}.board-transform-hitbox__layer{width:auto;min-width:36px;gap:.3rem;padding:0 .65rem;background:#f5f3ff;color:#6d28d9;font-size:.72rem;font-weight:800;white-space:nowrap}.board-transform-hitbox__layer:hover,.board-transform-hitbox__layer:focus-visible{background:#ede9fe;color:#5b21b6}.board-transform-hitbox__action-label{line-height:1}@media(max-width:700px){.board-transform-hitbox__layer{width:36px;padding:0}.board-transform-hitbox__action-label{display:none}}.board-transform-hitbox__delete{background:#fff1f2;color:#be123c}.board-transform-hitbox__delete:hover,.board-transform-hitbox__delete:focus-visible{background:#ffe4e6;color:#9f1239}.board-transform-hitbox__action .material-icons{font-size:1.25rem;font-variation-settings:"FILL" 0,"wght" 760,"GRAD" 140,"opsz" 24}.board-frame{position:relative;z-index:1;width:100%;min-height:0;height:100%;overflow:hidden;background:#f8fafc;color:#0f172a;overscroll-behavior:contain}.board-canvas{position:relative;min-width:100%;min-height:100%;background:#f8fafc}.drawing-surface{position:absolute;inset:0;z-index:2;width:100%;height:100%;touch-action:none;cursor:crosshair}.board-frame--move .drawing-surface{cursor:grab}.board-frame--panning .drawing-surface{cursor:grabbing}.drawing-surface .board-background{fill:transparent;pointer-events:all}.drawing-surface path{fill:none;stroke-linecap:round;stroke-linejoin:round}.drawing-surface line,.drawing-surface ellipse,.drawing-surface polygon,.drawing-surface polyline,.drawing-surface text,.student-viewport-frame{pointer-events:none}.student-viewport-frame rect{fill:#14b8a60f;stroke:#0f766edb;stroke-width:2;stroke-dasharray:14 10;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 10px rgba(20,184,166,.28))}.student-viewport-frame text{fill:#0f766e;font-family:inherit;font-size:15px;font-weight:900;letter-spacing:0;paint-order:stroke;stroke:#f8fafceb;stroke-width:4;vector-effect:non-scaling-stroke}.drawing-surface line,.drawing-surface path,.drawing-surface ellipse,.drawing-surface polygon{stroke-linecap:round;stroke-linejoin:round}.board-grid line{stroke:#0f172a14;stroke-width:1}.shape-axes line{fill:none;stroke-linecap:round}.shape-axes text{font-size:18px;font-weight:800}.board-text-item,.board-text-draft{position:absolute;margin:0;color:#0f172a;font-family:inherit;font-weight:800;font-size:28px;line-height:1.22;white-space:pre-wrap;overflow-wrap:anywhere;box-sizing:border-box}.board-text-item{z-index:4;pointer-events:none;text-shadow:-1px -1px 0 rgba(255,255,255,.8),1px -1px 0 rgba(255,255,255,.8),-1px 1px 0 rgba(255,255,255,.8),1px 1px 0 rgba(255,255,255,.8)}.board-text-draft{z-index:7;display:inline-block;width:auto;min-width:36px;min-height:34px;max-height:calc(100% - 16px);padding:0;border:0;border-radius:4px;background:#ffffffad;overflow:visible;outline:1px solid rgba(225,29,46,.48);box-shadow:0 0 0 4px #e11d2e14;cursor:text}.board-text-draft:empty:before{content:attr(data-placeholder);color:#0f172a61}.board-image{position:absolute;z-index:1;overflow:hidden;border:2px solid rgba(15,23,42,.14);border-radius:8px;background:#fff;box-shadow:0 16px 34px #0f172a29;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none}.board-frame--move .board-image{z-index:1}.board-image img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.board-layer{position:absolute;z-index:4;max-width:min(420px,100% - 2rem);border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#ffffffeb;box-shadow:0 12px 28px #0f172a1a}.board-layer--exercise{top:1rem;left:1rem;display:grid;gap:.25rem;padding:.8rem .9rem}.board-layer--exercise span,.board-layer--exercise small,.published-heading span{color:#64748b;font-size:.72rem;font-weight:800}.board-layer--exercise strong{font-size:clamp(1.15rem,3vw,2rem);line-height:1.15}.board-layer--published{right:1rem;bottom:1rem;display:grid;gap:.55rem;width:min(360px,100% - 2rem);max-height:min(420px,100% - 2rem);overflow:auto;padding:.75rem}.published-heading{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.published-heading button{min-height:30px;padding:0 .5rem;color:#0f172a}.published-item{display:grid;gap:.25rem;padding:.55rem;border-left:4px solid #e11d2e;border-radius:8px;background:#fff}.published-item--question{border-left-color:#0f766e}.published-item--exercise{border-left-color:#f59e0b}.published-item strong{font-size:.78rem}.published-item p{margin:0;font-size:.86rem;line-height:1.35}.math-entry{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.55rem}.step-list{margin-top:.8rem}.step-row{display:grid;grid-template-columns:30px minmax(0,1fr) 32px;align-items:center;gap:.55rem;width:100%;min-height:46px;padding:.35rem .45rem;border:1px solid rgba(148,163,184,.16);border-radius:8px;background:#02061757;color:var(--fk-text-primary);text-align:left;cursor:pointer}.step-row--active{border-color:#0f766e9e;background:#0f766e29}.step-row>span:first-child{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#94a3b824;color:#cbd5e1;font-size:.78rem;font-weight:900}.step-row strong{min-width:0;overflow-wrap:anywhere}.step-row__remove{display:inline-grid;place-items:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--fk-text-muted);cursor:pointer}.empty-inline,.copilot-empty{display:grid;justify-items:center;gap:.45rem;padding:1.2rem;border:1px dashed rgba(148,163,184,.2);border-radius:8px;color:var(--fk-text-muted);text-align:center;line-height:1.4}.empty-inline .material-icons,.copilot-empty .material-icons{font-size:1.8rem;color:#fecaca}.copilot-panel{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto}.copilot-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.copilot-panel__header .panel-heading{margin-bottom:0}.private-badge{color:#fecaca}.suggestion-section{display:grid;gap:.6rem;padding:.85rem 0;border-top:1px solid var(--muted-line)}.suggestion-section:first-of-type{border-top:0;padding-top:0}.suggestion-title{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.suggestion-title span{font-weight:900}.suggestion-title small{color:var(--fk-text-muted);font-size:.72rem}.editable-list,.next-exercise{display:grid;gap:.45rem;padding:.65rem;border:1px solid rgba(148,163,184,.14);border-radius:8px;background:#0206174d}.editable-list label{color:var(--fk-text-muted);font-size:.72rem;font-weight:800}.ghost-action{justify-self:start;min-height:34px;padding:0 .65rem}.next-exercise strong{font-size:1rem}.next-exercise span{color:var(--fk-text-muted);font-size:.76rem}.error-save p{margin:0;color:#fde68a;font-size:.86rem;line-height:1.4}@media(max-width:900px){.tutor-copilot--student .shape-picker__trigger{width:48px;min-width:48px}.tutor-copilot--student .shape-picker__popover{width:12.4rem}}
