:root{font-family:Manrope,system-ui,sans-serif;color:#ececf4;background:#14151b;font-synthesis:none;color-scheme:dark;--accent: #8d7aff;--panel: #202129;--muted: #a6a6b8;--border: #333440;--mint: #8fd8c6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:10px;background:#2a2b36;color:inherit;padding:10px 14px;font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s}button:hover,.button:hover{background:#353644}button:disabled{opacity:.5;cursor:default}a{color:#b8aaff}input,select,textarea{border:1px solid #3d3e4c;border-radius:9px;background:#1a1b23;color:#f3f1ff;padding:10px 12px;font-size:.875rem;max-width:100%}input[type=checkbox]{accent-color:var(--accent);width:19px;height:19px;flex-shrink:0;cursor:pointer}input[type=month]{width:165px}textarea{resize:vertical;line-height:1.6}h1,h2,h3,p{margin:0}h1{font-size:1.85rem;line-height:1.3;letter-spacing:-.06rem;font-weight:700}h2{font-size:1rem;line-height:1.5;font-weight:700}h3{font-size:1rem;line-height:1.5}p{font-size:.9rem;line-height:1.7;color:#b6b6c5}small{font-size:.75rem;color:var(--muted);line-height:1.6}strong{font-weight:700}.app{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{background:#1b1c24;border-right:1px solid #2a2b35;padding:30px 16px 18px;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;color:#f0effa;text-decoration:none;font-size:1.08rem;font-weight:800;margin:0 4px 32px;letter-spacing:-.5px}.brand>span{width:40px;height:40px;border-radius:12px;background:#7861eb;display:grid;place-items:center}.brand small{display:block;font-size:.56rem;letter-spacing:1px;margin-top:3px;color:#a9a9b8}.sidebar nav{flex:1}.sidebar nav button{width:100%;justify-content:flex-start;background:transparent;border:0;border-radius:10px;padding:11px 12px;color:#b0b0c1;font-size:.85rem;font-weight:500;margin-bottom:3px;gap:11px}.sidebar nav button.active{background:#7962ed;color:#fff;box-shadow:0 6px 18px #7762f620}.sidebar nav button:hover:not(.active){background:#292a35;color:#efedff}.sidebar nav button small{margin-left:auto;background:#ffffff15;color:inherit;padding:0 6px;border-radius:5px}.nav-label{font-size:.625rem;letter-spacing:1.7px;color:#828394;margin:24px 12px 12px}.nav-divider{border-top:1px solid #333440;margin:20px 12px 12px}.profile{display:flex;align-items:center;gap:12px;padding:20px 9px 0;font-size:.875rem}.profile small{display:block;font-size:.67rem}.avatar{background:#d9c790;color:#29262b;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-weight:800}main{min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 32px;border-bottom:1px solid #282933;gap:20px}.topbar>span{display:flex;align-items:center;gap:10px;font-size:.78rem;color:#acacbd}.topbar>div{display:flex;gap:12px;align-items:center}.search{display:flex;align-items:center;gap:8px;color:#9696aa}.search input{border:none;background:transparent;width:205px;padding:5px;font-size:.8rem}.workspace-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 32px 0}.workspace-bar select{padding:7px 9px;font-size:.75rem}.demo-badge,.personal-badge{font-size:.73rem;border:1px solid #554c32;color:#dac68e;background:#2c281f;border-radius:7px;padding:6px 10px}.personal-badge{color:#a3d9c5;border-color:#36564c;background:#1d2a26}.content{padding:22px 32px 40px;max-width:1760px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-heading small{display:block;margin-bottom:8px;text-transform:uppercase;letter-spacing:1.4px;font-size:.66rem}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.primary{background:#8067ee;border-color:#8067ee;color:#fff}.primary:hover{background:#947dff}.icon{padding:8px;border-color:transparent;background:transparent;flex-shrink:0}.link{color:#b6a5ff;padding:0;background:transparent;border:0;font-size:.78rem;white-space:nowrap}.link:hover{background:none;color:#d0c5ff}.full{width:100%;margin-top:18px}.subtle{background:#282934;border-color:#393a47;color:#c2bfdd;font-weight:500}.stats{display:grid;gap:16px;margin-bottom:22px}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:20px 22px;border:1px solid #32333e;border-radius:17px;background:#202129;display:flex;flex-direction:column;gap:9px;min-width:0}.stat>span{font-size:.8rem;color:#b5b4c9}.stat strong{font-size:1.7rem;letter-spacing:-.6px;font-variant-numeric:tabular-nums;line-height:1.3;overflow-wrap:anywhere}.stat em{font-style:normal;font-weight:400;color:#bab4d6;font-size:1.3rem}.stat.violet{background:linear-gradient(115deg,#383051,#29283b);border-color:#544671}.stat.mint{background:linear-gradient(115deg,#233836,#232b30);border-color:#345049}.stat.peach{background:linear-gradient(115deg,#3e3134,#292730);border-color:#544047}.stat.mint strong{color:#aae4d2}.stat.peach strong{color:#f2c0ab}.panel{background:var(--panel);border:1px solid #30313b;border-radius:18px;padding:22px;margin-bottom:20px;min-width:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:20px}.panel-head small{display:block;margin-top:4px}.overview-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);gap:20px}.overview-grid>.panel{margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.task-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #30313a}.task-row:last-child{border:0}.task-title{display:block;text-align:left;background:none;border:0;padding:0;flex:1;min-width:0;font-size:.875rem;font-weight:500}.task-title:hover{background:none;color:#c7b9ff}.task-title small{display:block;margin-top:5px}.task-row.done .task-title>span{text-decoration:line-through;color:#9995ab}.priority{font-size:.65rem;border-radius:5px}.priority.high{color:#e8b497;background:#4c372b;padding:4px 8px}.timeline button{padding:0;margin-bottom:22px;display:flex;align-items:flex-start;background:none;border:none;text-align:left;width:100%}.timeline time{color:#a6a6b8;font-size:.75rem;width:45px;flex-shrink:0;padding-top:2px}.timeline button>span{border-left:3px solid;padding-left:14px}.timeline strong{font-size:.85rem;font-weight:600}.timeline small{display:block;margin-top:5px}.habit-overview{display:flex;align-items:center;gap:24px}.ring{width:122px;height:122px;border-radius:50%;background:conic-gradient(#9480ff var(--progress),#3a3749 0);padding:9px;flex-shrink:0;transform:rotate(-90deg)}.ring>div{height:100%;border-radius:50%;background:#202129;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(90deg)}.ring strong{font-size:1.8rem;letter-spacing:-1px}.ring small{font-size:.68rem}.chart{height:205px;min-width:0;flex:1}.habit-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.habit-pills button{font-size:.72rem;font-weight:500;padding:7px 9px;gap:7px}.habit-pills small{font-size:.65rem}.habit-pills .complete{background:#302b46;border-color:#574971}.complete>span{display:flex;color:#bdaaef}.balance small{display:block}.balance strong{display:block;font-size:2rem;letter-spacing:-.7px;margin:7px 0 22px}.money-pair{display:flex;gap:20px}.money-pair>div{flex:1;display:grid;grid-template-columns:18px 1fr;gap:7px}.money-pair svg{width:17px;height:17px;color:#a392ee}.money-pair small{font-size:.68rem}.money-pair strong{grid-column:2;font-size:.94rem}.panel-bottom{border-top:1px solid #353541;margin-top:20px;padding-top:13px;color:#a9a6bc;font-size:.75rem}.capture textarea{width:100%;background:#1b1c24;min-height:100px}.capture>div{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.attention{display:flex;align-items:flex-start;text-align:left;padding:12px 0;width:100%;border:0;background:none;font-size:.82rem;line-height:1.5}.attention svg{color:#b09df7;flex-shrink:0;margin-top:3px}.attention small{display:block;margin-top:4px}.brief,.info-banner{display:flex;gap:14px;padding:17px 20px;border-radius:12px;background:#272538;border:1px solid #49415f;margin-bottom:22px;color:#d3cbed;font-size:.85rem;line-height:1.6}.brief svg,.info-banner svg{flex-shrink:0;color:#b5a0ff}.brief p{margin:7px 0}.brief small{display:block}.ai-brief{margin-top:16px;padding:16px;border:1px solid #4a4167;border-radius:12px;background:#1d1d2a}.ai-brief-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.ai-brief .markdown{margin-top:14px}.assistant-layout{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:20px;align-items:start}.assistant-layout.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.assistant-sidebar-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.assistant-sidebar-head h2{margin:0;font-size:1rem}.chat-list-title{border-top:1px solid #343541;margin-top:16px;padding-top:16px}.thread-list{display:flex;flex-direction:column;gap:4px;margin-top:12px}.thread-link{width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:transparent;border:1px solid transparent;color:#d8d2f2;padding:9px 10px;border-radius:9px;font-size:.82rem}.thread-link:hover,.thread-link.active{background:#302a46;border-color:#584c83;color:#fff}.link-button{background:transparent;border:0;color:#b8a2ff;padding:8px 3px;text-align:left;font-size:.8rem}.small-button{padding:7px 9px;font-size:.76rem;white-space:nowrap}.assistant-chat-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin:0 0 15px}.assistant-chat-head h2{margin:0 0 5px;font-size:1.16rem}.assistant-chat-head small{color:#aaa6b8}.rename-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rename-form input{min-width:220px}.assistant-sidebar{position:sticky;top:16px;background:#202129;border:1px solid #30313b;border-radius:18px;padding:18px;max-height:calc(100vh - 120px);overflow:auto}.assistant-sidebar>small{display:block;margin:5px 0 12px}.assistant-sidebar details{border-top:1px solid #343541;padding:10px 0}.assistant-sidebar summary{font-size:.8rem;font-weight:700;cursor:pointer;color:#d8d2f2}.assistant-sidebar .markdown{font-size:.78rem;margin-top:10px}.assistant-main{min-width:0}.chat-history{display:flex;flex-direction:column;gap:12px;min-height:120px;margin-bottom:18px}.chat-message{padding:15px 17px;border:1px solid #343541;border-radius:14px;box-sizing:border-box;width:100%;max-width:none}.chat-message.user{align-self:stretch;background:#36304d;border-color:#51436f}.chat-message.model{align-self:stretch;background:#202129}.chat-message small{display:block;margin-bottom:8px}.assistant-composer{margin:0}.stack{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:.85rem}.stack textarea{width:100%;margin-top:0}.check-label{display:flex;align-items:center;gap:9px;margin:14px 0 7px;font-size:.85rem}.attachments{border-top:1px solid #343541;margin-top:18px;padding-top:14px}.attachments h3{margin-bottom:5px}.attachments input{margin:8px 0}.tabs{display:flex;gap:3px;margin:0 0 22px;border-bottom:1px solid #33343e;flex-wrap:wrap}.tabs button{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;color:#aaa8bd;padding:11px 16px}.tabs button.selected{border-color:#aa95ff;color:#d6caff}.section-tools{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.progress{height:7px;background:#373540;border-radius:10px;overflow:hidden}.progress span{display:block;height:100%;border-radius:10px;background:#9b85fb}.progress-item{margin-bottom:22px}.progress-item>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:.77rem;color:#b8b3cb}.text-button{display:inline;background:none;border:none;padding:0;text-align:left;color:#e9e4fb;font-weight:500}.text-button:hover{background:none;color:#b8a2ff}.text-button small{display:block}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}th{font-size:.75rem;color:#a9a6bb;font-weight:500}td,th{padding:14px 12px;border-bottom:1px solid #32333c}td small{display:block}td{color:#d3d0e1}.habit-table th:not(:first-child),.habit-table td{text-align:center;min-width:48px;padding:12px 5px}.habit-table th:first-child{min-width:160px;padding-left:0}.habit-table th small{display:block;text-transform:uppercase;font-size:.62rem}.habit-cell{border-radius:8px;width:34px;height:34px;padding:0;background:#2a2a36;color:#a9a3c3}.habit-cell.complete{background:#7360bc;color:#fff;border-color:#927bd8}.habit-cell.partial{background:#544535;border-color:#8e724a;color:#f5d293}.habit-cell:disabled{border:0;background:transparent;color:#666475}.goal-value{font-size:2rem;font-weight:700;margin:15px 0}.goal-value small{font-size:.85rem}.project-row{padding:6px 0 24px;margin-bottom:22px;border-bottom:1px solid #383741}.project-row:last-child{border:0;margin-bottom:0}.project-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.project-heading h3{margin-top:10px}.project-heading p{margin:7px 0}.tag{font-size:.68rem;background:#353043;color:#d1c1f4;padding:5px 9px;border-radius:6px;display:inline-block}.project-next{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;font-size:.8rem;color:#b5b0c7}.donut-chart{display:flex;align-items:center;min-width:0}.legend{display:flex;flex-direction:column;gap:16px;flex:1;font-size:.75rem}.legend>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.legend>div>span{width:7px;height:7px;border-radius:50%;flex-shrink:0}.legend strong{margin-left:auto}.positive{color:#8fd8c6}.negative{color:#e8a69f}.budget-notice{margin:8px 0 0;padding:9px 11px;border-radius:9px;font-size:.78rem;line-height:1.5}.budget-notice-warning{color:#f2d28e;background:#b184301f;border:1px solid rgba(177,132,48,.3)}.budget-notice-danger{color:#ffc0ad;background:#a95c5026;border:1px solid rgba(169,92,80,.38)}.record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:20px}.record-grid>.panel{margin:0}.record-card{display:flex;align-items:flex-start;flex-direction:column;min-height:160px;text-align:left;padding:22px;background:#272733}.record-card svg{color:#baa4ff}.record-card strong{font-size:1.5rem;margin-top:10px}.record-grid .actions{margin-top:20px}.record-grid p{margin:15px 0}.note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.note-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:22px;min-height:240px;background:#22232c;border-color:#34343f;border-radius:15px}.note-card h2{margin:17px 0 10px}.note-card p{font-size:.81rem;font-weight:400;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.note-card>div{display:flex;justify-content:space-between;width:100%;margin-top:auto;padding-top:22px;color:#aaa2bd;font-size:.68rem;gap:8px}.note-card small{display:flex;align-items:center;gap:4px}.knowledge-graph{width:100%;max-height:450px}.reader{margin-top:24px;padding:28px;border:1px solid #62537d;background:#252330;border-radius:16px}.reader header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.reader h2{font-size:1.4rem;margin:8px 0}.note-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;padding:22px 0;font-size:1rem}.hint{margin-top:18px;font-size:.78rem}.tutoring-conflicts{border-color:#a95c50;background:linear-gradient(135deg,rgba(169,92,80,.16),transparent 70%)}.tutoring-conflicts .panel-head h2{color:#ffb39d}.tutoring-conflict-details>summary{color:#f0b5a3;cursor:pointer;font-size:.82rem}.tutoring-conflicts ul{display:grid;gap:14px;padding-left:20px;margin-bottom:0}.tutoring-conflicts li{padding-left:4px}.tutoring-conflicts li>strong{display:block}.tutoring-conflicts>small{color:var(--muted)}.tutoring-debt-reminders{border-color:color-mix(in srgb,var(--peach) 55%,var(--line))}.tutoring-debt-reminders .panel-head h2{color:var(--peach)}.tutoring-reminder-list{display:grid;gap:10px}.tutoring-reminder-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--peach) 7%,var(--surface))}.tutoring-reminder-row>div{display:grid;gap:4px;min-width:0}.tutoring-reminder-row strong{color:var(--text)}.tutoring-reminder-row span,.tutoring-reminder-row small{color:var(--muted)}.tutoring-reminder-row small.is-due{color:var(--peach);font-weight:700}.tutoring-reminder-row button{flex:0 0 auto}.tutoring-reminder-row button:disabled{opacity:.58;cursor:default}.tutoring-conflict-lessons{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.tutoring-conflict-lessons>span{display:grid;gap:3px;min-width:150px;padding:9px 11px;border:1px solid #57403f;border-radius:10px;background:#14151c8c;color:var(--text);font-size:.78rem}.tutoring-conflict-lessons small{color:var(--muted)}.tutoring-conflicts>small{display:block;margin-top:14px}.tutoring-filters .panel-head{align-items:flex-start;gap:18px;margin-bottom:22px}.tutoring-filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));align-items:end;gap:20px 22px;padding:4px 2px 2px}.tutoring-filter-row label{display:flex;flex-direction:column;gap:9px;min-width:0;color:var(--muted);font-size:.82rem;line-height:1.35;font-weight:560}.tutoring-filter-row select,.tutoring-filter-row input{width:100%;min-width:0;min-height:46px;padding:0 14px;color:var(--text);background:#191a22;border:1px solid #3a3b49;border-radius:12px;font:inherit}.tutoring-filter-row select:focus,.tutoring-filter-row input:focus{outline:2px solid #8d7aff88;outline-offset:2px;border-color:#8d7aff}.tutoring-analytics-stats .stat{min-height:132px}.tutoring-analytics-chart{height:300px}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:30px 14px;text-align:center;min-height:120px}.empty svg{color:#8d82ab}.empty p{max-width:600px;font-size:.85rem}.pending{padding:45px;max-width:800px}.pending>svg{width:40px;height:40px;color:#ae9cf9;margin-bottom:20px}.pending p{margin:20px 0}.app-footer{display:flex;justify-content:space-between;gap:15px;padding:0 32px 22px;color:#77778c;font-size:.65rem}.notification:empty{display:none}.notification{position:fixed;bottom:20px;right:24px;z-index:10;background:#383049;border:1px solid #756084;border-radius:12px;padding:14px 18px;font-size:.82rem;box-shadow:0 8px 40px #0006;display:flex;align-items:center;gap:16px;max-width:80vw}.error{background:#422c34;border:1px solid #805261;color:#ffd9d9;border-radius:10px;padding:14px;margin-bottom:15px;font-size:.85rem;line-height:1.6}.error button{margin-left:15px}.loading{padding:80px;color:#bab0cc;text-align:center}.login{max-width:400px;margin:15vh auto;padding:30px}.login h1{margin:20px 0 30px}.login form,.login label{display:flex;flex-direction:column;gap:16px}.login svg{color:#a18cff}dialog{border:1px solid #565068;border-radius:20px;background:#22222d;color:#ececf4;width:min(720px,94vw);max-height:90vh;padding:26px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#080810b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px}.modal-head h2{font-size:1.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;color:#c1b9cf}.form-grid .wide{grid-column:1/-1}.form-grid select[multiple]{min-height:85px}.day-picks{display:flex;gap:8px;flex-wrap:wrap}.day-picks button[aria-pressed=true]{background:#7460b4;border-color:#af94ec}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.modal-foot .danger{margin-right:auto;background:none;color:#e3a6ae;border-color:#5c4049}.fc{--fc-border-color: #393944;--fc-page-bg-color: #202129;--fc-neutral-bg-color: #272834;--fc-today-bg-color: #9c83ef0c;--fc-button-bg-color: #343143;--fc-button-border-color: #494254;--fc-button-hover-bg-color: #51446c;--fc-button-hover-border-color: #70617c;--fc-button-active-bg-color: #7860b9;--fc-button-active-border-color: #7860b9;font-size:.88rem;--fc-small-font-size: .78rem}.calendar-panel>.panel-head{margin-bottom:20px}.calendar-key{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0 0 20px;padding:13px 16px;border:1px solid #393944;border-radius:14px;background:#14151c73}.calendar-key-item{display:inline-flex;align-items:center;gap:9px;color:var(--muted);font-size:.82rem}.calendar-key-item i{width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 16%,transparent)}.calendar-key-item.task i{color:#b07acb;background:#b07acb}.calendar-key-item.event i{color:#8977f4;background:#8977f4}.calendar-key-item.lesson i{color:#58b7a7;background:#58b7a7}.fc .fc-toolbar{gap:16px;margin-bottom:20px!important}.fc .fc-toolbar-title{font-size:clamp(1.05rem,2vw,1.35rem);font-weight:700;letter-spacing:-.02em;line-height:1.3}.fc .fc-button{font-size:.8rem;font-weight:600;padding:9px 12px;border-radius:10px!important;box-shadow:none!important;transition:background-color .16s ease,border-color .16s ease,transform .16s ease}.fc .fc-button:hover{transform:translateY(-1px)}.fc .fc-button:focus{box-shadow:0 0 0 3px #8d7aff55!important}.fc .fc-scrollgrid{overflow:hidden;border-radius:13px}.fc .fc-col-header-cell{background:#252630}.fc .fc-timegrid-axis,.fc .fc-timegrid-slot-label{color:var(--muted)}.fc .fc-day-today{background:#9c83ef0d!important}.fc .fc-timegrid-now-indicator-line{border-color:#f0947e;border-width:2px}.fc .fc-timegrid-now-indicator-arrow{border-color:#f0947e}.fc a{color:inherit}.fc .fc-col-header-cell-cushion{padding:13px 6px;text-decoration:none;font-weight:650}.fc .fc-timegrid-slot{height:2.8rem}.fc .fc-event{font-size:.78rem;line-height:1.35;padding:4px 6px;border:0;border-radius:8px;box-shadow:0 2px 8px #0002}.fc .fc-daygrid-day-number{padding:8px;text-decoration:none}.fc .fc-daygrid-day-frame{min-height:100px}.fc .fc-multimonth{background:transparent}.fc .fc-multimonth-month,.fc .fc-multimonth-daygrid{background:var(--panel)}@media(min-width:1650px){.overview-grid{grid-template-columns:minmax(0,1.7fr) minmax(350px,1fr)}.content{padding:28px 45px}.sidebar{padding-top:35px}.task-row{padding:20px 0}.chart{height:220px}}@media(max-width:1150px){.app{grid-template-columns:195px minmax(0,1fr)}.sidebar{padding:22px 10px}.content{padding:20px}.topbar,.workspace-bar{padding-left:20px;padding-right:20px}.stat{padding:16px}.stat strong{font-size:1.4rem}.overview-grid{grid-template-columns:minmax(0,1.3fr) minmax(270px,1fr)}.record-grid,.note-grid{grid-template-columns:1fr 1fr}.panel{padding:18px}.habit-overview{gap:10px}.ring{width:100px;height:100px}.panel-head,.money-pair{gap:8px}.brand{font-size:.95rem}.brand small{font-size:.5rem}.brand>span{width:34px;height:34px}}@media(max-width:900px){.tutoring-analytics-stats.four{grid-template-columns:repeat(2,minmax(0,1fr))}.tutoring-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.app{grid-template-columns:74px minmax(0,1fr)}.sidebar{padding:20px 10px}.brand{margin:0 5px 25px}.brand>div,.sidebar nav button span,.sidebar nav button small,.nav-label,.profile{display:none}.sidebar nav button{justify-content:center;padding:14px 10px}.four{grid-template-columns:1fr 1fr}.overview-grid,.two-col{grid-template-columns:1fr}.page-heading{align-items:flex-start}.page-heading h1{font-size:1.6rem}.topbar>span{display:none}.topbar>div{width:100%;justify-content:space-between}.habit-overview .chart{min-width:0}.record-grid,.note-grid{grid-template-columns:1fr 1fr}.fc-header-toolbar{flex-wrap:wrap;gap:12px}.fc .fc-toolbar-chunk:nth-child(2){order:-1;width:100%}.fc .fc-toolbar-title{text-align:left}.assistant-layout{grid-template-columns:1fr}.assistant-sidebar{position:static;max-height:340px}.ai-brief-head{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.content{padding:16px 12px}.workspace-bar{padding:12px;flex-wrap:wrap}.page-heading{flex-direction:column;gap:14px}.stats{gap:10px}.stat{padding:14px}.stat strong{font-size:1.25rem}.three,.two,.tutoring-analytics-stats.four,.record-grid,.note-grid{grid-template-columns:1fr}.tutoring-filter-row{grid-template-columns:minmax(0,1fr);gap:16px}.tutoring-filters .panel-head{flex-direction:column;align-items:stretch}.tutoring-filters .panel-head>:last-child{align-self:flex-start}.tutoring-reminder-row{align-items:stretch;flex-direction:column;gap:12px;padding:13px}.tutoring-reminder-row button{min-height:42px;align-self:flex-start}.fc .fc-toolbar-chunk{width:100%}.fc .fc-toolbar-chunk:last-child{overflow-x:auto}.fc .fc-button{padding:8px 9px;font-size:.74rem}.calendar-key{gap:12px 16px;padding:12px}.fc .fc-timegrid-slot{height:2.4rem}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.app-footer{flex-direction:column;padding:20px}.project-next{align-items:flex-start;flex-direction:column}.donut-chart{flex-direction:column}.legend{width:100%}.section-tools{flex-direction:column}.topbar{padding:15px}.sidebar{width:64px}.app{grid-template-columns:64px minmax(0,1fr)}.sidebar nav button{padding:12px 8px}.brand{margin-left:0}.notification{font-size:.75rem;flex-wrap:wrap}.panel-head{flex-wrap:wrap}.habit-overview{flex-direction:column}.habit-overview .chart{width:100%;flex:auto}.modal-foot{flex-wrap:wrap}.capture>div{gap:12px}.capture button{font-size:.7rem}.tabs button{padding:10px;font-size:.8rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.workbench-app{--accent: #17685c;--panel: #fffdf8;--muted: #63736b;--border: #d1dbd1;--text: #253a33;color:#20372f;color-scheme:light}.workbench-app main{background:#f2f1e9}.workbench-app .topbar,.workbench-app .workspace-bar{background:#fbfaf5;border-color:#dce2d8;color:#344e44}.workbench-app .topbar>span,.workbench-app .search{color:#52675d}.workbench-app .search input{color:#20372f}.workbench-app .search input::placeholder{color:#84938b}.workbench-app .workspace-bar select{color:#29483d;background:#fffdf8;border-color:#cbd7cc}.workbench-app .demo-badge{color:#725b1e;background:#f5efda;border-color:#ded1a6}.workbench-app .personal-badge{color:#17685c;background:#e0eee6;border-color:#b5d2c0}.workbench-app .content{animation:workbench-enter .32s ease-out both}.workbench-app h1,.workbench-app h2,.workbench-app h3,.workbench-app strong{color:#20372f}.workbench-app p{color:#5c6b64}.workbench-app small{color:#708078}.workbench-app a{color:#17685c}.workbench-app button,.workbench-app .button{color:#28453b;background:#fffdf8;border-color:#ced8ce;box-shadow:0 1px 2px #2545380a}.workbench-app button:hover,.workbench-app .button:hover{background:#f0f4ec;border-color:#aabeb0}.workbench-app button.primary,.workbench-app .button.primary{color:#fff;background:#17685c;border-color:#17685c}.workbench-app button.primary:hover,.workbench-app .button.primary:hover{background:#0f554b}.workbench-app .icon,.workbench-app .link,.workbench-app .text-button{color:#17685c;background:transparent;box-shadow:none}.workbench-app .subtle{color:#315448;background:#e8eee6;border-color:#d4dfd3}.workbench-app input,.workbench-app select,.workbench-app textarea{color:#20372f;background:#fffefa;border-color:#cbd6cd}.workbench-app input::placeholder,.workbench-app textarea::placeholder{color:#8a9890}.workbench-app .page-heading small{color:#8b6c31}.workbench-app .stat,.workbench-app .panel,.workbench-app .record-card{background:#fffdf8;color:#20372f;border-color:#d7ded5;box-shadow:0 5px 18px #314a3b0a}.workbench-app .stat{border-radius:15px 15px 15px 5px;border-left:4px solid #728c7a;transition:transform .2s ease,box-shadow .2s ease}.workbench-app .stat:hover,.workbench-app .panel:hover{transform:translateY(-2px);box-shadow:0 10px 24px #314a3b12}.workbench-app .stat.violet{background:#e7eee5;border-color:#cbd9ca;border-left-color:#17685c}.workbench-app .stat.mint{background:#e2f0e9;border-color:#c2dccb;border-left-color:#32805f}.workbench-app .stat.peach{background:#f6e9df;border-color:#e7cfc0;border-left-color:#c45d3f}.workbench-app .stat>span{color:#68786e}.workbench-app .stat strong{color:#20372f}.workbench-app .stat.mint strong{color:#176744}.workbench-app .stat.peach strong{color:#a94d32}.workbench-app .tabs{border-color:#d4ddd4;gap:7px}.workbench-app .tabs button{color:#61746a;border-radius:9px 9px 0 0;box-shadow:none}.workbench-app .tabs button.selected{color:#155e53;border-color:#17685c;background:#e7eee5}.workbench-app th{color:#64746c}.workbench-app td{color:#31473d}.workbench-app td,.workbench-app th{border-color:#e3e7df}.workbench-app tbody tr:hover{background:#f4f5ee}.workbench-app .progress{background:#e1e8df}.workbench-app .progress span{background:#26806c}.workbench-app .budget-notice-warning{color:#795c1f;background:#f7f0dc;border-color:#eadcad}.workbench-app .budget-notice-danger{color:#9e3f2d;background:#f8e8df;border-color:#edc6b6}.workbench-app .positive{color:#157049}.workbench-app .negative{color:#b24732}.workbench-app .calendar-key{background:#f6f5ee;border-color:#d8dfd6}.workbench-app .calendar-key-item{color:#53675c}.workbench-app .calendar-key-item.task i{color:#aa713d;background:#aa713d}.workbench-app .calendar-key-item.event i{color:#477997;background:#477997}.workbench-app .calendar-key-item.lesson i{color:#26745f;background:#26745f}.workbench-app .fc .fc-scrollgrid,.workbench-app .fc th,.workbench-app .fc td{border-color:#dce3da}.workbench-app .fc .fc-col-header-cell{background:#e9eee6}.workbench-app .fc .fc-col-header-cell-cushion{color:#385448}.workbench-app .fc .fc-timegrid-axis,.workbench-app .fc .fc-timegrid-slot-label{color:#6b7c72}.workbench-app .fc .fc-timegrid-axis,.workbench-app .fc .fc-scrollgrid-section-header>th.fc-timegrid-axis{background:#f5f6f0}.workbench-app .fc .fc-timegrid-slot{border-color:#e5e9e1}.workbench-app .fc .fc-day-today{background:#e8f2e8!important}.workbench-app .fc .fc-button-primary{color:#315347;background:#fffdf8;border-color:#cbd7cc}.workbench-app .fc .fc-button-primary:not(:disabled).fc-button-active,.workbench-app .fc .fc-button-primary:not(:disabled):active{color:#fff;background:#17685c;border-color:#17685c}.workbench-app .fc .fc-button-primary:hover{color:#155e53;background:#e5eee5;border-color:#b8cabd}.workbench-app .fc .fc-toolbar-title{color:#20372f}.workbench-app .fc .fc-event{color:#fff}.workbench-app .fc .lesson-event-due{background:#b9573d!important}.workbench-app .fc .lesson-event-partial{background:#a16a28!important}.workbench-app .fc .lesson-event-paid{background:#26745f!important}.workbench-app .fc .lesson-event-planned{background:#527b8a!important}.workbench-app .tutoring-conflicts{background:#fbede7;border-color:#eac7b7}.workbench-app .tutoring-conflicts .panel-head h2,.workbench-app .tutoring-conflict-details>summary{color:#a94d32}.workbench-app .tutoring-conflict-lessons>span{color:#344b40;background:#fffaf4;border-color:#e2c8b8}.workbench-app .tutoring-filter-row label{color:#61746a}.workbench-app .tutoring-filter-row select,.workbench-app .tutoring-filter-row input{color:#20372f;background:#fffefa;border-color:#cbd6cd}.workbench-app .field-hint{display:block;margin-top:-3px;font-size:.7rem}.workbench-app .legend{color:#53675c}.workbench-app .lesson-payment-state{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.74rem;line-height:1.35;font-weight:700;white-space:nowrap}.workbench-app .lesson-payment-state.paid{color:#176744;background:#e0f0e5}.workbench-app .lesson-payment-state.partial{color:#80520f;background:#f7efda}.workbench-app .lesson-payment-state.unpaid{color:#a44430;background:#f8e6de}.workbench-app .lesson-payment-state.neutral{color:#536a77;background:#e7eef0}.workbench-app .app-footer{color:#76877d}@keyframes workbench-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.workbench-app *,.workbench-app .content{animation:none!important}}@media(max-width:600px){.app{grid-template-columns:minmax(0,1fr)}.app main{min-width:0;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.app .sidebar{position:fixed;z-index:20;inset:auto 0 0;width:100%;height:calc(68px + env(safe-area-inset-bottom));padding:4px 6px calc(4px + env(safe-area-inset-bottom));flex-direction:row;overflow:hidden;border-right:0;border-top:1px solid #343641}.app .brand,.app .profile{display:none}.app .sidebar nav{display:flex;align-items:stretch;gap:2px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.app .sidebar nav::-webkit-scrollbar{display:none}.app .sidebar nav>div{flex:0 0 64px;min-width:64px}.app .sidebar .nav-label,.app .sidebar .nav-divider{display:none}.app .sidebar nav button{display:flex;width:100%;height:58px;min-height:58px;flex-direction:column;justify-content:center;gap:3px;margin:0;padding:4px 2px;border-radius:9px}.app .sidebar nav button span{display:block;max-width:100%;overflow:hidden;font-size:.56rem;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.app .sidebar nav button svg{flex:0 0 auto;width:16px;height:16px}.workbench-app .topbar{min-height:54px;padding:8px 12px}.workbench-app .topbar>span{display:none}.workbench-app .topbar>div{width:100%;gap:8px;justify-content:space-between}.workbench-app .search{flex:1;min-width:0}.workbench-app .search input{width:100%;min-width:0}.workbench-app .workspace-bar{align-items:center;padding:10px 12px 0}.workbench-app .workspace-bar select{max-width:58%}.workbench-app .content{padding:16px 12px 24px}.workbench-app .page-heading{gap:12px;margin-bottom:18px}.workbench-app .page-heading h1{font-size:1.55rem}.workbench-app .page-heading .actions{width:100%}.workbench-app .page-heading .actions>*{flex:1 1 auto}.workbench-app .stats{gap:9px;margin-bottom:16px}.workbench-app .stat{min-width:0;padding:12px;border-radius:12px 12px 12px 4px}.workbench-app .stat>span{font-size:.72rem}.workbench-app .stat strong{font-size:1.12rem;letter-spacing:-.3px}.workbench-app .panel{margin-bottom:14px;padding:15px;border-radius:15px}.workbench-app .panel-head{margin-bottom:14px}.workbench-app .panel-head>:last-child{max-width:100%}.workbench-app .tutoring-filter-row{grid-template-columns:minmax(0,1fr);gap:13px}.workbench-app .tutoring-filter-row select,.workbench-app .tutoring-filter-row input{min-height:44px}.workbench-app .tabs{flex-wrap:nowrap;gap:2px;margin:0 -4px 16px;overflow-x:auto;scrollbar-width:none}.workbench-app .tabs::-webkit-scrollbar{display:none}.workbench-app .tabs button{flex:0 0 auto;padding:10px 12px;font-size:.78rem;white-space:nowrap}.workbench-app .table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.workbench-app .table-scroll table{min-width:650px}.workbench-app .calendar-key{margin-bottom:14px}.workbench-app .calendar-panel{padding:12px 9px}.workbench-app .fc .fc-toolbar{gap:10px}.workbench-app .fc .fc-toolbar-chunk{width:100%}.workbench-app .fc .fc-toolbar-chunk:nth-child(2){order:-1}.workbench-app .fc .fc-toolbar-chunk:last-child{display:flex;overflow-x:auto}.workbench-app .fc .fc-button{min-height:38px;padding:7px 9px;font-size:.72rem;white-space:nowrap}.workbench-app .fc .fc-timegrid-slot{height:2.35rem}.workbench-app .fc .fc-daygrid-day-frame{min-height:76px}.workbench-app .fc .fc-event{font-size:.68rem;padding:3px 4px}.workbench-app .donut-chart{flex-direction:column}.workbench-app .donut-chart>div:first-child{width:100%!important}.workbench-app .legend{width:100%}.workbench-app .app-footer{padding:4px 12px 18px}}
