/* Vanity Roleplay redesign: editorial public pages and a calmer admin workspace. */
:root {
  --v-cyan: #038da1;
  --v-deep: #02667b;
  --v-ink: #08131b;
  --v-panel: #0e1c26;
  --v-panel-2: #142833;
  --v-line: rgba(204, 232, 237, .13);
  --v-copy: #d6e4e8;
  --v-muted: #9aafb6;
  --v-paper: #f4f8f9;
  --v-white: #fff;
  --v-radius: 18px;
  --v-font: Inter, "Segoe UI", Arial, sans-serif;
}

body[data-redesign="home"], body[data-redesign="public"] {
  background: var(--v-ink) !important;
  color: var(--v-copy);
  font-family: var(--v-font);
  -webkit-font-smoothing: antialiased;
}
body[data-redesign="home"] *, body[data-redesign="public"] * { box-sizing: border-box; }
body[data-redesign="home"] a, body[data-redesign="public"] a { text-underline-offset: .2em; }
body[data-redesign="home"] :focus-visible, body[data-redesign="public"] :focus-visible,
body[data-redesign="admin"] :focus-visible { outline: 3px solid #52ccda; outline-offset: 3px; }

/* Site navigation: compact dock, clear links and one bright action. */
body[data-redesign="home"] .nav, body[data-redesign="public"] .nav {
  background: rgba(7, 19, 27, .86) !important;
  border-bottom: 1px solid rgba(198, 232, 237, .11) !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.18);
  backdrop-filter: blur(18px);
}
body[data-redesign="home"] .nav__container, body[data-redesign="public"] .nav__container { max-width: 1380px; }
body[data-redesign="home"] .nav__links a, body[data-redesign="public"] .nav__links a {
  color: #d5e4e8 !important; font-size: .91rem; font-weight: 600; transition: color .18s ease;
}
body[data-redesign="home"] .nav__links a:hover, body[data-redesign="public"] .nav__links a:hover { color: #62d1de !important; }
body[data-redesign="home"] .mobile-menu, body[data-redesign="public"] .mobile-menu {
  background: rgba(8, 19, 27, .98) !important; border: 1px solid var(--v-line); border-radius: 0 0 18px 18px;
}
body[data-redesign="home"] .mobile-menu a, body[data-redesign="public"] .mobile-menu a { color: var(--v-copy); }

/* Odessa-inspired tactile buttons, with Vanity's quieter cyan palette. */
body[data-redesign="home"] .btn, body[data-redesign="public"] .btn,
body[data-redesign="home"] button:not(.nav__hamburger):not(#backToTop),
body[data-redesign="public"] button:not(.nav__hamburger):not(#backToTop) {
  border-radius: 999px; font-weight: 700; transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
body[data-redesign="home"] .btn--primary, body[data-redesign="public"] .btn--primary {
  color: #fff !important; background: var(--v-deep) !important; border: 1px solid #24a9ba !important;
  box-shadow: 0 8px 26px rgba(3,141,161,.19);
}
body[data-redesign="home"] .btn--primary:hover, body[data-redesign="public"] .btn--primary:hover { background: var(--v-cyan) !important; transform: translateY(-2px); }
body[data-redesign="home"] .btn--secondary, body[data-redesign="public"] .btn--secondary {
  background: rgba(255,255,255,.045) !important; border: 1px solid rgba(221,242,245,.27) !important; color: #f0f7f8 !important;
}
body[data-redesign="home"] .btn--secondary:hover, body[data-redesign="public"] .btn--secondary:hover { border-color: #51c9d6 !important; transform: translateY(-2px); }

/* Front page has a cinematic entry point and a more useful story rhythm. */
body[data-redesign="home"] .hero { min-height: min(850px, 94svh); padding: 140px 6vw 90px; align-items: center; }
body[data-redesign="home"] .hero__photo { opacity: .42 !important; background-position: center 42% !important; }
body[data-redesign="home"] .hero__glow {
  background: linear-gradient(90deg,rgba(5,15,22,.91) 0%,rgba(5,15,22,.73) 45%,rgba(5,15,22,.16) 100%),
    linear-gradient(0deg,var(--v-ink),transparent 37%) !important;
}
body[data-redesign="home"] .hero__content { width: min(760px, 100%); margin: 0 auto 0 max(0px, calc((100vw - 1260px)/2)); text-align: left; }
body[data-redesign="home"] .hero__logo-img { width: 74px; height: 74px; object-fit: contain; margin-bottom: 25px; }
body[data-redesign="home"] .hero__eyebrow { color: #79dce5 !important; text-transform: none; letter-spacing: .04em; font-size: .95rem; }
body[data-redesign="home"] .hero__title { max-width: 720px; font-size: clamp(3.8rem,8vw,7.3rem); letter-spacing: -.075em; line-height: .9; text-align: left; }
body[data-redesign="home"] .hero__title span { color: #75d5df !important; }
body[data-redesign="home"] .hero__subtitle { max-width: 650px; margin: 24px 0 26px; font-size: clamp(1rem,1.45vw,1.16rem); line-height: 1.75; text-align: left; }
body[data-redesign="home"] .hero__badges { justify-content: flex-start; margin: 0 0 27px; }
body[data-redesign="home"] .hb { color: #dff5f6 !important; background: rgba(8,37,45,.72) !important; border-color: rgba(94,206,218,.28) !important; }
body[data-redesign="home"] .hero__actions { justify-content: flex-start; }
body[data-redesign="home"] .hero__scroll { display: none; }
body[data-redesign="home"] .stats-bar { background: #0c1c25 !important; border-block: 1px solid var(--v-line) !important; }
body[data-redesign="home"] .stats-bar__inner { max-width: 1200px; }
body[data-redesign="home"] .stat-item__num { color: #76d4de !important; }
body[data-redesign="home"] .stat-item__label { color: #9fb5bc !important; }
body[data-redesign="home"] .section { padding-block: clamp(70px,9vw,124px); background: var(--v-ink) !important; }
body[data-redesign="home"] #about.section, body[data-redesign="home"] .gallery-section { background: #0c1b24 !important; }
body[data-redesign="home"] .section__inner { max-width: 1220px; }
body[data-redesign="home"] .section__header { text-align: left; max-width: 780px; margin: 0 0 42px; }
body[data-redesign="home"] .section__tag { color: #69d0dd !important; text-transform: none; letter-spacing: .035em; }
body[data-redesign="home"] .section__title { font-size: clamp(2.2rem,5.5vw,4.5rem); letter-spacing: -.055em; text-align: left; }
body[data-redesign="home"] .section__title span { color: #7bd9e2 !important; }
body[data-redesign="home"] .section__desc { max-width: 60ch; text-align: left; color: var(--v-muted) !important; }
body[data-redesign="home"] .features-grid { background: none !important; border: 0 !important; gap: 14px; }
body[data-redesign="home"] .feature-card { min-height: 235px; padding: 28px; border: 1px solid var(--v-line); border-radius: 16px; background: #0d1d26 !important; }
body[data-redesign="home"] .feature-card:hover { background: #132a34 !important; border-color: rgba(85,199,211,.4); transform: translateY(-3px); }
body[data-redesign="home"] .feature-card__num { color: #74d4df !important; }
body[data-redesign="home"] .feature-card__icon { color: #64cfdb !important; }
body[data-redesign="home"] .feature-card__title { color: #f0f7f8 !important; }
body[data-redesign="home"] .feature-card__desc { color: #a9bdc3 !important; }
body[data-redesign="home"] .cta-banner { border-radius: 24px; background: linear-gradient(110deg,#0e3039,#0d1d26 76%) !important; }

/* Shared page heads: image-backed context, grounded headline and readable copy. */
body[data-redesign="public"] .cine-hero { min-height: 460px; display: flex; align-items: flex-end; padding: 150px max(6vw, calc((100vw - 1240px)/2)) 64px; }
body[data-redesign="public"] .cine-hero__media { opacity: .47; filter: saturate(.7); }
body[data-redesign="public"] .cine-hero__scrim { background: linear-gradient(90deg,rgba(5,15,21,.88),rgba(5,15,21,.35)),linear-gradient(0deg,var(--v-ink),transparent 76%) !important; }
body[data-redesign="public"] .cine-hero__grain { opacity: .08; }
body[data-redesign="public"] .cine-hero__inner { width: 100%; max-width: 1240px; margin: auto; text-align: left; }
body[data-redesign="public"] .cine-eyebrow { color: #76d5df !important; letter-spacing: .06em; text-transform: none; }
body[data-redesign="public"] .cine-title { max-width: 850px; font-size: clamp(3rem,8vw,6.4rem); line-height: .95; letter-spacing: -.065em; text-transform: none; }
body[data-redesign="public"] .cine-title span { color: #76d5df !important; }
body[data-redesign="public"] .cine-sub { max-width: 640px; margin: 20px 0 0; color: #c2d0d4 !important; font-size: 1.08rem; line-height: 1.7; }

/* Rules: category rail, separate informational notes, plain numbered rules. */
body[data-redesign="public"] .rules-statsbar { background: #0c1b24 !important; border-block: 1px solid var(--v-line); }
body[data-redesign="public"] .rstat__val { color: #6ed1dd !important; }
body[data-redesign="public"] .rules-body { max-width: 1240px; display: grid; grid-template-columns: 250px minmax(0,1fr); gap: 48px; padding: 55px 24px 110px; }
body[data-redesign="public"] .rules-sidebar { align-self: start; top: 105px; padding: 17px; border: 1px solid var(--v-line); border-radius: 16px; background: #0d1d26; }
body[data-redesign="public"] .rules-sidebar__label { color: #75d3de; text-transform: none; letter-spacing: .02em; }
body[data-redesign="public"] .rcbtn { border-radius: 11px !important; }
body[data-redesign="public"] .rules-section { padding: 23px !important; border-radius: 15px !important; background: #0d1d26 !important; }
body[data-redesign="public"] .rules-sec-title { font-size: 1.35rem; letter-spacing: -.025em; }
body[data-redesign="public"] .rule-item { border-radius: 10px !important; }
body[data-redesign="public"] .rules-callout { padding: 19px 22px; border-radius: 14px; }
body[data-redesign="public"] .rules-info { border-radius: 15px; }

/* FAQ: wide question rows instead of small, anonymous cards. */
body[data-redesign="public"] .section { background: var(--v-ink) !important; }
body[data-redesign="public"] .section__inner { max-width: 1140px; }
body[data-redesign="public"] .accordion { max-width: 940px; margin-inline: auto; }
body[data-redesign="public"] .accordion-item, body[data-redesign="public"] .faq-item { border: 1px solid var(--v-line) !important; border-radius: 12px !important; background: #0d1d26 !important; }
body[data-redesign="public"] .accordion button, body[data-redesign="public"] .faq-question { color: #ecf5f6 !important; }
body[data-redesign="public"] .accordion button::before, body[data-redesign="public"] .faq-question::before { display: none !important; content: none !important; }
body[data-redesign="public"] .faq-cats { display: grid; gap: 40px; }
body[data-redesign="public"] .faq-cat__title { margin: 0 0 14px; color: #76d5df; font-size: 1rem; font-weight: 700; letter-spacing: 0; }
body[data-redesign="public"] .accordion-item__header { padding: 21px 24px; }
body[data-redesign="public"] .accordion-item__title { color: #ecf5f6 !important; font-size: 1rem; }
body[data-redesign="public"] .accordion-item__body-inner { padding-left: 24px; }
body[data-redesign="public"] .accordion-item__body p { color: #b1c3c9 !important; }

/* Teaser journal: latest post first, then a flexible image wall. */
body[data-redesign="public"] .teasers { max-width: 1260px; padding: 145px 26px 100px; }
body[data-redesign="public"] .teasers__intro { text-align: left !important; max-width: 900px; margin: 0 0 35px !important; }
body[data-redesign="public"] .teasers__intro h1 { font-size: clamp(3rem,7vw,6rem); letter-spacing: -.07em; line-height: .95; }
body[data-redesign="public"] .teasers__intro p { margin: 17px 0 0 !important; color: #b4c5ca !important; }
body[data-redesign="public"] .teasers__announcement { max-width: 900px; border-radius: 13px; background: #102a34 !important; border-color: rgba(91,200,213,.3) !important; }
body[data-redesign="public"] .teaser-post { border-top: 1px solid var(--v-line); padding-top: 37px; }
body[data-redesign="public"] .teaser-post__title { font-size: clamp(2rem,4vw,3.2rem); letter-spacing: -.045em; }
body[data-redesign="public"] .teasers__gallery { grid-template-columns: repeat(12,minmax(0,1fr)); gap: 14px; }
body[data-redesign="public"] .teasers__gallery > * { grid-column: span 4; border-radius: 14px; overflow: hidden; }
body[data-redesign="public"] .teasers__gallery > *:nth-child(1), body[data-redesign="public"] .teasers__gallery > *:nth-child(4) { grid-column: span 6; }
body[data-redesign="public"] .teasers__gallery img { width: 100%; height: 100%; min-height: 210px; object-fit: cover; transition: transform .35s ease; }
body[data-redesign="public"] .teasers__gallery a:hover img { transform: scale(1.035); }

/* Jobs and staff listings: distinct directory pages, not a stack of generic cards. */
body[data-redesign="public"] .jobs { max-width: 1220px; padding: 145px 25px 100px; }
body[data-redesign="public"] .jobs__intro { max-width: 860px; margin: 0 0 38px !important; }
body[data-redesign="public"] .jobs__intro h1 { font-size: clamp(3rem,7vw,5.5rem); letter-spacing: -.065em; }
body[data-redesign="public"] #jobs-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
body[data-redesign="public"] #jobs-list > * { border: 1px solid var(--v-line); border-radius: 15px; background: #0e1e27; }
body[data-redesign="public"] .srv-hero { padding: 150px max(24px, calc((100vw - 1220px)/2)) 65px; }
body[data-redesign="public"] .srv-hero h1 { font-size: clamp(3rem,7vw,6rem); letter-spacing: -.06em; }
body[data-redesign="public"] .srv-hero__tag { color: #76d5df !important; letter-spacing: .06em; text-transform: none; }
body[data-redesign="public"] .srv-hero__sub { max-width: 620px; color: #b4c5ca !important; }
body[data-redesign="public"] .srv-notice-inner { background: #102a34 !important; border-color: rgba(91,200,213,.28) !important; color: #cce8eb !important; border-radius: 13px !important; font-family: var(--v-font) !important; letter-spacing: 0 !important; }
body[data-redesign="public"] .srv-tabs { justify-content: flex-start; max-width: 1220px; }
body[data-redesign="public"] .srv-tab { color: #c1d1d5 !important; background: #0e1e27 !important; border-color: var(--v-line) !important; border-radius: 999px !important; }
body[data-redesign="public"] .srv-tab:hover, body[data-redesign="public"] .srv-tab.active { color: #8fe1e8 !important; border-color: #3caebe !important; background: #102c35 !important; }
body[data-redesign="public"] .srv-sections { max-width: 1220px; }
body[data-redesign="public"] .srv-section__header { border-bottom: 1px solid var(--v-line); padding-bottom: 13px; }
body[data-redesign="public"] .srv-section__title { color: #edf5f6 !important; font-size: 1.1rem; letter-spacing: 0; }
body[data-redesign="public"] .srv-card { background: #0e1e27 !important; border: 1px solid var(--v-line) !important; border-radius: 14px !important; }
body[data-redesign="public"] .team-sections { max-width: 1220px; padding-top: 10px; }
body[data-redesign="public"] .role-legend { justify-content: flex-start; max-width: 1220px; margin: 0 auto 35px; }
body[data-redesign="public"] .role-pill { background: #0e1e27 !important; border-color: var(--v-line) !important; color: #c6d5d9 !important; font-family: var(--v-font) !important; letter-spacing: 0 !important; }
body[data-redesign="public"] .role-pill.active, body[data-redesign="public"] .role-pill:hover { color: #8fe1e8 !important; border-color: rgba(91,200,213,.6) !important; background: #102a34 !important; }
body[data-redesign="public"] .team-section { margin-bottom: 42px; }
body[data-redesign="public"] .team-section__label { color: #6dceda !important; letter-spacing: 0; text-transform: none; }
body[data-redesign="public"] .team-section__count { color: #9fb3b9 !important; background: #10232c !important; border-color: var(--v-line) !important; border-radius: 999px; }
body[data-redesign="public"] .team-grid { grid-template-columns: repeat(auto-fill,minmax(210px,1fr)); gap: 14px; }
body[data-redesign="public"] .member-card { min-height: 225px; background: #0e1e27 !important; border-color: var(--v-line) !important; border-radius: 16px !important; }
body[data-redesign="public"] .member-name { color: #eff6f7 !important; }
body[data-redesign="public"] .member-discord { color: #9db2b8 !important; }
body[data-redesign="public"] .kal-hero__tag { color: #76d5df !important; letter-spacing: .04em; }
body[data-redesign="public"] .kal-hero__sub { max-width: 600px; color: #b4c5ca !important; }
body[data-redesign="public"] .kal-month-nav, body[data-redesign="public"] .kal-upcoming { background: #0e1e27 !important; border: 1px solid var(--v-line) !important; border-radius: 15px !important; }
body[data-redesign="public"] .kal-cell, body[data-redesign="public"] .kal-day-header { border-color: var(--v-line) !important; }
body[data-redesign="public"] .kal-cell { background: #0b1a23 !important; }
body[data-redesign="public"] .kal-cell:hover, body[data-redesign="public"] .kal-cell.has-event { background: #102a34 !important; }
body[data-redesign="public"] .kal-event-dot { background: #54c4d0 !important; }
body[data-redesign="public"] .ev-modal { background: #0e1e27 !important; border: 1px solid var(--v-line) !important; border-radius: 16px !important; }

/* Login, forms and portal: focus the actual task and preserve every control. */
body[data-redesign="public"] .login-wrap { min-height: 100svh; display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.75fr); align-items: center; gap: 7vw; padding: 125px max(6vw, calc((100vw - 1220px)/2)) 80px; }
body[data-redesign="public"] .login-panel, body[data-redesign="public"] .apply-form-wrap { border: 1px solid var(--v-line); border-radius: 20px; background: #0e1d26; box-shadow: 0 24px 65px rgba(0,0,0,.22); }
body[data-redesign="public"] .login-panel { padding: clamp(26px,4vw,48px); }
body[data-redesign="public"] .login-panel h1, body[data-redesign="public"] .apply-page h1 { letter-spacing: -.05em; }
body[data-redesign="public"] .apply-page { max-width: 1120px; padding: 140px 24px 90px; margin: auto; }
body[data-redesign="public"] .apply-form-wrap { padding: clamp(24px,4vw,46px); }
body[data-redesign="public"] .apply-form-wrap input, body[data-redesign="public"] .apply-form-wrap select, body[data-redesign="public"] .apply-form-wrap textarea,
body[data-redesign="public"] .login-panel input { border-radius: 10px; }
body[data-redesign="public"] .portal__main { min-height: 100vh; padding: 112px clamp(20px,5vw,70px) 70px; background: #091720; }
body[data-redesign="public"] .portal__main > * { max-width: 1220px; margin-inline: auto; }
body[data-redesign="public"] .profile-hero { border-radius: 20px; overflow: hidden; }

/* Legal pages: readable measure and visible document navigation. */
body[data-redesign="public"] .legal, body[data-redesign="public"] .policy { max-width: 860px; margin: auto; padding: 150px 24px 100px; color: #d5e2e6; }
body[data-redesign="public"] .legal h1, body[data-redesign="public"] .policy h1, body[data-redesign="public"] .legal-hero h1 { font-size: clamp(2.6rem,6vw,4.8rem); line-height: 1; letter-spacing: -.06em; color: #f4f9fa; }
body[data-redesign="public"] .legal p, body[data-redesign="public"] .policy p, body[data-redesign="public"] .legal-body p { max-width: 72ch; color: #b4c4ca; line-height: 1.85; }
body[data-redesign="public"] .legal-wrap { background: var(--v-ink) !important; }
body[data-redesign="public"] .legal-hero { max-width: 1120px; margin-inline: auto; padding: 150px 24px 35px; }
body[data-redesign="public"] .legal-layout { max-width: 1120px; margin: auto; display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 48px; }
body[data-redesign="public"] .legal-toc { align-self: start; position: sticky; top: 110px; }
body[data-redesign="public"] .legal-body { max-width: 760px; padding: 20px 24px 90px; }
body[data-redesign="public"] .legal-body h2 { margin-top: 2.4em; padding-top: .6em; border-top: 1px solid var(--v-line); color: #edf5f7; }

/* Calendar, team and shop follow their own data but share calm surfaces. */
body[data-redesign="public"] .kal-hero { padding: 150px max(24px, calc((100vw - 1220px)/2)) 55px; }
body[data-redesign="public"] .kal-wrap { max-width: 1220px; margin: auto; }
body[data-redesign="public"] .kal-wrap h1 { font-size: clamp(2.8rem,6vw,5.2rem); letter-spacing: -.055em; }
body[data-redesign="public"] .reno-page { max-width: 1220px; margin: auto; padding: 140px 24px 90px; }
body[data-redesign="public"] .anv-wrap { max-width: 1040px; margin: auto; padding: 145px 24px 90px; }
body[data-redesign="public"] .page-header { margin-bottom: 34px; }

/* Footer and cookie notice remain legible and easy to reach. */
body[data-redesign="home"] .site-footer, body[data-redesign="public"] .site-footer { background: #07131b !important; border-top: 1px solid var(--v-line) !important; }
body[data-redesign="home"] .footer-heading, body[data-redesign="public"] .footer-heading { color: #72d4de !important; }
body[data-redesign="home"] .footer-brand p, body[data-redesign="home"] .footer-bottom p,
body[data-redesign="public"] .footer-brand p, body[data-redesign="public"] .footer-bottom p { color: #9eb3ba !important; }
body[data-redesign="home"] .cookie-banner, body[data-redesign="public"] .cookie-banner { border: 1px solid rgba(111,211,222,.28); border-radius: 16px; box-shadow: 0 15px 55px rgba(0,0,0,.38); }

/* Admin uses the same dark navy and teal palette across every subpage. */
body[data-redesign="admin"] {
  --rx-bg: #08151d; --rx-bg2: #0b1c25; --rx-surface: #10232d; --rx-surface2: #152c37;
  --rx-border: #263e48; --rx-border2: #36545f; --rx-tx: #ecf5f6; --rx-tx2: #b5c8cd; --rx-muted: #8ba3aa;
  --rx-acc: #53c6d1; --rx-acc2: #038da1; --rx-accsoft: rgba(3,141,161,.15);
  --clr-bg: #08151d; --clr-bg2: #0b1c25; --clr-surface: #10232d; --clr-surface2: #152c37;
  --clr-white: #ecf5f6; --clr-navy: #ecf5f6; --clr-grey: #b5c8cd; --clr-border: #263e48;
  --clr-green: #53c6d1; --clr-green2: #53c6d1; --clr-teal: #53c6d1;
  color-scheme: dark; background: #08151d !important; color: #ecf5f6 !important;
  font-family: var(--v-font); -webkit-font-smoothing: antialiased;
}
body[data-redesign="admin"] .admin-main { background: #08151d !important; color: #ecf5f6 !important; padding-inline: clamp(18px,3vw,42px) !important; }
body[data-redesign="admin"] .admin-topbar { margin-inline: calc(-1 * clamp(18px,3vw,42px)) !important; padding-inline: clamp(18px,3vw,42px) !important; }
body[data-redesign="admin"] .admin-sidebar, body[data-redesign="admin"] #adminSidebarMount { background: #0b1b24 !important; border-right: 1px solid #263e48 !important; box-shadow: 6px 0 28px rgba(0,0,0,.18); }
body[data-redesign="admin"] .rx-card, body[data-redesign="admin"] .info-card, body[data-redesign="admin"] .stat-card,
body[data-redesign="admin"] .admin-card, body[data-redesign="admin"] .table-wrap {
  background: #10232d !important; color: #ecf5f6 !important; border-color: #263e48 !important; border-radius: 14px !important; box-shadow: 0 12px 32px rgba(0,0,0,.16);
}
body[data-redesign="admin"] .admin-page-title, body[data-redesign="admin"] h1, body[data-redesign="admin"] h2 { color: #ecf5f6 !important; letter-spacing: -.035em; }
body[data-redesign="admin"] button, body[data-redesign="admin"] .btn, body[data-redesign="admin"] .rx-btn { border-radius: 9px !important; }
body[data-redesign="admin"] input, body[data-redesign="admin"] select, body[data-redesign="admin"] textarea {
  background: #10232d !important; border: 1px solid #36545f !important; color: #ecf5f6 !important; border-radius: 8px !important;
}
body[data-redesign="admin"] table { border-collapse: separate; border-spacing: 0; background: #10232d; color: #ecf5f6; }
body[data-redesign="admin"] th { background: #152c37 !important; color: #b5c8cd !important; font-size: .75rem; letter-spacing: .025em; }
body[data-redesign="admin"] td, body[data-redesign="admin"] th { border-color: #263e48 !important; }
body[data-redesign="admin"] tr:hover td { background: #18323c; }
body[data-redesign="admin"] .admin-sb-home { border-radius: 9px; }

@media (max-width: 900px) {
  body[data-redesign="home"] .hero { min-height: 790px; padding: 125px 25px 70px; align-items: flex-end; }
  body[data-redesign="home"] .hero__content { margin: 0; }
  body[data-redesign="home"] .hero__title { font-size: clamp(3.4rem,12vw,6.4rem); }
  body[data-redesign="public"] .rules-body { grid-template-columns: 1fr; gap: 22px; }
  body[data-redesign="public"] .rules-sidebar { position: relative; top: auto; }
  body[data-redesign="public"] .login-wrap { grid-template-columns: 1fr; max-width: 700px; margin: auto; }
  body[data-redesign="public"] .legal-layout { grid-template-columns: 1fr; gap: 10px; }
  body[data-redesign="public"] .legal-toc { position: relative; top: auto; padding: 0 24px; }
}
@media (max-width: 620px) {
  body[data-redesign="home"] .hero { min-height: 760px; padding-inline: 22px; }
  body[data-redesign="home"] .hero__photo { background-position: 60% center !important; }
  body[data-redesign="home"] .hero__glow { background: linear-gradient(0deg,var(--v-ink) 2%,rgba(8,19,27,.86) 40%,rgba(8,19,27,.18) 100%) !important; }
  body[data-redesign="home"] .hero__title { font-size: clamp(3rem,15vw,5rem); }
  body[data-redesign="home"] .hero__badges { gap: 7px; }
  body[data-redesign="home"] .hb { font-size: .75rem; padding: 7px 11px; }
  body[data-redesign="home"] .section { padding-block: 65px; }
  body[data-redesign="home"] .features-grid { grid-template-columns: 1fr; }
  body[data-redesign="home"] .feature-card { min-height: auto; }
  body[data-redesign="public"] .cine-hero { min-height: 400px; padding: 125px 22px 48px; }
  body[data-redesign="public"] .cine-title { font-size: clamp(2.8rem,13vw,4.5rem); }
  body[data-redesign="public"] .rules-body { padding-inline: 16px; }
  body[data-redesign="public"] .rules-info__grid { grid-template-columns: 1fr; }
  body[data-redesign="public"] .teasers__gallery { display: grid; grid-template-columns: 1fr 1fr; }
  body[data-redesign="public"] .teasers__gallery > *, body[data-redesign="public"] .teasers__gallery > *:nth-child(1),
  body[data-redesign="public"] .teasers__gallery > *:nth-child(4) { grid-column: span 1; }
  body[data-redesign="public"] .teasers__gallery > *:first-child { grid-column: span 2; }
  body[data-redesign="public"] #jobs-list { grid-template-columns: 1fr; }
  body[data-redesign="public"] .login-wrap { min-height: auto; padding: 120px 18px 60px; }
  body[data-redesign="public"] .legal, body[data-redesign="public"] .policy { padding-top: 125px; }
  body[data-redesign="admin"] .admin-layout { display: block !important; }
  body[data-redesign="admin"] #adminSidebarMount, body[data-redesign="admin"] .admin-sidebar { width: 100% !important; height: auto !important; position: relative !important; }
  body[data-redesign="admin"] .admin-main { padding: 0 16px 38px !important; }
  body[data-redesign="admin"] .admin-topbar { margin-inline: -16px !important; padding: 17px 16px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-redesign] *, body[data-redesign] *::before, body[data-redesign] *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
