:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f5f7fb;font-family:Inter,system-ui,Arial,sans-serif}html,body,#root{width:100%;min-width:100%;min-height:100%;margin:0}body{color:#172033;background:#f5f7fb;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}input,select,textarea{color:#172033;background:#fff}input::placeholder,textarea::placeholder{color:#9aa3b4;opacity:1}input[type=datetime-local],input[type=time],input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}input[type=range]{accent-color:#5b63f6}body{color:#172033;background:#f5f7fb;margin:0;font-family:Inter,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}.app{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border:1px solid #e6e9f0;border-radius:22px;width:min(430px,100%);padding:34px;box-shadow:0 25px 70px #1720331a}.logo{color:#fff;background:#5b63f6;border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:26px;font-size:22px;font-weight:800;display:grid}.eyebrow{letter-spacing:.15em;color:#69758d;font-size:11px;font-weight:800}h1{letter-spacing:-.04em;margin:8px 0;font-size:32px}.subtitle{color:#778197;margin-bottom:28px}form{gap:17px;display:grid}.field{gap:7px;display:grid}.field label{color:#69758d;font-size:11px;font-weight:800}.field input{border:1px solid #dfe3eb;border-radius:10px;outline:none;width:100%;padding:13px 14px}.field input:focus{border-color:#5b63f6}.primary{color:#fff;background:#5b63f6;border:none;border-radius:10px;margin-top:4px;padding:14px;font-weight:800}.primary:disabled{opacity:.6}.message{color:#4850ca;background:#f3f4ff;border-radius:9px;margin-top:18px;padding:12px;font-size:13px}.switch{color:#778197;text-align:center;margin-top:24px;font-size:13px}.switch button{color:#5b63f6;background:0 0;border:0;font-weight:800}.dashboard{background:#fff;border:1px solid #e6e9f0;border-radius:22px;justify-content:space-between;align-items:center;gap:20px;width:min(900px,100%);padding:38px;display:flex}.dashboard button{color:#fff;background:#172033;border:0;border-radius:10px;padding:12px 18px;font-weight:700}@media (width<=600px){.auth-card{padding:24px}.dashboard{display:block}.dashboard button{margin-top:18px}}.dashboard-page{display:block}.dashboard-wrapper{width:min(1150px,100%);margin:0 auto}.subjects-section{margin-top:24px}.subjects-header h2{margin:7px 0 5px;font-size:28px}.subjects-header p{color:#778197;margin:0}.subjects-layout{grid-template-columns:360px 1fr;gap:20px;margin-top:22px;display:grid}.subject-form,.subjects-list{background:#fff;border:1px solid #e6e9f0;border-radius:18px;padding:22px}.subject-form h3,.subjects-list>h3{margin-top:0}.subject-form{gap:15px;height:max-content;display:grid}.subjects-list{gap:12px;display:grid}.subject-card{border:1px solid #e6e9f0;border-radius:14px;padding:18px}.subject-card h3{margin:6px 0;font-size:20px}.subject-card p{color:#778197;margin:0 0 12px}.subject-meta{flex-wrap:wrap;gap:8px;display:flex}.subject-meta span{color:#5058ce;background:#f3f4ff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.subject-empty{text-align:center;color:#778197;border:1px dashed #dfe3eb;border-radius:14px;padding:40px 20px}@media (width<=760px){.subjects-layout{grid-template-columns:1fr}}.form-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.form-title-row h3{margin:0}.editing-badge{color:#b57810;background:#fff3d7;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.subject-card-content{justify-content:space-between;align-items:center;gap:20px;display:flex}.subject-actions{gap:8px;display:flex}.subject-actions button{border:1px solid #e1e5ed;border-radius:9px;padding:9px 13px;font-weight:700}.edit-button{color:#5058ce;background:#f3f4ff}.delete-button{color:#db4f5e;background:#fff1f2}.cancel-edit{color:#69758d;background:#fff;border:1px solid #dfe3eb;border-radius:10px;padding:12px;font-weight:700}@media (width<=600px){.subject-card-content{display:block}.subject-actions{margin-top:16px}}.form-grid-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.schedule-builder{border-top:1px solid #e6e9f0;gap:14px;margin-top:5px;padding-top:18px;display:grid}.schedule-label{color:#69758d;font-size:11px;font-weight:800;display:block}.schedule-help{color:#8a93a7;margin:5px 0 0;font-size:12px}.day-selector{flex-wrap:wrap;gap:6px;display:flex}.day-button{color:#69758d;background:#fff;border:1px solid #dfe3eb;border-radius:9px;min-width:44px;padding:9px 10px;font-size:11px;font-weight:800}.day-button.selected{color:#fff;background:#5b63f6;border-color:#5b63f6}.schedule-rows{gap:10px;display:grid}.schedule-row{background:#f8f9fc;border:1px solid #e8ebf2;border-radius:12px;padding:13px}.schedule-row>strong{margin-bottom:9px;font-size:13px;display:block}.time-fields{grid-template-columns:1fr auto 1fr;align-items:end;gap:8px;display:grid}.time-arrow{color:#929bad;padding-bottom:12px}.schedule-empty{text-align:center;color:#929bad;border:1px dashed #dfe3eb;border-radius:10px;padding:16px;font-size:12px}.saved-schedules{border-top:1px solid #e8ebf2;gap:7px;margin-top:18px;padding-top:15px;display:grid}.schedule-title{letter-spacing:.12em;color:#8a93a7;font-size:10px;font-weight:800}.saved-schedule-row{justify-content:space-between;gap:20px;font-size:12px;display:flex}.saved-schedule-row strong{color:#172033}.saved-schedule-row span{color:#69758d}.no-schedule{color:#929bad;font-size:12px}@media (width<=600px){.form-grid-two,.time-fields{grid-template-columns:1fr}.time-arrow{display:none}.saved-schedule-row{display:block}}.tasks-section{margin-top:34px}.tasks-layout{grid-template-columns:360px 1fr;gap:20px;margin-top:22px;display:grid}.task-form,.task-list{background:#fff;border:1px solid #e6e9f0;border-radius:18px;padding:22px}.task-form{gap:15px;height:max-content;display:grid}.task-form select,.task-form textarea{width:100%;font:inherit;background:#fff;border:1px solid #dfe3eb;border-radius:10px;outline:none;padding:12px 13px}.task-form textarea{resize:vertical}.task-list{gap:12px;display:grid}.task-card{border:1px solid #e6e9f0;border-radius:15px;padding:18px}.task-top{justify-content:space-between;gap:18px;display:flex}.task-top h3{margin:6px 0}.task-top p{color:#778197;margin:0}.task-type{letter-spacing:.12em;color:#6e7890;font-size:10px;font-weight:800}.task-status{border-radius:999px;height:max-content;padding:7px 10px;font-size:11px;font-weight:800}.status-pending{color:#5058ce;background:#eef0ff}.status-due_soon{color:#b97709;background:#fff5df}.status-overdue{color:#d94f5d;background:#fff0f1}.status-completed_late{color:#8056c7;background:#f5edff}.task-details{grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0;display:grid}.task-details div{background:#f8f9fc;border-radius:10px;padding:11px}.task-details small{color:#929bad;margin-bottom:5px;display:block}.task-details strong{font-size:12px}.task-description{color:#69758d;line-height:1.6}@media (width<=850px){.tasks-layout{grid-template-columns:1fr}}@media (width<=600px){.task-details{grid-template-columns:1fr 1fr}.task-top{display:block}.task-status{margin-top:12px;display:inline-block}}.field input,.field select,.field textarea,.task-form input,.task-form select,.task-form textarea,.subject-form input,.subject-form select,.subject-form textarea{border:1px solid #dfe3eb;border-radius:10px;outline:none;width:100%;color:#172033!important;background:#fff!important}.field input,.field select,.task-form input,.task-form select,.subject-form input,.subject-form select{min-height:44px;padding:11px 13px}.field textarea,.task-form textarea,.subject-form textarea{padding:12px 13px}.field input:focus,.field select:focus,.field textarea:focus,.task-form input:focus,.task-form select:focus,.task-form textarea:focus{border-color:#5b63f6;box-shadow:0 0 0 3px #5b63f61a}.field label{color:#69758d}select{cursor:pointer}select option{color:#172033;background:#fff}input[type=datetime-local]{color:#172033!important;background:#fff!important}.availability-section{margin-top:34px;margin-bottom:60px}.availability-layout{grid-template-columns:360px 1fr;gap:20px;margin-top:22px;display:grid}.availability-form,.availability-list{background:#fff;border:1px solid #e6e9f0;border-radius:18px;padding:22px}.availability-form{gap:15px;height:max-content;display:grid}.availability-form select{color:#172033;background:#fff;border:1px solid #dfe3eb;border-radius:10px;outline:none;width:100%;min-height:44px;padding:11px 13px}.availability-form select:focus{border-color:#5b63f6;box-shadow:0 0 0 3px #5b63f61a}.availability-list-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.availability-list-header h3{margin:0 0 5px}.availability-list-header p{color:#8a93a7;margin:0;font-size:13px}.availability-count{color:#5058ce;white-space:nowrap;background:#f3f4ff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.availability-grid{gap:10px;display:grid}.availability-day{border:1px solid #e8ebf2;border-radius:13px;padding:14px}.availability-day-title{align-items:center;gap:10px;margin-bottom:10px;display:flex}.availability-day-title>span{color:#5058ce;background:#f3f4ff;border-radius:8px;place-items:center;width:43px;height:29px;font-size:10px;font-weight:800;display:grid}.availability-day-title strong{font-size:13px}.unavailable-text{color:#a0a8b7;margin:0;font-size:12px}.availability-times{gap:8px;display:grid}.availability-window{background:#f8f9fc;border-radius:9px;justify-content:space-between;align-items:center;gap:15px;padding:10px 12px;display:flex}.availability-window>div:first-child{align-items:center;gap:8px;font-size:12px;display:flex}.availability-window span{color:#9ba4b5}.availability-actions{gap:6px;display:flex}.availability-actions button{color:#59647a;background:#fff;border:1px solid #e0e4ec;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:700}.availability-actions .availability-delete{color:#d94f5d}@media (width<=850px){.availability-layout{grid-template-columns:1fr}}@media (width<=600px){.availability-list-header{display:block}.availability-count{margin-top:10px;display:inline-block}.availability-window{align-items:flex-start}}.study-plan-section{margin-top:34px;margin-bottom:80px}.planner-header{color:#fff;background:#172033;border-radius:20px;justify-content:space-between;align-items:center;gap:25px;padding:28px;display:flex}.planner-header h2{margin:7px 0 6px;font-size:28px}.planner-header p{color:#b8c0d0;margin:0}.planner-header .eyebrow{color:#9ca8ff}.generate-button{color:#fff;white-space:nowrap;background:#626af7;border:0;border-radius:11px;padding:14px 18px;font-weight:800}.generate-button:disabled{opacity:.6}.planner-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;display:grid}.planner-stats>div{background:#fff;border:1px solid #e6e9f0;border-radius:14px;padding:17px}.planner-stats span{color:#8a93a7;letter-spacing:.1em;font-size:10px;font-weight:800;display:block}.planner-stats strong{margin-top:7px;font-size:22px;display:block}.planner-warnings{background:#fffaf0;border:1px solid #f1d9a6;border-radius:14px;margin-top:16px;padding:18px}.planner-warnings h3{margin-top:0}.planner-warning{border-top:1px solid #f2e4c5;justify-content:space-between;gap:20px;padding:10px 0;font-size:12px;display:flex}.planner-warning span{color:#876d3a}.plan-list{background:#fff;border:1px solid #e6e9f0;border-radius:18px;margin-top:16px;padding:22px}.plan-list>h3{margin-top:0}.plan-card{border:1px solid #e8ebf2;border-radius:13px;grid-template-columns:210px 1fr;align-items:center;gap:20px;margin-top:10px;padding:17px;display:grid}.plan-time{color:#69758d;gap:4px;font-size:12px;display:grid}.plan-time strong{color:#5b63f6}.plan-main h3{margin:5px 0 10px}.plan-tags{flex-wrap:wrap;gap:7px;display:flex}.plan-tags span{color:#5058ce;text-transform:capitalize;background:#f3f4ff;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}@media (width<=700px){.planner-header{display:block}.generate-button{width:100%;margin-top:18px}.planner-stats,.plan-card{grid-template-columns:1fr}.planner-warning{display:block}.planner-warning span{margin-top:5px;display:block}}.session-actions{margin-top:13px}.finish-session-button{color:#fff;background:#172033;border:0;border-radius:9px;padding:9px 13px;font-weight:700}.session-note{color:#8a93a7;font-size:11px}.session-complete{color:#15916a;font-size:12px;font-weight:700}.session-missed{color:#d94f5d;font-size:12px;font-weight:700}.session-status{text-transform:capitalize}.status-upcoming{color:#5058ce!important;background:#eef0ff!important}.status-in_progress{color:#1673b8!important;background:#e8f5ff!important}.status-completed{color:#15916a!important;background:#e9f9f3!important}.status-missed{color:#d94f5d!important;background:#fff0f1!important}.app-shell{background:#f5f7fb;grid-template-columns:245px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{color:#fff;background:#151d2d;border-right:1px solid #ffffff0f;flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:11px;padding:4px 8px 25px;display:flex}.sidebar-logo{background:#6068f6;border-radius:11px;place-items:center;width:40px;height:40px;font-size:18px;font-weight:900;display:grid}.sidebar-brand>div:last-child{display:grid}.sidebar-brand strong{font-size:15px}.sidebar-brand span{color:#8993a9;text-transform:uppercase;letter-spacing:.12em;margin-top:2px;font-size:10px}.sidebar-nav{gap:5px;display:grid}.sidebar-nav button{color:#929caf;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;width:100%;padding:11px 12px;font-size:13px;font-weight:700;transition:all .15s;display:flex}.sidebar-nav button:hover{color:#fff;background:#ffffff0d}.sidebar-nav button.active{color:#fff;background:#6068f6}.sidebar-nav button>span{text-align:center;width:21px;font-size:16px}.sidebar-user{border-top:1px solid #ffffff14;grid-template-columns:35px minmax(0,1fr) 32px;align-items:center;gap:9px;margin-top:auto;padding:13px 8px 3px;display:grid}.sidebar-avatar{background:#242e42;border-radius:10px;place-items:center;width:35px;height:35px;font-size:12px;font-weight:900;display:grid}.sidebar-user-info{min-width:0;display:grid}.sidebar-user-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.sidebar-user-info span{text-overflow:ellipsis;white-space:nowrap;color:#828da2;margin-top:2px;font-size:9px;overflow:hidden}.sidebar-logout{color:#929caf;background:0 0;border:0;border-radius:8px;height:32px;font-size:16px}.sidebar-logout:hover{color:#fff;background:#ffffff0f}.app-topbar{background:#ffffffe6;border-bottom:1px solid #e8ebf2;justify-content:space-between;align-items:center;gap:20px;min-height:84px;padding:17px 30px;display:flex}.app-topbar h1{letter-spacing:-.03em;margin:0;font-size:21px}.app-topbar p{color:#8a93a7;margin:4px 0 0;font-size:11px}.topbar-badge{color:#565fd5;letter-spacing:.12em;background:#f0f1ff;border-radius:8px;padding:7px 10px;font-size:9px;font-weight:900}.page-content{width:min(1200px,100%);margin:0 auto;padding:28px}.home-dashboard{gap:18px;display:grid}.welcome-panel{color:#fff;background:#172033;border-radius:22px;justify-content:space-between;align-items:center;gap:30px;min-height:190px;padding:32px;display:flex}.welcome-panel .eyebrow{color:#969fff}.welcome-panel h1{margin:8px 0;font-size:34px}.welcome-panel p{color:#aeb7c9;max-width:540px;margin:0;line-height:1.6}.welcome-action{color:#fff;white-space:nowrap;background:#626af7;border:0;border-radius:11px;padding:14px 17px;font-weight:800}.dashboard-stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.dashboard-stat-card{color:#172033;text-align:left;background:#fff;border:1px solid #e6e9f0;border-radius:15px;min-width:0;padding:18px}.dashboard-stat-card:hover{border-color:#cdd1ff;transform:translateY(-1px)}.dashboard-stat-card span{color:#8a93a7;letter-spacing:.1em;font-size:9px;font-weight:900;display:block}.dashboard-stat-card strong{margin:6px 0;font-size:25px;display:block}.dashboard-stat-card small{color:#8a93a7}.dashboard-columns{grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:15px;display:grid}.dashboard-panel{background:#fff;border:1px solid #e6e9f0;border-radius:17px;padding:21px}.panel-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px;display:flex}.panel-heading h2{margin:5px 0 0;font-size:19px}.panel-heading button{color:#5962db;background:0 0;border:0;font-size:11px;font-weight:800}.deadline-list{gap:8px;display:grid}.deadline-item{border:1px solid #edf0f5;border-radius:11px;justify-content:space-between;align-items:center;gap:15px;padding:13px;display:flex}.deadline-item>div{gap:3px;min-width:0;display:grid}.deadline-type{color:#8a93a7;text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:900}.deadline-item strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.deadline-item small{color:#929bad;font-size:10px}.dashboard-empty{color:#929bad;text-align:center;border:1px dashed #dfe3eb;border-radius:11px;padding:30px 15px;font-size:12px}.quick-panel h2{margin:5px 0 16px;font-size:19px}.quick-panel>button{color:#172033;text-align:left;background:#f9fafc;border:1px solid #e9ebf2;border-radius:10px;gap:3px;width:100%;margin-top:7px;padding:12px;display:grid}.quick-panel>button:hover{background:#f5f6ff;border-color:#cdd1ff}.quick-panel>button strong{font-size:11px}.quick-panel>button span{color:#929bad;font-size:9px}.page-content .subjects-section,.page-content .tasks-section,.page-content .availability-section,.page-content .study-plan-section{margin-top:0}@media (width<=900px){.app-shell{grid-template-columns:1fr}.app-sidebar{height:auto;padding:12px;position:static}.sidebar-brand{padding-bottom:12px}.sidebar-nav{display:flex;overflow-x:auto}.sidebar-nav button{white-space:nowrap;width:auto}.sidebar-user{display:none}.dashboard-stat-grid{grid-template-columns:1fr 1fr}.dashboard-columns{grid-template-columns:1fr}}@media (width<=600px){.page-content{padding:16px}.app-topbar{padding:15px 16px}.topbar-badge{display:none}.welcome-panel{padding:24px;display:block}.welcome-panel h1{font-size:27px}.welcome-action{width:100%;margin-top:20px}.dashboard-stat-grid{grid-template-columns:1fr 1fr}}.task-actions{flex-wrap:wrap;gap:8px;display:flex}.task-actions button{border-radius:9px;padding:9px 13px;font-weight:700}.complete-task-button{color:#fff;background:#15916a;border:0}.complete-task-button:hover{background:#117b5a}.calendar-section{gap:22px;display:grid}.calendar-grid{grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;padding-bottom:8px;display:grid;overflow-x:auto}.calendar-day{background:#fff;border:1px solid #e6e9f0;border-radius:15px;min-width:150px;overflow:hidden}.calendar-day-header{background:#fafbfc;border-bottom:1px solid #edf0f5;justify-items:center;padding:15px;display:grid}.calendar-day-header span{color:#7f899d;text-transform:uppercase;font-size:10px;font-weight:800}.calendar-day-header strong{margin:3px 0;font-size:24px}.calendar-day-header small{color:#9aa3b4}.calendar-events{gap:8px;padding:10px;display:grid}.calendar-empty{text-align:center;color:#a0a8b7;padding:25px 8px;font-size:11px}.calendar-event{border-left:3px solid;border-radius:10px;gap:4px;padding:10px;display:grid}.calendar-event-type{letter-spacing:.1em;text-transform:uppercase;font-size:8px;font-weight:900}.calendar-event strong{font-size:11px}.calendar-event small,.calendar-event time{color:#737e92;font-size:9px}.calendar-class{background:#eef0ff;border-left-color:#5b63f6}.calendar-deadline{background:#fff4f4;border-left-color:#dc5360}.calendar-study{background:#ecf9f5;border-left-color:#17916b}.calendar-status{text-transform:capitalize;background:#ffffffbf;border-radius:999px;width:max-content;margin-top:3px;padding:4px 6px;font-size:8px;font-weight:800}@media (width<=900px){.calendar-grid{grid-template-columns:repeat(7,170px)}}.analytics-section{gap:20px;display:grid}.analytics-main-grid{grid-template-columns:1.5fr repeat(3,1fr);gap:12px;display:grid}.analytics-highlight,.analytics-card,.analytics-panel{background:#fff;border:1px solid #e6e9f0;border-radius:16px;padding:21px}.analytics-highlight>span,.analytics-card>span{color:#8a93a7;letter-spacing:.1em;font-size:9px;font-weight:900}.analytics-highlight>strong{margin:8px 0 12px;font-size:34px;display:block}.analytics-card strong{margin:8px 0;font-size:27px;display:block}.analytics-highlight small,.analytics-card small{color:#8a93a7}.analytics-progress{background:#edf0f5;border-radius:999px;height:7px;margin-bottom:10px;overflow:hidden}.analytics-progress>div{border-radius:inherit;background:#6068f6;height:100%}.analytics-two-column{grid-template-columns:1fr 1fr;gap:14px;display:grid}.analytics-panel h3{margin:6px 0 17px}.status-analytics-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.analytics-status-item{border:1px solid #edf0f5;border-radius:11px;align-items:center;gap:11px;padding:13px;display:flex}.analytics-status-item>div{display:grid}.analytics-status-item strong{font-size:18px}.analytics-status-item small{color:#8a93a7;font-size:10px}.analytics-dot{border-radius:999px;flex:none;width:10px;height:10px}.completed-dot{background:#15916a}.late-dot{background:#8056c7}.active-dot{background:#5b63f6}.overdue-dot{background:#d94f5d}.session-analytics{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.session-analytics>div{background:#f8f9fc;border-radius:11px;padding:15px}.session-analytics span{color:#8a93a7;font-size:10px;display:block}.session-analytics strong{margin-top:7px;font-size:22px;display:block}.workload-list{gap:15px;display:grid}.workload-item{gap:8px;display:grid}.workload-info{justify-content:space-between;gap:20px;display:flex}.workload-info>div{gap:3px;display:grid}.workload-info strong{font-size:12px}.workload-info span{color:#8a93a7;font-size:10px}.workload-bar{background:#edf0f5;border-radius:999px;height:8px;overflow:hidden}.workload-bar>div{border-radius:inherit;background:#6068f6;min-width:2px;height:100%}@media (width<=900px){.analytics-main-grid{grid-template-columns:1fr 1fr}.analytics-two-column{grid-template-columns:1fr}}@media (width<=600px){.analytics-main-grid,.status-analytics-grid{grid-template-columns:1fr}}.ai-section{gap:20px;display:grid}.ai-header{justify-content:space-between;align-items:center;gap:25px;display:flex}.ai-header h2{margin:6px 0;font-size:28px}.ai-header p{color:#7f899c;margin:0}.ai-status{color:#17785c;background:#eaf8f3;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:10px;font-weight:800;display:flex}.ai-status>span{background:#18a778;border-radius:50%;width:7px;height:7px}.ai-layout{grid-template-columns:minmax(0,1fr) 280px;gap:15px;display:grid}.ai-chat,.ai-side-panel{background:#fff;border:1px solid #e6e9f0;border-radius:18px}.ai-chat{flex-direction:column;min-height:600px;display:flex;overflow:hidden}.ai-messages{flex:1;align-content:start;gap:15px;padding:22px;display:grid;overflow-y:auto}.ai-message{gap:11px;max-width:82%;display:flex}.ai-message.user{flex-direction:row-reverse;margin-left:auto}.ai-message-avatar{color:#fff;background:#6068f6;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;font-size:11px;font-weight:900;display:grid}.ai-message.user .ai-message-avatar{background:#172033}.ai-message>div:last-child{gap:4px;display:grid}.ai-message span{color:#929bad;font-size:9px;font-weight:800}.ai-message p{color:#263047;background:#f4f5ff;border-radius:4px 13px 13px;margin:0;padding:11px 13px;font-size:12px;line-height:1.6}.ai-message.user p{color:#fff;background:#172033;border-radius:13px 4px 13px 13px}.ai-input-area{border-top:1px solid #edf0f5;grid-template-columns:1fr auto;gap:9px;padding:15px;display:grid}.ai-input-area input{color:#172033;background:#fff;border:1px solid #dde1e9;border-radius:10px;outline:none;min-width:0;padding:12px 13px}.ai-input-area input:focus{border-color:#6068f6;box-shadow:0 0 0 3px #6068f61a}.ai-input-area button{color:#fff;background:#6068f6;border:0;border-radius:10px;padding:0 18px;font-weight:800}.ai-input-area button:disabled{opacity:.5}.ai-side-panel{height:max-content;padding:20px}.ai-side-panel h3{margin:6px 0 15px}.ai-prompts{gap:7px;display:grid}.ai-prompts button{color:#283248;text-align:left;background:#f9fafc;border:1px solid #e7eaf1;border-radius:9px;padding:11px;font-size:11px;font-weight:700}.ai-prompts button:hover{background:#f3f4ff;border-color:#cbd0ff}.ai-context-card{border-top:1px solid #edf0f5;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:20px;padding-top:17px;display:grid}.ai-context-card>span{color:#929bad;letter-spacing:.08em;grid-column:1/-1;margin-bottom:3px;font-size:9px;font-weight:900}.ai-context-card div{background:#f8f9fc;border-radius:9px;padding:9px;display:grid}.ai-context-card strong{font-size:17px}.ai-context-card small{color:#929bad;margin-top:2px;font-size:8px}.ai-plan-link{color:#fff;background:#172033;border:0;border-radius:9px;width:100%;margin-top:14px;padding:11px;font-weight:800}@media (width<=850px){.ai-layout{grid-template-columns:1fr}.ai-side-panel{order:-1}}@media (width<=600px){.ai-header{display:block}.ai-status{width:max-content;margin-top:12px}.ai-message{max-width:95%}.ai-context-card{grid-template-columns:1fr 1fr 1fr}}html{scroll-behavior:smooth}body{overflow-x:hidden}button,input,select,textarea,.subject-card,.task-card,.plan-card,.dashboard-stat-card,.calendar-day,.analytics-card,.analytics-panel,.availability-day{transition:border-color .18s,background .18s,color .18s,transform .18s,box-shadow .18s}button:active{transform:scale(.98)}.subject-card,.task-card,.plan-card,.dashboard-panel,.analytics-panel,.analytics-card,.analytics-highlight,.availability-list,.availability-form,.subject-form,.subjects-list,.task-form,.task-list,.calendar-day,.ai-chat,.ai-side-panel{box-shadow:0 1px 2px #17203305,0 7px 24px #17203309}input,select,textarea{border-color:#dde2eb!important}input:hover,select:hover,textarea:hover{border-color:#cbd1de!important}input:focus,select:focus,textarea:focus{border-color:#6068f6!important;box-shadow:0 0 0 3px #6068f61a!important}.primary,.generate-button,.welcome-action,.complete-task-button,.ai-input-area button,.ai-plan-link{box-shadow:0 6px 16px #5b63f629}.primary:hover,.generate-button:hover,.welcome-action:hover{filter:brightness(1.04);transform:translateY(-1px)}.app-sidebar{box-shadow:8px 0 28px #0a101c0d}.sidebar-nav button{position:relative}.sidebar-nav button.active:before{content:"";background:#fff;border-radius:999px;width:3px;height:19px;position:absolute;left:-8px}.app-topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0}.page-content>*{animation:.22s studyflowFade}@keyframes studyflowFade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.subjects-header h2,.ai-header h2,.calendar-section h2,.analytics-section h2{letter-spacing:-.035em}.subjects-header p,.ai-header p{max-width:680px;line-height:1.6}.subject-card:hover,.task-card:hover,.plan-card:hover{border-color:#d3d7ff;transform:translateY(-1px)}.calendar-day:hover{border-color:#d4d8e3}.calendar-day:first-child .calendar-day-header{background:#f3f4ff}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d6dae3;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#bcc2cf}::selection{color:#fff;background:#6068f6}@media (width<=900px){.app-sidebar{box-shadow:none}.sidebar-nav button.active:before{display:none}.sidebar-nav{padding-bottom:3px}}@media (width<=600px){.page-content{padding-bottom:40px}.dashboard-stat-grid{gap:8px}.dashboard-stat-card{padding:14px}.dashboard-stat-card strong{font-size:22px}.welcome-panel{min-height:auto}.subject-form,.subjects-list,.task-form,.task-list,.availability-form,.availability-list,.analytics-panel,.ai-side-panel{padding:17px}}*{box-sizing:border-box}img,svg,canvas,video{max-width:100%}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.page-content,.app-main,.home-dashboard,.dashboard-columns,.analytics-section,.calendar-section,.ai-section,.subjects-section,.tasks-section,.availability-section,.study-plan-section{min-width:0}h1,h2,h3,h4,h5,h6,p,small,span,strong,button,input,select,textarea{word-wrap:break-word;overflow-wrap:break-word}.app-shell{width:100%;max-width:100%}.app-main{min-width:0}.page-content{width:100%;max-width:100%}button,input,select,textarea{max-width:100%;font:inherit}.subject-form,.subjects-list,.task-form,.task-list,.availability-form,.availability-list,.analytics-panel,.analytics-card,.analytics-highlight,.ai-chat,.ai-side-panel,.dashboard-panel,.calendar-day{min-width:0}@media (width<=900px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-bottom:1px solid #ffffff0f;border-right:0;width:100%;height:auto;padding:14px;position:static}.sidebar-brand{padding:0 0 12px}.sidebar-nav{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-nav button{white-space:nowrap;flex:none;width:auto;padding:10px 12px}.sidebar-user{display:none}.app-topbar{flex-wrap:wrap;align-items:flex-start;padding:16px 18px}.app-topbar h1{font-size:20px}.page-content{padding:18px}.welcome-panel{padding:24px;display:block}.welcome-panel h1{font-size:28px}.welcome-action{width:100%;margin-top:18px}.dashboard-stat-grid{grid-template-columns:1fr 1fr}.dashboard-columns,.analytics-two-column,.ai-layout{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(7,190px);overflow-x:auto}.analytics-main-grid{grid-template-columns:1fr 1fr}.session-analytics{grid-template-columns:1fr 1fr 1fr}}@media (width<=640px){body{font-size:14px}.app-topbar{gap:10px;padding:14px 14px 12px}.app-topbar h1{font-size:18px}.app-topbar p{font-size:11px}.topbar-badge{display:none}.page-content{padding:14px}.sidebar-brand strong{font-size:14px}.sidebar-brand span{font-size:9px}.sidebar-nav button{padding:10px 11px;font-size:12px}.welcome-panel{border-radius:16px;padding:18px}.welcome-panel h1{font-size:24px;line-height:1.2}.welcome-panel p{font-size:13px}.dashboard-stat-grid{grid-template-columns:1fr;gap:10px}.dashboard-stat-card{padding:15px}.dashboard-stat-card strong{font-size:22px}.dashboard-panel,.analytics-panel,.analytics-highlight,.analytics-card,.ai-side-panel,.subject-form,.subjects-list,.task-form,.task-list,.availability-form,.availability-list{border-radius:14px;padding:16px}.panel-heading{display:block}.panel-heading button{margin-top:10px}.deadline-item{align-items:start;gap:10px;display:grid}.deadline-item>div{min-width:0}.subjects-header h2,.analytics-section h2,.calendar-section h2,.ai-header h2{font-size:24px}.subjects-header p,.ai-header p{font-size:13px}.analytics-main-grid,.analytics-two-column,.status-analytics-grid,.session-analytics{grid-template-columns:1fr}.workload-info{gap:6px;display:grid}.calendar-day{min-width:170px}.calendar-day-header strong{font-size:22px}.ai-header{display:block}.ai-status{width:max-content;margin-top:10px}.ai-chat{min-height:480px}.ai-messages{padding:16px}.ai-message{max-width:100%}.ai-input-area{grid-template-columns:1fr}.ai-input-area button{height:44px}.ai-context-card{grid-template-columns:1fr 1fr 1fr}.task-actions,.planner-buttons{grid-template-columns:1fr;display:grid}.task-actions button,.planner-buttons button,.generate-button,.reschedule-button,.finish-session-button,.complete-task-button{width:100%}.plan-tags{flex-wrap:wrap;gap:6px;display:flex}}@media (width<=420px){.page-content,.app-topbar{padding:12px}.welcome-panel{padding:16px}.welcome-panel h1{font-size:21px}.dashboard-stat-card,.dashboard-panel,.analytics-panel,.analytics-card,.analytics-highlight,.subject-form,.subjects-list,.task-form,.task-list,.availability-form,.availability-list,.ai-side-panel{padding:14px}.calendar-grid{grid-template-columns:repeat(7,160px)}.calendar-day{min-width:160px}.ai-context-card{grid-template-columns:1fr}.ai-message p{font-size:11px}}@media (width<=640px){.form-row,.subject-grid,.task-grid,.availability-grid{grid-template-columns:1fr!important}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;font-size:16px}body,#root{width:100%;min-width:0;max-width:100%;overflow-x:hidden}.app-shell,.app-main,.page-content{width:100%;min-width:0;max-width:100%}@media (width<=640px){body{font-size:16px;line-height:1.5}.app-shell{width:100%;display:block}.app-sidebar{width:100%;height:auto;padding:14px;position:static}.sidebar-brand{padding:0 0 12px}.sidebar-nav{-webkit-overflow-scrolling:touch;gap:7px;width:100%;max-width:100%;padding-bottom:5px;display:flex;overflow:auto hidden}.sidebar-nav button{flex:none;width:auto;min-width:max-content;padding:10px 12px;font-size:13px}.app-topbar{width:100%;padding:14px 16px;position:static}.app-topbar h1{font-size:22px;line-height:1.2}.app-topbar p{font-size:13px;line-height:1.4}.page-content{width:100%;max-width:100%;padding:16px;overflow:hidden}h1{font-size:28px;line-height:1.15}h2,.subjects-header h2,.analytics-section h2,.calendar-section h2,.ai-header h2{font-size:24px;line-height:1.2}h3{font-size:18px}p{font-size:15px}.eyebrow{font-size:11px}.welcome-panel{width:100%;min-height:auto;padding:20px}.welcome-panel h1{font-size:27px}.welcome-panel p{font-size:15px}.welcome-action{width:100%;min-height:48px;font-size:15px}.dashboard-stat-grid{grid-template-columns:1fr}.dashboard-stat-card strong{font-size:26px}.dashboard-stat-card small{font-size:12px}.dashboard-columns,.subjects-layout,.tasks-layout,.availability-layout,.form-grid-two{grid-template-columns:1fr}.field label{font-size:12px}.field input,.field select,.field textarea,input,select,textarea{width:100%;min-width:0;min-height:48px;font-size:16px!important}.subject-card-content{display:block}.subject-actions,.task-actions{grid-template-columns:1fr;gap:8px;width:100%;margin-top:16px;display:grid}.subject-actions button,.task-actions button{width:100%;min-height:44px;font-size:14px}.task-details{grid-template-columns:1fr 1fr}.task-details small{font-size:11px}.task-details strong{font-size:13px}.planner-header{padding:20px;display:block}.planner-header h2{font-size:24px}.planner-header p{font-size:14px}.planner-buttons{grid-template-columns:1fr;margin-top:18px;display:grid}.planner-buttons button{width:100%;min-height:46px}.planner-stats,.plan-card,.analytics-main-grid,.analytics-two-column,.status-analytics-grid,.session-analytics,.ai-layout{grid-template-columns:1fr}.ai-chat{min-height:520px}.ai-message{max-width:95%}.ai-message p{font-size:14px}.ai-input-area{grid-template-columns:1fr}.ai-input-area input{font-size:16px}.ai-input-area button{min-height:46px}.calendar-section{width:100%;min-width:0;overflow:hidden}.calendar-grid{-webkit-overflow-scrolling:touch;gap:10px;width:100%;max-width:100%;padding-bottom:10px;display:flex;overflow:auto hidden}.calendar-day{flex:0 0 78vw;min-width:0;max-width:320px}.calendar-event strong{font-size:13px}.calendar-event small,.calendar-event time{font-size:11px}}input,select,textarea,button{font-size:16px}@media (width>=901px){.app-shell{min-height:100vh}.app-sidebar{flex-direction:column;align-self:flex-start;height:100vh;min-height:100vh;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar-nav{flex:1}.sidebar-user{margin-top:auto}}
