/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:Inter, ui-sans-serif, system-ui, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--shadow:0 12px 34px #54391c12;--shadow-card:0 2px 5px #3c2b1b08;--shadow-raised:0 18px 42px #39231430;--glass:#fffaf4c9;--glass-solid:#fffaf4;--glow:#f4d6bb;--accent-soft:#e6a071;--radius-control:11px;--radius-card:11px;--radius-panel:17px;font-family:var(--font-sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#faf7f3;--panel:#fffdfa;--text:#302b27;--muted:#766c63;--line:#eee3d9;--brand:#b95b27;--button:#b95b27;--button-text:#fff;--soft:#fff0e3;--subtle:#f5f1ec;--danger:#a72f2f;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-width:320px;margin:0;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:background .15s,box-shadow .15s}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--brand);outline-offset:3px}button,input,select,textarea{color:inherit}h1,h2,p{margin:0}h1{letter-spacing:-1px;margin:7px 0 9px;font-size:30px;font-weight:650;line-height:1.2}h2{font-size:16px;font-weight:650}p{line-height:1.6}small{font-size:12px}strong,b{font-weight:600}.muted,small{color:var(--muted)}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.app-shell{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;height:100vh;padding:35px 18px 24px;display:flex;position:sticky;top:0}.brand{color:var(--text);letter-spacing:-1.5px;align-items:center;gap:9px;margin:0 12px 45px;font-size:30px;font-weight:700;text-decoration:none;display:flex}.brand-symbol{background:var(--soft);width:36px;height:36px;color:var(--brand);border-radius:12px;place-items:center;display:grid}.brand-dot{color:var(--brand);margin-left:-8px}.sidebar-caption{letter-spacing:1.6px;color:var(--muted);margin:0 12px 15px;font-size:10px;font-weight:650}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button{text-align:left;color:var(--muted);background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;min-height:46px;padding:13px 12px;font-weight:500;display:flex}.sidebar nav button.active{background:var(--soft);color:var(--brand)}.sidebar nav button:hover{background:var(--subtle)}.sidebar-courses{margin-top:38px}.sidebar-courses .sidebar-caption{margin:0 0 0 12px}.sidebar-course{color:var(--muted);align-items:center;gap:9px;margin:17px 12px;font-size:12px;display:flex}.sidebar-course span{overflow-wrap:anywhere;min-width:0}.sidebar-course svg{flex-shrink:0}.sidebar-empty{color:var(--muted);margin:12px;font-size:12px}.manage-courses{color:var(--brand);background:0 0;border:0;align-items:center;gap:5px;min-height:36px;margin:15px 12px;font-size:12px;display:flex}.sidebar-bottom{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin-top:auto;padding-top:30px;font-size:11px;display:flex}main{width:100%;min-width:0;max-width:1800px;margin:auto;padding:38px 32px 18px}.page-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:1.5px;color:var(--brand);margin-bottom:6px;font-size:10px;font-weight:650}.page-header p:not(.eyebrow){color:var(--muted);font-size:13px}.header-actions{flex-wrap:wrap;gap:9px;display:flex}.primary,.secondary,.danger,.icon-button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:9px 13px;font-size:12px;font-weight:550;display:inline-flex}.primary{background:var(--button);color:var(--button-text)}.primary:hover{filter:brightness(.96)}.secondary{background:var(--panel);border-color:var(--line)}.secondary:hover,.icon-button:hover{background:var(--soft)}.danger{color:var(--danger);background:0 0}.danger:hover{background:var(--soft)}.icon-button{background:0 0;min-width:44px;padding:8px}.today-strip{border:1px solid var(--line);background:var(--panel);border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;display:flex}.today-title{align-items:center;gap:14px;display:flex}.today-title>svg{color:var(--brand)}.today-title strong{font-size:13px}.today-title p{color:var(--muted);margin-top:3px;font-size:12px}.today-metrics{color:var(--muted);gap:28px;font-size:11px;display:flex}.today-metrics b{color:var(--text);letter-spacing:-.4px;font-size:17px;display:block}.today-activities{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:25px 0 2px;display:flex}.interval{align-items:center;gap:5px;display:flex}.interval strong{text-align:center;min-width:0;font-size:13px}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.segmented{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:3px;display:flex}.segmented button{background:0 0;border:0;border-radius:5px;min-height:32px;padding:7px 11px;font-size:12px}.segmented button[aria-pressed=true]{background:var(--soft);color:var(--brand);font-weight:600}.save-status{min-height:20px;color:var(--muted);font-size:11px}.calendar{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.day{background:var(--panel);flex-direction:column;min-width:0;display:flex}.day-header{text-align:center;border-bottom:1px solid var(--line);color:var(--muted);flex-direction:column;align-items:center;gap:3px;padding:14px 3px 9px;font-size:11px;display:flex}.day-header>span{text-transform:uppercase;letter-spacing:1px;font-size:10px}.day-header>strong{color:var(--text);font-size:25px;font-weight:500;line-height:1.4}.day-header>div{flex-wrap:wrap;justify-content:center;align-items:center;gap:1px;display:flex}.day-header small{font-size:10px}.day-edit{width:27px;height:27px;color:var(--muted);background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;display:inline-flex}.day-edit:hover,.is-today .day-header{background:var(--soft)}.is-today .day-header>strong{color:var(--brand)}.day-totals{text-align:center;border-bottom:1px solid var(--line);color:var(--muted);flex-direction:column;gap:4px;padding:9px 3px;font-size:10px;display:flex}.day-totals strong{color:var(--brand);font-weight:500}.over,.day-totals .over,.today-metrics .over b{color:var(--danger)}.day-drop{background:linear-gradient(var(--panel), var(--subtle));flex:1;min-height:285px;padding:6px}.day-empty{color:var(--muted);text-align:center;opacity:.8;padding:35px 4px;font-size:11px}.draggable{margin-bottom:7px;position:relative}.task-card{text-align:left;border:1px solid var(--line);border-left:3px solid var(--macro);background:var(--panel);overflow-wrap:anywhere;border-radius:7px;flex-direction:column;justify-content:space-between;gap:8px;width:100%;padding:10px 8px;display:flex;box-shadow:0 2px 4px #302b2704}.task-card strong{font-size:12px;font-weight:600;line-height:1.5}.task-macro{color:var(--muted);-webkit-box-orient:vertical;padding-right:34px;font-size:10px;display:-webkit-box;overflow:visible}.task-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:5px;font-size:10px;display:flex}.status{background:var(--subtle);color:var(--muted);white-space:nowrap;border-radius:4px;padding:3px 5px;font-size:10px;font-weight:500;display:inline-block}.status.todo{color:#79563a;background:#f2e7dc}.status.in_progress{color:#4b6093;background:#e7ecf9}.status.blocked{color:#944949;background:#f7e4e4}.status.done{color:#526d45;background:#e7eee4}.drag-handle{width:44px;height:44px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:4px;font-size:18px;position:absolute;top:2px;right:2px}.drag-handle:active{cursor:grabbing}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;min-width:0;padding:22px}.unassigned{min-height:160px;margin-top:24px}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.section-heading p{color:var(--muted);margin-top:5px;font-size:12px}.pill{border:1px solid var(--line);background:var(--subtle);color:var(--muted);white-space:nowrap;border-radius:6px;padding:5px 9px;font-size:11px}.unassigned-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.task-card.compact{min-height:112px}.unassigned-grid .draggable{margin:0}.empty{text-align:center;color:var(--muted);padding:30px 16px;font-size:13px;line-height:1.7}.page-footer{letter-spacing:.4px;color:var(--muted);text-align:center;margin-top:30px;padding:16px 0;font-size:10px}.tasks-layout{grid-template-columns:minmax(250px,.8fr) minmax(0,1.7fr);gap:24px;display:grid}.macro-card{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:10px;width:100%;margin-bottom:12px;padding:16px;display:block;position:relative}.tasks-layout .macro-card{padding:0}.macro-card.selected{background:var(--soft);border-color:var(--button)}.macro-card .row>strong{overflow-wrap:anywhere;align-items:center;gap:8px;font-size:13px;display:flex}.macro-card i{background:var(--macro);border-radius:3px;flex-shrink:0;width:9px;height:9px}.macro-card p{color:var(--muted);margin:9px 0;font-size:12px}.macro-card small{font-size:11px}.macro-card-main{border-radius:inherit;width:100%;color:inherit;text-align:left;background:0 0;border:0;padding:16px;display:block}.macro-card-main:hover{background:0 0}.macro-card-main .row:first-child{padding-right:34px}.macro-card-edit{z-index:1;background:var(--panel);width:34px;height:34px;position:absolute;top:8px;right:8px}.macro-detail-summary{border-bottom:1px solid var(--line);color:var(--muted);margin:-4px 0 12px;padding-bottom:12px;font-size:13px}.macro-detail-summary>p{white-space:pre-wrap;margin:0 0 12px}.macro-detail-summary dl{flex-wrap:wrap;gap:10px 24px;margin:0;display:flex}.macro-detail-summary dl>div{min-width:100px}.macro-detail-summary dt{text-transform:uppercase;letter-spacing:.05em;font-size:10px}.macro-detail-summary dd{color:var(--text);margin:2px 0 0}progress{appearance:none;background:var(--subtle);width:100%;height:5px;color:var(--macro,var(--brand));border:0;border-radius:4px;margin:12px 0 3px;display:block;overflow:hidden}progress::-webkit-progress-bar{background:var(--subtle)}progress::-webkit-progress-value{background:var(--macro,var(--brand));border-radius:4px}progress::-moz-progress-bar{background:var(--macro,var(--brand))}.task-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:15px 0;display:flex}.task-row>span:first-child{min-width:0}.task-row strong{overflow-wrap:anywhere;font-size:13px;display:block}.task-row small{margin-top:5px;font-size:11px;display:block}.task-row.child{padding-left:24px}.task-row.child strong:before{content:"↳ ";color:var(--muted)}.task-row:hover{background:var(--subtle)}.progress-grid{grid-template-columns:1fr 1fr 1.15fr;gap:18px;margin-bottom:30px;display:grid}.progress-grid .panel p:last-child{color:var(--muted);margin-top:14px;font-size:12px}.big-number{letter-spacing:-3px;margin:16px 0;font-size:60px;font-weight:500;line-height:1.3}.big-number span{color:var(--muted);margin-left:4px;font-size:30px}.big-number.smaller{letter-spacing:-1.5px;margin-top:30px;font-size:38px}.status-summary{justify-content:space-between;align-items:center;margin-top:10px;font-size:12px;display:flex}.macro-progress-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:15px;display:grid}.macro-progress-grid .macro-card{margin:0}dialog{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:15px;width:min(600px,100vw - 28px);max-height:calc(100dvh - 40px);margin:auto;padding:24px;overflow:auto;box-shadow:0 25px 100px #0003}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#302b2766}.dialog-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.dialog-header h2{letter-spacing:-.5px;font-size:20px}.field{flex-direction:column;gap:7px;min-width:0;margin-bottom:16px;font-size:12px;font-weight:550;display:flex}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--bg);border-radius:7px;width:100%;min-width:0;min-height:41px;padding:9px 10px;font-weight:400}.field textarea{resize:vertical;min-height:75px}.field small{font-size:11px;font-weight:400}.field input:disabled,.field select:disabled{opacity:.6;cursor:not-allowed}.form-grid{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.form-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:23px;padding-top:17px;display:flex}fieldset{border:1px solid var(--line);border-radius:9px;margin:10px 0;padding:14px}legend{padding:0 5px;font-size:12px;font-weight:600}.color-row{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:10px;display:grid}.field input[type=color]{padding:4px}.color-preview{color:var(--muted);align-items:center;gap:9px;font-family:monospace;font-size:12px;display:flex}.color-preview span{border-radius:4px;width:30px;height:18px}.warning{background:var(--soft);color:var(--text);border-radius:7px;margin:10px 0 18px;padding:12px;font-size:12px;line-height:1.7}.error{border:1px solid var(--danger);color:var(--danger);border-radius:8px;margin:12px 0;padding:12px;font-size:12px}.error p{margin:4px 0}.course-list>.row{border-top:1px solid var(--line);padding:12px 0;font-size:13px}.weekly-row{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr;align-items:center;gap:12px;padding-top:12px;display:grid}.weekly-row strong{font-size:13px}.weekly-row .field{margin-bottom:12px}.part-row{grid-template-columns:minmax(0,1fr) 95px 40px;align-items:center;gap:10px;display:grid}:root[data-theme=dark]{--bg:#1d1916;--panel:#28211c;--text:#f5eee7;--muted:#bcb0a5;--line:#42372f;--brand:#efaa78;--button:#d49266;--button-text:#25170d;--soft:#3e2c20;--subtle:#322a24;--danger:#f39a91}:root[data-theme=dark] .status.todo{color:#e5be96;background:#453527}:root[data-theme=dark] .status.in_progress{color:#b0c2ee;background:#2e364a}:root[data-theme=dark] .status.blocked{color:#edb0ab;background:#492d2c}:root[data-theme=dark] .status.done{color:#b5cea5;background:#2e3b2b}.auth-shell{background:var(--bg);min-height:100vh;color:var(--text);place-items:center;padding:24px;display:grid}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;width:min(440px,100%);padding:34px;box-shadow:0 20px 70px #302b270d}.auth-brand{margin:0 0 34px;font-size:25px}.auth-card h1{margin:7px 0 10px;font-size:29px}.auth-card>p:not(.eyebrow){color:var(--muted);margin-bottom:22px}.auth-card form{margin-top:24px}.auth-submit{width:100%;min-height:46px;margin-top:7px;text-decoration:none}.auth-message{background:var(--soft);border-radius:8px;margin:15px 0;padding:12px;font-size:13px}@media (width<=600px){.auth-card{padding:25px 20px}}@media (width>=1600px){main{padding:45px 46px}.day-drop{min-height:340px}.task-card strong{font-size:13px}.task-meta,.task-macro{font-size:11px}}@media (width<=1200px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding:30px 10px 20px}main{padding:30px 20px 15px}.page-header{align-items:flex-start}.header-actions{justify-content:flex-end;max-width:185px}.today-metrics{gap:16px}.task-card{padding:9px 6px}.progress-grid{grid-template-columns:1fr 1fr}.progress-grid>.panel:last-child{grid-column:1/-1}}@media (width<=900px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:15px;height:auto;padding:15px 20px;display:grid;position:static}.brand{margin:0;font-size:25px}.brand-symbol{width:30px;height:30px}.sidebar>.sidebar-caption,.sidebar-courses,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row;justify-content:flex-end;gap:4px}.sidebar nav button{padding:10px 12px;font-size:12px}.sidebar nav button svg{width:16px}.tasks-layout{grid-template-columns:1fr 1.4fr}.calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px}.day-drop{min-height:160px}.day-header{flex-direction:row;justify-content:center;gap:10px;padding:10px}.day-header small{display:none}.day-header>strong{font-size:20px}.task-macro{font-size:11px}.task-card strong{font-size:13px}.day-totals{flex-direction:row;justify-content:center;gap:12px;font-size:11px}.drag-handle{width:32px;height:32px}.day-edit{width:36px;height:36px}}.admin-panel{padding:clamp(16px,3vw,28px)}.admin-heading,.admin-pagination,.admin-pagination>div{justify-content:space-between;align-items:center;gap:14px;display:flex}.admin-heading h2{margin:0;font-size:20px}.admin-heading .muted,.admin-pagination{font-size:13px}.admin-filters{flex-wrap:wrap;align-items:end;gap:12px;margin:22px 0;display:flex}.admin-filters .field{min-width:min(100%,250px)}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);padding:13px 10px}.admin-table th{color:var(--muted);font-size:12px;font-weight:650}.account-status{background:var(--soft);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:650;display:inline-flex}.status-active{color:#25714d}.status-inactive{color:#a0443d}.admin-message{padding:18px 0}.admin-pagination{padding-top:16px}.admin-pagination>div{justify-content:flex-end}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dialog-body{padding:20px}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}@media (width<=650px){.admin-filters{align-items:stretch}.admin-filters .field{width:100%}.admin-table thead{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{width:100%;display:block}.admin-table tr{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);margin:10px 0;padding:9px 12px}.admin-table td{overflow-wrap:anywhere;border:0;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.admin-table td:before{content:attr(data-label);color:var(--muted);font-size:12px}}@media (width<=600px){body{font-size:14px}.sidebar{flex-wrap:wrap;gap:12px;padding:13px 14px;display:flex}.brand{font-size:25px}.sidebar nav{justify-content:stretch;width:100%}.sidebar nav button{flex:1;justify-content:center;gap:6px;padding:10px 6px}.sidebar nav button svg{width:17px}main{padding:24px 14px 12px}.page-header{margin-bottom:22px;display:block}h1{font-size:28px}.header-actions{justify-content:flex-start;max-width:none;margin-top:17px}.primary,.secondary,.icon-button,.danger{min-height:44px}.today-strip{padding:15px;display:block}.today-metrics{justify-content:space-between;gap:8px;margin-top:18px}.today-metrics b{font-size:16px}.toolbar{gap:14px}.interval{justify-content:space-between;width:100%}.interval strong{min-width:0}.toolbar-actions{justify-content:space-between;gap:6px;width:100%}.toolbar-actions>.secondary{padding:8px;font-size:11px}.segmented button{min-height:36px}.calendar{grid-template-columns:1fr}.day-drop{min-height:110px;padding:10px}.day-empty{padding:18px}.day-header{justify-content:space-between;padding:9px 16px}.day-header>span{min-width:35px}.day-header>strong{margin-right:auto}.day-totals{justify-content:space-between;padding:10px 16px}.task-card strong{font-size:14px}.task-meta{font-size:12px}.task-card{gap:8px;padding:12px}.status{font-size:11px}.drag-handle{width:40px;height:40px}.task-macro{padding-right:34px}.panel{padding:17px}.unassigned-grid{grid-template-columns:1fr}.task-card.compact{min-height:112px}.tasks-layout,.progress-grid{grid-template-columns:1fr}.progress-grid>.panel:last-child{grid-column:auto}.big-number{margin:10px 0;font-size:48px}.macro-progress-grid{grid-template-columns:1fr}.weekly-row{grid-template-columns:80px 1fr;gap:8px}dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:18px}.field input,.field select,.field textarea{min-height:44px;font-size:16px}.color-row{gap:7px}.color-row input{padding:5px}.form-grid{gap:0 10px}.part-row{grid-template-columns:minmax(0,1fr) 75px 35px;gap:7px}.form-footer{gap:5px}.form-footer button{padding:9px;font-size:11px}.sidebar-course{font-size:13px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.mobile-courses{display:none}@media (width<=900px){.mobile-courses{display:inline-flex}}@media (pointer:coarse){.day-edit,.drag-handle{min-width:44px;min-height:44px}}main{max-width:1600px;margin:0 auto;padding:24px clamp(18px,3vw,42px) 32px}h1{letter-spacing:-1.1px;font-size:clamp(25px,3vw,34px);font-weight:750}.page-header{margin-bottom:24px}.sidebar{background:var(--glass-solid);z-index:10;gap:18px;padding:16px;box-shadow:5px 0 24px #54391c06}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar{background:var(--glass);-webkit-backdrop-filter:blur(20px)saturate(130%)}}.brand{letter-spacing:-.8px;margin:0 8px 12px;font-size:25px}.brand-name .brand-dot{margin-left:0}.brand-symbol{background:linear-gradient(145deg, var(--accent-soft), var(--brand));color:var(--button-text);flex-shrink:0;box-shadow:0 5px 12px #a64d2826}.sidebar-caption{margin-bottom:7px}.sidebar nav{gap:4px}.sidebar nav button{border-radius:var(--radius-control)}.sidebar nav button svg{flex-shrink:0}.sidebar nav button.active{background:var(--soft);color:var(--brand);font-weight:650}.sidebar-courses{min-height:0;margin-top:8px;overflow-y:auto}.sidebar-bottom{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:13px 8px}.menu-toggle-row{justify-content:flex-end;display:flex}.mobile-toggle,.compact-courses{display:none}.primary,.secondary,.danger,.icon-button,.field input,.field select,.field textarea{border-radius:var(--radius-control)}.primary{font-weight:700;box-shadow:0 5px 13px #b95b2730}.primary:hover{background:var(--brand);box-shadow:0 7px 18px #b95b2740}.segmented{background:var(--subtle);border-radius:var(--radius-control);border:0}.segmented button{color:var(--muted);border-radius:8px}.segmented button[aria-pressed=true]{background:var(--panel);color:var(--text);box-shadow:0 1px 4px #36231312}.today-strip{background:radial-gradient(ellipse at 96% 5%, var(--glow), transparent 45%), var(--panel);border-radius:20px;box-shadow:0 5px 22px #68401a08}.today-title>svg{box-sizing:content-box;background:var(--soft);border-radius:15px;flex-shrink:0;padding:11px}.today-metrics{gap:18px}.today-metrics>span{border-left:1px solid var(--line);padding-left:17px}.panel,.calendar{border-radius:var(--radius-panel);box-shadow:var(--shadow)}.day-header{padding:13px 8px 11px}.day-header>strong{font-size:22px;font-weight:760}.is-today .day-header{background:linear-gradient(180deg, var(--soft), var(--panel))}.day-drop{background:var(--panel);transition:background .18s,box-shadow .18s}.task-card{border-radius:var(--radius-card);background:var(--panel);box-shadow:var(--shadow-card);transition:box-shadow .18s,border-color .18s}.task-card:hover{box-shadow:0 5px 13px #3c2b1b13}.task-card strong{font-weight:700;line-height:1.35}.task-macro{display:block}.status{border-radius:6px}.macro-card{box-shadow:var(--shadow-card);border-radius:15px}.task-row{border-radius:9px;padding-right:8px}.pill,fieldset,.warning,.error{border-radius:var(--radius-control)}.unassigned{background:var(--glass-solid);border-style:dashed}dialog{box-shadow:var(--shadow-raised);border-radius:20px}.drop-over{box-shadow:inset 0 0 0 2px var(--accent-soft);background:var(--soft)!important}.draggable.grabbed{opacity:.22}.draggable.grabbed .task-card{box-shadow:none;transform:scale(.98)}.drag-ghost{pointer-events:none;opacity:.97;transform:rotate(-2deg)scale(1.045)}.drag-ghost .task-card{border-color:var(--accent-soft);border-left-color:var(--macro);box-shadow:var(--shadow-raised)}.drag-handle{z-index:1}:root[data-theme=dark]{--glass:#28211ccc;--glass-solid:#28211c;--glow:#533723;--accent-soft:#d49266;--shadow:0 12px 34px #0003;--shadow-card:0 2px 5px #0002;--shadow-raised:0 18px 42px #0007}@media (width>=901px){.menu-compact{grid-template-columns:68px minmax(0,1fr)}.menu-compact .sidebar{align-items:center;padding:16px 8px}.menu-compact .brand{margin:0}.menu-compact .brand-name,.menu-compact .sidebar-caption,.menu-compact .nav-text,.menu-compact .sidebar-courses{display:none}.menu-compact nav{width:100%}.menu-compact nav button{justify-content:center;padding:10px 0}.menu-compact .compact-courses{display:inline-flex}.menu-compact [data-tooltip]{position:relative}.menu-compact [data-tooltip]:hover:after,.menu-compact [data-tooltip]:focus-visible:after{content:attr(data-tooltip);background:var(--text);color:var(--bg);white-space:nowrap;box-shadow:var(--shadow);border-radius:9px;padding:8px 12px;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)}}@media (width<=900px){main{padding:24px 20px 18px}.sidebar{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}.menu-toggle-row{order:2;margin-left:auto}.mobile-toggle{display:inline-flex}.desktop-toggle{display:none}.sidebar .brand{margin:0}.sidebar nav{flex:1 0 100%;order:3;justify-content:stretch}.sidebar nav button{flex:1;justify-content:center;min-width:0}.mobile-menu-compact .nav-text{display:none}.mobile-menu-compact nav button:after{content:attr(data-tooltip);display:none}.mobile-menu-compact nav button:focus-visible:after,.mobile-menu-compact nav button:hover:after{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:8px;font-size:11px;display:block;position:absolute;top:100%}.mobile-menu-compact nav button{position:relative}.day-header>strong{font-size:20px}}@media (width<=600px){main{padding:20px 12px 18px}.sidebar{padding:12px}.sidebar nav button{gap:5px;padding:10px 4px;font-size:11px}.today-metrics{gap:8px}.today-metrics>span{padding-left:8px}.today-metrics>span:first-child{border:0;padding-left:0}.day-header{padding:9px 12px}.field input,.field select,.field textarea{min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.drag-ghost,.draggable.grabbed .task-card{transform:none}.draggable{transform:none!important}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.profile-button{text-align:left;justify-content:flex-start;width:100%;min-height:44px}.profile-button svg{color:var(--brand);flex-shrink:0}.profile-button:hover,.profile-button.active{background:var(--soft);border-color:var(--accent-soft);color:var(--brand)}h1:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:4px}.settings-panel{max-width:760px}.settings-description{margin-top:8px;font-size:13px}.theme-options{border:0;margin:24px 0 0;padding:0}.theme-options legend{margin-bottom:12px;padding:0}.theme-option{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);cursor:pointer;align-items:center;gap:14px;min-height:76px;margin-top:10px;padding:16px;display:flex}.theme-option:has(input:checked){background:var(--soft);border-color:var(--accent-soft)}.theme-option:has(input:focus-visible){outline:3px solid var(--brand);outline-offset:3px}.theme-option svg{color:var(--brand);flex-shrink:0}.theme-option input{width:18px;height:18px;accent-color:var(--brand);flex-shrink:0;margin:0}.theme-option strong,.theme-option small{display:block}.theme-option small{margin-top:4px;font-size:12px;line-height:1.45}@media (width>=901px){.menu-compact .profile-button{justify-content:center;width:44px;padding:8px;display:flex}.menu-compact .profile-label{display:none}}@media (width<=900px){.sidebar{flex-direction:row}.sidebar .profile-button{order:2;justify-content:center;width:44px;min-width:44px;margin:0;padding:8px;display:flex}.sidebar .profile-label{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
