/**
 * Classic-Startseite — 1:1 Vorhang / Login / Screenshots
 */
html:has(body.landing-classic),
body.landing-classic {
    --login-inset-top: 10cqh;
    --login-inset-right: 16cqw;
    --login-inset-bottom: 8cqh;
    --login-inset-left: 16cqw;
    --login-bg-x: 0px;
    --login-bg-y: -2px;
    --login-bg-scale: 0.78;
    --login-content-x: 0px;
    --login-content-y: 40px;
    --login-content-scale: 0.88;
    --login-box-x: -4px;
    --login-box-y: 183px;
    --login-box-scale: 0.92;
    --login-box-width: 330px;
    --login-logo-x: 0px;
    --login-logo-y: -6.6cqh;
    --login-logo-width-px: 550;
    --login-shots-x: -84px;
    --login-shots-y: 346px;
    --login-shots-scale: 1;
    --login-curtain-scale: 1;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    background: #0b0202 !important;
    font-family: 'Cinzel', Georgia, serif !important;
    font-size: 11px !important;
    color: #f0e6d4 !important;
}
body.landing-classic *,
body.landing-classic *::before,
body.landing-classic *::after {
    box-sizing: border-box;
}

body.landing-classic .scene,
body.landing-classic .episch-werben-modal,
body.landing-classic #bgSound,
body.landing-classic #textSound {
    display: none !important;
}

body.landing-classic > a[href*="camp_theme"] {
    z-index: 100080 !important;
    background: rgba(20, 10, 6, 0.88) !important;
    border: 1px solid #7a5e1a !important;
    color: #ffd700 !important;
}

.lc-skin {
    --wood-dark: #2b1509;
    --gold-bright: #ffd700;
    --text-muted: #a08060;
    --promo-yellow: #f0e878;
    --login-red: #b82020;
    position: fixed;
    inset: 0;
    z-index: 30;
}

.lc-curtain-stripes {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-color: #0b0202;
    background-image:
        radial-gradient(circle at 50% 30%, rgba(139, 10, 10, 0.4) 0%, rgba(0, 0, 0, 0.8) 85%),
        linear-gradient(to right,
            #000000 0%, #150202 4%, #350404 12%, #550707 20%,
            #350404 28%, #150202 36%, #000000 40%, #150202 44%,
            #350404 52%, #550707 60%, #350404 68%, #150202 76%, #000000 80%);
    background-size: 320px 100%;
    background-repeat: repeat;
}

.lc-bg-login {
    position: fixed;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: translate(var(--login-bg-x), var(--login-bg-y)) scale(var(--login-bg-scale));
    transform-origin: center center;
}

.lc-curtain {
    position: fixed;
    inset: 0;
    z-index: 9999;
    pointer-events: none;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    transform: scale(var(--login-curtain-scale));
    transform-origin: center center;
}

.lc-inset {
    position: fixed;
    z-index: 2;
    top: var(--login-inset-top);
    right: var(--login-inset-right);
    bottom: var(--login-inset-bottom);
    left: var(--login-inset-left);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    pointer-events: none;
}
.lc-frame {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    pointer-events: auto;
    transform: translate(var(--login-content-x), var(--login-content-y)) scale(var(--login-content-scale));
    transform-origin: center center;
}
.lc-bottom-nav,
.lc-footer {
    pointer-events: auto;
}

.lc-stage {
    display: flex;
    align-items: stretch;
    flex: 1 1 auto;
    min-height: 0;
    padding: 5cqh 6px 0;
}

.lc-left {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 4px 8px 8px 10px;
    z-index: 2;
    position: relative;
    transform: translate(var(--login-box-x), var(--login-box-y)) scale(var(--login-box-scale));
    transform-origin: top left;
    pointer-events: none;
}
.lc-panel,
.lc-promo {
    pointer-events: auto;
}

.lc-panel {
    background: rgba(12, 8, 6, 0.42);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 6px 22px rgba(0, 0, 0, 0.5);
    padding: 8px 10px 10px;
    max-width: var(--login-box-width);
    border-radius: 4px;
}
.lc-view[hidden] { display: none !important; }

.lc-panel-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}
.lc-panel-head h2 {
    margin: 0;
    font-size: 14px;
    font-weight: 700;
    color: var(--login-red);
    letter-spacing: 0.04em;
}
.lc-panel-head a,
.lc-forgot-open {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 9px;
    color: #e87828;
    text-decoration: none;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}
