:root{--font-brand:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Century Schoolbook L", Georgia, serif;--font-display:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Fraunces", Georgia, serif;--font-ui:"Outfit", sans-serif;--bg-color:#f3e4c8;--text-color:#2c241c;--text-muted:#6b5e52;--primary:#2f6b56;--primary-ink:#2f6b56;--primary-soft:#98d8c1;--on-primary:#f7f0e6;--accent:#e8a598;--accent-2:#e0c48a;--accent-3:#c4a06a;--card-bg:#fff8ece6;--shadow-color:#8c60281f;--border-color:color-mix(in srgb, var(--text-color) 10%, transparent);--success:#2f6b56;--warning:#b8893a;--danger:#c45c4a;--blob-light:#e8d4a8;--blob-mid:#d4b47a;--blob-deep:#c4985a;--sky-top:#f6d7a4;--sky-bottom:#f3e4c8;--sun:#f0c060;--color-primary:var(--primary);--color-text:var(--text-color);--color-primary-light:color-mix(in srgb, var(--primary) 12%, transparent)}[data-theme=dusk]{--font-brand:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Century Schoolbook L", Georgia, serif;--font-display:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Fraunces", Georgia, serif;--font-ui:"Outfit", sans-serif;--bg-color:#f4f1f8;--text-color:#2d3748;--text-muted:#5a6578;--primary:#2557a0;--primary-ink:#2557a0;--primary-soft:#a0c4ff;--on-primary:#f4f1f8;--accent:#e2c2ff;--accent-2:#ffb7b2;--accent-3:#98d8c1;--card-bg:#ffffffb3;--shadow-color:#2d37480d;--border-color:color-mix(in srgb, var(--text-color) 10%, transparent);--success:#2557a0;--warning:#b8893a;--danger:#c45c4a;--blob-light:#e8e4f2;--blob-mid:#d0c6e4;--blob-deep:#b4a6ce;--sky-top:#ddd0f0;--sky-bottom:#f4f1f8;--sun:#e8d0a8;--color-primary:var(--primary);--color-text:var(--text-color);--color-primary-light:color-mix(in srgb, var(--primary) 12%, transparent)}[data-theme=midnight]{--font-brand:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Century Schoolbook L", Georgia, serif;--font-display:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Fraunces", Georgia, serif;--font-ui:"Outfit", sans-serif;--bg-color:#0a1628;--text-color:#e8f4fa;--text-muted:#9bb8c9;--primary:#3ecfbf;--primary-ink:#7eddd2;--primary-soft:#164a58;--on-primary:#042028;--accent:#1e6a88;--accent-2:#2a5080;--accent-3:#2e7a6a;--card-bg:#0a2030c7;--shadow-color:#00081473;--border-color:color-mix(in srgb, var(--text-color) 18%, transparent);--success:#4db6a0;--warning:#e0b060;--danger:#e08a7a;--blob-light:#0e3a4c;--blob-mid:#125568;--blob-deep:#0a2838;--sky-top:#061018;--sky-bottom:#0b1e30;--sun:#d4e4f0;--color-primary:var(--primary);--color-text:var(--text-color);--color-primary-light:color-mix(in srgb, var(--primary) 22%, transparent)}[data-theme=mountain]{--font-brand:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Century Schoolbook L", Georgia, serif;--font-display:"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Fraunces", Georgia, serif;--font-ui:"Outfit", sans-serif;--bg-color:#f0cdb0;--text-color:#2a2c28;--text-muted:#636860;--primary:#4a6a48;--primary-ink:#4a6a48;--primary-soft:#c4d4b0;--on-primary:#f3f1ea;--accent:#b8a898;--accent-2:#d4c8b0;--accent-3:#8a9478;--card-bg:#fcf6eee6;--shadow-color:#4648381a;--border-color:color-mix(in srgb, var(--text-color) 10%, transparent);--success:#4a6a48;--warning:#b8893a;--danger:#c45c4a;--blob-light:#d4c8b0;--blob-mid:#a8b08c;--blob-deep:#6a7a54;--sky-top:#f3d6bc;--sky-bottom:#f0cdb0;--sun:#e9925a;--color-primary:var(--primary);--color-text:var(--text-color);--color-primary-light:color-mix(in srgb, var(--primary) 12%, transparent)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;line-height:1.5;transition:background-color .8s,color .8s;overflow-x:hidden}.card{background:var(--card-bg);box-shadow:0 10px 28px var(--shadow-color), 0 2px 6px #0000000a;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(16px);border-radius:20px;padding:24px;transition:transform .2s,opacity .3s}button{font-family:var(--font-ui);cursor:pointer;background:0 0;border:none;transition:transform .15s,opacity .15s}button:active{transform:scale(.96)}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}ul{list-style:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px)}body{padding-top:var(--sat);padding-right:var(--sar);padding-bottom:var(--sab);padding-left:var(--sal);-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true],.selectable{-webkit-user-select:text;user-select:text}::placeholder{color:var(--text-muted,#6b5e52);-webkit-text-fill-color:#6b5e5273;opacity:.45}html[data-theme=midnight]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=midnight] input:not([type=checkbox]):not([type=radio]):not([type=range]),html[data-theme=midnight] textarea,html[data-theme=midnight] select{background-color:color-mix(in srgb, var(--card-bg) 88%, #000);color:var(--text-color)}html[data-theme=midnight] ::placeholder{color:var(--text-muted);opacity:.85}:-webkit-any(html[data-theme=midnight] input:-webkit-autofill,html[data-theme=midnight] textarea:-webkit-autofill,html[data-theme=midnight] select:-webkit-autofill){-webkit-text-fill-color:var(--text-color);caret-color:var(--text-color);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0e2438}:is(html[data-theme=midnight] input:autofill,html[data-theme=midnight] textarea:autofill,html[data-theme=midnight] select:autofill){-webkit-text-fill-color:var(--text-color);caret-color:var(--text-color);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0e2438}html[data-theme=midnight] .form-group input,html[data-theme=midnight] .admin-label input,html[data-theme=midnight] .admin-label select,html[data-theme=midnight] .admin-search,html[data-theme=midnight] .custom-input-box input,html[data-theme=midnight] .picker-search,html[data-theme=midnight] .journal-textarea,html[data-theme=midnight] .add-event-form input[type=text],html[data-theme=midnight] .add-event-form input[type=date],html[data-theme=midnight] .add-event-form input[type=time]{background:color-mix(in srgb, var(--card-bg) 88%, #000);color:var(--text-color);border-color:var(--border-color)}html[data-theme=midnight] .form-group input:focus,html[data-theme=midnight] .admin-label input:focus,html[data-theme=midnight] .admin-label select:focus,html[data-theme=midnight] .admin-search:focus,html[data-theme=midnight] .custom-input-box input:focus,html[data-theme=midnight] .journal-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 22%, transparent)}html[data-theme=midnight] .picker-search input:not([type=checkbox]):not([type=radio]):not([type=range]){color:var(--text-color);background:0 0}html[data-theme=midnight] .login-submit-button{color:var(--on-primary)}html[data-theme=midnight] .login-submit-button:hover{background:color-mix(in srgb, var(--primary) 82%, #000)}html[data-theme=midnight] .error-banner{color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, transparent);border-color:color-mix(in srgb, var(--danger) 28%, transparent)}html[data-theme=midnight] .demo-login-button{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--primary)}html[data-theme=midnight] .demo-login-button:hover{background:color-mix(in srgb, var(--primary) 18%, transparent)}html[data-theme=midnight] .demo-divider:before,html[data-theme=midnight] .demo-divider:after{border-bottom-color:var(--border-color)}html[data-theme=midnight] .login-logo{background:var(--color-primary-light)}html[data-theme=midnight] .onboarding-icon{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary)}html[data-theme=midnight] .onboarding-error{color:var(--danger)}html[data-theme=midnight] .onboarding-continue{color:var(--on-primary)}html[data-theme=midnight] .topic-card,html[data-theme=midnight] .reason-option,html[data-theme=midnight] .streak-card,html[data-theme=midnight] .subject-tab,html[data-theme=midnight] .topic-pick-row,html[data-theme=midnight] .modal-option-card,html[data-theme=midnight] .other-syllabus-picker,html[data-theme=midnight] .subject-accordion-btn,html[data-theme=midnight] .accordion-topic-list,html[data-theme=midnight] .topic-chip,html[data-theme=midnight] .recommendation-card{background:color-mix(in srgb, var(--text-color) 7%, transparent);border-color:var(--border-color);color:var(--text-color)}html[data-theme=midnight] .topic-card:hover,html[data-theme=midnight] .topic-pick-row:hover,html[data-theme=midnight] .modal-option-card:hover,html[data-theme=midnight] .recommendation-card:hover{background:color-mix(in srgb, var(--text-color) 12%, transparent)}html[data-theme=midnight] .picker-search{background:color-mix(in srgb, var(--card-bg) 88%, #000);border-color:var(--border-color)}html[data-theme=midnight] .cancel-btn{border-color:var(--border-color);color:var(--text-color)}html[data-theme=midnight] .modal-footer{border-top-color:var(--border-color)}html[data-theme=midnight] .subject-accordion{border-color:var(--border-color)}html[data-theme=midnight] .practice-icon-badge,html[data-theme=midnight] .active-topic-badge,html[data-theme=midnight] .award-icon-box,html[data-theme=midnight] .badge-success{background:color-mix(in srgb, var(--primary) 14%, transparent);border-color:color-mix(in srgb, var(--primary) 28%, transparent);color:var(--primary)}html[data-theme=midnight] .subject-pill,html[data-theme=midnight] .practice-container .topic-card,html[data-theme=midnight] .option-button,html[data-theme=midnight] .score-stat-box,html[data-theme=midnight] .breakdown-item{background:color-mix(in srgb, var(--text-color) 7%, transparent);border-color:var(--border-color);color:var(--text-color)}html[data-theme=midnight] .subject-pill:hover,html[data-theme=midnight] .practice-container .topic-card:hover,html[data-theme=midnight] .option-button:hover:not(.disabled){background:color-mix(in srgb, var(--text-color) 12%, transparent);border-color:color-mix(in srgb, var(--primary) 40%, transparent)}html[data-theme=midnight] .subject-pill.active,html[data-theme=midnight] .start-quiz-btn,html[data-theme=midnight] .btn-primary{color:var(--on-primary);box-shadow:0 4px 14px color-mix(in srgb, var(--primary) 28%, transparent)}html[data-theme=midnight] .practice-container .topic-card.selected{background:color-mix(in srgb, var(--primary) 12%, transparent);border-color:var(--primary)}html[data-theme=midnight] .radio-check{border-color:var(--border-color);color:var(--on-primary)}html[data-theme=midnight] .option-badge,html[data-theme=midnight] .step-num,html[data-theme=midnight] .breakdown-index,html[data-theme=midnight] .progress-bar-track{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--text-color)}html[data-theme=midnight] .option-button.correct-selected,html[data-theme=midnight] .option-button.correct-highlight,html[data-theme=midnight] .solution-container.success{background:color-mix(in srgb, var(--primary) 14%, transparent);border-color:color-mix(in srgb, var(--primary) 40%, transparent);color:var(--text-color)}html[data-theme=midnight] .option-button.correct-selected .option-badge{background:var(--primary);color:var(--on-primary)}html[data-theme=midnight] .option-button.wrong-selected,html[data-theme=midnight] .solution-container.warning{background:color-mix(in srgb, var(--danger) 14%, transparent);border-color:color-mix(in srgb, var(--danger) 40%, transparent);color:var(--text-color)}html[data-theme=midnight] .option-button.wrong-selected .option-badge{background:var(--danger);color:var(--on-primary)}html[data-theme=midnight] .option-icon.icon-wrong,html[data-theme=midnight] .text-danger,html[data-theme=midnight] .badge-danger{color:var(--danger)}html[data-theme=midnight] .badge-danger{background:color-mix(in srgb, var(--danger) 14%, transparent)}html[data-theme=midnight] .explanation-title{color:var(--warning)}html[data-theme=midnight] .explanation-body,html[data-theme=midnight] .quiz-navigation-footer{border-top-color:var(--border-color)}html[data-theme=midnight] .btn-secondary{background:color-mix(in srgb, var(--text-color) 6%, transparent);border-color:var(--border-color);color:var(--text-color)}html[data-theme=midnight] .btn-secondary:hover:not(:disabled){background:color-mix(in srgb, var(--text-color) 10%, transparent)}html[data-theme=midnight] .text-success,html[data-theme=midnight] .option-icon.icon-correct{color:var(--primary)}html[data-theme=midnight] .admin-icon-badge{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary)}html[data-theme=midnight] .admin-tab{background:color-mix(in srgb, var(--text-color) 6%, transparent)}html[data-theme=midnight] .admin-tab.active{background:color-mix(in srgb, var(--primary) 16%, transparent);border-color:color-mix(in srgb, var(--primary) 35%, transparent);color:var(--primary)}html[data-theme=midnight] .admin-primary-btn{color:var(--on-primary)}html[data-theme=midnight] .admin-secondary-btn{border-color:color-mix(in srgb, var(--primary) 40%, transparent);color:var(--primary)}html[data-theme=midnight] .admin-banner.error{color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, transparent)}html[data-theme=midnight] .admin-banner.success{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary-ink)}html[data-theme=midnight] .admin-list-item,html[data-theme=midnight] .admin-job-row{background:color-mix(in srgb, var(--text-color) 5%, transparent)}html[data-theme=midnight] .admin-list-item.selected{background:color-mix(in srgb, var(--primary) 14%, transparent)}html[data-theme=midnight] .admin-icon-btn.danger:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}html[data-theme=midnight] .admin-check-row:hover{background:color-mix(in srgb, var(--text-color) 6%, transparent)}html[data-theme=midnight] .subject-card-header:hover{background:color-mix(in srgb, var(--text-color) 8%, transparent)}html[data-theme=midnight] .topics-expansion{background:color-mix(in srgb, var(--text-color) 5%, transparent);border-top-color:var(--border-color)}html[data-theme=midnight] .topic-rating-row{background:color-mix(in srgb, var(--text-color) 7%, transparent);border-color:var(--border-color)}html[data-theme=midnight] .subject-progress-bg{background:color-mix(in srgb, var(--text-color) 10%, transparent)}html[data-theme=midnight] .journal-focus-slider{background:linear-gradient(to right, color-mix(in srgb, var(--primary-soft) 85%, #0a1628) 0%, color-mix(in srgb, var(--primary-soft) 85%, #0a1628) var(--focus-pct,44%), color-mix(in srgb, var(--text-color) 14%, transparent) var(--focus-pct,44%), color-mix(in srgb, var(--text-color) 14%, transparent) 100%)}html[data-theme=midnight] .journal-focus-slider::-webkit-slider-thumb{background:color-mix(in srgb, var(--primary) 70%, var(--primary-soft));border:2px solid var(--text-color);box-shadow:0 1px 5px var(--shadow-color)}html[data-theme=midnight] .journal-focus-slider::-moz-range-thumb{background:color-mix(in srgb, var(--primary) 70%, var(--primary-soft));border:2px solid var(--text-color);box-shadow:0 1px 5px var(--shadow-color)}html[data-theme=midnight] .calendar-header-card{border-color:var(--border-color)}html[data-theme=midnight] .fc .fc-button{background:color-mix(in srgb, var(--text-color) 8%, transparent)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}html[data-theme=midnight] .fc .fc-button:hover{background:color-mix(in srgb, var(--text-color) 14%, transparent)!important}html[data-theme=midnight] .fc .fc-col-header-cell,html[data-theme=midnight] .enrollment-syllabus{background:color-mix(in srgb, var(--text-color) 4%, transparent)}html[data-theme=midnight] .recharts-default-tooltip{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}html[data-theme=midnight] .recharts-tooltip-item,html[data-theme=midnight] .recharts-tooltip-label,html[data-theme=midnight] .recharts-legend-item-text{color:var(--text-color)!important}html[data-theme=midnight] .backfill-nudge-modal,html[data-theme=midnight] .backfill-nudge-modal.variant-c{color:#e8f4fa;background:#0d2235;border:1.5px solid #3ecfbf73;box-shadow:0 25px 50px -12px #000000b3,0 0 30px #3ecfbf33}html[data-theme=midnight] .journal-nudge-modal,html[data-theme=midnight] .journal-nudge-modal.variant-c{color:#e8f4fa;background:#0d2235;border:1.5px solid #8b5cf673;box-shadow:0 25px 50px -12px #000000b3,0 0 30px #8b5cf633}html[data-theme=midnight] .top-streaks-bar.expedition-bar{color:#e8f4fa;background:linear-gradient(135deg,#061422fa 0%,#0e2d42fa 100%);border:1px solid #3ecfbf80;box-shadow:0 4px 22px #3ecfbf38}html[data-theme=midnight] .active-students-pill.variant-c{color:#e8f4fa;background:linear-gradient(135deg,#0e2d42e6 0%,#143c55e6 100%);border:1px solid #3ecfbf73}.backfill-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20000;background-color:#000000a6;justify-content:center;align-items:center;padding:16px;animation:.25s cubic-bezier(.16,1,.3,1) backdropFadeIn;display:flex;position:fixed;inset:0;overflow:hidden}.backfill-modal{background:var(--card-bg,#fff);width:100%;max-width:660px;height:min(92vh,820px);max-height:min(92vh,820px);box-shadow:0 25px 60px -15px #0000004d, 0 0 0 1px var(--border-color,#ffffff1a);border-radius:24px;flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex;overflow:hidden}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.backfill-modal-header{border-bottom:1px solid var(--border-color,#00000014);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.header-title-box{align-items:center;gap:12px;display:flex}.header-icon{color:var(--primary,#1f6b54);background:color-mix(in srgb, var(--primary,#1f6b54) 12%, transparent);border-radius:12px;width:38px;height:38px;padding:8px}.backfill-modal-header h3{color:var(--text-color,#1a1a1a);margin:0;font-size:1.25rem;font-weight:700}.header-subtitle{color:var(--text-muted,#71717a);margin:2px 0 0;font-size:.82rem}.backfill-close-btn{color:var(--text-muted,#71717a);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.backfill-close-btn:hover{background:color-mix(in srgb, var(--text-color,#000) 8%, transparent);color:var(--text-color,#1a1a1a)}.stage-day-picker{background:color-mix(in srgb, var(--text-color,#000) 2%, var(--card-bg));border:1px solid var(--border-color,#00000014);border-radius:16px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.stage-section-label{color:var(--text-muted,#71717a);text-transform:uppercase;letter-spacing:.5px;font-size:.72rem;font-weight:700}.stage-day-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stage-day-btn{border:1.5px solid var(--border-color,#0000001f);background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:10px 14px;transition:all .2s;display:flex}.stage-day-btn:hover{border-color:var(--primary,#1f6b54);background:color-mix(in srgb, var(--primary,#1f6b54) 4%, var(--card-bg))}.stage-day-btn.active{border-color:var(--primary,#1f6b54);background:color-mix(in srgb, var(--primary,#1f6b54) 10%, var(--card-bg));box-shadow:0 2px 8px color-mix(in srgb, var(--primary,#1f6b54) 20%, transparent)}.stage-day-btn-title{color:var(--text-color,#1a1a1a);font-size:.95rem;font-weight:700}.stage-day-btn.active .stage-day-btn-title{color:var(--primary,#1f6b54)}.stage-day-btn-date{color:var(--text-muted,#71717a);font-size:.75rem;font-weight:500}.stage-day-btn.active .stage-day-btn-date{color:var(--primary,#1f6b54);opacity:.85}.stage-time-header{justify-content:space-between;align-items:baseline;margin-top:4px;display:flex}.summary-day-toggle{background:color-mix(in srgb, var(--text-color,#000) 5%, transparent);border-radius:10px;gap:4px;padding:3px;display:flex}.summary-day-btn{color:var(--text-muted,#71717a);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s}.summary-day-btn.active{background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);box-shadow:0 1px 4px #0000001a}.wizard-progress-bar{background:color-mix(in srgb, var(--text-color,#000) 1.5%, var(--card-bg));border-bottom:1px solid var(--border-color,#0000000f);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.wizard-step-btn{cursor:pointer;color:var(--text-muted,#71717a);background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;transition:all .2s;display:flex}.wizard-step-btn:hover:not(:disabled){background:color-mix(in srgb, var(--primary,#1f6b54) 8%, transparent);color:var(--text-color,#1a1a1a)}.wizard-step-btn:disabled{opacity:.45;cursor:not-allowed}.step-num{background:color-mix(in srgb, var(--text-color,#000) 10%, transparent);width:22px;height:22px;color:var(--text-muted,#71717a);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;transition:all .2s;display:flex}.step-text{font-size:.82rem;font-weight:600}.wizard-step-btn.active .step-num{background:var(--primary,#1f6b54);color:#fff}.wizard-step-btn.active .step-text{color:var(--primary,#1f6b54);font-weight:700}.wizard-step-btn.completed .step-num{background:color-mix(in srgb, var(--primary,#1f6b54) 20%, transparent);color:var(--primary,#1f6b54)}.wizard-step-line{background:var(--border-color,#0000001a);flex:1;height:2px;margin:0 4px}.backfill-modal-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:16px;min-height:0;padding:20px 24px;display:flex;overflow-y:auto}.step-container{flex-direction:column;gap:16px;animation:.25s stepFadeIn;display:flex}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.step-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.step-header h4{color:var(--text-color,#1a1a1a);margin:0;font-size:1.05rem;font-weight:700}.step-desc{color:var(--text-muted,#71717a);margin:4px 0 0;font-size:.8rem}.step-selected-time-chip{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent);color:var(--primary,#1f6b54);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.timeline-edit-banner{background:color-mix(in srgb, var(--danger,#dc2626) 8%, var(--card-bg));border:1px solid color-mix(in srgb, var(--danger,#dc2626) 28%, transparent);border-radius:12px;justify-content:space-between;align-items:center;margin-top:4px;padding:6px 12px;animation:.2s ease-out bannerSlideDown;display:flex}@keyframes bannerSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.edit-banner-left{align-items:center;gap:8px;display:flex}.edit-badge{background:var(--danger,#dc2626);color:#fff;letter-spacing:.6px;white-space:nowrap;border-radius:6px;padding:2.5px 8px;font-size:.68rem;font-weight:800}.cancel-edit-btn{background:color-mix(in srgb, var(--danger,#dc2626) 6%, var(--card-bg));border:1px solid color-mix(in srgb, var(--danger,#dc2626) 32%, transparent);color:var(--danger,#dc2626);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:700;transition:all .15s;display:inline-flex}.cancel-edit-btn:hover{background:color-mix(in srgb, var(--danger,#dc2626) 16%, var(--card-bg));border-color:var(--danger,#dc2626);color:var(--danger,#dc2626)}.editing-session-topic-bar{background:color-mix(in srgb, var(--text-color,#000) 3%, var(--card-bg));border:1px solid var(--border-color,#0000001a);border-radius:10px;align-items:center;gap:8px;padding:7px 12px;display:flex;overflow:hidden}.editing-topic-label{color:var(--text-muted,#71717a);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;font-size:.72rem;font-weight:700}.editing-topic-val{color:var(--text-color,#1a1a1a);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:700;overflow:hidden}.editing-topic-badge{background:color-mix(in srgb, var(--primary,#1f6b54) 12%, transparent);color:var(--primary,#1f6b54);border-radius:6px;flex-shrink:0;margin-left:auto;padding:1px 7px;font-size:.72rem;font-weight:600}.timeline-tip-bar{color:var(--text-muted,#71717a);background:color-mix(in srgb, var(--text-color,#000) 3%, transparent);border-radius:8px;align-items:center;margin-top:4px;padding:6px 12px;font-size:.76rem;display:flex}.timeline-container{background:color-mix(in srgb, var(--text-color,#000) 2.5%, var(--card-bg));border:1px solid var(--border-color,#0000001a);border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex}.timeline-ruler{height:18px;margin:0 8px;position:relative}.timeline-tick{flex-direction:column;align-items:center;display:flex;position:absolute;top:0;transform:translate(-50%)}.tick-label{color:var(--text-muted,#71717a);-webkit-user-select:none;user-select:none;font-size:.65rem;font-weight:500}.timeline-track{background:color-mix(in srgb, var(--text-color,#000) 8%, var(--card-bg));cursor:pointer;touch-action:none;border-radius:12px;height:48px;margin:22px 8px 24px;position:relative;overflow:visible;box-shadow:inset 0 2px 4px #00000014}.timeline-existing-block{color:#fff;text-overflow:ellipsis;white-space:nowrap;opacity:.88;pointer-events:auto;z-index:1;border-radius:8px;align-items:center;padding:0 6px;font-size:.72rem;font-weight:600;display:flex;position:absolute;top:4px;bottom:4px;overflow:hidden;box-shadow:0 2px 6px #00000026}.timeline-existing-block.clickable-block{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .15s,filter .15s,box-shadow .15s}.timeline-existing-block.clickable-block:hover{filter:brightness(1.12);z-index:4;transform:translateY(-2px);box-shadow:0 4px 12px #00000047}.block-edit-hint-icon{opacity:.75;flex-shrink:0;margin-left:4px;transition:opacity .15s}.timeline-existing-block.clickable-block:hover .block-edit-hint-icon{opacity:1}.existing-block-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-active-selection{background:color-mix(in srgb, var(--primary,#1f6b54) 30%, transparent);border-top:2px solid var(--primary,#1f6b54);border-bottom:2px solid var(--primary,#1f6b54);z-index:2;pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:center;align-items:center;transition:background .2s,border-color .2s;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}.timeline-active-selection:active,.timeline-active-selection.is-moving{cursor:grabbing;background:color-mix(in srgb, var(--primary,#1f6b54) 45%, transparent);box-shadow:0 0 0 2px var(--primary,#1f6b54), 0 4px 12px #0003;z-index:3}.timeline-active-selection.has-conflict{background:color-mix(in srgb, var(--danger,#dc2626) 35%, transparent);border-top:2px solid var(--danger,#dc2626);border-bottom:2px solid var(--danger,#dc2626)}.active-selection-drag-hint{pointer-events:none;color:var(--primary,#1f6b54);white-space:nowrap;text-overflow:ellipsis;justify-content:center;align-items:center;gap:4px;padding:0 6px;font-size:.72rem;font-weight:700;display:flex;overflow:hidden}.selection-grip-dots{letter-spacing:-1px;opacity:.75;font-size:.85rem}.selection-label-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-handle{cursor:ew-resize;z-index:5;touch-action:none;flex-direction:column;justify-content:center;align-items:center;width:22px;display:flex;position:absolute;top:-6px;bottom:-6px;transform:translate(-50%)}.handle-knob{border:2px solid var(--primary,#1f6b54);background:#fff;border-radius:8px;width:16px;height:38px;transition:transform .1s;box-shadow:0 4px 10px #00000040}.timeline-handle:hover .handle-knob,.timeline-handle:active .handle-knob{background:var(--primary,#1f6b54);border-color:#fff;transform:scale(1.15)}.handle-tag{color:var(--text-color,#1a1a1a);background:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001f);white-space:nowrap;pointer-events:none;z-index:6;border-radius:6px;padding:1px 6px;font-size:.68rem;font-weight:700;position:absolute;box-shadow:0 2px 6px #0000001a}.handle-tag.start-tag{top:auto;bottom:calc(100% + 4px)}.handle-tag.end-tag{top:calc(100% + 4px);bottom:auto}.time-display-row{justify-content:space-between;align-items:stretch;gap:12px;margin-top:6px;display:flex}.time-display-box{background:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001a);text-align:center;border-radius:14px;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:8px 12px;transition:all .2s;display:flex}.editable-time-box{cursor:pointer;border:1.5px solid color-mix(in srgb, var(--primary,#1f6b54) 28%, var(--border-color,#0000001f));background:color-mix(in srgb, var(--primary,#1f6b54) 2%, var(--card-bg));-webkit-user-select:none;user-select:none;position:relative}.editable-time-box:hover{border-color:var(--primary,#1f6b54);background:color-mix(in srgb, var(--primary,#1f6b54) 6%, var(--card-bg));box-shadow:0 4px 14px color-mix(in srgb, var(--primary,#1f6b54) 18%, transparent)}.editable-time-box:focus-within{border-color:var(--primary,#1f6b54);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary,#1f6b54) 25%, transparent);background:color-mix(in srgb, var(--primary,#1f6b54) 8%, var(--card-bg))}.time-box-title-row{justify-content:center;align-items:center;gap:5px;width:100%;display:flex}.time-box-edit-icon{color:var(--primary,#1f6b54);opacity:.85}.time-display-label{color:var(--text-muted,#71717a);text-transform:uppercase;letter-spacing:.5px;font-size:.72rem;font-weight:700}.time-input-wrap{justify-content:center;width:100%;margin:3px 0 2px;display:flex}.time-native-input{border:1.5px solid color-mix(in srgb, var(--primary,#1f6b54) 30%, transparent);background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);font-variant-numeric:tabular-nums;text-align:center;cursor:pointer;border-radius:8px;outline:none;width:100%;max-width:125px;padding:4px 6px;font-family:inherit;font-size:1.02rem;font-weight:800;transition:all .15s;box-shadow:0 1px 3px #0000000d}.time-native-input:hover{border-color:var(--primary,#1f6b54)}.time-native-input:focus{border-color:var(--primary,#1f6b54);background:color-mix(in srgb, var(--primary,#1f6b54) 10%, var(--card-bg))}.time-display-subtext{color:var(--primary,#1f6b54);opacity:.9;letter-spacing:.2px;font-size:.65rem;font-weight:600}.duration-pill-center{background:color-mix(in srgb, var(--primary,#1f6b54) 14%, var(--card-bg));border:1px solid color-mix(in srgb, var(--primary,#1f6b54) 25%, transparent);text-align:center;border-radius:14px;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:8px 12px;display:flex}.duration-pill-label{color:var(--primary,#1f6b54);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:.65rem;font-weight:700}.duration-pill-val{color:var(--primary,#1f6b54);font-size:1.05rem;font-weight:800}.duration-pill-sub{color:var(--primary,#1f6b54);opacity:.75;margin-top:1px;font-size:.62rem;font-weight:600}.conflict-alert{background:color-mix(in srgb, var(--danger,#dc2626) 12%, var(--card-bg));border:1px solid color-mix(in srgb, var(--danger,#dc2626) 30%, transparent);color:var(--danger,#dc2626);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:.82rem;line-height:1.35;display:flex}.view-timeline-link{border:1px dashed var(--border-color,#00000026);color:var(--primary,#1f6b54);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.view-timeline-link:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 8%, transparent);border-style:solid}.topic-picker-section{flex-direction:column;gap:10px;display:flex}.picker-search-bar{background:color-mix(in srgb, var(--text-color,#000) 4%, transparent);border:1px solid var(--border-color,#0000001a);border-radius:12px;align-items:center;gap:8px;padding:8px 12px;display:flex}.picker-search-bar input{color:var(--text-color,#1a1a1a);background:0 0;border:none;outline:none;flex:1;font-size:.9rem}.search-clear-btn{color:var(--text-muted,#71717a);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:3px;transition:all .15s;display:flex}.search-clear-btn:hover{color:var(--text-color,#1a1a1a);background:color-mix(in srgb, var(--text-color,#000) 8%, transparent)}.picker-subjects-scroll{gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.subject-chip{border:1px solid var(--border-color,#0000001f);color:var(--text-muted,#71717a);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:5px 12px;font-size:.78rem;font-weight:600;transition:all .15s}.subject-chip.active{background:var(--primary,#1f6b54);color:#fff;border-color:var(--primary,#1f6b54)}.picker-results-list{border:1px solid var(--border-color,#00000014);background:var(--card-bg,#fff);border-radius:12px;flex-direction:column;gap:4px;padding:6px;display:flex}.picker-row{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;transition:background .15s;display:flex}.picker-row:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 8%, transparent)}.picker-row.active{background:color-mix(in srgb, var(--primary,#1f6b54) 16%, transparent);font-weight:700}.row-topic{color:var(--text-color,#1a1a1a);font-size:.85rem}.row-subject{color:var(--text-muted,#71717a);font-size:.75rem}.no-topics-found{color:var(--text-muted,#71717a);text-align:center;padding:14px 0;font-size:.82rem}.custom-topic-box{flex-direction:column;gap:4px;margin-top:4px;display:flex}.custom-topic-box label{color:var(--text-muted,#71717a);font-size:.78rem;font-weight:600}.custom-topic-box input{border:1px solid var(--border-color,#00000026);background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);border-radius:12px;outline:none;padding:10px 14px;font-size:.9rem}.custom-topic-box input:focus{border-color:var(--primary,#1f6b54)}.selected-summary-card{background:color-mix(in srgb, var(--text-color,#000) 3%, var(--card-bg));border:1px solid var(--border-color,#0000001a);border-radius:12px;flex-direction:column;gap:6px;width:100%;padding:10px 14px;display:flex}.summary-card-row{align-items:center;gap:8px;font-size:.82rem;display:flex}.summary-label{color:var(--text-muted,#71717a);min-width:55px}.summary-val{color:var(--text-color,#1a1a1a)}.summary-val.font-bold{font-weight:700}.summary-badge{background:color-mix(in srgb, var(--primary,#1f6b54) 12%, transparent);color:var(--primary,#1f6b54);border-radius:4px;padding:1px 6px;font-weight:600}.study-reason-box{flex-direction:column;gap:10px;display:flex}.reason-options-list{flex-direction:column;gap:8px;display:flex}.reason-option-card{border:1.5px solid var(--border-color,#0000001f);background:var(--card-bg,#fff);cursor:pointer;color:var(--text-color,#1a1a1a);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:.88rem;transition:all .15s;display:flex}.reason-option-card:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 6%, transparent);border-color:var(--primary,#1f6b54)}.reason-option-card.selected{background:color-mix(in srgb, var(--primary,#1f6b54) 12%, var(--card-bg));border-color:var(--primary,#1f6b54);font-weight:600}.reason-option-card input[type=radio]{accent-color:var(--primary,#1f6b54);width:16px;height:16px}.custom-reason-input-box{flex-direction:column;gap:4px;margin-top:4px;display:flex}.custom-reason-input-box label{color:var(--text-muted,#71717a);font-size:.78rem;font-weight:600}.other-reason-input{border:1px solid var(--border-color,#00000026);background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);border-radius:12px;outline:none;padding:10px 14px;font-size:.9rem}.summary-header{justify-content:space-between;align-items:center;display:flex}.day-utilisation-card{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, var(--card-bg));border:1px solid color-mix(in srgb, var(--primary,#1f6b54) 25%, transparent);border-radius:16px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.utilisation-metric{flex-direction:column;display:flex}.metric-title{color:var(--primary,#1f6b54);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.metric-number{color:var(--primary,#1f6b54);font-size:1.6rem;font-weight:800}.sessions-count{color:var(--text-muted,#71717a);background:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001a);border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:600}.final-scale-container{border:1px solid var(--border-color,#0000001a);border-radius:18px;flex-direction:column;gap:10px;padding:16px;display:flex}.scale-title-row{justify-content:space-between;align-items:center;display:flex}.scale-title{color:var(--text-color,#1a1a1a);font-size:.85rem;font-weight:700}.scale-subtitle{color:var(--text-muted,#71717a);font-size:.72rem}.final-scale-ruler{height:18px;margin:0 4px;position:relative}.final-ruler-tick{flex-direction:column;align-items:center;display:flex;position:absolute;top:0;transform:translate(-50%)}.ruler-tick-label{color:var(--text-muted,#71717a);font-size:.65rem;font-weight:500}.final-scale-track{background:color-mix(in srgb, var(--text-color,#000) 7%, var(--card-bg));border-radius:10px;height:44px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #00000014}.empty-scale-placeholder{height:100%;color:var(--text-muted,#71717a);justify-content:center;align-items:center;font-size:.8rem;font-style:italic;display:flex}.scale-session-block{color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:0 6px;font-size:.7rem;font-weight:700;transition:transform .15s,filter .15s;display:flex;position:absolute;top:4px;bottom:4px;overflow:hidden;box-shadow:0 2px 6px #0003}.scale-session-block.clickable-scale-block{cursor:pointer;-webkit-user-select:none;user-select:none}.scale-session-block:hover,.scale-session-block.clickable-scale-block:hover{filter:brightness(1.15);z-index:10;transform:scaleY(1.15)translateY(-1px);box-shadow:0 4px 12px #0000004d}.scale-block-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scale-edit-icon{opacity:.7;flex-shrink:0;transition:opacity .15s}.scale-session-block.clickable-scale-block:hover .scale-edit-icon{opacity:1}.scale-legend-grid{border-top:1px solid var(--border-color,#00000014);flex-wrap:wrap;gap:8px 14px;margin-top:6px;padding-top:8px;display:flex}.scale-legend-item{align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.legend-dot{border-radius:50%;width:8px;height:8px}.legend-topic-name{color:var(--text-color,#1a1a1a);font-weight:600}.legend-topic-mins{color:var(--text-muted,#71717a)}.final-sessions-list-box{flex-direction:column;gap:10px;display:flex}.list-title-row{justify-content:space-between;align-items:center;display:flex}.list-title-row h5{color:var(--text-color,#1a1a1a);margin:0;font-size:.9rem;font-weight:700}.add-another-top-btn{border:1px solid var(--border-color,#00000026);color:var(--primary,#1f6b54);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.add-another-top-btn:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent)}.sessions-cards-list{flex-direction:column;gap:8px;display:flex}.session-card{background:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001a);border-radius:12px;align-items:center;transition:all .2s;display:flex;overflow:hidden}.session-card-strip{flex-shrink:0;align-self:stretch;width:6px}.session-card-content{flex-direction:column;flex:1;gap:3px;min-width:0;padding:10px 14px;display:flex}.session-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.session-topic-name{color:var(--text-color,#1a1a1a);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:700;overflow:hidden}.session-duration-tag{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent);color:var(--primary,#1f6b54);border-radius:6px;flex-shrink:0;padding:2px 8px;font-size:.72rem;font-weight:700}.session-card-meta{color:var(--text-muted,#71717a);align-items:center;gap:6px;font-size:.75rem;display:flex}.meta-subject-tag{background:color-mix(in srgb, var(--text-color,#000) 6%, transparent);border-radius:4px;padding:1px 6px;font-size:.7rem}.session-reason-note{color:var(--text-muted,#71717a);margin:0;font-size:.72rem;font-style:italic}.session-card-actions{align-items:center;gap:4px;padding-right:10px;display:flex}.action-icon-btn{cursor:pointer;color:var(--text-muted,#71717a);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.action-icon-btn.edit-btn:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 12%, transparent);color:var(--primary,#1f6b54)}.action-icon-btn.delete-btn:hover{background:color-mix(in srgb, var(--danger,#dc2626) 12%, transparent);color:var(--danger,#dc2626)}.backfill-success-chip{color:#16a34a;background:#16a34a1f;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;display:flex}.backfill-success-chip.mini{padding:4px 8px;font-size:.75rem}.backfill-error-chip{background:color-mix(in srgb, var(--danger,#dc2626) 12%, transparent);color:var(--danger,#dc2626);border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;display:flex}.backfill-modal-footer{border-top:1px solid var(--border-color,#00000014);background:color-mix(in srgb, var(--text-color,#000) 2%, var(--card-bg));flex-shrink:0;padding:14px 24px;display:flex}.btn-label-mobile{display:none}.wizard-footer-buttons{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.footer-cancel-btn,.footer-back-btn{border:1px solid var(--border-color,#00000026);background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);cursor:pointer;border-radius:12px;align-items:center;gap:6px;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex}.footer-cancel-btn:hover,.footer-back-btn:hover{background:color-mix(in srgb, var(--text-color,#000) 6%, transparent)}.wizard-next-btn,.wizard-save-btn{background:var(--primary,#1f6b54);color:#fff;cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb, var(--primary,#1f6b54) 35%, transparent);border:none;border-radius:12px;align-items:center;gap:8px;margin-left:auto;padding:10px 22px;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-flex}.wizard-next-btn:hover:not(:disabled),.wizard-save-btn:hover:not(:disabled){box-shadow:0 6px 18px color-mix(in srgb, var(--primary,#1f6b54) 45%, transparent);transform:translateY(-1px)}.wizard-next-btn:disabled,.wizard-save-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.footer-add-btn{border:1px solid var(--primary,#1f6b54);background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent);color:var(--primary,#1f6b54);cursor:pointer;border-radius:12px;align-items:center;gap:6px;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex}.footer-add-btn:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 18%, transparent)}.footer-done-btn{background:var(--primary,#1f6b54);color:#fff;cursor:pointer;box-shadow:0 4px 12px color-mix(in srgb, var(--primary,#1f6b54) 30%, transparent);border:none;border-radius:12px;margin-left:auto;padding:10px 24px;font-size:.88rem;font-weight:700;transition:all .15s}.footer-done-btn:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 85%, #000)}@media (width<=640px){.backfill-modal-backdrop{align-items:flex-end;padding:0;overflow:hidden}.backfill-modal{border-radius:22px 22px 0 0;width:100%;max-width:100%;height:94dvh;max-height:94dvh;margin:0;overflow:hidden}.backfill-modal-header{flex-shrink:0;padding:12px 16px}.header-icon{width:32px;height:32px;padding:6px}.backfill-modal-header h3{font-size:1.05rem}.wizard-progress-bar{flex-shrink:0;padding:8px 14px}.wizard-step-btn{padding:2px 4px}.wizard-step-btn .step-text{display:none}.step-num{width:24px;height:24px;font-size:.72rem}.backfill-modal-body{-webkit-overflow-scrolling:touch;flex:auto;gap:14px;min-height:0;padding:14px 16px;overflow-y:auto}.dense-tick{display:none!important}.timeline-container{gap:8px;padding:12px}.timeline-track{height:42px;margin:22px 4px 24px}.time-display-row{gap:6px;margin-top:4px}.time-display-box{border-radius:10px;padding:6px 4px}.time-display-label{font-size:.62rem}.time-box-edit-icon{width:10px;height:10px}.time-native-input{border-radius:6px;padding:3px 2px;font-size:.84rem}.time-display-subtext{font-size:.58rem}.duration-pill-center{border-radius:10px;padding:6px 4px}.duration-pill-label{font-size:.62rem}.duration-pill-val{white-space:nowrap;font-size:.86rem}.duration-pill-sub{font-size:.58rem}.picker-row{gap:8px;padding:8px}.row-topic{font-size:.8rem}.row-subject{flex-shrink:0;font-size:.7rem}.reason-option-card{gap:10px;padding:10px 12px;font-size:.82rem}.day-utilisation-card{padding:10px 14px}.metric-number{font-size:1.35rem}.sessions-count{padding:3px 10px;font-size:.75rem}.final-scale-container{padding:12px}.scale-session-block{padding:0 3px}.session-card-content{padding:8px 10px}.session-topic-name{font-size:.82rem}.session-duration-tag{padding:1px 6px;font-size:.68rem}.backfill-modal-footer{padding:12px 16px;padding-bottom:max(14px, env(safe-area-inset-bottom));background:var(--card-bg,#fff);border-top:1px solid var(--border-color,#00000014);z-index:10;flex-shrink:0;box-shadow:0 -4px 16px #0000000f}.wizard-footer-buttons{gap:8px}.footer-cancel-btn,.footer-back-btn,.footer-add-btn{border-radius:10px;padding:8px 14px;font-size:.82rem}.wizard-next-btn,.wizard-save-btn,.footer-done-btn{border-radius:10px;padding:8px 16px;font-size:.82rem}.btn-label-desktop{display:none!important}.btn-label-mobile{display:inline!important}}.layout-wrapper{flex-direction:column;max-width:1200px;min-height:100vh;margin:0 auto;padding:12px 16px;display:flex}.impersonation-banner{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--text-color);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;font-size:.9rem;display:flex}.impersonation-info{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.impersonation-ab-pills{background:color-mix(in srgb, var(--primary) 18%, transparent);border:1px solid color-mix(in srgb, var(--primary) 25%, transparent);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:.78rem;font-weight:500;display:inline-flex}.ab-flask-icon{opacity:.85}.ab-label{opacity:.85;font-size:.75rem;font-weight:700}.ab-tag{letter-spacing:.02em;border-radius:5px;padding:1px 6px;font-size:.7rem;font-weight:600}.ab-tag.treatment{color:#fff;background:#10b981}.ab-tag.control{color:var(--text-color);opacity:.75;background:#94a3b838}.impersonation-exit{background:var(--primary);color:var(--on-primary);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:600}.impersonation-exit:hover{opacity:.9}.app-header{z-index:9999;box-shadow:none;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;margin-bottom:16px;padding:6px 4px;display:flex;position:relative}.logo-container{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.brand-logo-img{object-fit:contain;width:auto;max-width:140px;height:38px;display:block}.logo-icon{color:var(--primary)}.logo-text{font-family:var(--font-brand,"Century Schoolbook", "New Century Schoolbook", "TeX Gyre Schola", "Century Schoolbook L", Georgia, serif);color:var(--text-color,#232326);letter-spacing:0;text-transform:lowercase;font-size:1.6rem;font-weight:400;line-height:1}.header-actions{align-items:center;gap:12px;display:flex}.desktop-menu-list{display:none}.desktop-nav-item{color:var(--text-muted);border-radius:16px;align-items:center;gap:8px;padding:8px 16px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex}.desktop-nav-item:hover{color:var(--text-color);background:color-mix(in srgb, var(--text-color) 4%, transparent)}.desktop-nav-item.active{color:var(--primary-ink);background:color-mix(in srgb, var(--primary-soft) 42%, transparent);font-weight:600}.user-menu-container{z-index:10000;position:relative}.user-icon-button{background:color-mix(in srgb, var(--card-bg) 80%, transparent);border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-color);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .2s,border-color .2s;display:flex}.user-icon-button:hover{background:var(--card-bg);border-color:color-mix(in srgb, var(--text-color) 18%, transparent)}.dropdown-user-info{text-align:left;padding:8px 12px}.dropdown-user-info .user-name{margin-bottom:2px;font-size:.95rem;font-weight:600}.dropdown-user-info .user-detail{color:var(--text-muted);font-size:.75rem}.dropdown-divider{background:var(--border-color);height:1px;margin:4px 0}.dropdown-menu{z-index:10001;flex-direction:column;gap:4px;width:220px;display:flex;position:absolute;top:calc(100% + 8px);right:0;padding:12px!important}.dropdown-item{color:var(--text-color);border-radius:12px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:.88rem;font-weight:500;text-decoration:none;transition:background .2s;display:flex}.dropdown-item:hover{background:color-mix(in srgb, var(--text-color) 5%, transparent)}.logout-button{color:var(--danger);cursor:pointer;background:0 0;border:none}.contact-dropdown-item{color:#15803d}.contact-dropdown-item:hover{color:#166534;background:#22c55e1a}[data-theme=midnight] .contact-dropdown-item{color:#4ade80}[data-theme=midnight] .contact-dropdown-item:hover{color:#86efac;background:#4ade8026}.main-content{flex-direction:column;flex:1;padding-bottom:28vh;display:flex}.mobile-bottom-nav{z-index:100;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:20px;left:20px;right:20px;border-radius:32px!important;padding:10px 8px!important}.nav-item{color:var(--text-muted);border-radius:16px;flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;padding:6px 8px;text-decoration:none;transition:color .2s,transform .2s;display:flex}.nav-item span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.72rem;font-weight:500;overflow:hidden}.nav-item.active{color:var(--primary-ink);transform:translateY(-2px)}@media (width>=768px){.layout-wrapper{padding:24px}.app-header{background:var(--card-bg);box-shadow:0 4px 16px var(--shadow-color);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:24px;margin-bottom:32px;padding:12px 20px}.logo-text{font-size:1.55rem}.desktop-menu-list{background:color-mix(in srgb, var(--text-color) 4%, transparent);border-radius:20px;align-items:center;gap:6px;padding:4px 8px;display:flex}.mobile-bottom-nav{display:none}.main-content{padding-bottom:24vh}}.home-container{flex-direction:column;gap:24px;width:100%;max-width:600px;margin:0 auto;display:flex}.completion-toast{background:color-mix(in srgb, var(--primary) 12%, transparent);border:1px solid color-mix(in srgb, var(--primary) 28%, transparent);color:var(--text-color);border-radius:16px;align-items:center;gap:12px;font-weight:500;display:flex;padding:14px 18px!important}.toast-icon{color:var(--primary)}.toast-close{cursor:pointer;opacity:.6;background:0 0;border:none;margin-left:auto}.timer-section{flex-direction:column;align-items:center;padding:24px 0;scroll-margin-top:12px;display:flex}.study-entry-options{justify-content:center;align-items:center;gap:24px;margin-bottom:8px;display:flex}.entry-option-col{flex-direction:column;align-items:center;display:flex}.study-choice-button{cursor:pointer;border:none;border-radius:40% 60% 70% 30%/40% 50% 60%;outline:none;justify-content:center;align-items:center;width:108px;height:108px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-radius .3s,background .3s;display:flex}.study-choice-button.timer-btn{background:var(--primary);color:var(--on-primary,#fff);box-shadow:0 10px 25px color-mix(in srgb, var(--primary) 32%, transparent)}.study-choice-button.manual-btn{background:color-mix(in srgb, var(--primary) 14%, var(--card-bg));color:var(--primary);border:2px solid color-mix(in srgb, var(--primary) 32%, transparent);box-shadow:0 10px 25px color-mix(in srgb, var(--primary) 18%, transparent)}.study-choice-button:hover{border-radius:50%;transform:scale(1.06)translateY(-2px)}.study-choice-button.timer-btn:hover{box-shadow:0 14px 30px color-mix(in srgb, var(--primary) 44%, transparent)}.study-choice-button.manual-btn:hover{background:color-mix(in srgb, var(--primary) 22%, var(--card-bg));border-color:var(--primary);box-shadow:0 14px 30px color-mix(in srgb, var(--primary) 28%, transparent)}.study-choice-button:active{transform:scale(.97)}.button-icon.manual{transition:transform .2s}.study-choice-button:hover .button-icon.manual{transform:rotate(-8deg)scale(1.05)}.entry-or-divider{justify-content:center;align-items:center;margin-top:-24px;display:flex}.entry-or-divider span{letter-spacing:1.5px;color:var(--text-muted);background:color-mix(in srgb, var(--text-color) 6%, transparent);border:1px solid var(--border-color);-webkit-user-select:none;user-select:none;border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:800}.entry-option-label{color:var(--text-color);letter-spacing:.2px;margin-top:12px;font-size:.95rem;font-weight:700}.amoeba-button{background:var(--primary);width:120px;height:120px;color:var(--on-primary);cursor:pointer;box-shadow:0 10px 25px color-mix(in srgb, var(--primary) 32%, transparent);border:none;border-radius:40% 60% 70% 30%/40% 50% 60%;justify-content:center;align-items:center;transition:background .5s,box-shadow .5s,border-radius .5s,transform .5s;display:flex}.amoeba-button:hover{border-radius:50%;transform:scale(1.05)}.amoeba-button.running{background:var(--danger);box-shadow:0 10px 25px color-mix(in srgb, var(--danger) 36%, transparent);animation:6s ease-in-out infinite alternate morph}.amoeba-button.paused{background:var(--warning);box-shadow:0 10px 25px color-mix(in srgb, var(--warning) 36%, transparent)}@keyframes morph{0%{border-radius:40% 60% 70% 30%/40% 50% 60%}34%{border-radius:70% 30% 50% 50%/30% 60% 40% 70%}67%{border-radius:100% 60% 60% 100%/100% 100% 60% 60%}to{border-radius:40% 60% 70% 30%/40% 50% 60%}}.button-icon.play{margin-left:6px}.timer-display{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--text-color);margin-top:16px;font-size:3.5rem;font-weight:300}.timer-subtitle{color:var(--text-muted);margin-top:4px;font-size:.95rem}.timer-controls{justify-content:center;align-items:center;gap:12px;margin-top:16px;display:flex}.timer-control-btn{cursor:pointer;border-radius:14px;align-items:center;gap:6px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.pause-btn{background:color-mix(in srgb, var(--warning) 16%, transparent);color:var(--warning);border:1px solid color-mix(in srgb, var(--warning) 32%, transparent)}.pause-btn:hover{background:color-mix(in srgb, var(--warning) 26%, transparent)}.resume-btn{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 28%, transparent)}.resume-btn:hover{background:color-mix(in srgb, var(--primary) 24%, transparent)}.stop-btn{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 28%, transparent)}.stop-btn:hover{background:color-mix(in srgb, var(--danger) 22%, transparent)}.today-studied{text-align:center;background:color-mix(in srgb, var(--primary-soft) 28%, var(--card-bg));border:1px solid color-mix(in srgb, var(--primary) 16%, transparent);border-radius:14px;width:min(100%,320px);margin-top:14px;padding:8px 12px 10px}.today-studied.is-live{border-color:color-mix(in srgb, var(--danger) 28%, transparent);background:color-mix(in srgb, var(--danger) 12%, var(--card-bg))}.today-studied-row{justify-content:center;align-items:baseline;gap:8px;display:flex}.today-studied-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:.62rem;font-weight:700}.today-studied-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text-color);font-size:1.05rem;font-weight:650;line-height:1.1}.today-studied-bar{background:#2c3e3514;border-radius:999px;gap:2px;width:100%;height:5px;margin-top:8px;display:flex;overflow:hidden}.today-studied-seg{min-width:3px;height:100%}.today-studied-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.tasks-section{padding:20px 24px!important}.section-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.topics-section-header{justify-content:space-between;align-items:center;gap:12px}.section-header-main{align-items:center;gap:10px;min-width:0;display:flex}.topics-today-total{font-variant-numeric:tabular-nums;color:var(--primary);opacity:.85;flex-shrink:0;font-size:.78rem;font-weight:700}.topics-today-bar{margin:-6px 0 14px}.section-icon{color:var(--primary)}.section-header h2{font-size:1.15rem;font-weight:600}.section-hint{opacity:.7;text-align:left;margin:-8px 0 14px;font-size:.85rem}.topics-list{flex-direction:column;gap:12px;display:flex}.topic-card{background:#fff9;border:1px solid #0000000d;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex;position:relative;overflow:hidden}.topic-color-strip{width:6px;position:absolute;top:-1px;bottom:-1px;left:-1px}.topic-card:hover{background:#ffffffe6;transform:translateY(-1px)}.small-play-btn{background:var(--primary);width:36px;height:36px;color:var(--on-primary);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,background .2s;display:flex}.small-play-btn svg{margin-left:2px}.small-play-btn:hover{background:color-mix(in srgb, var(--primary) 82%, #000);transform:scale(1.1)}.small-play-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.small-play-btn.active-play-btn{background:var(--danger);box-shadow:0 4px 12px color-mix(in srgb, var(--danger) 32%, transparent)}.small-play-btn.active-play-btn:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 82%, #000)}.small-play-btn.active-play-btn:disabled{opacity:1;cursor:default}.topic-card.studying{border-color:color-mix(in srgb, var(--danger) 35%, transparent);background:color-mix(in srgb, var(--danger) 8%, transparent)}.small-play-btn.choose-play-btn{background:var(--primary)}.small-play-btn.choose-play-btn:hover{background:color-mix(in srgb, var(--primary) 82%, #000)}.choose-topic-card{cursor:pointer}.topic-info{text-align:left;flex-direction:column;flex:1;gap:4px;display:flex}.topic-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.topic-name{font-size:.95rem;font-weight:600}.subject-tag{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary);border-radius:10px;padding:2px 8px;font-size:.72rem;font-weight:600}.today-time-badge{font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--text-color);opacity:.78;background:0 0;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;padding:0;font-size:.85rem;font-weight:650;display:inline-flex}.today-time-badge.mini{margin-left:0;font-size:.75rem}.reason-tags{flex-wrap:wrap;gap:6px;display:flex}.reason-tag{opacity:.65;font-size:.7rem}.add-topic-btn{border:1px dashed color-mix(in srgb, var(--primary) 45%, transparent);background:color-mix(in srgb, var(--primary) 6%, transparent);width:100%;color:var(--primary);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:12px 16px;font-size:.92rem;font-weight:600;transition:all .2s;display:flex}.add-topic-btn:hover{background:color-mix(in srgb, var(--primary) 12%, transparent);border-color:var(--primary)}.reason-picker{flex-direction:column;gap:10px;display:flex}.reason-options{flex-direction:column;gap:8px;display:flex}.reason-option{cursor:pointer;background:#ffffffb3;border:1px solid #0000001a;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:.88rem;font-weight:500;display:flex}.reason-option.selected{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.reason-option input[type=radio]{accent-color:var(--primary)}.streak-section{flex-direction:column;gap:16px;display:flex;padding:20px 24px!important}.streak-cards-container{flex-wrap:wrap;gap:16px;display:flex}.streak-card{background:#fff6;border:1px solid #0000000d;border-radius:12px;flex-direction:column;flex:1;gap:12px;min-width:200px;padding:14px;display:flex}.streak-card-title{text-align:left;opacity:.8;text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:.95rem;font-weight:700}.streak-header{justify-content:space-between;align-items:center;display:flex}.flame-badge{align-items:center;gap:8px;display:flex}.flame-icon.basic-flame{color:var(--warning)}.flame-icon.effort-flame{color:var(--danger)}.streak-count{color:var(--text-color);font-size:1.1rem;font-weight:700}.effort-tier .streak-count{color:var(--danger)}.basic-tier .streak-count{color:var(--warning)}.trophy-badge{color:var(--text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.trophy-icon{color:var(--warning)}.streak-progress-box{flex-direction:column;gap:8px;display:flex}.streak-stats-row{opacity:.8;justify-content:space-between;font-size:.82rem;font-weight:500;display:flex}.stat-item{align-items:center;gap:4px;display:flex}.progress-bar-bg{background:#00000014;border-radius:10px;width:100%;height:10px;overflow:hidden}.progress-bar-fill.basic-fill{background:var(--primary);border-radius:10px;height:100%;transition:width .4s}.progress-bar-fill.effort-fill{background:var(--danger);border-radius:10px;height:100%;transition:width .4s}.progress-hint{color:var(--text-muted);text-align:left;margin-top:2px;font-size:.78rem}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20000;overscroll-behavior:none;background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0;overflow:hidden}.modal-content{overscroll-behavior:contain;border-radius:24px;flex-direction:column;width:100%;max-width:480px;min-height:0;max-height:min(85vh,100dvh - 32px);display:flex;overflow:hidden;padding:24px!important}.modal-content.choice-modal{max-width:560px;height:min(680px,100dvh - 24px);max-height:calc(100dvh - 24px)}.modal-header{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.modal-header h3{font-size:1.2rem;font-weight:600}.close-btn{cursor:pointer;opacity:.6;background:0 0;border:none}.modal-body{overscroll-behavior:contain;text-align:left;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:14px;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.modal-instruction{opacity:.75;flex-shrink:0;font-size:.85rem}.choice-modal-body{gap:10px;overflow:hidden}.picker-back-link{color:var(--primary);flex-shrink:0;align-items:center;gap:6px;padding:0;font-size:.82rem;font-weight:600;display:inline-flex}.topic-picker{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.picker-search{background:#ffffffe6;border:1px solid #0000001f;border-radius:12px;flex-shrink:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.picker-search svg{opacity:.5;flex-shrink:0}.picker-search input{width:100%;color:inherit;background:0 0;border:none;outline:none;font-size:.9rem}.subject-tabs{scrollbar-width:thin;flex-shrink:0;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.subject-tab{white-space:nowrap;cursor:pointer;background:#fffc;border:1px solid #0000001a;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.subject-tab.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.subject-tab-count{opacity:.75;font-size:.72rem;font-weight:700}.topic-picker-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;flex-direction:column;flex:auto;gap:6px;min-height:180px;padding-right:4px;display:flex;overflow:hidden scroll}.topic-pick-row{text-align:left;cursor:pointer;background:#ffffffd9;border:1px solid #00000014;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:11px 14px;display:flex}.topic-pick-row:hover{border-color:color-mix(in srgb, var(--primary) 25%, transparent);background:#fff}.topic-pick-row.active{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.topic-pick-name{font-size:.9rem;font-weight:600}.picker-custom{flex-shrink:0;padding-top:4px}.reason-step{overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;min-height:0;display:flex;overflow-y:auto}.choice-selected-summary{background:color-mix(in srgb, var(--primary) 8%, transparent);border:1px solid color-mix(in srgb, var(--primary) 18%, transparent);border-radius:14px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.choice-selected-label{text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin-bottom:4px;font-size:.72rem;font-weight:700;display:block}.choice-selected-topic{margin:0 0 6px;font-size:1rem;font-weight:700}.change-topic-btn{color:var(--primary);flex-shrink:0;padding:4px 8px;font-size:.8rem;font-weight:600}.modal-topic-options{flex-direction:column;gap:10px;display:flex}.modal-option-card{cursor:pointer;background:#fff9;border:1px solid #0000001a;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.modal-option-card:hover{background:#fffffff2}.modal-option-card.selected{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.modal-option-card input[type=radio]{accent-color:var(--primary)}.option-details{flex-direction:column;gap:2px;display:flex}.option-name{font-size:.92rem;font-weight:600}.option-subject{opacity:.6;font-size:.75rem}.other-syllabus-picker{background:#ffffff80;flex-direction:column;gap:10px;margin-top:6px;display:flex;padding:14px!important}.picker-title{opacity:.8;font-size:.82rem;font-weight:600}.syllabus-tree{overscroll-behavior:contain;flex-direction:column;gap:8px;max-height:180px;display:flex;overflow-y:auto}.subject-accordion{border:1px solid #0000000f;border-radius:10px;overflow:hidden}.subject-accordion-btn{cursor:pointer;background:#fffc;border:none;justify-content:space-between;align-items:center;width:100%;padding:10px 14px;font-size:.85rem;font-weight:600;display:flex}.accordion-topic-list{background:#ffffff4d;flex-wrap:wrap;gap:6px;padding:10px 14px;display:flex}.topic-chip{cursor:pointer;background:#fff;border:1px solid #0000001a;border-radius:14px;padding:6px 12px;font-size:.78rem;transition:all .2s}.topic-chip.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.custom-input-box{flex-direction:column;gap:4px;display:flex}.custom-input-box label{opacity:.75;font-size:.78rem}.custom-input-box input{border:1px solid #0000001f;border-radius:10px;outline:none;padding:10px 12px;font-size:.88rem}.modal-footer{border-top:1px solid #00000014;flex-shrink:0;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:14px;display:flex}.checkin-footer{justify-content:flex-end}.modal-footer.checkin-choice{flex-flow:row;align-items:stretch;gap:10px;display:flex}.checkin-choice .checkin-yes-btn,.checkin-choice .checkin-no-btn{box-sizing:border-box;flex:1 1 0;justify-content:center;align-items:center;width:auto;min-width:0;min-height:48px;padding:10px 20px;font-size:1rem;font-weight:700;display:flex}.checkin-no-btn{color:var(--text-color);cursor:pointer;background:0 0;border:1px solid #0000001f;border-radius:12px}.checkin-modal{max-width:420px}.checkin-modal .modal-header h3{line-height:1.3}.checkin-ago-options{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.checkin-ago-btn{border:1px solid color-mix(in srgb, var(--primary) 22%, transparent);background:color-mix(in srgb, var(--primary) 8%, var(--card-bg));color:var(--text-color);cursor:pointer;border-radius:12px;padding:8px 12px;font-size:.88rem;font-weight:600}.checkin-ago-btn:hover{background:color-mix(in srgb, var(--primary) 16%, var(--card-bg))}.cancel-btn{cursor:pointer;background:0 0;border:1px solid #0000001f;border-radius:12px;align-items:center;gap:6px;padding:10px 16px;display:inline-flex}.start-focus-btn{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:6px;padding:10px 20px;font-weight:600;display:flex}.start-focus-btn:disabled{opacity:.5;cursor:not-allowed}.recommendations-section{flex-direction:column;gap:16px;display:flex;padding:22px 24px!important}.recommendation-header-title{align-items:center;gap:10px;display:flex}.glow-amber{color:var(--warning)}.recommendation-badge{text-transform:uppercase;letter-spacing:.6px;background:color-mix(in srgb, var(--warning) 14%, transparent);color:var(--warning);border-radius:20px;padding:4px 10px;font-size:.72rem;font-weight:700}.recommendations-grid{flex-direction:column;gap:12px;display:flex}.recommendation-card{text-align:left;background:#ffffffbf;border:1px solid #0000000f;border-radius:16px;align-items:center;gap:14px;padding:14px 18px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.recommendation-card:before{content:"";border-radius:4px 0 0 4px;width:4px;position:absolute;top:0;bottom:0;left:0}.card-target:before{background:var(--warning)}.card-subject:before{background:var(--primary)}.recommendation-card:hover{background:#fffffff2;transform:translateY(-2px);box-shadow:0 8px 20px #0000000f}.rec-icon-wrapper{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.rec-icon-wrapper.amber{background:color-mix(in srgb, var(--warning) 14%, transparent);color:var(--warning)}.rec-icon-wrapper.indigo{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary)}.rec-content{flex-direction:column;gap:3px;display:flex}.rec-tag{text-transform:uppercase;letter-spacing:.5px;opacity:.6;font-size:.7rem;font-weight:700}.rec-text{color:var(--text-color);margin:0;font-size:.96rem;font-weight:600}.monthly-trend-section{flex-direction:column;gap:16px;display:flex}.projected-scores-row{grid-template-columns:1fr;gap:12px;display:grid}.projected-scores-row.multi{grid-template-columns:1fr 1fr}.projected-score-card{background:color-mix(in srgb, var(--primary-soft) 28%, transparent);border:1px solid color-mix(in srgb, var(--primary) 18%, transparent);border-radius:16px;padding:16px 20px}.projected-scores-row.multi .projected-score-card{padding:14px 16px}.projected-scores-row.multi .score-number{font-size:1.7rem}.projected-scores-row.multi .score-label{font-size:.72rem}@media (width<=480px){.projected-scores-row.multi{grid-template-columns:1fr}}.score-main-info{text-align:left;flex-direction:column;gap:6px;display:flex}.score-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}.score-value-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.score-number{font-family:var(--font-display);color:var(--text-color);font-size:2.2rem;font-weight:600;line-height:1}.score-badge{border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.score-badge.positive{background:color-mix(in srgb, var(--success) 14%, transparent);color:var(--success)}.score-badge.negative{background:color-mix(in srgb, var(--danger) 14%, transparent);color:var(--danger)}.score-max{color:var(--text-muted);font-size:1rem;font-weight:600}.trend-topics-list{text-align:left;flex-direction:column;gap:10px;display:flex}.trend-subtitle{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:.82rem;font-weight:600}.trend-topics-list .empty-text{color:var(--text-muted);margin:0;padding:8px 2px;font-size:.88rem}.trend-rows{flex-direction:column;gap:8px;display:flex}.trend-topic-row{border-radius:12px;justify-content:space-between;align-items:center;padding:10px 14px;transition:all .2s;display:flex}.trend-topic-row.positive{background:color-mix(in srgb, var(--success) 8%, transparent);border:1px solid color-mix(in srgb, var(--success) 22%, transparent);border-left:4px solid var(--success)}.trend-topic-row.negative{background:color-mix(in srgb, var(--danger) 8%, transparent);border:1px solid color-mix(in srgb, var(--danger) 22%, transparent);border-left:4px solid var(--danger)}.trend-topic-left{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trend-topic-name{font-size:.9rem;font-weight:600}.trend-change-pill{border-radius:12px;padding:3px 10px;font-size:.82rem;font-weight:700}.trend-topic-row.positive .trend-change-pill{background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success)}.trend-topic-row.negative .trend-change-pill{background:color-mix(in srgb, var(--danger) 16%, transparent);color:var(--danger)}.reason-tag,.loading-text,.empty-text,.section-hint,.modal-instruction,.option-subject{color:var(--text-muted);opacity:1}@media (prefers-reduced-motion:reduce){.amoeba-button.running{animation:none}}.backfill-nudge-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:9999;background:#0f172ab8;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeInModalOverlay;display:flex;position:fixed;inset:0}@keyframes fadeInModalOverlay{0%{opacity:0}to{opacity:1}}.backfill-nudge-modal{background:var(--card-bg,#fff);border:1px solid color-mix(in srgb, #f59e0b 35%, var(--border-color,#e2e8f0));border-radius:20px;flex-direction:column;width:100%;max-width:440px;animation:.25s cubic-bezier(.16,1,.3,1) scaleUpNudgeModal;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059,0 0 0 1px #f59e0b1a}@keyframes scaleUpNudgeModal{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.backfill-nudge-modal-header{justify-content:space-between;align-items:center;padding:20px 22px 10px;display:flex}.backfill-nudge-icon-wrap{color:#d97706;background:linear-gradient(135deg,#f59e0b38 0%,#d977061f 100%);border:1px solid #f59e0b59;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.backfill-nudge-modal-close{color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.backfill-nudge-modal-close:hover{background:color-mix(in srgb, var(--text-color,#0f172a) 10%, transparent);color:var(--text-color,#0f172a)}.backfill-nudge-modal-body{padding:12px 22px 20px}.backfill-nudge-modal-title{color:var(--text-color,#0f172a);margin:0 0 8px;font-size:1.25rem;font-weight:700;line-height:1.3}.backfill-nudge-modal-desc{color:var(--text-muted,#64748b);margin:0;font-size:.92rem;line-height:1.5}.backfill-nudge-modal-footer{background:color-mix(in srgb, var(--card-bg,#fff) 95%, #f1f5f9);border-top:1px solid var(--border-color,#e2e8f0);justify-content:flex-end;align-items:center;gap:10px;padding:16px 22px;display:flex}.backfill-nudge-modal-skip{border:1px solid var(--border-color,#cbd5e1);color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border-radius:10px;padding:9px 16px;font-size:.88rem;font-weight:600;transition:all .15s}.backfill-nudge-modal-skip:hover{background:color-mix(in srgb, var(--text-color,#0f172a) 6%, transparent);color:var(--text-color,#0f172a)}.backfill-nudge-modal-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d97706 0%,#b45309 100%);border:none;border-radius:10px;align-items:center;gap:8px;padding:9px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 4px 12px #d9770647}.backfill-nudge-modal-primary:hover{background:linear-gradient(135deg,#b45309 0%,#92400e 100%);transform:translateY(-1px);box-shadow:0 6px 16px #d9770659}.backfill-nudge-banner{background:color-mix(in srgb, #f59e0b 12%, var(--card-bg,#fff));border:1px solid #f59e0b59;border-radius:14px;align-items:center;gap:14px;animation:.3s cubic-bezier(.16,1,.3,1) fadeInDown;display:flex;padding:14px 18px!important}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.backfill-nudge-icon{color:#d97706;background:#f59e0b38;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.backfill-nudge-content{flex-direction:column;flex:1;gap:2px;display:flex}.backfill-nudge-title{color:var(--text-color);font-size:.95rem;font-weight:700}.backfill-nudge-desc{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.35}.backfill-nudge-cta{color:#fff;cursor:pointer;white-space:nowrap;background:#d97706;border:none;border-radius:8px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:background .15s}.backfill-nudge-cta:hover{background:#b45309}.backfill-nudge-dismiss{color:var(--text-muted);cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;display:flex}.backfill-nudge-dismiss:hover{opacity:1;background:color-mix(in srgb, var(--text-color) 10%, transparent)}.active-students-pill{background:color-mix(in srgb, var(--primary) 10%, transparent);border:1px solid color-mix(in srgb, var(--primary) 22%, transparent);color:var(--primary);border-radius:20px;align-self:center;align-items:center;gap:7px;margin-bottom:-10px;padding:6px 14px;font-size:.83rem;font-weight:600;display:inline-flex}.journal-nudge-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.journal-nudge-modal{background:var(--card-bg,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:18px;flex-direction:column;gap:16px;width:100%;max-width:480px;max-height:92vh;padding:22px;animation:.25s cubic-bezier(.16,1,.3,1) zoomIn;display:flex;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}@keyframes zoomIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.journal-nudge-header{align-items:flex-start;gap:12px;display:flex}.journal-nudge-sparkle{color:#f59e0b;flex-shrink:0;margin-top:2px}.journal-nudge-header h3{color:var(--text-color);margin:0 0 2px;font-size:1.15rem;font-weight:700}.journal-nudge-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;margin-left:auto}.journal-nudge-body{flex-direction:column;gap:16px;display:flex}.journal-nudge-section{flex-direction:column;gap:6px;display:flex}.journal-nudge-section-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.journal-nudge-section-title{color:var(--text-color);margin:0;font-size:.88rem;font-weight:650}.journal-nudge-badge{color:#6d28d9;background:#ede9fe;border-radius:6px;padding:2px 8px;font-size:.78rem;font-weight:700}.journal-nudge-slider{appearance:none;background:linear-gradient(to right, #6d28d9 0%, #8b5cf6 var(--focus-pct,70%), #e2e8f0 var(--focus-pct,70%), #e2e8f0 100%);cursor:pointer;border-radius:999px;outline:none;width:100%;height:8px;margin:4px 0}.journal-nudge-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#6d28d9;border:2px solid #fff;border-radius:50%;width:20px;height:20px;transition:transform .1s;box-shadow:0 2px 6px #6d28d959}.journal-nudge-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.journal-nudge-slider::-moz-range-thumb{cursor:pointer;background:#6d28d9;border:2px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 6px #6d28d959}.journal-nudge-scale{color:var(--text-muted,#64748b);opacity:.85;justify-content:space-between;font-size:.72rem;display:flex}.journal-nudge-mood-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.journal-nudge-mood-btn{border:1.5px solid var(--border-color,#e2e8f0);background:var(--card-bg,#fff);color:var(--text-color);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:8px 4px;transition:all .15s;display:flex}.journal-nudge-mood-btn:hover{background:#faf5ff;border-color:#c4b5fd}.journal-nudge-mood-btn.selected{color:#5b21b6;background:#ede9fe;border-color:#6d28d9;box-shadow:0 0 0 2px #6d28d933}.journal-nudge-mood-emoji{font-size:1.35rem;line-height:1}.journal-nudge-mood-label{font-size:.7rem;font-weight:600}.journal-nudge-label{color:var(--text-color);flex-direction:column;gap:6px;font-size:.88rem;font-weight:600;display:flex}.journal-nudge-textarea{border:1px solid var(--border-color,#cbd5e1);background:var(--input-bg,#f8fafc);width:100%;color:var(--text-color);resize:vertical;box-sizing:border-box;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:.88rem}.journal-nudge-textarea:focus{border-color:var(--primary);outline:none}.journal-nudge-footer{justify-content:flex-end;align-items:center;gap:10px;display:flex}.journal-nudge-skip-btn{border:1px solid var(--border-color,#cbd5e1);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;padding:8px 14px;font-size:.85rem;font-weight:600}.journal-nudge-save-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600}.journal-nudge-save-btn:disabled{opacity:.5;cursor:not-allowed}.top-streaks-bar{background:color-mix(in srgb, var(--card-bg,#fff) 85%, transparent);border:1px solid color-mix(in srgb, var(--border-color,#e2e8f0) 80%, transparent);-webkit-backdrop-filter:blur(8px);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:9999px;justify-content:space-between;align-self:center;align-items:center;gap:12px;width:100%;max-width:520px;margin-top:-2px;margin-bottom:2px;padding:6px 14px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;box-shadow:0 2px 8px -2px #0000000d}.top-streaks-bar:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border-color,#e2e8f0));transform:translateY(-1px);box-shadow:0 4px 14px -3px #00000014}.top-streaks-bar:active{transform:translateY(0)}.top-streak-pill{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.top-streak-left{align-items:center;gap:7px;min-width:0;display:flex}.top-streak-icon-wrap{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.top-streak-icon-wrap.olympus-icon-wrap{background:color-mix(in srgb, var(--warning,#f59e0b) 16%, transparent);color:var(--warning,#f59e0b)}.top-streak-icon-wrap.everest-icon-wrap{background:color-mix(in srgb, var(--danger,#ef4444) 16%, transparent);color:var(--danger,#ef4444)}.top-streak-text{align-items:baseline;gap:5px;min-width:0;display:flex}.top-streak-title-group{align-items:center;gap:5px;min-width:0;display:inline-flex}.altitude-short{display:none}.altitude-full{display:inline}.top-streak-name{color:var(--text-color,#1e293b);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.82rem;font-weight:700;overflow:hidden}.top-streak-days{color:var(--text-muted,#64748b);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:2px;font-size:.76rem;font-weight:500;display:inline-flex}.top-streak-flame{color:var(--warning,#f59e0b)}.top-streak-zap{color:var(--danger,#ef4444)}.top-streak-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;margin-left:auto;display:flex}.top-streak-progress-label{color:var(--text-muted,#64748b);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:600}.top-streak-done-tag{color:#10b981;align-items:center;gap:2px;font-weight:700;display:inline-flex}.top-streak-done-tag.summit{color:#8b5cf6}.top-streak-mini-progress{background:#00000014;border-radius:99px;width:44px;height:3px;overflow:hidden}.top-streak-mini-fill{border-radius:99px;height:100%;transition:width .3s}.top-streak-mini-fill.olympus-fill{background:var(--warning,#f59e0b)}.top-streak-mini-fill.everest-fill{background:linear-gradient(90deg,#ef4444,#8b5cf6)}.top-streaks-divider{background:color-mix(in srgb, var(--border-color,#cbd5e1) 70%, transparent);flex-shrink:0;width:1px;height:18px}html[data-theme=midnight] .top-streaks-bar{background:color-mix(in srgb, var(--card-bg,#111827) 85%, transparent);border-color:#ffffff1a;box-shadow:0 4px 16px #00000059}html[data-theme=midnight] .top-streak-name{color:var(--text-color,#f1f5f9)}html[data-theme=midnight] .top-streak-mini-progress{background:#ffffff1f}@media (width<=560px){.top-streaks-bar{gap:8px;max-width:100%;padding:6px 10px}.top-streak-pill{gap:6px;min-width:0}.top-streak-left{gap:5px;min-width:0}.top-streak-title-group{gap:3px;min-width:0}.top-streak-name{max-width:76px;font-size:.76rem}.altitude-full{display:none}.altitude-short{display:inline}.top-streaks-bar.expedition-bar .altitude-badge{letter-spacing:0;padding:1px 4px;font-size:.6rem}.top-streak-mini-progress{width:32px}}@media (width<=480px){.top-streaks-bar{gap:6px;margin-top:0;margin-bottom:4px;padding:5px 8px}.top-streak-pill{gap:5px}.top-streak-left{gap:4px}.top-streak-icon-wrap{border-radius:5px;width:20px;height:20px}.top-streak-icon-wrap svg{width:11px;height:11px}.top-streak-text{gap:3px}.top-streak-name{max-width:58px;font-size:.72rem}.top-streak-days{gap:1px;font-size:.68rem}.top-streak-flame,.top-streak-zap{width:10px;height:10px}.top-streak-right{gap:2px}.top-streak-progress-label{font-size:.64rem}.top-streak-done-tag{gap:1px;font-size:.64rem}.top-streak-done-tag svg{width:9px;height:9px}.top-streak-mini-progress{width:24px;height:3px}.top-streaks-divider{height:14px}}@media (width<=380px){.top-streaks-bar{gap:4px;padding:4px 6px}.top-streaks-bar.expedition-bar .altitude-badge{display:none}.top-streak-name{max-width:48px;font-size:.68rem}.top-streak-days{font-size:.65rem}.top-streak-progress-label{font-size:.6rem}.top-streak-mini-progress{width:18px}}.nudge-pill-tag{text-transform:uppercase;letter-spacing:.5px;border-radius:999px;align-items:center;gap:5px;width:fit-content;margin-bottom:8px;padding:3px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.backfill-nudge-modal.variant-c{background:var(--card-bg,#fff);border:1.5px solid #10b98173;box-shadow:0 25px 50px -12px #00000059,0 0 25px #10b9812e}.nudge-pill-tag.guardian-pill{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.guardian-icon-wrap{color:#10b981;background:linear-gradient(135deg,#10b98138 0%,#f59e0b24 100%);border:1.5px solid #10b98166;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.guardian-rescue-callout{color:#92400e;background:#fffbeb;border:1px solid #fef3c7;border-left:3.5px solid #f59e0b;border-radius:10px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;font-size:.82rem;font-weight:600;line-height:1.4;display:flex}.guardian-primary-btn{color:#fff!important;background:linear-gradient(135deg,#059669 0%,#047857 100%)!important;box-shadow:0 4px 14px #05966959!important}.guardian-primary-btn:hover{transform:translateY(-1px);background:linear-gradient(135deg,#047857 0%,#065f46 100%)!important;box-shadow:0 6px 18px #05966973!important}.journal-nudge-modal.variant-c{border:1.5px solid #8b5cf673;box-shadow:0 25px 50px -12px #00000059,0 0 25px #8b5cf62e}.nudge-pill-tag.recall-pill{color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe}.recall-icon-wrap{color:#7c3aed;background:linear-gradient(135deg,#8b5cf638 0%,#6366f126 100%);border:1px solid #8b5cf659;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.active-recall-seeds-container{flex-direction:column;gap:6px;margin-top:2px;display:flex}.active-recall-seeds-label{text-transform:uppercase;letter-spacing:.4px;color:#6d28d9;font-size:.76rem;font-weight:700}.active-recall-seeds-row{flex-wrap:wrap;gap:6px;display:flex}.recall-seed-chip{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:4px 10px;font-size:.76rem;font-weight:600;transition:all .15s}.recall-seed-chip:hover{color:#5b21b6;background:#ede9fe;border-color:#8b5cf6;transform:translateY(-1px)}.recall-save-btn{color:#fff!important;background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%)!important;box-shadow:0 4px 14px #7c3aed59!important}.recall-save-btn:hover{transform:translateY(-1px);background:linear-gradient(135deg,#6d28d9 0%,#5b21b6 100%)!important;box-shadow:0 6px 18px #7c3aed73!important}.active-students-pill.variant-c{color:var(--text-color,#0f172a);background:linear-gradient(135deg,#10b9811f 0%,#f59e0b1f 100%);border:1px solid #10b98161;border-radius:9999px;align-items:center;gap:8px;padding:6px 14px;font-size:.83rem;font-weight:600;display:inline-flex;box-shadow:0 2px 10px #10b98126}.live-pulse-indicator{color:#059669;align-items:center;gap:5px;font-weight:700;display:inline-flex}.live-pulse-dot{background-color:#10b981;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.8s cubic-bezier(.66,0,0,1) infinite liveGreenPulse;display:inline-block;box-shadow:0 0 #10b981b3}@keyframes liveGreenPulse{0%{box-shadow:0 0 #10b981b3}70%{box-shadow:0 0 0 7px #10b98100}to{box-shadow:0 0 #10b98100}}.champion-crown-tag{color:#d97706;align-items:center;gap:4px;font-weight:700;display:inline-flex}.top-streaks-bar.expedition-bar{gap:10px;padding:5px 10px;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 22px #0006,inset 0 1px #ffffff26;color:#fff!important;background:linear-gradient(135deg,#090e1a 0%,#111a2e 100%)!important;border:1.5px solid #fff3!important;width:100%!important;max-width:550px!important}.top-streaks-bar.expedition-bar .top-streak-pill{border:1px solid #0000;border-radius:9999px!important;justify-content:space-between!important;align-items:center!important;gap:8px!important;min-width:0!important;padding:4px 10px!important;transition:all .35s cubic-bezier(.4,0,.2,1)!important;display:flex!important}.top-streaks-bar.expedition-bar .top-streak-left{flex-shrink:0!important;align-items:center!important;gap:6px!important;min-width:0!important;display:inline-flex!important}.top-streaks-bar.expedition-bar .top-streak-text{white-space:nowrap!important;flex-shrink:0!important;align-items:center!important;gap:6px!important;display:inline-flex!important}.top-streaks-bar.expedition-bar .top-streak-name{letter-spacing:.01em;color:#fff!important;white-space:nowrap!important;text-overflow:clip!important;flex-shrink:0!important;max-width:none!important;font-size:.82rem!important;font-weight:700!important;overflow:visible!important}.top-streaks-bar.expedition-bar .top-streak-days{font-variant-numeric:tabular-nums;white-space:nowrap!important;flex-shrink:0!important;align-items:center!important;gap:2px!important;font-size:.74rem!important;font-weight:600!important;display:inline-flex!important}.top-streaks-bar.expedition-bar .top-streak-right{flex-direction:column!important;flex-shrink:0!important;align-items:flex-end!important;gap:2px!important;margin-left:auto!important;display:flex!important}.top-streaks-bar.expedition-bar.state-goal-olympus{box-shadow:0 6px 22px #22c55e33,inset 0 1px #ffffff26;border-color:#22c55e8c!important}.top-streaks-bar.expedition-bar.state-goal-olympus .olympus-pill{background:#22c55e29!important;border:1px solid #4ade8073!important;flex:1.25!important;animation:2.2s ease-in-out infinite alternate pulseOlympusArea!important}.top-streaks-bar.expedition-bar.state-goal-olympus .everest-pill{opacity:.88;flex:1!important}.top-streaks-bar.expedition-bar.state-goal-everest{box-shadow:0 6px 22px #fff3,inset 0 1px #fff3;border-color:#fff9!important}.top-streaks-bar.expedition-bar.state-goal-everest .everest-pill{background:#ffffff29!important;border:1px solid #ffffff8c!important;flex:1.25!important;animation:2.2s ease-in-out infinite alternate pulseEverestArea!important}.top-streaks-bar.expedition-bar.state-goal-everest .olympus-pill{opacity:.9;flex:1!important}.top-streaks-bar.expedition-bar.state-both-achieved{box-shadow:0 6px 24px #eab30842,inset 0 1px #fff3;border-color:#facc15a6!important}.top-streaks-bar.expedition-bar.state-both-achieved .olympus-pill,.top-streaks-bar.expedition-bar.state-both-achieved .everest-pill{background:#facc151a!important;border:1px solid #facc154d!important;flex:1!important}@keyframes pulseOlympusArea{0%{box-shadow:0 0 4px #22c55e33,inset 0 0 6px #22c55e1a}to{box-shadow:0 0 14px 2px #4ade8066,inset 0 0 10px #22c55e40}}@keyframes pulseEverestArea{0%{box-shadow:0 0 4px #ffffff40,inset 0 0 6px #ffffff1f}to{box-shadow:0 0 16px 2px #ffffff8c,inset 0 0 12px #ffffff4d}}.top-streaks-bar.expedition-bar .olympus-pill .top-streak-days{color:#4ade80!important}.top-streaks-bar.expedition-bar .everest-pill .top-streak-days{color:#fff!important}.top-streaks-bar.expedition-bar .top-streak-progress-label{font-variant-numeric:tabular-nums;white-space:nowrap;color:#f1f5f9!important;font-size:.78rem!important;font-weight:700!important}.top-streaks-bar.expedition-bar .state-goal-olympus .olympus-pill .top-streak-progress-label{color:#86efac!important}.top-streaks-bar.expedition-bar .state-goal-everest .everest-pill .top-streak-progress-label{color:#fff!important}.top-streaks-bar.expedition-bar .top-streak-done-tag{align-items:center;gap:2px;font-weight:800;display:inline-flex;color:#4ade80!important}.top-streaks-bar.expedition-bar .top-streak-done-tag.summit{align-items:center;gap:2px;font-weight:800;display:inline-flex;color:#67e8f9!important}.top-streaks-bar.expedition-bar .top-streak-icon-wrap.olympus-icon-wrap,.top-streaks-bar.expedition-bar .top-streak-icon-wrap.vegetation{flex-shrink:0;box-shadow:0 0 10px #22c55e80;color:#4ade80!important;background:#10b98140!important;border:1.5px solid #22c55e!important}.top-streaks-bar.expedition-bar .top-streak-icon-wrap.vegetation svg{filter:drop-shadow(0 0 2px #22c55e99);stroke:#4ade80!important}.top-streaks-bar.expedition-bar .top-streak-icon-wrap.everest-icon-wrap,.top-streaks-bar.expedition-bar .top-streak-icon-wrap.ice-summit{flex-shrink:0;box-shadow:0 0 12px #ffffffa6;color:#fff!important;background:#ffffff38!important;border:1.5px solid #fff!important}.top-streaks-bar.expedition-bar .top-streak-icon-wrap.ice-summit svg{filter:drop-shadow(0 0 3px #fffc);stroke:#fff!important}.top-streaks-bar.expedition-bar.state-goal-olympus .olympus-pill .top-streak-icon-wrap,.top-streaks-bar.expedition-bar .top-streak-pill.olympus-pill.active-next-goal .top-streak-icon-wrap{animation:1.8s ease-in-out infinite alternate pulseActiveLogoOlympus!important}@keyframes pulseActiveLogoOlympus{0%{border-color:#22c55e;transform:scale(1);box-shadow:0 0 8px #22c55e73}to{border-color:#4ade80;transform:scale(1.14);box-shadow:0 0 16px 3px #4ade80d9}}.top-streaks-bar.expedition-bar.state-goal-olympus .olympus-pill .top-streak-icon-wrap svg,.top-streaks-bar.expedition-bar .top-streak-pill.olympus-pill.active-next-goal .top-streak-icon-wrap svg{animation:1.8s ease-in-out infinite alternate pulseIconGlowOlympus}@keyframes pulseIconGlowOlympus{0%{filter:drop-shadow(0 0 2px #22c55e80)}to{filter:drop-shadow(0 0 6px #4ade80f2)}}.top-streaks-bar.expedition-bar.state-goal-everest .everest-pill .top-streak-icon-wrap,.top-streaks-bar.expedition-bar .top-streak-pill.everest-pill.active-next-goal .top-streak-icon-wrap{animation:1.8s ease-in-out infinite alternate pulseActiveLogoEverest!important}@keyframes pulseActiveLogoEverest{0%{border-color:#ffffffbf;transform:scale(1);box-shadow:0 0 8px #ffffff80}to{border-color:#fff;transform:scale(1.14);box-shadow:0 0 18px 4px #fffffff2}}.top-streaks-bar.expedition-bar.state-goal-everest .everest-pill .top-streak-icon-wrap svg,.top-streaks-bar.expedition-bar .top-streak-pill.everest-pill.active-next-goal .top-streak-icon-wrap svg{animation:1.8s ease-in-out infinite alternate pulseIconGlowEverest}@keyframes pulseIconGlowEverest{0%{filter:drop-shadow(0 0 2px #fff9)}to{filter:drop-shadow(0 0 8px #fff)}}.top-streaks-bar.expedition-bar .top-streak-mini-progress{background:#ffffff38;border:1px solid #ffffff24;border-radius:99px;flex-shrink:0;width:46px;height:4px;overflow:hidden}.top-streaks-bar.expedition-bar .expedition-base-fill{background:linear-gradient(90deg,#16a34a,#4ade80);box-shadow:0 0 8px #4ade80cc}.top-streaks-bar.expedition-bar .expedition-summit-fill{background:linear-gradient(90deg,#38bdf8,#e0f2fe,#fff);box-shadow:0 0 8px #ffffffe6}.top-streaks-divider.expedition{background:#ffffff40;height:20px}html[data-theme=dawn] .active-students-pill.variant-c,[data-theme=dawn] .active-students-pill.variant-c,html:not([data-theme]) .active-students-pill.variant-c{color:#2c241c;background:linear-gradient(135deg,#2f6b561f 0%,#f0c06029 100%);border:1px solid #2f6b5659}html[data-theme=dawn] .backfill-nudge-modal.variant-c,[data-theme=dawn] .backfill-nudge-modal.variant-c,html:not([data-theme]) .backfill-nudge-modal.variant-c{background:#fff8ecfa;border:1.5px solid #2f6b5673;box-shadow:0 25px 50px -12px #8c602840,0 0 25px #2f6b5626}html[data-theme=dawn] .journal-nudge-modal.variant-c,[data-theme=dawn] .journal-nudge-modal.variant-c,html:not([data-theme]) .journal-nudge-modal.variant-c{background:#fff8ecfa;border:1.5px solid #c4a06a80;box-shadow:0 25px 50px -12px #8c602840,0 0 25px #c4a06a26}html[data-theme=dusk] .top-streaks-bar.expedition-bar,[data-theme=dusk] .top-streaks-bar.expedition-bar{color:#fff;background:linear-gradient(135deg,#2557a0f2 0%,#4f387ef2 100%);border:1px solid #e2c2ff73;box-shadow:0 4px 18px #4f387e47,inset 0 1px #ffffff26}html[data-theme=dusk] .top-streaks-bar.expedition-bar .top-streak-name,[data-theme=dusk] .top-streaks-bar.expedition-bar .top-streak-name{color:#f8fafc}html[data-theme=dusk] .top-streaks-bar.expedition-bar .top-streak-days,[data-theme=dusk] .top-streaks-bar.expedition-bar .top-streak-days{color:#e2c2ff}html[data-theme=dusk] .top-streaks-bar.expedition-bar .altitude-badge,[data-theme=dusk] .top-streaks-bar.expedition-bar .altitude-badge{color:#d4e4ff;background:#a0c4ff40;border:1px solid #a0c4ff66}html[data-theme=dusk] .top-streaks-bar.expedition-bar .altitude-badge.summit,[data-theme=dusk] .top-streaks-bar.expedition-bar .altitude-badge.summit{color:#f5e8ff;background:#e2c2ff4d;border-color:#e2c2ff80}html[data-theme=dusk] .top-streaks-bar.expedition-bar .expedition-base-fill,[data-theme=dusk] .top-streaks-bar.expedition-bar .expedition-base-fill{background:linear-gradient(90deg,#4d8bff,#a0c4ff);box-shadow:0 0 8px #a0c4ff99}html[data-theme=dusk] .top-streaks-bar.expedition-bar .expedition-summit-fill,[data-theme=dusk] .top-streaks-bar.expedition-bar .expedition-summit-fill{background:linear-gradient(90deg,#a855f7,#e2c2ff);box-shadow:0 0 8px #e2c2ff99}html[data-theme=dusk] .active-students-pill.variant-c,[data-theme=dusk] .active-students-pill.variant-c{color:#2d3748;background:linear-gradient(135deg,#2557a01a 0%,#a855f71f 100%);border:1px solid #2557a059}html[data-theme=dusk] .backfill-nudge-modal.variant-c,[data-theme=dusk] .backfill-nudge-modal.variant-c{background:#fff;border:1.5px solid #2557a066;box-shadow:0 25px 50px -12px #2d374833,0 0 25px #2557a026}html[data-theme=dusk] .journal-nudge-modal.variant-c,[data-theme=dusk] .journal-nudge-modal.variant-c{background:#fff;border:1.5px solid #7c3aed73;box-shadow:0 25px 50px -12px #2d374833,0 0 25px #7c3aed26}html[data-theme=midnight] .top-streaks-bar.expedition-bar,[data-theme=midnight] .top-streaks-bar.expedition-bar{color:#e8f4fa;background:linear-gradient(135deg,#061422fa 0%,#0e2d42fa 100%);border:1px solid #3ecfbf80;box-shadow:0 4px 22px #3ecfbf38,inset 0 1px #ffffff14}html[data-theme=midnight] .top-streaks-bar.expedition-bar .top-streak-name,[data-theme=midnight] .top-streaks-bar.expedition-bar .top-streak-name{color:#e8f4fa}html[data-theme=midnight] .top-streaks-bar.expedition-bar .top-streak-days,[data-theme=midnight] .top-streaks-bar.expedition-bar .top-streak-days{color:#3ecfbf}html[data-theme=midnight] .top-streaks-bar.expedition-bar .altitude-badge,[data-theme=midnight] .top-streaks-bar.expedition-bar .altitude-badge{color:#7eddd2;background:#3ecfbf33;border:1px solid #3ecfbf73}html[data-theme=midnight] .top-streaks-bar.expedition-bar .altitude-badge.summit,[data-theme=midnight] .top-streaks-bar.expedition-bar .altitude-badge.summit{color:#bae6fd;background:#38bdf840;border-color:#38bdf880}html[data-theme=midnight] .top-streaks-bar.expedition-bar .expedition-base-fill,[data-theme=midnight] .top-streaks-bar.expedition-bar .expedition-base-fill{background:linear-gradient(90deg,#10b981,#3ecfbf);box-shadow:0 0 10px #3ecfbfb3}html[data-theme=midnight] .top-streaks-bar.expedition-bar .expedition-summit-fill,[data-theme=midnight] .top-streaks-bar.expedition-bar .expedition-summit-fill{background:linear-gradient(90deg,#0ea5e9,#38bdf8);box-shadow:0 0 10px #38bdf8b3}html[data-theme=midnight] .active-students-pill.variant-c,[data-theme=midnight] .active-students-pill.variant-c{color:#e8f4fa;background:linear-gradient(135deg,#0e2d42e6 0%,#143c55e6 100%);border:1px solid #3ecfbf73;box-shadow:0 2px 12px #0006}html[data-theme=midnight] .backfill-nudge-modal,html[data-theme=midnight] .backfill-nudge-modal.variant-c,[data-theme=midnight] .backfill-nudge-modal,[data-theme=midnight] .backfill-nudge-modal.variant-c{color:#e8f4fa;background:#0d2235;border:1.5px solid #3ecfbf73;box-shadow:0 25px 50px -12px #000000b3,0 0 30px #3ecfbf33}html[data-theme=midnight] .backfill-nudge-modal-title,[data-theme=midnight] .backfill-nudge-modal-title{color:#e8f4fa}html[data-theme=midnight] .backfill-nudge-modal-desc,[data-theme=midnight] .backfill-nudge-modal-desc{color:#9bb8c9}html[data-theme=midnight] .backfill-nudge-modal-skip,[data-theme=midnight] .backfill-nudge-modal-skip{color:#9bb8c9;border:1px solid #ffffff26}html[data-theme=midnight] .guardian-rescue-callout,[data-theme=midnight] .guardian-rescue-callout{color:#f7e4b8;background:#e0b06026;border-color:#e0b06059 #e0b06059 #e0b06059 #e0b060}html[data-theme=midnight] .journal-nudge-modal,html[data-theme=midnight] .journal-nudge-modal.variant-c,[data-theme=midnight] .journal-nudge-modal,[data-theme=midnight] .journal-nudge-modal.variant-c{color:#e8f4fa;background:#0d2235;border:1.5px solid #8b5cf673;box-shadow:0 25px 50px -12px #000000b3,0 0 30px #8b5cf633}html[data-theme=midnight] .journal-nudge-header h3,[data-theme=midnight] .journal-nudge-header h3,html[data-theme=midnight] .journal-nudge-section-title,[data-theme=midnight] .journal-nudge-section-title,html[data-theme=midnight] .journal-nudge-label span,[data-theme=midnight] .journal-nudge-label span{color:#e8f4fa}html[data-theme=midnight] .journal-nudge-badge,[data-theme=midnight] .journal-nudge-badge{color:#3ecfbf;background:#3ecfbf33;border:1px solid #3ecfbf59}html[data-theme=midnight] .journal-nudge-slider,[data-theme=midnight] .journal-nudge-slider{background:#ffffff26}html[data-theme=midnight] .journal-nudge-mood-btn,[data-theme=midnight] .journal-nudge-mood-btn{color:#e8f4fa;background:#0e2d42b3;border:1px solid #3ecfbf40}html[data-theme=midnight] .journal-nudge-mood-btn.selected,[data-theme=midnight] .journal-nudge-mood-btn.selected{color:#fff;background:#3ecfbf38;border-color:#3ecfbf}html[data-theme=midnight] .journal-nudge-textarea,[data-theme=midnight] .journal-nudge-textarea{color:#e8f4fa;background:#081828cc;border:1px solid #3ecfbf4d}html[data-theme=midnight] .recall-seed-chip,[data-theme=midnight] .recall-seed-chip{color:#e8f4fa;background:#0e2d42cc;border:1px solid #8b5cf659}html[data-theme=midnight] .journal-nudge-skip,[data-theme=midnight] .journal-nudge-skip,html[data-theme=midnight] .journal-nudge-skip-btn,[data-theme=midnight] .journal-nudge-skip-btn{color:#9bb8c9;border:1px solid #ffffff26}html[data-theme=mountain] .top-streaks-bar.expedition-bar,[data-theme=mountain] .top-streaks-bar.expedition-bar{color:#fdf8f2;background:linear-gradient(135deg,#2a3c28f5 0%,#445c40f5 100%);border:1px solid #e9925a80;box-shadow:0 4px 18px #2a3c2847,inset 0 1px #ffffff1f}html[data-theme=mountain] .top-streaks-bar.expedition-bar .top-streak-name,[data-theme=mountain] .top-streaks-bar.expedition-bar .top-streak-name{color:#fdf8f2}html[data-theme=mountain] .top-streaks-bar.expedition-bar .top-streak-days,[data-theme=mountain] .top-streaks-bar.expedition-bar .top-streak-days{color:#e9925a}html[data-theme=mountain] .top-streaks-bar.expedition-bar .altitude-badge,[data-theme=mountain] .top-streaks-bar.expedition-bar .altitude-badge{color:#e6f0dc;background:#c4d4b040;border:1px solid #c4d4b073}html[data-theme=mountain] .top-streaks-bar.expedition-bar .altitude-badge.summit,[data-theme=mountain] .top-streaks-bar.expedition-bar .altitude-badge.summit{color:#ffe8d6;background:#e9925a4d;border-color:#e9925a8c}html[data-theme=mountain] .top-streaks-bar.expedition-bar .expedition-base-fill,[data-theme=mountain] .top-streaks-bar.expedition-bar .expedition-base-fill{background:linear-gradient(90deg,#6c9468,#a2be9e);box-shadow:0 0 8px #a2be9e99}html[data-theme=mountain] .top-streaks-bar.expedition-bar .expedition-summit-fill,[data-theme=mountain] .top-streaks-bar.expedition-bar .expedition-summit-fill{background:linear-gradient(90deg,#d48046,#f2a774);box-shadow:0 0 8px #f2a77499}html[data-theme=mountain] .active-students-pill.variant-c,[data-theme=mountain] .active-students-pill.variant-c{color:#2a2c28;background:linear-gradient(135deg,#4a6a481f 0%,#e9925a26 100%);border:1px solid #4a6a4859}html[data-theme=mountain] .backfill-nudge-modal.variant-c,[data-theme=mountain] .backfill-nudge-modal.variant-c{background:#fcf6ee;border:1.5px solid #4a6a4873;box-shadow:0 25px 50px -12px #46483838,0 0 25px #4a6a4826}html[data-theme=mountain] .guardian-primary-btn,[data-theme=mountain] .guardian-primary-btn{background:linear-gradient(135deg,#4a6a48 0%,#385237 100%)!important}html[data-theme=mountain] .journal-nudge-modal.variant-c,[data-theme=mountain] .journal-nudge-modal.variant-c{background:#fcf6ee;border:1.5px solid #e9925a80;box-shadow:0 25px 50px -12px #46483838,0 0 25px #e9925a26}html[data-theme=mountain] .recall-save-btn,[data-theme=mountain] .recall-save-btn{background:linear-gradient(135deg,#4a6a48 0%,#385237 100%)!important}.calendar-page-container{flex-direction:column;gap:24px;width:100%;animation:.3s ease-in-out fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.calendar-header-card{background:var(--card-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #fff6;flex-direction:column;gap:16px;display:flex}.calendar-header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.calendar-title-wrapper{align-items:center;gap:12px;display:flex}.calendar-icon-badge{background:color-mix(in srgb, var(--primary) 12%, transparent);width:38px;height:38px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.calendar-title{color:var(--text-color);letter-spacing:-.01em;margin-bottom:2px;font-size:1.15rem;font-weight:600}.calendar-subtitle{color:var(--text-muted);font-size:.8rem}.calendar-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.refresh-calendar-btn{color:var(--text-color);background:0 0;border:1px solid #0000001f;border-radius:14px;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:600;transition:background .2s,opacity .2s;display:flex}.refresh-calendar-btn:hover:not(:disabled){background:#0000000a}.refresh-calendar-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-calendar-btn .spin{animation:.9s linear infinite calendar-spin}@keyframes calendar-spin{to{transform:rotate(360deg)}}.add-event-btn{background:var(--primary);color:var(--on-primary);box-shadow:0 4px 14px color-mix(in srgb, var(--primary) 28%, transparent);border-radius:14px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.add-event-btn:hover{box-shadow:0 6px 18px color-mix(in srgb, var(--primary) 36%, transparent);transform:translateY(-2px)}.calendar-filter-bar{border-top:1px solid #0000000f;justify-content:flex-start;align-items:center;padding-top:12px;display:flex}.filter-pills{background:#0000000a;border-radius:16px;align-items:center;gap:6px;padding:4px;display:flex}.filter-pill{color:var(--text-color);opacity:.7;border-radius:12px;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.filter-pill.active{opacity:1;background:var(--card-bg);box-shadow:0 2px 8px var(--shadow-color)}.filter-pill.class-pill.active{color:var(--primary)}.filter-pill.test-pill.active{color:var(--danger)}.fullcalendar-wrapper{font-family:var(--font-ui);overflow:hidden;background:var(--card-bg)!important;box-shadow:0 4px 24px var(--shadow-color)!important;border-radius:24px!important;padding:20px!important}.fc .fc-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex;margin-bottom:20px!important}.fc .fc-toolbar-title{font-family:var(--font-display)!important;color:var(--text-color)!important;font-size:1.3rem!important;font-weight:600!important}.fc .fc-button{color:var(--text-color)!important;box-shadow:none!important;text-transform:capitalize!important;background:#0000000d!important;border:1px solid #00000014!important;border-radius:12px!important;padding:8px 14px!important;font-size:.85rem!important;font-weight:600!important;transition:all .2s!important}.fc .fc-button:hover{transform:translateY(-1px);background:#0000001a!important}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background:var(--primary)!important;color:var(--on-primary)!important;border-color:#0000!important}.fc .fc-button-group{gap:4px}.fc .fc-button-group>.fc-button{border-radius:12px!important}.fc .fc-col-header-cell{background:#00000005;padding:10px 0!important}.fc .fc-col-header-cell-cushion{opacity:.7;text-transform:uppercase!important;color:var(--text-color)!important;font-size:.8rem!important;font-weight:700!important;text-decoration:none!important}.fc .fc-daygrid-day{cursor:pointer;transition:background .15s}.fc .fc-daygrid-day:hover{background:color-mix(in srgb, var(--primary) 5%, transparent)!important}.fc .fc-daygrid-day-number{color:var(--text-color)!important;padding:6px 8px!important;font-size:.85rem!important;font-weight:700!important;text-decoration:none!important}.fc .fc-day-today{background:color-mix(in srgb, var(--primary-soft) 28%, transparent)!important}.fc .fc-day-today .fc-daygrid-day-number{background:var(--primary);border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;margin:4px;display:flex;color:var(--on-primary)!important}.fc .fc-daygrid-event-harness{max-width:100%!important;overflow:hidden!important}.fc .fc-daygrid-event{white-space:nowrap!important;max-width:100%!important;overflow:hidden!important}.fc .fc-event-main{text-overflow:ellipsis!important;white-space:nowrap!important;width:100%!important;min-width:0!important;padding:2px 4px!important;overflow:hidden!important}.fc-event{cursor:pointer;transition:transform .15s;box-shadow:0 1px 3px #0000000d;border:none!important;border-radius:8px!important;max-width:100%!important;margin-top:3px!important;padding:2px 4px!important;overflow:hidden!important}.fc-event:hover{transform:scale(1.01)}.fc-event-class{background:color-mix(in srgb, var(--primary-soft) 45%, var(--card-bg))!important;border-left:4px solid var(--primary)!important;color:var(--primary-ink)!important}.fc-event-test{background:color-mix(in srgb, var(--danger) 14%, var(--card-bg))!important;border-left:4px solid var(--danger)!important;color:var(--danger)!important}.fc-custom-event-inner{align-items:center;gap:5px;width:100%;min-width:0;font-size:.72rem;line-height:1.2;display:flex;overflow:hidden}.fc-event-icon{flex-shrink:0;align-items:center;display:flex}.fc-event-text{flex-direction:column;width:100%;min-width:0;display:flex;overflow:hidden}.fc-event-title-text{white-space:nowrap;text-overflow:ellipsis;width:100%;font-weight:700;display:block;overflow:hidden}.fc-event-time-text{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;display:block;overflow:hidden}.fc .fc-popover{background:var(--card-bg)!important;z-index:100!important;border:1px solid #0000001a!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 12px 32px #00000026!important}.fc .fc-popover-header{background:#0000000a!important;padding:8px 12px!important;font-weight:700!important}.fc .fc-list-event{cursor:pointer!important;border-radius:12px!important}.fc .fc-list-day-cushion{background:#0000000a!important;font-weight:700!important}.fc .fc-list-event-title a{color:var(--text-color)!important;font-weight:700!important;text-decoration:none!important}.fc .fc-list-event-graphic{display:none!important}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.event-detail-modal,.add-event-modal{flex-direction:column;gap:16px;width:100%;max-width:520px;padding:24px;display:flex;background:var(--card-bg)!important;border-radius:24px!important;box-shadow:0 20px 40px #0003!important}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h3{color:var(--text-color);font-size:1.15rem;font-weight:700}.modal-type-header{align-items:center;gap:8px;display:flex}.event-type-tag{letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.event-type-tag.tag-class{background:color-mix(in srgb, var(--primary-soft) 40%, transparent);color:var(--primary-ink)}.event-type-tag.tag-test{background:color-mix(in srgb, var(--danger) 14%, transparent);color:var(--danger)}.modal-subtype{opacity:.65;font-size:.85rem;font-weight:600}.modal-close-btn{color:var(--text-color);opacity:.6;border-radius:50%;padding:6px}.modal-close-btn:hover{opacity:1;background:#0000000d}.modal-event-title{color:var(--text-color);font-size:1.35rem;font-weight:700}.modal-meta-grid{background:#00000008;border-radius:14px;flex-direction:column;gap:8px;padding:12px 16px;display:flex}.meta-item{color:var(--text-color);align-items:center;gap:8px;font-size:.875rem;font-weight:600;display:flex}.modal-syllabus-section{flex-direction:column;gap:8px;display:flex}.modal-syllabus-section h4{color:var(--text-color);opacity:.8;align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:flex}.syllabus-formatted-summary{background:color-mix(in srgb, var(--primary) 8%, var(--bg-card,#fff));border:1px solid color-mix(in srgb, var(--primary) 22%, transparent);border-radius:10px;margin-bottom:8px;padding:10px 14px}.syllabus-formatted-text{color:var(--text-color,#1e2e25);margin:0;font-size:.86rem;font-weight:500;line-height:1.5}.syllabus-subject-groups{flex-direction:column;gap:10px;display:flex}.syllabus-subject-block{background:#00000005;border:1px solid #0000000f;border-radius:10px;flex-direction:column;gap:6px;padding:8px 12px;display:flex}.syllabus-subject-label{justify-content:space-between;align-items:center;display:flex}.subject-badge{text-transform:uppercase;letter-spacing:.5px;color:#4338ca;background:#eef2ff;border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:700}.subject-badge.physics{color:#1d4ed8;background:#eff6ff}.subject-badge.chemistry{color:#be185d;background:#fdf2f8}.subject-badge.mathematics{color:#a16207;background:#fefce8}.subject-badge.botany,.subject-badge.zoology,.subject-badge.biology{color:#15803d;background:#f0fdf4}.subject-count{color:#666;font-size:.75rem;font-weight:500}.syllabus-pill-group{flex-wrap:wrap;gap:6px;display:flex}.syllabus-pill{background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--primary);border-radius:8px;padding:4px 10px;font-size:.78rem;font-weight:600}.modal-footer{border-top:1px solid #00000014;justify-content:space-between;align-items:center;padding-top:12px;display:flex}.delete-event-btn{color:var(--danger);border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;font-weight:600;display:flex}.delete-event-btn:hover{background:#ef444414}.close-modal-btn{color:var(--text-color);background:#0000000f;border-radius:12px;padding:8px 20px;font-size:.9rem;font-weight:600}.close-modal-btn:hover{background:#0000001a}.add-event-form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-color);text-transform:uppercase;letter-spacing:.03em;opacity:.75;font-size:.8rem;font-weight:700}.form-group input[type=text],.form-group input[type=date],.form-group input[type=time]{width:100%;color:var(--text-color);background:color-mix(in srgb, var(--card-bg) 80%, var(--bg-color));border:1px solid #00000026;border-radius:12px;outline:none;padding:10px 14px;font-family:inherit;font-size:.9rem}:is(.form-group input[type=text],.form-group input[type=date],.form-group input[type=time]):focus{border-color:var(--primary);background:var(--card-bg);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent)}.type-toggle-group{grid-template-columns:1fr 1fr;gap:8px;display:grid}.toggle-btn{background:color-mix(in srgb, var(--text-color) 5%, transparent);color:var(--text-muted);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;display:flex}.toggle-btn.class-toggle.selected{background:color-mix(in srgb, var(--primary-soft) 40%, transparent);color:var(--primary-ink);border:1px solid var(--primary)}.toggle-btn.test-toggle.selected{background:color-mix(in srgb, var(--danger) 14%, transparent);color:var(--danger);border:1px solid var(--danger)}.form-row{grid-template-columns:1.5fr 1fr 1fr;gap:12px;display:grid}.form-actions{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.cancel-btn{color:var(--text-color);background:#0000000d;border-radius:12px;padding:10px 18px;font-weight:600}.submit-btn{background:var(--primary);color:var(--on-primary);box-shadow:0 4px 12px color-mix(in srgb, var(--primary) 28%, transparent);border-radius:12px;padding:10px 22px;font-weight:600}@media (width<=768px){.fc .fc-toolbar{flex-direction:column;align-items:stretch;gap:8px}.fc .fc-toolbar-chunk{justify-content:center;display:flex}.form-row{grid-template-columns:1fr}}.reports-container{flex-direction:column;gap:20px;width:100%;max-width:680px;margin:0 auto;display:flex}.reports-header-card{padding:16px 20px}.reports-title-wrapper{align-items:center;gap:12px;display:flex}.reports-icon-badge{background:color-mix(in srgb, var(--primary) 12%, transparent);width:38px;height:38px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.reports-title{color:var(--text-color);letter-spacing:-.01em;margin-bottom:2px;font-size:1.15rem;font-weight:600}.reports-subtitle{color:var(--text-muted);font-size:.8rem}.progress-chart-card{padding:16px 20px 12px}.progress-chart-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.period-toggle{background:color-mix(in srgb, var(--text-color) 6%, transparent);border-radius:10px;flex-shrink:0;padding:3px;display:flex}.period-toggle-btn{color:var(--text-color);opacity:.65;border-radius:8px;padding:6px 12px;font-size:.78rem;font-weight:550}.period-toggle-btn.active{opacity:1;background:var(--card-bg,#fff);color:var(--primary-ink);box-shadow:0 1px 3px var(--shadow-color)}.progress-chart-wrap{width:100%;min-height:240px;color:var(--text-color);opacity:.9}.progress-chart-empty{text-align:center;opacity:.65;padding:36px 12px;font-size:.85rem}.progress-chart-error{color:var(--danger);opacity:.9}@media (width<=560px){.progress-chart-header{flex-direction:column;align-items:stretch}.period-toggle{align-self:flex-start}}.reports-loading,.reports-empty,.reports-error{text-align:center;opacity:.8;flex-direction:column;align-items:center;gap:12px;display:flex;padding:32px!important}.reports-error{color:var(--danger);background:color-mix(in srgb, var(--danger) 8%, transparent)}.subjects-list{flex-direction:column;gap:16px;display:flex}.subject-card{border-radius:20px;overflow:hidden;padding:0!important}.subject-card-header{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;transition:background .2s;display:flex}.subject-card-header:hover{background:#fff6}.subject-title-box{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.subject-name{font-size:1.15rem;font-weight:600}.topic-count{opacity:.6;font-size:.78rem}.subject-rating-box{flex-shrink:0;align-items:center;gap:12px;display:flex}.rating-pill{border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:.9rem;font-weight:700;display:flex}.expand-icon-btn{cursor:pointer;opacity:.6;background:0 0;border:none;align-items:center;padding:0;display:flex}.subject-progress-bg{background:#0000000f;width:100%;height:4px}.subject-progress-fill{height:100%;transition:width .4s}.topics-expansion{text-align:left;background:#ffffff4d;border-top:1px solid #0000000d;flex-direction:column;gap:12px;padding:16px 24px 20px;display:flex}.expansion-title{opacity:.6;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:600}.topic-rows-list{flex-direction:column;gap:10px;display:flex}.topic-rating-row{background:#ffffffb3;border:1px solid #0000000a;border-radius:12px;flex-direction:column;padding:12px 14px;display:flex}.topic-main-info{flex-direction:column;gap:8px;width:100%;display:flex}.topic-header-line{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;display:flex}.topic-title-wrapper{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.topic-text{white-space:normal;word-break:break-word;font-size:.9rem;font-weight:600;line-height:1.3}.topic-meta-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.topic-badges-line{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex}.metric-short{display:none}.weightage-badge{opacity:.6;text-overflow:ellipsis;white-space:nowrap;background:#0000000d;border-radius:6px;max-width:100%;padding:2px 6px;font-size:.72rem;overflow:hidden}.metric-badge{background:color-mix(in srgb, var(--primary) 22%, transparent);color:var(--primary-ink);border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:600}.today-time-badge{background:color-mix(in srgb, var(--warning) 14%, transparent);color:var(--warning);border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.topic-score-col{flex-shrink:0;align-items:center;gap:8px;display:flex}.score-badge{font-family:var(--font-display);font-variant-numeric:tabular-nums;text-align:right;min-width:2ch;font-size:.95rem;font-weight:600}.status-tag{border-radius:10px;padding:2px 8px;font-size:.72rem;font-weight:500}.status-tag.rated{background:color-mix(in srgb, var(--success) 12%, transparent);color:var(--success)}.status-tag.unrated{background:color-mix(in srgb, var(--text-muted) 16%, transparent);color:var(--text-muted)}.topic-preference-btns{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.topic-pref-btn{border:1px solid var(--border-color);background:color-mix(in srgb, var(--card-bg) 80%, transparent);width:26px;height:26px;color:var(--text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.topic-pref-btn:hover{background:var(--card-bg);border-color:color-mix(in srgb, var(--text-color) 20%, transparent);color:var(--text-color);transform:scale(1.1)}.topic-pref-btn.liked{background:color-mix(in srgb, var(--success) 15%, transparent);border-color:var(--success);color:var(--success)}.topic-pref-btn.liked:hover{background:color-mix(in srgb, var(--success) 25%, transparent);color:var(--success)}.topic-pref-btn.disliked{background:color-mix(in srgb, var(--danger) 15%, transparent);border-color:var(--danger);color:var(--danger)}.topic-pref-btn.disliked:hover{background:color-mix(in srgb, var(--danger) 25%, transparent);color:var(--danger)}@media (width<=520px){.reports-container{gap:12px}.reports-header-card{padding:12px 14px}.reports-icon-badge{border-radius:10px;width:32px;height:32px}.reports-icon-badge svg{width:16px;height:16px}.reports-title{margin-bottom:0;font-size:1rem}.reports-subtitle{display:none}.subjects-list{gap:10px}.subject-card{border-radius:16px}.subject-card-header{gap:8px;padding:12px 14px}.subject-name{font-size:1rem}.topic-count{font-size:.72rem}.subject-rating-box{gap:6px}.rating-pill{gap:4px;padding:4px 10px;font-size:.85rem}.rating-pill svg{width:14px;height:14px}.expand-icon-btn svg{width:18px;height:18px}.subject-progress-bg{height:3px}.topics-expansion{gap:8px;padding:10px 10px 12px}.expansion-title{display:none}.topic-rows-list{gap:6px}.topic-rating-row{background:#ffffff8c;border-radius:10px;padding:10px}.topic-main-info{gap:6px}.topic-header-line{align-items:center;gap:10px}.topic-text{font-size:.84rem}.topic-meta-line{gap:8px}.topic-badges-line{gap:5px}.metric-full{display:none}.metric-short{display:inline}.metric-badge,.weightage-badge,.today-time-badge,.status-tag{padding:1px 6px;font-size:.68rem}.topic-pref-btn{width:24px;height:24px}.topic-pref-btn svg{width:12px;height:12px}.score-badge{font-size:.95rem}}.practice-container{flex-direction:column;gap:20px;width:100%;max-width:680px;margin:0 auto;padding-bottom:32px;display:flex}.practice-header-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.practice-title-wrapper{align-items:center;gap:14px;display:flex}.practice-icon-badge{width:44px;height:44px;color:var(--primary,#4a6b4f);background:#4a6b4f1f;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.practice-title{color:var(--text-color,#334155);letter-spacing:-.02em;margin:0 0 2px;font-size:1.25rem;font-weight:700}.practice-subtitle{color:var(--text-color,#334155);opacity:.7;margin:0;font-size:.85rem}.active-topic-badge{color:var(--primary,#4a6b4f);background:#4a6b4f1a;border:1px solid #4a6b4f33;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:600;display:flex}.active-topic-badge .topic-name{color:var(--text-color,#334155);font-weight:700}.practice-selection-card{flex-direction:column;gap:22px;padding:24px;display:flex}.section-heading{color:var(--text-color,#334155);align-items:center;gap:10px;margin:0;font-size:1.15rem;font-weight:700;display:flex}.heading-icon{color:var(--primary,#4a6b4f)}.selection-box{flex-direction:column;gap:10px;display:flex}.selection-label{color:var(--text-color,#334155);opacity:.85;font-size:.9rem;font-weight:600}.subject-pills{flex-wrap:wrap;gap:10px;display:flex}.subject-pill{color:var(--text-color,#334155);cursor:pointer;background:#fff9;border:1px solid #00000014;border-radius:20px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.subject-pill:hover{background:#fffffff2;border-color:#4a6b4f4d}.subject-pill.active{background:var(--primary,#4a6b4f);border-color:var(--primary,#4a6b4f);color:#fff;font-weight:600;box-shadow:0 4px 14px #4a6b4f40}.topic-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.topic-card{cursor:pointer;background:#ffffff80;border:1px solid #00000012;border-radius:16px;padding:14px 16px;transition:all .2s}.topic-card:hover{border-color:var(--primary,#4a6b4f);background:#ffffffe6;transform:translateY(-2px)}.topic-card.selected{border-color:var(--primary,#4a6b4f);box-shadow:0 0 0 1px var(--primary,#4a6b4f);background:#4a6b4f14}.topic-card-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.radio-check{color:#fff;background:0 0;border:2px solid #00000026;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:all .2s;display:flex}.topic-card.selected .radio-check{background:var(--primary,#4a6b4f);border-color:var(--primary,#4a6b4f)}.topic-meta{color:var(--text-color,#334155);opacity:.6;margin:0;font-size:.78rem}.start-action-box{justify-content:flex-end;margin-top:8px;display:flex}.start-quiz-btn{background:var(--primary,#4a6b4f);color:#fff;cursor:pointer;border:none;border-radius:16px;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 16px #4a6b4f40}.start-quiz-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4a6b4f59}.start-quiz-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.quiz-wrapper{flex-direction:column;gap:16px;display:flex}.quiz-progress-card{flex-direction:column;gap:10px;padding:16px 20px;display:flex}.progress-info{color:var(--text-color,#334155);opacity:.8;justify-content:space-between;font-size:.85rem;display:flex}.question-count strong{color:var(--primary,#4a6b4f)}.progress-bar-track{background:#0000000f;border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background:var(--primary,#4a6b4f);border-radius:3px;height:100%;transition:width .3s}.question-card{flex-direction:column;gap:20px;padding:24px;display:flex}.question-header{align-items:flex-start;gap:12px;display:flex}.question-badge{color:var(--primary,#4a6b4f);white-space:nowrap;background:#4a6b4f1f;border:1px solid #4a6b4f33;border-radius:8px;padding:4px 10px;font-size:.85rem;font-weight:700}.question-text{color:var(--text-color,#334155);margin:0;font-size:1.08rem;font-weight:600;line-height:1.55}.options-list{flex-direction:column;gap:10px;display:flex}.option-button{color:var(--text-color,#334155);text-align:left;cursor:pointer;background:#fff9;border:1px solid #00000014;border-radius:16px;align-items:center;gap:14px;width:100%;padding:14px 18px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.option-button:hover:not(.disabled){border-color:var(--primary,#4a6b4f);background:#fffffff2}.option-badge{width:30px;height:30px;color:var(--text-color,#334155);opacity:.8;background:#0000000d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.option-text{flex-grow:1}.option-button.correct-selected{border-color:var(--primary,#4a6b4f);color:var(--text-color,#334155);background:#4a6b4f24}.option-button.correct-selected .option-badge{background:var(--primary,#4a6b4f);color:#fff;opacity:1}.option-button.wrong-selected{color:var(--text-color,#334155);background:#dc26261a;border-color:#dc2626}.option-button.wrong-selected .option-badge{color:#fff;opacity:1;background:#dc2626}.option-button.correct-highlight{border:1.5px dashed var(--primary,#4a6b4f);background:#4a6b4f14}.option-button.disabled{opacity:.75;cursor:default}.option-icon.icon-correct{color:var(--primary,#4a6b4f)}.option-icon.icon-wrong{color:#dc2626}.solution-container{border-radius:16px;flex-direction:column;gap:12px;padding:18px 20px;animation:.3s fadeIn;display:flex}.solution-container.success{background:#4a6b4f14;border:1px solid #4a6b4f40}.solution-container.warning{background:#dc26260f;border:1px solid #dc262640}.feedback-status{align-items:center;gap:8px;display:flex}.status-text{font-size:.98rem;font-weight:600}.text-success{color:var(--primary,#4a6b4f)}.text-danger{color:#dc2626}.explanation-body{border-top:1px solid #0000000f;flex-direction:column;gap:8px;margin-top:4px;padding-top:10px;display:flex}.explanation-title{color:#d97706;align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:flex}.explanation-text{color:var(--text-color,#334155);opacity:.9;margin:0;font-size:.9rem;line-height:1.55}.solution-steps-list{flex-direction:column;gap:6px;margin-top:4px;display:flex}.solution-step-item{color:var(--text-color,#334155);align-items:flex-start;gap:8px;font-size:.88rem;display:flex}.step-num{width:20px;height:20px;color:var(--text-color,#334155);background:#0000000f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.72rem;font-weight:700;display:flex}.quiz-navigation-footer{border-top:1px solid #0000000f;justify-content:space-between;align-items:center;margin-top:8px;padding-top:16px;display:flex}.btn-secondary{color:var(--text-color,#334155);cursor:pointer;background:#0000000a;border:1px solid #00000014;border-radius:14px;align-items:center;gap:6px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.btn-secondary:hover:not(:disabled){background:#00000014}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary,#4a6b4f);color:#fff;cursor:pointer;border:none;border-radius:14px;align-items:center;gap:6px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 14px #4a6b4f40}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px #4a6b4f59}.summary-card{text-align:center;flex-direction:column;align-items:center;gap:24px;padding:32px 24px;display:flex}.summary-banner{flex-direction:column;align-items:center;gap:10px;display:flex}.award-icon-box{width:72px;height:72px;color:var(--primary,#4a6b4f);background:#4a6b4f1f;border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.summary-title{color:var(--text-color,#334155);margin:0;font-size:1.5rem;font-weight:700}.summary-subtitle{color:var(--text-color,#334155);opacity:.7;margin:0;font-size:.95rem}.score-stat-box{background:#fff9;border:1px solid #00000014;border-radius:20px;flex-direction:column;align-items:center;min-width:240px;padding:20px 36px;display:flex}.score-number-display{align-items:baseline;gap:4px;display:flex}.score-obtained{color:var(--primary,#4a6b4f);font-size:2.75rem;font-weight:800}.score-total{color:var(--text-color,#334155);opacity:.6;font-size:1.4rem;font-weight:600}.score-percentage{color:var(--primary,#4a6b4f);margin-top:4px;font-size:1rem;font-weight:600}.question-breakdown-list{text-align:left;flex-direction:column;gap:10px;width:100%;display:flex}.breakdown-title{color:var(--text-color,#334155);margin-bottom:4px;font-size:1rem;font-weight:600}.breakdown-item{background:#ffffff80;border:1px solid #00000012;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.breakdown-left{align-items:center;gap:10px;display:flex;overflow:hidden}.breakdown-index{color:var(--text-color,#334155);background:#0000000f;border-radius:6px;padding:3px 7px;font-size:.78rem;font-weight:700}.breakdown-qtext{color:var(--text-color,#334155);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.result-badge{white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:600;display:flex}.badge-success{color:var(--primary,#4a6b4f);background:#4a6b4f1f}.badge-danger{color:#dc2626;background:#dc26261a}.summary-actions-footer{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.enrollment-editor{flex-direction:column;gap:12px;display:flex}.enrollment-muted{color:var(--text-muted);font-size:.9rem}.enrollment-error{color:var(--danger);font-size:.9rem}.enrollment-syllabus{border:1px solid var(--border-color);background:color-mix(in srgb, var(--text-color) 3%, transparent);border-radius:14px;padding:12px 14px;transition:border-color .2s,background .2s}.enrollment-syllabus.selected{border-color:color-mix(in srgb, var(--primary) 45%, transparent);background:color-mix(in srgb, var(--primary) 8%, transparent)}.enrollment-syllabus-header{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.enrollment-syllabus-header input{accent-color:var(--primary);margin-top:4px}.enrollment-syllabus-name{color:var(--text-color);font-size:.98rem;font-weight:600}.enrollment-tags{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.enrollment-tag{opacity:.85;background:#0000000f;border-radius:999px;padding:2px 8px;font-size:.72rem}.enrollment-subjects{flex-direction:column;gap:12px;margin-top:12px;padding-left:28px;display:flex}.enrollment-group-label{text-transform:uppercase;letter-spacing:.04em;opacity:.55;margin-bottom:6px;font-size:.75rem;display:block}.enrollment-chip-row{flex-wrap:wrap;gap:6px;display:flex}.enrollment-chip{background:#0000000d;border-radius:999px;padding:4px 10px;font-size:.82rem}.enrollment-chip.locked{opacity:.85}.enrollment-optional-list{flex-direction:column;gap:6px;display:flex}.enrollment-optional-item{cursor:pointer;align-items:center;gap:8px;font-size:.9rem;display:flex}.enrollment-optional-item input{accent-color:var(--primary)}.change-contact-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20000;background-color:#000000a6;justify-content:center;align-items:center;padding:16px;animation:.2s cubic-bezier(.16,1,.3,1) modalFadeIn;display:flex;position:fixed;inset:0}.change-contact-modal{background:var(--card-bg,#fff);width:100%;max-width:520px;box-shadow:0 20px 50px -10px #00000040, 0 0 0 1px var(--border-color,#00000014);border-radius:20px;flex-direction:column;animation:.25s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex;overflow:hidden}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.change-contact-header{border-bottom:1px solid var(--border-color,#00000014);justify-content:space-between;align-items:flex-start;padding:20px 24px;display:flex}.modal-title-group{align-items:center;gap:14px;display:flex}.modal-badge-icon{width:42px;height:42px;color:var(--primary-color,#2f6b56);background:#2f6b561f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal-title{color:var(--text-primary,#1e2e25);margin:0;font-size:1.15rem;font-weight:700}.modal-subtitle{color:var(--text-secondary,#607367);margin:3px 0 0;font-size:.82rem;line-height:1.35}.modal-close-btn{cursor:pointer;color:var(--text-secondary,#8a9c90);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:background-color .15s,color .15s;display:flex}.modal-close-btn:hover{background-color:var(--hover-bg,#0000000d);color:var(--text-primary,#1e2e25)}.change-contact-body{flex-direction:column;gap:18px;padding:24px;display:flex}.modal-instruction-text{color:var(--text-secondary,#495e52);margin:0 0 16px;font-size:.92rem;line-height:1.45}.modal-alert{border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:.88rem;line-height:1.4;display:flex}.modal-alert-error{color:#991b1b;background-color:#fee2e2;border:1px solid #fecaca}[data-theme=midnight] .modal-alert-error{color:#fca5a5;background-color:#ef444433;border-color:#ef44444d}.modal-alert-info{color:var(--primary-color,#2f6b56);background-color:#2f6b561a;border:1px solid #2f6b5633}.identity-options-grid{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.identity-option-card{border:1.5px solid var(--border-color,#0000001a);background:var(--input-bg,#fcfdfc);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:14px;width:100%;padding:14px 16px;transition:all .2s;display:flex}.identity-option-card:hover{border-color:var(--primary-color,#2f6b56);background:#2f6b560a}.identity-option-card.selected{border-color:var(--primary-color,#2f6b56);background:#2f6b5614}.option-icon-box{width:38px;height:38px;color:var(--primary-color,#2f6b56);background:#2f6b561f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.option-text-box{flex-direction:column;flex:1;display:flex}.option-label{color:var(--text-secondary,#607367);font-size:.8rem;font-weight:500}.option-value{color:var(--text-primary,#1e2e25);margin-top:2px;font-size:.95rem;font-weight:600}.option-radio-dot{border:2px solid var(--border-color,#cbd5e1);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .2s;display:flex}.identity-option-card.selected .option-radio-dot{border-color:var(--primary-color,#2f6b56);background:var(--primary-color,#2f6b56);box-shadow:inset 0 0 0 3px #fff}.modal-input-group{margin:12px 0 16px}.phone-input-wrapper{border:1.5px solid var(--border-color,#00000026);background:var(--input-bg,#fff);border-radius:12px;align-items:center;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.phone-input-wrapper:focus-within{border-color:var(--primary-color,#2f6b56);box-shadow:0 0 0 3px #2f6b5626}.country-code-pill{color:var(--text-primary,#1e2e25);border-right:1px solid var(--border-color,#0000001a);background:#0000000a;padding:12px 14px;font-size:.95rem;font-weight:600}.modal-text-input{border:1.5px solid var(--border-color,#00000026);background:var(--input-bg,#fff);width:100%;color:var(--text-primary,#1e2e25);border-radius:12px;padding:12px 16px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.phone-field{box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.modal-text-input:focus{border-color:var(--primary-color,#2f6b56);outline:none;box-shadow:0 0 0 3px #2f6b5626}.modal-otp-input{letter-spacing:8px;text-align:center;border:2px dashed var(--primary-color,#2f6b56);width:100%;color:var(--primary-color,#2f6b56);background:#2f6b560a;border-radius:12px;padding:14px 16px;font-family:monospace;font-size:1.5rem;font-weight:700}.modal-otp-input:focus{background:#2f6b5614;outline:none;box-shadow:0 0 0 4px #2f6b5626}.modal-resend-row{justify-content:space-between;align-items:center;margin-top:8px;margin-bottom:20px;font-size:.85rem;display:flex}.cooldown-text{color:var(--text-secondary,#607367)}.modal-text-btn{color:var(--primary-color,#2f6b56);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-weight:600;display:inline-flex}.modal-text-btn:hover:not(:disabled){text-decoration:underline}.modal-text-btn:disabled{opacity:.5;cursor:not-allowed}.modal-action-row{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.modal-action-row.center{justify-content:center}.modal-btn-primary{cursor:pointer;background-color:var(--primary-color,#2f6b56);color:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 22px;font-size:.95rem;font-weight:600;transition:all .15s;display:inline-flex}.modal-btn-primary:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.modal-btn-primary:disabled{opacity:.55;cursor:not-allowed}.modal-btn-secondary{border:1px solid var(--border-color,#0000001f);background:var(--card-bg,#fff);color:var(--text-primary,#1e2e25);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:.95rem;font-weight:600;transition:background-color .15s;display:inline-flex}.modal-btn-secondary:hover:not(:disabled){background-color:var(--hover-bg,#0000000d)}.modal-success-section{text-align:center;flex-direction:column;align-items:center;padding:20px 10px;display:flex}.success-icon-badge{color:#10b981;margin-bottom:16px;animation:.4s pulseSuccess}@keyframes pulseSuccess{0%{opacity:0;transform:scale(.7)}60%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}.success-heading{color:var(--text-primary,#1e2e25);margin:0;font-size:1.25rem;font-weight:700}.success-subheading{color:var(--text-secondary,#607367);max-width:360px;margin:8px 0 24px;font-size:.9rem}.settings-page-container{flex-direction:column;gap:16px;width:100%;max-width:540px;margin:0 auto;display:flex}.settings-header-card{padding:16px 20px}.settings-title-wrapper{align-items:center;gap:12px;display:flex}.settings-icon-badge{background:color-mix(in srgb, var(--primary) 12%, transparent);width:38px;height:38px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-title{color:var(--text-color);letter-spacing:-.01em;margin-bottom:2px;font-size:1.15rem;font-weight:600}.settings-subtitle{color:var(--text-muted);font-size:.8rem}.settings-section-title{color:var(--text-color);align-items:center;gap:8px;margin-bottom:14px;font-size:1rem;font-weight:600;display:flex}.theme-options-list{flex-direction:column;gap:10px;display:flex}.theme-option-item{cursor:pointer;background:color-mix(in srgb, var(--text-color) 4%, transparent);color:var(--text-color);border:1px solid #0000;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;font-size:.92rem;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:flex}.theme-option-item:hover{background:color-mix(in srgb, var(--text-color) 7%, transparent)}.theme-option-item.active{background:var(--primary);color:var(--on-primary)}.theme-swatch{border:1px solid color-mix(in srgb, var(--text-color) 14%, transparent);border-radius:50%;flex-shrink:0;width:22px;height:22px}.theme-option-item.active .theme-swatch{border-color:color-mix(in srgb, var(--on-primary) 40%, transparent)}.theme-swatch-dawn{background:linear-gradient(135deg,#f6d7a4 48%,#c4985a 52%)}.theme-swatch-dusk{background:linear-gradient(135deg,#f4f1f8 48%,#2557a0 52%)}.theme-swatch-midnight{background:linear-gradient(135deg,#0a1628 48%,#3ecfbf 52%)}.theme-swatch-mountain{background:linear-gradient(135deg,#f3d6bc 48%,#6a7a54 52%)}.settings-section-hint{color:var(--text-muted);margin:-6px 0 14px;font-size:.82rem;line-height:1.4}.settings-error{color:var(--danger);margin-top:12px;font-size:.85rem}.settings-success{color:var(--success);margin-top:12px;font-size:.85rem}.settings-save-btn{background:var(--primary);width:100%;color:var(--on-primary);cursor:pointer;border:none;border-radius:12px;margin-top:14px;padding:11px 14px;font-size:.92rem;font-weight:600}.settings-save-btn:disabled{opacity:.5;cursor:not-allowed}.settings-success-banner{color:#059669;background-color:#10b9811f;border:1px solid #10b98140;border-radius:12px;align-items:center;gap:10px;padding:12px 16px;font-size:.9rem;font-weight:500;animation:.25s modalFadeIn;display:flex}[data-theme=midnight] .settings-success-banner{color:#34d399;background-color:#10b98133}.settings-account-summary{background:color-mix(in srgb, var(--text-color) 3%, transparent);border:1px solid color-mix(in srgb, var(--text-color) 8%, transparent);border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;padding:14px 16px;display:grid}.account-detail-row{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.account-detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:500}.account-detail-val{color:var(--text-color);word-break:break-all;font-size:.92rem;font-weight:600}.settings-contact-list{flex-direction:column;gap:10px;display:flex}.settings-contact-item{border:1px solid color-mix(in srgb, var(--text-color) 10%, transparent);background:color-mix(in srgb, var(--text-color) 2%, transparent);border-radius:14px;align-items:center;gap:14px;padding:12px 16px;transition:border-color .2s,background-color .2s;display:flex}.settings-contact-item:hover{border-color:color-mix(in srgb, var(--primary) 30%, transparent);background:color-mix(in srgb, var(--primary) 3%, transparent)}.contact-item-icon{background:color-mix(in srgb, var(--primary) 12%, transparent);width:36px;height:36px;color:var(--primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-item-info{flex-direction:column;flex:1;min-width:0;display:flex}.contact-item-label{color:var(--text-muted);font-size:.78rem;font-weight:500}.contact-item-value{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.contact-item-action-btn{border:1px solid color-mix(in srgb, var(--text-color) 14%, transparent);background:var(--card-bg,#fff);color:var(--text-color);cursor:pointer;border-radius:9px;flex-shrink:0;align-items:center;gap:6px;padding:7px 12px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.contact-item-action-btn:hover{background-color:var(--primary);color:var(--on-primary);border-color:var(--primary);transform:translateY(-1px)}.records-container{flex-direction:column;gap:20px;width:100%;max-width:680px;margin:0 auto;display:flex}.records-header-card,.records-section{padding:16px 20px}.records-section{scroll-margin-top:12px}.records-title-wrapper{align-items:center;gap:12px;display:flex}.records-icon-badge{background:color-mix(in srgb, var(--primary) 12%, transparent);width:38px;height:38px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.records-title{color:var(--text-color);letter-spacing:-.01em;margin-bottom:2px;font-size:1.15rem;font-weight:600}.records-subtitle{color:var(--text-muted);font-size:.8rem}.records-chart-wrap{width:100%;min-height:260px;color:var(--text-color);opacity:.9;margin-top:12px}.records-empty{text-align:center;opacity:.65;justify-content:center;align-items:center;gap:8px;padding:36px 12px;font-size:.85rem;display:flex}.records-error{color:var(--danger);opacity:.9}.records-totals{flex-wrap:wrap;gap:8px;margin-top:8px;padding-top:4px;display:flex}.records-total-pill{background:color-mix(in srgb, var(--text-color) 6%, transparent);color:var(--text-color);opacity:.85;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;font-size:.78rem;font-weight:550;display:inline-flex}.records-total-grand{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary-ink);opacity:1}.records-total-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.journal-today{flex-direction:column;gap:12px;margin-top:16px;display:flex}.journal-today-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.journal-day-label{color:var(--text-color);opacity:.85;font-size:.9rem;font-weight:600}.journal-saved-hint{opacity:.55;font-size:.75rem}.journal-saved-banner{background:color-mix(in srgb, var(--success) 14%, transparent);border:1px solid color-mix(in srgb, var(--success) 28%, transparent);color:var(--success);border-radius:12px;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;font-size:.9rem;font-weight:650;display:flex}.journal-form{flex-direction:column;gap:12px;display:flex}.journal-block{background:color-mix(in srgb, var(--text-color) 4%, transparent);border:1px solid color-mix(in srgb, var(--text-color) 8%, transparent);border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.journal-block-header{color:var(--text-color);align-items:center;gap:8px;font-size:.88rem;font-weight:650;display:flex}.journal-block-header svg{color:var(--primary-ink);opacity:.85;flex-shrink:0}.journal-prompt{color:var(--text-color);opacity:.88;margin:0;font-size:.86rem;font-weight:600}.journal-focus-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.journal-focus-value{color:var(--primary-ink);white-space:nowrap;font-size:.82rem;font-weight:650}.journal-focus-slider{appearance:none;background:linear-gradient(to right, color-mix(in srgb, var(--primary-soft) 85%, #fff) 0%, color-mix(in srgb, var(--primary-soft) 85%, #fff) var(--focus-pct,44%), color-mix(in srgb, var(--text-color) 14%, transparent) var(--focus-pct,44%), color-mix(in srgb, var(--text-color) 14%, transparent) 100%);cursor:pointer;border-radius:999px;outline:none;width:100%;height:8px}.journal-focus-slider::-webkit-slider-thumb{appearance:none;background:color-mix(in srgb, var(--primary-soft) 70%, #fff);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 5px #1f6b5447}.journal-focus-slider::-moz-range-thumb{background:color-mix(in srgb, var(--primary-soft) 70%, #fff);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 5px #1f6b5447}.journal-focus-slider::-moz-range-track{background:0 0;border-radius:999px;height:8px}.journal-focus-scale{opacity:.55;justify-content:space-between;gap:12px;font-size:.72rem;display:flex}.journal-mood-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.journal-mood-btn{border:1.5px solid color-mix(in srgb, var(--text-color) 12%, transparent);background:color-mix(in srgb, var(--card-bg,#fff) 70%, transparent);min-height:72px;color:var(--text-color);cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.journal-mood-btn:hover{border-color:color-mix(in srgb, var(--primary-soft) 55%, transparent)}.journal-mood-btn.selected{border-color:var(--primary-ink);background:color-mix(in srgb, var(--primary-soft) 22%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-soft) 28%, transparent)}.journal-mood-emoji{font-size:1.35rem;line-height:1}.journal-mood-label{opacity:.8;font-size:.7rem;font-weight:600}.journal-field{flex-direction:column;gap:6px;display:flex}.journal-textarea{resize:vertical;border:1px solid color-mix(in srgb, var(--text-color) 12%, transparent);background:color-mix(in srgb, var(--card-bg,#fff) 70%, transparent);width:100%;min-height:76px;color:var(--text-color);border-radius:14px;padding:12px 14px;font-family:inherit;font-size:.9rem;line-height:1.45}.journal-textarea:focus{border-color:color-mix(in srgb, var(--primary) 45%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent);outline:none}.journal-actions{flex-wrap:wrap;gap:8px;display:flex}.journal-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:.82rem;font-weight:550;display:inline-flex}.journal-btn:disabled{opacity:.45;cursor:not-allowed}.journal-btn-primary{background:var(--primary);color:var(--on-primary)}.journal-btn-danger{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.journal-history{border-top:1px solid color-mix(in srgb, var(--text-color) 8%, transparent);margin-top:22px;padding-top:16px}.journal-history-title{color:var(--text-color);opacity:.8;margin-bottom:10px;font-size:.88rem;font-weight:600}.journal-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.journal-item{background:color-mix(in srgb, var(--text-color) 4%, transparent);border-radius:14px;padding:12px 14px}.journal-item-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.journal-item-date{opacity:.75;font-size:.8rem;font-weight:600}.journal-item-actions{align-items:center;gap:4px;display:flex}.journal-icon-btn{min-width:28px;height:28px;color:var(--text-color);opacity:.55;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-family:inherit;font-size:.75rem;display:inline-flex}.journal-icon-btn:hover{opacity:.95;background:color-mix(in srgb, var(--text-color) 8%, transparent)}.journal-icon-danger:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.journal-item-content{color:var(--text-color);opacity:.85;white-space:pre-wrap;margin:0;font-size:.88rem;line-height:1.45}.journal-item-body{flex-direction:column;gap:10px;display:flex}.journal-item-chips{flex-wrap:wrap;gap:6px;display:flex}.journal-chip{background:color-mix(in srgb, var(--primary-soft) 22%, transparent);color:var(--primary-ink);border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:650;display:inline-flex}.journal-item-field{flex-direction:column;gap:2px;display:flex}.journal-item-field-label{opacity:.55;font-size:.72rem;font-weight:650}.journal-item-field p{color:var(--text-color);opacity:.85;white-space:pre-wrap;margin:0;font-size:.88rem;line-height:1.45}@media (width<=560px){.records-header-card,.records-section{padding:14px 16px}.journal-today-header{flex-direction:column;align-items:flex-start;gap:4px}.journal-mood-row{gap:6px}.journal-mood-btn{min-height:64px;padding:6px 2px}.journal-mood-emoji{font-size:1.15rem}.journal-mood-label{font-size:.62rem}}.login-page{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:calc(100dvh - 120px);padding:24px 16px;display:flex}.login-card{border:1px solid var(--border-color,#00000014);background:var(--card-bg,#fff);-webkit-backdrop-filter:blur(16px);box-sizing:border-box;border-radius:28px;width:100%;max-width:440px;padding:36px 32px;animation:.3s ease-out fadeInCard;box-shadow:0 12px 40px #00000014}@keyframes fadeInCard{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:22px}.login-welcome-title{font-family:var(--font-ui,sans-serif);color:var(--text-color,#2c241c);letter-spacing:-.01em;margin-bottom:8px;font-size:1.35rem;font-weight:500}.login-brand-row{justify-content:center;align-items:center;gap:12px;margin-bottom:12px;display:flex}.login-brand-logo{object-fit:contain;width:auto;max-width:140px;height:44px;display:block}.login-brand-name{font-family:var(--font-brand,Georgia, serif);color:var(--text-color,#2c241c);letter-spacing:0;text-transform:lowercase;margin:0;font-size:2.1rem;font-weight:400;line-height:1}.login-subtitle{color:var(--text-muted,#6b5e52);margin:0;font-size:.88rem;line-height:1.4}.student-channel-switcher{background:color-mix(in srgb, var(--text-color) 4%, transparent);border:1px solid var(--border-color,#00000014);box-sizing:border-box;border-radius:12px;gap:4px;margin-bottom:18px;padding:4px;display:flex}.channel-pill{color:var(--text-muted,#6b5e52);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:.86rem;font-weight:600;transition:all .2s;display:flex}.channel-pill:hover{color:var(--text-color,#2c241c)}.channel-pill.active{background:var(--card-bg,#fff);color:var(--primary,#2f6b56);box-shadow:0 2px 8px #0000000f}.error-banner{color:#dc2626;word-break:break-word;background-color:#dc262614;border:1px solid #dc262633;border-radius:14px;margin-bottom:16px;padding:12px 14px;font-size:.86rem;line-height:1.4;animation:.2s fadeInCard}.info-banner{color:var(--primary,#2f6b56);word-break:break-word;background-color:#2f6b5614;border:1px solid #2f6b5633;border-radius:14px;margin-bottom:16px;padding:10px 14px;font-size:.84rem;animation:.2s fadeInCard}.login-form{box-sizing:border-box;flex-direction:column;gap:16px;width:100%;display:flex}.form-group{text-align:left;box-sizing:border-box;flex-direction:column;gap:6px;width:100%;display:flex}.form-group label{color:var(--text-color,#2c241c);opacity:.9;font-size:.86rem;font-weight:600}.form-hint{color:var(--text-muted,#6b5e52);margin-top:2px;font-size:.78rem;line-height:1.35}.form-group input{border:1.5px solid var(--border-color,#0000001f);background:var(--card-bg,#fff);box-sizing:border-box;border-radius:14px;outline:none;width:100%;padding:12px 14px;font-size:.96rem;transition:all .2s;color:var(--text-color,#2c241c)!important}.form-group input::placeholder{font-weight:400;color:var(--text-muted,#6b5e52)!important;-webkit-text-fill-color:#6b5e5273!important;opacity:.45!important}.form-group input:focus{border-color:var(--primary,#2f6b56);box-shadow:0 0 0 3px #2f6b5629}.phone-input-row{box-sizing:border-box;align-items:center;gap:8px;width:100%;display:flex}.country-code-select{border:1.5px solid var(--border-color,#0000001f);background:var(--card-bg,#fff);width:78px;color:var(--text-color,#2c241c);-webkit-text-fill-color:var(--text-color,#2c241c);cursor:pointer;box-sizing:border-box;border-radius:14px;outline:none;flex-shrink:0;padding:12px 6px 12px 10px;font-size:.92rem;font-weight:600;transition:all .2s}.country-code-select:focus{border-color:var(--primary,#2f6b56)}.phone-input-row input{box-sizing:border-box;flex:1 1 0;width:100%;min-width:0}.otp-sent-banner{box-sizing:border-box;background:#2f6b5614;border:1px solid #2f6b562e;border-radius:14px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:10px 14px;display:flex}.otp-sent-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.otp-sent-label{color:var(--text-muted,#6b5e52);font-size:.75rem}.otp-sent-number{color:var(--primary,#2f6b56);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.change-number-btn{color:var(--primary,#2f6b56);cursor:pointer;background:0 0;border:1px solid #2f6b5640;border-radius:8px;flex-shrink:0;align-items:center;gap:4px;padding:6px 10px;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.change-number-btn:hover{background:#2f6b561f}.otp-input-container{cursor:text;box-sizing:border-box;width:100%;margin:10px 0 6px;position:relative}.otp-hidden-native-input{opacity:0;z-index:5;cursor:text;color:#0000;caret-color:#0000;background:0 0;border:none;outline:none;width:100%;height:100%;font-size:16px;position:absolute;top:0;left:0}.otp-visual-groups{box-sizing:border-box;pointer-events:none;justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.otp-group{flex:1 1 0;justify-content:center;align-items:center;gap:6px;max-width:190px;display:flex}.otp-group-separator{color:var(--primary,#2f6b56);opacity:.6;-webkit-user-select:none;user-select:none;padding:0 2px;font-size:1.2rem;font-weight:700}.otp-slot{background:var(--card-bg,#fff);border:1.5px solid var(--border-color,#00000029);min-width:0;max-width:44px;height:52px;color:var(--text-color,#2c241c);-webkit-text-fill-color:var(--text-color,#2c241c);box-sizing:border-box;-webkit-user-select:none;user-select:none;border-radius:12px;flex:1 1 0;justify-content:center;align-items:center;font-size:1.45rem;font-weight:700;transition:all .15s;display:flex;box-shadow:0 1px 3px #0000000a}.otp-slot.filled{color:var(--primary,#2f6b56);-webkit-text-fill-color:var(--primary,#2f6b56);background:#2f6b560a;border-color:#2f6b5680}.otp-slot.active{border-color:var(--primary,#2f6b56);background:var(--card-bg,#fff);transform:translateY(-2px);box-shadow:0 0 0 3px #2f6b5638}.otp-blinking-cursor{background-color:var(--primary,#2f6b56);border-radius:1px;width:2px;height:24px;animation:1s infinite otpCursorBlink;display:inline-block}@keyframes otpCursorBlink{0%,to{opacity:1}50%{opacity:0}}.login-submit-button{background:var(--primary,#2f6b56);width:100%;color:var(--on-primary,#fff);cursor:pointer;box-sizing:border-box;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:14px;font-size:.98rem;font-weight:600;transition:background .2s,transform .1s,box-shadow .2s;display:flex;box-shadow:0 4px 14px #2f6b5647}.login-submit-button:hover:not(:disabled){background:var(--primary-ink,#265545);transform:translateY(-1px);box-shadow:0 6px 18px #2f6b5659}.login-submit-button:active:not(:disabled){transform:translateY(0)}.login-submit-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.otp-resend-row{justify-content:center;align-items:center;margin-top:4px;display:flex}.resend-countdown{color:var(--text-muted,#6b5e52);font-size:.84rem}.resend-button{color:var(--primary,#2f6b56);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:.86rem;font-weight:600;transition:background .2s;display:inline-flex}.resend-button:hover{background:#2f6b5614}.admin-login-link-row{justify-content:center;align-items:center;margin-top:6px;padding-top:8px;display:flex}.admin-link-btn{color:var(--text-muted,#6b5e52);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:500;transition:all .2s;display:inline-flex}.admin-link-btn:hover{color:var(--primary,#2f6b56);background:#2f6b5614}.login-contact-footer{box-sizing:border-box;flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:18px;display:flex}.login-contact-divider{text-align:center;width:100%;color:var(--text-muted,#6b5e52);opacity:.7;letter-spacing:.03em;align-items:center;font-size:.78rem;display:flex}.login-contact-divider:before,.login-contact-divider:after{content:"";border-bottom:1px solid var(--border-color,#0000001a);flex:1}.login-contact-divider span{padding:0 10px}.login-contact-button{background:color-mix(in srgb, #22c55e 10%, var(--card-bg,#fff));color:#15803d;box-sizing:border-box;border:1px solid #22c55e4d;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:11px 16px;font-size:.88rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #22c55e14}.login-contact-button:hover{background:color-mix(in srgb, #22c55e 18%, var(--card-bg,#fff));color:#166534;border-color:#22c55e;transform:translateY(-1px)}.login-modal-overlay{z-index:50;-webkit-backdrop-filter:blur(4px);box-sizing:border-box;background:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.2s fadeInCard;display:flex;position:fixed;inset:0}.login-modal{text-align:center;background:var(--card-bg,#fff);border:1px solid var(--border-color,#00000014);box-sizing:border-box;border-radius:22px;width:100%;max-width:400px;padding:24px 20px;animation:.25s ease-out fadeInCard;box-shadow:0 18px 48px #00000038}.login-modal-icon{color:#dc2626;background:#dc26261a;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;display:inline-flex}.login-modal-title{color:var(--text-color,#2c241c);margin:0 0 8px;font-size:1.1rem;font-weight:700}.login-modal-text{color:var(--text-color,#2c241c);opacity:.85;margin:0 0 8px;font-size:.88rem;line-height:1.45}.login-modal-text strong{word-break:break-all;color:#dc2626;max-width:100%;display:inline-block}.login-modal-hint{color:var(--text-muted,#6b5e52);margin:0 0 18px;font-size:.8rem;line-height:1.4}.login-modal-actions{flex-direction:column;gap:8px;display:flex}.login-modal-primary,.login-modal-secondary{cursor:pointer;box-sizing:border-box;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;font-size:.9rem;font-weight:600;transition:background .2s,transform .1s;display:flex}.login-modal-primary{background:var(--primary,#2f6b56);color:#fff;border:none}.login-modal-secondary{color:var(--primary,#2f6b56);background:0 0;border:1px solid #2f6b5647}@media (width<=480px){.login-page{align-items:flex-start;min-height:auto;padding:12px 12px 24px}.login-card{border-radius:20px;padding:22px 16px;box-shadow:0 6px 24px #0000000f}.login-header{margin-bottom:16px}.login-welcome-title{margin-bottom:6px;font-size:1.15rem}.login-brand-row{gap:8px;margin-bottom:8px}.login-brand-logo{height:36px}.login-brand-name{font-size:1.75rem}.login-subtitle{font-size:.82rem}.student-channel-switcher{margin-bottom:14px}.channel-pill{padding:7px 8px;font-size:.8rem}.form-group input{padding:11px 12px;font-size:.92rem}.phone-input-row{gap:6px}.country-code-select{width:72px;padding:11px 4px 11px 8px;font-size:.88rem}.otp-visual-groups{gap:6px}.otp-group{gap:4px}.otp-slot{border-radius:10px;height:48px;font-size:1.3rem}.login-submit-button{padding:12px;font-size:.92rem}.login-contact-footer{margin-top:14px}.login-contact-button{padding:10px 14px;font-size:.84rem}}@media (width<=360px){.login-card{padding:18px 12px}.country-code-select{width:66px;font-size:.82rem}.otp-visual-groups{gap:4px}.otp-group{gap:3px}.otp-slot{border-radius:8px;height:42px;font-size:1.15rem}}.onboarding-page{justify-content:center;align-items:center;min-height:70vh;padding:24px 16px;display:flex}.onboarding-card{flex-direction:column;gap:20px;width:100%;max-width:560px;padding:28px 24px;display:flex}.onboarding-header{text-align:center}.onboarding-icon{width:52px;height:52px;color:var(--primary,#4a6b4f);background:#4a6b4f1f;border-radius:16px;justify-content:center;align-items:center;margin:0 auto 12px;display:flex}.onboarding-header h1{color:var(--text-color);margin-bottom:8px;font-size:1.45rem;font-weight:650}.onboarding-header p{opacity:.7;max-width:420px;margin:0 auto;font-size:.92rem;line-height:1.45}.onboarding-error{color:#b42318;text-align:center;font-size:.88rem}.onboarding-continue{background:var(--primary,#4a6b4f);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 16px;font-size:.95rem;font-weight:600;transition:opacity .2s;display:flex}.onboarding-continue:disabled{opacity:.5;cursor:not-allowed}.sdu-backdrop{-webkit-backdrop-filter:blur(8px);z-index:999999;box-sizing:border-box;background-color:#000000ad;justify-content:center;align-items:center;width:100vw;height:100vh;padding:20px;animation:.22s cubic-bezier(.16,1,.3,1) sduFadeIn;display:flex;position:fixed;inset:0;overflow:hidden}.sdu-modal{background:var(--card-bg,#fff);width:100%;max-width:680px;height:min(90vh,820px);max-height:min(90vh,820px);box-shadow:0 25px 60px -15px #00000080, 0 0 0 1px var(--border-color,#ffffff26);z-index:1000000;border-radius:24px;flex-direction:column;margin:auto;animation:.28s cubic-bezier(.16,1,.3,1) sduScaleUp;display:flex;position:relative;overflow:hidden}@keyframes sduFadeIn{0%{opacity:0}to{opacity:1}}@keyframes sduScaleUp{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.sdu-header{border-bottom:1px solid var(--border-color,#00000014);background:var(--card-bg,#fff);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.sdu-header-left{align-items:center;gap:12px;min-width:0;display:flex}.sdu-header-icon-box{background:color-mix(in srgb, var(--primary,#1f6b54) 12%, transparent);width:40px;height:40px;color:var(--primary,#1f6b54);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sdu-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sdu-student-name{color:var(--text-color,#1a1a1a);letter-spacing:-.2px;margin:0;font-size:1.15rem;font-weight:700}.sdu-roll-badge{background:var(--bg-hover,#0000000f);color:var(--text-color,#333);border:1px solid var(--border-color,#00000014);border-radius:6px;padding:2px 7px;font-family:monospace;font-size:.72rem;font-weight:700}.sdu-group-badge{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent);color:var(--primary,#1f6b54);border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:600}.sdu-subtitle{color:var(--text-muted,#71717a);margin:2px 0 0;font-size:.78rem}.sdu-header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.sdu-date-picker-wrap{background:var(--bg-hover,#0000000a);border:1px solid var(--border-color,#00000014);border-radius:12px;align-items:center;gap:4px;padding:3px 6px;display:inline-flex}.sdu-nav-arrow-btn{color:var(--text-muted,#71717a);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;transition:all .15s;display:flex}.sdu-nav-arrow-btn:hover:not(:disabled){background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);box-shadow:0 1px 3px #0000001a}.sdu-nav-arrow-btn:disabled{opacity:.3;cursor:not-allowed}.sdu-quick-dates{gap:3px;display:flex}.sdu-quick-date-btn{color:var(--text-muted,#71717a);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:600;transition:all .15s}.sdu-quick-date-btn:hover{color:var(--text-color,#1a1a1a)}.sdu-quick-date-btn.active{background:var(--card-bg,#fff);color:var(--primary,#1f6b54);box-shadow:0 1px 3px #0000001f}.sdu-native-date-input{border:1px solid var(--border-color,#0000001f);background:var(--card-bg,#fff);color:var(--text-color,#1a1a1a);cursor:pointer;border-radius:6px;outline:none;padding:2px 6px;font-family:inherit;font-size:.75rem}.sdu-close-btn{color:var(--text-muted,#71717a);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:7px;transition:all .18s;display:flex}.sdu-close-btn:hover{background:var(--bg-hover,#00000012);color:var(--text-color,#1a1a1a)}.sdu-body{flex-direction:column;flex:1;gap:16px;padding:18px 20px;display:flex;overflow-y:auto}.sdu-loading-state{color:var(--text-muted,#71717a);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;font-size:.88rem;display:flex}.sdu-spinner{border:3px solid color-mix(in srgb, var(--primary,#1f6b54) 20%, transparent);border-top-color:var(--primary,#1f6b54);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite sduSpin}@keyframes sduSpin{to{transform:rotate(360deg)}}.sdu-error-card{background:color-mix(in srgb, #ef4444 8%, var(--card-bg));border:1px solid #ef444440;border-radius:14px;align-items:center;gap:12px;padding:16px;display:flex}.sdu-error-icon{color:#ef4444;flex-shrink:0}.sdu-error-text{flex:1;font-size:.85rem}.sdu-error-text strong{color:#ef4444;display:block}.sdu-error-text p{color:var(--text-muted,#71717a);margin:2px 0 0}.sdu-retry-btn{background:var(--card-bg,#fff);border:1px solid var(--border-color,#00000026);cursor:pointer;color:var(--text-color,#1a1a1a);border-radius:8px;padding:5px 12px;font-size:.8rem;font-weight:600}.sdu-summary-card{background:color-mix(in srgb, var(--primary,#1f6b54) 8%, var(--card-bg));border:1px solid color-mix(in srgb, var(--primary,#1f6b54) 22%, transparent);border-radius:16px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sdu-summary-stat{flex-direction:column;display:flex}.sdu-metric-label{color:var(--primary,#1f6b54);text-transform:uppercase;letter-spacing:.6px;font-size:.72rem;font-weight:700}.sdu-metric-value{color:var(--primary,#1f6b54);font-size:1.65rem;font-weight:800;line-height:1.15}.sdu-summary-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sdu-sessions-badge{color:var(--text-muted,#71717a);background:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001a);border-radius:999px;padding:4px 12px;font-size:.82rem;font-weight:600}.sdu-live-badge{color:#15803d;background:color-mix(in srgb, #22c55e 12%, var(--card-bg));border:1px solid #22c55e4d;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.sdu-live-pulse-dot{background-color:#22c55e;border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite sduPulse}@keyframes sduPulse{0%{opacity:.7;transform:scale(.9)}50%{opacity:1;transform:scale(1.3);box-shadow:0 0 6px #22c55e}to{opacity:.7;transform:scale(.9)}}.sdu-scale-container{border:1px solid var(--border-color,#0000001a);background:var(--card-bg,#fff);border-radius:18px;flex-direction:column;gap:10px;padding:16px;display:flex}.sdu-scale-title-row{justify-content:space-between;align-items:center;display:flex}.sdu-scale-title-box{align-items:center;gap:6px;display:flex}.sdu-scale-icon{color:var(--primary,#1f6b54)}.sdu-scale-title{color:var(--text-color,#1a1a1a);font-size:.85rem;font-weight:700}.sdu-scale-subtitle{color:var(--text-muted,#71717a);font-size:.72rem}.sdu-scale-ruler{height:18px;margin:0 4px;position:relative}.sdu-ruler-tick{flex-direction:column;align-items:center;display:flex;position:absolute;top:0;transform:translate(-50%)}.sdu-ruler-tick-label{color:var(--text-muted,#71717a);font-size:.65rem;font-weight:600}.sdu-scale-track{background:color-mix(in srgb, var(--text-color,#000) 6%, var(--card-bg));border-radius:10px;height:46px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #00000014}.sdu-empty-track-placeholder{height:100%;color:var(--text-muted,#71717a);justify-content:center;align-items:center;font-size:.82rem;font-style:italic;display:flex}.sdu-session-block{color:#fff;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:0 6px;font-size:.72rem;font-weight:700;transition:transform .15s,filter .15s,box-shadow .15s;display:flex;position:absolute;top:4px;bottom:4px;overflow:hidden;box-shadow:0 2px 6px #0003}.sdu-session-block:hover,.sdu-session-block.hovered{filter:brightness(1.15);z-index:10;transform:scaleY(1.15)translateY(-1px);box-shadow:0 4px 12px #00000059}.sdu-session-block.is-running{border:1.5px solid #22c55e;animation:2s ease-in-out infinite sduRunningBorder}@keyframes sduRunningBorder{0%{box-shadow:0 0 4px #22c55e66}50%{box-shadow:0 0 10px #22c55ee6}to{box-shadow:0 0 4px #22c55e66}}.sdu-block-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sdu-legend-grid{border-top:1px solid var(--border-color,#00000014);flex-wrap:wrap;gap:8px 14px;margin-top:4px;padding-top:8px;display:flex}.sdu-legend-item{align-items:center;gap:6px;font-size:.74rem;display:inline-flex}.sdu-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.sdu-legend-name{color:var(--text-color,#1a1a1a);font-weight:600}.sdu-legend-mins{color:var(--text-muted,#71717a)}.sdu-sessions-section{flex-direction:column;gap:10px;display:flex}.sdu-section-title-row{justify-content:space-between;align-items:baseline;display:flex}.sdu-section-title{color:var(--text-color,#1a1a1a);margin:0;font-size:.9rem;font-weight:700}.sdu-section-subtitle{color:var(--text-muted,#71717a);font-size:.72rem}.sdu-no-sessions-card{text-align:center;background:var(--bg-hover,#00000005);border:1px dashed var(--border-color,#00000026);border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:36px 20px;display:flex}.sdu-empty-icon{color:var(--text-muted,#71717a);opacity:.5;margin-bottom:4px}.sdu-no-sessions-card h5{color:var(--text-color,#1a1a1a);margin:0;font-size:.92rem;font-weight:700}.sdu-no-sessions-card p{color:var(--text-muted,#71717a);margin:0;font-size:.8rem}.sdu-sessions-list{flex-direction:column;gap:8px;display:flex}.sdu-session-card{background:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001a);border-radius:12px;align-items:stretch;transition:all .18s;display:flex;overflow:hidden}.sdu-session-card:hover,.sdu-session-card.hovered{border-color:var(--primary,#1f6b54);transform:translateY(-1px);box-shadow:0 4px 14px #00000014}.sdu-session-card.is-running-card{background:color-mix(in srgb, #22c55e 3%, var(--card-bg));border-color:#22c55e}.sdu-card-color-strip{flex-shrink:0;width:6px}.sdu-card-body{flex-direction:column;flex:1;gap:5px;min-width:0;padding:10px 14px;display:flex}.sdu-card-top-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.sdu-card-topic{color:var(--text-color,#1a1a1a);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:700;overflow:hidden}.sdu-card-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.sdu-running-pill{background:color-mix(in srgb, #22c55e 14%, var(--card-bg));color:#15803d;border-radius:6px;align-items:center;gap:4px;padding:2px 7px;font-size:.7rem;font-weight:700;display:inline-flex}.sdu-card-duration{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent);color:var(--primary,#1f6b54);border-radius:6px;padding:2px 8px;font-size:.74rem;font-weight:700}.sdu-card-meta-row{color:var(--text-muted,#71717a);flex-wrap:wrap;align-items:center;gap:8px;font-size:.76rem;display:flex}.sdu-card-time{align-items:center;gap:4px;display:inline-flex}.sdu-card-subject-tag{background:var(--bg-hover,#0000000d);border:1px solid var(--border-color,#00000014);color:var(--text-color,#1a1a1a);border-radius:4px;padding:1px 7px;font-size:.72rem;font-weight:600}.sdu-card-reason-note{color:var(--text-muted,#555);background:color-mix(in srgb, var(--text-color,#000) 4%, var(--card-bg));border-radius:6px;align-self:flex-start;align-items:center;gap:5px;margin-top:2px;padding:3px 8px;font-size:.74rem;display:inline-flex}.sdu-reason-sparkle{color:var(--primary,#1f6b54);flex-shrink:0}.sdu-footer{border-top:1px solid var(--border-color,#00000014);background:var(--card-bg,#fff);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.sdu-footer-hint{color:var(--text-muted,#71717a);font-size:.72rem}.sdu-close-action-btn{background:var(--bg-hover,#0000000f);border:1px solid var(--border-color,#0000001f);color:var(--text-color,#1a1a1a);cursor:pointer;border-radius:10px;padding:6px 16px;font-size:.82rem;font-weight:600;transition:all .15s}.sdu-close-action-btn:hover{background:var(--bg-hover,#0000001a)}.admin-hours-btn{cursor:pointer;font-family:inherit;font-size:inherit;color:var(--text-color,inherit);background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:5px;margin:-3px -8px;padding:3px 8px;transition:all .15s;display:inline-flex}.admin-hours-btn:hover{background:color-mix(in srgb, var(--primary,#1f6b54) 10%, transparent);border-color:color-mix(in srgb, var(--primary,#1f6b54) 25%, transparent);color:var(--primary,#1f6b54)}.admin-hours-icon{opacity:.5;transition:opacity .15s,transform .15s}.admin-hours-btn:hover .admin-hours-icon{opacity:1;transform:translateY(-1px)}.admin-hours-btn.features-pill-btn{background:0 0;border:none;margin:0;padding:0}.admin-hours-btn.features-pill-btn:hover{background:0 0;border:none}.admin-hours-btn.features-pill-btn:hover .admin-metric-pill{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}@media (width<=640px){.sdu-header{flex-direction:column;align-items:flex-start;gap:12px}.sdu-header-right{justify-content:space-between;width:100%}.sdu-date-picker-wrap{flex:1;justify-content:space-between}}.admin-topic-matching{flex-direction:column;gap:1.5rem;display:flex}.atm-nav-bar{border-bottom:1px solid var(--border-color,#ffffff1a);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.atm-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.atm-tab{border:1px solid var(--border-color,#ffffff1a);color:var(--text-secondary,#9ca3af);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.atm-tab:hover{background:var(--bg-hover,#ffffff0d);color:var(--text-primary,#f3f4f6)}.atm-tab.active{background:var(--primary-color,#4f46e5);color:#fff;border-color:var(--primary-color,#4f46e5)}.atm-badge{color:#fff;background:#ef4444;border-radius:9999px;justify-content:center;align-items:center;padding:.15rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.atm-badge.count{color:inherit;background:#fff3}.atm-btn-refresh{background:var(--bg-surface,#ffffff0d);border:1px solid var(--border-color,#ffffff1a);color:var(--text-secondary,#9ca3af);cursor:pointer;border-radius:6px;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.85rem;display:inline-flex}.atm-btn-refresh:hover:not(:disabled){color:var(--text-primary,#fff)}.atm-section{flex-direction:column;gap:1.25rem;display:flex}.atm-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.atm-section-header h3{color:var(--text-primary,#f9fafb);margin:0 0 .35rem;font-size:1.15rem;font-weight:600}.atm-section-header p{color:var(--text-secondary,#9ca3af);margin:0;font-size:.85rem}.atm-search-box{background:var(--bg-surface,#ffffff0d);border:1px solid var(--border-color,#ffffff1a);border-radius:8px;align-items:center;gap:.5rem;min-width:260px;padding:.45rem .8rem;display:flex}.atm-search-box input{color:var(--text-primary,#fff);background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.atm-table-wrapper{background:var(--bg-card,#111827b3);border:1px solid var(--border-color,#ffffff1a);border-radius:10px;overflow-x:auto}.atm-table{border-collapse:collapse;text-align:left;width:100%;font-size:.88rem}.atm-table th{color:var(--text-secondary,#9ca3af);border-bottom:1px solid var(--border-color,#ffffff1a);background:#0003;padding:.85rem 1rem;font-weight:600}.atm-table td{border-bottom:1px solid var(--border-color,#ffffff0d);vertical-align:middle;padding:.85rem 1rem}.atm-table tbody tr:hover{background:#ffffff05}.atm-subject-tag{color:#818cf8;background:#6366f126;border:1px solid #6366f14d;border-radius:4px;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.atm-subject-tag.db{color:#34d399;background:#10b98126;border-color:#10b9814d}.atm-event-context{color:var(--text-muted,#6b7280);margin-top:.25rem;font-size:.75rem}.atm-raw-topic{color:#f3f4f6;font-size:.92rem}.atm-matched-topic{align-items:center;gap:.35rem;display:flex}.atm-matched-topic .matched-name{color:#a7f3d0;font-weight:600}.atm-matched-topic .matched-subj{color:#9ca3af;font-size:.8rem}.atm-reasoning{color:#9ca3af;text-overflow:ellipsis;white-space:nowrap;max-width:280px;margin-top:.2rem;font-size:.75rem;overflow:hidden}.atm-confidence-badge{border-radius:4px;padding:.15rem .45rem;font-size:.78rem;font-weight:700;display:inline-block}.atm-confidence-badge.high{color:#10b981;background:#10b98133}.atm-confidence-badge.medium{color:#f59e0b;background:#f59e0b33}.atm-confidence-badge.low{color:#ef4444;background:#ef444433}.atm-row-actions{align-items:center;gap:.4rem;display:flex}.atm-btn-action{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.3rem;padding:.4rem .75rem;font-size:.8rem;font-weight:500;transition:all .15s;display:inline-flex}.atm-btn-action.confirm{color:#fff;background:#10b981}.atm-btn-action.confirm:hover{background:#059669}.atm-btn-action.edit{color:#e5e7eb;background:#ffffff14;border:1px solid #ffffff26}.atm-btn-action.edit:hover{background:#ffffff26}.atm-btn-action.reject{color:#ef4444;background:0 0;padding:.4rem}.atm-btn-action.reject:hover{background:#ef444426}.atm-empty-state{background:var(--bg-card,#11182780);border:1px dashed var(--border-color,#ffffff26);text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:3rem 1rem;display:flex}.atm-empty-state h4{color:#f3f4f6;margin:.5rem 0 0;font-size:1.05rem}.atm-empty-state p{color:#9ca3af;margin:0;font-size:.85rem}.atm-loading{color:#9ca3af;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:3rem;display:flex}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.atm-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.atm-modal{background:#1e1e2d;border:1px solid #ffffff26;border-radius:12px;width:100%;max-width:480px;overflow:hidden;box-shadow:0 20px 25px -5px #00000080}.atm-modal-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.atm-modal-header h4{color:#f9fafb;margin:0;font-size:1.05rem;font-weight:600}.atm-modal-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;font-size:1.1rem}.atm-modal-body{flex-direction:column;gap:1.1rem;padding:1.25rem;display:flex}.atm-modal-field{flex-direction:column;gap:.4rem;display:flex}.atm-modal-field label{color:#9ca3af;font-size:.8rem;font-weight:500}.atm-modal-highlight{color:#f3f4f6;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;padding:.6rem .85rem;font-size:.9rem}.atm-modal-field select{color:#fff;background:#111827;border:1px solid #ffffff26;border-radius:6px;outline:none;padding:.6rem .85rem;font-size:.88rem}.atm-modal-field select:focus{border-color:#6366f1}.atm-modal-footer{background:#0003;border-top:1px solid #ffffff1a;justify-content:flex-end;gap:.6rem;padding:1rem 1.25rem;display:flex}.atm-btn-cancel{color:#9ca3af;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:6px;padding:.5rem 1rem;font-size:.85rem}.atm-btn-save{color:#fff;cursor:pointer;background:#4f46e5;border:none;border-radius:6px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500}.atm-btn-save:hover:not(:disabled){background:#4338ca}.atm-btn-save:disabled{opacity:.5;cursor:not-allowed}.admin-testing-container{flex-direction:column;gap:24px;display:flex}.testing-card{background:var(--card-bg,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000d}.testing-card-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.testing-card-icon{background:var(--primary-light,#eff6ff);width:40px;height:40px;color:var(--primary-color,#2563eb);border-radius:10px;justify-content:center;align-items:center;display:flex}.testing-card-title{color:var(--text-primary,#0f172a);margin:0;font-size:1.15rem;font-weight:700}.testing-card-desc{color:var(--text-muted,#64748b);margin:2px 0 0;font-size:.85rem}.feature-toggle-grid{flex-direction:column;gap:14px;display:flex}.feature-toggle-row{background:var(--bg-surface,#f8fafc);border:1px solid var(--border-subtle,#e2e8f0);border-radius:10px;justify-content:space-between;align-items:center;padding:16px 20px;transition:border-color .15s;display:flex}.feature-toggle-row.enabled{background:#f0f7ff;border-color:#93c5fd}.feature-info{flex-direction:column;gap:4px;max-width:75%;display:flex}.feature-tag-title{align-items:center;gap:10px;display:flex}.feature-tag{text-transform:uppercase;letter-spacing:.5px;border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:700}.feature-tag.email{color:#1e40af;background:#dbeafe}.feature-tag.nudge{color:#92400e;background:#fef3c7}.feature-title{color:var(--text-primary,#1e293b);font-size:.95rem;font-weight:600}.feature-desc{color:var(--text-muted,#64748b);margin:0;font-size:.83rem;line-height:1.4}.switch-control{flex-shrink:0;width:50px;height:28px;display:inline-block;position:relative}.switch-control input{opacity:0;width:0;height:0}.switch-slider{cursor:pointer;background-color:#cbd5e1;border-radius:28px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.switch-slider:before{content:"";background-color:#fff;border-radius:50%;width:22px;height:22px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;bottom:3px;left:3px;box-shadow:0 1px 3px #00000026}input:checked+.switch-slider{background-color:#2563eb}input:checked+.switch-slider:before{transform:translate(22px)}.sandbox-form{flex-direction:column;gap:16px;display:flex}.sandbox-field{flex-direction:column;gap:6px;display:flex}.sandbox-field label{color:var(--text-primary,#334155);font-size:.85rem;font-weight:600}.sandbox-input,.sandbox-select{border:1px solid var(--border-color,#cbd5e1);background:var(--input-bg,#fff);color:var(--text-primary,#1e293b);border-radius:8px;outline:none;padding:10px 14px;font-size:.9rem;transition:border-color .15s}.sandbox-input:focus,.sandbox-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.student-picker-container{flex-direction:column;gap:8px;display:flex}.selected-student-banner{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.selected-student-details{flex-direction:column;gap:2px;display:flex}.selected-student-name{color:#166534;font-size:.95rem;font-weight:700}.selected-student-sub{color:#15803d;font-size:.8rem}.student-search-input{border:1px solid var(--border-color,#cbd5e1);border-radius:6px;padding:8px 12px;font-size:.85rem}.student-results-list{border:1px solid var(--border-color,#cbd5e1);background:#fff;border-radius:8px;flex-direction:column;gap:4px;max-height:200px;padding:4px;display:flex;overflow-y:auto}.student-result-row{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;width:100%;padding:8px 12px;transition:background .15s;display:flex}.student-result-row:hover{background:#f1f5f9}.student-result-row.selected{background:#eff6ff;border-left:3px solid #2563eb}.student-result-row-name{color:var(--text-primary,#1e293b);font-size:.88rem;font-weight:600}.student-result-row-meta{color:var(--text-muted,#64748b);font-size:.78rem}.sandbox-actions{align-items:center;gap:12px;margin-top:8px;display:flex}.sandbox-btn-send{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:background .15s;display:flex}.sandbox-btn-send:hover:not(:disabled){background:#1d4ed8}.sandbox-btn-send:disabled{opacity:.6;cursor:not-allowed}.sandbox-btn-preview{color:#334155;cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .15s;display:flex}.sandbox-btn-preview:hover:not(:disabled){background:#f1f5f9}.sandbox-btn-preview:disabled{opacity:.6;cursor:not-allowed}.preview-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172ab3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.preview-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:680px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a}.preview-modal-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.preview-modal-header h3{color:#0f172a;margin:0;font-size:1rem;font-weight:700}.preview-modal-close{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;display:flex}.preview-modal-close:hover{color:#0f172a;background:#e2e8f0}.preview-modal-body{background:#f1f5f9;flex:1;padding:16px;overflow-y:auto}.preview-iframe{background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;height:540px}.targeting-pills-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.targeting-pill{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:3px 8px;font-size:.72rem}.targeting-pill strong{color:#0f172a}.feature-row-actions{align-items:center;gap:14px;display:flex}.btn-configure-targeting{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-configure-targeting:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8}.analytics-header-controls{align-items:center;gap:16px;display:flex}.window-selector{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:.8rem;display:flex}.window-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:4px;padding:3px 8px;font-size:.78rem;font-weight:600}.window-btn.active{color:#fff;background:#2563eb}.btn-refresh-analytics{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.btn-refresh-analytics:hover:not(:disabled){color:#0f172a;background:#f8fafc}.spin{animation:1s linear infinite spin}.experiments-grid{flex-direction:column;gap:16px;display:flex}.experiment-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px 20px}.experiment-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.experiment-card-title-box{align-items:center;gap:10px;display:flex}.experiment-card-title-box h4{color:#0f172a;margin:0;font-size:.95rem;font-weight:700}.experiment-tag{color:#475569;text-transform:uppercase;background:#e2e8f0;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.experiment-goal-pill{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:3px 10px;font-size:.75rem;font-weight:600}.experiment-empty-state{text-align:center;color:#64748b;padding:16px 0;font-size:.88rem}.experiment-empty-state p{margin:0 0 4px;font-weight:500}.experiment-table-wrapper{overflow-x:auto}.experiment-table{border-collapse:collapse;text-align:left;width:100%;font-size:.85rem}.experiment-table th{color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0;padding:10px 14px;font-size:.75rem;font-weight:700}.experiment-table td{color:#1e293b;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:12px 14px}.winning-row{background:#f0fdf4!important}.control-badge{color:#475569;background:#e2e8f0;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:.68rem;font-weight:600;display:inline-block}.rate-bar-container{align-items:center;gap:8px;min-width:120px;display:flex}.rate-bar-fill{background:#3b82f6;border-radius:4px;height:8px}.winning-row .rate-bar-fill{background:#10b981}.rate-text{font-size:.85rem;font-weight:700}.lift-tag{border-radius:6px;padding:2px 8px;font-size:.82rem;font-weight:700}.lift-tag.lift-pos{color:#15803d;background:#dcfce7}.lift-tag.lift-neg{color:#b91c1c;background:#fee2e2}.winner-badge{color:#fff;letter-spacing:.3px;background:#15803d;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.status-evaluating{color:#64748b;font-size:.78rem;font-style:italic}.fail-badge{color:#dc2626;font-size:.72rem;font-weight:600}.open-rate-pill{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:4px;margin-left:5px;padding:1px 5px;font-size:.7rem;font-weight:700;display:inline-block}.btn-add-variant-pill{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;align-items:center;gap:4px;padding:3px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-add-variant-pill:hover{background:#dbeafe}.variant-name-input{color:#1e293b;border:1px solid #cbd5e1;border-radius:6px;flex:1;padding:4px 8px;font-size:.82rem;font-weight:600}.btn-remove-variant{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex}.btn-remove-variant:hover{color:#ef4444;background:#fee2e2}.macro-comparison-banner{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:12px;margin-top:14px;padding:14px 18px;display:flex}.macro-banner-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.macro-title-group{align-items:center;gap:8px;display:flex}.macro-badge{text-transform:uppercase;letter-spacing:.5px;color:#3730a3;background:#e0e7ff;border-radius:4px;padding:2px 8px;font-size:.68rem;font-weight:700}.macro-heading{color:#334155;font-size:.85rem}.macro-heading strong{color:#0f172a}.macro-outcome-pill{border-radius:12px;padding:3px 10px;font-size:.75rem;font-weight:700}.macro-outcome-pill.positive{color:#15803d;background:#dcfce7;border:1px solid #86efac}.macro-outcome-pill.evaluating{color:#64748b;background:#f1f5f9;border:1px solid #cbd5e1}.macro-metrics-grid{background:#fff;border:1px solid #edf2f7;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;padding:10px 14px;display:grid}.macro-metric-item{flex-direction:column;gap:2px;display:flex}.macro-metric-label{color:#64748b;text-transform:uppercase;letter-spacing:.4px;font-size:.68rem;font-weight:600}.macro-metric-val{color:#0f172a;font-size:.95rem;font-weight:700}.macro-metric-val small{color:#166534;font-size:.75rem;font-weight:600}.macro-metric-val.text-pos{color:#15803d}.macro-metric-val.text-neg{color:#b91c1c}.config-modal{background:#fff;border-radius:12px;flex-direction:column;width:90%;max-width:600px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #0003}.config-modal-body{flex-direction:column;gap:20px;padding:20px 24px;display:flex;overflow-y:auto}.config-form-group{flex-direction:column;gap:6px;display:flex}.config-form-group label{color:#0f172a;font-size:.85rem;font-weight:700}.rollout-val-display{color:#2563eb;font-size:.95rem;font-weight:700}.rollout-slider{cursor:pointer;accent-color:#2563eb;width:100%}.group-chips-container{flex-wrap:wrap;gap:8px;max-height:140px;padding:6px 0;display:flex;overflow-y:auto}.group-chip{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:16px;padding:5px 10px;font-size:.78rem;font-weight:600;transition:all .15s}.group-chip.selected{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6;font-weight:700}.variants-editor-list{flex-direction:column;gap:8px;display:flex}.variant-editor-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.variant-editor-info{align-items:center;gap:6px;display:flex}.variant-weight-input-box{align-items:center;gap:8px;font-size:.8rem;display:flex}.variant-weight-input{text-align:center;border:1px solid #cbd5e1;border-radius:6px;width:60px;padding:4px 8px;font-size:.85rem;font-weight:600}.config-modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.btn-cancel{color:#475569;cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600}.btn-save-config{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:8px 18px;font-size:.85rem;font-weight:600;transition:background .15s}.btn-save-config:hover:not(:disabled){background:#1d4ed8}.inapp-sandbox-section{flex-direction:column;display:flex}.sandbox-top-quickactions{align-items:center;gap:10px;display:flex}.btn-launch-student-sim{color:#6d28d9;cursor:pointer;background:#ede9fe;border:1px solid #ddd6fe;border-radius:8px;align-items:center;gap:7px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-launch-student-sim:hover{color:#5b21b6;background:#ddd6fe;transform:translateY(-1px)}.inapp-sandbox-tabbar{border-bottom:2px solid #f1f5f9;gap:8px;margin-bottom:16px;padding-bottom:12px;display:flex;overflow-x:auto}.inapp-tab-btn{color:#64748b;cursor:pointer;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex}.inapp-tab-btn:hover{color:#334155;background:#f1f5f9}.inapp-tab-btn.active{color:#fff;background:#6d28d9;border-color:#6d28d9;box-shadow:0 2px 8px #6d28d940}.inapp-sandbox-split{grid-template-columns:1.15fr .85fr;gap:20px;margin-top:8px;display:grid}@media (width<=900px){.inapp-sandbox-split{grid-template-columns:1fr}}.inapp-preview-column{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 10px #0000000a}.inapp-preview-toolbar{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.browser-dots{align-items:center;gap:6px;display:flex}.b-dot{border-radius:50%;width:10px;height:10px}.b-dot.red{background:#ef4444}.b-dot.yellow{background:#f59e0b}.b-dot.green{background:#10b981}.browser-url{color:#94a3b8;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-left:8px;padding:2px 10px;font-family:monospace;font-size:.76rem}.preview-toolbar-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.preview-variant-toggle{background:#e2e8f0;border-radius:6px;gap:2px;padding:2px;display:flex}.variant-toggle-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:5px;padding:4px 10px;font-size:.74rem;font-weight:600;transition:all .15s}.variant-toggle-btn.active{color:#0f172a;background:#fff;box-shadow:0 1px 3px #00000014}.variant-toggle-btn.variant-c-active{color:#fff;background:#10b981;box-shadow:0 1px 4px #10b98159}.tabbar-variant-switcher{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:3px 8px;display:inline-flex}.tabbar-variant-label{color:#475569;text-transform:uppercase;letter-spacing:.03em;font-size:.76rem;font-weight:700}.tabbar-variant-pills{gap:4px;display:flex}.tabbar-vbtn{color:#64748b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 12px;font-size:.8rem;font-weight:600;transition:all .15s}.tabbar-vbtn:hover{color:#1e293b;background:#fff9}.tabbar-vbtn.active{color:#0f172a;background:#fff;border-color:#cbd5e1;box-shadow:0 1px 3px #00000014}.tabbar-vbtn.variant-c-active{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-color:#047857;box-shadow:0 2px 6px #10b98159}.admin-testing-quick-nav{color:#5b21b6;background:#ede9fe;border:1px solid #ddd6fe;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:10px 16px;font-size:.86rem;font-weight:600;display:flex}.quick-nav-link{color:#6d28d9;background:#fff;border:1px solid #c4b5fd;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.quick-nav-link:hover{color:#fff;background:#6d28d9;border-color:#6d28d9}.preview-theme-toggle{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:.74rem;font-weight:600;display:inline-flex}.preview-theme-toggle:hover{background:#f1f5f9}.inapp-preview-canvas{background:#f8fafc;justify-content:center;align-items:center;min-height:380px;padding:30px 20px;transition:background .2s;display:flex}.inapp-preview-canvas[data-theme=midnight]{color:#f1f5f9;background:#0b0f19}.control-baseline-notice{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:380px;padding:24px;display:flex}.control-notice-icon{color:#64748b;background:#94a3b826;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.control-baseline-notice h4{color:inherit;margin:0;font-size:1.05rem}.control-baseline-notice p{color:#64748b;margin:0;font-size:.85rem;line-height:1.45}.btn-switch-treatment{color:#fff;cursor:pointer;background:#6d28d9;border:none;border-radius:8px;margin-top:10px;padding:8px 16px;font-size:.8rem;font-weight:600}.treatment-live-preview{flex-direction:column;align-items:center;width:100%;display:flex}.preview-element-wrapper{flex-direction:column;gap:8px;width:100%;max-width:580px;display:flex}.preview-tag-indicator{text-transform:uppercase;color:#94a3b8;letter-spacing:.5px;font-size:.72rem;font-weight:700}.preview-hint-text{color:#94a3b8;text-align:center;margin-top:4px;font-size:.76rem;font-style:italic}.preview-journal-modal{border:1px solid #00000014;box-shadow:0 10px 25px -5px #0000001a}.inapp-tweak-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:16px;padding:18px 20px;display:flex}.tweak-panel-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.tweak-panel-title{color:#0f172a;margin:0;font-size:.98rem;font-weight:700}.btn-reset-tweaks{color:#64748b;cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.btn-reset-tweaks:hover{color:#334155;background:#f1f5f9}.tweak-form-body{flex-direction:column;gap:14px;display:flex}.tweak-field{flex-direction:column;gap:6px;display:flex}.tweak-field label{color:#334155;font-size:.8rem;font-weight:600}.slider-val-badge{color:#6d28d9;background:#ede9fe;border-radius:99px;padding:2px 8px;font-size:.78rem;font-weight:700}.quick-presets-row{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.preset-pill{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:3px 8px;font-size:.72rem;font-weight:600}.preset-pill:hover{background:#f1f5f9;border-color:#cbd5e1}.btn-save-tweaks{color:#fff;cursor:pointer;background:#6d28d9;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:6px;padding:10px 16px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #6d28d933}.btn-save-tweaks:hover:not(:disabled){background:#5b21b6;transform:translateY(-1px)}.btn-save-tweaks:disabled{opacity:.6;cursor:not-allowed}.sandbox-student-inspector{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:14px 18px;display:flex;box-shadow:0 1px 3px #0000000a}.inspector-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.inspector-student-select{color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;min-width:220px;padding:8px 12px;font-size:.88rem;font-weight:600}.inspector-student-select:focus{background:#fff;border-color:#6d28d9;outline:none}.inspector-tags-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.eval-tag{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:.74rem;font-weight:600;display:inline-flex}.eval-tag.treatment{color:#6d28d9;background:#ede9fe;border-color:#ddd6fe}.eval-tag.triggered{color:#b45309;background:#fef3c7;border-color:#fde68a}.eval-tag.suppressed{color:#059669;background:#ecfdf5;border-color:#a7f3d0}.eval-tag.metric{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.inspector-right{align-items:center;gap:10px;display:flex}.btn-open-impersonation{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-open-impersonation:hover{background:#1e293b;transform:translateY(-1px)}.preview-mode-toggle,.preview-device-toggle{background:#e2e8f0;border-radius:6px;gap:2px;padding:2px;display:flex}.mode-toggle-btn,.device-toggle-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:5px;padding:4px 10px;font-size:.74rem;font-weight:600;transition:all .15s;display:inline-flex}.mode-toggle-btn.active,.device-toggle-btn.active{color:#0f172a;background:#fff;box-shadow:0 1px 3px #00000014}.desktop-viewport-canvas{width:100%;max-width:620px;margin:0 auto}.mobile-viewport-shell{background:#090d16;border-radius:38px;flex-direction:column;width:390px;max-width:100%;margin:0 auto;padding:10px 10px 18px;display:flex;box-shadow:0 25px 60px -15px #00000073,0 0 0 1px #ffffff26}.mobile-status-bar{color:#fff;justify-content:space-between;align-items:center;padding:6px 14px 10px;font-size:.72rem;font-weight:600;display:flex}.mobile-island{background:#000;border-radius:14px;width:90px;height:22px}.mobile-status-icons{opacity:.85;align-items:center;gap:6px;font-size:.68rem;display:flex}.mobile-screen-content{background:var(--bg-surface,#fff);border-radius:28px;max-height:680px;padding:18px 14px 28px;overflow-y:auto}.inapp-preview-canvas[data-theme=midnight] .mobile-screen-content{color:#f8fafc;background:#0f172a}.mock-fullpage-container{flex-direction:column;gap:20px;width:100%;display:flex}.mock-app-header{border-bottom:1px solid #00000014;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.inapp-preview-canvas[data-theme=midnight] .mock-app-header{border-bottom-color:#ffffff1a}.mock-brand{align-items:center;gap:8px;display:flex}.mock-brand-logo-img{object-fit:contain;width:auto;max-width:32px;height:26px;display:block}.mock-brand-name{font-family:var(--font-brand,"Century Schoolbook", "New Century Schoolbook", Georgia, serif);letter-spacing:0;text-transform:lowercase;color:var(--text-color,#232326);font-size:1.15rem;font-weight:400;line-height:1}.inapp-preview-canvas[data-theme=midnight] .mock-brand-name{color:#fff}.mock-header-right{align-items:center;gap:8px;display:flex}.mock-greeting{color:var(--text-primary,#1e293b);font-size:.88rem;font-weight:600}.inapp-preview-canvas[data-theme=midnight] .mock-greeting{color:#e2e8f0}.mock-roll-badge{color:#64748b;background:#f1f5f9;border-radius:6px;padding:2px 7px;font-size:.72rem;font-weight:600}.inapp-preview-canvas[data-theme=midnight] .mock-roll-badge{color:#94a3b8;background:#1e293b}.placement-slot{flex-direction:column;gap:6px;width:100%;display:flex}.placement-label-badge{text-transform:uppercase;letter-spacing:.5px;color:#6d28d9;background:#6d28d914;border-left:3px solid #6d28d9;border-radius:0 4px 4px 0;justify-content:space-between;align-items:center;padding:3px 8px;font-size:.68rem;font-weight:700;display:flex}.placement-reason-tag{color:#92400e;text-transform:none;background:#fef3c7;border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:600}.btn-slot-reset{color:#6d28d9;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:.68rem;font-weight:600;text-decoration:underline}.slot-suppressed-bar{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.76rem;display:flex}.inapp-preview-canvas[data-theme=midnight] .slot-suppressed-bar{color:#94a3b8;background:#1e293b;border-color:#334155}.btn-force-slot{color:#6d28d9;cursor:pointer;white-space:nowrap;background:#ede9fe;border:1px solid #ddd6fe;border-radius:5px;padding:3px 8px;font-size:.72rem;font-weight:600}.btn-force-slot:hover{background:#ddd6fe}.slot-baseline-pill{text-align:center;color:#64748b;background:#f1f5f9;border:1px dashed #cbd5e1;border-radius:8px;padding:8px 12px;font-size:.75rem;font-style:italic}.inapp-preview-canvas[data-theme=midnight] .slot-baseline-pill{color:#94a3b8;background:#1e293b;border-color:#334155}.preview-mock-topic{background:var(--card-bg,#fff);border:1px solid #00000014;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:10px 14px;display:flex}.inapp-preview-canvas[data-theme=midnight] .preview-mock-topic{background:#1e293b;border-color:#334155}.topic-card-header{flex-direction:column;gap:2px;display:flex}.topic-subject-tag{text-transform:uppercase;color:#6d28d9;letter-spacing:.4px;font-size:.68rem;font-weight:700}.topic-title{color:var(--text-primary,#0f172a);font-size:.86rem;font-weight:600}.inapp-preview-canvas[data-theme=midnight] .topic-title{color:#f1f5f9}.topic-card-actions{align-items:center;gap:8px;display:flex}.topic-reason-pill{color:#475569;background:#f1f5f9;border-radius:5px;padding:2px 7px;font-size:.72rem;font-weight:600}.inapp-preview-canvas[data-theme=midnight] .topic-reason-pill{color:#94a3b8;background:#0f172a}.btn-topic-start{color:#fff;cursor:pointer;background:#6d28d9;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:.74rem;font-weight:600;display:inline-flex}.btn-topic-start:hover{background:#5b21b6}.inapp-sandbox-section.sandbox-fullscreen-mode{z-index:99999;color:#f8fafc;width:100vw;height:100vh;box-shadow:none;box-sizing:border-box;background:#090d16;border:none;border-radius:0;margin:0;padding:16px 24px;position:fixed;inset:0;overflow-y:auto}.sandbox-fullscreen-mode .testing-card-title{color:#f8fafc}.sandbox-fullscreen-mode .testing-card-desc{color:#94a3b8}.sandbox-fullscreen-mode .sandbox-student-inspector{color:#f1f5f9;background:#1e293b;border-color:#334155}.sandbox-fullscreen-mode .inspector-student-select{color:#f8fafc;background:#0f172a;border-color:#475569}.sandbox-fullscreen-mode .inapp-preview-column{min-height:calc(100vh - 200px)}.sandbox-fullscreen-mode .inapp-preview-canvas{min-height:calc(100vh - 270px)}.sandbox-fullscreen-mode .desktop-viewport-canvas{max-width:740px}.sandbox-fullscreen-mode .mobile-viewport-shell{max-height:calc(100vh - 270px)}.sandbox-fullscreen-mode .mobile-screen-content{max-height:calc(100vh - 340px)}.sandbox-fullscreen-mode .inapp-sandbox-split.hide-tweaks{grid-template-columns:1fr!important}.btn-expand-sandbox,.preview-fullscreen-btn{color:#6d28d9;cursor:pointer;background:#ede9fe;border:1px solid #ddd6fe;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:.74rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-expand-sandbox:hover,.preview-fullscreen-btn:hover,.btn-expand-sandbox.active,.preview-fullscreen-btn.active{color:#fff;background:#6d28d9;border-color:#6d28d9}.preview-journal-toggle-btn{color:#92400e;cursor:pointer;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:.74rem;font-weight:600;transition:all .15s;display:inline-flex}.preview-journal-toggle-btn:hover,.preview-journal-toggle-btn.active{color:#fff;background:#d97706;border-color:#d97706}.preview-tweaks-toggle-btn{color:#f1f5f9;cursor:pointer;background:#334155;border:1px solid #475569;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:.74rem;font-weight:600;display:inline-flex}.preview-tweaks-toggle-btn:hover{background:#475569}.mock-page-viewport{position:relative}.mock-journal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;border-radius:inherit;background:#0f172ab8;justify-content:center;align-items:flex-start;padding:40px 16px 24px;animation:.2s ease-out fadeInJournalOverlay;display:flex;position:absolute;inset:0;overflow-y:auto}@keyframes fadeInJournalOverlay{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.sandbox-fullscreen-mode .inapp-sandbox-split.hide-tweaks .desktop-viewport-canvas{max-width:920px}.sandbox-fullscreen-mode .mock-page-viewport.desktop-viewport-canvas{max-height:calc(100vh - 280px)}.btn-trigger-journal-pill{color:#6d28d9;cursor:pointer;background:#ede9fe;border:1px solid #ddd6fe;border-radius:99px;align-items:center;gap:6px;padding:6px 14px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-trigger-journal-pill:hover,.btn-trigger-journal-pill.active{color:#fff;background:#6d28d9;border-color:#6d28d9;box-shadow:0 2px 8px #6d28d940}.preview-backfill-toggle-btn{color:#92400e;cursor:pointer;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:.74rem;font-weight:600;transition:all .15s;display:inline-flex}.preview-backfill-toggle-btn:hover,.preview-backfill-toggle-btn.active{color:#fff;background:#d97706;border-color:#d97706}.mock-backfill-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;border-radius:inherit;background:#0f172ab8;justify-content:center;align-items:flex-start;padding:40px 16px 24px;animation:.2s ease-out fadeInModalOverlay;display:flex;position:absolute;inset:0;overflow-y:auto}.mobile-viewport-shell .top-streaks-bar,.mobile-screen-content .top-streaks-bar{gap:6px!important;max-width:100%!important;padding:5px 8px!important}.mobile-viewport-shell .top-streak-pill,.mobile-screen-content .top-streak-pill{gap:5px!important;min-width:0!important}.mobile-viewport-shell .top-streak-left,.mobile-screen-content .top-streak-left{gap:4px!important;min-width:0!important}.mobile-viewport-shell .top-streak-icon-wrap,.mobile-screen-content .top-streak-icon-wrap{width:20px!important;height:20px!important}.mobile-viewport-shell .top-streak-icon-wrap svg,.mobile-screen-content .top-streak-icon-wrap svg{width:11px!important;height:11px!important}.mobile-viewport-shell .top-streak-text,.mobile-screen-content .top-streak-text,.mobile-viewport-shell .top-streak-title-group,.mobile-screen-content .top-streak-title-group{gap:3px!important;min-width:0!important}.mobile-viewport-shell .top-streak-name,.mobile-screen-content .top-streak-name{text-overflow:ellipsis!important;white-space:nowrap!important;max-width:58px!important;font-size:.72rem!important;overflow:hidden!important}.mobile-viewport-shell .altitude-full,.mobile-screen-content .altitude-full{display:none!important}.mobile-viewport-shell .altitude-short,.mobile-screen-content .altitude-short{display:inline!important}.mobile-viewport-shell .top-streaks-bar.expedition-bar .altitude-badge,.mobile-screen-content .top-streaks-bar.expedition-bar .altitude-badge{letter-spacing:0!important;padding:1px 4px!important;font-size:.6rem!important}.mobile-viewport-shell .top-streak-days,.mobile-screen-content .top-streak-days{gap:1px!important;font-size:.68rem!important}.mobile-viewport-shell .top-streak-flame,.mobile-viewport-shell .top-streak-zap,.mobile-screen-content .top-streak-flame,.mobile-screen-content .top-streak-zap{width:10px!important;height:10px!important}.mobile-viewport-shell .top-streak-progress-label,.mobile-screen-content .top-streak-progress-label,.mobile-viewport-shell .top-streak-done-tag,.mobile-screen-content .top-streak-done-tag{font-size:.64rem!important}.mobile-viewport-shell .top-streak-mini-progress,.mobile-screen-content .top-streak-mini-progress{width:24px!important;height:3px!important}.mobile-viewport-shell .top-streaks-divider,.mobile-screen-content .top-streaks-divider{height:14px!important}.streak-goal-stage-toggle{background:#e2e8f0;border:1px solid #cbd5e1;border-radius:9px;gap:6px;padding:4px;display:flex}.stage-toggle-btn{color:#334155;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:5px;padding:6px 10px;font-size:.76rem;font-weight:600;transition:all .16s;display:inline-flex}.stage-toggle-btn:hover{color:#0f172a;background:#ffffffb3}.stage-toggle-btn.active{color:#0f172a;background:#fff;border-color:#94a3b8;font-weight:700;box-shadow:0 2px 6px #0000001a}[data-theme=midnight] .streak-goal-stage-toggle,.inapp-preview-canvas[data-theme=midnight] .streak-goal-stage-toggle{background:#ffffff14;border-color:#ffffff2e}[data-theme=midnight] .stage-toggle-btn,.inapp-preview-canvas[data-theme=midnight] .stage-toggle-btn{color:#cbd5e1}[data-theme=midnight] .stage-toggle-btn:hover,.inapp-preview-canvas[data-theme=midnight] .stage-toggle-btn:hover{color:#fff;background:#ffffff24}[data-theme=midnight] .stage-toggle-btn.active,.inapp-preview-canvas[data-theme=midnight] .stage-toggle-btn.active{color:#38bdf8;background:#0f172a;border-color:#38bdf899;box-shadow:0 2px 8px #00000080}.admin-page{flex-direction:column;gap:16px;width:100%;max-width:980px;margin:0 auto;display:flex}.admin-header{padding:18px 24px}.admin-title-row{align-items:center;gap:14px;display:flex}.admin-icon-badge{background:var(--color-primary-light,#4a6b4f1f);width:42px;height:42px;color:var(--primary,#4a6b4f);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-title{color:var(--text-color);margin-bottom:2px;font-size:1.25rem;font-weight:700}.admin-subtitle{opacity:.7;font-size:.84rem}.admin-tabs{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.admin-tab{color:var(--text-color);cursor:pointer;background:#0000000a;border:1px solid #0000;border-radius:12px;align-items:center;gap:6px;padding:9px 16px;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.admin-tab.active{color:var(--primary,#4a6b4f);background:#4a6b4f24;border-color:#4a6b4f40;font-weight:600}.admin-section{border-radius:20px;padding:22px 24px}.admin-section-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.admin-section-title{align-items:center;gap:8px;margin-bottom:6px;font-size:1.05rem;font-weight:600;display:flex}.admin-subheading{margin:18px 0 10px;font-size:.92rem;font-weight:600}.admin-muted{opacity:.65;margin-bottom:12px;font-size:.85rem}.admin-form{flex-direction:column;gap:14px;display:flex}.admin-label{flex-direction:column;gap:6px;font-size:.86rem;font-weight:500;display:flex}.admin-label input,.admin-label select,.admin-search,.admin-textarea{background:var(--color-input-bg,#ffffffb3);color:var(--text-color);border:1px solid #0000001f;border-radius:12px;outline:none;padding:11px 14px;font-size:.92rem;transition:all .2s}.admin-label input:focus,.admin-label select:focus,.admin-search:focus,.admin-textarea:focus{border-color:var(--primary,#4a6b4f);box-shadow:0 0 0 3px #4a6b4f26}.admin-search{width:100%;margin-bottom:14px}.admin-textarea{resize:vertical;font-family:inherit}.admin-btn-row{flex-wrap:wrap;gap:10px;display:flex}.admin-primary-btn{background:var(--primary,#4a6b4f);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:background .2s,transform .1s;display:inline-flex}.admin-primary-btn:hover:not(:disabled){background:#3b573f}.admin-secondary-btn{color:var(--primary,#4a6b4f);cursor:pointer;background:0 0;border:1px solid #4a6b4f59;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.admin-secondary-btn:hover:not(:disabled){background:#4a6b4f14}.admin-secondary-btn:disabled,.admin-primary-btn:disabled{opacity:.55;cursor:not-allowed}.admin-primary-btn.compact,.admin-secondary-btn.compact{border-radius:8px;padding:7px 12px;font-size:.82rem}.admin-banner{border-radius:12px;align-items:center;gap:10px;padding:12px 16px;font-size:.9rem;display:flex}.admin-banner.error{color:#8b2e2e;background:#b43c3c1a;border:1px solid #b43c3c33}.admin-banner.success{color:var(--primary,#4a6b4f);background:#4a6b4f1f;border:1px solid #4a6b4f40}.admin-groups-layout{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=800px){.admin-groups-layout{grid-template-columns:1fr 1fr}}.admin-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin-list-item{background:#00000008;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;display:flex}.admin-list-item.selected{background:#4a6b4f1f;border:1px solid #4a6b4f40}.admin-list-main{cursor:pointer;text-align:left;color:inherit;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:0;display:flex}.admin-list-main.static{cursor:default}.admin-list-title{font-size:.92rem;font-weight:600}.admin-icon-btn{cursor:pointer;color:var(--text-color);opacity:.7;background:0 0;border:none;border-radius:8px;padding:6px;transition:all .2s}.admin-icon-btn:hover{opacity:1;background:#0000000f}.admin-icon-btn.danger:hover{color:#8b2e2e;background:#b43c3c1f}.admin-checklist{flex-direction:column;gap:4px;max-height:320px;margin:0 0 14px;padding:0;list-style:none;display:flex;overflow:auto}.admin-check-row{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 6px;font-size:.9rem;display:flex}.admin-check-row:hover{background:#0000000a}.admin-members-filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 12px;padding:4px 2px;display:flex}.admin-members-toggle-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.88rem;font-weight:500;display:inline-flex}.admin-members-toggle-label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary,#4a6b4f)}.admin-members-count-badge{color:var(--primary,#4a6b4f);background:#4a6b4f1f;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:600}.admin-job-list{flex-direction:column;gap:14px;margin-top:4px;display:flex}.admin-job-row{background:#00000008;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.admin-job-title{margin-bottom:4px;font-size:.95rem;font-weight:600}.admin-students-table-container{border:1px solid #00000014;border-radius:14px;overflow-x:auto}.admin-students-table{border-collapse:collapse;text-align:left;width:100%;font-size:.88rem}.admin-students-table th{opacity:.85;background:#0000000a;border-bottom:1px solid #00000014;padding:12px 14px;font-weight:600}.admin-students-table td{vertical-align:middle;border-bottom:1px solid #0000000d;padding:12px 14px}.admin-students-table tbody tr:hover{background:#00000005}.student-roll-tag{background:#0000000f;border-radius:6px;padding:3px 8px;font-family:monospace;font-size:.84rem;font-weight:700;display:inline-block}.student-phone-tag{color:var(--primary,#4a6b4f);background:#4a6b4f14;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:.84rem;font-weight:600;display:inline-flex}.student-email-tag{opacity:.85;align-items:center;gap:4px;font-size:.84rem;display:inline-flex}.student-empty-tag{opacity:.45;font-size:.8rem;font-style:italic}.admin-score-badge{font-variant-numeric:tabular-nums;text-align:center;border-radius:6px;justify-content:center;align-items:center;min-width:44px;padding:3px 8px;font-size:.82rem;font-weight:600;line-height:1.2;display:inline-flex}.admin-score-empty{color:var(--text-muted,#8a8a8a);opacity:.35;text-align:center;min-width:44px;font-size:.88rem;display:inline-block}.admin-pred-pill{font-variant-numeric:tabular-nums;text-align:center;border-radius:6px;justify-content:center;align-items:baseline;gap:2px;min-width:58px;padding:3px 8px;font-size:.84rem;font-weight:700;line-height:1.2;display:inline-flex}.admin-pred-pill.neet{color:#1f6b54;background:#1f6b541a}.admin-pred-pill.jee{color:#2557a0;background:#2557a01a}.admin-pred-pill .pred-max{opacity:.65;font-size:.72rem;font-weight:500}[data-theme=midnight] .admin-pred-pill.neet{color:#4ecfbf;background:#4ecfbf26}[data-theme=midnight] .admin-pred-pill.jee{color:#7eb8e8;background:#7eb8e826}.admin-table-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.admin-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.admin-modal{background:var(--color-surface,#fff);border-radius:20px;width:100%;max-width:480px;padding:24px;box-shadow:0 20px 50px #0003}.admin-modal.wide{max-width:680px}.admin-modal-header{border-bottom:1px solid #00000014;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:12px;display:flex}.admin-modal-header h3{margin:0;font-size:1.1rem;font-weight:700}.admin-modal-footer{border-top:1px solid #00000014;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;padding-top:16px;display:flex}.bulk-actions-toolbar{flex-wrap:wrap;gap:10px;display:flex}.file-upload-btn{cursor:pointer}.bulk-preview-section{margin-top:16px}.bulk-preview-section h4{margin-bottom:8px;font-size:.9rem;font-weight:600}.bulk-preview-table-wrapper{border:1px solid #0000001a;border-radius:10px;max-height:180px;overflow:auto}.admin-students-table.compact th,.admin-students-table.compact td{padding:8px 10px;font-size:.82rem}.admin-analytics{flex-direction:column;gap:16px;display:flex}.admin-range-toggle{gap:8px;display:flex}.admin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 8px;display:grid}.admin-kpi{background:#0000000a;border-radius:14px;padding:14px 16px}.admin-kpi-value{color:var(--text-color);font-size:1.35rem;font-weight:700}.admin-kpi-label{opacity:.7;margin-top:4px;font-size:.78rem}.admin-chart{width:100%;margin-top:12px}.admin-page.wide{max-width:1100px}.admin-filter-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 16px;display:grid}.admin-sort-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-weight:600;display:inline-flex}.admin-sort-btn.center{justify-content:center;width:100%}.admin-sort-btn.active{color:var(--primary,#4a6b4f)}@media (width<=800px){.admin-filter-row{grid-template-columns:1fr 1fr}.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-spin{animation:1s linear infinite admin-spin}@keyframes admin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-table-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.admin-table-count{margin:0}.admin-col-menu-wrapper{display:inline-block;position:relative}.admin-col-toggle-btn{background:var(--card-bg,#fff);color:var(--primary,#4a6b4f);cursor:pointer;border:1px solid #4a6b4f59;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:600;transition:all .2s;display:inline-flex}.admin-col-toggle-btn:hover{background:#4a6b4f14}.admin-col-toggle-btn.has-hidden{border-color:var(--primary,#4a6b4f);background:#4a6b4f0f}.admin-col-badge{background:var(--primary,#4a6b4f);color:#fff;border-radius:999px;padding:1px 6px;font-size:.72rem;font-weight:700;line-height:1.3;display:inline-block}.admin-col-popover{z-index:100;background:var(--card-bg,#fff);border:1px solid var(--border-color,#4a6b4f40);border-radius:12px;width:250px;max-height:380px;padding:12px 14px;animation:.15s ease-out adminPopoverIn;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 10px 25px -4px #0000001f,0 4px 10px -2px #00000014}@keyframes adminPopoverIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.admin-col-popover-header{border-bottom:1px solid var(--border-color,#00000014);justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;display:flex}.admin-col-popover-title{color:var(--text-color,#1e2e25);font-size:.82rem;font-weight:700}.admin-col-actions{align-items:center;gap:8px;display:flex}.admin-col-action-btn{color:var(--primary,#4a6b4f);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:600;text-decoration:underline;transition:opacity .15s}.admin-col-action-btn:hover{opacity:.75}.admin-col-popover-content{flex-direction:column;gap:2px;display:flex}.admin-col-group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#718096);margin:8px 0 4px;font-size:.7rem;font-weight:700}.admin-col-group-title:first-of-type{margin-top:4px}.admin-col-option{color:var(--text-color,#1e2e25);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:8px;padding:5px 6px;font-size:.82rem;transition:background .12s;display:flex}.admin-col-option:hover:not(.locked){background:#4a6b4f14}.admin-col-option.locked{opacity:.6;cursor:not-allowed}.admin-col-option input[type=checkbox]{accent-color:var(--primary,#4a6b4f);cursor:pointer;width:14px;height:14px;margin:0}.admin-col-option.locked input[type=checkbox]{cursor:not-allowed}[data-theme=midnight] .admin-col-popover{border-color:#ffffff26;box-shadow:0 10px 25px -4px #00000080,0 4px 10px -2px #0000004d}[data-theme=midnight] .admin-col-popover-header{border-bottom-color:#ffffff1a}[data-theme=midnight] .admin-col-option:hover:not(.locked){background:#ffffff14}.admin-metric-pill{font-variant-numeric:tabular-nums;color:var(--text-color,#1e2e25);background:#0000000d;border-radius:6px;justify-content:center;align-items:center;padding:3px 8px;font-size:.82rem;font-weight:600;line-height:1.2;display:inline-flex}.admin-metric-pill.active-today,.admin-metric-pill.good{color:#1f6b54;background:#1f6b541f}.admin-metric-pill.warning{color:#b45309;background:#d9770624}.admin-metric-pill.danger{color:#dc2626;background:#dc26261f}.admin-streak-badge{font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;gap:3px;padding:3px 8px;font-size:.82rem;font-weight:700;line-height:1.2;display:inline-flex}.admin-streak-badge.base{color:#c2410c;background:#ea580c1f}.admin-streak-badge.effort{color:#7e22ce;background:#9333ea1f}[data-theme=midnight] .admin-metric-pill{background:#ffffff14}[data-theme=midnight] .admin-metric-pill.active-today,[data-theme=midnight] .admin-metric-pill.good{color:#4ecfbf;background:#4ecfbf2e}[data-theme=midnight] .admin-metric-pill.warning{color:#fb923c;background:#fb923c33}[data-theme=midnight] .admin-metric-pill.danger{color:#f87171;background:#f8717133}[data-theme=midnight] .admin-streak-badge.base{color:#fb923c;background:#fb923c33}[data-theme=midnight] .admin-streak-badge.effort{color:#c084fc;background:#c084fc33}.admin-activity-timeline{border:1px solid #00000014;border-radius:12px;margin-top:8px;overflow:hidden}.admin-activity-badge{white-space:nowrap;border-radius:6px;align-items:center;padding:3px 8px;font-size:.76rem;font-weight:600;display:inline-flex}.activity-badge-visit{color:#2563eb;background:#3b82f61f}.activity-badge-journal{color:#7c3aed;background:#a855f71f}.activity-badge-timer{color:#16a34a;background:#22c55e1f}.activity-badge-effort{color:#ea580c;background:#f973161f}.activity-badge-default{color:#4b5563;background:#6b72801f}[data-theme=midnight] .admin-activity-timeline{border-color:#ffffff1a}[data-theme=midnight] .activity-badge-visit{color:#93c5fd;background:#60a5fa33}[data-theme=midnight] .activity-badge-journal{color:#d8b4fe;background:#c084fc33}[data-theme=midnight] .activity-badge-timer{color:#86efac;background:#4ade8033}[data-theme=midnight] .activity-badge-effort{color:#fdba74;background:#fb923c33}.admin-segment-switcher{background:#0000000d;border:1px solid #00000014;border-radius:12px;align-items:center;gap:4px;margin-bottom:12px;padding:4px;display:inline-flex}.admin-segment-btn{color:var(--text-color);cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;padding:7px 18px;font-size:.88rem;font-weight:500;transition:all .18s;display:inline-flex}.admin-segment-btn:hover{background:#0000000a}.admin-segment-btn.active{color:var(--primary,#4a6b4f);background:#fff;font-weight:700;box-shadow:0 2px 6px #00000014}[data-theme=midnight] .admin-segment-switcher{background:#ffffff0f;border-color:#ffffff1a}[data-theme=midnight] .admin-segment-btn.active{color:#86efac;background:#ffffff26;box-shadow:0 2px 6px #0000004d}.admin-date-range-container{flex-direction:column;gap:6px;display:flex}.admin-date-presets{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.admin-date-preset-btn{color:var(--text-color);cursor:pointer;background:#00000008;border:1px solid #0000001f;border-radius:8px;padding:5px 10px;font-size:.78rem;font-weight:500;transition:all .15s}.admin-date-preset-btn:hover{background:#0000000f}.admin-date-preset-btn.active{color:var(--primary,#4a6b4f);background:#4a6b4f24;border-color:#4a6b4f66;font-weight:600}[data-theme=midnight] .admin-date-preset-btn{background:#ffffff0d;border-color:#ffffff1f}[data-theme=midnight] .admin-date-preset-btn.active{color:#86efac;background:#4ade8026;border-color:#4ade8059}.admin-date-inputs{align-items:center;gap:6px;display:flex}.admin-date-inputs input[type=date]{background:var(--color-input-bg,#ffffffb3);color:var(--text-color);border:1px solid #0000001f;border-radius:9px;outline:none;padding:8px 10px;font-size:.82rem}.admin-date-sep{opacity:.5;font-size:.8rem}.admin-table-footer-row{background:#0000000a;border-top:2px solid #0000001f;font-weight:600}[data-theme=midnight] .admin-table-footer-row{background:#ffffff0a;border-top-color:#ffffff1f}.admin-table-footer-row td{vertical-align:middle;padding:12px 14px;font-size:.85rem}.admin-footer-sub{opacity:.7;margin-top:2px;font-size:.74rem;font-weight:400;display:block}.admin-visit-count-badge{color:var(--text-color);background:#0000000a;border-radius:6px;padding:3px 8px;font-size:.85rem;font-weight:600;display:inline-block}.admin-visit-count-badge.has-visits{color:#2563eb;background:#3b82f61f}[data-theme=midnight] .admin-visit-count-badge.has-visits{color:#93c5fd;background:#60a5fa33}.activity-page-container{flex-direction:column;gap:16px;width:100%;max-width:1040px;margin:0 auto;padding-bottom:32px;display:flex}.activity-page-header{flex-direction:column;gap:12px;display:flex}.activity-header-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.activity-title-row{align-items:center;gap:14px;display:flex}.activity-icon-badge{background:var(--color-primary-light,#4a6b4f1f);width:48px;height:48px;color:var(--primary,#4a6b4f);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-page-title{color:var(--text-color);margin:0 0 4px;font-size:1.35rem;font-weight:700}.activity-student-meta{opacity:.75;align-items:center;gap:8px;font-size:.85rem;display:flex}.activity-filters-card{background:var(--color-surface,#fff);border:1px solid #00000014;border-radius:16px;padding:18px 20px}.activity-filter-grid{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.filter-group{flex-direction:column;flex:1;gap:6px;min-width:200px;display:flex}.filter-label{color:var(--text-color);opacity:.8;font-size:.82rem;font-weight:600}.filter-date-time-row{gap:6px;display:flex}.date-input{flex:1.4}.time-input{flex:1}.filter-actions-group{align-items:center;gap:8px;padding-bottom:1px;display:flex}.activity-content-card{background:var(--color-surface,#fff);border:1px solid #00000014;border-radius:16px;flex-direction:column;gap:16px;padding:20px;display:flex}.activity-table-header{justify-content:space-between;align-items:center;display:flex}.activity-count-label{opacity:.75;font-size:.88rem;font-weight:600}.activity-table-wrapper{border:1px solid #00000014;border-radius:12px;overflow-x:auto}.activity-loading-state,.activity-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.activity-empty-state h3{margin:0;font-size:1.1rem}.activity-empty-state p{margin:0;font-size:.88rem}.activity-pagination-bar{border-top:1px solid #00000014;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.pagination-controls{align-items:center;gap:8px;display:flex}.pagination-current-tag{width:32px;height:32px;color:var(--primary,#4a6b4f);background:#4a6b4f26;border-radius:8px;justify-content:center;align-items:center;font-size:.88rem;font-weight:700;display:inline-flex}.spinning{animation:1s linear infinite spin}[data-theme=midnight] .activity-filters-card,[data-theme=midnight] .activity-content-card,[data-theme=midnight] .activity-table-wrapper{border-color:#ffffff1a}[data-theme=midnight] .activity-icon-badge{color:#4ecfbf;background:#4ecfbf2e}[data-theme=midnight] .pagination-current-tag{color:#4ecfbf;background:#4ecfbf33}.background-container{z-index:-1;pointer-events:none;background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bottom) 52%, var(--blob-light) 100%);transition:background .8s;position:fixed;inset:0;overflow:hidden}html[data-theme=mountain] .background-container{background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bottom) 40%, #d8c6a8 58%, var(--blob-light) 100%)}html[data-theme=midnight] .background-container{background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bottom) 48%, var(--blob-light) 100%)}.scene{width:100%;height:100%;display:block;position:absolute;inset:0}.sun-group{transform-origin:940px 128px;animation:200s ease-in-out infinite alternate sun-drift}.sun-halo{opacity:.28;animation:20s ease-in-out infinite alternate sun-halo-pulse}.sun{animation:20s ease-in-out infinite alternate sun-glow}.shape{transform-origin:50%;transform-box:fill-box}.dune-far{animation:160s ease-in-out infinite alternate dune-far-move}.dune-mid{animation:140s ease-in-out infinite alternate-reverse dune-mid-move}.dune-near{animation:180s ease-in-out infinite alternate dune-near-move}.cactus{transform-origin:0 0;animation:18s ease-in-out infinite alternate cactus-sway;transform:translate(136px,668px)}.palm{transform-origin:0 0;animation:22s ease-in-out infinite alternate palm-sway;transform:translate(1032px,636px)}.scene-mountain,html[data-theme=mountain] .scene-desert{display:none}html[data-theme=mountain] .scene-mountain,html[data-theme=mountain] .scene-mountain-sky{display:inline}html[data-theme=mountain] .sun-group{animation-name:mountain-sun-drift}html[data-theme=mountain] .sun{animation-name:mountain-sun-glow}html[data-theme=mountain] .sun-halo{display:none}html[data-theme=mountain] .sun-halo-blob{display:inline}html[data-theme=midnight] .cactus,html[data-theme=midnight] .palm{display:none}html[data-theme=midnight] .scene-mountain-sky{display:inline}html[data-theme=midnight] .sun-group{animation-name:midnight-moon-drift}html[data-theme=midnight] .sun{display:none}html[data-theme=midnight] .moon{animation:20s ease-in-out infinite alternate midnight-moon-glow;display:inline}html[data-theme=midnight] .sun-halo{display:none}html[data-theme=midnight] .dune-far{animation-duration:16s}html[data-theme=midnight] .dune-mid{animation-duration:11s}html[data-theme=midnight] .dune-near{animation-duration:7s}html[data-theme=midnight] .cloud{fill:#1a3a50}html[data-theme=midnight] .cloud-a{fill:#1c4258}html[data-theme=midnight] .cloud-b{fill:#163848}html[data-theme=midnight] .cloud-c{fill:#1a3850}.moon,.scene-mountain-sky,.sun-halo-blob{display:none}.sun-halo-blob-a{opacity:.28;animation:22s ease-in-out infinite alternate halo-blob-a-morph}.sun-halo-blob-b{opacity:.18;animation:28s ease-in-out infinite alternate-reverse halo-blob-b-morph}.cloud{fill:#f4e0cc}.cloud-a{fill:#eac8ac;animation:120s ease-in-out infinite alternate cloud-a-drift;transform:translate(210px,168px)}.cloud-b{fill:#e8c4a4;animation:90s ease-in-out infinite alternate-reverse cloud-b-drift;transform:translate(620px,108px)}.cloud-c{fill:#ebb898;animation:150s ease-in-out infinite alternate cloud-c-drift;transform:translate(1048px,198px)}.ridge-far{animation:160s ease-in-out infinite alternate ridge-far-move}.ridge-mid{animation:140s ease-in-out infinite alternate-reverse ridge-mid-move}.ridge-near{animation:180s ease-in-out infinite alternate ridge-near-move}.pine{transform-origin:0 0;animation:18s ease-in-out infinite alternate pine-sway;transform:translate(136px,642px)}.pines{transform-origin:0 0;animation:22s ease-in-out infinite alternate pines-sway;transform:translate(1032px,572px)}@keyframes sun-drift{0%{transform:translate(-280px,56px)}to{transform:translate(90px,-28px)}}@keyframes sun-glow{0%{opacity:.88}to{opacity:1}}@keyframes sun-halo-pulse{0%{opacity:.18}to{opacity:.32}}@keyframes mountain-sun-drift{0%{transform:translate(-160px,148px)scale(.78)}to{transform:translate(36px,118px)scale(.78)}}@keyframes mountain-sun-glow{0%{opacity:.92}to{opacity:1}}@keyframes midnight-moon-drift{0%{transform:translate(-200px,40px)scale(.92)}to{transform:translate(60px,-20px)scale(.92)}}@keyframes midnight-moon-glow{0%{opacity:.82}to{opacity:1}}@keyframes halo-blob-a-morph{0%{d:path("M932 22C990 4 1060 42 1088 108C1118 168 1072 238 1000 252C940 268 862 248 820 198C778 148 792 72 858 42C890 26 910 32 932 22Z")}to{d:path("M948 16C1028 8 1098 62 1082 132C1110 198 1038 262 952 258C868 272 778 228 790 152C762 82 838 22 918 18C928 16 938 18 948 16Z")}}@keyframes halo-blob-b-morph{0%{d:path("M948 28C1025 12 1095 70 1078 138C1092 210 1020 268 940 255C860 270 772 220 788 145C770 80 830 18 910 22C922 24 934 30 948 28Z")}to{d:path("M936 34C1008 8 1088 78 1095 148C1088 218 1012 278 928 262C848 248 768 198 782 128C796 58 848 12 910 18C922 20 930 28 936 34Z")}}@keyframes cloud-a-drift{0%{transform:translate(210px,168px)}to{transform:translate(268px,154px)}}@keyframes cloud-b-drift{0%{transform:translate(620px,108px)}to{transform:translate(560px,122px)}}@keyframes cloud-c-drift{0%{transform:translate(1048px,198px)}to{transform:translate(1100px,186px)}}@keyframes dune-far-move{0%{d:path("M-80 520c180-70 340 40 520-20 190-64 360 36 780-16V800H-80Z");transform:translate(-36px)}to{d:path("M-80 538c150-48 400 18 560-40 170-52 390 48 760-6V800H-80Z");transform:translate(48px)}}@keyframes dune-mid-move{0%{d:path("M-80 590c200-56 390 34 580-12 200-50 380 40 740-10V800H-80Z");transform:translate(28px)}to{d:path("M-80 604c160-38 430 16 560-32 220-44 350 52 760 4V800H-80Z");transform:translate(-40px)}}@keyframes dune-near-move{0%{d:path("M-80 670c220-48 430 28 680-8 180-26 330 22 640 2V800H-80Z");transform:translate(-20px)}to{d:path("M-80 682c180-32 470 14 650-26 200-18 340 28 670 10V800H-80Z");transform:translate(32px)}}@keyframes cactus-sway{0%{transform:translate(136px,668px)rotate(-.8deg)}to{transform:translate(136px,668px)rotate(.9deg)}}@keyframes palm-sway{0%{transform:translate(1032px,636px)rotate(-1.4deg)}to{transform:translate(1032px,636px)rotate(1.6deg)}}@keyframes ridge-far-move{0%{d:path("M-80 510c160-40 240-190 380-200 120-8 200 120 320 90 140-40 200-160 320-130 120 26 240 120 340 140V800H-80Z");transform:translate(-36px)}to{d:path("M-80 525c180-45 260-185 400-200 130-10 210 110 340 80 150-45 210-150 330-120 110 30 230 115 330 135V800H-80Z");transform:translate(48px)}}@keyframes ridge-mid-move{0%{d:path("M-80 560c160-40 260-100 420-110 160-10 260 70 420 40 160-30 320 40 520 30V800H-80Z");transform:translate(28px)}to{d:path("M-80 572c170-38 270-92 430-110 155-8 250 66 410 38 165-28 330 36 530 28V800H-80Z");transform:translate(-40px)}}@keyframes ridge-near-move{0%{d:path("M-80 618c220-32 440 12 680-10 200-62 390-88 680-55V800H-80Z");transform:translate(-20px)}to{d:path("M-80 628c200-24 460 8 660-14 210-54 400-78 700-46V800H-80Z");transform:translate(32px)}}@keyframes pine-sway{0%{transform:translate(136px,642px)rotate(-.8deg)}to{transform:translate(136px,642px)rotate(.9deg)}}@keyframes pines-sway{0%{transform:translate(1032px,572px)rotate(-1.4deg)}to{transform:translate(1032px,572px)rotate(1.6deg)}}@media (prefers-reduced-motion:reduce){.sun-group,.sun,.sun-halo,.sun-halo-blob,.moon,.shape,.cloud,.cactus,.palm,.pine,.pines{animation:none}}
