:root{--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.25rem;--text-2xl:1.5rem;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--control-sm:36px;--control-md:40px;--control-lg:46px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--color-bg:#f4f7f5;--color-surface:#fff;--color-surface-2:#f0f4f1;--color-surface-3:#e5ebe7;--color-surface-subtle:#f8faf9;--color-border:#ced7d1;--color-border-strong:#89988f;--color-text:#17211b;--color-text-muted:#4f5d55;--color-text-faint:#66736b;--color-accent:#146c43;--color-accent-strong:#0f5735;--color-primary:#146c43;--color-primary-hover:#0f5735;--color-primary-contrast:#fff;--color-danger:#b4232e;--color-danger-solid:#b4232e;--color-danger-solid-hover:#8f1d27;--color-danger-contrast:#fff;--color-warning:#8a4b08;--color-warning-solid:#8a4b08;--color-warning-contrast:#fff;--color-info:#175cd3;--color-info-solid:#175cd3;--color-info-solid-hover:#0f4da8;--color-info-contrast:#fff;--color-success:#146c43;--color-focus:#175cd3;--color-focus-ring:#175cd333;--color-event-preview:#175cd329;--color-event-lecture:#146c43;--color-event-practice:#175cd3;--color-event-conflict:#b4232e;--color-event-contrast:#fff;--color-calendar-grid:#50665929;--color-overlay:#09100cad;--shadow-control-inset:inset 0 1px 2px #17211b0d;--shadow-1:0 2px 8px #17211b1a;--shadow-2:0 10px 30px #17211b2e;--shadow-button:0 2px 4px #17211b24;--shadow-button-hover:0 5px 12px #17211b33;font-weight:400;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0f1412;--color-surface:#171d1a;--color-surface-2:#202823;--color-surface-3:#29332d;--color-surface-subtle:#131916;--color-border:#344139;--color-border-strong:#607066;--color-text:#f3f7f4;--color-text-muted:#b8c4bc;--color-text-faint:#91a198;--color-accent:#74d69a;--color-accent-strong:#9be6b9;--color-primary:#146c43;--color-primary-hover:#0f5735;--color-primary-contrast:#fff;--color-danger:#ff8a82;--color-danger-solid:#b4232e;--color-danger-solid-hover:#8f1d27;--color-danger-contrast:#fff;--color-warning:#f5bd68;--color-warning-solid:#8a4b08;--color-warning-contrast:#fff;--color-info:#8ab4ff;--color-info-solid:#175cd3;--color-info-solid-hover:#0f4da8;--color-info-contrast:#fff;--color-success:#74d69a;--color-focus:#8ab4ff;--color-focus-ring:#8ab4ff47;--color-event-preview:#8ab4ff33;--color-event-lecture:#146c43;--color-event-practice:#175cd3;--color-event-conflict:#b4232e;--color-event-contrast:#fff;--color-calendar-grid:#b1c7ba1f;--color-overlay:#030705c2;--shadow-control-inset:inset 0 1px 2px #0003;--shadow-1:0 2px 8px #00000061;--shadow-2:0 12px 32px #0000008f;--shadow-button:0 3px 8px #00000057;--shadow-button-hover:0 6px 16px #00000075}body{background:var(--color-bg);min-width:320px;min-height:100vh;color:var(--color-text);font-variant-numeric:tabular-nums;margin:0;font-size:1rem}*,:before,:after{box-sizing:border-box}#app{box-sizing:border-box;width:100%}a{color:var(--color-accent);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--color-accent-strong)}button{font:inherit;color:inherit}button,input,select,textarea{letter-spacing:-.005em}h1,h2,h3,h4,p{text-wrap:pretty}h1,h2,h3,h4{color:var(--color-text);font-weight:var(--weight-bold);letter-spacing:-.02em}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-md);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);white-space:nowrap;box-shadow:var(--shadow-button);border:1px solid #0000;padding:8px 14px;line-height:1.2;text-decoration:none;transition:transform .15s,box-shadow .15s,background-color .15s,border-color .15s,color .15s;display:inline-flex}.button:hover:not(:disabled){box-shadow:var(--shadow-button-hover);transform:translateY(-1px)}.button:active:not(:disabled){box-shadow:var(--shadow-button);transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.48}.button-small{min-height:var(--control-sm);padding:6px 11px}.button-large{min-height:var(--control-lg);font-size:var(--text-base);padding-inline:20px}.button-icon{width:var(--control-md);min-width:var(--control-md);padding:0}.button-primary{background:var(--color-primary);color:var(--color-primary-contrast)}.button-primary:hover:not(:disabled){background:var(--color-primary-hover)}.button-secondary{border-color:var(--color-border-strong);background:var(--color-surface-2);color:var(--color-text)}.button-secondary:hover:not(:disabled){background:var(--color-surface-3)}.button-transfer{background:var(--color-info-solid);color:var(--color-info-contrast)}.button-transfer:hover:not(:disabled){background:var(--color-info-solid-hover)}.button-outline-info{border-color:var(--color-info);background:var(--color-surface);color:var(--color-info)}.button-outline-info:hover:not(:disabled){background:color-mix(in srgb, var(--color-info) 9%, var(--color-surface))}.button-warning{background:var(--color-warning-solid);color:var(--color-warning-contrast)}.button-warning:hover:not(:disabled){background:color-mix(in srgb, var(--color-warning-solid) 88%, black)}.button-danger{background:var(--color-danger-solid);color:var(--color-danger-contrast)}.button-danger:hover:not(:disabled){background:var(--color-danger-solid-hover)}.button-outline-danger{border-color:color-mix(in srgb, var(--color-danger) 42%, var(--color-border));background:var(--color-surface);color:var(--color-danger)}.button-outline-danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface))}.button-ghost{color:var(--color-text-muted);box-shadow:none;background:0 0;border-color:#0000}.button-ghost:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text);box-shadow:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:5000;border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-primary-contrast);padding:10px 16px;font-weight:600;text-decoration:none;transition:transform .15s;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus-visible{outline-offset:2px;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sx__calendar-wrapper ul,.sx__date-picker-wrapper ul,.sx__date-picker-popup ul{padding:0;list-style:none}.sx__calendar-wrapper input,.sx__calendar-wrapper button,.sx__date-picker-wrapper input,.sx__date-picker-wrapper button,.sx__date-picker-popup input,.sx__date-picker-popup button{outline:none;font-family:inherit}.sx__button{background-color:inherit;cursor:pointer;border:none;outline:0}:root{--sx-color-primary:#6750a4;--sx-color-on-primary:#fff;--sx-color-primary-container:#eaddff;--sx-color-on-primary-container:#21005e;--sx-color-secondary:#625b71;--sx-color-on-secondary:#fff;--sx-color-secondary-container:#e8def8;--sx-color-on-secondary-container:#1e192b;--sx-color-tertiary:#7d5260;--sx-color-on-tertiary:#fff;--sx-color-tertiary-container:#ffd8e4;--sx-color-on-tertiary-container:#370b1e;--sx-color-surface:#fef7ff;--sx-color-surface-dim:#ded8e1;--sx-color-surface-bright:#fef7ff;--sx-color-on-surface:#1c1b1f;--sx-color-surface-container:#f3edf7;--sx-color-surface-container-low:#f7f2fa;--sx-color-surface-container-high:#ece6f0;--sx-color-background:#fff;--sx-color-on-background:#1c1b1f;--sx-color-outline:#79747e;--sx-color-outline-variant:#c4c7c5;--sx-color-shadow:#000;--sx-color-surface-tint:#6750a4;--sx-color-neutral:var(--sx-color-outline);--sx-color-neutral-variant:var(--sx-color-outline-variant);--sx-internal-color-gray-ripple-background:#e0e0e0;--sx-internal-color-light-gray:#fafafa;--sx-internal-color-text:#000}.is-dark{--sx-color-primary:#d0bcff;--sx-color-on-primary:#371e73;--sx-color-primary-container:#4f378b;--sx-color-on-primary-container:#eaddff;--sx-color-secondary:#ccc2dc;--sx-color-on-secondary:#332d41;--sx-color-secondary-container:#4a4458;--sx-color-on-secondary-container:#e8def8;--sx-color-tertiary:#efb8c8;--sx-color-on-tertiary:#492532;--sx-color-tertiary-container:#633b48;--sx-color-on-tertiary-container:#ffd8e4;--sx-color-surface:#141218;--sx-color-surface-dim:#141218;--sx-color-surface-bright:#3b383e;--sx-color-on-surface:#e6e1e5;--sx-color-surface-container:#211f26;--sx-color-surface-container-low:#1d1b20;--sx-color-surface-container-high:#2b2930;--sx-color-background:#141218;--sx-color-on-background:#e6e1e5;--sx-color-outline:#938f99;--sx-color-outline-variant:#444746;--sx-color-shadow:#000;--sx-color-surface-tint:#d0bcff;--sx-internal-color-text:#fff}:root{--sx-spacing-padding1:4px;--sx-spacing-padding2:8px;--sx-spacing-padding3:12px;--sx-spacing-padding4:16px;--sx-spacing-padding6:24px;--sx-spacing-modal-padding:16px;--sx-box-shadow-level3:0 3px 6px 0 #00000029, 0 3px 6px 0 #0000003b;--sx-rounding-extra-small:4px;--sx-rounding-small:8px;--sx-rounding-extra-large:28px;--sx-border:1px solid var(--sx-color-outline-variant)}.is-dark{--sx-border:1px solid var(--sx-color-outline-variant)}:root{--sx-font-small:.875rem;--sx-font-extra-small:.75rem;--sx-font-large:1.125rem;--sx-font-extra-large:1.25rem;--sx-z-index-week-header:100;--sx-z-index-event-modal:101;--sx-calendar-header-popup-z-index:102}@keyframes sx-ripple{0%{opacity:.16;width:0;height:0}40%{opacity:.08;width:100px;height:100px}to{opacity:0;width:150px;height:150px}}.sx__ripple{position:relative;overflow:hidden}.sx__ripple:before{content:"";opacity:.1;visibility:hidden;z-index:2;background-color:currentColor;border-radius:50%;width:0;height:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sx__ripple:active:before{visibility:visible}.sx__ripple:not(:active):before{transition:visibility .75s step-end;animation:.75s cubic-bezier(0,.1,.8,1) sx-ripple}@keyframes sx-ripple-wide{0%{opacity:.16;width:0;height:0}40%{opacity:.08;width:300px;height:100px}to{opacity:0;width:450px;height:150px}}.sx__ripple--wide{position:relative;overflow:hidden}.sx__ripple--wide:before{content:"";opacity:.1;visibility:hidden;z-index:2;background-color:currentColor;border-radius:50%;width:0;height:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sx__ripple--wide:active:before{visibility:visible}.sx__ripple--wide:before{border-radius:var(--sx-rounding-small)}.sx__ripple--wide:not(:active):before{transition:visibility .75s step-end;animation:.75s cubic-bezier(0,.1,.8,1) sx-ripple-wide}.sx__chevron-wrapper{cursor:pointer;border-radius:50%;min-width:48px;min-height:48px;font-size:0;transition:background-color .2s ease-in-out;position:relative}.sx__chevron-wrapper:active{background-color:var(--sx-internal-color-gray-ripple-background)}.sx__chevron-wrapper:disabled{cursor:not-allowed;opacity:.5}.sx__chevron-wrapper:hover,.sx__chevron-wrapper:focus{background-color:var(--sx-color-surface-dim)}.is-dark .sx__chevron-wrapper:hover,.is-dark .sx__chevron-wrapper:focus{background-color:var(--sx-color-surface-container-high)}.sx__chevron-wrapper .sx__chevron{border-style:solid;border-width:.2rem .2rem 0 0;border-color:var(--sx-internal-color-text);width:.6rem;height:.6rem;position:absolute;top:50%}.sx__chevron--previous{left:calc(50% + .125rem);transform:translate(-50%,-50%)rotate(225deg)}[dir=rtl] .sx__chevron--previous,.sx__chevron--next{left:calc(50% - .125rem);transform:translate(-50%,-50%)rotate(45deg)}[dir=rtl] .sx__chevron--next{left:calc(50% + .125rem);transform:translate(-50%,-50%)rotate(225deg)}.sx__date-picker-wrapper{color:var(--sx-color-on-background);width:fit-content;position:relative}.sx__date-picker-wrapper.has-full-width{width:100%}.sx__date-picker-wrapper.is-disabled{opacity:.5;cursor:not-allowed}.sx__date-picker-wrapper *{color:var(--sx-color-on-background);box-sizing:border-box}.sx__date-input-wrapper{position:relative}.sx__date-input-chevron-wrapper{align-items:center;padding:0;transition:transform .2s ease-in-out;display:flex;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.sx__date-input-chevron-wrapper:focus{border:2px solid var(--sx-color-primary)}.is-disabled .sx__date-input-chevron-wrapper{pointer-events:none;cursor:not-allowed}.sx__date-input--active .sx__date-input-chevron-wrapper{transform:translateY(-50%)rotate(180deg)}[dir=rtl] .sx__date-input-chevron-wrapper{left:1rem;right:auto}.sx__date-input-chevron{pointer-events:none;filter:brightness(.7);width:1rem;height:1rem}.sx__date-input{padding:var(--sx-spacing-padding4);border:var(--sx-border);border-radius:var(--sx-rounding-extra-small);cursor:pointer;background-color:var(--sx-color-background);width:100%;font-size:1rem}.is-disabled .sx__date-input{pointer-events:none}.sx__date-input--active .sx__date-input{border-color:var(--sx-color-primary);outline:1px solid var(--sx-color-primary)}.sx__date-input-label{top:0;padding:0 var(--sx-spacing-padding1);background-color:var(--sx-color-background);color:var(--sx-color-neutral);pointer-events:none;font-size:.75rem;line-height:1rem;transition:transform .2s ease-in-out;position:absolute;inset-inline-start:12px;transform:translateY(-50%)}.sx__date-input--active .sx__date-input-label{color:var(--sx-color-primary)}.is-dark .sx__date-input-label{display:none}.sx__date-picker-popup{z-index:1;width:20.75rem;max-width:500px;height:fit-content;max-height:400px;box-shadow:var(--sx-box-shadow-level3);padding:var(--sx-spacing-modal-padding);background-color:var(--sx-color-background);color:var(--sx-internal-color-text);position:absolute;top:calc(100% + 1px);overflow:scroll}.sx__date-picker-popup.is-dark{background-color:var(--sx-color-surface-container-high)}.sx__date-picker-popup.bottom-end{left:auto;right:0;transform:translate(0)}.sx__date-picker-popup.bottom-end[dir=rtl],.sx__date-picker-popup.bottom-start{left:0;right:auto;transform:translate(0)}.sx__date-picker-popup.bottom-start[dir=rtl]{left:auto;right:0;transform:translate(0)}.sx__date-picker-popup.top-start{inset:auto auto calc(100% + 1rem) 0;transform:translate(0)}.sx__date-picker-popup.top-end{inset:auto 0 calc(100% + 1rem) auto;transform:translate(0)}.sx__date-picker__years-view{margin:0}.sx__date-picker__years-accordion__expand-button{width:100%;color:var(--sx-internal-color-text);background-color:#0000;border-radius:0;padding:1em;font-size:1rem;transition:background-color .2s ease-in-out}.sx__is-expanded .sx__date-picker__years-accordion__expand-button{background-color:var(--sx-color-surface-container)}.sx__date-picker__years-accordion__expand-button:hover{background-color:var(--sx-color-surface-dim)}.sx__date-picker__years-accordion__expand-button:active{background-color:var(--sx-internal-color-gray-ripple-background)}.sx__date-picker__years-view-accordion__panel{flex-wrap:wrap;display:flex}.sx__date-picker__years-view-accordion__month{color:var(--sx-internal-color-text);background-color:#0000;border:0;border-radius:25px;flex:1 0 33.3333%;padding:.5em 0;font-size:.9rem}.sx__date-picker__years-view-accordion__month:hover{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__date-picker__day-names{justify-content:space-evenly;width:100%;margin-bottom:.5em;display:flex}.sx__date-picker__day-names .sx__date-picker__day,.sx__date-picker__day-names .sx__date-picker__day-name{text-align:center;flex:1}.sx__date-picker__day-name{color:var(--sx-color-neutral-variant);font-weight:700}.sx__date-picker__month-view-header{justify-content:space-between;align-items:center;margin-bottom:1em;display:flex}.sx__date-picker__month-view-header .sx__chevron-wrapper:hover{background-color:var(--sx-color-surface-dim)}.sx__date-picker__month-view-header__month-year{color:var(--sx-internal-color-text);font-size:1.5rem;font-weight:300}.sx__date-picker__month-view-header__month-year:hover{color:var(--sx-color-primary);text-decoration:underline}.sx__date-picker__week{justify-content:space-evenly;width:100%;margin-bottom:.5em;display:flex}.sx__date-picker__week .sx__date-picker__day,.sx__date-picker__week .sx__date-picker__day-name{text-align:center;flex:1}.sx__date-picker__day{width:2.5rem;height:2.5rem;color:var(--sx-internal-color-text);background-color:#0000;border-radius:50%}.sx__date-picker__day:hover{background-color:var(--sx-color-surface-dim)}.sx__date-picker__day:focus{outline-offset:-2px;outline:2px solid var(--sx-color-primary)}.sx__date-picker__day:disabled{color:var(--sx-color-neutral-variant);cursor:not-allowed}.sx__date-picker__day.is-leading-or-trailing{color:var(--sx-color-neutral-variant)}.sx__date-picker__day.sx__date-picker__day--selected{background-color:var(--sx-color-primary-container);color:var(--sx-color-on-primary-container)}.sx__date-picker__day.sx__date-picker__day--today{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}:root{--sx-calendar-header-input-font-size:clamp(12px, .875rem, 28px);--sx-calendar-week-grid-padding-left:75px}:root .sx__date-picker-popup.is-teleported{z-index:3}.sx__calendar-wrapper{height:100%;color:var(--sx-internal-color-text);display:flex}.sx__calendar-wrapper *{box-sizing:border-box}.sx__calendar{border:var(--sx-border);border-radius:var(--sx-rounding-small);background-color:var(--sx-color-background);flex-flow:column;flex:1;height:100%;display:flex;position:relative;overflow:hidden}.sx__view-container{scroll-behavior:smooth;flex:1;position:relative;overflow-y:auto}.sx__slide-left{animation:.3s ease-out sx-slide-left}@keyframes sx-slide-left{0%{filter:blur(.25rem);opacity:.1;transform:translate(8%)}to{filter:blur();opacity:1;transform:translate(0)}}.sx__slide-right{animation:.3s ease-out sx-slide-right}@keyframes sx-slide-right{0%{filter:blur(.25rem);opacity:.1;transform:translate(-8%)}to{filter:blur();opacity:1;transform:translate(0)}}.sx__calendar-header{padding:var(--sx-spacing-padding4);justify-content:space-between;align-items:flex-start;gap:var(--sx-spacing-padding4);flex-wrap:wrap;display:flex}.sx__calendar-header .sx__date-input{padding:var(--sx-spacing-padding3) var(--sx-spacing-padding4);font-size:var(--sx-calendar-header-input-font-size)}.sx__calendar-header .sx__date-picker-popup{z-index:var(--sx-calendar-header-popup-z-index)}.sx__calendar-header-content{align-items:center;gap:var(--sx-spacing-padding4);flex-wrap:wrap;min-width:0;display:flex}.sx__forward-backward-navigation{height:45px}.sx__is-calendar-small .sx__forward-backward-navigation,.is-list-view .sx__forward-backward-navigation{display:none}.sx__calendar-header__week-number{color:var(--sx-color-on-surface);padding:var(--sx-spacing-padding1) var(--sx-spacing-padding2);background-color:#eceef1;border-radius:4px;font-size:.75rem;font-weight:500}.is-dark .sx__calendar-header__week-number{background-color:#4a4458}.sx__range-heading{text-overflow:ellipsis;white-space:nowrap;max-width:12.5rem;font-size:clamp(16px,1.25rem,24px);overflow:hidden}.sx__is-calendar-small .sx__range-heading{font-size:16px}.is-list-view .sx__range-heading{display:none}.sx__today-button{padding:var(--sx-spacing-padding3) var(--sx-spacing-padding4);border-radius:var(--sx-rounding-extra-small);font-size:var(--sx-calendar-header-input-font-size);color:var(--sx-internal-color-text)}.sx__today-button:active{background-color:var(--sx-internal-color-gray-ripple-background)}.sx__is-calendar-small .sx__today-button{display:none}.sx__calendar-header .sx__today-button{border:var(--sx-border)}.sx__today-button:hover,.sx__today-button:focus{background-color:var(--sx-internal-color-light-gray)}.is-dark .sx__today-button:hover,.is-dark .sx__today-button:focus{background-color:var(--sx-color-surface-container-low)}.sx__view-selection{font-size:var(--sx-calendar-header-input-font-size);position:relative}.sx__view-selection-label{top:0;padding:0 var(--sx-spacing-padding1);background-color:var(--sx-color-background);color:var(--sx-color-neutral);pointer-events:none;z-index:1;font-size:.75rem;line-height:1rem;transition:transform .2s ease-in-out;position:absolute;inset-inline-start:12px;transform:translateY(-50%)}.is-dark .sx__view-selection-label{display:none}.sx__view-selection-selected-item{background-color:inherit;width:fit-content;height:100%;padding:var(--sx-spacing-padding3) var(--sx-spacing-padding4);cursor:pointer;border-radius:var(--sx-rounding-extra-small);border:var(--sx-border);align-items:center;gap:var(--sx-spacing-padding2);display:flex}.sx__view-selection-selected-item:hover{background-color:var(--sx-internal-color-light-gray)}.is-dark .sx__view-selection-selected-item:hover{background-color:var(--sx-color-surface-container-low)}.sx__view-selection-chevron{pointer-events:none;filter:brightness(.7);width:1rem;height:1rem;transition:transform .2s ease-in-out}.sx__view-selection.is-open .sx__view-selection-chevron{transform:rotate(180deg)}.sx__view-selection-items{box-shadow:var(--sx-box-shadow-level3);background-color:var(--sx-color-background);z-index:var(--sx-calendar-header-popup-z-index);margin:0;position:absolute;top:100%}.is-dark .sx__view-selection-items{background-color:var(--sx-color-surface-container-high)}.sx__view-selection-item{width:100%;text-align:inherit;background-color:inherit;padding:var(--sx-spacing-padding4) var(--sx-spacing-padding6);cursor:pointer;display:block}.sx__view-selection-item:hover,.sx__view-selection-item:focus{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__view-selection-item.is-selected{background-color:var(--sx-color-surface-dim)}.sx__view-selection-item.is-selected:hover,.sx__view-selection-item.is-selected:focus{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__month-grid-wrapper{flex-flow:column;height:100%;display:flex}.sx__month-grid-week__week-number{color:var(--sx-color-on-surface);background-color:#eceef1;justify-content:center;width:1.5rem;padding-top:12px;font-size:.75rem;display:flex}.is-dark .sx__month-grid-week__week-number{background-color:#4a4458}.sx__month-grid-week{border-top:var(--sx-border);flex:1;display:flex}.sx__month-grid-week:first-child .sx__month-grid-week__week-number{padding-top:26px}.sx__month-grid-day{padding:var(--sx-spacing-padding2) 0;flex:1;position:relative}.sx__month-grid-day:not(:last-child){border-inline-end:var(--sx-border)}.sx__month-grid-day--dragover{background-color:var(--sx-color-surface-container)}.sx__month-grid-day__header{flex-flow:column;align-items:center;display:flex}.sx__month-grid-day__header-day-name{text-transform:uppercase;color:var(--sx-color-neutral);font-size:11px}.sx__month-grid-day__header-date{font-size:var(--sx-font-extra-small);margin-bottom:var(--sx-spacing-padding1);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.sx__month-grid-day__header-date.sx__is-today{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__month-grid-day__events-more{width:calc(100% - 10px);font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral);margin:var(--sx-spacing-padding1) 0;padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);cursor:pointer;transition:background-color .2s ease-in-out,color .2s ease-in-out}.sx__month-grid-day__events-more:hover{background-color:var(--sx-color-surface-container);color:var(--sx-color-on-surface)}.sx__month-grid-background-event{width:100%;height:100%;position:absolute;top:0;left:0}.sx__month-grid-day__events{grid-gap:4px;display:grid}.sx__month-grid-cell{height:clamp(20px,1.25rem,24px)}.sx__month-grid-event{padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);font-size:clamp(12px, var(--sx-font-extra-small), 14px);white-space:nowrap;z-index:1;align-items:center;display:flex;position:relative;overflow:hidden}.sx__month-grid-event.is-event-new{animation:.3s ease-in-out forwards sx-grow-event}@keyframes sx-grow-event{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.sx__month-grid-event-time{margin-right:4px}.sx__month-grid-blocker{pointer-events:none}.sx__month-agenda-week{display:flex}.sx__month-agenda-week:not(:first-child){border-top:var(--sx-border)}.sx__month-agenda-week__week-number{text-align:center;color:var(--sx-color-on-surface);background-color:#eceef1;width:1.5rem;padding-top:9px;font-size:.75rem}.is-dark .sx__month-agenda-week__week-number{background-color:#4a4458}.sx__month-agenda-day{padding:var(--sx-spacing-padding2);border-radius:var(--sx-rounding-extra-small);height:3rem;color:var(--sx-internal-color-text);flex-flow:column;flex:1;align-items:center;display:flex}.sx__month-agenda-day--active{box-shadow:inset 0 0 0 3px var(--sx-color-primary)}.sx__month-agenda-day__event-icons{grid-gap:3px;margin-top:4px;display:flex}.sx__month-agenda-day__event-icon{filter:brightness(1.6);border-radius:50%;width:6px;height:6px}.is-dark .sx__month-agenda-day__event-icon{filter:initial}.sx__month-agenda-day-names{padding:var(--sx-spacing-padding2) 0;font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral);display:flex}.sx__month-agenda-day-names.sx__has-week-numbers{padding-inline-start:1.5rem}.sx__month-agenda-day-name{flex:1;justify-content:center;display:flex}.sx__month-agenda-events{padding:0 var(--sx-spacing-padding2)}.sx__month-agenda-event{padding:var(--sx-spacing-padding2);margin-bottom:var(--sx-spacing-padding2);border-radius:var(--sx-rounding-extra-small);font-size:var(--sx-font-small)}.sx__month-agenda-event.is-event-new{animation:.3s ease-in-out forwards sx-grow-event}.sx__month-agenda-event:first-child{margin-top:var(--sx-spacing-padding2)}.sx__month-agenda-event__title{font-weight:600}.sx__month-agenda-event__has-icon{align-items:center;display:flex}.sx__month-agenda-events__empty{margin-top:var(--sx-spacing-padding4);justify-content:center;display:flex}.sx__week-agenda-header{z-index:1;background-color:var(--sx-color-background);position:sticky;top:0}.sx__week-wrapper{position:relative}.sx__week-grid{padding-left:var(--sx-calendar-week-grid-padding-left);height:var(--sx-week-grid-height);display:flex;position:relative;overflow:hidden}.sx__week-header{z-index:var(--sx-z-index-week-header);background-color:var(--sx-color-background);position:sticky;top:0}.sx__week-header-content{position:relative}.sx__week-header-border{border-bottom:var(--sx-border);border-left:250px solid #0000;width:100%;position:absolute;bottom:0}.sx__list-wrapper{background-color:var(--sx-color-background);scroll-behavior:smooth;height:100%;padding:0;position:relative;overflow-y:auto}.sx__list-day{background-color:var(--sx-color-background);will-change:opacity;padding:0;transform:translateZ(0)}.sx__list-day-header{padding:var(--sx-spacing-padding2) var(--sx-spacing-padding4);background-color:var(--sx-color-surface-container-low);z-index:1;position:sticky;top:0}.sx__list-day-date{font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.sx__list-day-events{background:var(--sx-color-background);padding:0 16px}.sx__list-event{align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.sx__list-event:not(:first-child){border-top:var(--sx-border)}.sx__list-event-color-line{border-radius:2px;flex-shrink:0;width:3px;height:24px}.sx__list-event-content{justify-content:space-between;align-items:flex-start;width:100%;display:flex}.sx__list-event-title{color:var(--sx-color-on-background);flex:1;font-size:1em}.sx__list-event-times{flex-direction:column;align-items:flex-end;gap:2px;min-width:80px;display:flex}.sx__list-event-start-time{color:var(--sx-color-on-background);font-size:.85em}.sx__list-event-end-time{color:var(--sx-color-neutral);font-size:.85em}.sx__list-event-arrow{color:var(--sx-color-neutral);font-size:.85em;line-height:1}.sx__list-event-all-day{color:var(--sx-color-neutral);font-size:.85em}.sx__list-day-margin{height:16px}.sx__list-no-events{color:var(--sx-color-neutral);font-size:var(--sx-font-extra-small);text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sx__week-grid__time-axis{right:0;top:var(--sx-week-grid-offset-top);flex-flow:column;width:calc(100% - 60px);display:flex;position:absolute}.sx__week-grid__hour{height:var(--sx-week-grid-hour-height);border-top:var(--sx-border);font-size:var(--sx-font-extra-small);position:relative}.sx__week-grid__hour-text{color:var(--sx-color-neutral);position:absolute;top:-.75em;left:-43px}.sx__time-grid-day{border-left:var(--sx-border);width:100%;height:100%;position:relative}.sx__week-grid__date-axis{padding-left:var(--sx-calendar-week-grid-padding-left);display:flex}.sx__week-grid__date{padding:var(--sx-spacing-padding3) 0;align-items:center;gap:var(--sx-spacing-padding1);flex-flow:column;flex:1;display:flex}.sx__week-grid__day-name{text-transform:uppercase;font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral);font-weight:500}.sx__week-grid__date--is-today .sx__week-grid__day-name{color:var(--sx-color-primary);font-weight:700}.sx__week-grid__date-number{font-size:var(--sx-font-extra-large);color:var(--sx-color-neutral);justify-content:center;align-items:center;width:2em;height:2em;font-weight:500;display:flex}.sx__week-grid__date--is-today .sx__week-grid__date-number{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary);border-radius:50%}.sx__time-grid-event{width:calc(100% - 10px);padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);font-size:var(--sx-font-extra-small);-webkit-user-select:none;user-select:none;position:absolute;overflow:hidden}.sx__time-grid-event.is-event-copy{opacity:.5;box-shadow:var(--sx-box-shadow-level3);z-index:1;transition:transform .15s ease-in-out}.sx__time-grid-event.is-event-new{animation:.3s ease-in-out forwards sx-grow-event}[data-has-dnd=true] .sx__time-grid-event{touch-action:none}.sx__is-resizing .sx__time-grid-event:has(+.is-event-copy){opacity:0}.sx__is-resizing .is-event-copy{opacity:1}.sx__time-grid-event-inner{height:100%;position:relative}.sx__time-grid-event-resize-handle{cursor:ns-resize;touch-action:none;width:100%;height:clamp(10px,20px,50%);display:block;position:absolute;bottom:0}.sx__time-grid-event-title{font-weight:600}.sx__time-grid-event-time,.sx__time-grid-event-people,.sx__time-grid-event-location{white-space:nowrap;align-items:center;display:flex}.sx__title-and-time-compact{align-items:center;gap:var(--sx-spacing-padding2);display:flex}.sx__title-and-time-compact .sx__time-grid-event-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sx__title-and-time-compact .sx__time-grid-event-time{flex-shrink:0}.sx__event-icon{min-width:15px;max-width:15px;min-height:15px;max-height:15px;margin-inline-end:var(--sx-spacing-padding2)}.sx__date-grid{padding-left:var(--sx-calendar-week-grid-padding-left);display:flex}.sx__date-grid-day{grid-gap:2px;width:100%;display:grid;position:relative}.sx__date-grid-day .sx__spacer{display:var(--sx-draw-plugin-spacer-display,none);height:var(--sx-draw-plugin-spacer)}.sx__date-grid-event{z-index:1;padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);font-size:clamp(12px, var(--sx-font-extra-small), 14px);-webkit-user-select:none;user-select:none;align-items:center;font-weight:600;display:flex;position:relative}.sx__date-grid-event:has(.sx__date-grid-event--left-overflow){margin-left:10px}.sx__date-grid-event:has(.sx__date-grid-event--right-overflow){margin-right:10px}.sx__date-grid-event.is-event-new{animation:.3s ease-in-out forwards sx-grow-event}.sx__date-grid-event .sx__date-grid-event--left-overflow{z-index:1;clip-path:polygon(100% 0,0 50%,100% 100%,100% 0);width:10px;height:100%;position:absolute;left:-10px}.sx__date-grid-event .sx__date-grid-event--right-overflow{z-index:1;clip-path:polygon(0 0,100% 50%,0 100%,0 0);width:10px;height:100%;position:absolute;right:-10px}.sx__date-grid-event.sx__date-grid-event--copy{z-index:2;box-shadow:var(--sx-box-shadow-level3);transition-property:transform,width;transition-duration:.15s;transition-timing-function:ease-in-out}.sx__date-grid-event-text{width:calc(100% - var(--sx-spacing-padding1) * 2);left:var(--sx-spacing-padding1);text-overflow:ellipsis;white-space:nowrap;position:absolute;overflow-x:hidden}.sx__date-grid-event-text .sx__date-grid-event-time{font-weight:initial}.sx__date-grid-cell{height:clamp(20px,1.25rem,24px)}.sx__date-grid-event-resize-handle{cursor:ew-resize;z-index:1;touch-action:none;width:clamp(10px,15px,50%);height:100%;position:absolute;right:0}[dir=rtl] .sx__date-grid-event-resize-handle{left:0;right:auto}.sx__date-grid-background-event{z-index:-1;width:100%;height:100%;position:absolute;top:0;left:0}:root{--sx-week-grid-height:0;--sx-time-axis-height:0;--sx-week-grid-hour-height:0;--sx-week-grid-offset-top:0}.sx__event-modal{visibility:hidden;top:var(--sx-event-modal-top);left:var(--sx-event-modal-left);background-color:var(--sx-color-background);width:400px;max-width:100%;height:fit-content;z-index:var(--sx-z-index-event-modal);position:fixed}.sx__event-modal.is-open{visibility:initial;animation:.3s slide-sideways}.is-dark .sx__event-modal{background-color:var(--sx-color-surface-container-high)}.sx__event-modal-default{padding:var(--sx-spacing-padding6);background-color:var(--sx-color-background);border-radius:var(--sx-rounding-small);max-height:250px;overflow-y:scroll;box-shadow:0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f,0 11px 15px -7px #0003}@keyframes slide-sideways{0%{opacity:0;transform:translateX(var(--sx-event-modal-animation-start))}to{opacity:1;transform:translate(0)}}.sx__event-modal .sx__event-icon{min-width:16px;max-width:16px;min-height:16px;max-height:16px;margin-inline-end:var(--sx-spacing-padding2)}.sx__event-modal__color-icon{width:16px;height:16px;border-radius:25%;margin-inline-end:var(--sx-spacing-padding3);display:inline-block}.sx__has-icon{margin-bottom:var(--sx-spacing-padding2);grid-template-columns:30px 1fr;align-items:flex-start;display:grid}.sx__has-icon .sx__event-icon{margin-top:2px}.sx__has-icon .sx__event-modal__color-icon{margin-top:4px}.sx__event-modal__title{font-size:var(--sx-font-large)}.sx__event-modal__time{font-size:var(--sx-font-small)}.sx__current-time-indicator{z-index:0;background-color:red;height:2px;position:absolute;left:0;right:0}.sx__current-time-indicator:before{content:"";background-color:red;border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-5px}.sx__current-time-indicator-full-week{width:calc(100% - var(--sx-calendar-week-grid-padding-left));inset:0 0 0 var(--sx-calendar-week-grid-padding-left);background-color:#ff000061;height:2px;position:absolute}.calendar-options.svelte-zkuqna{justify-content:flex-end;align-items:center;gap:var(--space-3);color:var(--color-text);display:flex}.legend.svelte-zkuqna{align-items:center;gap:var(--space-3);display:flex}ul.svelte-zkuqna{flex-wrap:nowrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}li.svelte-zkuqna,.exemption-item.svelte-zkuqna{align-items:center;gap:6px;display:flex}li.svelte-zkuqna{color:var(--color-text-muted);font-size:var(--text-xs)}.color-box.svelte-zkuqna{border-radius:3px;flex-shrink:0;width:12px;height:12px}.lecture.svelte-zkuqna{background:var(--color-event-lecture)}.practice.svelte-zkuqna{background:var(--color-event-practice)}.conflict.svelte-zkuqna{background:var(--color-event-conflict)}.exemption-item.svelte-zkuqna{cursor:pointer}.exemption-item.svelte-zkuqna input:where(.svelte-zkuqna){width:16px;height:16px;accent-color:var(--color-primary)}.exemption-item.svelte-zkuqna span:where(.svelte-zkuqna){display:grid}.exemption-item.svelte-zkuqna strong:where(.svelte-zkuqna){font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap}@media (width<=720px){.calendar-options.svelte-zkuqna{justify-content:flex-start;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap}.legend.svelte-zkuqna{width:100%}ul.svelte-zkuqna{flex-wrap:wrap}.exemption-item.svelte-zkuqna strong:where(.svelte-zkuqna){white-space:normal}.exemption-item.svelte-zkuqna{width:100%}}.icon.svelte-13so817{vertical-align:middle;flex-shrink:0}.event-details-card.svelte-wq1fvg{border-radius:var(--radius-lg);color:var(--color-event-contrast);border:1px solid #fff3;padding:16px 18px}.is-lecture.svelte-wq1fvg{background:var(--color-event-lecture)}.is-practice.svelte-wq1fvg{background:var(--color-event-practice)}.has-conflict.svelte-wq1fvg{background:var(--color-event-conflict)}header.svelte-wq1fvg{border-bottom:1px solid #ffffff3d;padding-bottom:12px}h3.svelte-wq1fvg{color:inherit;font-size:var(--text-lg);margin:0;line-height:1.3}dl.svelte-wq1fvg{gap:9px;margin:12px 0 0;display:grid}dl.svelte-wq1fvg>div:where(.svelte-wq1fvg){grid-template-columns:86px minmax(0,1fr);gap:10px;display:grid}dt.svelte-wq1fvg{color:#ffffffc7;align-items:center;gap:6px;font-size:.74rem;font-weight:700;display:inline-flex}dd.svelte-wq1fvg{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.84rem;font-weight:600}.event-code.svelte-wq1fvg{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}@media (width<=460px){.event-details-card.svelte-wq1fvg{padding:15px 16px}dl.svelte-wq1fvg>div:where(.svelte-wq1fvg){grid-template-columns:1fr;gap:2px}}.modal-backdrop.svelte-1bxxaoh{background:var(--color-overlay);z-index:3000;padding:var(--space-5);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.modal.svelte-1bxxaoh{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);width:100%;max-width:560px;max-height:calc(100vh - 40px);padding:var(--space-5);outline:none;margin:auto;overflow-y:auto}.modal.wide.svelte-1bxxaoh{max-width:860px}.modal.extra-wide.svelte-1bxxaoh{max-width:1320px}@media (width<=640px){.modal-backdrop.svelte-1bxxaoh{padding:var(--space-3)}.modal.svelte-1bxxaoh{max-height:calc(100vh - 24px);padding:var(--space-4)}}.suggest-bar.svelte-pxr8pm{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}@media (width<=768px){.suggest-bar.svelte-pxr8pm,.suggest-btn.svelte-pxr8pm{width:100%}.suggest-btn.svelte-pxr8pm{justify-content:center}}.suggest-btn.svelte-pxr8pm{font-weight:var(--weight-bold)}.suggestions-panel.svelte-pxr8pm{color:var(--color-text)}.suggestions-header.svelte-pxr8pm{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.suggestions-header.svelte-pxr8pm h2:where(.svelte-pxr8pm){font-size:var(--text-xl);color:var(--color-warning);align-items:center;gap:8px;margin:0;display:flex}.close-btn.svelte-pxr8pm{width:var(--control-sm);min-width:var(--control-sm);min-height:var(--control-sm)}.current-state.svelte-pxr8pm{color:var(--color-text);margin:0 0 18px}.empty.svelte-pxr8pm{color:var(--color-text-muted);margin:0 0 16px}.options.svelte-pxr8pm{counter-reset:none;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));align-items:start;gap:14px;margin:0;padding:0;list-style:none;display:grid}.option.svelte-pxr8pm{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-direction:column;min-width:0;padding:12px;display:flex}.option-header.svelte-pxr8pm{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.option-heading.svelte-pxr8pm{gap:1px;display:grid}.option-title.svelte-pxr8pm{color:var(--color-text);font-weight:700}.badge.svelte-pxr8pm{background:var(--color-danger-solid);color:var(--color-danger-contrast);border-radius:10px;padding:2px 8px;font-size:.8em}.badge.conflict-free.svelte-pxr8pm{background:var(--color-primary);color:var(--color-primary-contrast)}.option-changes.svelte-pxr8pm{color:var(--color-text-muted);font-size:.85em}.no-changes.svelte-pxr8pm{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:64px;color:var(--color-text-muted);margin:8px 0 16px;padding:12px;font-size:.84rem}.option-days.svelte-pxr8pm{gap:12px;margin-bottom:14px;display:grid}.day-group.svelte-pxr8pm h3:where(.svelte-pxr8pm){color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 6px;font-size:.74rem}.day-changes.svelte-pxr8pm{gap:7px;display:grid}.change-card.svelte-pxr8pm{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:10px}.change-heading.svelte-pxr8pm{justify-content:space-between;gap:8px;padding-bottom:7px;display:flex}.change-heading.svelte-pxr8pm strong:where(.svelte-pxr8pm){overflow-wrap:anywhere;min-width:0;font-size:.86rem}.change-heading.svelte-pxr8pm span:where(.svelte-pxr8pm){color:var(--color-text-muted);flex-shrink:0;font-size:.72rem}.replacement.svelte-pxr8pm{gap:6px;margin:0;display:grid}.replacement.svelte-pxr8pm>div:where(.svelte-pxr8pm){border-top:1px solid var(--color-border);grid-template-columns:68px minmax(0,1fr);gap:8px;padding-top:6px;display:grid}.replacement.svelte-pxr8pm dt:where(.svelte-pxr8pm){color:var(--color-text-muted);font-size:.7rem;font-weight:700}.replacement.svelte-pxr8pm dd:where(.svelte-pxr8pm){gap:1px;min-width:0;margin:0;display:grid}.replacement.svelte-pxr8pm dd:where(.svelte-pxr8pm) strong:where(.svelte-pxr8pm){overflow-wrap:anywhere;font-family:ui-monospace,Menlo,monospace;font-size:.76rem}.replacement.svelte-pxr8pm dd:where(.svelte-pxr8pm) span:where(.svelte-pxr8pm){color:var(--color-text-muted);overflow-wrap:anywhere;font-size:.72rem}.suggested-group.svelte-pxr8pm{border-top-color:color-mix(in srgb, var(--color-success) 45%, var(--color-border))!important}.suggested-group.svelte-pxr8pm dt:where(.svelte-pxr8pm),.suggested-group.svelte-pxr8pm dd:where(.svelte-pxr8pm) strong:where(.svelte-pxr8pm){color:var(--color-success)}.apply-btn.svelte-pxr8pm{margin-top:auto}@media (width<=640px){.suggestions-header.svelte-pxr8pm h2:where(.svelte-pxr8pm){font-size:1.05rem}.current-state.svelte-pxr8pm{font-size:.9rem}.option.svelte-pxr8pm{padding:10px}}.event-card.svelte-pbzgzn{color:var(--color-event-contrast);font-size:var(--text-xs);font-variant-numeric:tabular-nums;gap:2px;padding:6px 7px;line-height:1.2;display:grid;position:relative}.event-card.has-conflict.svelte-pbzgzn{padding-right:27px}.conflict-icon.svelte-pbzgzn{display:inline-flex;position:absolute;top:7px;right:7px}.event-title.svelte-pbzgzn{font-size:var(--text-sm);font-weight:var(--weight-bold);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.event-place.svelte-pbzgzn{opacity:.84;text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;overflow:hidden}.event-time.svelte-pbzgzn{opacity:.92;font-weight:var(--weight-semibold)}.export-panel.svelte-f8jzaf{position:relative}header.svelte-f8jzaf{max-width:680px}.eyebrow.svelte-f8jzaf{margin:0 0 var(--space-2);color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}h2.svelte-f8jzaf{color:var(--color-text);font-size:var(--text-2xl);margin:0}.intro.svelte-f8jzaf{margin:var(--space-2) 0 0;color:var(--color-text-muted);line-height:1.55}.close-btn.svelte-f8jzaf{width:var(--control-sm);min-width:var(--control-sm);min-height:var(--control-sm);position:absolute;top:-4px;right:-4px}.included.svelte-f8jzaf{margin:var(--space-5) 0 var(--space-3);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.message.svelte-f8jzaf{margin:0 0 var(--space-3);font-size:var(--text-sm)}.error.svelte-f8jzaf{color:var(--color-danger)}.success.svelte-f8jzaf{color:var(--color-success)}.formats.svelte-f8jzaf{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.format-card.svelte-f8jzaf{justify-content:space-between;gap:var(--space-5);min-width:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);flex-direction:column;display:flex}.format-card.recommended.svelte-f8jzaf{border-color:var(--color-accent)}.format-heading.svelte-f8jzaf{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}h3.svelte-f8jzaf{color:var(--color-text);font-size:var(--text-lg);margin:0}.format-copy.svelte-f8jzaf p:where(.svelte-f8jzaf){margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5}.badge.svelte-f8jzaf{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent-strong);font-size:var(--text-xs);font-weight:var(--weight-semibold);border-radius:999px;padding:3px 8px}.format-card.svelte-f8jzaf .button:where(.svelte-f8jzaf){align-self:flex-start}@media (width<=680px){.formats.svelte-f8jzaf{grid-template-columns:1fr}.format-card.svelte-f8jzaf{padding:var(--space-4)}.format-card.svelte-f8jzaf .button:where(.svelte-f8jzaf){justify-content:center;width:100%}}.timetable-actions.svelte-1mnn3q2{justify-content:flex-end;align-items:center;gap:8px;display:flex}.share-status.svelte-1mnn3q2{z-index:1000;border-radius:var(--radius-sm);background:var(--color-primary);box-shadow:var(--shadow-2);color:var(--color-primary-contrast);padding:12px 24px;animation:2s ease-in-out svelte-1mnn3q2-fade-in-out;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.share-status.failed.svelte-1mnn3q2{background:var(--color-danger-solid);color:var(--color-danger-contrast)}@keyframes svelte-1mnn3q2-fade-in-out{0%{opacity:0;transform:translate(-50%,20px)}15%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-20px)}}@media (width<=520px){.timetable-actions.svelte-1mnn3q2{flex-direction:column;align-items:stretch;width:100%}.action-button.svelte-1mnn3q2{width:100%}}.timetable.svelte-1oznmde{position:relative}.timetable-heading.svelte-1oznmde{align-items:center;gap:var(--space-3);background:var(--color-surface);grid-template-columns:max-content minmax(0,1fr) auto;min-height:62px;padding:10px 14px;display:grid}.timetable-heading.svelte-1oznmde h2:where(.svelte-1oznmde){font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:-.015em;margin:0}.agenda-intro.svelte-1oznmde{color:var(--color-text-muted);margin:3px 0 0;font-size:.8rem}.heading-copy.svelte-1oznmde{white-space:nowrap;min-width:0}.display-options.svelte-1oznmde{min-width:0}.heading-actions.svelte-1oznmde{justify-content:flex-end;align-items:center;gap:var(--space-2);min-width:0;display:flex}.timetable-heading.svelte-1oznmde .button{min-height:34px;font-size:var(--text-xs);gap:6px;padding:5px 9px}.calendar-wrapper.svelte-1oznmde{--sx-color-primary:var(--color-info);--sx-color-event-preview:var(--color-event-preview);width:100%;height:auto;min-height:760px;max-height:140vh;position:relative}.agenda.svelte-1oznmde{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sx__calendar{font-family:inherit}.sx__calendar-header,.sx__week-grid__date-number{display:none}.sx__week-grid__day-name{color:var(--color-text-muted);font-size:.76rem;font-weight:var(--weight-bold);letter-spacing:.055em}.sx__week-grid__hour{border-top-color:var(--color-calendar-grid)}.sx__week-grid__hour-text{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.74rem}.sx__week-grid__hour:first-child{visibility:visible}.sx__week-grid__hour:first-child .sx__week-grid__hour-text{top:.2rem}.sx__week-grid__time-axis:after{color:var(--color-text-muted);content:"21:00";font-variant-numeric:tabular-nums;font-size:.74rem;position:absolute;bottom:.2rem;left:-43px}.sx__time-grid-day{border-left-color:var(--color-calendar-grid)}.sx__week-header-border,.sx__week-header{border-color:var(--color-calendar-grid)}.sx-event--is-lecture{background-color:var(--color-event-lecture)!important}.sx-event--is-practice{background-color:var(--color-event-practice)!important}.sx__event{cursor:pointer}.sx__time-grid-event.sx__event{border-radius:var(--radius-sm);border:1px solid #ffffff3d;padding:0;box-shadow:0 2px 7px #00000029}.sx__time-grid-event.sx__event:hover{filter:brightness(1.07)}.sx__event-modal{border-radius:var(--radius-lg);width:min(340px,100vw - 32px);max-height:min(560px,100vh - 32px);box-shadow:var(--shadow-2);border:0;overflow:auto;background:0 0!important}.sx__event-modal__color-icon{display:none!important}.sx-event--has-conflict{border:2px solid var(--color-danger-solid-hover);background-color:var(--color-event-conflict)!important}@media (width<=720px){.timetable-heading.svelte-1oznmde{grid-template-columns:minmax(0,1fr);align-items:flex-start;gap:10px;padding-block:12px}.display-options.svelte-1oznmde{grid-area:auto;width:100%}.heading-actions.svelte-1oznmde{flex-direction:column;grid-area:auto;align-items:stretch;width:100%}.calendar-wrapper.svelte-1oznmde:not(.is-empty){display:none}.calendar-wrapper.is-empty.svelte-1oznmde{min-height:520px;max-height:520px;overflow:hidden}.calendar-wrapper.is-empty.svelte-1oznmde .sx__calendar{transform-origin:0 0;min-width:760px;transform:scale(.68)}.agenda.svelte-1oznmde{clip:auto;white-space:normal;border-radius:var(--radius-md);background:var(--color-surface-subtle);width:auto;height:auto;margin:0;padding:16px;position:static;overflow:visible}.agenda.svelte-1oznmde h3:where(.svelte-1oznmde){margin:0}.agenda.svelte-1oznmde h4:where(.svelte-1oznmde){margin:18px 0 6px}.agenda.svelte-1oznmde ul:where(.svelte-1oznmde){gap:8px;margin:0;padding:0;list-style:none;display:grid}.agenda-event.svelte-1oznmde{border-left:3px solid var(--color-event-practice);border-radius:var(--radius-sm);background:var(--color-surface-2);gap:5px;padding:12px;display:grid;position:relative}.agenda-event.is-lecture.svelte-1oznmde{border-left-color:var(--color-event-lecture)}.agenda-event.has-conflict.svelte-1oznmde{border-left-color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface-2))}.agenda-event-heading.svelte-1oznmde{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.agenda-event-heading.svelte-1oznmde strong:where(.svelte-1oznmde){min-width:0;font-size:.9rem;line-height:1.3}.agenda-event-heading.svelte-1oznmde>span:where(.svelte-1oznmde){color:var(--color-text);font-size:.78rem;font-weight:var(--weight-bold);flex-shrink:0}.agenda-event-meta.svelte-1oznmde{color:var(--color-text-muted);flex-wrap:wrap;gap:4px 10px;font-size:.74rem;display:flex}.agenda-event-meta.svelte-1oznmde span:where(.svelte-1oznmde)+span:where(.svelte-1oznmde):before{color:var(--color-text-faint);content:"·";margin-right:10px}.agenda-event.svelte-1oznmde p:where(.svelte-1oznmde){color:var(--color-text-muted);margin:0;font-size:.76rem;line-height:1.4}.agenda-conflict.svelte-1oznmde{color:var(--color-danger);font-size:.74rem;font-weight:var(--weight-bold)}}.guide-content.svelte-14zr7hk{color:var(--color-text)}header.svelte-14zr7hk{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}h2.svelte-14zr7hk{color:var(--color-accent-strong);font-size:var(--text-2xl);margin:0}header.svelte-14zr7hk p:where(.svelte-14zr7hk){max-width:62ch;color:var(--color-text-muted);margin:6px 0 0}.close-btn.svelte-14zr7hk{border-radius:var(--radius-sm);background:var(--color-surface-2);width:44px;height:44px;color:var(--color-text-muted);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close-btn.svelte-14zr7hk:hover{background:var(--color-surface-3);color:var(--color-text)}section.svelte-14zr7hk{border-top:1px solid var(--color-border);padding:18px 0}h3.svelte-14zr7hk{color:var(--color-accent-strong);font-size:var(--text-lg);margin:0 0 8px}p.svelte-14zr7hk,ol.svelte-14zr7hk{margin:0 0 10px;line-height:1.6}p.svelte-14zr7hk:last-child,ol.svelte-14zr7hk:last-child{margin-bottom:0}ol.svelte-14zr7hk{padding-left:24px}li.svelte-14zr7hk+li:where(.svelte-14zr7hk){margin-top:8px}code.svelte-14zr7hk{background:var(--color-surface-2);border-radius:4px;padding:.15em .4em;font-family:ui-monospace,Menlo,monospace;font-size:.9em}.guide-note.svelte-14zr7hk{border-left:4px solid var(--color-warning);border-radius:var(--radius-sm);background:var(--color-surface-2);margin-bottom:20px;padding:14px 16px;line-height:1.5}@media (width<=640px){h2.svelte-14zr7hk{font-size:var(--text-xl)}}.schedule-manager.svelte-auz38s{border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-1);justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex}.schedule-picker.svelte-auz38s,form.svelte-auz38s{align-items:center;gap:8px;display:flex}select.svelte-auz38s,input.svelte-auz38s{min-width:min(260px,42vw);height:var(--control-md);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text);font:inherit;font-weight:var(--weight-semibold);padding:0 34px 0 10px}.schedule-actions.svelte-auz38s{align-items:center;gap:8px;display:flex}.create-btn.svelte-auz38s,.clear-btn.svelte-auz38s{gap:var(--space-2)}.clear-btn.svelte-auz38s{background:var(--color-surface)}.icon-btn.svelte-auz38s{width:var(--control-md);height:var(--control-md)}.icon-btn.delete.svelte-auz38s{color:var(--color-danger)}form.svelte-auz38s input:where(.svelte-auz38s){padding-inline:10px}@media (width<=640px){.schedule-manager.svelte-auz38s{flex-direction:column;align-items:stretch}.schedule-picker.svelte-auz38s,.schedule-actions.svelte-auz38s{width:100%}select.svelte-auz38s,form.svelte-auz38s,form.svelte-auz38s input:where(.svelte-auz38s){flex:1;min-width:0}.schedule-actions.svelte-auz38s>button:where(.svelte-auz38s){flex:1;justify-content:center}}.subjects.svelte-1mdwfcq{flex-direction:column;min-width:0;height:100%;display:flex;position:relative}.subjects-heading.svelte-1mdwfcq{justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:10px 14px;display:flex}.subjects-heading.svelte-1mdwfcq h2:where(.svelte-1mdwfcq){color:var(--color-text);font-size:var(--text-lg);margin:0;line-height:1.25}.subjects-heading.svelte-1mdwfcq h2:where(.svelte-1mdwfcq) span:where(.svelte-1mdwfcq){color:var(--color-text-muted);font-weight:600}.selection-stats.svelte-1mdwfcq{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin:0;padding:0;list-style:none;display:flex}.selection-stats.svelte-1mdwfcq li:where(.svelte-1mdwfcq){border-radius:var(--radius-sm);background:var(--color-surface-2);min-height:28px;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);align-items:center;gap:8px;padding:4px 8px;display:inline-flex}.selection-stats.svelte-1mdwfcq li:where(.svelte-1mdwfcq):before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.selection-stats.svelte-1mdwfcq strong:where(.svelte-1mdwfcq){color:inherit}.lecture-stat.svelte-1mdwfcq{color:var(--color-event-lecture)!important}.practice-stat.svelte-1mdwfcq{color:var(--color-event-practice)!important}.conflict-stat.svelte-1mdwfcq{color:var(--color-event-conflict)!important}.subject-scroll.svelte-1mdwfcq{min-height:0;max-height:590px;padding:0 10px 10px;overflow:auto}.empty-subjects.svelte-1mdwfcq{min-height:184px;color:var(--color-text-muted);text-align:center;flex:1;place-content:center;padding:28px;display:grid}.empty-subjects.svelte-1mdwfcq strong:where(.svelte-1mdwfcq){color:var(--color-text);font-size:.92rem}.empty-subjects.svelte-1mdwfcq span:where(.svelte-1mdwfcq){margin-top:3px;font-size:.78rem}.subject-list.svelte-1mdwfcq{gap:6px;margin:0;padding:0;list-style:none;display:grid}.subject-card.svelte-1mdwfcq{border-radius:var(--radius-sm);background:var(--color-surface-subtle)}.subject-card.svelte-1mdwfcq:has(.event-options:where(.svelte-1mdwfcq)){background:var(--color-surface-2)}.subject-row.svelte-1mdwfcq{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px;min-height:46px;padding:3px;display:grid}.subject-checkbox.svelte-1mdwfcq,.event-toggle.svelte-1mdwfcq input:where(.svelte-1mdwfcq){width:18px;height:18px;accent-color:var(--color-primary);flex-shrink:0}.subject-checkbox.svelte-1mdwfcq{cursor:pointer;margin:0 8px}.subject-expand.svelte-1mdwfcq{border-radius:var(--radius-sm);min-width:0;min-height:40px;color:var(--color-text);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;display:flex}.subject-expand.svelte-1mdwfcq>span:where(.svelte-1mdwfcq){overflow-wrap:anywhere;min-width:0}.subject-title.svelte-1mdwfcq{gap:1px;display:grid}.subject-title.svelte-1mdwfcq strong:where(.svelte-1mdwfcq){font-size:var(--text-base);line-height:1.3}.subject-title.svelte-1mdwfcq small:where(.svelte-1mdwfcq){color:var(--color-accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-xs);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-expand.svelte-1mdwfcq svg{color:var(--color-text-muted);flex-shrink:0}.delete-btn.svelte-1mdwfcq{border-radius:var(--radius-sm);min-height:34px;color:var(--color-danger);cursor:pointer;width:36px;min-height:36px;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.subject-expand.svelte-1mdwfcq:hover,.subject-expand.expanded.svelte-1mdwfcq{background:var(--color-surface-2)}.delete-btn.svelte-1mdwfcq:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.subject-expand.svelte-1mdwfcq:focus-visible,.delete-btn.svelte-1mdwfcq:focus-visible,.subject-checkbox.svelte-1mdwfcq:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px}.event-options.svelte-1mdwfcq{gap:var(--space-4);width:100%;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-subtle);border:0;margin:0 4px 4px;display:grid}legend.svelte-1mdwfcq{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.event-options-heading.svelte-1mdwfcq{display:block}.event-options-heading.svelte-1mdwfcq span:where(.svelte-1mdwfcq){color:var(--color-text-muted);font-size:var(--text-sm)}.event-group.svelte-1mdwfcq{min-width:0}.event-group.svelte-1mdwfcq h3:where(.svelte-1mdwfcq){color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 6px;display:flex}.event-group-dot.svelte-1mdwfcq{background:var(--color-event-practice);border-radius:50%;width:8px;height:8px}.event-group-lecture.svelte-1mdwfcq .event-group-dot:where(.svelte-1mdwfcq){background:var(--color-event-lecture)}.event-group-options.svelte-1mdwfcq{gap:var(--space-2);display:grid}.event-toggle.svelte-1mdwfcq{align-items:center;gap:var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-2);cursor:pointer;border:1px solid #0000;grid-template-columns:auto minmax(210px,.9fr) minmax(220px,1.1fr) minmax(88px,auto);min-height:54px;padding:10px 12px;display:grid}.event-toggle.svelte-1mdwfcq:hover{border-color:var(--color-focus);background:var(--color-surface)}.event-toggle.svelte-1mdwfcq:has(input:where(.svelte-1mdwfcq):checked){border-color:var(--color-success);background:color-mix(in srgb, var(--color-success) 8%, var(--color-surface));box-shadow:inset 3px 0 0 var(--color-success)}.event-when.svelte-1mdwfcq{min-width:0;display:grid}.event-when.svelte-1mdwfcq strong:where(.svelte-1mdwfcq){font-size:var(--text-base);line-height:1.3}.event-instructor.svelte-1mdwfcq{min-width:0;color:var(--color-text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.event-toggle.conflict.svelte-1mdwfcq{border-color:var(--color-danger)}.event-status.svelte-1mdwfcq{justify-content:flex-end;min-width:0;display:flex}.conflict-label.svelte-1mdwfcq{color:var(--color-danger);align-items:center;gap:4px;font-weight:700;display:inline-flex}@media (width<=640px){.subjects-heading.svelte-1mdwfcq{flex-direction:column;align-items:flex-start;padding:12px}.selection-stats.svelte-1mdwfcq{justify-content:flex-start}.subject-scroll.svelte-1mdwfcq{max-height:none;padding-inline:8px;overflow:visible}.subject-card.svelte-1mdwfcq{width:100%}.event-toggle.svelte-1mdwfcq{grid-template-columns:auto minmax(0,1fr) auto}.event-instructor.svelte-1mdwfcq{grid-column:2}.event-status.svelte-1mdwfcq{grid-area:1/3/span 2}}.notice.svelte-zbgbd0{border:1px solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-surface-2);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface));color:var(--color-text);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;margin-bottom:24px;padding:14px 16px;display:grid}h2.svelte-zbgbd0{margin:0;font-size:1rem}p.svelte-zbgbd0{max-width:76ch;color:var(--color-text-muted);margin:4px 0 0;font-size:.9rem}@media (width<=640px){.notice.svelte-zbgbd0{grid-template-columns:auto minmax(0,1fr)}button.svelte-zbgbd0{grid-column:2;justify-self:start}}.github-star-link.svelte-pt45rd{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-weight:600;text-decoration:none;transition:background-color .2s,border-color .2s,transform .2s;display:inline-flex}.github-star-link.svelte-pt45rd:hover{border-color:var(--color-warning);background:var(--color-surface-2);color:var(--color-text);transform:translateY(-1px)}.github-star-link.svelte-pt45rd:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}svg.svelte-pt45rd{width:18px;height:18px;fill:var(--color-warning)}.footer.svelte-zgflwc{margin-top:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden}.footer-main.svelte-zgflwc{align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-5);grid-template-columns:minmax(240px,1fr) auto;display:grid}.project-note.svelte-zgflwc{min-width:0;color:var(--color-text);gap:3px;display:grid}.project-note.svelte-zgflwc strong:where(.svelte-zgflwc){font-size:var(--text-sm);display:block}.project-note.svelte-zgflwc p:where(.svelte-zgflwc){color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.5}.project-note.svelte-zgflwc a:where(.svelte-zgflwc){color:var(--color-accent);font-weight:var(--weight-semibold);text-decoration:none}.project-note.svelte-zgflwc a:where(.svelte-zgflwc):hover{color:var(--color-accent-strong);text-decoration:underline}.footer-actions.svelte-zgflwc{align-items:stretch;gap:var(--space-2);display:flex}.contact-action.svelte-zgflwc{min-height:var(--control-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text);font-size:var(--text-xs);font-weight:var(--weight-semibold);align-items:center;gap:8px;padding:6px 11px;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.contact-action.svelte-zgflwc span:where(.svelte-zgflwc){line-height:1.25;display:grid}.contact-action.svelte-zgflwc small:where(.svelte-zgflwc){color:var(--color-text-muted);font-size:.66rem;font-weight:600}.contact-action.svelte-zgflwc:hover{border-color:var(--color-border-strong);background:var(--color-surface-3);color:var(--color-text)}@media (width<=768px){.footer-main.svelte-zgflwc{align-items:stretch;gap:var(--space-4);grid-template-columns:1fr}.footer-actions.svelte-zgflwc{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.github-action.svelte-zgflwc{grid-column:1/-1}.github-action.svelte-zgflwc .github-star-link,.contact-action.svelte-zgflwc{width:100%}}@media (width<=460px){.footer-actions.svelte-zgflwc{grid-template-columns:1fr}.github-action.svelte-zgflwc{grid-column:auto}}.header.svelte-1m2z1hu{justify-content:space-between;align-items:center;gap:16px;min-height:58px;margin-bottom:10px;padding:2px 2px 0;display:flex}.title.svelte-1m2z1hu{align-items:center;gap:11px;display:flex}.brand-mark.svelte-1m2z1hu{background:var(--color-primary);width:40px;height:40px;color:var(--color-primary-contrast);box-shadow:0 5px 16px color-mix(in srgb, var(--color-primary) 24%, transparent);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}h1.svelte-1m2z1hu{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.025em;color:var(--color-text);margin:0}.title.svelte-1m2z1hu p:where(.svelte-1m2z1hu){color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.header-buttons.svelte-1m2z1hu{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.theme-toggle.svelte-1m2z1hu{background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface))}.language-picker.svelte-1m2z1hu{position:relative}.language-picker.svelte-1m2z1hu select:where(.svelte-1m2z1hu){height:var(--control-md);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background-color:var(--color-surface-2);min-width:66px;color:var(--color-text);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);box-shadow:var(--shadow-button);padding:0 28px 0 11px}.language-picker.svelte-1m2z1hu select:where(.svelte-1m2z1hu):hover{background-color:var(--color-surface-2)}.theme-toggle.svelte-1m2z1hu:hover{background:var(--color-surface-2)}.faq-btn.svelte-1m2z1hu{background:color-mix(in srgb, var(--color-info) 10%, var(--color-surface));color:var(--color-info)}.faq-btn.svelte-1m2z1hu:hover{background:var(--color-surface-2)}.faq-btn.glow.svelte-1m2z1hu{box-shadow:0 0 0 3px var(--color-surface-3);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 20%, transparent)}@media (width<=768px){.header.svelte-1m2z1hu{align-items:center;gap:8px}h1.svelte-1m2z1hu{white-space:nowrap;font-size:1rem}.header-buttons.svelte-1m2z1hu{flex-wrap:nowrap;justify-content:flex-end;gap:6px}.title.svelte-1m2z1hu{gap:8px}.brand-mark.svelte-1m2z1hu{width:36px;height:36px}.title.svelte-1m2z1hu p:where(.svelte-1m2z1hu){display:none}.faq-btn.svelte-1m2z1hu{width:var(--control-md);min-height:var(--control-md);justify-content:center;padding:0;font-size:0}.faq-btn.svelte-1m2z1hu svg{display:block}}@media (width<=420px){.header.svelte-1m2z1hu,.title.svelte-1m2z1hu{gap:6px}.brand-mark.svelte-1m2z1hu{border-radius:8px;width:32px;height:32px}.header-buttons.svelte-1m2z1hu{gap:4px}.theme-toggle.svelte-1m2z1hu,.faq-btn.svelte-1m2z1hu{width:var(--control-sm);height:var(--control-sm);min-height:var(--control-sm)}.language-picker.svelte-1m2z1hu select:where(.svelte-1m2z1hu){min-width:56px;height:var(--control-sm);padding-left:8px}h1.svelte-1m2z1hu{font-size:.84rem}}.course-finder.svelte-1dy9jqr{border-radius:var(--radius-lg);background:var(--color-surface);height:100%;margin:0;position:relative;overflow:visible}.course-finder.suggestions-open.svelte-1dy9jqr{z-index:50}.finder-heading.svelte-1dy9jqr{align-items:flex-start;min-height:54px;padding:14px 14px 7px;display:flex}h2.svelte-1dy9jqr,h3.svelte-1dy9jqr,p.svelte-1dy9jqr{margin:0}h2.svelte-1dy9jqr{font-size:var(--text-lg);line-height:1.25}.search-row.svelte-1dy9jqr{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:6px 14px 12px;display:grid}.search-box.svelte-1dy9jqr{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;color:var(--color-text-muted);box-shadow:var(--shadow-control-inset);align-items:center;display:flex}.autocomplete.svelte-1dy9jqr{min-width:0;position:relative}.suggestions.svelte-1dy9jqr{z-index:1;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-subtle);box-shadow:var(--shadow-2);gap:5px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.suggestions-heading.svelte-1dy9jqr{color:var(--color-text-muted);font-size:var(--text-xs);justify-content:space-between;align-items:center;gap:12px;padding:2px 6px 4px;display:flex}.suggestions-heading.svelte-1dy9jqr strong:where(.svelte-1dy9jqr){color:var(--color-text);font-size:var(--text-xs);letter-spacing:.01em}.suggestion.svelte-1dy9jqr,.suggestion-loading.svelte-1dy9jqr{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;min-height:58px;color:var(--color-text);font:inherit;text-align:left;padding:9px 10px}.suggestion.svelte-1dy9jqr{box-shadow:var(--shadow-control-inset);cursor:pointer;display:block}.suggestion.svelte-1dy9jqr:hover{border-color:var(--color-border-strong);background:var(--color-surface-2)}.active-suggestion.svelte-1dy9jqr{border-color:var(--color-focus);background:color-mix(in srgb, var(--color-focus-ring) 48%, var(--color-surface));box-shadow:0 0 0 1px var(--color-focus)}.suggestion-main.svelte-1dy9jqr{gap:2px;min-width:0;display:grid}.suggestion-main.svelte-1dy9jqr strong:where(.svelte-1dy9jqr){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.suggestion-main.svelte-1dy9jqr span:where(.svelte-1dy9jqr),.suggestion-loading.svelte-1dy9jqr{color:var(--color-text-muted);font-size:var(--text-sm)}.suggestion-main.svelte-1dy9jqr span:where(.svelte-1dy9jqr){text-overflow:ellipsis;white-space:nowrap;color:var(--color-accent-strong);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;overflow:hidden}.suggestion-main.svelte-1dy9jqr small:where(.svelte-1dy9jqr),.professor-match.svelte-1dy9jqr{color:var(--color-text-muted);font-family:inherit;font-size:var(--text-xs);font-weight:500}.professor-match.svelte-1dy9jqr{margin-top:2px;display:block}.search-box.svelte-1dy9jqr svg{margin-left:12px}input[type=text].svelte-1dy9jqr{width:100%;min-width:0;height:46px;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;padding:0 12px 0 10px}.search-box.svelte-1dy9jqr:focus-within{border-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-focus-ring)}.feedback.svelte-1dy9jqr:empty{display:none}.loading-status.svelte-1dy9jqr,.message.svelte-1dy9jqr{align-items:center;gap:8px;padding:9px 16px;font-size:.84rem;display:flex}.loading-status.svelte-1dy9jqr progress:where(.svelte-1dy9jqr){height:6px;accent-color:var(--color-primary);flex:1}.error.svelte-1dy9jqr{color:var(--color-danger)}.success.svelte-1dy9jqr{color:var(--color-success)}.warning.svelte-1dy9jqr{color:var(--color-warning)}.results.svelte-1dy9jqr{background:var(--color-surface);max-height:520px;padding:4px 10px 10px;overflow:auto}.result-group-heading.svelte-1dy9jqr,.class-row.svelte-1dy9jqr{align-items:center;gap:var(--space-3);display:flex}.close-results.svelte-1dy9jqr{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close-results.svelte-1dy9jqr:hover{background:var(--color-surface-3);color:var(--color-text)}.result-group.svelte-1dy9jqr{border-radius:var(--radius-md);background:var(--color-surface-subtle);margin:0 0 8px;overflow:hidden}.result-group-heading.svelte-1dy9jqr{justify-content:space-between;padding:10px 12px}.result-group-actions.svelte-1dy9jqr{align-items:center;gap:6px;display:flex}.result-group-heading.svelte-1dy9jqr h3:where(.svelte-1dy9jqr){font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:-.01em;line-height:1.3}.result-group-heading.svelte-1dy9jqr span:where(.svelte-1dy9jqr),.class-details.svelte-1dy9jqr span:where(.svelte-1dy9jqr),.class-time.svelte-1dy9jqr span:where(.svelte-1dy9jqr){color:var(--color-text-muted);font-size:var(--text-sm)}.class-section.svelte-1dy9jqr+.class-section:where(.svelte-1dy9jqr){margin-top:4px}.class-section-heading.svelte-1dy9jqr,.class-section-title.svelte-1dy9jqr{align-items:center;display:flex}.class-section-heading.svelte-1dy9jqr{background:color-mix(in srgb, var(--color-surface-2) 70%, transparent);padding:8px 12px}.class-section-title.svelte-1dy9jqr{gap:8px}.class-section-heading.svelte-1dy9jqr h4:where(.svelte-1dy9jqr){font-size:var(--text-sm);margin:0;line-height:1.25}.class-section-icon.svelte-1dy9jqr{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.class-section-lectures.svelte-1dy9jqr .class-section-icon:where(.svelte-1dy9jqr){background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success)}.class-section-practices.svelte-1dy9jqr .class-section-icon:where(.svelte-1dy9jqr){background:color-mix(in srgb, var(--color-info) 12%, transparent);color:var(--color-info)}.class-row.svelte-1dy9jqr{column-gap:var(--space-5);width:100%;min-height:58px;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;grid-template-columns:minmax(200px,.75fr) minmax(420px,1.7fr) minmax(110px,auto);padding:10px 14px;display:grid}.class-row.svelte-1dy9jqr:focus-visible{z-index:1;outline:3px solid var(--color-focus-ring);outline-offset:-3px;border-color:var(--color-focus);position:relative}.class-row.svelte-1dy9jqr:hover{background:var(--color-surface-2)}.class-section-lectures.svelte-1dy9jqr .class-row:where(.svelte-1dy9jqr):hover:not(.is-selected):not(.has-conflict){border-color:var(--color-event-lecture)}.class-section-practices.svelte-1dy9jqr .class-row:where(.svelte-1dy9jqr):hover:not(.is-selected):not(.has-conflict){border-color:var(--color-event-practice)}.class-row.is-selected.svelte-1dy9jqr{border-color:var(--color-success);background:color-mix(in srgb, var(--color-success) 10%, transparent)}.class-row.has-conflict.svelte-1dy9jqr{border-color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 8%, transparent)}.class-status.svelte-1dy9jqr{white-space:nowrap;place-self:center end;align-items:center;gap:5px;font-size:.78rem;font-weight:700;display:inline-flex}.selected-status.svelte-1dy9jqr{color:var(--color-success)}.conflict-status.svelte-1dy9jqr{color:var(--color-danger)}.class-time.svelte-1dy9jqr,.class-details.svelte-1dy9jqr{gap:var(--space-1);min-width:0;display:grid}.class-time.svelte-1dy9jqr strong:where(.svelte-1dy9jqr){font-size:var(--text-base);line-height:1.3}.class-details.svelte-1dy9jqr{align-items:center;column-gap:var(--space-5);grid-template-columns:minmax(130px,.8fr) minmax(150px,1fr) minmax(180px,1.15fr)}.class-details.svelte-1dy9jqr span:where(.svelte-1dy9jqr){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.class-code.svelte-1dy9jqr{font-family:var(--font-mono);font-weight:var(--weight-bold);color:var(--color-accent-strong)!important}.file-input.svelte-1dy9jqr{display:none}@media (width<=800px){.finder-heading.svelte-1dy9jqr{display:block}.search-row.svelte-1dy9jqr{grid-template-columns:1fr 1fr}.autocomplete.svelte-1dy9jqr{grid-column:1/-1}.suggestions.svelte-1dy9jqr{margin-top:6px;position:static}.class-row.svelte-1dy9jqr{grid-template-columns:1fr auto}.class-details.svelte-1dy9jqr{grid-area:2/1/auto/-1;grid-template-columns:1fr}.results.svelte-1dy9jqr{max-height:none;overflow:visible}}@media (width<=520px){.finder-heading.svelte-1dy9jqr{min-height:48px;padding:12px 12px 5px}.search-row.svelte-1dy9jqr{grid-template-columns:1fr;padding:6px 12px 12px}.autocomplete.svelte-1dy9jqr{grid-column:auto}.result-group-heading.svelte-1dy9jqr{flex-direction:column;align-items:stretch}.button-large.svelte-1dy9jqr,.button-transfer.svelte-1dy9jqr{min-height:46px}.results.svelte-1dy9jqr{padding-inline:8px}.result-group-actions.svelte-1dy9jqr{width:100%}.result-group-actions.svelte-1dy9jqr .button:where(.svelte-1dy9jqr){flex:1}.class-row.svelte-1dy9jqr{grid-template-columns:minmax(0,1fr) auto}.class-details.svelte-1dy9jqr{grid-area:2/1/auto/-1}.class-status.svelte-1dy9jqr{grid-area:1/2;justify-self:end}}.confirm-modal.svelte-1efofyg{color:var(--color-text)}h2.svelte-1efofyg{font-size:var(--text-xl);color:var(--color-warning);align-items:center;gap:8px;margin:0 0 12px;display:flex}p.svelte-1efofyg{color:var(--color-text);overflow-wrap:anywhere;margin:0 0 20px;line-height:1.5}.confirm-actions.svelte-1efofyg{justify-content:flex-end;gap:12px;display:flex}main.svelte-1n46o8q{min-height:100vh;padding:14px 18px 28px}.container.svelte-1n46o8q{max-width:1440px;margin:0 auto}.planner-toolbar.svelte-1n46o8q{margin-bottom:10px}.builder-workspace.svelte-1n46o8q{grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:10px;margin-bottom:10px;display:grid}.builder-pane.svelte-1n46o8q{border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;min-height:240px;box-shadow:var(--shadow-1);overflow:visible}.selected-pane.svelte-1n46o8q{overflow:hidden}.calendar-shell.svelte-1n46o8q{z-index:0;isolation:isolate;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);position:relative;overflow:hidden}@media (width<=1240px){.builder-workspace.svelte-1n46o8q{grid-template-columns:minmax(0,1fr)}.builder-pane.svelte-1n46o8q{min-height:0}}@media (width<=768px){main.svelte-1n46o8q{padding:8px}.builder-workspace.svelte-1n46o8q,.planner-toolbar.svelte-1n46o8q{margin-bottom:8px}.builder-pane.svelte-1n46o8q,.calendar-shell.svelte-1n46o8q{border-radius:var(--radius-md)}}.page-shell.svelte-9tpkvn{background:var(--color-bg);min-height:100vh;color:var(--color-text)}
