/* Photo themes are opt-in; the existing five themes remain unchanged. */
html[data-photo-theme] {
    color-scheme: dark;
    --bg-0: #05080c; --bg-1: #080e14; --bg-2: #05080c;
    --surface-1: rgba(9, 14, 20, .76);
    --surface-2: rgba(9, 14, 20, .82);
    --surface-3: rgba(9, 14, 20, .60);
    --text-main: #e6edf3; --text-bright: #f8fafc;
    --text-soft: #bbc6d0; --text-muted: #a0aebb;
    --border-soft: rgba(192, 210, 224, .18);
    --border-faint: rgba(192, 210, 224, .10);
}
html[data-photo-theme] body { background: #05080c; isolation: isolate; }
html[data-photo-theme] body::before {
    content: ""; position: fixed; inset: 0; z-index: -1;
    pointer-events: none;
    background-image: linear-gradient(rgba(3,6,10,.30), rgba(3,6,10,.30)), var(--theme-photo);
    background-size: cover; background-position: var(--photo-position, center);
    background-repeat: no-repeat; opacity: .65;
    -webkit-mask-image: radial-gradient(ellipse at 54% 48%, #000 12%, rgba(0,0,0,.78) 42%, rgba(0,0,0,.14) 76%, transparent 100%);
    mask-image: radial-gradient(ellipse at 54% 48%, #000 12%, rgba(0,0,0,.78) 42%, rgba(0,0,0,.14) 76%, transparent 100%);
}
html[data-photo-theme] .sidebar { background: rgba(5,9,14,.90); }
html[data-photo-theme] .metric-card,
html[data-photo-theme] .panel { backdrop-filter: blur(5px); }
html[data-photo-theme] .login-card { background: rgba(8,13,19,.88); }
html[data-photo-theme] .green,
html[data-photo-theme] .online { color: var(--success); }
html[data-photo-theme] .theme-select { color: var(--text-main); background: #101720; }
.dt-public-theme { position: relative; z-index: 1; display: flex; align-items: center;
    justify-content: flex-end; gap: 10px; padding: 12px 24px; font-size: 12px; }
.dt-public-theme select { width: auto; max-width: 65vw; }
.dt-public-theme + .login-page { min-height: calc(100vh - 66px); }
@media (max-width: 700px) {
    html[data-photo-theme] body::before { background-position: var(--photo-mobile-position, center); }
    .dt-public-theme { padding: 10px 16px; }
}
html.theme-lambo-green { --accent-high: #74ef80; --accent-mid: #27b758; --accent-low: #175738; --theme-photo: url("/static/themes/lambo-green.jpg"); }
html.theme-lambo-red { --accent-high: #ff9277; --accent-mid: #db604b; --accent-low: #632a30; --theme-photo: url("/static/themes/lambo-red.jpg"); }
html.theme-lambo-purple { --accent-high: #dc9bfa; --accent-mid: #a264ca; --accent-low: #512b67; --theme-photo: url("/static/themes/lambo-purple.jpg"); }
html.theme-lambo-black { --accent-high: #b7d0e2; --accent-mid: #789eaf; --accent-low: #354a60; --theme-photo: url("/static/themes/lambo-black.jpg"); }
html.theme-tropical-beach { --accent-high: #82d8cb; --accent-mid: #38a89c; --accent-low: #1c5959; --theme-photo: url("/static/themes/tropical-beach.png"); }
html.theme-tropical-sunset { --accent-high: #f4c18a; --accent-mid: #ca9269; --accent-low: #326b70; --theme-photo: url("/static/themes/tropical-sunset.jpg"); }

html.theme-photo-obsidian-rings { --accent-high: #b8c3ce; --accent-mid: #788793; --accent-low: #33404c; --theme-photo: url("/static/themes/obsidian-rings.jpg"); }

html.theme-photo-golden-flow { --accent-high: #f0d392; --accent-mid: #b58e46; --accent-low: #594831; --theme-photo: url("/static/themes/golden-flow.jpg"); }

html.theme-photo-cosmic-nebula { --accent-high: #76e4e4; --accent-mid: #28a8bc; --accent-low: #963e25; --theme-photo: url("/static/themes/cosmic-nebula.jpg"); }

html.theme-photo-event-horizon { --accent-high: #ffe2b0; --accent-mid: #cca078; --accent-low: #5e4b40; --theme-photo: url("/static/themes/event-horizon.jpg"); }

html.theme-photo-lunar-silence { --accent-high: #c5d0df; --accent-mid: #8596ae; --accent-low: #354155; --theme-photo: url("/static/themes/lunar-silence.jpg"); }

html.theme-photo-crimson-moon { --accent-high: #f2c599; --accent-mid: #bd6b68; --accent-low: #542d3e; --theme-photo: url("/static/themes/crimson-moon.jpg"); }

html.theme-photo-ruby-crystal { --accent-high: #ff8ca9; --accent-mid: #cd3764; --accent-low: #5d1937; --theme-photo: url("/static/themes/ruby-crystal.jpg"); }

html.theme-photo-sapphire-crystal { --accent-high: #92b7ff; --accent-mid: #527ade; --accent-low: #23356f; --theme-photo: url("/static/themes/sapphire-crystal.jpg"); }

html.theme-photo-emerald-crystal { --accent-high: #7ee7bd; --accent-mid: #34a985; --accent-low: #185644; --theme-photo: url("/static/themes/emerald-crystal.jpg"); }

html.theme-photo-neural-network { --accent-high: #7cd9f4; --accent-mid: #339dbd; --accent-low: #783c42; --theme-photo: url("/static/themes/neural-network.jpg"); }

html.theme-photo-onyx-facets { --accent-high: #c4ccd8; --accent-mid: #8591a3; --accent-low: #394250; --theme-photo: url("/static/themes/onyx-facets.jpg"); }

html.theme-photo-prismatic-dusk { --accent-high: #f5bc9d; --accent-mid: #da8264; --accent-low: #216476; --theme-photo: url("/static/themes/prismatic-dusk.jpg"); }

html.theme-photo-graphite-hex { --accent-high: #d0d5dc; --accent-mid: #969fa9; --accent-low: #424952; --theme-photo: url("/static/themes/graphite-hex.jpg"); }

html.theme-photo-fractal-bloom { --accent-high: #ef9bdb; --accent-mid: #b857a3; --accent-low: #52214f; --theme-photo: url("/static/themes/fractal-bloom.jpg"); }

html.theme-photo-quantum-weave { --accent-high: #e4cd92; --accent-mid: #b49854; --accent-low: #305569; --theme-photo: url("/static/themes/quantum-weave.jpg"); }

html.theme-photo-orbital-dawn { --accent-high: #a8cefa; --accent-mid: #668cb8; --accent-low: #354968; --theme-photo: url("/static/themes/orbital-dawn.jpg"); }

html.theme-photo-cosmic-spectrum { --accent-high: #83ddff; --accent-mid: #399cbf; --accent-low: #584e83; --theme-photo: url("/static/themes/cosmic-spectrum.jpg"); }

html.theme-photo-solar-citadel { --accent-high: #f4be86; --accent-mid: #ba8156; --accent-low: #4a455d; --theme-photo: url("/static/themes/solar-citadel.jpg"); }

html.theme-photo-crimson-rebel { --accent-high: #f19b93; --accent-mid: #b75253; --accent-low: #542c31; --theme-photo: url("/static/themes/crimson-rebel.jpg"); }

html.theme-photo-fibonacci-teal { --accent-high: #90e6d8; --accent-mid: #30b9b2; --accent-low: #195d64; --theme-photo: url("/static/themes/fibonacci-teal.jpg"); }

html.theme-photo-carbon-strata { --accent-high: #c7d1d9; --accent-mid: #86959f; --accent-low: #3a474f; --theme-photo: url("/static/themes/carbon-strata.jpg"); }

html.theme-photo-luminous-grid { --accent-high: #bcb8ff; --accent-mid: #7c86dc; --accent-low: #49486b; --theme-photo: url("/static/themes/luminous-grid.jpg"); }

html.theme-photo-earthrise { --accent-high: #b0dae9; --accent-mid: #649faf; --accent-low: #314d60; --theme-photo: url("/static/themes/earthrise.jpg"); }

html.theme-photo-golden-ratio { --accent-high: #dde1e6; --accent-mid: #9faab6; --accent-low: #404951; --theme-photo: url("/static/themes/golden-ratio.jpg"); }

html.theme-photo-stellar-singularity { --accent-high: #ffd4a7; --accent-mid: #d49368; --accent-low: #694a40; --theme-photo: url("/static/themes/stellar-singularity.jpg"); }
