@keyframes svelte-cqwvc2-fsr-toast-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.feedback-fab.svelte-bfcse7{position:fixed;right:calc(env(safe-area-inset-right,0px) + 16px);bottom:calc(env(safe-area-inset-bottom,0px) + 16px);z-index:9998;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:9999px;border:1px solid var(--border, #ccc);background:var(--surface, #fff);color:var(--text, #16212a);box-shadow:0 6px 18px #0000001f;font:inherit;font-size:.95rem;cursor:pointer}.feedback-fab.svelte-bfcse7:hover{background:var(--bg, #f3f7f7)}.feedback-fab.svelte-bfcse7:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary, #0f7c80) 22%,transparent),0 6px 18px #0000001f}.fb-icon.svelte-bfcse7{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:9999px;background:var(--primary, #0f7c80);color:var(--on-primary, #fff);font-weight:700;font-size:.95rem;line-height:1}@media (max-width: 760px){.feedback-fab.svelte-bfcse7{bottom:calc(env(safe-area-inset-bottom,0px) + var(--bottom-nav-height, 56px) + 12px)}}@media (max-width: 760px){body:has(.feedback-fab){padding-bottom:calc(var(--bottom-nav-height, 56px) + env(safe-area-inset-bottom,0px) + 72px)}}body:has(dialog[open],[aria-modal=true]) .feedback-fab.svelte-bfcse7{display:none}@media (max-width: 360px){.fb-label.svelte-bfcse7{display:none}.feedback-fab.svelte-bfcse7{padding:10px}}.feedback-dialog.svelte-h1kbqf{padding:0;border:none;border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-xl, 0 8px 24px rgba(0, 0, 0, .2));max-width:560px;width:92vw;background:var(--surface, #fff);color:var(--text, #16212a)}.feedback-dialog.svelte-h1kbqf::backdrop{background:#00000073}.dialog-header.svelte-h1kbqf{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4, 16px) var(--space-5, 20px);border-bottom:1px solid var(--border, #e3e5e9)}.dialog-header.svelte-h1kbqf h2:where(.svelte-h1kbqf){margin:0;font-size:var(--fs-18, 1.125rem)}.close-button.svelte-h1kbqf{background:transparent;border:none;cursor:pointer;font-size:22px;line-height:1;color:var(--muted, #5e6675);padding:var(--space-1, 4px);border-radius:var(--radius-sm, 6px)}.close-button.svelte-h1kbqf:hover{background:var(--bg, #f3f7f7);color:var(--text, #16212a)}.dialog-body.svelte-h1kbqf{display:flex;flex-direction:column;gap:var(--space-4, 16px);padding:var(--space-5, 20px)}.dialog-body.success.svelte-h1kbqf{text-align:center;padding:var(--space-8, 32px) var(--space-5, 20px);font-size:var(--fs-18, 1.125rem)}.type-field.svelte-h1kbqf{display:flex;flex-wrap:wrap;gap:var(--space-3, 12px);border:0;padding:0;margin:0}.type-field.svelte-h1kbqf legend:where(.svelte-h1kbqf){font-size:.9rem;color:var(--muted, #5e6675);margin-bottom:var(--space-2, 8px);padding:0}.radio.svelte-h1kbqf{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:6px 10px;border:1px solid var(--border, #e3e5e9);border-radius:var(--radius-sm, 6px);cursor:pointer;font-size:.92rem}.message-field.svelte-h1kbqf,.file-field.svelte-h1kbqf{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.message-field.svelte-h1kbqf label:where(.svelte-h1kbqf),.file-field.svelte-h1kbqf label:where(.svelte-h1kbqf){font-size:.9rem;color:var(--muted, #5e6675)}textarea.svelte-h1kbqf{width:100%;min-height:100px;padding:var(--space-3, 12px);border:1px solid var(--border-strong, #7c828e);border-radius:var(--radius-sm, 6px);font:inherit;background:var(--surface, #fff);color:var(--text, #16212a);resize:vertical}textarea.svelte-h1kbqf:focus-visible,input[type=file].svelte-h1kbqf:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary, #0f7c80) 22%,transparent);border-color:var(--primary, #0f7c80)}.char-count.svelte-h1kbqf{font-size:.8rem;color:var(--muted, #5e6675);margin:0}.char-count.warn.svelte-h1kbqf{color:var(--warning, #b45309)}.char-count.err.svelte-h1kbqf{color:var(--danger, #b91c1c)}.file-info.svelte-h1kbqf,.hint.svelte-h1kbqf{font-size:.85rem;color:var(--muted, #5e6675);margin:0}.error.svelte-h1kbqf{font-size:.9rem;color:var(--danger, #b91c1c);margin:0}.actions.svelte-h1kbqf{display:flex;gap:var(--space-3, 12px);justify-content:flex-end}.beta-banner.svelte-16mcu6o{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3, 12px);padding:8px 16px;margin:0;background:var(--warning-bg, #fef3c7);border-bottom:1px solid var(--warning, #b45309);color:var(--text, #16212a);font-size:.9rem}.beta-text.svelte-16mcu6o{flex:1;min-width:0}.beta-link.svelte-16mcu6o{background:transparent;border:0;color:var(--primary, #0f7c80);font:inherit;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm, 6px);text-decoration:underline}.beta-link.svelte-16mcu6o:hover{background:var(--surface, #fff)}.beta-dismiss.svelte-16mcu6o{background:transparent;border:0;color:var(--muted, #5e6675);font-size:1.2rem;line-height:1;padding:4px 8px;cursor:pointer;border-radius:var(--radius-sm, 6px)}@media (pointer: coarse){.beta-link.svelte-16mcu6o,.beta-dismiss.svelte-16mcu6o{min-height:var(--touch-target, 44px);min-width:var(--touch-target, 44px)}}.beta-dismiss.svelte-16mcu6o:hover{background:var(--surface, #fff);color:var(--text, #16212a)}.tf-banner.svelte-1qw4dt2{margin:var(--space-2, 8px) auto;max-width:var(--content-max, 1100px);padding:var(--space-3, 12px) var(--space-4, 16px);border-radius:var(--radius-md, 8px);border:1px solid var(--warning, #b7791f);background:var(--warning-bg, #fff7e0);color:var(--text, inherit);line-height:1.5}.tf-banner-link.svelte-1qw4dt2{display:inline-flex;align-items:center;min-height:var(--touch-target, 44px);margin-left:var(--space-2, 8px);font-weight:600}.actions.svelte-1oflpt8{display:flex;flex-wrap:wrap;gap:var(--space-2, 8px);justify-content:center}.partner-rand.svelte-15gg0p1{display:none}@media (min-width: 1560px) and (hover: hover) and (pointer: fine){.partner-rand.svelte-15gg0p1{display:flex;grid-row:1;min-width:0;padding:var(--space-6) var(--space-2)}.partner-rand-links.svelte-15gg0p1{grid-column:1;justify-content:flex-end}.partner-rand-rechts.svelte-15gg0p1{grid-column:3;justify-content:flex-start}.partner-rand-innen.svelte-15gg0p1{position:sticky;top:var(--space-6);align-self:flex-start;width:min(200px,100%)}}.partner-hinweis.svelte-oskxuf{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3, 12px);max-width:var(--container-max, 1100px);margin:var(--space-3, 12px) auto 0;padding:var(--space-3, 12px) calc(var(--space-4, 16px) + 28px) var(--space-3, 12px) var(--space-4, 16px);border:1px solid var(--border);border-radius:var(--radius-md, 8px);background:var(--surface-muted, var(--surface));color:var(--text);font-size:.92rem}.ph-text.svelte-oskxuf{flex:1 1 320px;min-width:0}.ph-text.svelte-oskxuf p:where(.svelte-oskxuf){margin:0 0 var(--space-1, 4px)}.ph-titel.svelte-oskxuf{font-weight:600}.ph-aktionen.svelte-oskxuf{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2, 8px)}.ph-link.svelte-oskxuf{background:none;border:none;padding:0 var(--space-1, 4px);font:inherit;color:var(--link, inherit);text-decoration:underline;cursor:pointer;min-height:var(--touch-target, 44px)}.ph-schliessen.svelte-oskxuf{position:absolute;top:4px;right:4px;width:36px;height:36px;background:none;border:none;font-size:1.3rem;line-height:1;color:var(--muted);cursor:pointer}.ph-fehler.svelte-oskxuf{color:var(--danger, #b00020)}@media (max-width: 720px){.partner-hinweis.svelte-oskxuf{margin-left:var(--space-3, 12px);margin-right:var(--space-3, 12px)}}@media (max-width: 760px),(pointer: coarse){.ph-schliessen.svelte-oskxuf{min-height:var(--touch-target, 44px);min-width:var(--touch-target, 44px)}}.oe-fuss.svelte-c1rw0k{padding:var(--space-5, 24px) var(--space-4, 16px);border-top:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:var(--fs-14, .875rem)}.fuss-spalten.svelte-c1rw0k{display:grid;grid-template-columns:1fr;gap:var(--space-4, 16px);max-width:960px;margin:0 auto}@media (min-width: 700px){.fuss-spalten.svelte-c1rw0k{grid-template-columns:repeat(3,1fr);gap:var(--space-5, 24px)}}h2.svelte-c1rw0k{margin:0 0 var(--space-2, 8px);font-size:var(--fs-14, .875rem);font-weight:700;color:var(--text)}ul.svelte-c1rw0k{list-style:none;margin:0;padding:0}a.svelte-c1rw0k,.oe-link-knopf.svelte-c1rw0k{display:inline-flex;align-items:center;min-height:44px;color:var(--text);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}a.svelte-c1rw0k:hover{text-decoration-thickness:2px}.oe-link-knopf.svelte-c1rw0k{background:none;border:none;padding:0;font:inherit;cursor:pointer}.visually-hidden.svelte-c1rw0k{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.fuss-hinweis.svelte-c1rw0k{max-width:960px;margin:var(--space-4, 16px) auto 0;padding-top:var(--space-3, 12px);border-top:1px solid var(--border);color:var(--muted)}.beta-banner.svelte-15o3gku{padding:var(--space-1, 4px) var(--space-4, 16px);background:var(--primary-soft);color:var(--text);border-bottom:1px solid var(--border);font-size:var(--fs-14, .875rem);line-height:1.4;text-align:center;overflow-wrap:anywhere}.beta-banner.svelte-15o3gku p:where(.svelte-15o3gku){margin:0;max-width:none}.skip-link.svelte-vfjox1{position:absolute;left:-9999px}.skip-link.svelte-vfjox1:focus{left:var(--space-3, 12px);top:var(--space-3, 12px);z-index:100;background:var(--surface, #fff);padding:var(--space-2, 8px) var(--space-3, 12px)}.oe-kopf.svelte-vfjox1{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3, 12px);padding:var(--space-3, 12px) var(--space-4, 16px);border-bottom:1px solid var(--border);background:var(--surface)}.oe-kopf.svelte-vfjox1:has(.oe-navi:where(.svelte-vfjox1):not([data-bereit])){align-items:flex-start}.oe-marke.svelte-vfjox1{display:inline-flex;align-items:center;gap:var(--space-2, 8px);min-height:44px;font-weight:700;font-size:1.375rem;line-height:1.1;color:var(--text);text-decoration:none;margin-right:auto}.oe-logo.svelte-vfjox1{width:36px;height:36px;flex:none;border-radius:8px}.oe-marke.svelte-vfjox1:focus-visible{outline:2px solid var(--focus, currentColor);outline-offset:2px}.oe-navi.svelte-vfjox1{order:3;width:100%;position:relative}.oe-navi.svelte-vfjox1 ul:where(.svelte-vfjox1){display:flex;flex-wrap:wrap;gap:var(--space-1, 4px);list-style:none;margin:0;padding:0}.oe-gruppe.svelte-vfjox1{position:relative}.oe-gruppe-titel.svelte-vfjox1{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-2, 8px) 0 var(--space-3, 12px);color:var(--muted);font-weight:600}.oe-gruppe-knopf.svelte-vfjox1{display:inline-flex;align-items:center;gap:var(--space-1, 4px);min-height:44px;padding:0 var(--space-3, 12px);border:0;border-radius:var(--radius-md, 8px);background:transparent;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap}.oe-gruppe-knopf.svelte-vfjox1:hover{background:var(--surface-muted, rgba(0, 0, 0, .06))}.oe-gruppe-knopf.aktiv.svelte-vfjox1{background:var(--surface-muted, rgba(0, 0, 0, .06));font-weight:600}.oe-gruppe-knopf.svelte-vfjox1 .oe-pfeil{transition:transform .15s}.oe-gruppe.offen.svelte-vfjox1 .oe-gruppe-knopf:where(.svelte-vfjox1) .oe-pfeil{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){.oe-gruppe-knopf.svelte-vfjox1 .oe-pfeil{transition:none}}.oe-panel.svelte-vfjox1{flex-direction:column;flex-wrap:nowrap;gap:0}.oe-panel[hidden].svelte-vfjox1{display:none}.oe-gruppe.offen.svelte-vfjox1{flex:1 1 100%}.oe-panel.svelte-vfjox1 a:where(.svelte-vfjox1),.oe-panel.svelte-vfjox1 .oe-bald:where(.svelte-vfjox1){padding-left:var(--space-5, 24px);width:100%;box-sizing:border-box}.oe-navi.svelte-vfjox1 a:where(.svelte-vfjox1){display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-3, 12px);border-radius:var(--radius-md, 8px);color:var(--text);text-decoration:none;white-space:nowrap}.oe-bald.svelte-vfjox1{display:inline-flex;align-items:center;gap:var(--space-1, 4px);min-height:44px;padding:0 var(--space-3, 12px);color:var(--muted);white-space:nowrap;cursor:default}.oe-bald-marke.svelte-vfjox1{font-size:var(--fs-12, .75rem);border:1px dashed var(--border);border-radius:999px;padding:0 6px}.oe-navi.svelte-vfjox1 a[aria-current=page]:where(.svelte-vfjox1){background:var(--surface-muted, rgba(0, 0, 0, .06));font-weight:600}@media (max-width: 480px){.oe-navi.svelte-vfjox1 ul:where(.svelte-vfjox1){gap:0}.oe-navi.svelte-vfjox1>ul:where(.svelte-vfjox1)>li:where(.svelte-vfjox1)>a:where(.svelte-vfjox1),.oe-navi.svelte-vfjox1>ul:where(.svelte-vfjox1)>li:where(.svelte-vfjox1)>.oe-bald:where(.svelte-vfjox1),.oe-gruppe-knopf.svelte-vfjox1{padding-left:var(--space-2, 8px);padding-right:var(--space-2, 8px)}.oe-gruppe-titel.svelte-vfjox1{padding-left:var(--space-2, 8px)}}@media (min-width: 900px){.oe-navi.svelte-vfjox1{order:0;width:auto}.oe-gruppe.offen.svelte-vfjox1{flex:0 0 auto}.oe-navi[data-bereit].svelte-vfjox1 .oe-panel:where(.svelte-vfjox1){position:absolute;top:100%;left:0;z-index:50;min-width:12rem;padding:var(--space-1, 4px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md, 8px);box-shadow:0 6px 18px #0000001f}.oe-navi[data-bereit].svelte-vfjox1 .oe-panel:where(.svelte-vfjox1) a:where(.svelte-vfjox1),.oe-navi[data-bereit].svelte-vfjox1 .oe-panel:where(.svelte-vfjox1) .oe-bald:where(.svelte-vfjox1){padding-left:var(--space-3, 12px)}}.oe-navi.svelte-vfjox1 a:where(.svelte-vfjox1):focus-visible,.oe-gruppe-knopf.svelte-vfjox1:focus-visible{outline:2px solid var(--focus, currentColor);outline-offset:2px}.oe-inhalt.svelte-vfjox1{max-width:960px;margin:0 auto;padding:var(--space-5, 24px) var(--space-4, 16px)}.fremd-banner.svelte-1plferz{margin:var(--space-2, 8px) auto;max-width:var(--content-max, 1100px);padding:var(--space-3, 12px) var(--space-4, 16px);border-radius:var(--radius-md, 8px);border:1px solid var(--warning, #b7791f);background:var(--warning-bg, #fff7e0);color:var(--text, inherit);line-height:1.5}.fremd-banner-button.svelte-1plferz{display:inline-flex;align-items:center;min-height:var(--touch-target, 44px);margin-left:var(--space-2, 8px);font-weight:600;background:none;border:none;color:var(--link, inherit);text-decoration:underline;cursor:pointer;padding:0 var(--space-1, 4px)}:root{--bg: #f3f7f7;--surface: #ffffff;--surface-2: #f8fbfb;--text: #16212a;--muted: #4a5560;--border: #d9e2e3;--border-strong: #6b7a80;--primary: #0f7c80;--primary-dark: #0b6a6e;--primary-soft: #e3f1f1;--on-primary: #ffffff;--akzent-stellen: #005a70;--akzent-stellen-soft: #e4f2f5;--akzent-stellen-text: #005a70;--akzent-studien: #6841a5;--akzent-studien-soft: #f0eafb;--akzent-studien-text: #57338f;--akzent-mensa: #8a3b00;--akzent-mensa-soft: #fff0e3;--akzent-mensa-text: #783300;--akzent-termine: #245c2a;--akzent-termine-soft: #eaf5e9;--akzent-termine-text: #245c2a;--akzent-naehe: #9d174d;--akzent-naehe-soft: #fce7f3;--akzent-naehe-text: #831843;--success: #166534;--success-bg: #dcfce7;--warning: #b45309;--warning-bg: #fef3c7;--info: #1d4ed8;--info-bg: #dbeafe;--danger: #b91c1c;--danger-bg: #fee2e2;--neutral: #5b6473;--neutral-bg: #eef0f3;--answered: var(--success);--answered-bg: var(--success-bg);--open: var(--warning);--open-bg: var(--warning-bg);--claimed: var(--info);--claimed-bg: var(--info-bg);--overdue: var(--danger);--overdue-bg: var(--danger-bg);--tag: #6d28d9;--tag-bg: #ede9fe;--error: var(--danger);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-xs: 4px;--radius-sm: 6px;--radius: 9px;--radius-md: 10px;--radius-lg: 12px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(31, 36, 48, .04);--shadow-md: 0 4px 14px rgba(31, 36, 48, .08);--shadow-lg: 0 8px 24px rgba(31, 36, 48, .12);--shadow-xl: 0 24px 48px rgba(0, 0, 0, .25);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", "Menlo", "Consolas", monospace;--fs-12: .75rem;--fs-13: .8125rem;--fs-14: .875rem;--fs-15: .9375rem;--fs-16: 1rem;--fs-18: 1.125rem;--fs-20: 1.25rem;--fs-24: 1.5rem;--fs-30: 1.875rem;--fs-36: 2.25rem;--lh-tight: 1.25;--lh-base: 1.5;--max-text-width: 70ch;--container-max: 1180px;--z-nav: 50;--z-dropdown: 100;--z-toast: 9998;--z-loading: 9999;--z-skiplink: 1000;--ease: ease;--dur-fast: .14s;--dur-base: .2s;--dur-slow: .32s;--touch-target: 44px;--bottom-nav-height: 56px;--hl-bg: #fde68a;--hl-text: #1f2937;--hl-ring: #b45309}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--hl-bg: #6b4f0a;--hl-text: #fff7e0;--hl-ring: #fbbf24;--bg: #0e1b1d;--surface: #142629;--surface-2: #112224;--text: #e6eeee;--muted: #9fb0b2;--border: #26403f;--border-strong: #5f7a7c;--primary: #5cc4c7;--primary-dark: #82d6d8;--primary-soft: #17363a;--on-primary: #0e1b1d;--akzent-stellen: #72d9f0;--akzent-stellen-soft: #17383e;--akzent-stellen-text: #9be9f8;--akzent-studien: #c3a0ff;--akzent-studien-soft: #302546;--akzent-studien-text: #d1b8ff;--akzent-mensa: #ffb37a;--akzent-mensa-soft: #402b1e;--akzent-mensa-text: #ffc394;--akzent-termine: #9fe3a8;--akzent-termine-soft: #1d3825;--akzent-termine-text: #b3edba;--akzent-naehe: #fb7185;--akzent-naehe-soft: #4a1d2d;--akzent-naehe-text: #fecdd3;--success: #4ade80;--success-bg: #113321;--warning: #fbbf24;--warning-bg: #3a2a08;--info: #93c5fd;--info-bg: #122447;--danger: #fca5a5;--danger-bg: #3a1414;--neutral: #c8ccd4;--neutral-bg: #2a2e37;--answered-bg: var(--success-bg);--open-bg: var(--warning-bg);--claimed-bg: var(--info-bg);--overdue-bg: var(--danger-bg);--tag: #c4b5fd;--tag-bg: #2c1f47;--error: var(--danger);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45);--shadow-md: 0 4px 14px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-xl: 0 24px 48px rgba(0, 0, 0, .7)}}:root[data-theme=dark]{--hl-bg: #6b4f0a;--hl-text: #fff7e0;--hl-ring: #fbbf24;--bg: #0e1b1d;--surface: #142629;--surface-2: #112224;--text: #e6eeee;--muted: #9fb0b2;--border: #26403f;--border-strong: #5f7a7c;--primary: #5cc4c7;--primary-dark: #82d6d8;--primary-soft: #17363a;--on-primary: #0e1b1d;--akzent-stellen: #72d9f0;--akzent-stellen-soft: #17383e;--akzent-stellen-text: #9be9f8;--akzent-studien: #c3a0ff;--akzent-studien-soft: #302546;--akzent-studien-text: #d1b8ff;--akzent-mensa: #ffb37a;--akzent-mensa-soft: #402b1e;--akzent-mensa-text: #ffc394;--akzent-termine: #9fe3a8;--akzent-termine-soft: #1d3825;--akzent-termine-text: #b3edba;--akzent-naehe: #fb7185;--akzent-naehe-soft: #4a1d2d;--akzent-naehe-text: #fecdd3;--success: #4ade80;--success-bg: #113321;--warning: #fbbf24;--warning-bg: #3a2a08;--info: #93c5fd;--info-bg: #122447;--danger: #fca5a5;--danger-bg: #3a1414;--neutral: #c8ccd4;--neutral-bg: #2a2e37;--answered-bg: var(--success-bg);--open-bg: var(--warning-bg);--claimed-bg: var(--info-bg);--overdue-bg: var(--danger-bg);--tag: #c4b5fd;--tag-bg: #2c1f47;--error: var(--danger);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45);--shadow-md: 0 4px 14px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-xl: 0 24px 48px rgba(0, 0, 0, .7)}:root[data-theme=light]{--hl-bg: #fde68a;--hl-text: #1f2937;--hl-ring: #b45309;--bg: #f3f7f7;--surface: #ffffff;--surface-2: #f8fbfb;--text: #16212a;--muted: #4a5560;--border: #d9e2e3;--border-strong: #6b7a80;--primary: #0f7c80;--primary-dark: #0b6a6e;--primary-soft: #e3f1f1;--on-primary: #ffffff;--akzent-stellen: #005a70;--akzent-stellen-soft: #e4f2f5;--akzent-stellen-text: #005a70;--akzent-studien: #6841a5;--akzent-studien-soft: #f0eafb;--akzent-studien-text: #57338f;--akzent-mensa: #8a3b00;--akzent-mensa-soft: #fff0e3;--akzent-mensa-text: #783300;--akzent-termine: #245c2a;--akzent-termine-soft: #eaf5e9;--akzent-termine-text: #245c2a;--akzent-naehe: #9d174d;--akzent-naehe-soft: #fce7f3;--akzent-naehe-text: #831843;--success: #166534;--success-bg: #dcfce7;--warning: #b45309;--warning-bg: #fef3c7;--info: #1d4ed8;--info-bg: #dbeafe;--danger: #b91c1c;--danger-bg: #fee2e2;--neutral: #5b6473;--neutral-bg: #eef0f3;--tag: #6d28d9;--tag-bg: #ede9fe;--error: var(--danger)}*{box-sizing:border-box}html{font-family:var(--font-sans);font-size:var(--fs-16);line-height:var(--lh-base);-webkit-text-size-adjust:100%;color-scheme:light dark}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[hidden]{display:none!important}.skip-link{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;z-index:var(--z-skiplink)}.skip-link:focus{position:fixed;left:var(--space-4);top:var(--space-4);width:auto;height:auto;padding:var(--space-3) var(--space-5);background:var(--primary);color:var(--on-primary);border-radius:var(--radius);font-weight:600;text-decoration:none;box-shadow:var(--shadow-md)}mark.src-hl{background:var(--hl-bg);color:var(--hl-text);border-radius:2px;box-shadow:0 0 0 1px var(--hl-ring);padding:0 1px}@media (forced-colors: active){mark.src-hl{background:Mark;color:MarkText}}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}h1,h2,h3,h4,h5,h6{color:var(--text);line-height:var(--lh-tight);margin:0 0 var(--space-3)}h1{font-size:clamp(1.5rem,4vw,var(--fs-30));margin-top:0}h2{font-size:var(--fs-20);margin-top:0}h3{font-size:var(--fs-18);margin-top:0}h4{font-size:var(--fs-16);margin-top:0}p{margin:0 0 var(--space-3);max-width:var(--max-text-width)}small{font-size:var(--fs-13)}code,pre{font-family:var(--font-mono)}.muted{color:var(--muted)}.error{color:var(--danger);font-weight:500}.success{color:var(--success);font-weight:500}::selection{background:var(--primary-soft);color:var(--primary-dark)}.container,.main-content{max-width:var(--container-max);margin:0 auto;padding:var(--space-8) var(--space-5)}body.is-embedded .container{padding:var(--space-5)}.flex-row{display:flex;align-items:center;gap:var(--space-3)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.stack-sm{display:flex;flex-direction:column;gap:var(--space-2)}.stack-lg{display:flex;flex-direction:column;gap:var(--space-6)}.cluster{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.divider{height:1px;background:var(--border);border:0;margin:var(--space-6) 0}.spacer-y{height:var(--space-6)}a{color:var(--primary);text-decoration:underline;text-underline-offset:2px;transition:color var(--dur-fast) var(--ease)}a:hover{color:var(--primary-dark)}.link{color:var(--primary);text-decoration:underline;text-underline-offset:2px;background:none;border:0;padding:0;font:inherit;cursor:pointer}.link:hover{color:var(--primary-dark)}.button,button.button,a.button,.primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);background:var(--primary);color:var(--on-primary);border:1px solid var(--primary);padding:var(--space-2) var(--space-5);border-radius:var(--radius);font-size:var(--fs-15);font-weight:600;cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.button:hover,.primary:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:var(--on-primary)}.button:active,.primary:active{transform:translateY(1px)}.button:focus-visible,.primary:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent)}.button:disabled,.primary:disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.button-small,.small{padding:var(--space-1) var(--space-3);font-size:var(--fs-13);min-height:36px}.button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);background:var(--surface);color:var(--text);border:1px solid var(--border);padding:var(--space-2) var(--space-5);border-radius:var(--radius);font-size:var(--fs-15);font-weight:500;cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.button-secondary:hover{background:var(--bg);color:var(--text);border-color:var(--muted)}.button-secondary:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.button-secondary:disabled{opacity:.55;cursor:not-allowed}.button-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);background:transparent;color:var(--text);border:1px solid transparent;padding:var(--space-2) var(--space-4);border-radius:var(--radius);font-size:var(--fs-15);font-weight:500;cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.button-ghost:hover{background:var(--bg);color:var(--primary)}.button-ghost:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.button-ghost:disabled{opacity:.55;cursor:not-allowed}.button-danger,.danger{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);background:var(--danger);color:var(--surface);border:1px solid var(--danger);padding:var(--space-2) var(--space-5);border-radius:var(--radius);font-size:var(--fs-15);font-weight:600;cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.button-danger:hover,.danger:hover{background:color-mix(in srgb,var(--danger) 70%,var(--text));border-color:color-mix(in srgb,var(--danger) 70%,var(--text))}.button-danger:focus-visible,.danger:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 28%,transparent)}.button-danger:disabled,.danger:disabled{opacity:.55;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.field-label{font-size:var(--fs-14);color:var(--text);font-weight:500}.field-help{font-size:var(--fs-13);color:var(--muted)}.field-error{font-size:var(--fs-13);color:var(--danger);font-weight:500}.field-error:before{content:"";display:inline-block;width:1em;height:1em;margin-right:4px;vertical-align:-.125em;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9v4' /%3E %3Cpath d='M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0' /%3E %3Cpath d='M12 16h.01' /%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9v4' /%3E %3Cpath d='M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0' /%3E %3Cpath d='M12 16h.01' /%3E%3C/svg%3E") center / contain no-repeat}input,textarea,select{background:var(--surface);color:var(--text);font-family:inherit}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select{border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-sm);font:inherit;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);width:100%}input:not([type=checkbox]):not([type=radio]):not([type=file]):hover,textarea:hover,select:hover{border-color:var(--text)}input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent);outline:none}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true],.input-error input,.input-error textarea,.input-error select{border-color:var(--danger)}input[aria-invalid=true]:focus,textarea[aria-invalid=true]:focus,select[aria-invalid=true]:focus,.input-error input:focus,.input-error textarea:focus,.input-error select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 28%,transparent)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%230f7c80' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8'%3E%3Cpath d='m3 6 5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:40px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%235cc4c7' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8'%3E%3Cpath d='m3 6 5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px}}:root[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%235cc4c7' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8'%3E%3Cpath d='m3 6 5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px}textarea{min-height:calc(var(--touch-target) * 2.5);resize:vertical}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;flex:0 0 19px;height:19px;margin:0;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);width:19px}input[type=checkbox]:hover{border-color:var(--primary)}input[type=checkbox]:checked{background-color:var(--primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m3.1 8.2 3 3 6.8-6.7' fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.1'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;border-color:var(--primary)}input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent);outline:none}.table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-size:var(--fs-14)}.table th,.table td{text-align:left;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border)}.table th{color:var(--muted);font-weight:600;font-size:var(--fs-13)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--surface-2)}.stats-table{width:100%;border-collapse:collapse;margin-top:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.stats-table th,.stats-table td{text-align:left;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border)}.stats-table th{color:var(--muted);font-weight:600;font-size:var(--fs-13)}.stats-table tr:last-child td{border-bottom:none}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);margin-top:var(--space-5)}.card{display:flex;flex-direction:column;gap:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);text-decoration:none;color:var(--text);transition:box-shadow var(--dur-base) var(--ease),transform var(--dur-base) var(--ease),border-color var(--dur-base) var(--ease)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.card:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent)}.card-icon{font-size:1.6rem;line-height:1}.card-title{font-weight:600}.card-desc{font-size:var(--fs-13);color:var(--muted)}.ui-card{display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5)}.badge{display:inline-flex;align-items:center;gap:4px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-13);font-weight:600;white-space:nowrap;line-height:1.3}.badge-answered{background:var(--success-bg);color:var(--success)}.badge-open{background:var(--warning-bg);color:var(--warning)}.badge-claimed{background:var(--info-bg);color:var(--info)}.badge-overdue{background:var(--danger-bg);color:var(--danger)}.badge-tag{background:var(--tag-bg);color:var(--tag);margin-left:6px;font-size:.7rem;vertical-align:middle}.badge-rating{color:var(--primary-dark);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 30%,transparent)}.badge-neutral{background:var(--neutral-bg);color:var(--neutral)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge--vegan{background:var(--success-bg);color:var(--success);border-radius:var(--radius-pill);padding:2px 8px;font-size:var(--fs-12);font-weight:600}.badge--vegetarian{background:var(--info-bg);color:var(--info);border-radius:var(--radius-pill);padding:2px 8px;font-size:var(--fs-12);font-weight:600}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid transparent;background:var(--surface-2);color:var(--text);font-size:var(--fs-14)}.alert-icon{flex-shrink:0;line-height:1.5}.alert-title{font-weight:600;margin:0 0 var(--space-1)}.alert-body{margin:0}.alert-info{background:var(--info-bg);color:var(--info);border-color:color-mix(in srgb,var(--info) 30%,transparent)}.alert-success{background:var(--success-bg);color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,transparent)}.alert-warning{background:var(--warning-bg);color:var(--warning);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.alert-danger{background:var(--danger-bg);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-5);border-bottom:1px solid var(--border);overflow-x:auto}.tab{padding:var(--space-2) var(--space-3);border:none;background:transparent;cursor:pointer;border-bottom:2px solid transparent;color:var(--muted);font:inherit;font-weight:600;min-height:var(--touch-target);transition:color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.tab:hover{color:var(--text)}.tab[aria-selected=true]{border-bottom-color:var(--primary);color:var(--primary)}.tab:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent);border-radius:var(--radius-sm)}.skeleton{display:block;background:linear-gradient(90deg,var(--surface-2) 0%,color-mix(in srgb,var(--border) 60%,var(--surface-2)) 50%,var(--surface-2) 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeleton-shimmer 1.4s var(--ease) infinite}.skeleton-text{height:.9em;margin-bottom:var(--space-2)}.skeleton-heading{height:1.4em;width:60%;margin-bottom:var(--space-3)}.skeleton-block{height:120px;border-radius:var(--radius)}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:var(--surface);border-bottom:1px solid var(--border)}.brand{align-items:center;display:inline-flex;gap:var(--space-2);font-weight:700;font-size:1.1rem;color:var(--primary);text-decoration:none}.brand-logo{border-radius:var(--radius-pill);height:34px;object-fit:cover;width:34px}.nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.nav-links a{color:var(--text);text-decoration:none;font-size:var(--fs-15)}.nav-links a:hover{color:var(--primary)}.nav-links a[aria-current=page]{color:var(--primary);font-weight:600}.nav-divider{width:1px;height:18px;background:var(--border)}.nav-user{color:var(--muted);font-size:var(--fs-14)}.site-footer{margin-top:var(--space-12);padding:var(--space-6) var(--space-5);text-align:center;color:var(--muted);font-size:var(--fs-13)}.footer-rechtliches{margin-bottom:var(--space-2)}.footer-rechtliches a{color:inherit;text-decoration:underline}.theme-toggle{background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-1) var(--space-2);font-size:1rem;cursor:pointer;line-height:1;min-height:36px;min-width:36px;transition:background var(--dur-fast) var(--ease)}.theme-toggle:hover{background:var(--bg)}.mail-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-5)}.mail-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--open);border-radius:var(--radius-md);padding:var(--space-5) var(--space-5)}.mail-card.is-answered{border-left-color:var(--answered)}.mail-card.is-overdue{border-left-color:var(--overdue)}.mail-card.is-selected{border-left-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.mail-card:focus{outline:2px solid var(--primary);outline-offset:2px}.mail-main{min-width:240px;flex:1}.mail-subject{margin:0;font-weight:600;font-size:1.05rem}.mail-subject a{color:inherit;text-decoration:none}.mail-subject a:hover{text-decoration:underline}.mail-meta{margin:var(--space-1) 0 0;font-size:var(--fs-13);color:var(--muted)}.mail-status{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);flex-shrink:0}.mail-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2)}.mail-layout{display:flex;align-items:flex-start;gap:var(--space-6)}.mail-list-pane{flex:1 1 420px;min-width:320px;max-width:480px}.mail-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.mail-list-header h1{margin-bottom:var(--space-1)}.mail-detail-pane{flex:2 1 500px;position:sticky;top:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.mail-detail-header{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:var(--space-5) var(--space-6)}.mail-detail-header h1{font-size:clamp(1.35rem,3vw,1.85rem);line-height:1.25;margin:var(--space-1) 0 var(--space-3);overflow-wrap:anywhere}.mail-detail-kicker{color:var(--primary);font-size:var(--fs-13);font-weight:750;letter-spacing:.08em;margin:0;text-transform:uppercase}.mail-sender{color:var(--muted);margin:0;overflow-wrap:anywhere}.mail-sender strong{color:var(--text);font-weight:600}.mail-body{white-space:pre-wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);margin-top:var(--space-3);line-height:1.6;max-width:760px}.filter-form{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-4) 0}.filter-form input[type=search]{flex:1;min-width:180px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap}.pagination .page-info{color:var(--muted);font-size:var(--fs-14)}.quota-bar{height:6px;max-width:280px;background:var(--border);border-radius:var(--radius-xs);overflow:hidden;margin:var(--space-1) 0 var(--space-3)}.quota-bar-fill{height:100%;background:var(--primary);transition:width var(--dur-base) var(--ease)}.quota-bar-fill.is-warning{background:var(--open)}.quota-bar-fill.is-critical{background:var(--overdue)}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-8);max-width:360px;margin:var(--space-10) auto;box-shadow:var(--shadow-md)}.auth-card form{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.auth-card label{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--fs-14);color:var(--muted)}.auth-card label.field-label{display:block;color:var(--text)}.auth-card-wide{max-width:480px}.welcome-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.password-field{position:relative;display:flex}.password-field input{flex:1;padding-right:40px}.password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.05rem;line-height:1;padding:var(--space-2)}.stat-cards{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:var(--space-5) 0}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:3px;padding:var(--space-4)}.stat-card strong{font-size:1.75rem;line-height:1.1}.stat-label{color:var(--muted);font-size:var(--fs-13);font-weight:600}.stat-card small{color:var(--muted)}.stat-card-good{border-top:4px solid var(--success)}.stat-card-open{border-top:4px solid var(--warning)}.toast-container{position:fixed;bottom:var(--space-4);right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast)}.toast{background:var(--text);color:var(--bg);padding:var(--space-2) var(--space-4);border-radius:var(--radius);font-size:var(--fs-13);box-shadow:var(--shadow-lg)}html.is-loading:before{content:"";position:fixed;top:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,transparent,var(--primary),transparent);background-size:50% 100%;z-index:var(--z-loading);animation:loading-bar 1s ease-in-out infinite}@keyframes loading-bar{0%{background-position:-50% 0}to{background-position:150% 0}}.page{display:flex;flex-direction:column;gap:var(--space-4)}.subtitle{margin-top:0;color:var(--muted);font-size:var(--fs-16)}.toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;padding:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.breadcrumb{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center;font-size:var(--fs-14)}.crumb{color:var(--muted);text-decoration:none}.crumb:hover{color:var(--primary)}.sep{color:var(--muted);padding:0 var(--space-1)}.mine-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-14)}.upload-box{background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius);padding:var(--space-3)}.upload-form{display:flex;flex-direction:column;gap:var(--space-3)}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--surface-2)}.folder-list,.file-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.folder-row{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--text)}.folder-row:hover{background:var(--surface-2)}.folder-icon{font-size:1.2rem}.folder-name{font-weight:500}.file-row{display:grid;grid-template-columns:1fr auto auto auto auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.size,.uploader,.date{color:var(--muted);font-size:var(--fs-13)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:var(--z-dropdown);padding:var(--space-4)}.dialog{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-5);max-width:480px;width:100%;box-shadow:var(--shadow-xl)}.dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.bulk-bar{display:flex;gap:var(--space-2);align-items:center;background:var(--info-bg);border:1px solid color-mix(in srgb,var(--info) 30%,transparent);border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin-top:var(--space-3)}.rejected{background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);color:var(--danger);border-radius:var(--radius);padding:var(--space-3);font-size:var(--fs-14)}.controls{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin:var(--space-4) 0}.day-toggle{display:flex;flex-wrap:wrap;gap:var(--space-2)}.canteen-select{min-width:220px}.date{color:var(--muted);font-size:var(--fs-14)}.closed{background:var(--warning-bg);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 30%,transparent);border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0}.meal-groups{display:flex;flex-direction:column;gap:var(--space-5)}.meal-group{display:flex;flex-direction:column;gap:var(--space-3)}.meal-group-heading{margin:0;font-size:var(--fs-18)}.meal-group-count{color:var(--muted);font-weight:400;margin-left:var(--space-1)}.meal-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.meal{display:flex;flex-direction:column;gap:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.meal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.meal-name{font-weight:600}.meal-badges{display:flex;gap:var(--space-1)}.meal-location,.notes{margin:0;color:var(--muted);font-size:var(--fs-13)}.prices{margin:0;font-size:var(--fs-14)}.error-page{max-width:640px;margin:var(--space-12) auto;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2)}.error-page h1{color:var(--primary);font-size:1.75rem;margin:0 0 var(--space-2)}.error-page .status{color:var(--muted);font-size:var(--fs-14);margin:0 0 var(--space-6)}.error-page .status code{background:var(--surface);padding:2px 6px;border-radius:var(--radius-xs);font-family:var(--font-mono)}.error-page .back{margin-top:var(--space-8);border-top:1px solid var(--border);padding-top:var(--space-4)}.error-page .cta{display:inline-block;background:var(--primary);color:var(--on-primary);padding:var(--space-2) var(--space-4);border-radius:var(--radius);text-decoration:none;font-weight:600}.error-page .cta:hover{background:var(--primary-dark)}@media (max-width: 920px){.mail-layout{flex-direction:column}.mail-list-pane,.mail-detail-pane{max-width:none;width:100%}.mail-detail-pane{position:static}.stats-grid{grid-template-columns:1fr}}@media (max-width: 760px){.container,.main-content{padding:var(--space-5) var(--space-4)}.auth-card{margin:var(--space-6) auto;padding:var(--space-5)}.stat-cards{grid-template-columns:1fr}}@media (max-width: 640px){.topbar{align-items:flex-start;padding:var(--space-3) var(--space-4)}.brand{padding:var(--space-1) 0}.nav-links{gap:var(--space-2);width:100%}.nav-links a{min-height:36px;padding:7px 2px}.nav-user{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.container,.main-content{padding:var(--space-5) var(--space-4)}.mail-list-header{align-items:stretch;flex-direction:column}.mail-card{align-items:stretch;gap:var(--space-3);padding:var(--space-4)}.mail-main{min-width:0}.mail-status{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.filter-form>input,.filter-form>select{flex:1 1 145px;min-width:0}.filter-form label{display:flex;flex:1 1 145px;flex-direction:column;font-size:var(--fs-13);gap:3px}.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:var(--space-3)}.folder-row,.file-row{grid-template-columns:1fr auto;grid-template-areas:"name actions" "meta meta"}.folder-name,.file-row>a{grid-area:name}.folder-row>:nth-child(3),.file-row>:nth-child(n+2):nth-last-child(-n+2){grid-area:actions}.size,.uploader,.date{grid-area:meta}}@media (max-width: 760px),(pointer: coarse){.button-small,button.small,a.small,.chip{min-height:var(--touch-target)}input[type=checkbox]{flex-basis:22px;height:22px;width:22px}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch-target)}}@media (max-width: 760px){html,body{overflow-x:clip}.main-content{min-width:0;overflow-wrap:anywhere}.main-content img,.main-content video,.main-content iframe{max-width:100%;height:auto}.main-content pre{max-width:100%;overflow-x:auto}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.skeleton{animation:none;background:var(--surface-2)}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-xs)}.chip{display:inline-flex;align-items:center;gap:var(--space-1);min-height:32px;padding:var(--space-1) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font-size:var(--fs-13);font-weight:500;line-height:1.3;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.chip:hover{background:var(--bg);border-color:var(--muted)}.chip[aria-pressed=true]{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-dark)}@media (max-width: 760px),(pointer: coarse){.chip{min-height:var(--touch-target)}.theme-toggle{min-height:var(--touch-target);min-width:var(--touch-target)}}.chip:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent)}.chip[aria-disabled=true]{opacity:.55;cursor:not-allowed}.chip-group{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-bar{display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}.filter-bar-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.filter-bar-search{flex:1 1 200px;min-width:0}.filter-bar-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.filter-bar-actions{display:flex;gap:var(--space-2);align-items:center;margin-left:auto}.filter-bar-toggle{display:inline-flex;align-items:center;gap:var(--space-2);background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:var(--space-2) var(--space-3);font:inherit;font-weight:500;min-height:36px;cursor:pointer}.filter-bar-toggle:hover{background:var(--bg)}@media (max-width: 760px),(pointer: coarse){.filter-bar-toggle{min-height:var(--touch-target)}}.filter-bar-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.filter-bar-badge{background:var(--primary);color:var(--on-primary);border-radius:var(--radius-pill);padding:0 var(--space-2);font-size:var(--fs-12);font-weight:600;line-height:1.6;min-width:18px;text-align:center}.filter-bar-count{color:var(--muted);font-size:var(--fs-13);margin-left:var(--space-2)}.list-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);min-height:var(--touch-target)}.list-item.is-link{text-decoration:none;color:inherit;cursor:pointer}.list-item.is-link:hover{background:var(--surface-2);border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.list-item.is-link:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.list-item-icon{font-size:1.25rem;line-height:1;color:var(--muted)}.list-item-avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-dark);font-size:var(--fs-13);font-weight:600;flex-shrink:0}.list-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.list-item-title{font-weight:600;color:var(--text);overflow-wrap:anywhere}.list-item-subtitle{font-size:var(--fs-13);color:var(--muted);overflow-wrap:anywhere}.list-item-meta{display:flex;align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--fs-13);white-space:nowrap}.list-item-badges{display:flex;gap:var(--space-1);flex-wrap:wrap}.list-item-actions{display:flex;gap:var(--space-2);align-items:center;flex-shrink:0}.action-menu{position:relative;display:inline-block}.action-menu-trigger{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;min-width:36px;min-height:36px;padding:0 var(--space-2);font-size:1.1rem;line-height:1}.action-menu-trigger:hover{background:var(--bg);color:var(--text);border-color:var(--border)}.action-menu-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.action-menu[aria-expanded=true]>.action-menu-trigger{background:var(--bg);color:var(--text);border-color:var(--border)}.action-menu-panel{position:absolute;top:calc(100% + 4px);right:0;z-index:var(--z-dropdown);min-width:180px;display:flex;flex-direction:column;padding:var(--space-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.action-menu-panel button,.action-menu-panel a{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:0;background:transparent;border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:var(--fs-14);text-align:left;text-decoration:none;cursor:pointer;min-height:36px}.action-menu-panel button:hover,.action-menu-panel a:hover{background:var(--bg);color:var(--primary)}.action-menu-panel button:focus-visible,.action-menu-panel a:focus-visible{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 28%,transparent)}.action-menu-panel .action-menu-danger{color:var(--danger);border-top:1px solid var(--border);border-radius:0 0 var(--radius-sm) var(--radius-sm);margin-top:var(--space-1)}.action-menu-panel .action-menu-danger:hover{background:var(--danger-bg);color:var(--danger)}.confirm-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:var(--z-dropdown);padding:var(--space-4)}.confirm-dialog{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-5);max-width:480px;width:100%;box-shadow:var(--shadow-xl);border:1px solid var(--border)}.confirm-dialog-title{margin:0 0 var(--space-2);font-size:var(--fs-18);color:var(--text)}.confirm-dialog.is-danger .confirm-dialog-title{color:var(--danger)}.confirm-dialog-body{color:var(--text);margin:0 0 var(--space-4);font-size:var(--fs-14)}.confirm-dialog-body :global(p:last-child){margin-bottom:0}.confirm-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.file-drop{display:flex;flex-direction:column;gap:var(--space-3)}.file-drop-target{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6);background:var(--surface-2);border:2px dashed var(--border);border-radius:var(--radius-lg);color:var(--muted);text-align:center;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.file-drop-target:hover,.file-drop.is-dragover .file-drop-target{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-dark)}.file-drop-target:focus-within{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.file-drop-icon{font-size:2rem;line-height:1}.file-drop-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-drop-hint{font-size:var(--fs-13)}.file-drop-list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;margin:0;padding:0}.file-drop-row{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.file-drop-row.is-error{border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.file-drop-row-name{font-weight:500;overflow-wrap:anywhere}.file-drop-row-size{color:var(--muted);font-size:var(--fs-13)}.file-drop-row-remove{background:transparent;border:0;color:var(--muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);min-height:32px;min-width:32px}.file-drop-row-remove:hover{background:var(--bg);color:var(--danger)}.file-drop-row-remove:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.stat-tile{display:flex;flex-direction:column;gap:var(--space-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);text-decoration:none;color:inherit;transition:box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.stat-tile.is-link:hover{box-shadow:var(--shadow-sm);border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.stat-tile.is-link:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.stat-tile-label{font-size:var(--fs-13);font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.stat-tile-value{font-size:1.75rem;font-weight:700;line-height:1.1;color:var(--text)}.stat-tile-hint{font-size:var(--fs-13);color:var(--muted)}.stat-tile-trend{font-size:var(--fs-13);font-weight:600}.stat-tile-trend.is-up{color:var(--success)}.stat-tile-trend.is-down{color:var(--danger)}.action-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end;align-items:center;padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}@media (max-width: 640px){.action-bar.is-sticky{position:sticky;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));z-index:var(--z-nav);border-radius:0;border-left:0;border-right:0;padding:var(--space-3) var(--space-4);box-shadow:0 -2px 12px #00000014}}.section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5) 0;border-top:1px solid var(--border)}.section:first-of-type{border-top:0;padding-top:0}.section-heading{margin:0;font-size:var(--fs-18);font-weight:600}.section-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.meta-list{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:var(--space-2) var(--space-4);margin:0}.meta-list dt{color:var(--muted);font-size:var(--fs-13);font-weight:500}.meta-list dd{margin:0;color:var(--text);font-size:var(--fs-14);overflow-wrap:anywhere}@media (max-width: 640px){.meta-list{grid-template-columns:1fr;gap:var(--space-1) 0}.meta-list dt{padding-top:var(--space-2)}.meta-list dt:first-child{padding-top:0}}.field-group{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin:0}.field-group-legend{font-size:var(--fs-14);font-weight:600;color:var(--text);padding:0 var(--space-2)}.field-group-help{font-size:var(--fs-13);color:var(--muted);margin:0}.field-group-error{font-size:var(--fs-13);color:var(--danger);font-weight:500;margin:0}.field-group-error:before{content:"";display:inline-block;width:1em;height:1em;margin-right:4px;vertical-align:-.125em;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9v4' /%3E %3Cpath d='M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0' /%3E %3Cpath d='M12 16h.01' /%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9v4' /%3E %3Cpath d='M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0' /%3E %3Cpath d='M12 16h.01' /%3E%3C/svg%3E") center / contain no-repeat}.form-layout{display:flex;flex-direction:column;gap:var(--space-5);max-width:720px}.form-layout-summary{padding:var(--space-3) var(--space-4);background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);color:var(--danger);border-radius:var(--radius);font-size:var(--fs-14)}.form-layout-summary-title{font-weight:600;margin:0 0 var(--space-1)}.form-layout-summary-list{margin:0;padding-left:var(--space-5)}.list-page{display:flex;flex-direction:column;gap:var(--space-4)}.list-page-results{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-13);color:var(--muted)}.detail-page{display:flex;flex-direction:column;gap:var(--space-5)}.detail-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.detail-page-titles{min-width:0;flex:1 1 280px}.detail-page-status{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}.detail-page-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.detail-page-related{display:flex;flex-direction:column;gap:var(--space-3)}.widget-grid{display:grid;gap:var(--space-4);grid-template-columns:1fr}.widget{display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);min-height:120px}.widget-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.widget-title{margin:0;font-size:var(--fs-15);font-weight:600;color:var(--text)}.widget-actions{display:flex;gap:var(--space-2);align-items:center;font-size:var(--fs-13)}@media (max-width: 760px),(pointer: coarse){.widget-actions .link{display:inline-flex;align-items:center;min-height:var(--touch-target);margin-block:-12px}}.widget-body{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.widget-empty{color:var(--muted);font-size:var(--fs-13)}@media (min-width: 640px){.widget-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 980px){.widget-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.bottom-nav{display:none}@media (max-width: 760px){.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-nav);display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,auto);justify-content:stretch;gap:0;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 12px #00000014}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:var(--bottom-nav-height);padding:var(--space-1) var(--space-1);background:transparent;border:0;color:var(--muted);text-decoration:none;font:inherit;font-size:var(--fs-13);font-weight:600;line-height:1.2;text-align:center;min-width:0;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;cursor:pointer}@media (max-width: 380px){.bottom-nav-item{font-size:var(--fs-12);letter-spacing:-.01em}}.bottom-nav-item:hover,.bottom-nav-item[aria-current=page]{color:var(--primary)}.bottom-nav-item:focus-visible{outline:none;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent)}.bottom-nav-icon{display:block;width:24px;height:24px}body{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--space-3))}}@media (max-width: 760px){.skip-link:focus{top:var(--space-3)}}.bottom-nav-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:var(--z-dropdown);display:flex;align-items:flex-end;justify-content:center}.bottom-nav-sheet{width:100%;max-width:480px;background:var(--surface);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-xl);display:flex;flex-direction:column;gap:var(--space-3);max-height:85vh;overflow-y:auto}.bottom-nav-sheet-handle{width:36px;height:4px;margin:0 auto var(--space-2);border-radius:var(--radius-pill);background:var(--border)}.bottom-nav-sheet-title{margin:0;font-size:var(--fs-15);font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.bottom-nav-sheet-list{display:flex;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0}.bottom-nav-sheet-list a,.bottom-nav-sheet-list button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-2);background:transparent;border:0;border-radius:var(--radius);color:var(--text);font:inherit;font-size:var(--fs-15);text-decoration:none;text-align:left;min-height:var(--touch-target);cursor:pointer}.bottom-nav-sheet-list+.bottom-nav-sheet-title{margin-top:var(--space-3)}.bottom-nav-sheet-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-2);border-top:1px solid var(--border);color:var(--muted)}.bottom-nav-sheet-list a:hover,.bottom-nav-sheet-list button:hover{background:var(--bg);color:var(--primary)}.bottom-nav-sheet-list a[aria-current=page]{color:var(--primary);font-weight:600}.bottom-nav-sheet-list a:focus-visible,.bottom-nav-sheet-list button:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.bottom-nav-sheet-divider{height:1px;background:var(--border);margin:var(--space-2) 0}@media (max-width: 760px),(pointer: coarse){input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select:not([multiple]){font-size:max(16px,1em)}}@media (min-width: 1560px) and (hover: hover) and (pointer: fine){.app-frame.mit-raendern.svelte-12qhfyh{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--container-max)) minmax(0,1fr)}.app-frame.mit-raendern.svelte-12qhfyh>.main-content:where(.svelte-12qhfyh){grid-column:2;grid-row:1;width:100%;min-width:0;box-sizing:border-box}}.skip-link{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;z-index:1000}.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;padding:12px 20px;background:#0f7c80;color:#fff;border-radius:6px;font-weight:600;text-decoration:none;box-shadow:0 4px 12px #0003}.topbar.svelte-12qhfyh{position:relative;flex-wrap:nowrap}.nav.svelte-12qhfyh{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-width:0}.nav-primary.svelte-12qhfyh,.nav-secondary.svelte-12qhfyh{display:flex;align-items:center;gap:4px}.nav-item.svelte-12qhfyh{display:inline-flex;align-items:center;gap:4px;padding:7px 10px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none;font-size:.95rem;cursor:pointer;white-space:nowrap}.nav-item.svelte-12qhfyh:hover,.nav-menu[open].svelte-12qhfyh>.nav-item:where(.svelte-12qhfyh){background:var(--bg);color:var(--primary)}.nav-item[aria-current=page].svelte-12qhfyh,.nav-item.active.svelte-12qhfyh{color:var(--primary);font-weight:600}.nav-menu.svelte-12qhfyh{position:relative}.nav-menu.svelte-12qhfyh>summary:where(.svelte-12qhfyh){list-style:none}.nav-menu.svelte-12qhfyh>summary:where(.svelte-12qhfyh)::-webkit-details-marker{display:none}.nav-menu.svelte-12qhfyh>summary:where(.svelte-12qhfyh):after{content:"";width:6px;height:6px;margin-left:2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.6}.nav-panel.svelte-12qhfyh{position:absolute;top:calc(100% + 6px);left:0;z-index:50;display:flex;flex-direction:column;min-width:190px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0000001f}.nav-menu-right.svelte-12qhfyh .nav-panel:where(.svelte-12qhfyh){left:auto;right:0}.nav-panel.svelte-12qhfyh a:where(.svelte-12qhfyh),.nav-panel-button.svelte-12qhfyh{padding:8px 10px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none;font-size:.93rem;text-align:left;background:none;border:0;font:inherit;cursor:pointer}.nav-panel.svelte-12qhfyh a:where(.svelte-12qhfyh):hover,.nav-panel-button.svelte-12qhfyh:hover{background:var(--bg);color:var(--primary)}.nav-panel.svelte-12qhfyh a[aria-current=page]:where(.svelte-12qhfyh){color:var(--primary);font-weight:600}.nav-panel-row.svelte-12qhfyh{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 10px;color:var(--muted);font-size:.88rem}.nav-panel-button.svelte-12qhfyh{border-top:1px solid var(--border);border-radius:0 0 var(--radius-sm) var(--radius-sm);margin-top:4px}.nav-user-summary.svelte-12qhfyh{max-width:180px}.nav-user-name.svelte-12qhfyh{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-search.svelte-12qhfyh .nav-search-icon{width:18px;height:18px}.mobile-more.svelte-12qhfyh{display:none;position:relative;align-items:center;gap:var(--space-2);min-height:var(--touch-target);margin-left:auto;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.mobile-more.svelte-12qhfyh .mobile-more-icon{width:20px;height:20px}.mobile-more-dot.svelte-12qhfyh{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);font-size:var(--fs-12);line-height:20px;text-align:center}@media (pointer: coarse){.nav-item.svelte-12qhfyh,.nav-panel.svelte-12qhfyh a:where(.svelte-12qhfyh),.nav-panel-button.svelte-12qhfyh{min-height:var(--touch-target);display:flex;align-items:center}.nav-panel.svelte-12qhfyh{gap:var(--space-1)}.bell-link.svelte-12qhfyh{width:var(--touch-target);height:var(--touch-target)}}@media (min-width: 761px){.brand.svelte-12qhfyh{flex-shrink:0}.nav.svelte-12qhfyh{flex-wrap:wrap;row-gap:2px}.nav-primary.svelte-12qhfyh{flex:1 1 0;flex-wrap:wrap;min-width:0;row-gap:2px}.nav-secondary.svelte-12qhfyh{flex:0 0 auto;margin-left:auto}}.nav-board-in-menu.svelte-12qhfyh{display:none}@media (min-width: 761px) and (max-width: 1100px){.nav-board-inline.svelte-12qhfyh{display:none}.nav-board-in-menu.svelte-12qhfyh{display:flex}.nav.svelte-12qhfyh{gap:8px}.nav-primary.svelte-12qhfyh,.nav-secondary.svelte-12qhfyh{gap:2px}.nav-item.svelte-12qhfyh{padding:7px 8px}.nav-user-summary.svelte-12qhfyh{max-width:110px}.nav-search-label.svelte-12qhfyh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@media (min-width: 761px) and (max-width: 900px){.topbar.svelte-12qhfyh{padding-left:var(--space-4);padding-right:var(--space-4)}.nav.svelte-12qhfyh{gap:4px}.nav-item.svelte-12qhfyh{padding:7px 6px}}@media (max-width: 760px){.topbar.svelte-12qhfyh{flex-wrap:nowrap;align-items:center;padding:var(--space-2) var(--space-4)}.mobile-more.svelte-12qhfyh{display:inline-flex}#main-nav.svelte-12qhfyh{display:none!important}.brand.svelte-12qhfyh{font-size:1rem}}.adaptive-leiste.svelte-12qhfyh{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 16px;margin:8px 16px;background:var(--claimed-bg, #eef3fb);border:1px solid var(--claimed, #6b8ec0);border-radius:var(--radius, 8px);color:var(--text);font-size:.92rem}.adaptive-leiste-text.svelte-12qhfyh{flex:1;min-width:200px}.adaptive-leiste-actions.svelte-12qhfyh{display:flex;gap:6px;align-items:center}.adaptive-leiste-button.svelte-12qhfyh{padding:6px 12px;border-radius:var(--radius-sm, 6px);background:var(--primary, #0f7c80);color:#fff;border:0;font:inherit;cursor:pointer}.adaptive-leiste-button.svelte-12qhfyh:hover:not(:disabled){filter:brightness(1.05)}.adaptive-leiste-button.svelte-12qhfyh:disabled{opacity:.6;cursor:not-allowed}.adaptive-leiste-dismiss.svelte-12qhfyh{background:transparent;border:0;color:var(--muted, #666);font-size:1.2rem;line-height:1;padding:4px 8px;cursor:pointer;border-radius:var(--radius-sm, 6px)}.adaptive-leiste-dismiss.svelte-12qhfyh:hover{background:var(--bg, #f3f7f7)}.bell-link.svelte-12qhfyh{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none;background:transparent;transition:background .15s,color .15s}.bell-link.svelte-12qhfyh:hover{background:var(--bg);color:var(--primary)}.bell-link[aria-current=page].svelte-12qhfyh{color:var(--primary)}.bell-link.svelte-12qhfyh .bell-icon{width:20px;height:20px}.bell-counter.svelte-12qhfyh{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--danger, #c33);color:var(--surface);font-size:.7rem;font-weight:600;line-height:18px;text-align:center}
