:root{--ink:#16201c;--muted:#6d7771;--line:#dfe5df;--surface:#ffffff;--background:#f4f6f2;--mint:#c9ef9a;--mint-deep:#75aa5a;--blue:#c9dff6;--amber:#f2dea0;--coral:#f3c5ae;--violet:#d9cef4;--shadow:0 18px 45px rgba(32,48,40,0.07);--radius-lg:24px;--radius-md:17px;--font-ui:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:Georgia,"Times New Roman",serif;color-scheme:light}*{box-sizing:border-box}html{min-width:320px;background:var(--background)}body{min-height:100vh;margin:0;color:var(--ink);background:radial-gradient(circle at 82% 10%,rgba(201,239,154,.15),transparent 23rem),var(--background);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{color:inherit}button,input[type=range],label{-webkit-tap-highlight-color:transparent}.loading-screen{display:grid;min-height:100vh;place-content:center;justify-items:center;gap:16px;color:var(--muted)}.brand-mark,.loading-logo{display:grid;place-items:center;color:#f5ffe8;background:var(--ink);font-family:Georgia,serif;font-weight:700}.loading-logo{width:54px;height:54px;border-radius:17px;font-size:28px;box-shadow:var(--shadow)}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);grid-template-rows:76px minmax(calc(100vh - 76px),auto);min-height:100vh}.topbar{position:sticky;top:0;z-index:30;display:grid;grid-column:1/-1;grid-template-columns:248px minmax(260px,540px) 1fr;gap:28px;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand,.topbar{align-items:center}.brand{display:flex;gap:11px;padding:0;border:0;background:none;text-align:left;cursor:pointer}.brand-mark{width:39px;height:39px;border-radius:12px;font-size:21px}.brand>span:last-child{display:flex;flex-direction:column;line-height:1.05}.brand strong{font-family:Georgia,Times New Roman,serif;font-size:18px}.brand small{margin-top:5px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.topbar-actions{display:flex;grid-column:3;justify-content:flex-end;gap:13px;align-items:center}.topbar-status-stack{display:flex;min-width:92px;align-items:flex-end;flex-direction:column;gap:4px}.save-status{display:inline-flex;gap:7px;align-items:center;color:#748078;font-size:11px;font-weight:650}.topbar-pomodoro{display:inline-flex;gap:6px;align-items:baseline;padding:0;border:0;color:#52604f;background:transparent;cursor:pointer}.topbar-pomodoro span{color:#788278;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.topbar-pomodoro strong{color:#31402f;font-family:Georgia,serif;font-size:13px;font-weight:500;letter-spacing:.01em}.topbar-pomodoro.is-break strong{color:#61788c}.save-status i{width:7px;height:7px;border-radius:50%;background:#8fc170}.save-status.is-saving i{background:#e3b75d;animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}.avatar{display:grid;width:37px;height:37px;place-items:center;border:1px solid #cbd5c9;border-radius:50%;background:#e9f4dc;font-family:Georgia,serif;font-size:14px;font-weight:700}.avatar-button{padding:0;cursor:pointer}.avatar-button:hover{border-color:#90a58d}.login-screen{display:grid;min-height:100vh;padding:28px;place-items:center;background:radial-gradient(circle at 20% 20%,rgba(201,239,154,.34),transparent 30rem),radial-gradient(circle at 85% 85%,rgba(201,223,246,.3),transparent 28rem),#f4f6f2}.login-card{display:flex;width:min(100%,430px);flex-direction:column;padding:44px;border:1px solid rgba(213,222,214,.9);border-radius:28px;background:rgba(255,255,255,.92);box-shadow:0 26px 70px rgba(31,50,40,.11);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-mark{display:grid;width:52px;height:52px;margin-bottom:28px;place-items:center;border-radius:16px;color:#f4ffe7;background:var(--ink);font-family:Georgia,serif;font-size:28px;font-weight:700}.login-card h1{margin:8px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,6vw,40px);font-weight:500;letter-spacing:-.035em;line-height:1.05}.login-card>p{margin:0 0 30px;color:var(--muted);font-size:14px;line-height:1.6}.login-card label{display:flex;flex-direction:column;gap:8px;color:#47534c;font-size:12px;font-weight:750}.login-card label+label{margin-top:14px}.login-card input{min-height:48px;padding:0 14px;border:1px solid #d9e0da;border-radius:12px;outline:0;background:#f9fbf8}.login-card input:focus{border-color:#8eb279;box-shadow:0 0 0 3px rgba(142,178,121,.15)}.login-button{margin-top:16px}.login-divider{display:flex;gap:12px;align-items:center;margin:17px 0;color:#98a19b;font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.login-divider:after,.login-divider:before{height:1px;flex:1 1;background:#e1e7e1;content:""}.passkey-login-button{display:flex;min-height:46px;gap:10px;align-items:center;justify-content:center;border:1px solid #cdd9ca;border-radius:12px;color:#30452f;background:#f4f8f1;font-size:12px;font-weight:800;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.passkey-login-button:hover:not(:disabled){transform:translateY(-1px);border-color:#96ad8f;background:#edf5e8}.passkey-login-button span{display:grid;width:25px;height:25px;place-items:center;border-radius:8px;color:#f4ffe9;background:#365433;font-size:17px}.passkey-login-button:disabled{cursor:wait;opacity:.62}.form-error,.setup-note{margin-top:13px;padding:12px 14px;border-radius:11px;font-size:12px;line-height:1.5}.form-error{color:#8f3627;background:#fff0ec}.setup-note{color:#6d551a;background:#fff8df}.setup-note code{font-size:11px}.login-footnote{margin-top:24px;color:#929a95;font-size:10px;line-height:1.5;text-align:center}.profile-menu{position:relative;flex:0 0 auto}.profile-trigger{display:grid;width:38px;height:38px;padding:0;place-items:center;border:1px solid #cbd5c9;border-radius:50%;color:#263729;background:#e9f4dc;font-family:Georgia,serif;font-size:11px;font-weight:700;letter-spacing:-.03em;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.profile-menu.is-reviewer .profile-trigger{border-color:#b8d68f;background:#c9ef9a;font-family:inherit;font-weight:900}.profile-trigger:hover,.profile-trigger[aria-expanded=true]{transform:translateY(-1px);border-color:#8fa586;box-shadow:0 0 0 4px rgba(142,171,127,.12)}.profile-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:80;width:244px;overflow:hidden;padding:7px;border:1px solid rgba(69,86,73,.14);border-radius:17px;background:rgba(253,254,252,.98);box-shadow:0 20px 52px rgba(22,36,26,.18);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.profile-popover-heading{display:flex;gap:11px;align-items:center;margin-bottom:5px;padding:11px 10px 13px;border-bottom:1px solid #e7ebe6}.profile-popover-heading>span{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:12px;color:#f4ffe9;background:#30472f;font-family:Georgia,serif;font-size:10px;font-weight:700}.profile-popover-heading p{display:flex;min-width:0;margin:0;flex-direction:column}.profile-popover-heading strong{overflow:hidden;color:#243129;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.profile-popover-heading small{margin-top:3px;color:#849087;font-size:8px;font-weight:700}.profile-popover>button{display:flex;width:100%;min-height:39px;gap:10px;align-items:center;padding:0 10px;border:0;border-radius:10px;color:#46534a;background:transparent;font-size:10px;font-weight:750;text-align:left;cursor:pointer}.profile-popover>button:hover{background:#f0f4ee}.profile-popover>button>span{width:18px;color:#60715f;font-size:14px;text-align:center}.profile-popover>.profile-logout{color:#8b4538}.profile-popover>.profile-logout>span{color:#a55243}.profile-dialog-backdrop{z-index:150}.profile-dialog{width:min(590px,100%);padding:29px}.profile-dialog .dialog-heading{margin-bottom:23px}.profile-dialog-kicker,.profile-security-heading span{display:block;margin-bottom:5px;color:#6f8b66;font-size:8px;font-weight:900;letter-spacing:.13em}.profile-username-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:17px;border:1px solid #dfe6de;border-radius:16px;background:#f6f9f4}.profile-username-form label{margin:0!important}.profile-username-form .primary-button{min-height:43px}.profile-username-hint{margin:7px 2px 0;color:#89938c;font-size:8px;line-height:1.5}.profile-security-heading{display:flex;align-items:end;justify-content:space-between;margin-top:28px;padding-top:23px;border-top:1px solid #e3e8e2}.profile-security-heading h3{margin:0;font-family:Georgia,serif;font-size:23px;font-weight:500}.profile-security-heading b{display:grid;width:29px;height:29px;place-items:center;border-radius:10px;color:#486342;background:#e7f1e1;font-size:10px}.profile-security-copy{margin:8px 0 15px;color:#77827b;font-size:9px;line-height:1.55}.profile-password-form{padding:15px;border:1px solid #dfe6de;border-radius:15px;background:#f8faf7}.profile-password-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.passkey-create-fields label,.profile-password-fields label{margin:0!important}.profile-password-current{grid-column:1/-1}.profile-password-form>button{width:100%;margin-top:11px}.profile-security-heading.is-passkey-heading{margin-top:25px}.passkey-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.passkey-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;min-height:61px;padding:9px 10px;border:1px solid #dfe6de;border-radius:14px;background:#fff}.passkey-empty>span,.passkey-symbol{display:grid;width:35px;height:35px;place-items:center;border-radius:11px;color:#f3ffe8;background:#3b5738;font-size:20px}.passkey-list li>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.passkey-list strong{overflow:hidden;color:#2f3e33;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.passkey-list small{margin-top:4px;color:#879087;font-size:7px}.passkey-list button{padding:6px 8px;border:0;border-radius:8px;color:#965346;background:#fff0ec;font-size:8px;font-weight:800;cursor:pointer}.passkey-empty{display:flex;gap:12px;align-items:center;padding:13px;border:1px dashed #cbd6c9;border-radius:15px;background:#f8faf7}.passkey-empty p{display:flex;margin:0;flex-direction:column}.passkey-empty strong{color:#435046;font-size:10px}.passkey-empty small{margin-top:3px;color:#89928c;font-size:8px}.passkey-create{margin-top:13px;padding:15px;border:1px solid #dfe6de;border-radius:15px;background:#f8faf7}.passkey-create-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.passkey-create-button{display:flex;min-height:43px;gap:7px;align-items:center;padding:0 13px;border:0;border-radius:11px;color:#f5ffed;background:#344f32;font-size:9px;font-weight:800;cursor:pointer}.passkey-create>.passkey-create-button{width:100%;justify-content:center;margin-top:11px}.passkey-create-button:disabled,.profile-dialog button:disabled{cursor:wait;opacity:.58}.passkey-unavailable{margin-top:13px;padding:11px 12px;border-radius:11px;color:#7c6845;background:#fff7e6;font-size:8px}.dialog-success{margin-top:14px;padding:10px 12px;border:1px solid #c9dfbe;border-radius:10px;color:#46663e;background:#eff8e9;font-size:9px;line-height:1.45}.empty-library button,.module-upload,.primary-button,.secondary-button,.upload-hero{border:0;border-radius:12px;cursor:pointer;font-weight:750;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.primary-button{min-height:43px;padding:0 18px;color:#f8fff1;background:var(--ink);box-shadow:0 9px 20px rgba(22,32,28,.15)}.primary-button.compact{min-height:38px;padding:0 14px;font-size:12px}.empty-library button:hover,.module-upload:hover,.primary-button:hover:not(:disabled),.upload-hero:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(22,32,28,.18)}button:disabled{cursor:not-allowed;opacity:.5}.secondary-button{min-height:43px;padding:0 18px;border:1px solid var(--line);background:#fff}.sidebar{position:sticky;top:76px;height:calc(100vh - 76px);padding:25px 18px 20px;border-right:1px solid var(--line);background:rgba(250,252,249,.82)}.module-nav,.sidebar,.sidebar nav{display:flex;flex-direction:column}.module-nav,.sidebar nav{gap:5px}.module-nav button,.sidebar nav button{display:flex;align-items:center;width:100%;min-height:42px;padding:0 12px;border:0;border-radius:11px;color:#59655e;background:transparent;font-size:12px;font-weight:650;text-align:left;cursor:pointer}.module-nav button:hover,.sidebar nav button:hover{background:rgba(225,231,224,.55)}.module-nav button.active,.sidebar nav button.active{color:var(--ink);background:#e6ebdf}.ui-icon{display:inline-grid;width:24px;height:24px;place-items:center;flex:0 0 auto;font-size:17px}.sidebar nav button .ui-icon{margin-right:7px}.sidebar nav button b{display:grid;min-width:22px;height:20px;margin-left:auto;padding:0 6px;place-items:center;border-radius:8px;color:#31452d;background:var(--mint);font-size:10px}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;margin:29px 9px 10px;color:#879188;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.sidebar-heading button{width:25px;height:25px;border:0;border-radius:8px;color:#67736b;background:#e9eee8;cursor:pointer}.module-nav{min-height:0;overflow-y:auto}.module-nav button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;min-height:47px}.module-nav button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-nav button small{color:#929b94;font-size:10px}.module-dot{width:8px;height:8px;border-radius:50%}.accent-mint{background:#8fc76a}.accent-blue{background:#78a6d4}.accent-amber{background:#d3aa54}.accent-coral{background:#d98e6a}.accent-violet{background:#9e86cf}.storage-card{margin-top:auto;padding:15px;border:1px solid #dfe6dd;border-radius:15px;background:#fff}.storage-heading{display:flex;gap:8px;align-items:center}.storage-heading>span:last-child{display:flex;flex-direction:column}.storage-heading strong{font-size:10px}.storage-heading small{margin-top:2px;color:var(--muted);font-size:9px}.progress-track,.storage-bar{height:6px;overflow:hidden;border-radius:99px;background:#e8ede7}.storage-bar{margin-top:13px}.progress-track span,.storage-bar span{display:block;height:100%;border-radius:inherit;background:var(--ink);transition:width .25s ease}.storage-card p{margin:8px 0 0;color:#788279;font-size:9px}.content{min-width:0;padding:38px clamp(28px,4vw,64px) 72px}.dashboard,.module-view,.todo-page{width:100%;max-width:1280px;margin:0 auto}.global-error{position:fixed;top:88px;right:24px;z-index:60;display:flex;gap:20px;align-items:center;max-width:460px;padding:13px 14px 13px 18px;border:1px solid #efc4b6;border-radius:13px;color:#743c2d;background:#fff5f1;box-shadow:var(--shadow);font-size:12px}.global-error button{border:0;background:transparent;cursor:pointer;font-size:19px}.hero-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:42px;align-items:end}.eyebrow{margin:0 0 10px;color:#829086;font-size:9px;font-weight:850;letter-spacing:.16em}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{margin-top:0}.hero-row h1,.module-header h1,.page-heading h1{max-width:740px;margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,4vw,53px);font-weight:500;letter-spacing:-.035em;line-height:1.02}.hero-copy,.page-heading>p:last-child{margin:0;color:var(--muted);font-size:13px}.upload-hero{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;min-height:78px;padding:14px 17px;border:1px solid #bfd9a8;color:#21311d;background:linear-gradient(135deg,rgba(255,255,255,.58),transparent 60%),#dff4c7;text-align:left}.upload-hero-icon{display:grid;width:43px;height:43px;place-items:center;border-radius:13px;color:#f6ffe8;background:#355233;font-size:21px}.upload-hero>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.upload-hero strong{font-size:12px}.upload-hero small{margin-top:5px;color:#607459;font-size:9px}.upload-hero i{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:rgba(255,255,255,.64);font-style:normal}.stats-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px;margin-top:34px}.stat-card{position:relative;display:flex;min-height:135px;align-items:center;padding:21px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.78)}.dark-card{justify-content:space-between;color:#f3f8f3;border-color:var(--ink);background:var(--ink)}.stat-card>div:not(.donut){display:flex;flex-direction:column}.stat-kicker{color:#7c8880;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dark-card .stat-kicker{color:#aebdb4}.stat-card strong{margin-top:9px;font-family:Georgia,serif;font-size:34px;font-weight:500}.stat-card strong small{color:#929d96;font-size:17px}.stat-note{position:absolute;right:17px;bottom:16px;color:#87928b;font-size:9px}.stat-icon{width:42px;height:42px;margin-right:15px;border-radius:13px;font-size:19px}.mint-icon{color:#36582f;background:#def4c7}.blue-icon{color:#35587c;background:#dbeaf8}.donut{--value:0deg;position:relative;display:grid;width:79px;height:79px;place-items:center;border-radius:50%;background:conic-gradient(var(--mint) var(--value),#34413b 0)}.donut:after{position:absolute;width:59px;height:59px;border-radius:50%;background:var(--ink);content:""}.donut span{position:relative;z-index:1;font-size:12px;font-weight:800}.section-title{display:flex;align-items:end;justify-content:space-between;margin:43px 0 16px}.now-playing h2,.panel-heading h2,.section-title h2{margin:0;font-family:Georgia,serif;font-size:25px;font-weight:500;letter-spacing:-.02em}.section-title button,.section-title>span{border:0;color:var(--muted);background:none;font-size:10px}.section-title button{cursor:pointer;font-weight:750}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.module-card{display:flex;min-height:292px;flex-direction:column;overflow:hidden;border:1px solid rgba(92,108,98,.14);border-radius:var(--radius-lg);box-shadow:0 12px 32px rgba(39,53,44,.045)}.module-card-main{display:block;width:100%;padding:22px 23px 12px;border:0;background:transparent;text-align:left;cursor:pointer}.accent-card-mint{--module-accent-strong:#648454;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.65),transparent 45%),#e5f5d7}.accent-card-blue{--module-accent-strong:#587895;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.7),transparent 45%),#e1edf8}.accent-card-amber{--module-accent-strong:#8a733d;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.7),transparent 45%),#f4eacb}.accent-card-coral{--module-accent-strong:#97614b;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.7),transparent 45%),#f5e1d7}.accent-card-violet{--module-accent-strong:#766598;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.7),transparent 45%),#ebe5f7}.module-card-top{display:flex;justify-content:space-between;color:#637168;font-size:9px;font-weight:800;letter-spacing:.13em}.module-card-top i{display:grid;width:31px;height:31px;place-items:center;border:1px solid rgba(64,82,69,.12);border-radius:50%;background:rgba(255,255,255,.55);font-style:normal;font-size:15px;transition:transform .16s ease,background .16s ease}.module-card-main:hover .module-card-top i{transform:translate(2px,-2px);background:rgba(255,255,255,.78)}.module-card h3{min-height:51px;margin:16px 0 0;font-family:Georgia,serif;font-size:23px;font-weight:500;line-height:1.14}.progress-block+.progress-block{margin-top:14px}.progress-label{display:flex;justify-content:space-between;margin-bottom:7px;color:#637168;font-size:9px}.progress-label strong{color:var(--ink);font-size:9px}.secondary-progress .progress-track span{background:rgba(42,60,51,.42)}.module-upload{width:100%;min-height:43px;border-radius:0;color:#506158;background:rgba(255,255,255,.58);font-size:9px}.todo-preview{margin-top:36px;padding:22px;border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.78)}.compact-title{margin:0 0 14px}.todo-list{display:flex;flex-direction:column}.todo-row{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto 80px;gap:12px;align-items:center;min-height:58px;border-top:1px solid #e9ede8;cursor:pointer}.todo-row:first-child{border-top:0}.todo-check input,.todo-row>input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.checkmark{display:grid;width:19px;height:19px;place-items:center;border:1px solid #bdc7bf;border-radius:6px;background:#fff}.todo-check input:checked+.checkmark,.todo-row>input:checked+.checkmark{border-color:#5c8550;color:#fff;background:#5c8550}.todo-check input:checked+.checkmark:after,.todo-row>input:checked+.checkmark:after{font-size:11px;content:"✓"}.todo-copy{display:flex;min-width:0;flex-direction:column}.todo-copy strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.todo-copy small{margin-top:4px;color:#89938c;font-size:9px}.priority-pill{display:inline-flex;min-height:22px;align-items:center;padding:0 8px;border-radius:8px;font-size:8px;font-weight:800}.priority-high{color:#854934;background:#f6dace}.priority-medium{color:#765f2d;background:#f3e8bd}.priority-low{color:#466b65;background:#dcebe8}.todo-row time{color:#707c74;font-size:9px;text-align:right}.todo-check{display:grid;width:22px;height:34px;place-items:center;cursor:pointer}.empty-inline{padding:23px 0 10px;color:var(--muted);font-size:11px;text-align:center}.back-button{margin-bottom:17px;padding:0;border:0;color:#6b786f;background:none;font-size:11px;font-weight:700;cursor:pointer}.module-header{display:flex;min-height:185px;align-items:end;justify-content:space-between;padding:31px;border:1px solid rgba(71,88,77,.12);border-radius:28px}.module-header h1{margin-bottom:10px;font-size:clamp(34px,4vw,48px)}.module-header p:last-child{margin:0;color:#607067;font-size:10px}.module-layout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.65fr);gap:18px;margin-top:18px}.lecture-panel,.player-panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.8)}.lecture-panel{padding:21px 15px 15px}.panel-heading{display:flex;align-items:end;justify-content:space-between;padding:0 7px 16px}.panel-heading strong{color:#617169;font-family:Georgia,serif;font-size:18px;font-weight:500}.library-progress-summary{display:flex;gap:9px;align-items:center}.library-progress-summary>span{position:relative;width:58px;height:9px;overflow:hidden;border:1px solid #dce4da;border-radius:999px;background:repeating-linear-gradient(90deg,transparent 0 9px,rgba(255,255,255,.82) 9px 11px),#edf1eb}.library-progress-summary>span i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,#9dc47f,#648d58);box-shadow:0 0 10px rgba(100,141,88,.28)}.lecture-list{display:flex;max-height:615px;flex-direction:column;gap:7px;overflow-y:auto}.lecture-list>button{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:73px;padding:9px 10px;border:1px solid transparent;border-radius:13px;background:transparent;text-align:left;cursor:pointer}.lecture-list>button:hover{background:#f3f6f2}.lecture-list>button.active{border-color:#cddbc8;background:#edf4e8}.lecture-number{display:grid;width:31px;height:31px;place-items:center;border-radius:10px;color:#65726a;background:#e5ebe4;font-family:Georgia,serif;font-size:11px}@property --lecture-progress{syntax:"<angle>";inherits:false;initial-value:0deg}.lecture-progress-orbit{--lecture-progress:0deg;position:relative;display:grid;width:39px;height:39px;padding:3px;place-items:center;border-radius:12px;background:conic-gradient(from -90deg,#719661 0 var(--lecture-progress),#dfe6dd var(--lecture-progress) 1turn);box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 3px 9px rgba(53,72,56,.08);transition:--lecture-progress .3s ease}.lecture-progress-orbit .lecture-number{width:31px;height:31px;border:2px solid #f8faf7;border-radius:9px}.lecture-copy{display:flex;min-width:0;flex-direction:column}.lecture-copy strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.lecture-copy small{margin-top:4px;color:#869088;font-size:8px}.lecture-progress-copy{margin-top:5px;color:#64815b;font-size:7px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.lecture-done{display:grid;width:24px;height:24px;place-items:center;cursor:pointer}.lecture-done input{position:absolute;opacity:0}.lecture-done span{display:grid;width:19px;height:19px;place-items:center;border:1px solid #c2cbc4;border-radius:6px;color:transparent;background:#fff;font-size:10px}.lecture-done input:checked+span{border-color:#648d58;color:#fff;background:#648d58}.empty-library{display:grid;min-height:330px;place-content:center;justify-items:center;padding:25px;color:var(--muted);text-align:center}.empty-library>span{display:grid;width:53px;height:53px;place-items:center;border-radius:17px;color:#44613e;background:#dff0cf;font-size:24px}.empty-library h3{margin:17px 0 7px;color:var(--ink);font-family:Georgia,serif;font-size:17px;font-weight:500}.empty-library p{max-width:230px;margin:0 0 17px;font-size:10px;line-height:1.5}.empty-library button{min-height:37px;padding:0 13px;color:#f7fff0;background:var(--ink);font-size:9px}.player-panel{min-height:560px;padding:19px}.now-playing{display:flex;align-items:center;justify-content:space-between;margin:0 3px 14px}.now-playing h2{font-size:20px}.now-playing>span{padding:6px 9px;border-radius:8px;color:#527047;background:#e0efd5;font-size:8px;font-weight:750}.player-placeholder{display:grid;min-height:500px;place-content:center;justify-items:center;color:var(--muted);text-align:center}.player-placeholder>span{display:grid;width:66px;height:66px;place-items:center;border-radius:50%;color:#f7fff1;background:var(--ink);font-size:24px}.player-placeholder h2{margin:18px 0 3px;font-family:Georgia,serif;font-weight:500}.player-placeholder p{font-size:10px}.player-shell{border-radius:18px;color:#f5f8f5;background:#101612}.player-shell,body.custom-player-open{overflow:hidden}.player-shell.is-custom-fullscreen{position:fixed;inset:0;z-index:1000;display:block;width:100vw;height:100dvh;border-radius:0;background:#070a08}.player-shell.is-custom-fullscreen .player-stage{width:100%;height:100%;min-height:0}.player-shell.is-custom-fullscreen .player-stage>video{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}.player-shell.is-custom-fullscreen .timeline-wrap{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));left:max(20px,env(safe-area-inset-left));z-index:12;margin:0;padding:0;transition:opacity .18s ease,transform .18s ease}.player-shell.is-custom-fullscreen .player-controls{position:absolute;right:0;bottom:0;left:0;z-index:11;min-height:calc(86px + env(safe-area-inset-bottom));align-items:end;padding:16px max(24px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:linear-gradient(180deg,transparent,rgba(4,7,5,.84) 62%);transition:opacity .18s ease,transform .18s ease}.player-shell.is-custom-fullscreen .keyboard-hints{display:none}.player-shell.is-custom-fullscreen .player-topline{top:max(18px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));left:max(20px,env(safe-area-inset-left));z-index:10;transition:opacity .18s ease}.player-shell.is-custom-fullscreen.controls-hidden{cursor:none}.player-shell.is-custom-fullscreen.controls-hidden .player-controls,.player-shell.is-custom-fullscreen.controls-hidden .timeline-wrap{opacity:0;pointer-events:none;transform:translateY(12px)}.player-shell.is-custom-fullscreen.controls-hidden .player-topline{opacity:0}.keyboard-action-feedback{position:absolute;top:50%;left:50%;z-index:20;display:grid;width:58px;height:58px;place-items:center;border:1px solid rgba(255,255,255,.17);border-radius:50%;color:#fff;background:rgba(5,10,7,.48);transform:translate(-50%,-50%);animation:keyboard-feedback .52s ease both;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.keyboard-action-feedback span{position:absolute;display:block}.keyboard-action-feedback.feedback-seek-back{left:25%}.keyboard-action-feedback.feedback-seek-forward{left:75%}.feedback-play span:first-child{margin-left:3px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:13px solid}.feedback-play span:last-child{display:none}.feedback-pause span{width:4px;height:17px;border-radius:2px;background:currentColor}.feedback-pause span:first-child{margin-left:-9px}.feedback-pause span:last-child{margin-left:9px}.feedback-seek-back span,.feedback-seek-forward span{border-top:7px solid transparent;border-bottom:7px solid transparent}.feedback-seek-forward span{border-left:10px solid}.feedback-seek-back span{border-right:10px solid}.feedback-seek-back span:first-child,.feedback-seek-forward span:first-child{margin-left:-10px}.feedback-seek-back span:last-child,.feedback-seek-forward span:last-child{margin-left:10px}@keyframes keyboard-feedback{0%{opacity:0;transform:translate(-50%,-50%) scale(.82)}22%,66%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}.player-stage{position:relative;display:grid;min-height:340px;place-items:center;overflow:hidden;background:radial-gradient(circle at 72% 35%,rgba(114,145,99,.2),transparent 36%),#0e1410;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.player-stage>video{display:block;width:100%;max-height:510px;background:#080b09;object-fit:contain}.player-stage>audio{position:absolute;width:1px;height:1px;opacity:0}.audio-visual{position:relative;display:flex;width:min(74%,490px);height:150px;align-items:center;justify-content:center;gap:6px;overflow:hidden;border-radius:75px;background:rgba(255,255,255,.04)}.audio-visual>span{width:4px;height:55px;border-radius:4px;background:#9bc379}.audio-visual>span:nth-child(2){height:92px}.audio-visual>span:nth-child(3){height:118px}.audio-visual>span:nth-child(4){height:76px}.audio-visual>span:nth-child(5){height:42px}.audio-disc{display:grid;width:115px;height:115px;margin-left:25px;place-items:center;border:1px solid #3e4b43;border-radius:50%;color:#c7e4ab;background:repeating-radial-gradient(circle,#1c2921 0 4px,#151e18 5px 8px);font-size:31px}.player-topline{position:absolute;top:14px;right:14px;left:14px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.codec-note,.codec-ok,.player-format{padding:5px 7px;border-radius:7px;font-size:7px;font-weight:850;letter-spacing:.1em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.player-format{color:#ccebb4;background:rgba(13,23,16,.72)}.codec-ok{color:#d9f6c2;background:rgba(45,80,39,.72)}.codec-note{color:#f2e5b3;background:rgba(82,69,32,.76)}.speed-hold-badge{top:50%;left:50%;padding:9px 13px;border:1px solid rgba(255,255,255,.19);border-radius:10px;background:rgba(17,26,20,.76);font-weight:850;letter-spacing:.13em;transform:translate(-50%,-50%)}.player-error,.speed-hold-badge{position:absolute;font-size:9px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.player-error{right:18px;bottom:18px;left:18px;padding:11px 13px;border:1px solid rgba(255,218,201,.24);border-radius:10px;color:#ffe3d7;background:rgba(89,38,27,.8);line-height:1.45}.timeline-wrap{margin-top:-12px;padding:0 16px}.timeline,.timeline-wrap{position:relative;height:24px}.timeline{--played:0%;z-index:3;width:100%;margin:0;appearance:none;background:transparent;cursor:pointer}.timestamp-markers{position:absolute;top:0;right:16px;bottom:0;left:16px;z-index:5;pointer-events:none}.timestamp-marker{position:absolute;top:50%;display:grid;width:9px;height:9px;padding:0;place-items:center;border:2px solid #f8fff2;border-radius:50%;background:#89be67;box-shadow:0 2px 7px rgba(0,0,0,.3);cursor:pointer;pointer-events:auto;transform:translate(-50%,-50%);transition:transform .13s ease,background .13s ease}.timestamp-marker:after{position:absolute;bottom:calc(100% + 9px);left:50%;color:rgba(255,255,255,.92);content:attr(data-label);font-size:10px;font-weight:650;letter-spacing:.01em;line-height:1.2;opacity:0;pointer-events:none;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.82),0 2px 10px rgba(0,0,0,.68);white-space:nowrap;transform:translate(-50%,3px);transition:opacity .11s ease,transform .15s ease}.timestamp-marker:focus-visible,.timestamp-marker:hover{background:#bce792;outline:0;transform:translate(-50%,-50%) scale(1.45)}.timestamp-marker:focus-visible:after,.timestamp-marker:hover:after{opacity:1;transform:translate(-50%) scale(calc(1 / 1.45))}.player-shell.is-custom-fullscreen .timestamp-markers{right:0;left:0}.timeline::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,#bce792 0 var(--played),#4a554e var(--played) 100%)}.timeline::-moz-range-track{height:4px;border-radius:4px;background:#4a554e}.timeline::-moz-range-progress{height:4px;border-radius:4px;background:#bce792}.timeline::-webkit-slider-thumb{width:13px;height:13px;margin-top:-4.5px;appearance:none;border:2px solid #f8fff2;border-radius:50%;background:#8ec067;box-shadow:0 2px 8px rgba(0,0,0,.3)}.timeline::-moz-range-thumb{width:11px;height:11px;border:2px solid #f8fff2;border-radius:50%;background:#8ec067}.scrub-preview{position:absolute;bottom:25px;z-index:8;display:grid;width:160px;min-height:34px;place-items:center;overflow:hidden;border:2px solid rgba(255,255,255,.82);border-radius:10px;background:#17221b;box-shadow:0 12px 24px rgba(0,0,0,.28);pointer-events:none;transform:translateX(-50%)}.scrub-preview-frame{display:block;width:160px;height:90px;background:#0c110d;background-repeat:no-repeat}.scrub-preview strong{position:absolute;bottom:5px;left:50%;padding:3px 6px;border-radius:5px;color:#fff;background:rgba(9,14,10,.78);font-size:8px;transform:translateX(-50%)}.player-controls{display:flex;min-height:58px;align-items:center;justify-content:space-between;padding:4px 16px 10px}.player-controls-group{display:flex;gap:8px;align-items:center}.play-control,.round-control,.text-control{display:inline-grid;place-items:center;border:0;color:#eef5ef;background:transparent;cursor:pointer}.round-control{position:relative;width:34px;height:34px;border-radius:50%;transition:color .14s ease,background .14s ease,transform .14s ease}.round-control:hover{color:#fff;background:rgba(255,255,255,.09)}.round-control:active{transform:scale(.93)}.seek-icon{position:absolute;inset:5px;display:grid;place-items:center}.seek-icon:before{position:absolute;inset:2px;border:1.6px solid;border-radius:50%;content:"";opacity:.92}.seek-back:before{border-left-color:transparent;transform:rotate(-18deg)}.seek-forward:before{border-right-color:transparent;transform:rotate(18deg)}.seek-icon:after{position:absolute;top:1px;width:0;height:0;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;content:""}.seek-back:after{left:0;border-right:5px solid}.seek-forward:after{right:0;border-left:5px solid}.seek-icon small{position:relative;z-index:1;margin-top:2px;color:currentColor;font-size:7px;font-weight:850;line-height:1}.play-control{width:38px;height:38px;border-radius:50%;color:#1b2a1c;background:#c9eaab;font-size:13px}.timecode{margin-left:3px;color:#c3cdc6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:8px}.timecode i{color:#69736d;font-style:normal}.volume-control{display:flex;gap:6px;align-items:center}.volume-control input{width:65px;accent-color:#b8dc98}.player-controls select{height:30px;padding:0 6px;color:#eef4ef;outline:0;background:#1b241e}.player-controls select,.text-control{border:1px solid #3d4741;border-radius:8px;font-size:8px}.text-control{min-height:29px;padding:0 8px}.fullscreen-control{position:relative;width:34px;padding:0}.fullscreen-icon{position:relative;display:block;width:15px;height:15px}.fullscreen-icon i{position:absolute;width:6px;height:6px;border-color:currentColor;border-style:solid}.fullscreen-icon i:first-child{top:0;left:0;border-width:1.5px 0 0 1.5px}.fullscreen-icon i:nth-child(2){top:0;right:0;border-width:1.5px 1.5px 0 0}.fullscreen-icon i:nth-child(3){right:0;bottom:0;border-width:0 1.5px 1.5px 0}.fullscreen-icon i:nth-child(4){bottom:0;left:0;border-width:0 0 1.5px 1.5px}.control-tooltip{position:absolute;right:0;bottom:calc(100% + 8px);width:max-content;max-width:160px;padding:6px 8px;border:1px solid rgba(255,255,255,.14);border-radius:7px;color:#eff6f0;background:rgba(8,13,10,.94);box-shadow:0 7px 18px rgba(0,0,0,.24);font-size:8px;font-weight:700;opacity:0;pointer-events:none;transform:translateY(3px);transition:opacity .12s ease,transform .12s ease}.fullscreen-control:focus-visible .control-tooltip,.fullscreen-control:hover .control-tooltip{opacity:1;transform:translateY(0)}.fullscreen-control:focus-visible,.play-control:focus-visible,.round-control:focus-visible,.text-control:focus-visible{outline:2px solid #c9eaab;outline-offset:3px}.keyboard-hints{display:flex;gap:18px;align-items:center;padding:9px 16px 13px;border-top:1px solid #29322c;color:#849087;font-size:7px}.keyboard-hints span{display:inline-flex;gap:5px;align-items:center}.keyboard-hints kbd{min-width:20px;height:18px;border-color:#414b45;color:#aebbb1;background:#202923;font-size:7px}.lecture-notes{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:14px;margin-top:18px}.timestamps-card,.transcript-card{min-width:0;padding:19px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.82)}.timestamps-card .panel-heading,.transcript-card .panel-heading{margin-bottom:12px}.transcript-card .panel-heading small{color:#8d9690;font-size:8px}.transcript-card textarea{width:100%;min-height:172px;resize:vertical;padding:14px;border:1px solid #dfe5df;border-radius:12px;outline:0;color:var(--ink);background:#f9fbf8;font:inherit;font-size:11px;line-height:1.7}.transcript-card textarea:focus{border-color:#9bb88b;box-shadow:0 0 0 3px rgba(155,184,139,.12)}.timestamp-form{display:grid;grid-template-columns:62px minmax(0,1fr) 34px;gap:6px}.timestamp-form input{min-width:0;height:36px;padding:0 9px;border:1px solid #dfe5df;border-radius:9px;outline:0;background:#f9fbf8;font-size:9px}.timestamp-form button{border:0;border-radius:9px;color:#f5fff0;background:var(--ink);cursor:pointer}.current-time-button{margin:7px 0 9px;padding:0;border:0;color:#708077;background:transparent;font-size:8px;text-decoration:underline;cursor:pointer}.timestamp-list{display:flex;max-height:123px;flex-direction:column;overflow:auto}.timestamp-list>div{display:grid;grid-template-columns:minmax(0,1fr) 24px;border-top:1px solid #e9ede8}.timestamp-list>div>button{display:flex;gap:8px;align-items:center;min-width:0;min-height:35px;padding:0;border:0;background:transparent;font-size:9px;text-align:left;cursor:pointer}.timestamp-list>div>button:last-child{justify-content:center;color:#9ba49e}.timestamp-list time{color:#668354;font-size:8px;font-weight:800}.timestamp-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timestamp-list>p{margin:13px 0 0;color:#99a19c;font-size:9px}.context-editor{position:fixed;z-index:180;display:grid;width:min(300px,calc(100vw - 24px));gap:12px;padding:15px;border:1px solid rgba(215,226,214,.95);border-radius:16px;color:var(--ink);background:rgba(252,254,250,.97);box-shadow:0 22px 60px rgba(25,36,28,.2),0 3px 12px rgba(25,36,28,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:context-editor-in .15s ease both}.timestamp-context-editor{width:min(280px,calc(100vw - 24px))}.context-editor-heading{display:flex;align-items:start;justify-content:space-between}.context-editor-heading div{display:flex;flex-direction:column}.context-editor label>span,.context-editor-heading small{color:#7d8a81;font-size:7px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.context-editor-heading strong{margin-top:3px;font-family:Georgia,serif;font-size:15px;font-weight:500}.context-editor-heading>button{width:26px;height:26px;border:0;border-radius:8px;color:#7f8983;background:#eef2ec;cursor:pointer}.context-editor label{display:grid;gap:6px}.context-editor input,.context-editor select{width:100%;height:38px;padding:0 10px;border:1px solid #dce4da;border-radius:10px;outline:0;color:var(--ink);background:#fff;font-size:9px}.context-editor input:focus,.context-editor select:focus{border-color:#8caa7c;box-shadow:0 0 0 3px rgba(122,159,103,.13)}.context-danger button,.context-remove,.context-save{min-height:36px;padding:0 12px;border:0;border-radius:10px;font-size:8px;font-weight:800;cursor:pointer}.context-save{color:#f7fff3;background:#34473a}.context-editor-actions{display:flex;gap:8px;justify-content:flex-end}.context-remove{color:#9a5344;background:#f8ede8}.context-danger{padding-top:11px;border-top:1px solid #e8ece6}.context-danger>button{width:100%;color:#9a5344;background:#f8ede8}.context-danger>span{display:block;margin-bottom:9px;color:#82594e;font-size:8px;line-height:1.45}.context-danger>div{display:flex;gap:7px;justify-content:flex-end}.context-danger>div button{color:#6f7972;background:#edf1ec}.context-danger>div .danger-confirm{color:#fff;background:#a65c4c}.context-danger button:disabled{cursor:wait;opacity:.62}@keyframes context-editor-in{0%{opacity:0;transform:translateY(5px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.page-heading{margin-bottom:28px}.page-heading h1{margin-bottom:8px}.todo-row.is-complete .todo-copy strong{color:#9da59f;text-decoration:line-through}.module-plans-panel{margin-top:28px;padding:22px;border:1px solid rgba(71,88,77,.12);border-radius:var(--radius-lg)}.module-plan-actions{display:flex;gap:8px}.module-plan-actions button,.module-plan-grid>button{border:1px solid rgba(68,84,74,.13);border-radius:11px;color:#526057;background:rgba(255,255,255,.58);font-size:9px;font-weight:750;cursor:pointer}.module-plan-actions button{min-height:36px;padding:0 12px}.module-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.module-plan-grid>button{display:flex;min-height:128px;flex-direction:column;align-items:stretch;padding:15px;text-align:left}.module-plan-grid>button>span:first-child{display:flex;justify-content:space-between;color:#7a877f;font-size:7px;font-weight:850;letter-spacing:.1em}.module-plan-grid>button>span small{font-size:8px;font-weight:700;letter-spacing:0}.module-plan-grid>button>strong{margin:13px 0 auto;color:var(--ink);font-family:Georgia,serif;font-size:16px;font-weight:500}.module-plan-grid>button>i{height:6px;margin-top:15px;overflow:hidden;border-radius:999px;background:rgba(48,64,55,.1)}.module-plan-grid>button>i span{display:block;height:100%;border-radius:inherit;background:#506d54}.module-plan-grid>button>em{margin-top:7px;color:#738078;font-size:8px;font-style:normal}.module-plan-grid>button.is-archived{filter:saturate(.35);opacity:.66}.module-plan-grid .module-plan-empty{align-items:center;justify-content:center;border-style:dashed;text-align:center}.module-plan-empty span{margin-top:7px;color:#829087}.calendar-page{width:100%;max-width:1540px;margin:0 auto;font-family:var(--font-ui)}.calendar-hero{display:flex;gap:24px;align-items:end;justify-content:space-between;margin-bottom:24px}.calendar-hero h1{margin-bottom:8px;font-family:var(--font-display);font-size:clamp(38px,4.5vw,58px);font-weight:500}.calendar-hero>div:first-child>p:last-child{max-width:680px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.calendar-hero-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.calendar-hero-actions button{min-height:41px;white-space:nowrap}.calendar-notice{display:flex;align-items:center;justify-content:space-between;margin:-8px 0 16px;padding:11px 14px;border:1px solid #cfe1c6;border-radius:12px;color:#4c674a;background:#f0f8eb;font-size:10px}.calendar-notice button{border:0;color:inherit;background:none;cursor:pointer;font-size:17px}.module-filter-row{display:flex;gap:7px;align-items:center;overflow-x:auto;padding:2px 2px 12px;scrollbar-width:thin}.module-filter-row button{display:inline-flex;min-height:35px;flex:0 0 auto;gap:7px;align-items:center;padding:0 12px;border:1px solid #dce3dc;border-radius:999px;color:#6d7971;background:rgba(255,255,255,.78);font-size:9px;font-weight:750;cursor:pointer}.module-filter-row button.active{border-color:#81977f;color:var(--ink);box-shadow:0 5px 15px rgba(35,49,40,.08)}.module-filter-row .accent-filter-mint.active{background:#e5f5d7}.module-filter-row .accent-filter-blue.active{background:#e1edf8}.module-filter-row .accent-filter-amber.active{background:#f4eacb}.module-filter-row .accent-filter-coral.active{background:#f5e1d7}.module-filter-row .accent-filter-violet.active{background:#ebe5f7}.module-filter-row .archive-filter{margin-left:auto}.plan-strip{display:grid;grid-auto-columns:minmax(225px,.35fr);grid-auto-flow:column;gap:10px;overflow-x:auto;padding:2px 2px 18px;scroll-snap-type:x proximity}.plan-summary{min-height:164px;padding:15px;border:1px solid rgba(75,92,81,.13);border-radius:17px;scroll-snap-align:start}.plan-summary.is-archived{filter:saturate(.3);opacity:.68}.plan-summary-heading{display:flex;align-items:center;justify-content:space-between}.plan-summary-heading>span{display:inline-flex;gap:7px;align-items:center;color:#6f7c73;font-size:8px;font-weight:850;letter-spacing:.09em}.plan-summary-heading button{width:29px;height:27px;border:0;border-radius:8px;color:#748078;background:rgba(255,255,255,.58);cursor:pointer}.plan-summary>strong{display:block;margin-top:13px;font-family:var(--font-display);font-size:16px;font-weight:500}.plan-summary>small{display:block;min-height:25px;margin-top:5px;color:#6e7b73;font-size:8px;line-height:1.45}.plan-progress-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-top:10px}.plan-progress-line>span{height:6px;overflow:hidden;border-radius:999px;background:rgba(44,60,51,.1)}.plan-progress-line i{display:block;height:100%;border-radius:inherit;background:#4e6e52}.plan-progress-line b{color:#526359;font-size:8px}.plan-summary-actions{display:flex;gap:7px;margin-top:12px}.plan-summary-actions button{min-height:28px;padding:0 9px;border:1px solid rgba(68,84,73,.12);border-radius:8px;color:#58675e;background:rgba(255,255,255,.58);font-size:7px;font-weight:800;cursor:pointer}.plan-strip-empty{display:flex;min-height:120px;align-items:center;justify-content:center;gap:12px;padding:18px;border:1px dashed #ccd6cd;border-radius:17px;color:#7c8880;background:rgba(255,255,255,.45);font-size:10px}.plan-strip-empty button{border:0;color:#4f6d4b;background:none;font-size:9px;font-weight:800;text-decoration:underline;cursor:pointer}.unplanned-tray{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:14px;padding:12px 14px;border:1px solid #e9d4a8;border-radius:14px;background:#fff9e9}.unplanned-tray>div:first-child{display:flex;flex-direction:column;flex:0 0 auto}.unplanned-tray>div:first-child span{color:#9a7940;font-size:6px;font-weight:900;letter-spacing:.12em}.unplanned-tray>div:first-child strong{margin-top:4px;color:#68552f;font-size:9px}.unplanned-tray>div:last-child{display:flex;min-width:0;gap:6px;align-items:center;overflow-x:auto}.unplanned-tray button,.unplanned-tray>div:last-child>span{min-height:29px;flex:0 0 auto;padding:0 9px;border:1px solid #e5d09f;border-radius:8px;color:#725e35;background:#fff;font-size:7px}.unplanned-tray button{cursor:pointer}.calendar-workspace{display:grid;grid-template-columns:minmax(680px,1fr) minmax(300px,340px);gap:16px;align-items:start}.day-panel,.month-calendar{border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.82);box-shadow:0 12px 34px rgba(36,51,42,.045)}.month-calendar{min-width:0;overflow:hidden}.calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:68px;padding:0 17px;border-bottom:1px solid #e4e9e4}.calendar-toolbar>div{display:flex;gap:6px}.calendar-toolbar button{min-width:32px;height:32px;padding:0 9px;border:1px solid #dce3dc;border-radius:9px;color:#536159;background:#fafcfa;font-size:10px;font-weight:750;cursor:pointer}.calendar-toolbar .today-button{margin-left:3px}.calendar-toolbar h2{margin:0;font-family:var(--font-display);font-size:20px;font-weight:500;text-transform:capitalize}.calendar-toolbar>span{justify-self:end;color:#7e8982;font-size:8px;font-weight:750}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{min-height:35px;align-items:center;border-bottom:1px solid #e8ece7;color:#8a948e;background:#fafbf9;font-size:8px;font-weight:850;text-align:center}.calendar-day{position:relative;min-width:0;min-height:132px;padding:8px 6px 7px;border-right:1px solid #e9ede8;border-bottom:1px solid #e9ede8;background:rgba(255,255,255,.58);transition:background .15s ease,box-shadow .15s ease}.calendar-day:nth-child(7n){border-right:0}.calendar-day:nth-last-child(-n+7){border-bottom:0}.calendar-day.selected,.calendar-day:hover{z-index:1;background:#fbfdf9;box-shadow:inset 0 0 0 1px #9fb397}.calendar-day.outside-month{background:#f7f8f6}.calendar-day-number{display:grid;width:25px;height:25px;margin:0 0 5px 2px;place-items:center;border:0;border-radius:8px;color:#56635b;background:transparent;font-size:9px;font-weight:800;cursor:pointer}.outside-month .calendar-day-number{color:#a7aea9}.calendar-day.today .calendar-day-number{color:#f7fff2;background:#32483a}.calendar-day-content{display:flex;min-width:0;flex-direction:column;gap:3px}.calendar-entry,.calendar-overflow,.calendar-range,.exam-marker{min-width:0;border:0;text-align:left;cursor:pointer}.calendar-range{display:flex;min-height:18px;align-items:center;gap:4px;margin-right:-6px;margin-left:-6px;padding:2px 6px;border-radius:0;color:#425047;font-size:6px}.calendar-range.is-segment-start{margin-left:0;border-radius:6px 0 0 6px}.calendar-range.is-segment-end{margin-right:0;border-radius:0 6px 6px 0}.calendar-range.is-segment-start.is-segment-end{border-radius:6px}.calendar-range>i{width:4px;height:4px;flex:0 0 auto;border-radius:50%;background:currentColor}.calendar-range>span{overflow:hidden;min-width:0;flex:1 1;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.calendar-range>small{flex:0 0 auto;color:#6f7b73;font-size:5px}.calendar-range.is-complete{opacity:.5}.calendar-range.is-complete>span{text-decoration:line-through}.calendar-topic-range{min-height:30px;padding-top:4px;padding-bottom:4px}.calendar-topic-range>i{width:5px;height:5px}.calendar-range>.calendar-topic-copy{display:flex;min-width:0;flex:1 1;align-items:flex-start;flex-direction:column;line-height:1.15}.calendar-topic-copy>small,.calendar-topic-copy>strong{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.calendar-topic-copy>strong{font-size:7px;font-weight:850}.calendar-topic-copy>small{margin-top:3px;color:#6c786f;font-size:5.5px;font-weight:700}.calendar-entry{display:grid;grid-template-columns:5px minmax(0,1fr);gap:5px;align-items:center;min-height:25px;padding:3px 5px;border-radius:7px;color:#425047;font-size:7px}.calendar-entry>i{grid-row:1/3;width:4px;height:4px;border-radius:50%;background:currentColor}.calendar-entry>small,.calendar-entry>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-entry>span{font-weight:750}.calendar-entry>small{color:#758078;font-size:6px}.calendar-entry.is-complete{opacity:.5}.calendar-entry.is-complete>span{text-decoration:line-through}.calendar-entry.is-overdue{box-shadow:inset 2px 0 #c5634d}.accent-entry-mint{background:#e7f5dc}.accent-entry-blue{background:#e4eff9}.accent-entry-amber{background:#f6edcf}.accent-entry-coral{background:#f7e4db}.accent-entry-violet{background:#ede8f8}.exam-marker{overflow:hidden;min-height:23px;padding:0 6px;border-radius:7px;color:#fff;font-size:6px;font-weight:850;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap}.accent-solid-mint{background:#638f50}.accent-solid-blue{background:#638cb6}.accent-solid-amber{background:#ad8538}.accent-solid-coral{background:#bd7454}.accent-solid-violet{background:#8069b2}.calendar-overflow{padding:3px 5px;color:#77837b;background:transparent;font-size:7px;font-weight:750}.day-panel{position:sticky;top:94px;max-height:calc(100vh - 112px);overflow-y:auto;padding:20px}.day-panel>header{padding-bottom:16px;border-bottom:1px solid #e6ebe5}.day-panel>header h2{margin:0;font-family:var(--font-display);font-size:20px;font-weight:500;line-height:1.15;text-transform:capitalize}.day-panel>header>span{display:block;margin-top:7px;color:#838e87;font-size:8px}.day-exam{display:flex;flex-direction:column;margin-top:13px;padding:12px;border:1px solid rgba(72,88,77,.1);border-radius:12px}.day-exam>span{color:#66766b;font-size:7px;font-weight:900;letter-spacing:.13em}.day-exam strong{margin-top:6px;font-family:var(--font-display);font-size:14px;font-weight:500}.day-exam small{margin-top:3px;color:#748078;font-size:7px}.day-entry-list{display:flex;flex-direction:column;gap:7px;margin-top:14px}.day-entry{display:grid;position:relative;grid-template-columns:23px minmax(0,1fr) 25px;gap:8px;align-items:start;padding:10px;border:1px solid #e2e8e1;border-radius:12px;background:#fbfcfa}.day-entry.tree-depth-1{margin-left:15px}.day-entry.tree-depth-2{margin-left:30px}.day-entry.tree-depth-1:before,.day-entry.tree-depth-2:before{position:absolute;top:-8px;bottom:50%;left:-10px;width:8px;border-bottom:1px solid #cbd6cc;border-left:1px solid #cbd6cc;border-radius:0 0 0 6px;content:""}.day-entry.is-overdue{border-color:#efc4b7;background:#fff8f5}.day-entry.is-complete{opacity:.58}.day-entry>button{display:flex;min-width:0;flex-direction:column;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.day-entry>.day-entry-add-child{display:grid;width:25px;height:25px;place-items:center;align-self:center;border:1px solid #dfe6df;border-radius:8px;color:#718078;background:#fff;font-size:11px}.day-entry>.day-entry-add-child:hover{color:#314438;border-color:#afc2ad;background:#f3f8f0}.day-entry>button>span{display:flex;gap:5px;align-items:center;color:#79857d;font-size:7px;font-weight:800}.day-entry>button>.day-entry-parent{margin-top:4px;color:#728479;font-size:7px;font-weight:750}.day-entry>button>strong{margin-top:5px;font-size:10px}.day-entry.is-complete>button>strong{text-decoration:line-through}.day-entry>button>small{display:-webkit-box;margin-top:4px;overflow:hidden;color:#748078;font-size:8px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.day-entry>button>em{margin-top:6px;color:#8b958f;font-size:7px;font-style:normal}.day-empty{display:flex;min-height:94px;align-items:center;justify-content:center;flex-direction:column;padding:16px;border:1px dashed #d2dad2;border-radius:12px;color:#718077;text-align:center}.day-empty strong{font-family:var(--font-display);font-size:13px;font-weight:500}.day-empty span{margin-top:5px;color:#929b95;font-size:8px}.day-panel-actions{margin-top:12px}.day-panel-actions button{width:100%;min-height:38px}.attach-task-form{display:grid;gap:7px;margin-top:17px;padding-top:15px;border-top:1px solid #e6ebe5}.attach-task-form>span{color:#758078;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.attach-task-form button,.attach-task-form select{min-width:0;min-height:35px;padding:0 9px;border:1px solid #dce3dc;border-radius:9px;background:#fafcfa;font-size:8px}.attach-task-form button{color:#f7fff2;background:#34483b;font-weight:800;cursor:pointer}.plan-dialog{width:min(760px,100%)}.entry-form-grid,.plan-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.entry-parent-field{margin-top:12px}.entry-parent-field select{width:100%;min-height:41px;padding:0 11px;border:1px solid #d9e1da;border-radius:10px;outline:0;color:var(--ink);background:#fff;font:inherit}.entry-parent-field>small{display:block;margin-top:6px;color:#87918b;font-size:8px;line-height:1.4}.plan-description-field{grid-column:1/-1}.entry-dialog textarea,.import-textarea,.plan-dialog textarea{width:100%;resize:vertical;border:1px solid #d9e1da;border-radius:10px;outline:0;color:var(--ink);background:#fff;font:inherit}.entry-dialog textarea,.plan-dialog textarea{min-height:80px;padding:10px;font-size:10px;line-height:1.5}.entry-dialog textarea:focus,.import-textarea:focus,.plan-dialog textarea:focus{border-color:#8caa7c;box-shadow:0 0 0 3px rgba(122,159,103,.13)}.plan-dialog-section{margin-top:19px;padding-top:17px;border-top:1px solid #e4e9e4}.plan-dialog-section>div:first-child{display:flex;align-items:center;justify-content:space-between}.plan-dialog-section>div:first-child>strong{font-size:10px}.plan-dialog-section>div:first-child>small{color:#88928c;font-size:8px}.plan-dialog-section>div:first-child>button{border:0;color:#55734f;background:none;font-size:8px;font-weight:800;cursor:pointer}.exam-date-list{display:grid;gap:7px;margin-top:10px}.exam-date-list>div{display:grid;grid-template-columns:minmax(0,1fr) 150px 34px;gap:7px}.exam-date-list input,.unavailable-field input{min-width:0;height:38px;padding:0 10px;border:1px solid #dce4dc;border-radius:9px;outline:0;background:#fff;font-size:9px}.exam-date-list button{border:0;border-radius:9px;color:#985d4c;background:#f7eae5;cursor:pointer}.capacity-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:10px}.capacity-grid label{display:grid;gap:5px}.capacity-grid label span{text-align:center}.capacity-grid input{min-width:0;height:38px;padding:0 4px;border:1px solid #dce4dc;border-radius:9px;outline:0;background:#fff;font-size:8px;text-align:center}.unavailable-field{display:grid;gap:6px;margin-top:12px}.archive-toggle{display:flex!important;flex-direction:row!important;gap:9px!important;align-items:center;margin-top:18px;padding:12px;border-radius:11px;background:#f0f3ef;cursor:pointer}.archive-toggle input{width:16px!important;min-height:16px!important}.plan-delete-confirm{margin-top:16px;padding:14px;border:1px solid #efc8bd;border-radius:12px;background:#fff5f1}.plan-delete-confirm strong{font-size:10px}.plan-delete-confirm p{margin:6px 0 11px;color:#7b5f56;font-size:8px;line-height:1.5}.plan-delete-confirm>div{display:flex;flex-wrap:wrap;gap:7px}.dialog-delete-button,.plan-delete-confirm button{min-height:34px;padding:0 10px;border:1px solid #e5c8bf;border-radius:9px;color:#865849;background:#fff;font-size:8px;font-weight:750;cursor:pointer}.plan-delete-confirm .danger-button{color:#fff;background:#a25c49}.dialog-actions>span{flex:1 1}.entry-dialog{width:min(620px,100%)}.entry-kind-toggle{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:15px;padding:4px;border-radius:11px;background:#edf1ec}.entry-kind-toggle button{min-height:34px;border:0;border-radius:8px;color:#758078;background:transparent;font-size:9px;font-weight:800;cursor:pointer}.entry-kind-toggle button.active{color:var(--ink);background:#fff;box-shadow:0 4px 11px rgba(35,49,40,.07)}.entry-dialog>label,.entry-form-grid{margin-top:12px}.plan-checkboxes{display:grid;gap:7px;margin:17px 0 0;padding:12px;border:1px solid #e0e6e0;border-radius:12px}.plan-checkboxes legend{padding:0 5px;color:#79857d;font-size:8px;font-weight:800}.plan-checkboxes label{display:grid!important;grid-template-columns:18px 8px minmax(0,1fr);gap:8px!important;align-items:center;min-height:38px;padding:6px 8px;border-radius:8px;background:#f7f9f6;cursor:pointer}.plan-checkboxes label input{width:15px!important;min-height:15px!important}.plan-checkboxes label>span{display:flex;flex-direction:column}.plan-checkboxes label strong{font-size:9px}.plan-checkboxes label small{margin-top:2px;color:#8a948e;font-size:7px}.import-dialog{width:min(680px,100%)}.import-file{display:grid!important;min-height:68px;margin-top:2px;place-items:center;border:1px dashed #bfcbbf;border-radius:12px;color:#5e725f;background:#f3f7f0;cursor:pointer}.import-file input{display:none}.import-divider{display:flex;align-items:center;gap:10px;margin:13px 0;color:#929a95;font-size:8px}.import-divider:after,.import-divider:before{height:1px;flex:1 1;background:#e1e6e1;content:""}.import-textarea{min-height:170px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;line-height:1.5}.import-check-button{width:100%;margin-top:8px}.import-preview{margin-top:14px;padding:15px;border:1px solid #dbe5d7;border-radius:13px;background:#f5f9f2}.import-preview>span{color:#72846d;font-size:7px;font-weight:900;letter-spacing:.12em}.import-preview h3{margin:6px 0 3px;font-family:Georgia,serif;font-size:18px;font-weight:500}.import-preview>p{margin:0;color:#758078;font-size:8px}.import-preview>div{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:5px;align-items:baseline;margin:13px 0}.import-preview>div strong{font-family:Georgia,serif;font-size:17px;font-weight:500}.import-preview>div small{color:#87918b;font-size:7px}.import-preview label{display:grid;gap:6px;margin-top:12px}.import-preview .import-warning{margin-top:6px;padding:7px 9px;border-radius:8px;color:#806b3e;background:#fff6d9}.import-preview .import-update-note{margin-top:9px;color:#4f6d4c}.reschedule-dialog>p{color:#707d74;font-size:10px;line-height:1.55}.reschedule-list{display:flex;max-height:310px;flex-direction:column;overflow-y:auto;border-top:1px solid #e5eae5}.reschedule-list>div:not(.day-empty){display:flex;gap:15px;align-items:center;justify-content:space-between;min-height:49px;border-bottom:1px solid #e5eae5}.reschedule-list strong{font-size:9px}.reschedule-list>div>span{color:#61785c;font-size:8px;font-weight:800}.reschedule-warning{margin-top:14px;padding:12px;border:1px solid #edd4a3;border-radius:11px;color:#725c2f;background:#fff9e8}.reschedule-warning strong{font-size:9px}.reschedule-warning p,.reschedule-warning span{display:block;margin:5px 0 0;font-size:8px;line-height:1.45}.task-hub{max-width:1380px}.task-hub-hero{display:flex;gap:28px;align-items:end;justify-content:space-between;margin-bottom:24px}.task-hub-hero h1{margin-bottom:8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,5vw,66px);font-weight:500;letter-spacing:-.045em;line-height:.98;text-transform:capitalize}.task-hub-hero p:last-child{margin:0;color:var(--muted);font-size:12px}.task-hub-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.task-hub-actions button{min-height:42px;white-space:nowrap}.task-scope-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;padding:6px;border:1px solid #dfe5df;border-radius:15px;background:rgba(255,255,255,.72)}.task-day-navigation,.task-scope-tabs{display:flex;gap:5px}.task-day-navigation button,.task-scope-tabs button{min-height:36px;padding:0 16px;border:0;border-radius:10px;color:#69766e;background:transparent;font-size:9px;font-weight:800;cursor:pointer}.task-scope-tabs button.active{color:#f8fff4;background:#26382e;box-shadow:0 7px 18px rgba(38,56,46,.18)}.task-day-navigation button{border:1px solid #dce3dc;background:#fff}.task-overview-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px;overflow:hidden;border:1px solid #dfe5df;border-radius:19px;background:linear-gradient(110deg,rgba(232,245,219,.7),rgba(255,255,255,.86) 42%),#fff}.task-overview-strip>div{display:grid;min-height:96px;align-content:center;padding:17px 20px;border-right:1px solid rgba(102,121,107,.13)}.task-overview-strip>div:last-child{border-right:0}.task-overview-strip span{color:#7c8980;font-size:7px;font-weight:900;letter-spacing:.13em}.task-overview-strip strong{margin-top:7px;font-family:Georgia,serif;font-size:24px;font-weight:500}.task-overview-strip small{margin-top:3px;color:#8a958e;font-size:7px}.task-module-progress>i,.task-overview-progress>i{display:block;overflow:hidden;height:4px;margin-top:9px;border-radius:999px;background:#dfe7dd}.task-module-progress>i>b,.task-overview-progress>i>b{display:block;height:100%;border-radius:inherit;background:#6f9c58}.task-hub>.module-filter-row{margin-bottom:9px}.module-filter-row .filter-all-icon,.module-filter-row .general-filter-icon{display:grid;width:16px;height:16px;place-items:center;border-radius:6px;color:#5e6c63;background:#edf1ec;font-size:8px}.module-filter-row .general-filter.active{background:#edf0ed}.task-module-grid{display:grid;gap:15px}.task-module-section{--task-accent:#87968d;--task-tint:#f1f3f0;overflow:hidden;border:1px solid rgba(76,93,82,.14);border-radius:21px;background:rgba(255,255,255,.83);box-shadow:0 13px 34px rgba(33,48,39,.045)}.task-module-section.is-minimized{opacity:.82;box-shadow:none}.task-module-section.is-minimized .task-module-heading{border-bottom:0}.task-module-section.accent-task-mint{--task-accent:#6e9d57;--task-tint:#eef8e6}.task-module-section.accent-task-blue{--task-accent:#6389ae;--task-tint:#edf4fa}.task-module-section.accent-task-amber{--task-accent:#9d7a39;--task-tint:#faf5e5}.task-module-section.accent-task-coral{--task-accent:#ad6d52;--task-tint:#fbf0ea}.task-module-section.accent-task-violet{--task-accent:#7965a5;--task-tint:#f3f0fa}.task-module-heading{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px 22px;align-items:center;padding:17px 20px 14px;border-bottom:1px solid rgba(74,91,80,.11);background:linear-gradient(100deg,var(--task-tint),rgba(255,255,255,.82))}.task-module-identity{display:flex;min-width:0;gap:11px;align-items:center}.task-module-symbol{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:12px;color:#26342c;font-family:Georgia,serif;font-size:11px;font-weight:700}.task-module-symbol.accent-neutral{background:#e1e5e1}.task-module-identity>span:last-child{display:flex;min-width:0;flex-direction:column}.task-module-identity small{color:var(--task-accent);font-size:7px;font-weight:900;letter-spacing:.12em}.task-module-identity strong{margin-top:4px;font-family:Georgia,serif;font-size:17px;font-weight:500}.task-module-active-topic,.task-module-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-module-active-topic{margin-top:3px;color:#65736a;font-size:8px;font-weight:650;line-height:1.2}.task-module-summary{display:flex;gap:14px;align-items:center}.task-module-summary>span{display:flex;flex-direction:column;color:#808c84;font-size:7px}.task-module-summary>span b{margin-bottom:3px;color:#435047;font-size:9px}.task-module-summary>button{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(70,89,76,.14);border-radius:10px;color:#f7fff2;background:#2f4336;cursor:pointer}.task-module-progress{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.task-module-progress>i{margin:0}.task-module-progress>span{color:#7d8881;font-size:7px;font-weight:800}.task-module-body{padding:12px}.task-list-section+.task-list-section{margin-top:12px}.task-overdue-section{padding:9px;border:1px solid #f0d0c5;border-radius:14px;background:#fff9f6}.task-list-section-heading{display:flex;justify-content:space-between;padding:1px 4px 8px}.task-list-section-heading span{color:#a45743;font-size:7px;font-weight:900;letter-spacing:.14em}.task-list-section-heading small{color:#9c766c;font-size:7px}.task-tree{display:grid;gap:6px}.task-tree-pass-through{display:contents}.task-tree-branch{min-width:0}.task-tree-children{display:grid;position:relative;gap:6px;margin-top:6px}.task-tree-children:before{position:absolute;top:-6px;bottom:18px;left:21px;border-left:1px solid #d6dfd6;content:""}.task-card{display:grid;position:relative;grid-template-columns:24px minmax(0,1fr) 30px;gap:9px;align-items:start;min-height:68px;margin-left:calc(var(--task-depth, 0) * 20px);padding:11px;border:1px solid #e2e8e1;border-radius:13px;background:#fbfcfa;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.task-card:hover{border-color:#bccbbc;box-shadow:0 7px 18px rgba(37,52,42,.06);transform:translateY(-1px)}.task-card.is-context{border-style:dashed;background:#f7f9f6}.task-card.is-overdue:not(.is-context){border-left:3px solid #c46f57}.task-card.is-complete{opacity:.65}.task-card .todo-check{margin-top:3px}.task-card-main{display:flex;min-width:0;flex-direction:column;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.task-card-kicker{display:flex;gap:7px;align-items:center;color:var(--task-accent);font-size:6px;font-weight:900;letter-spacing:.11em}.task-card-kicker i{color:#8a958d;font-size:6px;font-style:normal;font-weight:750;letter-spacing:0}.task-card-main>strong{margin-top:5px;font-size:11px;line-height:1.35}.task-card.is-complete .task-card-main>strong{text-decoration:line-through}.task-card-main>p{display:-webkit-box;margin:4px 0 0;overflow:hidden;color:#758078;font-size:8px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-card-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.task-card-meta>i{max-width:180px;overflow:hidden;padding:3px 6px;border-radius:6px;color:#69766e;background:#edf2ec;font-size:6px;font-style:normal;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.task-card-meta>.task-meta-duration{color:#3e5a45;background:#e5f1de}.task-card-meta>.priority-high{color:#934c3b;background:#f9e6df}.task-card-meta>.priority-medium{color:#765f2f;background:#f7efd6}.task-card-add{display:grid;width:28px;height:28px;place-items:center;border:1px solid #dfe6df;border-radius:8px;color:#718078;background:#fff;cursor:pointer}.task-filter-empty,.task-module-empty{display:flex;min-height:115px;align-items:center;justify-content:center;flex-direction:column;padding:22px;border:1px dashed #d4ddd4;border-radius:13px;color:#77837b;text-align:center}.task-module-empty.compact{min-height:76px}.task-module-empty>span{display:grid;width:27px;height:27px;margin-bottom:7px;place-items:center;border-radius:50%;color:#60804f;background:#e9f4df}.task-filter-empty strong,.task-module-empty strong{font-family:Georgia,serif;font-size:13px;font-weight:500}.task-filter-empty span,.task-module-empty small{margin-top:5px;color:#929c95;font-size:7px}.task-duration-note{margin:10px 4px 0;color:#8a948e;font-size:7px}.task-completed-group{margin-top:11px;border-top:1px solid #e6ebe5}.task-completed-group>summary{display:flex;align-items:center;justify-content:space-between;padding:12px 4px 4px;color:#6f7b73;font-size:8px;font-weight:800;cursor:pointer;list-style:none}.task-completed-group>summary::-webkit-details-marker{display:none}.task-completed-group>summary span{display:flex;gap:7px;align-items:center}.task-completed-group>summary i{display:grid;width:18px;height:18px;place-items:center;border-radius:50%;color:#5e7e50;background:#e8f2e2;font-size:7px;font-style:normal}.task-completed-group>summary b{display:grid;min-width:20px;height:20px;place-items:center;border-radius:7px;background:#edf1ec;font-size:7px}.task-completed-group[open]>.task-tree{margin-top:8px}.task-editor-dialog{width:min(720px,100%)}.duration-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.duration-field>input{grid-column:1/-1;grid-row:1;padding-right:45px!important}.duration-field>span{z-index:1;grid-column:2;grid-row:1;padding-right:11px;color:#8a948e;font-size:8px}.task-editor-plan-empty{padding:12px;border:1px dashed #d8e0d8;border-radius:10px;color:#859089;font-size:8px}.calendar-workspace{grid-template-columns:minmax(680px,1fr)}.calendar-workspace>.day-panel{display:none}.calendar-day-link{cursor:pointer}.calendar-day-link:focus-visible{z-index:2;outline:2px solid #6d8f61;outline-offset:-2px}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;padding:24px;place-items:center;background:rgba(17,25,20,.48);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dialog{width:min(610px,100%);max-height:calc(100vh - 48px);overflow-y:auto;padding:25px;border:1px solid rgba(255,255,255,.6);border-radius:24px;background:#fbfcfa;box-shadow:0 32px 80px rgba(13,25,17,.28)}.small-dialog{width:min(440px,100%)}.module-edit-preview{display:flex;gap:12px;align-items:center;min-height:72px;padding:13px 15px;border:1px solid rgba(78,94,83,.11);border-radius:15px}.module-edit-preview .module-dot{width:12px;height:12px;box-shadow:0 0 0 5px rgba(255,255,255,.56)}.module-edit-preview>span{display:flex;min-width:0;flex-direction:column}.module-edit-preview small{color:#718078;font-size:7px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.module-edit-preview strong{margin-top:3px;overflow:hidden;font-family:Georgia,serif;font-size:17px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.module-color-picker{margin:17px 0 0;padding:0;border:0}.module-color-picker legend{margin-bottom:8px;color:#66736b;font-size:9px;font-weight:750}.module-color-picker>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.module-color-picker button{display:grid;gap:6px;min-width:0;min-height:63px;padding:8px 4px;place-items:center;border:1px solid #e0e6df;border-radius:11px;color:#718078;background:#fff;font-size:7px;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.module-color-picker button:hover{transform:translateY(-1px)}.module-color-picker button.active{border-color:#829a77;box-shadow:0 0 0 3px rgba(130,154,119,.13)}.module-color-picker button i{width:19px;height:19px;border-radius:7px}.module-color-picker button b{display:none;color:#4d6a46;font-size:8px}.module-color-picker button.active b{display:block}.dialog-heading{display:flex;align-items:start;justify-content:space-between;margin-bottom:20px}.dialog-heading h2{margin:0;font-family:Georgia,serif;font-size:26px;font-weight:500}.dialog-heading>button{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:10px;color:#647068;background:#edf1ec;cursor:pointer;font-size:20px}.file-drop{position:relative;display:grid;min-height:155px;padding:20px;place-content:center;justify-items:center;border:1px dashed #b8c5ba;border-radius:17px;background:radial-gradient(circle at center,rgba(206,237,179,.24),transparent 65%),#f5f8f3;cursor:pointer;text-align:center}.file-drop.has-file{border-style:solid;border-color:#9dbc87;background:#edf6e6}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop-icon{display:grid;width:46px;height:46px;margin-bottom:11px;place-items:center;border-radius:14px;color:#f6fff0;background:#3c5938;font-size:21px}.file-drop strong{max-width:100%;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.file-drop small{margin-top:6px;color:#768179;font-size:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:17px}.dialog label:not(.file-drop){display:flex;flex-direction:column;gap:7px;margin-top:13px}.dialog label>span{color:#66736b;font-size:9px;font-weight:750}.dialog input:not([type=file]),.dialog select{width:100%;min-height:43px;padding:0 12px;border:1px solid var(--line);border-radius:11px;outline:0;background:#fff;font-size:10px}.dialog input:focus,.dialog select:focus{border-color:#8faf82;box-shadow:0 0 0 3px rgba(146,184,130,.14)}.upload-progress{margin-top:17px;padding:13px;border-radius:12px;background:#edf3e9}.upload-progress>div:first-child{display:flex;justify-content:space-between;margin-bottom:8px;color:#5e6d63;font-size:9px}.dialog-error{margin:14px 0 0;padding:10px 12px;border:1px solid #efc8bb;border-radius:10px;color:#773f30;background:#fff1ec;font-size:9px;line-height:1.45}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:21px}.dashboard-hero{display:flex;min-height:154px;gap:48px;align-items:center;justify-content:space-between;padding:7px 3px 9px}.dashboard-hero h1{max-width:720px;margin:11px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,4vw,54px);font-weight:500;letter-spacing:-.04em;line-height:1}.dashboard-daily-progress{display:flex;flex:0 0 auto;gap:20px;align-items:center}.dashboard-daily-progress>span{display:flex;align-items:flex-end;flex-direction:column}.dashboard-daily-progress small{color:#748078;font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.dashboard-daily-progress strong{margin-top:8px;font-family:Georgia,serif;font-size:30px;font-weight:500;letter-spacing:-.04em;line-height:1}.dashboard-daily-progress-ring{display:grid;position:relative;width:78px;height:78px;place-items:center;border-radius:50%;background:conic-gradient(#67865b var(--daily-progress,0deg),rgba(48,65,54,.1) 0)}.dashboard-daily-progress-ring:before{position:absolute;inset:6px;border-radius:50%;background:var(--background);content:""}.dashboard-daily-progress-ring span{z-index:1;font-family:Georgia,serif;font-size:18px}.dashboard-focus-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.64fr);gap:15px;align-items:stretch;margin-top:8px}.dashboard-task-manager,.planning-card,.pomodoro-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.84);box-shadow:0 14px 38px rgba(35,52,42,.045)}.dashboard-panel-heading{display:flex;min-height:106px;gap:20px;align-items:center;justify-content:space-between;padding:21px 23px;border-bottom:1px solid #e9ede8;background:radial-gradient(circle at 92% 0,rgba(201,239,154,.24),transparent 45%),#fbfcfa}.dashboard-panel-heading h2,.module-task-panel h2,.planning-card h2{margin:0;font-family:Georgia,serif;font-size:24px;font-weight:500;letter-spacing:-.025em}.dashboard-panel-heading>div>span{display:block;margin-top:7px;color:#7c8880;font-size:9px}.dashboard-task-toolbar{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:13px 17px;border-bottom:1px solid #edf0ec}.dashboard-task-tabs{display:inline-flex;gap:3px;padding:3px;border-radius:11px;background:#eef2ed}.dashboard-task-tabs button{min-height:30px;padding:0 11px;border:0;border-radius:8px;color:#6f7a73;background:transparent;font-size:8px;font-weight:850;cursor:pointer}.dashboard-task-tabs button.active{color:#26332b;background:#fff;box-shadow:0 3px 10px rgba(38,53,43,.08)}.dashboard-task-summary{display:flex;gap:14px;color:#8a948d;font-size:8px;white-space:nowrap}.dashboard-task-summary strong{color:#536158;font-size:9px}.dashboard-task-list{min-height:322px;padding:0 18px}.dashboard-task-row{display:grid;min-height:70px;grid-template-columns:28px minmax(0,1fr) auto 28px;gap:10px;align-items:center;border-bottom:1px solid #edf0ec}.dashboard-task-row:last-child{border-bottom:0}.dashboard-task-row.is-overdue{margin:0 -18px;padding:0 18px;background:linear-gradient(90deg,rgba(249,232,224,.8),transparent 75%)}.dashboard-task-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding:10px 0;border:0;background:transparent;text-align:left;cursor:pointer}.dashboard-task-copy small{display:flex;max-width:100%;gap:6px;align-items:center;overflow:hidden;color:#79857d;font-size:7px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.dashboard-task-copy small b{padding:2px 5px;border-radius:999px;color:#68776d;background:#eef2ed;font-size:6px;letter-spacing:.08em;text-transform:uppercase}.dashboard-task-copy>strong{margin-top:6px;font-size:11px}.dashboard-task-copy>span,.dashboard-task-copy>strong{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-task-copy>span{margin-top:4px;color:#88928c;font-size:8px}.module-dot.accent-neutral{background:#a7b0aa}.dashboard-task-meta{display:flex;min-width:92px;flex-direction:column;align-items:flex-end}.dashboard-task-meta time{margin-top:7px;color:#768179;font-size:7px;white-space:nowrap}.is-overdue .dashboard-task-meta time{color:#9a5943;font-weight:800}.dashboard-task-edit{display:grid;width:27px;height:27px;place-items:center;border:1px solid #e3e8e2;border-radius:9px;color:#6d7971;background:#fff;cursor:pointer}.dashboard-task-empty{display:flex;min-height:320px;align-items:center;justify-content:center;flex-direction:column;color:#718078;text-align:center}.dashboard-task-empty>span{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;color:#3d6134;background:#e4f3d8;font-size:19px}.dashboard-task-empty strong{margin-top:13px;font-family:Georgia,serif;font-size:20px;font-weight:500}.dashboard-task-empty p{max-width:360px;margin:7px 0 0;font-size:9px;line-height:1.55}.dashboard-task-footer{display:flex;min-height:49px;gap:14px;align-items:center;justify-content:space-between;padding:0 19px;border-top:1px solid #e9ede8;color:#859088;background:#fafbf9;font-size:8px}.dashboard-task-footer button{border:0;color:#526951;background:transparent;font-size:8px;font-weight:850;cursor:pointer}.planning-card{padding:19px}.planning-card-heading{display:flex;gap:12px;align-items:center}.planning-card-icon{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:13px;color:#41613c;background:#e2f1d6;font-size:17px}.planning-card .eyebrow{margin-bottom:5px}.planning-card h2{font-size:19px}.next-exam-card,.planning-empty{display:flex;margin-top:17px;flex-direction:column;padding:14px;border-radius:14px;background:#f0f5ec}.next-exam-card>span{color:#728269;font-size:7px;font-weight:900;letter-spacing:.12em}.next-exam-card strong,.planning-empty strong{margin-top:7px;font-family:Georgia,serif;font-size:15px;font-weight:500}.next-exam-card small,.planning-empty span{margin-top:5px;color:#7a867e;font-size:8px;line-height:1.45}.active-plan-list{display:grid;margin-top:10px}.active-plan-list>button{display:grid;grid-template-columns:minmax(0,1fr) 50px 28px;gap:8px;align-items:center;padding:10px 0;border:0;border-bottom:1px solid #edf0ec;background:transparent;text-align:left;cursor:pointer}.active-plan-list>button>span{display:flex;min-width:0;flex-direction:column}.active-plan-list strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.active-plan-list small{margin-top:3px;color:#8a948d;font-size:7px}.active-plan-list i{height:4px;overflow:hidden;border-radius:99px;background:#e4e9e3}.active-plan-list i b{display:block;height:100%;border-radius:inherit;background:#729866}.active-plan-list em{color:#6f7c73;font-size:7px;font-style:normal;text-align:right}.planning-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:15px}.planning-card-actions button{min-height:36px;border:1px solid #dfe6dd;border-radius:10px;background:#fff;font-size:8px;font-weight:800;cursor:pointer}.planning-card-actions button:last-child{color:#f6fff2;border-color:#40513f;background:#40513f}.pomodoro-card{display:flex;min-height:534px;padding:22px;align-items:center;flex-direction:column;background:radial-gradient(circle at 100% 0,rgba(201,239,154,.25),transparent 46%),rgba(255,255,255,.88)}.pomodoro-card.is-break{background:radial-gradient(circle at 100% 0,rgba(201,223,246,.34),transparent 46%),rgba(255,255,255,.88)}.pomodoro-card>header{display:flex;width:100%;gap:12px;align-items:flex-start;justify-content:space-between}.pomodoro-card h2{margin:5px 0 0;font-family:Georgia,serif;font-size:23px;font-weight:500;letter-spacing:-.025em}.pomodoro-session-count{max-width:82px;color:#7a867e;font-size:7px;font-weight:800;line-height:1.4;text-align:right}.pomodoro-mode-switch{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:4px;margin-top:22px;padding:4px;border-radius:12px;background:#edf1ec}.pomodoro-mode-switch button{min-height:33px;padding:0 8px;border:0;border-radius:9px;color:#748078;background:transparent;font-size:7px;font-weight:850;cursor:pointer}.pomodoro-mode-switch button.active{color:#2f3d32;background:#fff;box-shadow:0 4px 12px rgba(40,56,45,.07)}.pomodoro-ring{display:grid;position:relative;width:182px;height:182px;flex:0 0 auto;margin-top:28px;place-items:center;border-radius:50%;background:conic-gradient(#66875a var(--pomodoro-progress,0deg),rgba(49,68,55,.1) 0);box-shadow:0 16px 42px rgba(47,66,52,.08)}.is-break .pomodoro-ring{background:conic-gradient(#6d8ca3 var(--pomodoro-progress,0deg),rgba(62,83,99,.11) 0)}.pomodoro-ring:before{position:absolute;inset:10px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#fbfcfa;content:""}.pomodoro-ring>span{z-index:1;display:flex;align-items:center;flex-direction:column}.pomodoro-ring small{color:#718078;font-size:7px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.pomodoro-ring strong{margin-top:8px;font-family:Georgia,serif;font-size:39px;font-weight:500;letter-spacing:-.045em;line-height:1}.pomodoro-ring em{margin-top:7px;color:#879189;font-size:7px;font-style:normal;font-weight:800;text-transform:uppercase}.pomodoro-controls{display:grid;width:100%;grid-template-columns:1fr .84fr;gap:8px;margin-top:28px}.pomodoro-controls button{min-height:42px;padding:0 10px;border:1px solid #dce3da;border-radius:12px;color:#59675e;background:#fff;font-size:8px;font-weight:850;cursor:pointer}.pomodoro-controls .pomodoro-primary{color:#f5fff1;border-color:#40513f;background:#40513f}.is-break .pomodoro-controls .pomodoro-primary{border-color:#4f697d;background:#4f697d}.pomodoro-hint{max-width:220px;margin:15px 0 0;color:#818c85;font-size:7px;line-height:1.5;text-align:center}.dashboard-empty-modules{display:flex;min-height:210px;grid-column:1/-1;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #cdd8cc;border-radius:22px;color:#6e7b72;background:rgba(255,255,255,.55);text-align:center}.dashboard-empty-modules>span{display:grid;width:43px;height:43px;place-items:center;border-radius:14px;color:#466441;background:#e5f2dc;font-size:18px}.dashboard-empty-modules strong{margin-top:12px;font-family:Georgia,serif;font-size:19px;font-weight:500}.dashboard-empty-modules p{margin:6px 0 0;font-size:9px}.module-task-panel{margin-top:18px;padding:21px;border:1px solid rgba(68,84,73,.12);border-radius:22px}.module-task-panel-actions{display:flex;gap:8px}.module-task-more,.module-task-panel-actions button{min-height:35px;padding:0 12px;border:1px solid rgba(67,84,72,.13);border-radius:10px;background:rgba(255,255,255,.7);font-size:8px;font-weight:800;cursor:pointer}.module-task-panel-actions button:last-child{color:#f6fff2;border-color:var(--ink);background:var(--ink)}.module-task-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px}.module-task-preview>article{display:grid;min-width:0;grid-template-columns:26px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:70px;padding:10px 12px;border:1px solid rgba(65,83,70,.12);border-radius:14px;background:rgba(255,255,255,.72)}.module-task-preview>article>button{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.module-task-preview>article>button small{color:#738078;font-size:6px;font-weight:900;letter-spacing:.12em}.module-task-preview>article>button strong{width:100%;margin-top:4px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.module-task-preview>article>button span{margin-top:4px;color:#7d8981;font-size:7px}.module-task-empty{display:flex;min-height:90px;grid-column:1/-1;gap:13px;align-items:center;padding:15px;border:1px dashed rgba(71,91,75,.2);border-radius:15px;background:rgba(255,255,255,.5)}.module-task-empty>span{display:grid;width:37px;height:37px;flex:0 0 auto;place-items:center;border-radius:12px;color:#456641;background:#e8f4df}.module-task-empty>div{display:flex;min-width:0;flex:1 1;flex-direction:column}.module-task-empty strong{font-size:10px}.module-task-empty p{margin:4px 0 0;color:#748078;font-size:8px}.module-task-empty button{min-height:34px;padding:0 11px;border:0;border-radius:10px;color:#f6fff2;background:var(--ink);font-size:8px;font-weight:800;cursor:pointer}.module-task-more{display:block;margin:12px auto 0}.segmented-task-progress{display:flex;width:100%;height:6px;gap:3px;align-items:stretch}.segmented-task-progress>i{display:block;position:relative;min-width:7px;overflow:hidden;border-radius:999px;background:rgba(45,64,52,.12)}.segmented-task-progress>i>b{display:block;height:100%;border-radius:inherit;background:#668958;transition:width .18s ease}.segmented-task-progress>i.is-milestone{box-shadow:inset 0 0 0 1px rgba(66,87,66,.16)}.module-card-plan-overview{display:grid;min-height:154px;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;padding:8px 23px 22px}.module-plan-countdown{display:flex;align-items:center;padding:0;border:0;background:transparent;flex-direction:column;cursor:pointer}.module-plan-countdown-kicker{margin-bottom:7px;color:#627067;font-size:7px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.module-plan-countdown-ring{display:grid;position:relative;width:86px;height:86px;place-items:center;border-radius:50%;background:conic-gradient(var(--module-accent-strong) var(--countdown-progress,0deg),rgba(52,70,58,.12) 0);box-shadow:0 8px 22px rgba(50,66,55,.07);transition:transform .16s ease}.module-plan-countdown:hover .module-plan-countdown-ring{transform:scale(1.035)}.module-plan-countdown-ring:before{position:absolute;inset:7px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(255,255,255,.74);content:""}.module-plan-countdown-ring>span{z-index:1;display:flex;align-items:center;flex-direction:column}.module-plan-countdown-ring strong{font-family:Georgia,serif;font-size:25px;font-weight:500;letter-spacing:-.04em;line-height:.95}.module-plan-countdown-ring small{margin-top:5px;color:#647168;font-size:7px;font-weight:850;text-transform:uppercase}.module-plan-progress{display:grid;min-width:0;gap:16px}.module-progress-row{display:block;min-width:0;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.module-progress-label{display:flex;gap:10px;align-items:baseline;justify-content:space-between;color:#56655c;font-size:8px;font-weight:850}.module-progress-label strong{color:var(--ink);font-size:9px}.module-progress-row>small{display:block;margin-top:4px;overflow:hidden;color:#748078;font-size:7px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.module-plan-segments,.module-topic-progress-track{display:flex;width:100%;height:7px;margin-top:7px;overflow:hidden;border-radius:999px;background:rgba(48,65,54,.12)}.module-plan-segments>i>b,.module-topic-progress-track>i{display:block;height:100%;border-radius:inherit;background:var(--module-accent-strong);transition:width .18s ease}.module-plan-segments{gap:5px;overflow:visible;border-radius:0;background:transparent}.module-plan-segments>i{display:block;flex:1 1;overflow:hidden;border-radius:999px;background:rgba(48,65,54,.12)}.module-progress-row:hover .module-progress-label span{color:var(--ink)}.module-card-main:focus-visible,.module-plan-countdown:focus-visible,.module-plan-empty:focus-visible,.module-progress-row:focus-visible{outline:2px solid var(--module-accent-strong);outline-offset:4px}.module-plan-empty{display:flex;min-height:145px;align-items:flex-start;justify-content:center;padding:18px 23px 24px;border:0;color:#56655c;background:transparent;flex-direction:column;text-align:left;cursor:pointer}.module-plan-empty strong{font-family:Georgia,serif;font-size:15px;font-weight:500}.module-plan-empty small{margin-top:6px;color:#748078;font-size:8px}.dashboard-task-row.is-topic-ready{background:linear-gradient(90deg,rgba(230,244,216,.76),transparent 78%)}.dashboard-topic-submit,.module-topic-submit{display:grid;place-items:center;border:1px solid #b9cfae;border-radius:9px;color:#456441;background:#edf6e8;font-size:10px;cursor:pointer}.dashboard-topic-submit{width:27px;height:27px}.task-group-header{display:grid;position:relative;grid-template-columns:24px minmax(0,1fr) 24px;gap:8px;align-items:center;min-height:42px;margin-left:calc(var(--task-depth, 0) * 20px);padding:6px 8px;border:0;border-left:3px solid var(--task-accent);border-radius:8px;background:color-mix(in srgb,var(--task-tint) 58%,transparent)}.task-group-header.is-milestone{border-left-width:3px;background:color-mix(in srgb,var(--task-tint) 72%,transparent)}.task-group-header.is-task-group{border-left-color:#9baa9f;background:rgba(242,246,241,.72)}.task-group-header.is-context{border-style:dashed}.task-group-header.is-complete{opacity:.67}.task-group-symbol,.task-milestone-status{display:grid;place-items:center;color:var(--task-accent);background:rgba(255,255,255,.78);box-shadow:inset 0 0 0 1px rgba(71,91,76,.12)}.task-group-symbol{width:24px;height:24px;border-radius:7px;font-size:8px}.task-group-main{display:flex;min-width:0;flex-direction:column;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.task-group-main>span{display:flex;gap:7px;align-items:center;color:var(--task-accent);font-size:5px;font-weight:900;letter-spacing:.1em}.task-group-main>span>i{color:#7d8981;font-size:5px;font-style:normal;font-weight:750;letter-spacing:0}.task-group-main>strong{margin-top:2px;font-family:Georgia,serif;font-size:12px;font-weight:500;line-height:1.1}.task-group-main>p{display:none}.task-group-header>.task-card-add{width:24px;height:24px;border-radius:7px;font-size:10px}.task-card.is-topic-submission{grid-template-columns:24px minmax(0,1fr) auto 30px;border-color:#bdd2b4;background:linear-gradient(95deg,rgba(231,244,219,.72),transparent 70%),#fbfcfa}.task-milestone-status{width:24px;height:24px;margin-top:1px;border-radius:8px;font-size:8px}.task-card-submit{display:grid;min-width:54px;min-height:28px;padding:0 8px;place-items:center;align-self:center;border:1px solid #b9cfae;border-radius:8px;color:#456441;background:#edf6e8;font-size:7px;font-weight:900;cursor:pointer}.task-card-submit.has-proof{color:#f5fff0;border-color:#53704e;background:#53704e}.day-entry.is-structure{border-left:4px solid #9aaa9e;background:#f5f8f4}.day-entry.is-structure .todo-check{display:none}.day-entry.is-topic-submission{border-color:#bdd2b4;background:#f1f8eb}.day-entry-structure-icon{display:grid;width:23px;height:23px;place-items:center;border-radius:8px;color:#64736a;background:#e5ebe4;font-size:8px}.day-entry-structure-icon.is-milestone{color:#4e7048;background:#e5f1dd}.module-task-panel-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:15px;padding:10px 12px;border-radius:12px;color:#748078;background:rgba(255,255,255,.5);font-size:7px}.module-task-panel-progress>span{display:flex;gap:4px;align-items:baseline;white-space:nowrap}.module-task-panel-progress strong{color:#405147;font-size:9px}.module-task-preview>article.is-topic-ready{border-color:#bdd2b4;background:rgba(238,247,232,.82)}.module-task-preview>article>.module-topic-submit{display:grid;width:26px;height:26px;min-width:26px;align-items:center;padding:0}.keyboard-hints kbd{display:inline-grid;padding:0 5px;place-items:center;border-width:1px;border-style:solid;border-radius:5px;font-family:inherit}@media (max-width:1250px){.calendar-workspace{grid-template-columns:1fr}.day-panel{position:static;max-height:none}.day-entry-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.task-overview-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.task-overview-strip>div:nth-child(2){border-right:0}.task-overview-strip>div:nth-child(-n+2){border-bottom:1px solid rgba(102,121,107,.13)}}@media (max-width:1100px){.topbar{grid-template-columns:220px minmax(220px,1fr) auto}.app-shell{grid-template-columns:220px minmax(0,1fr)}.save-status{display:none}.dashboard-focus-grid{grid-template-columns:1fr}.pomodoro-card{min-height:500px}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid .dark-card{grid-column:1/-1}.module-layout{grid-template-columns:1fr}.lecture-list{max-height:360px}.module-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.app-shell{display:block;padding-bottom:74px}.topbar{position:sticky;display:flex;height:67px;justify-content:space-between;padding:0 17px}.brand small{display:none}.topbar-actions{gap:8px}.sidebar{position:fixed;top:auto;right:0;bottom:0;left:0;z-index:40;display:block;width:auto;height:64px;padding:7px 14px;border-top:1px solid var(--line);border-right:0;background:rgba(252,253,251,.94);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.sidebar nav{display:grid;grid-template-columns:1fr 1fr 1fr}.sidebar nav button{justify-content:center}.module-nav,.sidebar-heading,.storage-card{display:none}.content{padding:27px 17px 42px}.dashboard-hero{align-items:flex-start;flex-direction:column}.dashboard-hero h1{font-size:39px}.dashboard-daily-progress{width:100%;justify-content:flex-end}.dashboard-panel-heading{align-items:flex-start;flex-direction:column}.dashboard-panel-heading>button{width:100%}.dashboard-task-toolbar{align-items:stretch;flex-direction:column}.dashboard-task-summary{justify-content:space-between}.dashboard-task-row{grid-template-columns:27px minmax(0,1fr) 25px;padding:8px 0}.dashboard-task-row.is-overdue{padding:8px 18px}.dashboard-task-meta{grid-column:2/-1;grid-row:2;min-width:0;align-items:center;flex-direction:row;gap:8px;padding-bottom:6px}.dashboard-task-meta time{margin-top:0}.dashboard-task-edit{grid-column:3;grid-row:1}.dashboard-task-footer{align-items:flex-start;flex-direction:column;padding-top:12px;padding-bottom:12px}.form-grid,.hero-row,.lecture-notes,.module-grid,.stats-grid{grid-template-columns:1fr}.upload-hero{min-width:0}.hero-row h1{font-size:38px}.module-card h3{min-height:auto}.module-card-plan-overview{grid-template-columns:98px minmax(0,1fr)}.module-task-panel .panel-heading{align-items:flex-start;flex-direction:column;gap:13px}.module-task-panel-actions{width:100%}.module-task-panel-actions button{flex:1 1}.module-task-preview{grid-template-columns:1fr}.module-task-empty{align-items:flex-start;flex-wrap:wrap}.module-task-empty button{width:100%}.module-header{align-items:start;flex-direction:column;gap:24px}.player-panel{min-height:420px;padding:11px}.player-stage{min-height:235px}.player-controls{align-items:center;flex-direction:row;gap:4px}.player-shell.is-custom-fullscreen .player-controls{min-height:calc(78px + env(safe-area-inset-bottom));align-items:end;flex-direction:row;padding:14px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.player-shell.is-custom-fullscreen .timeline-wrap{right:max(14px,env(safe-area-inset-right));bottom:calc(68px + env(safe-area-inset-bottom));left:max(14px,env(safe-area-inset-left))}.player-shell.is-custom-fullscreen .player-controls-right{width:auto}.player-shell.is-custom-fullscreen .volume-control{display:none}.player-controls-right{width:auto;margin-left:auto;justify-content:flex-end}.volume-control{display:none}.todo-row{grid-template-columns:22px minmax(0,1fr) auto}.task-hub-hero{align-items:flex-start;flex-direction:column}.task-hub-hero h1{font-size:44px}.task-hub-actions{width:100%;justify-content:flex-start}.task-hub-actions button{flex:1 1 auto}.task-scope-bar{align-items:stretch;flex-direction:column;gap:7px}.task-scope-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.task-scope-tabs button{padding:0 8px}.task-day-navigation{justify-content:space-between}.task-overview-strip>div{min-height:86px;padding:14px}.task-overview-strip strong{font-size:19px}.task-module-heading{grid-template-columns:1fr}.task-module-summary{justify-content:space-between}.task-module-progress{grid-column:auto}.task-card,.task-group-header{margin-left:calc(var(--task-depth, 0) * 10px)}.task-tree-children:before{left:12px}.task-card-meta>i{max-width:135px}.task-editor-dialog .entry-form-grid{grid-template-columns:1fr}.todo-row time{display:none}.login-screen{padding:16px}.login-card{padding:30px 24px}.dialog{padding:20px}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}.module-color-picker>div{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-hero{align-items:start;flex-direction:column}.unplanned-tray{align-items:stretch;flex-direction:column}.calendar-hero-actions{width:100%;justify-content:flex-start}.calendar-hero-actions button{flex:1 1 auto}.plan-strip{grid-auto-columns:minmax(215px,82vw)}.month-calendar{overflow-x:auto}.calendar-grid,.calendar-toolbar,.calendar-weekdays{min-width:760px}.day-entry-list,.entry-form-grid,.module-plan-grid,.plan-form-grid{grid-template-columns:1fr}.plan-description-field{grid-column:auto}.module-plans-panel .panel-heading{align-items:start;flex-direction:column;gap:10px}.module-plan-actions{width:100%}.module-plan-actions button{flex:1 1}.capacity-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.exam-date-list>div{grid-template-columns:minmax(0,1fr) 34px}.exam-date-list>div input[type=date]{grid-column:1}.exam-date-list>div button{grid-column:2;grid-row:1/3}.import-preview>div{grid-template-columns:auto 1fr auto 1fr}}.task-card{grid-template-columns:24px minmax(0,1fr) auto auto}.day-entry>.day-entry-proof,.task-card-proof{display:grid;min-width:42px;height:28px;padding:0 7px;place-items:center;align-self:center;border:1px solid #e2d3ad;border-radius:8px;color:#816a34;background:#fff9e9;font-size:7px;font-weight:900;letter-spacing:.04em;cursor:pointer}.day-entry>.day-entry-proof.has-proof,.task-card-proof.has-proof{border-color:#b9cfae;color:#426141;background:#edf6e8}.day-entry{grid-template-columns:23px minmax(0,1fr) auto 25px}.topic-submission-dialog{width:min(640px,100%)}.submission-intro{display:flex;gap:12px;align-items:center;margin-bottom:15px;padding:13px 15px;border:1px solid #dce7d7;border-radius:14px;color:#56645b;background:#f1f6ee}.submission-intro>span{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:10px;color:#fff;background:#5a7855;font-weight:850}.submission-intro p{margin:0;font-size:9px;line-height:1.55}.current-proof-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:13px;padding:12px;border:1px solid #dbe5d7;border-radius:14px;background:#fff}.current-proof-card>span{display:grid;height:42px;place-items:center;border-radius:11px;color:#fff;background:#456346;font-size:8px;font-weight:900}.current-proof-card>div{display:flex;min-width:0;flex-direction:column}.current-proof-card strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.current-proof-card small{margin-top:4px;color:#7b867e;font-size:8px}.current-proof-card button{min-height:31px;padding:0 10px;border:1px solid #efcfc4;border-radius:9px;color:#934f3c;background:#fff6f2;font-size:8px;font-weight:800;cursor:pointer}.proof-drop{min-height:170px}.submission-no-proof{margin:11px 0 0;color:#81775f;font-size:8px;line-height:1.45;text-align:center}.review-shell{min-height:100vh;color:#16201c;background:radial-gradient(circle at 78% 2%,rgba(201,239,154,.24),transparent 30rem),linear-gradient(180deg,#f7f9f5,#f1f4ef)}.review-topbar{position:sticky;top:0;z-index:20;min-height:72px;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px) / 2));border-bottom:1px solid rgba(57,76,64,.11);background:rgba(252,253,251,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.review-brand,.review-topbar{display:flex;align-items:center}.review-brand{gap:11px}.review-brand-mark{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;color:#f5ffe8;background:#16201c;font-family:Georgia,serif;font-size:21px;font-weight:700}.review-brand>span:last-child{display:flex;flex-direction:column;line-height:1.05}.review-brand strong{font-family:Georgia,serif;font-size:17px}.review-brand small{margin-top:5px;color:#79837c;font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.review-topbar-meta{display:flex;gap:12px;align-items:center}.readonly-badge{display:inline-flex;min-height:30px;gap:7px;align-items:center;padding:0 11px;border:1px solid #dce5d8;border-radius:999px;color:#5f7162;background:#f2f7ef;font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.readonly-badge i{color:#79a260;font-size:7px}.review-avatar{display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:50%;color:#203127;background:#c9ef9a;font-size:10px;font-weight:900;cursor:pointer}.review-main{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:42px 0 32px}.review-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.7fr);gap:24px;min-height:340px;overflow:hidden;padding:44px;border:1px solid rgba(41,58,47,.1);border-radius:29px;background:radial-gradient(circle at 87% 14%,rgba(201,239,154,.36),transparent 19rem),linear-gradient(135deg,#ffffff,#f9fbf7);box-shadow:0 24px 60px rgba(30,47,36,.08)}.review-hero-copy{display:flex;flex-direction:column;align-items:flex-start}.review-kicker{color:#779064;font-size:8px;font-weight:900;letter-spacing:.18em}.review-hero h1{max-width:740px;margin:15px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(39px,5vw,64px);font-weight:500;letter-spacing:-.045em;line-height:1.02}.review-hero-copy>p{max-width:610px;margin:0;color:#69766e;font-size:12px;line-height:1.7}.review-cutoff-note{display:flex;gap:10px;align-items:center;margin-top:auto;padding:10px 13px;border:1px solid #e0e8dc;border-radius:13px;background:rgba(247,250,245,.88)}.review-cutoff-note>span:first-child{display:grid;width:27px;height:27px;place-items:center;border-radius:8px;color:#4c6748;background:#e6f1df}.review-cutoff-note>span:last-child{display:flex;flex-direction:column}.review-cutoff-note strong{font-size:8px}.review-cutoff-note small{margin-top:3px;color:#77827a;font-size:8px}.review-progress-card{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:25px;border:1px solid rgba(66,87,70,.1);border-radius:23px;background:rgba(244,248,241,.82)}.review-progress-ring{display:grid;position:relative;width:176px;height:176px;place-items:center;border-radius:50%;background:conic-gradient(#6d985b var(--review-progress),#e1e8dd var(--review-progress));box-shadow:inset 0 0 0 1px rgba(45,64,51,.05)}.review-progress-ring:before{position:absolute;width:142px;height:142px;border-radius:50%;background:#fbfcfa;box-shadow:0 7px 25px rgba(39,57,44,.07);content:""}.review-progress-ring>span{z-index:1;display:flex;align-items:center;flex-direction:column}.review-progress-ring strong{font-family:Georgia,serif;font-size:37px;font-weight:500}.review-progress-ring small{margin-top:2px;color:#738078;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.review-progress-card>p{max-width:230px;margin:17px 0 0;color:#68756c;font-size:10px;line-height:1.55;text-align:center}.review-progress-card>p strong{color:#25342b}.review-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:17px}.review-metrics article{display:flex;min-width:0;min-height:118px;gap:13px;align-items:center;padding:18px;border:1px solid rgba(47,65,53,.1);border-radius:18px;background:rgba(255,255,255,.78)}.metric-symbol{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:13px;font-weight:900}.metric-planned{color:#4b6379;background:#e4eef7}.metric-done{color:#4e7143;background:#e5f2dc}.metric-open{color:#8b6548;background:#f5e7db}.metric-proof{color:#6b5c86;background:#ece7f7;font-size:7px}.review-metrics article>span:last-child{display:flex;min-width:0;flex-direction:column}.review-metrics small{color:#7d8981;font-size:7px;font-weight:900;letter-spacing:.11em}.review-metrics strong{margin-top:3px;font-family:Georgia,serif;font-size:25px;font-weight:500}.review-metrics em{margin-top:2px;overflow:hidden;color:#77837b;font-size:8px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.review-outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.review-outcome-card{overflow:hidden;border:1px solid rgba(47,65,53,.1);border-radius:21px;background:rgba(255,255,255,.82);box-shadow:0 12px 32px rgba(35,51,40,.04)}.review-outcome-card>header{display:flex;min-height:78px;gap:12px;align-items:center;padding:15px 18px;border-bottom:1px solid rgba(54,72,59,.08)}.review-outcome-card.is-complete>header{background:#edf6e8}.review-outcome-card.is-open>header{background:#faf0e9}.review-outcome-card>header>span{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:11px;color:#fff;background:#6b8e5e;font-size:15px;font-weight:900}.review-outcome-card.is-open>header>span{color:#946448;background:#f1ddcf}.review-outcome-card>header>div{display:flex;flex-direction:column}.review-outcome-card>header small{color:#748078;font-size:7px;font-weight:900;letter-spacing:.12em}.review-outcome-card>header strong{margin-top:4px;font-family:Georgia,serif;font-size:18px;font-weight:500}.review-outcome-list{max-height:360px;margin:0;padding:0 18px;overflow-y:auto;list-style:none}.review-outcome-list li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:76px;padding:11px 0;border-bottom:1px solid #edf0ec;--review-accent:#dce8d5;--review-accent-deep:#5e7958}.review-outcome-list li:last-child{border-bottom:0}.review-outcome-status{display:grid;width:27px;height:27px;place-items:center;border-radius:9px;color:var(--review-accent-deep);background:var(--review-accent);font-size:12px;font-weight:900}.review-outcome-copy{display:flex;min-width:0;flex-direction:column}.review-outcome-copy>small{display:flex;gap:5px;align-items:center;color:#7a867e;font-size:6px;font-weight:900;letter-spacing:.08em}.review-outcome-copy>small i{width:6px;height:6px;border-radius:50%;background:var(--review-accent-deep)}.review-outcome-copy>strong{font-size:9px}.review-outcome-copy>em,.review-outcome-copy>strong{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-outcome-copy>em{color:#849088;font-size:7px;font-style:normal}.review-outcome-proof{padding:4px 7px;border-radius:999px;font-size:6px;font-weight:900;white-space:nowrap}.review-outcome-proof.has-proof{color:#536d4e;background:#e7f1e2}.review-outcome-proof.is-missing{color:#87683f;background:#f7ecd2}.review-outcome-empty{display:grid;min-height:150px;margin:0;padding:22px;place-items:center;color:#748078;font-size:9px;line-height:1.55;text-align:center}.review-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:44px 2px 17px}.review-section-heading h2{margin:8px 0 0;font-family:Georgia,serif;font-size:30px;font-weight:500}.review-section-heading>p{margin:0;color:#7b867f;font-size:8px}.review-module-list{display:grid;gap:15px}.review-module-card{overflow:hidden;border:1px solid rgba(47,66,53,.11);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 12px 32px rgba(35,51,40,.045);--review-accent:#dce8d5;--review-accent-deep:#5e7958}.review-accent-neutral{--review-accent:#e7ebe7;--review-accent-deep:#66736b}.review-accent-mint{--review-accent:#dff0cf;--review-accent-deep:#587a4c}.review-accent-blue{--review-accent:#ddeaf5;--review-accent-deep:#526f87}.review-accent-amber{--review-accent:#f2e8c9;--review-accent-deep:#806a35}.review-accent-coral{--review-accent:#f4e0d6;--review-accent-deep:#8b5d4c}.review-accent-violet{--review-accent:#e9e3f4;--review-accent-deep:#6b5f87}.review-module-card>header{display:flex;min-height:96px;gap:18px;align-items:center;justify-content:space-between;padding:20px 23px;border-bottom:1px solid rgba(52,70,57,.08);background:linear-gradient(90deg,var(--review-accent),rgba(255,255,255,.35))}.review-module-identity{display:flex;min-width:0;gap:13px;align-items:center}.review-module-identity>span{display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:14px;color:#fff;background:var(--review-accent-deep);font-size:10px;font-weight:900}.review-module-identity>div{min-width:0}.review-module-identity small{color:var(--review-accent-deep);font-size:7px;font-weight:900;letter-spacing:.12em}.review-module-identity h3{margin:4px 0 0;overflow-wrap:anywhere;font-family:Georgia,serif;font-size:20px;font-weight:500}.review-module-score{display:grid;grid-template-columns:auto minmax(85px,150px);gap:4px 12px;align-items:center}.review-module-score strong{grid-row:1/3;font-family:Georgia,serif;font-size:22px;font-weight:500}.review-module-score small{color:#637168;font-size:8px;text-align:right}.review-module-score i{height:5px;overflow:hidden;border-radius:999px;background:rgba(39,57,45,.12)}.review-module-score b{display:block;height:100%;border-radius:inherit;background:var(--review-accent-deep)}.review-item-list{display:grid;gap:0;padding:0 23px}.review-item-section+.review-item-section{border-top:1px solid #e6ebe5}.review-item-section>header{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:14px 0 4px}.review-item-section>header span{color:#8a6047;font-size:7px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.review-item-section.is-complete>header span{color:#58724f}.review-item-section>header small{color:#879189;font-size:7px}.review-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:13px;padding:21px 0;border-bottom:1px solid #edf0ec}.review-item:last-child{border-bottom:0}.review-item-status{display:grid;width:30px;height:30px;margin-top:1px;place-items:center;border-radius:10px;font-size:14px;font-weight:850}.review-item.is-complete .review-item-status{color:#fff;background:#6b8e5e}.review-item.is-open .review-item-status{color:#9a6c51;background:#f6e8df}.review-item-content{min-width:0}.review-item-heading{display:flex;gap:8px;align-items:center}.review-item-heading>span{color:#738076;font-size:7px;font-weight:900;letter-spacing:.12em}.review-item-heading em{padding:3px 7px;border-radius:999px;color:#7c624e;background:#f7ede6;font-size:7px;font-style:normal;font-weight:800}.review-item.is-complete .review-item-heading em{color:#526d4c;background:#e9f3e3}.review-item h4{margin:7px 0 0;overflow-wrap:anywhere;font-size:12px;line-height:1.4}.review-item.is-complete h4{color:#5f6a63}.review-item-content>p{max-width:780px;margin:6px 0 0;color:#717d75;font-size:9px;line-height:1.55}.review-item-date{display:block;margin-top:7px;color:#78847c;font-size:8px}.review-item-completed-at{display:block;margin-top:5px;color:#5f7857;font-size:7px;font-weight:750}.review-proof{margin-top:13px;border:1px solid #dce6d8;border-radius:14px;background:#f8fbf6}.review-proof summary{display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:11px;align-items:center;padding:10px 12px;cursor:pointer;list-style:none}.review-proof summary::-webkit-details-marker{display:none}.review-pdf-icon{display:grid;height:37px;place-items:center;border-radius:10px;color:#fff;background:#54704f;font-size:7px;font-weight:900}.review-proof summary>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.review-proof summary strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.review-proof summary small{margin-top:3px;color:#78837c;font-size:7px}.review-proof summary>i{color:#708078;font-style:normal;transition:transform .14s ease}.review-proof[open] summary>i{transform:rotate(180deg)}.review-proof-frame{padding:0 11px 11px}.review-proof-frame object{display:block;width:100%;height:min(72vh,760px);min-height:440px;border:1px solid #dce3dc;border-radius:11px;background:#fff}.review-proof-frame p{padding:18px;font-size:9px}.review-proof-frame a{color:#456441}.review-proof-missing{display:flex;gap:10px;align-items:center;margin-top:13px;padding:10px 12px;border:1px solid #ecddbf;border-radius:13px;background:#fff9eb}.review-proof-missing>span{display:grid;width:29px;height:29px;flex:0 0 auto;place-items:center;border-radius:9px;color:#8f7137;background:#f6e8bd;font-weight:900}.review-proof-missing p{display:flex;margin:0;flex-direction:column}.review-proof-missing strong{font-size:8px}.review-proof-missing small{margin-top:3px;color:#847a66;font-size:7px}.review-proof-pending{margin-top:12px;padding:9px 11px;border:1px solid #eadfd4;border-radius:11px;color:#826c5c;background:#fcf7f2;font-size:7px}.review-empty{display:flex;min-height:310px;align-items:center;justify-content:center;flex-direction:column;padding:35px;border:1px dashed #ccd8c9;border-radius:24px;color:#6e7c72;background:rgba(255,255,255,.65);text-align:center}.review-empty>span{display:grid;width:60px;height:60px;place-items:center;border-radius:20px;color:#5c7852;background:#e6f2dd;font-size:25px}.review-empty h2{margin:17px 0 0;font-family:Georgia,serif;font-size:27px;font-weight:500}.review-empty p{max-width:440px;margin:8px 0 0;font-size:10px;line-height:1.6}.review-footer{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:25px;padding:18px 3px 0;border-top:1px solid rgba(53,71,59,.11);color:#7a857e;font-size:8px}.review-footer strong{color:#5c6c62}.review-login-screen{background:radial-gradient(circle at 75% 15%,rgba(201,239,154,.25),transparent 22rem),#f3f6f1}@media (max-width:900px){.review-main{width:min(100% - 32px,760px);padding-top:25px}.review-hero{grid-template-columns:1fr;padding:31px}.review-cutoff-note{margin-top:25px}.review-progress-card{flex-direction:row;gap:24px}.review-progress-ring{width:142px;height:142px;flex:0 0 auto}.review-progress-ring:before{width:114px;height:114px}.review-progress-ring strong{font-size:29px}.review-progress-card>p{margin:0;text-align:left}.review-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.review-topbar{padding:0 16px}.readonly-badge{display:none}.review-main{width:calc(100% - 24px);padding-top:12px}.review-hero{min-height:0;padding:24px 20px;border-radius:21px}.review-hero h1{font-size:36px}.review-hero-copy>p{font-size:10px}.review-progress-card{align-items:center;flex-direction:column}.review-progress-card>p{text-align:center}.review-metrics{gap:8px}.review-metrics article{min-height:103px;gap:9px;padding:13px}.review-outcome-grid{grid-template-columns:1fr}.review-outcome-list{max-height:none}.metric-symbol{width:35px;height:35px}.review-section-heading{align-items:flex-start;flex-direction:column;margin-top:34px}.review-module-card>header{align-items:stretch;flex-direction:column;padding:17px}.review-module-score{grid-template-columns:auto 1fr}.review-item-list{padding:0 16px}.review-item{grid-template-columns:29px minmax(0,1fr);gap:9px}.review-item-status{width:27px;height:27px}.review-proof-frame object{min-height:390px}.review-footer{align-items:flex-start;flex-direction:column}.task-card{grid-template-columns:24px minmax(0,1fr) auto}.task-card-add,.task-card-proof,.task-card-submit{grid-column:3}.task-card-add{grid-row:1}.task-card-proof,.task-card-submit{grid-row:2}.task-card.is-topic-submission{grid-template-columns:24px minmax(0,1fr) auto}.day-entry{grid-template-columns:23px minmax(0,1fr) 34px}.day-entry>.day-entry-add-child,.day-entry>.day-entry-proof{grid-column:3}.day-entry>.day-entry-add-child{grid-row:1}.day-entry>.day-entry-proof{grid-row:2}.current-proof-card{grid-template-columns:40px minmax(0,1fr)}.current-proof-card button{grid-column:1/-1}}@media (max-width:480px){.dashboard-daily-progress{justify-content:space-between}.dashboard-task-tabs{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-task-summary{flex-wrap:wrap;white-space:normal}.module-card-plan-overview{grid-template-columns:82px minmax(0,1fr);gap:14px;padding-right:18px;padding-left:18px}.module-plan-countdown-ring{width:78px;height:78px}.module-task-preview>article{grid-template-columns:25px minmax(0,1fr)}.module-task-preview>article>.priority-pill{grid-column:2;justify-self:start}}.task-workspace.task-hub{max-width:1320px}.task-workspace .task-hub-hero{align-items:center;margin-bottom:10px;padding:1px 1px 12px;border-bottom:1px solid rgba(70,88,76,.11)}.task-workspace .task-hub-hero h1{margin:4px 0 3px;font-size:clamp(27px,3vw,36px);letter-spacing:-.035em;line-height:1}.task-workspace .task-hub-hero p:last-child{font-size:8px}.task-workspace .task-hub-actions button{min-height:34px;padding:0 12px;border-radius:9px;font-size:8px}.task-control-surface{display:grid;grid-template-columns:auto minmax(500px,1fr);gap:4px;align-items:stretch;margin-bottom:8px;padding:4px;border:1px solid rgba(67,85,72,.12);border-radius:13px;background:rgba(255,255,255,.58)}.task-workspace .task-scope-bar{align-items:center;margin:0;padding:2px;border:0;border-radius:9px;background:#eef2ed}.task-workspace .task-day-navigation,.task-workspace .task-scope-tabs{gap:2px}.task-workspace .task-day-navigation button,.task-workspace .task-scope-tabs button{min-height:30px;padding:0 11px;border-radius:7px;font-size:7px}.task-workspace .task-scope-tabs button.active{color:#314438;background:#fff;box-shadow:inset 0 0 0 1px rgba(74,94,79,.08),0 2px 7px rgba(42,58,47,.06)}.task-workspace .task-day-navigation button{border:0;background:rgba(255,255,255,.72)}.task-workspace .task-overview-strip{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border:0;border-radius:9px;background:transparent}.task-workspace .task-overview-strip>div{min-height:44px;padding:6px 11px;border-right:0;border-left:1px solid rgba(75,93,80,.1)}.task-workspace .task-overview-strip>div:first-child{border-left:0}.task-workspace .task-overview-strip span{font-size:5px;letter-spacing:.11em}.task-workspace .task-overview-strip strong{margin-top:2px;font-size:15px;line-height:1}.task-workspace .task-overview-strip small{margin-top:1px;font-size:5px}.task-workspace .task-overview-progress>i{height:4px;margin-top:4px}.task-workspace .task-module-grid{gap:8px}.task-workspace .task-module-section{border-color:rgba(68,86,73,.11);border-radius:13px;background:rgba(255,255,255,.62);box-shadow:none}.task-workspace .task-module-heading{grid-template-columns:minmax(210px,.7fr) minmax(160px,1fr) auto;gap:8px 15px;padding:8px 10px;background:linear-gradient(90deg,color-mix(in srgb,var(--task-tint) 58%,#fff),rgba(255,255,255,.68))}.task-workspace .task-module-section.is-minimized .task-module-heading{grid-template-columns:minmax(210px,1fr) auto;padding-block:7px}.task-workspace .task-module-identity{gap:8px}.task-workspace .task-module-symbol{width:28px;height:28px;border-radius:8px;font-size:8px}.task-workspace .task-module-identity small{font-size:5px}.task-workspace .task-module-identity strong{margin-top:1px;font-size:13px}.task-workspace .task-module-active-topic{margin-top:2px;font-size:6px}.task-workspace .task-module-summary{grid-column:3;grid-row:1;gap:10px}.task-workspace .task-module-section.is-minimized .task-module-summary{grid-column:2}.task-workspace .task-module-summary>span{font-size:6px}.task-workspace .task-module-summary>span b{margin-bottom:1px;font-size:8px}.task-workspace .task-module-summary>button{width:27px;height:27px;border-radius:8px;color:#314438;background:rgba(255,255,255,.82)}.task-workspace .task-module-progress{grid-column:2;grid-row:1;gap:7px}.task-workspace .task-module-progress .segmented-task-progress{height:4px}.task-workspace .task-module-progress>span{font-size:6px}.task-workspace .task-module-body{padding:5px}.task-workspace .task-list-section+.task-list-section{margin-top:5px}.task-workspace .task-overdue-section{padding:4px;border:0;border-left:2px solid #d38a72;border-radius:7px;background:rgba(255,247,243,.66)}.task-workspace .task-list-section-heading{align-items:center;padding:2px 4px 5px}.task-workspace .task-list-section-heading small,.task-workspace .task-list-section-heading span{font-size:5px}.task-workspace .task-tree{gap:3px}.task-workspace .task-tree-children{gap:3px;margin-top:3px}.task-workspace .task-tree-children:before{top:-3px;bottom:13px;left:14px;border-left-color:rgba(99,117,104,.22)}.task-workspace .task-card{grid-template-columns:20px minmax(0,1fr) auto 23px;gap:7px;min-height:45px;margin-left:calc(var(--task-depth, 0) * 14px);padding:6px 7px;border:0;border-bottom:1px solid rgba(76,94,81,.1);border-radius:7px;background:rgba(255,255,255,.42)}.task-workspace .task-card:hover{border-color:rgba(76,94,81,.16);background:rgba(255,255,255,.86);box-shadow:none;transform:none}.task-workspace .task-card.is-context{border-style:dashed;background:transparent}.task-workspace .task-card.is-overdue:not(.is-context){border-left:2px solid #c46f57;background:rgba(255,249,246,.72)}.task-workspace .task-card .todo-check{margin-top:1px}.task-workspace .task-card .checkmark{width:17px;height:17px;border-radius:5px}.task-workspace .task-card-kicker{gap:5px;font-size:5px}.task-workspace .task-card-kicker i{font-size:5px}.task-workspace .task-card-main>strong{margin-top:2px;font-size:10px;line-height:1.2}.task-workspace .task-card-main>p{margin-top:2px;font-size:6px;line-height:1.3;-webkit-line-clamp:1}.task-workspace .task-card-meta{gap:3px;margin-top:4px}.task-workspace .task-card-meta>i{max-width:150px;padding:2px 5px;border-radius:5px;background:rgba(232,238,231,.72);font-size:5px}.task-workspace .task-card-add{width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.74);font-size:9px}.task-workspace .task-group-header{grid-template-columns:20px minmax(0,1fr) 21px;gap:7px;min-height:34px;margin-left:calc(var(--task-depth, 0) * 14px);padding:3px 6px;border-left-width:2px;border-radius:6px;background:color-mix(in srgb,var(--task-tint) 42%,transparent)}.task-workspace .task-group-header.is-milestone{border-left-width:2px;background:color-mix(in srgb,var(--task-tint) 54%,transparent)}.task-workspace .task-group-symbol{width:20px;height:20px;border-radius:6px;font-size:6px}.task-workspace .task-group-main>span,.task-workspace .task-group-main>span>i{font-size:4.5px}.task-workspace .task-group-main>strong{margin-top:1px;font-size:10px}.task-workspace .task-group-header>.task-card-add{width:20px;height:20px;border-radius:6px;font-size:8px}.task-workspace .task-card.is-topic-submission{grid-template-columns:20px minmax(0,1fr) auto 23px;border:1px solid rgba(104,140,91,.18);background:rgba(238,247,232,.64)}.task-workspace .task-milestone-status{width:19px;height:19px;border-radius:6px;font-size:6px}.task-workspace .task-card-submit{min-width:46px;min-height:23px;padding:0 6px;border-radius:7px;font-size:5px}.task-workspace .task-filter-empty,.task-workspace .task-module-empty{min-height:60px;padding:12px;border-radius:8px}.task-workspace .task-module-empty.compact{min-height:48px}.task-workspace .task-module-empty>span{width:22px;height:22px;margin-bottom:4px}.task-workspace .task-filter-empty strong,.task-workspace .task-module-empty strong{font-size:11px}.task-workspace .task-filter-empty span,.task-workspace .task-module-empty small{margin-top:3px;font-size:6px}.task-workspace .task-duration-note{margin:5px 4px 1px;font-size:5px}.task-workspace .task-completed-group{margin-top:5px}.task-workspace .task-completed-group>summary{padding:6px 3px 2px;font-size:6px}.task-workspace .task-completed-group>summary i{width:15px;height:15px;font-size:5px}.task-workspace .task-completed-group>summary b{min-width:17px;height:17px;border-radius:6px;font-size:6px}@media (max-width:980px){.task-control-surface{grid-template-columns:1fr}.task-workspace .task-scope-bar{justify-content:flex-start}.task-workspace .task-module-heading{grid-template-columns:minmax(190px,1fr) auto}.task-workspace .task-module-summary{grid-column:2}.task-workspace .task-module-progress{grid-column:1/-1;grid-row:2}}@media (max-width:760px){.task-workspace .task-hub-hero{align-items:center;flex-direction:row}.task-workspace .task-hub-actions{width:auto}.task-workspace .task-hub-actions button{width:auto;flex:0 0 auto}.task-workspace .task-overview-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.task-workspace .task-overview-strip>div{border-bottom:1px solid rgba(75,93,80,.08)}.task-workspace .task-overview-strip>div:nth-child(odd){border-left:0}.task-workspace .task-overview-strip>div:nth-last-child(-n+2){border-bottom:0}.task-workspace .task-module-heading{grid-template-columns:minmax(0,1fr) auto}.task-workspace .task-card,.task-workspace .task-group-header{margin-left:calc(var(--task-depth, 0) * 9px)}.task-workspace .task-tree-children:before{left:9px}}@media (max-width:520px){.task-workspace .task-hub-hero{align-items:flex-start;flex-direction:column}.task-workspace .task-hub-actions{width:100%}.task-workspace .task-hub-actions button{flex:1 1}.task-workspace .task-scope-bar{align-items:stretch;flex-direction:column}.task-workspace .task-scope-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.task-workspace .task-day-navigation{justify-content:space-between}.task-workspace .task-module-summary{gap:7px}.task-workspace .task-module-summary>span:nth-child(2){display:none}.task-workspace .task-card{grid-template-columns:20px minmax(0,1fr) 22px}.task-workspace .task-card.is-topic-submission{grid-template-columns:20px minmax(0,1fr) auto}.task-workspace .task-card-add,.task-workspace .task-card-submit{grid-column:3}.task-workspace .task-card-add{grid-row:1}.task-workspace .task-card-submit{grid-row:2}.task-workspace .task-card-meta>i{max-width:105px}}.plan-summary-main{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.plan-summary-main>strong{display:block;margin-top:13px;color:var(--ink);font-family:var(--font-display);font-size:16px;font-weight:500}.plan-summary-main>small{display:block;min-height:25px;margin-top:5px;color:#6e7b73;font-size:8px;line-height:1.45}.plan-summary-main:hover>strong{text-decoration:underline;text-decoration-color:rgba(66,82,71,.28);text-underline-offset:3px}.learning-plan-page{--plan-accent:#8fbd64;--plan-accent-soft:#e5f5d7;--plan-accent-pale:#f5faef;width:100%;max-width:1320px;margin:0 auto}.learning-plan-page.plan-accent-blue{--plan-accent:#729dcc;--plan-accent-soft:#e1edf8;--plan-accent-pale:#f3f8fc}.learning-plan-page.plan-accent-amber{--plan-accent:#c99f43;--plan-accent-soft:#f4eacb;--plan-accent-pale:#fbf8ed}.learning-plan-page.plan-accent-coral{--plan-accent:#c98362;--plan-accent-soft:#f5e1d7;--plan-accent-pale:#fcf5f1}.learning-plan-page.plan-accent-violet{--plan-accent:#9278c2;--plan-accent-soft:#ebe5f7;--plan-accent-pale:#f8f5fc}.learning-plan-topline{display:flex;min-height:34px;align-items:flex-start;justify-content:space-between;gap:20px}.learning-plan-topline .back-button{margin-bottom:0}.learning-plan-calendar-link{padding:0 0 3px;border:0;border-bottom:1px solid rgba(81,99,87,.28);color:#617067;background:transparent;font-size:10px;font-weight:750;cursor:pointer}.learning-plan-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 40px;padding:clamp(26px,4vw,48px);border:1px solid rgba(67,86,73,.12);border-radius:30px;box-shadow:0 20px 55px rgba(37,53,43,.055)}.learning-plan-heading{align-self:center}.learning-plan-heading h1{margin:0;font-family:var(--font-display);font-size:clamp(38px,5vw,62px);font-weight:500;letter-spacing:-.045em;line-height:.98}.learning-plan-heading>p:last-child{max-width:680px;margin:16px 0 0;color:#607067;font-size:13px;line-height:1.65}.learning-plan-progress-ring{display:grid;width:122px;height:122px;align-self:center;padding:9px;border-radius:50%;background:conic-gradient(var(--plan-accent) var(--plan-progress),rgba(58,76,64,.09) 0)}.learning-plan-progress-ring>span{display:grid;place-content:center;justify-items:center;border-radius:50%;background:rgba(255,255,255,.86);box-shadow:inset 0 0 0 1px rgba(63,82,68,.08)}.learning-plan-progress-ring strong{font-family:var(--font-display);font-size:29px;font-weight:500}.learning-plan-progress-ring small{margin-top:2px;color:#748078;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.learning-plan-facts{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding-top:24px;border-top:1px solid rgba(65,83,70,.12)}.learning-plan-facts>div{padding:0 22px;border-left:1px solid rgba(65,83,70,.11)}.learning-plan-facts>div:first-child{padding-left:0;border-left:0}.learning-plan-facts dt{color:#748078;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.learning-plan-facts dd{margin:7px 0 0;color:#26352d;font-family:var(--font-display);font-size:18px}.learning-roadmap-card{margin-top:18px;padding:clamp(22px,3vw,34px);border:1px solid rgba(65,82,70,.12);border-radius:25px;background:#fff;box-shadow:0 14px 42px rgba(36,52,42,.045)}.learning-plan-groups-section>header,.learning-roadmap-card>header{display:flex;align-items:end;justify-content:space-between;gap:24px}.learning-plan-groups-section h2,.learning-roadmap-card h2{margin:0;font-family:var(--font-display);font-size:clamp(25px,3vw,34px);font-weight:500;letter-spacing:-.03em}.learning-plan-groups-section>header>span,.learning-roadmap-card>header>span{color:#76827a;font-size:10px;white-space:nowrap}.learning-roadmap-card>header>span strong{color:var(--ink);font-size:12px}.learning-roadmap-scroll{margin:31px -4px 0;overflow-x:auto;padding:4px 4px 10px;scrollbar-color:rgba(80,98,86,.2) transparent;scrollbar-width:thin}.learning-roadmap{display:flex;min-width:760px;align-items:flex-end}.learning-roadmap-segments{display:flex;min-width:0;flex:1 1 auto}.learning-roadmap-segment{min-width:155px;flex:var(--segment-weight) 1 0}.learning-roadmap-segment>button{display:flex;max-width:calc(100% - 16px);min-height:43px;flex-direction:column;justify-content:flex-end;padding:0 5px 8px;border:0;background:transparent;text-align:left;cursor:pointer}.learning-roadmap-segment>button strong{overflow:hidden;max-width:100%;color:#34433a;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.learning-roadmap-segment>button small{margin-top:3px;color:#869088;font-size:8px}.learning-roadmap-segment>button:hover strong{color:#17231d}.learning-roadmap-rail{display:grid;grid-template-columns:32px minmax(60px,1fr);align-items:center}.learning-roadmap-node{position:relative;z-index:2;display:grid;width:32px;height:32px;place-items:center;border:2px solid var(--plan-accent);border-radius:50%;color:#435249;background:#fff;box-shadow:0 0 0 5px #fff;font-size:10px;font-weight:850}.learning-roadmap-segment.is-complete .learning-roadmap-node{color:#fff;background:var(--plan-accent)}.learning-roadmap-rail>i{display:block;height:5px;overflow:hidden;background:#e5eae5}.learning-roadmap-rail>i b{display:block;height:100%;background:var(--plan-accent)}.learning-roadmap-exam{display:grid;width:142px;flex:0 0 142px;grid-template-columns:32px minmax(0,1fr);align-items:center}.learning-roadmap-exam>div{grid-column:1/-1;min-height:51px;padding:0 0 8px 2px}.learning-roadmap-exam>div small,.learning-roadmap-exam>div strong{display:block}.learning-roadmap-exam>div strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.learning-roadmap-exam>div small{margin-top:3px;color:#7d8981;font-size:8px}.learning-roadmap-exam>span{display:grid;width:32px;height:32px;place-items:center;border:2px solid #17231d;border-radius:9px;color:#fff;background:#17231d;box-shadow:0 0 0 5px #fff;font-size:11px}.learning-roadmap-exam>b{min-height:32px;margin-left:7px;padding:7px 9px;border-radius:9px;color:#f7fff1;background:#26362d;font-size:8px;line-height:1.25;text-align:center}.learning-plan-groups-section{margin-top:40px}.learning-plan-groups{display:flex;flex-direction:column;gap:14px;margin-top:18px}.learning-plan-group{scroll-margin-top:96px;overflow:hidden;border:1px solid rgba(68,85,73,.13);border-radius:21px;background:#fff;box-shadow:0 12px 34px rgba(36,52,42,.038)}.learning-plan-group>header{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;padding:21px 24px 18px;background:linear-gradient(90deg,var(--plan-accent-pale),transparent 72%),#fff}.learning-plan-group-number{color:var(--plan-accent);font-family:var(--font-display);font-size:28px;line-height:1}.learning-plan-group-title>small{color:#829087;font-size:7px;font-weight:850;letter-spacing:.13em}.learning-plan-group-title h3{margin:3px 0 4px;font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.025em}.learning-plan-group-title p{margin:0;color:#78847c;font-size:9px}.learning-plan-group-status{display:grid;min-width:110px;justify-items:end}.learning-plan-group-status>strong{font-family:var(--font-display);font-size:23px;font-weight:500}.learning-plan-group-status>span{margin-top:1px;color:#7a867e;font-size:8px}.learning-plan-group-status>button{min-height:26px;margin-top:7px;padding:0 9px;border:1px solid rgba(63,81,68,.14);border-radius:8px;color:#415048;background:rgba(255,255,255,.74);font-size:7px;font-weight:800;cursor:pointer}.learning-plan-group-progress{height:4px;background:#edf0ed}.learning-plan-group-progress>span{display:block;height:100%;background:var(--plan-accent);transition:width .22s ease}.learning-plan-task-list{padding:0 24px 7px}.learning-plan-task-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:63px;margin-left:calc(var(--task-depth, 0) * 24px);border-bottom:1px solid #edf0ed}.learning-plan-task-row:last-child{border-bottom:0}.learning-plan-task-row .todo-check{width:30px}.learning-plan-task-structure{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;color:#68766d;background:#f1f4f0;font-size:10px}.learning-plan-task-row.is-topic .learning-plan-task-structure{color:#fff;background:var(--plan-accent)}.learning-plan-task-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding:11px 0;border:0;background:transparent;text-align:left;cursor:pointer}.learning-plan-task-copy strong{max-width:100%;font-size:11px;font-weight:720}.learning-plan-task-copy small{margin-top:4px;color:#7b877f;font-size:8px}.learning-plan-task-copy span{display:-webkit-box;overflow:hidden;margin-top:5px;color:#78847d;font-size:8px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.learning-plan-task-copy:hover strong{color:#476b42}.learning-plan-task-priority{min-width:48px;padding:5px 7px;border-radius:99px;color:#68756d;background:#f0f3ef;font-size:7px;font-weight:800;text-align:center}.learning-plan-task-priority.priority-high{color:#934933;background:#fff0e9}.learning-plan-task-priority.priority-low{color:#657a62;background:#edf5e9}.learning-plan-task-row.is-complete .learning-plan-task-copy strong{color:#9ba49e;text-decoration:line-through}.learning-plan-task-row.is-complete .learning-plan-task-priority{color:#668064;background:#edf5e9}.learning-plan-group-empty{display:flex;min-height:96px;align-items:center;justify-content:center;gap:10px;color:#818c85;font-size:9px}.learning-plan-group-empty>span{color:var(--plan-accent);font-size:20px}.learning-plan-group-empty p{margin:0}.learning-plan-group-empty button{padding:0 0 2px;border:0;border-bottom:1px solid #aeb9b1;background:transparent;font-size:8px;font-weight:800;cursor:pointer}.learning-plan-empty-state{display:grid;min-height:300px;place-content:center;justify-items:center;padding:42px;border:1px dashed #cbd5cc;border-radius:24px;background:#fbfcfa;text-align:center}.learning-plan-empty-state>span{color:var(--plan-accent);font-size:42px}.learning-plan-empty-state h3{max-width:460px;margin:15px 0 8px;font-family:var(--font-display);font-size:25px;font-weight:500}.learning-plan-empty-state p{max-width:520px;margin:0 0 22px;color:#748078;font-size:11px;line-height:1.6}@media (max-width:900px){.learning-plan-hero{grid-template-columns:minmax(0,1fr) 104px}.learning-plan-progress-ring{width:104px;height:104px}.learning-plan-task-row{margin-left:calc(var(--task-depth, 0) * 14px)}}@media (max-width:620px){.learning-plan-topline{min-height:40px}.learning-plan-hero{grid-template-columns:minmax(0,1fr) 80px;gap:20px 14px;padding:24px 20px;border-radius:23px}.learning-plan-progress-ring{width:80px;height:80px;padding:6px}.learning-plan-progress-ring strong{font-size:21px}.learning-plan-progress-ring small{font-size:6px}.learning-plan-heading h1{font-size:clamp(31px,10vw,43px)}.learning-plan-heading>p:last-child{grid-column:1/-1;font-size:11px}.learning-plan-facts{grid-template-columns:1fr 1fr}.learning-plan-facts>div{padding:0 13px}.learning-plan-facts>div:last-child{grid-column:1/-1;margin-top:16px;padding:14px 0 0;border-top:1px solid rgba(65,83,70,.11);border-left:0}.learning-plan-groups-section>header,.learning-roadmap-card>header{align-items:flex-start;flex-direction:column;gap:8px}.learning-roadmap-card{padding:22px 18px}.learning-plan-group>header{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:18px 16px 15px}.learning-plan-group-number{font-size:22px}.learning-plan-group-status{display:flex;grid-column:2;min-width:0;align-items:center;justify-content:flex-start;gap:8px}.learning-plan-group-status>strong{font-size:18px}.learning-plan-group-status>button,.learning-plan-group-status>span{margin-top:0}.learning-plan-task-list{padding:0 14px 6px}.learning-plan-task-row{grid-template-columns:28px minmax(0,1fr);gap:8px;margin-left:calc(var(--task-depth, 0) * 9px)}.learning-plan-task-priority{grid-column:2;justify-self:start;margin-top:-9px;margin-bottom:9px}.learning-plan-group-empty{min-height:120px;flex-direction:column;text-align:center}}@media (hover:none),(pointer:coarse){[data-context-menu=true]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}.context-action-menu{position:fixed;z-index:220;width:min(250px,calc(100vw - 20px));overflow:hidden;padding:8px;border:1px solid rgba(201,212,202,.95);border-radius:16px;color:var(--ink);background:rgba(252,254,250,.98);box-shadow:0 24px 70px rgba(21,33,25,.22),0 3px 12px rgba(21,33,25,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:context-editor-in .14s ease both}.context-action-heading{display:flex;min-width:0;flex-direction:column;padding:8px 9px 10px;border-bottom:1px solid #e8ede7}.context-action-heading small{color:#849087;font-size:6px;font-weight:900;letter-spacing:.13em}.context-action-heading strong{overflow:hidden;margin-top:4px;font-family:var(--font-display);font-size:14px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.context-action-list{display:grid;gap:3px;padding-top:6px}.context-action-list>button{display:grid;width:100%;min-height:48px;grid-template-columns:29px minmax(0,1fr);gap:9px;align-items:center;padding:7px 9px;border:0;border-radius:10px;background:transparent;text-align:left;cursor:pointer}.context-action-list>button:focus-visible,.context-action-list>button:hover{outline:0;background:#eef3eb}.context-action-list>button>span:first-child{display:grid;width:29px;height:29px;place-items:center;border-radius:9px;color:#516258;background:#e8efe4;font-size:12px;font-weight:850}.context-action-list>button>span:last-child{display:flex;min-width:0;flex-direction:column}.context-action-list>button strong{font-size:9px}.context-action-list>button small{margin-top:3px;overflow:hidden;color:#808b84;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.context-action-list>button.is-danger{color:#8f4636}.context-action-list>button.is-danger:focus-visible,.context-action-list>button.is-danger:hover{background:#faece7}.context-action-list>button.is-danger>span:first-child{color:#98503f;background:#f8e7e1}.context-delete-dialog>p{margin:0 0 23px;color:#6f7b73;font-size:11px;line-height:1.65}.context-delete-confirm{min-height:43px;padding:0 16px;border:0;border-radius:12px;color:#fff;background:#a75746;font-size:9px;font-weight:800;cursor:pointer}.plan-summary-context-hint{display:grid;width:29px;height:27px;padding:0;place-items:center;border:0;border-radius:8px;color:#748078;background:rgba(255,255,255,.58);font-size:10px;cursor:pointer}.timestamp-context-hint{display:grid;min-height:35px;place-items:center;color:#909b94;font-size:8px}.dashboard-task-copy,.learning-plan-task-copy,.task-card-main,.task-group-main,.unplanned-context-item{cursor:context-menu}.module-task-preview-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.module-task-preview-copy small{color:#738078;font-size:6px;font-weight:900;letter-spacing:.12em}.module-task-preview-copy strong{width:100%;margin-top:4px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.module-task-preview-copy span{margin-top:4px;color:#7d8981;font-size:7px}.day-entry-copy{display:flex;min-width:0;flex-direction:column;padding:0;text-align:left;cursor:context-menu}.day-entry-copy>span{display:flex;gap:5px;align-items:center;color:#79857d;font-size:7px;font-weight:800}.day-entry-copy>.day-entry-parent{margin-top:4px;color:#728479;font-size:7px;font-weight:750}.day-entry-copy>strong{margin-top:5px;font-size:10px}.day-entry.is-complete .day-entry-copy>strong{text-decoration:line-through}.day-entry-copy>small{display:-webkit-box;margin-top:4px;overflow:hidden;color:#748078;font-size:8px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.day-entry-copy>em{margin-top:6px;color:#8b958f;font-size:7px;font-style:normal}.dashboard-task-row:focus-visible,.day-entry:focus-visible,.learning-plan-task-row:focus-visible,.module-header:focus-visible,.module-task-preview>article:focus-visible,.plan-summary:focus-visible,.task-card:focus-visible,.task-group-header:focus-visible{outline:2px solid #729567;outline-offset:2px}.date-picker-field{display:flex;min-width:0;flex-direction:column;gap:7px;margin-top:13px}.date-picker-label{color:#536359;font-size:10px;font-weight:800;letter-spacing:.015em}.date-picker-trigger{display:grid;width:100%;min-width:0;min-height:62px;grid-template-columns:minmax(0,1fr) 46px;gap:12px;align-items:center;padding:7px 8px 7px 16px;border:1px solid #cbd8c9;border-radius:15px;color:#69766e;background:#f8faf6;box-shadow:0 7px 18px rgba(40,61,46,.045),inset 0 1px 0 rgba(255,255,255,.9);text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .15s ease}.date-picker-trigger:hover:not(:disabled){border-color:#9caf95;background:#fff;box-shadow:0 10px 24px rgba(40,61,46,.075),inset 0 1px 0 rgba(255,255,255,.95);transform:translateY(-1px)}.date-picker-trigger:focus-visible,.date-picker-trigger[aria-expanded=true]{outline:0;border-color:#789b6c;background:#fff;box-shadow:0 0 0 4px rgba(117,155,103,.14),0 11px 25px rgba(40,61,46,.08)}.date-picker-trigger:disabled{color:#929c95;border-color:#e0e5df;background:#f0f3ef;box-shadow:none;cursor:not-allowed;opacity:.72}.date-picker-trigger-copy{display:flex;min-width:0;flex-direction:column}.date-picker-trigger-copy small{color:#8b968e;font-size:7px;font-weight:900;letter-spacing:.12em}.date-picker-trigger-copy strong{margin-top:4px;overflow:hidden;color:#718078;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.date-picker-trigger.has-value .date-picker-trigger-copy small{color:#708b68}.date-picker-trigger.has-value .date-picker-trigger-copy strong{color:#26342b}.date-picker-trigger-icon{position:relative;display:block;width:42px;height:42px;border-radius:12px;background:#e5efdf}.date-picker-trigger-icon:before{position:absolute;inset:11px 9px 8px;border:2px solid #587052;border-radius:5px;content:""}.date-picker-trigger-icon:after{position:absolute;top:10px;left:13px;width:16px;height:7px;border-top:2px solid #587052;border-bottom:2px solid #587052;content:""}.date-picker-popover{position:fixed;z-index:260;width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow-y:auto;padding:18px;border:1px solid rgba(255,255,255,.82);border-radius:24px;color:var(--ink);background:radial-gradient(circle at 82% 8%,rgba(201,239,154,.22),transparent 9rem),#fbfcfa;box-shadow:0 30px 75px rgba(22,34,27,.24),0 0 0 1px rgba(64,82,69,.08);animation:context-editor-in .15s ease both}.date-picker-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:11px;align-items:center;margin-bottom:18px}.date-picker-header>div{display:flex;min-width:0;flex-direction:column;text-align:center}.date-picker-header small{color:#829086;font-size:7px;font-weight:900;letter-spacing:.13em}.date-picker-header strong{margin-top:4px;font-family:var(--font-display);font-size:21px;font-weight:500;text-transform:capitalize}.date-picker-header>button{display:grid;width:44px;height:44px;place-items:center;border:1px solid #dbe4d8;border-radius:13px;color:#4e6653;background:#eef4ea;font-family:var(--font-display);font-size:26px;line-height:1;cursor:pointer}.date-picker-header>button:focus-visible,.date-picker-header>button:hover:not(:disabled){outline:0;border-color:#93aa8a;background:#e4efde}.date-picker-header>button:disabled{cursor:not-allowed;opacity:.35}.date-picker-grid,.date-picker-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.date-picker-weekdays{margin-bottom:7px}.date-picker-weekdays span{display:grid;height:25px;place-items:center;color:#77847b;font-size:8px;font-weight:900;letter-spacing:.05em}.date-picker-day{display:grid;min-width:0;min-height:44px;aspect-ratio:1;place-items:center;border:1px solid transparent;border-radius:13px;color:#2c3830;background:transparent;font-size:12px;font-weight:750;cursor:pointer;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease,transform .12s ease}.date-picker-day:focus-visible,.date-picker-day:hover:not(:disabled){outline:0;border-color:#b7c9b0;background:#eaf3e5;transform:translateY(-1px)}.date-picker-day.is-outside{color:#aeb7b0}.date-picker-day.is-today{border-color:#91aa86;box-shadow:inset 0 0 0 2px #fbfcfa;background:#dfeeda}.date-picker-day.is-selected{color:#f7fff2;border-color:#355233;background:#355233;box-shadow:0 7px 15px rgba(53,82,51,.24)}.date-picker-day:disabled{color:#ccd2cd;cursor:not-allowed}.date-picker-footer{display:flex;gap:8px;justify-content:space-between;margin-top:15px;padding-top:14px;border-top:1px solid #e2e8e1}.date-picker-footer button{min-height:40px;padding:0 14px;border:1px solid #dbe4d8;border-radius:11px;color:#557050;background:#eef4ea;font-size:9px;font-weight:850;cursor:pointer}.date-picker-footer button:last-child:not(:first-child){color:#79857d;background:#fff}.date-picker-footer button:focus-visible,.date-picker-footer button:hover:not(:disabled){outline:0;border-color:#97ad8e;box-shadow:0 0 0 3px rgba(117,155,103,.12)}.date-picker-footer button:disabled{cursor:not-allowed;opacity:.4}.exam-date-list{--exam-date-width:218px}.exam-date-list>div{grid-template-columns:minmax(0,1fr) var(--exam-date-width) 42px;align-items:end}.exam-date-list .date-picker-field{margin-top:0}.exam-date-list .date-picker-trigger{min-height:52px}.exam-date-list .date-picker-trigger-icon{width:38px;height:38px}.exam-date-list .date-picker-trigger-icon:before{inset:9px 8px 7px}.exam-date-list .date-picker-trigger-icon:after{top:8px;left:12px;width:14px}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) input[type=date],:is(.task-editor-dialog,.plan-dialog,.entry-dialog) select{min-width:0;min-height:56px;border-color:#ccd8ca;border-radius:15px;color:#26342b;background-color:#f8faf6;box-shadow:0 7px 18px rgba(40,61,46,.045),inset 0 1px 0 rgba(255,255,255,.9);font-size:12px;font-weight:700;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .15s ease}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) select{appearance:none;padding:0 58px 0 16px;background-image:linear-gradient(45deg,transparent 50%,#4f6755 0),linear-gradient(135deg,#4f6755 50%,transparent 0),linear-gradient(270deg,#eaf1e6 47px,transparent 0);background-position:calc(100% - 21px) calc(50% - 2px),calc(100% - 15px) calc(50% - 2px),0 0;background-repeat:no-repeat;background-size:6px 6px,6px 6px,100% 100%;cursor:pointer}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) select option{color:#26342b;background:#fff;font-size:14px;font-weight:600}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) input[type=date]{padding:0 10px 0 16px;accent-color:#6f955f;cursor:pointer}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) input[type=date]::-webkit-datetime-edit{padding:0}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) input[type=date]::-webkit-calendar-picker-indicator{width:24px;height:24px;margin-left:12px;padding:7px;border-radius:11px;background-color:#e7f0e2;cursor:pointer;opacity:.82}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) :is(select,input[type=date]):hover:not(:disabled){border-color:#9caf95;background-color:#fff;box-shadow:0 10px 24px rgba(40,61,46,.075),inset 0 1px 0 rgba(255,255,255,.95);transform:translateY(-1px)}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) :is(select,input[type=date]):focus{border-color:#789b6c;background-color:#fff;box-shadow:0 0 0 4px rgba(117,155,103,.14),0 11px 25px rgba(40,61,46,.08);transform:translateY(-1px)}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) :is(select,input[type=date]):disabled{color:#929c95;border-color:#e0e5df;background-color:#f0f3ef;box-shadow:none;cursor:not-allowed;opacity:.72}:is(.task-editor-dialog,.plan-dialog,.entry-dialog) :is(.entry-form-grid,.plan-form-grid,.entry-parent-field) label>span,:is(.task-editor-dialog,.plan-dialog,.entry-dialog) label.entry-parent-field>span{color:#536359;font-size:10px;font-weight:800;letter-spacing:.015em}.plan-dialog .exam-date-list input[type=date]{min-height:52px}@media (max-width:640px){.date-picker-popover{padding:14px;border-radius:20px}.date-picker-header{margin-bottom:13px}.date-picker-day{min-height:39px;border-radius:11px}.exam-date-list>div{grid-template-columns:minmax(0,1fr) 42px}.exam-date-list>div .date-picker-field{grid-column:1}.exam-date-list>div>button{grid-column:2;grid-row:1/3}}@media (max-width:760px){.calendar-page{min-width:0}.calendar-hero{gap:18px;margin-bottom:18px}.calendar-hero h1{margin-bottom:6px;font-size:clamp(36px,11vw,46px)}.calendar-hero>div:first-child>p:last-child{font-size:10px;line-height:1.55}.calendar-hero-actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.calendar-hero-actions button{width:100%;min-width:0;min-height:44px;padding-right:9px;padding-left:9px;white-space:normal}.calendar-hero-actions .primary-button{grid-column:1/-1}.calendar-notice{align-items:flex-start;gap:10px;line-height:1.45}.calendar-notice button{min-width:30px;min-height:30px;margin:-6px -8px 0 0}.calendar-page>.module-filter-row{padding-right:17px;scroll-snap-type:x proximity}.calendar-page>.module-filter-row button{min-height:42px;scroll-snap-align:start}.module-filter-row .archive-filter{margin-left:0}.calendar-page>.plan-strip{grid-auto-columns:minmax(248px,88vw);padding-right:17px;scroll-snap-type:x mandatory}.plan-summary{min-height:176px;padding:16px}.plan-summary-heading>button,.plan-summary-heading>span{min-height:32px}.plan-summary-context-hint{width:36px;height:36px}.plan-summary-actions button{min-height:38px;flex:1 1}.plan-strip-empty{align-items:flex-start;flex-direction:column}.unplanned-tray{gap:10px;padding:13px}.unplanned-tray>div:last-child{margin-right:-13px;padding-right:13px}.unplanned-tray>div:last-child>span{min-height:38px;display:inline-flex;align-items:center}.month-calendar{overflow:hidden;border-radius:18px}.calendar-grid,.calendar-toolbar,.calendar-weekdays{width:100%;min-width:0!important}.calendar-toolbar{grid-template-areas:"month count" "controls controls";grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:0;padding:13px}.calendar-toolbar>div{grid-area:controls;gap:7px}.calendar-toolbar button{min-width:42px;height:42px;font-size:12px}.calendar-toolbar .today-button{flex:1 1;margin-left:0}.calendar-toolbar h2{grid-area:month;overflow:hidden;font-size:19px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.calendar-toolbar>span{grid-area:count;align-self:center;padding:5px 8px;border-radius:999px;background:#f1f4f0;white-space:nowrap}.calendar-weekdays{min-height:32px;font-size:8px}.calendar-day{min-height:72px;padding:4px 2px 5px;touch-action:manipulation}.calendar-day.outside-month{opacity:.58}.calendar-day-number{width:30px;height:30px;margin:0 auto 4px;border-radius:9px;font-size:10px}.calendar-day-content{max-height:18px;align-content:flex-start;justify-content:center;flex-flow:row wrap;gap:2px;overflow:hidden}.calendar-topic-range{width:10px;min-width:10px;height:6px;min-height:6px;margin:0!important;padding:0;border-radius:999px!important}.calendar-topic-copy,.calendar-topic-range>i{display:none}.exam-marker{width:14px;min-width:14px;height:6px;min-height:6px;padding:0;border-radius:999px;color:transparent}.calendar-overflow{width:100%;min-height:10px;padding:1px 0 0;font-size:6px;line-height:1;text-align:center}.dialog-backdrop:has(:is(.plan-dialog,.entry-dialog,.import-dialog,.reschedule-dialog)){padding:24px 0 0;place-items:end center}:is(.plan-dialog,.entry-dialog,.import-dialog,.reschedule-dialog){width:100%;max-height:calc(100dvh - 24px);padding:22px 17px max(22px,env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.plan-dialog-section>div:first-child{align-items:flex-start;flex-wrap:wrap;gap:7px}.capacity-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.capacity-grid input{min-height:44px}.import-preview>div{grid-template-columns:auto minmax(0,1fr)}.reschedule-list>div:not(.day-empty){align-items:flex-start;flex-direction:column;gap:5px;padding:10px 0}}@media (max-width:360px){.calendar-day{min-height:66px}.calendar-day-number{width:28px;height:28px}.calendar-page>.plan-strip{grid-auto-columns:minmax(232px,90vw)}}@media (max-width:620px){.profile-popover{position:fixed;top:65px;right:12px;width:min(270px,calc(100vw - 24px))}.profile-dialog-backdrop{padding:24px 0 0;place-items:end center}.profile-dialog{width:100%;max-height:calc(100dvh - 24px);padding:24px 17px max(22px,env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.passkey-create-fields,.profile-password-fields,.profile-username-form{grid-template-columns:1fr}.profile-password-current{grid-column:auto}.passkey-create-button,.profile-username-form .primary-button{width:100%;justify-content:center}.passkey-list li{grid-template-columns:auto minmax(0,1fr)}.passkey-list li>button{grid-column:2;justify-self:start}}@media (hover:none) and (pointer:coarse){.player-stage{cursor:default}.timeline,.timeline-wrap{height:32px}.timeline-wrap{margin-top:-16px}.scrub-preview{bottom:33px}.keyboard-hints{display:none}.speed-hold-badge{top:18%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}