:root { color-scheme: dark; font-family: Inter, "Segoe UI", sans-serif; background: #071019; color: #f4f7fa; --accent: #5cc8ff; --muted: #8299ab; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 80% 0, #173653 0, #071019 44%); }
.topbar { height: 68px; display: flex; align-items: center; justify-content: space-between; padding: 0 5vw; border-bottom: 1px solid rgba(255,255,255,.1); }
.brand { color: #fff; font-size: 1.25rem; font-weight: 800; text-decoration: none; letter-spacing: -.03em; }
.brand span { color: #5cc8ff; font-weight: 950; }
.season { color: #9db0c2; font-size: .85rem; }
.topbar-actions { display: flex; align-items: center; gap: 14px; }
.theme-toggle { width: 38px; height: 38px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; color: #dceaf4; background: rgba(255,255,255,.06); font: inherit; font-size: 1.08rem; cursor: pointer; transition: transform .18s ease, background .18s ease, border-color .18s ease; }
.theme-toggle:hover { transform: translateY(-1px); border-color: rgba(92,200,255,.55); background: rgba(92,200,255,.12); }
.theme-sun, .theme-moon { display: none; }
.theme-balanced { display: inline; }
.page-shell { width: min(1120px, 90vw); margin: 0 auto; padding: 8vh 0; }
.hero { max-width: 760px; }
.eyebrow { color: #5cc8ff; font-size: .78rem; font-weight: 800; letter-spacing: .18em; }
h1 { margin: .4rem 0 1rem; font-size: clamp(2.6rem, 9vw, 6rem); line-height: .95; letter-spacing: -.06em; }
.hero > p:last-child { max-width: 620px; color: #b6c5d2; font-size: clamp(1rem, 2.5vw, 1.35rem); line-height: 1.55; }
.event-section { margin-top: 7vh; }
.event-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 17px; }
.event-section-heading h2 { margin: 5px 0 0; font-size: clamp(1.55rem,3vw,2.25rem); letter-spacing: -.035em; }
.event-section-heading p { max-width: 430px; margin: 0; color: var(--muted); line-height: 1.5; text-align: right; }
.event-grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: 16px; }
.event-card { min-height: 250px; padding: 28px; border-radius: 22px; background: linear-gradient(145deg, rgba(255,255,255,.09), rgba(255,255,255,.035)); border: 1px solid rgba(255,255,255,.1); display: flex; flex-direction: column; }
.event-live { background: linear-gradient(145deg, rgba(28,96,140,.72), rgba(15,44,66,.66)); }
.event-upcoming { border-color: rgba(92,200,255,.2); }
.event-finished { min-height: 215px; opacity: .82; }
.event-meta { display: flex; justify-content: space-between; color: #aac0d1; font-size: .78rem; font-weight: 800; letter-spacing: .08em; }
.event-status-pill { padding: 5px 9px; border-radius: 999px; }
.event-status-pill.status-live { color: #071019; background: #62dfa6; }
.event-status-pill.status-upcoming { color: #bde9ff; background: rgba(92,200,255,.14); }
.event-status-pill.status-finished { color: #d9caff; background: rgba(198,151,255,.13); }
.event-card h2 { max-width: 580px; margin: auto 0 8px; font-size: clamp(1.5rem, 3vw, 2.45rem); line-height: 1.08; letter-spacing: -.035em; }
.event-card p { margin: 0 0 28px; color: #b9c9d6; }
.event-card a { color: #fff; font-weight: 750; text-decoration: none; }
.event-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 0 0 24px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,.09); border-bottom: 1px solid rgba(255,255,255,.09); }
.event-stats div { display: grid; gap: 2px; }
.event-stats strong { font-size: 1.05rem; }
.event-stats span { color: #8299ab; font-size: .68rem; }
.notice { margin-top: 18px; padding: 16px 18px; border-radius: 14px; color: #ffd8ac; background: rgba(145,77,17,.28); border: 1px solid rgba(255,173,102,.35); }
.back-link { color: #9db0c2; text-decoration: none; font-weight: 700; }
.event-hero { margin: 5vh 0; padding: clamp(28px, 5vw, 58px); border-radius: 26px; background: linear-gradient(145deg, rgba(28,96,140,.74), rgba(15,44,66,.58)); border: 1px solid rgba(255,255,255,.1); }
.event-hero h1 { max-width: 900px; font-size: clamp(2.3rem, 6vw, 5rem); }
.event-location { color: #b9c9d6; font-size: 1.1rem; }
.featured-class { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 24px; align-items: center; margin: -18px 0 44px; padding: 24px 26px; border: 1px solid rgba(92,200,255,.42); border-radius: 21px; background: linear-gradient(120deg,rgba(29,91,126,.4),rgba(255,255,255,.04)); }
.featured-live { border-color: rgba(98,223,166,.55); background: linear-gradient(120deg,rgba(23,112,80,.45),rgba(255,255,255,.04)); }
.featured-class-title { display: grid; grid-template-columns: 54px minmax(0,1fr); gap: 16px; align-items: center; margin-top: 10px; }
.featured-class-title > strong { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 14px; color: #071019; background: #5cc8ff; font-size: 1.15rem; }
.featured-live .featured-class-title > strong { background: #62dfa6; }
.featured-class h2 { margin: 0 0 5px; font-size: clamp(1.15rem,2.5vw,1.65rem); }
.featured-class p { margin: 0; color: #9db0c2; }
.featured-class-link { min-height: 48px; display: inline-flex; align-items: center; padding: 0 18px; border-radius: 13px; color: #071019; background: #5cc8ff; font-weight: 900; text-decoration: none; white-space: nowrap; }
.featured-live .featured-class-link { background: #62dfa6; }
.day-section { margin-top: 44px; }
.day-section > h2 { margin: 0 0 14px; font-size: 1.25rem; text-transform: capitalize; }
.class-list { display: grid; gap: 10px; }
.class-link { color: inherit; text-decoration: none; }
.class-card { display: grid; grid-template-columns: 64px 1fr auto; gap: 18px; align-items: center; padding: 20px 22px; border-radius: 18px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.09); }
.class-link:hover .class-card { border-color: rgba(92,200,255,.55); transform: translateY(-1px); }
.class-current { border-color: #62dfa6; box-shadow: 0 0 0 1px rgba(98,223,166,.2); }
.class-current .class-number { color: #071019; background: #62dfa6; }
.class-current .class-kicker { color: #62dfa6; }
.class-next { border-color: rgba(92,200,255,.55); background: linear-gradient(110deg, rgba(36,112,157,.2), rgba(255,255,255,.04)); }
.class-next .class-kicker { color: #5cc8ff; }
.class-number { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 14px; background: #15324a; color: #5cc8ff; font-size: 1.15rem; font-weight: 850; }
.class-kicker { color: #86a2b7; font-size: .75rem; font-weight: 800; letter-spacing: .08em; }
.class-topline { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.schedule-status { flex: none; padding: 5px 8px; border-radius: 999px; font-size: .62rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.schedule-status.status-live { color: #071019; background: #62dfa6; }
.schedule-status.status-upcoming { color: #bde9ff; background: rgba(92,200,255,.13); }
.schedule-status.status-finished { color: #d9caff; background: rgba(198,151,255,.13); }
.class-main h3 { margin: 5px 0 7px; font-size: 1.1rem; }
.class-main p { margin: 0; color: #9db0c2; }
.class-count { min-width: 72px; text-align: right; }
.class-count strong { display: block; font-size: 1.45rem; }
.class-count span { color: #8299ab; font-size: .75rem; }
.class-stats { display: grid; grid-template-columns: repeat(3, minmax(50px, 1fr)); gap: 10px; min-width: 210px; text-align: right; }
.class-stats div { display: grid; gap: 2px; }
.class-stats strong { font-size: 1.15rem; }
.class-stats span { color: #8299ab; font-size: .68rem; }
.class-hero { margin: 5vh 0 4vh; display: grid; grid-template-columns: auto 1fr; gap: 28px; align-items: center; }
.class-hero-number { width: 100px; height: 100px; display: grid; place-items: center; border-radius: 26px; color: #071019; background: #5cc8ff; font-size: 2.4rem; font-weight: 900; }
.class-hero h1 { max-width: 900px; font-size: clamp(2.1rem, 5vw, 4.4rem); }
.class-status { display: inline-flex; align-items: center; margin-top: 12px; padding: 7px 11px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #b9cad6; background: rgba(255,255,255,.06); font-size: .7rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.class-status.status-registration { color: #ffe0aa; border-color: rgba(255,173,102,.3); background: rgba(255,173,102,.1); }
.class-status.status-start { color: #a8dcf5; border-color: rgba(92,200,255,.3); background: rgba(92,200,255,.09); }
.class-status.status-live { color: #9ff1ca; border-color: rgba(98,223,166,.4); background: rgba(98,223,166,.1); }
.class-status.status-live::before { width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: #62dfa6; box-shadow: 0 0 0 5px rgba(98,223,166,.12); content: ""; }
.class-status.status-finished { color: #d2c3ff; border-color: rgba(198,151,255,.3); background: rgba(198,151,255,.1); }
.live-arena { margin: 0 0 30px; padding: clamp(22px, 4vw, 38px); display: grid; grid-template-columns: 1fr auto; gap: 28px; border-radius: 24px; background: linear-gradient(135deg, rgba(22,109,78,.92), rgba(7,43,38,.92)); border: 1px solid rgba(98,223,166,.48); box-shadow: 0 22px 70px rgba(0,0,0,.24); }
.live-hidden { display: none; }
.live-delayed { border-color: rgba(255,173,102,.7); }
.live-indicator { display: inline-flex; align-items: center; gap: 8px; color: #9ff1ca; font-size: .75rem; font-weight: 900; letter-spacing: .14em; }
.live-indicator i { width: 8px; height: 8px; border-radius: 50%; background: #62dfa6; box-shadow: 0 0 0 7px rgba(98,223,166,.13); }
.live-copy h2 { margin: 14px 0 5px; font-size: clamp(1.65rem, 4vw, 3.2rem); letter-spacing: -.04em; }
.live-copy p { margin: 0; color: #c7f2df; font-size: 1.05rem; }
.live-numbers { display: grid; grid-template-columns: repeat(2, minmax(92px, auto)); gap: 12px; align-self: center; }
.live-numbers div { padding: 16px; text-align: right; border-radius: 16px; background: rgba(5,25,23,.42); }
.live-numbers strong { display: block; font-size: 1.5rem; }
.live-numbers span { color: #9dcabb; font-size: .7rem; }
.live-numbers small { display: block; margin-top: 4px; color: #b9e7d6; font-size: .68rem; }
.live-queue { grid-column: 1 / -1; display: grid; gap: 8px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); }
.queue-label { color: #9dcabb; font-size: .68rem; font-weight: 900; letter-spacing: .15em; }
.queue-entry { display: grid; grid-template-columns: 36px 1fr; gap: 10px; color: #dff9ee; }
.queue-entry strong { color: #62dfa6; }
.view-tabs { display: inline-flex; gap: 5px; padding: 5px; border-radius: 14px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.09); }
.view-tabs a { padding: 11px 17px; border-radius: 10px; color: #91a7b8; text-decoration: none; font-weight: 800; }
.view-tabs a.active { color: #071019; background: #5cc8ff; }
.registration-notice { display: grid; gap: 6px; margin: 22px 0 0; padding: 18px 20px; border: 1px solid rgba(255,173,102,.55); border-radius: 16px; color: #ffe1bd; background: linear-gradient(120deg,rgba(164,82,21,.3),rgba(255,173,102,.08)); }
.registration-notice strong { font-size: 1rem; letter-spacing: .08em; }
.registration-notice span { font-size: .82rem; font-weight: 850; line-height: 1.45; letter-spacing: .035em; }
.list-heading { margin: 40px 0 16px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.list-heading h2 { margin: 5px 0 0; font-size: 1.7rem; }
.data-note { color: #8299ab; font-size: .8rem; }
.result-list { display: grid; gap: 9px; }
.result-row { display: grid; grid-template-columns: 58px 1fr 105px 105px; gap: 18px; align-items: center; padding: 17px 20px; border-radius: 16px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.08); }
.result-place { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 13px; color: #5cc8ff; background: #15324a; font-weight: 900; }
.place-live { color: #071019; background: #62dfa6; font-size: .7rem; }
.result-identity { display: grid; gap: 2px; }
.result-identity strong { font-size: 1.05rem; }
.result-identity span { color: #b9c9d6; }
.result-identity small { margin-top: 3px; color: #7890a3; }
.result-identity .entry-note { color: #ffbf7d; font-weight: 750; line-height: 1.35; white-space: normal; }
.result-identity .entry-note:empty { display: none; }
.result-identity .result-prize { width: fit-content; margin-top: 5px; padding: 4px 7px; border-radius: 999px; color: #06251b; background: #62dfa6; font-size: .66rem; font-weight: 900; }
.result-identity .result-prize:empty { display: none; }
.placed-badge { display: inline-flex; align-items: center; margin-left: 7px; padding: 3px 7px; border-radius: 999px; color: #061b18; background: linear-gradient(135deg, #6fffd2, #42dba9); font-size: .58rem; font-weight: 950; letter-spacing: .08em; vertical-align: 2px; box-shadow: 0 0 18px rgba(81,232,183,.18); }
.nation-flag { width: 22px; height: 16px; display: inline-block; margin-right: 8px; border-radius: 3px; object-fit: cover; vertical-align: -3px; box-shadow: 0 0 0 1px rgba(255,255,255,.18); }
.result-score, .result-time { text-align: right; }
.result-score strong, .result-time strong { display: block; font-size: 1.15rem; }
.result-score span, .result-time span { color: #7890a3; font-size: .7rem; }
.result-score small { display: block; margin-top: 4px; color: #9bb0bf; font-size: .68rem; white-space: nowrap; }
.result-time .time-gap { display: block; margin-top: 4px; color: #62e1bb; font-size: .68rem; font-weight: 800; white-space: nowrap; }
.start-status { justify-self: end; padding: 7px 10px; border-radius: 999px; color: #abc0cf; background: rgba(255,255,255,.06); font-size: .75rem; font-weight: 800; }
.entry-live { border-color: rgba(98,223,166,.65); background: rgba(42,122,91,.2); }
.entry-live .start-status { color: #071019; background: #62dfa6; }
.entry-finished { opacity: .78; }
.entry-muted { opacity: .5; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 18px; }
.feature-card { min-height: 210px; padding: 24px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.09); border-radius: 18px; }
.feature-card span { font-size: .78rem; font-weight: 800; color: var(--accent); }
.feature-card h2 { margin: 55px 0 8px; font-size: 1.35rem; }
.feature-card p { margin: 0; color: #9db0c2; line-height: 1.45; }
.accent-blue { --accent: #5cc8ff; }.accent-green { --accent: #62dfa6; }.accent-orange { --accent: #ffad66; }.accent-purple { --accent: #c697ff; }
@media (max-width: 820px) { .event-grid, .feature-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { .page-shell { padding-top: 6vh; } .event-section-heading { align-items: start; flex-direction: column; gap: 7px; } .event-section-heading p { text-align: left; } .event-grid, .feature-grid { grid-template-columns: 1fr; } .event-card { min-height: 225px; } .featured-class { grid-template-columns: 1fr; margin-top: -20px; padding: 20px; } .featured-class-link { justify-content: center; } .feature-card { min-height: 150px; } .feature-card h2 { margin-top: 28px; } .class-card { grid-template-columns: 48px 1fr; padding: 16px; gap: 12px; } .class-number { width: 44px; height: 44px; } .class-topline { align-items: start; flex-direction: column-reverse; gap: 7px; } .class-count { grid-column: 2; text-align: left; display: flex; align-items: baseline; gap: 6px; } .class-stats { grid-column: 2; justify-self: stretch; min-width: 0; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.07); text-align: left; } .class-hero { grid-template-columns: 64px 1fr; gap: 15px; align-items: start; } .class-hero-number { width: 60px; height: 60px; border-radius: 17px; font-size: 1.6rem; } .class-hero h1 { margin-top: .5rem; font-size: 2rem; } .live-arena { grid-template-columns: 1fr; } .live-numbers { grid-template-columns: 1fr 1fr; } .live-numbers div { text-align: left; } .view-tabs { width: 100%; } .view-tabs a { flex: 1; text-align: center; } .list-heading { align-items: start; flex-direction: column; } .result-row { grid-template-columns: 48px 1fr auto; padding: 14px; gap: 11px; } .result-place { width: 42px; height: 42px; } .result-score { text-align: right; } .result-time { grid-column: 2 / 4; text-align: left; display: flex; gap: 7px; align-items: baseline; } .start-status { grid-column: 2 / 4; justify-self: start; } }
.result-groups {
    display: grid;
    gap: 28px;
}

.result-group-heading {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    padding: 0 2px;
}

.result-group-heading h3 {
    font-size: clamp(1.15rem, 3vw, 1.45rem);
    margin: 3px 0 0;
}

.result-group-heading > span {
    color: var(--muted);
    font-size: .78rem;
    font-weight: 700;
    white-space: nowrap;
}

.profile-link { color: inherit; text-decoration: none; }
.profile-link:hover { color: var(--accent); }
.profile-hero { display: grid; grid-template-columns: 88px minmax(0, 1fr) auto; gap: 22px; align-items: center; margin: 28px 0 34px; padding: 30px; border: 1px solid rgba(92,200,255,.3); border-radius: 24px; background: linear-gradient(135deg, rgba(24,75,110,.72), rgba(16,45,68,.45)); }
.profile-hero h1 { margin: 5px 0 8px; font-size: clamp(2rem, 5vw, 3.4rem); line-height: .98; }
.profile-monogram { display: grid; place-items: center; width: 82px; height: 82px; border-radius: 24px; color: #071019; background: var(--accent); font-size: 1.5rem; font-weight: 900; }
.horse-monogram { background: #62dfa6; }
.profile-stat { text-align: right; }
.profile-stat strong { display: block; font-size: 2.5rem; line-height: 1; }
.profile-stat span { color: var(--muted); font-size: .75rem; }
.profile-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: -14px 0 36px; }
.profile-fact { display: grid; gap: 5px; min-height: 86px; padding: 17px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.045); }
.profile-fact span { color: var(--muted); font-size: .7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.profile-fact strong { align-self: end; }
.history-list { display: grid; gap: 10px; }
.history-row { display: grid; grid-template-columns: 62px minmax(0,1fr) auto; gap: 14px; align-items: center; padding: 16px 18px; border: 1px solid rgba(255,255,255,.09); border-radius: 16px; color: inherit; background: rgba(255,255,255,.045); text-decoration: none; }
.history-row:hover { border-color: rgba(92,200,255,.55); transform: translateY(-1px); }
.history-row > div:nth-child(2) { display: grid; gap: 3px; }
.history-row span, .history-row small { color: var(--muted); }
.history-row small { font-size: .72rem; }
.history-place { color: var(--accent); font-size: 1.05rem; font-weight: 900; }
.history-score { color: #c7d7e3; font-size: .82rem; text-align: right; white-space: nowrap; }

@media (max-width: 620px) {
    .profile-hero { grid-template-columns: 64px 1fr; padding: 20px; gap: 14px; }
    .profile-monogram { width: 60px; height: 60px; border-radius: 18px; font-size: 1.1rem; }
    .profile-stat { grid-column: 2; display: flex; align-items: baseline; gap: 6px; text-align: left; }
    .profile-stat strong { font-size: 1.6rem; }
    .profile-facts { grid-template-columns: 1fr 1fr; }
    .history-row { grid-template-columns: 44px minmax(0,1fr); padding: 14px; }
    .history-score { grid-column: 2; text-align: left; }
}

:root[data-theme="light"] {
    color-scheme: light;
    color: #10283a;
    background: #f4f8fb;
    --muted: #60798b;
}
:root[data-theme="balanced"] {
    color-scheme: dark;
    color: #edf4f7;
    background: #172832;
    --accent: #68c7e7;
    --muted: #9bafba;
}
:root[data-theme="balanced"] body { background: radial-gradient(circle at 82% 0, #45687b 0, #223743 44%, #172832 100%); }
:root[data-theme="balanced"] .topbar { border-bottom-color: rgba(219,237,245,.15); background: rgba(29,48,59,.35); }
:root[data-theme="balanced"] .brand { color: #f4f8fa; }
:root[data-theme="balanced"] .brand span { color: #72d0ef; }
:root[data-theme="balanced"] .theme-toggle { color: #eef7fa; border-color: rgba(218,237,245,.19); background: rgba(255,255,255,.09); }
:root[data-theme="balanced"] .theme-balanced { display: none; }
:root[data-theme="balanced"] .theme-sun { display: inline; }
:root[data-theme="balanced"] .event-card,
:root[data-theme="balanced"] .class-card,
:root[data-theme="balanced"] .result-row,
:root[data-theme="balanced"] .feature-card,
:root[data-theme="balanced"] .profile-fact,
:root[data-theme="balanced"] .history-row { border-color: rgba(220,238,246,.14); background: rgba(41,63,75,.8); box-shadow: 0 12px 32px rgba(5,18,25,.14); }
:root[data-theme="balanced"] .event-live,
:root[data-theme="balanced"] .event-hero { border-color: rgba(117,199,229,.27); background: linear-gradient(145deg,#31586d,#263f4e); }
:root[data-theme="balanced"] .event-upcoming,
:root[data-theme="balanced"] .event-finished { background: rgba(43,65,77,.78); }
:root[data-theme="balanced"] .featured-class { background: linear-gradient(120deg,rgba(49,92,114,.72),rgba(42,62,73,.8)); }
:root[data-theme="balanced"] .featured-live { background: linear-gradient(120deg,rgba(37,104,79,.55),rgba(42,62,73,.8)); }
:root[data-theme="balanced"] .class-next { background: linear-gradient(110deg,rgba(54,111,140,.48),rgba(42,62,73,.82)); }
:root[data-theme="balanced"] .view-tabs { border-color: rgba(220,238,246,.14); background: rgba(22,39,49,.48); }
:root[data-theme="light"] body { background: radial-gradient(circle at 82% 0, #d6effc 0, #f4f8fb 48%, #eef4f7 100%); }
:root[data-theme="light"] .topbar { border-bottom-color: rgba(18,57,82,.12); background: rgba(255,255,255,.32); }
:root[data-theme="light"] .brand { color: #10283a; }
:root[data-theme="light"] .brand span { color: #087eb7; }
:root[data-theme="light"] .season,
:root[data-theme="light"] .back-link,
:root[data-theme="light"] .class-main p,
:root[data-theme="light"] .feature-card p { color: #61798a; }
:root[data-theme="light"] .theme-toggle { color: #17384e; border-color: rgba(18,57,82,.16); background: rgba(255,255,255,.72); box-shadow: 0 7px 20px rgba(27,68,92,.08); }
:root[data-theme="light"] .theme-sun { display: none; }
:root[data-theme="light"] .theme-balanced { display: none; }
:root[data-theme="light"] .theme-moon { display: inline; }
:root[data-theme="light"] .hero > p:last-child,
:root[data-theme="light"] .event-card p,
:root[data-theme="light"] .event-location,
:root[data-theme="light"] .result-identity span { color: #526d80; }
:root[data-theme="light"] .event-card,
:root[data-theme="light"] .class-card,
:root[data-theme="light"] .result-row,
:root[data-theme="light"] .feature-card,
:root[data-theme="light"] .profile-fact,
:root[data-theme="light"] .history-row { background: rgba(255,255,255,.82); border-color: rgba(25,67,94,.13); box-shadow: 0 12px 36px rgba(32,72,96,.07); }
:root[data-theme="light"] .event-live,
:root[data-theme="light"] .event-hero { background: linear-gradient(145deg, #d9f1fc, #edf8fc); border-color: rgba(34,124,174,.2); }
:root[data-theme="light"] .event-upcoming,
:root[data-theme="light"] .event-finished { background: rgba(255,255,255,.82); border-color: rgba(25,67,94,.13); }
:root[data-theme="light"] .featured-class { background: linear-gradient(120deg,#e0f3fc,#fff); border-color: rgba(34,124,174,.25); box-shadow: 0 12px 36px rgba(32,72,96,.07); }
:root[data-theme="light"] .featured-live { background: linear-gradient(120deg,#dcf7eb,#fff); border-color: rgba(27,137,92,.25); }
:root[data-theme="light"] .featured-class p { color: #60798b; }
:root[data-theme="light"] .event-meta,
:root[data-theme="light"] .class-kicker { color: #55778e; }
:root[data-theme="light"] .event-card a,
:root[data-theme="light"] .profile-link { color: #10283a; }
:root[data-theme="light"] .event-stats { border-color: rgba(25,67,94,.12); }
:root[data-theme="light"] .event-stats span,
:root[data-theme="light"] .class-count span,
:root[data-theme="light"] .class-stats span,
:root[data-theme="light"] .data-note,
:root[data-theme="light"] .result-identity small,
:root[data-theme="light"] .result-score span,
:root[data-theme="light"] .result-time span { color: #6a8191; }
:root[data-theme="light"] .class-next { background: linear-gradient(110deg, rgba(92,200,255,.2), rgba(255,255,255,.88)); }
:root[data-theme="light"] .class-number,
:root[data-theme="light"] .result-place { color: #0875aa; background: #def2fc; }
:root[data-theme="light"] .view-tabs { background: rgba(20,68,98,.06); border-color: rgba(20,68,98,.12); }
:root[data-theme="light"] .view-tabs a { color: #5e7789; }
:root[data-theme="light"] .registration-notice { color: #7b400e; border-color: #eeb576; background: linear-gradient(120deg,#fff0dc,#fff9f0); }
:root[data-theme="light"] .result-score small { color: #60798b; }
:root[data-theme="light"] .start-status { color: #506b7d; background: #edf3f6; }
:root[data-theme="light"] .entry-live { border-color: rgba(28,154,105,.5); background: rgba(98,223,166,.13); }
:root[data-theme="light"] .profile-hero { background: linear-gradient(135deg, #dff3fc, #f6fbfd); border-color: rgba(38,137,190,.25); }
:root[data-theme="light"] .history-score { color: #3e5b6e; }
:root[data-theme="light"] .notice { color: #72400f; background: #fff2df; border-color: #f2c58d; }
:root[data-theme="light"] .nation-flag { box-shadow: 0 0 0 1px rgba(20,50,70,.18); }
@media (max-width: 620px) {
    :root[data-theme="light"] .class-stats { border-top-color: rgba(25,67,94,.11); }
    .season { display: none; }
}

/* Light Back Office */
.bo-hero { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 10px 0 28px; }
.bo-hero h1 { margin: 7px 0 8px; font-size: clamp(2.3rem, 6vw, 4.5rem); }
.bo-hero p { margin: 0; color: #9db0c2; }
.bo-connection { display: inline-flex; align-items: center; gap: 9px; padding: 10px 13px; border: 1px solid rgba(98,223,166,.25); border-radius: 999px; color: #91dab9; background: rgba(98,223,166,.08); font-size: .69rem; font-weight: 900; letter-spacing: .1em; white-space: nowrap; }
.bo-connection i { width: 8px; height: 8px; border-radius: 50%; background: #62dfa6; box-shadow: 0 0 0 6px rgba(98,223,166,.1); }
.bo-message { margin: 0 0 14px; padding: 14px 17px; border-radius: 13px; font-weight: 750; }
.bo-message.success { color: #b8f7d9; border: 1px solid rgba(98,223,166,.32); background: rgba(30,126,88,.2); }
.bo-message.error { color: #ffd2bd; border: 1px solid rgba(255,137,99,.34); background: rgba(143,54,31,.2); }
.bo-selectors { display: grid; grid-template-columns: minmax(260px,1.3fr) minmax(240px,1fr) auto; gap: 12px; align-items: end; margin-bottom: 16px; padding: 17px; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: rgba(255,255,255,.045); }
.bo-selectors label, .bo-inputs label { display: grid; gap: 7px; color: #91a8ba; font-size: .72rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.bo-selectors select, .bo-inputs input { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; outline: none; color: #edf7fc; background: #102638; font: inherit; }
.bo-selectors select { height: 48px; padding: 0 13px; }
.bo-inputs input { height: 66px; padding: 0 18px; font-size: 1.65rem; font-weight: 900; }
.bo-selectors select:focus, .bo-inputs input:focus { border-color: #5cc8ff; box-shadow: 0 0 0 3px rgba(92,200,255,.13); }
.bo-public-link { height: 48px; display: inline-flex; align-items: center; padding: 0 17px; border: 1px solid rgba(92,200,255,.22); border-radius: 12px; color: #8fd8fb; text-decoration: none; font-weight: 800; white-space: nowrap; }
.bo-print-links { display: flex; align-items: center; gap: 8px; margin: 0 0 16px; }
.bo-print-links span { margin-right: 4px; color: #7791a4; font-size: .7rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.bo-print-links a { padding: 9px 12px; border: 1px solid rgba(255,255,255,.11); border-radius: 10px; color: #b9d6e6; background: rgba(255,255,255,.045); font-size: .76rem; font-weight: 800; text-decoration: none; }
.bo-print-links a:hover { border-color: rgba(92,200,255,.45); color: #7bd5ff; }
.bo-class-status { display: grid; grid-template-columns: minmax(240px,1fr) minmax(400px,auto); gap: 14px; align-items: center; margin: 0 0 16px; padding: 17px; border: 1px solid rgba(98,223,166,.18); border-radius: 18px; background: rgba(98,223,166,.045); }
.bo-class-status-copy { display: grid; gap: 4px; }
.bo-class-status-copy strong { font-size: 1.15rem; }
.bo-class-status-copy small { color: #89a1b2; line-height: 1.4; }
.bo-status-buttons { display: grid; grid-template-columns: repeat(4,1fr); gap: 7px; }
.bo-class-status input[type=submit] { height: 44px; padding: 0 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 11px; color: #bad0dc; background: rgba(255,255,255,.06); font: inherit; font-size: .75rem; font-weight: 900; cursor: pointer; }
.bo-class-status input[type=submit]:hover { border-color: rgba(98,223,166,.48); color: #b7f3d7; }
.bo-class-status input[type=submit].active { color: #061a24; border-color: #62dfa6; background: #62dfa6; }
.bo-class-status input[type=submit]:disabled { opacity: .4; cursor: not-allowed; }
.bo-start-tools { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 14px 22px; align-items: center; margin: 0 0 16px; padding: 17px; border: 1px solid rgba(92,200,255,.2); border-radius: 18px; background: rgba(92,200,255,.045); }
.bo-start-tools > div:first-child { display: grid; gap: 4px; }
.bo-start-tools strong { font-size: 1.02rem; }
.bo-start-tools small { max-width: 660px; color: #89a1b2; line-height: 1.45; }
.bo-start-tool-actions { display: flex; gap: 8px; }
.bo-start-tool-actions input[type=submit] { min-height: 44px; padding: 0 14px; border: 1px solid rgba(92,200,255,.25); border-radius: 11px; color: #bce8fc; background: rgba(92,200,255,.09); font: inherit; font-size: .75rem; font-weight: 900; cursor: pointer; }
.bo-start-tool-actions input[type=submit]:first-of-type { color: #071019; border-color: #5cc8ff; background: #5cc8ff; }
.bo-start-tool-actions input[type=submit].dirty { color: #061a24; border-color: #62dfa6; background: #62dfa6; box-shadow: 0 0 0 4px rgba(98,223,166,.1); }
.bo-start-tool-actions input[type=submit]:disabled { opacity: .4; cursor: not-allowed; }
.bo-start-tools > p { grid-column: 1 / -1; margin: 0; color: #7891a4; font-size: .72rem; }
.bo-start-tools kbd { padding: 2px 5px; border: 1px solid rgba(255,255,255,.16); border-radius: 5px; color: #bdd1de; background: rgba(255,255,255,.06); font: inherit; font-weight: 800; }
.bo-manual-entry { margin: 0 0 16px; border: 1px solid rgba(98,223,166,.22); border-radius: 18px; background: rgba(98,223,166,.045); overflow: hidden; }
.bo-manual-entry summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px; cursor: pointer; list-style: none; }
.bo-manual-entry summary::-webkit-details-marker { display: none; }
.bo-manual-entry summary span { display: grid; gap: 3px; }
.bo-manual-entry summary small, .bo-manual-actions small { color: #89a1b2; font-size: .72rem; line-height: 1.45; }
.bo-manual-entry summary i { color: #62dfa6; font-size: .75rem; font-style: normal; font-weight: 900; text-transform: uppercase; }
.bo-manual-search, .bo-manual-fields { display: grid; gap: 12px; padding: 15px 17px 0; border-top: 1px solid rgba(255,255,255,.07); }
.bo-manual-search { grid-template-columns: 1fr 1fr auto; align-items: end; }
.bo-manual-fields { grid-template-columns: 1fr 1fr 100px minmax(190px,.7fr); border-top: 0; }
.bo-manual-search label, .bo-manual-fields label { display: grid; gap: 6px; color: #91a8ba; font-size: .68rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.bo-manual-search input[type=text], .bo-manual-fields input[type=text], .bo-manual-fields select { width: 100%; height: 45px; min-width: 0; box-sizing: border-box; padding: 0 11px; border: 1px solid rgba(255,255,255,.13); border-radius: 10px; outline: none; color: #edf7fc; background: #102638; font: inherit; }
.bo-manual-search > input[type=submit], .bo-manual-actions input[type=submit] { min-height: 45px; padding: 0 18px; border: 0; border-radius: 11px; color: #061a24; background: #62dfa6; font: inherit; font-weight: 950; cursor: pointer; }
.bo-manual-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 17px 17px; }
.bo-manual-entry input:disabled, .bo-manual-entry select:disabled { opacity: .45; cursor: not-allowed; }
.bo-parameters { margin: 0 0 16px; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: rgba(255,255,255,.04); overflow: hidden; }
.bo-parameters summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px; cursor: pointer; list-style: none; }
.bo-parameters summary::-webkit-details-marker { display: none; }
.bo-parameters summary span { display: grid; gap: 3px; }
.bo-parameters summary b { font-size: 1rem; }
.bo-parameters summary small { color: #829aad; font-size: .72rem; font-weight: 500; }
.bo-parameters summary i { color: #5cc8ff; font-size: .75rem; font-style: normal; font-weight: 900; text-transform: uppercase; }
.bo-parameter-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; padding: 4px 17px 17px; border-top: 1px solid rgba(255,255,255,.07); }
.bo-parameter-grid label { display: grid; gap: 6px; padding-top: 13px; color: #91a8ba; font-size: .68rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.bo-parameter-grid label.wide { grid-column: span 2; }
.bo-parameter-grid input[type=text], .bo-parameter-grid input[type=date], .bo-parameter-grid input[type=time], .bo-parameter-grid select { width: 100%; height: 43px; min-width: 0; padding: 0 11px; border: 1px solid rgba(255,255,255,.13); border-radius: 10px; outline: none; color: #edf7fc; background: #102638; font: inherit; }
.bo-readonly-value { display: flex; align-items: center; min-height: 43px; padding: 0 11px; border: 1px solid rgba(255,255,255,.08); border-radius: 10px; color: #9eb4c4; background: rgba(7,24,35,.45); font-size: .86rem; }
.bo-parameter-grid .bo-check { display: flex; grid-column: span 2; align-items: center; flex-direction: row; align-self: end; min-height: 43px; padding: 0 4px; text-transform: none; }
.bo-parameter-grid .bo-check input { width: 18px; height: 18px; accent-color: #62dfa6; }
.bo-save-parameters { min-height: 48px; margin: 0 17px 17px; padding: 0 18px; border: 0; border-radius: 11px; color: #061a24; background: #62dfa6; font: inherit; font-weight: 950; cursor: pointer; }
.bo-operator-link { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 18px; align-items: center; margin: -2px 0 16px; padding: 14px 17px; border: 1px dashed rgba(92,200,255,.28); border-radius: 15px; background: rgba(92,200,255,.055); }
.bo-operator-link > div { display: grid; gap: 3px; }
.bo-operator-link strong { font-size: .8rem; white-space: nowrap; }
.bo-operator-link input { width: 100%; min-width: 0; box-sizing: border-box; padding: 11px 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; color: #a9c8da; background: rgba(5,16,25,.45); font: inherit; font-size: .75rem; }
.bo-workspace { display: grid; grid-template-columns: minmax(310px, .72fr) minmax(430px, 1.28fr); gap: 16px; }
.bo-starts, .bo-entry-panel { min-width: 0; border: 1px solid rgba(255,255,255,.09); border-radius: 20px; background: rgba(255,255,255,.045); overflow: hidden; }
.bo-section-title { display: flex; align-items: end; justify-content: space-between; gap: 14px; padding: 20px; border-bottom: 1px solid rgba(255,255,255,.08); }
.bo-section-title h2 { margin: 4px 0 0; font-size: 1.25rem; }
.bo-section-title > span { color: #7f98ab; font-size: .75rem; }
.bo-start-list { max-height: 66vh; padding: 7px; overflow: auto; }
.bo-start-row { width: 100%; display: grid; grid-template-columns: 42px minmax(0,1fr) auto; gap: 11px; align-items: center; box-sizing: border-box; margin: 0; padding: 12px; border: 1px solid transparent; border-radius: 13px; color: inherit; background: transparent; text-align: left; text-decoration: none; cursor: grab; }
.bo-start-row:active { cursor: grabbing; }
.bo-start-row.dragging { opacity: .35; border-color: #62dfa6; }
.bo-start-row:hover { background: rgba(255,255,255,.055); }
.bo-start-row.selected { border-color: rgba(92,200,255,.55); background: rgba(92,200,255,.1); }
.bo-start-row.done { opacity: .68; }
.bo-start-row.status { opacity: .52; }
.bo-start-row > b { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 10px; color: #5cc8ff; background: #143149; }
.bo-start-row > span { min-width: 0; display: grid; gap: 3px; }
.bo-start-row strong, .bo-start-row small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bo-start-row small { color: #829aad; }
.bo-start-row small.bo-note-preview { color: #ffb976; font-size: .67rem; }
.bo-start-row small.bo-note-preview:empty { display: none; }
.bo-start-row em { color: #7790a3; font-size: .67rem; font-style: normal; font-weight: 900; text-transform: uppercase; }
.bo-start-row.done em { color: #62dfa6; }
.bo-entry-panel { padding: clamp(22px,4vw,38px); }
.bo-entry-heading { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 18px; align-items: center; padding-bottom: 26px; border-bottom: 1px solid rgba(255,255,255,.08); }
.bo-entry-heading h2 { margin: 5px 0 4px; font-size: clamp(1.5rem,3vw,2.35rem); line-height: 1; }
.bo-entry-heading p { margin: 0; color: #9db0c2; }
.bo-start-number { width: 70px; height: 70px; display: grid; place-items: center; border-radius: 19px; color: #071019; background: #5cc8ff; font-size: 1.8rem; font-weight: 950; }
.bo-quick-faults { display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; margin: 28px 0 18px; }
.bo-quick-faults input, .bo-status-actions input { border: 1px solid rgba(255,255,255,.12); border-radius: 12px; color: #d9eaf4; background: rgba(255,255,255,.06); font: inherit; font-weight: 900; cursor: pointer; }
.bo-quick-faults input { height: 55px; font-size: 1.2rem; }
.bo-quick-faults input:hover, .bo-status-actions input:hover { border-color: rgba(92,200,255,.5); background: rgba(92,200,255,.11); }
.bo-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bo-input-unit { position: relative; display: block; }
.bo-input-unit input { padding-right: 48px; }
.bo-input-unit i { position: absolute; right: 17px; top: 50%; transform: translateY(-50%); color: #6f899c; font-style: normal; font-weight: 850; text-transform: none; }
.bo-second-phase { margin: 20px 0 0; padding: 15px 17px 17px; border: 1px solid rgba(255,255,255,.09); border-radius: 14px; }
.bo-second-phase summary { color: #95acbc; font-size: .8rem; font-weight: 850; cursor: pointer; }
.bo-second-phase[open] summary { margin-bottom: 15px; }
.bo-final-score { border-color: rgba(98,223,166,.2); background: rgba(98,223,166,.035); }
.bo-final-score > p { margin: -5px 0 15px; color: #829aad; font-size: .77rem; line-height: 1.45; }
.bo-note-editor { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px; align-items: end; margin-top: 20px; padding: 16px; border: 1px solid rgba(255,173,102,.2); border-radius: 14px; background: rgba(255,173,102,.035); }
.bo-note-editor label { grid-column: 1 / -1; color: #ffbd7c; font-size: .72rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.bo-note-editor textarea { width: 100%; min-height: 84px; resize: vertical; padding: 11px 13px; border: 1px solid rgba(255,255,255,.13); border-radius: 11px; outline: none; color: #edf7fc; background: #102638; font: inherit; line-height: 1.4; }
.bo-note-editor input { min-height: 44px; padding: 0 15px; border: 0; border-radius: 11px; color: #2d1705; background: #ffad66; font: inherit; font-weight: 900; cursor: pointer; }
.bo-primary-actions { margin-top: 21px; }
.bo-save { width: 100%; min-height: 58px; border: 0; border-radius: 14px; color: #061a24; background: linear-gradient(135deg,#6cd5ff,#44b9ed); font: inherit; font-weight: 950; cursor: pointer; box-shadow: 0 14px 32px rgba(49,159,211,.2); }
.bo-delete-entry { width: 100%; min-height: 42px; margin-top: 10px; border: 1px solid rgba(255,107,107,.35); border-radius: 12px; color: #ffb2b2; background: rgba(255,74,74,.08); font: inherit; font-size: .78rem; font-weight: 900; cursor: pointer; }
.bo-delete-entry:hover { border-color: rgba(255,107,107,.7); background: rgba(255,74,74,.14); }
.bo-save:disabled, .bo-delete-entry:disabled, .bo-status-actions input:disabled { opacity: .4; cursor: not-allowed; }
.bo-status-actions { display: grid; grid-template-columns: 1fr repeat(3,auto); gap: 8px; align-items: center; margin-top: 16px; }
.bo-status-actions span { color: #7891a4; font-size: .72rem; font-weight: 800; }
.bo-status-actions input { min-height: 38px; padding: 0 11px; font-size: .7rem; }
.bo-empty { min-height: 380px; display: grid; place-items: center; color: #7790a3; text-align: center; }

:root[data-theme="balanced"] .bo-hero p,
:root[data-theme="balanced"] .bo-class-status-copy small,
:root[data-theme="balanced"] .bo-start-tools small,
:root[data-theme="balanced"] .bo-start-tools > p { color: #a9bac3; }
:root[data-theme="balanced"] .bo-selectors,
:root[data-theme="balanced"] .bo-starts,
:root[data-theme="balanced"] .bo-entry-panel,
:root[data-theme="balanced"] .bo-parameters { border-color: rgba(222,238,245,.16); background: rgba(42,64,76,.88); box-shadow: 0 14px 34px rgba(7,20,27,.12); }
:root[data-theme="balanced"] .bo-selectors select,
:root[data-theme="balanced"] .bo-inputs input,
:root[data-theme="balanced"] .bo-parameter-grid input[type=text],
:root[data-theme="balanced"] .bo-parameter-grid input[type=date],
:root[data-theme="balanced"] .bo-parameter-grid input[type=time],
:root[data-theme="balanced"] .bo-parameter-grid select,
:root[data-theme="balanced"] .bo-note-editor textarea { color: #f3f8fa; border-color: rgba(221,238,245,.2); background: #304957; }
:root[data-theme="balanced"] .bo-readonly-value { color: #b7c7cf; border-color: rgba(221,238,245,.14); background: #273d49; }
:root[data-theme="balanced"] .bo-class-status { border-color: rgba(98,223,166,.25); background: rgba(55,111,88,.23); }
:root[data-theme="balanced"] .bo-start-tools { border-color: rgba(104,199,231,.28); background: rgba(61,116,139,.22); }
:root[data-theme="balanced"] .bo-manual-entry { border-color: rgba(98,223,166,.26); background: rgba(50,93,78,.3); }
:root[data-theme="balanced"] .bo-manual-search input[type=text], :root[data-theme="balanced"] .bo-manual-fields input[type=text], :root[data-theme="balanced"] .bo-manual-fields select { color: #f0f7f8; border-color: rgba(222,238,245,.17); background: #243e4b; }
:root[data-theme="balanced"] .bo-print-links a,
:root[data-theme="balanced"] .bo-class-status input[type=submit],
:root[data-theme="balanced"] .bo-quick-faults input,
:root[data-theme="balanced"] .bo-status-actions input { color: #d8e7ed; border-color: rgba(221,238,245,.17); background: rgba(255,255,255,.08); }
:root[data-theme="balanced"] .bo-operator-link { border-color: rgba(104,199,231,.3); background: rgba(61,116,139,.2); }
:root[data-theme="balanced"] .bo-operator-link input { color: #c8d8df; border-color: rgba(221,238,245,.17); background: #273d49; }
:root[data-theme="balanced"] .bo-start-row:hover { background: rgba(255,255,255,.07); }
:root[data-theme="balanced"] .bo-start-row.selected { border-color: rgba(104,199,231,.62); background: rgba(104,199,231,.15); }
:root[data-theme="balanced"] .bo-start-row > b { color: #88d8f3; background: #294b5d; }
:root[data-theme="balanced"] .bo-second-phase { border-color: rgba(221,238,245,.15); background: rgba(27,45,55,.18); }
:root[data-theme="balanced"] .bo-final-score { border-color: rgba(98,223,166,.27); background: rgba(55,111,88,.18); }
:root[data-theme="balanced"] .bo-note-editor { border-color: rgba(255,173,102,.28); background: rgba(133,82,38,.18); }

:root[data-theme="light"] .bo-hero p { color: #60798b; }
:root[data-theme="light"] .bo-selectors,
:root[data-theme="light"] .bo-starts,
:root[data-theme="light"] .bo-entry-panel { border-color: rgba(25,67,94,.13); background: rgba(255,255,255,.82); box-shadow: 0 12px 36px rgba(32,72,96,.07); }
:root[data-theme="light"] .bo-section-title,
:root[data-theme="light"] .bo-entry-heading { border-color: rgba(25,67,94,.11); }
:root[data-theme="light"] .bo-selectors select,
:root[data-theme="light"] .bo-inputs input { color: #10283a; border-color: rgba(25,67,94,.17); background: #f5f9fb; }
:root[data-theme="light"] .bo-public-link { color: #0877ad; border-color: rgba(8,119,173,.22); }
:root[data-theme="light"] .bo-print-links a { color: #365e75; border-color: rgba(25,67,94,.14); background: rgba(255,255,255,.75); }
:root[data-theme="light"] .bo-class-status { border-color: rgba(27,137,92,.17); background: rgba(98,223,166,.08); }
:root[data-theme="light"] .bo-class-status-copy small { color: #60798b; }
:root[data-theme="light"] .bo-class-status input[type=submit] { color: #365e75; border-color: rgba(25,67,94,.14); background: rgba(255,255,255,.7); }
:root[data-theme="light"] .bo-class-status input[type=submit].active { color: #083124; border-color: #62dfa6; background: #b7f3d7; }
:root[data-theme="light"] .bo-start-tools { border-color: rgba(8,119,173,.2); background: rgba(92,200,255,.07); }
:root[data-theme="light"] .bo-start-tools small, :root[data-theme="light"] .bo-start-tools > p { color: #60798b; }
:root[data-theme="light"] .bo-start-tools kbd { color: #294e64; border-color: rgba(25,67,94,.17); background: #fff; }
:root[data-theme="light"] .bo-manual-entry { border-color: rgba(18,143,91,.2); background: rgba(98,223,166,.075); }
:root[data-theme="light"] .bo-manual-entry summary small, :root[data-theme="light"] .bo-manual-actions small { color: #60798b; }
:root[data-theme="light"] .bo-manual-search, :root[data-theme="light"] .bo-manual-fields { border-color: rgba(25,67,94,.1); }
:root[data-theme="light"] .bo-manual-search input[type=text], :root[data-theme="light"] .bo-manual-fields input[type=text], :root[data-theme="light"] .bo-manual-fields select { color: #10283a; border-color: rgba(25,67,94,.17); background: #f5f9fb; }
:root[data-theme="light"] .bo-parameters { border-color: rgba(25,67,94,.13); background: rgba(255,255,255,.82); }
:root[data-theme="light"] .bo-parameter-grid { border-color: rgba(25,67,94,.1); }
:root[data-theme="light"] .bo-parameter-grid input[type=text], :root[data-theme="light"] .bo-parameter-grid input[type=date], :root[data-theme="light"] .bo-parameter-grid input[type=time], :root[data-theme="light"] .bo-parameter-grid select { color: #10283a; border-color: rgba(25,67,94,.17); background: #f5f9fb; }
:root[data-theme="light"] .bo-readonly-value { color: #587083; border-color: rgba(25,67,94,.1); background: #edf3f6; }
:root[data-theme="light"] .bo-operator-link { border-color: rgba(8,119,173,.25); background: rgba(92,200,255,.08); }
:root[data-theme="light"] .bo-operator-link input { color: #34586e; border-color: rgba(25,67,94,.15); background: #fff; }
:root[data-theme="light"] .bo-start-row:hover { background: rgba(20,90,130,.05); }
:root[data-theme="light"] .bo-start-row.selected { border-color: rgba(8,126,183,.42); background: rgba(92,200,255,.13); }
:root[data-theme="light"] .bo-start-row > b { color: #0875aa; background: #def2fc; }
:root[data-theme="light"] .bo-quick-faults input,
:root[data-theme="light"] .bo-status-actions input { color: #17384e; border-color: rgba(25,67,94,.15); background: #eef4f7; }
:root[data-theme="light"] .bo-second-phase { border-color: rgba(25,67,94,.13); }
:root[data-theme="light"] .bo-final-score { border-color: rgba(27,137,92,.2); background: rgba(98,223,166,.07); }
:root[data-theme="light"] .bo-note-editor { border-color: rgba(190,104,25,.2); background: #fff8ef; }
:root[data-theme="light"] .bo-note-editor textarea { color: #10283a; border-color: rgba(25,67,94,.17); background: #fff; }
:root[data-theme="light"] .result-identity .entry-note { color: #9a571d; }
:root[data-theme="light"] .bo-message.success { color: #17653f; background: #e6f8ef; border-color: #a9ddc4; }
:root[data-theme="light"] .bo-message.error { color: #853c27; background: #fff0e9; border-color: #edb59f; }

@media (max-width: 860px) {
    .bo-selectors { grid-template-columns: 1fr 1fr; }
    .bo-operator-link { grid-template-columns: 1fr; }
    .bo-public-link { grid-column: 1 / -1; justify-content: center; }
    .bo-workspace { grid-template-columns: 1fr; }
    .bo-class-status { grid-template-columns: 1fr 1fr; }
    .bo-start-tools { grid-template-columns: 1fr; }
    .bo-manual-search { grid-template-columns: 1fr 1fr; }
    .bo-manual-search > input[type=submit] { grid-column: 1 / -1; }
    .bo-manual-fields { grid-template-columns: 1fr 1fr; }
    .bo-start-tool-actions { flex-wrap: wrap; }
    .bo-class-status-copy { grid-column: 1 / -1; }
    .bo-start-list { max-height: 42vh; }
    .bo-parameter-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
    .bo-hero { align-items: start; flex-direction: column; }
    .bo-selectors, .bo-inputs { grid-template-columns: 1fr; }
    .bo-manual-search, .bo-manual-fields { grid-template-columns: 1fr; }
    .bo-manual-search > input[type=submit] { grid-column: auto; }
    .bo-manual-actions { align-items: stretch; flex-direction: column; }
    .bo-class-status { grid-template-columns: 1fr; }
    .bo-class-status-copy { grid-column: auto; }
    .bo-entry-panel { padding: 19px; }
    .bo-status-buttons { grid-template-columns: 1fr 1fr; }
    .bo-start-tool-actions { display: grid; grid-template-columns: 1fr; }
    .bo-note-editor { grid-template-columns: 1fr; }
    .bo-parameter-grid { grid-template-columns: 1fr; }
    .bo-parameter-grid label.wide, .bo-parameter-grid .bo-check { grid-column: auto; }
    .bo-quick-faults { gap: 6px; }
    .bo-status-actions { grid-template-columns: repeat(3,1fr); }
    .bo-status-actions span { grid-column: 1 / -1; }
}
