@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./rubik-arabic-wght-normal.CGnJ-sf6.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./rubik-cyrillic-ext-wght-normal.BjodpZir.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./rubik-cyrillic-wght-normal.DveCct9I.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./rubik-hebrew-wght-normal.BIkpbuMU.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./rubik-latin-ext-wght-normal.OacczzuJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./rubik-latin-wght-normal.CnQIisVs.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-vietnamese-wght-normal.DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-wght-normal.XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.flatpickr-calendar{opacity:0;text-align:center;visibility:hidden;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;direction:ltr;background:#fff;border:0;border-radius:5px;width:307.875px;padding:0;font-size:14px;line-height:24px;animation:none;display:none;position:absolute;box-shadow:1px 0 #e6e6e6,-1px 0 #e6e6e6,0 1px #e6e6e6,0 -1px #e6e6e6,0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;visibility:visible;max-height:640px}.flatpickr-calendar.open{z-index:99999;display:inline-block}.flatpickr-calendar.animate.open{animation:.3s cubic-bezier(.23,1,.32,1) fpFadeInDown}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{border-top:1px solid #e6e6e6;height:40px}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{pointer-events:none;content:"";border:solid #0000;width:0;height:0;display:block;position:absolute;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{display:inline-block;position:relative}.flatpickr-months{display:flex}.flatpickr-months .flatpickr-month{color:#000000e6;fill:#000000e6;text-align:center;-webkit-user-select:none;user-select:none;background:0 0;flex:1;height:34px;line-height:1;position:relative;overflow:hidden}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;user-select:none;cursor:pointer;z-index:3;color:#000000e6;fill:#000000e6;height:34px;padding:10px;text-decoration:none;position:absolute;top:0}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{fill:inherit;transition:fill .1s}.numInputWrapper{height:auto;position:relative}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numInputWrapper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numInputWrapper span{opacity:0;cursor:pointer;box-sizing:border-box;border:1px solid #39393926;width:14px;height:50%;padding:0 4px 0 2px;line-height:50%;position:absolute;right:0}.numInputWrapper span:hover{background:#0000001a}.numInputWrapper span:active{background:#0003}.numInputWrapper span:after{content:"";display:block;position:absolute}.numInputWrapper span.arrowUp{border-bottom:0;top:0}.numInputWrapper span.arrowUp:after{border-bottom:4px solid #39393999;border-left:4px solid #0000;border-right:4px solid #0000;top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-top:4px solid #39393999;border-left:4px solid #0000;border-right:4px solid #0000;top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#00000080}.numInputWrapper:hover{background:#0000000d}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;color:inherit;text-align:center;width:75%;height:34px;padding:7.48px 0 0;font-weight:300;line-height:1;display:inline-block;position:absolute;left:12.5%;transform:translate(0,0)}.flatpickr-current-month span.cur-month{color:inherit;margin-left:.5ch;padding:0;font-family:inherit;font-weight:700;display:inline-block}.flatpickr-current-month span.cur-month:hover{background:#0000000d}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#000000e6}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#000000e6}.flatpickr-current-month input.cur-year{box-sizing:border-box;color:inherit;cursor:text;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;vertical-align:initial;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0 0 0 .5ch;display:inline-block}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{color:#00000080;pointer-events:none;background:0 0;font-size:100%}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;height:auto;font-family:inherit;font-weight:300;line-height:inherit;vertical-align:initial;background:0 0;border:none;border-radius:0;outline:none;width:auto;margin:-1px 0 0;padding:0 0 0 .5ch;position:relative}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:#0000000d}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#0000;outline:none;padding:0}.flatpickr-weekdays{text-align:center;background:0 0;align-items:center;width:100%;height:28px;display:flex;overflow:hidden}.flatpickr-weekdays .flatpickr-weekdaycontainer{flex:1;display:flex}span.flatpickr-weekday{cursor:default;color:#0000008a;text-align:center;background:0 0;flex:1;margin:0;font-size:90%;font-weight:bolder;line-height:1;display:block}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{align-items:flex-start;width:307.875px;display:flex;position:relative;overflow:hidden}.flatpickr-days:focus{outline:0}.dayContainer{text-align:left;box-sizing:border-box;opacity:1;outline:0;flex-wrap:wrap;justify-content:space-around;width:307.875px;min-width:307.875px;max-width:307.875px;padding:0;display:flex;transform:translate(0,0)}.dayContainer+.dayContainer{box-shadow:-1px 0 #e6e6e6}.flatpickr-day{box-sizing:border-box;color:#393939;cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:150px;flex-basis:14.2857%;justify-content:center;width:14.2857%;max-width:39px;height:39px;margin:0;font-weight:400;line-height:39px;display:inline-block;position:relative}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;background:#e6e6e6;border-color:#e6e6e6;outline:0}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{color:#fff;background:#959ea9;border-color:#959ea9}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{-webkit-box-shadow:none;box-shadow:none;color:#fff;background:#569ff7;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){box-shadow:-10px 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;box-shadow:-5px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3939394d;cursor:default;background:0 0;border-color:#0000}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3939391a}.flatpickr-day.week.selected{border-radius:0;box-shadow:-5px 0 #569ff7,5px 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;box-shadow:1px 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{color:#3939394d;cursor:default;background:0 0;border:none;width:100%;max-width:none;display:block}.flatpickr-innerContainer{box-sizing:border-box;display:flex;overflow:hidden}.flatpickr-rContainer{box-sizing:border-box;padding:0;display:inline-block}.flatpickr-time{text-align:center;box-sizing:border-box;outline:0;height:0;max-height:40px;line-height:40px;display:flex;overflow:hidden}.flatpickr-time:after{content:"";clear:both;display:table}.flatpickr-time .numInputWrapper{float:left;flex:1;width:40%;height:40px}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{-webkit-box-shadow:none;box-shadow:none;text-align:center;height:inherit;line-height:inherit;color:#393939;box-sizing:border-box;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0;font-size:14px;position:relative}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{border:0;outline:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;-webkit-user-select:none;user-select:none;align-self:center;width:2%;font-weight:700}.flatpickr-time .flatpickr-am-pm{cursor:pointer;text-align:center;outline:0;width:18%;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@keyframes fpFadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0,0)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ds-background-100:#fff;--ds-background-200:#fafafa;--ds-gray-100:#f2f2f2;--ds-gray-200:#ebebeb;--ds-gray-300:#e6e6e6;--ds-gray-400:#ebebeb;--ds-gray-500:#c9c9c9;--ds-gray-600:#a8a8a8;--ds-gray-700:#8f8f8f;--ds-gray-800:#7d7d7d;--ds-gray-900:#666;--ds-gray-1000:#171717;--ds-gray-alpha-100:#0000000d;--ds-gray-alpha-200:#00000014;--ds-gray-alpha-300:#0000001a;--ds-gray-alpha-400:#00000014;--ds-gray-alpha-500:#00000036;--ds-gray-alpha-600:#00000057;--ds-gray-alpha-700:#00000070;--ds-gray-alpha-800:#00000082;--ds-gray-alpha-900:#0000009c;--ds-gray-alpha-1000:#000000e8;--ds-blue-100:#f0f7ff;--ds-blue-200:#ebf5ff;--ds-blue-300:#e0f0ff;--ds-blue-400:#cce6ff;--ds-blue-500:#99ceff;--ds-blue-600:#52aeff;--ds-blue-700:#0072f5;--ds-blue-800:#0062d1;--ds-blue-900:#0068d6;--ds-blue-1000:#00254d;--ds-red-100:#fff0f0;--ds-red-200:#ffebeb;--ds-red-300:#ffe6e6;--ds-red-400:#fdd8d8;--ds-red-500:#f8b9b9;--ds-red-600:#f87275;--ds-red-700:#e5484d;--ds-red-800:#da2f35;--ds-red-900:#cb2a2f;--ds-red-1000:#391417;--ds-amber-100:#fff6e6;--ds-amber-200:#fff4d6;--ds-amber-300:#fef0cd;--ds-amber-400:#ffdd8f;--ds-amber-500:#ffc96b;--ds-amber-600:#f5b047;--ds-amber-700:#ffb224;--ds-amber-800:#ff990a;--ds-amber-900:#a35200;--ds-amber-1000:#4e2009;--ds-green-100:#effbef;--ds-green-200:#ebfaeb;--ds-green-300:#daf6da;--ds-green-400:#c6f1c7;--ds-green-500:#99e69e;--ds-green-600:#6cda75;--ds-green-700:#45a557;--ds-green-800:#398e4a;--ds-green-900:#297a3a;--ds-green-1000:#1b311e;--ds-purple-100:#f9f0ff;--ds-purple-200:#f9f1fe;--ds-purple-300:#f4e8fc;--ds-purple-400:#eddcf9;--ds-purple-500:#d5b1f1;--ds-purple-600:#bf89ec;--ds-purple-700:#8e4ec6;--ds-purple-800:#763da9;--ds-purple-900:#7820bc;--ds-purple-1000:#2e004d;--ds-teal-700:#12a594;--ds-teal-900:#067a6e;--radius-small:6px;--radius-medium:8px;--radius-large:12px;--radius-xlarge:16px;--radius-full:999px;--shadow-border:0 0 0 1px var(--ds-gray-alpha-400);--shadow-small:0 1px 2px #0000000d;--shadow-medium:0 2px 2px #0000000a, 0 8px 8px -8px #0000000a;--shadow-menu:0 1px 1px #00000005, 0 4px 8px -4px #0000000a, 0 16px 24px -8px #0000000f;--shadow-modal:0 8px 12px -4px #0000000f, 0 24px 48px -12px #00000024;--surface:var(--ds-background-100);--surface-sunken:var(--ds-background-200);--surface-raised:var(--ds-background-100);--surface-hover:var(--ds-gray-100);--surface-active:var(--ds-gray-200);--text:var(--ds-gray-1000);--text-secondary:var(--ds-gray-900);--text-tertiary:var(--ds-gray-700);--border:var(--ds-gray-alpha-400);--border-strong:var(--ds-gray-alpha-500);--focus:var(--ds-blue-900);--scrollbar-thumb:var(--ds-gray-alpha-500);--scrollbar-thumb-hover:var(--ds-gray-alpha-600);--reveal-rim:#0000004d;--reveal-size:260px;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--duration:.15s;--sidebar-width:248px;--sidebar-rail-width:56px;--topbar-height:56px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Rubik Variable,-apple-system,blinkmacsystemfont,Segoe UI,sans-serif}*{scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:var(--scrollbar-thumb);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ds-background-100:#0a0a0a;--ds-background-200:#000;--ds-gray-100:#1a1a1a;--ds-gray-200:#1f1f1f;--ds-gray-300:#292929;--ds-gray-400:#2e2e2e;--ds-gray-500:#454545;--ds-gray-600:#878787;--ds-gray-700:#8f8f8f;--ds-gray-800:#7d7d7d;--ds-gray-900:#a1a1a1;--ds-gray-1000:#ededed;--ds-gray-alpha-100:#ffffff0f;--ds-gray-alpha-200:#ffffff17;--ds-gray-alpha-300:#ffffff21;--ds-gray-alpha-400:#ffffff24;--ds-gray-alpha-500:#ffffff3d;--ds-gray-alpha-600:#ffffff82;--ds-gray-alpha-700:#ffffff8a;--ds-gray-alpha-800:#ffffff78;--ds-gray-alpha-900:#ffffff9c;--ds-gray-alpha-1000:#ffffffeb;--ds-blue-100:#0f1c2e;--ds-blue-200:#10233d;--ds-blue-300:#0f2f57;--ds-blue-400:#0d3868;--ds-blue-500:#0a4380;--ds-blue-600:#0090ff;--ds-blue-700:#0072f5;--ds-blue-800:#0062d1;--ds-blue-900:#52a8ff;--ds-blue-1000:#ebf6ff;--ds-red-100:#2a1314;--ds-red-200:#3c1618;--ds-red-300:#561a1e;--ds-red-400:#671e21;--ds-red-500:#832126;--ds-red-600:#e5484d;--ds-red-700:#e5484d;--ds-red-800:#d93036;--ds-red-900:#ff6166;--ds-red-1000:#feecee;--ds-amber-100:#291800;--ds-amber-200:#331b00;--ds-amber-300:#4d2a00;--ds-amber-400:#573300;--ds-amber-500:#6b4105;--ds-amber-600:#e79d13;--ds-amber-700:#ffb224;--ds-amber-800:#ff990a;--ds-amber-900:#f2a20d;--ds-amber-1000:#fef3dc;--ds-green-100:#0b2212;--ds-green-200:#0f2e18;--ds-green-300:#12361b;--ds-green-400:#0c451b;--ds-green-500:#126426;--ds-green-600:#1a9338;--ds-green-700:#45a557;--ds-green-800:#398e4a;--ds-green-900:#62c073;--ds-green-1000:#e5fbea;--ds-purple-100:#231528;--ds-purple-200:#2e1938;--ds-purple-300:#422154;--ds-purple-400:#4f2768;--ds-purple-500:#5f2e85;--ds-purple-600:#8e4ec6;--ds-purple-700:#8e4ec6;--ds-purple-800:#763da9;--ds-purple-900:#bf7af0;--ds-purple-1000:#f8edfc;--ds-teal-700:#14b8a5;--ds-teal-900:#25d0b9;--shadow-small:0 1px 2px #0006;--shadow-medium:0 2px 4px #0006, 0 8px 8px -8px #0006;--shadow-menu:0 1px 1px #0006, 0 4px 8px -4px #0006, 0 16px 24px -8px #00000080;--shadow-modal:0 8px 12px -4px #00000080, 0 24px 48px -12px #000000b3;--reveal-rim:#ffffff73;--surface:var(--ds-background-100);--surface-sunken:#121212;--surface-raised:#1c1c1c;--surface-hover:var(--ds-gray-200);--surface-active:var(--ds-gray-300)}*,:before,:after{box-sizing:border-box}html{background:var(--surface);-webkit-text-size-adjust:100%;min-width:320px}body{min-width:320px;min-height:100vh;color:var(--text);background:var(--surface);margin:0;font-size:14px;line-height:1.5}body.no-scroll{overflow:hidden}button,input,textarea,select{font:inherit;letter-spacing:inherit}button,a,label,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}[hidden]{display:none!important}::selection{background:var(--ds-blue-400);color:var(--ds-blue-1000)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.build-signature{color:var(--text-tertiary);white-space:nowrap;align-items:center;gap:4px;font-size:11px;line-height:1;display:flex}.build-signature img{flex:none;width:14px;height:14px}.tabular,.stat strong,.nav-link small,.stage-lane-count,.calendar-day>.calendar-date,kbd{font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);height:100dvh;transition:grid-template-columns .2s var(--ease);display:grid;overflow:hidden}.route-progress{z-index:200;pointer-events:none;opacity:0;height:2px;transition:opacity .1s var(--ease);position:fixed;top:0;left:0;right:0;overflow:hidden}.route-progress:before{background:var(--ds-blue-700);content:"";width:42%;position:absolute;inset:0 auto 0 0;transform:translate(-110%)}.route-progress[data-active=true]{opacity:1}.route-progress[data-active=true]:before{animation:route-progress 1s var(--ease-out) infinite}@keyframes route-progress{0%{transform:translate(-110%)}65%{width:54%}to{width:54%;transform:translate(290%)}}.sidebar{z-index:30;width:var(--sidebar-width);border-right:1px solid var(--border);background:var(--surface-sunken);height:100dvh;transition:width .2s var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.brand-row{min-height:var(--topbar-height);align-items:center;gap:8px;padding:0 12px 0 16px;display:flex}.brand{align-items:center;min-height:40px;text-decoration:none;display:flex}.brand-wordmark,.brand-logo{flex:none;width:104px;max-width:100%;height:auto;display:block}.sidebar-section{padding:4px 8px}.sidebar-section+.sidebar-section{padding-top:8px}.main-nav,.settings-nav,.boards-nav nav{gap:1px;display:grid}.nav-link{border-radius:var(--radius-small);min-height:32px;color:var(--text-secondary);transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);align-items:center;gap:10px;padding:0 10px;font-size:13px;font-weight:400;text-decoration:none;display:flex;position:relative}.nav-link:hover{color:var(--text);background:var(--surface-hover)}.nav-link.active{color:var(--text);background:var(--surface-active);font-weight:500}.nav-link svg{color:var(--text-tertiary);flex:none}.nav-link.active svg,.nav-link:hover svg{color:var(--text)}.nav-link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nav-link small{color:var(--text-tertiary);margin-left:auto;padding-left:8px;font-size:11px}.boards-nav{overscroll-behavior:contain;flex-direction:column;min-height:0;padding:8px 8px 12px;display:flex;overflow-y:auto}.nav-section-header{min-height:28px;color:var(--text-tertiary);letter-spacing:.02em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:2px;padding:0 2px 0 10px;font-size:11px;font-weight:500;display:flex}.nav-section-header .icon-button{width:24px;height:24px}.sidebar-spacer{flex:1;min-height:8px}.sidebar>.build-signature{justify-content:center;padding:8px 8px 10px;font-size:10px}.sidebar>.build-signature img{width:12px;height:12px}.settings-nav{border-top:1px solid var(--border);padding:8px}.nav-button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.user-row{border-top:1px solid var(--border);min-height:60px;color:var(--text);transition:background-color var(--duration) var(--ease);align-items:center;gap:10px;padding:10px 16px;text-decoration:none;display:flex}.user-row:hover{background:var(--surface-hover)}.user-row>span:last-child{min-width:0;display:grid}.user-row strong,.user-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-row strong{letter-spacing:-.01em;font-size:13px;font-weight:500}.user-row small{color:var(--text-tertiary);font-size:11px}.avatar{border-radius:var(--radius-full);width:28px;height:28px;color:var(--surface);background:var(--ds-gray-1000);box-shadow:var(--shadow-border);letter-spacing:.02em;text-transform:uppercase;flex:none;place-items:center;font-size:10px;font-weight:600;display:grid}.avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.avatar.large{width:40px;height:40px;font-size:13px}.profile-identity{align-items:center;gap:10px;margin-bottom:14px;display:flex}.profile-identity>span:last-child{gap:3px;display:grid}.profile-identity strong{font-size:14px;font-weight:500}.profile-identity small{color:var(--text-tertiary);font-size:12px}.sidebar-scrim{display:none}:root[data-sidebar=collapsed]{--sidebar-width:var(--sidebar-rail-width)}:root[data-sidebar=collapsed] .sidebar .nav-link span,:root[data-sidebar=collapsed] .sidebar .nav-link small,:root[data-sidebar=collapsed] .sidebar .nav-section-header span,:root[data-sidebar=collapsed] .sidebar .user-row>span:last-child,:root[data-sidebar=collapsed] .sidebar>.build-signature{display:none}:root[data-sidebar=collapsed] .sidebar .brand-row,:root[data-sidebar=collapsed] .sidebar .nav-section-header,:root[data-sidebar=collapsed] .sidebar .user-row{justify-content:center;gap:0;padding-inline:8px}:root[data-sidebar=collapsed] .sidebar .brand-logo{width:24px}:root[data-sidebar=collapsed] .sidebar .nav-link{justify-content:center;gap:0;min-height:40px;padding:0}:root[data-sidebar=collapsed] .sidebar .user-row{border-radius:var(--radius-small);border-top:0;align-self:center;width:40px;min-height:40px;margin:8px;padding:0}.workspace{background:var(--surface);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.topbar{z-index:20;min-height:var(--topbar-height);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 80%, transparent);-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);flex:none;align-items:center;gap:12px;padding:0 24px;display:flex}.menu-button{margin-left:-8px}.breadcrumbs{min-width:0;color:var(--text-tertiary);align-items:center;gap:8px;font-size:13px;display:flex}.breadcrumbs a{border-radius:var(--radius-small);color:inherit;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);margin:0 -6px;padding:3px 6px;text-decoration:none}.breadcrumbs a:hover{color:var(--text);background:var(--surface-hover)}.breadcrumbs .separator{color:var(--ds-gray-500);-webkit-user-select:none;user-select:none}.breadcrumbs>span:last-child{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.search-control{border-radius:var(--radius-small);width:240px;height:32px;color:var(--text-tertiary);background:var(--surface);box-shadow:var(--shadow-border);font:inherit;text-align:left;cursor:text;transition:box-shadow var(--duration) var(--ease);border:0;align-items:center;gap:8px;padding:0 10px;display:flex}.search-control:hover{box-shadow:0 0 0 1px var(--ds-gray-alpha-500)}.search-control:focus-within{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent)}.search-control svg{flex:none;width:14px;height:14px}.search-control-value{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;display:block;overflow:hidden}.search-control kbd{height:18px;color:var(--text-tertiary);background:var(--surface-hover);white-space:nowrap;border-radius:4px;align-items:center;padding:0 5px;font-size:10px;display:inline-flex}.mobile-search-button{display:none}.command-palette-layer{padding-top:min(14vh,120px)}.command-palette{width:min(620px,100%);overflow:hidden}.command-palette-search{border-bottom:1px solid var(--border);height:54px;color:var(--text-tertiary);align-items:center;gap:10px;padding:0 14px 0 18px;display:flex}.command-palette-search>input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:15px}.command-palette-results{gap:2px;max-height:min(480px,58vh);padding:8px;display:grid;overflow-y:auto}.command-palette-results>a{border-radius:var(--radius-medium);min-height:48px;color:var(--text);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px;text-decoration:none;display:grid}.command-palette-results>a.active{background:var(--surface-hover)}.command-palette-results>a>span:nth-child(2){gap:2px;min-width:0;display:grid}.command-palette-results strong,.command-palette-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-palette-results strong{font-size:13px;font-weight:600}.command-palette-results small{color:var(--text-tertiary);font-size:11px}.command-palette-icon{border-radius:var(--radius-small);width:30px;height:30px;color:var(--text-secondary);background:var(--surface-raised);box-shadow:var(--shadow-border);place-items:center;display:grid}.command-palette-empty{color:var(--text-tertiary);text-align:center;justify-items:center;gap:5px;padding:44px 20px;display:grid}.command-palette-empty strong{color:var(--text-secondary)}.command-palette-footer{border-top:1px solid var(--border);min-height:36px;color:var(--text-tertiary);background:var(--surface-raised);justify-content:flex-end;align-items:center;gap:14px;padding:0 12px;font-size:10px;display:flex}.command-palette-footer span{align-items:center;gap:3px;display:inline-flex}.command-palette-footer kbd{min-width:18px;color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-border);text-align:center;border-radius:3px;padding:2px 4px}.shortcut-list{gap:2px;display:grid}.shortcut-list>div{border-bottom:1px solid var(--border);min-height:42px;color:var(--text-secondary);justify-content:space-between;align-items:center;gap:20px;display:flex}.shortcut-list>div:last-child{border-bottom:0}.shortcut-list kbd{color:var(--text);background:var(--surface-sunken);box-shadow:var(--shadow-border);white-space:nowrap;border-radius:4px;padding:3px 7px;font-size:10px}.button{border-radius:var(--radius-small);height:32px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);cursor:pointer;letter-spacing:-.01em;white-space:nowrap;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease), opacity var(--duration) var(--ease);border:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;line-height:1;text-decoration:none;display:inline-flex;position:relative}.button:hover{color:var(--text);background:var(--surface-hover);box-shadow:0 0 0 1px var(--ds-gray-alpha-500)}.button:active{background:var(--surface-active)}.button svg{stroke-width:1.75px;flex:none;width:14px;height:14px;margin-left:-2px}.button.primary{color:var(--ds-background-100);background:var(--ds-gray-1000);box-shadow:none}.button.primary:hover{background:color-mix(in srgb, var(--ds-gray-1000) 88%, var(--surface));box-shadow:none}.button.primary:active{background:color-mix(in srgb, var(--ds-gray-1000) 80%, var(--surface))}.button.danger{color:#fff;background:var(--ds-red-800);box-shadow:none}.button.danger:hover{background:var(--ds-red-900);box-shadow:none}.button.ghost{box-shadow:none;color:var(--text-secondary);background:0 0}.button.ghost:hover{color:var(--text);background:var(--surface-hover);box-shadow:none}.button.small{height:28px;padding:0 10px;font-size:12px}.button.small svg{width:13px;height:13px}.button.large{height:40px;padding:0 16px;font-size:14px}.button.block{width:100%}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.5}.icon-button{border-radius:var(--radius-small);width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.icon-button:hover{color:var(--text);background:var(--surface-hover)}.icon-button svg,.nav-link svg,.view-tab svg,.panel-row>svg,.attachment svg{stroke-width:1.75px;width:15px;height:15px}.theme-icon-light,:root[data-theme=dark] .theme-icon-dark{display:none}:root[data-theme=dark] .theme-icon-light{display:block}.page{overscroll-behavior-y:contain;scroll-behavior:smooth;flex:1;min-height:0;padding:20px 24px 48px;overflow-y:auto}.page>*{width:100%;max-width:1400px;margin-inline:auto}.page.narrow>*{max-width:960px}.page.framed{flex-direction:column;padding:0;display:flex;overflow:hidden}.page.framed>*{max-width:none}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.page-title h1{color:var(--text);letter-spacing:-.02em;margin:0;font-size:19px;font-weight:600;line-height:1.25}.page-title p{max-width:600px;color:var(--text-tertiary);margin:2px 0 0;font-size:12px;line-height:1.5}.page-eyebrow{color:var(--text-tertiary);transition:color var(--duration) var(--ease);align-items:center;gap:6px;margin-bottom:6px;font-size:12px;text-decoration:none;display:inline-flex}.page-eyebrow:hover{color:var(--text)}.page-eyebrow svg{width:14px;height:14px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.section{margin-top:22px}.section:first-child{margin-top:0}.section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:8px;display:flex}.section-heading h2{letter-spacing:-.015em;margin:0;font-size:14px;font-weight:600}.section-heading p{color:var(--text-tertiary);margin:2px 0 0;font-size:12px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stat{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);align-content:start;padding:16px;display:grid}.stat span{color:var(--text-tertiary);align-items:center;gap:6px;font-size:13px;display:flex}.stat span svg{width:14px;height:14px}.stat strong{letter-spacing:-.04em;margin-top:8px;font-size:28px;font-weight:500;line-height:1.1;display:block}.task-stats{grid-template-columns:repeat(3,minmax(0,220px));gap:10px;margin-bottom:16px}.task-stats .stat{min-height:84px;padding:12px 14px}.task-stats .stat strong{margin-top:5px;font-size:24px}.panel{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border)}.panel>:first-child{border-radius:var(--radius-large) var(--radius-large) 0 0}.panel>:last-child{border-radius:0 0 var(--radius-large) var(--radius-large)}.panel>:only-child{border-radius:var(--radius-large)}.panel-row{min-height:44px;color:inherit;transition:background-color var(--duration) var(--ease);align-items:center;gap:10px;padding:8px 12px;text-decoration:none;display:flex}.panel>*+*{border-top:1px solid var(--border)}a.panel-row:hover{background:var(--surface-hover)}.panel-row>svg{color:var(--text-tertiary);flex:none}.panel-row-main{flex:1;min-width:0}.panel-row-main strong,.panel-row-main>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.panel-row-main strong{letter-spacing:-.01em;font-size:13px;font-weight:500}.panel-row-main>span{color:var(--text-tertiary);margin-top:2px;font-size:12px}.panel-row-main a{color:inherit;text-decoration:none}.panel-row-main a:hover{text-underline-offset:2px;text-decoration:underline}.panel-form{padding:16px}form.panel-row{background:var(--surface-sunken);flex-wrap:wrap}form.panel-row .input,form.panel-row .menu{flex:160px;width:auto}.workflow-color-field{flex:160px;gap:8px;min-width:160px;display:flex}.workflow-color-field>.input{min-width:112px}.workflow-custom-color{flex:180px;align-items:center;gap:8px;min-width:0;display:flex}.workflow-custom-color input[type=color]{border:1px solid var(--border-strong);border-radius:var(--radius-medium);background:var(--surface);cursor:pointer;flex:none;width:36px;height:32px;padding:2px}form.panel-row .button{flex:none}.settings-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.workflow-option-form .checkbox-label{border-radius:var(--radius-medium);min-height:40px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:9px;padding:0 4px;font-size:13px;display:inline-flex;position:relative}.checkbox-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.checkbox-control{border-radius:var(--radius-small);width:20px;height:20px;color:var(--surface);background:var(--surface);box-shadow:0 0 0 1px var(--border-strong), inset 0 1px 1px #0000000a;transition:background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease), scale var(--duration) var(--ease-out);flex:none;place-items:center;display:grid}.checkbox-label:hover .checkbox-control{box-shadow:0 0 0 1px var(--text-tertiary), inset 0 1px 1px #0000000a}.checkbox-input:focus-visible+.checkbox-control{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent)}.checkbox-input:focus-visible{outline:0}.checkbox-input:checked+.checkbox-control{background:var(--ds-gray-1000);box-shadow:0 0 0 1px var(--ds-gray-1000)}.checkbox-input:active+.checkbox-control{scale:.96}.checkbox-control svg{opacity:0;filter:blur(4px);stroke-width:2.75px;width:13px;height:13px;transition:opacity .2s var(--ease-out), filter .2s var(--ease-out), scale .2s var(--ease-out);scale:.25}.checkbox-input:checked+.checkbox-control svg{opacity:1;filter:blur();scale:1}@media (width<=900px){.settings-split{grid-template-columns:1fr}}.card{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border)}.card+.card{margin-top:20px}.card-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:48px;padding:12px 16px;display:flex}.card-header h2{letter-spacing:-.01em;margin:0;font-size:14px;font-weight:500}.card-header .spacer{flex:1}.card-body{padding:16px}.card-footer{border-top:1px solid var(--border);background:var(--surface-sunken);border-radius:0 0 var(--radius-large) var(--radius-large);padding:12px 16px}.card-empty{color:var(--text-tertiary);text-align:center;margin:0;padding:24px 16px;font-size:13px}.card-rows>*+*{border-top:1px solid var(--border)}.card-rows>:last-child{border-radius:0 0 var(--radius-large) var(--radius-large)}.danger-zone .card-header,.danger-zone .card-rows>*+*{border-color:color-mix(in srgb, var(--ds-red-700) 20%, transparent)}.danger-zone{box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-red-700) 30%, transparent)}.danger-zone .panel-row+.panel-row{border-top-color:color-mix(in srgb, var(--ds-red-700) 20%, transparent)}.overview-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:40px;margin-top:32px;display:grid}.overview-grid>.section{min-width:0;margin-top:0}.overview-rail .panel-row{min-height:52px;padding:10px 14px}.overview-rail .panel-row-main strong{font-size:13px}.board-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.board-card{border-radius:var(--radius-large);min-height:152px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);transition:box-shadow var(--duration) var(--ease), transform var(--duration) var(--ease);flex-direction:column;padding:18px;text-decoration:none;display:flex;position:relative}.board-card:hover{box-shadow:var(--shadow-border), var(--shadow-medium);transform:translateY(-1px)}.board-card-head{align-items:center;gap:10px;display:flex}.board-card-icon{border-radius:var(--radius-small);width:28px;height:28px;color:var(--text-tertiary);background:var(--surface-hover);flex:none;place-items:center;display:grid}.board-card-icon svg{width:15px;height:15px}.board-card h3{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:14px;font-weight:500;overflow:hidden}.board-card p{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:12px 0 0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.board-card-meta{color:var(--text-tertiary);align-items:center;gap:12px;margin-top:auto;padding-top:16px;font-size:12px;display:flex}.board-card-meta span{align-items:center;gap:5px;display:inline-flex}.board-card-meta svg{width:13px;height:13px}.badge{border-radius:var(--radius-medium);max-width:100%;min-height:22px;color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-border);white-space:nowrap;align-items:center;gap:5px;padding:0 8px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}@supports (corner-shape:squircle){.badge:not(.count){border-radius:calc(var(--radius-medium) * 2);corner-shape:squircle}}.badge svg{flex:none;width:12px;height:12px;margin-left:-2px}.badge>span{text-overflow:ellipsis;overflow:hidden}.badge.subtle{background:var(--surface-hover);box-shadow:none;color:var(--text-tertiary)}.badge.status:before{border-radius:var(--radius-full);content:"";background:currentColor;flex:none;width:6px;height:6px}.badge.status-backlog,.badge.workflow-gray{color:var(--text-tertiary)}.badge.status-in_progress,.badge.workflow-blue{color:var(--ds-blue-900);background:var(--ds-blue-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-blue-700) 24%, transparent)}.badge.status-review,.badge.workflow-purple{color:var(--ds-purple-900);background:var(--ds-purple-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-purple-700) 24%, transparent)}.badge.status-done,.badge.workflow-green{color:var(--ds-green-900);background:var(--ds-green-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-green-700) 24%, transparent)}.badge.priority-low{color:var(--text-tertiary)}.badge.priority-medium,.badge.workflow-amber{color:var(--ds-amber-900);background:var(--ds-amber-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-amber-700) 28%, transparent)}.badge.priority-high,.badge.priority-urgent,.badge.workflow-orange,.badge.workflow-red{color:var(--ds-red-900);background:var(--ds-red-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-red-700) 24%, transparent)}.badge.workflow-custom{color:color-mix(in srgb, var(--workflow-color) 72%, var(--text));background:color-mix(in srgb, var(--workflow-color) 14%, var(--surface));box-shadow:0 0 0 1px color-mix(in srgb, var(--workflow-color) 32%, transparent)}.badge.success{color:var(--ds-green-900);background:var(--ds-green-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-green-700) 24%, transparent)}.badge.count{border-radius:var(--radius-full);background:var(--surface-active);min-height:18px;box-shadow:none;padding:0 6px;font-size:10px}.table-wrap{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}.data-table th{border-bottom:1px solid var(--border);height:40px;color:var(--text-tertiary);background:var(--surface-sunken);text-align:left;white-space:nowrap;padding:0 16px;font-size:12px;font-weight:500}.table-sort{width:100%;color:inherit;font:inherit;letter-spacing:inherit;text-align:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;display:inline-flex}.table-sort.end{justify-content:flex-end}.table-sort span{color:var(--text-tertiary);font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}th[aria-sort=ascending] .table-sort,th[aria-sort=descending] .table-sort{color:var(--text)}.table-sort:focus-visible{border-radius:var(--radius-small);outline:2px solid var(--focus);outline-offset:2px}.data-table td{border-bottom:1px solid var(--border);height:48px;color:var(--text-secondary);vertical-align:middle;padding:8px 16px}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr{transition:background-color var(--duration) var(--ease)}.data-table tbody tr:hover td{background:var(--surface-hover)}.data-table a{color:var(--text);letter-spacing:-.01em;font-weight:500;text-decoration:none}.data-table a:hover{text-underline-offset:2px;text-decoration:underline}.data-table .muted{color:var(--text-tertiary)}.data-table .due-cell{white-space:nowrap}.data-table .due-time:before{color:var(--text-tertiary);content:"·";margin:0 6px}.empty-state{border:1px dashed var(--border-strong);border-radius:var(--radius-large);text-align:center;place-items:center;min-height:260px;padding:40px 24px;display:grid}.empty-state-icon{border-radius:var(--radius-medium);width:40px;height:40px;color:var(--text-tertiary);background:var(--surface-hover);place-items:center;margin:0 auto 16px;display:grid}.empty-state-icon svg{width:18px;height:18px}.empty-state h2{letter-spacing:-.015em;margin:0;font-size:15px;font-weight:500}.empty-state p{max-width:380px;color:var(--text-secondary);margin:6px auto 0;font-size:13px;line-height:1.55}.empty-state .button{margin-top:20px}.field{gap:6px;display:grid}.field+.field{margin-top:12px}.field>label,.field-label{color:var(--text);letter-spacing:-.01em;font-size:13px;font-weight:500}.input,.textarea,.select-trigger{border-radius:var(--radius-small);width:100%;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);transition:box-shadow var(--duration) var(--ease);border:0;font-size:13px}.input,.select-trigger{height:32px;padding:0 10px}.textarea{resize:vertical;min-height:76px;padding:7px 10px;line-height:1.55}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.input:hover,.textarea:hover,.select-trigger:hover{box-shadow:0 0 0 1px var(--ds-gray-alpha-500)}.input:focus,.textarea:focus,.select-trigger:focus-visible{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent);outline:0}.input:disabled,.textarea:disabled{color:var(--text-tertiary);background:var(--surface-sunken);cursor:not-allowed}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid .field+.field{margin-top:0}.form-grid .wide{grid-column:1/-1}.form-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.field-help{color:var(--text-tertiary);font-size:12px;line-height:1.45}.field-optional{color:var(--text-tertiary);margin-left:4px;font-size:11px;font-weight:400}.dialog-hint{border-radius:var(--radius-medium);color:var(--text-tertiary);background:var(--surface-sunken);margin:14px 0 0;padding:9px 11px;font-size:12px;line-height:1.5}.dialog-hint a{color:var(--text-secondary);font-weight:500}.inline-button{appearance:none;color:var(--focus);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.error-message{border-radius:var(--radius-medium);color:var(--ds-red-900);background:var(--ds-red-100);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-red-700) 30%, transparent);text-align:left;align-items:flex-start;gap:8px;margin:0 0 20px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.custom-checkbox{color:#0000;background:var(--surface);width:18px;height:18px;box-shadow:var(--shadow-border);cursor:pointer;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);border:0;border-radius:4px;flex:none;place-items:center;padding:0;display:grid}.custom-checkbox:hover{box-shadow:0 0 0 1px var(--ds-gray-alpha-600)}.custom-checkbox.checked{color:var(--ds-background-100);background:var(--ds-gray-1000);box-shadow:none}.custom-checkbox svg{stroke-width:3px;width:12px;height:12px}.menu{position:relative}.select-trigger{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:8px;padding:0 8px 0 10px;display:flex}.select-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-trigger svg{width:14px;height:14px;color:var(--text-tertiary);flex:none}.menu-panel{z-index:80;border-radius:var(--radius-large);background:var(--surface);width:max(100%,200px);max-height:280px;box-shadow:var(--shadow-border), var(--shadow-menu);animation:menu-in .12s var(--ease-out);padding:6px;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.menu-panel.right{left:auto;right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.menu-option{border-radius:var(--radius-small);width:100%;min-height:32px;color:var(--text-secondary);cursor:pointer;text-align:left;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;font-size:13px;text-decoration:none;display:flex}.menu-option:hover,.menu-option:focus-visible{color:var(--text);background:var(--surface-hover);outline:0}.menu-option[aria-selected=true]{color:var(--text);font-weight:500}.menu-option[aria-selected=true]:after{color:var(--text-tertiary);content:"✓";margin-left:auto;font-size:12px}.menu-option.danger{color:var(--ds-red-900)}.color-picker-trigger{justify-content:flex-start;min-height:40px}.color-picker-trigger>[data-menu-target=value]{flex:1}.color-picker-swatch{border-radius:var(--radius-full);background:var(--color-picker-value);flex:none;width:16px;height:16px;box-shadow:inset 0 0 0 1px #0000001f}.color-picker [data-color=gray]{--color-picker-value:var(--ds-gray-800)}.color-picker [data-color=blue]{--color-picker-value:var(--ds-blue-800)}.color-picker [data-color=purple]{--color-picker-value:var(--ds-purple-800)}.color-picker [data-color=green]{--color-picker-value:var(--ds-green-800)}.color-picker [data-color=amber]{--color-picker-value:var(--ds-amber-600)}.color-picker [data-color=orange]{--color-picker-value:var(--ds-amber-800)}.color-picker [data-color=red]{--color-picker-value:var(--ds-red-800)}.color-picker-panel{width:272px;max-height:min(480px,100vh - 32px);padding:8px;overflow-y:auto}.color-picker-title{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;padding:4px 6px 8px;font-size:11px;font-weight:600;display:block}.color-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.color-picker-option{border-radius:var(--radius-medium);min-height:40px;color:var(--text-secondary);cursor:pointer;font:inherit;text-align:left;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease), scale var(--duration) var(--ease-out);background:0 0;border:0;grid-template-columns:16px minmax(0,1fr) 14px;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:grid}.color-picker-option:hover{color:var(--text);background:var(--surface-hover)}.color-picker-option:focus-visible{box-shadow:0 0 0 1px var(--focus), 0 0 0 3px color-mix(in srgb, var(--focus) 18%, transparent);outline:0}.color-picker-option:active{scale:.96}.color-picker-option[aria-selected=true]{color:var(--text);background:var(--surface-active);font-weight:500}.color-picker-option svg{opacity:0;filter:blur(4px);stroke-width:2.5px;width:14px;height:14px;transition:opacity .2s var(--ease-out), filter .2s var(--ease-out), scale .2s var(--ease-out);scale:.25}.color-picker-option[aria-selected=true] svg{opacity:1;filter:blur();scale:1}.color-picker-custom{border-top:1px solid var(--border);margin-top:8px;padding:10px 6px 4px}.color-picker-custom .color-picker-title{padding:0 0 8px}.color-picker-spectrum{gap:10px;width:100%;height:172px;display:flex}.color-picker-spectrum:not(:defined){visibility:hidden}.color-picker-spectrum::part(saturation){border-radius:var(--radius-medium);bottom:auto;box-shadow:inset 0 0 0 1px #0000001a}.color-picker-spectrum::part(hue){border-radius:var(--radius-full);height:20px;box-shadow:inset 0 0 0 1px #0000001a}.color-picker-spectrum::part(saturation-pointer),.color-picker-spectrum::part(hue-pointer){width:18px;height:18px;box-shadow:0 0 0 2px var(--surface), 0 1px 4px #00000052}.color-picker-hex{border-radius:var(--radius-small);height:40px;color:var(--text-tertiary);background:var(--surface);box-shadow:var(--shadow-border);transition:box-shadow var(--duration) var(--ease);align-items:center;gap:3px;margin-top:10px;padding:0 10px;font-family:Geist Mono Variable,monospace;font-size:13px;display:flex}.color-picker-hex:focus-within{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent)}.color-picker-hex:has(input[aria-invalid=true]){box-shadow:0 0 0 1px var(--ds-red-800), 0 0 0 4px color-mix(in srgb, var(--ds-red-700) 14%, transparent)}.color-picker-hex input{min-width:0;color:var(--text);font:inherit;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:0;outline:0;flex:1;padding:0}:root[data-theme=dark] .color-picker-swatch{box-shadow:inset 0 0 0 1px #ffffff24}:root[data-theme=dark] .color-picker-spectrum::part(saturation),:root[data-theme=dark] .color-picker-spectrum::part(hue){box-shadow:inset 0 0 0 1px #ffffff1a}.menu-separator{background:var(--border);height:1px;margin:6px -6px}.dialog-layer{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity var(--duration) var(--ease);background:#0006;place-items:start center;padding:min(10vh,88px) 20px 40px;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog-layer[data-open=true]{opacity:1}.dialog{border-radius:var(--radius-large);background:var(--surface);width:min(100%,540px);box-shadow:var(--shadow-border), var(--shadow-modal);transition:transform .18s var(--ease-out);transform:translateY(-6px)scale(.98)}.dialog-layer[data-open=true] .dialog{transform:none}.dialog.wide{width:min(100%,720px)}.dialog-header{align-items:flex-start;gap:16px;padding:20px 20px 0;display:flex}.dialog-header>div{flex:1;min-width:0}.dialog-header h2{letter-spacing:-.02em;margin:0;font-size:16px;font-weight:600}.dialog-header p{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.confirm-dialog .dialog-header{padding-bottom:20px}.dialog-header .icon-button{margin:-4px -4px 0 0}.dialog-body{padding:20px}.dialog-footer{border-top:1px solid var(--border);background:var(--surface-sunken);border-radius:0 0 var(--radius-large) var(--radius-large);justify-content:flex-end;gap:8px;padding:16px 20px;display:flex}.dialog-more{border-top:1px solid var(--border);margin-top:16px}.dialog-more>summary{min-height:38px;color:var(--text-secondary);cursor:pointer;align-items:center;gap:7px;font-size:12.5px;font-weight:500;list-style:none;display:flex}.dialog-more>summary::-webkit-details-marker{display:none}.dialog-more>summary:hover{color:var(--text)}.dialog-more>summary svg{color:var(--text-tertiary);transition:transform .16s var(--ease-out);flex:none}.dialog-more[open]>summary svg{transform:rotate(180deg)}.dialog-more>summary small{color:var(--text-tertiary);font-size:11px;font-weight:400}.dialog-more-body{padding:4px 0 6px}.dialog-section{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.dialog-section:first-child{border-top:0;margin-top:0;padding-top:0}.dialog-section>h3{color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:600}.duration-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.duration-chips button{border-radius:var(--radius-full);min-height:26px;color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-border);cursor:pointer;font:inherit;font-variant-numeric:tabular-nums;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);border:0;padding:0 10px;font-size:12px}.duration-chips button:hover{color:var(--text);background:var(--surface-hover)}.duration-chips button[aria-pressed=true]{color:var(--text);background:var(--surface-active);box-shadow:0 0 0 1px var(--border-strong);font-weight:500}.plan-day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.plan-day{border-radius:var(--radius-medium);min-height:54px;color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-border);cursor:pointer;font:inherit;text-align:center;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);border:0;align-content:center;gap:3px;padding:6px 2px;display:grid}.plan-day:hover:not(:disabled){color:var(--text);background:var(--surface-hover)}.plan-day[aria-pressed=true]{color:var(--text);box-shadow:0 0 0 1.5px var(--ds-blue-700);background:color-mix(in srgb, var(--ds-blue-100) 60%, var(--surface))}.plan-day:disabled{cursor:not-allowed;opacity:.45}.plan-day strong{font-size:12px;font-weight:550}.plan-day small{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:10px}@media (width<=640px){.plan-day-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.task-detail-page>*{max-width:1060px}.task-detail-page .split-layout{grid-template-columns:minmax(0,1fr) 288px;align-items:start;gap:40px;display:grid}.task-sidebar .study-session-panel{gap:10px;margin-bottom:24px;padding:12px 12px 12px 16px}.task-sidebar .study-session-heading{flex-wrap:wrap}.task-sidebar .study-session-heading h2{font-size:13px}.task-sidebar .study-session-heading p{font-size:11px}.task-sidebar .study-session-row{grid-template-columns:minmax(0,1fr) auto}.task-main{gap:28px;min-width:0;display:grid}.task-headline{margin-bottom:14px}.task-headline-row{justify-content:space-between;align-items:flex-start;gap:20px;margin-top:3px;display:flex}.task-headline h1{max-width:34ch;color:var(--text);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:20px;font-weight:600;line-height:1.25}.task-headline-actions{flex:none;align-items:center;gap:8px;padding-top:3px;display:flex}.task-status-trigger{border-radius:var(--radius-small);cursor:pointer;height:32px;transition:background-color var(--duration) var(--ease);background:0 0;border:0;align-items:center;gap:4px;padding:0 8px 0 4px;display:inline-flex}.task-status-trigger:hover,.task-status-trigger[aria-expanded=true]{background:var(--surface-hover)}.task-status-trigger svg{color:var(--text-tertiary)}.task-more svg{width:18px;height:18px}.canvas-task-source{border-radius:var(--radius-large);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);gap:10px;margin-bottom:16px;padding:11px 14px;display:grid}.canvas-task-source>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.canvas-task-source a{color:var(--text-secondary);align-items:center;gap:5px;font-size:12px;text-decoration:none;display:inline-flex}.canvas-task-source dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px;margin:0;display:grid}.canvas-task-source dl div{gap:2px;display:grid}.canvas-task-source dt{color:var(--text-tertiary);font-size:11px}.canvas-task-source dd{margin:0;font-size:12px;font-weight:500}.lane-source{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:600;position:absolute;top:10px;right:10px}.pace{border-radius:var(--radius-large);background:var(--surface-sunken);box-shadow:var(--shadow-border);--pace-color:var(--ds-green-700);margin-bottom:24px;padding:13px 16px 12px}.pace[data-state=behind]{--pace-color:var(--ds-amber-800)}.pace[data-state=late]{--pace-color:var(--ds-red-800)}.pace-ends{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.pace-start{color:var(--text-tertiary);font-size:12px}.pace-due{border-radius:var(--radius-small);color:var(--text);text-align:right;background:0 0;border:0;align-items:baseline;gap:6px;margin-right:-6px;padding:2px 6px;font-size:13px;display:inline-flex}button.pace-due{cursor:pointer;transition:background-color var(--duration) var(--ease)}button.pace-due:hover{background:var(--surface-hover)}.pace-due-label{color:var(--text-tertiary);font-size:12px}.pace-due strong{letter-spacing:-.01em;font-weight:550}.pace-due svg{color:var(--text-tertiary);opacity:0;transition:opacity var(--duration) var(--ease);align-self:center}button.pace-due:hover svg,button.pace-due:focus-visible svg{opacity:1}.pace-track{border-radius:var(--radius-full);background:var(--surface-active);height:8px;position:relative;overflow:hidden}.pace-elapsed,.pace-done{border-radius:var(--radius-full);width:0;transition:width .52s var(--ease-out);position:absolute;top:0;bottom:0;left:0}.pace-elapsed{background:var(--ds-gray-500);opacity:.55}.pace-done{background:var(--pace-color)}.pace-today{background:var(--text);opacity:0;width:2px;transition:left .52s var(--ease-out), opacity .32s .32s var(--ease);margin-left:-1px;position:absolute;top:0;bottom:0}.pace-track.ready .pace-today{opacity:.72}.pace-caption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:8px;display:flex}.pace-verdict{color:var(--pace-color);font-size:12px;font-weight:550}.pace[data-state=steady] .pace-verdict,.pace[data-state=complete] .pace-verdict{color:var(--text-secondary)}.pace-facts{color:var(--text-tertiary);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.pace-estimate{border-radius:var(--radius-small);color:var(--text-tertiary);cursor:pointer;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);background:0 0;border:0;padding:2px 6px;font-size:12px}.pace-estimate:hover{color:var(--text);background:var(--surface-hover)}.pace-countdown{color:var(--text);font-weight:500}.pace[data-state=late] .pace-countdown{color:var(--ds-red-900)}.pace-undated{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pace-undated p{max-width:52ch;color:var(--text-secondary);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}.pace-undated strong{color:var(--text);font-weight:550}.pace-editor{border-top:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:16px;padding-top:16px;display:flex}.pace-editor .field{flex:0 200px;min-width:160px}.pace-editor .property-inline-actions{flex:1 0 auto;padding-bottom:2px}.task-section-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:26px;margin-bottom:10px;padding-bottom:6px;display:flex}.task-section-head h2{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.task-section-head>:last-child:not(h2){margin-left:auto}.section-count{color:var(--text-tertiary);font-size:11px}.section-empty{color:var(--text-tertiary);text-wrap:pretty;margin:0;font-size:13px;line-height:1.6}.task-description{color:var(--text-secondary);white-space:pre-wrap;font-size:13px;line-height:1.65}.notes-editor{gap:10px;display:grid}.notes-editor .textarea{min-height:120px;font-family:Geist Mono Variable,monospace;line-height:1.55}.notes-editor-footer,.notes-editor-footer>div{align-items:center;display:flex}.notes-editor-footer{color:var(--text-tertiary);justify-content:space-between;gap:12px;font-size:11px}.notes-editor-footer>div{gap:8px}.checklist-progress{color:var(--text-tertiary);align-items:center;gap:10px;font-size:11px;display:flex}progress.progress{border-radius:var(--radius-full);background:var(--surface-active);appearance:none;border:0;width:72px;height:4px}progress.progress::-webkit-progress-bar{border-radius:var(--radius-full);background:var(--surface-active)}progress.progress::-webkit-progress-value{border-radius:var(--radius-full);background:var(--ds-green-700);transition:width .24s var(--ease)}progress.progress::-moz-progress-bar{border-radius:var(--radius-full);background:var(--ds-green-700)}.checklist{gap:1px;margin:-4px -10px 0;display:grid}.checklist-item{border-radius:var(--radius-small);min-height:36px;transition:background-color var(--duration) var(--ease);align-items:center;gap:10px;padding:4px 10px;font-size:13px;display:flex}.checklist-item:hover{background:var(--surface-hover)}.checklist-item.completed>span{color:var(--text-tertiary);text-decoration:line-through;-webkit-text-decoration-color:var(--ds-gray-500);text-decoration-color:var(--ds-gray-500)}.checklist-delete{width:28px;height:28px;color:var(--text-tertiary);opacity:0;margin-left:auto;padding:0}.checklist-item:hover .checklist-delete,.checklist-item:focus-within .checklist-delete{opacity:1}.checklist-item[data-pending=true]{opacity:.62}.checklist-add{align-items:stretch;gap:8px;margin-top:12px;display:flex}.checklist-add .input{flex:1}.checklist-add .button{height:32px}.checklist-complete-hint{border-radius:var(--radius-medium);color:var(--ds-green-900);background:var(--ds-green-200);align-items:center;gap:10px;margin-top:12px;padding:10px 12px;font-size:12px;display:flex}.checklist-complete-hint>svg{flex:none}.checklist-complete-hint>span{flex:1;min-width:0}.checklist-complete-hint strong{margin-bottom:2px;display:block}.attachment-upload-form{margin-top:14px}.comment-thread{display:grid}.comment-empty{align-items:center;gap:11px;padding:2px 0 10px;display:flex}.comment-empty>span{border-radius:var(--radius-medium);width:34px;height:34px;color:var(--text-tertiary);background:var(--surface);box-shadow:var(--shadow-border);flex:none;place-items:center;display:grid}.comment-empty>div{gap:3px;display:grid}.comment-empty strong{font-size:12px;font-weight:550}.comment-empty small{color:var(--text-tertiary);text-wrap:pretty;font-size:11px}.comment{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;padding:12px 0;display:grid}.comment .avatar{width:28px;height:28px}.comment+.comment{border-top:1px solid var(--border)}.comment-meta{align-items:baseline;gap:8px;margin-bottom:2px;font-size:12px;display:flex}.comment-meta strong{color:var(--text);font-size:13px;font-weight:500}.comment-meta span{color:var(--text-tertiary)}.comment-body{color:var(--text-secondary);white-space:pre-wrap;font-size:13px;line-height:1.45}.comment-actions{opacity:0;transition:opacity var(--duration) var(--ease);margin-top:2px}.comment:hover .comment-actions,.comment:focus-within .comment-actions{opacity:1}.comment-composer{margin-top:14px}.comment-input-shell{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);transition:box-shadow .15s var(--ease);padding:4px}.comment-input-shell:focus-within{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 12%, transparent)}.comment-composer .textarea{border-radius:var(--radius-medium);min-height:62px;max-height:150px;box-shadow:none;resize:vertical;background:0 0;border:0;padding:10px 11px 6px}.comment-composer .textarea:focus{box-shadow:none}.comment-composer-footer{justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:2px 2px 2px 10px;display:flex}.comment-draft-meta{color:var(--text-tertiary);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.comment-draft-meta kbd{border-radius:var(--radius-small);background:var(--surface-sunken);color:var(--text-tertiary);border:0;padding:2px 5px;font-size:10px}.comment-composer-footer .button{min-height:40px}.task-sidebar{align-content:start;position:sticky;top:24px}.detail-list{margin:0;display:grid}.detail-row{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px;min-height:32px;padding:3px 0;font-size:13px;display:grid}.detail-row dt{color:var(--text-tertiary);text-overflow:ellipsis;overflow:hidden}.detail-row dd{white-space:nowrap;align-items:center;gap:6px;min-width:0;margin:0;display:flex}.detail-row dd>span:not(.badge){text-overflow:ellipsis;overflow:hidden}.detail-row .badge{max-width:calc(100% - 2px)}.detail-labels{white-space:normal;flex-wrap:wrap}.detail-edit{border-radius:var(--radius-small);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;opacity:0;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), opacity var(--duration) var(--ease);background:0 0;border:0;flex:none;place-items:center;margin-left:auto;padding:0;display:inline-grid}.detail-row:hover .detail-edit,.detail-row:focus-within .detail-edit{opacity:1}.detail-edit:hover{color:var(--text);background:var(--surface-hover)}.detail-row.editing{border-radius:var(--radius-medium);background:var(--surface-sunken);grid-template-columns:minmax(0,1fr);align-items:start;gap:6px;margin-inline:-10px;padding:10px}.detail-row.editing dd{white-space:normal}.property-inline-form{gap:8px;width:100%;display:grid}.property-inline-form .input,.property-inline-form .select-trigger{height:32px}.property-inline-actions{justify-content:flex-end;gap:6px;display:flex}.property-score-inputs{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:5px;display:grid}.property-score-inputs .input{min-width:0;padding-inline:7px}.property-options{gap:6px;display:grid}.property-option,.property-boolean{min-height:32px;color:var(--text-secondary);cursor:pointer;align-items:center;gap:9px;font-size:13px;display:inline-flex;position:relative}.property-option:hover .checkbox-control,.property-boolean:hover .checkbox-control{box-shadow:0 0 0 1px var(--text-tertiary), inset 0 1px 1px #0000000a}.detail-add{border-top:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:14px;display:flex}.detail-add-button{border:1px dashed var(--border-strong);border-radius:var(--radius-full);min-height:26px;color:var(--text-tertiary);cursor:pointer;transition:color var(--duration) var(--ease), border-color var(--duration) var(--ease);background:0 0;align-items:center;gap:4px;padding:0 9px 0 7px;font-size:12px;display:inline-flex}.detail-add-button:hover{color:var(--text);border-color:var(--text-tertiary)}.detail-add-button svg{flex:none}.detail-footnote{color:var(--text-tertiary);margin:18px 0 0;font-size:11px}.grade-fields{border:0;min-width:0;margin:0;padding:0}.grade-fields legend{color:var(--text);padding:0;font-size:13px;font-weight:500}.grade-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grade-input-grid label{gap:6px;display:grid}.grade-input-grid label>span{color:var(--text-secondary);font-size:11px}.reminder-dialog{width:min(520px,100vw - 32px)}.reminder-dialog-body{gap:16px;display:grid}.reminder-recipient,.reminder-row{align-items:center;display:grid}.reminder-recipient{border:1px solid var(--border);border-radius:var(--radius-medium);background:var(--surface-sunken);grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:12px}.reminder-recipient>svg{color:var(--ds-blue-900)}.reminder-recipient>span:nth-child(2),.reminder-row>span:nth-child(2){gap:2px;min-width:0;display:grid}.reminder-recipient strong,.reminder-row strong,.reminder-form-heading strong{color:var(--text);text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.reminder-recipient small,.reminder-row small,.reminder-form-heading span{color:var(--text-tertiary);font-size:11px}.reminder-list{border:1px solid var(--border);border-radius:var(--radius-medium);overflow:clip}.reminder-row{grid-template-columns:28px minmax(0,1fr) auto;gap:8px;min-height:52px;padding:8px 10px}.reminder-row+.reminder-row{border-top:1px solid var(--border)}.reminder-icon{border-radius:var(--radius-small);background:var(--ds-blue-200);width:28px;height:28px;color:var(--ds-blue-900);place-items:center;display:grid}.reminder-empty,.reminder-unavailable{border:1px dashed var(--border-strong);border-radius:var(--radius-medium);color:var(--text-secondary);text-wrap:pretty;margin:0;padding:12px;font-size:12px;line-height:1.5}.reminder-unavailable{border-style:solid;border-color:var(--ds-amber-500);background:var(--ds-amber-100)}.reminder-form{gap:12px;padding-top:4px;display:grid}.reminder-form-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.reminder-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.reminder-form-actions{justify-content:flex-end;display:flex}.reminder-error{margin:0}@media (width<=1120px){.task-detail-page .split-layout{grid-template-columns:minmax(0,1fr) 260px;gap:32px}}@media (width<=900px){.task-detail-page .split-layout{grid-template-columns:minmax(0,1fr);gap:28px}.task-headline h1{max-width:none}}@media (width<=640px){.task-headline-row{gap:12px;display:grid}.comment-draft-meta kbd{display:none}.pace-caption{gap:6px;display:grid}}@media (width<=520px){.grade-input-grid,.reminder-fields{grid-template-columns:minmax(0,1fr)}.reminder-form-heading{gap:3px;display:grid}}.attachment-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.attachment{border-radius:var(--radius-medium);background:var(--surface-sunken);min-width:0;box-shadow:var(--shadow-border);transition:box-shadow var(--duration) var(--ease);align-content:start;display:grid;overflow:hidden}.attachment:hover{box-shadow:0 0 0 1px var(--ds-gray-alpha-500)}.attachment-media{background:var(--surface-active);width:100%;min-width:0;display:grid}.attachment-image,.attachment-video{height:148px}.attachment-image img,.attachment-video video{object-fit:cover;width:100%;height:100%;display:block}.attachment-video video{object-fit:contain;background:#000}.attachment-audio{place-items:center;min-height:76px;padding:14px}.attachment-audio audio{width:100%;min-width:0}.attachment-file-icon{height:76px;color:var(--text-tertiary);background:var(--surface-active);place-items:center;display:grid}.attachment-file-icon svg{width:22px;height:22px}.attachment-details{gap:10px;min-width:0;padding:11px 12px 12px;display:grid}.attachment-copy{min-width:0}.attachment-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;display:block;overflow:hidden}.attachment-copy small{color:var(--text-tertiary);margin-top:1px;font-size:11px;display:block}.attachment-actions{align-items:center;gap:2px;display:flex}.attachment-actions form{margin:0}.attachment-actions .button{padding-inline:7px}.attachment-actions .attachment-delete{color:var(--ds-red-900)}.attachment-upload-form{gap:9px;display:grid}.file-field{align-items:center;gap:8px;min-width:0;display:flex}.file-field .file-name{min-width:0;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.upload-progress{gap:5px;display:grid}.upload-progress-meta{color:var(--text-tertiary);justify-content:space-between;font-size:11px;display:flex}progress.upload-progress-bar{width:100%;height:6px}.upload-error{color:var(--ds-red-900);margin:0;font-size:12px}.settings-grid{grid-template-columns:176px minmax(0,1fr);align-items:start;gap:28px;display:grid}.settings-menu{align-content:start;gap:1px;display:grid;position:sticky;top:24px}.settings-content{min-width:0}.settings-content .section{grid-template-columns:200px minmax(0,1fr);gap:10px 28px;scroll-margin-top:24px;display:grid}.settings-content .section:first-child{margin-top:0}.settings-content .section+.section{border-top:1px solid var(--border);padding-top:22px}.settings-content .section>.section-heading{grid-column:1;margin-bottom:0;display:block}.settings-content .section>:not(.section-heading){grid-column:2}.settings-content .section-heading>div{display:block}.settings-content .section-heading p{text-wrap:pretty;margin-top:3px;line-height:1.5}.settings-content .section-heading .button{margin-top:10px}.settings-content .settings-split{grid-template-columns:minmax(0,1fr)}@media (width<=900px){.settings-content .section{grid-template-columns:minmax(0,1fr);row-gap:8px}.settings-content .section>:not(.section-heading){grid-column:1}}.planning-email-form{gap:0}.notification-choice{cursor:pointer;align-items:flex-start;gap:10px;padding:10px 0;display:flex;position:relative}.notification-choice+.notification-choice{border-top:1px solid var(--border)}.notification-choice>span:last-child{gap:3px;display:grid}.notification-choice strong{font-size:13px;font-weight:600}.notification-choice small{color:var(--text-secondary);font-size:12px;line-height:1.5}.notification-choice:has(.checkbox-input:disabled){cursor:not-allowed;opacity:.55}.planning-hour-field{max-width:260px;margin-top:12px}.calendar-feed-created{margin-bottom:12px}.calendar-feed-row,.calendar-feed-actions{flex-wrap:wrap}.calendar-feed-actions{gap:8px;display:flex}.api-key-secret{border-radius:var(--radius-medium);color:var(--text);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);white-space:nowrap;padding:10px;font-family:Geist Mono Variable,monospace;font-size:12px;display:block;overflow-x:auto}.api-key-warning,.api-key-docs>p{color:var(--text-secondary);margin:10px 0 0;font-size:12px;line-height:1.55}.connected-app-row{align-items:center}.connected-app-icon{border-radius:var(--radius-medium);width:32px;height:32px;color:var(--text-secondary);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);flex:none;place-items:center;display:grid}.connected-app-server code{border-radius:var(--radius-medium);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);white-space:nowrap;padding:10px 12px;font-family:Geist Mono Variable,monospace;font-size:12px;overflow-x:auto}.connected-app-server .button{justify-self:start}.connected-app-server p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.55}.canvas-use-warning{border-radius:var(--radius-medium);color:var(--text-secondary);background:var(--surface-sunken);margin:0;padding:10px 12px;font-size:12px;line-height:1.5}.canvas-connection-row{align-items:flex-start}.canvas-connection-row code{font-family:Geist Mono Variable,monospace}.canvas-connection-actions{flex-wrap:wrap;flex:none;gap:8px;display:flex}.canvas-status-error{color:var(--danger-text,var(--ds-red-700))}.canvas-install-steps ol{color:var(--text-secondary);gap:6px;margin:0;padding-left:20px;font-size:12px;line-height:1.55;display:grid}.api-key-row code,.api-key-docs code{font-family:Geist Mono Variable,monospace;font-size:.94em}.api-key-docs h3{margin:24px 0 8px;font-size:13px;font-weight:600}.api-key-docs h3:first-child{margin-top:0}.api-key-docs pre{border-radius:var(--radius-medium);color:var(--text);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);margin:0;padding:12px;line-height:1.6;overflow-x:auto}.api-endpoints{border-radius:var(--radius-medium);box-shadow:var(--shadow-border);margin:0;display:grid}.api-endpoints>div{grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);gap:12px;padding:8px 10px;display:grid}.api-endpoints>div+div{border-top:1px solid var(--border)}.api-endpoints dt,.api-endpoints dd{margin:0;font-size:12px;line-height:1.5}.api-endpoints dd{color:var(--text-secondary)}.tap-provision{background:var(--ds-blue-200);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-blue-700) 24%, transparent);margin-bottom:12px}.tap-provision-main{gap:10px;padding:14px;display:grid}.tap-provision-main>div:first-child strong,.tap-provision-main>div:first-child span{display:block}.tap-provision-main>div:first-child strong{font-size:13px;font-weight:600}.tap-provision-main>div:first-child span,.tap-provision-status,.tap-history-time{color:var(--text-tertiary);font-size:12px}.tap-provision-main>div:first-child span{margin-top:3px}.tap-url-secret{border-radius:var(--radius-medium);color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);white-space:nowrap;padding:10px 12px;font-family:Geist Mono Variable,monospace;font-size:12px;display:block;overflow-x:auto}.tap-provision-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tap-provision-status{margin-left:4px}.tap-action-row{flex-wrap:wrap}.tap-action-row .panel-row-main{min-width:240px}.tap-token-prefix{color:var(--text-tertiary);font-family:Geist Mono Variable,monospace;font-size:11px}.tap-form-group{min-width:0}.tap-history{margin-top:20px}.tap-history h3{color:var(--text-secondary);margin:0 0 8px;font-size:13px;font-weight:600}.tap-history-time{white-space:nowrap}.auth-page{background:var(--surface);grid-template-rows:auto 1fr;min-height:100dvh;display:grid}.auth-header{z-index:2;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 24px;display:flex;position:absolute;top:0}.auth-header .brand-wordmark{width:112px}.auth-main{grid-row:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}.auth-main-single{grid-template-columns:minmax(0,1fr)}.auth-form-pane{grid-template-rows:1fr auto 1fr;align-content:stretch;justify-items:center;padding:96px 24px 48px;display:grid;overflow-y:auto}.auth-card{grid-row:2;width:min(100%,360px)}.auth-form-pane>.build-signature{grid-row:3;align-self:end;margin-top:32px}.auth-card h1{letter-spacing:-.03em;margin:0;font-size:24px;font-weight:600}.auth-card-minimal h1{margin-bottom:32px}.auth-card>p:not(.error-message){color:var(--text-secondary);margin:8px 0 32px;font-size:14px;line-height:1.5}.auth-aside{border-left:1px solid var(--border);background:var(--surface-sunken);isolation:isolate;flex-direction:column;justify-content:center;gap:28px;padding:64px;display:flex;position:relative;overflow:hidden}.auth-aside:before{z-index:-1;background-image:linear-gradient(to right, var(--ds-gray-alpha-200) 1px, transparent 1px), linear-gradient(to bottom, var(--ds-gray-alpha-200) 1px, transparent 1px);content:"";background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 45%,#000 10%,#0000 100%);mask-image:radial-gradient(80% 70% at 50% 45%,#000 10%,#0000 100%)}.auth-aside blockquote{letter-spacing:-.035em;text-wrap:balance;max-width:26ch;margin:0;font-size:28px;font-weight:500;line-height:1.25}.auth-points{gap:12px;margin:0;padding:0;list-style:none;display:grid}.auth-points li{color:var(--text-secondary);align-items:center;gap:10px;font-size:14px;display:flex}.auth-points svg{width:16px;height:16px;color:var(--text-tertiary);flex:none}.auth-card .input{height:40px}.auth-card .button.primary{width:100%;height:40px;margin-top:20px}.oauth-button{margin-top:-8px}.auth-divider{color:var(--text-tertiary);align-items:center;gap:12px;margin:20px 0;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{background:var(--border);content:"";flex:1;height:1px}.auth-switch{color:var(--text-secondary);margin:24px 0 0;font-size:13px}.auth-switch a{color:var(--text);font-weight:500;text-decoration:none}.auth-switch a:hover{text-underline-offset:2px;text-decoration:underline}.auth-footer{color:var(--text-tertiary);margin:0;font-size:12px;position:absolute;bottom:64px;left:64px}.not-found-page{background:var(--surface);min-height:100dvh;overflow:hidden}.not-found-header{z-index:2;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 24px;display:flex;position:absolute;top:0}.not-found-header .brand-wordmark{width:112px}.not-found-main{grid-template-columns:minmax(280px,.8fr) minmax(440px,1.2fr);align-items:center;gap:clamp(48px,8vw,112px);width:min(100% - 48px,1040px);min-height:100dvh;margin-inline:auto;padding-block:104px 64px;display:grid}.not-found-copy{z-index:1;position:relative}.not-found-kicker{color:var(--text-tertiary);letter-spacing:.01em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 20px;font-size:12px;font-weight:500;display:flex}.not-found-kicker span{border-radius:var(--radius-small);color:var(--text);background:var(--surface-hover);box-shadow:var(--shadow-border);letter-spacing:0;padding:4px 7px;font-family:Geist Mono Variable,monospace}.not-found-copy h1{letter-spacing:-.06em;text-wrap:balance;max-width:9ch;margin:0;font-size:clamp(42px,5vw,68px);font-weight:600;line-height:.98}.not-found-copy>p:not(.not-found-kicker){max-width:38ch;color:var(--text-secondary);margin:24px 0 32px;font-size:15px;line-height:1.6}.not-found-board{border:1px solid var(--border);border-radius:var(--radius-xlarge);background:var(--surface);min-height:340px;box-shadow:var(--shadow-modal);grid-template-columns:repeat(3,minmax(128px,1fr));gap:10px;padding:12px;display:grid;transform:rotate(-1.5deg)}.not-found-column{border:1px solid var(--border);border-radius:var(--radius-large);background:var(--surface-sunken);min-width:0;padding:12px}.not-found-column-title{color:var(--text-secondary);align-items:center;gap:7px;margin:2px 0 14px;font-size:11px;font-weight:500;display:flex}.not-found-column-title span{border-radius:var(--radius-full);background:var(--ds-gray-600);width:7px;height:7px}.not-found-column:nth-child(2) .not-found-column-title span{background:var(--ds-blue-700)}.not-found-column:nth-child(3) .not-found-column-title span{background:var(--ds-green-700)}.not-found-task{border-radius:var(--radius-medium);background:var(--surface-raised);min-height:92px;box-shadow:var(--shadow-border), var(--shadow-small);padding:12px;position:relative}.not-found-task+.not-found-task{margin-top:10px}.not-found-task strong{color:var(--text);font-size:11px;font-weight:500;line-height:1.35;display:block}.not-found-task>span{border-radius:var(--radius-full);background:var(--surface-active);width:64%;height:5px;box-shadow:0 10px 0 var(--surface-active);margin-top:12px;display:block}.not-found-task.short{min-height:76px}.not-found-task.missing{border:1px dashed var(--border-strong);min-height:160px;box-shadow:none;text-align:center;background:0 0;place-content:center;gap:8px;display:grid}.not-found-task.missing b{color:var(--text-tertiary);font-family:Geist Mono Variable,monospace;font-size:32px;font-weight:400;line-height:1}.not-found-task.missing strong{color:var(--text-tertiary)}.not-found-task.complete:after{border-radius:var(--radius-full);width:18px;height:18px;color:var(--ds-background-100);background:var(--ds-green-700);content:"✓";place-items:center;font-size:11px;font-weight:600;display:grid;position:absolute;bottom:10px;right:10px}@media (width<=820px){.not-found-page{overflow:auto}.not-found-main{grid-template-columns:minmax(0,1fr);gap:48px;width:min(100% - 32px,520px);min-height:100dvh;padding-block:120px 56px}.not-found-copy h1{max-width:10ch}.not-found-board{grid-template-columns:repeat(3,minmax(112px,1fr));min-height:280px;overflow:hidden;transform:rotate(-1deg)}}.task-preview{z-index:120;border-radius:var(--radius-xlarge);background:var(--surface);width:320px;box-shadow:var(--shadow-border), var(--shadow-menu);opacity:0;pointer-events:none;gap:14px;padding:16px;transition:opacity .12s cubic-bezier(.23,1,.32,1),transform .12s cubic-bezier(.23,1,.32,1);display:grid;position:fixed;transform:translateY(-3px)scale(.96)}.task-preview[data-side=right]{transform-origin:0}.task-preview[data-side=left]{transform-origin:100%}.task-preview[data-open=true]{opacity:1;transition-duration:.15s;transform:none}@starting-style{.task-preview[data-motion=true][data-open=true]{opacity:0;transform:translateY(-3px)scale(.96)}}.task-preview[data-motion=false]{transition:none;transform:none}.task-preview .preview-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.task-preview .preview-heading>span{color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;font-family:Geist Mono Variable,monospace;font-size:11px;font-weight:600}.task-preview .preview-badges{flex-wrap:wrap;gap:6px;display:flex}.task-preview .preview-note{min-height:52px;color:var(--text-secondary);text-wrap:pretty;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:7px;font-size:12px;line-height:1.5;display:grid;overflow:hidden}.task-preview .preview-note span{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.task-preview .preview-note svg{color:var(--text-tertiary);margin-top:1px}.task-preview .preview-note.empty{color:var(--text-tertiary)}.task-preview .preview-assignee{border-block:1px solid var(--border);color:var(--text-tertiary);align-items:center;gap:9px;padding:10px 0;display:flex}.task-preview .preview-assignee span{gap:2px;display:grid}.task-preview .preview-assignee small{color:var(--text-tertiary);text-transform:uppercase;font-size:9px}.task-preview .preview-assignee strong{color:var(--text-secondary);font-size:11px;font-weight:550}.task-preview .preview-open-hint{color:var(--text-tertiary);justify-content:space-between;align-items:center;font-size:10px;display:flex}@media (prefers-reduced-motion:reduce){.task-preview{transition-property:opacity;transition-duration:.12s;transform:none}}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 12px}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{color:var(--text);letter-spacing:-.02em;margin:24px 0 8px;font-weight:600;line-height:1.3}.markdown h1{font-size:18px}.markdown h2{font-size:16px}.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-size:14px}.markdown ul,.markdown ol{margin:0 0 12px;padding-left:20px}.markdown li{margin-bottom:4px}.markdown a{color:var(--ds-blue-900);text-underline-offset:2px;text-decoration:underline}.markdown code{color:var(--text);background:var(--surface-hover);border-radius:4px;padding:2px 5px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:.9em}.markdown pre{border-radius:var(--radius-medium);background:var(--surface-sunken);box-shadow:var(--shadow-border);margin:0 0 12px;padding:12px 14px;overflow-x:auto}.markdown pre code{background:0 0;padding:0;font-size:12px;line-height:1.6}.markdown blockquote{border-left:2px solid var(--border-strong);color:var(--text-tertiary);margin:0 0 12px;padding-left:14px}.markdown hr{background:var(--border);border:0;height:1px;margin:20px 0}.markdown strong{color:var(--text);font-weight:600}.markdown img{border-radius:8px;max-width:100%;height:auto;display:block}.markdown table{border-collapse:collapse;width:100%;margin:12px 0;font-size:.9rem}.markdown th,.markdown td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:7px 9px}.markdown th{background:var(--surface-subtle);font-weight:700}.toast-stack{z-index:140;pointer-events:none;gap:8px;width:min(380px,100vw - 40px);display:grid;position:fixed;bottom:20px;right:20px}.toast{border-radius:var(--radius-medium);color:var(--text);background:var(--surface);box-shadow:var(--shadow-border), var(--shadow-modal);pointer-events:auto;animation:toast-enter .18s var(--ease-out);align-items:center;gap:8px;padding:12px 14px;font-size:13px;display:flex}.toast.error{border-left:3px solid var(--ds-red-700);color:var(--ds-red-1000);background:var(--ds-red-100)}.toast>span{flex:1;min-width:0}.toast-dismiss{border-radius:var(--radius-small);color:currentColor;cursor:pointer;background:0 0;border:0;flex:none;place-items:center;width:24px;height:24px;padding:0;display:grid}.toast-action{border-radius:var(--radius-small);color:var(--ds-blue-900);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:4px 7px;font-weight:600}.toast-dismiss:hover,.toast-action:hover{background:var(--ds-gray-alpha-100)}@keyframes toast-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}}.flatpickr-calendar{border-radius:var(--radius-large);width:308px;color:var(--text);background:var(--surface);padding:8px;font-family:Rubik Variable,sans-serif;font-size:13px;box-shadow:var(--shadow-border), var(--shadow-menu)!important;border:0!important}.flatpickr-calendar:before,.flatpickr-calendar:after{display:none}.flatpickr-months,.flatpickr-innerContainer,.flatpickr-rContainer,.flatpickr-days{width:100%}.flatpickr-months .flatpickr-month,.flatpickr-weekdays,span.flatpickr-weekday{color:var(--text-tertiary);background:0 0;font-weight:500}.flatpickr-current-month{justify-content:center;align-items:center;padding-top:4px;font-size:13px;display:flex}.flatpickr-current-month span.cur-month{font-weight:500}.flatpickr-current-month input.cur-year{color:var(--text);font-weight:500}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{border-radius:var(--radius-small);width:28px;height:28px;color:var(--text-tertiary);fill:currentColor;place-items:center;padding:0;display:grid;top:6px}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:var(--text);background:var(--surface-hover)}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{fill:currentColor}.dayContainer{width:100%;min-width:100%;max-width:none}.flatpickr-day{border-radius:var(--radius-small);max-width:none;height:36px;color:var(--text-secondary);border:0;line-height:36px}.flatpickr-day:hover,.flatpickr-day:focus{color:var(--text);background:var(--surface-hover)}.flatpickr-day.today{box-shadow:inset 0 0 0 1px var(--border-strong)}.flatpickr-day.selected,.flatpickr-day.selected:hover{color:var(--ds-background-100);background:var(--ds-gray-1000)}.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.flatpickr-disabled{color:var(--ds-gray-600)}.time-picker{width:100%;position:relative}.time-picker-trigger{border-radius:var(--radius-small);width:100%;height:36px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);cursor:pointer;font:inherit;transition:box-shadow var(--duration) var(--ease);border:0;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:13px;display:flex}.time-picker-trigger:hover{box-shadow:0 0 0 1px var(--ds-gray-alpha-500)}.time-picker-trigger:focus-visible{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent);outline:0}.time-picker-trigger>span{align-items:center;gap:7px;display:inline-flex}.time-picker-trigger>span.placeholder,.time-picker-trigger>svg{color:var(--text-tertiary)}.time-picker-panel{z-index:40;border-radius:var(--radius-large);width:min(292px,100vw - 32px);color:var(--text);background:var(--surface-raised);box-shadow:var(--shadow-border), var(--shadow-menu);transform-origin:calc(100% - 20px) 0;transition:opacity .16s var(--ease-out), transform .16s var(--ease-out);gap:10px;padding:10px;display:grid;position:absolute;top:calc(100% + 7px);right:0}@starting-style{.time-picker-panel{opacity:0;transform:translateY(-4px)scale(.97)}}.time-picker-heading,.time-picker-footer{justify-content:space-between;align-items:center;display:flex}.time-picker-heading{padding:2px 3px 0}.time-picker-heading strong{font-size:13px;font-weight:600}.time-picker-heading span{color:var(--text-tertiary);font-size:10px}.time-picker-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.time-picker-presets button{border-radius:var(--radius-medium);min-width:0;min-height:48px;color:var(--text);background:var(--surface-sunken);cursor:pointer;border:0;place-items:center;gap:1px;padding:5px 2px;display:grid}.time-picker-presets button:hover{background:var(--surface-hover)}.time-picker-presets strong{font-variant-numeric:tabular-nums;font-size:11px}.time-picker-presets span{max-width:100%;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.time-picker-custom{border-radius:var(--radius-medium);background:var(--surface-sunken);grid-template-columns:58px 8px 58px minmax(0,1fr);align-items:end;gap:5px;padding:9px;display:grid}.time-picker-custom label{color:var(--text-tertiary);gap:4px;font-size:9px;display:grid}.time-picker-custom input{border-radius:var(--radius-small);width:58px;height:34px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);font:inherit;font-variant-numeric:tabular-nums;border:0;outline:0;padding:0 7px;font-size:14px}.time-picker-custom input:focus{box-shadow:0 0 0 1px var(--focus), 0 0 0 3px color-mix(in srgb, var(--focus) 16%, transparent)}.time-picker-separator{color:var(--text-tertiary);padding-bottom:8px}.time-picker-period{border-radius:var(--radius-medium);background:var(--surface);box-shadow:var(--shadow-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;padding:2px;display:grid}.time-picker-period button{border-radius:var(--radius-small);min-height:30px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:0;padding:0 7px;font-size:10px}.time-picker-period button.active{color:var(--text);background:var(--surface-active);font-weight:600}.time-picker-footer{padding:0 2px}@media (prefers-reduced-motion:reduce){.time-picker-panel{transition-duration:1ms}}.button,.card,.panel,.stat,.lane-card,.board-card,.study-assignment,.study-focus-chip,.study-unplanned,.study-unplanned-list button,.study-workflow-band,.settings-menu .nav-link,.user-row{position:relative}[data-reveal]:after{z-index:1;border-radius:inherit;corner-shape:inherit;background:radial-gradient(var(--reveal-size) circle at var(--reveal-x) var(--reveal-y), var(--reveal-rim), transparent 72%);content:"";pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude}.button,.study-focus-chip,.settings-menu .nav-link,.study-unplanned-list button{--reveal-size:130px}.button.primary,.button.danger{--reveal-rim:#ffffff80}.button.ghost{--reveal-rim:transparent}.lane-card.drop-before:after{padding:0;bottom:auto;-webkit-mask-image:none;mask-image:none}.lane-card.drop-after:after{padding:0;top:auto;-webkit-mask-image:none;mask-image:none}@media (prefers-reduced-motion:reduce){[data-reveal]:after{display:none}}.tour-layer{z-index:140;position:fixed;inset:0}.tour-ring{border-radius:var(--radius-large);box-shadow:0 0 0 2px var(--ds-blue-700), 0 0 0 9999px #00000073;pointer-events:none;transition:top .24s var(--ease-out), left .24s var(--ease-out), width .24s var(--ease-out), height .24s var(--ease-out);position:fixed}.tour-backdrop{background:#00000073;position:fixed;inset:0}.tour-card{border-radius:var(--radius-large);background:var(--surface);width:min(370px,100vw - 32px);box-shadow:var(--shadow-border), var(--shadow-modal);outline:none;gap:7px;padding:16px 16px 13px;display:grid;position:fixed}.tour-card.centered{top:50%;left:50%;transform:translate(-50%,-50%)}.tour-kicker{color:var(--ds-blue-900);letter-spacing:.08em;text-transform:uppercase;font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:600;display:inline-flex}.tour-card h2{letter-spacing:-.015em;margin:0;font-size:15px;font-weight:600}.tour-card>p{color:var(--text-secondary);text-wrap:pretty;margin:0;font-size:12.5px;line-height:1.55}.tour-footer{align-items:center;gap:12px;margin-top:8px;display:flex}.tour-skip{color:var(--text-tertiary);cursor:pointer;font:inherit;transition:color var(--duration) var(--ease);background:0 0;border:0;padding:0;font-size:11.5px}.tour-skip:hover{color:var(--text)}.tour-dots{flex:1;justify-content:center;gap:4px;display:flex}.tour-dots span{background:var(--ds-gray-alpha-300);width:5px;height:5px;transition:background-color var(--duration) var(--ease);border-radius:50%}.tour-dots span.active{background:var(--ds-blue-700)}.tour-nav{flex:none;gap:6px;display:flex}:root[data-theme=dark] .tour-ring,:root[data-theme=dark] .tour-backdrop{--tour-dim:#00000094}:root[data-theme=dark] .tour-ring{box-shadow:0 0 0 2px var(--ds-blue-600), 0 0 0 9999px var(--tour-dim)}:root[data-theme=dark] .tour-backdrop{background:var(--tour-dim)}@media (width<=640px){.tour-dots{display:none}.tour-footer{justify-content:space-between}}@media (prefers-reduced-motion:reduce){.tour-ring{transition:none}}@media (width<=1380px){.overview-grid{grid-template-columns:minmax(0,1fr);gap:32px}}@media (width<=900px){.settings-grid{grid-template-columns:minmax(0,1fr);gap:28px}.task-sidebar,.settings-menu{position:static}.settings-menu{scrollbar-width:none;grid-auto-columns:max-content;grid-auto-flow:column;gap:4px;padding-bottom:8px;overflow-x:auto}.settings-menu::-webkit-scrollbar{display:none}.auth-main{grid-template-columns:minmax(0,1fr)}.auth-aside{display:none}}@media (width<=820px){.app-shell{height:auto;display:block;overflow:visible}.workspace{display:block;overflow:visible}.topbar{position:sticky;top:0}.page,.page.framed{display:block;overflow:visible}.sidebar,:root[data-sidebar=collapsed] .sidebar{z-index:40;width:248px;box-shadow:var(--shadow-modal);transition:transform .24s var(--ease-out);align-items:stretch;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar[data-open=true],:root[data-sidebar=collapsed] .sidebar[data-open=true]{transform:none}:root[data-sidebar=collapsed] .sidebar .nav-link span,:root[data-sidebar=collapsed] .sidebar .nav-link small,:root[data-sidebar=collapsed] .sidebar .nav-section-header span,:root[data-sidebar=collapsed] .sidebar .user-row>span:last-child{display:revert}:root[data-sidebar=collapsed] .sidebar>.build-signature{display:flex}:root[data-sidebar=collapsed] .sidebar .brand-row{justify-content:flex-start;padding:0 12px 0 16px}:root[data-sidebar=collapsed] .sidebar .nav-link{justify-content:flex-start;gap:10px;min-height:32px;padding:0 10px}:root[data-sidebar=collapsed] .sidebar .nav-section-header{justify-content:space-between;padding:0 2px 0 10px}:root[data-sidebar=collapsed] .sidebar .user-row{justify-content:flex-start;gap:10px;padding:10px 16px}.sidebar-scrim{z-index:25;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;border:0;display:block;position:fixed;inset:0}.page{padding:24px 16px 56px}.topbar{padding:0 12px}.search-control{width:180px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.topbar .search-control{display:none}.topbar .mobile-search-button{display:grid}.page-header{gap:16px;display:grid}.page-title h1{font-size:24px}.page-actions{width:100%}.page-actions>*,.page-actions .button{flex:1}.stats,.board-list,.form-grid,.api-endpoints>div{grid-template-columns:minmax(0,1fr)}.task-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-form-pane{padding:88px 20px 24px}.auth-header{padding:0 16px}.dialog-layer{align-items:end;padding:0}.dialog,.dialog.wide{border-radius:var(--radius-xlarge) var(--radius-xlarge) 0 0;width:100%;max-height:92vh;overflow-y:auto;transform:translateY(16px)}.dialog-footer{padding-bottom:max(16px, env(safe-area-inset-bottom));border-radius:0}.toast-stack{width:auto;left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.board-card:hover{transform:none}.route-progress[data-active=true]:before{width:100%;animation:none;transform:none}}:root[data-panel=collapsed] :is(.study-course-panel,.semester-term-panel,.course-panel){display:none}:root[data-panel=collapsed] :is(.study-planner,.semester-planner,.course-workspace){grid-template-columns:minmax(0,1fr)}.context-panel-toggle{color:var(--text-tertiary);flex:none;align-self:center}.context-panel-toggle:hover{color:var(--text)}.study-week-header .study-week-title,.semester-term-header .semester-term-title,.course-header .course-title{flex:1}@media (width<=640px){.context-panel-toggle{align-self:flex-start}}.study-page{padding:0;overflow:hidden}.study-page>*{max-width:none}.study-planner{grid-template-columns:248px minmax(0,1fr);height:100%;min-height:0;display:grid}.study-course-panel{border-right:1px solid var(--border);background:var(--surface-sunken);flex-direction:column;min-width:0;min-height:0;padding:16px 12px 0;display:flex}.study-panel-heading{gap:3px;margin-bottom:16px;padding:0 10px;display:grid}.study-panel-heading h1{letter-spacing:-.015em;margin:0;font-size:16px;font-weight:600}.study-panel-heading span{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:12px}.study-week-stats{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 14px;padding:10px 2px;display:grid}.study-week-stats>div{gap:4px;padding:0 10px;display:grid}.study-week-stats>div+div{border-left:1px solid var(--border)}.study-week-stats dt{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:500}.study-week-stats dd{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:16px;font-weight:500;line-height:1}.study-course-heading{justify-content:space-between;align-items:center;min-height:28px;margin-bottom:6px;padding:0 6px 0 10px;display:flex}.study-course-heading h2{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:10px;font-weight:500}.study-course-heading .icon-button{color:var(--text-secondary)}.study-course-list{flex:auto;align-content:start;gap:2px;min-height:0;padding-bottom:12px;display:grid;overflow-y:auto}.study-course-link{border-radius:var(--radius-small);min-height:32px;color:var(--text-secondary);transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);align-items:center;gap:10px;padding:0 10px;font-size:12.5px;text-decoration:none;display:flex}.study-course-link:hover{color:var(--text);background:var(--surface-hover)}.study-course-link.active{color:var(--text);background:var(--surface-active);font-weight:500}.study-course-link>span:not(.study-course-accent){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.study-course-link svg{width:15px;height:15px;color:var(--text-tertiary);flex:none}.study-course-link small{color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-left:auto;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px}.study-course-link small:not(.muted){color:var(--text-secondary)}.study-course-accent{background:var(--text-tertiary);border-radius:2px;flex:none;width:3px;height:16px}.study-course-accent.course-blue{background:var(--ds-blue-700)}.study-course-accent.course-green{background:var(--ds-green-700)}.study-course-accent.course-purple{background:var(--ds-purple-700)}.study-course-accent.course-amber{background:var(--ds-amber-700)}.study-course-accent.course-red{background:var(--ds-red-700)}.study-limits{border-top:1px solid var(--border);flex:none}.study-limits-toggle{width:100%;min-height:42px;color:var(--text-tertiary);cursor:pointer;font:inherit;text-align:left;transition:color var(--duration) var(--ease);background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:11px;display:flex}.study-limits-toggle:hover{color:var(--text)}.study-limits-toggle small{color:var(--text-tertiary);text-underline-offset:2px;font-size:11px;text-decoration:underline}.study-limits-form{gap:6px;padding:12px 10px 14px;display:grid}.study-limits-form p{color:var(--text-tertiary);margin:0 0 2px;font-size:11px;line-height:1.45}.study-limits-form label{border-radius:var(--radius-medium);min-height:36px;color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-border);justify-content:space-between;align-items:center;gap:12px;padding:0 4px 0 8px;font-size:12px;display:flex}.study-limits-input{width:84px;display:block;position:relative}.study-limits-form .study-limits-input .input{font-variant-numeric:tabular-nums;height:30px;padding-right:30px}.study-limits-input small{color:var(--text-tertiary);pointer-events:none;font-size:9px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.study-limits-actions{justify-content:flex-end;gap:6px;margin-top:2px;display:flex}.study-week{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.study-week-header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:20px;padding:14px 24px;display:flex}.study-week-title{min-width:0}.study-week-title h1{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:600;line-height:1.2}.study-week-title>p{color:var(--text-tertiary);text-wrap:pretty;margin:2px 0 0;font-size:12px;line-height:1.45}.study-week-actions{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.study-week-actions .button.primary{color:#fff;background:var(--ds-blue-700)}.study-week-actions .button.primary:hover{background:var(--ds-blue-800)}.study-unplanned{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);flex:none;align-content:start;gap:4px;margin-bottom:12px;padding:10px 12px 12px;display:grid}.study-unplanned h2{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;margin:0 0 2px;font-size:10px;font-weight:500}.study-unplanned-list{display:grid}.study-unplanned-list button{min-height:34px;color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-content:center;gap:2px;padding:5px 2px;display:grid}.study-unplanned-list button+button{border-top:1px solid var(--border)}.study-unplanned-list strong{text-overflow:ellipsis;white-space:nowrap;transition:color var(--duration) var(--ease);font-size:12px;font-weight:500;overflow:hidden}.study-unplanned-list button:hover strong{color:var(--ds-blue-900)}.study-unplanned-list small{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.study-unplanned-rest,.study-unplanned-empty{color:var(--text-tertiary);margin:4px 0 0;font-size:11px}.study-days{flex:1;min-height:0;overflow-y:auto}.study-day{border-bottom:1px solid var(--border);grid-template-columns:148px minmax(0,1fr);align-items:stretch;min-height:80px;display:grid;position:relative}.study-day.collapsed{min-height:46px}.study-day.today:before{background:var(--ds-blue-700);content:"";width:2px;position:absolute;top:0;bottom:0;left:0}.study-day-date{border-right:1px solid var(--border);color:var(--text-secondary);align-content:center;gap:2px;padding:10px 16px 10px 24px;display:grid}.study-day-weekday{color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.study-day-date strong{font-size:13px;font-weight:450}.study-day-date small{border-radius:var(--radius-small);width:max-content;color:var(--ds-blue-900);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-blue-700) 55%, transparent);margin-top:2px;padding:1px 6px;font-size:11px}.study-day.today .study-day-date strong{color:var(--ds-blue-900);font-weight:500}.study-day-load{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:5px;display:grid}.study-day-track{border-radius:var(--radius-full);background:var(--ds-gray-alpha-200);height:5px;display:block;overflow:hidden}.study-day-bar{border-radius:inherit;background:var(--ds-green-700);height:100%;transition:width .2s var(--ease-out);display:block}.study-day[data-load=high] .study-day-bar{background:var(--ds-amber-700)}.study-day[data-load=needs-estimates] .study-day-bar{background:repeating-linear-gradient(115deg, var(--ds-gray-600) 0 2px, transparent 2px 5px), var(--ds-gray-alpha-300)}.study-day-load-time{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;line-height:1}.study-day[data-load=high] .study-day-load-time{color:var(--ds-amber-900)}.study-day-content-shell{min-width:0}.study-day-content{min-width:0;min-height:0;overflow:hidden}.study-day-summary{grid-template-columns:auto minmax(160px,1fr) auto;align-items:center;gap:6px 14px;min-height:45px;padding:6px 96px 6px 20px;display:grid}.study-day-summary-count{color:var(--text-tertiary);white-space:nowrap;font-size:11px;font-weight:500}.study-day-summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:550;overflow:hidden}.study-day-summary-meta{color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.study-assignment-scroller{overscroll-behavior-x:contain;scrollbar-width:none;min-width:0;padding:8px 56px 8px 12px;overflow-x:auto}.study-assignment-scroller::-webkit-scrollbar{display:none}.study-assignment-scroller[data-scroll-left=true]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px 100%);mask-image:linear-gradient(90deg,#0000,#000 28px 100%)}.study-assignment-scroller[data-scroll-right=true]{-webkit-mask-image:linear-gradient(90deg,#000 0 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 0 calc(100% - 28px),#0000)}.study-assignment-scroller[data-scroll-left=true][data-scroll-right=true]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000)}.study-assignment-track{grid-auto-columns:minmax(208px,256px);grid-auto-flow:column;gap:6px;width:max-content;min-width:0;display:grid}.study-no-assignments{min-height:56px;color:var(--text-tertiary);align-items:center;padding:0 20px;font-size:12px;display:flex}.study-assignment{--study-course-glow:var(--ds-gray-500);border-radius:var(--radius-large);min-height:72px;color:var(--text);background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--study-course-glow) 18%, transparent), transparent 76px), var(--surface);box-shadow:var(--shadow-border);transition:background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);grid-template-rows:auto minmax(0,1fr) auto;gap:6px;padding:9px 11px;text-decoration:none;display:grid;position:relative}.study-assignment.course-blue{--study-course-glow:var(--ds-blue-700)}.study-assignment.course-green{--study-course-glow:var(--ds-green-700)}.study-assignment.course-purple{--study-course-glow:var(--ds-purple-700)}.study-assignment.course-amber{--study-course-glow:var(--ds-amber-700)}.study-assignment.course-red{--study-course-glow:var(--ds-red-700)}.study-assignment-header,.study-assignment-footer{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.study-assignment>strong{letter-spacing:-.02em;text-wrap:pretty;-webkit-line-clamp:2;-webkit-box-orient:vertical;align-self:center;font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.study-assignment-course{min-width:0;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;font-size:11px;font-weight:500;display:flex;overflow:hidden}.study-assignment-due,.study-assignment-footer>span{color:var(--text-tertiary);white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:11px;display:flex}.study-assignment-footer{justify-content:flex-start;gap:11px}.study-assignment-due svg,.study-assignment-footer svg{color:var(--text-tertiary);flex:none}.study-assignment-open{color:var(--text-tertiary);opacity:.55;transition:color var(--duration) var(--ease), opacity var(--duration) var(--ease), transform .15s var(--ease-out);margin-left:auto}@media (hover:hover) and (pointer:fine){.study-assignment:hover{background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--study-course-glow) 22%, transparent), transparent 82px), var(--surface-hover);box-shadow:0 0 0 1px var(--border-strong), var(--shadow-small)}.study-assignment:hover .study-assignment-open{color:var(--text);opacity:1;transform:translate(2px,-2px)}}.study-focus-blocks{scrollbar-width:none;align-items:center;gap:5px;padding:1px 56px 10px 14px;display:flex;overflow-x:auto}.study-focus-blocks::-webkit-scrollbar{display:none}.study-focus-heading{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;flex:none;font-size:10px;font-weight:500}.study-focus-item{flex:none;align-items:center;display:flex;position:relative}.study-focus-chip{border-radius:var(--radius-full);max-width:240px;min-height:24px;color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-border);transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);flex:none;align-items:center;gap:7px;padding:0 9px;font-size:11px;text-decoration:none;display:flex}@supports (corner-shape:squircle){.study-focus-chip,.study-focus-actions{corner-shape:squircle}}.study-focus-item:has(.study-focus-remove) .study-focus-chip{padding-right:30px}.study-focus-remove{border-radius:var(--radius-full);width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;right:5px}.study-focus-remove:hover,.study-focus-chip:hover{color:var(--text);background:var(--surface-hover)}.study-focus-chip strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.study-focus-chip small{color:var(--text-tertiary);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.study-focus-dot{background:var(--ds-gray-500);border-radius:50%;flex:none;width:6px;height:6px}.study-focus-dot.course-blue{background:var(--ds-blue-700)}.study-focus-dot.course-green{background:var(--ds-green-700)}.study-focus-dot.course-purple{background:var(--ds-purple-700)}.study-focus-dot.course-amber{background:var(--ds-amber-700)}.study-focus-dot.course-red{background:var(--ds-red-700)}.study-day-toggle{z-index:2;border-radius:var(--radius-small);width:auto;height:28px;color:var(--text-tertiary);cursor:pointer;opacity:.7;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), opacity var(--duration) var(--ease);background:0 0;border:0;place-items:center;gap:5px;padding:0 8px;display:flex;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.study-day-toggle-label{letter-spacing:.04em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:9px;font-weight:600}.study-day-toggle:hover{color:var(--text);background:var(--surface-hover);opacity:1}.study-day-toggle-icons{width:13px;height:13px;position:relative}.study-day-toggle-icons svg{opacity:1;filter:blur();transition:opacity .18s cubic-bezier(.2,0,0,1),filter .18s cubic-bezier(.2,0,0,1),scale .18s cubic-bezier(.2,0,0,1);position:absolute;inset:0;scale:1}.study-day-toggle-icons .expand-icon,.study-day.collapsed .study-day-toggle-icons .collapse-icon{opacity:0;filter:blur(4px);scale:.25}.study-day.collapsed .study-day-toggle-icons .expand-icon{opacity:1;filter:blur();scale:1}.study-week-footer{border-top:1px solid var(--border);min-height:34px;color:var(--text-tertiary);flex:none;justify-content:center;align-items:center;font-size:12px;display:flex}.study-week-footer svg{width:15px;height:15px;color:var(--text-tertiary);flex:none}.study-week-footer a,.study-week-footer span,.study-week-footer button{color:inherit;transition:color var(--duration) var(--ease);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.study-week-footer button{cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.study-week-footer a:hover{color:var(--text)}.study-availability-summary{border-top:1px solid var(--border);padding:12px 0 14px}.study-availability-summary>:is(button,a){border-radius:var(--radius-medium);width:100%;color:var(--text-secondary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;gap:4px;padding:10px;text-decoration:none;display:grid}.study-availability-summary>:is(button,a):hover{background:var(--surface-hover)}.study-availability-summary span{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:7px;font-size:11px;display:flex}.study-availability-summary strong{font-family:Geist Mono Variable,ui-monospace,monospace;font-size:14px;font-weight:500}.study-availability-summary small{color:var(--text-tertiary);font-size:10px}.study-workflow-band{border-bottom:1px solid var(--border);background:var(--surface-sunken);flex:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:52px;padding:8px 24px;display:grid;position:relative}.study-workflow-band.recovery{border-left:3px dashed var(--ds-amber-700);background:color-mix(in srgb, var(--ds-amber-100) 56%, var(--surface))}.study-workflow-band>div:not(.study-onboarding-progress){gap:3px;display:grid}.study-workflow-band strong{font-size:13px;font-weight:600}.study-workflow-band p{color:var(--text-tertiary);margin:0;font-size:12px}.study-workflow-mark{width:26px;height:26px;color:var(--ds-amber-900);background:var(--surface);box-shadow:var(--shadow-border);border-radius:50%;place-items:center;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:14px;display:grid}.study-onboarding-progress{align-items:center;gap:5px;width:72px;display:flex}.study-onboarding-progress span{background:var(--ds-gray-400);width:8px;height:8px;box-shadow:0 0 0 1px var(--border);border-radius:50%}.study-onboarding-progress span.complete{background:var(--ds-green-700)}.study-onboarding-progress span.current{background:var(--ds-blue-700);box-shadow:0 0 0 3px var(--ds-blue-300)}.study-day.needs-repair:after{z-index:1;border-left:2px dashed var(--ds-amber-700);content:"";position:absolute;inset:5px auto 5px 4px}.study-day[data-load=overloaded] .study-day-bar{background:var(--ds-amber-700)}.study-day[data-load=blocked] .study-day-bar{background:var(--ds-gray-500)}.study-day[data-load=overloaded] .study-day-load-time{color:var(--ds-amber-900)}.study-day-load-time{text-align:right;min-width:64px}.study-focus-item:has(.study-focus-actions){padding-right:0}.study-focus-item:has(.study-focus-actions) .study-focus-chip{border-radius:var(--radius-full) 0 0 var(--radius-full)}.study-focus-actions{border-radius:0 var(--radius-full) var(--radius-full) 0;background:var(--surface);min-height:24px;box-shadow:var(--shadow-border);align-items:stretch;display:flex;overflow:hidden}.study-focus-actions button{border:0;border-left:1px solid var(--border);color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;padding:0 9px;font-size:10px;font-weight:550}.study-focus-actions button:first-child{color:var(--ds-green-900)}.study-focus-actions button:last-child{color:var(--ds-red-900)}.study-focus-actions button:hover{background:var(--surface-hover)}.study-focus-chip em{border-radius:var(--radius-full);color:var(--ds-green-900);background:var(--ds-green-200);text-transform:uppercase;padding:1px 5px;font-size:9px;font-style:normal;font-weight:600}.study-focus-item.completed .study-focus-chip{color:var(--text-tertiary);background:color-mix(in srgb, var(--ds-green-100) 66%, var(--surface))}.study-focus-item.skipped .study-focus-chip{color:var(--text-tertiary);text-decoration:line-through}.study-focus-item.skipped .study-focus-chip em{color:var(--text-tertiary);background:var(--surface-active);text-decoration:none}.dialog.compact{width:min(430px,100%)}.study-estimate-dialog{width:min(920px,100%);max-height:min(860px,100vh - 48px)}.study-estimate-dialog .dialog-body{gap:22px;display:grid;overflow-y:auto}.study-preset-editor,.study-availability-section{gap:10px;display:grid}.study-preset-editor h3,.study-section-heading :is(h2,h3){margin:0;font-size:13px;font-weight:600}.study-preset-editor>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.study-preset-editor label,.study-capacity-grid label{border-radius:var(--radius-medium);background:var(--surface-sunken);gap:6px;padding:9px 10px;font-size:11px;display:grid}.study-preset-editor label>span:last-child,.study-estimate-list article>label{position:relative}.study-preset-editor input,.study-estimate-list input,.study-capacity-grid input{border:1px solid var(--border-strong);border-radius:var(--radius-small);width:100%;height:32px;color:var(--text);background:var(--surface);font:inherit;font-variant-numeric:tabular-nums;padding:0 34px 0 9px}.study-preset-editor small,.study-estimate-list label small{color:var(--text-tertiary);font-size:9px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.study-estimate-list{border-top:1px solid var(--border);display:grid}.study-estimate-list article{border-bottom:1px solid var(--border);grid-template-columns:minmax(220px,1fr) 150px 100px;align-items:center;gap:12px;min-height:60px;display:grid}.study-estimate-list article>div{gap:3px;display:grid}.study-estimate-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.study-estimate-list small{color:var(--text-tertiary);font-size:10px}.study-estimate-list select{border:1px solid var(--border-strong);border-radius:var(--radius-small);height:32px;color:var(--text-secondary);background:var(--surface);font:inherit;font-size:11px}.study-section-heading{justify-content:space-between;align-items:baseline;display:flex}.study-section-heading span{color:var(--text-tertiary);font-size:10px}.study-capacity-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.study-capacity-grid label{text-align:center;padding:8px}.study-capacity-grid input{text-align:center;padding:0 5px}.study-inline-add,.study-conflict-builder,.study-commitment-builder{gap:8px;display:grid}.study-inline-add{grid-template-columns:minmax(0,220px) auto;justify-content:start}.study-setting-chips{flex-wrap:wrap;gap:6px;display:flex}.study-setting-chips>span{border-radius:var(--radius-full);background:var(--surface-sunken);min-height:26px;box-shadow:var(--shadow-border);align-items:center;gap:6px;padding:0 5px 0 9px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;display:inline-flex}.study-setting-chips button,.study-setting-list button{color:var(--text-tertiary);cursor:pointer;font:inherit;background:0 0;border:0}.study-setting-list{gap:5px;display:grid}.study-setting-list article{border-radius:var(--radius-medium);background:var(--surface-sunken);justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:7px 10px;display:flex}.study-setting-list article>span{gap:2px;display:grid}.study-setting-list strong{font-size:11px}.study-setting-list small,.study-setting-list button{color:var(--text-tertiary);font-size:10px}.study-commitment-builder{grid-template-columns:repeat(2,minmax(0,1fr))}.study-commitment-builder>.input,.study-conflict-builder>.input{grid-column:1/-1}.study-commitment-builder>.button,.study-conflict-builder>.button{grid-column:1/-1;justify-self:start}.study-commitment-builder fieldset{border:0;grid-column:1/-1;align-items:center;gap:5px;padding:0;display:flex}.study-commitment-builder legend{color:var(--text-tertiary);margin-bottom:6px;font-size:10px}.study-commitment-builder fieldset label{position:relative}.study-commitment-builder fieldset input{opacity:0;position:absolute}.study-commitment-builder fieldset span{border-radius:var(--radius-small);background:var(--surface-sunken);min-width:38px;height:28px;box-shadow:var(--shadow-border);color:var(--text-tertiary);cursor:pointer;place-items:center;font-size:10px;display:grid}.study-commitment-builder fieldset input:checked+span{color:var(--ds-blue-900);background:var(--ds-blue-200);box-shadow:0 0 0 1px var(--ds-blue-500)}.study-conflict-builder{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-settings-form{gap:20px;padding:16px;display:grid}.availability-settings-summary{border-bottom:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;font-size:12px;display:flex}.availability-settings-summary>div{gap:2px;display:grid}.availability-settings-summary strong{color:var(--text);font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:16px}.availability-settings-form .study-availability-section{grid-template-columns:168px minmax(0,1fr);align-items:start;gap:8px 24px;display:grid}.availability-settings-form .study-section-heading{grid-column:1;display:block}.availability-settings-form .study-section-heading span{margin-top:2px;display:block}.availability-settings-form .study-availability-section>:not(.study-section-heading){grid-column:2}@media (width<=900px){.availability-settings-form .study-availability-section{grid-template-columns:minmax(0,1fr)}.availability-settings-form .study-availability-section>:not(.study-section-heading){grid-column:1}}@media (width<=820px){.study-workflow-band{grid-template-columns:auto minmax(0,1fr);padding:14px 16px}.study-workflow-band .button{grid-column:1/-1;width:100%}.study-preset-editor>div,.study-capacity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.study-estimate-list article,.study-commitment-builder,.study-conflict-builder{grid-template-columns:minmax(0,1fr);padding:10px 0}.study-focus-actions button{padding-inline:7px}}@media (width<=1380px){.study-planner{grid-template-columns:228px minmax(0,1fr)}.study-assignment-track{grid-auto-columns:minmax(200px,244px)}}@media (width<=1120px){.study-day{grid-template-columns:128px minmax(0,1fr)}.study-day-date{padding-left:20px}}@media (width<=820px){.study-page{overflow:visible}.study-planner{height:auto;display:block}.study-course-panel{border-right:0;border-bottom:1px solid var(--border);padding:14px 16px}.study-panel-heading,.study-unplanned,.study-limits{display:none}.study-week-stats{margin-bottom:12px}.study-course-list{scrollbar-width:none;gap:6px;padding-bottom:0;display:flex;overflow-x:auto}.study-course-list::-webkit-scrollbar{display:none}.study-course-link{flex:none;padding-inline:12px}.study-week,.study-days{overflow:visible}}@media (width<=640px){.study-week-header{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}.study-week-actions>*,.study-week-actions .button{flex:1}.study-day,.study-day.collapsed{grid-template-columns:minmax(0,1fr);min-height:0;padding-bottom:10px}.study-day-date{border-right:0;align-items:center;gap:10px;padding:12px 56px 0 16px;display:flex}.study-day-date small{margin-top:0}.study-day-load{min-width:96px;margin-top:0;margin-left:auto}.study-day-summary{grid-template-columns:minmax(0,1fr);gap:2px;padding:10px 16px}.study-day-summary-count{display:none}.study-day-summary-meta{text-overflow:ellipsis;overflow:hidden}.study-assignment-scroller{padding:10px 0 10px 16px}.study-no-assignments{min-height:44px;padding-inline:16px}.study-focus-blocks{padding:1px 16px 13px}.study-day-toggle{top:14px;right:12px;transform:none}}@media (prefers-reduced-motion:reduce){.study-day-toggle,.study-day-toggle-icons svg,.study-day-bar,.study-assignment-open{transition-duration:1ms;animation-duration:1ms}}::view-transition-group(study-day-0){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}::view-transition-group(study-day-1){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}::view-transition-group(study-day-2){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}::view-transition-group(study-day-3){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}::view-transition-group(study-day-4){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}::view-transition-group(study-day-5){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}::view-transition-group(study-day-6){animation-duration:.22s;animation-timing-function:cubic-bezier(.23,1,.32,1)}@media (prefers-reduced-motion:reduce){::view-transition-group(study-day-0){animation-duration:1ms}::view-transition-group(study-day-1){animation-duration:1ms}::view-transition-group(study-day-2){animation-duration:1ms}::view-transition-group(study-day-3){animation-duration:1ms}::view-transition-group(study-day-4){animation-duration:1ms}::view-transition-group(study-day-5){animation-duration:1ms}::view-transition-group(study-day-6){animation-duration:1ms}}.study-session-panel{border:1px solid var(--border);border-radius:var(--radius-large);background:color-mix(in srgb, var(--surface) 92%, var(--ds-blue-100));gap:14px;padding:18px 18px 16px 20px;display:grid;position:relative;box-shadow:0 1px 2px #0f172a0a}.study-session-panel:before{border-radius:0 var(--radius-full) var(--radius-full) 0;background:var(--ds-blue-600);content:"";width:3px;position:absolute;inset:10px auto 10px 0}.study-session-panel.course{background:var(--surface-sunken);box-shadow:none;border-width:1px 0;border-radius:0;flex:none;gap:8px;padding:8px 24px 9px}.study-session-panel.course .study-session-heading>div{align-items:baseline;gap:10px;display:flex}.study-session-panel.course .study-session-heading h2{margin:0;font-size:12.5px}.study-session-panel.course:before{inset-block:0}.study-session-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.study-session-heading>div{min-width:0}.study-session-kicker{color:var(--ds-blue-700);letter-spacing:.1em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:600}.study-session-heading h2{color:var(--text);letter-spacing:-.015em;margin:3px 0 0;font-size:15px;font-weight:600}.study-session-heading p{color:var(--text-tertiary);margin:3px 0 0;font-size:12px}.study-session-list{border:1px solid var(--border);border-radius:var(--radius-medium);background:var(--border);gap:1px;display:grid;overflow:hidden}.study-session-panel.course .study-session-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-height:108px;overflow-y:auto}.study-session-row{background:var(--surface);grid-template-columns:minmax(145px,1fr) auto auto;align-items:center;gap:8px;min-width:0;padding:7px 10px;display:grid}.study-session-panel.course .study-session-row{grid-template-columns:minmax(120px,auto) minmax(110px,1fr) auto}.study-session-row.history{color:var(--text-tertiary);background:color-mix(in srgb, var(--surface) 78%, var(--surface-sunken))}.study-session-date,.study-session-date>span{min-width:0;display:flex}.study-session-date{align-items:center;gap:8px}.study-session-date>span{flex-direction:column;gap:1px}.study-session-date svg{color:var(--ds-blue-600);flex:none}.study-session-date strong,.study-session-assignment{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:550;overflow:hidden}.study-session-date small{color:var(--text-tertiary);font-size:11px}.study-session-assignment{color:var(--text-secondary);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.study-session-assignment:hover{color:var(--text)}.study-session-state{border-radius:var(--radius-full);color:var(--text-tertiary);background:var(--surface-sunken);text-transform:uppercase;padding:3px 7px;font-size:10px;font-weight:600}.study-session-state.planned{color:var(--ds-blue-800);background:var(--ds-blue-100)}.study-session-state.completed{color:var(--ds-green-900);background:var(--ds-green-200)}.study-session-actions{border-top:1px solid var(--border);grid-column:1/-1;align-items:center;gap:4px;padding-top:7px;display:flex}.study-session-actions button:not(.icon-button){border-radius:var(--radius-small);color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;border:0;padding:3px 6px;font-size:11px}.study-session-actions button:hover{color:var(--text);background:var(--surface-hover)}.study-session-actions .icon-button{width:26px;height:26px;margin-left:auto}.study-session-empty{border:1px dashed var(--border);border-radius:var(--radius-medium);color:var(--text-tertiary);margin:0;padding:11px 12px;font-size:12px}.study-session-panel.course .study-session-empty{border:0;padding:4px 0 0;font-size:11px}.study-session-error{margin:0}@media (width<=1380px){.study-session-panel.course{padding-inline:24px}}@media (width<=640px){.study-session-panel,.study-session-panel.course{padding:14px 16px}.study-session-heading{flex-direction:column;align-items:stretch;gap:10px}.study-session-heading .button{width:100%}.study-session-panel.course .study-session-list{grid-template-columns:minmax(0,1fr)}.study-session-panel.course .study-session-row{grid-template-columns:minmax(0,1fr) auto}.study-session-panel.course .study-session-assignment{grid-area:2/1/auto/-1}}.semester-page{padding:0;overflow:hidden}.semester-page>*{max-width:none}.semester-planner{grid-template-columns:248px minmax(0,1fr);height:100%;min-height:0;display:grid}.semester-term-panel{border-right:1px solid var(--border);background:var(--surface-sunken);flex-direction:column;min-width:0;min-height:0;padding:16px 12px 0;display:flex}.semester-term-heading{gap:3px;margin-bottom:16px;padding:0 10px;display:grid}.semester-term-heading h1{letter-spacing:-.015em;margin:0;font-size:16px;font-weight:600}.semester-term-heading span{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:12px}.semester-term-stats{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 14px;padding:10px 2px;display:grid}.semester-term-stats>div{gap:4px;padding:0 10px;display:grid}.semester-term-stats>div+div{border-left:1px solid var(--border)}.semester-term-stats dt{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:500}.semester-term-stats dd{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:16px;font-weight:500;line-height:1}.semester-ladder{flex:auto;align-content:start;gap:1px;min-height:0;padding-bottom:12px;display:grid;overflow-y:auto}.semester-ladder-row{border-radius:var(--radius-small);min-height:34px;color:var(--text-secondary);cursor:pointer;font:inherit;text-align:left;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);background:0 0;border:0;grid-template-columns:16px minmax(0,1fr) 58px;align-items:center;gap:10px;padding:0 10px;font-size:12px;display:grid}.semester-ladder-row:hover{color:var(--text);background:var(--surface-hover)}.semester-ladder-row.active{color:var(--text);background:var(--surface-active);font-weight:500}.semester-ladder-week{color:var(--text-tertiary);text-align:right;font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.semester-ladder-row.active .semester-ladder-week{color:var(--text)}.semester-ladder-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.semester-ladder-track{border-radius:var(--radius-full);background:var(--ds-gray-alpha-200);height:6px;display:block;overflow:hidden}.semester-ladder-bar{border-radius:inherit;background:var(--ds-green-700);height:100%;transition:width .2s var(--ease-out);display:block}.semester-ladder-row[data-load=high] .semester-ladder-bar{background:var(--ds-amber-700)}.semester-ladder-row[data-load=needs-estimates] .semester-ladder-bar{background:repeating-linear-gradient(115deg, var(--ds-gray-600) 0 2px, transparent 2px 5px), var(--ds-gray-alpha-300)}.semester-ladder-key{border-top:1px solid var(--border);color:var(--text-tertiary);margin:0;padding:10px 12px;font-size:10px;line-height:1.45}.semester-term{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.semester-term-header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:20px;padding:14px 24px;display:flex}.semester-term-title{min-width:0}.semester-term-title h1{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:600;line-height:1.2}.semester-term-title>p{color:var(--text-tertiary);margin:2px 0 0;font-size:12px;line-height:1.45}.semester-term-actions{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.semester-term-actions .button.primary{color:#fff;background:var(--ds-blue-700)}.semester-term-actions .button.primary:hover{background:var(--ds-blue-800)}.semester-upcoming{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);flex:none;align-content:start;gap:2px;margin-bottom:12px;padding:10px 12px 12px;display:grid}.semester-upcoming h2{color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;margin:0 0 2px;font-size:10px;font-weight:500}.semester-upcoming-list{display:grid}.semester-upcoming-list a{min-height:30px;color:var(--text);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 2px;text-decoration:none;display:grid}.semester-upcoming-list a+a{border-top:1px solid var(--border)}.semester-upcoming-list strong{text-overflow:ellipsis;white-space:nowrap;transition:color var(--duration) var(--ease);font-size:12px;font-weight:500;overflow:hidden}.semester-upcoming-list a:hover strong{color:var(--ds-blue-900)}.semester-upcoming-list small{color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.semester-course-dot{background:var(--ds-gray-500);border-radius:50%;flex:none;width:7px;height:7px}.semester-course-dot.course-blue{background:var(--ds-blue-700)}.semester-course-dot.course-green{background:var(--ds-green-700)}.semester-course-dot.course-purple{background:var(--ds-purple-700)}.semester-course-dot.course-amber{background:var(--ds-amber-700)}.semester-course-dot.course-red{background:var(--ds-red-700)}.semester-weeks{flex:1;min-height:0;overflow-y:auto}.semester-week{border-bottom:1px solid var(--border);grid-template-columns:168px minmax(0,1fr);align-items:stretch;min-height:56px;display:grid;position:relative}.semester-week.empty{min-height:40px}.semester-week.current:before{background:var(--ds-blue-700);content:"";width:2px;position:absolute;top:0;bottom:0;left:0}.semester-week-date{border-right:1px solid var(--border);color:var(--text-secondary);align-content:center;justify-items:start;gap:2px;padding:8px 16px 8px 24px;display:grid}.semester-week-date>span{color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.semester-week-date strong{font-size:13px;font-weight:450}.semester-week-date small{border-radius:var(--radius-small);width:max-content;color:var(--ds-blue-900);box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-blue-700) 55%, transparent);margin-top:4px;padding:1px 6px;font-size:11px}.semester-week.current .semester-week-date strong{color:var(--ds-blue-900);font-weight:500}.semester-week-content{min-width:0}.semester-assignment-list{flex-wrap:wrap;align-content:center;align-items:center;gap:5px;min-height:100%;padding:8px 24px 8px 14px;display:flex}.semester-assignment{border-radius:var(--radius-full);min-width:0;max-width:340px;min-height:26px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);align-items:center;gap:7px;padding:0 10px;font-size:12px;text-decoration:none;display:inline-flex}@supports (corner-shape:squircle){.semester-assignment{border-radius:calc(var(--radius-full) * 2);corner-shape:squircle}}.semester-assignment:hover{background:var(--surface-hover);box-shadow:0 0 0 1px var(--border-strong), var(--shadow-small)}.semester-assignment strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.semester-assignment small{color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:11px}.semester-assignment small.muted{opacity:.7}.semester-no-assignments{height:100%;min-height:40px;color:var(--text-tertiary);align-items:center;padding:0 14px;font-size:12px;display:flex}.semester-week-load{color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-top:2px;font-size:11px;display:inline-flex}.semester-week-load:before{background:var(--ds-green-700);content:"";border-radius:50%;flex:none;width:6px;height:6px}.semester-week[data-load=high] .semester-week-load{color:var(--ds-amber-900)}.semester-week[data-load=high] .semester-week-load:before{background:var(--ds-amber-700)}.semester-week[data-load=needs-estimates] .semester-week-load:before{background:var(--ds-gray-600)}.semester-week.empty .semester-week-load:before{background:var(--ds-gray-500)}.semester-term-footer{border-top:1px solid var(--border);min-height:34px;color:var(--text-tertiary);flex:none;justify-content:center;align-items:center;font-size:12px;display:flex}.semester-term-footer a,.semester-term-footer span{color:inherit;transition:color var(--duration) var(--ease);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.semester-term-footer a:hover{color:var(--text)}.semester-term-footer svg{color:var(--text-tertiary);flex:none}@media (width<=1380px){.semester-planner{grid-template-columns:228px minmax(0,1fr)}}@media (width<=1120px){.semester-week{grid-template-columns:148px minmax(0,1fr)}.semester-week-date{padding-left:20px}}@media (width<=900px){.semester-planner{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.semester-term-panel{border-right:0;border-bottom:1px solid var(--border);padding:14px 16px}.semester-term-heading,.semester-upcoming,.semester-ladder,.semester-ladder-key{display:none}.semester-term-stats{margin:0}}@media (width<=640px){.semester-term-header{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}.semester-term-actions>.button{flex:1}.semester-week,.semester-week.empty{grid-template-columns:minmax(0,1fr);min-height:0;padding-bottom:10px}.semester-week-date{border-right:0;flex-wrap:wrap;align-items:baseline;column-gap:10px;padding:10px 16px 0;display:flex}.semester-week-load{margin:0 0 0 auto}.semester-assignment-list{padding:8px 16px}.semester-no-assignments{min-height:30px;padding:0 16px}}.course-page{padding:0;overflow:hidden}.course-page>*{max-width:none}.course-workspace{grid-template-columns:236px minmax(0,1fr);height:100%;min-height:0;display:grid}.course-panel{border-right:1px solid var(--border);background:var(--surface-sunken);flex-direction:column;min-width:0;min-height:0;padding:16px 12px 0;display:flex}.course-grade{gap:6px;margin-bottom:14px;padding:0 10px;display:grid}.course-grade h2{color:var(--text-secondary);letter-spacing:.02em;margin:0;font-size:12px;font-weight:500}.course-grade-score{color:var(--text);letter-spacing:-.04em;font-variant-numeric:tabular-nums;align-items:baseline;gap:1px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:28px;font-weight:500;line-height:.9;display:flex}.course-grade-score small{color:var(--text-tertiary);letter-spacing:-.02em;font-size:14px;font-weight:400}.course-grade-score.empty{color:var(--text-tertiary)}.course-grade-track{border-radius:var(--radius-full);background:var(--ds-gray-alpha-200);height:6px;display:block;overflow:hidden}.course-grade-fill{border-radius:inherit;background:var(--ds-green-700);height:100%;transition:width .24s var(--ease-out);display:block}.course-grade-detail{color:var(--text-tertiary);text-wrap:pretty;font-size:11px;line-height:1.45}.course-stats{border-radius:var(--radius-large);background:var(--surface);box-shadow:var(--shadow-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 14px;padding:10px 2px;display:grid}.course-stats>div{gap:4px;padding:0 10px;display:grid}.course-stats>div+div{border-left:1px solid var(--border)}.course-stats dt{color:var(--text-tertiary);letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.course-stats dd{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:16px;font-weight:500;line-height:1}.course-ladder{flex-direction:column;flex:auto;gap:6px;min-height:0;padding-bottom:12px;display:flex}.course-ladder h2{color:var(--text-secondary);letter-spacing:.02em;margin:0;padding:0 10px;font-size:12px;font-weight:500}.course-ladder-rows{align-content:start;gap:1px;min-height:0;display:grid;overflow-y:auto}.course-ladder-row{min-height:26px;color:var(--text-secondary);grid-template-columns:8px minmax(0,1fr) 52px 22px;align-items:center;gap:10px;padding:0 10px;font-size:12px;display:grid}.course-ladder-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.course-ladder-track{border-radius:var(--radius-full);background:var(--ds-gray-alpha-200);height:6px;display:block;overflow:hidden}.course-ladder-bar{border-radius:inherit;background:var(--ds-gray-alpha-500);height:100%;transition:width .2s var(--ease-out);display:block}.course-ladder-bar.complete{background:var(--ds-green-700)}.course-ladder-count{color:var(--text-tertiary);text-align:right;font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px}.course-main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.course-header{flex:none;justify-content:space-between;align-items:center;gap:20px;padding:14px 24px 12px;display:flex}.course-title{min-width:0}.course-title h1{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:19px;font-weight:600;line-height:1.2;overflow:hidden}.course-title p{max-width:68ch;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:12px;overflow:hidden}.canvas-source-link{width:fit-content;color:var(--text-secondary);align-items:center;gap:6px;margin-top:3px;font-size:11px;text-decoration:none;display:flex}.canvas-source-link:hover{color:var(--text)}.course-actions{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.course-actions .button.primary{color:#fff;background:var(--ds-blue-700)}.course-actions .button.primary:hover{background:var(--ds-blue-800)}.course-views{min-height:36px;box-shadow:inset 0 -1px 0 var(--border);scrollbar-width:none;flex:none;align-items:stretch;gap:16px;padding:0 24px;display:flex;overflow-x:auto}.course-views::-webkit-scrollbar{display:none}.view-tab{color:var(--text-tertiary);cursor:pointer;transition:color var(--duration) var(--ease);background:0 0;border:0;flex:none;align-items:center;gap:7px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.view-tab:hover,.view-tab.active{color:var(--text)}.view-tab:after{background:var(--text);content:"";opacity:0;height:2px;transition:opacity var(--duration) var(--ease), transform var(--duration) var(--ease);border-radius:1px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(.6)}.view-tab.active:after{opacity:1;transform:scaleX(1)}.course-tools{border-bottom:1px solid var(--border);flex-wrap:wrap;flex:none;align-items:center;gap:6px;min-height:40px;padding:5px 24px;display:flex}.course-search{align-items:center;width:236px;min-width:168px;margin-right:4px;display:flex;position:relative}.course-search>svg{color:var(--text-tertiary);pointer-events:none;position:absolute;left:9px}.course-search-input{border-radius:var(--radius-small);width:100%;height:30px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-border);transition:box-shadow var(--duration) var(--ease);border:0;padding:0 26px 0 28px;font-size:13px}.course-search-input::placeholder{color:var(--text-tertiary)}.course-search-input::-webkit-search-cancel-button{appearance:none}.course-search-input:hover{box-shadow:0 0 0 1px var(--ds-gray-alpha-500)}.course-search-input:focus{box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent);outline:0}.course-search-clear{border-radius:var(--radius-full);width:18px;height:18px;color:var(--text-tertiary);cursor:pointer;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease);background:0 0;border:0;place-items:center;display:grid;position:absolute;right:6px}.course-search-clear:hover{color:var(--text);background:var(--surface-hover)}.tool-trigger,.tool-clear{border-radius:var(--radius-small);height:30px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:0 9px;font-size:13px;font-weight:500;display:inline-flex}.tool-trigger:hover,.tool-clear:hover,.tool-trigger[aria-expanded=true]{color:var(--text);background:var(--surface-hover)}.tool-trigger svg{color:var(--text-tertiary);transition:color var(--duration) var(--ease);flex:none}.tool-trigger:hover svg,.tool-trigger.on svg{color:inherit}.tool-trigger.on{color:var(--text);background:var(--surface);box-shadow:var(--shadow-border)}.tool-badge{border-radius:var(--radius-full);color:#fff;background:var(--ds-blue-700);font-variant-numeric:tabular-nums;place-items:center;min-width:17px;height:17px;padding:0 4px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;display:grid}.tool-direction{color:var(--text-tertiary);font-family:Geist Mono Variable,ui-monospace,monospace;font-size:12px}.tool-option-count{color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-left:4px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px}.course-tools-status{min-width:0;color:var(--text-tertiary);align-items:center;gap:10px;margin-left:auto;font-size:12px;display:flex}.tool-result{text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;overflow:hidden}.tool-note{border-left:1px solid var(--border);white-space:nowrap;padding-left:10px}.course-empty .button{margin-top:12px}.course-canvas{overscroll-behavior-y:contain;flex:1;min-height:0;padding:14px 24px 18px;overflow-y:auto}.course-canvas:not(.flush)>*{max-width:1280px}.course-canvas.flush{padding:10px 24px 12px;overflow:hidden}.course-error{flex:none;margin:12px 24px 0}.course-footer{border-top:1px solid var(--border);min-height:36px;color:var(--text-tertiary);flex:none;justify-content:space-between;align-items:center;gap:20px;padding:0 24px;font-size:12px;display:flex}.course-view-summary{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:14px;min-width:0;display:inline-flex;overflow:hidden}.course-view-summary a,.course-gap{color:inherit;white-space:nowrap;transition:color var(--duration) var(--ease);flex:none;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.course-view-summary a:hover,a.course-gap:hover{color:var(--text)}.course-gap{font-size:13px}.course-footer svg{color:var(--text-tertiary);flex:none}@media (width<=1380px){.course-workspace{grid-template-columns:216px minmax(0,1fr)}.course-header,.course-views,.course-tools,.course-canvas,.course-canvas.flush,.course-footer{padding-inline:24px}.tool-note{display:none}.course-error{margin-inline:24px}}@media (width<=900px){.course-workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.course-panel{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:16px;padding:14px 16px;display:grid}.course-grade{gap:6px;margin:0;padding:0}.course-grade-score{font-size:28px}.course-grade-score small{font-size:14px}.course-stats{margin:0}.course-ladder{display:none}}@media (width<=820px){.course-page{overflow:visible}.course-workspace{height:auto}.course-main,.course-canvas,.course-canvas.flush{overflow:visible}}@media (width<=640px){.course-panel{grid-template-columns:minmax(0,1fr);gap:14px}.course-header{gap:12px;padding:14px 16px 12px;display:grid}.course-title h1,.course-title p{white-space:normal}.course-actions>.button{flex:1}.course-views,.course-tools,.course-canvas,.course-canvas.flush,.course-footer{padding-inline:16px}.course-search{width:100%;margin-right:0}.course-tools-status{width:100%;margin-left:0}.course-error{margin-inline:16px}.course-footer{flex-direction:column;align-items:flex-start;gap:6px;padding-block:12px}}.stage-tint{--stage:var(--ds-gray-600)}.stage-tint.status-in_progress,.stage-tint.progress,.stage-tint.workflow-blue{--stage:var(--ds-blue-700)}.stage-tint.status-review,.stage-tint.review,.stage-tint.workflow-purple{--stage:var(--ds-purple-700)}.stage-tint.status-done,.stage-tint.done,.stage-tint.workflow-green{--stage:var(--ds-green-700)}.stage-tint.priority-medium,.stage-tint.medium,.stage-tint.workflow-amber{--stage:var(--ds-amber-700)}.stage-tint.priority-high,.stage-tint.high,.stage-tint.workflow-orange{--stage:var(--ds-amber-800)}.stage-tint.priority-urgent,.stage-tint.urgent,.stage-tint.workflow-red{--stage:var(--ds-red-800)}.stage-tint.workflow-custom{--stage:var(--workflow-color)}.column-dot{border-radius:var(--radius-full);background:var(--stage,var(--ds-gray-600));flex:none;width:8px;height:8px}.stage-lane-header .column-dot{width:6px;height:6px}.measures{color:var(--text-tertiary);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px;line-height:1;display:flex}.measure-due{white-space:nowrap;font-weight:500}.measure-due[data-tone=overdue]{color:var(--ds-red-900)}.measure-due[data-tone=today]{color:var(--ds-amber-900)}.measure-due[data-tone=soon]{color:var(--text-secondary)}.measure-due[data-tone=none]{color:var(--ds-gray-600)}.measure-effort,.measure-grade{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.measure-effort:before,.measure-grade:before{color:var(--ds-gray-500);content:"·";margin-right:8px}.measure-effort.missing{color:var(--ds-gray-600)}.measure-grade{color:var(--text-secondary)}.measure-counts{flex:none;align-items:center;gap:9px;margin-left:auto;display:flex}.measure-counts>span{align-items:center;gap:4px;display:inline-flex}.measure-counts svg{color:var(--ds-gray-600);flex:none}.stage-board{overscroll-behavior-x:contain;scrollbar-gutter:stable;grid-auto-columns:minmax(272px,1fr);grid-auto-flow:column;height:100%;display:grid;overflow-x:auto}.stage-lane{flex-direction:column;min-width:0;min-height:0;max-height:100%;padding:0 12px;display:flex}.stage-lane+.stage-lane{border-left:1px solid var(--border)}.stage-lane:first-child{padding-left:0}.stage-lane:last-child{padding-right:0}.stage-lane-header{border-bottom:1px solid var(--border);background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--stage,var(--ds-gray-600)) 18%, transparent), transparent 76px);flex:none;align-items:center;min-height:30px;padding:0 0 8px 14px;display:flex}.stage-lane-header strong{min-width:0;color:var(--text-secondary);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:500;overflow:hidden}.stage-lane-count{color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-left:auto;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px;line-height:1}.stage-lane-body{overscroll-behavior-y:contain;flex:1;align-content:start;gap:6px;min-height:0;padding:10px 1px 20px;display:grid;overflow-y:auto}.stage-lane-body[data-drop-target=true]{border-radius:var(--radius-medium);background:var(--surface-sunken)}.stage-lane-empty{color:var(--ds-gray-600);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:12px 2px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.lane-card{--lane-card-glow:var(--stage,var(--ds-gray-600));border-radius:var(--radius-medium);color:var(--text);background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--lane-card-glow) 18%, transparent), transparent 76px), var(--surface-raised);box-shadow:var(--shadow-border);cursor:pointer;transition:background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);display:block;position:relative}.lane-card-link{color:inherit;gap:7px;padding:11px 40px 11px 14px;text-decoration:none;display:grid}.lane-card-menu{z-index:3;position:absolute;top:6px;right:6px}.lane-card-menu .icon-button{width:28px;height:28px;color:var(--text-tertiary)}.lane-card-menu .menu-panel{width:196px}.lane-card-menu .menu-heading{color:var(--text-tertiary);letter-spacing:.07em;text-transform:uppercase;padding:7px 10px 5px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:9px;font-weight:600;display:block}.lane-card-menu .menu-option{gap:8px}.lane-card-menu .menu-check{margin-left:auto}.lane-card:hover{background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--lane-card-glow) 22%, transparent), transparent 82px), var(--surface-hover);box-shadow:0 0 0 1px var(--border-strong), var(--shadow-small)}.lane-card[draggable=true]{cursor:grab}.lane-card[draggable=true]:active{cursor:grabbing}.lane-card[data-moving=true]{opacity:.55;pointer-events:none}.lane-card.drop-before:after,.lane-card.drop-after:after{border-radius:var(--radius-full);background:var(--ds-blue-700);content:"";height:2px;position:absolute;left:0;right:0}.lane-card.drop-before:after{top:-4px}.lane-card.drop-after:after{bottom:-4px}.lane-card h3{letter-spacing:-.02em;text-wrap:pretty;margin:0;font-size:14px;font-weight:600;line-height:1.3}.lane-card p{color:var(--text-tertiary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:-1px 0 0;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.lane-flag{color:var(--stage);letter-spacing:.08em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:500;line-height:1}.lane-labels{flex-wrap:wrap;gap:4px;display:flex}.lane-labels span{border-radius:var(--radius-small);color:var(--text-tertiary);box-shadow:var(--shadow-border);padding:1px 6px;font-size:10px;line-height:1.5}.lane-labels .lane-labels-more{box-shadow:none}.ledger{border-collapse:collapse;width:100%;min-width:720px;font-size:13px}.ledger th{z-index:1;height:30px;color:var(--text-tertiary);background:var(--surface);box-shadow:0 -24px 0 var(--surface), inset 0 -1px 0 var(--border);letter-spacing:.08em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:0 14px 8px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:500;position:sticky;top:0}.ledger td{border-bottom:1px solid var(--border);height:48px;color:var(--text-secondary);vertical-align:middle;padding:8px 14px}.ledger tbody tr{transition:background-color var(--duration) var(--ease)}.ledger tbody tr:hover{background:var(--surface-sunken)}.ledger-assignment{width:44%;padding-left:18px;position:relative}.ledger-assignment:before{border-radius:var(--radius-full);background:var(--stage);content:"";width:2px;position:absolute;top:9px;bottom:9px;left:0}.ledger-assignment a{color:var(--text);letter-spacing:-.01em;font-weight:500;text-decoration:none}.ledger-assignment a:hover{text-underline-offset:3px;text-decoration:underline}.ledger-assignment small{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.ledger-stage{white-space:nowrap}.ledger-severity{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.ledger-severity:before{border-radius:var(--radius-full);background:var(--stage);content:"";flex:none;width:6px;height:6px}.ledger .numeric{color:var(--text-secondary);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:12px}.ledger th.numeric{font-size:10px}.ledger .missing{color:var(--ds-gray-600)}.ledger-due small{color:var(--text-tertiary);margin-top:3px;font-size:10px;display:block}.month{gap:14px;display:grid}.month-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.month-nav{align-items:center;gap:4px;display:flex}.month-nav h2{letter-spacing:-.025em;text-align:center;min-width:156px;margin:0;font-size:16px;font-weight:600}.month-sheet{overflow-x:auto}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(100px,1fr));min-width:700px;display:grid}.month-weekdays div{border-bottom:1px solid var(--border);color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;padding:0 8px 8px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.month-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:3px;min-width:0;min-height:128px;padding:7px 7px 10px;display:flex}.month-day:nth-child(7n){border-right:0}.month-day-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:3px;display:flex}.month-day-date{color:var(--text-secondary);font-variant-numeric:tabular-nums;padding:1px 5px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px;line-height:1.5}.month-day.today .month-day-date{border-radius:var(--radius-small);color:var(--ds-background-100);background:var(--ds-gray-1000);font-weight:500}.month-day-load{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;line-height:1}.month-day.muted .month-day-date{color:var(--ds-gray-600)}.month-day.muted .month-task{opacity:.55}.month-task{border-radius:var(--radius-small);color:var(--text);text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--duration) var(--ease);padding:3px 6px 3px 11px;font-size:11px;line-height:1.45;text-decoration:none;display:block;position:relative;overflow:hidden}.month-task:before{border-radius:var(--radius-full);background:var(--stage);content:"";width:2px;position:absolute;top:4px;bottom:4px;left:3px}.month-task:hover{background:var(--surface-hover)}.month-more{color:var(--text-tertiary);padding:3px 6px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.calendar-empty{min-height:320px}.gantt{--gantt-label-width:244px;--gantt-day-width:28px;--gantt-week-width:196px;gap:14px;display:grid}.gantt-summary{justify-content:space-between;align-items:end;gap:20px;display:flex}.gantt-summary>div{gap:4px;display:grid}.gantt-summary span{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.gantt-summary h2{letter-spacing:-.025em;margin:0;font-size:16px;font-weight:600}.gantt-summary p{color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin:0;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:11px}.gantt-summary-actions{align-items:flex-end;gap:12px;display:flex}.gantt-scale{border-radius:var(--radius-small);background:var(--surface-sunken);box-shadow:var(--shadow-border);padding:2px;display:inline-flex}.gantt-scale button{border-radius:calc(var(--radius-small) - 1px);min-height:28px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:0;padding:0 9px;font-size:11px}.gantt-scale button[aria-pressed=true]{color:var(--text);background:var(--surface);box-shadow:var(--shadow-border)}.gantt-scale button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.gantt-scroll{overscroll-behavior-x:contain;border-block:1px solid var(--border);scrollbar-gutter:stable;outline:0;overflow-x:auto}.gantt-scroll:focus-visible{border-radius:var(--radius-small);box-shadow:0 0 0 1px var(--focus), 0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent)}.gantt-sheet{width:max(100%, calc(var(--gantt-label-width) + var(--gantt-timeline-width)));min-width:0}.gantt-months,.gantt-weeks,.gantt-row{grid-template-columns:var(--gantt-label-width) repeat(var(--gantt-days), var(--gantt-day-width));display:grid;position:relative}.gantt-months{min-height:32px;color:var(--text-secondary);background:var(--surface);align-items:end}.gantt-weeks{border-bottom:1px solid var(--border-strong);min-height:30px;color:var(--text-tertiary);background:var(--surface);align-items:start}.gantt-axis-label{z-index:4;border-right:1px solid var(--border-strong);background:var(--surface);letter-spacing:.08em;text-transform:uppercase;grid-column:1;height:100%;padding:9px 14px 0 0;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:500;position:sticky;left:0}.gantt-weeks .gantt-axis-label{padding-top:2px}.gantt-month,.gantt-week{z-index:1;border-left:1px solid var(--border);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:Geist Mono Variable,ui-monospace,monospace;overflow:hidden}.gantt-month{letter-spacing:.06em;text-transform:uppercase;padding:0 8px 7px;font-size:10px;font-weight:500}.gantt-week{padding:2px 8px 0;font-size:10px}.gantt-rows{margin:0;padding:0;list-style:none}.gantt-row:before{z-index:0;top:0;bottom:0;right:0;left:var(--gantt-label-width);background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to right, var(--border-strong) 1px, transparent 1px);background-size:var(--gantt-day-width) 100%, var(--gantt-week-width) 100%;content:"";pointer-events:none;position:absolute}.gantt-row{border-bottom:1px solid var(--border);align-items:center;min-height:54px}.gantt-row:hover{background:var(--surface-sunken)}.gantt-row-label{z-index:4;border-right:1px solid var(--border-strong);min-width:0;height:100%;color:var(--text);background:var(--surface);grid-column:1;align-items:center;gap:10px;padding:7px 14px 7px 0;text-decoration:none;display:flex;position:sticky;left:0}.gantt-row:hover .gantt-row-label{background:var(--surface-sunken)}.gantt-row-label:hover strong{text-underline-offset:3px;text-decoration:underline}.gantt-row-copy{gap:3px;min-width:0;display:grid}.gantt-row-copy strong,.gantt-row-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gantt-row-copy strong{letter-spacing:-.01em;font-size:13px;font-weight:500}.gantt-row-copy small{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.gantt-bar{z-index:2;border-radius:var(--radius-small);min-width:6px;height:22px;color:color-mix(in srgb, var(--stage) 75%, var(--text));background:color-mix(in srgb, var(--stage) 18%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--stage) 42%, transparent);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;transition:background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);align-items:center;margin-inline:3px;padding:0 8px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:9px;font-weight:500;display:flex;overflow:hidden}.gantt-row:hover .gantt-bar:not(.milestone){background:color-mix(in srgb, var(--stage) 24%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--stage) 58%, transparent)}.gantt-bar.milestone{width:18px;min-width:18px;height:18px;box-shadow:none;background:0 0;justify-self:center;margin:0;padding:0;overflow:visible}.gantt-bar.milestone:before{background:var(--stage);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--stage) 16%, transparent);content:"";border-radius:2px;margin:auto;transform:rotate(45deg)}.gantt-today-line{z-index:3;background:var(--ds-blue-700);width:1px;height:100%;box-shadow:0 0 0 1px color-mix(in srgb, var(--ds-blue-700) 8%, transparent);pointer-events:none;justify-self:center}.gantt-unscheduled>h3{z-index:5;width:var(--gantt-label-width);color:var(--text-tertiary);background:var(--surface);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:16px 0 7px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;font-weight:500;position:sticky;left:0}.gantt-placeholder{z-index:1;color:var(--text-tertiary);grid-column:2/-1;padding-left:12px;font-size:11px}.briefs{grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:10px;display:grid}.brief{--brief-glow:var(--stage,var(--ds-gray-600));border-radius:var(--radius-large);min-height:172px;color:var(--text);background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--brief-glow) 18%, transparent), transparent 76px), var(--surface-raised);box-shadow:var(--shadow-border);transition:background-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);grid-template-rows:auto auto minmax(0,1fr) auto;gap:8px;padding:15px 16px;text-decoration:none;display:grid}.brief:hover{background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--brief-glow) 22%, transparent), transparent 82px), var(--surface-hover);box-shadow:0 0 0 1px var(--border-strong), var(--shadow-small)}.brief-stage{color:var(--text-tertiary);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;align-items:center;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px;display:inline-flex;overflow:hidden}.brief h3{letter-spacing:-.025em;text-wrap:pretty;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.brief p{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.brief p.missing{color:var(--ds-gray-600)}.course-empty{border-block:1px solid var(--border);text-align:center;justify-items:center;gap:4px;padding:72px 24px;display:grid}.course-empty>span{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:10px}.course-empty h2{letter-spacing:-.015em;margin:6px 0 0;font-size:15px;font-weight:500}.course-empty p{max-width:360px;color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}@media (width<=820px){.stage-board{height:auto}.stage-lane{min-height:360px;max-height:none}.stage-lane-body{overflow:visible}.ledger th{box-shadow:inset 0 -1px 0 var(--border);position:static}}@media (width<=640px){.stage-board{grid-auto-columns:84vw}.month-day{min-height:108px}.gantt{--gantt-label-width:196px}.gantt-summary{flex-direction:column;align-items:start;gap:5px}.gantt-summary-actions{justify-content:space-between;align-items:flex-start;width:100%}}
