:root{--ink:#29263e;--muted:#8c879e;--green:#7152e7;--green-deep:#211a39;--lime:#d9f78c;--paper:#f5f4fa;--border:#e7e3f0;--coral:#d67652}
.topbar{background:#fcfbff}.page-heading h1{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-1.3px;font-size:32px}.page-heading .eyebrow{color:#9a8ac5}.page-heading .button{background:#7152e7;box-shadow:0 5px 13px #7152e71e}.primary:hover{background:#5f40d6}.sidebar{background:#211a39}.nav-item.active{background:#d9f78c;color:#302c41}.sidebar .brand{color:#fff}.sidebar .brand-mark{border-color:#8d79c2;color:#d9f78c}.brand-dot{color:#d9f78c}.brand-mark span{color:#fff}.workspace-label{border-color:#ffffff18;color:#e3ddf2}.workspace-label small,.nav-label{color:#a098b7}.nav-item{color:#bbb2d0}.sidebar-note{background:#322744;border-color:#5c4372;position:relative;overflow:hidden}.sidebar-note:after{content:'';position:absolute;width:75px;height:75px;border:1px solid #ffffff12;border-radius:50%;right:-20px;top:-15px;box-shadow:0 0 0 17px #ffffff06,0 0 0 34px #ffffff04}.sidebar-note h3{font-family:Arial,Helvetica,sans-serif;font-weight:bold;font-size:24px;line-height:1.15;letter-spacing:-.8px}.sidebar-note p{color:#b5a9c8}.lab-tag{font-size:7px;letter-spacing:1.4px;color:#c6aee5;display:block;margin-top:22px}.profile{border-color:#ffffff16}.profile small,.profile .icon-button{color:#b9adc9}.avatar{background:#d8c7ff;color:#503b7f}.eyebrow{color:#9480b3}.auth-story{background:#211a39}.auth-story .story-content h1{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-3px}.story-content em{font-family:Georgia,serif;font-weight:400;color:#d9f78c}.story-content>p{color:#bcb3cf}.auth-panel{background:#f7f6fc}.auth-tabs{background:#eeebf5}.story-card{border-color:#ffffff20;background:#ffffff09}.story-card small{color:#beb1d1}.story-footer{color:#a497be}.auth-tabs .active{color:#6043bf}.stat-icon{background:#f0ecfa;color:#8a70c2}.stat-card p{color:#a29aad}.stat-icon.green{background:#ecf3dd;color:#6c8a31}.stat-icon.amber{background:#fff0dc;color:#bf8942}.stat-icon.coral{background:#fff0e9;color:#d38a65}.stat-label{color:#938a9f}.stat-card{box-shadow:0 3px 12px #211a3902}.search-box{background:#f9f8fc}.filter-tabs button.active{border-color:#8260df;color:#7453be}.filter-tabs button{color:#9690a5}.course-tag{background:#eee9fb;color:#8362bd}.status-badge{background:#f0edf5;color:#8e849c}.status-badge.in_progress{background:#fff1db;color:#ad8749}.status-badge.done{background:#eaf1db;color:#7b9255}.complete-toggle{border-color:#d6cee4}.complete-toggle:hover{background:#f0ecfa;border-color:#9e84cc}.task-row.done .complete-toggle{background:#9cb66d;border-color:#9cb66d}.task-title:hover{color:#7956ca}.task-row{border-color:#eeebf4}.task-meta{color:#a297ad}.task-description{color:#aaa1b5}.task-row.done .task-title{color:#aaa1b5}.list-footer{background:#fdfcff;color:#aaa0b8}.count-pill{background:#eee9fb;color:#8973ad}.progress-card .section-heading>span{color:#a68bd7}.progress-value>span,.progress-legend{color:#a295af}meter{background:#f0ebf7}meter::-webkit-meter-bar{background:#f0ebf7}meter::-webkit-meter-optimum-value{background:#a38acb}meter::-moz-meter-bar{background:#a38acb}.progress-legend i{background:#a38acb}.date-tile{background:#f2edf9;color:#9a80ba}.deadline-item small{color:#a498b2}.quote-card{background:#eae2fb;border-color:#e3d8f8}.quote-card>span{color:#9370c6}.quote-card p{color:#80639d;font-family:Arial,Helvetica,sans-serif;font-style:normal;font-size:21px;font-weight:bold;letter-spacing:-.6px}.quote-card small{color:#aa94bf}.empty-symbol{background:#f2eefa;border-color:#e4dcf0;color:#a38bc3}.empty-state p{color:#a59bb3}.text-button{color:#9b84b9}.text-button:hover{color:#725099}.toast{background:#534077;border-color:#80639f}.effort-tag{color:#9c79bb;background:#f7f1fc;padding:2px 5px;border-radius:4px}.effort-help{font-size:10px;color:#a296af;line-height:1.6;align-self:center;padding-top:20px}.study-task-name{font-size:17px;font-weight:bold;margin-bottom:12px}
.planner-lab{display:grid;grid-template-columns:295px minmax(0,1fr);border:1px solid #ded4f2;border-radius:20px;margin-bottom:23px;overflow:hidden;box-shadow:0 8px 30px #5c409609}.lab-intro{background:#29203f;color:#fff;padding:30px 27px;display:flex;flex-direction:column;justify-content:space-between;gap:38px;position:relative;overflow:hidden}.lab-intro:before{content:'';position:absolute;width:180px;height:180px;border-radius:50%;border:1px solid #ffffff10;right:-100px;top:40px;box-shadow:0 0 0 35px #ffffff04,0 0 0 70px #ffffff02;pointer-events:none}.lab-kicker{display:flex;align-items:center;gap:7px;font-size:8px;letter-spacing:2px;color:#cbb8ee;font-weight:bold}.lab-kicker i{width:6px;height:6px;background:#d9f78c;border-radius:50%;box-shadow:0 0 0 4px #d9f78c0b}.lab-intro h2{font-size:29px;line-height:1.15;letter-spacing:-1.2px;margin:23px 0 17px;font-weight:600}.lab-intro h2 em{font-family:Georgia,'Times New Roman',serif;font-size:32px;line-height:1.25;font-weight:400;color:#d9f78c}.lab-intro>div>p{font-size:11px;color:#b9acce;line-height:1.8;max-width:215px}.budget-control{margin-top:30px;background:#ffffff08;border:1px solid #ffffff10;border-radius:12px;padding:17px 15px}.budget-control>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:15px}.budget-control label{font-size:9px;color:#baadcc}.budget-control output{font-size:22px;font-weight:500;letter-spacing:-.5px;color:#e5f5be}.budget-control input{width:100%;accent-color:#d9f78c;margin:21px 0 13px;height:5px;cursor:pointer}.range-labels{display:flex;justify-content:space-between;color:#92819f;font-size:8px}.lab-method{display:flex;align-items:center;gap:11px}.lab-method>span{color:#cdb8ec;font-size:28px}.lab-method p{font-size:9px;color:#9b8cab;line-height:1.8}.lab-workspace{background:#fff;padding:25px 25px 17px;min-width:0}.lab-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.lab-chart-heading h3{font-size:16px;letter-spacing:-.4px;margin-top:8px;font-weight:500}.lab-chart-heading .eyebrow{font-size:7px;letter-spacing:1.4px;color:#b1a5c3}.lab-chart-heading .button{font-size:9px;min-height:33px;padding:8px 10px;color:#a48dbd;border-color:#eee5f5}.week-chart{min-height:115px;margin-top:22px}.week-chart svg{width:100%;height:auto;display:block;max-height:155px}.chart-track{fill:#f7f3fb}.chart-bar{fill:#a18ad6}.chart-bar.late{fill:#e7a088}.chart-value{font-family:Arial,sans-serif;font-size:10px;fill:#a196ad}.chart-label{font-family:Arial,sans-serif;font-size:9px;fill:#b0a4be}.chart-legend{display:flex;gap:16px;font-size:7px;color:#aaa0b5;margin:3px 0 22px;align-items:center;flex-wrap:wrap}.chart-legend>span{display:flex;align-items:center;gap:5px}.chart-legend i{width:6px;height:6px;border-radius:2px}.legend-violet{background:#a18ad6}.legend-coral{background:#e7a088}.chart-legend>span:last-child{margin-left:auto;font-size:7px;color:#b6acc2}.plan-days{display:flex;gap:4px;border-top:1px solid #f0ebf5;border-bottom:1px solid #f0ebf5;padding:10px 0;margin-bottom:19px}.plan-days button{background:none;flex:1;font-size:8px;white-space:nowrap;padding:8px 4px;color:#b1a2c0;border-radius:6px}.plan-days button:hover{background:#f8f4fc}.plan-days button.selected{background:#eee7fa;color:#8e6eb5;font-weight:bold}.session-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 8px}.session-heading h3{font-size:12px;font-weight:500;color:#9d87b1}.session-total{font-size:8px;color:#beafcb}.study-blocks{max-height:265px;overflow:auto}.study-block{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #f4eff8}.study-block:last-child{border-bottom:0}.block-number{font-size:11px;color:#cebce1;font-family:Georgia,serif;align-self:start;margin-top:14px;min-width:17px}.block-detail{min-width:0;flex:1}.block-course{font-size:7px;letter-spacing:.7px;color:#b6a0cb}.block-late{color:#c78a70;font-size:7px;margin-left:8px}.block-title{display:block;background:none;text-align:left;padding:0;font-size:11px;color:#9476ad;line-height:1.6;margin:4px 0;font-weight:600;overflow-wrap:anywhere}.block-title:hover{color:#71529b}.block-detail p{font-size:8px;color:#bcaccb;line-height:1.6}.block-action{display:flex;flex-direction:column;align-items:end;gap:7px;flex-shrink:0}.block-action strong{font-size:14px;font-weight:400;color:#a084be}.log-button{font-size:8px;padding:5px 7px;color:#b09ac3;background:#f8f3fc;border:1px solid #f0e7f8}.log-button:hover{background:#ede3f9}.plan-empty{font-size:11px;color:#b5a5c4;line-height:1.8;padding:22px 0;max-width:340px}.plan-assumptions{font-size:8px;color:#c5b8d0;line-height:1.8;border-top:1px solid #f4eff8;margin-top:10px;padding-top:12px}.risk-panel{background:#fff5ee;border:1px solid #f2dfd0;border-radius:15px;padding:20px 23px;margin-bottom:23px}.risk-panel>div:first-child{display:flex;align-items:center;gap:12px}.risk-icon{width:28px;height:28px;display:grid;place-items:center;background:#f7dfc8;border-radius:50%;font-family:Georgia,serif;font-style:italic;font-size:19px;color:#bb8b61}.risk-panel h2{font-size:13px;letter-spacing:-.2px;color:#b58767}.risk-panel>div>div>p{font-size:9px;color:#c2a68e;margin-top:6px;line-height:1.6}.risk-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:17px}.risk-item{display:flex;flex-direction:column;align-items:start;gap:7px;text-align:left;background:#ffffff75;border:1px solid #f4e4d7;border-radius:10px;padding:14px}.risk-item:hover{background:#fff}.risk-kind{font-size:6px;font-weight:bold;letter-spacing:1px;color:#c49b7d}.risk-item strong{font-size:11px;color:#b58b70;font-weight:500}.risk-item>span:not(.risk-kind){font-size:9px;line-height:1.7;color:#c5a993}.risk-item .risk-edit{color:#b6957a!important;font-size:8px!important;margin-top:3px}
/* The chart is a read-only graphic; text labels should not look like inputs. */
.week-chart{cursor:default;user-select:none;-webkit-user-select:none;caret-color:transparent}
.week-chart text{pointer-events:none}
/* Clearer contrast for text and controls; muted labels still meet readable sizes. */
.lab-workspace .eyebrow,.chart-label{color:#82728f;fill:#82728f}.chart-value{fill:#776185}.chart-legend,.chart-legend>span:last-child{color:#82728f;font-size:9px}.plan-days button{font-size:10px;color:#796486}.plan-days button.selected{color:#67408e}.session-heading h3{font-size:13px;color:#654b7d}.session-total{font-size:10px;color:#8a749c}.block-course{font-size:8px;color:#80618f}.block-title{font-size:12px;color:#5b3e75}.block-detail p{font-size:9px;color:#8b759a}.block-action strong{color:#74508f}.log-button{font-size:9px;color:#735087}.plan-assumptions{font-size:9px;color:#8e7b9b}.plan-empty{color:#897397}.risk-panel h2{color:#875537}.risk-panel>div>div>p{font-size:11px;color:#9a7052}.risk-kind{color:#ad7751;font-size:8px}.risk-item strong{color:#88583b;font-size:12px}.risk-item>span:not(.risk-kind){color:#a37859;font-size:10px}.budget-control label{font-size:11px}.range-labels{font-size:9px;color:#ac9aba}.lab-method p{font-size:10px;color:#ac98bf}
@media(min-width:1500px){.planner-lab{grid-template-columns:325px minmax(0,1fr)}.lab-intro{padding:35px}.lab-intro h2{font-size:32px}.lab-intro h2 em{font-size:35px}.lab-workspace{padding:30px 30px 20px}.lab-chart-heading h3{font-size:19px}}
@media(max-width:1200px){.planner-lab{grid-template-columns:255px minmax(0,1fr)}.lab-intro{padding:25px 22px}.lab-intro h2{font-size:25px}.lab-intro h2 em{font-size:28px}.lab-workspace{padding:22px 20px 15px}.chart-legend{gap:10px}.chart-legend>span:last-child{margin-left:0;width:100%}.lab-chart-heading h3{font-size:14px}.lab-chart-heading .button{font-size:8px}.plan-days{gap:2px}.plan-days button{font-size:8px}}
@media(max-width:1020px){.planner-lab{grid-template-columns:1fr}.lab-intro{display:grid;grid-template-columns:1fr 160px;gap:25px;padding:25px}.lab-intro h2 br{display:none}.lab-intro h2{margin:15px 0 10px;font-size:26px}.lab-intro h2 em{font-size:29px}.lab-intro>div>p{max-width:100%;font-size:11px}.budget-control{max-width:380px;margin-top:20px}.lab-method{align-self:end;padding-bottom:15px}.lab-workspace{padding:25px}.week-chart{margin-top:18px}.chart-legend>span:last-child{width:auto;margin-left:auto}.plan-days button{font-size:10px}}
@media(max-width:740px){.page-heading h1{font-size:27px}.lab-intro{display:block;padding:25px}.lab-intro h2{font-size:28px;max-width:280px}.lab-intro h2 em{font-size:31px}.lab-intro h2 br{display:block}.lab-intro>div>p{max-width:290px}.lab-method{padding-bottom:0;margin-top:20px}.lab-method p{font-size:9px}.budget-control{max-width:100%;padding:15px}.lab-workspace{padding:22px 17px 17px}.lab-chart-heading h3{font-size:14px;max-width:180px;line-height:1.5}.lab-chart-heading .eyebrow{font-size:7px}.lab-chart-heading .button{padding:6px 8px;font-size:8px;gap:4px}.chart-legend{font-size:8px;gap:10px}.chart-legend>span:last-child{margin-left:0;width:100%;font-size:8px}.plan-days button{font-size:8px;padding:8px 2px}.block-title{font-size:11px}.block-detail p{font-size:8px}.block-course{font-size:7px}.block-action strong{font-size:13px}.study-block{gap:8px}.log-button{font-size:8px}.risk-panel{padding:18px 17px}.risk-items{grid-template-columns:1fr}.effort-help{font-size:9px}.sidebar-note{display:none}.page-heading .button{box-shadow:none}.lab-intro:before{right:-70px}.study-blocks{max-height:300px}}
