:root{--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--primary-50:#f0fdfa;--primary-100:#ccfbf1;--primary-200:#99f6e4;--primary-300:#5eead4;--primary-400:#2dd4bf;--primary-500:#14b8a6;--primary-600:#0d9488;--primary-700:#0f766e;--primary-800:#115e59;--primary-900:#134e4a;--accent-50:#fffbeb;--accent-100:#fef3c7;--accent-200:#fde68a;--accent-300:#fcd34d;--accent-400:#fbbf24;--accent-500:#f59e0b;--accent-600:#d97706;--accent-700:#b45309;--accent-800:#92400e;--accent-900:#78350f;--success:#059669;--warning:#d97706;--danger:#dc2626;--info:#0284c7;--font-display:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--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;--space-16:64px;--shadow-xs:0 1px 2px #0f172a0d;--shadow-sm:0 1px 3px #0f172a14, 0 1px 2px #0f172a0f;--shadow-md:0 4px 6px -1px #0f172a14, 0 2px 4px -2px #0f172a0f;--shadow-lg:0 10px 15px -3px #0f172a14, 0 4px 6px -4px #0f172a0f;--shadow-xl:0 20px 25px -5px #0f172a1a, 0 8px 10px -6px #0f172a0f;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.35s cubic-bezier(.4, 0, .2, 1);--bg:var(--slate-50);--text:var(--slate-800);--muted:var(--slate-500);--card:#fff;--border:var(--slate-200);--primary:var(--primary-600);--accent:var(--accent-500);--calendar-timeline-bg:linear-gradient(135deg, var(--slate-50) 0%, var(--slate-100) 100%);--calendar-today-timeline-bg:linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);--calendar-timeline-shadow:0 2px 8px #0000000d;--calendar-grid-hour-line:#94a3b859;--calendar-grid-half-line:#94a3b833;--calendar-week-header-bg:linear-gradient(135deg, var(--slate-100) 0%, var(--slate-200) 100%);--calendar-week-header-today-bg:linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--calendar-week-header-blocked-bg:linear-gradient(135deg, #fee2e2f2 0%, #fecacae6 100%);--calendar-week-header-muted-color:var(--slate-600);--calendar-week-header-blocked-color:#991b1b;--calendar-week-header-border:1px solid var(--slate-200);--calendar-week-header-blocked-border:2px solid #ef444473;--calendar-week-header-today-border:2px solid #1e40af;--calendar-week-header-shadow:0 2px 4px #0000000f;--calendar-week-header-today-shadow:0 4px 12px #3b82f659;--calendar-week-col-border-blocked:2px solid #ef444473;--calendar-week-col-border-today:2px solid #3b82f6;--calendar-week-col-shadow:0 2px 8px #0000000f;--calendar-week-col-shadow-today:0 4px 16px #3b82f638;--calendar-icon-btn-bg:#ffffffeb;--calendar-blocked-day-overlay-bg:#ef44441a;--calendar-blocked-day-overlay-pattern:repeating-linear-gradient(135deg, transparent, transparent 8px, #ef44440f 8px, #ef44440f 16px);--calendar-blocked-slot-bg:#ef444426;--calendar-blocked-slot-border:2px solid #ef444466}html.dark{--slate-50:#0f172a;--slate-100:#1e293b;--slate-200:#334155;--slate-300:#475569;--slate-400:#64748b;--slate-500:#94a3b8;--slate-600:#cbd5e1;--slate-700:#e2e8f0;--slate-800:#f1f5f9;--slate-900:#f8fafc;--primary-50:#042f2e;--primary-100:#064e3b;--primary-200:#065f46;--primary-300:#047857;--primary-400:#14b8a6;--primary-500:#2dd4bf;--primary-600:#5eead4;--primary-700:#99f6e4;--primary-800:#ccfbf1;--primary-900:#f0fdfa;--accent-50:#451a03;--accent-100:#78350f;--accent-200:#92400e;--accent-300:#b45309;--accent-400:#d97706;--accent-500:#f59e0b;--accent-600:#fbbf24;--accent-700:#fcd34d;--accent-800:#fde68a;--accent-900:#fef3c7;--success:#34d399;--warning:#fbbf24;--danger:#f87171;--info:#38bdf8;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #00000059, 0 1px 2px #00000040;--shadow-md:0 4px 6px -1px #00000059, 0 2px 4px -2px #00000040;--shadow-lg:0 10px 15px -3px #00000059, 0 4px 6px -4px #00000040;--shadow-xl:0 20px 25px -5px #0006, 0 8px 10px -6px #0000004d;--bg:#0f172a;--text:#f1f5f9;--muted:#94a3b8;--card:#1e293b;--border:#334155;--primary:var(--primary-500);--accent:var(--accent-500);--color-surface:#1e293b;--color-text:#f1f5f9;--color-text-muted:#94a3b8;--color-border-subtle:#334155;--color-bg-subtle:#334155;--calendar-today-timeline-bg:linear-gradient(145deg, #1e3a8a6b 0%, #0f172af0 50%, #1e293bfa 100%);--calendar-timeline-shadow:0 2px 10px #00000047;--calendar-grid-hour-line:#94a3b838;--calendar-grid-half-line:#94a3b81c;--calendar-week-header-today-bg:linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--calendar-week-header-blocked-bg:linear-gradient(135deg, #7f1d1d94 0%, #450a0a85 100%);--calendar-week-header-muted-color:#fff;--calendar-week-header-blocked-color:#fecaca;--calendar-week-header-border:1px solid var(--slate-300);--calendar-week-header-blocked-border:2px solid #f8717180;--calendar-week-header-today-border:2px solid #60a5fa;--calendar-week-header-shadow:0 2px 6px #00000047;--calendar-week-header-today-shadow:0 4px 14px #2563eb59;--calendar-week-col-border-blocked:2px solid #f8717173;--calendar-week-col-border-today:2px solid #60a5fa;--calendar-week-col-shadow:0 2px 10px #00000038;--calendar-week-col-shadow-today:0 4px 18px #2563eb47;--calendar-icon-btn-bg:#1e293bf5;--calendar-blocked-day-overlay-bg:#f871711f;--calendar-blocked-day-overlay-pattern:repeating-linear-gradient(135deg, transparent, transparent 8px, #f8717112 8px, #f8717112 16px);--calendar-blocked-slot-bg:#f8717138;--calendar-blocked-slot-border:2px solid #f8717173;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{background:#fefaf7;height:100%;margin:0;padding:0;transition:background-color .3s}html.dark{background:#0c1222}body{font-family:var(--font-body);color:var(--slate-800);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fefaf7;min-height:100vh;font-size:15px;font-weight:700;line-height:1.6;transition:background-color .3s,color .3s;position:relative;overflow-x:hidden;margin:0!important;padding:0!important}html.dark body{color:#e2e8f0;background:#0c1222}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 50% -20%,#14b8a614,#0000),radial-gradient(60% 40% at 100% 100%,#f59e0b0f,#0000);position:fixed;inset:0}body:has(.app-container.no-header):before{display:none}#root{height:100%;margin:0;padding:0}.app-container{z-index:1;flex-direction:column;min-height:100%;display:flex;position:relative}.content{--desktop-sidebar-width:320px;z-index:1;gap:var(--space-6);flex:auto;align-items:flex-start;min-height:calc(100vh - 56px);padding-top:56px;display:flex;position:relative;overflow-x:hidden}.content:has(.calendar-sidebar){gap:var(--space-2)}.content:has(.page--with-footer){padding-bottom:0}@media (width>=1400px){.content:has(.sidebar){padding-right:calc(var(--desktop-sidebar-width) + var(--space-6));box-sizing:border-box}}.app-container.no-header .content{width:100%;padding-top:0}.page{max-width:1200px;padding:var(--space-8) var(--space-6);z-index:1;flex:1;min-width:0;margin:0 auto;position:relative;overflow-x:hidden}.page>:not(:last-child){margin-bottom:var(--space-6)!important}.page .card+.card,.page .card+section,.page section+.card,.page section+section{margin-top:var(--space-6)!important}.page .card:has(.calendar-mini){margin-bottom:var(--space-3)!important}.page .card+.progress-tracker-card{margin-top:var(--space-3)!important}.page-title{margin:0 0 var(--space-2);font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.02em;color:var(--slate-900);font-size:2.25rem;font-weight:600;line-height:1.2;position:relative}.page-subtitle{color:var(--slate-500);margin:0;font-size:1.1rem;font-weight:450}.section-title{margin:var(--space-5) 0 var(--space-3);font-family:var(--font-display);color:var(--slate-800);font-size:1.25rem;font-weight:550}.muted{color:var(--slate-500)}.error{color:var(--danger)}.row{align-items:center;display:flex}.row.space{justify-content:space-between}.row.gap,.gap{gap:var(--space-2)}.grow{flex:1}.grid-2{gap:var(--space-2);grid-template-columns:1fr 160px;align-items:center;display:grid}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);color:var(--slate-700);border:1px solid var(--slate-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);background:#fff;padding:10px 18px;font-size:14px;font-weight:550;line-height:1.4;text-decoration:none;display:inline-flex}.btn:hover{background:var(--slate-50);border-color:var(--slate-300);box-shadow:var(--shadow-sm)}.btn:active{box-shadow:none;transform:translateY(1px)}.btn.primary{background:var(--primary-600);color:#fff;border-color:var(--primary-600);box-shadow:var(--shadow-sm), 0 0 0 0 #14b8a600}.btn.primary:hover{background:var(--primary-700);border-color:var(--primary-700);box-shadow:var(--shadow-md), 0 0 0 3px #14b8a626}.btn.accent{background:var(--accent-500);color:#fff;border-color:var(--accent-500)}.btn.accent:hover{background:var(--accent-600);border-color:var(--accent-600);box-shadow:var(--shadow-md), 0 0 0 3px #f59e0b26}.btn-accent-glow{background:var(--accent-500);color:#fff;border:2px solid var(--accent-500);animation:2.5s ease-in-out infinite btn-glow-pulse;position:relative;box-shadow:0 0 20px #f59e0b59}.btn-accent-glow:hover{background:var(--accent-600);border-color:var(--accent-600);box-shadow:0 0 28px #f59e0b80,0 0 0 3px #f59e0b33}@keyframes btn-glow-pulse{0%,to{box-shadow:0 0 20px #f59e0b59}50%{box-shadow:0 0 26px #f59e0b80}}.info-section--primary .btn-accent-glow,.info-section--primary .btn.primary{animation:none}.info-section--primary .btn-accent-glow{box-shadow:0 0 16px #ffffff40}.info-section--primary .btn-accent-glow:hover{box-shadow:0 0 22px #ffffff59}.btn.danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn.danger:hover{box-shadow:var(--shadow-md), 0 0 0 3px #dc262626;background:#b91c1c;border-color:#b91c1c}.btn.ghost{box-shadow:none;color:var(--slate-600);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--slate-100);color:var(--slate-800)}.btn.disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.btn.plain{box-shadow:none;background:0 0;border:none;padding:0}.btn.plain:hover{box-shadow:none;background:0 0;transform:none}.button-row{gap:var(--space-3);margin:var(--space-3) 0;display:flex}.card{border:1px solid var(--slate-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal), border-color var(--transition-normal);background:#fff;overflow:hidden;margin:0 0 var(--space-5) 0!important}.page .card:last-of-type{margin-bottom:0!important}.card:hover{box-shadow:var(--shadow-md);border-color:var(--slate-300)}.card-title{font-family:var(--font-body);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--slate-100);background:var(--slate-50);color:var(--slate-800);justify-content:space-between;align-items:center;font-size:1rem;font-weight:600;display:flex}.card-actions{gap:var(--space-2);margin-left:var(--space-2);display:inline-flex}.card-body{padding:var(--space-5)}.powerpoint-library-grid .card{margin:0!important}.powerpoint-library-grid{gap:var(--space-3)}.powerpoint-library-grid .card-body{padding:var(--space-3)}.star-rating{touch-action:manipulation}.star-rating-star{border-radius:4px;outline:none}.star-rating-star:hover:not(:disabled) .star-rating-icon{transform:scale(1.15);color:#f59e0b!important}.star-rating-star:focus-visible{box-shadow:0 0 0 2px var(--primary-500)}@keyframes star-rating-bounce{0%{transform:scale(1)}50%{transform:scale(1.35)}to{transform:scale(1)}}.star-rating-star:active:not(:disabled) .star-rating-icon{animation:.35s star-rating-bounce}.list-card{border-left:3px solid var(--slate-200);transition:border-left-color var(--transition-fast), box-shadow var(--transition-fast)}.list-card:hover{border-left-color:var(--primary-400)}.select-card.selected{border-color:var(--primary-500);box-shadow:inset 0 0 0 2px #14b8a61a}.tag{color:#fff;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:12px;font-weight:550}.pill{background:var(--primary-50);color:var(--primary-700);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:12px;font-weight:550}.text-area,input,select,textarea{width:100%;font-family:var(--font-body);color:var(--slate-800);border:1px solid var(--slate-300);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;padding:10px 14px;font-size:15px;line-height:1.5}input[type=checkbox],input[type=radio]{width:auto;min-width:0;max-width:none;box-shadow:none;vertical-align:middle;background:0 0;border:none;border-radius:0;margin:0;padding:0}input:focus,select:focus,textarea:focus{border-color:var(--primary-400);outline:none;box-shadow:0 0 0 3px #14b8a61a}input::placeholder,textarea::placeholder{color:var(--slate-400)}.form-grid{gap:var(--space-5);display:grid}.form-grid label{gap:var(--space-2);display:grid}.form-grid label span{color:var(--slate-700);font-size:.9rem;font-weight:550}.filters-bar{margin-top:var(--space-2);margin-bottom:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.filters-row{gap:var(--space-2);flex-wrap:wrap;align-items:flex-end;display:flex}.filters-row.secondary{justify-content:space-between}.filter-field{gap:var(--space-1);flex-shrink:0;width:160px;min-width:160px;display:grid}.filter-label{color:var(--slate-500);font-size:12px;font-weight:500}.filters-row>.btn{align-self:flex-end;height:auto;min-height:0;margin-bottom:0;padding:10px 16px}.filters-bar.fixed-filters{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--slate-200);border-radius:var(--radius-lg);width:min(1200px,100% - 40px);padding:var(--space-3);box-shadow:var(--shadow-lg);background:#fffffff2;position:fixed;top:80px;left:50%;transform:translate(-50%)}.filters-row.no-wrap{flex-wrap:nowrap}.filters-row.curriculum-selectors{gap:var(--space-3);grid-template-columns:220px 260px 1fr;align-items:end;display:grid}.filters-row.curriculum-selectors .filter-field{width:auto;min-width:0}.filters-row.curriculum-selectors.no-top-level{grid-template-columns:260px 1fr}.nested{margin:var(--space-2) 0}.list{margin:0;padding:0;list-style:none}.list-item{padding:var(--space-3) 0;border-bottom:1px solid var(--slate-100);transition:padding-left var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.list-item:hover{padding-left:var(--space-1)}.list-item:last-child{border-bottom:none}.home-class-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.home-class-name{color:var(--slate-800);border-bottom:2px solid var(--slate-300);padding-bottom:2px;font-size:15px;font-weight:600;line-height:1.3;display:block}.home-class-details{color:var(--slate-500);margin-top:2px;padding-left:0;font-size:13px;line-height:1.4;display:block}.home-class-details--ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=640px){.list-item{padding:var(--space-3) 0;flex-wrap:wrap;gap:6px}.list-item>.row.gap:first-child,.list-item>.row.gap:last-child{width:100%}}.select-row{align-items:flex-start;gap:var(--space-3);display:flex}.code{margin-left:var(--space-2)}.counter{gap:var(--space-2);align-items:center;display:inline-flex}.counter>button{border-radius:var(--radius-sm);border:1px solid var(--slate-200);cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);background:#fff}.counter>button:hover{background:var(--slate-50);border-color:var(--slate-300)}.progress{align-items:center;gap:var(--space-3);flex:1;display:flex}.progress-track{background:var(--slate-100);border-radius:var(--radius-full);flex:1;height:10px;position:relative;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary-500), var(--primary-400));border-radius:var(--radius-full);height:100%;transition:width .4s cubic-bezier(.4,0,.2,1);position:relative}.progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-label{color:var(--slate-700);text-align:right;width:50px;font-size:13px;font-weight:600}.progress-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin:var(--space-3) 0;padding:var(--space-2) 0;display:flex}.progress-tracker-card .card-title{border-bottom:1px solid var(--slate-200);padding-bottom:var(--space-3);margin-bottom:0}.progress-tracker-card .card-body{padding:var(--space-5)}.progress-tracker{gap:var(--space-6);flex-direction:column;display:flex}.progress-tracker-subtitle{flex-shrink:0;margin:0;font-weight:500}.progress-tracker-summary{align-items:center;gap:var(--space-6);padding:var(--space-4) 0;border-bottom:1px solid var(--slate-200);flex-wrap:wrap;display:flex}.progress-tracker-ring{flex-shrink:0;width:88px;height:88px;position:relative}.progress-tracker-ring-svg{width:100%;height:100%}.progress-tracker-donut-segment{transition:opacity .2s}.progress-tracker-donut-segment:hover{opacity:.9}.progress-tracker-ring-value{color:var(--slate-800);justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;inset:0}.progress-tracker-stats{gap:var(--space-1);flex-direction:column;display:flex}.progress-tracker-count{color:var(--slate-700);margin:0;font-size:15px}.progress-tracker-across{margin:0}.progress-tracker-count strong{color:var(--slate-900)}.progress-tracker-date{margin:0;font-size:12px}.progress-tracker-list{flex-direction:column;gap:0;display:flex}.progress-tracker-list-header{padding:var(--space-2) 0;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);justify-content:space-between;align-items:center;font-size:11px;font-weight:600;display:flex}.progress-tracker-row{align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--slate-100);display:flex}.progress-tracker-row:last-child{border-bottom:none}.progress-tracker-row-label{align-items:center;gap:var(--space-2);flex-shrink:0;width:160px;min-width:0;display:flex}.progress-tracker-class-name{color:var(--slate-800);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.progress-tracker-count-inline{flex-shrink:0;font-size:12px}.progress-tracker-row-bar{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.progress-tracker-bar-track{background:var(--slate-100);border-radius:var(--radius-full);flex:1;height:10px;overflow:hidden}.progress-tracker-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-tracker-pct{color:var(--slate-700);text-align:right;min-width:36px;font-size:13px;font-weight:600}.calendar-mini{padding:var(--space-2) 0}.calendar-row{gap:var(--space-3);grid-template-columns:repeat(5,1fr);display:grid}.calendar-day{background:var(--slate-50);border-radius:var(--radius-md);text-align:center;padding:var(--space-3) var(--space-1) var(--space-2);color:var(--slate-700);transition:all var(--transition-fast);cursor:pointer;border:2px solid #0000;flex-direction:column;justify-content:flex-start;min-height:70px;display:flex;position:relative}.calendar-day:hover{background:var(--slate-100);box-shadow:var(--shadow-lg), 0 0 0 2px var(--primary-100);border-color:var(--primary-200);transform:translateY(-3px)}.calendar-day-today{font-weight:600}.calendar-day-today:before{content:"";background:var(--primary-500);z-index:1;border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.calendar-day-selected{font-weight:600;border-color:var(--primary-400)!important;box-shadow:var(--shadow-md), 0 0 0 2px var(--primary-100)!important;background:var(--primary-50)!important}.calendar-grid-cell{transition:all var(--transition-fast)}.calendar-grid-cell:hover{transform:translateY(-1px)}.calendar-shell{gap:var(--space-4);grid-template-columns:280px 1fr;display:grid}.calendar-sidebar{gap:var(--space-2);flex-direction:column;display:flex}.calendar-sidebar .sidebar-section{margin-bottom:var(--space-4);padding-bottom:var(--space-4)}.calendar-sidebar .sidebar-section:last-child{margin-bottom:0;padding-bottom:0}.calendar-sidebar .sidebar-title{margin-bottom:var(--space-2)}.calendar-sidebar .calendar-mini-header,.calendar-sidebar .calendar-sidebar-month{margin-bottom:var(--space-1)}.calendar-sidebar .sidebar-section .sidebar-btn+.sidebar-btn{margin-top:4px}.calendar-sidebar-card{border:1px solid var(--slate-200);border-radius:var(--radius-lg);padding:var(--space-3);background:#fff}.calendar-sidebar-month{margin-bottom:var(--space-2);color:var(--slate-800);text-align:center;flex:1;font-weight:700}.calendar-mini-header{align-items:center;gap:6px;display:flex}.calendar-mini-nav-btn{border:1px solid var(--slate-300);color:var(--slate-700);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;min-height:40px;font-size:13px;display:inline-flex}.calendar-mini-nav-btn:hover:not(:disabled){background:var(--slate-100)}.calendar-mini-nav-btn:disabled{opacity:.45;cursor:not-allowed}.calendar-mini-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-mini-heading{color:var(--slate-500);text-align:center;padding:2px 0;font-size:11px;font-weight:600}.calendar-mini-day{cursor:pointer;min-height:40px;color:var(--slate-700);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:10px 4px;font-size:12px;display:inline-flex}.calendar-mini-day.muted{color:var(--slate-600)}.calendar-mini-day.today{border-color:var(--primary-600)}.calendar-mini-day.selected{background:var(--primary-700);color:#fff}.calendar-sidebar-title{text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);margin-bottom:var(--space-2);font-size:12px;font-weight:700}.calendar-sidebar-legend{flex-direction:column;gap:6px;display:flex}.calendar-legend-row{color:var(--slate-700);cursor:pointer;font-size:13px;display:flex}.calendar-legend-chip{border:2px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:32px;padding:4px 8px 4px 10px;transition:box-shadow .15s,filter .15s;display:flex}.calendar-legend-chip:hover{filter:brightness(1.08);box-shadow:0 2px 6px #0003}.calendar-legend-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:inherit;flex:1;font-weight:600;overflow:hidden}.calendar-legend-checkbox{width:18px;height:18px;accent-color:var(--primary-600);cursor:pointer;flex-shrink:0}.calendar-legend-label-hidden{opacity:.7}.calendar-main{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.calendar-week-view-wrapper{flex:auto;min-height:0;overflow-y:hidden!important}@media (height<=750px){.calendar-week-view-wrapper{overflow-y:auto!important}}.calendar-week-view-wrapper .week-view-container{overflow-y:hidden}.calendar-month-grid{flex:auto;grid-auto-rows:minmax(0,1fr);height:100%;min-height:0;overflow-x:auto}.calendar-page{width:100%;max-width:none;padding:var(--space-2) var(--space-4) 0;flex-direction:column;align-self:stretch;min-height:calc(100vh - 56px);max-height:calc(100vh - 56px);margin:0;display:flex;overflow:hidden}.calendar-page>.card{flex-direction:column;flex:auto;display:flex;margin-bottom:0!important}.calendar-page>.card>.card-body{flex-direction:column;flex:auto;min-height:0;display:flex}@media (width>=1400px){.content:has(.calendar-sidebar){padding-right:var(--space-6)}}.calendar-page .page-title{margin-bottom:var(--space-2)}.page.mobile-calendar-page,.mobile-calendar-page{height:calc(100vh - 56px);min-height:0;padding:0 var(--space-2);flex-direction:column;display:flex;overflow:hidden}.mobile-calendar{flex-direction:column;flex:1;gap:0;min-height:0;display:flex;position:relative;overflow:hidden}.mobile-calendar-week-strip{background:var(--slate-50);border-bottom:1px solid var(--slate-200);padding:var(--space-2) 0;z-index:2;box-shadow:0 1px 0 var(--slate-200);flex-shrink:0}.mobile-calendar-week-nav{justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-2) var(--space-2);display:flex}.mobile-calendar-week-arrow{background:var(--slate-200);width:40px;height:40px;color:var(--slate-700);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:700;transition:background .15s,color .15s;display:flex}.mobile-calendar-week-arrow:hover,.mobile-calendar-week-arrow:focus{background:var(--slate-300);color:var(--slate-900)}.mobile-calendar-week-arrow:active{transform:scale(.96)}.mobile-calendar-week-nav .mobile-calendar-week-label{color:var(--slate-800);text-align:center;flex:1;min-width:0;padding:0;font-size:14px;font-weight:700}.mobile-calendar-week-strip-inner{padding:0 var(--space-2);-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:space-between;gap:4px;display:flex;overflow-x:auto}.mobile-calendar-week-strip-inner::-webkit-scrollbar{display:none}.mobile-calendar-week-day{cursor:pointer;min-width:44px;font:inherit;color:var(--slate-600);background:0 0;border:none;border-radius:12px;flex-direction:column;flex:none;align-items:center;gap:2px;padding:8px 10px;transition:background .15s,color .15s;display:flex}.mobile-calendar-week-day:active{background:var(--slate-200)}.mobile-calendar-week-day.selected{background:linear-gradient(135deg, var(--primary-600), var(--primary-500));color:#fff;font-weight:700}.mobile-calendar-week-dayname{text-transform:uppercase;opacity:.9;font-size:11px}.mobile-calendar-week-daynum{font-size:16px;font-weight:700}.mobile-calendar-week-dot{background:var(--primary-500);border-radius:50%;width:5px;height:5px;margin-top:2px}.mobile-calendar-week-day.selected .mobile-calendar-week-dot{background:#ffffffe6}.mobile-calendar-month-pull{cursor:pointer;touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;width:100%;margin:0;padding:12px 0 4px;display:flex}.mobile-calendar-month-pull:active .mobile-calendar-month-pull-handle{opacity:.7}.mobile-calendar-month-pull-handle{background:var(--slate-300);border-radius:2px;flex-shrink:0;width:28px;height:3px;transition:opacity .15s,background .15s}.mobile-calendar-month-pull.expanded .mobile-calendar-month-pull-handle{background:var(--slate-400)}.mobile-calendar-month-unified{flex-shrink:0;padding-top:4px;transition:height .35s ease-out;overflow:hidden}.mobile-calendar-month-unified.expanded{touch-action:pan-x}.mobile-calendar-month-unified-inner{will-change:transform;transition:transform .35s ease-out}.mobile-calendar-month-unified .mobile-calendar-month-title{color:var(--slate-800);text-align:center;height:24px;margin-bottom:4px;font-size:15px;font-weight:700;line-height:24px}.mobile-calendar-month-grid-unified{padding:0 var(--space-2);grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.mobile-calendar-month-unified .mobile-calendar-month-head{color:var(--slate-500);text-align:center;box-sizing:border-box;height:28px;padding:4px 0;font-size:10px;font-weight:600}.mobile-calendar-month-unified .mobile-calendar-month-cell{background:var(--slate-50);height:44px;min-height:44px;color:var(--slate-700);cursor:pointer;box-sizing:border-box;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;font-size:13px;font-weight:600;transition:background .15s;display:flex;position:relative}.mobile-calendar-month-unified .mobile-calendar-month-cell.outside{color:var(--slate-400);opacity:.65;background:0 0}.mobile-calendar-month-unified.collapsed .mobile-calendar-month-cell.in-current-week{opacity:1;color:var(--slate-700);background:0 0;border-radius:12px;font-size:16px}.mobile-calendar-month-unified.collapsed .mobile-calendar-month-cell.in-current-week.selected{background:linear-gradient(135deg, var(--primary-600), var(--primary-500));color:#fff}.mobile-calendar-month-cell-weekday{text-transform:uppercase;opacity:.9;font-size:11px;line-height:1.2;display:block}.mobile-calendar-month-unified.expanded .mobile-calendar-month-cell-weekday{display:none}.mobile-calendar-month-cell-num{line-height:1.2;display:block}.mobile-calendar-month-unified .mobile-calendar-month-cell.empty{cursor:default;background:0 0}.mobile-calendar-month-unified .mobile-calendar-month-cell.selected{background:var(--primary-600);color:#fff}.mobile-calendar-month-unified .mobile-calendar-month-cell.today{box-shadow:0 0 0 1px var(--primary-400)}.mobile-calendar-month-unified .mobile-calendar-month-dot{background:var(--primary-500);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.mobile-calendar-month-unified .mobile-calendar-month-cell.selected .mobile-calendar-month-dot{background:#ffffffe6}.mobile-calendar-month-unified .mobile-calendar-month-cell.blocked{background:#fee2e2;box-shadow:0 0 0 1px #ef444466}.mobile-calendar-month-unified .mobile-calendar-month-cell.blocked.selected{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%)}.mobile-calendar-month-wrap{padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--slate-200);background:#fff;flex-shrink:0}.mobile-calendar-month-title{color:var(--slate-800);margin-bottom:var(--space-3);text-align:center;font-size:15px;font-weight:700}.mobile-calendar-month-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.mobile-calendar-month-head{color:var(--slate-500);text-align:center;padding:4px 0;font-size:10px;font-weight:600}.mobile-calendar-month-cell{aspect-ratio:1;background:var(--slate-50);color:var(--slate-700);cursor:pointer;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;font-size:13px;font-weight:600;transition:background .15s;display:flex;position:relative}.mobile-calendar-month-cell.empty{cursor:default;background:0 0}.mobile-calendar-month-cell.selected{background:var(--primary-600);color:#fff}.mobile-calendar-month-cell.today{box-shadow:0 0 0 1px var(--primary-400)}.mobile-calendar-month-dot{background:var(--primary-500);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.mobile-calendar-month-cell.selected .mobile-calendar-month-dot{background:#ffffffe6}.mobile-calendar-day-list{-webkit-overflow-scrolling:touch;box-sizing:border-box;flex-direction:column;flex:1;align-items:stretch;min-height:0;display:flex;overflow:hidden auto}.mobile-calendar-day-list-spacer{flex:none;width:100%;height:180px;min-height:180px}.mobile-calendar-day-row{gap:var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--slate-100);min-height:0;scroll-margin-top:var(--space-2);flex:none;grid-template-columns:72px 1fr;grid-auto-rows:minmax(min-content,auto);align-content:start;align-items:start;display:grid;position:relative}.mobile-calendar-day-label{flex-direction:column;flex-shrink:0;gap:0;padding-top:2px;display:flex}.mobile-calendar-day-num{color:var(--slate-800);font-size:18px;font-weight:700;line-height:1.2}.mobile-calendar-day-weekday{color:var(--slate-500);font-size:12px}.mobile-calendar-day-blocked{color:#dc2626;background:#fee2e2;border-radius:4px;margin-left:4px;padding:2px 6px;font-size:10px;font-weight:600}.mobile-calendar-day-today{color:var(--primary-600);margin-top:2px;font-size:10px;font-weight:600}.mobile-calendar-day-content{flex-direction:column;flex-shrink:0;gap:8px;min-width:0;min-height:0;display:flex}.mobile-calendar-day-add{border:1px dashed var(--slate-300);color:var(--slate-500);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;align-items:center;padding:8px 12px;font-size:13px;transition:background .15s,color .15s;display:inline-flex}.mobile-calendar-day-add:hover,.mobile-calendar-day-add:focus{background:var(--slate-50);color:var(--slate-700)}.mobile-calendar-blocked-card{background:#fee2e2;border:1px solid #ef444466;border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.mobile-calendar-blocked-title{color:#991b1b;font-size:13px;font-weight:600}.mobile-calendar-blocked-meta{color:#b91c1c;opacity:.9;font-size:12px}.mobile-calendar-event-card{text-align:left;color:#fff;cursor:pointer;box-sizing:border-box;border:none;border-radius:10px;flex-direction:column;flex:none;align-items:flex-start;width:100%;min-width:0;padding:10px 12px;transition:transform .1s,box-shadow .1s;display:flex;box-shadow:0 2px 6px #0000001f}.mobile-calendar-event-card:active{transform:scale(.98)}.mobile-calendar-event-title{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden}.mobile-calendar-event-meta{opacity:.9;margin-top:2px;font-size:12px}.mobile-calendar-fab-wrap{bottom:calc(88px + env(safe-area-inset-bottom,0px));right:var(--space-3);z-index:100;align-items:flex-end;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.mobile-calendar-fab-wrap>*{pointer-events:auto}.mobile-calendar-fab-backdrop{z-index:99;background:0 0;position:fixed;inset:0}.mobile-calendar-fab-menu{z-index:101;background:#fff;border-radius:12px;flex-direction:column;gap:2px;min-width:160px;padding:6px;display:flex;box-shadow:0 4px 20px #0f172a26,0 0 0 1px #0f172a0f}.mobile-calendar-fab-menu-item{width:100%;color:var(--slate-700);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:500;transition:background .15s;display:block}.mobile-calendar-fab-menu-item:hover,.mobile-calendar-fab-menu-item:focus{background:var(--slate-100)}.mobile-calendar-fab{background:linear-gradient(135deg, var(--primary-600), var(--primary-500));color:#fff;cursor:pointer;z-index:102;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;font-weight:300;line-height:1;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 14px #0d948866}.mobile-calendar-fab:hover,.mobile-calendar-fab:focus{transform:scale(1.05);box-shadow:0 6px 18px #0d948873}.mobile-calendar-fab:active{transform:scale(.98)}.calendar-header-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.calendar-tip-card{background:#fffef7;border:1px solid #f3e2a3;border-radius:12px;max-width:420px;padding:10px 12px;box-shadow:0 4px 12px #0f172a14}.calendar-tip-title{color:#374151;margin-bottom:4px;font-size:12px;font-weight:700}.calendar-tip-card p{color:#4b5563;margin:0;font-size:12px;line-height:1.35}.calendar-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.calendar-topbar-left{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.calendar-nav-arrows{align-items:center;gap:4px;display:flex}.calendar-nav-arrows .btn{box-sizing:border-box;justify-content:center;align-items:center;height:42px;min-height:42px;padding:0 14px;display:inline-flex}.calendar-nav-arrow{--calendar-arrow-bg:var(--primary-600);--calendar-arrow-hover:var(--primary-700);--calendar-arrow-color:white;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;min-width:42px;height:42px;padding:0;font-size:1.25rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex;box-shadow:0 1px 2px #0000000f;color:var(--calendar-arrow-color)!important;background:var(--calendar-arrow-bg)!important}.calendar-nav-arrow:hover,.calendar-nav-arrow:focus-visible{transform:scale(1.04);background:var(--calendar-arrow-hover)!important;color:var(--calendar-arrow-color)!important}.calendar-nav-arrow:active{transform:scale(.98)}.calendar-title{margin:0 0 0 var(--space-2);color:var(--slate-900);font-size:1.35rem}.calendar-view-switch{border:1px solid var(--slate-300);border-radius:var(--radius-md);background:#fff;display:inline-flex;overflow:hidden}.calendar-topbar-weekends{justify-content:flex-end;min-width:146px;display:flex}.calendar-topbar-weekends .btn.is-hidden{visibility:hidden;pointer-events:none}.calendar-view-btn{box-sizing:border-box;cursor:pointer;min-width:4.5rem;min-height:44px;color:var(--slate-700);background:#fff;border:none;padding:10px 16px;font-size:13px;font-weight:600}.calendar-view-btn.active{background:var(--primary-700);color:#fff}.calendar-month-heading{text-align:center;color:#374151;background:linear-gradient(135deg,#f3f4f6cc 0%,#e5e7ebcc 100%);border:1px solid #e5e7ebcc;border-radius:6px;padding:5px 2px;font-size:11px;font-weight:700}.calendar-week-label{color:#1f2937;word-break:break-word;background:linear-gradient(135deg,#0d94881a 0%,#8b5cf61a 100%);border:1px solid #0d948833;border-radius:5px;align-items:center;padding:clamp(2px,.3vw,4px);font-size:clamp(8px,.75vw,10px);font-weight:600;line-height:1.1;display:flex}.calendar-week-label.holiday{color:#9ca3af;background:#9ca3af1a;border-color:#9ca3af33}.calendar-month-cell{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:clamp(1px,.25vw,3px);height:100%;min-height:0;padding:clamp(3px,.4vw,6px);display:flex}.calendar-month-cell.muted{opacity:.5}.calendar-month-cell.today{background:#eff6ff;border:2px solid #3b82f6}.calendar-month-cell.selected{box-shadow:0 0 0 2px var(--primary-300) inset}.calendar-month-cell.blocked{background:#fee2e2;border-color:#ef4444}.calendar-month-cell-date{color:var(--slate-800);font-size:clamp(10px,1vw,13px);font-weight:700}.calendar-month-cell-head{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.calendar-month-cell-head-left{flex-direction:column;flex:auto;align-items:flex-start;gap:2px;min-width:0;display:flex}.calendar-month-cell-status{letter-spacing:.01em;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;font-size:clamp(7px,.68vw,9px);font-weight:600;line-height:1.25}.calendar-month-cell-status.is-weekend{color:var(--slate-500)}.calendar-month-cell-status.is-school-holiday{color:var(--accent-800)}.calendar-month-cell-status--day-agenda{text-align:left;word-break:break-word;flex-shrink:0;max-width:min(280px,52vw);margin-left:10px;font-size:11px;font-weight:600;line-height:1.25}.calendar-month-cell-status--week-agenda{text-align:center;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;margin-top:1px;padding:0 2px;font-size:clamp(7px,1.15vw,9px);font-weight:600;line-height:1.25;display:block}.calendar-week-header--today .calendar-month-cell-status.is-weekend{color:#ffffffe0}.calendar-week-header--today .calendar-month-cell-status.is-school-holiday{color:#fef08a}html.dark .calendar-week-column-header:not(.calendar-week-header--today):not(.calendar-week-column-header--blocked) .calendar-week-header-weekday{color:#fff;font-weight:600;opacity:1!important}html.dark .calendar-week-column-header:not(.calendar-week-header--today):not(.calendar-week-column-header--blocked) .calendar-week-header-daynum{color:#fff}.calendar-month-cell-weekday{color:var(--slate-500);text-transform:uppercase;letter-spacing:.03em;text-align:right;font-size:clamp(8px,.75vw,10px);font-weight:700;line-height:1}.calendar-month-events{flex-direction:column;flex:auto;gap:2px;min-height:0;display:flex;overflow:hidden}.calendar-month-event{color:#fff;text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border:none;border-radius:clamp(3px,.4vw,6px);flex-shrink:1;min-height:0;padding:clamp(1px,.3vw,3px) clamp(3px,.5vw,6px);font-size:clamp(8px,.85vw,11px);line-height:1.3;overflow:hidden}.calendar-month-event--custom{opacity:.9}.calendar-month-overflow{color:var(--slate-500);text-align:center;cursor:pointer;border-radius:4px;flex-shrink:0;padding:1px 4px;font-size:clamp(8px,.75vw,10px);font-weight:600;transition:background .15s}.calendar-month-overflow:hover{background:var(--slate-100);color:var(--slate-700)}.calendar-day-view-head{box-sizing:border-box;background:var(--slate-100);border:1px solid var(--border);width:100%;min-width:0;height:54px;box-shadow:var(--shadow-xs);border-radius:10px;justify-content:center;align-items:center;margin-bottom:6px;padding:0 5.5rem 0 12px;display:flex;position:relative}.calendar-day-view-head-inner{flex-direction:row;justify-content:center;align-items:center;gap:10px;width:100%;min-width:0;display:flex}.calendar-day-view-head h3{color:var(--slate-800);text-align:center;white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:15px;font-weight:700;line-height:1.2;overflow:hidden}.calendar-day-view-head .calendar-month-cell-status--day-agenda{text-align:left;flex-shrink:0;max-width:min(200px,34vw);margin-left:0;line-height:1.2}.calendar-day-view-lesson-count{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar-day-empty{border:1px dashed var(--slate-300);padding:var(--space-5);border-radius:var(--radius-lg);text-align:center;color:var(--slate-500)}.calendar-day-list{gap:var(--space-2);flex-direction:column;display:flex}.calendar-day-card{text-align:left;border:1px solid var(--slate-200);border-left:4px solid var(--primary-500);border-radius:var(--radius-md);padding:var(--space-3);cursor:pointer;background:#fff}.calendar-day-card-time{color:var(--slate-600);font-size:12px;font-weight:700}.calendar-day-card-title{color:var(--slate-900);margin-top:2px;font-weight:600}.calendar-day-card-class{margin-top:2px;font-size:12px}.calendar-lesson-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70;background:#0f172a9e;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.unified-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:500;box-sizing:border-box;background:#0f172a9e;justify-content:center;align-items:flex-start;padding:72px 24px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.calendar-lesson-modal-wrap{box-sizing:border-box;width:100%;max-width:760px;max-height:86vh;overflow-y:auto}.calendar-lesson-detail-body{box-sizing:border-box;flex-direction:column;gap:12px;min-width:0;padding:16px 20px 20px;display:flex}.calendar-lesson-detail-headline{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.calendar-lesson-detail-headline-text{flex:1;min-width:0}.calendar-lesson-detail-duration{color:var(--slate-600);flex-shrink:0;padding-top:2px;font-size:13px;line-height:1.35}.calendar-lesson-detail-outline{margin:0;padding-left:1.15rem;line-height:1.55;list-style-position:outside}.calendar-lesson-detail-outline li{margin-bottom:6px}.calendar-lesson-detail-outline li:last-child{margin-bottom:0}.calendar-lesson-detail-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;margin-top:4px;display:flex}.calendar-lesson-detail-resource-list{margin:0;padding-left:0;list-style:none}.calendar-lesson-detail-resource-list>li{border-bottom:1px solid var(--slate-200);margin-bottom:10px;padding-bottom:10px}.calendar-lesson-detail-resource-list>li:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.add-event-modal-wrap{width:92%;max-width:580px}.add-event-datetime-row{grid-template-columns:1fr 1fr 1fr;gap:10px;min-width:0;display:grid}.add-event-field{min-width:0;overflow:hidden}.add-event-datetime-row .add-event-input,.add-event-input{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important}@media (width<=540px){.calendar-lesson-modal-overlay{box-sizing:border-box;align-items:flex-start;padding:8px}.add-event-modal-wrap{box-sizing:border-box;max-height:90vh;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important}.add-event-modal-card{box-sizing:border-box;width:100%;min-width:0;overflow-x:hidden}.add-event-modal-body{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:hidden;padding-left:12px!important;padding-right:12px!important}.calendar-lesson-detail-body{padding-left:16px;padding-right:16px}.add-event-datetime-row{grid-template-columns:1fr;gap:12px;width:100%;min-width:0}.add-event-field{width:100%;min-width:0;overflow:hidden}.add-event-datetime-row .add-event-input,.add-event-input{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;display:block!important}.add-event-desc-colour-row{gap:12px;width:100%;min-width:0;grid-template-columns:1fr!important}}.calendar-lesson-modal-card{border-radius:var(--radius-xl);border-color:#0d948838;box-shadow:0 20px 50px #0f172a33}.calendar-lesson-modal-card .card-title{color:#1f2937;background:linear-gradient(135deg,#14b8a629 0%,#3b82f61a 100%);border-bottom:1px solid #0d948838;padding:14px 18px;font-size:1.1rem;font-weight:700}.calendar-lesson-modal-datetime{color:#0f766e;background:#fffc;border:1px solid #0d948840;border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.calendar-lesson-modal-summary{align-items:flex-start;gap:var(--space-3)}.calendar-lesson-modal-meta{margin-top:4px}.calendar-lesson-modal-outline{margin-top:10px;padding-left:20px;line-height:1.55}.calendar-lesson-modal-outline li{margin-bottom:4px}.calendar-lesson-modal-actions{justify-content:flex-end;gap:8px;margin-top:14px}@media (width<=1024px){.calendar-shell{grid-template-columns:1fr}.calendar-sidebar{order:2}.calendar-main{order:1}}@media (width<=768px){.calendar-header-row{flex-direction:column}.calendar-tip-card{max-width:100%}.calendar-topbar{flex-direction:column;align-items:stretch}.calendar-topbar-left{justify-content:space-between}.calendar-title{margin-left:0;font-size:1.1rem}}.info-banner{gap:var(--space-4);background:var(--accent-50);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--accent-200);align-items:center;display:flex}.koala-helper-root{display:contents}.koala-helper-corner{z-index:35;pointer-events:none;opacity:0;flex-direction:column;align-items:flex-end;gap:6px;transition:opacity .2s;display:flex;position:fixed;bottom:-30px;right:-28px}.koala-helper-corner-visible{opacity:1}.koala-helper-bubble{pointer-events:auto;background:#fffef7;border:1px solid #f3e2a3;border-radius:14px;max-width:min(340px,34vw);margin-right:44px;padding:16px 14px 28px;line-height:1.5;position:relative;box-shadow:0 8px 24px #0f172a1f}.koala-helper-bubble:after{content:"";border-top:10px solid #f3e2a3;border-left:8px solid #0000;border-right:8px solid #0000;width:0;height:0;position:absolute;bottom:-10px;right:96px}.koala-helper-bubble:before{content:"";z-index:1;border-top:9px solid #fffef7;border-left:7px solid #0000;border-right:7px solid #0000;width:0;height:0;position:absolute;bottom:-8px;right:97px}.koala-helper-image{filter:drop-shadow(0 8px 18px #0f172a33);pointer-events:none;height:auto;display:block}.koala-helper-close{cursor:pointer;color:#6b7280;background:0 0;border:none;padding:2px 6px;font-size:12px;position:absolute;bottom:6px;right:8px}.koala-helper-close:hover{color:#374151}@media (width<=1024px){.koala-helper-corner{display:none}.koala-helper-mobile-card{margin-bottom:var(--space-3);display:flex}}@media (width>=1025px){.koala-helper-mobile-card{display:none}}@media (width>=1025px) and (width<=1399px){.koala-helper-corner{display:none}}@media (width>=1025px) and (height<=900px){.koala-helper-corner{display:none}.koala-helper-mobile-card{margin-bottom:var(--space-3);display:flex}}@media (width>=1701px) and (height>=901px){.page--powerpoint-library{--ppt-left-shift:clamp(0px, calc((1900px - 100vw) * .45), 150px);transform:translateX(calc(-1 * var(--ppt-left-shift)))}}@media (width>=1025px) and (width<=1700px),(width>=1025px) and (height<=900px){.koala-helper-corner--powerpoint-library{display:none}.koala-helper-mobile-card--powerpoint-library{margin-bottom:var(--space-3);display:flex}.page--powerpoint-library{transform:none}}@media (width>=1701px) and (height>=901px){.page--account-details{--account-left-shift:clamp(0px, calc((1900px - 100vw) * .45), 150px);transform:translateX(calc(-1 * var(--account-left-shift)))}}@media (width>=1025px) and (width<=1700px),(width>=1025px) and (height<=900px){.koala-helper-corner--account,.koala-helper-corner--account-pro{display:none}.koala-helper-mobile-card--account,.koala-helper-mobile-card--account-pro{margin-bottom:var(--space-3);display:flex}.page--account-details{transform:none}}.avatar{font-size:24px}.header-banner{border-bottom:1px solid var(--slate-200);box-shadow:var(--shadow-sm);z-index:100;padding:var(--space-4) 0;background:#fff;width:100%;position:fixed;top:0;left:0;right:0;margin:0!important}.header-content{width:100%;max-width:none;padding:0 var(--space-8);box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--space-6);margin:0;display:flex}.header-logo-section{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.header-logo{object-fit:contain;width:36px;height:36px}.header-brand{font-family:var(--font-display);color:var(--slate-900);white-space:nowrap;font-size:1.35rem;font-weight:600;line-height:1}.header-nav{gap:var(--space-1);flex-shrink:0;justify-content:flex-end;align-items:center;margin-left:auto;display:flex}@media (width>=1025px){.header-content{justify-content:space-between;position:static}.header-nav{justify-content:flex-end;margin-left:auto;position:static;transform:none}}@media (width<=1200px){.header-nav-item span{display:none}.header-nav{gap:var(--space-1)}.header-nav-item{padding:var(--space-2)}.header-nav-item svg{width:20px;height:20px}}.header-nav-item{align-items:center;gap:var(--space-2);color:var(--slate-600);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:all var(--transition-fast);white-space:nowrap;font-size:14px;font-weight:500;text-decoration:none;display:flex;position:relative}.header-nav-item svg{width:18px;height:18px;transition:transform var(--transition-fast)}.header-nav-item:hover{color:var(--slate-800);background:var(--slate-100)}.header-nav-item:hover svg{transform:scale(1.05)}.header-nav-item.active{color:var(--primary-700);background:var(--primary-50);font-weight:600}.header-nav-item.active:after{content:"";background:var(--primary-600);border-radius:var(--radius-full);width:24px;height:2px;position:absolute;bottom:-17px;left:50%;transform:translate(-50%)}.header-nav-dropdown{position:relative}.header-nav-dropdown>button.header-nav-item{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none;width:100%}.header-nav-dropdown-menu{top:calc(100% + var(--space-3));background:var(--white,#fff);border:1px solid var(--slate-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2);gap:var(--space-1);z-index:200;flex-direction:column;min-width:160px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.header-nav-dropdown-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--slate-700);transition:background var(--transition-fast), color var(--transition-fast);white-space:nowrap;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.header-nav-dropdown-item svg{flex-shrink:0;width:16px;height:16px}.header-nav-dropdown-item:hover{background:var(--slate-100);color:var(--slate-900)}.header-nav-dropdown-item.active{background:var(--primary-50);color:var(--primary-700);font-weight:600}@media (width<=480px){.header-nav-dropdown-menu{top:auto;bottom:calc(100% + var(--space-2));left:50%;transform:translate(-50%)}}.info-page{flex:100%;width:100%;min-width:100%;max-width:none;margin:0;padding:0}.info-scroll-anchor{scroll-margin-top:7.5rem}.info-site-header{z-index:101;width:100%;position:sticky;top:0}.info-beta-banner{text-align:center;color:#92400e;background:#fef3c7;border-bottom:1px solid #fcd34d;padding:10px 16px;font-size:13px;font-weight:500}.info-top-bar{border-bottom:1px solid var(--slate-200);width:100%;box-shadow:var(--shadow-xs);z-index:0;background:#fff;position:relative}.info-top-bar-inner{max-width:1200px;padding:var(--space-3) var(--space-6);align-items:center;gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);margin:0 auto;display:grid}.info-top-bar-brand{align-items:center;gap:var(--space-2);color:var(--slate-900);grid-column:1;justify-self:start;min-width:0;font-size:1.1rem;font-weight:600;text-decoration:none;display:inline-flex}.info-top-bar-brand img{width:auto;height:36px;display:block}.info-top-bar-title{font-family:var(--font-display)}.info-top-bar-mid{justify-content:center;align-items:center;gap:var(--space-2) var(--space-5);flex-wrap:wrap;grid-column:2;justify-self:center;display:flex}.info-top-bar-mid-link{color:var(--slate-600);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);box-shadow:none;transition:color var(--transition-fast), background var(--transition-fast);-webkit-tap-highlight-color:transparent;background:0 0;border:none;font-size:.9rem;font-weight:500;text-decoration:none}.info-top-bar-mid-link:hover{color:var(--slate-900);background:var(--slate-100)}.info-top-bar-mid-link:focus{outline:none}.info-top-bar-mid-link:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.info-top-bar-mid a[aria-current=page]{color:var(--primary-700);font-weight:600}.info-top-bar-mid a[aria-current=page]:hover{color:var(--primary-800);background:var(--primary-50)}.info-top-bar-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);grid-column:3;justify-self:end;min-width:0;display:flex}.info-top-bar-actions .btn{padding:var(--space-2) var(--space-4);font-size:.9rem}.info-top-bar-hamburger{display:none}.info-mobile-nav{border-top:1px solid var(--slate-200);padding:var(--space-2) var(--space-4) var(--space-3);gap:var(--space-1);background:#fff;flex-direction:column;display:flex}.info-mobile-nav .info-top-bar-mid-link{padding:var(--space-2) var(--space-2);font-size:.95rem}.info-hero{text-align:center;background:linear-gradient(180deg, #fefaf7 0%, var(--slate-50) 50%, var(--primary-50) 100%);min-height:100vh;padding:var(--space-4) var(--space-6) var(--space-6);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:visible}.info-hero:before{content:"";z-index:0;pointer-events:none;--line-blue:#3b82f614;background:repeating-linear-gradient(to bottom, transparent 0, transparent 47px, var(--line-blue) 47px, var(--line-blue) 48px);-webkit-mask-composite:source-in;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 25% 75%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 22% 78%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 25% 75%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 22% 78%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.info-hero-inner{align-items:center;gap:var(--space-4);z-index:1;flex-direction:column;max-width:820px;margin-top:-2rem;display:flex;position:relative}.info-hero-brand{justify-content:center;align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.info-hero-koala{flex-shrink:0}.info-hero-koala img{width:auto;height:clamp(110px,17vw,200px);display:block}.info-hero-title{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(4rem,13vw,8rem);font-weight:700;line-height:1.05}.info-hero-title-main{color:var(--slate-900)}.info-hero-title-accent{color:var(--primary-600)}.info-hero-ticker{width:100%;max-width:100%;margin-top:var(--space-3);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 6% 94%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 6% 94%,#0000 100%)}.info-hero-ticker-track{align-items:center;gap:var(--space-6);width:max-content;animation:45s linear infinite info-ticker-scroll;display:flex}.info-hero-ticker-item{color:var(--slate-500);white-space:nowrap;flex-shrink:0;font-size:1.2rem;font-weight:500}@keyframes info-ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.info-hero-sub{color:var(--slate-700);font-size:1.75rem;font-weight:600}.info-hero-flip-wrap{text-align:center;vertical-align:bottom;min-width:4.8em;display:inline-block;position:relative}.info-hero-flip-word{color:var(--primary-600);animation:.5s ease-out info-flip-in;display:inline-block}@keyframes info-flip-in{0%{opacity:0;transform:translateY(.4em)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.info-hero-desc{color:var(--slate-600);font-size:1.35rem;font-weight:450;line-height:1.65}.info-hero-cta{gap:var(--space-4);margin-top:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.info-hero-cta .btn{padding:var(--space-4) var(--space-6);font-size:1.15rem}.info-hero-scroll-hint{margin-top:var(--space-5);color:var(--slate-500);font-size:.9rem;font-weight:500;animation:2s ease-in-out infinite info-scroll-hint}@keyframes info-scroll-hint{0%,to{opacity:.7;transform:translateY(0)}50%{opacity:1;transform:translateY(4px)}}.info-section{width:100%;padding:var(--space-16) var(--space-6);isolation:isolate;position:relative}.info-section--how-intro{padding:var(--space-10) var(--space-6) var(--space-2)}.info-section--how-intro .info-section-header{margin-bottom:0}.info-section--how-intro .info-section-title{font-size:clamp(1.4rem,3.5vw,1.85rem)}.info-section--how-intro .info-section-subtitle{font-size:.95rem}.info-section--feature{padding:var(--space-12) var(--space-6)}.info-feature-split{gap:var(--space-10);grid-template-columns:1fr 1.15fr;align-items:center;max-width:1100px;margin:0 auto;display:grid}.info-feature-split.image-right .info-feature-text{order:1}.info-feature-split.image-right .info-feature-visual,.info-feature-split.image-left .info-feature-text{order:2}.info-feature-split.image-left .info-feature-visual{order:1}.info-feature-label{text-transform:uppercase;letter-spacing:.08em;color:var(--primary-600);background:var(--primary-50);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-bottom:var(--space-3);font-size:.8rem;font-weight:600;display:inline-block}.info-feature-title{font-family:var(--font-display);color:var(--slate-900);margin:0 0 var(--space-3);font-size:clamp(1.4rem,3vw,1.85rem);font-weight:600;line-height:1.25}.info-feature-body{color:var(--slate-600);margin:0 0 var(--space-4);font-size:1rem;line-height:1.7}.info-feature-bullets{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.info-feature-bullets li{color:var(--slate-700);padding-left:1.5em;font-size:.92rem;line-height:1.5;position:relative}.info-feature-bullets li:before{content:"✓";color:var(--primary-500);font-weight:700;position:absolute;left:0}.info-mockup{border-radius:var(--radius-lg);border:1px solid var(--slate-200);box-shadow:var(--shadow-lg), 0 0 0 1px #00000008;background:#fff;font-size:.82rem;overflow:hidden}.info-mockup-chrome{background:var(--slate-50);border-bottom:1px solid var(--slate-200);align-items:center;gap:6px;padding:10px 14px;display:flex}.info-mockup-dot{background:var(--slate-300);border-radius:50%;width:10px;height:10px}.info-mockup-dot:first-child{background:#ef4444}.info-mockup-dot:nth-child(2){background:#f59e0b}.info-mockup-dot:nth-child(3){background:#22c55e}.info-mockup-tab{color:var(--slate-500);border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:#fff;margin-left:auto;padding:2px 10px;font-size:.75rem;font-weight:600}.info-mockup-chrome-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.info-mockup-chrome-title-btn{color:#fff;background:var(--primary-600);border-radius:var(--radius-sm);cursor:default;white-space:nowrap;padding:5px 12px;font-size:.72rem;font-weight:600}.info-mockup-body{grid-template-columns:130px 1fr;min-height:260px;display:grid}.info-mockup-sidebar{background:var(--slate-50);border-right:1px solid var(--slate-100);padding:var(--space-2) 0;flex-direction:column;gap:0;display:flex}.info-mockup-sidebar-label{color:var(--slate-400);letter-spacing:.04em;padding:var(--space-1) var(--space-3) 4px;font-size:.55rem;font-weight:600}.info-mockup-sidebar-add{color:#fff;background:var(--primary-500);border-radius:var(--radius-sm);margin:0 var(--space-2) var(--space-2);text-align:center;cursor:default;padding:4px 0;font-size:.68rem;font-weight:600}.info-mockup-sidebar-item{align-items:center;gap:var(--space-2);padding:5px var(--space-3);color:var(--slate-600);cursor:default;border-left:3px solid #0000;font-size:.7rem;display:flex}.info-mockup-sidebar-item.active{color:var(--primary-700);border-left-color:var(--primary-500);background:#fff;font-weight:600}.info-mockup-sidebar-icon{flex-shrink:0;font-size:.8rem}.info-mockup-sidebar-text{flex-direction:column;line-height:1.2;display:flex}.info-mockup-sidebar-meta{color:var(--slate-400);font-size:.55rem;font-weight:400}.info-mockup-main{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex;overflow:hidden}.info-mockup-week-segment{gap:var(--space-2);flex-direction:column;width:100%;min-width:0;display:flex}.info-mockup-week-segment .planning-lesson-week-header{align-self:flex-start;width:fit-content;max-width:100%;margin:0;font-size:.55rem}.info-mockup-carousel{gap:var(--space-2);display:flex;overflow:hidden}.info-mockup-card{border:1px solid var(--slate-200);border-radius:var(--radius-md);padding:var(--space-2);background:#fff;flex-direction:column;flex:0 0 120px;gap:4px;display:flex;position:relative}.info-mockup-card.active{border-color:var(--primary-400);background:var(--primary-50);box-shadow:0 0 0 1px var(--primary-200)}.info-mockup-card.faded{opacity:.45}.info-mockup-card-header{justify-content:space-between;align-items:center;display:flex}.info-mockup-card-date{color:var(--slate-500);font-size:.6rem;font-weight:500}.info-mockup-card-dur{color:var(--primary-600);background:var(--primary-50);border-radius:var(--radius-sm);padding:1px 5px;font-size:.55rem;font-weight:600}.info-mockup-card-title{color:var(--slate-800);font-size:.68rem;font-weight:600;line-height:1.25}.info-mockup-card-tag{border-radius:var(--radius-sm);width:fit-content;margin-top:auto;padding:1px 6px;font-size:.52rem;font-weight:600}.info-mockup-card-tag.maths{background:var(--primary-100);color:var(--primary-700)}.info-mockup-card-tag.eng{color:#1e40af;background:#dbeafe}.info-mockup-card-tag.sci{color:#92400e;background:#fef3c7}.info-mockup-detail{border:1px solid var(--slate-100);border-radius:var(--radius-md);padding:var(--space-3);background:#fff;flex-direction:column;gap:6px;display:flex}.info-mockup-detail-tags{flex-wrap:wrap;gap:4px;display:flex}.info-mockup-detail-tag{border-radius:999px;padding:2px 8px;font-size:.55rem;font-weight:500}.info-mockup-detail-tag.primary{background:var(--primary-100);color:var(--primary-700)}.info-mockup-detail-tag.muted{background:var(--slate-100);color:var(--slate-600)}.info-mockup-detail-title{color:var(--slate-900);font-size:.85rem;font-weight:700}.info-mockup-detail-meta{color:var(--slate-400);font-size:.58rem}.info-mockup-detail-term{color:var(--primary-600);font-size:.58rem;font-weight:500}.info-mockup-detail-section{letter-spacing:.06em;color:var(--slate-500);border-top:1px solid var(--slate-100);margin-top:4px;padding-top:6px;font-size:.55rem;font-weight:700}.info-mockup-detail-list{color:var(--slate-600);margin:0;padding-left:14px;font-size:.62rem;line-height:1.5}.info-mockup-detail-list li{margin-bottom:2px}.info-mockup-detail-actions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.info-mockup-btn{border-radius:var(--radius-sm);background:var(--slate-100);color:var(--slate-600);cursor:default;padding:3px 10px;font-size:.55rem;font-weight:500}.info-mockup-btn.primary{background:var(--primary-500);color:#fff}.info-mockup-btn.accent{background:var(--accent-500);color:#fff}.info-mockup-body--cal{padding:var(--space-3) var(--space-4);grid-template-columns:1fr}.info-mockup-cal-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.info-mockup-cal-nav{align-items:center;gap:6px;display:flex}.info-mockup-cal-nav-btn{background:var(--primary-500);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:flex}.info-mockup-cal-views{background:var(--slate-100);border-radius:var(--radius-sm);gap:2px;padding:2px;display:flex}.info-mockup-cal-view-btn{color:var(--slate-500);cursor:default;border-radius:4px;padding:3px 8px;font-size:.65rem;font-weight:600}.info-mockup-cal-view-btn.active{background:var(--primary-500);color:#fff}.info-mockup-cal-grid{flex-direction:column;gap:0;display:flex}.info-mockup-cal-row{grid-template-columns:44px repeat(5,1fr);gap:0;display:grid}.info-mockup-cal-row--head{color:var(--slate-400);text-align:center;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:.6rem;font-weight:600}.info-mockup-cal-wk{color:var(--slate-400);justify-content:center;align-items:flex-start;padding-top:6px;font-size:.58rem;font-weight:600;display:flex}.info-mockup-cal-wk-label{writing-mode:vertical-lr;letter-spacing:.03em;white-space:nowrap;font-size:.55rem;transform:rotate(180deg)}.info-mockup-cal-cell{border:1px solid var(--slate-100);background:#fff;flex-direction:column;justify-content:center;gap:2px;min-height:56px;padding:3px 4px;font-size:.65rem;display:flex;overflow:hidden}.info-mockup-cal-date{color:var(--slate-600);margin-bottom:1px;font-size:.68rem;font-weight:600;line-height:1}.info-mockup-cal-lessons{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.info-mockup-cal-pill{white-space:nowrap;text-overflow:ellipsis;color:#fff;border-radius:3px;padding:1px 4px;font-size:.5rem;font-weight:600;line-height:1.5;display:block;overflow:hidden}.info-mockup-cal-pill.maths{background:#0d9488}.info-mockup-cal-pill.eng{background:#f59e0b}.info-mockup-cal-pill.sci{background:#8b5cf6}.info-mockup-cal-pill.art{background:#ec4899}.info-mockup-body--ppt{grid-template-columns:120px 1fr}.info-mockup-ppt-slides{background:var(--slate-50);border-right:1px solid var(--slate-100);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.info-mockup-ppt-slide{border-radius:var(--radius-sm);border:1px solid var(--slate-200);padding:var(--space-2);cursor:default;background:#fff}.info-mockup-ppt-slide.active{border-color:var(--primary-400);box-shadow:0 0 0 2px var(--primary-100)}.info-mockup-ppt-slide-title{color:var(--slate-700);margin-bottom:4px;font-size:.65rem;font-weight:600}.info-mockup-ppt-slide-body{flex-direction:column;gap:3px;display:flex}.info-mockup-ppt-line{background:var(--slate-200);border-radius:2px;height:4px}.info-mockup-ppt-line.w90{width:90%}.info-mockup-ppt-line.w85{width:85%}.info-mockup-ppt-line.w80{width:80%}.info-mockup-ppt-line.w75{width:75%}.info-mockup-ppt-line.w70{width:70%}.info-mockup-ppt-line.w60{width:60%}.info-mockup-ppt-line.w50{width:50%}.info-mockup-ppt-preview{padding:var(--space-5);gap:var(--space-3);flex-direction:column;min-height:0;display:flex}.info-mockup-ppt-preview-title{color:var(--primary-700);font-size:1rem;font-weight:700}.info-mockup-ppt-preview-sub{color:var(--slate-500);margin-top:-6px;font-size:.75rem}.info-mockup-ppt-preview-content{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex}.info-mockup-ppt-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.info-mockup-ppt-actions--footer{margin-top:auto}.info-mockup-btn-sm{color:#fff;background:var(--primary-600);border-radius:var(--radius-sm);cursor:default;padding:4px 12px;font-size:.72rem;font-weight:600;display:inline-block}.info-mockup-body--res{grid-template-columns:minmax(0,32%) 1fr;align-items:stretch;gap:0;min-height:280px;padding:0;display:grid;overflow:hidden}.info-mockup-res-sidebar{border-right:1px solid var(--slate-200);padding:var(--space-2) var(--space-2);gap:var(--space-2);background:#fff;flex-direction:column;min-width:0;display:flex}.info-mockup-res-sidebar-block{min-width:0}.info-mockup-res-sidebar-title{text-transform:uppercase;letter-spacing:.06em;color:var(--slate-700);margin:0 0 6px;padding-left:7px;font-size:.52rem;font-weight:700;line-height:1.2;position:relative}.info-mockup-res-sidebar-title:before{content:"";background:var(--primary-500);border-radius:2px;width:3px;position:absolute;top:.05em;bottom:.05em;left:0}.info-mockup-res-filter-stack{flex-direction:column;gap:0;display:flex}.info-mockup-res-filter-row{margin-bottom:5px}.info-mockup-res-flabel{color:var(--slate-600);margin-bottom:2px;font-size:.48rem;font-weight:600;display:block}.info-mockup-res-fake-select,.info-mockup-res-fake-input{border:1px solid var(--slate-200);color:var(--slate-700);background:#fff;border-radius:4px;padding:3px 5px;font-size:.5rem;line-height:1.3}.info-mockup-res-fake-input{color:var(--slate-500)}.info-mockup-res-filter-actions{gap:4px;margin-top:6px;display:flex}.info-mockup-res-sbtn{text-align:center;cursor:default;border-radius:5px;flex:1;padding:4px;font-size:.5rem;font-weight:700;line-height:1.2}.info-mockup-res-sbtn.primary{background:var(--primary-600);color:#fff}.info-mockup-res-sbtn.secondary{color:var(--primary-600);border:1px solid var(--primary-400);background:#fff}.info-mockup-res-stats{grid-template-columns:1fr 1fr;gap:4px;display:grid}.info-mockup-res-stat{background:linear-gradient(135deg, #fff 0%, var(--slate-50) 100%);border:1px solid var(--slate-200);text-align:center;border-radius:6px;min-width:0;padding:4px 2px}.info-mockup-res-stat .v{color:var(--primary-600);font-size:.72rem;font-weight:800;line-height:1.1;display:block}.info-mockup-res-stat .l{text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);white-space:nowrap;font-size:.4rem;font-weight:700}.info-mockup-res-main{padding:var(--space-2) var(--space-3);gap:var(--space-2);background:#fefaf7;flex-direction:column;min-width:0;display:flex;overflow:hidden}.info-mockup-res-page-h{color:var(--slate-900);letter-spacing:-.02em;margin:0;font-size:.82rem;font-weight:700;line-height:1.2}.info-mockup-res-toolbar{border:1px solid var(--slate-200);border-radius:var(--radius-md);color:var(--slate-600);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:5px 7px;font-size:.52rem;display:flex;box-shadow:0 1px 2px #0000000a}.info-mockup-res-found strong{color:var(--slate-800)}.info-mockup-res-sort-mock{color:var(--slate-700);border:1px solid var(--slate-200);background:var(--slate-50);border-radius:5px;padding:2px 6px;font-size:.5rem;font-weight:600}.info-mockup-res-list{gap:var(--space-2);scrollbar-width:thin;flex-direction:column;max-height:200px;padding-right:2px;display:flex;overflow-y:auto}.info-mockup-res-lib-card{justify-content:space-between;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--slate-200);background:#fff;display:flex;box-shadow:0 1px 2px #0000000a}.info-mockup-res-lib-body{flex:1;min-width:0}.info-mockup-res-lib-title{color:var(--slate-900);font-size:.68rem;font-weight:700;line-height:1.25}.info-mockup-res-tag-row{flex-wrap:wrap;align-items:center;gap:3px;margin-top:4px;display:flex}.info-mockup-res-tag{border-radius:var(--radius-full);color:#fff;white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding:2px 5px;font-size:.46rem;font-weight:600;line-height:1.2;overflow:hidden}.info-mockup-res-desc{color:var(--slate-500);margin:4px 0 0;font-size:.52rem;font-style:italic;line-height:1.35}.info-mockup-res-see-desc{color:var(--primary-600);cursor:default;margin-top:3px;font-size:.5rem;font-weight:600;display:inline-block}.info-mockup-res-card-actions{flex-wrap:wrap;align-items:center;gap:4px;margin-top:6px;display:flex}.info-mockup-res-mini-btn{border:1px solid var(--slate-300);background:var(--slate-50);color:var(--slate-700);cursor:default;border-radius:3px;padding:2px 6px;font-size:.45rem;font-weight:600;display:inline-block}.info-mockup-res-mini-btn--primary{background:var(--primary-600);border-color:var(--primary-700);color:#fff}.info-mockup-res-aside{text-align:right;flex-shrink:0;min-width:48px}.info-mockup-res-rating-line{color:var(--slate-500);margin-bottom:2px;font-size:.48rem}.info-mockup-res-rating-num{color:#fbbf24;font-weight:700}.info-mockup-res-stars-inline{color:#fbbf24;letter-spacing:-.06em;font-size:.55rem;line-height:1}.info-mockup-res-star-empty{color:var(--slate-300)}.info-mockup-res-votes{color:var(--slate-500);margin-top:2px;font-size:.46rem}.info-mockup-res-dur{color:var(--slate-600);margin-top:4px;font-size:.5rem;font-weight:600}.info-pricing-grid{gap:var(--space-6);margin-top:var(--space-6);grid-template-columns:repeat(3,1fr);max-width:960px;margin-left:auto;margin-right:auto;display:grid}.info-pricing-card{border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);text-align:center;transition:transform var(--transition-normal), box-shadow var(--transition-normal);background:#fff;flex-direction:column;display:flex;position:relative}.info-pricing-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.info-pricing-card--highlighted{border-color:var(--primary-400);box-shadow:var(--shadow-lg), 0 0 0 2px var(--primary-100);transform:scale(1.03)}.info-pricing-card--highlighted:hover{transform:scale(1.03)translateY(-4px)}.info-pricing-badge{text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--primary-600);border-radius:var(--radius-full);white-space:nowrap;padding:3px 14px;font-size:.72rem;font-weight:700;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.info-pricing-badge--savings{background:linear-gradient(135deg, var(--primary-600) 0%, var(--primary-700) 100%);letter-spacing:.04em;font-weight:800;box-shadow:0 2px 8px #0f766e59}.info-pricing-name{font-family:var(--font-display);color:var(--slate-800);margin:0 0 var(--space-3);font-size:1.15rem;font-weight:600}.info-pricing-price-stack{margin-bottom:var(--space-2);flex-direction:column;align-items:center;display:flex}.info-pricing-was{font-family:var(--font-display);color:var(--slate-400);text-underline-offset:2px;flex-shrink:0;font-size:1.05rem;font-weight:600;text-decoration:line-through;text-decoration-thickness:1.5px}.info-pricing-price{justify-content:center;align-items:baseline;gap:var(--space-1);flex-wrap:wrap;margin-bottom:0;display:flex}.info-pricing-price--with-was{gap:var(--space-2) var(--space-4)}.info-pricing-price-current{align-items:baseline;gap:var(--space-1);display:inline-flex}.info-pricing-amount{font-family:var(--font-display);color:var(--slate-900);font-size:2.25rem;font-weight:700;line-height:1}.info-pricing-period{color:var(--slate-500);font-size:.9rem}.info-pricing-desc{color:var(--slate-500);margin:0 0 var(--space-5);font-size:.88rem}.info-pricing-features{margin:0 0 var(--space-6);text-align:left;gap:var(--space-2);flex-direction:column;flex:1;padding:0;list-style:none;display:flex}.info-pricing-features li{color:var(--slate-700);padding-left:1.5em;font-size:.88rem;line-height:1.45;position:relative}.info-pricing-features li:before{content:"✓";color:var(--primary-500);font-weight:700;position:absolute;left:0}.info-pricing-cta{text-align:center;justify-content:center;width:100%}.info-pricing-compare-link{margin:var(--space-2) 0 0;font-size:.95rem}.info-pricing-compare-link a{color:var(--primary-600);font-weight:600;text-decoration:none}.info-pricing-compare-link a:hover{text-decoration:underline}.info-plans-compare-wrap{-webkit-overflow-scrolling:touch;margin-top:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--slate-200);background:#fff;overflow-x:auto}.info-plans-compare-table{border-collapse:collapse;width:100%;min-width:320px;font-size:.9rem}.info-plans-compare-caption{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.info-plans-compare-table thead th{padding:var(--space-4) var(--space-3);text-align:center;color:var(--slate-800);background:var(--slate-50);border-bottom:1px solid var(--slate-200);font-weight:600}.info-plans-compare-table thead th.info-plans-compare-feature-col{text-align:left}.info-plans-compare-pro-col{background:var(--primary-50)}.info-plans-compare-table tbody th{padding:var(--space-3) var(--space-4);text-align:left;color:var(--slate-800);border-bottom:1px solid var(--slate-100);vertical-align:middle;max-width:14rem;font-weight:500}.info-plans-compare-table tbody td{padding:var(--space-3) var(--space-3);text-align:center;border-bottom:1px solid var(--slate-100);vertical-align:middle;color:var(--slate-700)}.info-plans-compare-table tbody td.info-plans-compare-text-cell{text-align:center;vertical-align:middle;font-size:.875rem;line-height:1.45}.info-plans-compare-table tbody tr:last-child th,.info-plans-compare-table tbody tr:last-child td{border-bottom:none}.info-plans-compare-cell{font-size:1.15rem;font-weight:700}.info-plans-compare-cell--yes{color:var(--primary-600)}.info-plans-compare-cell--no{color:var(--slate-300)}.info-plans-compare-mark{min-width:1.25em;display:inline-block}.info-plans-footnote{margin-top:var(--space-6);text-align:center;max-width:40rem;margin-left:auto;margin-right:auto;font-size:.9rem}.info-plans-footnote a{color:var(--primary-600);font-weight:600;text-decoration:none}.info-plans-footnote a:hover{text-decoration:underline}.info-testimonial-grid{gap:var(--space-6);margin-top:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}.info-testimonial-card{border-radius:var(--radius-lg);padding:var(--space-6);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);gap:var(--space-4);transition:transform var(--transition-normal), box-shadow var(--transition-normal);background:#fff;flex-direction:column;margin:0;display:flex}.info-testimonial-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.info-testimonial-text{color:var(--slate-600);flex:1;margin:0;font-size:1rem;font-style:italic;line-height:1.65}.info-testimonial-author{align-items:center;gap:var(--space-3);display:flex}.info-testimonial-avatar{background:var(--primary-100);width:36px;height:36px;color:var(--primary-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.info-testimonial-name{color:var(--slate-800);font-size:.9rem;display:block}.info-testimonial-role{color:var(--slate-500);font-size:.8rem;display:block}.info-section--light{color:var(--slate-800);background-color:#f8fafc!important}.info-section--off{color:var(--slate-800);border-top:1px solid var(--slate-100);border-bottom:1px solid var(--slate-100);background-color:#fff!important}.info-section--primary{color:#fff;background-color:#0d9488!important;background-image:linear-gradient(135deg,#0d9488 0%,#0f766e 100%)!important}.info-section-inner{opacity:0;max-width:1100px;margin:0 auto;transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1);transform:translateY(28px)}.info-section-inner.in-view{opacity:1;transform:translateY(0)}.info-section-header{text-align:center;margin-bottom:var(--space-8)}.info-section-title{font-family:var(--font-display);color:inherit;margin:0 0 var(--space-2);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600}.info-section-subtitle{color:var(--slate-500);margin:0;font-size:1.1rem;font-weight:450}.info-section--primary .info-section-subtitle{color:#ffffffe0}.info-section-visual{justify-content:center;align-items:center;display:flex}.info-why-pillars{gap:var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px;margin-left:auto;margin-right:auto;display:grid}.info-why-pillar{border-radius:var(--radius-lg);padding:var(--space-6);border:1px solid var(--slate-200);border-left:4px solid var(--primary-400);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal), border-color var(--transition-normal), border-left-color var(--transition-normal);background:#fff;position:relative}.info-section--light .info-why-pillar:hover{box-shadow:var(--shadow-md), 0 0 0 1px #14b8a61f;border-color:var(--primary-100);border-left-color:var(--primary-500);transform:translateY(-4px)}.info-why-pillar-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.info-why-pillar-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--primary-600);font-size:.6875rem;font-weight:700}.info-why-pillar-index{font-family:var(--font-display);color:var(--slate-200);flex-shrink:0;font-size:1.375rem;font-weight:700;line-height:1}.info-why-pillar-title{font-family:var(--font-display);color:var(--slate-800);margin:0 0 var(--space-3);font-size:1.15rem;font-weight:650;line-height:1.35}.info-why-pillar-body{margin:0;font-size:.9375rem;line-height:1.65}.info-faq-layout{gap:var(--space-10);grid-template-columns:1fr 1.2fr;align-items:start;max-width:1000px;display:grid}.info-faq-layout .info-faq-header{text-align:left;margin-bottom:0;position:sticky;top:88px}.info-faq-layout .info-faq{flex-direction:column;gap:0;max-width:none;margin:0;display:flex}.info-faq{flex-direction:column;gap:0;display:flex}@keyframes info-faq-pop{0%{box-shadow:var(--shadow-xs);transform:scale(1)}40%{transform:scale(1.02);box-shadow:0 8px 24px #14b8a633}to{box-shadow:0 6px 20px #14b8a626, 0 0 0 1px var(--primary-200);transform:scale(1.01)}}.info-faq-item{border:1px solid var(--slate-200);border-radius:var(--radius-md);margin-bottom:var(--space-3);box-shadow:var(--shadow-xs);background:#fff;transition:border-color .25s,transform .25s,box-shadow .25s;overflow:hidden}.info-faq-item:last-child{margin-bottom:0}.info-faq-item:hover{border-color:var(--primary-100);box-shadow:var(--shadow-sm)}.info-faq-item--open{border-color:var(--primary-200);animation:.35s forwards info-faq-pop}.info-faq-item--open:hover{box-shadow:0 6px 20px #14b8a626, 0 0 0 1px var(--primary-200)}.info-faq-question{justify-content:space-between;align-items:center;gap:var(--space-4);text-align:left;width:100%;padding:var(--space-4) var(--space-5);font-family:var(--font-body);color:var(--slate-800);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;font-size:1rem;font-weight:600;line-height:1.4;display:flex}.info-faq-question:hover{background:var(--slate-50)}.info-faq-icon{width:28px;height:28px;color:var(--primary-600);flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;font-weight:400;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.info-faq-item--open .info-faq-icon{transform:rotate(180deg)}.info-faq-answer{padding:var(--space-2) var(--space-5) var(--space-4);animation:.3s forwards info-faq-answer-in}@keyframes info-faq-answer-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.info-faq-answer[hidden]{display:none}.info-faq-answer p{color:var(--slate-600);margin:0;font-size:.95rem;font-weight:450;line-height:1.6}.info-cta-inner{text-align:center}.info-cta-title{color:#fff!important}.info-cta-subtitle{color:#ffffffe6!important;margin-bottom:var(--space-6)!important}.info-cta-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-4);background:#ffffff1f;max-width:560px;margin-left:auto;margin-right:auto}.info-cta-card h3{font-family:var(--font-display);margin:0 0 var(--space-3);color:#fff;font-size:1.4rem;font-weight:600}.info-cta-card .muted{color:#ffffffe6;margin-bottom:var(--space-5)}.info-section--primary .info-hero-cta{justify-content:center}.info-section--primary .btn.primary{color:var(--primary-700);background:#fff;border-color:#fff}.info-section--primary .btn.primary:hover{background:var(--slate-100);box-shadow:var(--shadow-lg)}.info-section--primary .btn:not(.primary){color:#fff;background:0 0;border-color:#ffffff80}.info-section--primary .btn:not(.primary):hover{background:#ffffff26;border-color:#fffc}.hero{padding:var(--space-12) var(--space-8);border-radius:var(--radius-xl);border:1px solid var(--slate-200);box-shadow:var(--shadow-lg);background:#fff;position:relative;overflow:hidden}.hero:before{content:"";background:linear-gradient(135deg, transparent 0%, var(--primary-50) 50%, var(--accent-50) 100%);opacity:.5;pointer-events:none;width:60%;height:100%;position:absolute;top:0;right:0}.hero-content{gap:var(--space-4);z-index:1;flex-direction:column;max-width:580px;display:flex;position:relative}.hero-koala{opacity:.15;pointer-events:none;position:absolute;top:50%;right:-20px;transform:translateY(-50%)}.hero-koala img{width:auto;height:320px;display:block}.hero-title{font-family:var(--font-display);letter-spacing:-.03em;font-size:3.5rem;font-weight:600;line-height:1.1}.hero-title-main{color:var(--slate-900)}.hero-title-accent{color:var(--primary-600)}.hero-sub{color:var(--slate-600);font-size:1.125rem;line-height:1.7}.footer-cta{gap:var(--space-3);margin-top:var(--space-2);display:flex}.features{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:repeat(2,1fr);display:grid}.feature{border-radius:var(--radius-lg);padding:var(--space-5);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);background:#fff}.feature:hover{box-shadow:var(--shadow-md);border-color:var(--slate-300);transform:translateY(-2px)}.feature h4{margin:0 0 var(--space-2);font-family:var(--font-display);color:var(--slate-800);font-size:1.1rem;font-weight:550}.feature-head{gap:var(--space-3);margin-bottom:var(--space-2);align-items:center;display:flex}.feature-img{object-fit:contain;width:40px;height:40px}.info-page .feature{border:1px solid var(--slate-200)!important;background:#fff!important}.info-page .feature-head{display:block!important}.info-page .feature-img{display:none!important}.how-it-works-section{margin:var(--space-12) 0;padding:var(--space-10) var(--space-8);border-radius:var(--radius-xl);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);background:#fff;position:relative}.how-it-works-section .section-title,.why-teachers-section .section-title{font-family:var(--font-display);color:var(--slate-900);margin-bottom:var(--space-2);text-align:center;font-size:2rem;font-weight:600}.section-header{text-align:center;margin-bottom:var(--space-10)}.section-subtitle{color:var(--slate-500);margin-top:var(--space-2);font-size:1.1rem;font-weight:450}.features-enhanced{gap:var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.feature-card{border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);border:1px solid var(--slate-200);background:#fff;position:relative;overflow:hidden}.feature-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-200);transform:translateY(-4px)}.feature-icon{width:64px;height:64px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.feature-icon img{object-fit:contain;width:100%;height:100%}.feature-number{top:var(--space-4);right:var(--space-4);background:var(--primary-100);width:32px;height:32px;color:var(--primary-700);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex;position:absolute}.feature-card h4{margin:0 0 var(--space-3);font-family:var(--font-display);color:var(--slate-800);text-align:center;font-size:1.1rem;font-weight:550}.feature-card p{font-size:.95rem;line-height:1.6}.feature-card-1{background:linear-gradient(180deg, var(--primary-50) 0%, #fff 40%)}.feature-card-2{background:linear-gradient(180deg, var(--accent-50) 0%, #fff 40%)}.feature-card-3{background:linear-gradient(#fef3c7 0%,#fff 40%)}.feature-card-4{background:linear-gradient(#f3e8ff 0%,#fff 40%)}.feature-card-5{background:linear-gradient(#fee2e2 0%,#fff 40%)}.feature-card-6{background:linear-gradient(#e0f2fe 0%,#fff 40%)}.why-teachers-section{margin:var(--space-12) 0;padding:var(--space-10) var(--space-8);background:linear-gradient(180deg, var(--slate-50) 0%, #fff 100%);border-radius:var(--radius-xl);border:1px solid var(--slate-200)}.benefits-grid{gap:var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.benefit-card{border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);border:1px solid var(--slate-200);text-align:center;background:#fff;position:relative}.benefit-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-200);transform:translateY(-4px)}.benefit-icon-wrapper{width:60px;height:60px;margin:0 auto var(--space-4);background:var(--primary-50);border-radius:var(--radius-lg);transition:all var(--transition-normal);justify-content:center;align-items:center;display:flex}.benefit-card:hover .benefit-icon-wrapper{background:var(--primary-100);transform:scale(1.1)}.benefit-icon{font-size:1.75rem;line-height:1}.benefit-card h4{margin:0 0 var(--space-3);font-family:var(--font-display);color:var(--slate-800);font-size:1.1rem;font-weight:550}.benefit-card p{font-size:.95rem;line-height:1.6}.benefit-card-1 .benefit-icon-wrapper{background:var(--primary-50)}.benefit-card-2 .benefit-icon-wrapper{background:var(--accent-50)}.benefit-card-3 .benefit-icon-wrapper{background:#dbeafe}.benefit-card-4 .benefit-icon-wrapper{background:#f3e8ff}.testimonials{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:1fr;display:grid}.quote{border:1px solid var(--slate-200);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);color:var(--slate-600);padding-left:var(--space-8);background:#fff;font-style:italic;position:relative}.quote:before{content:"\"";left:var(--space-4);top:var(--space-3);font-family:var(--font-display);color:var(--primary-200);font-size:3rem;line-height:1;position:absolute}.get-started-section{margin:var(--space-12) 0;padding:var(--space-10) var(--space-8);background:linear-gradient(135deg, var(--primary-600) 0%, var(--primary-700) 100%);border-radius:var(--radius-xl);color:#fff;text-align:center}.get-started-section .section-title{color:#fff;font-family:var(--font-display);font-size:2rem;font-weight:600}.get-started-section .section-subtitle{color:#ffffffd9}.get-started-card{border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a}.get-started-content h3{font-family:var(--font-display);margin:0 0 var(--space-4);font-size:1.5rem;font-weight:600}.get-started-content p{color:#ffffffe6;margin-bottom:var(--space-6);font-size:1.05rem}.get-started-section .footer-cta{justify-content:center}.get-started-section .btn.primary{color:var(--primary-700);background:#fff;border-color:#fff}.get-started-section .btn.primary:hover{background:var(--slate-100);box-shadow:var(--shadow-lg)}.get-started-section .btn:not(.primary){color:#fff;background:0 0;border-color:#fff6}.get-started-section .btn:not(.primary):hover{background:#ffffff1a;border-color:#fff9}.auth-page{max-width:440px;padding-top:var(--space-10);margin:0 auto}.auth-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.auth-back-link{color:var(--primary-600);font-size:.9375rem;font-weight:500;text-decoration:none}.auth-back-link:hover{text-decoration:underline}.auth-logo-link{align-items:center;gap:var(--space-3);color:var(--slate-900);text-decoration:none;display:inline-flex}.auth-logo{width:auto;height:48px}.auth-brand{font-family:var(--font-display);color:var(--slate-900);font-size:1.75rem;font-weight:600}.auth-page .page-title{text-align:center;margin-bottom:var(--space-2);font-size:1.75rem}.auth-subtitle{text-align:center;color:var(--slate-500);margin-bottom:var(--space-6);font-size:.95rem}.auth-page .card,.auth-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-8)!important}.auth-page .form-grid{gap:var(--space-5)}.auth-page .btn.primary{width:100%;padding:12px 20px;font-size:15px}.auth-page .row{flex-wrap:wrap}.auth-page .row.space{gap:var(--space-3)}.auth-actions{gap:var(--space-4);margin-top:var(--space-2);flex-direction:column;display:flex}.auth-actions .btn.primary{width:100%;padding:12px 24px;font-size:15px}.auth-links{justify-content:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.auth-links .btn.ghost{color:var(--slate-600);font-size:14px}.auth-links .btn.ghost:hover{color:var(--primary-700)}.auth-page .row.gap{gap:var(--space-2);display:flex}.auth-page .row.gap input{flex:1}.auth-page .row.gap .btn{flex-shrink:0;padding:10px 14px}.auth-agree-row{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--slate-700);font-size:.9375rem;display:flex}.auth-agree-row input[type=checkbox]{cursor:pointer;flex-shrink:0}.auth-agree-row a{color:var(--primary-600);font-weight:500;text-decoration:none}.auth-agree-row a:hover{text-decoration:underline}.auth-agree-row a:focus{outline:2px solid var(--primary-500);outline-offset:2px}.auth-oauth-section{gap:var(--space-3);flex-direction:column;display:flex}.auth-oauth-btn{justify-content:center;align-items:center;gap:var(--space-3);border-radius:var(--radius-md);border:1.5px solid var(--slate-200);background:var(--slate-50);width:100%;color:var(--slate-700);font-size:15px;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);padding:12px 20px;display:flex}.auth-oauth-btn:hover:not(:disabled){background:var(--slate-100);border-color:var(--slate-300);box-shadow:var(--shadow-sm)}html.dark .auth-oauth-btn{color:#e2e8f0;background:#1e293b;border-color:#334155}html.dark .auth-oauth-btn:hover:not(:disabled){background:#283548;border-color:#475569}.auth-google-iframe-overlay{opacity:0;cursor:pointer;position:absolute;inset:0;overflow:hidden}.auth-google-iframe-overlay>div,.auth-google-iframe-overlay>div>div,.auth-google-iframe-overlay iframe{width:100%!important;height:100%!important}.auth-oauth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-oauth-btn svg{flex-shrink:0}.auth-divider{align-items:center;gap:var(--space-4);margin:var(--space-4) 0 var(--space-2);color:var(--slate-400);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--slate-200);flex:1;height:1px}.onboarding-page{max-width:480px;padding-top:var(--space-10);margin:0 auto}.onboarding-progress{justify-content:center;align-items:center;gap:var(--space-8);margin-bottom:var(--space-4);display:flex}.onboarding-step-indicator{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.onboarding-step-dot{border-radius:var(--radius-full);border:2px solid var(--slate-200);width:36px;height:36px;color:var(--slate-400);transition:all var(--transition-normal);background:#fff;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.onboarding-step-indicator.active .onboarding-step-dot{border-color:var(--primary-500);background:var(--primary-500);color:#fff}.onboarding-step-indicator.completed .onboarding-step-dot{border-color:var(--primary-500);background:var(--primary-100);color:var(--primary-700)}.onboarding-step-label{color:var(--slate-400);transition:color var(--transition-normal);font-size:12px;font-weight:500}.onboarding-step-indicator.active .onboarding-step-label{color:var(--primary-700);font-weight:600}.onboarding-step-indicator.completed .onboarding-step-label{color:var(--primary-600)}.onboarding-progress-bar{background:var(--slate-100);border-radius:var(--radius-full);height:3px;margin-bottom:var(--space-6);overflow:hidden}.onboarding-progress-fill{background:linear-gradient(90deg, var(--primary-500), var(--primary-400));border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.onboarding-card{padding:var(--space-8)!important}.onboarding-step-title{color:var(--slate-900);margin-bottom:var(--space-2);font-size:1.5rem;font-weight:700}.onboarding-step-desc{color:var(--slate-500);margin-bottom:var(--space-6);font-size:.95rem;line-height:1.5}.onboarding-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-6);display:flex}.onboarding-actions .btn.primary{padding:12px 28px;font-size:15px}.tour-dots{align-items:center;gap:5px;display:flex}.tour-dot{background:#d1d5db;border-radius:50%;width:6px;height:6px;transition:all .25s}.tour-dot--active{background:var(--primary-500,#10b981);border-radius:3px;width:18px}.tour-dot--done{background:var(--primary-300,#6ee7b7)}.tour-skip{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:13px;line-height:1}.tour-skip:hover{color:#6b7280}.tour-overlay{z-index:9998;pointer-events:all;cursor:default;touch-action:none;overscroll-behavior:none;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tour-card{text-align:center;background:#fff;border-radius:18px;width:100%;max-width:440px;padding:36px 36px 28px;animation:.2s tour-fade-in;box-shadow:0 24px 64px #0000004d}.tour-card-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.tour-card-icon{margin-bottom:16px;font-size:56px;line-height:1}.tour-card-title{color:#111827;margin:0 0 12px;font-size:22px;font-weight:700}.tour-card-body{color:#4b5563;margin:0 0 28px;font-size:15px;line-height:1.65}.tour-card-actions{justify-content:center;align-items:center;gap:10px;display:flex}.tour-next-btn{min-width:130px}.tour-backdrop{z-index:9997;pointer-events:all;cursor:default;position:fixed;inset:0}.tour-spotlight{z-index:9999;pointer-events:all;cursor:default;border-radius:10px;outline:2px solid #ffffff59;transition:top .3s,left .3s,width .3s,height .3s;position:fixed;box-shadow:0 0 0 9999px #0009}.tour-tooltip{z-index:10000;background:#fff;border-radius:12px;padding:16px 18px 14px;animation:.15s tour-fade-in;position:fixed;box-shadow:0 8px 32px #00000040}.tour-tooltip-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.tour-tooltip-title{color:#111827;margin:0 0 6px;font-size:15px;font-weight:700}.tour-tooltip-body{color:#4b5563;margin:0 0 14px;font-size:13px;line-height:1.55}.tour-tooltip-actions{align-items:center;gap:8px;display:flex}.tour-arrow{width:0;height:0;position:absolute}.tour-arrow--up{filter:drop-shadow(0 -1px 1px #0000001a);border-bottom:8px solid #fff;border-left:8px solid #0000;border-right:8px solid #0000;top:-8px}.tour-arrow--down{filter:drop-shadow(0 1px 1px #0000001a);border-top:8px solid #fff;border-left:8px solid #0000;border-right:8px solid #0000;bottom:-8px}.tour-overlay--mobile{background:#000000b3;align-items:flex-end;padding:0}.tour-sheet{padding:28px 24px env(safe-area-inset-bottom,24px);text-align:center;background:#fff;border-radius:20px 20px 0 0;width:100%;max-height:82svh;animation:.25s cubic-bezier(.34,1.2,.64,1) tour-slide-up;overflow-y:auto}.tour-sheet-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.tour-sheet-icon{margin-bottom:16px;font-size:60px;line-height:1}.tour-sheet-title{color:#111827;margin:0 0 12px;font-size:22px;font-weight:700}.tour-sheet-body{color:#4b5563;margin:0 0 28px;font-size:15px;line-height:1.65}.tour-sheet-actions{justify-content:center;gap:12px;display:flex}.tour-sheet-actions .btn{flex:1;max-width:180px;padding:14px 20px;font-size:15px}.tour-sheet-next{flex:1;max-width:220px}@keyframes tour-fade-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes tour-slide-up{0%{opacity:.6;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@media (width<=390px){.tour-sheet{padding:20px 16px env(safe-area-inset-bottom,16px)}.tour-sheet-icon{margin-bottom:12px;font-size:44px}.tour-sheet-title{font-size:18px}.tour-sheet-body{margin-bottom:20px;font-size:14px}.tour-sheet-actions .btn{padding:12px 14px;font-size:14px}}@media (width>=768px) and (width<=1024px){.tour-card{max-width:400px;padding:28px 28px 22px}.tour-card-icon{font-size:44px}.tour-card-title{font-size:20px}}@media (width>=1280px){.tour-card{max-width:480px}}.school-auth-page{width:100%;min-height:100vh;padding:var(--space-8) var(--space-4);background:#fefaf7;justify-content:center;align-items:center;display:flex}.school-auth-wrap{gap:var(--space-6);flex-direction:column;width:100%;max-width:440px;display:flex}.school-auth-brand{text-align:center}.school-auth-koala{width:auto;height:72px;margin-bottom:var(--space-3)}.school-auth-heading{color:var(--slate-900);margin-bottom:var(--space-2);font-size:1.75rem;font-weight:700}.school-auth-tagline{color:var(--slate-500);font-size:.9375rem;line-height:1.5}.school-auth-card{border:1px solid var(--slate-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fff;overflow:hidden}.school-auth-alert{color:#92400e;padding:var(--space-3) var(--space-5);background:#fef3c7;border-bottom:1px solid #fde68a;font-size:.875rem}.school-auth-tabs{border-bottom:1px solid var(--slate-100);display:flex}.school-auth-tab{padding:var(--space-4) var(--space-5);color:var(--slate-500);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;font-size:.9375rem;font-weight:600}.school-auth-tab:hover{color:var(--slate-800)}.school-auth-tab.active{color:var(--primary-600);border-bottom-color:var(--primary-500)}.school-auth-form{gap:var(--space-4);padding:var(--space-5);flex-direction:column;display:flex}.school-field{gap:var(--space-1);color:var(--slate-700);flex-direction:column;font-size:.875rem;font-weight:600;display:flex}.school-field input{padding:var(--space-3);border:1px solid var(--slate-200);border-radius:var(--radius-md);font-size:.9375rem;font-family:var(--font-body);background:var(--slate-50);transition:border-color var(--transition-fast), background var(--transition-fast)}.school-field input:focus{outline:2px solid var(--primary-500);outline-offset:2px;border-color:var(--primary-400);background:#fff}.school-field--inline{align-items:center;gap:var(--space-3);flex-direction:row}.school-auth-error{margin:0}.school-auth-submit{width:100%;padding:var(--space-3) var(--space-4);justify-content:center;font-size:1rem}.school-auth-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--slate-100);background:var(--slate-50);justify-content:center;align-items:center;display:flex}.school-auth-back{color:var(--slate-500);font-size:.875rem;text-decoration:none}.school-auth-back:hover{color:var(--primary-600);text-decoration:underline}.school-dashboard{max-width:760px;padding:var(--space-8) var(--space-4);margin:0 auto}.school-dashboard-loading{justify-content:center;align-items:center;min-height:40vh;display:flex}.school-dashboard-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.school-dashboard-brand-link{align-items:center;gap:var(--space-3);color:inherit;text-decoration:none;display:flex}.school-dashboard-brand-link:hover{opacity:.85}.school-dashboard-logo{width:auto;height:36px}.school-dashboard-brand{color:var(--slate-900);font-size:1.125rem;font-weight:700}.school-dashboard-nav{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.school-dashboard-back{padding:var(--space-2) var(--space-3);font-size:.875rem}.school-dashboard-admin{align-items:center;gap:var(--space-2);display:flex}.school-admin-email{color:var(--slate-500);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.8125rem;overflow:hidden}.school-dashboard-signout{padding:var(--space-1) var(--space-2);font-size:.8125rem}.school-dashboard-content{flex-direction:column;gap:0;display:flex}.school-stats-row{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.school-stat{gap:var(--space-1);padding:var(--space-4);background:var(--slate-50);border:1px solid var(--slate-100);border-radius:var(--radius-md);flex-direction:column;display:flex}.school-stat-value{color:var(--slate-900);font-size:1.75rem;font-weight:700;line-height:1}.school-stat-value--warning{color:#d97706}.school-stat-label{color:var(--slate-500);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:500}.school-sub-badge{padding:3px var(--space-3);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;display:inline-block}.school-sub-badge--active{background:var(--primary-100);color:var(--primary-800)}.school-sub-badge--trial{background:var(--accent-100);color:var(--accent-800)}.school-sub-badge--cancelled{background:var(--slate-100);color:var(--slate-600)}.school-plan-info{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--slate-100);flex-direction:column;display:flex}.school-plan-detail{color:var(--slate-600);font-size:.9375rem}.school-checkout{padding-top:var(--space-5);border-top:1px solid var(--slate-100);gap:var(--space-4);flex-direction:column;display:flex}.school-checkout-heading{color:var(--slate-800);font-size:1rem;font-weight:700}.school-checkout-controls{gap:var(--space-4);flex-wrap:wrap;align-items:flex-end;display:flex}.school-checkout-seats{gap:var(--space-2);flex-direction:column;display:flex}.school-seats-input{align-items:center;gap:var(--space-1);display:flex}.school-seats-btn{border-radius:var(--radius-md);justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:1.125rem;line-height:1;display:flex}.school-seats-number{text-align:center;width:64px;padding:var(--space-2);border:1px solid var(--slate-200);border-radius:var(--radius-md);font-size:1rem;font-family:var(--font-body);background:var(--slate-50)}.school-seats-number:focus{outline:2px solid var(--primary-500);outline-offset:2px}.school-billing-toggle{gap:var(--space-2);display:flex}.school-save-badge{background:var(--primary-600);color:#fff;border-radius:var(--radius-full);margin-left:var(--space-2);padding:1px 6px;font-size:.6875rem;font-weight:700}.school-pricing-display{align-items:baseline;gap:var(--space-2);display:flex}.school-pricing-amount{color:var(--slate-900);font-size:2rem;font-weight:700}.school-pricing-period{color:var(--slate-500);font-size:.9375rem}.school-add-teachers{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}.school-dashboard-textarea{width:100%;padding:var(--space-3);border:1px solid var(--slate-200);border-radius:var(--radius-md);resize:vertical;font-size:.9375rem;font-family:var(--font-body);background:var(--slate-50);transition:border-color var(--transition-fast), background var(--transition-fast)}.school-dashboard-textarea:focus{outline:2px solid var(--primary-500);outline-offset:2px;border-color:var(--primary-400);background:#fff}.school-teacher-list{border-top:1px solid var(--slate-100);padding-top:var(--space-4)}.school-teacher-list-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.school-teacher-list-header h4{color:var(--slate-800);font-size:.9375rem;font-weight:600}.school-teacher-empty{padding:var(--space-4) 0;font-size:.875rem}.school-teacher-ul{margin:0;padding:0;list-style:none}.school-teacher-row{padding:var(--space-3) 0;border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.school-teacher-row:last-child{border-bottom:none}.school-teacher-email{color:var(--slate-700);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;overflow:hidden}.school-dashboard-status{text-transform:uppercase;letter-spacing:.05em;padding:3px var(--space-2);border-radius:var(--radius-full);flex-shrink:0;font-size:.6875rem;font-weight:700}.school-dashboard-status-invited{background:var(--accent-100);color:var(--accent-800)}.school-dashboard-status-active{background:var(--primary-100);color:var(--primary-800)}.school-dashboard-status-removed{background:var(--slate-100);color:var(--slate-500)}.recaptcha-host{box-sizing:border-box;line-height:0;display:flex}.recaptcha-host--center{justify-content:center}.recaptcha-host--start{justify-content:flex-start}.recaptcha-host iframe{vertical-align:bottom;border:0!important}html.dark .recaptcha-host{background:#222;border-radius:3px;overflow:hidden}.auth-recaptcha-host{margin-top:8px;margin-bottom:8px}.empty-state-callout{text-align:center;border-radius:16px}.empty-state-callout--classes{background:linear-gradient(135deg,#f0fdf4 0%,#f0f9ff 100%);border:2px dashed #cbd5e1;padding:48px 24px}.empty-state-callout--profiles{background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border:2px dashed #c4b5fd;padding:32px 24px}.empty-state-callout--slate{background:var(--slate-100);border:2px dashed var(--primary-400);margin:20px 0;padding:48px 24px}.empty-state-callout--slate .empty-state-callout__title{font-size:18px}.empty-state-callout--slate .empty-state-callout__icon{opacity:.85;margin-bottom:16px;font-size:48px}.empty-state-callout__icon{margin-left:auto;margin-right:auto;display:block}.empty-state-callout--classes .empty-state-callout__icon{margin-bottom:16px;font-size:48px}.empty-state-callout--profiles .empty-state-callout__icon{margin-bottom:12px;font-size:36px}.empty-state-callout__title{color:var(--slate-800);margin-bottom:8px;font-weight:600}.empty-state-callout--classes .empty-state-callout__title{font-size:18px}.empty-state-callout--profiles .empty-state-callout__title{font-size:16px}.empty-state-skeleton{min-height:60px}.empty-state-skeleton__bar{background:var(--slate-200);border-radius:6px;height:18px;margin-bottom:12px}.empty-state-skeleton__bar:last-child{margin-bottom:0}.empty-state-skeleton__bar--wide{width:60%}.empty-state-skeleton__bar--narrow{width:40%}.planning-empty-callout{text-align:center;border-radius:12px;padding:40px 20px}.planning-empty-callout--classes{background:linear-gradient(135deg,#6366f10d 0%,#8b5cf60d 100%);border:1px solid #6366f11a}.planning-empty-callout--lessons{background:linear-gradient(135deg,#ef44440d 0%,#dc26260d 100%);border:1px solid #ef444433;margin-bottom:16px}.planning-empty-callout__text{color:var(--slate-600);margin-bottom:16px;font-size:16px}.planning-empty-callout--lessons .planning-empty-callout__text{margin-bottom:8px}html.dark .empty-state-callout--classes{background:linear-gradient(135deg,#10b9811f 0%,#3b82f61a 100%);border-color:#5eead452}html.dark .empty-state-callout--profiles{background:linear-gradient(135deg,#8b5cf638 0%,#6366f124 100%);border-color:#a78bfa6b}html.dark .empty-state-callout--slate{background:linear-gradient(135deg,#1e293bf2 0%,#0f172afa 100%);border-color:#2dd4bf66}html.dark .empty-state-skeleton__bar{background:#334155}html.dark .planning-empty-callout--classes{background:linear-gradient(135deg,#6366f129 0%,#8b5cf61f 100%);border-color:#818cf852}html.dark .planning-empty-callout--lessons{background:linear-gradient(135deg,#ef444424 0%,#dc26261a 100%);border-color:#f8717161}@media (width<=500px){.school-auth-heading{font-size:1.4rem}.school-stats-row{grid-template-columns:repeat(2,1fr)}.school-checkout-controls{flex-direction:column}.school-admin-email{display:none}}.text-error{color:var(--danger);font-size:.875rem}.text-success{color:var(--success);font-size:.875rem}.sidebar{width:320px;padding:var(--space-6) var(--space-5);background:linear-gradient(to bottom, #fff 0%, var(--slate-50) 100%);border-right:1px solid var(--slate-200);flex-shrink:0;align-self:stretch;min-height:calc(100vh - 56px);position:relative;box-shadow:2px 0 8px #00000005}.sidebar-section{margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--slate-100)}.sidebar-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.sidebar-usage{gap:var(--space-2);flex-direction:column;display:flex}.sidebar-usage-row{justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.sidebar-usage-reset{margin-top:var(--space-1);font-size:.75rem}.sidebar-title{text-transform:uppercase;letter-spacing:.8px;color:var(--slate-600);margin:0 0 var(--space-5);align-items:center;gap:var(--space-2);font-size:.75rem;font-weight:700;display:flex}.sidebar-title:before{content:"";background:linear-gradient(to bottom, var(--primary-500), var(--primary-400));border-radius:var(--radius-full);width:3px;height:14px}.planning-sidebar .sidebar-title{letter-spacing:.5px;font-size:1rem}.planning-sidebar .sidebar-title:before{height:18px}.curriculum-sidebar .sidebar-title{letter-spacing:.5px;font-size:1rem}.curriculum-sidebar .sidebar-title:before{height:18px}.resources-sidebar .sidebar-title{letter-spacing:.5px;font-size:1rem}.resources-sidebar .sidebar-title:before{height:18px}.stats-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.stats-grid--two{grid-template-columns:repeat(2,1fr)}.stat-card{background:linear-gradient(135deg, #fff 0%, var(--slate-50) 100%);border:1.5px solid var(--slate-200);border-radius:var(--radius-md);padding:var(--space-4) var(--space-3);text-align:center;min-width:0;transition:all var(--transition-fast);position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, var(--primary-500), var(--primary-400));opacity:0;height:3px;transition:opacity var(--transition-fast);position:absolute;top:0;left:0;right:0}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary-300);transform:translateY(-3px)}.stat-card:hover:before{opacity:1}.stat-value{background:linear-gradient(135deg, var(--primary-600), var(--primary-500));-webkit-text-fill-color:transparent;margin-bottom:var(--space-2);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;line-height:1}.stat-label{color:var(--slate-600);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;font-size:.7rem;font-weight:600;line-height:1.2}.sidebar-btn{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-4);margin-bottom:var(--space-3);border:1.5px solid var(--slate-200);border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--slate-700);transition:all var(--transition-fast);background:#fff;font-size:.9rem;font-weight:550;display:flex;position:relative;overflow:hidden}.sidebar-btn:before{content:"";background:linear-gradient(90deg, var(--primary-50), transparent);width:0;transition:width var(--transition-fast);position:absolute;top:0;bottom:0;left:0}.sidebar-btn:hover{background:var(--slate-50);box-shadow:var(--shadow-md);border-color:var(--primary-300);transform:translate(6px)}.sidebar-btn:hover:before{width:4px}.sidebar-btn.primary{background:linear-gradient(135deg, var(--primary-600), var(--primary-500));color:#fff;border-color:var(--primary-600);font-weight:600;box-shadow:0 2px 8px #0d948840}.sidebar-btn.primary:before{background:linear-gradient(90deg,#fff3,#0000)}.sidebar-btn.primary:hover{background:linear-gradient(135deg, var(--primary-700), var(--primary-600));transform:translateY(-2px)translate(0);box-shadow:0 4px 12px #0d948859}.sidebar-btn:not(.primary){background:var(--slate-50);border-color:var(--slate-200);color:var(--slate-600);font-weight:500}.sidebar-btn:not(.primary):hover{background:var(--slate-100);border-color:var(--slate-300);color:var(--slate-800)}.sidebar-btn.sidebar-btn-block{color:#dc2626;background:#ef44441a;border-color:#ef44444d;font-weight:500}.sidebar-btn.sidebar-btn-block:before{background:#ef444480}.sidebar-btn.sidebar-btn-block:hover{color:#b91c1c;background:#ef444433;border-color:#ef444480}.sidebar-btn .sidebar-btn-label-long{display:inline}.sidebar-btn .sidebar-btn-label-short{display:none}@media (width<=420px){.sidebar .sidebar-btn .sidebar-btn-label-long{display:none}.sidebar .sidebar-btn .sidebar-btn-label-short{display:inline}}.lessons-list,.classes-list{gap:var(--space-2);flex-direction:column;display:flex}.lessons-list.lessons-list--scroll{max-height:280px;overflow-y:auto}.lesson-item,.class-item{background:linear-gradient(135deg, #fff 0%, var(--slate-50) 100%);border:1.5px solid var(--slate-200);border-radius:var(--radius-md);padding:var(--space-4) var(--space-3);cursor:pointer;transition:all var(--transition-fast);position:relative}.lesson-item:before,.class-item:before{content:"";background:linear-gradient(90deg, var(--primary-100), transparent);width:0;transition:width var(--transition-fast);border-radius:var(--radius-md) 0 0 var(--radius-md);position:absolute;top:0;bottom:0;left:0}.lesson-item:hover,.class-item:hover{box-shadow:var(--shadow-md);border-color:var(--primary-300);background:#fff;transform:translate(6px)}.lesson-item:hover:before,.class-item:hover:before{width:4px}.class-item{align-items:center;gap:var(--space-3);display:flex}.lesson-time{color:var(--primary-600);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.lesson-name,.class-name{color:var(--slate-800);font-size:.9rem;font-weight:600;line-height:1.4}.class-color-dot{border:2px solid #fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;box-shadow:0 2px 4px #0000001a}.class-info{flex:1;min-width:0}.class-meta{color:var(--slate-500);font-size:.75rem}.sidebar-link{width:100%;padding:var(--space-2) 0;text-align:center;color:var(--primary-600);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;font-size:.85rem;font-weight:600}.sidebar-link:hover{color:var(--primary-700)}.sidebar-filters{gap:var(--space-3);flex-direction:column;display:flex}.sidebar-filters .filter-field{width:100%;min-width:0}.sidebar-filter-actions{gap:var(--space-2);display:flex}.sidebar-filter-actions .btn{flex:1}.descriptor-planning-card{gap:var(--space-2);flex-direction:column;display:flex}.descriptor-header{justify-content:space-between;align-items:center;display:flex}.descriptor-controls{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--slate-200)}.descriptor-planning-card .small{font-size:12px}.planning-class-card{position:relative;overflow:hidden}.planning-class-card:before{content:"";z-index:1;background:currentColor;width:4px;position:absolute;top:0;bottom:0;left:0}.planning-class-card .card-body{z-index:2;position:relative}.show-plan-btn{padding:var(--space-2) var(--space-4);background:var(--slate-100);border:1px solid var(--slate-200);border-radius:var(--radius-sm);color:var(--slate-700);cursor:pointer;transition:all var(--transition-fast);align-items:center;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.show-plan-btn:hover{background:var(--slate-200);border-color:var(--slate-300)}.planning-no-class-selected{justify-content:center;align-items:center;gap:var(--space-10);padding:var(--space-16) var(--space-8);max-width:560px;margin:0 auto;display:flex}.planning-no-class-selected .planning-no-class-koala{flex-shrink:0}.planning-no-class-speech{background:var(--slate-100);border:1px solid var(--slate-200);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-8);box-shadow:var(--shadow-sm);position:relative}.planning-no-class-speech:before{content:"";border:14px solid #0000;border-right-color:var(--slate-100);position:absolute;top:50%;left:-14px;transform:translateY(-50%)}.planning-no-class-speech:after{content:"";border:14px solid #0000;border-right-color:var(--slate-200);position:absolute;top:50%;left:-15px;transform:translateY(-50%)}.planning-no-class-speech p{color:var(--slate-600);margin:0;font-size:1.25rem;line-height:1.5}.planning-no-class-msg-desktop{display:block}.planning-no-class-msg-mobile{display:none}@media (width<=1024px){.planning-no-class-msg-desktop{display:none}.planning-no-class-msg-mobile{display:block}}.planning-choose-class{padding:var(--space-4) 0 var(--space-6);width:100%;max-width:1280px;margin:0 auto}.planning-choose-class-title{font-family:var(--font-display);color:var(--slate-800);margin:0 0 var(--space-2);font-size:1.5rem;font-weight:700}.planning-choose-class-subtitle{color:var(--slate-500);margin:0 0 var(--space-5);font-size:.9375rem}.planning-choose-class-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.planning-choose-class-card-wrapper{cursor:pointer;border-radius:var(--radius-lg);outline:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.planning-choose-class-card-wrapper:hover:not(.disabled){box-shadow:0 16px 40px -8px color-mix(in srgb, var(--class-color,var(--primary-500)) 20%, #0000001a);transform:translateY(-6px)}.planning-choose-class-card-wrapper:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--class-color,var(--primary-500)) 40%, transparent)}.planning-choose-class-card-wrapper.disabled{cursor:not-allowed;opacity:.6}.planning-choose-class-card{border-radius:var(--radius-lg);height:100%;box-shadow:0 1px 3px #0000000f, 0 0 0 1px var(--slate-200);border:none;margin:0;transition:box-shadow .3s;overflow:hidden}.planning-choose-class-card .card-body{padding:0}.planning-choose-class-card-inner{flex-direction:column;min-height:150px;display:flex;position:relative}.planning-choose-class-card-color{border-radius:0;flex-shrink:0;width:100%;height:5px}.planning-choose-class-card-body{padding:var(--space-5) var(--space-5) var(--space-4);gap:var(--space-2);flex-direction:column;flex:1;display:flex;position:relative}.planning-choose-class-card-name{font-family:var(--font-display);color:var(--slate-900);font-size:1.2rem;font-weight:700;line-height:1.3}.planning-choose-class-card-meta{color:var(--slate-500);font-size:.875rem;font-weight:500}.planning-choose-class-card-lessons{color:var(--slate-400);padding-top:var(--space-2);border-top:1px solid var(--slate-100);margin-top:auto;font-size:.85rem;font-weight:500}.planning-resource-section{margin-top:var(--space-4)}.planning-resource-section-title{color:var(--primary-700);margin:0 0 var(--space-3);font-size:1.25rem;font-weight:700;line-height:1.3}.planning-resource-list{gap:var(--space-6);flex-direction:column;display:flex}.planning-resource-list-heading{color:var(--slate-700);margin:0 0 var(--space-3);font-size:.9375rem;font-weight:600}.planning-resource-card{padding:var(--space-4);background:var(--slate-50);border-radius:var(--radius-md);border:1px solid var(--slate-200);gap:var(--space-2);flex-direction:column;display:flex}.planning-resource-card-title{color:var(--slate-900);margin:0;font-size:1.125rem;font-weight:700;line-height:1.3}.planning-resource-card-meta{align-items:center;gap:var(--space-2);color:var(--slate-600);font-size:.875rem;display:flex}.planning-resource-card-sep{color:var(--slate-400);-webkit-user-select:none;user-select:none;font-weight:400}.planning-resource-card-rating{margin-top:2px}.planning-resource-card-description{color:var(--slate-700);margin:0;font-size:.8125rem;line-height:1.5}.planning-resource-card-actions{gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--slate-200);flex-wrap:wrap;display:flex}.planning-resource-card-action{color:var(--primary-600);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.9375rem;font-weight:500;text-decoration:underline}.planning-resource-card-action:hover{color:var(--primary-700)}.planning-resource-rating{align-items:center;gap:8px;font-size:1rem;font-weight:600;display:inline-flex}.planning-resource-rating-value{color:var(--slate-700)}.planning-resource-rating-stars{letter-spacing:.02em;align-items:center;gap:1px;font-size:1.15rem;display:inline-flex}.planning-resource-rating-star{line-height:1}.planning-resource-rating-star-half{opacity:.6}.planning-resource-rating-sep{color:var(--slate-400);font-size:.875rem;font-weight:400}.planning-resource-rating-count,.planning-resource-rating--none{color:var(--slate-500);font-size:.875rem;font-weight:500}.lesson-card{--lesson-card-gap:1rem;overflow:hidden;border:1px solid var(--slate-200)!important;border-radius:16px!important;box-shadow:0 1px 3px #0000000a,0 6px 24px #00000008!important}.lesson-card-header{justify-content:space-between;align-items:flex-start;gap:1.25rem;display:flex}.lesson-card-header-main{min-width:0}.lesson-card-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:.75rem;display:flex}.lesson-card-badge{border-radius:var(--radius-full);letter-spacing:.02em;padding:5px 12px;font-size:.7rem;font-weight:600}.lesson-card-badge-skill{color:var(--primary-700);background:var(--primary-50);border:1px solid var(--primary-100)}.lesson-card-badge-skill-lower{color:var(--primary-700);background:var(--primary-100);border:1px solid var(--primary-200)}.lesson-card-badge-subject{color:#fff;background:var(--lesson-subject-pill,var(--primary-600));border:none;font-weight:600;box-shadow:0 1px 2px #0000000f}.lesson-card-badge-lesson{color:var(--slate-200);background:var(--slate-800);border:1px solid var(--slate-700);font-weight:600}html:not(.dark) .lesson-card-badge-lesson{color:var(--slate-700);background:var(--slate-100);border:1px solid var(--slate-200)}.lesson-card-title{font-family:var(--font-display);color:var(--slate-900);letter-spacing:-.02em;margin:0 0 .5rem;font-size:1.5rem;font-weight:700;line-height:1.25}.lesson-card-meta{color:var(--slate-500);margin-bottom:.75rem;font-size:.8125rem;line-height:1.5}.lesson-card-meta-curriculum{flex-wrap:wrap;align-items:baseline;gap:0;margin-bottom:.5rem;display:flex}.lesson-card-meta-year{color:var(--slate-600);font-weight:700}.lesson-card-meta-code{color:var(--slate-500);font-weight:500}.lesson-card-meta-sep{color:var(--slate-400);font-weight:500}.lesson-card-meta-skills{color:var(--slate-500);margin:-.25rem 0 .75rem;font-size:.78rem;line-height:1.45}.lesson-card-meta strong{color:var(--slate-700);font-weight:600}.lesson-card-schedule{background:var(--slate-100);border:1px solid var(--slate-200);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin-top:.875rem;padding:12px 16px;font-size:.8125rem;display:flex}.lesson-card-schedule-main{flex-wrap:wrap;flex:auto;align-items:baseline;gap:.35rem .65rem;min-width:0;display:flex}.lesson-card-schedule-week{color:var(--primary-600);flex-shrink:0;font-weight:700}.lesson-card-schedule-date{color:var(--slate-800);font-weight:500}.lesson-card-schedule-duration{color:var(--slate-500);font-weight:500}.lesson-card-schedule-time{background:var(--primary-50);border:1px solid var(--primary-100);border-radius:var(--radius-full);padding:2px 10px;font-size:.78rem;font-weight:600}.lesson-card-schedule-time-pill{color:#fff;background:var(--lesson-subject-pill,var(--primary-600));border-radius:var(--radius-full);border:none;flex-shrink:0;align-items:center;gap:5px;padding:5px 11px;font-size:.78rem;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #00000014}.lesson-card-schedule-time-icon{opacity:.95;flex-shrink:0}.lesson-card-duration{color:var(--slate-500);align-items:center;gap:4px;margin-top:.625rem;font-size:.8125rem;font-weight:500;display:inline-flex}.lesson-card-section{border:1px solid var(--slate-150,var(--slate-200));background:#fff;border-radius:12px;margin-top:1.25rem;padding:1.125rem 1.25rem;position:relative}.lesson-card-section:before{content:"";background:var(--slate-300);border-radius:2px;width:3px;position:absolute;top:12px;bottom:12px;left:0}.lesson-card-section-title{color:var(--slate-500);text-transform:uppercase;letter-spacing:.08em;margin:0 0 .75rem;font-size:.72rem;font-weight:700;line-height:1.3}.lesson-card-outline-list{color:var(--slate-700);margin:0;padding-left:1.25rem;font-size:.9375rem;line-height:1.75}.lesson-card-outline-list li{margin-bottom:.3rem}.lesson-card-outline-list li::marker{color:var(--slate-400)}.lesson-card-section-resources{background:var(--primary-50);border-color:var(--primary-100)}.lesson-card-section-resources:before{background:var(--primary-400)}.lesson-card-section-resources .lesson-card-section-title{color:var(--primary-700)}.lesson-card-section-diff{background:#fefce8;border-color:#fde68a}.lesson-card-section-diff:before{background:#eab308}.lesson-card-section-diff .lesson-card-section-title{color:#92400e}.lesson-card-actions{border-top:1px solid var(--slate-100);flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:1.25rem;padding-top:1rem;display:flex}.planning-class-strip-mobile{display:none!important}.planning-class-strip{gap:var(--space-4);padding:var(--space-3) 0;margin-bottom:var(--space-4);scrollbar-width:thin;display:flex;overflow-x:auto}.planning-class-strip::-webkit-scrollbar{height:8px}.planning-class-pill{--pill-color:var(--primary-500);border:2px solid color-mix(in srgb, var(--pill-color) 45%, var(--slate-200));background:var(--slate-50);color:var(--slate-700);cursor:pointer;white-space:nowrap;border-radius:14px;flex-shrink:0;align-items:center;gap:10px;padding:16px 28px;font-size:17px;font-weight:600;transition:border-color .25s,background .25s,color .25s,box-shadow .25s,transform .2s;display:inline-flex}.planning-class-pill:hover{background:var(--slate-100);border-color:color-mix(in srgb, var(--pill-color) 55%, var(--slate-300));color:var(--slate-800)}.planning-class-pill.selected{background:color-mix(in srgb, var(--pill-color) 18%, white);border-color:var(--pill-color);color:color-mix(in srgb, var(--pill-color) 85%, black);box-shadow:0 4px 14px color-mix(in srgb, var(--pill-color) 25%, transparent)}.planning-class-pill.selected:hover{background:color-mix(in srgb, var(--pill-color) 24%, white);border-color:var(--pill-color)}.planning-class-pill-name{font-size:1em;font-weight:600;transition:font-size .3s,font-weight .25s;display:inline-block}.planning-class-pill.selected .planning-class-pill-name{font-size:1.35em;font-weight:700}.planning-class-pill .pill-year{color:var(--slate-500);font-size:14px;font-weight:500;transition:color .25s}.planning-class-pill.selected .pill-year{color:inherit;opacity:.9}.planning-class-pill.disabled{opacity:.7;pointer-events:none}.planning-class-pill-actions{align-items:center;gap:6px;margin-left:8px;display:inline-flex}.planning-class-pill-action{border:1px solid var(--slate-200);color:var(--slate-700);cursor:pointer;background:#ffffffe6;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s}.planning-class-pill-action:hover{background:var(--slate-100);border-color:var(--slate-300)}.planning-class-pill-action-remove{color:#dc2626;background:#ef444414;border-color:#ef444466}.planning-class-pill-action-remove:hover{background:#ef444426;border-color:#ef444480}.planning-sidebar .planning-classes-list{gap:var(--space-2);flex-direction:column;display:flex}.planning-class-item{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-height:52px;display:flex}.planning-class-item .class-info{flex:1;min-width:0}.planning-class-item .planning-class-pill-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:0;display:flex}.planning-class-item.selected{border-left:4px solid var(--class-color,var(--primary-500));background:linear-gradient(90deg,#14b8a614,#0000)}.planning-class-item.disabled{opacity:.7;pointer-events:none}.planning-sidebar .planning-class-edit-row{margin-top:var(--space-2);flex-direction:column;align-items:stretch}.planning-sidebar .planning-class-edit-input{width:100%;max-width:none}.planning-class-edit-row{margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.planning-class-edit-input{border:1px solid var(--slate-200);color:var(--slate-900);border-radius:8px;flex:1;min-width:200px;max-width:320px;padding:8px 14px;font-size:16px;font-weight:600}.planning-class-edit-input:focus{border-color:var(--primary-400);outline:none;box-shadow:0 0 0 2px #6366f133}.planning-lesson-strip-card .lesson-strip-term-week{color:var(--primary-600);text-transform:uppercase;letter-spacing:.04em;padding:var(--space-2) var(--space-4) 0;margin-bottom:2px;font-size:11px;font-weight:700}.planning-lesson-strip-wrapper{margin-bottom:var(--space-6);--lesson-card-width:300px;--lesson-card-gap:20px;position:relative}.planning-lesson-strip-wrapper:before,.planning-lesson-strip-wrapper:after{content:"";pointer-events:none;z-index:2;opacity:0;width:48px;transition:opacity .2s;position:absolute;top:0;bottom:0}.planning-lesson-strip-wrapper:before{background:linear-gradient(to right, var(--slate-50) 0%, transparent 100%);left:0}.planning-lesson-strip-wrapper:after{background:linear-gradient(to left, var(--slate-50) 0%, transparent 100%);right:0}.planning-lesson-strip-wrapper.can-scroll-left:before,.planning-lesson-strip-wrapper.can-scroll-right:after{opacity:1}.planning-lesson-strip-arrow{z-index:3;border:1px solid var(--slate-200);width:40px;height:40px;color:var(--slate-600);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:22px;line-height:1;transition:all .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0000000f}.planning-lesson-strip-arrow:hover:not(:disabled){border-color:var(--primary-300);background:var(--primary-50);color:var(--primary-700);transform:translateY(-50%)scale(1.08);box-shadow:0 4px 16px #14b8a626}.planning-lesson-strip-arrow:disabled{opacity:.4;cursor:not-allowed}.planning-lesson-strip-arrow-left{left:var(--space-2)}.planning-lesson-strip-arrow-right{right:var(--space-2)}.planning-lesson-strip{align-items:stretch;gap:var(--lesson-card-gap);scroll-snap-type:x proximity;scroll-behavior:smooth;padding:var(--space-5) 50%;scrollbar-width:thin;scrollbar-color:var(--slate-300) transparent;-webkit-overflow-scrolling:touch;display:flex;overflow:auto hidden}.planning-lesson-week-segment{gap:var(--space-3);scroll-snap-align:start;flex-direction:column;flex:none;padding-top:0;display:flex;position:relative}.planning-lesson-week-segment:before{content:"";background:var(--primary-600);border-radius:var(--radius-full);height:3px;position:absolute;top:22px;left:0;right:0}.planning-lesson-week-header{color:var(--primary-600);white-space:nowrap;letter-spacing:.02em;text-transform:uppercase;background:0 0;border:none;border-radius:0;width:auto;padding:0;font-size:12px;font-weight:700;line-height:1.25}.planning-lesson-week-segment--generate-more{align-self:stretch}.planning-lesson-week-segment--generate-more:before{display:none}.planning-lesson-week-header--layout-spacer{opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none}.planning-lesson-week-cards{gap:var(--lesson-card-gap);flex-direction:row;align-items:stretch;display:flex}.planning-lesson-strip::-webkit-scrollbar{height:10px}.planning-lesson-strip::-webkit-scrollbar-track{background:var(--slate-100);border-radius:5px}.planning-lesson-strip::-webkit-scrollbar-thumb{background:var(--slate-300);border-radius:5px}.planning-lesson-strip::-webkit-scrollbar-thumb:hover{background:var(--slate-400)}.wizard-steps{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;padding:12px 0;display:flex}.wizard-steps .wizard-step{align-items:center;display:flex}.wizard-steps .wizard-step-inner{align-items:center;gap:8px;display:flex}.wizard-steps .wizard-step-circle{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;transition:all .2s;display:flex}.wizard-steps .wizard-step-label{white-space:nowrap;font-size:13px}.wizard-steps .wizard-step-connector{flex-shrink:0;width:28px;height:2px;margin:0 6px;transition:background .2s}@media (width<=640px){.wizard-steps{gap:4px;padding:8px 0}.wizard-steps .wizard-step-label{display:none}.wizard-steps .wizard-step-circle{width:28px;height:28px;font-size:12px}.wizard-steps .wizard-step-connector{width:20px;margin:0 2px}}@media (width<=480px){.wizard-steps .wizard-step-connector{width:14px}}.wizard-form-grid-2col{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.wizard-review-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:18px;display:grid}.wizard-nav-row{justify-content:space-between;align-items:center;gap:12px;margin-top:24px;display:flex}.wizard-nav-row .btn{border-radius:10px;padding:12px 28px;font-size:15px}@media (width<=640px){.wizard-form-grid-2col,.wizard-review-grid{grid-template-columns:1fr}.wizard-nav-row{flex-wrap:wrap}.wizard-nav-row .btn{padding:10px 14px;font-size:14px}}.descriptor-skill-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.descriptor-skill-header .descriptor-skill-info{align-items:center;gap:var(--space-2);min-width:0;display:flex}.descriptor-skill-header .descriptor-skill-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}@media (width<=640px){.descriptor-skill-header{flex-wrap:wrap}.descriptor-skill-header .descriptor-skill-actions{justify-content:flex-end;width:100%}.descriptor-skill-header .descriptor-skill-actions .btn{padding:5px 10px;font-size:12px}.add-class-modal-scroll .select-card .card-body{padding:var(--space-3)}.add-class-modal-scroll .select-card{margin-bottom:8px!important}}.generation-popup-card{padding:40px 48px}.generation-popup-minimized{min-width:280px;max-width:400px}@media (width<=640px){.generation-popup-card{border-radius:14px!important;max-width:calc(100vw - 32px)!important;padding:24px 20px!important}.generation-popup-card h2{font-size:20px!important}.generation-popup-minimized{min-width:0!important;max-width:calc(100vw - 40px)!important}}.add-class-modal-scroll{scrollbar-width:thin;scrollbar-color:#9ca3af transparent}@media (width<=640px){.add-class-modal-scroll{padding:env(safe-area-inset-top,12px) 0 env(safe-area-inset-bottom,0) 0}.add-class-modal-scroll>.card{border-radius:12px;margin:8px 0 24px;padding:14px!important}}.add-class-modal-scroll::-webkit-scrollbar{width:10px}.add-class-modal-scroll::-webkit-scrollbar-track{background:#94a3b824;border-radius:999px}.add-class-modal-scroll::-webkit-scrollbar-thumb{background:linear-gradient(#9ca3af 0%,#94a3b8 100%) padding-box content-box;border:2px solid #0000;border-radius:999px}.add-class-modal-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(#6b7280 0%,#64748b 100%) padding-box content-box;border:2px solid #0000;border-radius:999px}.planning-lesson-strip-card{scroll-snap-align:center;scroll-snap-stop:always;flex:0 0 var(--lesson-card-width);min-width:var(--lesson-card-width);max-width:var(--lesson-card-width);cursor:pointer;border:1px solid var(--slate-200);background:#fff;border-radius:14px;flex-direction:column;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-color .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008}.planning-lesson-strip-card:hover{border-color:var(--slate-300);transform:translateY(-5px);box-shadow:0 12px 28px #00000014,0 4px 10px #0000000a}.planning-lesson-strip-card.focused{border-color:var(--primary-400);box-shadow:0 8px 32px #14b8a62e, 0 0 0 2px var(--primary-200);transform:scale(1.03)}.planning-lesson-strip-card.focused:hover{transform:scale(1.03)translateY(-2px)}.planning-lesson-strip-card.past{opacity:.5;filter:saturate(.65)}.planning-lesson-strip-card.past:hover{opacity:.72;filter:saturate(.82)}.planning-lesson-strip-card .lesson-strip-meta{justify-content:space-between;align-items:center;gap:var(--space-2);padding:10px var(--space-4);background:var(--slate-50);border-bottom:1px solid var(--slate-100);color:var(--slate-500);font-size:12px;font-weight:600;display:flex}.planning-lesson-strip-card .lesson-strip-meta span:last-child{background:var(--slate-100);border-radius:var(--radius-full);color:var(--slate-600);padding:2px 8px;font-size:11px}.planning-lesson-strip-card .lesson-strip-title{padding:var(--space-3) var(--space-4);color:var(--slate-900);line-clamp:3;-webkit-line-clamp:3;letter-spacing:-.01em;-webkit-box-orient:vertical;flex:1;font-size:14px;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.planning-lesson-strip-card .lesson-strip-badges{padding:0 var(--space-4) var(--space-3);flex-wrap:wrap;gap:5px;margin-top:auto;display:flex}.planning-lesson-strip-card .lesson-strip-badge{border-radius:var(--radius-full);background:var(--primary-50);color:var(--primary-700);letter-spacing:.01em;padding:3px 8px;font-size:10.5px;font-weight:600}.planning-lesson-strip-card .lesson-strip-badge.resources{color:#059669;background:#0596691a}.planning-lesson-strip-card.planning-generate-more-card{border:2px dashed var(--slate-300);background:var(--slate-50);min-height:100px;box-shadow:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px 16px;transition:border-color .2s,background .2s,transform .2s;display:flex}.planning-lesson-strip-card.planning-generate-more-card:hover{background:#10b9810a;border-color:#10b981;transform:translateY(-3px);box-shadow:0 6px 16px #10b9811a}.planning-generate-more-card .generate-more-icon{color:var(--slate-400);font-size:32px;font-weight:300;line-height:1;transition:color .2s}.planning-generate-more-card:hover .generate-more-icon{color:#10b981}.planning-generate-more-card .generate-more-label{color:var(--slate-500);text-align:center;font-size:12px;font-weight:600;line-height:1.3;transition:color .2s}.planning-generate-more-card:hover .generate-more-label{color:#059669}.curriculum-search{margin-bottom:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--slate-200)}.chart-placeholder{background:var(--slate-100);border-radius:50%;justify-content:center;align-items:center;width:140px;height:140px;font-weight:600;display:flex}.footer-bar{background:var(--slate-50);border-top:1px solid var(--slate-200);padding:var(--space-3);margin:var(--space-3) -16px 0;justify-content:space-between;align-items:center;display:flex;position:sticky;bottom:72px}.accordion{margin:var(--space-3) 0}.accordion>summary{cursor:pointer;padding:var(--space-3);background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-md)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page{animation:.4s ease-out fadeIn}@media (width>=860px){.footer-bar{bottom:0}.hero-title{font-size:4rem}.features{grid-template-columns:repeat(3,1fr)}.page{padding:var(--space-8) var(--space-6)}.features-enhanced{grid-template-columns:repeat(3,1fr)}.benefits-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=768px) and (width<=1024px){.sidebar{width:280px;padding:var(--space-5) var(--space-4)}.stats-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr)}.stat-card{padding:var(--space-3) var(--space-2)}.stat-value{font-size:1.1rem}.sidebar-btn{padding:var(--space-3) var(--space-3);font-size:.85rem}.filters-row{flex-wrap:wrap}.filter-field{width:140px;min-width:140px}.page{padding:var(--space-6) var(--space-5)}.week-view-grid{grid-template-columns:70px repeat(5,1fr);gap:10px}}@media (width<=1024px){.content{width:100%;min-width:0;overflow-x:hidden}.page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:hidden}.sidebar{display:none}.sidebar.sidebar--mobile-open{z-index:101;flex-direction:column;width:min(320px,85vw);max-width:100%;padding:52px 0 88px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:4px 0 20px #00000026}.sidebar.sidebar--mobile-open .sidebar-section:not(:has(.stats-grid)){padding-left:var(--space-3);padding-right:var(--space-3)}.sidebar.sidebar--mobile-open .sidebar-section:has(.stats-grid){padding-left:var(--space-1);padding-right:var(--space-1)}.sidebar.sidebar--mobile-open .stats-grid{gap:var(--space-2);width:100%;min-width:0}.sidebar.sidebar--mobile-open .stat-card{box-sizing:border-box;width:100%;min-width:0}.sidebar-close-mobile{top:52px;right:var(--space-3);width:40px;height:40px;color:var(--slate-600);background:var(--slate-100);border:1px solid var(--slate-200);border-radius:var(--radius-md);cursor:pointer;z-index:1;justify-content:center;align-items:center;padding:0;font-size:1.5rem;line-height:1;display:flex;position:absolute}.sidebar-close-mobile:hover{background:var(--slate-200);color:var(--slate-800)}.sidebar-toggle-mobile{justify-content:center;align-items:center;gap:var(--space-2);top:26px;right:var(--space-2);z-index:120;padding:var(--space-2) var(--space-3);color:var(--primary-700);background:var(--primary-50);border:1px solid var(--primary-200);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);font-size:.9rem;font-weight:600;display:inline-flex;position:fixed}.sidebar-toggle-mobile:hover{background:var(--primary-100);border-color:var(--primary-300)}.content{flex-direction:column}}.sidebar-overlay{z-index:100;background:#0006;position:fixed;inset:0}@media (width>=1025px){.sidebar-toggle-mobile,.sidebar-close-mobile{display:none!important}}@media (width<=768px){.header-nav-item span{display:none}.header-nav{gap:var(--space-1)}.header-nav-item{padding:var(--space-2)}.header-nav-item svg{width:22px;height:22px}.filters-row{flex-direction:column;align-items:stretch}.filter-field{width:100%;min-width:100%}.filters-row.curriculum-selectors{grid-template-columns:1fr}}@media (width<=640px){.content{width:100%;min-width:0;overflow-x:hidden}.page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:var(--space-4) var(--space-4);overflow-x:hidden}.page.mobile-calendar-page{padding:0 var(--space-2);height:calc(100vh - 56px);min-height:calc(100dvh - 56px)}.page-title{font-size:1.5rem}.sidebar{display:none}.stats-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr)}.stat-card{padding:var(--space-3)}.stat-value{font-size:1.1rem}.stat-label{font-size:.65rem}.sidebar-btn{padding:var(--space-3);font-size:.85rem}.filters-bar{margin-top:var(--space-3)}.filters-row{flex-direction:column;align-items:stretch}.filter-field{width:100%;min-width:100%}.select-card{margin-bottom:var(--space-3)}.list-card{padding:var(--space-4)}.printable-section{padding:var(--space-4)!important}.printable-heading{font-size:18px!important}.printable-paragraph{font-size:14px!important}.week-view-container{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.week-view-container[style*=grid]{grid-template-columns:60px repeat(5,minmax(120px,1fr))!important;gap:8px!important}.week-view-container>div{min-width:0;margin-bottom:var(--space-4)}.card-body{padding:var(--space-4)}.card-title{padding:var(--space-3) var(--space-4);font-size:.9rem}.btn{padding:10px 16px;font-size:14px}.content{padding-top:72px}.app-container.no-header .content{padding-top:0}.header-banner{padding:var(--space-3) 0}.header-content{padding:0 var(--space-4);gap:var(--space-3)}.header-logo-section{gap:var(--space-2)}.header-logo{height:28px}.header-brand{font-size:1.1rem}.header-nav{gap:0;margin-left:auto}.header-nav-item{padding:var(--space-2);border-radius:var(--radius-md)}.header-nav-item span{display:none}.header-nav-item svg{width:20px;height:20px}.header-nav-item.active:after{width:20px;bottom:-12px}.page>:not(:last-child){margin-bottom:var(--space-4)!important}.card{border-radius:var(--radius-md);margin-bottom:var(--space-4)!important}.form-grid{gap:var(--space-4)}input,select,textarea{padding:12px 14px;font-size:16px}.hero{padding:var(--space-6) var(--space-5);border-radius:var(--radius-lg)}.hero-title{font-size:2rem}.hero-sub{font-size:1rem}.hero-koala{display:none}.info-hero{padding:var(--space-4) var(--space-5) var(--space-5);min-height:100vh;padding-top:var(--space-5);justify-content:flex-start;overflow:visible!important}.info-hero-inner{max-width:320px;margin-top:0;overflow:visible}.info-hero-brand,.info-hero-koala{overflow:visible}.info-hero-scroll-hint{margin-top:var(--space-4);font-size:.85rem}.info-hero-title{font-size:clamp(3.25rem,11vw,5.5rem)}.info-hero-sub{font-size:1.4rem}.info-hero-desc{font-size:1.15rem}.info-hero-koala img{vertical-align:top;object-fit:contain;height:clamp(80px,14vw,140px)}.info-top-bar-inner{padding:var(--space-2) var(--space-4);gap:var(--space-2);grid-template-columns:1fr auto auto}.info-top-bar-brand img{height:28px}.info-top-bar-brand{font-size:1rem}.info-top-bar-mid{display:none}.info-top-bar-actions{gap:var(--space-2);grid-column:2}.info-top-bar-actions .btn{padding:var(--space-2) var(--space-3);white-space:nowrap;font-size:.875rem}.info-top-bar-hamburger{padding:var(--space-2);border-radius:var(--radius-md);color:var(--slate-700);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;grid-column:3;justify-content:center;align-items:center;display:flex}.info-top-bar-hamburger:hover{background:var(--slate-100)}.info-hero-cta .btn{min-width:0}.info-section{padding:var(--space-10) var(--space-4)}.info-section--feature{padding:var(--space-8) var(--space-4)}.info-feature-split{gap:var(--space-6);grid-template-columns:1fr}.info-feature-split .info-feature-text,.info-feature-split .info-feature-visual{order:unset!important}.info-feature-visual{padding-top:var(--space-2)}.info-mockup-body{grid-template-columns:100px 1fr;min-height:200px}.info-mockup-body--ppt{grid-template-columns:90px 1fr}.info-mockup-body--res{grid-template-columns:1fr;min-height:0}.info-mockup-res-sidebar{border-right:none;border-bottom:1px solid var(--slate-200)}html.dark .info-mockup-res-sidebar{border-bottom-color:#334155}.info-mockup-sidebar-item{padding:3px var(--space-2);font-size:.62rem}.info-mockup-sidebar-icon{font-size:.7rem}.info-mockup-sidebar-add{font-size:.6rem}.info-mockup-card{flex:0 0 100px}.info-mockup-card-title{font-size:.6rem}.info-mockup-detail-title{font-size:.75rem}.info-pricing-grid{grid-template-columns:1fr;max-width:400px}.info-pricing-card--highlighted{transform:none}.info-pricing-card--highlighted:hover{transform:translateY(-4px)}.info-testimonial-grid,.info-why-pillars{grid-template-columns:1fr}.info-cta-card{padding:var(--space-6)}.info-faq-layout{gap:var(--space-6);grid-template-columns:1fr}.info-faq-layout .info-faq-header{text-align:center;position:static}.footer-cta{gap:var(--space-3);flex-direction:column}.footer-cta .btn{justify-content:center;width:100%}.how-it-works-section,.why-teachers-section,.get-started-section{padding:var(--space-6) var(--space-4);margin:var(--space-6) 0;border-radius:var(--radius-lg)}.features-enhanced,.benefits-grid{gap:var(--space-4);grid-template-columns:1fr}.feature-card,.benefit-card{padding:var(--space-4)}.how-it-works-section .section-title,.why-teachers-section .section-title,.get-started-section .section-title{font-size:1.35rem}.section-subtitle{font-size:.95rem}.auth-page{padding:var(--space-6) var(--space-4);max-width:100%}.auth-page .card,.auth-card{border-radius:var(--radius-lg);padding:var(--space-5)!important}.auth-logo{height:40px}.auth-brand{font-size:1.5rem}.onboarding-page{padding:var(--space-6) var(--space-4);max-width:100%}.onboarding-card{padding:var(--space-5)!important}.onboarding-progress{gap:var(--space-4)}.onboarding-step-title{font-size:1.25rem}.calendar-row{gap:var(--space-2)}.calendar-day{padding:var(--space-2) var(--space-1);min-height:60px;font-size:.9rem}.progress-row{align-items:flex-start;gap:var(--space-2);flex-direction:column}.progress{width:100%}.progress-tracker-summary{flex-direction:column;align-items:flex-start}.progress-tracker-row{gap:var(--space-2);flex-wrap:wrap}.progress-tracker-row-label{max-width:100%}.progress-tracker-row-bar{width:100%;max-width:100%}.button-row{gap:var(--space-2);flex-direction:column}.button-row .btn{justify-content:center;width:100%}.quote{padding:var(--space-4);padding-left:var(--space-6);font-size:.95rem}.quote:before{left:var(--space-3);font-size:2rem}.filters-bar{gap:var(--space-3)}.filters-row>.btn{justify-content:center;width:100%}}.account-usage-block{gap:var(--space-5);flex-direction:column;display:flex}.account-plan-summary{align-items:baseline;gap:var(--space-2) var(--space-4);flex-wrap:wrap;line-height:1.4;display:flex}.account-plan-summary dt{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#64748b);margin:0;font-size:.75rem;font-weight:600}.account-plan-summary dd{color:var(--color-text,#0f172a);margin:0;font-size:1.05rem;font-weight:600}.account-usage-meters{gap:var(--space-4);flex-direction:column;display:flex}.account-usage-meter-row{margin:0}.account-usage-meter-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.account-usage-meter-name{color:var(--color-text,#0f172a);font-size:.9375rem;font-weight:600}.account-usage-meter-count{font-variant-numeric:tabular-nums;color:var(--color-text-muted,#64748b);font-size:.875rem}.account-usage-meter-count strong{color:var(--color-text,#0f172a);font-weight:700}.account-usage-track{background:var(--color-bg-subtle,#e2e8f0);border-radius:999px;height:10px;overflow:hidden}.account-usage-fill{background:linear-gradient(90deg, var(--primary-500,#14b8a6) 0%, var(--primary-600,#0d9488) 100%);border-radius:999px;height:100%;transition:width .35s}.account-usage-fill--warn{background:linear-gradient(90deg, var(--accent-500,#f59e0b) 0%, var(--accent-600,#d97706) 100%)}.account-usage-fill--at-limit{background:linear-gradient(90deg,#f43f5e 0%,#be123c 100%)}.account-usage-reset{padding-top:var(--space-3);margin:0;margin-top:var(--space-1);border-top:1px solid var(--color-border-subtle,#94a3b859);font-size:.9375rem;line-height:1.5}.account-usage-reset strong{color:var(--color-text,#0f172a);font-weight:600}.account-upgrade-cta{margin-top:var(--space-5);padding:var(--space-5) var(--space-5);border-radius:var(--radius-lg,12px);border:2px solid var(--primary-300,#5eead4);background:linear-gradient(145deg, var(--primary-50,#f0fdfa) 0%, #fff 55%, var(--primary-50,#f0fdfa) 100%);box-shadow:var(--shadow-md), 0 0 0 1px #14b8a61f, 0 12px 40px -12px #0d948859}.account-upgrade-cta__title{margin:0 0 var(--space-2);letter-spacing:-.02em;color:var(--primary-800,#115e59);font-size:clamp(1.2rem,2.6vw,1.5rem);font-weight:800;line-height:1.25}.account-upgrade-cta__hint{margin:0 0 var(--space-4);max-width:36rem;font-size:.9375rem;line-height:1.45}.account-upgrade-cta__button{box-shadow:var(--shadow-sm), 0 0 0 3px #14b8a633;padding:12px 22px;font-size:15px;font-weight:650}.account-upgrade-cta__button:hover:not(:disabled){box-shadow:var(--shadow-md), 0 0 0 4px #14b8a647;transform:translateY(-1px)}.account-upgrade-cta__error{margin:var(--space-3) 0 0;font-size:.9375rem}.account-pro-modal-wrap{box-sizing:border-box;width:100%;max-width:460px;max-height:calc(100vh - 96px);overflow-y:auto}.account-pro-modal-card{border:1px solid var(--color-border-subtle,#94a3b859);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 24px 48px #0f172a47}.account-pro-modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);background:linear-gradient(135deg, var(--primary-700,#0f766e), var(--primary-500,#14b8a6));padding:14px 18px;display:flex}.account-pro-modal-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:1.125rem;font-weight:800}.account-pro-modal-close{color:#fff;border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;transition:background var(--transition-fast), border-color var(--transition-fast);background:#ffffff26;border:1px solid #ffffff59;justify-content:center;align-items:center;margin:0;padding:0;font-size:1.5rem;line-height:1;display:flex}.account-pro-modal-close:hover:not(:disabled){background:#ffffff47;border-color:#ffffff8c}.account-pro-modal-close:disabled{opacity:.5;cursor:not-allowed}.account-pro-modal-body{padding:var(--space-5) var(--space-5) var(--space-6);background:#fff}.account-pro-modal-lead{margin:0 0 var(--space-4);color:var(--color-text-muted,#64748b);font-size:.9375rem;line-height:1.5}.account-pro-pricing-grid{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:1fr 1fr;display:grid}@media (width<=420px){.account-pro-pricing-grid{grid-template-columns:1fr}}.account-pro-price-card{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-subtle,#94a3b873);background:var(--color-bg-subtle,#f8fafc);flex-direction:column;display:flex;position:relative}.account-pro-pricing-grid .account-pro-price-label{margin-bottom:0}.account-pro-pricing-grid .account-pro-price-note{margin-top:0}.account-pro-price-card--highlight{border-color:var(--primary-400,#2dd4bf);background:linear-gradient(160deg, var(--primary-50,#f0fdfa), #fff);box-shadow:0 0 0 1px #14b8a626}.account-pro-annual-badge-row{line-height:0}.account-pro-price-badge{text-transform:none;letter-spacing:.02em;color:var(--primary-800,#115e59);background:var(--primary-200,#99f6e4);border-radius:999px;padding:4px 8px;font-size:.6875rem;font-weight:700;position:absolute;top:10px;right:10px}.account-pro-price-badge--stacked{align-items:center;width:fit-content;max-width:100%;padding:5px 10px;line-height:1.25;display:inline-flex;position:static;top:auto;right:auto}.account-pro-price-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted,#64748b);margin-bottom:var(--space-1);font-size:.75rem;font-weight:700}.account-pro-price-was{font-variant-numeric:tabular-nums;color:var(--color-text-muted,#64748b);text-underline-offset:2px;letter-spacing:-.02em;font-size:1.05rem;font-weight:700;text-decoration:line-through;text-decoration-thickness:2px}.account-pro-price-compare-panel{color:var(--color-text-muted,#64748b);background:#ffffffd9;border:1px solid #2dd4bf73;border-radius:8px;margin:0;padding:8px 10px;font-size:.75rem;line-height:1.45;box-shadow:0 1px #0f172a0a}.account-pro-price-was--panel{font-size:inherit;font-weight:650;text-decoration-thickness:1.5px;display:inline}.account-pro-price-compare-panel-text{font-weight:500}.account-pro-price-amount{font-variant-numeric:tabular-nums;color:var(--color-text,#0f172a);letter-spacing:-.02em;font-size:1.5rem;font-weight:800}.account-pro-price-unit{color:var(--color-text-muted,#64748b);font-size:.95rem;font-weight:600}.account-pro-price-note{margin:var(--space-2) 0 0;font-size:.8125rem;line-height:1.35}.account-pro-price-card-footer{padding-top:var(--space-3);margin-top:auto}.account-pro-includes-title{margin:0 0 var(--space-2);text-transform:uppercase;letter-spacing:.07em;color:var(--primary-800,#115e59);font-size:.8125rem;font-weight:700}.account-pro-feature-list{margin:0 0 var(--space-5);gap:var(--space-2);color:var(--color-text,#0f172a);flex-direction:column;padding:0;font-size:.9375rem;line-height:1.45;list-style:none;display:flex}.account-pro-feature-list li{padding-left:1.35rem;position:relative}.account-pro-feature-list li:before{content:"✓";color:var(--primary-600,#0d9488);font-size:.85rem;font-weight:800;position:absolute;top:.05em;left:0}.account-pro-checkout-btn{justify-content:center;width:100%;padding:12px 16px;font-size:14px;font-weight:650}.account-pro-checkout-btn--annual{border:2px solid var(--primary-600,#0d9488);color:var(--primary-700,#0f766e);box-shadow:var(--shadow-xs);background:#fff}.account-pro-checkout-btn--annual:hover:not(:disabled){background:var(--primary-50,#f0fdfa);border-color:var(--primary-700,#0f766e);color:var(--primary-800,#115e59)}.account-pro-modal-error{margin:var(--space-3) 0 0;text-align:center;font-size:.9375rem}.card.account-delete-card{border-color:#f43f5e59;box-shadow:0 0 0 1px #f43f5e0f}.account-delete-zone{padding:0}.account-delete-lead{margin:0 0 var(--space-3);color:var(--color-text,#0f172a);font-size:.9375rem;line-height:1.55}.account-delete-sub{margin:0 0 var(--space-4);font-size:.875rem;line-height:1.45}.account-delete-blocked{margin:0 0 var(--space-3);font-size:.875rem;line-height:1.45}.account-delete-open-btn{margin:0}.account-delete-modal-wrap{box-sizing:border-box;width:100%;max-width:440px;max-height:calc(100vh - 96px);overflow-y:auto}.account-delete-modal-card{background:#fff;border:1px solid #f43f5e40;border-radius:16px;overflow:hidden;box-shadow:0 24px 48px #0f172a47}.account-delete-modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);background:linear-gradient(135deg,#9f1239,#e11d48);padding:14px 18px;display:flex}.account-delete-modal-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:1.125rem;font-weight:800}.account-delete-modal-body{padding:var(--space-5);gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.account-delete-modal-list{color:var(--color-text,#0f172a);margin:0;padding-left:1.25rem;font-size:.9375rem;line-height:1.5}.account-delete-modal-list li+li{margin-top:var(--space-2)}.account-delete-checkbox-label{cursor:pointer;color:var(--color-text,#0f172a);align-items:flex-start;gap:10px;min-width:0;font-size:.9375rem;line-height:1.45;display:flex}.account-delete-checkbox-label input{width:auto;max-width:none;accent-color:var(--danger,#dc2626);flex-shrink:0;margin-top:3px}.account-delete-checkbox-label>span{flex:auto;min-width:0}.account-delete-phrase-label{color:var(--color-text-muted,#64748b);flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.account-delete-phrase-label input{box-sizing:border-box;border-radius:var(--radius-md,8px);border:1.5px solid var(--slate-200,#e2e8f0);letter-spacing:.04em;width:100%;font-size:.9375rem;font-weight:600;font-family:var(--font-body);padding:10px 12px}.account-delete-phrase-label input:focus{border-color:var(--danger,#dc2626);outline:none;box-shadow:0 0 0 2px #dc262626}.account-delete-modal-blocked{margin:0;font-size:.875rem;line-height:1.45}.account-delete-modal-error{margin:0;font-size:.875rem}.account-delete-modal-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.account-activity-stats{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.account-activity-stat{align-items:flex-start;gap:var(--space-2);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-subtle,#e2e8f0);border-radius:var(--radius-lg);background:var(--color-surface,#fff);flex-direction:column;display:flex;box-shadow:0 1px 2px #0f172a0a}.account-activity-stat-value{font-variant-numeric:tabular-nums;color:var(--color-text,#0f172a);font-size:2rem;font-weight:700;line-height:1.1;font-family:var(--font-display)}.account-activity-stat-label{color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.05em;max-width:12rem;font-size:.8125rem;font-weight:600;line-height:1.3}@media (width<=640px){.account-activity-stats{gap:var(--space-3);grid-template-columns:1fr}.account-activity-stat{padding:var(--space-4);flex-direction:row;justify-content:space-between;align-items:center}.account-activity-stat-value{font-size:1.75rem}.account-activity-stat-label{text-align:right;max-width:none}}.nav-icon{transition:transform var(--transition-fast);justify-content:center;align-items:center;display:flex}.nav-icon svg{stroke-linecap:round;stroke-linejoin:round}@media (width<=480px){.sidebar{display:none!important}.sidebar.sidebar--mobile-open{display:flex!important}.filters-bar{margin-top:var(--space-2)}.filters-row{gap:var(--space-2)}.filter-field{width:100%}.select-card{padding:var(--space-3)}.list-card{padding:var(--space-3);border-radius:10px}.printable-section{padding:var(--space-3)!important;margin-top:var(--space-3)!important}.printable-heading{margin-bottom:12px!important;font-size:16px!important}.printable-paragraph{font-size:13px!important;line-height:1.6!important}.week-view-container[style*=grid]{grid-template-columns:45px repeat(5,minmax(90px,1fr))!important;gap:4px!important}.week-view-container [style*="position: absolute"]{min-height:30px!important;padding:4px 5px!important;font-size:10px!important}.week-view-container [style*="position: absolute"]>div{font-size:10px!important;line-height:1.3!important}.week-view-container [style*="position: absolute"]>div:first-child{margin-bottom:2px!important;padding:2px 4px!important;font-size:9px!important}.week-view-container [style*="position: absolute"]>div:nth-child(2){font-size:11px!important;font-weight:700!important}.week-view-container [style*="position: absolute"]>div:nth-child(3){margin-top:2px!important;font-size:9px!important}.header-banner{border-top:1px solid var(--slate-200);background:#fff;border-bottom:none;padding:8px 6px;position:fixed;top:auto;bottom:0;box-shadow:0 -2px 10px #00000014}.header-content{flex-direction:row;justify-content:space-between;padding:0 4px}.header-logo-section{display:none}.header-nav{justify-content:space-around;gap:2px;width:100%;margin:0}.header-nav-item{flex-direction:column;flex:1 1 0;gap:1px;min-width:0;padding:4px 6px}.header-nav-item span{font-size:9px;font-weight:500;line-height:1.1;display:block}.header-nav-item svg{width:22px;height:22px}.header-nav-item.active:after{display:none}.content{padding-top:var(--space-4);padding-bottom:80px}}@media print{@page{margin:20px 0;size:auto}body{background:#fff;overflow:hidden!important}html{overflow:hidden!important}.app-container{padding:0;overflow:hidden}.nav,.no-print{display:none!important}.page{max-width:800px;box-shadow:none;page-break-inside:auto;break-inside:auto;margin:0 auto;padding:20px;overflow:hidden}.card{border-radius:var(--radius-md);page-break-inside:auto;break-inside:auto;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-clip:padding-box;margin-top:0;margin-bottom:20px;overflow:visible}.card-body{page-break-inside:auto;break-inside:auto;padding-top:20px;padding-bottom:20px}.printable-section{page-break-inside:auto;break-inside:auto;margin-bottom:20px;padding-bottom:12px}.printable-heading{page-break-after:avoid;break-after:avoid;page-break-inside:avoid;break-inside:avoid;margin-top:0;margin-bottom:8px}.printable-content{page-break-inside:auto;break-inside:auto}.printable-paragraph{page-break-inside:avoid;break-inside:avoid;orphans:2;widows:2;margin-top:0;margin-bottom:8px}.printable-section>.printable-heading+.printable-content{page-break-before:avoid;break-before:avoid}.printable-section:not(:first-child){margin-top:20px;padding-top:12px}.printable-section:after{content:"";page-break-after:auto;break-after:auto;height:0;display:block}}.doc-view-page{max-width:720px;padding:var(--space-6) var(--space-4);margin:0 auto}.doc-view-header{margin-bottom:var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.doc-view-back{align-items:center;gap:var(--space-2);color:var(--slate-700);font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.doc-view-back img{width:auto;height:28px}.doc-view-brand{color:var(--slate-800)}.doc-view-back-link{color:var(--primary-600);font-size:.9375rem;font-weight:500;text-decoration:none}.doc-view-back-link:hover{text-decoration:underline}.doc-view-main{margin-top:var(--space-6)}.doc-view-title{color:var(--slate-900);margin-bottom:var(--space-6);font-size:1.75rem;font-weight:700}.doc-view-content.markdown-body{color:var(--slate-700);font-size:.9375rem;line-height:1.65}.markdown-body h1{color:var(--slate-900);margin-top:1.5em;margin-bottom:.5em;font-size:1.5rem}.markdown-body h2{color:var(--slate-900);margin-top:1.25em;margin-bottom:.5em;font-size:1.25rem}.markdown-body h3{color:var(--slate-800);margin-top:1em;margin-bottom:.4em;font-size:1.1rem}.markdown-body p{margin-bottom:.75em}.markdown-body ul,.markdown-body ol{margin:.5em 0 1em 1.25em}.markdown-body li{margin-bottom:.25em}.markdown-body strong{color:var(--slate-800);font-weight:600}.markdown-body a{color:var(--primary-600);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body hr{border:none;border-top:1px solid var(--slate-200);margin:1.5em 0}.info-footer{margin-top:var(--space-12);padding:var(--space-8) var(--space-4);background:var(--slate-100);border-top:1px solid var(--slate-200);text-align:left}.info-page .info-footer{margin-top:0}.info-footer-inner{max-width:900px;margin:0 auto}.info-footer-columns{gap:var(--space-8);grid-template-columns:1fr 1fr;align-items:start;display:grid}.info-footer-right{justify-content:flex-end;display:flex}.info-footer-contact-instagram{margin:var(--space-1) 0 0;color:var(--slate-600);font-size:.9375rem}.info-footer-contact-instagram-handle{color:var(--primary-600);font-weight:600;text-decoration:none}.info-footer-contact-instagram-handle:hover{text-decoration:underline}.info-footer-contact-facebook{margin:var(--space-1) 0 0;color:var(--slate-600);font-size:.9375rem}.info-footer-contact-facebook-handle{color:var(--primary-600);font-weight:600}a.info-footer-contact-facebook-handle{text-decoration:none}a.info-footer-contact-facebook-handle:hover{text-decoration:underline}.info-footer-links{align-items:flex-end;gap:var(--space-2);flex-direction:column;margin:0;padding:0;font-size:.9375rem;list-style:none;display:flex}.info-footer-links a{color:var(--primary-600);font-weight:500;text-decoration:none}.info-footer-links a:hover{text-decoration:underline}.info-footer-contact{margin-top:var(--space-5)}.info-footer-contact-title{color:var(--slate-700);margin:0;font-size:.9375rem;font-weight:600}.info-footer-contact-email{margin:var(--space-1) 0 0;color:var(--slate-600);font-size:.9375rem}.info-footer-copy{margin-top:var(--space-4);color:var(--slate-500);text-align:center;font-size:.875rem}@media (width<=640px){.info-footer-columns{gap:var(--space-5);grid-template-columns:1fr}.info-footer-right{justify-content:flex-start}.info-footer-links{align-items:flex-start}.info-footer-copy{margin-top:var(--space-5)}}.page--with-footer{flex-direction:column;min-height:100vh;padding-bottom:0;display:flex;overflow-x:visible}.page--with-footer .info-footer-wrapper{margin-top:auto;margin-bottom:0}.page--with-footer .info-footer{margin-top:var(--space-6);padding-top:calc(var(--space-8) + var(--space-4));box-sizing:border-box;width:100vw;margin-bottom:0;margin-left:calc(50% - 50vw)}@media (width>=1025px) and (width<=1399px){.content:has(.sidebar) .page--with-footer .info-footer{margin-left:calc(-50vw + 50% - (var(--desktop-sidebar-width) + var(--space-6)) / 2)}.content:has(.calendar-sidebar) .page--with-footer .info-footer{margin-left:calc(-50vw + 50% - (var(--desktop-sidebar-width) + var(--space-2)) / 2)}}.monitoring-page{max-width:1100px}.monitoring-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.monitoring-controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.monitoring-control{align-items:center;gap:var(--space-2);color:var(--slate-600);font-size:14px;display:flex}.monitoring-control span{font-weight:500}.monitoring-select{border-radius:var(--radius-sm);border:1.5px solid var(--slate-300);background:#fff;padding:6px 12px;font-size:14px}.monitoring-control-checkbox{cursor:pointer}.monitoring-control-checkbox input{width:auto;margin:0}.monitoring-warning{padding:var(--space-3) var(--space-4);background:var(--accent-50);border:1px solid var(--accent-200);border-radius:var(--radius-md);color:var(--accent-800);margin-bottom:var(--space-4);font-size:14px}.monitoring-error-banner{padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-4);background:#fef2f2;border:1px solid #fecaca}.monitoring-error-banner p{margin:0 0 var(--space-2)}.monitoring-error-banner .btn{margin-top:var(--space-2)}.monitoring-section-title{margin:0 0 var(--space-2);color:var(--slate-800);font-size:1.15rem;font-weight:600}.monitoring-section-desc{margin:0 0 var(--space-4);color:var(--slate-500);font-size:13px}.monitoring-section-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.monitoring-founder-card{background:linear-gradient(135deg, var(--primary-50) 0%, #fff 50%);border-color:var(--primary-200)}.monitoring-founder-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.monitoring-metric-tile{padding:var(--space-3);background:var(--slate-50);border-radius:var(--radius-md);border:1px solid var(--slate-100)}.monitoring-metric-tile--unavailable{opacity:.7}.monitoring-metric-tile--unavailable .monitoring-metric-value{color:#dc2626}.monitoring-metric-value{color:var(--slate-900);font-size:1.25rem;font-weight:700;line-height:1.3}.monitoring-metric-label{color:var(--slate-500);margin-top:2px;font-size:12px;font-weight:500}.monitoring-metric-sub{color:var(--slate-400);margin-top:2px;font-size:11px}.monitoring-errors-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.monitoring-errors-header .monitoring-section-title{margin:0}.monitoring-errors-summary{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.monitoring-failed-list{margin-top:var(--space-3)}.monitoring-failed-list ul{gap:var(--space-2);flex-direction:column;max-height:360px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.monitoring-failed-item{padding:var(--space-3);border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;font-size:13px}.monitoring-failed-method{color:#991b1b;margin-right:var(--space-2);font-weight:600}.monitoring-failed-status{background:var(--danger);color:#fff;margin-right:var(--space-2);border-radius:3px;padding:2px 8px;font-size:12px;display:inline-block}.monitoring-failed-time{color:var(--slate-500);font-size:12px}.monitoring-failed-msg{color:#991b1b;margin-top:6px}.usage-modal-overlay{z-index:10000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.usage-modal-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:440px;padding:28px 32px;box-shadow:0 24px 48px #0000002e}.usage-modal-actions{flex-direction:column;gap:10px;display:flex}.slide-preview-wrapper{background:#f1f5f9;border-radius:10px;width:100%;padding-bottom:56.25%;position:relative;overflow:hidden;box-shadow:0 2px 12px #0f172a1f}.slide-preview-inner{transform-origin:0 0;width:960px;height:540px;font-family:inherit;position:absolute;top:0;left:0;overflow:hidden}.slide-title-bar{color:#fff;flex-shrink:0;align-items:center;height:72px;padding:0 28px;font-size:22px;font-weight:800;display:flex}.slide-body{flex-direction:column;flex:1;display:flex;overflow:hidden}.slide-bullets{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.slide-bullet{color:#1e293b;align-items:flex-start;gap:10px;font-size:16px;line-height:1.4;display:flex}.slide-bullet:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.slide-note-box{border-radius:10px;padding:10px 14px;font-size:14px;line-height:1.45}.slide-edit-panel{background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:14px;padding:20px 22px;display:flex}.slide-edit-field label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.slide-edit-field input,.slide-edit-field textarea{box-sizing:border-box;color:#1e293b;resize:vertical;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.slide-edit-field input:focus,.slide-edit-field textarea:focus{background:#fff;border-color:#0f766e;outline:none}.slide-ai-section{border-top:1px solid #e2e8f0;flex-direction:column;gap:8px;padding-top:14px;display:flex}.slide-ai-section label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.slide-ai-row{gap:8px;display:flex}.slide-ai-row input{color:#1e293b;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;flex:1;padding:9px 12px;font-family:inherit;font-size:14px}.slide-ai-row input:focus{background:#fff;border-color:#0f766e;outline:none}.slide-edit-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.slide-edited-banner{color:#92400e;background:#fef3c7;border:1px solid #f59e0b;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:flex}html.dark body:before{background:radial-gradient(80% 50% at 50% -20%,#14b8a60d,#0000),radial-gradient(60% 40% at 100% 100%,#f59e0b08,#0000)}html.dark .card{background:#1e293b;border-color:#334155}html.dark .btn{color:#e2e8f0;background:#1e293b;border-color:#475569}html.dark .btn:hover{background:#334155;border-color:#64748b}html.dark .btn.primary{background:var(--primary-600);color:#0f172a;border-color:var(--primary-600)}html.dark .btn.primary:hover{background:var(--primary-500);border-color:var(--primary-500)}html.dark .btn.accent{background:var(--primary-600);color:#0f172a;border-color:var(--primary-600)}html.dark .btn.danger{color:#f87171;background:#ef444426;border-color:#ef44444d}html.dark input,html.dark select,html.dark textarea,html.dark .text-area{color:#e2e8f0;background:#0f172a;border-color:#475569}html.dark input:focus,html.dark select:focus,html.dark textarea:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #2dd4bf26}html.dark input::placeholder,html.dark textarea::placeholder{color:#64748b}html.dark .header-banner{background:#1e293b;border-bottom-color:#334155}html.dark .header-nav-item:hover{background:#334155}html.dark .header-nav-dropdown-menu{background:#1e293b;border-color:#475569}html.dark .header-nav-dropdown-item:hover{background:#334155}html.dark .sidebar{background:#0f172a;border-right-color:#334155}html.dark .tag{color:#f8fafc;font-weight:600}html.dark .tag:not([style]){background:#334155}html.dark .pill{background:var(--primary-50);color:var(--primary-700)}html.dark .info-beta-banner{color:#fbbf24;background:#451a03;border-bottom-color:#92400e}html.dark .info-top-bar{background:#1e293b;border-bottom-color:#334155}html.dark .info-top-bar-brand{color:#f1f5f9}html.dark .info-top-bar-mid-link{color:#94a3b8}html.dark .info-top-bar-mid-link:hover{color:#f1f5f9;background:#94a3b81f}html.dark .info-top-bar-mid a[aria-current=page]{color:var(--primary-400)}html.dark .info-top-bar-mid a[aria-current=page]:hover{color:var(--primary-300);background:#2dd4bf1f}html.dark .info-mobile-nav{background:#1e293b;border-top-color:#334155}html.dark .info-hero{background:linear-gradient(#0c1222 0%,#0f172a 50%,#042f2e 100%)}html.dark .info-hero:before{--line-blue:#5eead40a}html.dark .info-section--light{background-color:#0f172a!important}html.dark .info-section--off{border-top-color:#334155;border-bottom-color:#334155;background-color:#1e293b!important}html.dark .info-section--primary{background-color:#065f46!important;background-image:linear-gradient(135deg,#065f46 0%,#064e3b 100%)!important}html.dark .info-mockup{background:#1e293b;border-color:#475569}html.dark .info-mockup-chrome{background:#0f172a;border-bottom-color:#334155}html.dark .info-mockup-tab{color:#94a3b8;background:#1e293b;border-color:#475569}html.dark .info-mockup-chrome-title-btn{color:#0f172a;background:#14b8a6}html.dark .info-mockup-sidebar{background:#0f172a;border-right-color:#334155}html.dark .info-mockup-sidebar-label{color:#94a3b8}html.dark .info-mockup-sidebar-item{color:#cbd5e1}html.dark .info-mockup-sidebar-meta{color:#94a3b8}html.dark .info-mockup-sidebar-item.active{color:#5eead4;background:#334155;border-left-color:#2dd4bf}html.dark .info-mockup-main{background:#1e293b}html.dark .info-mockup-card{background:#0f172a;border-color:#475569}html.dark .info-mockup-card.active{background:#2dd4bf1a;border-color:#2dd4bf;box-shadow:0 0 0 1px #2dd4bf40}html.dark .info-mockup-card-date{color:#94a3b8}html.dark .info-mockup-card-dur{color:#99f6e4;background:#064e3b8c}html.dark .info-mockup-card-title{color:#f1f5f9}html.dark .info-mockup-card-tag.maths{color:#5eead4;background:#2dd4bf2e}html.dark .info-mockup-card-tag.eng{color:#93c5fd;background:#3b82f633}html.dark .info-mockup-card-tag.sci{color:#fcd34d;background:#f59e0b2e}html.dark .info-mockup-detail{background:#0f172a;border-color:#475569}html.dark .info-mockup-detail-tag.primary{color:#5eead4;background:#2dd4bf33}html.dark .info-mockup-detail-tag.muted{color:#cbd5e1;background:#334155}html.dark .info-mockup-detail-title{color:#f8fafc}html.dark .info-mockup-detail-meta{color:#94a3b8}html.dark .info-mockup-detail-term{color:#5eead4}html.dark .info-mockup-detail-section{color:#94a3b8;border-top-color:#334155}html.dark .info-mockup-detail-list{color:#cbd5e1}html.dark .info-mockup-detail .info-mockup-btn{color:#e2e8f0;background:#334155;border:1px solid #475569}html.dark .info-mockup-detail .info-mockup-btn.primary{color:#0f172a;background:#14b8a6;border-color:#14b8a6;font-weight:600}html.dark .info-mockup-detail .info-mockup-btn.accent{background:var(--accent-500);color:#0f172a;border-color:var(--accent-400);font-weight:600}html.dark .info-mockup-cal-cell{background:#0f172a;border-color:#334155}html.dark .info-mockup-cal-date{color:#e2e8f0}html.dark .info-mockup-cal-nav-btn{background:var(--primary-400)}html.dark .info-mockup-cal-views{background:#1e293b}html.dark .info-mockup-cal-view-btn{color:#94a3b8}html.dark .info-mockup-cal-view-btn.active{background:var(--primary-400)}html.dark .info-mockup-ppt-slide{background:#1e293b;border-color:#475569}html.dark .info-mockup-ppt-slides,html.dark .info-mockup-res-sidebar{background:#0f172a;border-right-color:#334155}html.dark .info-mockup-res-sidebar-title{color:#e2e8f0}html.dark .info-mockup-res-flabel{color:#94a3b8}html.dark .info-mockup-res-fake-select,html.dark .info-mockup-res-fake-input{color:#e2e8f0;background:#1e293b;border-color:#475569}html.dark .info-mockup-res-fake-input{color:#94a3b8}html.dark .info-mockup-res-sbtn.secondary{border-color:var(--primary-400);color:#5eead4;background:#1e293b}html.dark .info-mockup-res-stat{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border-color:#334155}html.dark .info-mockup-res-stat .l{color:#94a3b8}html.dark .info-mockup-res-main{background:#0c1222}html.dark .info-mockup-res-page-h{color:#f1f5f9}html.dark .info-mockup-res-toolbar{color:#94a3b8;box-shadow:none;background:#1e293b;border-color:#334155}html.dark .info-mockup-res-found strong{color:#f1f5f9}html.dark .info-mockup-res-sort-mock{color:#cbd5e1;background:#0f172a;border-color:#475569}html.dark .info-mockup-res-lib-card{box-shadow:none;background:#1e293b;border-color:#334155}html.dark .info-mockup-res-lib-title{color:#f8fafc}html.dark .info-mockup-res-desc{color:#94a3b8}html.dark .info-mockup-res-see-desc{color:#5eead4}html.dark .info-mockup-res-mini-btn{color:#e2e8f0;background:#1e293b;border-color:#475569}html.dark .info-mockup-res-mini-btn--primary{background:var(--primary-500);border-color:var(--primary-400);color:#0f172a}html.dark .info-mockup-res-rating-line,html.dark .info-mockup-res-votes{color:#94a3b8}html.dark .info-mockup-res-star-empty{color:#475569}html.dark .info-mockup-res-dur{color:#cbd5e1}html.dark .info-pricing-card{background:#1e293b;border-color:#475569}html.dark .info-pricing-card--highlighted{border-color:var(--primary-500);box-shadow:var(--shadow-lg), 0 0 0 2px #2dd4bf26}html.dark .info-pricing-was{color:#64748b}html.dark .info-pricing-badge--savings{box-shadow:0 2px 12px #2dd4bf40}html.dark .info-plans-compare-wrap{background:#1e293b;border-color:#475569}html.dark .info-plans-compare-table thead th{color:#e2e8f0;background:#0f172a;border-bottom-color:#475569}html.dark .info-plans-compare-pro-col{background:#2dd4bf14}html.dark .info-plans-compare-table tbody th,html.dark .info-plans-compare-table tbody td{color:#cbd5e1;border-bottom-color:#334155}html.dark .info-plans-compare-cell--yes{color:var(--primary-400)}html.dark .info-plans-compare-cell--no{color:#475569}html.dark .info-why-pillar{border-color:#334155;border-left-color:var(--primary-500);background:#1e293b}html.dark .info-why-pillar-index{color:#334155}html.dark .info-section--light .info-why-pillar:hover{box-shadow:var(--shadow-lg), 0 0 0 1px #2dd4bf26;border-color:var(--primary-400);border-left-color:var(--primary-400)}html.dark .info-why-pillar-kicker{color:var(--primary-400)}html.dark .info-testimonial-card,html.dark .info-faq-item{background:#1e293b;border-color:#334155}html.dark .info-faq-item:hover{border-color:var(--primary-300)}html.dark .info-faq-question:hover{background:#334155}html.dark .info-cta-card{background:#00000040}html.dark .info-footer{background:#0c1222;border-top-color:#334155}html.dark .planning-choose-class-card{background:#1e293b;box-shadow:0 1px 3px #0003,0 0 0 1px #334155}html.dark .planning-choose-class-card-lessons{border-top-color:#334155}html.dark .planning-lesson-strip-card{background:#1e293b;border-color:#334155}html.dark .planning-lesson-strip-card .lesson-strip-meta{background:#0f172a;border-bottom-color:#334155}html.dark .planning-lesson-strip-card .lesson-strip-meta span:last-child{color:#94a3b8;background:#334155}html.dark .planning-lesson-strip-arrow{color:#94a3b8;background:#1e293b;border-color:#475569}html.dark .planning-lesson-strip-arrow:hover:not(:disabled){background:var(--primary-50);border-color:var(--primary-400);color:var(--primary-500)}html.dark .planning-lesson-week-header{background:0 0}html.dark .planning-class-pill-action:not(.planning-class-pill-action-remove){color:#e2e8f0;background:#1e293b;border-color:#475569}html.dark .planning-class-pill-action:not(.planning-class-pill-action-remove):hover{color:#f1f5f9;background:#334155;border-color:#64748b}html.dark .planning-lesson-strip-card.planning-generate-more-card{background:#1e293b;border-color:#475569}html.dark .planning-lesson-strip-card.planning-generate-more-card:hover{background:#10b98114;border-color:#10b981}html.dark .planning-generate-more-card .generate-more-icon,html.dark .planning-generate-more-card .generate-more-label{color:#64748b}html.dark .lesson-card{background:#1e293b!important;border-color:#334155!important}html.dark .lesson-card-section{background:#0f172a;border-color:#334155}html.dark .lesson-card-section:not(.lesson-card-section-resources):not(.lesson-card-section-diff){background:#334155;border-color:#475569}html.dark .lesson-card-section:not(.lesson-card-section-resources):not(.lesson-card-section-diff):before{background:#94a3b8}html.dark .lesson-card-section-title{color:#cbd5e1}html.dark .lesson-card-outline-list{color:#f8fafc}html.dark .lesson-card-outline-list li::marker{color:#94a3b8}html.dark .lesson-card-schedule{background:#0f172a;border-color:#1e293b}html.dark .lesson-card-title{color:#f8fafc}html.dark .lesson-card-meta-year{color:#cbd5e1}html.dark .lesson-card-meta-code{color:#94a3b8}html.dark .lesson-card-meta-sep{color:#64748b}html.dark .lesson-card-meta-skills{color:#94a3b8}html.dark .lesson-card-schedule-week{color:#2dd4bf}html.dark .lesson-card-schedule-date{color:#f1f5f9}html.dark .lesson-card-schedule-duration{color:#94a3b8}html.dark .lesson-card-badge-lesson{color:#e2e8f0;background:#0f172a;border-color:#334155}html.dark .lesson-card-duration{color:#94a3b8}html.dark .lesson-card-actions{border-top-color:#334155}html.dark .lesson-card-section-resources{background:#14b8a614;border-color:#14b8a633}html.dark .lesson-card-section-diff{background:#eab30814;border-color:#eab30833}html.dark .lesson-card-section-resources .lesson-card-section-title{color:var(--primary-500)}html.dark .lesson-card-section-diff .lesson-card-section-title{color:#fbbf24}html.dark .calendar-week-cell,html.dark .calendar-day-cell{background:#1e293b;border-color:#334155}html.dark .modal-backdrop,html.dark [style*="rgba(15,23,42,0.7)"]{background:#000000bf!important}html.dark .auth-page{background:#0c1222}html.dark .auth-card{background:#1e293b;border-color:#334155}html.dark .auth-recaptcha-host{clip-path:inset(2px 5px 5px 2px round 4px);background:#222;border-radius:4px;width:304px;margin:8px auto;overflow:hidden}html.dark ::-webkit-scrollbar-track{background:#1e293b}html.dark ::-webkit-scrollbar-thumb{background:#475569}html.dark ::-webkit-scrollbar-thumb:hover{background:#64748b}html.dark .monitoring-select{color:#e2e8f0;background:#1e293b;border-color:#475569}.ppt-slide-meta{color:var(--slate-500);font-size:13px;font-weight:700}html.dark .ppt-slide-meta{color:#94a3b8}html.dark .slide-edit-panel{background:#1e293b;border-color:#334155}html.dark .slide-edit-field label,html.dark .slide-ai-section label{color:#94a3b8}html.dark .slide-edit-field input,html.dark .slide-edit-field textarea,html.dark .slide-ai-row input{color:#e2e8f0;background:#0f172a;border-color:#475569}html.dark .slide-edit-field input:focus,html.dark .slide-edit-field textarea:focus,html.dark .slide-ai-row input:focus{border-color:var(--primary-500);background:#0f172a;outline:none;box-shadow:0 0 0 3px #2dd4bf26}html.dark .slide-ai-section{border-top-color:#334155}html.dark .slide-edited-banner{color:#fbbf24;background:#eab3081f;border-color:#eab30859}html.dark .planning-resource-card{background:#1e293b;border-color:#334155}html.dark .school-dashboard-textarea{color:#e2e8f0;background:#0f172a;border-color:#475569}html.dark .progress-bar-bg{background:#334155}html.dark .koala-helper-mobile-card{background:#1e293b;border-color:#334155}.appearance-toggle-group{gap:var(--space-2);display:flex}.appearance-toggle-btn{align-items:center;gap:var(--space-2);font-family:var(--font-body);color:var(--slate-600);border:1px solid var(--slate-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:10px 18px;font-size:14px;font-weight:550;display:flex}.appearance-toggle-btn:hover{background:var(--slate-50);border-color:var(--slate-300)}.appearance-toggle-btn.active{background:var(--primary-50);color:var(--primary-700);border-color:var(--primary-400);font-weight:600}.appearance-toggle-btn svg{flex-shrink:0;width:18px;height:18px}html.dark .appearance-toggle-btn{color:#94a3b8;background:0 0;border-color:#475569}html.dark .appearance-toggle-btn:hover{background:#334155;border-color:#64748b}html.dark .appearance-toggle-btn.active{background:var(--primary-50);color:var(--primary-700);border-color:var(--primary-400)}html.dark .stat-card{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border-color:#334155}html.dark .sidebar-btn{background:#1e293b;border-color:#334155}html.dark .sidebar-btn:hover{border-color:var(--primary-400);background:#334155}html.dark .sidebar-btn:not(.primary){color:var(--slate-300);background:#1e293b;border-color:#334155}html.dark .sidebar-btn:not(.primary):hover{color:#e2e8f0;background:#334155;border-color:#475569}html.dark .sidebar-btn.sidebar-btn-block{color:#fca5a5;background:#ef444426;border-color:#ef444459}html.dark .sidebar-btn.sidebar-btn-block:hover{color:#fecaca;background:#ef444440;border-color:#ef444480}html.dark .lesson-item,html.dark .class-item{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border-color:#334155}html.dark .lesson-item:hover,html.dark .class-item:hover{border-color:var(--primary-400);background:#1e293b}html.dark .class-color-dot{border-color:#1e293b}html.dark .calendar-sidebar-card{background:#1e293b;border-color:#334155}html.dark .calendar-mini-nav-btn{color:#e2e8f0;background:#1e293b;border-color:#475569}html.dark .calendar-mini-nav-btn:hover:not(:disabled){background:#334155}html.dark .calendar-tip-card{background:#1e293b;border-color:#475569;box-shadow:0 4px 12px #0000004d}html.dark .calendar-tip-title{color:#e2e8f0}html.dark .calendar-tip-card p{color:#94a3b8}html.dark .calendar-view-switch{background:#1e293b;border-color:#475569}html.dark .calendar-view-btn{color:#cbd5e1;background:#1e293b}html.dark .calendar-view-btn.active{background:var(--primary-600);color:#fff}html.dark .calendar-month-heading{color:#e2e8f0;background:linear-gradient(135deg,#0d948826 0%,#8b5cf626 100%);border-color:#0d94884d}html.dark .calendar-week-label{color:#e2e8f0;background:linear-gradient(135deg,#0d948833 0%,#8b5cf633 100%);border-color:#0d94884d}html.dark .calendar-week-label.holiday{color:#64748b;background:#64748b26;border-color:#64748b40}html.dark .calendar-month-cell{background:#1e293b;border-color:#334155}html.dark .calendar-month-cell.today{background:#3b82f626;border-color:#3b82f6}html.dark .calendar-month-cell.blocked{background:#ef444426;border-color:#ef4444}html.dark .calendar-week-header--today .calendar-month-cell-status.is-school-holiday{color:#fef9c3}html.dark .calendar-holiday-pill{color:#fbbf24;background:#fbbf242e;border-color:#fbbf244d}html.dark .calendar-day-card{background:#1e293b;border-color:#334155}html.dark .calendar-lesson-modal-card .card-title{color:#e2e8f0;background:linear-gradient(135deg,#14b8a633 0%,#3b82f626 100%);border-bottom-color:#0d94884d}html.dark .calendar-lesson-modal-datetime{color:#5eead4;background:#0d948826;border-color:#0d94884d}html.dark .tour-dot{background:#475569}html.dark .tour-skip{color:#64748b}html.dark .tour-skip:hover{color:#94a3b8}html.dark .tour-card{background:#1e293b;box-shadow:0 24px 64px #00000080}html.dark .tour-card-title{color:#f1f5f9}html.dark .tour-card-body{color:#94a3b8}html.dark .tour-tooltip{background:#1e293b;box-shadow:0 8px 32px #0006}html.dark .tour-tooltip-title{color:#f1f5f9}html.dark .tour-tooltip-body{color:#94a3b8}html.dark .tour-arrow--up{border-bottom-color:#1e293b}html.dark .tour-arrow--down{border-top-color:#1e293b}html.dark .tour-sheet{background:#1e293b}html.dark .tour-sheet-title{color:#f1f5f9}html.dark .tour-sheet-body{color:#94a3b8}html.dark .koala-helper-bubble{background:#1e293b;border-color:#475569;box-shadow:0 8px 24px #0000004d}html.dark .koala-helper-bubble:after{border-top-color:#475569}html.dark .koala-helper-bubble:before{border-top-color:#1e293b}html.dark .koala-helper-close{color:#64748b}html.dark .koala-helper-close:hover{color:#94a3b8}html.dark .mobile-calendar-fab-menu{background:#1e293b;box-shadow:0 4px 20px #00000059,0 0 0 1px #ffffff0f}html.dark .mobile-calendar-fab-menu-item:hover{background:#334155}html.dark .mobile-calendar-month-wrap{background:#0f172a}html.dark .mobile-calendar-day-blocked{color:#fca5a5;background:#ef444426}html.dark .mobile-calendar-blocked-card{color:#fca5a5;background:#ef44441f;border-color:#ef44444d}html.dark .usage-modal-card{color:#e2e8f0;background:#1e293b;box-shadow:0 24px 48px #0006}html.dark .usage-modal-title{color:#f1f5f9!important}html.dark .usage-modal-body{color:#cbd5e1!important}html.dark .usage-modal-sub{color:#94a3b8!important}html.dark .usage-modal-secondary-btn{color:#e2e8f0!important;background:#334155!important;border-color:#475569!important}html.dark .account-upgrade-cta{border-color:var(--primary-400);box-shadow:var(--shadow-md), 0 0 0 1px #2dd4bf26, 0 12px 40px -12px #0d948840;background:linear-gradient(145deg,#0d948826 0%,#0f172af2 55%,#0d948826 100%)}html.dark .account-upgrade-cta__title{color:var(--primary-300)}html.dark .account-upgrade-cta__button{box-shadow:var(--shadow-sm), 0 0 0 3px #2dd4bf33}html.dark .account-upgrade-cta__button:hover:not(:disabled){box-shadow:var(--shadow-md), 0 0 0 4px #2dd4bf4d}html.dark .account-pro-modal-card{background:#1e293b;border-color:#64748b59;box-shadow:0 24px 48px #00000073}html.dark .account-pro-modal-body{background:#1e293b}html.dark .account-pro-modal-lead{color:#94a3b8}html.dark .account-pro-price-card{background:#0f172a;border-color:#64748b59}html.dark .account-pro-price-card--highlight{border-color:var(--primary-500);background:linear-gradient(160deg,#0d948826,#1e293b)}html.dark .account-pro-price-amount{color:#f1f5f9}html.dark .account-pro-price-unit,html.dark .account-pro-price-label,html.dark .account-pro-price-was{color:#94a3b8}html.dark .account-pro-price-compare-panel{color:#94a3b8;background:#0f172a99;border-color:#2dd4bf4d}html.dark .account-pro-includes-title{color:#5eead4}html.dark .account-pro-feature-list{color:#e2e8f0}html.dark .account-pro-checkout-btn--annual{color:#5eead4;border-color:var(--primary-500);background:#0f172a}html.dark .account-pro-checkout-btn--annual:hover:not(:disabled){background:#0d948826}html.dark .account-delete-modal-card{background:#1e293b;border-color:#f43f5e59;box-shadow:0 24px 48px #00000073}html.dark .account-delete-modal-list,html.dark .account-delete-checkbox-label{color:#e2e8f0}html.dark .account-delete-phrase-label{color:#94a3b8}html.dark .account-delete-phrase-label input{color:#e2e8f0;background:#0f172a;border-color:#475569}html.dark .account-delete-lead{color:#e2e8f0}html.dark .school-auth-page{background:#0c1222}html.dark .school-auth-card{background:#1e293b;border-color:#334155}html.dark .school-auth-tabs{border-bottom-color:#334155}html.dark .school-auth-footer{background:#162032;border-top-color:#334155}html.dark .school-field input{color:#e2e8f0;background:#0f172a;border-color:#475569}html.dark .school-field input:focus{background:#0f172a;border-color:#2dd4bf}html.dark .school-auth-alert{color:#fbbf24;background:#fbbf241f;border-bottom-color:#fbbf2440}html.dark .school-seats-number{color:#e2e8f0;background:#0f172a;border-color:#475569}html.dark .school-dashboard-textarea:focus{background:#0f172a;border-color:#2dd4bf}html.dark .add-class-modal-scroll{scrollbar-color:#475569 transparent}html.dark .add-class-modal-scroll::-webkit-scrollbar-track{background:#3341554d}html.dark .add-class-modal-scroll::-webkit-scrollbar-thumb{background:linear-gradient(#475569 0%,#64748b 100%)}html.dark .add-class-modal-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(#64748b 0%,#94a3b8 100%)}html.dark .slide-preview-wrapper{background:#0f172a}
