:root {
    --ink: #080c12;
    --ink-2: #101720;
    --ink-3: #17212d;
    --chrome: #d9efff;
    --chrome-2: #8293a6;
    --blue: #5d82ff;
    --cyan: #6de6ff;
    --paper: #f4f9fd;
    --muted: #9aa7b5;
    --line: rgba(218, 239, 255, .18);
    --line-strong: rgba(218, 239, 255, .38);
    --shell: min(1380px, calc(100% - 64px));
    --display: "Arial Narrow", "Bahnschrift Condensed", "Helvetica Neue", Arial, sans-serif;
    --body: Inter, "Segoe UI", Arial, sans-serif;
    --mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
}

/* Einfache Pflegezentrale und aktuelle Galerie */
.admin-bar nav a.is-active { color: var(--cyan); }
.admin-overview { margin-top: 70px; scroll-margin-top: 120px; }
.admin-overview-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 10px; }
.admin-overview-card { min-height: 330px; padding: 25px; display: flex; flex-direction: column; border: 1px solid var(--line); color: var(--paper); background: linear-gradient(145deg,rgba(218,239,255,.07),rgba(218,239,255,.02)); text-decoration: none; transition: transform .3s,border-color .3s,background .3s; }
.admin-overview-card:hover { transform: translateY(-7px); border-color: var(--cyan); background: linear-gradient(145deg,rgba(109,230,255,.11),rgba(93,130,255,.04)); }
.admin-overview-card > span { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .12em; }
.admin-overview-card h3 { margin: 30px 0 18px; font: 780 clamp(34px,3vw,48px)/.84 var(--display); letter-spacing: -.065em; text-transform: uppercase; }
.admin-overview-card p { margin: 0; color: #91a0ad; font-size: 12px; line-height: 1.65; }
.admin-overview-card b { margin-top: auto; padding-top: 28px; color: #b8c5cf; font: 700 9px/1.4 var(--mono); letter-spacing: .08em; }
.admin-overview-card i { margin-top: 15px; color: var(--cyan); font: normal 750 9px/1 var(--mono); letter-spacing: .1em; }
.admin-overview-card--primary { background: radial-gradient(ellipse at 90% 10%,rgba(109,230,255,.16),transparent 50%),linear-gradient(145deg,#182735,#0a1018); }

.race-visibility-admin { scroll-margin-top: 120px; }
.race-visibility-panel { overflow: hidden; padding: 0; border-radius: 0 24px 0 24px; }
.race-visibility-panel > header { display: flex; justify-content: space-between; gap: 30px; align-items: center; padding: 28px 32px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 95% 0,rgba(109,230,255,.12),transparent 42%); }
.race-visibility-panel h3 { margin: 8px 0 5px; color: var(--paper); font: 800 30px/1 var(--display); }
.race-visibility-panel header p { max-width: 720px; margin: 0; color: #a6b4bf; font-size: 16px; line-height: 1.45; }
.race-visibility-all { display: inline-flex; align-items: center; gap: 12px; min-height: 46px; padding: 0 16px; border: 1px solid rgba(109,230,255,.4); color: var(--cyan); font: 750 12px/1.2 var(--mono); letter-spacing: .1em; cursor: pointer; white-space: nowrap; }
.race-visibility-all input,.race-visibility-item input { width: 20px; height: 20px; accent-color: var(--cyan); }
.race-visibility-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.race-visibility-item { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 18px; align-items: center; min-height: 112px; padding: 22px 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); cursor: pointer; }
.race-visibility-item:nth-child(2n) { border-right: 0; }.race-visibility-item:nth-last-child(-n+2) { border-bottom: 0; }
.race-visibility-item span small { display: block; margin-bottom: 6px; color: #788c9c; font: 700 10px/1 var(--mono); letter-spacing: .12em; }
.race-visibility-item span strong { color: var(--paper); font: 800 21px/1 var(--display); }
.race-visibility-item > em { max-width: 190px; color: #74efb1; font: normal 750 11px/1.4 var(--mono); letter-spacing: .07em; text-align: right; }
.race-visibility-item.is-until > em { color: #ffd27c; }.race-visibility-item.is-permanent > em { color: #ff8ca0; }
.race-visibility-actions { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); }
.race-visibility-actions button { min-height: 64px; padding: 14px 20px; border: 0; border-right: 1px solid var(--line); background: rgba(4,12,21,.75); color: #dce7ee; font: 750 11px/1.35 var(--mono); letter-spacing: .08em; cursor: pointer; }
.race-visibility-actions button:last-child { border-right: 0; }.race-visibility-actions button:hover,.race-visibility-actions button:focus-visible { background: rgba(109,230,255,.09); color: var(--cyan); }.race-visibility-actions .is-release { color: #74efb1; }

@media (max-width:760px) {
    .race-visibility-panel > header { display: grid; padding: 24px 20px; }
    .race-visibility-all { justify-content: center; width: 100%; }
    .race-visibility-grid { grid-template-columns: 1fr; }
    .race-visibility-item,.race-visibility-item:nth-child(2n),.race-visibility-item:nth-last-child(-n+2) { min-height: 104px; padding: 20px; border-right: 0; border-bottom: 1px solid var(--line); }
    .race-visibility-item:last-child { border-bottom: 0; }
    .race-visibility-item > em { font-size: 10px; }
    .race-visibility-actions { grid-template-columns: 1fr; }
    .race-visibility-actions button { border-right: 0; border-bottom: 1px solid var(--line); }
    .race-visibility-actions button:last-child { border-bottom: 0; }
}
.admin-mini-steps, .admin-steps { padding: 0; list-style: none; }
.admin-mini-steps { margin: 0 0 18px; display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.admin-mini-steps li { min-height: 68px; padding: 13px; display: flex; gap: 12px; align-items: center; border: 1px solid rgba(218,239,255,.11); background: rgba(218,239,255,.025); }
.admin-mini-steps b { display: grid; flex: 0 0 30px; height: 30px; place-items: center; border: 1px solid var(--cyan); color: var(--cyan); font: 760 12px/1 var(--mono); }
.admin-mini-steps span { color: #9eacb8; font-size: 12px; line-height: 1.45; }
.admin-guide { margin-top: 68px; }
.admin-steps { display: grid; grid-template-columns: repeat(5,1fr); gap: 9px; counter-reset: guide; }
.admin-steps li { position: relative; min-height: 155px; padding: 23px; overflow: hidden; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(218,239,255,.065),rgba(218,239,255,.018)); }
.admin-steps li::after { counter-increment: guide; content: "0" counter(guide); position: absolute; right: 13px; bottom: 4px; color: rgba(109,230,255,.08); font: 800 64px/1 var(--display); }
.admin-steps b { position: relative; z-index: 1; display: block; color: var(--cyan); font: 750 10px/1.3 var(--mono); letter-spacing: .1em; }
.admin-steps span { position: relative; z-index: 1; display: block; margin-top: 17px; color: #9eacb8; font-size: 12px; line-height: 1.6; }
.admin-stat-grid { margin-top: 12px; display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; }
.admin-stat-grid article { min-height: 125px; padding: 19px; display: flex; flex-direction: column; border: 1px solid var(--line); background: rgba(218,239,255,.028); }
.admin-stat-grid span { color: #798a98; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.admin-stat-grid b { margin-top: 13px; color: var(--paper); font: 790 37px/.9 var(--display); }
.admin-stat-grid small { margin-top: auto; color: var(--cyan); font: 650 8px/1.35 var(--mono); letter-spacing: .07em; }
.admin-task-note { margin-bottom: 14px; padding: 16px 18px; display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: start; border-left: 3px solid var(--cyan); background: rgba(109,230,255,.05); }
.admin-task-note b { color: var(--cyan); font: 750 9px/1.5 var(--mono); letter-spacing: .1em; }
.admin-task-note p { margin: 0; color: #a9b6c1; font-size: 12px; line-height: 1.55; }
.admin-task-note code, .security-warning code { color: #e4f6ff; font: 700 11px/1.5 var(--mono); overflow-wrap: anywhere; }
.homepage-photo-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: 14px; align-items: end; }
.homepage-photo-form label { margin: 0; }
.homepage-photo-form .chrome-button { margin: 0; }
.admin-split--instructions { grid-template-columns: minmax(0,1.15fr) minmax(290px,.85fr); }
.admin-help-card { min-height: 100%; padding: 27px; border: 1px solid var(--line); background: radial-gradient(ellipse at 90% 5%,rgba(109,230,255,.11),transparent 48%),rgba(218,239,255,.025); }
.admin-help-card h3 { margin: 25px 0 14px; font: 760 31px/.95 var(--display); letter-spacing: -.05em; }
.admin-help-card > p:not(.panel-label) { color: #98a7b4; font-size: 12px; line-height: 1.65; }
.admin-help-card dl { margin: 27px 0 0; }
.admin-help-card dl div { padding: 11px 0; display: grid; grid-template-columns: 105px 1fr; gap: 10px; border-top: 1px solid var(--line); }
.admin-help-card dt { color: var(--cyan); font: 700 9px/1.4 var(--mono); }
.admin-help-card dd { margin: 0; color: #a8b5c0; font-size: 12px; line-height: 1.5; }
.existing-album-upload { display: grid; gap: 18px; align-content: start; }
.existing-album-upload > label { margin: 0; }
.existing-album-upload__preview { position: relative; aspect-ratio: 16/8; margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: radial-gradient(ellipse at 76% 18%,rgba(109,230,255,.12),transparent 55%),#0b121b; }
.existing-album-upload__preview img { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.existing-album-upload__preview > div { position: absolute; z-index: 0; inset: 0; padding: 24px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.existing-album-upload__preview > div[hidden] { display: none; }
.existing-album-upload__preview > div b { color: var(--cyan); font: 760 11px/1.2 var(--mono); letter-spacing: .1em; }
.existing-album-upload__preview > div span { max-width: 380px; margin-top: 9px; color: #8495a3; font-size: 12px; line-height: 1.5; }
.existing-album-upload__preview figcaption { position: absolute; z-index: 2; right: 10px; bottom: 10px; left: 10px; padding: 10px 12px; display: flex; justify-content: space-between; gap: 14px; border: 1px solid rgba(109,230,255,.34); border-radius: 9px; color: #e7f7ff; background: rgba(3,8,13,.84); }
.existing-album-upload__preview figcaption[hidden] { display: none; }
.existing-album-upload__preview figcaption b { min-width: 0; overflow: hidden; font: 760 11px/1.25 var(--mono); letter-spacing: .06em; text-overflow: ellipsis; white-space: nowrap; }
.existing-album-upload__preview figcaption span { flex: 0 0 auto; color: var(--cyan); font: 700 9px/1.3 var(--mono); letter-spacing: .07em; }
.existing-album-upload > .chrome-button { justify-self: start; margin: 0; }
.admin-panel textarea { width: 100%; min-height: 96px; resize: vertical; color: var(--paper); }
.admin-panel button:disabled { opacity: .45; cursor: not-allowed; }
.ftp-import-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.ftp-import-card__status { margin-bottom: 24px; display: flex; justify-content: space-between; gap: 15px; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.ftp-import-card > small { display: block; color: #6e7d8a; font: 650 8px/1.5 var(--mono); overflow-wrap: anywhere; }
.panel-empty--large { min-height: 130px; display: grid; place-items: center; padding: 25px; text-align: center; }
.admin-album-list { display: grid; gap: 16px; }
.admin-album-order { margin: 0 0 22px; padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg,rgba(218,239,255,.055),rgba(5,10,16,.38)); }
.admin-album-order__head { display: flex; justify-content: space-between; gap: 24px; align-items: end; }
.admin-album-order__head span { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .11em; }
.admin-album-order__head h3 { margin: 8px 0 0; font: 770 29px/.95 var(--display); letter-spacing: -.045em; }
.admin-album-order__head p { max-width: 700px; margin: 10px 0 0; color: #8796a3; font-size: 12px; line-height: 1.55; }
.admin-album-order__state { flex: 0 0 auto; display: flex; gap: 8px; align-items: center; color: #7f909d; font: 720 8px/1.2 var(--mono); letter-spacing: .08em; }
.admin-album-order__state i { width: 7px; height: 7px; border-radius: 50%; background: #7f909d; }
.admin-album-order.is-unsaved .admin-album-order__state { color: #ffd69c; }
.admin-album-order.is-unsaved .admin-album-order__state i { background: #ffd69c; box-shadow: 0 0 12px rgba(255,214,156,.48); }
.admin-album-order ol { margin: 20px 0 0; padding: 0; display: grid; gap: 7px; list-style: none; }
.admin-album-order li { min-width: 0; padding: 8px; display: grid; grid-template-columns: 38px 34px 72px minmax(0,1fr) auto; gap: 11px; align-items: center; border: 1px solid rgba(218,239,255,.13); border-radius: 12px; background: rgba(3,8,13,.42); transition: transform .18s,border-color .18s,background .18s,opacity .18s; }
.admin-album-order li.is-drag-ready { border-color: rgba(109,230,255,.35); }
.admin-album-order li.is-dragging { z-index: 2; transform: scale(1.012); border-color: var(--cyan); background: #0e1924; box-shadow: 0 18px 40px rgba(0,0,0,.28); }
.admin-album-order__grip { width: 38px; height: 38px; padding: 10px; display: grid; gap: 3px; align-content: center; border: 1px solid rgba(109,230,255,.24); border-radius: 9px; background: rgba(109,230,255,.035); cursor: grab; touch-action: none; }
.admin-album-order__grip:active { cursor: grabbing; }
.admin-album-order__grip span { display: block; height: 1px; background: var(--cyan); }
.admin-album-order__number { color: var(--cyan); font: 780 11px/1 var(--mono); }
.admin-album-order__cover { width: 72px; height: 48px; display: grid; place-items: center; overflow: hidden; border-radius: 7px; color: #748592; background: #111923; text-align: center; font: 700 7px/1.25 var(--mono); }
.admin-album-order__cover img { width: 100%; height: 100%; object-fit: cover; }
.admin-album-order__copy { min-width: 0; }
.admin-album-order__copy strong, .admin-album-order__copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-album-order__copy strong { font-size: 13px; }
.admin-album-order__copy small { margin-top: 5px; color: #7c8d9a; font: 690 8px/1.3 var(--mono); letter-spacing: .05em; }
.admin-album-order__buttons { display: grid; grid-template-columns: 36px 36px; gap: 5px; }
.admin-album-order__buttons button { width: 36px; height: 36px; border: 1px solid rgba(109,230,255,.25); border-radius: 8px; color: var(--cyan); background: rgba(109,230,255,.035); }
.admin-album-order__buttons button:disabled { opacity: .25; }
.admin-album-order__save { margin-top: 15px; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.admin-album-order__save > span { max-width: 620px; color: #7f909d; font-size: 11px; line-height: 1.5; }
.admin-album-order__save .chrome-button { width: auto; min-width: 235px; margin: 0; }
.admin-album { display: grid; grid-template-columns: minmax(250px,.7fr) minmax(0,1.3fr); gap: 10px; scroll-margin-top: 130px; }
.admin-album__preview { position: relative; min-height: 410px; overflow: hidden; border: 1px solid var(--line); background: #111923; }
.admin-album__preview::before { content: ""; position: absolute; z-index: 0; inset: -25px; background: inherit; filter: blur(25px) brightness(.4); }
.admin-album__preview img { position: absolute; z-index: 1; width: 100%; height: 100%; object-fit: contain; }
.admin-album__preview span { position: absolute; z-index: 2; top: 15px; left: 15px; padding: 7px 9px; border: 1px solid var(--cyan); color: var(--cyan); background: rgba(4,9,14,.78); font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.admin-album > .admin-panel { border-radius: 0; }
.admin-album__headline { margin-bottom: 25px; display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.admin-album__headline small { color: var(--cyan); font: 700 8px/1.4 var(--mono); letter-spacing: .07em; overflow-wrap: anywhere; }
.admin-album__headline h3 { margin: 8px 0 0; font: 770 35px/.9 var(--display); letter-spacing: -.055em; }
.admin-album__headline a { flex: 0 0 auto; color: var(--cyan); font: 750 9px/1 var(--mono); text-decoration: none; }
.admin-album__extras { grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.admin-album__extras .admin-panel { border-radius: 0; }
.compact-upload { display: grid; grid-template-columns: 1fr auto; gap: 15px; align-items: end; }
.compact-upload label { margin: 0; }
.compact-upload .outline-button, .compact-sync .outline-button { width: auto; margin: 0; }
.compact-sync { display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.compact-sync p { margin: 0; color: #91a0ad; font-size: 12px; line-height: 1.55; }
.compact-sync p b { color: var(--paper); }
.result-admin-actions { display: flex; gap: 7px; align-items: center; }
.result-admin-actions > a, .admin-back-link { padding: 8px; border: 1px solid var(--cyan); color: var(--cyan); background: transparent; font: 700 8px/1 var(--mono); letter-spacing: .08em; text-decoration: none; }
.admin-back-link { justify-self: end; }
.admin-result-preview-table { margin-top: 18px; border: 1px solid var(--line); }
.admin-preview-return { margin-top: 25px; }
.session-status { position: relative; z-index: 1; min-width: 205px; display: grid; gap: 6px; }
.session-status__role { min-height: 46px; padding: 6px 7px 6px 11px; display: flex; align-items: center; justify-content: space-between; gap: 11px; border: 1px solid rgba(109,230,255,.48); color: var(--paper); background: rgba(5,11,18,.93); box-shadow: 0 12px 28px rgba(0,0,0,.28); backdrop-filter: blur(16px); }
.session-status__role > div { min-width: 0; }
.session-status__role > div > span { display: block; color: var(--cyan); font: 700 7px/1 var(--mono); letter-spacing: .11em; }
.session-status__role > div > span i { display: inline-block; width: 6px; height: 6px; margin-right: 5px; border-radius: 50%; background: #85ffb8; box-shadow: 0 0 12px rgba(133,255,184,.75); }
.session-status__role strong { display: block; margin-top: 5px; overflow: hidden; color: #eaf7ff; font: 760 12px/1 var(--mono); text-overflow: ellipsis; white-space: nowrap; }
.session-status__role form { flex: 0 0 auto; }
.session-status__role button { min-height: 32px; padding: 7px 8px; border: 1px solid var(--cyan); color: var(--cyan); background: transparent; font: 750 7px/1 var(--mono); letter-spacing: .07em; white-space: nowrap; }
.session-status__role button:hover { color: #071018; background: var(--cyan); }
.session-status__logout-short { display: none; }
.admin-bar > form button span { color: #85ffb8; }

.current-gallery-content { padding-top: 20px; }
.current-gallery-intro { margin: 0 0 35px; padding: clamp(28px,5vw,65px); border: 1px solid var(--line); background: radial-gradient(ellipse at 90% 15%,rgba(109,230,255,.15),transparent 50%),linear-gradient(140deg,#182534,#091019); }
.current-gallery-intro > span { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .13em; }
.current-gallery-intro h2 { max-width: 720px; margin: 22px 0; font: 820 clamp(50px,7vw,94px)/.84 var(--display); letter-spacing: -.078em; text-transform: uppercase; }
.current-gallery-intro h2 em { color: var(--cyan); font-style: normal; font-weight: 300; }
.current-gallery-intro p { max-width: 590px; margin: 0; color: #9eadba; font-size: 14px; line-height: 1.72; }
.album-grid--current { margin-top: 0; }
.current-gallery-showcase { position: relative; min-height: 610px; padding: clamp(35px,6vw,82px); overflow: hidden; display: grid; grid-template-columns: minmax(0,.88fr) minmax(390px,1.12fr); gap: clamp(30px,5vw,76px); align-items: center; border: 1px solid var(--line); background: radial-gradient(ellipse at 84% 28%,rgba(109,230,255,.17),transparent 52%),linear-gradient(135deg,#172331,#090e15 70%); }
.current-gallery-showcase::after { content: ""; position: absolute; width: 58%; height: 170%; right: -37%; top: -35%; transform: rotate(20deg); background: linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent); animation: chromeSweep 10s infinite alternate; pointer-events: none; }
.current-gallery-showcase__copy { position: relative; z-index: 4; }
.current-gallery-showcase__copy > p { margin: 0; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .14em; }
.current-gallery-showcase__copy h2 { max-width: 650px; margin: 25px 0; font: 820 clamp(52px,6vw,92px)/.83 var(--display); letter-spacing: -.08em; text-transform: uppercase; }
.current-gallery-showcase__copy h2 em { color: var(--cyan); font-style: normal; font-weight: 300; }
.current-gallery-showcase__copy > span { display: block; max-width: 540px; color: #9eadba; font-size: 14px; line-height: 1.72; }
.current-gallery-showcase__cta { margin-top: 38px; border: 0; background: transparent; }
.current-gallery-showcase__cta[hidden] { display: none; }
.current-gallery-stack { position: relative; z-index: 3; width: 100%; min-width: 0; min-height: 440px; perspective: 1400px; }
.current-gallery-stack > i,
.current-gallery-stack__photo { position: absolute; width: 64%; aspect-ratio: 4/3; overflow: hidden; border: 1px solid rgba(226,245,255,.5); border-radius: 18px; background: linear-gradient(145deg,#182633,#070d14); box-shadow: inset 0 1px rgba(255,255,255,.26),0 30px 58px rgba(0,0,0,.38); transform-style: preserve-3d; }
.current-gallery-stack > i:nth-child(1),
.current-gallery-stack__photo--1 { z-index: 3; top: 18%; left: 3%; --stack-rotate: -8deg; }
.current-gallery-stack > i:nth-child(2),
.current-gallery-stack__photo--2 { z-index: 2; top: 6%; left: 19%; --stack-rotate: 2deg; }
.current-gallery-stack > i:nth-child(3),
.current-gallery-stack__photo--3 { z-index: 1; top: 20%; left: 34%; --stack-rotate: 9deg; }
.current-gallery-stack > i { display: block; transform: rotate(var(--stack-rotate)); opacity: .58; }
.current-gallery-stack > i::after { content: ""; position: absolute; inset: -35%; background: linear-gradient(115deg,transparent 40%,rgba(255,255,255,.24) 50%,transparent 60%); animation: imageGlint 8s ease-in-out infinite; }
.current-gallery-stack__photo { padding: 0; color: white; animation: currentGalleryFloat 5.8s ease-in-out infinite alternate; transition: left .5s cubic-bezier(.2,.7,.2,1),top .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .35s; }
.current-gallery-stack__photo:nth-of-type(2) { animation-delay: -.9s; }
.current-gallery-stack__photo:nth-of-type(3) { animation-delay: -1.8s; }
.current-gallery-stack__photo img { width: 100%; height: 100%; object-fit: cover; opacity: 0; filter: saturate(.84) contrast(1.04); transition: opacity .35s,filter .5s,transform .7s; }
.current-gallery-stack__photo.is-loaded img { opacity: 1; }
.current-gallery-stack__photo:hover img,
.current-gallery-stack__photo:focus-visible img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }
.current-gallery-stack__photo > span { position: absolute; z-index: 2; right: 10px; bottom: 10px; padding: 6px 7px; border: 1px solid rgba(255,255,255,.48); border-radius: 7px; color: var(--cyan); background: rgba(3,8,13,.74); font: 750 8px/1 var(--mono); letter-spacing: .1em; }
.current-gallery-stack__photo.has-image-error::after { content: "VORSCHAU KONNTE NICHT GELADEN WERDEN"; position: absolute; inset: 0; display: grid; place-items: center; padding: 25px; color: #8193a1; text-align: center; font: 750 9px/1.5 var(--mono); letter-spacing: .08em; }
.current-gallery-stack.has-1 .current-gallery-stack__photo--1 { width: 78%; top: 10%; left: 10%; --stack-rotate: -3deg; }
@media (hover: hover) and (pointer: fine) {
    .current-gallery-stack:hover .current-gallery-stack__photo { animation: none; }
    .current-gallery-stack:hover .current-gallery-stack__photo--1 { left: 0; top: 20%; transform: rotate(-10deg); }
    .current-gallery-stack:hover .current-gallery-stack__photo--2 { left: 20%; top: 4%; transform: rotate(1deg); }
    .current-gallery-stack:hover .current-gallery-stack__photo--3 { left: 38%; top: 19%; transform: rotate(10deg); }
}
.admin-gallery-preview-banner { margin-bottom: 16px; padding: 15px 18px; display: flex; align-items: center; gap: 18px; border: 1px solid rgba(255,190,109,.48); border-radius: 14px; color: #dce8f1; background: rgba(255,190,109,.07); }
.admin-gallery-preview-banner b { flex: 0 0 auto; color: #ffd69c; font: 780 10px/1 var(--mono); letter-spacing: .1em; }
.admin-gallery-preview-banner span { font-size: 12px; line-height: 1.5; }

@keyframes currentGalleryFloat {
    from { transform: translateY(0) rotate(var(--stack-rotate)); }
    to { transform: translateY(-8px) rotate(var(--stack-rotate)); }
}
.hero-photo-placeholder--photo, .current-stage__image--photo { text-decoration: none; }
.hero-photo-placeholder--photo::before, .current-stage__image--photo::before { z-index: 2; pointer-events: none; }
.hero-photo-placeholder--photo > img, .current-stage__image--photo > img { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero-photo-placeholder--photo > span, .hero-photo-placeholder--photo > small, .current-stage__image--photo > span, .current-stage__image--photo > small { z-index: 3; align-self: flex-start; padding: 8px 10px; border: 1px solid rgba(109,230,255,.72); color: #e9fbff; background: rgba(4,10,16,.78); box-shadow: 0 8px 24px rgba(0,0,0,.2); }
.hero-photo-placeholder--photo > small, .current-stage__image--photo > small { align-self: flex-end; color: var(--cyan); font: 700 9px/1.4 var(--mono); letter-spacing: .08em; }
.current-stage__image--photo { text-decoration: none; }

/* Vollständige Bildpflege: aktuelle Galerie und historisches Archiv */
.homepage-photo-form--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.homepage-photo-form--three .chrome-button { grid-column: 1/-1; justify-self: start; }
.homepage-photo-form__grid--gallery { grid-template-columns: repeat(3,minmax(0,1fr)); }
.archive-home-picker { min-width: 0; padding: 16px; border: 1px solid rgba(218,239,255,.16); border-radius: 16px; background: linear-gradient(145deg,rgba(218,239,255,.055),rgba(4,9,15,.46)); }
.archive-home-picker__head { min-height: 48px; margin-bottom: 13px; }
.archive-home-picker__head span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .11em; }
.archive-home-picker__head h3 { margin: 8px 0 0; font: 770 25px/.92 var(--display); letter-spacing: -.045em; }
.archive-home-picker label { display: block; margin: 11px 0 0; }
.archive-home-picker label > span { color: #8796a3; font: 700 8px/1.3 var(--mono); letter-spacing: .08em; }
.archive-home-picker input, .archive-home-picker select { min-height: 43px; margin-top: 6px; padding: 9px 10px; }
.archive-picker-count { min-height: 16px; margin: 7px 0 0; color: #718392; font: 650 8px/1.4 var(--mono); letter-spacing: .06em; }
.archive-picker-preview { position: relative; height: 190px; margin: 13px 0 0; overflow: hidden; border: 1px solid rgba(218,239,255,.16); border-radius: 11px; background: radial-gradient(circle at 50% 35%,rgba(109,230,255,.09),transparent 46%),#111923; }
.archive-picker-preview img { width: 100%; height: 100%; object-fit: contain; background: #0b1118; }
.archive-picker-preview__empty { position: absolute; inset: 0; display: grid; place-items: center; padding: 20px; color: #748592; text-align: center; font: 700 8px/1.5 var(--mono); letter-spacing: .08em; }
.archive-picker-preview.has-photo .archive-picker-preview__empty { display: none; }
.archive-picker-preview figcaption { position: absolute; right: 8px; bottom: 8px; left: 8px; padding: 8px 9px; display: grid; gap: 4px; color: #dcecf5; background: rgba(3,8,13,.82); font: 650 8px/1.3 var(--mono); }
.archive-picker-preview figcaption b { color: var(--cyan); }
.archive-picker-preview figcaption span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.archive-picker-stepper { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 8px; }
.archive-picker-stepper button { min-height: 36px; padding: 8px; border: 1px solid rgba(109,230,255,.32); border-radius: 8px; color: var(--cyan); background: rgba(109,230,255,.035); font: 730 8px/1.2 var(--mono); letter-spacing: .06em; }
.archive-picker-stepper button:disabled { opacity: .3; }
.admin-album__empty { position: absolute; inset: 0; padding: 25px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; color: #71808d; font: 750 10px/1 var(--mono); letter-spacing: .12em; text-align: center; }
.admin-album__empty small { max-width: 300px; font-size: 8px; line-height: 1.5; }
.admin-photo-manager-shell { grid-column: 1/-1; margin-top: 4px; border: 1px solid rgba(109,230,255,.23); border-radius: 18px; overflow: hidden; background: linear-gradient(145deg,rgba(218,239,255,.045),rgba(5,10,16,.35)); }
.admin-photo-manager-shell > summary { min-height: 82px; padding: 20px 25px; display: flex; justify-content: space-between; gap: 22px; align-items: center; color: inherit; cursor: pointer; list-style: none; }
.admin-photo-manager-shell > summary::-webkit-details-marker { display: none; }
.admin-photo-manager-shell > summary:hover { background: rgba(109,230,255,.04); }
.admin-photo-manager-shell > summary div span { display: block; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .11em; }
.admin-photo-manager-shell > summary div strong { display: block; margin-top: 8px; font-size: 14px; }
.admin-photo-manager-shell > summary > b { flex: 0 0 auto; padding: 12px 14px; border: 1px solid rgba(109,230,255,.32); border-radius: 9px; color: var(--cyan); font: 740 8px/1 var(--mono); letter-spacing: .08em; }
.admin-photo-manager-shell[open] > summary { border-bottom: 1px solid rgba(218,239,255,.14); background: rgba(109,230,255,.035); }
.admin-photo-manager { grid-column: 1/-1; margin-top: 4px; padding: 26px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg,rgba(218,239,255,.045),rgba(5,10,16,.35)); }
.admin-photo-manager-shell .admin-photo-manager { margin: 0; border: 0; border-radius: 0; background: transparent; }
.admin-photo-manager__head { display: flex; justify-content: space-between; gap: 25px; align-items: end; margin-bottom: 22px; }
.admin-photo-manager__head span { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .11em; }
.admin-photo-manager__head h4 { margin: 8px 0 0; font: 770 29px/.95 var(--display); letter-spacing: -.045em; }
.admin-photo-manager__head p { max-width: 430px; margin: 0; color: #8796a3; font-size: 12px; line-height: 1.55; }
.admin-photo-manager code, .admin-deleted-list code { color: var(--cyan); }
.admin-photo-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(245px,1fr)); gap: 10px; }
.admin-photo-card { min-width: 0; padding: 10px; display: flex; flex-direction: column; gap: 10px; scroll-margin-top: 120px; border: 1px solid rgba(218,239,255,.16); border-radius: 15px; background: rgba(4,9,15,.5); }
.admin-photo-card > img { width: 100%; aspect-ratio: 3/2; object-fit: cover; border-radius: 10px; background: #111923; }
.admin-photo-card__missing { width: 100%; aspect-ratio: 3/2; display: grid; place-content: center; gap: 7px; border: 1px dashed rgba(255,117,141,.34); border-radius: 10px; color: #ff9cac; background: rgba(255,80,110,.035); text-align: center; }
.admin-photo-card__missing b { font: 760 9px/1 var(--mono); letter-spacing: .09em; }
.admin-photo-card__missing span { color: #8d7b82; font-size: 10px; }
.admin-photo-card__meta { min-width: 0; padding: 2px 3px 4px; }
.admin-photo-card__meta b { display: block; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.admin-photo-card__meta small { display: block; margin-top: 7px; overflow: hidden; color: #788895; font: 650 8px/1.4 var(--mono); text-overflow: ellipsis; white-space: nowrap; }
.admin-photo-order { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.admin-photo-order form, .admin-photo-delete { margin: 0; }
.admin-photo-order button, .admin-photo-replace button, .admin-photo-delete button, .admin-photo-preview, .admin-deleted-list button { width: 100%; min-height: 36px; padding: 8px; border: 1px solid rgba(109,230,255,.36); border-radius: 8px; color: var(--cyan); background: rgba(109,230,255,.035); font: 730 8px/1.2 var(--mono); letter-spacing: .06em; text-align: center; text-decoration: none; }
.admin-photo-order button:disabled { opacity: .28; cursor: not-allowed; }
.admin-photo-replace { padding-top: 4px; border-top: 1px solid rgba(218,239,255,.1); }
.admin-photo-replace label { margin-bottom: 8px; }
.admin-photo-replace input[type="file"] { width: 100%; min-height: 40px; padding: 8px; color: #91a0ad; font-size: 9px; }
.admin-photo-delete button { border-color: rgba(255,117,141,.45); color: #ff9cac; background: rgba(255,80,110,.045); }
.admin-album-remove { min-width: 210px; min-height: 48px; padding: 13px 16px; border: 1px solid rgba(255,117,141,.45); border-radius: 10px; color: #ff9cac; background: rgba(255,80,110,.045); font: 760 9px/1 var(--mono); letter-spacing: .09em; }
.admin-task-note--danger { border-color: rgba(255,117,141,.35); background: rgba(255,80,110,.035); }
.admin-task-note--danger b { color: #ff9cac; }
.admin-photo-preview { display: grid; place-items: center; }
.admin-deleted-list { grid-column: 1/-1; margin-top: 18px; border: 1px solid rgba(255,190,109,.25); border-radius: 13px; background: rgba(255,190,109,.025); }
.admin-deleted-list summary { padding: 16px 18px; color: #ffd69c; font: 750 9px/1.3 var(--mono); letter-spacing: .08em; cursor: pointer; }
.admin-deleted-list > div { padding: 0 12px 12px; display: grid; gap: 6px; }
.admin-deleted-list form { min-width: 0; padding: 10px; display: flex; justify-content: space-between; gap: 15px; align-items: center; border: 1px solid rgba(218,239,255,.1); border-radius: 9px; }
.admin-deleted-list form span { min-width: 0; }
.admin-deleted-list form b, .admin-deleted-list form small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-deleted-list form b { color: #d5e4ee; font-size: 11px; }
.admin-deleted-list form small { margin-top: 5px; color: #73828f; font: 650 8px/1.3 var(--mono); }
.admin-deleted-list form button { width: auto; flex: 0 0 auto; }
.admin-deleted-list--open { margin-top: 0; }
.admin-removed-albums { margin-top: 20px; border: 1px solid rgba(255,190,109,.28); border-radius: 16px; overflow: hidden; background: rgba(255,190,109,.025); }
.admin-removed-albums > summary { min-height: 62px; padding: 17px 20px; display: flex; justify-content: space-between; gap: 18px; align-items: center; color: #ffd69c; cursor: pointer; list-style: none; }
.admin-removed-albums > summary::-webkit-details-marker { display: none; }
.admin-removed-albums > summary span, .admin-removed-albums > summary b { font: 750 9px/1.3 var(--mono); letter-spacing: .08em; }
.admin-removed-albums > div { padding: 0 12px 12px; display: grid; gap: 7px; }
.admin-removed-albums__warning { margin: 0 0 5px; padding: 14px 16px; display: grid; grid-template-columns: auto minmax(0,1fr); gap: 16px; align-items: center; border: 1px solid rgba(255,117,141,.2); border-radius: 10px; background: rgba(255,80,110,.035); }
.admin-removed-albums__warning b { color: #ff9cac; font: 780 8px/1.35 var(--mono); letter-spacing: .09em; }
.admin-removed-albums__warning span { color: #93a5b2; font-size: 12px; line-height: 1.5; }
.admin-removed-albums article { min-width: 0; padding: 12px; display: flex; justify-content: space-between; gap: 18px; align-items: center; border: 1px solid rgba(218,239,255,.1); border-radius: 10px; }
.admin-removed-albums article div { min-width: 0; }
.admin-removed-albums article strong, .admin-removed-albums article small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-removed-albums article small { margin-top: 6px; color: #7c8d9a; font: 680 8px/1.3 var(--mono); }
.admin-removed-albums article form { flex: 0 0 auto; margin: 0; }
.admin-removed-albums article button { width: auto; margin: 0; }
.admin-removed-albums__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.admin-permanent-delete { min-height: 48px; padding: 13px 16px; border: 1px solid rgba(255,117,141,.48); border-radius: 10px; color: #ff9cac; background: rgba(255,80,110,.045); font: 780 9px/1 var(--mono); letter-spacing: .08em; cursor: pointer; }
.archive-admin-search { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; align-items: end; }
.archive-admin-search label { margin: 0; }
.archive-admin-search .outline-button { width: auto; margin: 0; }
.archive-admin-search > a { min-height: 48px; padding: 15px; display: grid; place-items: center; color: var(--cyan); font: 740 9px/1 var(--mono); text-decoration: none; }
.archive-admin-count { margin: 19px 0 12px; color: #748592; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.archive-admin-albums { display: grid; grid-template-columns: repeat(auto-fill,minmax(235px,1fr)); gap: 10px; }
.archive-admin-album { min-width: 0; padding: 10px; display: flex; flex-direction: column; min-height: 330px; border: 1px solid var(--line); border-radius: 16px; color: var(--paper); background: linear-gradient(145deg,rgba(218,239,255,.06),rgba(5,10,16,.28)); text-decoration: none; transition: transform .28s,border-color .28s,box-shadow .28s; }
.archive-admin-album:hover { transform: translateY(-5px); border-color: var(--cyan); box-shadow: 0 20px 48px rgba(0,0,0,.25); }
.archive-admin-album > div { height: 175px; display: grid; place-items: center; overflow: hidden; border-radius: 10px; color: #778793; background: #111923; font: 730 9px/1.3 var(--mono); }
.archive-admin-album img { width: 100%; height: 100%; object-fit: cover; }
.archive-admin-album small { margin-top: 14px; color: var(--cyan); font: 700 8px/1.4 var(--mono); letter-spacing: .07em; }
.archive-admin-album strong { margin-top: 11px; font: 760 24px/.95 var(--display); letter-spacing: -.04em; }
.archive-admin-album > b { margin-top: auto; padding-top: 20px; color: #aebbc5; font: 720 8px/1 var(--mono); letter-spacing: .08em; }
.admin-deleted-overview { display: grid; grid-template-columns: repeat(auto-fill,minmax(280px,1fr)); gap: 8px; }
.admin-deleted-overview a { min-width: 0; padding: 16px; display: flex; flex-direction: column; border: 1px solid rgba(255,190,109,.23); border-radius: 13px; color: inherit; background: rgba(255,190,109,.025); text-decoration: none; }
.admin-deleted-overview span { color: #ffd69c; font: 700 8px/1 var(--mono); }
.admin-deleted-overview strong { margin-top: 9px; overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.admin-deleted-overview b { margin-top: 18px; color: var(--cyan); font: 720 8px/1 var(--mono); }
.archive-album-admin > .admin-back-link { display: inline-flex; margin-bottom: 42px; }
.archive-album-admin .admin-title h1 { overflow-wrap: anywhere; font-size: clamp(52px,7vw,98px); line-height: .86; }
.archive-photo-section { margin-top: 55px; }
.archive-photo--empty { display: flex; flex-direction: column; justify-content: flex-end; padding: 18px; border: 1px dashed rgba(109,230,255,.35); background: radial-gradient(ellipse at 70% 20%,rgba(109,230,255,.09),transparent 55%),#101720; }
.admin-album__actionbar { grid-column: 1/-1; padding: 17px; display: grid; grid-template-columns: auto minmax(0,1fr); gap: 20px; align-items: center; border: 1px solid rgba(218,239,255,.18); border-radius: 16px; background: linear-gradient(120deg,rgba(218,239,255,.065),rgba(5,10,16,.46)); }
.admin-album__saved-state { min-width: 185px; }
.admin-album__saved-state span { display: block; color: var(--cyan); font: 780 12px/1 var(--mono); letter-spacing: .11em; }
.admin-album__saved-state b { display: block; margin-top: 8px; color: #768795; font: 700 8px/1.3 var(--mono); letter-spacing: .09em; }
.admin-album__saved-state b.is-unsaved { color: #ffd69c; }
.admin-album__actions { min-width: 0; display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 12px; }
.admin-album__actions > form { margin: 0; }
.admin-album__actions .chrome-button,
.admin-album__actions .outline-button,
.admin-publish-button { width: auto; min-width: 210px; min-height: 48px; margin: 0; }
.admin-preview-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; text-decoration: none; }
.admin-preview-button.is-disabled { align-items: center; color: #5f6e7a; border-color: rgba(218,239,255,.12); cursor: not-allowed; }
.admin-publish-button { padding: 13px 16px; display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid #76e9ff; border-radius: 10px; color: #061019; background: #76e9ff; font: 780 9px/1 var(--mono); letter-spacing: .1em; }
.admin-publish-button.is-unpublish { border-color: rgba(255,190,109,.55); color: #ffd69c; background: rgba(255,190,109,.055); }
.admin-publish-button:disabled { opacity: .35; cursor: not-allowed; }

@media (max-width: 1100px) {
    .admin-overview-grid, .admin-steps, .admin-stat-grid { grid-template-columns: repeat(2,1fr); }
    .homepage-photo-form { grid-template-columns: 1fr 1fr; }
    .homepage-photo-form .chrome-button { grid-column: 1/-1; }
}

@media (max-width: 780px) {
    .admin-bar { min-height: auto; padding-top: 11px; padding-bottom: 9px; row-gap: 9px; }
    .admin-bar nav { grid-column: 1/-1; width: 100%; display: flex; gap: 5px; overflow-x: auto; padding-bottom: 3px; scrollbar-width: thin; }
    .admin-bar nav a { flex: 0 0 auto; min-height: 34px; padding: 10px; border: 1px solid rgba(218,239,255,.12); }
    .admin-main { padding-top: 58px; }
    .admin-overview { margin-top: 48px; }
    .admin-overview-grid, .admin-steps, .admin-stat-grid, .ftp-import-grid { grid-template-columns: 1fr 1fr; }
    .admin-overview-card { min-height: 285px; }
    .admin-mini-steps { grid-template-columns: 1fr; }
    .admin-split--instructions, .homepage-photo-form, .admin-album { grid-template-columns: 1fr; }
    .homepage-photo-form .chrome-button { grid-column: auto; }
    .admin-album__preview { min-height: 340px; }
    .admin-album__extras { grid-column: auto; grid-template-columns: 1fr; }
    .compact-upload { grid-template-columns: 1fr; }
    .compact-sync { align-items: stretch; flex-direction: column; }
    .admin-task-note { grid-template-columns: 1fr; gap: 8px; }
    .homepage-photo-form--three, .archive-admin-search { grid-template-columns: 1fr; }
    .homepage-photo-form--three .chrome-button { grid-column: auto; width: 100%; }
    .archive-admin-search > a { min-height: 38px; }
    .admin-photo-manager { padding: 16px; }
    .admin-photo-manager__head { align-items: start; flex-direction: column; }
    .admin-photo-grid, .archive-admin-albums { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .homepage-photo-form__grid--gallery { grid-template-columns: 1fr; }
    .admin-album__actionbar { grid-template-columns: 1fr; gap: 16px; }
    .admin-album__actions { display: grid; grid-template-columns: 1fr; }
    .admin-album__actions > form,
    .admin-album__actions .chrome-button,
    .admin-album__actions .outline-button,
    .admin-publish-button { width: 100%; }
    .admin-deleted-list form { align-items: stretch; flex-direction: column; }
    .admin-deleted-list form button { width: 100%; }
    .admin-album-order { padding: 18px; }
    .admin-album-order__head, .admin-album-order__save { align-items: stretch; flex-direction: column; }
    .admin-album-order__state { align-self: flex-start; }
    .admin-album-order__save .chrome-button { width: 100%; }
    .admin-album-order li { grid-template-columns: 38px 28px 58px minmax(0,1fr); }
    .admin-album-order__buttons { grid-column: 1/-1; grid-template-columns: 1fr 1fr; }
    .admin-album-order__buttons button { width: 100%; }
    .admin-photo-manager-shell > summary { padding: 18px; align-items: flex-start; flex-direction: column; }
    .admin-photo-manager-shell > summary > b { width: 100%; text-align: center; }
    .admin-album-remove { width: 100%; }
    .admin-removed-albums > summary, .admin-removed-albums article { align-items: stretch; flex-direction: column; }
    .admin-removed-albums__warning { grid-template-columns: 1fr; gap: 7px; }
    .admin-removed-albums__actions { display: grid; grid-template-columns: 1fr; }
    .admin-removed-albums__actions form { width: 100%; }
    .admin-removed-albums article button { width: 100%; }
    .session-status { left: 12px; bottom: max(12px,env(safe-area-inset-bottom)); width: min(330px,calc(100% - 78px)); }
    .session-status__role { min-height: 50px; padding-block: 7px; }
    .session-status__role strong { font-size: 11px; }
    .admin-bar > form button span { display: none; }
}

@media (max-width: 500px) {
    .admin-overview-grid, .admin-steps, .admin-stat-grid, .ftp-import-grid { grid-template-columns: 1fr; }
    .admin-overview-card { min-height: 255px; }
    .admin-steps li { min-height: 130px; }
    .admin-album__headline { align-items: stretch; flex-direction: column; }
    .existing-album-upload__preview { aspect-ratio: 16/10; }
    .existing-album-upload__preview figcaption { align-items: flex-start; flex-direction: column; }
    .existing-album-upload > .chrome-button { width: 100%; }
    .admin-album__preview { min-height: 285px; }
    .current-gallery-intro { padding: 25px; }
    .admin-photo-grid, .archive-admin-albums { grid-template-columns: 1fr; }
}

* { box-sizing: border-box; }
html { width: 100%; max-width: 100%; overflow-x: hidden; overflow-x: clip; scroll-behavior: smooth; background: var(--ink); }
html.has-page-transition-anchor { scroll-behavior: auto !important; }
body { width: 100%; max-width: 100%; min-width: 0; margin: 0; overflow-x: hidden; overflow-x: clip; color: var(--paper); background: var(--ink); font-family: var(--body); }
body.nav-open { overflow: hidden; }
.site-body::after { content: ""; position: fixed; z-index: 9999; inset: 0; opacity: 0; pointer-events: none; background: linear-gradient(145deg, #05090e 0%, #08111b 58%, #0b1322 100%); will-change: opacity; }
html.has-page-transition-entry .site-body::after { opacity: 1; }
.site-body.is-page-leaving { overflow: hidden; pointer-events: none; }
.site-body.is-page-leaving::after { animation: luzifer-page-cover-in .25s cubic-bezier(.4,0,.2,1) both; }
.site-body.is-page-entering::after { animation: luzifer-page-cover-out .4s cubic-bezier(.2,.72,.25,1) both; }
.site-body.is-page-entering:not(.is-page-ready)::after { opacity:1; animation:luzifer-page-cover-out .4s 5s ease both; }
@keyframes luzifer-page-cover-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes luzifer-page-cover-out { from { opacity: 1; } to { opacity: 0; } }
a { color: inherit; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
::selection { color: var(--ink); background: var(--cyan); }

.chrome-ambient { position: fixed; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; }
.chrome-ambient i { position: absolute; display: block; border-radius: 50%; filter: blur(100px); opacity: .1; }
.chrome-ambient i:nth-child(1) { width: 42vw; height: 42vw; right: -15vw; top: -16vw; background: var(--cyan); }
.chrome-ambient i:nth-child(2) { width: 34vw; height: 34vw; left: -20vw; top: 45vh; background: var(--blue); }
.chrome-ambient i:nth-child(3) { width: 28vw; height: 28vw; right: 22vw; bottom: -22vw; background: white; }
.section-shell { width: var(--shell); max-width: 100%; margin-inline: auto; }
.micro-label { margin: 0; color: var(--chrome); font: 700 11px/1.3 var(--mono); letter-spacing: .14em; text-transform: uppercase; }
.micro-label i { display: inline-block; width: 8px; height: 8px; margin-right: 9px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(109, 230, 255, .1), 0 0 22px var(--cyan); }

.site-header { position: absolute; z-index: 50; top: 0; left: 50%; width: var(--shell); height: 92px; transform: translateX(-50%); display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 42px; border-bottom: 1px solid var(--line); }
.site-header.is-authenticated { gap: 20px; }
.site-header.is-authenticated .site-nav { gap: clamp(10px,1.55vw,24px); }
.site-header__actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; font: 800 15px/1 var(--display); letter-spacing: -.055em; }
.brand > span:last-child { display: block; }
.brand strong { color: var(--cyan); }
.brand small { display: block; margin-top: 6px; color: var(--muted); font: 650 8px/1 var(--mono); letter-spacing: .16em; }
.brand-l { display: grid; width: 38px; height: 38px; place-items: center; overflow: hidden; border: 1px solid var(--line-strong); background: linear-gradient(140deg, rgba(255,255,255,.25), rgba(255,255,255,.03) 45%, rgba(93,130,255,.25)); box-shadow: inset 0 1px rgba(255,255,255,.35), 0 12px 30px rgba(0,0,0,.2); color: var(--paper); font: 900 19px/1 var(--display); transform: skew(-8deg); }
.site-nav { display: flex; justify-content: center; gap: clamp(16px, 2.5vw, 38px); }
.site-nav__mobile-only { display: none; }
.site-nav a { position: relative; color: #b8c3cf; text-decoration: none; font: 700 10px/1 var(--mono); letter-spacing: .09em; text-transform: uppercase; transition: color .25s; }
.site-nav a::after { content: ""; position: absolute; right: 100%; bottom: -12px; left: 0; height: 1px; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); transition: right .25s; }
.site-nav a:hover, .site-nav a.is-active { color: white; }
.site-nav a:hover::after, .site-nav a.is-active::after { right: 0; }
.header-contact { padding: 11px 13px; border: 1px solid var(--line-strong); text-decoration: none; font: 700 9px/1 var(--mono); letter-spacing: .1em; transition: background .2s, color .2s, transform .2s; }
.header-contact:hover { color: var(--ink); background: var(--chrome); transform: translateY(-2px); }
.header-contact span { color: var(--cyan); font-size: 14px; margin-left: 7px; }
.nav-toggle { display: none; }

.hero-chrome { position: relative; min-height: 850px; overflow: hidden; padding: 150px max(32px, calc((100% - 1380px) / 2)) 80px; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 5vw; isolation: isolate; }
.hero-chrome::before { content: ""; position: absolute; z-index: -3; inset: 0; background: radial-gradient(ellipse 70% 70% at 78% 25%, rgba(93,130,255,.3), transparent 70%), linear-gradient(120deg, #06090e 0 48%, #111a26 100%); }
.hero-chrome::after { content: ""; position: absolute; z-index: -2; width: 95%; height: 180%; right: -50%; top: -45%; transform: rotate(20deg); background: linear-gradient(125deg, transparent 31%, rgba(255,255,255,.22) 43%, rgba(109,230,255,.06) 50%, transparent 59%); animation: chromeSweep 12s ease-in-out infinite alternate; }
.hero-light { position: absolute; z-index: -1; width: 45vw; height: 45vw; top: 5%; right: 3%; border-radius: 50%; background: radial-gradient(circle, rgba(109,230,255,.15), rgba(93,130,255,.09) 36%, transparent 70%); filter: blur(12px); animation: breathe 6s ease-in-out infinite; }
.hero-copy { position: relative; z-index: 2; }
.hero-copy h1, .era-heading h2, .tech-heading h2, .archive-bridge__head h2, .results-stage h2, .future-card h2, .contact-copy h2, .page-hero h1, .admin-title h1 { margin: 24px 0; font: 850 clamp(58px, 6.9vw, 107px)/.81 var(--display); letter-spacing: -.083em; text-transform: uppercase; }
.hero-copy h1 em, .era-heading h2 em, .tech-heading h2 em, .archive-bridge__head h2 em, .results-stage h2 em, .future-card h2 em, .contact-copy h2 em, .page-hero h1 em, .admin-title h1 em { color: var(--cyan); font-style: normal; font-weight: 300; text-shadow: 0 0 30px rgba(109,230,255,.2); }
.hero-lead { max-width: 520px; margin: 28px 0; color: #c4ced8; font-size: 15px; line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 27px; }
.chrome-button { display: inline-flex; justify-content: space-between; align-items: center; gap: 18px; min-width: 205px; padding: 15px 17px; border: 1px solid rgba(255,255,255,.5); color: #071018; background: linear-gradient(125deg, #f7fdff 0%, #a7bbce 36%, #eef9ff 53%, #7895b1 100%); box-shadow: inset 0 1px white, 6px 7px 0 rgba(93,130,255,.45), 0 14px 35px rgba(0,0,0,.25); text-decoration: none; font: 800 10px/1 var(--mono); letter-spacing: .11em; transition: transform .2s, box-shadow .2s, filter .2s; }
button.chrome-button { appearance: none; }
.chrome-button:hover { transform: translate(-3px,-3px); filter: brightness(1.13); box-shadow: inset 0 1px white, 9px 10px 0 rgba(93,130,255,.48), 0 18px 40px rgba(0,0,0,.3); }
.chrome-button span, .chrome-button b { color: #3554b9; font-size: 17px; }
.line-link { display: inline-flex; align-items: center; gap: 8px; padding-bottom: 7px; border-bottom: 1px solid var(--cyan); color: var(--paper); text-decoration: none; font: 750 10px/1 var(--mono); letter-spacing: .11em; }
.line-link span { color: var(--cyan); font-size: 17px; transition: transform .2s; }
.line-link:hover span { transform: translate(3px,-3px); }
.hero-visual { position: relative; min-height: 550px; display: flex; align-items: center; justify-content: center; }
.hero-photo-placeholder { position: relative; width: min(590px, 86%); min-height: 500px; padding: 35px; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid rgba(255,255,255,.33); background: linear-gradient(140deg, rgba(223,242,255,.2), rgba(93,130,255,.05) 35%, rgba(5,9,14,.7) 70%), #101722; box-shadow: inset 0 1px rgba(255,255,255,.4), inset 30px 0 80px rgba(255,255,255,.03), -25px 30px 70px rgba(0,0,0,.42); transform: perspective(1100px) rotateY(-8deg) rotateX(2deg); }
.hero-photo-placeholder::before { content: ""; position: absolute; inset: -40%; background: linear-gradient(115deg, transparent 37%, rgba(255,255,255,.3) 48%, transparent 57%); animation: imageGlint 8s ease-in-out infinite; }
.hero-photo-placeholder > * { position: relative; z-index: 1; }
.hero-photo-placeholder > span { align-self: flex-start; padding: 7px 9px; border: 1px solid var(--cyan); color: var(--cyan); font: 700 9px/1 var(--mono); letter-spacing: .13em; }
.hero-photo-placeholder strong { color: rgba(244,249,253,.76); font: 750 clamp(38px, 4.6vw, 71px)/.86 var(--display); letter-spacing: -.07em; }
.hero-photo-placeholder small { max-width: 300px; color: #a8b5c3; font: 600 10px/1.55 var(--mono); letter-spacing: .05em; }
.hero-distance { position: absolute; z-index: 3; right: 0; bottom: 25px; width: 174px; padding: 18px; border: 1px solid rgba(255,255,255,.4); background: rgba(5,9,14,.72); backdrop-filter: blur(16px); box-shadow: 9px 10px 0 rgba(93,130,255,.35); }
.hero-distance b { display: block; color: var(--chrome); font: 850 83px/.7 var(--display); letter-spacing: -.1em; }
.hero-distance b span { color: var(--cyan); }
.hero-distance small { display: block; margin-top: 14px; color: #b5c3cf; font: 700 9px/1.4 var(--mono); letter-spacing: .12em; }
.hero-glint { position: absolute; z-index: 4; top: 8%; right: 12%; width: 65px; height: 65px; background: linear-gradient(90deg, transparent 48%, white 49% 51%, transparent 52%), linear-gradient(0deg, transparent 48%, white 49% 51%, transparent 52%); filter: drop-shadow(0 0 14px white); animation: twinkle 2.7s ease-in-out infinite; }
.hero-rail { position: absolute; right: max(32px, calc((100% - 1380px)/2)); bottom: 0; left: max(32px, calc((100% - 1380px)/2)); height: 55px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line-strong); color: #8f9daa; font: 700 9px/1 var(--mono); letter-spacing: .13em; }

.section-index { display: flex; gap: 12px; align-items: center; }
.section-index span { display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid var(--line-strong); color: var(--cyan); font: 800 9px/1 var(--mono); }
.section-index p { margin: 0; color: #8593a1; font: 750 10px/1 var(--mono); letter-spacing: .13em; }
.section-index.light span { border-color: rgba(8,12,18,.25); color: #244fcc; }
.section-index.light p { color: #485767; }

.era-section { padding: 140px 0; }
.era-heading, .tech-heading { display: grid; grid-template-columns: 1fr .54fr; align-items: end; gap: 8vw; margin: 55px 0 80px; }
.era-heading h2, .tech-heading h2 { margin: 0; }
.era-heading p, .tech-heading p { margin: 0 0 8px; color: #aab6c2; font-size: 14px; line-height: 1.75; }
.current-stage { min-height: 540px; display: grid; grid-template-columns: 1.2fr .8fr; border: 1px solid var(--line); background: linear-gradient(125deg, rgba(218,239,255,.08), rgba(93,130,255,.04)); box-shadow: inset 0 1px rgba(255,255,255,.12), 0 35px 70px rgba(0,0,0,.22); }
.current-stage__image { position: relative; min-height: 540px; padding: 32px; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; background: radial-gradient(ellipse at 60% 20%, rgba(109,230,255,.18), transparent 52%), linear-gradient(145deg, #1d2b3b, #0a1018 70%); }
.current-stage__image::before { content: ""; position: absolute; width: 80%; height: 160%; right: -45%; top: -30%; transform: rotate(18deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,.15), transparent); animation: chromeSweep 9s ease-in-out infinite alternate; }
.current-stage__image > * { position: relative; }
.current-stage__image > span { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .13em; }
.current-stage__image strong { color: rgba(244,249,253,.45); font: 800 clamp(42px,6vw,82px)/.84 var(--display); letter-spacing: -.075em; }
.current-stage__image small { color: #98a8b7; font: 650 9px/1.5 var(--mono); letter-spacing: .08em; }
.current-stage__copy { padding: clamp(34px,5vw,75px); display: flex; flex-direction: column; justify-content: center; }
.current-stage__copy > p { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .13em; }
.current-stage__copy h3 { margin: 18px 0 42px; font: 780 clamp(38px,4.5vw,67px)/.88 var(--display); letter-spacing: -.07em; text-transform: uppercase; }
.current-stage__copy h3 em { color: var(--chrome); font-style: normal; font-weight: 300; }
.current-facts { display: grid; gap: 11px; }
.current-facts span { display: flex; align-items: baseline; gap: 12px; padding-top: 11px; border-top: 1px solid var(--line); color: #a7b4c1; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.current-facts b { color: var(--paper); font: 800 24px/1 var(--display); letter-spacing: -.06em; }

.tech-section { padding: 130px 0; color: #071018; background: #eaf3f8; }
.tech-heading { margin-bottom: 65px; }
.tech-heading p { color: #475766; }
.tech-heading h2 em { color: #315edb; text-shadow: none; }
.tech-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; }
.tech-card { min-height: 360px; padding: 23px; display: flex; flex-direction: column; position: relative; overflow: hidden; border: 1px solid rgba(8,12,18,.1); background: #d8e3ea; }
.tech-card::after { content: ""; position: absolute; width: 85%; height: 170%; right: -70%; top: -35%; transform: rotate(17deg); background: rgba(255,255,255,.45); transition: right .55s ease; }
.tech-card:hover::after { right: 90%; }
.tech-card > span { font: 750 9px/1 var(--mono); letter-spacing: .12em; color: #5b6873; }
.tech-card h3 { margin: 49px 0 16px; font: 830 37px/.86 var(--display); letter-spacing: -.07em; }
.tech-card p { margin: 0; color: #46545f; font-size: 12px; line-height: 1.65; }
.tech-card > b { margin-top: auto; color: #455563; font: 750 9px/1 var(--mono); letter-spacing: .12em; }
.tech-card--chrome { background: linear-gradient(135deg,#faffff,#93aabd 42%,#e9f7ff 62%,#8ba1b2); }
.tech-card--blue { color: white; background: #355ed1; }
.tech-card--blue > span, .tech-card--blue p, .tech-card--blue > b { color: #dfe8ff; }
.screen-row { display: flex; gap: 5px; margin-top: auto; }
.screen-row i { flex: 1; padding: 8px; color: #8393a0; background: #071018; font: 650 8px/1 var(--mono); font-style: normal; }
.screen-row i:nth-child(2) { box-shadow: inset 0 0 0 1px var(--cyan); }
.screen-row b { display: block; margin-top: 7px; color: var(--cyan); font: 750 18px/.8 var(--mono); letter-spacing: -.08em; }

.archive-bridge { padding: 135px 0; }
.archive-bridge__head { display: grid; grid-template-columns: 1.18fr .55fr; gap: 8vw; align-items: end; margin: 55px 0 70px; }
.archive-bridge__head h2 { margin: 0; }
.archive-bridge__head > div { padding-bottom: 9px; }
.archive-bridge__head p { margin: 0 0 24px; color: #aeb9c4; font-size: 14px; line-height: 1.75; }
.archive-strip { display: grid; grid-template-columns: 1fr .75fr 1fr; gap: 11px; align-items: center; }
.archive-photo { position: relative; height: 395px; overflow: hidden; color: white; text-decoration: none; background: #131a22; }
.archive-photo--tall { height: 485px; }
.archive-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(4,7,11,.88), transparent 55%); transition: background .3s; }
.archive-photo img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.42) saturate(.62) contrast(1.1); transition: transform .7s, filter .7s; }
.archive-photo:hover img { transform: scale(1.065); filter: grayscale(0) saturate(1); }
.archive-photo span, .archive-photo strong { position: absolute; z-index: 2; left: 17px; right: 17px; }
.archive-photo span { top: 16px; width: max-content; padding: 7px 8px; border: 1px solid rgba(255,255,255,.6); background: rgba(5,8,12,.55); backdrop-filter: blur(8px); color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .11em; }
.archive-photo strong { bottom: 18px; font: 750 25px/.95 var(--display); letter-spacing: -.05em; }
.archive-numbers { margin-top: 12px; display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }
.archive-numbers span { min-height: 105px; padding: 18px; border: 1px solid var(--line); color: #82909e; font: 700 9px/1.3 var(--mono); letter-spacing: .1em; }
.archive-numbers b { display: block; margin-bottom: 13px; color: var(--chrome); font: 830 34px/.8 var(--display); letter-spacing: -.07em; }

.results-stage { padding: 130px 0; color: #071018; background: linear-gradient(130deg,#dff3ff,#8da4ba 42%,#f4fbff 67%,#738ba3); }
.results-stage__inner { display: grid; grid-template-columns: 1.05fr .8fr; gap: 9vw; align-items: center; }
.results-stage h2 { font-size: clamp(57px,7vw,100px); margin: 47px 0 26px; }
.results-stage h2 em { color: #315bd2; text-shadow: none; }
.results-stage__copy > p { max-width: 520px; margin: 0 0 29px; color: #334554; font-size: 14px; line-height: 1.75; }
.latest-result { min-height: 390px; padding: 28px; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.65); color: white; background: rgba(7,15,24,.9); backdrop-filter: blur(18px); box-shadow: 16px 18px 0 rgba(46,81,178,.4), inset 0 1px rgba(255,255,255,.2); }
.latest-result > p { margin: 0; color: #95a7b8; font: 700 9px/1 var(--mono); letter-spacing: .12em; }
.latest-result time { margin-top: 50px; color: var(--cyan); font: 750 13px/1 var(--mono); letter-spacing: .1em; }
.latest-result h3 { max-width: 450px; margin: 12px 0 35px; font: 750 44px/.9 var(--display); letter-spacing: -.065em; }
.latest-result > div { display: flex; gap: 35px; padding: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.latest-result > div span { color: #81909f; font: 700 9px/1.2 var(--mono); letter-spacing: .1em; }
.latest-result > div b { display: block; margin-top: 7px; color: var(--chrome); font-size: 12px; }
.latest-result > a { margin-top: auto; color: var(--cyan); text-decoration: none; font: 750 10px/1 var(--mono); letter-spacing: .1em; }
.result-ready { display: flex; align-items: center; margin-top: 50px; color: var(--cyan); font: 750 10px/1 var(--mono); letter-spacing: .12em; }
.result-ready i { width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 14px var(--cyan); animation: pulse 1.8s infinite; }

.future-grid { padding: 135px 0; display: grid; grid-template-columns: 1.1fr .9fr .9fr; gap: 10px; }
.future-card { min-height: 470px; padding: 27px; display: flex; flex-direction: column; position: relative; overflow: hidden; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(218,239,255,.08),rgba(218,239,255,.02)); }
.future-card > span { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .13em; }
.future-card h2 { margin: 58px 0 19px; font-size: clamp(38px,4.2vw,63px); }
.future-card p { margin: 0 0 25px; color: #9eabb8; font-size: 12px; line-height: 1.68; }
.future-card .line-link { margin-top: auto; align-self: flex-start; }
.future-card--live { background: radial-gradient(circle at 80% 20%,rgba(93,130,255,.28),transparent 50%), #0c121b; }
.live-display { margin-top: auto; padding: 20px; border: 1px solid var(--line-strong); display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 4px 12px; }
.live-display i { grid-row: 1 / span 2; width: 12px; height: 12px; border-radius: 50%; background: #71808e; }
.live-display b { font: 760 22px/.8 var(--display); letter-spacing: -.04em; }
.live-display small { color: #768493; font: 700 8px/1 var(--mono); letter-spacing: .12em; }
.future-card--members { background: linear-gradient(145deg,#1a2633,#0b1017); }
.future-card--bar { color: #061019; background: linear-gradient(130deg,#eaf5fb,#98acbd 47%,#e5f2f8); }
.future-card--bar > span, .future-card--bar p { color: #40515f; }
.future-card--bar h2 em { color: #315bd2; text-shadow: none; }

.contact-section { padding: 130px 0; background: #0f1620; }
.contact-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 9vw; }
.contact-copy h2 { margin: 55px 0 27px; }
.contact-copy > p { max-width: 390px; color: #a9b5c1; font-size: 14px; line-height: 1.72; }
.contact-copy > small { display: block; margin-top: 30px; color: var(--cyan); font: 700 9px/1.5 var(--mono); letter-spacing: .11em; }
.contact-form { padding: 34px; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(218,239,255,.08),rgba(218,239,255,.025)); box-shadow: inset 0 1px rgba(255,255,255,.12), 0 25px 60px rgba(0,0,0,.22); }
.contact-form label, .admin-panel label, .member-form label { display: block; position: relative; margin-bottom: 20px; color: #83919f; font: 700 9px/1 var(--mono); letter-spacing: .12em; }
.contact-form label > span, .admin-panel label > span, .member-form label > span { display: block; transition: color .2s, transform .2s; }
.contact-form label:focus-within > span, .admin-panel label:focus-within > span, .member-form label:focus-within > span { color: var(--cyan); transform: translateX(4px); }
input, textarea, select { width: 100%; display: block; margin-top: 8px; padding: 13px 0; border: 0; border-bottom: 1px solid #526170; border-radius: 0; outline: 0; color: var(--paper); background: transparent; font: 500 13px/1.3 var(--body); transition: border .2s, box-shadow .2s, padding .2s; }
input:focus, textarea:focus, select:focus { padding-left: 9px; border-color: var(--cyan); box-shadow: 0 5px 0 -4px var(--cyan); }
input::placeholder, textarea::placeholder { color: #5d6975; }
/* Native Auswahllisten: Vorder- UND Hintergrund festlegen, auch im OS-Popup.
   Gemeinsame Vorgabe für öffentliche Seiten, Fahrerlager und Administration. */
select { color-scheme: dark; background-color: #10212c; }
select option, select optgroup { color: #e6f6ff; background-color: #10212c; }
select option:checked { color: #f1faff; background-color: #234858; }
select option:disabled, select optgroup:disabled { color: #91a3b0; background-color: #10212c; }
@media (forced-colors: active) {
    select, select option, select optgroup { forced-color-adjust: auto; color: CanvasText; background-color: Canvas; }
    select option:checked { color: HighlightText; background-color: Highlight; }
    select option:disabled, select optgroup:disabled { color: GrayText; }
}
textarea { min-height: 110px; resize: vertical; }
.field-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.contact-action { display: flex; justify-content: space-between; align-items: end; gap: 25px; margin-top: 25px; }
.captcha-field { flex: 1; margin: 0 !important; }
.captcha-field b { display: inline-block; margin-top: 12px; color: var(--cyan); font-size: 12px; }
.captcha-field input { display: inline-block; width: 65px; margin: 0 0 0 8px; padding: 6px; }
.contact-action .chrome-button { flex: 0 0 auto; }
.privacy-note { margin: 18px 0 0; color: #697684; font-size: 11px; line-height: 1.5; }
.honey-field { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-notice, .admin-notice { margin: 0 0 22px; padding: 13px 15px; border-left: 3px solid var(--cyan); color: #cfefff; background: rgba(109,230,255,.08); font-size: 12px; line-height: 1.5; }
.form-notice.is-error, .admin-notice.is-error { border-color: #ff7088; color: #ffc1cb; background: rgba(255,84,110,.08); }

.site-footer { width: var(--shell); min-height: 130px; margin-inline: auto; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; border-top: 1px solid var(--line); }
.footer-brand span { display: block; font: 800 18px/1 var(--display); letter-spacing: -.055em; }
.footer-brand strong { color: var(--cyan); }
.footer-brand small { display: block; margin-top: 6px; color: #71808e; font: 700 8px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.site-footer > p { color: #71808e; font-size: 11px; }
.site-footer nav { max-width: 700px; justify-self: end; display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 12px 18px; }
.site-footer nav a { color: #8997a5; text-decoration: none; font: 700 9px/1 var(--mono); letter-spacing: .09em; text-transform: uppercase; }
.site-footer nav a:hover { color: var(--cyan); }
.back-to-top { position: fixed; z-index: 90; right: max(18px,env(safe-area-inset-right)); bottom: max(18px,calc(env(safe-area-inset-bottom) + 18px)); width: 94px; min-height: 48px; display: grid; grid-template-columns: 28px 1fr; place-items: center; padding: 7px 10px; border: 1px solid rgba(109,230,255,.55); color: var(--cyan); background: rgba(7,13,20,.9); box-shadow: 0 16px 35px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.08); backdrop-filter: blur(14px); opacity: 0; visibility: hidden; transform: translateY(16px); pointer-events: none; transition: opacity .24s ease,visibility .24s ease,transform .24s ease,background .2s ease; }
.back-to-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.back-to-top span { font: 400 24px/1 var(--display); }
.back-to-top small { color: var(--chrome); font: 750 8px/1.2 var(--mono); letter-spacing: .08em; }
.back-to-top:hover { color: #071018; background: var(--cyan); }
.back-to-top:hover small { color: #071018; }
.back-to-top:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.reader-open .back-to-top, .video-open .back-to-top, .source-data-open .back-to-top, .nav-open .back-to-top { opacity: 0; visibility: hidden; pointer-events: none; }

.reveal { opacity: 0; transform: translateY(30px); transition: opacity .75s ease, transform .75s cubic-bezier(.2,.7,.2,1); }
.reveal[data-delay="1"] { transition-delay: .1s; }
.reveal[data-delay="2"] { transition-delay: .2s; }
.reveal[data-delay="3"] { transition-delay: .3s; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes chromeSweep { to { transform: translateX(-28%) rotate(20deg); } }
@keyframes imageGlint { 0%,28% { transform: translateX(-70%) rotate(10deg); } 67%,100% { transform: translateX(70%) rotate(10deg); } }
@keyframes breathe { 50% { transform: scale(1.08); opacity: .75; } }
@keyframes twinkle { 50% { opacity: .25; transform: scale(.7) rotate(45deg); } }
@keyframes pulse { 70% { box-shadow: 0 0 0 9px transparent; } 100% { box-shadow: 0 0 0 0 transparent; } }

@media (max-width: 1050px) {
    :root { --shell: min(100% - 48px, 1380px); }
    .site-header { grid-template-columns: auto 1fr auto; gap: 22px; }
    .site-nav { gap: 12px; }
    .site-nav a { font-size: 9px; }
    .site-header.is-authenticated .header-contact { width: 42px; height: 42px; padding: 0; display: grid; place-items: center; overflow: hidden; font-size: 0; }
    .site-header.is-authenticated .header-contact span { margin: 0; font-size: 15px; }
    .site-header.is-authenticated .session-status { min-width: 172px; }
    .hero-chrome { grid-template-columns: 1fr 1fr; padding-inline: 24px; }
    .hero-copy h1 { font-size: clamp(54px,7.3vw,76px); }
    .tech-grid { grid-template-columns: 1fr 1fr; }
    .future-grid { grid-template-columns: 1fr 1fr; }
    .future-card--bar { grid-column: 1 / -1; min-height: 360px; }
    .site-footer { grid-template-columns: 1fr 1fr; }
    .site-footer > p { display: none; }
}

@media (max-width: 780px) {
    :root { --shell: calc(100% - 34px); }
    .site-header { right: 17px; left: 17px; width: auto; max-width: calc(100% - 34px); height: 74px; transform: none; grid-template-columns: minmax(0,1fr) auto; }
    .site-header.is-authenticated { grid-template-columns: minmax(0,1fr) auto auto; column-gap: 6px; }
    .brand { min-width: 0; }
    .brand > span:last-child { min-width: 0; }
    .brand { position: relative; z-index: 4; }
    .header-contact { display: none; }
    .site-header__actions { min-width: 0; }
    .site-header.is-authenticated .session-status { min-width: 0; }
    .site-header.is-authenticated .session-status__role { min-height: 43px; padding: 4px 5px 4px 8px; gap: 7px; border-radius: 11px; }
    .site-header.is-authenticated .session-status__role > div { min-width: 6px; }
    .site-header.is-authenticated .session-status__role > div > span { width: 6px; overflow: hidden; font-size: 0; }
    .site-header.is-authenticated .session-status__role > div > span i { margin: 0; }
    .site-header.is-authenticated .session-status__role strong { display: none; }
    .site-header.is-authenticated .session-status__role button { min-height: 33px; padding: 7px; }
    .site-header.is-authenticated .session-status__logout-full { display: none; }
    .site-header.is-authenticated .session-status__logout-short { display: inline; }
    .site-header.is-authenticated .nav-toggle { min-width: 66px; padding-left: 6px; column-gap: 6px; }
    .nav-toggle { position: relative; z-index: 4; display: grid; grid-template-columns: 18px auto; column-gap: 8px; align-items: center; min-width: 94px; min-height: 48px; padding: 8px 0 8px 10px; border: 0; color: white; background: transparent; }
    .nav-toggle span { grid-column: 1; display: block; width: 18px; height: 1px; background: var(--cyan); transition: transform .25s; }
    .nav-toggle b { grid-column: 2; grid-row: 1 / span 2; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
    .nav-open .nav-toggle span:first-child { transform: translateY(3px) rotate(45deg); }
    .nav-open .nav-toggle span:nth-child(2) { transform: translateY(-3px) rotate(-45deg); }
    .site-nav { position: fixed; z-index: 3; top: max(82px,calc(env(safe-area-inset-top) + 74px)); right: 17px; bottom: auto; left: auto; width: min(390px,calc(100% - 34px)); max-width: calc(100% - 34px); min-height: 0; max-height: calc(100vh - 99px); max-height: calc(100dvh - 99px - env(safe-area-inset-bottom)); display: flex; flex-direction: column; justify-content: flex-start; gap: 5px; padding: 10px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; border: 1px solid rgba(218,239,255,.22); border-radius: 16px; background: #05090e; box-shadow: 0 26px 65px rgba(0,0,0,.58),0 0 0 100vmax rgba(2,5,9,.58); opacity: 0; visibility: hidden; transform: translateY(-8px) scale(.985); transform-origin: top right; transition: opacity .22s ease,visibility .22s ease,transform .22s ease; }
    .nav-open .site-nav { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }
    .site-nav a, .site-nav .site-nav__mobile-only { width: 100%; min-height: 45px; padding: 0 13px; display: flex; align-items: center; border: 1px solid rgba(218,239,255,.1); border-radius: 10px; color: #dbe7f2; font: 750 clamp(18px,5.7vw,23px)/1 var(--display); letter-spacing: -.025em; text-transform: uppercase; }
    .site-nav a::after { top: 50%; right: 0; bottom: auto; left: auto; width: 0; height: 2px; transform: translateY(-50%); transition: width .25s; }
    .site-nav a:hover::after, .site-nav a.is-active::after { right: 11px; width: 22px; }
    .site-nav a.is-active { color: var(--cyan); }
    .site-nav .site-nav__mobile-only { display: flex; }
    .hero-chrome { min-height: 820px; display: block; padding: 125px 17px 75px; }
    .hero-copy h1 { font-size: clamp(49px,15.3vw,78px); }
    .hero-lead { font-size: 13px; }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 22px; }
    .hero-visual { min-height: 310px; margin-top: 30px; }
    .hero-photo-placeholder { width: 90%; min-height: 300px; padding: 23px; transform: perspective(900px) rotateY(-5deg); }
    .hero-photo-placeholder strong { font-size: 38px; }
    .hero-distance { right: 1%; bottom: 0; width: 127px; padding: 13px; }
    .hero-distance b { font-size: 61px; }
    .hero-rail { right: 17px; left: 17px; }
    .hero-rail span:nth-child(2), .hero-rail span:nth-child(3) { display: none; }
    .era-section, .archive-bridge, .future-grid { padding: 85px 0; }
    .era-heading, .tech-heading, .archive-bridge__head { grid-template-columns: 1fr; gap: 25px; margin: 42px 0 50px; }
    .hero-copy h1, .era-heading h2, .tech-heading h2, .archive-bridge__head h2, .results-stage h2, .future-card h2, .contact-copy h2, .page-hero h1, .admin-title h1 { font-size: clamp(50px,14vw,74px); }
    .current-stage { grid-template-columns: 1fr; }
    .current-stage__image { min-height: 340px; }
    .tech-section, .results-stage, .contact-section { padding: 84px 0; }
    .tech-grid { grid-template-columns: 1fr; }
    .tech-card { min-height: 290px; }
    .archive-strip { grid-template-columns: 1fr; }
    .archive-photo, .archive-photo--tall { height: 320px; }
    .archive-numbers { grid-template-columns: 1fr 1fr; }
    .results-stage__inner, .contact-layout { grid-template-columns: 1fr; gap: 45px; }
    .future-grid { grid-template-columns: 1fr; }
    .future-card, .future-card--bar { grid-column: auto; min-height: 390px; }
    .contact-form { padding: 21px; }
    .field-pair { grid-template-columns: 1fr; gap: 0; }
    .contact-action { align-items: stretch; flex-direction: column; }
    .contact-action .chrome-button { width: 100%; }
    .site-footer { min-height: 190px; padding: 32px 0; grid-template-columns: 1fr; gap: 24px; }
    .site-footer nav { justify-self: start; flex-wrap: wrap; }
}

@media (max-width: 430px) {
    .hero-copy h1 { font-size: 48px; }
    .chrome-button { width: 100%; }
    .archive-numbers { grid-template-columns: 1fr; }
    .current-stage__copy { padding: 28px 22px; }
}

/* Rennleitung and members */
.admin-login { min-height: 100vh; width: min(940px,calc(100% - 40px)); margin: auto; padding: 70px 0; display: flex; flex-direction: column; justify-content: center; gap: 40px; }
.admin-login__card { width: min(100%,560px); padding: 34px; border: 1px solid var(--line); background: radial-gradient(ellipse at 80% 10%,rgba(109,230,255,.13),transparent 50%),linear-gradient(145deg,#16212d,#090e15); box-shadow: 15px 18px 0 rgba(93,130,255,.28),0 30px 70px rgba(0,0,0,.35); }
.admin-login__card h1 { margin: 32px 0; font: 830 clamp(53px,7vw,78px)/.82 var(--display); letter-spacing: -.08em; }
.admin-login__card h1 em { color: var(--cyan); font-style: normal; font-weight: 300; }
.admin-login__card .chrome-button { width: 100%; margin: 5px 0 28px; }
.admin-bar { position: sticky; z-index: 60; top: 0; width: 100%; min-height: 78px; padding: 0 max(32px,calc((100% - 1380px)/2)); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; border-bottom: 1px solid var(--line); background: rgba(7,11,17,.9); backdrop-filter: blur(20px); }
.admin-bar nav { display: flex; gap: 24px; }
.admin-bar nav a, .admin-bar > form button { color: #8998a6; text-decoration: none; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.admin-bar nav a:hover { color: var(--cyan); }
.admin-bar > form { justify-self: end; }
.admin-bar > form button { border: 0; color: var(--cyan); background: transparent; }
.admin-main { padding: 90px 0 120px; }
.admin-title { max-width: 780px; margin-bottom: 55px; }
.admin-title h1 { margin: 35px 0 25px; }
.admin-title > p:last-child { max-width: 560px; color: #a1afbb; font-size: 14px; line-height: 1.7; }
.security-warning { margin: 0 0 50px; padding: 20px; display: grid; grid-template-columns: auto 1fr auto; gap: 22px; align-items: center; border: 1px solid #ff758d; background: rgba(255,80,110,.08); }
.security-warning strong { color: #ff9cac; font: 780 11px/1 var(--mono); letter-spacing: .1em; }
.security-warning p { margin: 0; color: #c7a4ac; font-size: 12px; }
.security-warning a { color: #ff9cac; text-decoration: none; font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.admin-section { margin-top: 95px; scroll-margin-top: 100px; }
.admin-section__head { display: flex; gap: 16px; align-items: center; margin-bottom: 26px; }
.admin-section__head > span { color: var(--cyan); font: 820 23px/1 var(--display); }
.admin-section__head p { margin: 0 0 6px; color: #758491; font: 700 8px/1 var(--mono); letter-spacing: .12em; }
.admin-section__head h2 { margin: 0; font: 780 35px/.9 var(--display); letter-spacing: -.055em; }
.admin-split { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: start; }
.admin-panel, .member-form { padding: 25px; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(218,239,255,.07),rgba(218,239,255,.025)); }
.admin-panel input, .admin-panel select, .member-form input, .member-form select, .member-form textarea { padding-inline: 10px; border: 1px solid #43515f; background: rgba(5,9,14,.5); }
.admin-panel input:focus, .admin-panel select:focus, .member-form input:focus, .member-form select:focus, .member-form textarea:focus { border-color: var(--cyan); }
.admin-panel .chrome-button { margin-top: 8px; }
.panel-label { margin: 0 0 22px; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .12em; }
.panel-empty { padding: 35px 15px; border: 1px dashed #43515f; color: #71808d; font-size: 12px; line-height: 1.6; text-align: center; }
.check-label { display: flex !important; align-items: center; gap: 10px; color: #b2bdc7 !important; }
.check-label input { width: 16px; height: 16px; margin: 0; padding: 0; accent-color: var(--cyan); }
.check-label span { display: inline !important; }
.file-field input { padding: 12px; }
.result-admin-list article { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--line); }
.result-admin-list article > div span { display: block; margin-bottom: 5px; color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .1em; }
.result-admin-list article strong { display: block; font-size: 13px; }
.result-admin-list article small { display: block; margin-top: 5px; color: #6e7d8a; font: 650 8px/1 var(--mono); }
.result-admin-list article form button { padding: 8px; border: 1px solid var(--line-strong); color: var(--chrome); background: transparent; font: 700 8px/1 var(--mono); letter-spacing: .08em; }
.member-list article { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.member-list article > span { display: grid; width: 34px; height: 34px; place-items: center; color: var(--ink); background: var(--chrome); font: 800 10px/1 var(--mono); }
.member-list article strong { display: block; font-size: 13px; }
.member-list article small { display: block; margin-top: 4px; color: #71808e; font: 650 8px/1 var(--mono); }
.member-list .line-link { margin-top: 28px; }
.password-form { display: grid; grid-template-columns: repeat(3,1fr) auto; gap: 14px; align-items: end; }
.password-form .chrome-button { margin-bottom: 20px; }

.member-login { min-height: 750px; padding: 175px 0 100px; display: grid; grid-template-columns: 1fr .8fr; gap: 9vw; align-items: center; }
.member-login__copy h1, .member-welcome h1 { margin: 30px 0; font: 840 clamp(60px,8vw,112px)/.8 var(--display); letter-spacing: -.085em; }
.member-login__copy h1 em, .member-welcome h1 em { color: var(--cyan); font-style: normal; font-weight: 300; }
.member-login__copy > p:last-child { max-width: 470px; color: #9ba9b6; font-size: 14px; line-height: 1.7; }
.member-form .chrome-button { width: 100%; }
.member-form > p:last-child { margin: 20px 0 0; color: #6f7e8c; font-size: 11px; line-height: 1.5; }
.member-dashboard { padding: 160px 0 110px; }
.member-welcome { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 30px; margin-bottom: 50px; }
.member-welcome form button { margin-bottom: 30px; border: 0; color: var(--cyan); background: transparent; font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.member-layout { display: grid; grid-template-columns: 380px 1fr; gap: 12px; align-items: start; }
.member-note-form { position: sticky; top: 98px; }
.member-board { min-width: 0; padding: 25px; border: 1px solid var(--line); background: rgba(218,239,255,.025); }
.member-board__head { display: flex; justify-content: space-between; gap: 15px; }
.member-board__head > span { color: #70808e; font: 700 8px/1 var(--mono); letter-spacing: .1em; }
.note-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.member-note { min-height: 260px; padding: 19px; display: flex; flex-direction: column; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(218,239,255,.07),rgba(218,239,255,.02)); }
.member-note > span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .11em; }
.member-note time { margin-top: 26px; color: var(--chrome); font: 700 9px/1 var(--mono); letter-spacing: .08em; }
.member-note h2 { margin: 12px 0; font: 760 28px/.9 var(--display); letter-spacing: -.055em; }
.member-note p { margin: 0; color: #a1aeba; font-size: 12px; line-height: 1.6; }
.member-note small { margin-top: auto; padding-top: 18px; color: #63727f; font: 650 8px/1 var(--mono); letter-spacing: .08em; }

@media (max-width: 900px) {
    .admin-split { grid-template-columns: 1fr; }
    .password-form { grid-template-columns: 1fr 1fr; }
    .password-form .chrome-button { margin-bottom: 20px; }
    .member-layout { grid-template-columns: 320px 1fr; }
    .note-grid { grid-template-columns: 1fr; }
}

@media (max-width: 780px) {
    .admin-bar { min-height: 72px; grid-template-columns: 1fr auto; padding-inline: 17px; }
    .admin-bar nav { display: none; }
    .admin-main { padding: 70px 0 90px; }
    .security-warning { grid-template-columns: 1fr; gap: 9px; }
    .admin-section { margin-top: 65px; }
    .password-form { grid-template-columns: 1fr; }
    .member-login { min-height: auto; padding: 135px 0 80px; grid-template-columns: 1fr; gap: 35px; }
    .member-dashboard { padding: 135px 0 80px; }
    .member-welcome { grid-template-columns: 1fr; }
    .member-layout { grid-template-columns: 1fr; }
    .member-note-form { position: static; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    html.has-page-transition-entry .site-body::after,.site-body.is-page-entering::after,.site-body.is-page-entering:not(.is-page-ready)::after { animation:none; opacity:0; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .reveal { opacity: 1; transform: none; }
}

/* Archive, videos and race results */
.page-hero { padding: 180px 0 95px; border-bottom: 1px solid var(--line); }
.page-hero h1 { max-width: 1040px; }
.page-hero > p:last-child { max-width: 590px; margin: 32px 0 0 auto; color: #a8b5c1; font-size: 14px; line-height: 1.75; }
.media-era { padding: 70px 0 130px; }
.era-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-bottom: 35px; }
.era-tab { display: grid; grid-template-columns: auto 1fr; gap: 4px 15px; padding: 19px; border: 1px solid var(--line); color: #748392; background: rgba(218,239,255,.03); text-align: left; transition: border .25s, background .25s, transform .25s; }
.era-tab:hover, .era-tab.is-active { border-color: var(--line-strong); color: var(--paper); background: linear-gradient(135deg,rgba(218,239,255,.13),rgba(93,130,255,.09)); transform: translateY(-3px); }
.era-tab > span { grid-row: 1 / span 2; color: var(--cyan); font: 800 16px/1 var(--display); }
.era-tab strong { font: 800 14px/1 var(--mono); letter-spacing: .09em; }
.era-tab small { color: #73818f; font: 650 9px/1 var(--mono); letter-spacing: .09em; }
.gallery-video-cta { position: relative; min-width: 0; margin: -17px 0 35px; padding: 17px 19px; overflow: hidden; display: grid; grid-template-columns: 52px minmax(0,1fr) auto; gap: 18px; align-items: center; border: 1px solid rgba(109,230,255,.38); border-radius: 18px; color: var(--paper); background: radial-gradient(ellipse at 90% 0,rgba(93,130,255,.22),transparent 52%),linear-gradient(135deg,rgba(218,239,255,.09),rgba(218,239,255,.025)); box-shadow: inset 0 1px rgba(255,255,255,.16),0 18px 42px rgba(0,0,0,.2); text-decoration: none; transition: transform .3s,border-color .3s,box-shadow .3s; }
.gallery-video-cta::after { content: ""; position: absolute; inset: -100% -35%; pointer-events: none; background: linear-gradient(105deg,transparent 42%,rgba(255,255,255,.24) 50%,transparent 58%); transform: translateX(-55%); transition: transform .8s; }
.gallery-video-cta:hover { transform: translateY(-3px); border-color: var(--cyan); box-shadow: inset 0 1px rgba(255,255,255,.24),0 24px 50px rgba(0,0,0,.28),0 0 26px rgba(109,230,255,.08); }
.gallery-video-cta:hover::after { transform: translateX(55%); }
.gallery-video-cta:focus-visible { outline: 2px solid white; outline-offset: 4px; }
.gallery-video-cta > * { position: relative; z-index: 1; }
.gallery-video-cta__play { display: grid; width: 52px; height: 52px; place-items: center; border: 1px solid var(--cyan); border-radius: 50%; color: #061019; background: linear-gradient(135deg,#fff,#86a0b5 43%,#eafaff 68%,#6f8ca5); box-shadow: 0 0 24px rgba(109,230,255,.18); font-size: 18px; }
.gallery-video-cta__copy { min-width: 0; }
.gallery-video-cta__copy small { display: block; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .12em; }
.gallery-video-cta__copy strong { display: block; margin-top: 8px; overflow-wrap: anywhere; font: 760 19px/1 var(--display); letter-spacing: -.03em; }
.gallery-video-cta > b { padding: 13px 15px; border: 1px solid rgba(218,239,255,.3); border-radius: 10px; color: var(--cyan); background: rgba(4,9,14,.45); font: 750 10px/1 var(--mono); letter-spacing: .1em; white-space: nowrap; }
.gallery-video-cta > b span { margin-left: 8px; font-size: 15px; }
.era-panel { display: none; }
.era-panel.is-active { display: block; animation: panelIn .55s ease both; }
.current-gallery-empty { position: relative; min-height: 610px; padding: clamp(35px,7vw,95px); overflow: hidden; display: flex; flex-direction: column; justify-content: center; border: 1px solid var(--line); background: radial-gradient(ellipse at 75% 30%,rgba(109,230,255,.16),transparent 53%), linear-gradient(135deg,#172331,#090e15 70%); }
.current-gallery-empty::after { content: ""; position: absolute; width: 70%; height: 170%; right: -45%; top: -35%; transform: rotate(20deg); background: linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent); animation: chromeSweep 10s infinite alternate; }
.current-gallery-empty > * { position: relative; z-index: 2; }
.current-gallery-empty > p { color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .14em; }
.current-gallery-empty h2, .video-current__empty h2 { max-width: 740px; margin: 25px 0; font: 820 clamp(52px,7vw,100px)/.83 var(--display); letter-spacing: -.08em; text-transform: uppercase; }
.current-gallery-empty h2 em, .video-current__empty h2 em { color: var(--cyan); font-style: normal; font-weight: 300; }
.current-gallery-empty > span { max-width: 540px; color: #9eadba; font-size: 14px; line-height: 1.72; }
.current-gallery-empty > div { width: min(360px,100%); margin-top: 55px; padding: 17px; border: 1px solid var(--line-strong); background: rgba(5,9,14,.62); }
.current-gallery-empty > div b { display: block; color: var(--chrome); font: 780 18px/1 var(--display); letter-spacing: -.03em; }
.current-gallery-empty > div small { color: #758493; font: 700 8px/1 var(--mono); letter-spacing: .1em; }
.empty-glint { position: absolute; z-index: 3; top: 14%; right: 18%; width: 90px; height: 90px; background: linear-gradient(90deg,transparent 48%,white 49% 51%,transparent 52%),linear-gradient(0deg,transparent 48%,white 49% 51%,transparent 52%); filter: drop-shadow(0 0 17px white); animation: twinkle 2.8s infinite; }
.archive-banner { margin: 0 0 28px; padding: 15px 17px; display: grid; grid-template-columns: auto 1fr auto; gap: 22px; align-items: center; border: 1px solid rgba(109,230,255,.38); background: rgba(109,230,255,.06); }
.archive-banner span { padding: 7px 8px; color: #071018; background: var(--cyan); font: 800 9px/1 var(--mono); letter-spacing: .11em; }
.archive-banner p { margin: 0; color: #b1bdc8; font-size: 12px; line-height: 1.5; }
.archive-banner b { color: var(--chrome); font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.gallery-tools { display: grid; grid-template-columns: 1fr 310px; gap: 30px; align-items: end; padding: 28px 0 18px; }
.category-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.category-filters button { padding: 10px 11px; border: 1px solid var(--line); color: #9aa8b5; background: transparent; font: 700 9px/1 var(--mono); letter-spacing: .08em; }
.category-filters button:hover, .category-filters button.is-active { border-color: var(--chrome); color: #071018; background: var(--chrome); }
.search-field { margin: 0; color: #748391; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.search-field input { margin-top: 6px; }
.gallery-status { padding: 13px 0; border-top: 1px solid var(--line); color: #71808e; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.album-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; perspective: 1400px; }
.album-card { position: relative; min-width: 0; padding: 13px 13px 18px; overflow: hidden; border: 1px solid var(--line); color: var(--paper); background: linear-gradient(145deg,rgba(218,239,255,.08),rgba(218,239,255,.02)); text-align: left; transition: transform .35s cubic-bezier(.2,.7,.2,1), border .25s, box-shadow .35s; }
.album-card:hover { transform: perspective(900px) rotateY(-4deg) translateY(-7px); border-color: var(--line-strong); box-shadow: 18px 22px 50px rgba(0,0,0,.28); }
.album-card > small { display: block; margin-bottom: 10px; color: #71808e; font: 700 8px/1 var(--mono); letter-spacing: .1em; }
.album-card__visual { display: block; position: relative; height: 260px; overflow: hidden; background: #141c26; }
.album-card__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(125deg,transparent 38%,rgba(255,255,255,.2) 48%,transparent 58%); transform: translateX(-110%); transition: transform .8s; }
.album-card:hover .album-card__visual::after { transform: translateX(110%); }
.album-card__visual img { width: 100%; height: 100%; object-fit: cover; opacity: 0; filter: saturate(.72) contrast(1.08); transition: transform .7s, filter .7s, opacity .3s; }
.album-card__visual img.is-loaded { opacity: 1; }
.album-card:hover img { transform: scale(1.055); filter: saturate(1); }
.album-card__visual i { position: absolute; z-index: 2; top: 10px; left: 10px; padding: 6px 7px; border: 1px solid rgba(255,255,255,.7); color: var(--cyan); background: rgba(4,8,12,.62); backdrop-filter: blur(8px); font: 750 8px/1 var(--mono); letter-spacing: .1em; font-style: normal; }
.album-card__error { position: absolute; z-index: 2; inset: 0; display: grid; place-items: center; padding: 30px; color: #8ea1b1; background: radial-gradient(circle at 50% 30%,rgba(109,230,255,.08),transparent 45%); text-align: center; opacity: 0; font: 750 8px/1.55 var(--mono); letter-spacing: .1em; }
.album-card__visual.has-image-error .album-card__error { opacity: 1; }
.album-card > strong { display: block; min-height: 42px; margin: 15px 0 7px; font: 750 24px/.9 var(--display); letter-spacing: -.055em; }
.album-card > em { color: #778694; font: 700 8px/1.3 var(--mono); letter-spacing: .08em; font-style: normal; }
.outline-button { display: block; margin: 30px auto 0; padding: 14px 18px; border: 1px solid var(--cyan); color: var(--cyan); background: transparent; font: 750 9px/1 var(--mono); letter-spacing: .11em; }
.outline-button[hidden] { display: none !important; }
.outline-button:hover { color: var(--ink); background: var(--cyan); }
.outline-button span { margin-left: 9px; font-size: 14px; }
.reader-open { overflow: hidden; }
.album-reader { position: fixed; z-index: 200; inset: 0; width: 100%; max-width: 100vw; padding: 35px max(25px,calc((100% - 1260px)/2)); display: flex; flex-direction: column; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; background: radial-gradient(ellipse at 70% 0,rgba(93,130,255,.25),transparent 55%),rgba(5,8,12,.98); backdrop-filter: blur(20px); opacity: 0; visibility: hidden; transition: opacity .35s, visibility .35s; }
.album-reader.is-open { opacity: 1; visibility: visible; }
.reader-close { position: absolute; top: 24px; right: 28px; z-index: 5; width: 43px; height: 43px; border: 1px solid var(--line-strong); color: white; background: rgba(255,255,255,.05); font: 300 28px/1 var(--display); }
.reader-heading { display: grid; min-width: 0; max-width: 100%; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 25px; padding: 0 55px 22px 0; }
.reader-heading > div { min-width: 0; max-width: 100%; }
.reader-heading span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .12em; }
.reader-heading h2 { margin: 8px 0 0; overflow-wrap: anywhere; word-break: break-word; font: 750 clamp(28px,4vw,53px)/.9 var(--display); letter-spacing: -.06em; }
.reader-heading p { max-width: 100%; margin: 7px 0 0; overflow-wrap: anywhere; word-break: break-word; color: #71808f; font: 650 8px/1.3 var(--mono); letter-spacing: .07em; }
.reader-counter { display: flex; align-items: end; gap: 7px; color: #60707e; font: 700 15px/1 var(--mono); }
.reader-counter b { color: var(--chrome); font: 800 44px/.8 var(--display); letter-spacing: -.08em; }
.reader-counter small { font-size: 12px; }
.photo-book { position: relative; flex: none; width: 100%; max-width: 100%; height: min(64vh,680px); min-height: 320px; overflow: hidden; isolation: isolate; contain: layout paint; border: 1px solid rgba(218,239,255,.13); perspective: 1700px; background: #070b10; filter: drop-shadow(0 30px 50px rgba(0,0,0,.48)); transition: height .28s ease; touch-action: pan-y; cursor: grab; user-select: none; -webkit-user-drag: none; }
.photo-book::after { content: "BILDER WERDEN VORBEREITET"; position: absolute; z-index: 20; inset: 0; display: grid; place-items: center; padding: 24px; color: var(--cyan); background: rgba(4,9,14,.86); opacity: 0; visibility: hidden; pointer-events: none; text-align: center; font: 750 9px/1.5 var(--mono); letter-spacing: .11em; transition: opacity .18s ease,visibility .18s ease; }
.album-reader.is-preparing .photo-book::after { opacity: 1; visibility: visible; }
.photo-book.is-dragging { cursor: grabbing; }
.book-spread { position: relative; width: 100%; max-width: 100%; min-width: 0; height: 100%; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); transform-style: preserve-3d; opacity: 1; transition: opacity .17s ease,transform .17s ease; }
.book-spread.is-jump-changing { opacity: 0; transform: scale(.988); }
.book-spread::after { content: ""; position: absolute; z-index: 4; inset: 0; pointer-events: none; opacity: .5; background: linear-gradient(105deg,transparent 35%,rgba(183,242,255,.1) 50%,transparent 65%); }
.book-page { position: relative; min-width: 0; min-height: 0; margin: 0; overflow: hidden; background-color: #111923; background-position: center; background-size: cover; transform-style: preserve-3d; }
.book-page::before { content: ""; position: absolute; z-index: 0; inset: -24px; background: inherit; filter: blur(20px) brightness(.34) saturate(.65); transform: scale(1.07); }
.book-page::after { content: ""; position: absolute; z-index: 1; inset: 0; background: rgba(4,8,12,.16); pointer-events: none; }
.book-page.has-image-error::after { content: "BILD KONNTE NICHT GELADEN WERDEN"; display: grid; place-items: center; padding: 30px; color: #8ea1b1; background: radial-gradient(circle at 50% 35%,rgba(109,230,255,.08),transparent 48%); text-align: center; font: 750 9px/1.5 var(--mono); letter-spacing: .1em; }
.book-page img { position: relative; z-index: 2; width: 100%; height: 100%; object-fit: contain; opacity: 0; transition: opacity .24s ease; }
.book-page img.is-loaded { opacity: 1; }
.book-page figcaption { position: absolute; z-index: 3; left: 12px; bottom: 12px; padding: 7px 8px; color: var(--cyan); background: rgba(4,8,12,.68); backdrop-filter: blur(7px); font: 750 8px/1 var(--mono); letter-spacing: .1em; }
.book-page--left { transform-origin: right; border-right: 1px solid rgba(255,255,255,.12); }
.book-page--right { transform-origin: left; }
.book-page--right figcaption { right: 12px; left: auto; }
.book-turn-underlay { position: absolute; z-index: 5; top: 0; bottom: 0; width: 50%; display: none; overflow: hidden; background-color: #111923; background-position: center; background-size: cover; pointer-events: none; }
.book-turn-underlay.is-active { display: block; }
.book-turn-underlay.is-left { left: 0; }
.book-turn-underlay.is-right { right: 0; }
.book-turn-underlay::before { content: ""; position: absolute; z-index: 0; inset: -24px; background: inherit; filter: blur(20px) brightness(.35) saturate(.65); transform: scale(1.08); }
.book-turn-underlay img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: contain; }
.book-turner { --turn-angle: 0deg; --turn-duration: 680ms; position: absolute; z-index: 7; top: 0; bottom: 0; width: 50%; display: none; transform: translateZ(1px) rotateY(var(--turn-angle)); transform-style: preserve-3d; will-change: transform; pointer-events: none; }
.book-turner.is-active { display: block; }
.book-turner.is-animating { transition: transform var(--turn-duration) cubic-bezier(.18,.66,.18,1); }
.book-turner.is-forward { left: 50%; transform-origin: left center; box-shadow: -16px 0 34px rgba(0,0,0,.32); }
.book-turner.is-backward { left: 0; transform-origin: right center; box-shadow: 16px 0 34px rgba(0,0,0,.32); }
.book-turner__face { position: absolute; inset: 0; overflow: hidden; background-color: #111923; background-position: center; background-size: cover; transform-style: preserve-3d; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.book-turner__face::before { content: ""; position: absolute; z-index: 0; inset: -24px; background: inherit; filter: blur(20px) brightness(.35) saturate(.65); transform: scale(1.08); }
.book-turn-underlay::before, .book-turner__face::before { display: none; }
.book-turner__face::after { content: ""; position: absolute; z-index: 2; inset: 0; background: linear-gradient(90deg,rgba(255,255,255,.05),transparent 36%,rgba(0,0,0,.26)); }
.book-turner__face img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: contain; }
.book-turner__face--back { transform: rotateY(180deg); }
.book-turner__face--back::after { background: linear-gradient(270deg,rgba(255,255,255,.05),transparent 36%,rgba(0,0,0,.26)); }

.protected-photo {
    -webkit-user-drag: none;
    -webkit-touch-callout: none;
    pointer-events: none;
    user-select: none;
}
.book-spine { position: absolute; z-index: 3; top: 0; bottom: 0; left: 50%; width: 30px; transform: translateX(-50%); background: linear-gradient(90deg,transparent,rgba(0,0,0,.55),rgba(255,255,255,.07),rgba(0,0,0,.5),transparent); pointer-events: none; }
.reader-navigator { display: grid; width: 100%; max-width: 100%; min-width: 0; grid-template-columns: minmax(265px,340px) minmax(0,1fr); gap: 14px; padding-top: 14px; }
.reader-scrub { min-width: 0; padding: 12px 14px; border: 1px solid rgba(218,239,255,.13); background: rgba(218,239,255,.035); }
.reader-scrub > label { display: flex; justify-content: space-between; gap: 15px; color: #697987; font: 750 8px/1 var(--mono); letter-spacing: .1em; }
.reader-scrub > label b { color: var(--cyan); font-weight: 750; }
.reader-scrub > input[type="range"] { width: 100%; height: 18px; margin: 9px 0 7px; padding: 0; border: 0; background: transparent; accent-color: var(--cyan); }
.reader-direct-jump { display: grid; min-width: 0; grid-template-columns: auto 66px minmax(0,1fr); gap: 8px; align-items: center; }
.reader-direct-jump label { color: #72818f; font: 700 8px/1 var(--mono); letter-spacing: .08em; }
.reader-direct-jump input { width: 66px; min-height: 30px; padding: 5px 7px; border: 1px solid rgba(218,239,255,.18); color: white; background: #090e15; font: 750 12px/1 var(--mono); }
.reader-direct-jump button { min-height: 30px; padding: 5px 9px; border: 1px solid var(--cyan); color: var(--cyan); background: transparent; font: 750 8px/1 var(--mono); letter-spacing: .08em; }
.reader-thumbs { display: flex; gap: 8px; min-width: 0; padding: 7px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; border: 1px solid rgba(218,239,255,.13); background: rgba(3,7,11,.5); scrollbar-color: var(--cyan) #0b1118; }
.reader-thumb { position: relative; flex: 0 0 104px; height: 70px; padding: 0; overflow: hidden; scroll-snap-align: center; border: 1px solid rgba(218,239,255,.13); color: white; background: #111923; opacity: .62; transition: opacity .2s,border-color .2s,transform .2s; }
.reader-thumb:hover, .reader-thumb.is-in-spread { opacity: .9; border-color: rgba(218,239,255,.52); }
.reader-thumb.is-current { opacity: 1; border-color: var(--cyan); box-shadow: 0 0 18px rgba(109,230,255,.2); transform: translateY(-2px); }
.reader-thumb img { width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .2s; }
.reader-thumb img.is-loaded { opacity: 1; }
.reader-thumb span { position: absolute; right: 4px; bottom: 4px; padding: 3px 4px; color: var(--cyan); background: rgba(3,7,11,.78); font: 750 8px/1 var(--mono); }
.reader-thumb.has-image-error::before { content: "VORSCHAU"; position: absolute; inset: 0; display: grid; place-items: center; color: #71808d; font: 700 7px/1 var(--mono); letter-spacing: .08em; }
.reader-actions { display: grid; width: 100%; max-width: 100%; min-width: 0; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: 20px; align-items: center; padding-top: 17px; }
.reader-actions button { min-width: 0; border: 0; color: var(--cyan); background: transparent; font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.reader-actions button:last-child { justify-self: end; }
.reader-actions button:disabled { color: #495663; cursor: default; }
.reader-actions p { margin: 0; color: #62717f; font: 650 8px/1 var(--mono); letter-spacing: .09em; }

.video-current, .video-archive, .current-results { padding: 80px 0 120px; }
.video-current__empty { min-height: 450px; margin-top: 40px; padding: clamp(35px,6vw,80px); border: 1px solid var(--line); background: radial-gradient(ellipse at 80% 20%,rgba(109,230,255,.13),transparent 50%),linear-gradient(140deg,#151f2b,#090e15); }
.video-current__empty h2 { margin-top: 0; }
.video-current__empty p { max-width: 570px; color: #9daab7; font-size: 14px; line-height: 1.72; }
.video-current__empty b { display: inline-block; margin-top: 38px; padding: 10px; border: 1px solid var(--line-strong); color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.video-archive { padding-top: 20px; }
.video-archive .archive-banner { margin-top: 38px; }
.video-albums { display: grid; gap: 9px; }
.video-album { border: 1px solid var(--line); background: rgba(218,239,255,.035); }
.video-album__head { width: 100%; padding: 19px; display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; border: 0; color: var(--paper); background: transparent; text-align: left; }
.video-album__head > span { color: var(--cyan); font: 800 17px/1 var(--display); }
.video-album__head small { color: var(--cyan); font: 700 8px/1 var(--mono); letter-spacing: .1em; }
.video-album__head h2 { margin: 7px 0 4px; font: 760 30px/.9 var(--display); letter-spacing: -.055em; }
.video-album__head p { margin: 0; color: #687887; font: 650 8px/1.4 var(--mono); letter-spacing: .06em; }
.video-album__head > b { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid var(--line-strong); color: var(--cyan); font: 300 26px/1 var(--display); }
.video-list { display: grid; grid-template-rows: 0fr; overflow: hidden; border-top: 1px solid transparent; transition: grid-template-rows .38s cubic-bezier(.22,.7,.2,1),border-color .25s ease; }
.video-list__inner { min-height: 0; overflow: hidden; visibility: hidden; opacity: 0; transform: translateY(-8px); transition: visibility 0s linear .38s,opacity .25s ease,transform .38s cubic-bezier(.22,.7,.2,1); }
.video-album.is-open .video-list { grid-template-rows: 1fr; border-top-color: var(--line); }
.video-album.is-open .video-list__inner { visibility: visible; opacity: 1; transform: translateY(0); transition-delay: 0s; }
.video-item { display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; padding: 15px 20px; border-bottom: 1px solid rgba(218,239,255,.07); }
.video-item > span { color: #667684; font: 750 11px/1 var(--mono); }
.video-item strong { display: block; font: 730 14px/1 var(--body); }
.video-item small { display: block; margin-top: 5px; color: #6f7e8c; font: 650 8px/1 var(--mono); letter-spacing: .07em; }
.video-play { min-height: 38px; padding: 8px 12px; border: 1px solid var(--cyan); color: var(--cyan); background: transparent; font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.video-play:hover { color: #071018; background: var(--cyan); }
.video-play:disabled { border-color: #45515d; color: #65727e; cursor: default; }
.video-open { overflow: hidden; }
.video-reader { position: fixed; z-index: 210; inset: 0; display: flex; flex-direction: column; padding: 35px max(25px,calc((100% - 1260px)/2)); overflow-y: auto; overscroll-behavior: contain; background: radial-gradient(ellipse at 72% 0,rgba(93,130,255,.25),transparent 55%),rgba(5,8,12,.985); backdrop-filter: blur(20px); opacity: 0; visibility: hidden; transition: opacity .34s ease,visibility .34s ease; }
.video-reader.is-open { opacity: 1; visibility: visible; }
.video-reader__close { position: absolute; z-index: 3; top: 24px; right: 28px; width: 43px; height: 43px; border: 1px solid var(--line-strong); color: white; background: rgba(255,255,255,.05); font: 300 28px/1 var(--display); }
.video-reader__head { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 25px; padding: 0 55px 22px 0; }
.video-reader__head > div:first-child > span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .12em; }
.video-reader__head h2 { margin: 8px 0 0; font: 750 clamp(27px,3.7vw,50px)/.92 var(--display); letter-spacing: -.055em; }
.video-reader__head p { margin: 8px 0 0; color: #71808f; font: 650 8px/1.4 var(--mono); letter-spacing: .07em; }
.video-reader__counter { display: flex; align-items: end; gap: 7px; color: #60707e; font: 700 15px/1 var(--mono); }
.video-reader__counter b { color: var(--chrome); font: 800 44px/.8 var(--display); letter-spacing: -.08em; }
.video-reader__counter small { font-size: 12px; }
.video-stage { position: relative; flex: none; display: grid; place-items: center; min-height: 320px; height: min(67vh,720px); overflow: hidden; border: 1px solid rgba(218,239,255,.16); background: radial-gradient(circle at 50% 40%,#1b2634,#05080d 70%); box-shadow: 0 28px 70px rgba(0,0,0,.42); }
.video-stage video { width: 100%; height: 100%; object-fit: contain; background: #020304; }
.video-stage > span { position: absolute; top: 12px; right: 12px; padding: 7px 8px; border: 1px solid rgba(218,239,255,.42); color: var(--cyan); background: rgba(3,7,11,.72); pointer-events: none; font: 750 8px/1 var(--mono); letter-spacing: .09em; }
.video-reader__actions { display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: center; padding-top: 17px; }
.video-reader__actions button { border: 0; color: var(--cyan); background: transparent; font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.video-reader__actions button:last-child { justify-self: end; }
.video-reader__actions button:disabled { color: #495663; cursor: default; }
.video-reader__actions p { margin: 0; color: #62717f; font: 650 8px/1 var(--mono); letter-spacing: .09em; }

.current-result-grid { margin-top: 42px; display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.modern-result-card { min-height: 310px; padding: 23px; display: flex; flex-direction: column; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(218,239,255,.07),rgba(218,239,255,.02)); }
.modern-result-card.is-latest { color: #071018; background: linear-gradient(130deg,#f1fbff,#94aabd 42%,#e8f6ff); }
.modern-result-card > span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .12em; }
.modern-result-card.is-latest > span { color: #315bd2; }
.modern-result-card time { margin-top: 45px; color: #8795a3; font: 700 10px/1 var(--mono); letter-spacing: .1em; }
.modern-result-card h2 { margin: 12px 0; font: 760 34px/.9 var(--display); letter-spacing: -.06em; }
.modern-result-card p { margin: 0; color: #788693; font: 650 8px/1.4 var(--mono); letter-spacing: .07em; }
.modern-result-card a { margin-top: auto; color: var(--cyan); text-decoration: none; font: 750 9px/1 var(--mono); letter-spacing: .1em; }
.modern-result-card.is-latest a { color: #315bd2; }
.result-empty { min-height: 420px; margin-top: 40px; padding: clamp(35px,6vw,80px); border: 1px solid var(--line); background: radial-gradient(ellipse at 78% 22%,rgba(93,130,255,.24),transparent 52%),#0d141d; }
.result-empty > div { display: flex; align-items: center; gap: 9px; color: var(--cyan); font: 750 9px/1 var(--mono); letter-spacing: .12em; }
.result-empty > div i { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 14px var(--cyan); animation: pulse 1.8s infinite; }
.result-empty h2 { max-width: 760px; margin: 50px 0 20px; font: 800 clamp(43px,6vw,82px)/.84 var(--display); letter-spacing: -.075em; }
.result-empty > p { max-width: 520px; color: #9ba9b6; font-size: 13px; line-height: 1.7; }
.legacy-results { padding: 125px 0; color: #071018; background: linear-gradient(135deg,#e6f2f8,#a7b7c4 46%,#f3f9fc); }
.legacy-head { display: grid; grid-template-columns: 1fr .5fr; gap: 7vw; align-items: end; margin: 45px 0 60px; }
.legacy-head h2 { margin: 0; font: 840 clamp(54px,7vw,98px)/.82 var(--display); letter-spacing: -.08em; }
.legacy-head h2 em { color: #315bd2; font-style: normal; font-weight: 300; }
.legacy-head p { margin: 0 0 6px; color: #40515f; font-size: 13px; line-height: 1.72; }
.result-browser { min-height: 710px; display: grid; grid-template-columns: 330px 1fr; color: var(--paper); background: #0b1119; box-shadow: 0 30px 70px rgba(25,42,56,.3); }
.result-browser > aside { padding: 20px; border-right: 1px solid var(--line); }
.result-browser > aside label { color: #70808f; font: 700 8px/1 var(--mono); letter-spacing: .1em; }
.result-event-list { max-height: 620px; margin-top: 20px; overflow: auto; scrollbar-color: #536477 #111923; }
.result-event { width: 100%; display: grid; grid-template-columns: auto 1fr auto; gap: 11px; align-items: center; padding: 13px 5px; border: 0; border-bottom: 1px solid var(--line); color: #8897a5; background: transparent; text-align: left; }
.result-event:hover, .result-event.is-active { color: white; }
.result-event > span:first-child { color: var(--cyan); font: 750 9px/1 var(--mono); }
.result-event > span strong { display: block; font: 720 12px/1 var(--body); }
.result-event > span small { display: block; margin-top: 5px; color: #60707e; font: 650 8px/1 var(--mono); letter-spacing: .06em; }
.result-event > b { color: var(--cyan); }
.archive-result-detail { min-width: 0; padding: 30px; }
.result-select-empty { min-height: 620px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.result-select-empty > span, .archive-result-top span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .12em; }
.result-select-empty h3 { margin: 22px 0; font: 800 54px/.84 var(--display); letter-spacing: -.07em; }
.result-select-empty p { color: #758492; }
.archive-result-top { display: grid; grid-template-columns: 1fr auto; gap: 25px; align-items: end; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.archive-result-top time { display: block; margin: 25px 0 7px; color: #82909e; font: 700 9px/1 var(--mono); letter-spacing: .1em; }
.archive-result-top h3 { margin: 0; font: 780 clamp(33px,4vw,55px)/.88 var(--display); letter-spacing: -.065em; }
.archive-result-stats { display: flex; gap: 25px; }
.archive-result-stats span { color: #71808e; }
.archive-result-stats b { display: block; margin-bottom: 7px; color: var(--chrome); font: 800 26px/.8 var(--display); }
.archive-result-detail .table-scroll { margin-top: 25px; max-height: 475px; }
.table-scroll { overflow: auto; scrollbar-color: #596a7d #111923; }
.race-table { width: 100%; border-collapse: collapse; white-space: nowrap; }
.race-table th { position: sticky; z-index: 2; top: 0; padding: 12px 11px; border-bottom: 1px solid var(--cyan); color: var(--cyan); background: #111923; text-align: left; font: 750 8px/1 var(--mono); letter-spacing: .08em; }
.race-table td { padding: 11px; border-bottom: 1px solid rgba(218,239,255,.08); color: #b2bdc7; font-size: 11px; }
.race-table tbody tr:hover td { color: white; background: rgba(109,230,255,.055); }
.race-driver { color: inherit; font: inherit; font-weight: 700; }
.race-mobile-vehicle, .race-row-details { display: none; }
.original-link { display: inline-block; margin-top: 18px; padding: 0; border: 0; color: var(--cyan); background: transparent; text-decoration: none; font: 750 9px/1 var(--mono); letter-spacing: .09em; }
.source-data-open { overflow: hidden; }
.source-data-reader { position: fixed; z-index: 230; inset: 0; display: flex; flex-direction: column; padding: 36px max(25px,calc((100% - 1420px)/2)); color: var(--paper); background: radial-gradient(ellipse at 72% 0,rgba(93,130,255,.25),transparent 48%),rgba(5,8,12,.985); backdrop-filter: blur(20px); opacity: 0; visibility: hidden; transition: opacity .3s,visibility .3s; }
.source-data-reader.is-open { opacity: 1; visibility: visible; }
.source-data-close { position: absolute; z-index: 3; top: 24px; right: 28px; width: 43px; height: 43px; border: 1px solid var(--line-strong); color: white; background: rgba(255,255,255,.05); font: 300 28px/1 var(--display); }
.source-data-heading { flex: none; padding: 0 65px 24px 0; }
.source-data-heading > span { color: var(--cyan); font: 750 8px/1 var(--mono); letter-spacing: .12em; }
.source-data-heading h2 { margin: 10px 0 6px; font: 800 clamp(34px,5vw,68px)/.86 var(--display); letter-spacing: -.065em; }
.source-data-heading p { margin: 0; color: #82909e; font: 650 9px/1.4 var(--mono); letter-spacing: .08em; }
.source-data-table { min-height: 0; flex: 1; border: 1px solid var(--line); background: #0b1119; }
.source-data-table .table-scroll { width: 100%; height: 100%; }
.source-race-table { min-width: max-content; }
.source-race-table th:first-child, .source-race-table td:first-child { position: sticky; left: 0; z-index: 1; background: #111923; }
.source-race-table th:first-child { z-index: 3; }
.archive-missing { margin-top: 25px; padding: 24px; border: 1px solid var(--line); background: rgba(218,239,255,.04); }
.archive-missing strong { font: 760 23px/.95 var(--display); letter-spacing: -.04em; }
.archive-missing p { color: #82909e; font-size: 12px; line-height: 1.6; }
.result-detail-hero { padding: 180px 0 70px; }
.result-detail-hero > time { display: block; margin: 55px 0 12px; color: var(--cyan); font: 750 12px/1 var(--mono); letter-spacing: .1em; }
.result-detail-hero h1, .page-message h1 { max-width: 1000px; margin: 0; font: 820 clamp(51px,7vw,102px)/.83 var(--display); letter-spacing: -.08em; }
.result-detail-hero > div { display: flex; gap: 45px; margin-top: 45px; }
.result-detail-hero > div span { color: #738290; font: 700 9px/1.3 var(--mono); letter-spacing: .1em; }
.result-detail-hero > div b { display: block; margin-bottom: 8px; color: var(--chrome); font: 800 28px/.8 var(--display); letter-spacing: -.06em; }
.result-table-wrap { padding: 20px 0 110px; }
.result-table-wrap .table-scroll { max-height: 650px; margin-bottom: 30px; border: 1px solid var(--line); }
.page-message { min-height: 80vh; padding: 190px 0 80px; }
.page-message h1 { margin: 45px 0; }

@keyframes panelIn { from { opacity: 0; transform: translateY(14px); } }

@media (max-width: 900px) {
    .album-grid { grid-template-columns: repeat(2,1fr); }
    .current-result-grid { grid-template-columns: 1fr 1fr; }
    .result-browser { grid-template-columns: 270px 1fr; }
}

@media (max-width: 780px) {
    .page-hero { padding: 135px 0 70px; }
    .page-hero > p:last-child { margin-left: 0; }
    .media-era, .video-current, .video-archive, .current-results { padding: 55px 0 80px; }
    .current-gallery-showcase { min-height: 0; padding: 30px 24px 26px; grid-template-columns: 1fr; gap: 20px; }
    .current-gallery-showcase__copy h2 { font-size: clamp(48px,13vw,70px); }
    .current-gallery-showcase__copy > span { font-size: 14px; }
    .current-gallery-stack { min-height: 340px; }
    .current-gallery-stack > i,
    .current-gallery-stack__photo { width: 66%; border-radius: 13px; }
    .current-gallery-stack.has-1 .current-gallery-stack__photo--1 { width: 82%; left: 8%; }
    .admin-gallery-preview-banner { align-items: flex-start; flex-direction: column; gap: 8px; }
    .era-tabs, .gallery-tools, .legacy-head { grid-template-columns: 1fr; }
    .gallery-video-cta { margin-top: -18px; grid-template-columns: 46px minmax(0,1fr); gap: 14px; padding: 15px; }
    .gallery-video-cta__play { width: 46px; height: 46px; font-size: 16px; }
    .gallery-video-cta__copy small { font-size: 10px; }
    .gallery-video-cta__copy strong { font-size: 19px; }
    .gallery-video-cta > b { grid-column: 1 / -1; min-height: 44px; display: flex; align-items: center; justify-content: space-between; font-size: 11px; white-space: normal; }
    .archive-banner { grid-template-columns: 1fr; gap: 10px; }
    .archive-banner span { width: fit-content; max-width: 100%; overflow-wrap: anywhere; }
    .album-grid { grid-template-columns: 1fr 1fr; gap: 7px; }
    .album-card { padding: 8px 8px 14px; }
    .album-card__visual { height: 190px; }
    .album-card > strong { min-height: 36px; font-size: 19px; }
    .album-reader { width: 100%; max-width: 100vw; padding: 25px 15px; overflow-x: hidden; }
    .reader-heading { display: block; width: 100%; max-width: 100%; padding-right: 55px; }
    .reader-counter { display: none; }
    .photo-book { min-height: 240px; margin-top: 18px; perspective: 1350px; filter: none; box-shadow: 0 24px 42px rgba(0,0,0,.42); transition: none; }
    .book-spread { grid-template-columns: minmax(0,1fr); }
    .book-page::before, .book-turn-underlay::before, .book-turner__face::before { display: none; }
    .book-page figcaption { backdrop-filter: none; }
    .book-turner, .book-turner.is-forward, .book-turner.is-backward, .book-turn-underlay, .book-turn-underlay.is-left, .book-turn-underlay.is-right { right: auto; left: 0; width: 100%; }
    .reader-navigator { grid-template-columns: minmax(0,1fr); }
    .reader-direct-jump { grid-template-columns: minmax(0,1fr) 58px auto; }
    .reader-direct-jump input { width: 58px; }
    .reader-direct-jump button { white-space: normal; overflow-wrap: anywhere; }
    .reader-thumbs { order: -1; }
    .reader-thumb { flex-basis: 76px; height: 52px; }
    .book-page--right, .book-spine { display: none; }
    .reader-actions { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
    .reader-actions button { white-space: normal; overflow-wrap: anywhere; }
    .reader-actions p { display: none; }
    .video-item { grid-template-columns: auto 1fr; }
    .video-item .video-play { grid-column: 2; justify-self: start; }
    .video-reader { padding: 25px 15px; }
    .video-reader__head { display: block; padding-right: 55px; }
    .video-reader__counter { display: none; }
    .video-stage { min-height: 230px; height: min(58vh,520px); margin-top: 18px; }
    .video-reader__actions { grid-template-columns: 1fr 1fr; }
    .video-reader__actions p { display: none; }
    .current-result-grid { grid-template-columns: 1fr; }
    .legacy-results { padding: 80px 0; }
    .result-browser { grid-template-columns: 1fr; }
    .result-browser > aside { border-right: 0; border-bottom: 1px solid var(--line); }
    .result-event-list { max-height: 214px; overscroll-behavior: contain; }
    .archive-result-detail { padding: 21px; }
    .archive-result-top { grid-template-columns: 1fr; }
    .archive-race-table { width: 100%; table-layout: fixed; white-space: normal; }
    .archive-race-table .race-col--speed,
    .archive-race-table .race-col--vehicle,
    .archive-race-table .race-col--type,
    .archive-race-table .race-col--laps,
    .archive-race-table .race-col--secondary { display: none; }
    .archive-race-table .race-col--place { width: 17%; }
    .archive-race-table .race-col--driver { width: 38%; }
    .archive-race-table .race-col--time { width: 29%; }
    .archive-race-table .race-col--track { width: 16%; text-align: center; }
    .archive-race-table th, .archive-race-table td { padding: 10px 5px; font-size: 10px; }
    .archive-race-table .race-row { cursor: pointer; }
    .archive-race-table .race-row.is-expanded td { color: white; background: rgba(109,230,255,.075); }
    .race-mobile-vehicle { display: block; max-width: 100%; margin-top: 5px; overflow: hidden; color: #738697; font: 650 8px/1.35 var(--mono); text-overflow: ellipsis; }
    .race-row-details.is-open { display: table-row; }
    .race-row-details > td { padding: 0 5px 12px; background: rgba(5,10,16,.9); }
    .race-mobile-values { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 0; border: 1px solid rgba(218,239,255,.09); }
    .race-mobile-values > div { min-width: 0; padding: 9px; background: rgba(218,239,255,.025); }
    .race-mobile-values dt { color: var(--cyan); font: 750 7px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
    .race-mobile-values dd { margin: 5px 0 0; overflow-wrap: anywhere; color: #b8c5cf; font-size: 10px; line-height: 1.35; }
    .source-data-reader { padding: 25px 15px; }
    .source-data-heading { padding-right: 55px; }
    .source-data-heading h2 { font-size: 34px; }
    .source-data-table { margin-top: 5px; }
    .source-race-table th, .source-race-table td { padding: 10px 9px; }
    .result-detail-hero { padding: 135px 0 60px; }
    .result-detail-hero > div { flex-wrap: wrap; gap: 25px; }
}

@media (max-width: 430px) {
    .album-grid { grid-template-columns: 1fr; }
    .album-card__visual { height: 260px; }
    .current-gallery-empty { min-height: 520px; padding: 26px; }
    .current-gallery-stack { min-height: 285px; }
    .current-gallery-stack > i,
    .current-gallery-stack__photo { width: 69%; }
    .reader-actions button { font-size: 8px; }
    .video-album__head { padding: 14px; gap: 11px; }
    .video-album__head h2 { font-size: 24px; }
}

@media (max-width: 780px) {
    .back-to-top { right: max(14px,env(safe-area-inset-right)); bottom: max(16px,calc(env(safe-area-inset-bottom) + 16px)); width: 52px; min-height: 52px; grid-template-columns: 1fr; padding: 8px; }
    .back-to-top small { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

    .reader-thumb.has-image-error::before,
    .race-mobile-values dt { font-size: 8px; }

    .brand small,
    .screen-row i,
    .live-display small,
    .footer-brand small,
    .admin-section__head p,
    .result-admin-list article > div span,
    .result-admin-list article small,
    .result-admin-list article form button,
    .member-list article small,
    .member-board__head > span,
    .member-note > span,
    .member-note small,
    .current-gallery-empty > div small,
    .album-card > small,
    .album-card__visual i,
    .album-card__error,
    .album-card > em,
    .reader-heading span,
    .reader-heading p,
    .book-page figcaption,
    .reader-scrub > label,
    .reader-direct-jump label,
    .reader-direct-jump button,
    .reader-thumb span,
    .reader-actions p,
    .video-album__head small,
    .video-album__head p,
    .video-item small,
    .video-reader__head > div:first-child > span,
    .video-reader__head p,
    .video-stage > span,
    .video-reader__actions p,
    .modern-result-card > span,
    .modern-result-card p,
    .result-browser > aside label,
    .result-event > span small,
    .result-select-empty > span,
    .archive-result-top span,
    .race-table th,
    .source-data-heading > span,
    .race-mobile-vehicle,
    .reader-actions button { font-size: 9px; }

    .hero-photo-placeholder > span,
    .hero-distance small,
    .hero-rail,
    .section-index span,
    .current-stage__image > span,
    .current-stage__image small,
    .current-stage__copy > p,
    .current-facts span,
    .tech-card > span,
    .tech-card > b,
    .archive-photo span,
    .archive-numbers span,
    .latest-result > p,
    .latest-result > div span,
    .future-card > span,
    .contact-copy > small,
    .contact-form label,
    .admin-panel label,
    .member-form label,
    .site-footer nav a,
    .nav-toggle b,
    .admin-bar nav a,
    .admin-bar > form button,
    .security-warning a,
    .panel-label,
    .member-welcome form button,
    .member-note time,
    .era-tab small,
    .current-gallery-empty > p,
    .archive-banner span,
    .archive-banner b,
    .category-filters button,
    .search-field,
    .gallery-status,
    .outline-button,
    .reader-actions button,
    .video-current__empty b,
    .video-play,
    .video-reader__actions button,
    .modern-result-card a,
    .result-empty > div,
    .result-event > span:first-child,
    .archive-result-top time,
    .original-link,
    .source-data-heading p,
    .result-detail-hero > div span { font-size: 10px; }

    .hero-photo-placeholder small,
    .section-index p,
    .chrome-button,
    .line-link,
    .latest-result > a,
    .result-ready,
    .site-footer > p,
    .modern-result-card time,
    .archive-race-table th,
    .archive-race-table td,
    .race-mobile-values dd { font-size: 11px; }

    .micro-label,
    .privacy-note,
    .member-form > p:last-child { font-size: 12px; }
}

/* Mobile Navigation der Pflegezentrale muss sichtbar bleiben. */
@media (max-width: 780px) {
    .admin-bar { min-height: auto; padding-top: 11px; padding-bottom: 9px; row-gap: 9px; }
    .admin-bar nav { grid-column: 1/-1; width: 100%; display: flex; gap: 5px; overflow-x: auto; padding-bottom: 3px; scrollbar-width: thin; }
    .admin-bar nav a { flex: 0 0 auto; min-height: 34px; padding: 10px; border: 1px solid rgba(218,239,255,.12); }
    .admin-main { padding-top: 58px; }
}