.lc-panel-head a:hover,
.lc-forgot-open:hover { text-decoration: underline; color: #ffb060; }
.lc-auth-error {
    margin: 0 0 8px;
    padding: 6px 8px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    color: #ffd0d0;
    background: rgba(80, 10, 10, 0.55);
    border: 1px solid rgba(200, 60, 60, 0.45);
    border-radius: 3px;
}

.lc-field { margin-bottom: 6px; }
.lc-field label {
    display: block;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    color: #f0e6d4;
    margin-bottom: 2px;
}
.lc-field input {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.88);
    color: #1a1008;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 11px;
    padding: 5px 7px;
    border-radius: 2px;
}

.lc-actions { display: flex; gap: 6px; margin-top: 10px; }
.lc-btn {
    flex: 1 1 0;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    color: #f0e6d4;
    padding: 6px 8px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: linear-gradient(180deg, rgba(80, 72, 64, 0.55) 0%, rgba(30, 26, 22, 0.65) 100%);
    cursor: pointer;
    border-radius: 3px;
}
.lc-btn:hover { filter: brightness(1.1); color: #fff; }
.lc-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
    filter: none;
}

.lc-agb-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 4px 0 10px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    color: #f0e6d4;
    line-height: 1.45;
}
.lc-agb-row input[type="checkbox"] {
    margin-top: 2px;
    flex-shrink: 0;
}
.lc-agb-open {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font: inherit;
    color: var(--login-red);
    text-decoration: underline;
    cursor: pointer;
}
.lc-agb-open:hover { color: #ff8a8a; }

.lc-glass-modal {
    position: fixed;
    inset: 0;
    z-index: 100090;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 16px;
}
.lc-glass-modal.is-open { display: flex; }
.lc-glass-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.72);
}
.lc-glass-modal-box {
    position: relative;
    z-index: 1;
    width: min(340px, 96cqw);
    max-height: 90cqh;
    display: flex;
    flex-direction: column;
    background: rgba(18, 10, 6, 0.92);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 12px 40px rgba(0, 0, 0, 0.65);
    border-radius: 6px;
    padding: 14px 16px 16px;
}
.lc-glass-modal-box--agb {
    width: min(720px, 96cqw);
}
.lc-glass-modal-box--event {
    width: min(440px, 96cqw);
}
.lc-event-hero {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 10px;
    border: 1px solid rgba(255, 215, 0, 0.28);
    border-radius: 4px;
    object-fit: cover;
    background: #120a06;
}
.lc-event-remain {
    color: #ffd700 !important;
    font-weight: 700;
}
.lc-event-dont {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 10px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    color: #d8c8a8;
    cursor: pointer;
}
.lc-glass-modal-box h2 {
    margin: 0 0 8px;
    font-size: 14px;
    color: var(--login-red);
}
.lc-glass-modal-box p {
    margin: 0 0 10px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    color: #d8c8a8;
    line-height: 1.45;
}
.lc-field textarea {
    width: 100%;
    box-sizing: border-box;
    min-height: 88px;
    resize: vertical;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.88);
    color: #1a1008;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 11px;
    padding: 5px 7px;
    border-radius: 2px;
}
.lc-auth-success {
    margin: 0 0 10px;
    padding: 8px 10px;
    border: 1px solid rgba(80, 180, 90, 0.55);
    background: rgba(20, 60, 25, 0.55);
    border-radius: 4px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    line-height: 1.45;
    color: #d8f5d0;
}
.lc-footer-btn {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font: inherit;
    color: #c9a96a;
    cursor: pointer;
}
.lc-footer-btn:hover {
    color: var(--gold-bright);
    text-decoration: underline;
}
.lc-agb-modal-scroll {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0 0 10px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(0, 0, 0, 0.35);
    overflow: hidden;
}
.lc-agb-modal-scroll iframe {
    display: block;
    width: 100%;
    height: min(58cqh, 520px);
    border: 0;
    background: #111;
}

.lc-hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
}

