*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:dark;--color-primary: #9184d9;--color-primary-hover: #ab9ff2;--color-on-primary: #12131c;--color-bg: #12131c;--color-surface: #191b26;--color-surface-elevated: #1e2030;--color-surface-subtle: #22243a;--color-input: #10111a;--color-border: #2a2c3d;--color-border-strong: #4c4b65;--color-selection: #252342;--color-selection-border: #9184d9;--color-text: #e9e9ed;--color-text-muted: #9698ac;--color-focus: #ab9ff2;--color-success: #86efac;--color-success-bg: #12301d;--color-warning: #fde68a;--color-warning-bg: #3a2f0c;--color-danger: #fca5a5;--color-danger-bg: #3b1719;--color-info: #7dd3fc;--color-info-bg: #102d3d;--color-unsaved: #fde68a;--color-unsaved-bg: #392d0d;--color-header: #12131c;--color-header-text: #e9e9ed;--color-header-muted: #9698ac;--color-header-control-bg: #22243a;--color-header-control-text: #e9e9ed;--color-overlay: rgb(0 0 0 / 68%);--color-shadow: rgb(0 0 0 / 42%);--color-accent-soft: rgb(145 132 217 / 13%);--color-accent-hairline: rgb(145 132 217 / 35%);--color-event-0: #38bdf8;--color-event-1: #4ade80;--color-event-2: #fbbf24;--color-event-3: #fb7185;--color-event-4: #a78bfa;--color-event-5: #60a5fa;--color-event-6: #a3e635;--color-event-7: #fb923c;--color-event-8: #2dd4bf;--color-event-9: #f472b6;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem}.form-dialog-backdrop{position:fixed;z-index:40;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--color-overlay)}.form-dialog{position:relative;display:flex;width:min(760px,100%);max-height:calc(100dvh - 32px);overflow:hidden;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface);box-shadow:0 24px 60px var(--color-shadow)}.form-dialog[aria-hidden=true]{pointer-events:none}.form-dialog__close{position:absolute;z-index:2;top:12px;right:12px;display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid var(--color-border);border-radius:5px;background:var(--color-surface-elevated);color:var(--color-text)}.form-dialog__content{width:100%;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:20px}.form-dialog .planning-editor{border:0;padding:0}.form-dialog .planning-editor h2{padding-right:48px;font-size:var(--font-size-xl)}.form-dialog .planning-editor__form{grid-template-columns:repeat(2,minmax(0,1fr))}.form-dialog .planning-editor__actions{position:sticky;bottom:-20px;z-index:1;margin:0 -20px -20px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 -12px 24px var(--color-shadow)}.planning-editor__room-picker{display:grid;grid-column:1 / -1;gap:7px;min-width:0;padding:0;margin:0;border:0}.planning-editor__room-picker>legend{padding:0;color:var(--color-text);font-weight:700}.planning-editor__room-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0}.planning-editor__assignments{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;padding:12px 0 0;margin:0;border:0;border-top:1px solid var(--color-border)}.planning-editor__assignments>legend{grid-column:1 / -1;padding:0;color:var(--color-text);font-weight:700}.planning-editor__assignments label>small{color:var(--color-text-muted);line-height:1.35}.planning-editor__assignments>.form-error{grid-column:1 / -1}.portal-select{min-width:0;color:var(--color-text)}.portal-select__select{position:relative}.portal-select__select>[id$=-live-region],.portal-select__select>[role=log],.portal-select__select>input[aria-hidden=true]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;white-space:nowrap}.portal-select__control{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;position:relative;min-height:44px;border:1px solid var(--color-border-strong);border-radius:5px;background:var(--color-input);cursor:text}.portal-select__control--is-focused{border-color:var(--color-focus);outline:2px solid var(--color-focus);outline-offset:2px}.portal-select__control--is-disabled{cursor:not-allowed;opacity:.55}.portal-select__value-container{position:relative;display:grid;flex:1 1 auto;flex-wrap:wrap;gap:4px;align-items:center;min-width:0;padding:5px 8px;overflow:hidden}.portal-select__value-container--is-multi.portal-select__value-container--has-value{display:flex}.portal-select__single-value,.portal-select__placeholder{grid-area:1 / 1 / 2 / 3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-select__placeholder{color:var(--color-text-muted)}.portal-select__input-container{display:inline-grid;grid-area:1 / 1 / 2 / 3;grid-template-columns:0 min-content;min-width:2px;color:var(--color-text)}.portal-select__input-container:after{grid-area:1 / 2;min-width:2px;margin:0;padding:0;border:0;content:attr(data-value) " ";font:inherit;outline:0;visibility:hidden;white-space:pre}.portal-select__input-container input{color:var(--color-text)!important}.portal-select__indicators{display:flex;flex:0 0 auto;align-items:center;align-self:stretch;color:var(--color-text-muted)}.portal-select__indicator{display:inline-grid;width:34px;height:34px;place-items:center;padding:0;cursor:pointer}.portal-select__indicator-separator{width:1px;height:22px;background:var(--color-border)}.portal-select__menu{z-index:40;width:100%;max-width:min(640px,calc(100vw - 32px));margin-top:4px;overflow:hidden;border:1px solid var(--color-border-strong);border-radius:5px;background:var(--color-surface-elevated);box-shadow:0 14px 32px var(--color-shadow)}.portal-select__menu-portal .portal-select__menu{margin-bottom:0;margin-top:0}.portal-select__menu-list{max-height:260px;padding:4px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.portal-select__option{display:flex;gap:8px;align-items:center;justify-content:space-between;min-height:44px;padding:8px 9px;border-radius:4px;cursor:pointer;overflow-wrap:anywhere}.portal-select__option>span{min-width:0}.portal-select__option--is-focused{background:var(--color-selection)}.portal-select__option--is-selected{background:var(--color-primary);color:var(--color-on-primary)}.portal-select__option.portal-select__option--is-disabled,.portal-select__option.portal-select__option--is-disabled:hover{background:transparent;color:var(--color-text-muted);cursor:not-allowed;opacity:.55}.portal-select__multi-value{display:flex;max-width:100%;align-items:center;border:1px solid var(--color-selection-border);border-radius:4px;background:var(--color-selection)}.portal-select__multi-value__label{min-width:0;padding:3px 2px 3px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-select__multi-value__remove{display:inline-grid;width:28px;min-height:28px;place-items:center;border-radius:3px;cursor:pointer}.portal-select__multi-value__remove:hover,.portal-select__multi-value__remove:focus-visible{background:var(--color-surface-subtle)}.direct-planning-create-label--short{display:none}@media(max-width:767px){.form-dialog-backdrop{align-items:stretch;padding:0}.form-dialog{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}.form-dialog__content{padding:16px}.form-dialog .planning-editor__form,.planning-editor__room-picker-grid,.planning-editor__assignments{grid-template-columns:1fr}.form-dialog .planning-editor__actions{bottom:-16px;margin:0 -16px -16px;padding-inline:16px}}.direct-planning-view{gap:16px;width:min(1560px,calc(100vw - 32px));margin-left:50%;transform:translate(-50%)}.direct-planning-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;min-width:0}.direct-planning-calendar-surface,.direct-planning-sidebar{display:grid;gap:12px;min-width:0}.direct-planning-sidebar{position:relative;z-index:20;display:flex;grid-row:auto;flex-wrap:wrap;gap:8px;justify-content:flex-end;max-height:none;overflow:visible}.direct-planning-calendar-surface{grid-row:auto}.direct-planning-panel,.direct-planning-sidebar>.direct-batch-editor,.direct-planning-sidebar>.direct-planning-editor{border:1px solid var(--color-border);background:var(--color-surface)}.direct-planning-sidebar>details{position:relative;width:-moz-fit-content;width:fit-content}.direct-planning-sidebar>details[open]{z-index:2}.direct-planning-panel>summary,.direct-planning-sidebar>.direct-batch-editor>summary{display:flex;gap:10px;align-items:center;justify-content:space-between;min-height:44px;padding:10px 12px;cursor:pointer;font-size:.95rem;font-weight:700}.direct-planning-sidebar>.direct-batch-editor>summary>svg{flex:0 0 auto}.direct-batch-editor__short-title{display:none}.direct-planning-panel>summary>span{display:inline-flex;gap:8px;align-items:center}.direct-planning-panel>summary small{padding:2px 6px;border:1px solid var(--color-selection-border);border-radius:4px;background:var(--color-selection);color:var(--color-text);font-size:.72rem;white-space:nowrap}.direct-planning-panel[open]>summary,.direct-planning-sidebar>.direct-batch-editor[open]>summary{border-color:var(--color-primary);background:var(--color-selection)}.direct-planning-sidebar>.direct-batch-editor[open]>summary{margin-bottom:0}.direct-planning-filter-panel[open]>.direct-planning-filters,.direct-planning-sidebar>.direct-batch-editor[open]>.direct-batch-editor__popover{position:absolute;z-index:3;top:calc(100% + 8px);right:0;width:min(760px,calc(100vw - 32px));max-height:min(720px,calc(100dvh - 16px));margin-top:0;overflow:auto;border:1px solid var(--color-border-strong);border-radius:6px;background:var(--color-surface);box-shadow:0 18px 46px var(--color-shadow);overscroll-behavior:contain}.direct-planning-filter-panel[open]>.direct-planning-filters{overflow:auto}.direct-planning-workspace .direct-planning-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;border:0}.direct-planning-workspace .direct-planning-filters__actions{display:grid;grid-column:1;grid-template-columns:1fr 1fr;gap:8px}.direct-planning-workspace .direct-planning-filters__actions .button{min-width:0;padding-inline:8px}.direct-planning-sidebar>.direct-planning-editor{padding:14px}.direct-planning-sidebar .planning-editor__form,.direct-planning-sidebar .direct-batch-editor__form,.direct-planning-sidebar .direct-batch-editor__series{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.direct-planning-sidebar .planning-editor h2{font-size:1rem}.direct-planning-sidebar>.direct-batch-editor{padding:0}.direct-planning-sidebar .direct-batch-editor__popover{display:grid;gap:12px}.direct-planning-sidebar .direct-batch-editor__form,.direct-planning-sidebar .direct-batch-preview,.direct-planning-sidebar .direct-batch-results{padding:12px}.direct-planning-sidebar .direct-batch-preview,.direct-planning-sidebar .direct-batch-results{margin-top:0}.planning-toolbar.direct-planning-toolbar{position:sticky;z-index:19;top:64px;display:grid;gap:10px;align-items:stretch;padding:10px 0 12px;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 96%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.direct-planning-toolbar__top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.direct-planning-toolbar__switches{display:flex;flex:1 1 600px;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start}.direct-planning-toolbar__top>.direct-planning-sidebar{flex:0 0 auto}.direct-planning-toolbar .termine-period{width:auto;min-height:40px}.direct-planning-toolbar .direct-planning-mode-switch{grid-template-columns:repeat(2,minmax(118px,1fr))}.direct-planning-toolbar .direct-planning-calendar-view-switch{grid-template-columns:repeat(3,minmax(72px,1fr))}.direct-planning-toolbar .direct-planning-room-view-switch{grid-template-columns:repeat(4,minmax(70px,1fr))}.direct-planning-toolbar .termine-period button{display:inline-flex;gap:7px;align-items:center;justify-content:center;min-width:0;padding:8px 10px;white-space:nowrap}.direct-planning-toolbar .planning-toolbar__range{gap:8px;justify-content:flex-start}.direct-planning-range-title{min-width:190px;font-size:.95rem;text-align:center}.direct-planning-toolbar .direct-planning-count{margin-left:auto}.direct-calendar-desktop,.direct-calendar-scroll{min-width:0}.direct-calendar-legend{display:flex;gap:8px 14px;align-items:center;min-height:38px;padding:7px 9px;overflow-x:auto;border:1px solid var(--color-border);background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:var(--font-size-xs);overscroll-behavior-inline:contain;scrollbar-width:thin}.direct-calendar-legend>span{display:inline-flex;flex:0 0 auto;gap:6px;align-items:center;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.direct-calendar-legend i{width:11px;height:11px;flex:0 0 11px;border:2px solid var(--event-accent);border-radius:2px;background:var(--event-accent)}.direct-calendar-scroll{max-height:calc(100vh - 258px);min-height:430px;overflow:auto;border:1px solid var(--color-border);background:var(--color-surface);overscroll-behavior:contain}.direct-calendar-month{display:grid;grid-template-columns:repeat(7,minmax(108px,1fr));min-width:756px}.direct-calendar-month__weekday,.direct-calendar-time-grid__corner,.direct-calendar-time-grid__header{position:sticky;top:0;z-index:5;min-height:40px;border-bottom:1px solid var(--color-border-strong);background:var(--color-surface-subtle)}.direct-calendar-month__weekday{display:grid;place-items:center;padding:7px;border-left:1px solid var(--color-border);color:var(--color-text-muted);font-size:.78rem;font-weight:700}.direct-calendar-month__day{min-height:132px;padding:7px;border-bottom:1px solid var(--color-border);border-left:1px solid var(--color-border);background:var(--color-surface)}.direct-calendar-month__day.is-outside{background:var(--color-surface-subtle)}.direct-calendar-month__day>header,.direct-calendar-mobile>li>header{display:flex;gap:8px;align-items:center;justify-content:space-between}.direct-calendar-month__day>header time{color:var(--color-text-muted);font-size:.78rem;font-weight:700}.direct-calendar-month__day>header button,.direct-calendar-mobile>li>header button{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface-elevated);color:var(--color-text-muted)}.direct-calendar-month__entries{display:grid;gap:5px;padding-top:5px}.direct-calendar-entry--month{min-height:64px}.direct-calendar-time-grid{display:grid;min-width:100%}.direct-calendar-time-grid__corner{left:0;z-index:7;grid-column:1;grid-row:1}.direct-calendar-time-grid__header{display:grid;place-items:center;align-content:center;gap:1px;padding:5px;border-left:1px solid var(--color-border);font-size:.78rem}.direct-calendar-time-grid__header span{color:var(--color-text-muted)}.direct-calendar-time-grid__rail{position:sticky;left:0;z-index:4;grid-column:1;grid-row:2;background:var(--color-surface-subtle)}.direct-calendar-time-grid__rail time{display:block;padding:4px 6px;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:.72rem;text-align:right}.direct-calendar-time-grid__day{position:relative;border-left:1px solid var(--color-border);background:var(--color-surface)}.direct-calendar-slot{position:relative;display:block;width:100%;padding:0;border:0;border-bottom:1px solid var(--color-border);background:transparent;cursor:pointer}.direct-calendar-slot:not(:disabled):hover,.direct-calendar-slot:not(:disabled):focus-visible{background:var(--color-selection);outline-offset:-2px}.direct-calendar-slot:disabled{cursor:default}.direct-calendar-entry.direct-calendar-entry--time{position:absolute;z-index:2;min-height:0;overflow:hidden;padding:4px;container-type:inline-size}.direct-calendar-entry--time .direct-planning-entry__main{align-content:start;padding-right:14px}.direct-calendar-entry--time .planning-entry__actions{position:absolute;right:3px;bottom:2px;padding:2px;background:var(--color-info-bg);opacity:0}.direct-calendar-entry--time:hover .planning-entry__actions,.direct-calendar-entry--time:focus-within .planning-entry__actions{opacity:1}.direct-calendar-slot.is-selected{z-index:1;border-color:var(--color-selection-border);background:var(--color-selection)}.direct-calendar-selection-label{position:absolute;z-index:2;top:3px;left:4px;padding:2px 4px;border:1px solid var(--color-selection-border);border-radius:4px;background:var(--color-surface-elevated);color:var(--color-text);font-size:var(--font-size-xs);font-weight:700;line-height:1.2;pointer-events:none;white-space:nowrap}.direct-calendar-mobile{display:none}.direct-calendar-entry,.direct-calendar-mobile__entry,.direct-planning-board .direct-planning-entry{border-color:var(--event-accent, var(--color-info));background:var(--color-info-bg);background:color-mix(in srgb,var(--event-accent, var(--color-info)) 17%,var(--color-surface))}.direct-calendar-entry--draft{border-style:dashed;box-shadow:inset 3px 0 0 var(--event-accent, var(--color-primary))}.direct-event-color-0{--event-accent: var(--color-event-0)}.direct-event-color-1{--event-accent: var(--color-event-1)}.direct-event-color-2{--event-accent: var(--color-event-2)}.direct-event-color-3{--event-accent: var(--color-event-3)}.direct-event-color-4{--event-accent: var(--color-event-4)}.direct-event-color-5{--event-accent: var(--color-event-5)}.direct-event-color-6{--event-accent: var(--color-event-6)}.direct-event-color-7{--event-accent: var(--color-event-7)}.direct-event-color-8{--event-accent: var(--color-event-8)}.direct-event-color-9{--event-accent: var(--color-event-9)}.direct-calendar-tooltip{position:fixed;z-index:100;display:grid;gap:5px;width:min(320px,calc(100vw - 16px));max-height:calc(100vh - 16px);padding:12px;border:1px solid var(--color-border-strong);border-radius:6px;background:var(--color-surface-elevated);box-shadow:0 16px 38px var(--color-shadow);color:var(--color-text);font-size:var(--font-size-sm);overflow-y:auto;overscroll-behavior:contain;pointer-events:auto}.direct-calendar-tooltip>span{color:var(--color-text-muted)}.direct-calendar-tooltip dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 10px;margin:4px 0 0}.direct-calendar-tooltip dt{color:var(--color-text-muted)}.direct-calendar-tooltip dd{min-width:0;margin:0;overflow-wrap:anywhere}@container (max-width: 86px){.direct-calendar-entry--time .direct-planning-entry__main span,.direct-calendar-entry--time .planning-entry__action--edit{display:none}.direct-calendar-entry--time .direct-planning-entry__main{padding-right:8px;padding-bottom:32px}.direct-calendar-entry--time .planning-entry__actions{display:flex;opacity:1}}@media(max-width:1023px){.direct-planning-workspace{grid-template-columns:minmax(0,1fr)}.direct-planning-sidebar{position:static;max-height:none;overflow:visible}.direct-planning-toolbar__top{display:grid}.direct-planning-toolbar__top>.direct-planning-sidebar{justify-content:flex-start}.direct-planning-workspace .direct-planning-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.direct-calendar-scroll{max-height:640px}}@media(max-width:767px){.direct-planning-view{width:100%;margin-left:0;transform:none}.direct-planning-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding-bottom:12px}.direct-planning-heading .page-heading{margin:0}.direct-planning-heading .page-heading>p:last-child{display:none}.direct-planning-heading>.button{justify-content:center;width:auto;min-width:0;min-height:44px;padding:8px 12px}.direct-planning-heading>.button svg{margin:0}.direct-planning-create-label--full{display:none}.direct-planning-create-label--short{display:inline}.planning-toolbar.direct-planning-toolbar{display:grid;align-items:stretch;position:static;top:auto}.direct-planning-toolbar__switches{display:grid;grid-template-columns:1fr}.direct-planning-toolbar__top>.direct-planning-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.direct-planning-toolbar__top>.direct-planning-sidebar>details{width:100%}.direct-planning-toolbar__top>.direct-planning-sidebar>details>summary{justify-content:center}.direct-batch-editor__title{display:none}.direct-batch-editor__short-title{display:inline}.direct-planning-toolbar .termine-period{width:100%}.direct-planning-toolbar .planning-toolbar__range{flex-direction:row;align-items:center}.direct-planning-range-title{flex:1 1 180px;min-width:0;text-align:left}.direct-planning-toolbar .planning-toolbar__range label{flex:1 1 100%}.direct-planning-toolbar .direct-planning-count{margin-left:0}.direct-calendar-desktop{display:none}.direct-calendar-mobile{display:grid}.direct-calendar-mobile>li{gap:10px}.direct-calendar-mobile>li>header time{color:var(--color-text);font-size:.88rem;font-weight:700}.direct-calendar-mobile__entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding-top:8px;border-top:1px solid var(--color-border);border-left:3px solid var(--event-accent, var(--color-info))}.direct-calendar-mobile__entry button{scroll-margin-block:72px 12px}.direct-planning-workspace .direct-planning-filters,.direct-planning-sidebar .direct-batch-editor__form,.direct-planning-sidebar .direct-batch-editor__series{grid-template-columns:1fr}.direct-calendar-mobile__entry .planning-entry__actions{align-self:start}.direct-planning-sidebar .direct-batch-preview li,.direct-planning-sidebar .direct-batch-results li{align-items:stretch;flex-direction:column}}.planning-scenarios,.planning-view{display:grid;gap:24px;min-width:0}.planning-mode-tabs{display:inline-flex;width:-moz-fit-content;width:fit-content;min-height:42px;border:1px solid var(--color-border)}.planning-mode-tabs a{display:inline-flex;gap:7px;align-items:center;padding:9px 14px;color:var(--color-text-muted);font-weight:700;text-decoration:none}.planning-mode-tabs a+a{border-left:1px solid var(--color-border)}.planning-mode-tabs a[aria-current=page]{background:var(--color-primary);color:var(--color-on-primary)}.direct-planning-heading .page-heading p:last-child{margin-bottom:0;color:var(--color-text-muted)}.direct-planning-filters{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;align-items:end;padding-block:16px;border-block:1px solid var(--color-border)}.direct-planning-filters>label{display:grid;gap:6px;min-width:0}.direct-planning-filters>label>span{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.direct-planning-filters__check{display:inline-flex!important;flex-direction:row;gap:8px!important;align-items:center;min-height:42px}.direct-planning-filters__check input{width:18px;height:18px;margin:0}.direct-planning-filters__actions{display:flex;grid-column:span 2;gap:8px;justify-content:flex-end}.direct-planning-count,.direct-planning-loading{color:var(--color-text-muted);font-size:.85rem}.direct-planning-loading{margin:-12px 0 0}.direct-planning-unavailable{display:flex;gap:12px;align-items:center;justify-content:space-between}.direct-batch-editor{padding-block:18px;border-block:1px solid var(--color-border)}.direct-batch-editor>summary{cursor:pointer;font-size:1.05rem;font-weight:700}.direct-batch-editor[open]>summary{margin-bottom:18px}.direct-batch-editor__form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.direct-batch-editor__form>label,.direct-batch-editor__series>label{display:grid;gap:6px;min-width:0}.direct-batch-editor__form>.termine-period,.direct-batch-editor__comment,.direct-batch-editor__dates,.direct-batch-editor__series,.direct-batch-editor__actions{grid-column:1 / -1}.direct-batch-editor__comment textarea{min-height:76px;resize:vertical}.direct-batch-editor__dates,.direct-batch-editor__weekdays{display:flex;flex-wrap:wrap;gap:10px;padding:12px;border:1px solid var(--color-border)}.direct-batch-editor__dates>div{display:grid;grid-template-columns:minmax(140px,1fr) 34px;gap:6px}.direct-batch-editor__dates>div>button{display:inline-grid;place-items:center;width:34px;height:100%;padding:0;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface-elevated);color:var(--color-text)}.direct-batch-editor__series{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.direct-batch-editor__weekdays,.direct-batch-editor__exclusions{grid-column:1 / -1}.direct-batch-editor__weekdays label{display:inline-flex;gap:7px;align-items:center}.direct-batch-editor__weekdays input{width:18px;height:18px;margin:0}.direct-batch-editor__actions{display:flex;justify-content:flex-end}.direct-batch-preview,.direct-batch-results{display:grid;gap:12px;padding-top:18px;margin-top:18px;border-top:1px solid var(--color-border)}.direct-batch-preview header{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between}.direct-batch-preview h3,.direct-batch-results h3{margin:0;font-size:1rem}.direct-batch-preview ol,.direct-batch-results ol{display:grid;gap:1px;max-height:360px;padding:0;margin:0;overflow-y:auto;border:1px solid var(--color-border);list-style:none}.direct-batch-preview li,.direct-batch-results li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--color-surface)}.direct-batch-preview li.is-blocked{background:var(--color-surface-subtle)}.direct-batch-preview li>label,.direct-batch-results li>span{display:flex;gap:9px;align-items:center;min-width:0}.direct-batch-preview li>label>span,.direct-batch-results li>span{display:grid;gap:3px}.direct-batch-preview li>div{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.direct-batch-preview small,.direct-batch-results small{color:var(--color-text-muted)}.direct-batch-preview__ready,.direct-batch-results li>svg:first-child{color:var(--color-success)}.planning-scenario-create,.planning-editor__form,.planning-series__form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:end}.planning-scenario-create,.planning-editor,.planning-series,.planning-rules,.planning-publication,.planning-backlog,.planning-resource-optimizer,.planning-resource-calendar{border-block:1px solid var(--color-border);padding-block:20px}.planning-scenario-create h2,.planning-series>summary,.planning-proposals>summary,.planning-editor h2{margin:0;font-size:1.15rem}.planning-scenario-create h2{grid-column:1 / -1}.planning-scenario-create label,.planning-editor label,.planning-series label,.planning-toolbar label{display:grid;gap:6px;min-width:0}.planning-scenarios__archived{display:inline-flex;gap:10px;align-items:center;width:-moz-fit-content;width:fit-content}.planning-scenarios__archived input,.planning-series input[type=checkbox],.planning-series input[type=radio]{width:18px;height:18px;margin:0}.planning-scenario-list,.planning-event-list,.planning-mobile-agenda,.planning-series__preview ol{padding:0;margin:0;list-style:none}.planning-scenario-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.planning-scenario-list>li{display:flex;gap:16px;align-items:center;justify-content:space-between;min-height:112px;padding:16px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.planning-scenario-list h2,.planning-scenario-list p{margin:6px 0 0}.planning-scenario-list__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.planning-heading,.planning-backlog__heading,.planning-rules__heading,.planning-toolbar,.planning-status-actions,.planning-toolbar__range,.planning-legend{display:flex;gap:12px;align-items:center;justify-content:space-between}.planning-heading{align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.planning-status-actions{flex-wrap:wrap;justify-content:flex-end}.planning-backlog{display:grid;gap:14px}.planning-view{width:min(1560px,calc(100vw - 32px));margin-left:50%;transform:translate(-50%)}.planning-scenario-toolbar{position:sticky;z-index:18;top:8px;flex-wrap:wrap;padding:10px;border:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 8px 18px var(--color-shadow)}.planning-scenario-toolbar .direct-planning-toolbar__switches{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.planning-scenario-tools-button{min-height:42px}.planning-scenario-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,330px);gap:12px;align-items:start;min-width:0}.planning-scenario-workspace--rooms{grid-template-columns:minmax(0,1fr)}.planning-scenario-calendar{display:grid;gap:10px;min-width:0}.planning-scenario-workspace .planning-backlog{max-height:calc(100vh - 210px);padding:12px;overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface)}.planning-scenario-workspace .planning-backlog__heading{align-items:center}.planning-scenario-workspace .planning-backlog__heading p{display:none}.planning-scenario-workspace .planning-backlog__search{max-width:none}.planning-scenario-workspace .planning-event-list{display:grid;gap:7px;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.planning-scenario-workspace .planning-event-list>li{width:100%;min-height:58px;flex-basis:auto;grid-template-columns:18px minmax(0,1fr) 34px}.planning-scenario-tools-dialog{width:min(1080px,100%)}.planning-scenario-tools__panel{display:grid;gap:18px}.planning-scenario-tools__panel>h2{margin:0;padding-right:48px}.planning-scenario-tools__panel>.planning-series,.planning-scenario-tools__panel>.planning-rules,.planning-scenario-tools__panel>.planning-publication{padding-block:14px}@media(max-width:1023px){.planning-scenario-workspace{grid-template-columns:minmax(0,1fr)}.planning-scenario-workspace .planning-backlog{max-height:310px}.planning-scenario-workspace .planning-event-list{display:flex;overflow-x:auto;overflow-y:hidden}.planning-scenario-workspace .planning-event-list>li{width:auto;flex:0 0 250px}}@media(max-width:767px){.planning-view{width:100%;margin-left:0;transform:none}.planning-scenario-toolbar{position:static}.planning-scenario-toolbar .direct-planning-toolbar__switches,.planning-scenario-toolbar .termine-period,.planning-scenario-tools-button{width:100%}.planning-scenario-toolbar .termine-period>button{flex:1 1 0}.planning-scenario-workspace .planning-backlog{max-height:none}}.planning-backlog__heading{align-items:flex-start}.planning-backlog__heading h2,.planning-backlog__heading p{margin:0 0 6px}.planning-backlog__search{display:flex;gap:8px;align-items:center;max-width:480px}.planning-backlog__search input{flex:1}.planning-event-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.planning-resource-calendar{display:grid;gap:14px}.planning-resource-calendar__heading,.planning-resource-calendar__identity{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.planning-resource-calendar__heading h2,.planning-resource-calendar__heading p{margin:0 0 6px}.planning-resource-calendar__search{display:flex;gap:8px;align-items:center;max-width:480px}.planning-resource-calendar__search input{flex:1}.planning-resource-optimizer{display:grid;gap:16px}.planning-resource-optimizer>header,.planning-resource-optimizer__result-heading{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.planning-resource-optimizer>header h2,.planning-resource-optimizer>header p,.planning-resource-optimizer__result h3,.planning-resource-optimizer__result p{margin:0}.planning-resource-optimizer>header>svg{flex:0 0 auto;color:var(--color-primary)}.planning-resource-optimizer__controls{display:grid;grid-template-columns:repeat(2,minmax(150px,220px)) auto;gap:12px;align-items:end}.planning-resource-optimizer__controls label{display:grid;gap:6px}.planning-resource-optimizer__controls input{width:100%}.planning-resource-optimizer__calculate{justify-self:start}.planning-resource-optimizer__result{display:grid;gap:14px;padding-top:16px;border-top:1px solid var(--color-border)}.planning-resource-optimizer__result-heading{align-items:center}.planning-resource-optimizer__suggestions,.planning-resource-optimizer__exclusions ul{display:grid;gap:0;padding:0;margin:0;list-style:none}.planning-resource-optimizer__suggestions>li{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,1fr);gap:16px;align-items:center;min-height:64px;padding-block:10px;border-bottom:1px solid var(--color-border)}.planning-resource-optimizer__suggestions label{display:flex;gap:10px;align-items:center}.planning-resource-optimizer__suggestions input{width:18px;height:18px;margin:0}.planning-resource-optimizer__suggestions label>span,.planning-resource-optimizer__suggestions>li>div{display:grid;gap:4px}.planning-resource-optimizer__suggestions small,.planning-resource-optimizer__reasons{color:var(--color-text-muted);font-size:var(--font-size-sm)}.planning-resource-optimizer__suggestions .badge{justify-self:start}.planning-resource-optimizer__exclusions{display:grid;gap:6px;color:var(--color-text-muted);font-size:var(--font-size-sm)}.planning-resource-optimizer__exclusions ul{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:4px 16px}.planning-resource-optimizer__apply{justify-self:end}.planning-resource-assignment{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1fr) auto auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-elevated)}.planning-resource-assignment h3,.planning-resource-assignment p{margin:0}.planning-resource-assignment>label{display:grid;gap:5px}.planning-resource-assignment select{width:100%}.planning-resource-assignment__summary{align-self:center;color:var(--color-text-muted);white-space:nowrap}.planning-resource-cleanup{display:grid;grid-template-columns:auto minmax(240px,1fr) minmax(240px,1fr) auto;gap:14px;align-items:center;padding-block:16px;border-block:1px solid var(--color-warning)}.planning-resource-cleanup>svg{color:var(--color-warning)}.planning-resource-cleanup h2,.planning-resource-cleanup p{margin:0}.planning-resource-cleanup>label{display:grid;gap:5px}.planning-resource-calendar__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:10px;padding:0;margin:0;list-style:none}.planning-resource-calendar__list>li{display:grid;gap:12px;padding:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.planning-resource-calendar__identity{display:grid;grid-template-columns:22px 24px minmax(0,1fr) auto;align-items:center}.planning-resource-calendar__select{display:grid;width:22px;height:22px;place-items:center}.planning-resource-calendar__select input{width:18px;height:18px;margin:0}.planning-resource-calendar__identity>div,.planning-resource-calendar__blocks>div{display:grid;gap:4px;min-width:0}.planning-resource-calendar__identity span,.planning-resource-calendar__meta,.planning-resource-calendar__blocks span{color:var(--color-text-muted);font-size:.84rem}.planning-resource-calendar__meta{margin:0}.planning-resource-calendar__missing{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px 0;border-block:1px solid var(--color-warning)}.planning-resource-calendar__missing>svg{color:var(--color-warning)}.planning-resource-calendar__missing p,.planning-resource-calendar__missing ul{margin:4px 0 0}.planning-resource-calendar__missing ul{display:grid;gap:6px;padding:0;list-style:none}.planning-resource-calendar__missing li{display:flex;align-items:center;justify-content:space-between;min-height:36px}.planning-resource-calendar__blocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:10px;border-top:1px solid var(--color-border)}.planning-resource-calendar__blocks h3,.planning-resource-calendar__blocks p{margin:0;font-size:.86rem}.planning-resource-calendar__blocks p{display:grid;gap:2px;padding-block:4px}.planning-event-list>li{display:grid;grid-template-columns:20px minmax(150px,1fr) 34px;gap:8px;align-items:center;flex:0 0 250px;min-height:64px;padding:10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.planning-event-list>li[draggable=true]{cursor:grab}.planning-event-list>li div{display:grid;gap:3px;min-width:0}.planning-event-list>li span{overflow:hidden;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap}.planning-event-list button,.planning-entry__actions button,.planning-toolbar__range>button:not(.button){display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--color-border);border-radius:5px;background:var(--color-surface-elevated);color:var(--color-text)}.planning-editor__comment,.planning-series__comment,.planning-editor__actions,.planning-series__weekdays,.planning-series__mode{grid-column:1 / -1}.planning-editor__actions{display:flex;gap:10px;justify-content:flex-end}.planning-editor textarea,.planning-series textarea{min-height:88px;resize:vertical}.planning-series>summary{cursor:pointer;font-weight:700}.planning-series[open]>summary{margin-bottom:12px}.planning-assistant{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 18px;align-items:end;padding-block:12px 20px;margin-bottom:20px;border-bottom:1px solid var(--color-border)}.planning-assistant>div:first-child,.planning-assistant>label,.planning-assistant__result,.planning-assistant .banner{grid-column:1 / -1}.planning-assistant h3,.planning-assistant h4,.planning-assistant p{margin:0}.planning-assistant>div:first-child{display:grid;gap:5px}.planning-assistant textarea{width:100%}.planning-assistant>.button{grid-column:2;justify-self:end}.planning-assistant__result{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;padding-top:14px;border-top:1px solid var(--color-border)}.planning-assistant__result>strong,.planning-assistant__result>.button,.planning-assistant__result>.banner{grid-column:1 / -1}.planning-assistant__result ul{padding-left:20px;margin:6px 0 0}.planning-assistant__result li+li{margin-top:4px}.planning-series__weekdays,.planning-series__mode{display:flex;flex-wrap:wrap;gap:10px 18px;padding:12px;border:1px solid var(--color-border)}.planning-series__weekdays label,.planning-series__mode label{display:inline-flex;flex-direction:row;gap:7px;align-items:center}.planning-series__preview{display:grid;gap:12px;margin-top:18px}.planning-series__preview h3{margin:0}.planning-series__preview ol{display:grid;gap:1px;max-height:320px;overflow-y:auto;border:1px solid var(--color-border)}.planning-series__preview li{display:flex;gap:16px;justify-content:space-between;padding:9px 12px;background:var(--color-surface)}.planning-rules{display:grid;gap:16px}.planning-rules__heading{align-items:flex-start}.planning-rules__heading h2,.planning-rules__heading p,.planning-proposals>p{margin:0 0 6px}.planning-check-result,.planning-findings,.planning-proposals,.planning-proposals__result{display:grid;gap:12px}.planning-check-result .banner{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.planning-findings{padding-top:12px;border-top:1px solid var(--color-border)}.planning-findings h3,.planning-proposals__result h3{margin:0;font-size:1rem}.planning-findings ul,.planning-proposals__result ol{display:grid;gap:1px;padding:0;margin:0;list-style:none;border:1px solid var(--color-border)}.planning-findings li{display:flex;flex-wrap:wrap;gap:8px 16px;padding:9px 12px;background:var(--color-surface)}.planning-findings li span{color:var(--color-text-muted);font-size:.85rem}.planning-proposals{padding-top:14px;border-top:1px solid var(--color-border)}.planning-proposals>summary{display:flex;gap:8px;align-items:center;cursor:pointer;font-weight:700}.planning-proposals__form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.planning-proposals__form>label{display:grid;gap:6px;min-width:0}.planning-proposals__weekdays,.planning-proposals__rooms{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:10px 18px;padding:12px;border:1px solid var(--color-border)}.planning-proposals__weekdays legend,.planning-proposals__rooms legend{padding-inline:5px;font-weight:700}.planning-proposals__weekdays label,.planning-proposals__rooms label{display:inline-flex;gap:7px;align-items:center}.planning-proposals__weekdays input,.planning-proposals__rooms input,.planning-proposals__result input{width:18px;height:18px;margin:0}.planning-proposals__rooms p{flex-basis:100%;margin:0;color:var(--color-text-muted);font-size:.85rem}.planning-proposals__preview-action{grid-column:1 / -1;width:-moz-fit-content;width:fit-content}.planning-proposals__result{margin-top:8px}.planning-proposals__result ol{max-height:420px;overflow-y:auto}.planning-proposals__result li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--color-surface)}.planning-proposals__result li>label{display:flex;gap:10px;align-items:center;min-width:0}.planning-proposals__result li>label>span{display:grid;gap:3px;min-width:0}.planning-proposals__result li small{color:var(--color-text-muted)}.planning-proposals__result li>div{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.planning-publication{display:grid;gap:16px}.planning-publication__heading{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.planning-publication__heading h2,.planning-publication__heading p,.planning-publication__preview h3,.planning-publication__preview p,.planning-publication__results h3,.planning-publication__results p{margin:0}.planning-publication__heading h2{font-size:1.15rem}.planning-publication__preview,.planning-publication__confirmation,.planning-publication__results{display:grid;gap:12px}.planning-publication__preview{padding-top:14px;border-top:1px solid var(--color-border)}.planning-publication__select-all,.planning-publication__confirmation>label,.planning-publication__operations label{display:flex;gap:10px;align-items:flex-start}.planning-publication__select-all input,.planning-publication__confirmation input,.planning-publication__operations input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0}.planning-publication__operations,.planning-publication__results ul{display:grid;gap:1px;max-height:430px;padding:0;margin:0;overflow-y:auto;list-style:none;border:1px solid var(--color-border)}.planning-publication__operations li,.planning-publication__results li{padding:10px 12px;background:var(--color-surface)}.planning-publication__operations label>span,.planning-publication__results li>span{display:grid;gap:3px;min-width:0}.planning-publication__operations small,.planning-publication__results small{color:var(--color-text-muted)}.planning-publication__confirmation{justify-items:start;padding:14px;background:var(--color-surface-subtle);border:1px solid var(--color-border)}.planning-publication__results li{display:flex;gap:10px;align-items:flex-start}.planning-publication__results li.is-success>svg{color:var(--color-success)}.planning-publication__results li.is-error>svg{color:var(--color-danger)}.planning-toolbar{flex-wrap:wrap;align-items:flex-end;padding-top:8px}.planning-toolbar__range{flex-wrap:wrap;justify-content:center}.planning-toolbar__range label{font-size:.82rem}.planning-legend{justify-content:flex-end;color:var(--color-text-muted);font-size:.85rem}.planning-legend span{display:inline-flex;gap:6px;align-items:center}.planning-legend i{width:11px;height:11px;border:2px solid currentColor;border-radius:2px}.planning-legend__live{color:var(--color-info)}.planning-legend__draft{color:var(--color-primary)}.planning-board-scroll{max-width:100%;overflow:auto;border:1px solid var(--color-border);background:var(--color-bg)}.planning-board{display:grid;width:-moz-max-content;width:max-content;min-width:100%}.planning-board__corner,.planning-board__column-header,.planning-board__room{position:sticky;z-index:2;background:var(--color-surface-subtle)}.planning-board__corner,.planning-board__column-header{top:0;min-height:42px;border-bottom:1px solid var(--color-border-strong)}.planning-board__column-header{display:grid;place-items:center;padding:6px;border-left:1px solid var(--color-border);color:var(--color-text-muted);font-size:.78rem;text-align:center}.planning-board__corner,.planning-board__room{left:0;z-index:3}.planning-board__room{display:grid;align-content:start;gap:4px;min-height:112px;padding:10px;border-top:1px solid var(--color-border)}.planning-board__room span{color:var(--color-text-muted);font-size:.78rem}.planning-board__cell{display:grid;align-content:start;gap:5px;min-height:112px;padding:5px;border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);background:var(--color-surface)}.planning-board__cell:has(.planning-entry--draft){background:var(--color-selection)}.planning-board__cell.is-selected{border-color:var(--color-selection-border);background:var(--color-selection)}.planning-time-selection-label{padding:3px 5px;border:1px solid var(--color-selection-border);border-radius:4px;background:var(--color-surface-elevated);color:var(--color-text);font-size:var(--font-size-xs);font-weight:700;line-height:1.2;pointer-events:none;white-space:nowrap}.planning-board__create{display:inline-grid;width:32px;height:32px;place-items:center;justify-self:end;border:1px solid var(--color-border);border-radius:5px;background:var(--color-surface-elevated);color:var(--color-text);opacity:.55}.planning-board__cell:hover>.planning-board__create,.planning-board__cell:focus-within>.planning-board__create{opacity:1}.planning-entry{display:grid;gap:3px;min-width:0;padding:6px;border-left:3px solid;border-radius:3px;font-size:.75rem}.planning-entry strong,.planning-entry span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-entry--live{border-color:var(--color-info);background:var(--color-info-bg)}.direct-planning-entry{position:relative;grid-template-columns:minmax(0,1fr) auto;min-height:72px;padding:5px;border-color:var(--event-accent, var(--color-info));background:color-mix(in srgb,var(--event-accent, var(--color-info)) 17%,var(--color-surface))}.direct-planning-entry[draggable=true]{cursor:grab}.direct-planning-entry__grip{position:absolute;top:4px;right:4px;color:var(--color-text-muted);pointer-events:none}.direct-planning-entry__main,.direct-planning-agenda__main{display:grid;gap:3px;min-width:0;padding:3px;border:0;background:transparent;color:inherit;font:inherit;text-align:left}.direct-planning-entry__main{grid-column:1 / -1;padding-right:16px}.direct-planning-entry__main:hover strong,.direct-planning-entry__main:focus-visible strong,.direct-planning-agenda__main:hover strong,.direct-planning-agenda__main:focus-visible strong{text-decoration:underline}.direct-planning-entry .planning-entry__actions{grid-column:1 / -1}.direct-planning-cell{position:relative;min-height:120px}.direct-planning-cell>button:first-child{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;margin-left:auto;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface-elevated);color:var(--color-text-muted)}.direct-planning-cell>button:first-child:not(:focus-visible){opacity:.55}.direct-planning-cell:hover>button:first-child,.direct-planning-cell:focus-within>button:first-child{opacity:1}.direct-planning-agenda__main span{color:var(--color-text-muted)}.planning-entry--draft{border-color:var(--color-primary);background:var(--color-surface-elevated)}.planning-entry--draft[draggable=true]{cursor:grab}.planning-entry__actions{display:flex;gap:3px;margin-top:3px}.planning-entry__actions button{width:28px;height:28px}.planning-mobile-agenda{display:none}@media(max-width:767px){.planning-scenario-create,.planning-editor__form,.planning-series__form,.planning-proposals__form{grid-template-columns:1fr}.planning-mode-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.planning-mode-tabs a{justify-content:center;min-width:0;padding-inline:8px;text-align:center}.direct-planning-filters,.direct-batch-editor__form,.direct-batch-editor__series{grid-template-columns:1fr}.direct-batch-preview header,.direct-batch-preview li,.direct-batch-results li{align-items:stretch;flex-direction:column}.direct-batch-preview li>div{justify-content:flex-start}.direct-planning-filters__actions{display:grid;grid-column:1;grid-template-columns:1fr 1fr}.direct-planning-filters__actions .button{width:100%}.planning-assistant{grid-template-columns:1fr}.planning-assistant>.button{grid-column:1;justify-self:stretch}.planning-heading,.planning-backlog__heading,.planning-resource-calendar__heading,.planning-rules__heading,.planning-publication__heading,.planning-toolbar{align-items:stretch;flex-direction:column}.planning-resource-calendar__list,.planning-resource-calendar__blocks,.planning-resource-assignment{grid-template-columns:1fr}.planning-resource-cleanup{grid-template-columns:auto minmax(0,1fr)}.planning-resource-cleanup>label{grid-column:1 / -1}.planning-resource-assignment>button.planning-resource-assignment__save,.planning-resource-cleanup>button,.planning-resource-calendar__missing button,.planning-resource-calendar__select{display:none}.planning-resource-calendar__identity{grid-template-columns:24px minmax(0,1fr) auto}.planning-resource-optimizer{display:none}.planning-status-actions,.planning-toolbar__range{justify-content:flex-start}.planning-event-list>li{flex-basis:220px}.planning-board-scroll,.planning-legend{display:none}.planning-mobile-agenda{display:grid;gap:8px}.planning-mobile-agenda>li{display:grid;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.planning-mobile-agenda>li>time{color:var(--color-text-muted);font-size:.82rem}.planning-mobile-agenda>li>div{display:grid;gap:6px}.direct-planning-agenda__main{width:100%}.planning-scenario-list{grid-template-columns:1fr}.planning-proposals__result li{align-items:stretch;flex-direction:column}.planning-proposals__result li>div{justify-content:flex-start}}@media(min-width:768px)and (max-width:1199px){.direct-planning-filters{grid-template-columns:repeat(3,minmax(150px,1fr))}}:root[data-theme=light]{color-scheme:light;--color-primary: #6f60c9;--color-primary-hover: #5a4fb8;--color-on-primary: #ffffff;--color-bg: #f5f5f8;--color-surface: #ffffff;--color-surface-elevated: #ffffff;--color-surface-subtle: #ececf2;--color-input: #ffffff;--color-border: #d8d8e2;--color-border-strong: #a9a9b8;--color-selection: #ebe8fb;--color-selection-border: #6f60c9;--color-text: #1b1d29;--color-text-muted: #5c5e70;--color-focus: #6f60c9;--color-success: #15803d;--color-success-bg: #dcfce7;--color-warning: #854d0e;--color-warning-bg: #fef9c3;--color-danger: #b91c1c;--color-danger-bg: #fee2e2;--color-info: #0369a1;--color-info-bg: #e0f2fe;--color-unsaved: #854d0e;--color-unsaved-bg: #fef3c7;--color-header: #ffffff;--color-header-text: #1b1d29;--color-header-muted: #5c5e70;--color-header-control-bg: #ececf2;--color-header-control-text: #1b1d29;--color-overlay: rgb(17 24 39 / 48%);--color-shadow: rgb(27 29 41 / 16%);--color-accent-soft: rgb(111 96 201 / 9%);--color-accent-hairline: rgb(111 96 201 / 28%);--color-event-0: #0369a1;--color-event-1: #15803d;--color-event-2: #a16207;--color-event-3: #be123c;--color-event-4: #6d28d9;--color-event-5: #1d4ed8;--color-event-6: #4d7c0f;--color-event-7: #c2410c;--color-event-8: #0f766e;--color-event-9: #be185d}*{box-sizing:border-box}html{background:var(--color-bg);min-width:360px;scroll-behavior:smooth}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--font-size-base);letter-spacing:0;line-height:1.5}::-moz-selection{background:var(--color-selection)}::selection{background:var(--color-selection)}.product-wordmark{align-items:center;display:inline-flex;font-size:1.35rem;line-height:1;white-space:nowrap}.product-wordmark__image{background:url(/t-api-wordmark-dark.svg) center / contain no-repeat;display:block;height:1.2em;width:2.675em}:root[data-theme=light] .product-wordmark__image{background-image:url(/t-api-wordmark-light.svg)}button,input,select,textarea{color:inherit;font:inherit}select{background:var(--color-input);color:var(--color-text)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.admin-auth-page{align-items:center;background:var(--color-surface-subtle);display:flex;justify-content:center;min-height:100vh;padding:24px 16px}.admin-auth-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;max-width:480px;padding:28px;width:100%}.admin-auth-panel h1{font-size:var(--font-size-2xl);margin:0 0 24px}.admin-auth-panel__preferences{display:flex;justify-content:flex-end;margin-bottom:16px}.admin-shell{background:var(--color-bg);min-height:100vh}.admin-header{align-items:center;background:var(--color-header);color:var(--color-header-text);display:flex;justify-content:space-between;min-height:68px;padding:10px 24px}.admin-header>div:first-child,.admin-header__account,.admin-header__account>span{align-items:center;display:flex;gap:12px}.admin-header__account>span{align-items:flex-end;flex-direction:column;gap:0}.admin-header__account small{color:var(--color-header-muted)}.admin-header .button--secondary{background:var(--color-header-control-bg);border-color:var(--color-header-control-bg);color:var(--color-header-control-text)}.admin-header .theme-toggle{background:transparent;border-color:var(--color-header-muted);color:var(--color-header-muted)}.admin-header .theme-toggle__thumb{background:var(--color-header-control-bg)}.admin-header .theme-toggle[aria-checked=false] .theme-toggle__sun,.admin-header .theme-toggle[aria-checked=true] .theme-toggle__moon{color:var(--color-header-control-text)}.admin-environment-badge{border:1px solid var(--color-border-strong);border-radius:4px;color:var(--color-header-text);font-size:var(--font-size-xs);font-weight:700;padding:4px 8px}.admin-primary-nav{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.admin-primary-nav button{background:transparent;border:1px solid transparent;border-radius:4px;color:var(--color-header-muted);cursor:pointer;min-height:40px;padding:8px 12px}.admin-primary-nav button:hover,.admin-primary-nav button[aria-current=page]{background:var(--color-header-control-bg);color:var(--color-header-control-text)}.admin-header .admin-navigation-trigger{display:none}.admin-navigation-dialog h2{margin:0;padding-right:48px;font-size:var(--font-size-xl)}.admin-mobile-navigation{display:grid;gap:8px;margin-top:20px}.admin-mobile-navigation .button{justify-content:flex-start;width:100%}.admin-mobile-navigation .button[aria-current=page]{border-color:var(--color-primary);background:var(--color-accent-soft)}.admin-account-panel{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:24px}.admin-inline-form{align-items:end;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(220px,1fr)) auto;max-width:980px}.admin-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 68px)}.admin-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:20px 16px}.admin-sidebar__heading,.admin-section-heading{align-items:center;display:flex;gap:16px;justify-content:space-between}.admin-sidebar__heading h1,.admin-section-heading h1,.admin-section-heading h2{font-size:var(--font-size-xl);margin:0}.admin-tenant-list{display:grid;gap:4px;list-style:none;margin:20px 0 0;padding:0}.admin-tenant-list button{background:transparent;border:1px solid transparent;border-radius:6px;color:var(--color-text);cursor:pointer;display:grid;min-height:56px;padding:8px 10px;text-align:left;width:100%}.admin-tenant-list button:hover,.admin-tenant-list button[aria-current=page]{background:var(--color-selection);border-color:var(--color-selection-border)}.admin-tenant-list small{color:var(--color-text-muted)}.admin-main{min-width:0;padding:28px 32px 72px}.admin-audit,.admin-monitoring{margin:0 auto;max-width:1480px;padding:28px 32px 72px}.admin-billing{margin:0 auto;max-width:960px;padding:28px;width:100%}.admin-billing-form{border-top:1px solid var(--color-border);padding-top:24px}.admin-billing-form h2{font-size:1.05rem;margin:0 0 18px}.admin-billing-fields{display:grid;gap:16px;grid-template-columns:minmax(220px,1.5fr) repeat(2,minmax(170px,1fr))}.admin-billing-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.admin-segmented-control{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:6px;display:flex;padding:2px}.admin-segmented-control button{background:transparent;border:0;border-radius:4px;color:var(--color-text-muted);cursor:pointer;min-height:36px;padding:6px 12px}.admin-segmented-control button[aria-pressed=true]{background:var(--color-surface-elevated);box-shadow:0 1px 2px var(--color-shadow);color:var(--color-text);font-weight:700}.admin-monitoring-test{border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);margin-top:24px;padding:20px 0}.admin-monitoring-tenant-filter{margin-top:24px;max-width:360px}.admin-monitoring-test h2,.admin-monitoring-series h3,.admin-monitoring-alerts h3{font-size:var(--font-size-lg);margin:0}.admin-monitoring-test__form{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;margin-top:14px;max-width:860px}.admin-monitoring-tenants{display:grid;gap:40px;margin-top:28px}.admin-monitoring-tenant+.admin-monitoring-tenant{border-top:2px solid var(--color-border-strong);padding-top:36px}.admin-monitoring-tenant__heading{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.admin-monitoring-tenant__heading h2{font-size:var(--font-size-xl);margin:0}.admin-monitoring-tenant__heading p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:3px 0 0}.admin-monitoring-health,.admin-monitoring-severity{border-left:4px solid var(--color-border-strong);display:inline-block;font-size:var(--font-size-sm);font-weight:700;padding:4px 8px}.admin-monitoring-health--ok{border-color:var(--color-success);color:var(--color-success)}.admin-monitoring-health--stale,.admin-monitoring-severity--warning{border-color:var(--color-warning);color:var(--color-warning)}.admin-monitoring-health--error,.admin-monitoring-severity--p2{border-color:var(--color-danger);color:var(--color-danger)}.admin-monitoring-health--missing{color:var(--color-text-muted)}.admin-monitoring-health-state{align-items:flex-end;display:grid;gap:3px;justify-items:end}.admin-monitoring-health-state small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.admin-monitoring-metrics{display:grid;gap:1px;grid-template-columns:repeat(4,minmax(0,1fr));margin:22px 0 0}.admin-monitoring-metric-group{background:var(--color-surface);border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);margin:0;padding:14px}.admin-monitoring-metric-group dt{color:var(--color-text);font-size:var(--font-size-sm);font-weight:750}.admin-monitoring-metric-group dd{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0 0}.admin-monitoring-metric-group dd span{display:grid;gap:1px}.admin-monitoring-metric-group small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.admin-monitoring-series,.admin-monitoring-alerts{border-top:1px solid var(--color-border);margin-top:22px;padding-top:18px}.admin-monitoring-bars{align-items:end;display:flex;gap:2px;height:112px;margin-top:14px;overflow:hidden}.admin-monitoring-bars>span{background:var(--color-primary);flex:1 1 3px;max-width:14px;min-width:2px}.admin-monitoring-bars>span[data-error=true]{background:var(--color-danger)}.admin-monitoring-alerts>p{color:var(--color-text-muted);margin:10px 0 0}.admin-monitoring-alerts ul{border-top:1px solid var(--color-border);list-style:none;margin:14px 0 0;padding:0}.admin-monitoring-alerts li{align-items:center;border-bottom:1px solid var(--color-border);display:grid;gap:12px;grid-template-columns:90px minmax(180px,1fr) minmax(140px,1fr) 180px;padding:10px 0}.admin-audit-retention{align-items:end;border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);display:flex;gap:28px;justify-content:space-between;margin-top:24px;padding:20px 0}.admin-audit-retention h2,.admin-audit-filters h2,.admin-audit-detail h2{font-size:var(--font-size-lg);margin:0}.admin-audit-retention p{color:var(--color-text-muted);margin:6px 0 0}.admin-retention-form{align-items:end;display:flex;gap:12px}.admin-retention-form input{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;min-height:44px;padding:8px 10px;width:88px}.admin-audit-filters{border-bottom:1px solid var(--color-border);margin-top:24px;padding-bottom:24px}.admin-audit-filter-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(160px,1fr));margin:16px 0}.admin-audit-filter-grid input,.admin-audit-filter-grid select{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;min-height:42px;padding:8px 10px;width:100%}.admin-audit-state{color:var(--color-text-muted);padding:28px 0}.admin-audit-table-wrap{margin-top:22px;overflow-x:auto}.admin-audit-table{border-collapse:collapse;font-size:var(--font-size-sm);min-width:1120px;table-layout:fixed;width:100%}.admin-audit-table th,.admin-audit-table td{border-bottom:1px solid var(--color-border);overflow-wrap:anywhere;padding:10px 9px;text-align:left;vertical-align:top}.admin-audit-table th{background:var(--color-surface-subtle);color:var(--color-text);font-weight:700}.admin-audit-table tr[data-selected=true] td{background:var(--color-selection)}.admin-audit-table th:nth-child(1){width:150px}.admin-audit-table th:nth-child(2){width:150px}.admin-audit-table th:nth-child(3){width:190px}.admin-audit-table th:nth-child(4),.admin-audit-table th:nth-child(6){width:110px}.admin-audit-table th:nth-child(7){width:260px}.admin-audit-detail-link{background:transparent;border:0;color:var(--color-primary);cursor:pointer;font:inherit;font-weight:700;padding:0;text-align:left}.admin-audit-detail-link span,.admin-audit-detail-link small{display:block}.admin-audit-detail-link small{color:var(--color-text-muted);font-size:12px;font-weight:400;margin-top:2px}.admin-audit-class{border-left:3px solid var(--color-border-strong);display:inline-block;padding-left:7px}.admin-audit-class--sicherheit{border-color:var(--color-warning)}.admin-audit-class--aktivitaet{border-color:var(--color-success)}.admin-audit-monospace{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:12px}.admin-audit-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:18px}.admin-audit-page-size,.admin-audit-pagination__buttons{align-items:center;display:flex;gap:10px}.admin-audit-page-size>span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.admin-audit-detail{border-top:2px solid var(--color-border-strong);margin-top:28px;padding-top:22px}.admin-audit-detail h3{font-size:var(--font-size-base);margin:22px 0 10px}.admin-audit-detail-grid{display:grid;gap:14px 28px;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0 0}.admin-audit-detail-grid dt{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.admin-audit-detail-grid dd{margin:4px 0 0;overflow-wrap:anywhere}.admin-editor{margin:0 auto;max-width:1180px}.admin-form-section{border-top:1px solid var(--color-border);margin-top:28px;padding-top:24px}.admin-disclosure>summary{align-items:center;cursor:pointer;display:flex;gap:16px;justify-content:space-between;list-style:none;min-height:44px}.admin-disclosure>summary::-webkit-details-marker{display:none}.admin-disclosure>summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.admin-disclosure>summary svg{flex:0 0 auto;transition:transform .16s ease}.admin-disclosure[open]>summary svg{transform:rotate(180deg)}.admin-disclosure__heading{display:grid;gap:3px;min-width:0}.admin-disclosure__title{font-size:var(--font-size-lg);font-weight:700}.admin-disclosure__heading small{color:var(--color-text-muted);overflow-wrap:anywhere}.admin-disclosure__content{padding-top:18px}.admin-disclosure__content>.admin-config-sections>.admin-config-group:first-child{border-top:0;padding-top:0}.admin-form-section h2{font-size:var(--font-size-lg);margin:0 0 18px}.admin-form-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-theme-default{align-items:center;display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;margin:18px 0 24px;max-width:720px}.admin-theme-default>span{font-weight:700}.admin-theme-default .admin-segmented-control button{align-items:center;display:inline-flex;gap:8px}.admin-branding-editor{max-width:900px}.admin-logo-variants{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.admin-logo-variant{border-top:1px solid var(--color-border);display:grid;gap:12px;padding-top:16px}.admin-logo-variant h3{font-size:var(--font-size-base);margin:0 0 4px}.admin-logo-preview{align-items:center;border:1px solid var(--color-border-strong);border-radius:6px;display:flex;height:120px;justify-content:center;overflow:hidden;padding:24px;width:100%}.admin-logo-preview img{max-height:72px;max-width:min(320px,100%);-o-object-fit:contain;object-fit:contain}.admin-logo-preview--dark{background:#0b0d10;color:#aeb6c2}.admin-logo-preview--light{background:#fff;color:#4b5563}.admin-logo-meta{color:var(--color-text-muted)}.admin-logo-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-logo-actions .button{align-items:center;display:inline-flex;gap:8px}.admin-form-grid input,.admin-form-grid select,.admin-editor textarea,.admin-inline-form input{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;min-height:44px;padding:10px 12px;width:100%}.admin-editor input[type=color]{padding:4px}.admin-module-switches{display:grid;gap:12px 24px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}.admin-module-option label,.admin-module-switches>label{align-items:center;display:flex;gap:10px;min-height:44px}.admin-module-switches input{flex:0 0 auto;height:22px;width:22px}.admin-module-option small{color:var(--color-warning);display:block;margin:0 0 8px 32px}.admin-connection-group{margin-top:20px;max-width:720px}.admin-connection-group:first-of-type{margin-top:0}.admin-connection-group h3{font-size:var(--font-size-lg);margin:0 0 4px}.admin-secret-status{display:grid;gap:8px 24px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 18px}.admin-secret-status div{border-left:3px solid var(--color-primary);padding-left:12px}.admin-secret-status dt{font-size:var(--font-size-sm);font-weight:700}.admin-secret-status dd{color:var(--color-text-muted);margin:4px 0 0}.admin-json-field{margin-top:18px}.admin-config-source{margin:18px 0 0}.admin-diagnostic{border-bottom:1px solid var(--color-border);margin-bottom:20px;padding-bottom:20px}.admin-diagnostic .banner{align-items:center;display:flex}.admin-diagnostic .button,.admin-capability-command .button{gap:8px}.admin-capability-command{display:grid;gap:8px;margin-bottom:20px}.admin-capability-command>div{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.admin-capability-command code{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:4px;flex:1 1 480px;overflow-wrap:anywhere;padding:12px}.admin-config-sections{display:grid;gap:28px;margin-top:24px}.admin-config-modules{gap:0}.admin-config-module{border-top:1px solid var(--color-border);min-width:0;padding:0}.admin-config-module>summary{align-items:center;cursor:pointer;display:flex;font-weight:700;justify-content:space-between;list-style:none;min-height:48px}.admin-config-module>summary::-webkit-details-marker{display:none}.admin-config-module>summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.admin-config-module>summary svg{flex:0 0 auto;transition:transform .16s ease}.admin-config-module[open]>summary svg{transform:rotate(180deg)}.admin-config-module__content{padding:2px 0 24px}.admin-config-group,.admin-config-subgroup{border:0;margin:0;min-width:0;padding:0}.admin-config-group{border-top:1px solid var(--color-border);padding-top:22px}.admin-config-group>legend{font-size:var(--font-size-md);font-weight:700;padding-right:12px}.admin-config-subgroup{margin-top:18px}.admin-config-subgroup>legend{font-weight:700;padding-right:10px}.admin-config-field{margin-top:18px;max-width:100%}.admin-config-field input:not([type=checkbox]),.admin-config-field select{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;min-height:44px;padding:10px 12px;width:100%}.admin-lookup-grid{display:grid;gap:10px 20px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.admin-check-option{align-items:start;display:grid;gap:10px;grid-template-columns:22px minmax(0,1fr);min-height:40px;padding:8px 0}.admin-check-option input[type=checkbox]{height:22px;margin:0;width:22px}.admin-lookup-option-label{display:grid;gap:3px;min-width:0}.admin-lookup-option-label code,.admin-lookup-option-label small{color:var(--color-text-muted);overflow-wrap:anywhere}.admin-input-type-table-wrap{border:1px solid var(--color-border);margin-top:14px}.admin-input-type-table{border-collapse:collapse;table-layout:fixed;width:100%}.admin-input-type-table th,.admin-input-type-table td{border-bottom:1px solid var(--color-border);padding:12px 14px;text-align:left;vertical-align:middle}.admin-input-type-table th{background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:var(--font-size-sm)}.admin-input-type-table th:first-child{width:38%}.admin-input-type-table th:last-child{width:170px}.admin-input-type-table tr:last-child td{border-bottom:0}.admin-input-type-table select{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;min-height:44px;padding:8px 10px;width:100%}.admin-document-report-table th:first-child{width:28%}.admin-document-report-table th:nth-child(2){width:24%}.admin-document-report-table th:last-child{width:72px}.admin-document-report-table .admin-config-field{margin:0}.admin-document-report-table input,.admin-document-report-table select{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;min-height:44px;padding:8px 10px;width:100%}.admin-document-report-remove{align-items:center;display:inline-flex;height:44px;justify-content:center;padding:0;width:44px}.admin-document-report-add{margin-top:14px}.admin-input-type-visibility{align-items:center;margin:0}.admin-json-field textarea,.admin-json-readonly{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:var(--font-size-sm);overflow:auto;white-space:pre}.admin-json-readonly{background:var(--color-input);border:1px solid var(--color-border);border-radius:4px;max-height:360px;padding:16px}.admin-loading,.admin-empty-selection{align-items:center;display:flex;justify-content:center;min-height:320px}@media(max-width:900px){.admin-header,.admin-header__account{align-items:flex-start}.admin-header{gap:12px}.admin-header__account{flex-wrap:wrap;justify-content:flex-end}.admin-primary-nav{order:3;width:100%}.admin-audit-filter-grid,.admin-monitoring-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-workspace{grid-template-columns:1fr}.admin-sidebar{border-bottom:1px solid var(--color-border);border-right:0}.admin-tenant-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-inline-form{grid-template-columns:1fr}}@media(max-width:620px){.admin-header,.admin-header>div:first-child,.admin-header__account{align-items:stretch;flex-direction:column}.admin-header__account>span{align-items:flex-start}.admin-primary-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-primary-nav button{width:100%}.admin-main,.admin-audit,.admin-monitoring{padding:24px 16px 56px}.admin-billing{padding:20px}.admin-audit-retention,.admin-retention-form{align-items:stretch;flex-direction:column}.admin-audit-filter-grid,.admin-audit-detail-grid,.admin-monitoring-metrics,.admin-monitoring-test__form,.admin-billing-fields{grid-template-columns:1fr}.admin-monitoring-alerts li{align-items:start;grid-template-columns:1fr}.admin-tenant-list,.admin-form-grid,.admin-lookup-grid,.admin-logo-variants,.admin-module-switches,.admin-secret-status{grid-template-columns:1fr}.admin-input-type-table-wrap{border:0}.admin-input-type-table,.admin-input-type-table tbody,.admin-input-type-table tr,.admin-input-type-table td{display:block;width:100%}.admin-input-type-table thead{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;width:1px}.admin-input-type-table tr{border:1px solid var(--color-border);margin-bottom:12px;padding:12px}.admin-input-type-table td{border:0;padding:8px 0}.admin-input-type-table td:before{color:var(--color-text-muted);content:attr(data-label);display:block;font-size:var(--font-size-sm);font-weight:700;margin-bottom:6px}.admin-section-heading{align-items:stretch;flex-direction:column}}.center-page{min-height:100vh;padding:24px 16px;align-items:center;background:var(--color-surface-subtle);display:flex;justify-content:center}.auth-panel__language{display:flex;justify-content:flex-end;margin-bottom:16px}.auth-panel__tenant-logo{height:72px;margin:0 0 18px;width:min(320px,100%)}.tenant-logo{align-items:center;display:inline-flex;justify-content:flex-start;min-width:0}.tenant-logo__image{display:block;height:auto;max-height:100%;max-width:100%;-o-object-fit:contain;object-fit:contain}.auth-panel__tenant-logo .tenant-logo__text{font-size:var(--font-size-xl);font-weight:750;overflow-wrap:anywhere}.auth-panel h1,.page-heading h1{font-size:var(--font-size-2xl);line-height:1.25;margin:0}.page-heading--actions{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.praesenz-heading-actions{align-items:stretch;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.task-sections{display:grid;gap:2rem}.task-section>h2{font-size:1.125rem;margin:0 0 .75rem}.resource-card__context{color:var(--color-text-muted);margin:.25rem 0 0}.eyebrow{color:var(--color-primary);font-size:var(--font-size-sm);font-weight:700;margin:0 0 8px}.public-site{background:var(--public-bg);color:var(--public-text);display:flex;flex-direction:column;min-height:100vh}.public-header{align-items:center;background:var(--public-surface);border-bottom:1px solid var(--public-border);display:flex;justify-content:space-between;min-height:68px;padding:10px max(20px,calc((100vw - 1200px)/2));position:relative;z-index:10}.public-header__brand{color:var(--public-text);font-size:1.25rem;font-weight:800;text-decoration:none}.public-header__nav{align-items:center;display:flex;gap:24px}.public-header__nav>a{color:var(--public-muted);font-size:var(--font-size-sm);font-weight:650;text-decoration:none}.public-header__nav>a:hover{color:var(--public-blue)}.public-site a:focus-visible{outline:3px solid var(--public-blue);outline-offset:3px}.public-site .button--primary{background:var(--public-blue);color:#07111f}.public-site .button--secondary{border-color:var(--public-border);color:var(--public-text)}.public-site .button--secondary:hover{background:var(--public-surface-subtle)}.public-hero{align-items:center;background-color:var(--public-hero-bg);display:flex;height:clamp(540px,calc(100svh - 128px),650px);overflow:hidden;position:relative}.public-hero__content{margin:0 auto;max-width:1200px;padding:56px 24px;width:100%}.public-kicker{color:var(--public-blue);font-size:var(--font-size-sm);font-weight:750;margin:0 0 12px}.public-hero h1{font-size:4.75rem;line-height:1;margin:0}.public-hero__lead{font-size:1.75rem;font-weight:650;line-height:1.25;margin:24px 0 0;max-width:26ch}.public-hero__body{color:var(--public-muted);font-size:var(--font-size-lg);margin:20px 0 0;max-width:62ch}.public-hero__facts{display:flex;flex-wrap:wrap;gap:18px 30px;list-style:none;margin:36px 0 0;padding:0}.public-hero__facts li{border-left:3px solid var(--public-blue);font-size:var(--font-size-sm);font-weight:700;padding-left:10px}.public-hero__facts li:nth-child(2){border-left-color:var(--public-green)}.public-hero__facts li:nth-child(3){border-left-color:var(--public-amber)}.public-section{padding:88px 24px}.public-section__inner{margin:0 auto;max-width:1200px}.public-section__heading{max-width:720px}.public-section__heading h2{font-size:2.25rem;line-height:1.2;margin:0}.public-section__heading>p:last-child{color:var(--public-muted);font-size:var(--font-size-lg);margin:18px 0 0}.public-module-groups{display:grid;gap:48px;margin-top:44px}.public-module-group__heading{max-width:720px}.public-module-group__heading h3{font-size:var(--font-size-xl);margin:0}.public-module-group__heading p{color:var(--public-muted);margin:10px 0 0}.public-module-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:20px}.public-module{background:var(--public-surface);border:1px solid var(--public-border);border-radius:8px;border-top:4px solid var(--public-blue);padding:28px}.public-module--grades{border-top-color:var(--public-green)}.public-module--assignment-feedback,.public-module--participant-documents{border-top-color:var(--public-rose)}.public-module--assignment-planning,.public-module--participant-performance{border-top-color:var(--public-amber)}.public-module--honoraria,.public-module--participant-presence{border-top-color:var(--public-green)}.public-module>span{color:var(--public-muted);font-size:var(--font-size-sm);font-weight:700}.public-module h4{font-size:var(--font-size-xl);margin:10px 0 0}.public-module p{color:var(--public-muted);margin:14px 0 0}.public-module small{color:var(--public-muted);display:block;font-size:var(--font-size-sm);margin-top:20px}.public-principles{background:var(--public-principles-bg);color:var(--public-principles-text);padding:88px 24px}.public-section__heading--inverse .public-kicker{color:var(--public-amber)}.public-section__heading--inverse h2{font-size:2.25rem;line-height:1.2;margin:0}.public-principle-grid{display:grid;gap:28px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:48px}.public-principle-grid article{border-top:3px solid var(--public-blue);padding-top:20px}.public-principle-grid h3{font-size:var(--font-size-lg);margin:0}.public-principle-grid p{color:var(--public-principles-muted);margin:14px 0 0}.public-trust-strip{background:var(--public-surface-subtle);border-bottom:1px solid var(--public-border);padding:72px 24px}.public-trust-strip__heading{align-items:end;display:flex;gap:32px;justify-content:space-between}.public-trust-strip__heading>div{max-width:720px}.public-trust-strip__heading h2{font-size:2rem;line-height:1.2;margin:0}.public-trust-strip__heading p:last-child{color:var(--public-muted);margin:16px 0 0}.public-trust-strip__heading .button{flex:none}.public-trust-strip__facts{display:grid;gap:28px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:44px}.public-trust-strip__facts article{border-left:3px solid var(--public-blue);padding-left:18px}.public-trust-strip__facts h3{font-size:var(--font-size-base);margin:0}.public-trust-strip__facts p{color:var(--public-muted);font-size:var(--font-size-sm);margin:10px 0 0}.public-document{flex:1;margin:0 auto;max-width:1040px;min-width:0;padding:72px 24px 96px;width:100%}.public-document__hero{border-bottom:1px solid var(--public-border);max-width:820px;min-width:0;padding-bottom:44px}.public-back-link{align-items:center;color:var(--public-muted);display:inline-flex;font-size:var(--font-size-sm);font-weight:700;gap:8px;margin-bottom:44px;text-decoration:none}.public-back-link:hover{color:var(--public-blue)}.public-document__hero h1,.public-not-found h1{font-size:3rem;line-height:1.1;margin:0}.public-document__intro{color:var(--public-muted);font-size:var(--font-size-lg);line-height:1.65;margin:22px 0 0;max-width:70ch}.public-document__updated{color:var(--public-muted);font-size:var(--font-size-sm);margin:24px 0 0}.public-document__sections{display:grid;gap:0;margin-top:12px;max-width:820px;min-width:0}.public-document__sections section{border-bottom:1px solid var(--public-border);min-width:0;padding:36px 0}.public-document__sections h2{font-size:var(--font-size-xl);line-height:1.3;margin:0}.public-document__sections p{color:var(--public-muted);line-height:1.7;margin:14px 0 0;max-width:76ch}.public-document__sections p:first-of-type{color:var(--public-text)}.public-document__hero h1,.public-document__sections h2,.public-document__sections p,.public-contact-form h2,.public-contact-form p{overflow-wrap:anywhere}.public-contact-form{border-top:1px solid var(--public-border);margin-top:48px;max-width:820px;min-width:0;padding-top:48px}.public-contact-form__heading{max-width:68ch}.public-contact-form__heading h2{font-size:var(--font-size-xl);margin:0}.public-contact-form__heading>p{color:var(--public-muted);margin:12px 0 0}.public-contact-form__required{font-size:var(--font-size-sm)}.public-contact-form form{margin-top:28px}.public-contact-form__grid{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.public-contact-field{display:grid;gap:7px;min-width:0}.public-contact-field label{color:var(--public-text);font-size:var(--font-size-sm);font-weight:700}.public-contact-field__optional{color:var(--public-muted);font-weight:500}.public-contact-field input,.public-contact-field select,.public-contact-field textarea{background:var(--public-surface);border:1px solid var(--public-border);border-radius:6px;color:var(--public-text);min-height:46px;padding:10px 12px;width:100%}.public-contact-field textarea{min-height:168px;resize:vertical}.public-contact-field input[aria-invalid=true],.public-contact-field select[aria-invalid=true],.public-contact-field textarea[aria-invalid=true]{border-color:var(--color-danger)}.public-contact-field__error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.public-contact-form__message{grid-column:1 / -1}.public-contact-form__honeypot{clip-path:inset(50%);height:1px;opacity:0;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.public-contact-form__honeypot input{border:0;height:1px;min-height:0;min-width:0;padding:0;width:1px}.public-contact-form__security,.public-contact-form__privacy{color:var(--public-muted);font-size:var(--font-size-sm);margin:24px 0 0;max-width:72ch}.public-contact-form__captcha{display:grid;gap:10px;margin-top:20px;min-height:78px;min-width:0;width:min(100%,420px)}.turnstile-widget{min-height:65px;min-width:0;width:100%}.turnstile-widget>div,.turnstile-widget iframe{max-width:100%}.public-contact-form__captcha-status{align-items:flex-start;color:var(--public-muted);display:grid;font-size:var(--font-size-sm);gap:10px}.public-contact-form__captcha-status .button{gap:7px;justify-self:start;min-height:38px;padding:7px 11px}.public-contact-form__privacy a{color:var(--public-blue);font-weight:650}.public-contact-form__actions{display:flex;margin-top:24px}.public-contact-form__actions .button,.public-contact-form .banner .button{gap:8px}.public-contact-form .banner{margin:0 0 24px}.public-not-found{flex:1;margin:0 auto;max-width:1040px;padding:112px 24px;width:100%}.public-not-found>p:not(.public-kicker){color:var(--public-muted);font-size:var(--font-size-lg);margin:20px 0 28px}.public-footer{background:var(--public-principles-bg);border-top:1px solid #2c3440;color:var(--public-principles-text);padding:64px 24px 32px}.public-footer__inner{margin:0 auto;max-width:1200px}.public-footer__brand{max-width:360px}.public-footer__brand strong{display:block;font-size:1.5rem}.public-footer__brand p{color:var(--public-principles-muted);line-height:1.6;margin:14px 0 18px}.public-footer__brand>a,.public-footer__nav a{color:var(--public-principles-muted);text-decoration:none}.public-footer__brand>a{font-weight:700}.public-footer__brand>a:hover,.public-footer__nav a:hover{color:var(--public-blue)}.public-footer__inner{display:grid;gap:52px 72px;grid-template-columns:minmax(250px,1fr) minmax(480px,1.45fr)}.public-footer__nav{display:grid;gap:32px;grid-template-columns:repeat(3,minmax(0,1fr))}.public-footer__nav section{align-content:start;display:grid;gap:12px}.public-footer__nav h2{color:var(--public-principles-text);font-size:var(--font-size-sm);margin:0 0 6px}.public-footer__nav a{font-size:var(--font-size-sm)}.public-footer__bottom{align-items:center;border-top:1px solid #2c3440;color:var(--public-principles-muted);display:flex;flex-wrap:wrap;gap:10px 24px;grid-column:1 / -1;padding-top:28px}.public-footer__bottom span{font-size:var(--font-size-sm)}.auth-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 18px 50px var(--color-shadow);max-width:440px;padding:24px;width:100%}.form-stack{display:grid;gap:12px;margin-top:24px}.auth-sso{display:grid;margin-top:1.25rem}.auth-divider{align-items:center;color:var(--color-text-muted);display:grid;font-size:.875rem;gap:.75rem;grid-template-columns:1fr auto 1fr;margin:1.25rem 0}.auth-divider:before,.auth-divider:after{background:var(--color-border);content:"";height:1px}.form-stack--code{border-top:1px solid var(--color-border);margin-top:24px;padding-top:24px}.field{display:grid;gap:6px}.field span{font-size:var(--font-size-sm);font-weight:650}.field input,.field select{background:var(--color-input);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);min-height:44px;padding:10px 12px;width:100%}.field-help{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.preference-controls{align-items:center;display:flex;flex:0 0 auto;gap:10px}.language-switcher{align-items:center;background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:6px;display:inline-flex;padding:2px}.language-switcher__option{background:transparent;border:0;border-radius:4px;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xs);font-weight:750;min-height:32px;min-width:34px;padding:4px 6px}.language-switcher__option[aria-pressed=true]{background:var(--color-surface-elevated);box-shadow:0 1px 3px var(--color-shadow);color:var(--color-text)}.language-switcher__option:disabled{cursor:not-allowed;opacity:.55}.theme-toggle{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-muted);cursor:pointer;flex:0 0 44px;height:26px;padding:0;position:relative;width:44px}.theme-toggle__sun,.theme-toggle__moon{position:absolute;top:6px;z-index:2}.theme-toggle__sun{left:5px}.theme-toggle__moon{right:5px}.theme-toggle__thumb{background:var(--color-primary);border-radius:999px;height:18px;left:3px;position:absolute;top:3px;transition:transform .16s ease;width:18px;z-index:1}.theme-toggle[aria-checked=true] .theme-toggle__thumb{transform:translate(18px)}.theme-toggle[aria-checked=false] .theme-toggle__sun,.theme-toggle[aria-checked=true] .theme-toggle__moon{color:var(--color-on-primary)}.button{align-items:center;border-radius:6px;border:1px solid transparent;cursor:pointer;display:inline-flex;font-weight:650;justify-content:center;min-height:44px;padding:10px 16px;text-decoration:none}.button:disabled{cursor:not-allowed;opacity:.55}.button--primary{background:var(--color-primary);color:var(--color-on-primary)}.button--primary:not(:disabled):hover{background:var(--color-primary-hover)}.button--secondary{background:transparent;border-color:var(--color-border);color:var(--color-text)}.button--secondary:not(:disabled):hover{background:var(--color-surface-subtle)}.button--danger{background:var(--color-danger);color:var(--color-on-primary)}.button--danger:not(:disabled):hover{filter:brightness(.95)}.banner{border-radius:8px;display:grid;gap:4px;margin:16px 0;padding:12px}.banner--error,.banner--danger{background:var(--color-danger-bg);color:var(--color-danger)}.banner--success{background:var(--color-success-bg);color:var(--color-success)}.admin-form-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.banner--warning{background:var(--color-warning-bg);color:var(--color-warning)}.banner--info{background:var(--color-info-bg);color:var(--color-info)}.banner small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.portal{background:var(--color-bg);min-height:100vh}.portal-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;gap:16px;justify-content:space-between;min-height:64px;padding:10px 16px;position:sticky;top:0;z-index:10}.portal-header__brand,.portal-header__user{align-items:center;display:flex;gap:12px;min-width:0}.portal-header__brand{border-radius:4px;color:inherit;min-height:44px;text-decoration:none}.portal-header__brand:hover .portal-header__title{color:var(--color-text)}.portal-header__logo{flex:0 1 160px;height:36px;width:160px}.portal-header__logo .tenant-logo__text{font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-header__title{color:var(--color-text-muted);font-size:var(--font-size-sm)}.portal-header__identity{display:grid;gap:1px;min-width:0;text-align:right}.portal-header__identity-label{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:650}.portal-header__identity strong{color:var(--color-text);font-size:var(--font-size-sm);font-weight:650;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connection-status{background:var(--color-warning-bg);border-bottom:1px solid var(--color-warning);color:var(--color-warning);display:grid;gap:2px;padding:10px max(16px,calc((100vw - 1200px)/2))}.connection-status span,.connection-status small{font-size:var(--font-size-sm)}.connection-status small{color:var(--color-warning)}.portal-main{margin:0 auto;max-width:1200px;padding:24px 16px}.page-heading{margin-bottom:20px}.page-heading p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0 0 4px}.empty-state{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;margin:0;padding:16px}.task-list{display:grid;gap:12px;list-style:none;margin:0;padding:0}.task-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:16px;grid-template-columns:1fr;padding:16px}.task-card h2{font-size:var(--font-size-lg);line-height:1.4;margin:8px 0 4px}.task-card p{color:var(--color-text-muted);margin:0}.noten-view{display:grid;gap:20px;min-width:0}.noten-view--editor{padding-bottom:112px}.resource-group{display:grid;gap:12px}.resource-group+.resource-group{border-top:1px solid var(--color-border);padding-top:20px}.resource-group>h2,.section-heading h2{font-size:var(--font-size-xl);margin:0}.noten-entry-card h3{font-size:var(--font-size-lg);line-height:1.4;margin:8px 0}.noten-entry-card__status,.noten-heading-status,.section-heading{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.noten-heading-status p{margin:0}.noten-progress{display:grid;font-size:var(--font-size-sm);gap:6px;margin-top:12px;max-width:360px}.noten-progress progress{accent-color:var(--color-primary);height:8px;width:100%}.noten-search{max-width:420px}.noten-summary{border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);display:grid;gap:12px 24px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;min-width:0;padding:16px 0}.noten-summary div,.noten-aggregates div{display:grid;gap:2px;min-width:0}.noten-summary dt,.noten-aggregates dt{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700;overflow-wrap:anywhere}.noten-summary dd,.noten-aggregates dd{margin:0;overflow-wrap:anywhere}.exam-structure{background:var(--color-surface-subtle);border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);display:grid;gap:12px;margin:4px 0;padding:16px}.point-conversion{border-bottom:1px solid var(--color-border);display:grid;gap:12px;padding:16px 0}.point-conversion__metadata{display:grid;gap:12px 24px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0}.point-conversion__metadata div{display:grid;gap:2px}.point-conversion__metadata dt{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.point-conversion__metadata dd{margin:0}.point-conversion__table-wrap{max-width:520px;overflow-x:auto}.point-conversion__table{border-collapse:collapse;font-size:var(--font-size-sm);width:100%}.point-conversion__table th,.point-conversion__table td{border-bottom:1px solid var(--color-border);padding:8px;text-align:left}.point-conversion__table th{background:var(--color-surface-subtle)}.section-heading{justify-content:space-between}.exam-list{display:grid;gap:8px;list-style-position:inside;margin:0;padding:0}.exam-list li{display:grid;gap:2px;grid-template-columns:minmax(140px,1fr) minmax(0,2fr)}.exam-list li::marker{font-weight:700}.exam-list span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.noten-table-wrap{display:none}.noten-table{border-collapse:collapse;font-size:var(--font-size-sm);min-width:1120px;width:100%}.noten-table--freitext{min-width:680px}.noten-free-text-field textarea{min-height:112px;min-width:min(420px,100%);resize:vertical;width:100%}.noten-free-text-count{text-align:right}.noten-free-text-value output{overflow-wrap:anywhere;white-space:pre-wrap}.noten-attempt{color:var(--color-text-muted);display:inline-block;font-size:var(--font-size-xs);font-weight:700;white-space:nowrap}.noten-drop-rule{margin:0;max-width:72ch}.noten-table th,.noten-table td{border-bottom:1px solid var(--color-border);padding:10px 8px;text-align:left;vertical-align:top}.noten-table thead th{background:var(--color-surface-subtle);min-width:132px}.noten-table thead th>span,.noten-table thead th>small{display:block}.noten-table thead th>small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:500;margin-top:3px}.noten-table thead th:first-child,.noten-table tbody th{min-width:190px}.noten-table tbody th{font-weight:700}.noten-field{display:grid;gap:4px;min-width:0}.noten-field input,.noten-field select{min-width:96px;width:100%}.noten-field--compact input,.noten-field--compact select{max-width:130px}.noten-choice-field select{min-width:180px}.noten-field.is-dirty-cell,.dispense-field.is-dirty-cell{background:var(--color-unsaved-bg);border-left:3px solid var(--color-warning);padding:6px}.noten-field .unsaved-marker,.dispense-field .unsaved-marker{margin-left:0}.noten-readonly-value,.dispense-readonly{display:grid;gap:4px;min-height:44px}.noten-readonly-value>span,.dispense-readonly>span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.noten-readonly-value output,.dispense-readonly output{font-weight:650}.dispense-field{align-items:center;display:grid;gap:6px;grid-template-columns:auto 1fr;min-height:44px}.dispense-field input{height:20px;width:20px}.dispense-field .cell-feedback{grid-column:1 / -1}.cell-feedback{align-items:center;display:inline-flex;font-size:var(--font-size-xs);font-weight:700;gap:5px}.cell-feedback:before{border-radius:999px;content:"";height:7px;width:7px}.cell-feedback--gespeichert{color:var(--color-success)}.cell-feedback--gespeichert:before{background:var(--color-success)}.cell-feedback--fehler{color:var(--color-danger)}.cell-feedback--fehler:before{background:var(--color-danger)}.noten-cards{display:grid;gap:12px;min-width:0}.noten-participant-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:16px;min-width:0;padding:16px}.noten-participant-card h2{font-size:var(--font-size-lg);line-height:1.35;margin:0}.noten-mobile-fields{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));min-width:0}.noten-mobile-fields>*{min-width:0}.noten-aggregates{border-top:1px solid var(--color-border);display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:0;padding-top:12px}.noten-correction-help{border-left:3px solid var(--color-info);margin:-8px 0 0;padding:8px 12px}.conflict-change-list{margin:6px 0 0;padding-left:20px}.close-progress{color:var(--color-text);font-weight:700}.dialog__content{color:var(--color-text-muted);display:grid;gap:14px}.dialog__content p{margin:0}.confirmation-option{align-items:flex-start;background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:6px;color:var(--color-text);display:flex;gap:10px;padding:10px}.confirmation-option input{flex:0 0 auto;height:20px;margin-top:1px;width:20px}.praesenz-view{display:grid;gap:16px}.teilnehmer-praesenz-view{display:grid;gap:20px}.teilnehmer-praesenz-metadata{grid-template-columns:minmax(140px,max-content) minmax(0,1fr)}.teilnehmer-praesenz-summary{border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0;padding:16px 0}.termine-view{display:grid;gap:1.5rem}.termine-heading{align-items:end;display:flex;gap:1rem;justify-content:space-between}.termine-period{border:1px solid var(--color-border);display:inline-grid;grid-template-columns:repeat(2,minmax(7rem,1fr));min-height:2.75rem}.termine-period button{background:var(--color-surface);border:0;color:var(--color-text-muted);cursor:pointer;font:inherit;font-weight:700;padding:.65rem 1rem}.termine-period button[aria-pressed=true]{background:var(--color-primary);color:var(--color-on-primary)}.calendar-subscription{background:var(--color-info-bg);border-left:4px solid var(--color-primary);display:grid;gap:1rem;padding:1rem 1.25rem}.calendar-subscription h2,.calendar-subscription p,.calendar-subscription strong{margin:0}.calendar-subscription__heading{align-items:flex-start;display:flex;gap:.75rem}.calendar-subscription__heading>svg{color:var(--color-primary);flex:0 0 auto;margin-top:.15rem}.calendar-subscription__heading p,.calendar-subscription__privacy{color:var(--color-text-muted);margin-top:.35rem}.calendar-subscription__privacy{margin-bottom:0}.calendar-subscription__heading strong{display:block;margin-top:.5rem}.calendar-subscription__providers{display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-subscription__providers .button,.calendar-subscription__fallback-actions .button{gap:.5rem;min-width:0;text-align:center}.calendar-subscription__providers svg,.calendar-subscription__fallback-actions svg{flex:0 0 auto}.calendar-subscription__fallback{border-top:1px solid var(--color-border);display:grid;gap:.5rem;padding-top:.75rem}.calendar-subscription__fallback-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.calendar-subscription__status{color:var(--color-text-muted);font-size:var(--font-size-sm);grid-column:1 / -1;min-height:1.25rem}.appointment-day{display:grid;gap:.75rem}.appointment-day>h2{font-size:1rem;margin:0;text-transform:capitalize}.appointment-list{border:1px solid var(--color-border);border-radius:6px;display:grid;gap:0;list-style:none;margin:0;overflow:hidden;padding:0}.appointment-item{align-items:start;border-bottom:1px solid var(--color-border);display:grid;gap:1rem;grid-template-columns:7rem minmax(0,1fr) auto;min-height:6rem;padding:1rem}.appointment-item:last-child{border-bottom:0}.appointment-item>time{color:var(--color-primary);font-weight:800;white-space:nowrap}.appointment-item__content{min-width:0}.appointment-item h3,.appointment-item p{margin:0}.appointment-item h3{font-size:1rem}.appointment-item p,.appointment-item small{color:var(--color-text-muted);display:block;margin-top:.3rem}.appointment-location{color:var(--color-text)!important;font-weight:700}.appointment-load-more{justify-self:center}.assignment-status-group{display:grid;gap:1rem}.assignment-status-group>h2{border-bottom:1px solid var(--color-border);font-size:1.15rem;margin:0;padding-bottom:.5rem}.assignment-status-group .appointment-day>h3{font-size:1rem;margin:0;text-transform:capitalize}.assignment-item__title{align-items:start;display:flex;gap:.75rem;justify-content:space-between}.assignment-item__title h4{font-size:1rem;margin:0}.assignment-item__title .badge{flex:0 0 auto}.honoraria-view,.honoraria-list,.assignment-feedback-view,.assignment-feedback-list{display:grid;gap:1rem}.assignment-feedback-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;display:grid;gap:1rem;padding:1rem}.assignment-feedback-card header{align-items:start;display:flex;gap:1rem;justify-content:space-between}.assignment-feedback-card h3,.assignment-feedback-card p,.assignment-feedback-card time{margin:0}.assignment-feedback-card h3{font-size:1.05rem;margin-top:.25rem}.assignment-feedback-card small{color:var(--color-text-muted);display:block;margin-top:.3rem}.assignment-feedback-fields{border-top:1px solid var(--color-border);display:grid;gap:1rem;grid-template-columns:minmax(12rem,.7fr) minmax(16rem,1.3fr);padding-top:1rem}.assignment-feedback-fields textarea{background:var(--color-input);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);padding:10px 12px;resize:vertical;width:100%}.assignment-feedback-actions{display:flex;justify-content:flex-end}.lehrgang-copy-options{border-top:1px solid var(--color-border);display:grid;gap:.5rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));padding-top:1rem}.lehrgang-picker{display:grid;gap:8px;margin-top:18px}.lehrgang-picker h2{font-size:var(--font-size-base);margin:0}.lehrgang-picker__trigger{align-items:center;background:var(--color-input);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);display:flex;gap:16px;justify-content:space-between;min-height:64px;padding:10px 14px;text-align:left;width:100%}.lehrgang-picker__trigger:hover:not(:disabled){border-color:var(--color-primary)}.lehrgang-picker__trigger:focus-visible,.lehrgang-picker__option:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.lehrgang-picker__trigger:disabled{cursor:not-allowed;opacity:.6}.lehrgang-picker__trigger-copy,.lehrgang-picker__option-copy{display:grid;gap:4px;min-width:0}.lehrgang-picker__trigger-label{font-weight:700;overflow-wrap:anywhere}.lehrgang-picker__trigger-meta,.lehrgang-picker__option-copy>span{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.35;overflow-wrap:anywhere}.lehrgang-picker__trigger>svg{flex:0 0 auto}.dialog-backdrop.lehrgang-picker__backdrop{z-index:40}.lehrgang-picker__dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 24px 60px var(--color-shadow);color:var(--color-text);display:flex;flex-direction:column;height:min(760px,calc(100dvh - 32px));max-height:min(760px,calc(100dvh - 32px));max-width:720px;overflow:hidden;width:100%}.lehrgang-picker__dialog-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:16px;justify-content:space-between;padding:16px 18px}.lehrgang-picker__dialog-header h2{font-size:var(--font-size-xl);margin:0}.lehrgang-picker__dialog-header .icon-button{flex:0 0 44px}.lehrgang-picker__toolbar{border-bottom:1px solid var(--color-border);display:grid;gap:10px;padding:14px 18px}.lehrgang-picker__search-control{display:block;position:relative}.lehrgang-picker__search-control>svg{color:var(--color-text-muted);left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.lehrgang-picker__search-control input{padding-left:40px}.lehrgang-picker__archive{align-items:center;cursor:pointer;display:grid;gap:10px;grid-template-columns:20px minmax(0,1fr);min-height:44px;width:-moz-fit-content;width:fit-content}.lehrgang-picker__archive input[type=checkbox]{accent-color:var(--color-primary);height:20px;margin:0;width:20px}.lehrgang-picker__archive span{font-size:var(--font-size-sm);font-weight:650}.lehrgang-picker__results{flex:1 1 auto;min-height:180px;overflow-y:auto;overscroll-behavior:contain}.lehrgang-picker__status,.lehrgang-picker__results .empty-state{margin:0;padding:22px 18px}.lehrgang-picker__options{list-style:none;margin:0;padding:0}.lehrgang-picker__options li+li{border-top:1px solid var(--color-border)}.lehrgang-picker__option{align-items:center;background:transparent;border:0;color:var(--color-text);display:flex;gap:16px;justify-content:space-between;min-height:68px;padding:12px 18px;text-align:left;width:100%}.lehrgang-picker__option:hover,.lehrgang-picker__option[aria-current=true]{background:var(--color-surface-subtle)}.lehrgang-picker__option-copy strong{line-height:1.35;overflow-wrap:anywhere}.lehrgang-picker__option .badge{flex:0 0 auto}.lehrgang-picker__load-marker{height:1px}.lehrgang-picker__load-more{margin:12px 18px 18px;width:calc(100% - 36px)}.lehrgang-copy-option{align-items:center;cursor:pointer;display:grid;gap:.75rem;grid-template-columns:20px minmax(0,1fr);min-height:44px}.lehrgang-copy-option input[type=checkbox]{accent-color:var(--color-primary);height:20px;margin:0;width:20px}.lehrgang-copy-option:has(input:disabled){cursor:not-allowed;opacity:.65}@media(max-width:767px){.dialog-backdrop.lehrgang-picker__backdrop{align-items:flex-end;padding:0}.lehrgang-picker__dialog{border-bottom:0;border-left:0;border-radius:8px 8px 0 0;border-right:0;height:92dvh;max-height:92dvh;max-width:none}.lehrgang-picker__option{align-items:start;flex-direction:column;gap:8px}}.module-boundary-note{border-left:3px solid var(--color-primary);color:var(--color-text-muted);margin:0;padding:.25rem 0 .25rem 1rem}.honorarium-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1rem}.honorarium-card header{align-items:start;display:flex;gap:1rem;justify-content:space-between}.honorarium-card h2,.honorarium-card time{margin:0}.honorarium-card h2{font-size:1.05rem;margin-top:.25rem}.honorarium-card time,.honorarium-card dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.honorarium-card dl{border-top:1px solid var(--color-border);display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:1rem 0 0;padding-top:1rem}.honorarium-card dt,.honorarium-card dd{margin:0}.honorarium-card dd{font-weight:700;margin-top:.2rem;overflow-wrap:anywhere}.honoraria-load-more{justify-self:center}@media(max-width:720px){.termine-heading{align-items:stretch;flex-direction:column}.termine-period{width:100%}.calendar-subscription{padding:1rem}.calendar-subscription__providers{grid-template-columns:1fr}.calendar-subscription__fallback{align-items:stretch;grid-template-columns:1fr}.calendar-subscription__fallback-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}.calendar-subscription__status{grid-column:auto}.appointment-item{grid-template-columns:1fr}.assignment-item__title{align-items:flex-start;flex-direction:column}.honorarium-card header{align-items:flex-start;flex-direction:column}.assignment-feedback-card header{align-items:flex-start;flex-direction:column}.assignment-feedback-fields{grid-template-columns:1fr}.honorarium-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.participant-results-view{display:grid;gap:1.5rem}.participant-results-tabs{border:1px solid var(--color-border);display:inline-grid;grid-template-columns:repeat(2,minmax(10rem,1fr));justify-self:start;min-height:2.75rem}.participant-results-tabs button{background:var(--color-surface);border:0;color:var(--color-text-muted);cursor:pointer;font:inherit;font-weight:700;padding:.65rem 1rem}.participant-results-tabs button[aria-selected=true]{background:var(--color-primary);color:var(--color-on-primary)}.participant-results-section{display:grid;gap:1rem}.participant-results-section>h2{font-size:var(--font-size-xl);margin:0}.participant-results-list{display:grid;gap:1rem;list-style:none;margin:0;padding:0}.participant-result-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;display:grid;gap:1rem;padding:1rem}.participant-result-item__heading{align-items:start;display:flex;gap:1rem;justify-content:space-between}.participant-result-item__heading h3{font-size:var(--font-size-lg);margin:0}.participant-result-item__heading>div{display:grid;gap:.5rem}.participant-result-values{display:grid;gap:.75rem 1.25rem;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));margin:0}.participant-result-values>div{display:grid;gap:.2rem}.participant-result-values dt{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.participant-result-values dd{font-weight:700;margin:0;overflow-wrap:anywhere}.participant-exams{border-top:1px solid var(--color-border);display:grid;gap:.75rem;padding-top:1rem}.participant-exams h4{font-size:var(--font-size-base);margin:0}.participant-exams ul{display:grid;gap:0;list-style:none;margin:0;padding:0}.participant-exams li{align-items:baseline;border-bottom:1px solid var(--color-border);display:grid;gap:.5rem;grid-template-columns:minmax(10rem,1fr) auto auto auto;padding:.75rem 0}.participant-exams li:last-child{border-bottom:0}.participant-exams span,.participant-exams small,.participant-result-note{color:var(--color-text-muted)}.participant-result-note{margin:0}.participant-results-more{justify-self:center}@media(max-width:720px){.participant-results-tabs{grid-template-columns:1fr;width:100%}.participant-result-item__heading{align-items:stretch;flex-direction:column}.participant-result-item__heading .badge{width:-moz-fit-content;width:fit-content}.participant-exams li{grid-template-columns:1fr}}.participant-documents-view{display:grid;gap:1.5rem}.participant-documents-list,.participant-document-reports{display:grid;gap:1rem;list-style:none;margin:0;padding:0}.participant-document-result{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;display:grid;gap:1rem;padding:1rem}.participant-document-result__heading{align-items:start;display:flex;gap:1rem;justify-content:space-between}.participant-document-result__heading h2{font-size:var(--font-size-lg);margin:0}.participant-document-result__heading p,.participant-document-result__heading time{color:var(--color-text-muted);margin:.25rem 0 0}.participant-document-reports{border-top:1px solid var(--color-border);gap:0}.participant-document-reports>li{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:1rem;justify-content:space-between;min-height:4rem;padding:.75rem 0}.participant-document-reports>li:last-child{border-bottom:0}.participant-document-report__description{align-items:center;display:flex;gap:.75rem;min-width:0}.participant-document-report__description>div,.participant-document-report__action{display:grid;gap:.25rem}.participant-document-report__description strong,.participant-document-report__description span{overflow-wrap:anywhere}.participant-document-report__description span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.participant-document-report__action{justify-items:end}.participant-document-report__action .button{align-items:center;display:inline-flex;gap:.5rem;min-width:11rem}.participant-document-report__error{color:var(--color-danger);font-size:var(--font-size-sm)}.participant-documents-more{justify-self:center}@media(max-width:720px){.participant-document-result__heading,.participant-document-reports>li{align-items:stretch;flex-direction:column}.participant-document-report__action{justify-items:stretch}.participant-document-report__action .button{justify-content:center;width:100%}}.teilnehmer-praesenz-summary div{display:grid;gap:4px}.teilnehmer-praesenz-summary dt{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.teilnehmer-praesenz-summary dd{font-size:var(--font-size-xl);font-weight:700;margin:0}.attendance-list{display:grid;gap:12px;list-style:none;margin:0;padding:0}.attendance-list li{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:14px;padding:16px}.attendance-list h2{font-size:var(--font-size-lg);margin:8px 0 4px}.attendance-list p{color:var(--color-text-muted);margin:0}.attendance-list>li>strong{font-size:var(--font-size-xl)}.praesenz-view--matrix{padding-bottom:112px}.back-link{color:var(--color-primary);font-size:var(--font-size-sm);font-weight:700;text-decoration:none;width:-moz-fit-content;width:fit-content}.back-link:hover{text-decoration:underline}.portal-task-overview-link{align-items:center;display:inline-flex;gap:6px;margin-bottom:16px;min-height:44px}.portal-task-overview-link svg{flex:0 0 auto}.page-heading--with-action{align-items:start;display:grid;gap:12px}.resource-list{display:grid;gap:12px;list-style:none;margin:0;padding:0}.resource-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:16px;padding:16px}.resource-card__body{min-width:0}.resource-card h2{font-size:var(--font-size-lg);line-height:1.4;margin:8px 0}.metadata-list{color:var(--color-text-muted);display:grid;font-size:var(--font-size-sm);gap:4px 12px;grid-template-columns:max-content 1fr;margin:0}.metadata-list dt{font-weight:700}.metadata-list dd{margin:0;min-width:0}.skeleton-list{display:grid;gap:12px}.skeleton-list span[aria-hidden=true]{animation:pulse 1.2s ease-in-out infinite;background:var(--color-surface-subtle);border-radius:8px;height:84px}.matrix-table-wrap{display:none}.matrix-table{border-collapse:collapse;font-size:var(--font-size-sm);min-width:980px;width:100%}.matrix-table th,.matrix-table td{border-bottom:1px solid var(--color-border);padding:12px 10px;text-align:left;vertical-align:top}.matrix-table thead th{background:var(--color-surface-subtle)}.matrix-table tbody th{font-weight:700;min-width:180px}.matrix-table__status{min-width:360px}.matrix-table__comment{min-width:240px}.matrix-cards,.wizard-cards{display:grid;gap:12px}.participant-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:14px;padding:16px}.participant-card__header{align-items:start;display:flex;gap:8px;justify-content:space-between}.participant-card h2{font-size:var(--font-size-lg);line-height:1.35;margin:0}.is-dirty{background:var(--color-unsaved-bg)}.unsaved-marker{align-items:center;color:var(--color-unsaved);display:inline-flex;font-size:var(--font-size-xs);font-weight:750;gap:4px;margin-left:8px;white-space:nowrap}.unsaved-marker:before{background:var(--color-unsaved);border-radius:999px;content:"";height:7px;width:7px}.status-group{border:0;display:grid;gap:8px;margin:0;min-width:0;padding:0}.status-group legend{font-size:var(--font-size-sm);font-weight:700;margin-bottom:4px}.status-option{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;display:flex;gap:8px;min-height:44px;padding:8px 10px}.status-option input{height:18px;width:18px}.matrix-field{min-width:120px}.matrix-field input{min-width:0}.matrix-field--comment{min-width:220px}.matrix-table .status-group{grid-template-columns:repeat(2,minmax(0,1fr))}.matrix-table .status-group legend,.matrix-table .matrix-field>span:first-child{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.inline-error{color:var(--color-danger);display:block;font-size:var(--font-size-xs);font-weight:650;margin-top:4px}.row-result{display:grid;gap:4px}.row-result small,.row-result--muted{color:var(--color-text-muted);font-size:var(--font-size-xs)}.save-bar{align-items:center;background:var(--color-surface);border-top:1px solid var(--color-border);bottom:0;box-shadow:0 -10px 30px var(--color-shadow);display:grid;gap:8px;left:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:20}.save-bar>span:first-child{font-weight:750}.save-bar__error{color:var(--color-danger);font-size:var(--font-size-sm)}.save-bar__actions{display:grid;gap:8px;grid-template-columns:1fr 1fr}.dialog-backdrop{align-items:center;background:var(--color-overlay);display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:50}.dialog{background:var(--color-surface);border-radius:8px;box-shadow:0 24px 60px var(--color-shadow);max-width:420px;padding:20px;width:100%}.dialog h2{font-size:var(--font-size-xl);margin:0 0 8px}.dialog p{color:var(--color-text-muted);margin:0}.dialog__actions{display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-top:20px}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-sm);font-weight:700;gap:6px;padding:4px 10px}.badge:before{content:"";border-radius:999px;height:8px;width:8px}.badge--info{background:var(--color-info-bg);color:var(--color-info)}.badge--info:before{background:var(--color-info)}.badge--success{background:var(--color-success-bg);color:var(--color-success)}.badge--success:before{background:var(--color-success)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge--warning:before{background:var(--color-warning)}.loader{animation:spin .9s linear infinite;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:999px;height:36px;width:36px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pwa-update{align-items:center;background:var(--color-surface-elevated);border:1px solid var(--color-border);bottom:1rem;box-shadow:0 10px 30px var(--color-shadow);display:flex;gap:1rem;justify-content:space-between;left:50%;max-width:min(42rem,calc(100vw - 2rem));padding:.875rem 1rem;position:fixed;transform:translate(-50%);width:-moz-max-content;width:max-content;z-index:1000}.pwa-update__actions{display:flex;flex:0 0 auto;gap:.5rem}.pwa-update__copy{display:grid;gap:.25rem}.pwa-update__copy small{color:var(--color-text-muted)}@media(max-width:36rem){.pwa-update{align-items:stretch;flex-direction:column;width:calc(100vw - 2rem)}.pwa-update__actions>.button{flex:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.55}50%{opacity:1}}@media(min-width:768px){.center-page{padding:24px}.page-heading h1{font-size:var(--font-size-3xl)}.auth-panel{padding:32px}.portal-header{padding:10px 24px}.portal-main{padding:24px}.task-card,.page-heading--with-action,.resource-card{grid-template-columns:1fr auto}.attendance-list li{grid-template-columns:minmax(0,1fr) auto}.matrix-table-wrap{display:block;overflow-x:auto}.matrix-cards{display:none}.noten-table-wrap{display:block;overflow-x:auto}.noten-cards{display:none}.save-bar{gap:16px;grid-template-columns:minmax(180px,1fr) auto auto;padding-left:max(24px,calc((100vw - 1200px)/2 + 24px));padding-right:max(24px,calc((100vw - 1200px)/2 + 24px))}.save-bar__actions{display:flex}}@media(max-width:760px){.public-header__nav>a{display:none}.public-trust-strip__heading{align-items:flex-start;flex-direction:column}.public-trust-strip__facts,.public-footer__inner{grid-template-columns:1fr}.public-footer__bottom{grid-column:1}}@media(max-width:520px){.public-header{padding:10px 20px}.public-header__nav{gap:12px}.public-header__nav>a{display:none}.public-hero__content{padding:40px 20px}.public-hero h1{font-size:3.25rem}.public-hero__lead{font-size:1.35rem}.public-hero__body{font-size:var(--font-size-base)}.public-hero__facts{display:grid;gap:12px;margin-top:28px}.public-section,.public-principles,.public-trust-strip{padding:64px 20px}.public-section__heading h2,.public-section__heading--inverse h2{font-size:1.75rem}.public-section__heading>p:last-child{font-size:var(--font-size-base)}.public-module-grid,.public-principle-grid{grid-template-columns:1fr}.public-module{padding:22px}.public-footer{padding:52px 20px 28px}.public-footer__nav{grid-template-columns:1fr}.public-document{padding:48px 20px 72px}.public-back-link{margin-bottom:36px}.public-document__hero h1,.public-not-found h1{font-size:2.25rem}.public-document__intro,.public-not-found>p:not(.public-kicker){font-size:var(--font-size-base)}.public-document__sections section{padding:30px 0}.public-contact-form{padding-top:38px}.public-contact-form__grid{grid-template-columns:minmax(0,1fr)}.public-contact-form__message{grid-column:auto}.public-contact-form__actions .button{width:100%}.public-not-found{padding:80px 20px}.page-heading--actions{align-items:stretch;flex-direction:column}.page-heading--actions .button,.praesenz-heading-actions{width:100%}.portal-header__title{display:none}.portal-header{align-items:flex-start;flex-direction:column}.portal-header__user{display:grid;gap:8px 12px;grid-template-columns:minmax(0,1fr) auto;width:100%}.portal-header__identity{grid-column:1 / -1;text-align:left}.portal-header__user>.preference-controls{grid-column:1}.portal-header__user>.button{grid-column:2}}.public-site{--public-amber: #e4b95e;--public-blue: var(--color-primary);--public-green: #63b7a9;--public-rose: #cf7e91;--public-bg: var(--color-bg);--public-surface: var(--color-surface);--public-surface-subtle: var(--color-surface-subtle);--public-border: var(--color-border);--public-text: var(--color-text);--public-muted: var(--color-text-muted);--public-hero-bg: var(--color-bg);--public-principles-bg: var(--color-surface-subtle);--public-principles-text: var(--color-text);--public-principles-muted: var(--color-text-muted);--public-shadow: var(--color-shadow)}.public-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:color-mix(in srgb,var(--public-bg) 88%,transparent);min-height:64px;padding:0;position:sticky;top:0;z-index:50}.public-header__inner{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto;max-width:1180px;min-height:64px;padding:10px 24px;width:100%}.public-header__brand{align-items:center;display:inline-flex;flex:none}.public-header__nav,.public-header__links{align-items:center;display:flex}.public-header__nav{gap:14px}.public-header__links{gap:4px}.public-header__links a,.public-header__menu-panel a{border-radius:6px;color:var(--public-muted);font-size:var(--font-size-sm);font-weight:600;padding:8px 10px;text-decoration:none}.public-header__links a:hover,.public-header__menu-panel a:hover{background:var(--public-surface-subtle);color:var(--public-text)}.public-header__menu{display:none;position:relative}.public-header__menu summary{align-items:center;border:1px solid var(--public-border);border-radius:6px;color:var(--public-muted);cursor:pointer;display:flex;height:40px;justify-content:center;list-style:none;width:40px}.public-header__menu summary::-webkit-details-marker{display:none}.public-header__menu summary:hover,.public-header__menu[open] summary{border-color:var(--public-blue);color:var(--public-text)}.public-header__menu-panel{background:var(--public-surface);border:1px solid var(--public-border);border-radius:8px;box-shadow:0 18px 46px var(--public-shadow);display:grid;gap:2px;min-width:220px;padding:8px;position:absolute;right:0;top:calc(100% + 10px)}.public-site .button{align-items:center;border-radius:8px;display:inline-flex;gap:8px;justify-content:center;text-decoration:none}.public-site .button--primary{background:var(--public-blue);border-color:var(--public-blue);color:var(--color-on-primary)}.public-site .button--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.public-hero{background:var(--public-bg);display:block;height:auto;min-height:530px;overflow:hidden}.public-hero__inner{align-items:center;display:flex;margin:0 auto;max-width:1180px;min-height:530px;padding:72px 32px 62px}.public-hero__content{margin:0;max-width:820px;padding:0}.public-kicker{align-items:center;color:var(--public-blue);display:flex;font-size:var(--font-size-xs);font-weight:700;gap:10px;letter-spacing:0;text-transform:uppercase}.public-kicker:before{background:var(--public-blue);content:"";display:block;height:1px;width:28px}.public-hero h1{color:var(--public-text);font-size:1.35rem;font-weight:650;line-height:1.2;margin:0 0 16px}.public-hero__lead{color:var(--public-text);font-size:3.5rem;font-weight:620;line-height:1.08;margin:0;max-width:15ch}.public-hero__body{color:var(--public-muted);font-size:var(--font-size-lg);line-height:1.65;margin:22px 0 0;max-width:58ch}.public-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.public-fact-strip{border-bottom:1px solid var(--public-border);border-top:1px solid var(--public-border)}.public-fact-strip ul{display:flex;flex-wrap:wrap;gap:18px 36px;list-style:none;margin:0 auto;max-width:1180px;padding:22px 32px}.public-fact-strip li{align-items:center;color:var(--public-muted);display:flex;font-size:var(--font-size-sm);font-weight:600;gap:9px}.public-fact-strip li:before{background:var(--public-blue);border-radius:50%;content:"";height:6px;width:6px}.public-section{padding:82px 24px}.public-section__inner{max-width:1180px}.public-section__heading h2,.public-section__heading--inverse h2{color:var(--public-text);font-size:2.4rem;font-weight:620;line-height:1.15}.public-audiences{background:var(--public-surface);border-bottom:1px solid var(--public-border)}.public-audience-grid,.public-focus-grid{display:grid;gap:1px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:42px}.public-audience-grid{background:var(--public-border);border:1px solid var(--public-border);border-radius:8px;overflow:hidden}.public-audience-grid article{background:var(--public-surface);padding:28px}.public-audience-grid article:nth-child(2){box-shadow:inset 0 3px 0 var(--public-green)}.public-audience-grid article:nth-child(3){box-shadow:inset 0 3px 0 var(--public-amber)}.public-audience-grid h3,.public-focus-grid h3{font-size:var(--font-size-xl);margin:0}.public-audience-grid p,.public-focus-grid article>p:not(:first-child){color:var(--public-muted);line-height:1.65}.public-audience-grid a,.public-focus-grid a{align-items:center;color:var(--public-blue);display:inline-flex;font-size:var(--font-size-sm);font-weight:700;gap:7px;margin-top:18px;text-decoration:none}.public-focus{background:var(--public-bg)}.public-focus-grid{gap:20px}.public-focus-card{border:1px solid var(--public-border);border-radius:8px;border-top:3px solid var(--public-blue);padding:28px}.public-focus-card--grades{border-top-color:var(--public-green)}.public-focus-card--participants{border-top-color:var(--public-rose)}.public-focus-card>p:first-child{color:var(--public-muted);font-size:var(--font-size-xs);font-weight:700;margin:0 0 10px;text-transform:uppercase}.public-module-groups{gap:44px}.public-module-grid{background:var(--public-border);border:1px solid var(--public-border);border-radius:8px;gap:1px;overflow:hidden}.public-module-grid--lecturers{grid-template-columns:repeat(3,minmax(0,1fr))}.public-module{border:0;border-radius:0;border-top:3px solid var(--public-blue);min-height:230px}.public-module--grades,.public-module--participant-presence{border-top-color:var(--public-green)}.public-module--lecturer-appointments{border-top-color:var(--public-amber)}.public-module--participant-appointments{border-top-color:var(--public-rose)}.public-platform,.public-integrations{background:var(--public-surface);border-bottom:1px solid var(--public-border);border-top:1px solid var(--public-border);padding:82px 24px;scroll-margin-top:72px}.public-platform{background:var(--public-bg)}.public-platform-grid,.public-integration-grid{display:grid;gap:1px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:42px;overflow:hidden}.public-platform-grid article,.public-integration-grid article{border-left:1px solid var(--public-border);padding:26px}.public-platform-grid article:first-child,.public-integration-grid article:first-child{border-left:0}.public-platform-grid svg,.public-integration-grid svg{color:var(--public-blue)}.public-platform-grid article:nth-child(2) svg,.public-integration-grid article:nth-child(2) svg{color:var(--public-green)}.public-platform-grid article:nth-child(3) svg,.public-integration-grid article:nth-child(3) svg{color:var(--public-amber)}.public-platform-grid article:nth-child(4) svg,.public-integration-grid article:nth-child(4) svg{color:var(--public-rose)}.public-platform-grid h3,.public-integration-grid h3{font-size:var(--font-size-lg);margin:18px 0 0}.public-platform-grid p,.public-integration-grid p{color:var(--public-muted);font-size:var(--font-size-sm);line-height:1.65;margin:10px 0 0}.public-integrations__notice{border-left:2px solid var(--public-blue);color:var(--public-muted);font-size:var(--font-size-sm);margin:38px 0 0;max-width:76ch;padding-left:14px}.public-principles{border-bottom:1px solid var(--public-border);padding:82px 24px}.public-section__heading--inverse .public-kicker{color:var(--public-blue)}.public-principle-grid{gap:1px}.public-principle-grid article{border-left:1px solid var(--public-border);border-top:2px solid var(--public-blue);padding:24px}.public-principle-grid article:first-child{border-left:0}.public-principle-grid article:nth-child(2){border-top-color:var(--public-green)}.public-principle-grid article:nth-child(3){border-top-color:var(--public-amber)}.public-trust-strip{background:var(--public-bg);padding:82px 24px}.public-trust-strip__facts article:nth-child(2){border-left-color:var(--public-green)}.public-trust-strip__facts article:nth-child(3){border-left-color:var(--public-amber)}.public-call-to-action{align-items:center;border-bottom:1px solid var(--public-border);border-top:1px solid var(--public-border);display:flex;gap:40px;justify-content:space-between;margin:0 auto 88px;max-width:1116px;padding:38px 32px}.public-product-page{min-width:0}.public-product-page__hero,.public-product-page__content{margin:0 auto;max-width:1180px;padding-left:32px;padding-right:32px}.public-product-page__hero{padding-bottom:68px;padding-top:72px}.public-product-page__hero h1{font-size:3.5rem;font-weight:620;line-height:1.08;margin:0;max-width:18ch}.public-product-page__intro{color:var(--public-muted);font-size:var(--font-size-xl);line-height:1.55;margin:22px 0 0;max-width:62ch}.public-product-page__summary{border-left:2px solid var(--public-blue);line-height:1.65;margin:34px 0 0;max-width:78ch;padding-left:16px}.public-product-page__content{border-top:1px solid var(--public-border);padding-bottom:88px;padding-top:72px}.public-product-groups{display:grid;gap:52px;margin-top:44px}.public-product-module-grid{margin-top:44px}.public-product-module-grid .public-module h3{font-size:var(--font-size-xl);margin:10px 0 0}.public-product-page .public-platform-grid,.public-product-page .public-integration-grid{margin-top:44px}.public-call-to-action>div{max-width:720px}.public-call-to-action h2{font-size:1.75rem;margin:0}.public-call-to-action p{color:var(--public-muted);margin:10px 0 0}.public-document{max-width:1180px}.public-document__hero{max-width:850px}.public-document__hero h1,.public-not-found h1{font-size:3.25rem;font-weight:620}.public-contact-field input,.public-contact-field select,.public-contact-field textarea{border-radius:8px}.public-footer{background:var(--public-surface);border-color:var(--public-border);color:var(--public-text)}.public-footer .product-wordmark{color:var(--public-text);font-size:1.55rem}.public-footer__brand p,.public-footer__brand>a,.public-footer__nav a,.public-footer__bottom{color:var(--public-muted)}.public-footer__nav h2{color:var(--public-text)}.public-footer__bottom{border-color:var(--public-border)}.admin-auth-panel,.auth-panel{box-shadow:0 22px 64px var(--color-shadow)}.admin-header,.portal-header{border-bottom:1px solid var(--color-border);box-shadow:none;position:sticky;top:0;z-index:40}.admin-header .product-wordmark{color:var(--color-header-text);font-size:1.25rem}.admin-primary-nav button,.button,.theme-toggle,.language-switcher button{border-radius:8px}.admin-primary-nav button[aria-current=page]{background:var(--color-accent-soft);border-color:var(--color-primary);color:var(--color-header-text)}.task-card{border-left:3px solid var(--color-primary);box-shadow:0 8px 24px #00000014}.admin-sidebar,.admin-form-section,.admin-monitoring-test,.admin-monitoring-tenant,.admin-audit-retention,.admin-audit-filters,.admin-audit-detail{box-shadow:none}.public-footer__privacy-button{align-items:center;background:transparent;border:0;color:var(--public-muted);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--font-size-sm);gap:8px;margin-left:auto;min-height:44px;padding:8px 0}.public-footer__privacy-button:hover{color:var(--public-blue)}.public-footer__privacy-button:focus-visible,.public-privacy-notice a:focus-visible,.public-privacy-dialog a:focus-visible{outline:3px solid var(--public-blue);outline-offset:3px}.public-privacy-notice{align-items:center;background:var(--public-surface);border:1px solid var(--public-border);border-radius:8px;bottom:max(16px,env(safe-area-inset-bottom));box-shadow:0 20px 60px var(--public-shadow);color:var(--public-text);display:flex;gap:28px;justify-content:space-between;left:50%;max-width:1120px;padding:20px;position:fixed;transform:translate(-50%);width:calc(100% - 32px);z-index:90}.public-privacy-notice__content{align-items:start;display:grid;gap:14px;grid-template-columns:24px minmax(0,1fr)}.public-privacy-notice__content>svg{color:var(--public-green);margin-top:2px}.public-privacy-notice h2{font-size:var(--font-size-lg);margin:0}.public-privacy-notice p{color:var(--public-muted);line-height:1.55;margin:6px 0 0;max-width:720px}.public-privacy-notice__links,.public-privacy-dialog__links{display:flex;flex-wrap:wrap;gap:8px 18px}.public-privacy-notice a,.public-privacy-dialog a{color:var(--public-blue);font-weight:650}.public-privacy-notice__actions{align-items:center;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:10px;justify-content:flex-end}.public-privacy-dialog{background:var(--public-surface);border:1px solid var(--public-border);border-radius:8px;box-shadow:0 24px 80px #0000005c;color:var(--public-text);max-height:calc(100dvh - 32px);max-width:760px;padding:24px;width:calc(100% - 32px)}.public-privacy-dialog::backdrop{background:#000000ad}.public-privacy-dialog__header{align-items:start;display:flex;gap:24px;justify-content:space-between}.public-privacy-dialog__header h2{font-size:1.75rem;margin:4px 0 0}.public-privacy-dialog__header .icon-button{flex:0 0 44px}.public-privacy-dialog>p{color:var(--public-muted);line-height:1.6}.public-privacy-dialog__sections{border-bottom:1px solid var(--public-border);border-top:1px solid var(--public-border);margin:22px 0}.public-privacy-dialog__status{align-items:start;border-top:1px solid var(--public-border);display:grid;gap:12px;grid-template-columns:24px minmax(0,1fr) minmax(120px,auto);padding:18px 0}.public-privacy-dialog__status:first-child{border-top:0}.public-privacy-dialog__status>svg{color:var(--public-blue);margin-top:2px}.public-privacy-dialog__status h3{font-size:var(--font-size-base);margin:0}.public-privacy-dialog__status p{color:var(--public-muted);line-height:1.5;margin:4px 0 0}.public-privacy-dialog__status>strong{color:var(--public-green);font-size:var(--font-size-sm);text-align:right}.public-privacy-dialog__purpose{align-items:center;border-top:1px solid var(--public-border);display:flex;gap:20px;justify-content:space-between;min-height:72px;padding:14px 0}.public-privacy-dialog__purpose:first-child{border-top:0}.public-privacy-dialog__purpose span{display:grid;gap:4px}.public-privacy-dialog__purpose small{color:var(--public-muted);line-height:1.45}.public-privacy-dialog__purpose input{height:24px;width:24px}.public-privacy-dialog__signal{border-left:3px solid var(--public-blue);padding-left:12px}.public-privacy-dialog__announcement{min-height:1.5em}.public-privacy-dialog__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:24px}@media(max-width:900px){.public-header__links{display:none}.public-header__menu{display:block}.public-hero__lead{font-size:2.75rem}.public-platform-grid,.public-integration-grid,.public-audience-grid,.public-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-audience-grid article:last-child,.public-focus-grid article:last-child{grid-column:1 / -1}.public-module-grid--lecturers{grid-template-columns:repeat(2,minmax(0,1fr))}.public-platform-grid article:nth-child(3),.public-integration-grid article:nth-child(3){border-left:0;border-top:1px solid var(--public-border)}.public-platform-grid article:nth-child(4),.public-integration-grid article:nth-child(4){border-top:1px solid var(--public-border)}}@media(max-width:640px){.public-header__inner{min-height:60px;padding:8px 16px}.public-header__nav{gap:8px}.public-header .language-switcher button{min-height:32px;min-width:32px;padding:4px}.public-header .theme-toggle{height:28px;width:50px}.public-hero,.public-hero__inner{min-height:0}.public-hero__inner{padding:24px 20px 20px}.public-hero h1{font-size:1.15rem}.public-hero__lead{font-size:2.35rem}.public-hero__body{font-size:var(--font-size-base);line-height:1.55}.public-hero__actions .button{flex:1 1 180px}.public-fact-strip ul{gap:10px;padding:14px 20px}.public-fact-strip li{flex:1 1 100%;font-size:var(--font-size-xs)}.public-section,.public-platform,.public-integrations,.public-principles,.public-trust-strip{padding:58px 20px}.public-section__heading h2,.public-section__heading--inverse h2{font-size:1.9rem}.public-module-grid,.public-principle-grid,.public-platform-grid,.public-integration-grid,.public-audience-grid,.public-focus-grid{grid-template-columns:1fr}.public-audience-grid article:last-child,.public-focus-grid article:last-child{grid-column:auto}.public-module{min-height:0}.public-integration-grid article,.public-integration-grid article:nth-child(3),.public-integration-grid article:nth-child(4),.public-principle-grid article{border-left:0;border-top:1px solid var(--public-border)}.public-integration-grid article:first-child,.public-principle-grid article:first-child{border-top:2px solid var(--public-blue)}.public-call-to-action{align-items:stretch;flex-direction:column;margin:0 20px 58px;padding:30px 0}.public-call-to-action .button{width:100%}.public-document__hero h1,.public-not-found h1,.public-product-page__hero h1{font-size:2.25rem}.public-product-page__hero,.public-product-page__content{padding-left:20px;padding-right:20px}.public-product-page__hero{padding-bottom:52px;padding-top:48px}.public-product-page__content{padding-bottom:58px;padding-top:52px}.public-footer__privacy-button{margin-left:0;width:100%}.public-privacy-notice{align-items:stretch;flex-direction:column;gap:18px;padding:18px}.public-privacy-notice__actions,.public-privacy-dialog__actions{align-items:stretch;flex-direction:column}.public-privacy-notice__actions .button,.public-privacy-dialog__actions .button{width:100%}.public-privacy-dialog{padding:20px}.public-privacy-dialog__status{grid-template-columns:24px minmax(0,1fr)}.public-privacy-dialog__status>strong{grid-column:2;text-align:left}}.form-dialog--compact{width:min(540px,100%)}.portal-header{align-items:center;flex-direction:row;min-height:64px;padding-block:8px}.portal-header__user{display:flex;flex:0 0 auto;width:auto}.account-menu{position:relative}.account-menu__trigger{position:relative;z-index:3;align-items:center;display:inline-flex;gap:8px;max-width:min(320px,40vw);min-height:42px;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-elevated);color:var(--color-text);cursor:pointer;font:inherit}.account-menu__trigger:hover,.account-menu__trigger[aria-expanded=true]{border-color:var(--color-border-strong);background:var(--color-surface-subtle)}.account-menu__trigger-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu__chevron{flex:0 0 auto;color:var(--color-text-muted)}.account-menu__backdrop{position:fixed;z-index:1;inset:0;padding:0;border:0;background:transparent}.account-menu__panel{position:absolute;z-index:2;top:calc(100% + 8px);right:0;display:grid;gap:16px;width:min(340px,calc(100vw - 32px));max-height:var(--account-menu-available-height, calc(100dvh - 84px) );overflow-y:auto;overscroll-behavior:contain;padding:16px;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface-elevated);box-shadow:0 20px 50px var(--color-shadow)}.account-menu__identity{display:grid;gap:2px;min-width:0}.account-menu__identity span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:650}.account-menu__identity strong{overflow-wrap:anywhere}.account-menu__identity small{color:var(--color-text-muted);font-size:var(--font-size-xs);overflow-wrap:anywhere}.account-menu__panel .preference-controls{justify-content:space-between;padding-block:4px;border-block:1px solid var(--color-border)}.account-menu__logout,.account-menu__secondary-action{justify-content:flex-start;width:100%}.admin-header{min-height:64px;padding-block:8px}.admin-header__account{display:block}.admin-header .account-menu__trigger{border-color:var(--color-border-strong);background:var(--color-header-control-bg);color:var(--color-header-control-text)}.admin-header .account-menu__panel{color:var(--color-text)}.admin-account-dialog .admin-account-panel{padding:0;border:0;background:transparent}.admin-account-dialog .admin-section-heading{padding-right:48px}.admin-account-dialog .admin-inline-form{grid-template-columns:1fr}.admin-editor>.admin-section-heading:first-child{position:sticky;z-index:15;top:64px;margin-inline:-12px;padding:12px;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 96%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.task-list{gap:0;border-block:1px solid var(--color-border)}.task-card{display:block;padding:0;border:0;border-bottom:1px solid var(--color-border);border-left:0;border-radius:0;background:transparent;box-shadow:none}.task-card:last-child{border-bottom:0}.task-card__link{align-items:center;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 24px;min-height:88px;padding:16px 12px;color:inherit;text-decoration:none}.task-card__link:hover{background:var(--color-surface-subtle)}.task-card__link:focus-visible{position:relative;z-index:1}.task-card__link--disabled{cursor:not-allowed;opacity:.55}.task-card h2{margin:0 0 3px;font-size:var(--font-size-lg)}.task-card p{line-height:1.45}.task-card__arrow{color:var(--color-text-muted);transition:transform .14s ease,color .14s ease}.task-card__link:hover .task-card__arrow{color:var(--color-primary);transform:translate(2px)}.termine-heading{align-items:center}.termine-heading .page-heading{margin-bottom:0}.termine-heading__actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.termine-period{grid-template-columns:repeat(2,minmax(5.5rem,1fr))}.calendar-subscription__trigger{gap:8px;white-space:nowrap}.calendar-subscription__trigger-label--short{display:none}.calendar-subscription{display:grid;gap:16px;padding:0;border:0;background:transparent}.calendar-subscription__heading{padding-right:48px}.calendar-subscription__options{display:grid;gap:8px}.calendar-subscription__options .button{justify-content:flex-start;width:100%;min-height:46px;text-align:left}.calendar-subscription__privacy{margin:0;padding-top:12px;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm)}.calendar-subscription__status{margin:0}.noten-editor-heading{margin-bottom:0}.noten-context-details{border-block:1px solid var(--color-border)}.noten-context-details>summary{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:46px;padding:10px 0;cursor:pointer;font-weight:750}.noten-context-details>summary small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:650}.noten-context-details[open]>summary{border-bottom:1px solid var(--color-border)}.noten-context-details__content{display:grid;gap:14px;padding-block:14px}.noten-context-details__content .noten-summary{border-top:0;padding-top:0}.noten-completion-action{align-items:center;display:flex;gap:16px;justify-content:space-between;padding-top:16px;border-top:1px solid var(--color-border)}.noten-completion-action>span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:650}.praesenz-view--matrix{gap:12px}.praesenz-view--matrix>.back-link{min-height:32px}.praesenz-view--matrix>.page-heading--with-action{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.wizard-step-heading{margin-bottom:8px}.wizard-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin:16px 0 0;padding:0;list-style:none}.wizard-progress__item{align-items:center;display:grid;gap:7px;grid-template-columns:26px minmax(0,1fr);min-height:46px;padding:8px 10px;border-block:1px solid var(--color-border);border-left:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm)}.wizard-progress__item:last-child{border-right:1px solid var(--color-border)}.wizard-progress__item>span{display:inline-grid;width:26px;height:26px;place-items:center;border:1px solid var(--color-border-strong);border-radius:50%;font-size:var(--font-size-xs);font-weight:750}.wizard-progress__item>div{display:grid;gap:2px;min-width:0}.wizard-progress__item strong,.wizard-progress__item small{overflow-wrap:anywhere}.wizard-progress__item small{font-size:var(--font-size-xs);font-weight:600}.wizard-progress__item.is-complete{color:var(--color-text)}.wizard-progress__item.is-complete>span{border-color:var(--color-success);color:var(--color-success)}.wizard-progress__item.is-current{border-color:var(--color-primary);background:var(--color-selection);color:var(--color-text)}.wizard-progress__item.is-current>span{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}@media(prefers-reduced-motion:reduce){.task-card__arrow{transition:none}}@media(max-width:900px){.admin-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;min-height:60px;padding:7px 12px}.admin-header>div:first-child{align-items:center;flex-direction:row;min-width:0}.admin-header__title{display:none}.admin-header__account{display:block}.admin-primary-nav{display:none}.admin-header .admin-navigation-trigger{display:inline-grid;width:44px;min-height:44px;place-items:center;padding:0}.admin-editor>.admin-section-heading:first-child{top:60px}}@media(max-width:640px){.form-dialog-backdrop{align-items:flex-end;padding:0}.form-dialog--compact{width:100%;height:auto;max-height:min(88dvh,760px);border-right:0;border-bottom:0;border-left:0;border-radius:8px 8px 0 0}.form-dialog__content{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.portal-header{align-items:center;flex-direction:row;min-height:60px;padding:7px 12px}.portal-header__brand{flex:1 1 auto;min-width:0}.portal-header__logo{flex-basis:132px;width:min(132px,42vw)}.portal-header__title,.account-menu__trigger-email,.account-menu__chevron{display:none}.portal-header__user{display:flex;width:auto}.account-menu__trigger{justify-content:center;width:44px;min-height:44px;padding:0}.account-menu__backdrop{background:var(--color-overlay)}.account-menu__panel{position:fixed;inset:auto 0 0;width:100%;max-height:min(88dvh,680px);padding:20px 20px calc(20px + env(safe-area-inset-bottom));border-right:0;border-bottom:0;border-left:0;border-radius:8px 8px 0 0}.termine-heading{align-items:stretch;display:grid;gap:12px}.termine-heading__actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto);justify-content:stretch}.termine-period{min-height:42px}.termine-period button{min-width:0;padding-inline:8px}.calendar-subscription__trigger{min-width:44px;padding-inline:10px}.task-card__link{min-height:80px;padding-inline:4px}.direct-planning-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding-bottom:12px}.direct-planning-heading .page-heading{margin:0}.direct-planning-heading .page-heading>p:last-child{display:none}.direct-planning-heading>.button{justify-content:center;width:auto;min-width:0;min-height:44px;padding:8px 12px}.direct-planning-heading>.button svg{margin:0}.noten-view--editor,.praesenz-view--matrix{gap:12px}.noten-editor-heading h1,.praesenz-view--matrix .page-heading h1{font-size:var(--font-size-xl)}.noten-editor-heading>div>p:last-child,.praesenz-view--matrix .page-heading>div>p:last-child{margin-bottom:0}.noten-context-details>summary{min-height:44px}.noten-context-details>summary small{max-width:48%;text-align:right}.noten-completion-action{align-items:stretch;flex-direction:column}.noten-completion-action .button{width:100%}.praesenz-view--matrix .page-heading--with-action{gap:8px}.praesenz-view--matrix .page-heading--with-action .button{min-height:42px}.praesenz-view--matrix .participant-card,.noten-participant-card{gap:10px;padding:12px}.wizard-progress{margin-top:12px}.wizard-progress__item{align-content:center;grid-template-columns:1fr;justify-items:center;min-height:68px;padding:7px 4px;text-align:center}.wizard-progress__item strong{font-size:var(--font-size-xs);line-height:1.25}}@media(max-width:390px){.calendar-subscription__trigger{gap:6px;padding-inline:8px}.calendar-subscription__trigger svg{margin:0}.calendar-subscription__trigger-label--full{display:none}.calendar-subscription__trigger-label--short{display:inline}}
