:root{--hover-surface:color-mix(in srgb, var(--surface-elevated) 86%, var(--text) 14%);--hover-border:color-mix(in srgb, var(--control-border) 65%, var(--accent) 35%);--danger:#b84044;--success:#267440;--warning:#916000;--danger-contrast:#fff;--hover-shadow:none;--control-height:46px;--control-radius:8px;--surface-radius:12px;--panel-radius:var(--surface-radius) 3px;--surface-border:color-mix(in srgb, var(--text) 16%, var(--surface-elevated));--control-focus:var(--accent);--accent-line:color-mix(in srgb, var(--accent) 48%, var(--surface-border));--accent-glow:none;--canvas-grid:transparent;--motion-fast:.16s;--motion-enter:.22s;--motion-ease:cubic-bezier(.22, 1, .36, 1);--motion-ease-symmetric:ease-in-out;--canvas-background:linear-gradient(180deg, var(--surface), transparent 32rem), linear-gradient(var(--canvas-grid) 1px, transparent 1px) 0 0 / 44px 44px, linear-gradient(90deg, var(--canvas-grid) 1px, transparent 1px) 0 0 / 44px 44px, var(--surface);--font-heading:Bahnschrift, "Segoe UI", system-ui, sans-serif;color:var(--text);background:var(--app-page-background,var(--surface));accent-color:var(--accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-tap-highlight-color:transparent;font-family:Segoe UI,system-ui,sans-serif}:root:not([data-theme=dark]){--surface-border:color-mix(in srgb, var(--text) 24%, var(--surface-elevated));--item-background:var(--surface-elevated);--item-hover-background:color-mix(in srgb, var(--accent) 6%, var(--surface-elevated))}:root[data-palette=lichtlinien]{--canvas-grid:color-mix(in srgb, var(--accent) 5%, transparent)}:root[data-palette=lichtlinien][data-theme=dark]{--accent-glow:0 0 16px color-mix(in srgb, var(--accent) 20%, transparent)}:root[data-theme=dark]{--hover-surface:color-mix(in srgb, var(--surface-elevated) 78%, var(--text) 22%);--danger:#f06c70;--success:#86ef91;--warning:#f3c969;--danger-contrast:#210708;--hover-shadow:none;color:var(--text);background:var(--app-page-background,var(--surface));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overscroll-behavior:none}html{scrollbar-gutter:stable}body{min-width:0;min-height:100vh;background:inherit;min-height:100dvh;margin:0}:where(button,button *,nav a,nav a *,summary,summary *,.ui-interactive-item,.ui-interactive-item *){-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable=true],[data-copyable],[data-copyable] *,pre,pre *,code{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}#root{background:inherit;min-width:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}table.sr-only{table-layout:fixed}button,input,select,textarea{font:inherit}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.025em;font-weight:600}button{border:1px solid color-mix(in srgb, currentColor 18%, transparent);border-radius:var(--control-radius);min-height:2.25rem;color:inherit;background:color-mix(in srgb, var(--surface-elevated) 92%, currentColor 8%);cursor:pointer;justify-content:center;align-items:center;gap:.45rem;padding:.45rem .7rem;display:inline-flex}button:hover:where(:hover>*):where(:root[data-ui-input=mouse] *):where(:not(:disabled):not([aria-disabled=true])){background:var(--hover-surface);border-color:var(--hover-border);color:inherit;box-shadow:var(--hover-shadow)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled,button[aria-disabled=true]{opacity:.55;cursor:not-allowed}input,select,textarea{min-height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);color:inherit;background:var(--control-background);padding:.45rem .6rem}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--control-focus);background-color:color-mix(in srgb, var(--surface-soft) 60%, var(--surface-elevated));box-shadow:none;outline:none}input[type=checkbox],input[type=radio]{min-height:0}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input:hover:where(:hover>*):where(:root[data-ui-input=mouse] *):not(:disabled):not(:focus),textarea:hover:where(:hover>*):where(:root[data-ui-input=mouse] *):not(:disabled):not(:focus){border-color:var(--control-focus)}.ui-textarea{resize:none;overflow-y:hidden}select{appearance:none;background-image:var(--control-chevron);cursor:pointer;background-position:right .75rem center;background-repeat:no-repeat;background-size:.875rem;padding-right:2.45rem}select:hover:where(:hover>*):where(:root[data-ui-input=mouse] *){border-color:var(--hover-border);background-color:var(--hover-surface);box-shadow:var(--hover-shadow)}select:disabled{color:color-mix(in srgb, currentColor 45%, transparent);background-color:color-mix(in srgb, var(--surface-elevated) 88%, currentColor 6%);border-color:color-mix(in srgb, currentColor 12%, transparent);box-shadow:none;cursor:not-allowed}pre{white-space:pre-wrap;margin:0;font-size:.85rem;overflow:auto}:where(button,.ui-button,input,select,textarea,summary){transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, filter var(--motion-fast) ease, opacity var(--motion-fast) ease}@keyframes ui-surface-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){:root{--motion-fast:0s;--motion-enter:0s}}@media (max-width:720px),(orientation:landscape) and (max-height:600px) and (any-pointer:coarse){input,select,textarea{font-size:1rem}*{scrollbar-width:none}::-webkit-scrollbar{width:0;height:0;display:none}}:root{--surface:#e2ece6;--surface-elevated:#fff;--text:#02332a;--muted:#3f5d50;--accent:#02332a;--accent-contrast:#fff;--control-border:#6b8b7a;--surface-soft:#d9e7de;--control-background:#f4f9f6;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2302332a%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-theme=dark]{--surface:#061d18;--surface-elevated:#02332a;--text:#effcf5;--muted:#accabd;--accent:#3fff8d;--accent-contrast:#02332a;--control-border:#658f7b;--surface-soft:#0a4335;--control-background:#05271f;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23effcf5%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=botanisch]{--surface:#dfece4;--surface-elevated:#fff;--text:#16382f;--muted:#466357;--accent:#116b4d;--accent-contrast:#fff;--control-border:#789383;--surface-soft:#d8e7de;--control-background:#f4f9f6;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2316382f%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=botanisch][data-theme=dark]{--surface:#0d231b;--surface-elevated:#142f26;--text:#f1f8f4;--muted:#acc8bc;--accent:#3fc18b;--accent-contrast:#071e16;--control-border:#37584a;--surface-soft:color-mix(in srgb, var(--surface-elevated) 88%, currentColor 12%);--control-background:#0f281f;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23f1f8f4%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=ozean]{--surface:#dfe8f2;--surface-elevated:#fff;--text:#19354c;--muted:#435f79;--accent:#23649a;--accent-contrast:#fff;--control-border:#738ca4;--surface-soft:#d6e2ef;--control-background:#f3f7fc;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2319354c%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=ozean][data-theme=dark]{--surface:#101f30;--surface-elevated:#172c40;--text:#eff6ff;--muted:#afc6dc;--accent:#78b7f0;--accent-contrast:#102538;--control-border:#3c566e;--surface-soft:#253e56;--control-background:#101f30;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23eff6ff%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=lavendel]{--surface:#e9e2f1;--surface-elevated:#fff;--text:#3b2d52;--muted:#645272;--accent:#7451a0;--accent-contrast:#fff;--control-border:#9580aa;--surface-soft:#e1d6ed;--control-background:#faf7fd;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233b2d52%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=lavendel][data-theme=dark]{--surface:#211a30;--surface-elevated:#302640;--text:#f6f0ff;--muted:#c5b5da;--accent:#c0a0ed;--accent-contrast:#2a1940;--control-border:#5c496e;--surface-soft:#443454;--control-background:#211a30;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23f6f0ff%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=terracotta]{--surface:#efe3da;--surface-elevated:#fff;--text:#4e3025;--muted:#755242;--accent:#a24d30;--accent-contrast:#fff;--control-border:#a27f6b;--surface-soft:#ead8cb;--control-background:#fdf7f2;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%234e3025%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=terracotta][data-theme=dark]{--surface:#2c1c17;--surface-elevated:#3b2922;--text:#fff3e9;--muted:#d6b7a6;--accent:#efa17d;--accent-contrast:#361b10;--control-border:#725040;--surface-soft:#50372b;--control-background:#2c1c17;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff3e9%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=graphit]{--surface:#e2e6eb;--surface-elevated:#fff;--text:#2d343e;--muted:#515c6a;--accent:#515e70;--accent-contrast:#fff;--control-border:#85909f;--surface-soft:#d8dfe7;--control-background:#f6f8fa;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232d343e%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}:root[data-palette=graphit][data-theme=dark]{--surface:#1b1e23;--surface-elevated:#272b31;--text:#f2f4f7;--muted:#b9c1cc;--accent:#c0cbdc;--accent-contrast:#212b39;--control-border:#4b5461;--surface-soft:#383f49;--control-background:#1b1e23;--control-chevron:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23f2f4f7%22%20stroke-width%3D%222.4%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E)}.skip-link{z-index:1000;color:var(--text);background:var(--surface-elevated);border:2px solid var(--accent);border-radius:8px;padding:1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.app-centered{min-height:100vh;color:var(--text);background:var(--surface);text-align:center;place-content:center;justify-items:center;gap:1rem;padding:2rem;display:grid}.app-centered p{max-width:38rem;color:var(--muted)}.app-centered h1{letter-spacing:-.035em;margin:.35rem 0 .65rem;font-weight:700}.brand-mark{aspect-ratio:480/226;flex:none;width:3.7rem;display:inline-block}.brand-mark__image{object-fit:contain;width:100%;height:100%;display:block}.brand-mark__image--bright{display:none}:root[data-theme=dark] .brand-mark__image--bright{display:block}:root[data-theme=dark] .brand-mark__image--primary{display:none}.portal-brand{width:-moz-fit-content;width:fit-content;color:var(--portal-text);align-items:center;display:inline-flex}.portal-brand__mark{object-fit:contain;flex:none;display:block}.portal-brand__copy{min-width:0;display:grid}.portal-brand__copy strong{line-height:1}.portal-brand--hero{gap:.65rem}.portal-brand--hero .portal-brand__mark{width:3.7rem}.portal-brand--hero .portal-brand__copy{gap:.16rem}.portal-brand--hero .portal-brand__copy strong{font-size:1rem;font-family:var(--font-heading);letter-spacing:-.025em;font-weight:600}.portal-brand--hero .portal-brand__copy small{color:var(--portal-muted);font-size:.7rem;font-weight:400}.portal-brand--compact{gap:.35rem}.portal-brand--compact .portal-brand__mark{width:2rem}.portal-brand--compact .portal-brand__copy strong{font-size:1rem;font-family:var(--font-heading);letter-spacing:-.025em;font-weight:600}@media (max-width:520px){.portal-brand--hero .portal-brand__mark{width:3.2rem}}.portal-page--apps .portal-content{width:min(100%,42rem)}.portal-page--apps .portal-intro{text-align:center;margin:1.75rem 0 2rem}.portal-page--apps .portal-intro h1{margin-inline:auto;font-size:clamp(1.6rem,3vw,2rem)}.portal-app-launcher{min-width:0;animation:ui-surface-enter var(--motion-enter) var(--motion-ease);gap:3rem;display:grid}.portal-app-group{min-width:0}.portal-app-group__title{border-bottom:1px solid var(--portal-border-accent);color:var(--portal-muted);margin:0 0 1.25rem;padding-bottom:.5rem;font-size:1.125rem;font-weight:600;line-height:1.35}.portal-kiosk{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:1.5rem 2rem;display:grid}.portal-app-group--partners .portal-kiosk{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-module-card{min-width:0;color:var(--portal-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:.75rem;flex-direction:column;align-items:center;gap:.65rem;padding:.375rem 0;display:flex}.portal-module-icon{border:1px solid var(--accent-line);width:6rem;height:6rem;color:var(--accent);background:var(--surface-elevated);box-shadow:inset 0 1px var(--accent-line);transition:transform var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;border-radius:20% 6.6667%;flex:none;place-items:center;display:grid}.portal-module-card:focus-visible .portal-module-icon{border-color:var(--accent);box-shadow:var(--accent-glow)}.portal-module-icon .portal-module-mark__image{width:49%;height:49%;-webkit-mask:var(--portal-module-logo) center / contain no-repeat;-webkit-mask:var(--portal-module-logo) center / contain no-repeat;mask:var(--portal-module-logo) center / contain no-repeat;background:currentColor;display:block}.portal-module-icon .portal-module-mark__fallback{width:49%;height:49%}.portal-module-card>strong{text-align:center;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:100%;font-size:.875rem;font-weight:500;line-height:1.3}.portal-module-card:is(:hover:where(:root[data-ui-input=mouse] *),:active:where(:root:not([data-ui-input=touch]) *)){color:var(--portal-text);box-shadow:none;background:0 0;border-color:#0000}.portal-module-card:focus-visible{outline:2px solid var(--portal-accent);outline-offset:3px}@media (hover:hover){.portal-module-card:hover:where(:root[data-ui-input=mouse] *) .portal-module-icon{border-color:var(--accent);box-shadow:var(--accent-glow);transform:translateY(-3px)}}.portal-module-card:active:where(:root:not([data-ui-input=touch]) *) .portal-module-icon{transform:scale(.94)}.portal-app-launcher>.portal-empty{grid-column:1/-1}@media (min-width:1101px){.portal-page--apps .portal-content{width:min(100%,62rem)}.portal-app-launcher{grid-template-columns:repeat(5,minmax(0,1fr));gap:4rem 2rem}.portal-app-group--work{grid-column:span 3}.portal-app-group--partners{grid-column:span 2;margin-inline-start:3rem}.portal-app-group--partners:first-child{margin-inline-start:0}.portal-app-group--administration,.portal-app-group--other{grid-column:1/-1}.portal-app-group--administration .portal-kiosk,.portal-app-group--other .portal-kiosk{grid-template-columns:repeat(5,minmax(0,1fr))}.portal-module-icon{width:7.5rem;height:7.5rem}.portal-module-card>strong{font-size:1rem}}@media (max-width:720px),(orientation:landscape) and (max-height:600px) and (any-pointer:coarse){.portal-page--apps .portal-content{width:min(100%,30rem);padding-inline:max(1.25rem, env(safe-area-inset-left,0px)) max(1.25rem, env(safe-area-inset-right,0px))}.portal-page--apps .portal-header{gap:.75rem}.portal-page--apps .portal-brand{min-width:0}.portal-page--apps .portal-profile-trigger{flex-shrink:0}.portal-page--apps .portal-profile-label{display:none}.portal-page--apps .portal-brand__copy small{font-size:clamp(.6rem,2.5vw,.72rem)}.portal-page--apps .portal-intro{margin:1.5rem 0 1.75rem}.portal-app-launcher{grid-template-columns:minmax(0,1fr);gap:2rem}.portal-app-group{grid-column:1/-1;margin-inline-start:0}.portal-app-group__title{margin-bottom:1rem}.portal-kiosk,.portal-app-group .portal-kiosk{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem}.portal-module-icon{aspect-ratio:1;width:min(7.5rem,100%);height:auto}.portal-module-card>strong{font-size:1rem}}@media (prefers-reduced-motion:reduce){.portal-module-icon{transition:none}}.portal-page--explorer{height:100vh;height:100dvh;min-height:0;overflow:hidden}.portal-page--explorer .portal-header{flex:none}.portal-page--explorer .portal-content{flex-direction:column;flex:auto;width:min(100%,80rem);min-height:0;display:flex}.portal-page--explorer .portal-intro{text-align:start;flex:none;margin:1.25rem 0}.portal-page--explorer .portal-intro h1{margin:0;font-size:clamp(1.9rem,3.5vw,2.5rem)}.portal-scroll-area{flex-direction:column;flex:auto;min-height:0;margin:-.25rem;display:flex}.portal-page--explorer .portal-scroll-region{scrollbar-width:none;flex:auto;min-height:0;padding:.25rem;overflow:hidden auto}.portal-page--explorer .portal-scroll-region::-webkit-scrollbar{display:none}.portal-scroll-control{flex:0 0 4rem;place-items:center;display:grid}:root.ui-dialog-open .portal-scroll-control{visibility:hidden}.portal-page--explorer .portal-footer{flex:none;width:min(100%,80rem);margin:1.5rem auto 0;padding:1rem .5rem 0;font-size:.9rem}.portal-app-tree{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;min-width:0;padding-inline:2rem;display:grid}.portal-app-tree__column{align-content:start;gap:1.5rem;min-width:0;display:grid}.portal-app-tree__group{min-width:0}.portal-app-tree .ui-content-transition--collapsible{grid-template-columns:minmax(0,1fr)}.portal-app-tree__title{color:var(--muted);font:500 1.3rem / 1.4 var(--font-heading);margin:0 0 .375rem;padding:0 0 .375rem}.portal-app-tree>.ui-feedback--empty{grid-column:1/-1}@media (max-width:720px),(orientation:landscape) and (max-height:600px) and (any-pointer:coarse){.portal-app-tree{grid-template-columns:minmax(0,1fr);gap:1.25rem;padding-inline:0}.portal-app-tree__column{gap:1.25rem}.portal-page--explorer .portal-intro{margin:1rem 0}.portal-page--explorer .portal-footer{padding-bottom:max(.75rem, env(safe-area-inset-bottom,0px));margin-top:1rem}.portal-page--explorer .portal-profile-label{display:none}}.portal-module-launcher.ui-button{border-radius:var(--control-radius);text-align:left;background:0 0;border-color:#0000;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;width:100%;min-width:0;min-height:2.75rem;padding:.375rem .5rem;display:grid;overflow:hidden}.portal-module-launcher.ui-button:hover:where(:root[data-ui-input=mouse] *){background:var(--hover-surface);border-color:#0000}.portal-module-settings.ui-button{border-radius:var(--control-radius);width:100%;min-width:0;min-height:2.75rem;color:var(--muted);background:0 0;border-color:#0000;justify-content:flex-start;align-self:stretch;padding:.55rem .75rem;font-size:.875rem;font-weight:400}.portal-module-settings.ui-button:hover:where(:root[data-ui-input=mouse] *){background:var(--hover-surface);color:var(--text);border-color:#0000}.portal-module-launcher__mark{width:1.75rem;height:1.75rem;color:var(--accent);place-items:center;display:grid}.portal-module-launcher__mark .portal-module-mark__image{width:100%;height:100%;-webkit-mask:var(--portal-module-logo) center / contain no-repeat;-webkit-mask:var(--portal-module-logo) center / contain no-repeat;mask:var(--portal-module-logo) center / contain no-repeat;background:currentColor;display:block}.portal-module-launcher__mark .portal-module-mark__fallback{width:100%;height:100%;color:inherit}.portal-module-launcher__copy{gap:.125rem;min-width:0;line-height:1.25;display:grid}.portal-module-launcher__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.125rem;font-weight:600;overflow:hidden}.portal-module-launcher__switch-icon{color:var(--muted)}@media (min-width:721px){.app-shell--sidebar-compact .app-shell__sidebar .portal-module-launcher{grid-template-columns:minmax(0,1fr);place-items:center;width:3rem;height:3rem;min-height:3rem;padding:0}.app-shell--sidebar-compact .app-shell__sidebar .portal-module-launcher__copy,.app-shell--sidebar-compact .app-shell__sidebar .portal-module-launcher__switch-icon{display:none}.app-shell--sidebar-compact .app-shell__sidebar .portal-module-settings.ui-button{justify-content:center;width:3rem;min-width:3rem;min-height:3rem;padding:0}.app-shell--sidebar-compact .app-shell__sidebar .portal-module-settings.ui-button span{display:none}}@media (max-width:720px),(orientation:landscape) and (max-height:600px) and (any-pointer:coarse){.portal-module-settings.ui-button{justify-content:center;width:2.75rem;min-width:2.75rem;padding:0}.portal-module-settings.ui-button span{display:none}.portal-module-launcher.ui-button{gap:.625rem;min-height:2.75rem;padding:.375rem .5rem}.portal-module-launcher__copy strong{font-size:.9375rem}}@media (orientation:landscape) and (max-height:600px){:root[data-mobile-landscape-side] .app-shell__sidebar .portal-module-launcher{grid-template-columns:minmax(0,1fr);place-items:center;width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0}:root[data-mobile-landscape-side] .app-shell__sidebar .portal-module-launcher__copy,:root[data-mobile-landscape-side] .app-shell__sidebar .portal-module-launcher__switch-icon,:root[data-mobile-landscape-side] .app-shell__sidebar .portal-module-settings.ui-button span{display:none}:root[data-mobile-landscape-side] .app-shell__sidebar .portal-module-settings.ui-button{place-content:center;place-items:center;width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0;line-height:1;display:grid}}.session-account{align-items:center;gap:.625rem;min-width:0;display:flex}.session-account--sidebar{border-top:1px solid var(--surface-border);width:100%;padding-top:.875rem}.session-account__identity{flex:auto;gap:.15rem;min-width:0;line-height:1.3;display:grid}.session-account__profile.ui-button{text-align:start;background:0 0;border-color:#0000;flex:auto;justify-content:flex-start;gap:.625rem;min-width:0;min-height:2.75rem;padding:.25rem}.session-account__profile.ui-button:hover:where(:root[data-ui-input=mouse] *){background:var(--hover-surface)}.session-account__identity>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-account__identity strong{color:var(--text);font-size:.8125rem;font-weight:600}.session-account__identity>span{color:var(--muted);font-size:.6875rem}.session-account__logout.ui-button{width:2.25rem;min-width:2.25rem;min-height:2.75rem;color:var(--muted);background:0 0;border-color:#0000;flex:none;padding:0}.session-account__logout.ui-button:hover:where(:root[data-ui-input=mouse] *){color:var(--text);background:var(--hover-surface)}.session-account--topbar{flex:none;position:relative}.session-account__trigger.ui-button{background:0 0;border-color:#0000;gap:.375rem;width:auto;min-width:2.75rem;min-height:2.75rem;padding:.25rem .375rem}.session-account__trigger.ui-button:is([aria-expanded=true],:hover:where(:root[data-ui-input=mouse] *)){background:var(--hover-surface)}.session-account__chevron{color:var(--muted);transition:transform var(--motion-fast) var(--motion-ease)}.session-account__trigger[aria-expanded=true] .session-account__chevron{transform:rotate(180deg)}.session-account__menu{z-index:60;border:1px solid var(--surface-border);border-radius:var(--surface-radius);background:var(--surface-elevated);width:min(17rem,100vw - 1.5rem);animation:ui-surface-enter var(--motion-enter) var(--motion-ease);padding:.375rem;position:absolute;right:0;box-shadow:0 .75rem 2rem #0000002e}.session-account__menu-identity{border-bottom:1px solid var(--surface-border);align-items:center;gap:.625rem;margin:0 .25rem .375rem;padding:.625rem .25rem .875rem;display:flex}.session-account__menu>.ui-button{background:0 0;border-color:#0000;justify-content:flex-start;width:100%;padding-inline:.75rem;font-size:.875rem;font-weight:500}@media (min-width:721px){.app-shell--sidebar-compact .app-shell__sidebar .session-account--sidebar{flex-direction:column;gap:.375rem}.app-shell--sidebar-compact .app-shell__sidebar .session-account__identity{display:none}.app-shell--sidebar-compact .app-shell__sidebar .session-account__profile.ui-button{flex:none;justify-content:center;width:2.75rem;padding:0}.app-shell--sidebar-compact .app-shell__sidebar .session-account__logout.ui-button{width:2.75rem;min-width:2.75rem}}@media (orientation:landscape) and (max-height:600px){:root[data-mobile-landscape-side] .app-shell__sidebar .session-account--sidebar{flex-direction:column;justify-content:center;gap:.125rem;padding-top:.375rem}:root[data-mobile-landscape-side] .app-shell__sidebar .session-account__identity{display:none}:root[data-mobile-landscape-side] .app-shell__sidebar .session-account__profile.ui-button{flex:none;justify-content:center;width:2.75rem;padding:0}:root[data-mobile-landscape-side] .session-account__logout.ui-button{width:2.75rem;min-width:2.75rem}}@media (prefers-reduced-motion:reduce){.session-account__chevron{transition:none}.session-account__menu{animation:none}}.portal-settings-dialog{width:min(34rem,100vw - 2rem)}.portal-settings-dialog__layout{max-height:inherit}.portal-settings-dialog__header,.portal-settings-dialog__body{padding:1rem}.portal-settings-dialog__title{align-items:center;gap:.75rem;min-width:0;display:flex}.portal-settings-dialog__title>svg{color:var(--accent);flex:none}.portal-settings-dialog__body{align-content:start;gap:1rem;display:grid}.portal-settings-dialog__body h3,.portal-settings-dialog__body p{margin:0}.portal-settings-dialog__body p{color:color-mix(in srgb, currentColor 64%, transparent);margin-top:.25rem}.portal-theme-options{border-radius:var(--control-radius);background:var(--surface);border:1px solid var(--control-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;padding:.25rem;display:grid}.portal-theme-options label{min-width:0;min-height:var(--control-height);border-radius:var(--control-radius);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.7rem;padding:.5rem;display:flex;position:relative}.portal-theme-options label:hover:where(:root[data-ui-input=mouse] *){background:var(--hover-surface)}.portal-theme-options label.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface-elevated))}.portal-theme-options label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.portal-theme-options input{opacity:0;width:1px;height:1px;min-height:0;padding:0;position:absolute}.portal-theme-options svg{color:var(--accent)}.portal-theme-options label,.portal-palette-options label{transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease;-webkit-user-select:none;user-select:none}.portal-theme-options span{gap:.2rem;min-width:0;display:grid}.portal-palette-section{gap:.65rem;display:grid}.portal-palette-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.portal-palette-options label{border:1px solid var(--surface-border);border-radius:var(--control-radius);cursor:pointer;overflow-wrap:anywhere;align-items:center;gap:.6rem;min-width:0;min-height:3.5rem;padding:.65rem .5rem;font-size:.8rem;display:flex;position:relative}.portal-palette-options label:hover:where(:root[data-ui-input=mouse] *){background:var(--hover-surface)}.portal-palette-options label.is-selected{border-color:var(--accent);background:var(--surface-soft);font-weight:600}.portal-palette-options label.is-selected .portal-palette-swatch{outline:2px solid var(--accent);outline-offset:3px}.portal-palette-options label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.portal-palette-options label:has(input:disabled){opacity:.6;cursor:wait}.portal-palette-options input{opacity:0;width:1px;height:1px;min-height:0;padding:0;position:absolute}.portal-palette-swatch{border-radius:50%;flex:0 0 28px;width:28px;height:28px}.portal-layout-option,.portal-layout-option>label{align-items:center;gap:.75rem;min-width:0;display:flex}.portal-layout-option>label{min-height:var(--control-height);cursor:pointer}@media (max-width:520px){.portal-palette-options{grid-template-columns:repeat(2,minmax(0,1fr))}}:root[data-theme-transitioning],:root[data-theme-transitioning] *,:root[data-theme-transitioning] :before,:root[data-theme-transitioning] :after{transition:none!important}:root[data-theme-transitioning]::view-transition{pointer-events:none}:root[data-theme-transitioning]::view-transition-group(root){animation:none}:root[data-theme-transitioning]::view-transition-old(root){mix-blend-mode:normal;animation:none}:root[data-theme-transitioning]::view-transition-new(root){mix-blend-mode:normal;animation:.36s cubic-bezier(.4,0,.2,1) ui-theme-reveal}@keyframes ui-theme-reveal{0%{clip-path:circle(0 at var(--theme-origin,50% 50%))}to{clip-path:circle(var(--theme-radius,150vmax) at var(--theme-origin,50% 50%))}}@media (prefers-reduced-motion:reduce){:root[data-theme-transitioning]::view-transition-new(root){animation:none}}.account-dialog{width:min(36rem,100vw - 2rem)}.account-dialog__profile,.account-dialog__password-fields{gap:1rem;min-width:0;display:grid}.account-dialog__password-fields,.account-cropper__controls{border:0;min-width:0;margin:0;padding:0}.account-dialog__section-title{align-items:center;gap:.35rem;min-width:0;display:flex}.account-dialog__section-title h3{margin:0;font-size:.95rem;font-weight:650}.account-dialog__portrait{justify-items:center;padding:.5rem 0;display:grid}.account-dialog .account-dialog__avatar{width:10rem;height:10rem;font-size:2.5rem}.account-dialog .account-dialog__avatar>svg{width:3rem;height:3rem}.account-dialog__image-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.account-dialog__identity{padding-top:.5rem}.account-dialog__provider{max-width:65ch;color:var(--muted);margin:0;line-height:1.6}.account-cropper{grid-template-columns:minmax(0,11rem) minmax(0,1fr);align-items:center;gap:1.5rem;display:grid}.account-cropper__preview{aspect-ratio:1;border:1px solid var(--control-border);background:var(--surface-soft);touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:50%;width:100%;position:relative;overflow:hidden}.account-cropper__preview:active{cursor:grabbing}.account-cropper__preview:focus-visible{outline:2px solid var(--control-focus);outline-offset:3px}.account-cropper__preview[aria-disabled=true]{cursor:default}.account-cropper__preview img{pointer-events:none;-webkit-user-drag:none;max-width:none;height:auto;display:block;position:absolute}.account-cropper__controls{gap:.65rem;display:grid}.account-cropper__controls input[type=range]{cursor:pointer;width:100%;min-width:0;min-height:1.75rem;padding:0}.account-cropper__controls input[type=range]:disabled{cursor:default}.account-cropper__controls input[type=range]:focus-visible{outline:2px solid var(--control-focus);outline-offset:2px}@media (any-pointer:coarse){.account-cropper__controls input[type=range]{min-height:44px}}@media (max-width:480px){.account-dialog{width:100%}.account-cropper{grid-template-columns:minmax(0,1fr);gap:1rem}.account-cropper__preview{justify-self:center;width:10rem}}.auth-page{background:var(--canvas-background);place-items:center;min-height:100dvh;padding:1.5rem;display:grid}.auth-panel{width:min(100%,27rem)}.auth-title{align-items:center;gap:.7rem;display:flex}.auth-title .brand-mark{width:3.7rem}.auth-title h1{margin:0;font-size:1.5rem}.auth-title .auth-back{margin-left:auto}.auth-form{gap:1rem;display:grid}.auth-form button{width:100%}.auth-qr{background:#fff;border-radius:8px;width:200px;max-width:100%;padding:.5rem}.auth-divider{border-top:1px solid var(--surface-border);padding-top:1rem}.portal-page{min-height:100vh;min-height:100dvh;color:var(--portal-text);background:var(--portal-background);flex-direction:column;padding:clamp(1rem,2.2vw,1.5rem);display:flex}.portal-header{z-index:5;border:1px solid var(--portal-border);border-radius:var(--panel-radius);background:var(--portal-card);width:100%;box-shadow:var(--portal-shadow);justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 1.25rem;display:flex;position:relative}.portal-header .portal-brand--hero .portal-brand__mark{width:4.5rem}.portal-header .portal-brand--hero .portal-brand__copy strong{font-size:1.25rem}.portal-header .portal-brand--hero .portal-brand__copy small{color:var(--portal-accent);font-size:.72rem}.portal-header-actions{border:1px solid var(--portal-border);border-radius:var(--surface-radius);background:var(--surface-elevated);gap:.2rem;width:min(20rem,100vw - 2rem);padding:.5rem;display:grid;position:absolute;right:0;overflow-y:auto;box-shadow:0 .75rem 2rem #0000002e}.portal-header-actions[hidden]{display:none}.portal-header-actions>.ui-button{background:0 0;border:0;border-radius:.65rem;justify-content:flex-start;gap:.75rem;width:100%;min-height:44px;padding:.65rem .75rem;font-weight:500}.portal-header-actions>.ui-button:hover:where(:root[data-ui-input=mouse] *){background:var(--hover-surface)}.portal-header-actions>.ui-button>svg{color:var(--muted);flex-shrink:0}.portal-profile-label{text-overflow:ellipsis;white-space:nowrap;max-width:12rem;font-size:.9rem;overflow:hidden}.portal-profile-trigger{min-width:3rem;min-height:3rem;color:var(--portal-text);background:0 0;border:0;border-radius:.75rem;justify-content:center;align-items:center;gap:.625rem;padding:.375rem .5rem .375rem .375rem;display:inline-flex}.portal-profile-trigger:not(:disabled):hover:where(:root[data-ui-input=mouse] *),.portal-profile-trigger:focus-visible{color:var(--portal-accent);background:var(--portal-secondary-hover)}.portal-profile-trigger[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.portal-profile-trigger>svg:last-child{transition:transform var(--motion-fast) var(--motion-ease)}.portal-header-actions{animation:ui-surface-enter var(--motion-enter) var(--motion-ease)}.portal-content{flex:auto;width:min(100%,70rem);margin:0 auto}.portal-scroll-region{min-width:0}.portal-intro{margin:clamp(3rem,8vh,6rem) 0 clamp(2.5rem,6vh,4rem)}.portal-intro h1{overflow-wrap:anywhere;letter-spacing:-.035em;max-width:54rem;margin:0 0 .65rem;font-size:clamp(2rem,4vw,3.1rem);font-weight:780;line-height:1.08}.portal-intro p{color:var(--portal-muted);margin:0;font-size:clamp(1rem,1.5vw,1.2rem)}.portal-footer{border-top:1px solid var(--portal-border);width:100%;color:var(--portal-muted);text-align:center;letter-spacing:.08em;margin-top:clamp(4rem,12vh,8rem);padding:1.35rem 1rem 0;font-size:.82rem}@media (max-width:900px){.portal-header{padding:.85rem 1rem}}@media (max-width:520px){.portal-profile-label{display:none}}@media (max-width:720px),(orientation:landscape) and (max-height:600px) and (any-pointer:coarse){.portal-page{padding:0}.portal-header{border:0;border-bottom:1px solid var(--portal-border);padding:calc(.75rem + env(safe-area-inset-top,0px)) max(.75rem, env(safe-area-inset-right,0px)) .75rem max(.75rem, env(safe-area-inset-left,0px));background:var(--surface);box-shadow:none;border-radius:0;position:sticky;top:0}.portal-header,.portal-footer{flex:none}.portal-content{padding-inline:max(.75rem, env(safe-area-inset-left,0px)) max(.75rem, env(safe-area-inset-right,0px))}.portal-intro{flex:none;margin:2rem 0 1.5rem;padding-inline:.75rem}.portal-header .portal-brand--hero .portal-brand__mark{width:3.7rem}.portal-header .portal-brand--hero .portal-brand__copy strong{font-size:1.15rem}.portal-footer{padding:.75rem 1rem max(.75rem, env(safe-area-inset-bottom,0px));margin-top:.75rem}}.portal-brand{text-decoration:none}.portal-content{outline:none}:root{--portal-text:var(--text);--portal-muted:var(--muted);--portal-accent:var(--accent);--portal-accent-contrast:var(--accent-contrast);--portal-background:var(--canvas-background);--portal-card:var(--surface-elevated);--portal-border:var(--surface-border);--portal-border-accent:color-mix(in srgb, var(--accent) 58%, transparent);--portal-shadow:none;--portal-secondary:color-mix(in srgb, var(--surface-elevated) 88%, transparent);--portal-secondary-hover:var(--surface-elevated)}.portal-action{--button-primary-background:var(--portal-accent);--button-primary-border:var(--portal-accent);--button-primary-color:var(--portal-accent-contrast);--button-secondary-background:var(--portal-secondary);--button-secondary-border:var(--portal-border);--button-secondary-color:var(--portal-text);--button-secondary-hover-background:var(--portal-secondary-hover);--button-secondary-hover-border:var(--portal-border-accent);border-radius:var(--control-radius);min-height:2.65rem;padding:.65rem 1rem;font-weight:700}.portal-empty{color:var(--portal-muted);text-align:center;border:1px dashed var(--portal-border);border-radius:1rem;padding:2rem}
