/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.block-1{block-size:var(--spacing)}.block-2{block-size:calc(var(--spacing) * 2)}@media print{.print\:hidden{display:none}}}:root{--font-sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--surface:#f7f8fa;--surface-raised:#fff;--text:#1b1f24;--text-muted:#5b6470;--border:#d8dce2;--accent:#2f5d82;--success:#1a6b3c;--line-step:#e7e9ed;--line-quarter:#c9ced6;--line-hour:#9ca4b0;--line-midnight:var(--accent);--hour-tint:#2f5d820d;--blocked-fill:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){:root{--blocked-fill:color-mix(in srgb, var(--text-muted) 12%, transparent)}}:root{--blocked-stripe:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){:root{--blocked-stripe:color-mix(in srgb, var(--text-muted) 30%, transparent)}}:root{--blocked-edge:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){:root{--blocked-edge:color-mix(in srgb, var(--text-muted) 55%, transparent)}}:root{--time-col-width:2.75rem;--conflict:#e8590c;--uncertain:#c00000;--diff-only-snapshot:#2b9a57;--diff-changed:#e0aa00;--danger:#b3261e}body{background-color:var(--surface);color:var(--text);font-family:var(--font-sans);margin:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.login-page{background:var(--surface);justify-content:center;align-items:center;min-height:100dvh;padding:2rem 1rem;display:flex}.login-page__card{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;width:100%;max-width:22rem;padding:2rem;box-shadow:0 8px 24px #1b1f2414}.login-page__card h1{color:var(--text);margin:0 0 1.5rem;font-size:1.375rem;font-weight:600}.field{color:var(--text);flex-direction:column;gap:.375rem;margin-bottom:1rem;font-size:.875rem;font-weight:500;display:flex}.field input,.field select,.field textarea{font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:8px;padding:.5rem .625rem}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field__hint{color:var(--text-muted);font-size:.8125rem;font-weight:400}.field__error{color:var(--danger);font-size:.8125rem;font-weight:400}.event-period-hint{margin:-.5rem 0 1rem}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field-row>.field,.field input{min-width:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.field-label{align-items:baseline;gap:.25rem;display:inline-flex}.field-label__star{color:var(--danger);font-weight:700}.field [aria-invalid=true]{border-color:var(--danger)}.date-field{position:relative}.date-field__control{display:flex;position:relative}.date-field__control input{flex:1;min-width:0;padding-right:2.5rem}.date-field__toggle{width:2.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:0 8px 8px 0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;bottom:0;right:0}.date-field__toggle:hover:not(:disabled){color:var(--accent)}.date-field__toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.date-field__toggle:disabled{opacity:.5;cursor:default}.date-field__popover{z-index:40;background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;padding:.5rem;font-weight:400;position:absolute;top:calc(100% + .25rem);left:0;box-shadow:0 8px 24px #1b1f2429}.field-row>.date-field:last-child .date-field__popover{left:auto;right:0}.date-field__popover .rdp-root{--rdp-accent-color:var(--accent);--rdp-accent-background-color:var(--hour-tint);--rdp-day-height:2.25rem;--rdp-day-width:2.25rem;--rdp-day_button-height:2.125rem;--rdp-day_button-width:2.125rem;--rdp-day_button-border-radius:8px;--rdp-selected-border:1px solid transparent;--rdp-nav_button-height:2rem;--rdp-nav_button-width:2rem;--rdp-nav-height:2.25rem;--rdp-weekday-opacity:1;--rdp-outside-opacity:.45;color:var(--text);font-size:.875rem}.date-field__popover .rdp-month_caption{font-size:.9375rem;font-weight:600}.date-field__popover .rdp-weekday{color:var(--text-muted);font-size:.75rem;font-weight:600}.date-field__popover .rdp-chevron{fill:var(--text-muted)}.date-field__popover .rdp-button_previous,.date-field__popover .rdp-button_next{border-radius:8px}.date-field__popover .rdp-button_previous:hover .rdp-chevron,.date-field__popover .rdp-button_next:hover .rdp-chevron{fill:var(--accent)}.date-field__popover .rdp-day_button:hover,.date-field__popover .rdp-button_previous:hover,.date-field__popover .rdp-button_next:hover{background:var(--hour-tint)}.date-field__popover .rdp-day_button:focus-visible,.date-field__popover .rdp-button_previous:focus-visible,.date-field__popover .rdp-button_next:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.date-field__popover .rdp-today:not(.rdp-outside):not(.rdp-selected) .rdp-day_button{border:1px solid var(--accent)}.date-field__popover .rdp-selected{font-size:inherit;font-weight:600}.date-field__popover .rdp-selected .rdp-day_button{background:var(--accent);border-color:var(--accent);color:#fff}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.5rem 1rem;font-weight:600}.btn:active{transform:scale(.98)}.btn--primary{background:var(--accent);color:#fff}.btn--primary:disabled{opacity:.6;cursor:default}.btn--secondary{background:var(--surface-raised);border-color:var(--border);color:var(--text)}.btn--danger{background:var(--danger);color:#fff}.btn--block{width:100%;display:block}.login-page__error{border:1px solid var(--danger);color:var(--danger);border-radius:8px;margin:0 0 1rem;padding:.625rem .75rem;font-size:.875rem}.login-page__note{color:var(--text-muted);margin:0;font-size:.875rem}.login-page__divider{color:var(--text-muted);align-items:center;gap:.75rem;margin:1.25rem 0;font-size:.8125rem;display:flex}.login-page__divider:before,.login-page__divider:after{content:"";background:var(--border);flex:1;height:1px}.form-error{color:var(--danger);margin:0 0 1rem;font-size:.875rem}.app-shell{background:var(--surface);flex-direction:column;min-height:100dvh;display:flex}.app-shell__header{box-sizing:border-box;background:var(--surface-raised);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;min-height:64px;padding:.5rem 1.5rem;display:flex}@media (width>=1100px){.app-shell__header{flex-wrap:nowrap}}.app-shell__brand{color:var(--text);white-space:nowrap;flex:none;font-weight:700}.app-shell__module-link{color:var(--accent);flex:none;font-weight:600;text-decoration:none}.app-shell__module-link:hover{text-decoration:underline}.app-shell__header>.btn{white-space:nowrap;flex:none}.app-shell__event-name{min-width:0;max-width:max-content;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1000 8rem;font-weight:500;overflow:hidden}.app-shell__spacer{flex:1}.app-shell__actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:.5rem .75rem;max-width:100%;margin-left:auto;display:flex}.app-shell__actions:empty{display:none}.app-shell--fill{--sheet-bar-height:2.75rem;--status-bar-height:1.75rem;height:100dvh;min-height:0}.app-shell--fill>.app-shell__header{flex:none}.app-shell__user-menu{flex:none;position:relative}.app-shell__menu{background:var(--surface-raised);border:1px solid var(--border);z-index:20;border-radius:8px;min-width:9rem;padding:.25rem;position:absolute;top:calc(100% + .375rem);right:0;box-shadow:0 8px 24px #1b1f241f}.app-shell__menu button{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:6px;padding:.5rem .625rem;display:block}.app-shell__menu button:hover,.app-shell__menu-link:hover{background:var(--surface)}.app-shell__menu-link{color:var(--text);border-radius:6px;padding:.5rem .625rem;text-decoration:none;display:block}.app-shell__version{border-top:1px solid var(--border);color:var(--text-muted);white-space:nowrap;margin-top:.25rem;padding:.375rem .625rem .25rem;font-size:.75rem}.app-shell__version--mismatch{color:var(--danger)}.event-list-page{width:100%;max-width:72rem;margin:0 auto;padding:2rem 1.5rem}.event-list-page__header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.event-list-page__header h1{color:var(--text);margin:0}.event-list{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.event-card{background:var(--surface-raised);border:1px solid var(--border);color:inherit;border-radius:8px;padding:1.25rem;text-decoration:none;display:block}.event-card:hover{border-color:var(--accent)}.event-card h2{color:var(--text);margin:0 0 .5rem;font-size:1.0625rem}.event-card p{color:var(--text-muted);margin:.125rem 0;font-size:.875rem}.event-list-page__empty{color:var(--text-muted);text-align:center;padding:3rem 0}.event-list-page__empty--error{color:var(--danger)}.dialog-overlay{z-index:30;background:#1b1f2466;justify-content:center;align-items:flex-start;padding:2.5rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--surface-raised);border-radius:8px;width:100%;max-width:30rem;padding:1.5rem;box-shadow:0 16px 48px #1b1f243d}.dialog h2{color:var(--text);margin:0 0 1.25rem}.dialog--narrow{max-width:24rem}.dialog__subtitle{color:var(--text-muted);margin:-.75rem 0 1.25rem;font-size:.875rem}.dialog-actions{justify-content:flex-end;gap:.625rem;margin-top:1.5rem;display:flex}.toaster{right:1rem;bottom:calc(1rem + var(--sheet-bar-height,0px) + var(--status-bar-height,0px));z-index:40;flex-direction:column;gap:.5rem;display:flex;position:fixed}.toast{color:#fff;border-radius:8px;align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:.875rem;display:flex;box-shadow:0 8px 24px #1b1f243d}.toast--info{background:var(--accent)}.toast--error{background:var(--danger)}.toast__action{font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff8c;border-radius:6px;padding:.125rem .5rem;font-weight:600}.toast__action:hover{background:#ffffff29}.toast__dismiss{color:inherit;cursor:pointer;background:0 0;border:none;font-size:1rem;line-height:1}.access{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.25rem}.access__title{color:var(--text);margin:0 0 .75rem;font-size:.9375rem}.access__row{color:var(--text);grid-template-columns:5rem 1fr;align-items:baseline;column-gap:.75rem;padding:.25rem 0;font-size:.875rem;display:grid}.access__label{color:var(--text-muted);font-size:.8125rem}.access__name{font-weight:600}.access__inactive{color:var(--text-muted);margin-left:.375rem}.access__muted{color:var(--text-muted)}.access__list{margin:0;padding:0;list-style:none}.access__person{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem .75rem;min-height:1.75rem;display:flex}.access__others{margin:.25rem 0 0;padding-left:5.75rem;font-size:.8125rem}.access__note{color:var(--text-muted);margin:.5rem 0;font-size:.875rem}.access__note--error,.access__error{color:var(--danger)}.access__error{margin:.625rem 0 0;font-size:.8125rem}.access__actions{gap:.5rem;margin-top:.875rem;display:flex}.access-btn{padding:.3125rem .75rem;font-size:.8125rem}.access-link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:.125rem 0;font-size:.8125rem;font-weight:500;transition:color .12s}.access-link:hover{text-decoration:underline}.access-link:active{transform:translateY(1px)}.access-link--danger{color:var(--danger)}.access-question{color:var(--text);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.875rem;display:inline-flex}.access__person .access-question{margin-top:0}.access-picker{border:1px solid var(--border);border-radius:8px;margin-top:.75rem;overflow:hidden}.access-picker__bar{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.access-picker__bar input{flex:1;min-width:0}.access-picker .access__note{margin:0;padding:.75rem}.access-picker__list{max-height:12rem;margin:0;padding:0;list-style:none;overflow-y:auto}.access-picker__list>li+li{border-top:1px solid var(--border)}.access-picker__hit{width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.4375rem .75rem;font-size:.875rem;transition:background .12s;display:flex}.access-picker__hit:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 6%, var(--surface-raised))}.access-picker__hit:disabled{cursor:default;color:var(--text-muted)}.access-picker__name{font-weight:600}.access-picker__detail{color:var(--text-muted);font-size:.8125rem}.snapshot-controls{flex:none;position:relative}.snapshot-controls__group{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.snapshot-controls__btn{border:none;border-right:1px solid var(--border);background:var(--surface-raised);width:2.25rem;height:2rem;color:var(--text-muted);cursor:pointer;place-items:center;padding:0;transition:color .12s,background-color .12s;display:grid}.snapshot-controls__btn:last-child{border-right:none}.snapshot-controls__btn:hover:not(:disabled){color:var(--text);background:color-mix(in srgb, var(--accent) 6%, var(--surface-raised))}.snapshot-controls__btn:active:not(:disabled){transform:scale(.96)}.snapshot-controls__btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.snapshot-controls__btn:disabled{cursor:default;opacity:.6}.snapshot-name{z-index:30;border:1px solid var(--border);background:var(--surface-raised);border-radius:8px;padding:.375rem;position:absolute;top:calc(100% + .375rem);left:0;box-shadow:0 8px 24px #1b1f2429}.snapshot-name__input{box-sizing:border-box;width:15rem;max-width:calc(100vw - 2rem);font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:6px;padding:.375rem .5rem;font-size:.875rem}.snapshot-name__input:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.snapshot-overlay{--spring:cubic-bezier(.32, .72, 0, 1);animation:snapshot-fade .32s var(--spring)}.dialog.snapshot-dialog{background:color-mix(in srgb, var(--surface-raised) 55%, transparent);max-width:56rem;box-shadow:0 0 0 1px #ffffff59, 0 30px 80px -30px color-mix(in srgb, var(--accent) 55%, transparent);animation:snapshot-rise .56s var(--spring);border-radius:22px;padding:6px}.snapshot-dialog__core{background:var(--surface-raised);border-radius:16px;padding:1.375rem 1.625rem 1.5rem;position:relative;box-shadow:inset 0 1px 1px #ffffffe6,0 0 0 1px #1b1f240f}.snapshot-dialog__head{align-items:center;gap:.75rem;display:flex}.snapshot-eyebrow{background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--accent);letter-spacing:.2em;text-transform:uppercase;border-radius:999px;flex:none;padding:.25rem .625rem;font-size:.625rem;font-weight:600}.dialog .snapshot-dialog__title{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;margin:0;font-size:1.25rem;font-weight:700;overflow:hidden}.snapshot-dialog__close{background:color-mix(in srgb, var(--text) 5%, transparent);width:2rem;height:2rem;color:var(--text-muted);cursor:pointer;transition:transform .4s var(--spring);border:none;border-radius:999px;flex:none;place-items:center;padding:0;display:grid}.snapshot-dialog__close:hover{color:var(--text);transform:rotate(90deg)}.snapshot-dialog__state{color:var(--text-muted);text-align:center;margin:0;padding:5rem 0;font-size:.875rem}.snapshot-pill{background:color-mix(in srgb, var(--text) 5%, transparent);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;transition:transform .3s var(--spring), opacity .2s var(--spring);border:none;border-radius:999px;flex:none;align-items:center;gap:.625rem;padding:.4375rem 1rem;font-size:.8125rem;font-weight:600;line-height:1.25rem;display:inline-flex}.snapshot-pill:has(.snapshot-pill__icon){padding-top:.25rem;padding-bottom:.25rem;padding-right:.25rem}.snapshot-pill__icon{background:color-mix(in srgb, var(--text) 7%, transparent);width:1.5rem;height:1.5rem;transition:transform .4s var(--spring);border-radius:999px;place-items:center;display:grid}.snapshot-pill:hover:not(:disabled) .snapshot-pill__icon{transform:translate(2px,-1px)scale(1.05)}.snapshot-pill:active:not(:disabled){transform:scale(.98)}.snapshot-pill--primary{background:var(--accent);color:#fff}.snapshot-pill--primary .snapshot-pill__icon{background:#ffffff2e}.snapshot-pill--danger{background:var(--danger);color:#fff}.snapshot-pill:disabled{cursor:not-allowed;opacity:.45}.snapshot-pill:focus-visible,.snapshot-link:focus-visible,.snapshot-dialog__close:focus-visible,.snapshot-node:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.snapshot-timeline{margin-top:.5rem;padding-top:11.5rem;position:relative}.snapshot-timeline__hint{color:var(--text-muted);text-align:center;animation:snapshot-fade .4s var(--spring);margin:0;font-size:.8125rem;position:absolute;top:4.75rem;left:0;right:0}.snapshot-float{z-index:1;pointer-events:none;width:240px;height:150px;transform:translateX(calc(var(--float-x,120px) - 50%));transition:transform .52s var(--spring);position:absolute;top:.75rem;left:0}.snapshot-float__lift{width:100%;height:100%;animation:snapshot-lift .52s var(--spring)}.snapshot-card{box-sizing:border-box;background:linear-gradient(160deg, var(--surface-raised), color-mix(in srgb, var(--accent) 7%, var(--surface)));border-radius:14px;width:100%;height:100%;padding:4px;transform:perspective(700px)rotateX(12deg)rotateY(-10deg);box-shadow:inset 0 1px #ffffffe6,0 28px 40px -18px #1b1f2459,0 0 0 1px #1b1f240f}.snapshot-card__core{background:var(--surface-raised);border-radius:11px;height:100%}.snapshot-preview{place-items:center;display:grid;position:relative;overflow:hidden}.snapshot-preview__page{width:100%;animation:snapshot-fade .48s var(--spring);align-self:start;-webkit-mask-image:linear-gradient(#000 72%,#0000);mask-image:linear-gradient(#000 72%,#0000)}.snapshot-preview__page svg{width:100%;height:auto;display:block}.snapshot-preview__page text{white-space:pre;font-kerning:none;font-feature-settings:"kern" 0;font-family:PrintNoto,sans-serif}.snapshot-preview__note{color:var(--text-muted);letter-spacing:.02em;animation:snapshot-fade .32s var(--spring);margin:0;font-size:.75rem;font-weight:600}.snapshot-preview--loading:after{content:"";background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--accent) 7%, transparent) 50%, transparent 70%);animation:snapshot-sheen 1.4s var(--spring) infinite;position:absolute;inset:0;transform:translate(-100%)}.snapshot-timeline__scroll{scrollbar-width:thin;padding-bottom:.5rem;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 1.5rem calc(100% - 1.5rem),#0000);mask-image:linear-gradient(90deg,#0000,#000 1.5rem calc(100% - 1.5rem),#0000)}.snapshot-rail{box-sizing:border-box;gap:1.5rem;width:max-content;min-width:100%;margin:0;padding:0 1.5rem;list-style:none;display:flex;position:relative}.snapshot-rail:before{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 8%, transparent), color-mix(in srgb, var(--accent) 35%, transparent));border-radius:2px;height:2px;position:absolute;top:calc(1.625rem + 6px);left:0;right:0}.snapshot-day{flex-direction:column;display:flex}.snapshot-day--now{margin-left:auto}.snapshot-day__label{border-left:1px solid var(--border);height:1.25rem;color:var(--text-muted);letter-spacing:.04em;white-space:nowrap;padding-left:.5rem;font-size:.6875rem;font-weight:600;line-height:1rem}.snapshot-day--now .snapshot-day__label{border-left:none}.snapshot-day__nodes{gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.snapshot-node,.snapshot-now{width:5.75rem;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:center;padding:.375rem .25rem .25rem;display:flex;position:relative}.snapshot-now{cursor:default}.snapshot-node__dot{box-sizing:border-box;background:var(--surface-raised);width:14px;height:14px;box-shadow:0 0 0 2px var(--accent), 0 6px 14px -4px color-mix(in srgb, var(--accent) 50%, transparent);transition:transform .45s var(--spring);border-radius:999px}.snapshot-node:hover .snapshot-node__dot{transform:scale(1.25)}.snapshot-node--selected .snapshot-node__dot{background:var(--accent);box-shadow:0 0 0 2px var(--accent), 0 0 0 6px color-mix(in srgb, var(--accent) 16%, transparent)}.snapshot-node--auto .snapshot-node__dot{box-shadow:0 0 0 2px var(--line-hour)}.snapshot-node--auto.snapshot-node--selected .snapshot-node__dot{background:var(--line-hour);box-shadow:0 0 0 2px var(--line-hour), 0 0 0 6px color-mix(in srgb, var(--line-hour) 22%, transparent)}.snapshot-node--closed{opacity:.4}.snapshot-now__dot{background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 18%, transparent)}.snapshot-node__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:.5rem;font-size:.6875rem;font-weight:600;overflow:hidden}.snapshot-now .snapshot-node__name{color:var(--accent)}.snapshot-node__time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.6875rem}.snapshot-detail{background:var(--surface);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);animation:snapshot-rise-small .42s var(--spring);border-radius:14px;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:1rem 0 0;padding:.875rem .875rem .875rem 1.125rem;display:flex}.snapshot-detail--empty{color:var(--text-muted);justify-content:center;font-size:.8125rem;animation:none}.snapshot-detail__info{flex:14rem;min-width:0}.snapshot-detail__info p{margin:0}.snapshot-detail__title{align-items:center;gap:.5rem;font-size:.9375rem;font-weight:650;display:flex}.snapshot-detail__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.snapshot-detail__tag{background:color-mix(in srgb, var(--line-hour) 22%, transparent);color:var(--text-muted);border-radius:999px;flex:none;padding:.0625rem .5rem;font-size:.6875rem;font-weight:600}.snapshot-detail .snapshot-detail__meta,.snapshot-detail .snapshot-detail__note{color:var(--text-muted);margin-top:.125rem;font-size:.8125rem}.snapshot-detail__note{font-style:italic}.snapshot-detail__input{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-raised);width:min(20rem,100%);color:var(--text);font:inherit;border-radius:8px;padding:.3125rem .625rem;font-size:.9375rem;font-weight:600}.snapshot-detail__input:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.snapshot-detail__actions,.snapshot-detail__question{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.snapshot-detail__question{animation:snapshot-fade .3s var(--spring);font-size:.8125rem}.snapshot-detail__question>span{margin-right:.375rem}.snapshot-link{color:var(--text-muted);font:inherit;cursor:pointer;transition:transform .3s var(--spring);background:0 0;border:none;border-radius:999px;align-items:center;gap:.375rem;padding:.4375rem .75rem;font-size:.8125rem;font-weight:600;display:inline-flex}.snapshot-link:hover{color:var(--text)}.snapshot-link--danger:hover{color:var(--danger)}.snapshot-link:active{transform:scale(.98)}@keyframes snapshot-fade{0%{opacity:0}}@keyframes snapshot-rise{0%{opacity:0;transform:translateY(14px)scale(.98)}}@keyframes snapshot-rise-small{0%{opacity:0;transform:translateY(6px)}}@keyframes snapshot-sheen{to{transform:translate(100%)}}@keyframes snapshot-lift{0%{opacity:0;transform:translateY(16px)scale(.92)}}@media (prefers-reduced-motion:reduce){.snapshot-overlay,.dialog.snapshot-dialog,.snapshot-float__lift,.snapshot-preview__page,.snapshot-preview__note,.snapshot-preview--loading:after,.snapshot-detail,.snapshot-detail__question,.snapshot-timeline__hint{animation:none}.snapshot-float{transition:none}}.snapshot-banner{border:1px solid color-mix(in srgb, var(--text) 18%, var(--border));border-left:3px solid var(--text);background:color-mix(in srgb, var(--text) 4%, var(--surface-raised));color:var(--text);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.5rem .5rem .5rem .875rem;font-size:.875rem;line-height:1.4;display:flex}.snapshot-banner__icon{color:var(--text-muted);flex:none}.snapshot-banner__message{font-variant-numeric:tabular-nums;text-wrap:pretty;flex:18rem;min-width:0;margin:0;font-weight:500}.snapshot-banner__actions,.snapshot-banner__confirm{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.snapshot-banner__actions{margin-left:auto}.snapshot-banner__question{color:var(--text-muted)}.snapshot-banner__button{padding:.3125rem .75rem;font-size:.8125rem;transition:background-color .15s,border-color .15s}.snapshot-banner__button.btn--secondary:hover:not(:disabled){border-color:var(--accent)}.snapshot-banner__button.btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, #000)}.snapshot-banner__button:active:not(:disabled){transform:translateY(1px)}.diff-panel{border:1px solid var(--border);background:var(--surface-raised);min-width:0;color:var(--text);border-radius:8px;flex-direction:column;flex:0 0 18.5rem;font-size:.8125rem;display:flex}.schedule-page__body--scroll>.diff-panel{flex:none;max-width:26rem}.diff-panel--folded{flex-basis:2.5rem}.diff-panel__head{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.5rem .375rem .5rem .75rem;display:flex}.diff-panel__icon{color:var(--text-muted);flex:none}.diff-panel__title{letter-spacing:-.005em;margin:0;font-size:.8125rem;font-weight:600}.diff-panel__count{background:color-mix(in srgb, var(--text) 7%, transparent);min-width:1.25rem;color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:center;border-radius:4px;padding:.0625rem .375rem;font-size:.6875rem;font-weight:600}.diff-panel__fold,.diff-panel__rail{color:var(--text-muted);cursor:pointer;background:0 0;border:none;transition:color .15s,background-color .15s}.diff-panel__fold{border-radius:6px;place-items:center;width:1.75rem;height:1.75rem;margin-left:auto;display:grid}.diff-panel__rail{border-radius:8px;flex-direction:column;align-items:center;gap:.625rem;width:100%;height:100%;padding:.625rem 0;display:flex}.diff-panel__fold:hover,.diff-panel__rail:hover{color:var(--text);background:color-mix(in srgb, var(--accent) 6%, var(--surface-raised))}.diff-panel__fold:active,.diff-panel__rail:active{transform:translateY(1px)}.diff-panel__fold:focus-visible,.diff-panel__rail:focus-visible,.diff-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.diff-panel__body{flex:auto;min-height:0;position:relative}.schedule-page__stage .diff-panel__scroll{position:absolute;inset:0;overflow:auto}.diff-panel__scroll{scrollbar-width:thin;scrollbar-color:var(--line-quarter) transparent;padding:.625rem .5rem .875rem}.diff-panel__summary{background:color-mix(in srgb, var(--text) 4%, var(--surface-raised));font-variant-numeric:tabular-nums;border-radius:6px;gap:.25rem;margin:0 .25rem .75rem;padding:.5rem .625rem;list-style:none;display:grid}.diff-panel__summary li{padding-left:.75rem;position:relative}.diff-panel__summary li:before{content:"";background:var(--text-muted);border-radius:1px;width:.3125rem;height:.3125rem;position:absolute;top:.5em;left:0}.diff-panel__note{color:var(--text-muted);text-wrap:pretty;margin:.25rem .25rem 0}.diff-panel__day+.diff-panel__day{margin-top:.75rem}.diff-panel__day-name{color:var(--text-muted);letter-spacing:.08em;margin:0 .25rem .25rem;font-size:.6875rem;font-weight:600}.diff-panel__items{gap:1px;margin:0;padding:0;list-style:none;display:grid}.diff-item{width:100%;color:var(--text);font:inherit;text-align:left;background:0 0;border:none;border-radius:6px;grid-template-columns:3px minmax(0,1fr);column-gap:.625rem;padding:.375rem .375rem .375rem .25rem;display:grid}button.diff-item{cursor:pointer;transition:background-color .15s}button.diff-item:hover{background:color-mix(in srgb, var(--accent) 6%, var(--surface-raised))}button.diff-item:active{transform:translateY(1px)}.diff-item__swatch{background:var(--diff-changed);border-radius:2px;grid-row:1/span 2;align-self:stretch}.diff-item--only-snapshot .diff-item__swatch{background:var(--diff-only-snapshot)}.diff-item--only-current .diff-item__swatch{border-left:2px dashed var(--line-hour);background:0 0}.diff-item__label{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.diff-item__detail{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.diff-item--only-current .diff-item__label{color:var(--text-muted)}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{inset-inline-start:0;height:var(--rdp-nav-height);display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{inset-inline-end:0;height:var(--rdp-nav-height);justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.lock-banner{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--surface-raised));color:var(--text);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.5rem .5rem .5rem .875rem;font-size:.875rem;line-height:1.4;display:flex}.lock-banner--offline{border-color:color-mix(in srgb, var(--danger) 28%, var(--border));border-left-color:var(--danger);background:color-mix(in srgb, var(--danger) 5%, var(--surface-raised))}.lock-banner__icon{color:var(--accent);flex:none}.lock-banner--offline .lock-banner__icon{color:var(--danger)}.lock-banner__message{text-wrap:pretty;flex:18rem;min-width:0;margin:0;font-weight:500}.lock-banner__actions,.lock-banner__confirm{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.lock-banner__actions{margin-left:auto}.lock-banner__actions:empty{display:none}.lock-banner__question{color:var(--text-muted)}.lock-banner__button{padding:.3125rem .75rem;font-size:.8125rem;transition:background-color .15s,border-color .15s}.lock-banner__button.btn--secondary:hover{border-color:var(--accent)}.lock-banner__button.btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, #000)}.schedule-page{flex-direction:column;flex:1;max-width:100%;min-height:0;display:flex}.schedule-page__body{flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:1rem 1.5rem;display:flex}.schedule-page__stage{flex:0 auto;gap:.75rem;min-height:0;display:flex}.schedule-page__stage>.schedule-grid-frame{flex:1 1 0;min-width:0}.schedule-page__body--scroll{overflow:auto}.set-days-panel{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;max-width:26rem;padding:1.5rem}.set-days-panel h2{color:var(--text);margin:0 0 1rem}.set-days-panel__empty{color:var(--text-muted)}.schedule-page__load-error{color:var(--text-muted);margin:1.5rem 0}.day-heading{flex:none}.day-heading__main{letter-spacing:-.01em;color:var(--text);margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.day-heading__sub{letter-spacing:.02em;color:var(--text-muted);margin:.125rem 0 0;font-size:.8125rem;font-weight:500}.day-sheet-bar{bottom:var(--status-bar-height,0px);z-index:25;box-sizing:border-box;height:var(--sheet-bar-height,2.75rem);background:var(--line-step);border-top:1px solid var(--border);flex:none;align-items:stretch;gap:.5rem;padding:0 1.5rem;display:flex;position:sticky}.day-sheet-bar__scroller{flex:0 auto;align-items:stretch;min-width:0;display:flex;position:relative}.day-sheet-bar__list{scrollbar-width:none;flex:0 auto;align-items:stretch;min-width:0;scroll-padding-inline:2.25rem;display:flex;overflow:auto hidden}.day-sheet-bar__pager{z-index:1;box-sizing:border-box;background:var(--line-step);width:2rem;color:var(--text);cursor:pointer;border:none;place-items:center;padding:0;transition:background-color .12s ease-out;display:grid;position:absolute;top:0;bottom:0}.day-sheet-bar__pager--previous{border-right:1px solid var(--border);border-radius:0 0 6px;left:0}.day-sheet-bar__pager--next{border-left:1px solid var(--border);border-radius:0 0 0 6px;right:0}.day-sheet-bar__pager:hover{background:var(--surface-raised)}.day-sheet-bar__pager:active{background:color-mix(in srgb, var(--text) 14%, var(--line-step))}.day-sheet-bar__pager:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.day-sheet-bar__pager{transition:none}}.day-sheet-bar__list::-webkit-scrollbar{display:none}.day-sheet-bar__item{flex:none;align-items:stretch;display:flex}.day-sheet-bar__tab{max-width:16rem;font:inherit;white-space:nowrap;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0 0 8px 8px;flex:none;padding:0 .875rem;font-weight:400}.day-sheet-bar__tab strong{font-weight:700}.day-sheet-bar__tab:hover{color:var(--text);background:color-mix(in srgb, var(--surface-raised) 55%, transparent)}.day-sheet-bar__tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.day-sheet-bar__tab--active,.day-sheet-bar__tab--active:hover{color:var(--text);background:var(--surface-raised);border-color:var(--border);border-top-color:var(--surface-raised);box-shadow:inset 0 -2px 0 var(--accent)}.day-sheet-bar__menu-button{width:1.75rem;height:1.75rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;align-self:center;place-items:center;display:grid}.day-sheet-bar__menu-button:hover,.day-sheet-bar__menu-button[aria-expanded=true]{background:var(--surface-raised);color:var(--text)}.day-sheet-bar__menu-button:focus-visible,.day-sheet-bar__menu button:focus-visible,.day-sheet-bar__add:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.day-sheet-bar__add{font:inherit;white-space:nowrap;color:var(--accent);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;align-self:center;padding:.25rem .625rem;font-weight:600}.day-sheet-bar__add--before{padding:.25rem .5rem;font-size:1.125rem;line-height:1}.day-sheet-bar__add:hover{background:var(--surface-raised)}.day-sheet-bar__menu{z-index:28;background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;min-width:9rem;padding:.25rem;position:fixed;box-shadow:0 8px 24px #1b1f241f}.day-sheet-bar__menu button{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:6px;padding:.5rem .625rem;display:block}.day-sheet-bar__menu button:hover{background:var(--surface)}.day-sheet-bar__menu .day-sheet-bar__menu-danger{color:var(--danger)}.schedule-page__venues{border:1px solid var(--border);border-radius:8px;width:fit-content;min-width:100%;display:grid;overflow:hidden}.venue-header{grid-column:span 2;grid-template-columns:subgrid;background:var(--surface-raised);border-right:1px solid var(--border);grid-template-rows:1fr auto;display:grid;position:relative}.venue-header__text,.venue-header>.venue-header__edit-form{box-sizing:border-box;grid-area:1/1/auto/-1;align-self:center;padding:.625rem 2.25rem .375rem}.venue-header__text{text-align:center;flex-direction:column;align-items:stretch;width:100%;min-width:0;display:flex}.venue-header__lane-label{border-left:1px solid var(--line-quarter);min-width:0;font-size:calc(.6875rem * var(--grid-scale,1));color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;grid-area:2/2;padding:.0625rem .375rem .25rem;font-weight:500;line-height:1.2;overflow:hidden}.venue-header__name{font-size:calc(1rem * var(--grid-scale,1));color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.venue-header__subtitle{font-weight:400;font-size:calc(.8125rem * var(--grid-scale,1));color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.venue-header__edit-form{flex-direction:column;gap:.25rem;width:100%;min-width:0;display:flex}.venue-header__edit-form label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.venue-header__edit-form input{font:inherit;text-align:center;border:1px solid var(--accent);color:var(--text);background:var(--surface-raised);box-sizing:border-box;border-radius:6px;width:100%;min-width:0;padding:.25rem .375rem;font-weight:600}.venue-header__edit-form .venue-header__subtitle-input{font-size:.8125rem;font-weight:400}.venue-header__edit-form input[aria-invalid=true]{border-color:var(--danger)}.venue-header__edit-form .field__error{text-align:center;line-height:1.25}.venue-header__menu-button{z-index:2;width:1.75rem;height:1.75rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:1.125rem;line-height:1;display:inline-flex;position:absolute;top:.375rem;right:.25rem}.venue-header__menu-button:hover{background:var(--surface)}.venue-header__sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.venue-header__menu{background:var(--surface-raised);border:1px solid var(--border);z-index:60;border-radius:8px;min-width:8.5rem;padding:.25rem;position:fixed;box-shadow:0 8px 24px #1b1f241f}.venue-header__menu button{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:6px;padding:.5rem .625rem;display:block}.venue-header__menu button:hover{background:var(--surface)}.add-venue-column{background:var(--surface-raised);justify-content:center;align-items:center;min-width:0;display:flex}.add-venue-button{border:1px solid var(--border);background:var(--surface-raised);width:1.75rem;height:1.75rem;color:var(--accent);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.add-venue-button:hover,.add-venue-button[aria-expanded=true]{background:var(--accent);border-color:var(--accent);color:var(--surface-raised)}.add-venue-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.add-venue-button:active{transform:translateY(1px)}.add-venue-popover{z-index:60;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;width:15rem;padding:.75rem;position:fixed;box-shadow:0 8px 24px #1b1f241f}.add-venue-popover__field{margin:0}.add-venue-popover__hint{color:var(--text-muted);margin:.5rem 0 0;font-size:.8125rem}.venue-header--grabbable{cursor:grab;-webkit-user-select:none;user-select:none}.venue-header--dragging{opacity:.45;cursor:grabbing}.venue-drag-copy{z-index:70;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--accent);color:var(--text);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;cursor:grabbing;border-radius:8px;align-items:center;padding:.625rem .75rem;font-weight:600;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #1b1f242e}.venue-drop-indicator{z-index:71;background:var(--accent);pointer-events:none;border-radius:2px;width:3px;margin-left:-1.5px;position:fixed}.schedule-grid-scroll .schedule-page__venues{overflow:visible}.schedule-grid-scroll .add-venue-column{z-index:1;border-left:1px solid var(--border);position:sticky;right:0}.fit-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.schedule-grid-frame{--scrollbar-size:.875rem;flex-direction:column;flex:0 auto;min-height:0;display:flex;position:relative}.schedule-grid-scroll{border:1px solid var(--border);background:var(--surface-raised);scrollbar-width:auto;scrollbar-color:var(--line-hour) var(--surface);border-radius:8px;flex:0 auto;min-height:0;overflow:auto}.schedule-grid-scroll::-webkit-scrollbar{width:var(--scrollbar-size,.875rem);height:var(--scrollbar-size,.875rem)}.schedule-grid-scroll::-webkit-scrollbar-track{background:var(--surface);border-top:1px solid var(--border)}.schedule-grid-scroll::-webkit-scrollbar-thumb{background:var(--line-hour);border:2px solid var(--surface);border-radius:999px}.schedule-grid-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.scroll-pager{z-index:5;box-sizing:border-box;pointer-events:none;background:color-mix(in srgb, var(--text) 14%, transparent);width:2rem;color:var(--text);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;transition:background-color .12s ease-out;display:flex;position:absolute}.scroll-pager__hit{pointer-events:auto;justify-content:center;align-items:center;width:2rem;height:3rem;display:flex}.scroll-pager--previous{border-radius:0 6px 6px 0}.scroll-pager--next{border-radius:6px 0 0 6px}.scroll-pager:hover{background:color-mix(in srgb, var(--text) 26%, transparent)}.scroll-pager:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.scroll-pager:active{background:color-mix(in srgb, var(--text) 34%, transparent)}.scroll-pager[data-dragging=true]{opacity:.5}.scroll-pager[data-dragging=true] .scroll-pager__hit{pointer-events:none}@media (prefers-reduced-motion:reduce){.scroll-pager{transition:none}}.schedule-grid-scroll .schedule-page__venues{z-index:3;border:none;border-bottom:1px solid var(--border);border-radius:0;position:sticky;top:0}.schedule-grid__time-spacer{background:var(--surface-raised);border-right:1px solid var(--border)}.schedule-grid__row{align-items:start;width:fit-content;min-width:100%;display:grid;position:relative}.schedule-grid__midnight{z-index:2;border-top:2px solid var(--line-midnight);pointer-events:none;height:0;position:absolute;left:0;right:0}.schedule-grid__midnight-label{left:calc(var(--time-col-width) + 2px);font-size:calc(.625rem * var(--grid-scale,1));letter-spacing:.02em;white-space:nowrap;color:var(--surface-raised);background:var(--line-midnight);border-radius:0 0 3px 3px;padding:0 .25rem;font-weight:700;line-height:1.2;position:absolute;top:0}.time-column{background:var(--surface);border-right:1px solid var(--border);-webkit-user-select:none;user-select:none}.time-column__row{box-sizing:border-box;font-size:calc(.625rem * var(--grid-scale,1));color:var(--text-muted);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:flex-start;padding:0 .25rem;display:flex}.time-column__spacer{box-sizing:border-box;background:var(--surface)}.venue-lane__spacer{background:var(--surface-raised);position:absolute;left:0;right:0}.time-column__row--hour{color:var(--text);background:var(--hour-tint);font-weight:600}.venue-column{grid-column:span 2;grid-template-columns:subgrid;display:grid;position:relative}.venue-lane{background:var(--surface-raised);min-width:0;position:relative}.venue-lane--notes{border-left:1px solid var(--line-quarter);border-right:1px solid var(--border)}.block-view{display:contents}.block-view__body{border-radius:0 0 4px 4px;position:absolute;left:2px;right:2px;overflow:hidden;box-shadow:inset 0 0 0 1px #1b1f241f,0 1px 2px #1b1f2414}.block-view__body--editable{-webkit-user-select:none;user-select:none}.block-view__body--headless{border-radius:4px}.block-view__frame{z-index:2;pointer-events:none;border-radius:4px;position:absolute;left:2px;right:2px}.block-view--conflict>.block-view__frame{outline:2px solid var(--conflict);outline-offset:-2px}.block-view--selected>.block-view__frame{outline:2px solid var(--accent);outline-offset:2px}.block--diff-only-snapshot>.block-view__frame{box-shadow:0 0 0 1px var(--surface-raised), 0 0 0 3px var(--diff-only-snapshot)}.block--diff-changed>.block-view__frame{box-shadow:0 0 0 1px var(--surface-raised), 0 0 0 3px var(--diff-changed)}.block--diff-flash>.block-view__frame:after{content:"";border:2px solid var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:8px;animation:1.5s cubic-bezier(.32,.72,0,1) both block-diff-flash;position:absolute;inset:-6px}@keyframes block-diff-flash{0%{opacity:0;transform:scale(1.08)}18%{opacity:1;transform:scale(1)}45%{opacity:.35}70%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.block--diff-flash>.block-view__frame:after{animation:none}}.block-view__header{box-sizing:border-box;font-size:calc(.625rem * var(--grid-scale,1));letter-spacing:.02em;-webkit-user-select:none;user-select:none;border-radius:4px 4px 0 0;justify-content:space-between;align-items:center;gap:.375rem;padding:0 6px;font-weight:700;display:flex;position:absolute;left:2px;right:2px;overflow:hidden}.block-view__header .block-view__type-name{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:50%;overflow:hidden}.block-view__heading{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.block-view__suggestion{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;overflow:hidden}.block-view__suggestion:hover{text-decoration:underline}.block-view__entry{position:absolute;left:0;right:0}.block-view__entry-content{box-sizing:border-box;flex-direction:column;min-width:0;padding:0 6px;display:flex;position:absolute;inset:0;overflow:hidden}.block-view__entry-text{font-size:calc(.75rem * var(--grid-scale,1));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.block-view__entry--notes .block-view__entry-text,.block-view__entry--notes .block-view__entry-note{position:relative;top:-.17em}.block-view__entry--notes .block-view__entry-text{font-size:calc(.6875rem * var(--grid-scale,1))}.block-view__entry-note{font-size:calc(.625rem * var(--grid-scale,1));opacity:.85;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.block-view__pause-text{text-align:center}.block-view__entry-content--centred{justify-content:center}.block-view__pause-text strong{font-weight:700}.block-view__pause-note-inline{font-size:calc(.625rem * var(--grid-scale,1));opacity:.85}.block-view__heading-input{box-sizing:border-box;min-width:0;font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);-webkit-user-select:text;user-select:text;border-radius:4px;flex:1;padding:0 4px;font-weight:700}.block-view__menu{z-index:60;background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.0625rem;min-width:10rem;padding:.25rem;display:flex;position:fixed;box-shadow:0 8px 24px #1b1f2433}.block-view__menu-item{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:6px;padding:.4375rem .625rem;display:block}.block-view__menu-item:hover{background:var(--surface)}.block-view__resize-handle{z-index:3;cursor:ns-resize;height:6px;position:absolute;left:2px;right:2px}.block-view__resize-handle:hover{background:#ffffff59}.block-view__break-grip{z-index:4;cursor:grab;opacity:.6;background-image:radial-gradient(circle,#00000073 .75px,#0000 1px);background-position:50%;background-size:4px 6px;height:6px;position:absolute;left:2px;right:2px}.block-view__break-grip:hover{opacity:1}.block-view__entry-boundary{z-index:3;cursor:ns-resize;height:4px;margin-top:-2px;position:absolute;left:0;right:0}.block-view__entry-boundary:hover{background:#00000029}.block-view__entry-boundary--fixed{cursor:default}.block-view__entry-boundary--fixed:hover{background:0 0}.block-view__entry-boundary--fixed>.grid-action--insert{left:auto;right:24px;transform:translateY(-50%)}.block-view__entry-boundary--fixed>.grid-action--insert:active{transform:translateY(calc(1px - 50%))}.block-view--dragging>*{opacity:.35}.block-view__drag-copy{z-index:20;border:2px solid var(--accent);pointer-events:none;border-radius:0 0 4px 4px;position:absolute;left:2px;right:2px;overflow:hidden;box-shadow:0 4px 16px #1b1f2440}.block-view__drag-copy--headless{border-radius:4px}.block-view__header--preview{z-index:20;pointer-events:none}.block-view__entry--preview{pointer-events:none}.block-view__preview-label{z-index:21;background:var(--text);color:var(--surface-raised);font-size:calc(.6875rem * var(--grid-scale,1));white-space:nowrap;pointer-events:none;border-radius:4px;padding:1px 6px;font-weight:600;position:absolute;left:2px}.block-view__drag-copy--invalid{outline:2px solid var(--danger);outline-offset:-2px}.block-view__preview-label--invalid{background:var(--danger)}.push-preview{z-index:18;box-sizing:border-box;border:2px dashed color-mix(in srgb, var(--text) 50%, transparent);background:color-mix(in srgb, var(--text) 6%, transparent);pointer-events:none;border-radius:4px;position:absolute;left:2px;right:2px}.blocked-time{z-index:1;box-sizing:border-box;background:repeating-linear-gradient(135deg, var(--blocked-stripe) 0, var(--blocked-stripe) 1.5px, transparent 1.5px, transparent 7px), var(--blocked-fill);box-shadow:inset 0 0 0 1px var(--blocked-edge);position:absolute;left:0;right:0;overflow:hidden}.blocked-time--editable{cursor:pointer}.blocked-time--editable:hover,.blocked-time--editable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.blocked-time--resizing{opacity:.4}.blocked-time__note{box-sizing:border-box;background:color-mix(in srgb, var(--surface-raised) 90%, transparent);max-width:max-content;color:var(--text);font-size:calc(.6875rem * var(--grid-scale,1));white-space:nowrap;text-overflow:ellipsis;pointer-events:none;border-radius:4px;padding:0 4px;line-height:1.35;position:absolute;top:2px;left:3px;right:3px;overflow:hidden}.blocked-time__grip{cursor:ns-resize;height:6px;position:absolute;left:0;right:0}.blocked-time__grip--top{top:0}.blocked-time__grip--bottom{bottom:0}.blocked-time__grip:hover{background:color-mix(in srgb, var(--accent) 35%, transparent)}.blocked-selection{z-index:17;box-sizing:border-box;border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);pointer-events:none;border-radius:4px;justify-content:center;align-items:flex-start;display:flex;position:absolute;left:2px;right:2px}.blocked-selection--invalid{border:2px solid var(--danger);background:color-mix(in srgb, var(--danger) 14%, transparent)}.blocked-selection__label{background:var(--accent);max-width:calc(100% - 4px);color:var(--surface-raised);font-size:calc(.6875rem * var(--grid-scale,1));white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-top:2px;padding:1px 6px;font-weight:600;overflow:hidden}.blocked-selection--invalid .blocked-selection__label{background:var(--danger)}.venue-column--drop-target{outline:2px dashed var(--accent);outline-offset:-2px}.venue-column__hover-row{z-index:1;box-sizing:border-box;pointer-events:none;background:linear-gradient(#2f5d8212,#2f5d8221);border-radius:4px;position:absolute;left:2px;right:2px;box-shadow:inset 0 1px #ffffffe6,inset 0 0 0 1px #2f5d8247,0 1px 3px #1b1f241f}.time-column__row[data-hover=true]{color:var(--accent);box-shadow:inset -2px 0 0 var(--accent);background:#2f5d821f;font-weight:700}.grid-action{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-raised);color:var(--accent);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;box-shadow:0 1px 2px #1b1f2429}.grid-action:hover{background:var(--accent);border-color:var(--accent);color:var(--surface-raised)}.grid-action:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.grid-action:active{transform:translateY(1px)}.grid-action--row{pointer-events:auto;top:50%;right:4px;transform:translateY(-50%)}.grid-action--row:active{transform:translateY(calc(1px - 50%))}.block-view__entry--editable:hover,.block-view__entry.is-editing{box-shadow:inset 0 0 0 2px var(--accent), inset 0 0 0 3px #ffffffbf}.grid-action--trash{z-index:2;color:var(--text-muted);opacity:0;pointer-events:none;transition:opacity .12s ease-out;right:4px}.grid-action--trash:hover{background:var(--danger);border-color:var(--danger);color:var(--surface-raised)}.block-view__entry--editable:hover>.grid-action--trash,.grid-action--trash:focus-visible{opacity:1;pointer-events:auto}.grid-action--insert,.grid-action--append,.grid-action--free-row{z-index:4;opacity:.6;width:16px;height:16px;transition:opacity .12s ease-out}.grid-action--insert:hover,.grid-action--insert:focus-visible,.block-view__entry-boundary:hover>.grid-action--insert,.grid-action--append:hover,.grid-action--append:focus-visible,.grid-action--free-row:hover,.grid-action--free-row:focus-visible{opacity:1}.block-view__empty-hint{z-index:4;box-sizing:border-box;font:inherit;font-size:calc(.75rem * var(--grid-scale,1));text-align:left;cursor:pointer;opacity:0;background:0 0;border:none;align-items:center;gap:.25rem;padding:0 6px;transition:opacity .12s ease-out;display:flex;position:absolute;left:0;right:0}.block-view__empty-hint--shown{opacity:.65}.block-view__empty-hint:hover,.block-view__empty-hint:focus-visible{opacity:1}.block-view__empty-hint:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.block-view__empty-hint:disabled{cursor:default}.block-view__empty-hint--shown:disabled{opacity:.4}.block-view--dragging .block-view__empty-hint,.block-view--entry-dragging .block-view__empty-hint{display:none}.grid-action--free-row{right:4px}.grid-action--insert{top:50%;left:50%;transform:translate(-50%,-50%)}.grid-action--insert:active{transform:translate(-50%,calc(1px - 50%))}.grid-action--append{left:50%;transform:translate(-50%)}.grid-action--append:active{transform:translate(-50%,1px)}.block-view--dragging .grid-action,.block-view--entry-dragging .grid-action{display:none}.block-view__header--grab,.block-view__entry--grab{cursor:grab}html.is-grabbing,html.is-grabbing *{cursor:grabbing!important}.block-view__entry.is-drag-source{opacity:.35;box-shadow:none}.entry-drag-copy{z-index:20;outline:2px solid var(--accent);pointer-events:none;border-radius:4px;position:absolute;left:2px;right:2px;overflow:hidden;box-shadow:0 4px 16px #1b1f2440}.entry-drop-line{z-index:21;background:var(--accent);height:3px;box-shadow:0 0 0 1px var(--surface-raised);pointer-events:none;border-radius:2px;margin-top:-1px;position:absolute;left:2px;right:2px}.entry-drop-invalid{z-index:21;box-sizing:border-box;outline:2px solid var(--danger);outline-offset:-2px;background:color-mix(in srgb, var(--danger) 14%, transparent);pointer-events:none;border-radius:4px;justify-content:center;align-items:flex-start;display:flex;position:absolute;left:2px;right:2px}.entry-drop-invalid__label{background:var(--danger);color:var(--surface-raised);font-size:calc(.6875rem * var(--grid-scale,1));white-space:nowrap;border-radius:4px;margin-top:2px;padding:1px 6px;font-weight:600}.entry-drop-slot{z-index:19;box-sizing:border-box;border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);pointer-events:none;border-radius:4px;position:absolute;left:2px;right:2px}@media (prefers-reduced-motion:reduce){.grid-action--trash,.grid-action--insert,.grid-action--append,.grid-action--free-row,.block-view__empty-hint{transition:none}}.block-view__menu-colours{min-width:11.5rem;padding:.375rem .5rem .5rem}.block-view__menu-title{color:var(--text-muted);margin:0 0 .5rem;font-size:.8125rem;font-weight:600}.block-view__menu-colours .field{margin:0}.grid-action:disabled{opacity:.4;cursor:default}.entry-popover{z-index:50;background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;width:20rem;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);padding:.75rem;position:fixed;overflow-y:auto;box-shadow:0 16px 48px #1b1f243d}.entry-popover--compact{width:16rem}.entry-popover__subtitle{color:var(--text-muted);margin:-.375rem 0 .625rem;font-size:.8125rem}.entry-popover:focus{outline:none}.entry-popover__title{color:var(--text);margin:0 0 .625rem;font-size:.9375rem;font-weight:600}.entry-popover__move{gap:.5rem;margin-bottom:.75rem;display:flex}.entry-popover__move .btn--small{align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.entry-popover__move .btn--small:disabled{opacity:.6;cursor:default}.type-picker__search{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:8px;margin-bottom:.5rem;padding:.5rem .625rem}.type-picker__search:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.type-picker__list{flex-direction:column;gap:.125rem;max-height:16rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.type-picker__option{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem;display:flex}.type-picker__option[aria-selected=true],.type-picker__option:hover{background:var(--surface)}.type-picker__chip{border:1px solid #1b1f2429;border-radius:3px;flex-shrink:0;width:.75rem;height:.75rem}.entry-form{flex-direction:column;display:flex}.entry-form__field{margin-bottom:.25rem}.entry-form__choir-row{--pax-col:4.5rem;--pax-gap:.5rem;gap:var(--pax-gap);align-items:flex-start;display:flex}.entry-form__choir{flex:auto;min-width:0}.entry-form__pax{flex:0 0 var(--pax-col)}.entry-form__choir-row--pax .combobox__listbox{right:calc(-1 * (var(--pax-col) + var(--pax-gap)))}.entry-form__checkbox{color:var(--text);cursor:pointer;align-items:center;gap:.5rem;margin:.25rem 0 1rem;font-size:.875rem;display:flex}.entry-form__actions{gap:.5rem;display:flex}.combobox{position:relative}.combobox input[role=combobox]{cursor:pointer}.combobox input.combobox__input--search{cursor:text}.combobox__listbox{z-index:5;background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;max-height:12rem;margin-top:.25rem;padding:.25rem;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #1b1f2429}.combobox__option{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:6px;padding:.4375rem .5rem;display:block}.combobox__option[aria-selected=true]{background:var(--surface);color:var(--accent)}.combobox__option:hover{background:var(--surface)}.combobox__listbox[aria-multiselectable=true] .combobox__option[aria-selected=true]{background:var(--surface);color:var(--accent);font-weight:600}.combobox__listbox[aria-multiselectable=true] .combobox__option.is-active{background:var(--surface);outline:2px solid var(--accent);outline-offset:-2px}.combobox__option strong{font-weight:700}.combobox__option--exact,.combobox__option--exact[aria-selected=true]{color:var(--success);align-items:center;gap:.375rem;display:flex}.combobox__option--new,.combobox__option--text{border-radius:0 0 6px 6px;flex-wrap:wrap;align-items:baseline;column-gap:.375rem;display:flex}.combobox__option--new .combobox__icon,.combobox__option--text .combobox__icon{color:var(--accent);align-self:center}.combobox__option--new[aria-busy=true]{cursor:progress}:is(.combobox__listbox li:has(>.combobox__option--new):not(:first-child),.combobox__listbox li:has(>.combobox__option--text):not(:first-child)){border-top:1px solid var(--border);margin-top:.25rem;padding-top:.25rem}.combobox__listbox li:has(>.combobox__option--new)+li:has(>.combobox__option--text){border-top:0;margin-top:0;padding-top:0}.combobox__icon{flex-shrink:0}.combobox__secondary{color:var(--text-muted);margin-left:auto;font-size:.8125rem}.combobox__note{color:var(--text-muted);cursor:default;padding:.375rem .5rem;font-size:.8125rem}.combobox__row{border-radius:6px;align-items:center;display:flex}.combobox__row>.combobox__option{flex:auto;min-width:0}.combobox__row:hover{background:var(--surface)}.combobox__row:has(>.combobox__option[aria-selected=true]){background:var(--surface)}.combobox__row:has(>.combobox__option.is-active){background:var(--surface)}.option-actions{flex-shrink:0;align-items:center;gap:.125rem;display:inline-flex}.option-actions--edit,.option-actions--confirm{flex-wrap:wrap;flex:100%;gap:.375rem;padding:.1875rem .25rem;display:flex}.option-actions__button{width:1.625rem;height:1.625rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.option-actions__button:hover{background:var(--border);color:var(--text)}.option-actions__button--danger:hover{color:var(--danger)}.option-actions__button:focus-visible,.option-actions__answer:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.option-actions__input{min-width:0;font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:6px;flex:8rem;padding:.25rem .5rem}.option-actions__input:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.option-actions__input[aria-invalid=true]{border-color:var(--danger)}.option-actions__extra{align-items:center;gap:.25rem;display:inline-flex}.option-actions__extra-label{color:var(--text-muted);font-size:.8125rem}.option-actions__input--extra{flex:none;width:4rem}.option-actions__group{flex:auto;align-items:center;gap:.375rem;display:flex}.option-actions__question{align-self:center;margin-right:auto}.option-actions__answer{font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;border-radius:6px;padding:.1875rem .625rem;font-size:.8125rem}.option-actions__answer:hover{background:var(--surface)}.option-actions__answer[aria-disabled=true]{cursor:progress;opacity:.6}.option-actions__error{flex-basis:100%}.chips{flex-wrap:wrap;gap:.375rem;margin:.125rem 0 .375rem;padding:0;list-style:none;display:flex}.chips__chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:.25rem;padding:.125rem .25rem .125rem .625rem;font-size:.8125rem;font-weight:600;display:inline-flex}.chips__remove{width:1.25rem;height:1.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.chips__remove:hover{background:var(--border);color:var(--text)}.chips__remove:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.combobox__add{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-top:.5rem;padding:.625rem}.duration-field__label{align-items:baseline;gap:.25rem;display:flex}.duration-field__chips{gap:.375rem;margin:.25rem 0 .5rem;display:flex}.duration-field__chip{font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;border-radius:999px;padding:.375rem .625rem;font-weight:500}.duration-field__chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.duration-field__other{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.duration-field__other input{width:4rem;font:inherit;border:1px solid var(--border);border-radius:6px;padding:.3125rem .5rem}.colour-field__label{color:var(--text);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.colour-field__swatches{grid-template-columns:repeat(5,1fr);justify-items:center;gap:.5rem;display:grid}.colour-swatch{cursor:pointer;display:block;position:relative}.colour-swatch__input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.colour-swatch__chip{box-sizing:border-box;pointer-events:none;border:1px solid #1b1f2429;border-radius:6px;width:1.75rem;height:1.75rem;transition:transform .15s cubic-bezier(.16,1,.3,1);display:block}.colour-swatch:hover .colour-swatch__chip{transform:scale(1.08)}.colour-swatch__input:checked+.colour-swatch__chip{outline:2px solid var(--text);outline-offset:2px}.colour-swatch__input:focus-visible+.colour-swatch__chip{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.colour-swatch__chip{transition:none}.colour-swatch:hover .colour-swatch__chip{transform:none}}.schedule-page__controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem .75rem;display:flex}.undo-controls{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.undo-controls__btn{border:none;border-right:1px solid var(--border);background:var(--surface-raised);width:2.25rem;height:2rem;color:var(--text-muted);cursor:pointer;place-items:center;padding:0;display:grid}.undo-controls__btn:last-child{border-right:none}.undo-controls__btn:hover:not(:disabled){color:var(--text)}.undo-controls__btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.undo-controls__btn:disabled{cursor:default;opacity:.6}.checks-badge{position:relative}.checks-badge__button{font:inherit;border:1px solid var(--conflict);background:var(--surface-raised);color:var(--conflict);cursor:pointer;border-radius:8px;padding:.3125rem .75rem;font-weight:600}.checks-badge__button:hover{background:color-mix(in srgb, var(--conflict) 8%, var(--surface-raised))}.checks-badge__list{background:var(--surface-raised);border:1px solid var(--border);z-index:20;border-radius:8px;min-width:16rem;max-width:22rem;max-height:16rem;padding:.25rem;position:absolute;top:calc(100% + .375rem);right:0;overflow-y:auto;box-shadow:0 8px 24px #1b1f241f}.checks-badge__item{text-align:left;width:100%;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem .625rem;display:block}.checks-badge__item:hover{background:var(--surface)}.status-bar{z-index:25;box-sizing:border-box;height:var(--status-bar-height,1.75rem);background:var(--surface);border-top:1px solid var(--border);flex:none;justify-content:flex-end;align-items:center;padding:0 1.5rem;display:flex;position:sticky;bottom:0}.zoom-control{border:1px solid var(--border);background:var(--surface-raised);border-radius:6px;align-items:center;gap:.125rem;height:1.375rem;display:inline-flex;overflow:hidden}.zoom-control__step{width:1.375rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-self:stretch;align-items:center;padding:0;display:inline-flex}.zoom-control__step:hover:not(:disabled){color:var(--text)}.zoom-control__step:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.zoom-control__step:disabled{opacity:.4;cursor:default}.zoom-control__slider{cursor:pointer;appearance:none;background:0 0;flex:none;width:6rem;height:1rem;margin:0;padding:0}.zoom-control__slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--zoom-fill,50%), var(--line-quarter) var(--zoom-fill,50%));border-radius:999px;height:4px}.zoom-control__slider::-moz-range-track{background:var(--line-quarter);border-radius:999px;height:4px}.zoom-control__slider::-moz-range-progress{background:var(--accent);border-radius:999px;height:4px}.zoom-control__slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--accent);background:var(--surface-raised);border-radius:50%;width:12px;height:12px;margin-top:-4px;box-shadow:0 1px 2px #1b1f244d}.zoom-control__slider::-moz-range-thumb{box-sizing:border-box;border:2px solid var(--accent);background:var(--surface-raised);border-radius:50%;width:12px;height:12px;box-shadow:0 1px 2px #1b1f244d}.zoom-control__slider:focus-visible{outline:none}.zoom-control__slider:focus-visible::-webkit-slider-thumb{outline:2px solid var(--accent);outline-offset:2px}.zoom-control__slider:focus-visible::-moz-range-thumb{outline:2px solid var(--accent);outline-offset:2px}.zoom-control__value{border:none;border-left:1px solid var(--border);background:var(--surface-raised);min-width:2.75rem;color:var(--text-muted);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;align-self:stretch;padding:0 .5rem;font-size:.75rem;font-weight:600}.zoom-control__value:hover{color:var(--text)}.zoom-control__value:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.move-switch{font:inherit;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-muted);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.25rem .625rem .25rem .75rem;font-weight:600;display:inline-flex}.move-switch:hover{color:var(--text)}.move-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.move-switch--on{color:var(--text);border-color:var(--accent)}.move-switch__track{background:var(--line-hour);border-radius:999px;flex:none;width:2rem;height:1.125rem;position:relative}.move-switch--on .move-switch__track{background:var(--accent)}.move-switch__thumb{background:#fff;border-radius:50%;width:calc(1.125rem - 4px);height:calc(1.125rem - 4px);transition:transform .15s ease-out;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #1b1f244d}.move-switch--on .move-switch__thumb{transform:translate(.875rem)}@media (prefers-reduced-motion:reduce){.move-switch__thumb{transition:none}}.users-page{width:100%;max-width:72rem;margin:0 auto;padding:2rem 1.5rem}.users-page__header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.users-page__header h1{color:var(--text);margin:0}.users-page__error{border:1px solid var(--danger);color:var(--danger);border-radius:8px;margin:0 0 1rem;padding:.625rem .75rem;font-size:.875rem}.users-page__empty{color:var(--text-muted);text-align:center;padding:3rem 0}.users-page__empty--error{color:var(--danger)}.users-table{border-collapse:separate;border-spacing:0;background:var(--surface-raised);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;font-size:.875rem}.users-table th,.users-table td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--border);padding:.625rem .875rem}.users-table tbody tr:last-child td{border-bottom:none}.users-table th{letter-spacing:.02em;color:var(--text-muted);background:var(--surface);font-size:.75rem;font-weight:600}.users-table th:first-child{border-top-left-radius:7px}.users-table th:last-child{border-top-right-radius:7px}.users-table tbody tr:hover{background:color-mix(in srgb, var(--accent) 4%, var(--surface-raised))}.users-table__name{font-weight:600}.users-table__inactive{color:var(--text-muted);margin-left:.375rem;font-weight:400}.users-table__muted{color:var(--text-muted)}.users-table__time{white-space:nowrap;font-variant-numeric:tabular-nums}.users-table__actions{text-align:right}.users-table__actions>.users-link+.users-link{margin-left:1rem}.users-link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:.125rem 0;font-weight:500;transition:color .12s}.users-link:hover{text-decoration:underline}.users-link--danger{color:var(--danger)}.users-link:active{transform:translateY(1px)}.users-question{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:inline-flex}.users-btn{padding:.25rem .75rem;font-size:.8125rem}.users-btn:disabled{opacity:.6;cursor:default}.users-search__note{color:var(--text-muted);margin:.5rem 0;font-size:.875rem}.users-search__error{color:var(--danger);margin:.5rem 0;font-size:.875rem}.users-hits{border:1px solid var(--border);border-radius:8px;max-height:18rem;margin:0;padding:0;list-style:none;overflow-y:auto}.users-hits>li+li{border-top:1px solid var(--border)}.users-hit{width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:1fr auto;column-gap:.75rem;padding:.5rem .75rem;display:grid}.users-hit:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 6%, var(--surface-raised))}.users-hit:disabled{cursor:default;color:var(--text-muted)}.users-hit__name{grid-column:1;font-weight:600}.users-hit__detail{color:var(--text-muted);grid-column:1;font-size:.8125rem}.users-hit__tag{color:var(--text-muted);grid-area:1/2;align-self:center;font-size:.75rem}.users-dialog__footer{justify-content:flex-end;margin-top:1.25rem;display:flex}