.lc-promo { padding: 2px 2px 0; max-width: 400px; }
.lc-promo h3 {
    margin: 0 0 5px;
    font-size: 11px;
    font-weight: 700;
    color: var(--promo-yellow);
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.85);
}
.lc-promo p {
    margin: 0 0 4px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    line-height: 1.45;
    color: #d8c8a8;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.75);
}
.lc-cta {
    display: inline-block;
    margin-top: 4px;
    font-size: 20px;
    font-weight: 900;
    color: var(--login-red);
    letter-spacing: 0.06em;
    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.8);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    font-family: 'Cinzel', Georgia, serif;
}
.lc-cta:hover { color: #ff4444; }

.lc-spacer { flex: 1 1 34%; min-width: 40px; pointer-events: none; }

.lc-bottom-nav {
    position: relative;
    z-index: 8;
    display: flex;
    border-top: 2px solid var(--wood-dark);
    background: linear-gradient(180deg, #6b4a2a 0%, #3d2510 55%, #2b1509 100%);
    box-shadow: inset 0 1px 0 rgba(255, 215, 0, 0.12);
    flex-shrink: 0;
    pointer-events: auto;
}
.lc-bottom-nav a,
.lc-bottom-nav .lc-nav-btn,
.lc-bottom-nav .lc-lang {
    flex: 1 1 0;
    text-align: center;
    text-decoration: none;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    color: #f0e6d4;
    padding: 7px 4px;
    border-right: 1px solid rgba(0, 0, 0, 0.45);
    background: transparent;
    border-top: none;
    border-bottom: none;
    border-left: none;
    cursor: pointer;
}
.lc-bottom-nav .lc-lang {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
}
.lc-bottom-nav .lc-lang img {
    width: 18px;
    height: 13px;
    object-fit: cover;
    border: 1px solid rgba(0, 0, 0, 0.35);
}
.lc-bottom-nav a:last-child,
.lc-bottom-nav .lc-lang { border-right: none; }
.lc-bottom-nav a:hover,
.lc-bottom-nav .lc-nav-btn:hover {
    background: rgba(255, 215, 0, 0.12);
    color: #fff;
}

.lc-footer {
    position: relative;
    z-index: 8;
    text-align: center;
    padding: 6px 6px 0;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 9px;
    color: var(--text-muted);
    pointer-events: auto;
}
.lc-footer a { color: #c9a96a; text-decoration: none; }
.lc-footer a:hover { color: var(--gold-bright); text-decoration: underline; }
.lc-footer .sep { margin: 0 4px; color: #6a5040; }

.lc-ad-wrap {
    position: relative;
    z-index: 8;
    margin: 8px 2px 0;
    max-width: 330px;
    min-height: 70px;
    pointer-events: auto;
}
.lc-ad-consent {
    background: rgba(18, 8, 6, 0.88);
    border: 1px solid #6a4028;
    padding: 8px 10px;
    color: #d8c8b0;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    line-height: 1.35;
}
.lc-ad-consent p { margin: 0 0 8px; }
.lc-ad-consent a { color: #c9a96a; }
.lc-ad-consent-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.lc-ad-btn {
    background: #2a1810;
    border: 1px solid #6a5030;
    color: #f0e0c0;
    font-size: 10px;
    padding: 5px 8px;
    cursor: pointer;
    font-family: Verdana, Geneva, sans-serif;
}
.lc-ad-btn-ok {
    background: linear-gradient(180deg, #d4b888 0%, #a08058 100%);
    color: #1a1208;
    font-weight: bold;
}
.lc-ad-slot {
    min-height: 90px;
    overflow: hidden;
    background: rgba(0,0,0,0.25);
}

.lc-shots {
    position: fixed;
    z-index: 10001;
    top: calc(var(--login-inset-top) + 5cqh);
    right: calc(var(--login-inset-right) + 6px);
    bottom: calc(var(--login-inset-bottom) + 52px);
    width: 128px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    pointer-events: auto;
    transform: translate(var(--login-shots-x), var(--login-shots-y)) scale(var(--login-shots-scale));
    transform-origin: top right;
}
.lc-shots-title {
    font-size: 11px;
    font-weight: 700;
    color: var(--login-red);
    letter-spacing: 0.12em;
    text-align: center;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.85);
}
.lc-shots-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1 1 auto;
}
.lc-shot {
    display: block;
    width: 100%;
    border: 2px solid #8b2020;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.55);
    cursor: pointer;
    background: #000;
    padding: 0;
}
.lc-shot img { width: 100%; height: auto; display: block; }

.lc-logo {
    position: fixed;
    z-index: 10002;
    pointer-events: none;
    top: calc(var(--login-inset-top) + var(--login-logo-y));
    left: calc(50cqw + var(--login-logo-x));
    transform: translateX(-50%);
    text-align: center;
}
.lc-logo img {
    width: calc(var(--login-logo-width-px) * 1px);
    max-width: none;
    height: auto;
    filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.75));
}

.lc-shot-modal {
    position: fixed;
    inset: 0;
    z-index: 100080;
    background: rgba(0, 0, 0, 0.88);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}
.lc-shot-modal[hidden] { display: none !important; }
.lc-shot-modal img {
    max-width: min(920px, 96cqw);
    max-height: 92cqh;
}

.lc-glass-modal-box.lc-support-box {
    width: min(720px, 96cqw);
    max-height: 92cqh;
    overflow: auto;
    padding: 16px 18px 18px;
    background: linear-gradient(180deg, #5a4120 0%, #3a2812 28%, #2a1c0c 100%);
    border: 2px solid #8d6a34;
    border-radius: 2px;
    box-shadow: inset 0 0 0 1px #2a1c0c, inset 0 0 0 3px #6a4e22, 0 18px 48px rgba(0, 0, 0, 0.78);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.lc-glass-modal-box.lc-support-box h2 {
    margin: 0 0 12px;
    color: #f0d78a;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 16px;
    font-weight: bold;
    text-align: left;
    text-shadow: 0 1px 0 #1a1006;
}
.lc-support-table {
    width: 100%;
    border-collapse: collapse;
}
.lc-support-table th {
    width: 148px;
    padding: 7px 10px 7px 0;
    vertical-align: top;
    text-align: left;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 12px;
    font-weight: normal;
    color: #f0d78a;
}
.lc-support-table td { padding: 6px 0 8px; vertical-align: top; }
.lc-support-box input[type="text"],
.lc-support-box input[type="email"],
.lc-support-box select,
.lc-support-box textarea {
    display: block;
    width: min(280px, 100%);
    box-sizing: border-box;
    border: 1px solid #6a5018;
    background: #c9a15a;
    color: #2a1c08;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 12px;
    padding: 3px 6px;
    border-radius: 0;
}
.lc-support-box textarea {
    width: min(420px, 100%);
    min-height: 72px;
    resize: vertical;
}
.lc-support-hint {
    margin: 6px 0 0 !important;
    max-width: 520px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 11px !important;
    line-height: 1.35 !important;
    color: #e08a28 !important;
}
.lc-support-captcha {
    display: block;
    width: 118px;
    height: 40px;
    background: #fff;
    border: 1px solid #6a5018;
}
.lc-support-renew {
    display: inline-block;
    margin-top: 4px;
    padding: 0;
    border: 0;
    background: none;
    color: #7eb0e8;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 12px;
    text-decoration: underline;
    cursor: pointer;
}
.lc-support-actions {
    display: flex;
    justify-content: center;
    gap: 36px;
    margin-top: 14px;
}
.lc-support-btn {
    min-width: 148px;
    height: 32px;
    padding: 0 16px;
    border: 0;
    background: url("../classic-reference/button-normal.png") center / 100% 100% no-repeat;
    color: #1a1208;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: pointer;
}
.lc-support-btn:hover {
    background-image: url("../classic-reference/button-hover.png");
    filter: none;
    color: #1a1208;
}
.lc-support-error {
    margin: 0 0 10px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 11px;
    color: #ffb0b0;
}
.lc-support-ok {
    margin: 0 0 12px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 12px;
    color: #f0d78a;
}

@media (max-width: 800px) {
    html:not(.index-ui-fit) .lc-inset { top: 8cqh; right: 4cqw; bottom: 4cqh; left: 4cqw; }
    html:not(.index-ui-fit) .lc-shots { display: none; }
    html:not(.index-ui-fit) .lc-logo img { max-width: 72cqw; }
    html:not(.index-ui-fit) .lc-panel { max-width: none; }
    html:not(.index-ui-fit) .lc-left { transform: none; }
    html:not(.index-ui-fit) .lc-support-table th { display: block; width: auto; padding-bottom: 2px; }
    html:not(.index-ui-fit) .lc-support-table td { display: block; padding-top: 0; }
}
