:root{color:#17233c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fb;font-family:Segoe UI,Arial,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #4569e852}::selection{color:#173384;background:#dce5ff}#root{min-height:100vh}.auth-page{background:radial-gradient(at 50% 5%,#dce5ffcc,#0000 40%),#f5f7fb;place-content:center;justify-items:center;min-height:100vh;padding:32px 20px;display:grid}.auth-card{background:#fff;border:1px solid #e8ebf2;border-radius:20px;width:min(100%,440px);padding:40px;box-shadow:0 18px 55px #20356417}.brand-mark{color:#fff;background:#243f91;border-radius:15px;place-items:center;width:48px;height:48px;font-size:24px;font-weight:700;display:grid}.eyebrow{color:#66759b;letter-spacing:.12em;margin:28px 0 9px;font-size:11px;font-weight:700}.auth-card h1,.page-heading h1,.empty-panel h1{color:#182746;letter-spacing:-.045em;margin:0;font-family:Segoe UI,Arial,sans-serif;font-size:clamp(29px,5vw,36px);font-weight:700;line-height:1.16}.auth-intro{color:#778198;margin:12px 0 27px;font-size:14px;line-height:1.6}.auth-form,.auth-form label{display:grid}.auth-form{gap:18px}.auth-form label,.topic-fields label,.topic-note-field{color:#495671;gap:8px;font-size:13px;font-weight:600}.auth-form input:not([type=checkbox]),.topic-card select,.topic-note-field textarea{color:#263552;background:#fff;border:1px solid #e2e6ef;border-radius:9px;width:100%;transition:border-color .14s,box-shadow .14s}.auth-form input:not([type=checkbox]){min-height:46px;padding:0 13px}.auth-form input:focus,.topic-card select:focus,.topic-note-field textarea:focus{border-color:#839be7;outline:none;box-shadow:0 0 0 3px #4c6edc1a}.field-hint{color:#818ba0;margin-top:-3px;font-size:12px;font-weight:400}.remember-option{align-items:center;color:#66728b!important;gap:9px!important;font-size:13px!important;font-weight:400!important;display:flex!important}.remember-option input{accent-color:#294994;width:16px;height:16px}.primary-button{color:#fff;background:#263f89;border:0;border-radius:9px;min-height:46px;font-size:14px;font-weight:700;transition:background .14s,transform .14s}.primary-button:hover:not(:disabled){background:#1d3477;transform:translateY(-1px)}.primary-button:disabled{cursor:wait;opacity:.7}.form-error,.alert-message{color:#9c3d42;background:#fff5f4;border:1px solid #f1d2d3;border-radius:9px;font-size:13px}.form-error{margin:0;padding:11px 12px}.auth-switch{color:#748098;flex-wrap:wrap;justify-content:center;gap:5px;margin:23px 0 0;font-size:13px;display:flex}.text-button{color:#31519e;font-size:inherit;background:0 0;border:0;padding:0;font-weight:700}.text-button:hover{color:#172f73;text-decoration:underline}.auth-footer{color:#8992a4;margin-top:21px;font-size:12px}.boot-screen{color:#71809b;place-content:center;justify-items:center;gap:13px;min-height:100vh;font-size:14px;display:grid}.boot-screen p{margin:0}.boot-mark{color:#fff;background:#263f89;border-radius:13px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:700;display:grid}.app-shell{background:#f7f8fb;min-height:100vh}.topbar{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-bottom:1px solid #e9ecf2;justify-content:space-between;align-items:center;min-height:70px;padding:0 clamp(20px,5vw,68px);display:flex;position:sticky;top:0}.brand,.topbar-right{align-items:center;display:flex}.brand{color:#24385f;letter-spacing:-.04em;gap:10px;font-size:17px;font-weight:700;text-decoration:none}.brand-light{color:#71809b;font-weight:500}.brand-mark.small{border-radius:11px;width:34px;height:34px;font-size:17px}.topbar-right{gap:18px}.user-greeting{color:#6d7890;font-size:13px}.quiet-button{color:#465777;background:#fff;border:1px solid #e1e6f0;border-radius:8px;min-height:36px;padding:0 12px;font-size:12px;font-weight:600}.quiet-button:hover{background:#f8faff;border-color:#b6c2dd}.workspace{grid-template-columns:238px minmax(0,1fr);width:min(100%,1440px);min-height:calc(100vh - 70px);margin:0 auto;display:grid}.sidebar{background:#fff;border-right:1px solid #e9ecf2;flex-direction:column;padding:31px 16px 22px;display:flex}.sidebar-label{color:#97a0b2;letter-spacing:.11em;margin:0 10px 12px;font-size:10px;font-weight:700}.sidebar-subject-toggle{color:#97a0b2;cursor:pointer;letter-spacing:.11em;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;min-height:34px;margin:7px 3px 6px;padding:0 8px;font-size:10px;font-weight:700;display:flex}.sidebar-subject-toggle:hover{background:#f6f7fb}.sidebar-subject-count{color:#8a94a7;letter-spacing:normal;font-size:10px}.sidebar-subject-chevron{margin-left:auto;font-size:15px;line-height:1}.subject-nav{gap:4px;display:grid}.subject-nav[hidden]{display:none}.subject-link{color:#68758f;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;min-height:42px;padding:0 11px;font-size:13px;font-weight:500;display:flex}.subject-link:hover{background:#f6f7fb}.subject-link.active{color:#274487;background:#eef2fc;font-weight:700}.subject-link-copy{gap:2px;min-width:0;display:grid}.subject-link-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-link-grade{color:#8a94a7;font-size:10px;font-weight:500}.subject-link.active .subject-link-grade{color:#61749e}.subject-dot{border-radius:50%;flex:0 0 9px;width:9px;height:9px}.sidebar-empty{color:#8a94a8;margin:0 10px;font-size:12px}.sidebar-note{background:#fafbfe;border:1px solid #edf0f7;border-radius:10px;align-items:flex-start;gap:9px;margin:auto 3px 4px;padding:13px 11px;display:flex}.sidebar-note-icon{color:#7489ca;font-size:15px}.sidebar-note p{color:#7d879b;margin:0;font-size:11px;line-height:1.5}.main-content{width:min(100%,1030px);padding:42px clamp(22px,5vw,64px) 48px}.page-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:26px;display:flex}.page-heading .eyebrow{margin:0 0 9px}.page-heading h1{font-size:clamp(31px,4vw,42px)}.page-subtitle{color:#828da2;margin:9px 0 0;font-size:13px;line-height:1.6}.exam-date{background:#fff;border:1px solid #e9edf4;border-radius:10px;flex:none;gap:5px;padding:12px 15px;display:grid}.exam-date span{color:#9aa3b4;letter-spacing:.09em;font-size:9px;font-weight:700}.exam-date strong{color:#53617b;font-size:13px}.target-grade-card{text-align:center;align-self:center;justify-items:center;min-width:124px;padding:10px 20px}.target-grade-card strong{color:#294994;font-size:25px;font-weight:750;line-height:1}.exam-countdown-card{text-align:center;align-self:center;justify-items:center;min-width:154px}.exam-countdown-card strong{color:#294994;font-size:21px;font-weight:750;line-height:1.15}.exam-countdown-card .exam-countdown-date{color:#828da2;letter-spacing:normal;font-size:10px;font-weight:500}.progress-panel{background:#fff;border:1px solid #e9ecf2;border-radius:12px;padding:19px 21px 17px}.progress-copy{justify-content:space-between;align-items:flex-start;display:flex}.progress-copy>div{gap:7px;display:grid}.progress-label{color:#8c97aa;letter-spacing:.09em;font-size:10px;font-weight:700}.progress-copy strong{color:#263b67;font-size:22px}.progress-copy strong span{color:#929caf;font-size:15px;font-weight:500}.progress-percent{color:#536dba;font-size:14px;font-weight:700}.progress-track{background:#edf0f6;border-radius:10px;height:7px;margin-top:14px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#6e8be0,#3e5eaf);height:100%;transition:width .18s;display:block}.next-action-panel{background:#f5f8ff;border:1px solid #dfe7f7;border-radius:12px;margin-top:14px;padding:17px 20px}.next-action-heading{align-items:center;gap:9px;display:flex}.next-action-icon{color:#3557a4;background:#e4ecff;border-radius:8px;place-items:center;width:25px;height:25px;font-size:16px;font-weight:700;display:grid}.next-action-heading h2{color:#263653;margin:0;font-size:15px;font-weight:700}.next-action-list{gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.next-action-item{border-top:1px solid #e3e9f5;margin-top:13px;padding-top:11px}.next-action-item strong{color:#52617b;font-size:12px;display:block}.next-action-item p,.next-action-empty{color:#65728a;white-space:pre-wrap;margin:5px 0 0;font-size:13px;line-height:1.55}.section-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin:34px 0 15px;display:flex}.section-heading h2,.empty-panel h2{color:#263653;letter-spacing:-.025em;margin:0;font-size:18px;font-weight:700}.section-heading p{color:#8a94a7;margin:5px 0 0;font-size:12px}.topic-count{color:#62759f;white-space:nowrap;background:#edf1fa;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:700}.topic-list{gap:8px;display:grid}.topic-card{background:#fff;border:1px solid #e8ebf2;border-radius:10px;min-width:0;transition:border-color .14s,box-shadow .14s;overflow:hidden}.topic-card:hover,.topic-card.expanded{border-color:#d7deee}.topic-card.expanded{box-shadow:0 5px 16px #2035640b}.topic-summary-row{align-items:center;gap:8px;padding-right:10px;display:flex}.topic-summary{width:auto;min-height:62px;color:inherit;text-align:left;background:#fff;border:0;flex:auto;justify-content:space-between;align-items:center;gap:18px;padding:10px 15px;display:flex}.topic-summary:hover{background:#fbfcfe}.topic-next-action-button{color:#536789;background:#fff;border:1px solid #dfe5f1;border-radius:8px;flex:none;min-height:30px;padding:0 10px;font-size:10px;font-weight:700;transition:background .14s,border-color .14s,color .14s}.topic-next-action-button:hover:not(:disabled){background:#f4f7ff;border-color:#9eb1e5}.topic-next-action-button.selected{color:#3557a4;background:#edf2ff;border-color:#b7c8f4}.topic-next-action-button:disabled:not(.selected){cursor:not-allowed;opacity:.55}.topic-summary-main,.topic-summary-meta,.topic-summary-copy{align-items:center;min-width:0;display:flex}.topic-summary-main{flex:auto;gap:12px}.topic-chevron{border-bottom:1.5px solid #8794ab;border-right:1.5px solid #8794ab;flex:0 0 8px;width:8px;height:8px;transition:transform .14s;transform:rotate(-45deg)}.topic-chevron.open{transform:translateY(2px)rotate(45deg)}.topic-summary-copy{flex-wrap:wrap;gap:8px 11px}.topic-title{color:#293a5d;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.topic-summary-meta{flex:none;justify-content:flex-end;gap:11px}.status-pill{color:#6d778a;white-space:nowrap;background:#f0f2f6;border-radius:20px;align-items:center;min-height:23px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.status-completed{color:#4e805e;background:#e9f4ed}.status-in-progress{color:#9c7532;background:#fff3dc}.confidence-dot{color:#79849a;white-space:nowrap;align-items:center;gap:5px;font-size:10px;font-weight:600;display:inline-flex}.confidence-dot-mark{background:#9ba4b5;border-radius:50%;width:7px;height:7px}.confidence-green .confidence-dot-mark{background:#54a36b}.confidence-amber .confidence-dot-mark{background:#dfa83d}.confidence-red .confidence-dot-mark{background:#d26666}.summary-date{color:#8893a7;text-align:right;white-space:nowrap;min-width:60px;font-size:10px}.topic-details{border-top:1px solid #f0f2f6;padding:0 17px 17px}.topic-details[hidden]{display:none}.topic-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;padding-top:15px;display:flex}.topic-name-field{color:#495671;gap:8px;width:min(100%,620px);font-size:13px;font-weight:600;display:grid}.topic-name-field textarea{resize:vertical;color:#293a5d;background:#fff;border:1px solid #e2e6ef;border-radius:9px;width:100%;min-height:54px;padding:9px 10px;font-size:13px;font-weight:500;line-height:1.5}.topic-name-field textarea:focus{border-color:#839be7;outline:none;box-shadow:0 0 0 3px #4c6edc1a}.topic-kicker{color:#a0a9ba;letter-spacing:.09em;font-size:9px;font-weight:700}.topic-card h3{color:#293a5d;white-space:pre-line;margin:5px 0 0;font-size:15px;font-weight:700;line-height:1.55}.topic-fields{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) minmax(130px,.8fr);gap:13px;margin-bottom:15px;display:grid}.topic-fields label,.topic-note-field{min-width:0;display:grid}.topic-card select{min-height:38px;padding:0 10px;font-size:12px;font-weight:500}.last-revised{color:#495671;align-content:start;gap:8px;font-size:13px;font-weight:600;display:grid}.last-revised input{color:#52617b;background:#fff;border:1px solid #e2e6ef;border-radius:9px;width:100%;min-height:38px;padding:0 8px;font-size:12px;font-weight:500}.topic-note-field{margin-top:12px}.topic-note-field textarea{resize:vertical;color:#52617b;min-height:55px;padding:9px 10px;font-size:12px;font-weight:400;line-height:1.5}.topic-note-field textarea::placeholder{color:#a6aebc}.topic-actions{justify-content:flex-end;margin-top:15px;display:flex}.danger-button{color:#a34a4e;background:#fff;border:1px solid #f0d7d7;border-radius:8px;min-height:34px;padding:0 11px;font-size:11px;font-weight:600}.danger-button:hover:not(:disabled){background:#fff8f8;border-color:#d7a3a5}.danger-button:disabled{cursor:wait;opacity:.6}.delete-confirmation-backdrop{z-index:20;background:#0f172a7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.delete-confirmation{background:#fff;border:1px solid #e1e5ed;border-radius:12px;width:min(100%,420px);padding:22px;box-shadow:0 18px 50px #0f172a33}.delete-confirmation h2{color:#263653;margin:0;font-size:18px}.delete-confirmation p{color:#64728b;margin:10px 0 16px;font-size:13px;line-height:1.5}.delete-confirmation-actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.theme-dark .delete-confirmation{background:#202b3d;border-color:#39475d}.theme-dark .delete-confirmation h2{color:#e0e8f5}.theme-dark .delete-confirmation p{color:#c1ccdc}.topic-heading-actions{align-items:center;gap:9px;display:flex}.add-topic-button{color:#3b558f;white-space:nowrap;background:#fff;border:1px solid #dfe5f1;border-radius:8px;min-height:32px;padding:0 11px;font-size:11px;font-weight:700}.add-topic-button:hover{background:#f7f9fe;border-color:#bbc8e2}.add-topic-form{background:#fff;border:1px solid #e5e9f1;border-radius:10px;align-items:flex-end;gap:12px;margin-bottom:12px;padding:15px;display:flex}.add-topic-form .topic-name-field{flex:auto}.add-topic-submit{min-width:105px;min-height:38px;padding:0 12px;font-size:12px}.add-topic-submit:disabled{cursor:not-allowed;opacity:.55}.privacy-note{color:#9aa2b1;text-align:center;margin:20px 0 0;font-size:11px}.loading-panel,.empty-panel{color:#8290a9;text-align:center;background:#fff;border:1px solid #e9ecf2;border-radius:12px;justify-items:center;padding:52px 24px;font-size:13px;display:grid}.empty-panel{margin-top:10px}.empty-panel p{color:#8792a7;margin:10px 0 0;font-size:13px;line-height:1.6}.empty-panel h1{max-width:470px;font-size:30px}.empty-icon{color:#738bd0;margin-bottom:13px;font-size:22px}.compact-empty{padding:35px 20px}.alert-message{justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.alert-message .text-button{white-space:nowrap}@media (width<=780px){.workspace{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #e9ecf2;border-right:0;padding:14px 18px}.sidebar-label,.sidebar-note{display:none}.subject-nav{scrollbar-width:thin;gap:7px;display:flex;overflow-x:auto}.subject-link{background:#f7f8fb;flex:none;min-height:48px;padding:0 12px}.subject-link-copy{text-align:left}.subject-link.active{background:#eef2fc}.main-content{width:100%;padding:30px 20px 38px}}@media (width<=540px){.auth-card{border-radius:16px;padding:30px 23px}.auth-page{padding:24px 15px}.topbar{min-height:62px;padding:0 16px}.topbar-right{gap:9px}.user-greeting{text-overflow:ellipsis;white-space:nowrap;max-width:100px;overflow:hidden}.quiet-button{min-height:34px;padding:0 9px}.sidebar{padding:11px 12px}.main-content{padding:25px 14px 32px}.page-heading{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:19px}.page-heading h1{font-size:34px}.exam-date{grid-template-columns:auto auto;align-items:center;gap:10px}.progress-panel{padding:16px}.section-heading{align-items:flex-start;margin-top:27px}.topic-heading-actions{flex-direction:column-reverse;align-items:flex-end}.add-topic-form{flex-direction:column;align-items:stretch}.add-topic-submit{align-self:flex-end}.section-heading p{max-width:245px;line-height:1.5}.topic-card{padding:0}.topic-summary{flex-wrap:wrap;gap:7px;min-height:62px;padding:11px 12px}.topic-summary-main{flex-basis:100%}.topic-summary-meta{padding-left:20px}.topic-summary-row{flex-wrap:wrap;gap:0;padding-right:0}.topic-summary{flex-basis:100%}.topic-next-action-button{margin:0 11px 10px auto}.topic-title{white-space:normal}.topic-details{padding:0 13px 14px}.topic-fields{grid-template-columns:1fr 1fr;gap:11px}.last-revised{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.dashboard-nav-link{margin-bottom:25px}.dashboard-nav-icon{color:#7887a5;text-align:center;width:14px;font-size:15px}.sidebar-add-subject{color:#3b558f;background:#fff;border:1px dashed #d4dced;border-radius:8px;min-height:34px;margin:8px 8px 17px;font-size:11px;font-weight:700}.sidebar-add-subject:hover{background:#f8faff;border-color:#9cadd2}.dashboard-page{gap:25px;display:grid}.dashboard-banner{color:#fff;background:#17366e;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;min-height:91px;padding:18px 22px;display:flex;box-shadow:0 7px 18px #1b376b1f}.dashboard-banner p{color:#c1d0f0;letter-spacing:.1em;margin:0 0 7px;font-size:9px;font-weight:700}.dashboard-banner h1{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(18px,2.4vw,26px)}.dashboard-section{min-width:0}.dashboard-section>h2,.dashboard-table-heading h2{color:#263653;letter-spacing:-.025em;margin:0;font-size:17px;font-weight:700}.dashboard-section>h2{margin-bottom:12px}.metric-grid{gap:10px;display:grid}.status-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.confidence-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.metric-tile{text-align:center;background:#fff;border-top:3px solid #24477f;border-bottom:3px solid #24477f;border-radius:5px;overflow:hidden;box-shadow:0 2px 8px #25396109}.metric-tile>span{color:#4b5e82;background:#e7eefb;min-height:32px;padding:8px 5px 6px;font-size:10px;font-weight:700;display:block}.metric-tile strong{color:#31466e;background:#fff;place-items:center;min-height:47px;font-size:20px;display:grid}.metric-green strong{color:#39734b;background:#e6f3e8}.metric-amber strong{color:#936b22;background:#fff2d6}.metric-red strong{color:#a44c4c;background:#fae3e3}.metric-neutral strong{color:#606b7e;background:#f0f2f6}.dashboard-table-heading{margin:0 0 12px}.dashboard-table-heading p{color:#8a94a7;margin:5px 0 0;font-size:12px}.dashboard-table-filters{align-items:flex-end;gap:11px;margin-bottom:12px;display:flex}.dashboard-table-filters label{color:#68758f;gap:5px;min-width:180px;font-size:11px;font-weight:600;display:grid}.dashboard-table-filters select{color:#465777;min-height:36px;font:inherit;background:#fff;border:1px solid #e1e5ed;border-radius:7px;padding:0 10px}.dashboard-filter-clear{min-height:36px}.dashboard-table-wrap{background:#fff;border:1px solid #e1e5ed;border-radius:9px;overflow-x:auto}.dashboard-table{border-collapse:collapse;color:#4e5b72;text-align:center;width:100%;min-width:790px;font-size:11px}.dashboard-table th,.dashboard-table td{white-space:nowrap;border:1px solid #e2e5eb;padding:9px 8px}.dashboard-table th{color:#fff;background:#28578f;font-size:10px;font-weight:700}.dashboard-table tbody tr:nth-child(2n){background:#f5f7fa}.dashboard-table tbody tr:hover{background:#edf2fb}.dashboard-table th:first-child,.dashboard-table td:first-child{text-align:left}.dashboard-subject-link{color:#31519e;text-align:left;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:11px;font-weight:700;display:inline-flex}.dashboard-subject-link:hover,.focus-subject-link:hover{text-decoration:underline}.revised-date-cell{white-space:nowrap;border-radius:5px;padding:5px 8px;font-size:11px;font-weight:800;display:inline-block}.revision-today{color:#fff;background:#166534}.revision-yesterday{color:#14532d;background:#dcfce7}.revision-recent{color:#713f12;background:#fef3c7}.revision-old{color:#7f1d1d;background:#fee2e2}.revision-not-yet{color:#374151;background:#e5e7eb}.focus-section{padding-bottom:8px}.focus-section .section-heading{margin:0 0 12px}.week-select,.cycle-picker{color:#566580;white-space:nowrap;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.week-select select,.cycle-picker select{color:#344967;background:#fff;border:1px solid #dfe5f0;border-radius:7px;min-height:34px;padding:0 9px;font-size:12px}.focus-session-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:11px;display:grid}.focus-session{background:#fae8e8;border:1px solid #e6bebe;border-radius:9px;align-content:start;justify-items:center;gap:9px;min-height:136px;padding:0 11px 13px;transition:background .14s,border-color .14s;display:grid;overflow:hidden}.focus-session.revised-on-selected-day{background:#e8f5e9;border-color:#b6d8bc}.focus-session-heading{color:#854343;text-align:center;background:#f3d4d4;width:calc(100% + 22px);padding:9px 8px;font-size:11px;font-weight:700}.focus-session.revised-on-selected-day .focus-session-heading{color:#346445;background:#cfe8d3}.focus-subject-link{color:#2b477f;text-align:center;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.focus-unassigned,.focus-no-sessions{color:#78869d;text-align:center;font-size:11px}.focus-no-sessions{background:#fff;border:1px dashed #d6deeb;border-radius:9px;padding:22px}.focus-empty{gap:5px}.focus-empty .primary-button{min-height:36px;margin-top:14px;padding:0 13px;font-size:11px}.subject-page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.subject-form,.timetable-panel{background:#fff;border:1px solid #e7eaf0;border-radius:12px;padding:20px}.subject-form{margin-bottom:20px}.subject-form-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:17px;display:flex}.subject-form-heading h2,.timetable-panel .section-heading h2{color:#263653;margin:0;font-size:17px}.subject-form-heading p,.timetable-panel .section-heading p{color:#8a94a7;margin:5px 0 0;font-size:12px}.subject-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.subject-form label,.cycle-settings label,.timetable-slot-editor label{color:#495671;gap:7px;font-size:12px;font-weight:600;display:grid}.subject-form input:not([type=color]),.subject-form textarea,.cycle-settings input,.timetable-slot-editor select{color:#263552;background:#fff;border:1px solid #e2e6ef;border-radius:8px;width:100%;min-height:38px;padding:8px 10px;font-size:12px}.subject-color-field input{background:#fff;border:1px solid #e2e6ef;border-radius:8px;width:52px;height:38px;padding:3px}.subject-notes-field{color:#495671;gap:7px;margin-top:13px;font-size:12px;font-weight:600;display:grid}.subject-form textarea{resize:vertical}.subject-form-actions{justify-content:flex-end;margin-top:14px;display:flex}.subject-form-actions .primary-button,.cycle-actions .primary-button,.save-timetable-row .primary-button{min-height:37px;padding:0 13px;font-size:11px}.timetable-page>.page-heading{align-items:center}.timetable-panel>.section-heading{margin:0 0 15px}.cycle-picker{margin-bottom:15px}.cycle-static-label{color:#64728b;margin:14px 0 15px;font-size:11px;font-weight:700;display:block}.planning-mode-toggle{background:#f5f7fb;border:1px solid #e6eaf1;border-radius:9px;gap:4px;margin:0 0 16px;padding:4px;display:inline-flex}.planning-mode-toggle button{color:#65728a;background:0 0;border:0;border-radius:6px;min-height:34px;padding:0 12px;font-size:11px;font-weight:700}.planning-mode-toggle button.active{color:#2e4d8c;background:#fff;box-shadow:0 1px 4px #2035641a}.active-schedule-control{color:#2f6d50;align-items:center;gap:10px;min-height:40px;margin:-6px 0 14px;font-size:12px;font-weight:700;display:flex}.active-schedule-control .quiet-button.active{color:#2f6d50;opacity:1;background:#eaf6ee;border-color:#b9ddc6}.cycle-settings{background:#fafbfe;border:1px solid #edf0f5;border-radius:9px;grid-template-columns:minmax(130px,.6fr) minmax(0,2fr);align-items:end;gap:12px;padding:14px;display:grid}.cycle-actions{flex-wrap:wrap;gap:8px;display:flex}.cycle-actions .quiet-button,.cycle-actions .danger-button{min-height:37px}.date-plan-editor{padding-top:5px}.date-plan-toolbar{justify-content:space-between;align-items:flex-end;gap:15px;margin:4px 0 16px;display:flex}.date-plan-toolbar h2{color:#263653;margin:0;font-size:16px}.date-plan-toolbar p{color:#8a94a7;margin:5px 0 0;font-size:11px;line-height:1.5}.date-plan-picker{color:#495671;flex:none;gap:6px;font-size:11px;font-weight:700;display:grid}.date-plan-picker input,.date-plan-session select{color:#344967;background:#fff;border:1px solid #dfe5f0;border-radius:7px;min-height:36px;padding:0 9px;font-size:12px}.date-plan-navigator{align-items:center;gap:8px;display:flex}.date-step-button{color:#344967;cursor:pointer;background:#fff;border:1px solid #dfe5f0;border-radius:7px;place-items:center;width:36px;min-height:36px;padding:0;font-size:21px;line-height:1;display:grid}.date-step-button:disabled{cursor:not-allowed;opacity:.55}.date-plan-picker{gap:3px}.date-plan-picker input{min-width:144px}.date-plan-session-list{gap:9px;display:grid}.date-plan-session{background:#fbfcfe;border:1px solid #e8ebf2;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;padding:11px;display:grid}.date-plan-session label{color:#495671;gap:7px;font-size:10px;font-weight:700;display:grid}.date-plan-loading{padding:20px}.date-plan-actions{justify-content:flex-end;align-items:center;gap:9px;margin-top:12px;display:flex}.date-plan-actions .add-session-button{width:auto;min-width:130px;margin-top:0}.date-plan-actions .primary-button{min-height:37px;padding:0 13px;font-size:11px}.timetable-error{margin-top:13px;padding:10px 12px}.timetable-week-heading{margin:25px 0 12px!important}.timetable-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.timetable-day{background:#fbfcfe;border:1px solid #e8ebf2;border-radius:9px;min-width:0;padding:12px}.timetable-day h3{color:#33486f;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 10px;font-size:12px;display:flex}.timetable-day h3 span{color:#8994a7;white-space:nowrap;font-size:10px;font-weight:500}.timetable-day-sessions{gap:8px;display:grid}.timetable-slot-editor{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px;display:grid}.timetable-slot-editor label{font-size:10px}.timetable-slot-editor select{min-height:34px;padding:0 8px}.remove-session-button,.add-session-button{color:#65728a;background:#fff;border:1px solid #e1e6ef;border-radius:7px;min-height:32px;padding:0 8px;font-size:10px;font-weight:600}.remove-session-button:hover{color:#a34a4e;border-color:#e4c5c6}.add-session-button{color:#3b558f;border-style:dashed;width:100%;margin-top:9px}.no-day-sessions{color:#9aa3b3;margin:1px 0;font-size:10px}.save-timetable-row{align-items:center;gap:12px;margin-top:15px;display:flex}@media (width<=780px){.sidebar-add-subject{flex:none;margin:8px 0 0;padding:0 10px}.dashboard-nav-link,.timetable-nav-link{background:#f7f8fb;flex:none;min-height:38px;margin:0;padding:0 12px}.sidebar{align-items:flex-start}.main-content{max-width:none}.dashboard-banner{flex-direction:column;align-items:flex-start}.status-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=540px){.dashboard-page{gap:21px}.dashboard-banner{padding:17px}.dashboard-banner h1{font-size:20px}.status-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.confidence-metrics{gap:7px}.metric-tile>span{font-size:9px}.metric-tile strong{min-height:41px;font-size:18px}.dashboard-table{min-width:780px}.focus-section .section-heading{flex-direction:column}.focus-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subject-page-actions,.subject-page-actions .exam-date{width:100%}.subject-form,.timetable-panel{padding:14px}.subject-form-grid,.timetable-days,.cycle-settings{grid-template-columns:1fr}.date-plan-toolbar{flex-direction:column;align-items:stretch}.date-plan-picker{width:auto}.date-plan-navigator{justify-content:space-between;width:100%}.date-plan-actions{flex-wrap:wrap}.cycle-actions>*{flex:auto}}.menu-toggle{flex:0 0 38px;place-items:center;width:38px;min-height:38px;padding:0;font-size:17px;display:grid}.topbar{justify-content:flex-start;gap:14px}.topbar-right{margin-left:auto}.main-content{width:100%;max-width:none}.workspace{width:100%}.app-shell.sidebar-collapsed .workspace{grid-template-columns:minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{display:none}.theme-toggle{min-width:82px}.timetable-overview-actions{flex-wrap:wrap;flex:none;gap:8px;display:flex}.timetable-overview-actions .primary-button{min-height:36px;padding:0 12px;font-size:11px}.timetable-overview-empty{gap:7px}.timetable-overview-empty .primary-button{min-height:37px;margin-top:12px;padding:0 13px;font-size:11px}.timetable-overview-panel{background:#fff;border:1px solid #e7eaf0;border-radius:12px;min-width:0;padding:20px}.timetable-overview-toolbar,.timetable-overview-cycle{justify-content:space-between;align-items:center;gap:15px;display:flex}.timetable-overview-toolbar{margin-bottom:17px}.timetable-overview-cycle{flex-wrap:wrap;justify-content:flex-start}.timetable-overview-cycle .cycle-picker{margin-bottom:0}.cycle-status{color:#647087;background:#f0f2f6;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700}.cycle-status.active{color:#427350;background:#e8f4eb}.calendar-week-navigation{color:#566580;justify-content:flex-end;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.calendar-week-arrow{color:#344967;cursor:pointer;background:#fff;border:1px solid #dfe5ee;border-radius:7px;place-items:center;width:34px;min-height:34px;padding:0;font-size:20px;line-height:1;display:grid}.calendar-current-week{color:#344967;cursor:pointer;background:#fff;border:1px solid #dfe5ee;border-radius:7px;min-height:32px;padding:0 9px;font-size:10px;font-weight:700}.cycle-start-date{color:#8993a5;font-size:11px}.timetable-overview-table-wrap{border:1px solid #dfe5ee;border-radius:9px;overflow-x:auto}.timetable-overview-table{border-collapse:collapse;color:#4a5871;text-align:center;width:100%;min-width:880px;font-size:12px}.timetable-overview-table th,.timetable-overview-table td{border:1px solid #e3e7ed;min-width:95px;padding:13px 10px}.timetable-overview-table thead th{color:#fff;background:#28578f;font-size:11px;font-weight:700}.timetable-overview-table thead th:first-child{text-align:left;min-width:110px}.timetable-overview-table tbody tr:nth-child(2n){background:#f7f8fb}.timetable-overview-table tbody th{color:#435575;text-align:left;background:#edf2fa;font-size:11px;font-weight:700}.timetable-subject-chip{overflow-wrap:anywhere;color:#2e4d7f;background:#eaf2ff;border:1px solid #d7e3f5;border-radius:7px;max-width:100%;padding:7px 9px;font-size:11px;font-weight:700;display:inline-block}.timetable-empty-slot{color:#b1b8c5}.empty-week-cell{color:#8792a7;text-align:center;font-size:12px;padding:28px!important}.timetable-table-hint{color:#959eae;margin:11px 0 0;font-size:10px}.theme-dark{color:#e6ebf4;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#111827}.theme-dark .topbar,.theme-dark .sidebar,.theme-dark .progress-panel,.theme-dark .next-action-panel,.theme-dark .exam-date,.theme-dark .topic-card,.theme-dark .topic-summary,.theme-dark .add-topic-form,.theme-dark .subject-form,.theme-dark .timetable-panel,.theme-dark .timetable-overview-panel,.theme-dark .dashboard-table-wrap,.theme-dark .metric-tile,.theme-dark .loading-panel,.theme-dark .empty-panel,.theme-dark .focus-no-sessions,.theme-dark .timetable-overview-table-wrap{color:#e6ebf4;background-color:#1b2535;border-color:#303b4e}.theme-dark .topbar,.theme-dark .sidebar{border-color:#303b4e}.theme-dark .brand,.theme-dark .page-heading h1,.theme-dark .empty-panel h1,.theme-dark .dashboard-section>h2,.theme-dark .dashboard-table-heading h2,.theme-dark .section-heading h2,.theme-dark .empty-panel h2,.theme-dark .subject-form-heading h2,.theme-dark .timetable-panel .section-heading h2,.theme-dark .timetable-day h3,.theme-dark .progress-copy strong,.theme-dark .topic-title,.theme-dark .topic-card h3{color:#e6ebf4}.theme-dark .brand-light,.theme-dark .page-subtitle,.theme-dark .user-greeting,.theme-dark .sidebar-label,.theme-dark .sidebar-note p,.theme-dark .dashboard-table-heading p,.theme-dark .section-heading p,.theme-dark .subject-form-heading p,.theme-dark .timetable-panel .section-heading p,.theme-dark .cycle-start-date,.theme-dark .privacy-note,.theme-dark .next-action-item strong,.theme-dark .next-action-item p,.theme-dark .next-action-empty,.theme-dark .summary-date,.theme-dark .field-hint{color:#a7b2c5}.theme-dark .next-action-panel{background:#202b3d;border-color:#303b4e}.theme-dark .target-grade-card strong,.theme-dark .exam-countdown-card strong{color:#b8ccff}.theme-dark .exam-countdown-card .exam-countdown-date{color:#a7b2c5}.theme-dark .next-action-heading h2{color:#e6ebf4}.theme-dark .next-action-icon{color:#b8ccff;background:#2a3d60}.theme-dark .next-action-item{border-color:#303b4e}.theme-dark .topic-next-action-button{color:#c1ccdc;background:#202b3d;border-color:#39475d}.theme-dark .topic-next-action-button:hover:not(:disabled),.theme-dark .topic-next-action-button.selected{color:#dce8ff;background:#2a3850;border-color:#607394}.theme-dark .subject-link{color:#bac5d8}.theme-dark .sidebar-subject-toggle{color:#a7b2c5}.theme-dark .sidebar-subject-toggle:hover{background:#263752}.theme-dark .sidebar-subject-count,.theme-dark .dashboard-table-filters label{color:#a7b2c5}.theme-dark .dashboard-table-filters select{color:#e6ebf4;background:#141d2b;border-color:#3a4659}.theme-dark .subject-link-grade,.theme-dark .subject-link.active .subject-link-grade{color:#a7b2c5}.theme-dark .subject-link:hover,.theme-dark .subject-link.active,.theme-dark .dashboard-nav-link.active,.theme-dark .timetable-nav-link.active{color:#dce8ff;background:#263752}.theme-dark .sidebar-note,.theme-dark .cycle-settings,.theme-dark .timetable-day,.theme-dark .planning-mode-toggle,.theme-dark .date-plan-session{background:#202b3d;border-color:#303b4e}.theme-dark .cycle-static-label,.theme-dark .date-plan-picker,.theme-dark .date-plan-toolbar h2,.theme-dark .date-plan-session label{color:#c1ccdc}.theme-dark .date-plan-toolbar p{color:#a7b2c5}.theme-dark .timetable-day h3 span{color:#9eacc1}.theme-dark .planning-mode-toggle button{color:#c1ccdc}.theme-dark .planning-mode-toggle button.active{color:#dce8ff;background:#303d53}.theme-dark .active-schedule-control{color:#93d6ad}.theme-dark .active-schedule-control .quiet-button.active{color:#a7e1b8;background:#263f32;border-color:#3a6248}.theme-dark .sidebar-add-subject,.theme-dark .quiet-button,.theme-dark .remove-session-button,.theme-dark .add-session-button,.theme-dark .topic-count,.theme-dark .cycle-picker select,.theme-dark .week-select select{color:#d8e1ef;background:#202b3d;border-color:#39475d}.theme-dark .quiet-button:hover,.theme-dark .add-session-button:hover,.theme-dark .sidebar-add-subject:hover{background:#2a3850;border-color:#607394}.theme-dark .topic-summary:hover,.theme-dark .dashboard-table tbody tr:hover{background:#26344a}.theme-dark .topic-details{border-color:#303b4e}.theme-dark .auth-form input:not([type=checkbox]),.theme-dark .date-plan-picker input,.theme-dark .date-step-button,.theme-dark .calendar-week-arrow,.theme-dark .calendar-current-week,.theme-dark .date-plan-session select,.theme-dark .topic-card select,.theme-dark .topic-name-field textarea,.theme-dark .topic-note-field textarea,.theme-dark .last-revised input,.theme-dark .subject-form input:not([type=color]),.theme-dark .subject-form textarea,.theme-dark .cycle-settings input,.theme-dark .timetable-slot-editor select{color:#e2e8f2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#141d2b;border-color:#3a4659}.theme-dark .topic-fields label,.theme-dark .topic-note-field,.theme-dark .last-revised,.theme-dark .subject-form label,.theme-dark .cycle-settings label,.theme-dark .timetable-slot-editor label,.theme-dark .subject-notes-field,.theme-dark .week-select,.theme-dark .cycle-picker{color:#c1ccdc}.theme-dark .dashboard-table,.theme-dark .timetable-overview-table{color:#c7d1e0}.theme-dark .calendar-week-navigation{color:#c1ccdc}.theme-dark .revision-today{color:#f0fdf4;background:#14532d}.theme-dark .revision-yesterday{color:#bbf7d0;background:#1f4930}.theme-dark .revision-recent{color:#fef3c7;background:#574411}.theme-dark .revision-old{color:#fee2e2;background:#5b2525}.theme-dark .revision-not-yet{color:#e5e7eb;background:#374151}.theme-dark .dashboard-table th,.theme-dark .timetable-overview-table thead th{background:#254a78}.theme-dark .dashboard-table td,.theme-dark .dashboard-table th,.theme-dark .timetable-overview-table td,.theme-dark .timetable-overview-table th{border-color:#374358}.theme-dark .dashboard-table tbody tr:nth-child(2n),.theme-dark .timetable-overview-table tbody tr:nth-child(2n){background:#202b3d}.theme-dark .dashboard-subject-link,.theme-dark .focus-subject-link{color:#a9c5ff}.theme-dark .timetable-overview-table tbody th{color:#d5deeb;background:#26344a}.theme-dark .timetable-subject-chip{color:#d1e1ff;background:#263d5b;border-color:#3d5473}.theme-dark .focus-session{background:#35252c;border-color:#6a454b}.theme-dark .focus-session .focus-session-heading{color:#f1c8cc;background:#4a3037}.theme-dark .focus-session.revised-on-selected-day{background:#22372b;border-color:#3c674c}.theme-dark .focus-session.revised-on-selected-day .focus-session-heading{color:#c7ebcf;background:#2d4b37}.theme-dark .focus-subject-link{color:#c1d5ff}.theme-dark .focus-unassigned,.theme-dark .focus-no-sessions,.theme-dark .no-day-sessions,.theme-dark .timetable-table-hint,.theme-dark .empty-week-cell{color:#a7b2c5}.theme-dark .metric-tile>span{color:#cbd7e9;background:#273951}.theme-dark .metric-tile strong{color:#e0e8f5;background:#1b2535}.theme-dark .metric-green strong{color:#c4e7cd;background:#274531}.theme-dark .metric-amber strong{color:#f0d99f;background:#4a3c22}.theme-dark .metric-red strong{color:#f2c3c6;background:#4b2d32}.theme-dark .metric-neutral strong,.theme-dark .status-pill{color:#d0d8e5;background:#303b4e}.theme-dark .status-completed{color:#c4e7cd;background:#274531}.theme-dark .status-in-progress{color:#f0d99f;background:#4a3c22}.theme-dark .confidence-dot{color:#bdc8d8}.theme-dark .cycle-status{color:#d0d8e5;background:#303b4e}.theme-dark .cycle-status.active{color:#c4e7cd;background:#274531}.theme-dark .alert-message{color:#f0c5c9;background:#3a272d;border-color:#75464d}@media (width<=780px){.topbar{gap:9px}.topbar-right{gap:8px}.app-shell.sidebar-collapsed .workspace{grid-template-columns:minmax(0,1fr)}.timetable-overview-toolbar{flex-direction:column;align-items:flex-start}.calendar-week-navigation{justify-content:space-between;width:100%}}@media (width<=540px){.dashboard-table-filters{flex-direction:column;align-items:stretch}.dashboard-table-filters label{min-width:0}.dashboard-filter-clear{align-self:flex-start}.topbar{gap:7px;padding:0 10px}.brand{gap:6px;font-size:14px}.brand-mark.small{border-radius:9px;width:30px;height:30px;font-size:15px}.menu-toggle{flex-basis:32px;width:32px;min-height:34px}.topbar-right{gap:6px}.theme-toggle{min-width:0;padding:0 7px;font-size:10px}.topbar-right .quiet-button:last-child{padding:0 7px;font-size:10px}.timetable-overview-panel{padding:13px}.timetable-overview-actions{width:100%}.timetable-overview-actions>button{flex:auto}}
