:root{--color-bg:#d8dce2;--color-frame:#eef1f5;--color-panel:#ffffff;--color-panel-2:#f6f8fb;--color-line:#e6eaf0;--color-ink:#16233b;--color-overlay:rgba(22,35,59,0.4);--color-ink-2:#4a5568;--color-ink-3:#626d81;--color-accent:#0099a1;--color-accent-ink:#007f86;--color-accent-soft:color-mix(in srgb,var(--color-accent) 14%,transparent);--color-cyan:#54c7e9;--color-violet:#9886f4;--color-good:#2fa36b;--color-warn:#986116;--color-crit:#ee3b2f;--color-good-bg:#e7f5ee;--color-warn-bg:#fbf1e0;--color-crit-bg:#fdeae8;--text-2xs:0.625rem;--text-xs:0.6875rem;--text-sm:0.78125rem;--text-base:0.84375rem;--text-md:0.90625rem;--text-lg:1rem;--text-xl:1.1875rem;--text-2xl:1.6875rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--space-1:0.25rem;--space-2:0.375rem;--space-3:0.4375rem;--space-4:0.5rem;--space-5:0.5625rem;--space-6:0.625rem;--space-7:0.6875rem;--space-8:0.75rem;--space-9:0.8125rem;--space-10:0.875rem;--space-11:1rem;--space-12:1.125rem;--space-13:1.25rem;--space-14:1.375rem;--space-16:1.625rem;--space-section:clamp(1.5rem,1.1rem + 1.6vw,2.75rem);--radius-xs:0.5rem;--radius-sm:0.625rem;--radius-md:0.6875rem;--radius-lg:0.75rem;--radius-xl:0.875rem;--radius-2xl:1.125rem;--radius-3xl:1.25rem;--radius-4xl:1.625rem;--radius-full:999px;--shadow-sm:0 10px 24px rgba(22,35,59,0.08);--shadow-lg:0 24px 60px rgba(22,35,59,0.16);--gradient-page:linear-gradient(120deg,#d5d8dd,#dcdfe4 55%,#d3d7dc);--gradient-frame:radial-gradient(42rem 30rem at 0% 22%,rgba(84,199,233,0.16),transparent 62%),linear-gradient(115deg,#edeff3,#e9ecf1 48%,#e4eaef);--color-card:rgba(255,255,255,0.82);--color-card-border:rgba(255,255,255,0.7);--shadow-card:0 14px 32px rgba(28,36,51,0.06);--shadow-rail:0 12px 26px rgba(28,36,51,0.08);--shadow-frame:0 34px 90px rgba(28,36,51,0.24),inset 0 1px 0 rgba(255,255,255,0.85);--radius-card:1.5rem;--radius-frame:2.5rem;--text-title:1.6875rem;--leder:linear-gradient(160deg,#9a683c,#7d4f28 52%,#643d1e);--leder-rot:linear-gradient(160deg,#9c4a34,#7c3423 55%,#63281a);--leder-ink:#f7ead9;--leder-naht:rgba(247,232,209,0.62);--shadow-leder:0 10px 22px rgba(99,60,29,0.42),inset 0 1px 0 rgba(255,255,255,0.28),inset 0 -2px 5px rgba(0,0,0,0.24);--papier:linear-gradient(160deg,#f4ebdc,#e9dabf 55%,#dfcdaa);--papier-ink:#5f4425;--papier-rand:rgba(122,86,45,0.28);--shadow-papier:0 8px 18px rgba(99,60,29,0.14),inset 0 1px 0 rgba(255,255,255,0.65);--duration-fast:150ms;--duration-normal:300ms;--duration-slow:380ms;--ease-out-expo:cubic-bezier(0.22,0.8,0.36,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#0a0f18;--color-frame:#111a27;--color-panel:#16202e;--color-panel-2:#1b2735;--color-line:#243244;--color-ink:#eaf1f8;--color-overlay:rgba(0,0,0,0.55);--color-ink-2:#a7b4c6;--color-ink-3:#8893a2;--color-accent:#2ab7bf;--color-accent-ink:#54c7e9;--color-cyan:#54c7e9;--color-violet:#a99cf7;--color-good:#4cc287;--color-warn:#e6ad55;--color-crit:#ff6a5e;--color-good-bg:#123326;--color-warn-bg:#33280f;--color-crit-bg:#3a1a18;--shadow-sm:0 10px 24px rgba(0,0,0,0.35);--shadow-lg:0 30px 70px rgba(0,0,0,0.5);--gradient-page:linear-gradient(120deg,#070b12,#0a0f18 55%,#070b12);--gradient-frame:radial-gradient(42rem 30rem at 0% 22%,rgba(42,183,191,0.12),transparent 62%),linear-gradient(115deg,#111a27,#0f1824 48%,#0e1622);--color-card:rgba(22,32,46,0.86);--color-card-border:rgba(255,255,255,0.06);--shadow-card:0 14px 32px rgba(0,0,0,0.35);--shadow-rail:0 12px 26px rgba(0,0,0,0.4);--shadow-frame:0 34px 90px rgba(0,0,0,0.55),inset 0 1px 0 rgba(255,255,255,0.04)}}:root[data-theme=dark]{--color-bg:#0a0f18;--color-frame:#111a27;--color-panel:#16202e;--color-panel-2:#1b2735;--color-line:#243244;--color-ink:#eaf1f8;--color-overlay:rgba(0,0,0,0.55);--color-ink-2:#a7b4c6;--color-ink-3:#8893a2;--color-accent:#2ab7bf;--color-accent-ink:#54c7e9;--color-cyan:#54c7e9;--color-violet:#a99cf7;--color-good:#4cc287;--color-warn:#e6ad55;--color-crit:#ff6a5e;--color-good-bg:#123326;--color-warn-bg:#33280f;--color-crit-bg:#3a1a18;--shadow-sm:0 10px 24px rgba(0,0,0,0.35);--shadow-lg:0 30px 70px rgba(0,0,0,0.5);--gradient-page:linear-gradient(120deg,#070b12,#0a0f18 55%,#070b12);--gradient-frame:radial-gradient(42rem 30rem at 0% 22%,rgba(42,183,191,0.12),transparent 62%),linear-gradient(115deg,#111a27,#0f1824 48%,#0e1622);--color-card:rgba(22,32,46,0.86);--color-card-border:rgba(255,255,255,0.06);--shadow-card:0 14px 32px rgba(0,0,0,0.35);--shadow-rail:0 12px 26px rgba(0,0,0,0.4);--shadow-frame:0 34px 90px rgba(0,0,0,0.55),inset 0 1px 0 rgba(255,255,255,0.04)}body{font-family:var(--font-sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}.label-uppercase{font-size:var(--text-xs);font-weight:var(--font-weight-extrabold);letter-spacing:.09em;text-transform:uppercase;color:var(--color-ink-2)}.termin-farbe{--tf-flaeche:var(--tf-h-flaeche);--tf-rand:var(--tf-h-rand);--tf-text:var(--tf-h-text)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .termin-farbe{--tf-flaeche:var(--tf-d-flaeche);--tf-rand:var(--tf-d-rand);--tf-text:var(--tf-d-text)}}:root[data-theme=dark] .termin-farbe{--tf-flaeche:var(--tf-d-flaeche);--tf-rand:var(--tf-d-rand);--tf-text:var(--tf-d-text)}.termin-block{background:var(--tf-flaeche);color:var(--tf-text);border-left:4px solid var(--tf-rand);box-shadow:0 1px 2px rgba(22,35,59,.14)}[data-termin-block]{container-type:inline-size}@container (max-width: 104px){.termin-nur-breit{display:none}}.termin-block[data-status=BESTAETIGT]{box-shadow:inset 0 0 0 1.5px var(--tf-rand),0 1px 2px rgba(22,35,59,.14)}.termin-block[data-status=ERSCHIENEN]{background:var(--color-panel-2);color:var(--color-ink-2);box-shadow:none;outline:1.5px dashed var(--color-good);outline-offset:-3px}.termin-block[data-status=NICHT_ERSCHIENEN]{background:var(--color-warn-bg);color:var(--color-warn);border-left-color:var(--color-warn);box-shadow:inset 0 0 0 1px var(--color-warn)}.termin-block[data-status=ABGESAGT]{background:repeating-linear-gradient(135deg,var(--color-panel) 0 6px,var(--color-panel-2) 6px 12px);color:var(--color-ink-2);border-left-color:var(--color-crit);box-shadow:inset 0 0 0 1px var(--color-line)}.termin-block[data-status=ABGESAGT] [data-titel]{text-decoration:line-through}.termin-block[data-gezogen=true]{opacity:.35}.termin-griff{touch-action:none}.termin-griff:after{content:"";position:absolute;left:50%;width:22px;height:3px;border-radius:2px;background:var(--tf-rand);opacity:0;transform:translateX(-50%);transition:opacity var(--duration-fast)}.termin-griff[data-kante=oben]:after{top:2px}.termin-griff[data-kante=unten]:after{bottom:2px}.termin-block:focus-within .termin-griff:after,.termin-block:hover .termin-griff:after{opacity:.8}.termin-raster-spalte{background-image:linear-gradient(to bottom,var(--color-line) 1px,transparent 1px),repeating-linear-gradient(to right,var(--color-line) 0 3px,transparent 3px 7px);background-size:100% var(--raster-stunde),100% 1px;background-position:0 0,0 calc(var(--raster-stunde) / 2);background-repeat:repeat-y,no-repeat}.termin-raster-spalte:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(to bottom,transparent 0 calc(var(--raster-stunde) / 2 - 1px),color-mix(in srgb,var(--color-line) 70%,transparent) calc(var(--raster-stunde) / 2 - 1px) calc(var(--raster-stunde) / 2),transparent calc(var(--raster-stunde) / 2) var(--raster-stunde))}.termin-raster-spalte[data-heute=true]{background-color:color-mix(in srgb,var(--color-accent) 7%,transparent)}.termin-raster-spalte[data-wochenende=true]{background-color:color-mix(in srgb,var(--color-ink) 3%,transparent)}@keyframes termin-einsetzen{0%{transform:scale(.94);box-shadow:0 0 0 0 var(--tf-rand)}45%{transform:scale(1.02);box-shadow:0 0 0 6px color-mix(in srgb,var(--tf-rand) 35%,transparent)}to{transform:scale(1);box-shadow:0 0 0 0 transparent}}@keyframes termin-stempel{0%{transform:scale(1.7);opacity:0}70%{transform:scale(.92);opacity:1}to{transform:scale(1)}}.termin-block[data-frisch=true]{animation:termin-einsetzen .52s var(--ease-out-expo)}.termin-stempel{animation:termin-stempel .32s var(--ease-out-expo)}@media (prefers-reduced-motion:reduce){.termin-block[data-frisch=true],.termin-stempel{animation:none}.termin-griff:after{transition:none}}