/* Five gym themes. Each changes shape, surface and lettering; colours come from the colour set (or the gym's own colours).
   Arena is the base look in base.css + app.css, so it needs no rules here. */

/* ---------- 2. GLASS: frosted panels over a glowing backdrop ---------- */
[data-skin="glass"]{--r:22px;--display:"Sora",system-ui,sans-serif;--glass:color-mix(in srgb,var(--surface) 58%,transparent);--glass-line:color-mix(in srgb,var(--fg) 14%,transparent)}
[data-skin="glass"] body{background:
  radial-gradient(60vmax 50vmax at 8% -10%,color-mix(in srgb,var(--accent) 45%,transparent),transparent 60%),
  radial-gradient(50vmax 45vmax at 105% 20%,color-mix(in srgb,var(--accent2) 38%,transparent),transparent 60%),
  radial-gradient(45vmax 40vmax at 40% 120%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 60%),var(--bg);background-attachment:fixed}
[data-skin="glass"] h1,[data-skin="glass"] h2,[data-skin="glass"] h3,[data-skin="glass"] .brand,[data-skin="glass"] .kpi .v,[data-skin="glass"] .card-m .big,[data-skin="glass"] .price,[data-skin="glass"] .ring span{font-style:normal;text-transform:none;letter-spacing:-.02em;font-weight:700}
[data-skin="glass"] .panel,[data-skin="glass"] .kpi,[data-skin="glass"] .cue,[data-skin="glass"] .day,[data-skin="glass"] .sw-opt,[data-skin="glass"] .modal{background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 10px 40px -18px rgba(0,0,0,.45),inset 0 1px 0 color-mix(in srgb,#fff 18%,transparent)}
[data-skin="glass"] .item{background:color-mix(in srgb,var(--raise) 45%,transparent);border-color:var(--glass-line);border-radius:14px}
[data-skin="glass"] .kpi::before{height:0}
[data-skin="glass"] .cue{border-left:1px solid var(--glass-line)}
[data-skin="glass"] .top{background:color-mix(in srgb,#07081A 55%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-image:none;border-bottom:1px solid var(--glass-line)}
[data-skin="glass"] .tabs a{transform:none;border-radius:999px;background:var(--glass);border-color:var(--glass-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
[data-skin="glass"] .tabs a>span.t{transform:none}
[data-skin="glass"] button,[data-skin="glass"] .btn{border-radius:999px;background:color-mix(in srgb,var(--raise) 55%,transparent);border-color:var(--glass-line)}
[data-skin="glass"] .primary{background:var(--fire);border-color:transparent;text-transform:none;letter-spacing:0;font-size:.88rem;box-shadow:0 8px 24px -10px var(--accent)}
[data-skin="glass"] input,[data-skin="glass"] select,[data-skin="glass"] textarea{background:color-mix(in srgb,var(--sunk) 55%,transparent);border-color:var(--glass-line);border-radius:12px}
[data-skin="glass"] .card-m{border-radius:26px;box-shadow:0 24px 60px -24px var(--accent)}
[data-skin="glass"] .card-m::after{background:radial-gradient(circle at 70% 30%,rgba(255,255,255,.35),transparent 60%);transform:none}
[data-skin="glass"] .chart .b{border-radius:999px 999px 4px 4px}

/* ---------- 3. FIGHT: hard edges, thick borders, offset shadows ---------- */
[data-skin="fight"]{--r:0px;--display:"Bebas Neue","Arial Narrow",sans-serif;--body:"Archivo",system-ui,sans-serif;--hard:var(--fg)}
[data-skin="fight"] body{font-family:var(--body);background-image:repeating-linear-gradient(-45deg,transparent 0 22px,color-mix(in srgb,var(--fg) 3%,transparent) 22px 24px)}
[data-skin="fight"] h1,[data-skin="fight"] h2,[data-skin="fight"] h3,[data-skin="fight"] .brand,[data-skin="fight"] .kpi .v,[data-skin="fight"] .card-m .big,[data-skin="fight"] .price,[data-skin="fight"] .day h4,[data-skin="fight"] .ring span{font-style:normal;letter-spacing:.03em;font-weight:400}
[data-skin="fight"] h2{font-size:2.3rem} [data-skin="fight"] h3{font-size:1.6rem} [data-skin="fight"] .kpi .v{font-size:3.4rem}
[data-skin="fight"] .panel,[data-skin="fight"] .kpi,[data-skin="fight"] .cue,[data-skin="fight"] .day,[data-skin="fight"] .modal{border:3px solid var(--hard);border-radius:0;box-shadow:6px 6px 0 var(--hard)}
[data-skin="fight"] .kpi::before{height:10px}
[data-skin="fight"] .item,[data-skin="fight"] .sw-opt{border:2px solid var(--hard);border-radius:0}
[data-skin="fight"] .cue{border-left:3px solid var(--hard);background:var(--accent-soft)}
[data-skin="fight"] .top{border-image:none;border-bottom:4px solid var(--accent)}
[data-skin="fight"] .tabs{gap:0}
[data-skin="fight"] .tabs a{transform:none;border-radius:0;border:2px solid var(--hard);margin-right:-2px;color:var(--fg);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}
[data-skin="fight"] .tabs a>span.t{transform:none}
[data-skin="fight"] .tabs a[aria-current="page"]{background:var(--accent);box-shadow:inset 0 -4px 0 var(--hard)}
[data-skin="fight"] button,[data-skin="fight"] .btn{border-radius:0;border:2px solid var(--hard);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;box-shadow:3px 3px 0 var(--hard)}
[data-skin="fight"] button:active,[data-skin="fight"] .btn:active{transform:translate(3px,3px);box-shadow:none}
[data-skin="fight"] .primary{background:var(--accent);box-shadow:4px 4px 0 var(--hard)}
[data-skin="fight"] input,[data-skin="fight"] select,[data-skin="fight"] textarea{border-radius:0;border:2px solid var(--hard)}
[data-skin="fight"] .pill{border-radius:0;border:2px solid currentColor}
[data-skin="fight"] .tag{border-radius:0}
[data-skin="fight"] .card-m{border-radius:0;border:3px solid var(--hard);box-shadow:8px 8px 0 var(--hard);background:var(--accent)}
[data-skin="fight"] .card-m::after{background:repeating-linear-gradient(-45deg,rgba(0,0,0,.18) 0 14px,transparent 14px 28px)}
[data-skin="fight"] .chart .b{border-radius:0}
[data-skin="fight"] .ring{border-radius:0}
[data-skin="fight"] .ring span{border-radius:0}

/* ---------- 4. STUDIO: soft, airy, rounded, calm serif ---------- */
[data-skin="studio"]{--r:28px;--display:"Fraunces",Georgia,serif}
[data-skin="studio"] h1,[data-skin="studio"] h2,[data-skin="studio"] h3,[data-skin="studio"] .brand,[data-skin="studio"] .kpi .v,[data-skin="studio"] .card-m .big,[data-skin="studio"] .price,[data-skin="studio"] .day h4,[data-skin="studio"] .ring span{font-style:normal;text-transform:none;letter-spacing:-.01em;font-weight:600}
[data-skin="studio"] .lbl{letter-spacing:.06em;text-transform:none;font-size:.78rem}
[data-skin="studio"] .panel,[data-skin="studio"] .kpi,[data-skin="studio"] .cue,[data-skin="studio"] .day,[data-skin="studio"] .modal{border:0;box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 32px -16px color-mix(in srgb,var(--accent) 35%,rgba(0,0,0,.25));padding:1.4rem}
[data-skin="studio"] .kpi::before{inset:auto auto 1rem 1.4rem;width:28px;height:4px;border-radius:99px}
[data-skin="studio"] .item{border:0;background:var(--sunk);border-radius:18px}
[data-skin="studio"] .cue{border-left:0;background:var(--accent-soft)}
[data-skin="studio"] .top{border-image:none;border-bottom:0;background:var(--surface);color:var(--fg);box-shadow:0 1px 0 var(--line)}
[data-skin="studio"] .top button{color:var(--fg);border-color:var(--line)}
[data-skin="studio"] .demo-tag{color:var(--muted);border-color:var(--line)}
[data-skin="studio"] .tabs a{transform:none;border-radius:999px;border:0;background:transparent;font-weight:600}
[data-skin="studio"] .tabs a>span.t{transform:none}
[data-skin="studio"] .tabs a[aria-current="page"]{background:var(--accent-soft);color:var(--accent)}
[data-skin="studio"] button,[data-skin="studio"] .btn{border-radius:999px;border-color:var(--line);font-weight:600}
[data-skin="studio"] .primary{background:var(--accent);text-transform:none;letter-spacing:0;font-size:.9rem;box-shadow:none;padding-inline:1.3rem}
[data-skin="studio"] input,[data-skin="studio"] select,[data-skin="studio"] textarea{border-radius:14px;border-color:transparent;background:var(--sunk)}
[data-skin="studio"] .card-m{border-radius:32px;background:linear-gradient(150deg,var(--accent),var(--accent2));box-shadow:0 20px 50px -28px var(--accent)}
[data-skin="studio"] .card-m::after{width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.14);transform:none;right:-70px;top:-90px}
[data-skin="studio"] .chart .b{border-radius:999px;background:color-mix(in srgb,var(--fg) 22%,transparent)}
[data-skin="studio"] .chart .b.cur{background:var(--accent)}

/* ---------- 5. PULSE: neon outlines and glow on deep black ---------- */
[data-skin="pulse"]{--r:6px;--display:"Unbounded",system-ui,sans-serif;--glow:0 0 0 1px color-mix(in srgb,var(--accent) 70%,transparent),0 0 24px -4px color-mix(in srgb,var(--accent) 60%,transparent)}
[data-skin="pulse"] body{background-color:var(--bg);background-image:linear-gradient(color-mix(in srgb,var(--accent) 9%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 9%,transparent) 1px,transparent 1px);background-size:44px 44px}
[data-skin="pulse"] h1,[data-skin="pulse"] h2,[data-skin="pulse"] h3,[data-skin="pulse"] .brand,[data-skin="pulse"] .kpi .v,[data-skin="pulse"] .card-m .big,[data-skin="pulse"] .price,[data-skin="pulse"] .day h4,[data-skin="pulse"] .ring span{font-style:normal;letter-spacing:-.01em;font-weight:700}
[data-skin="pulse"] h2{font-size:1.55rem} [data-skin="pulse"] h3{font-size:1.05rem}
[data-skin="pulse"] .lbl,[data-skin="pulse"] th{font-family:var(--mono);letter-spacing:.14em}
[data-skin="pulse"] .panel,[data-skin="pulse"] .kpi,[data-skin="pulse"] .cue,[data-skin="pulse"] .day,[data-skin="pulse"] .modal{background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line))}
[data-skin="pulse"] .kpi::before{height:2px;box-shadow:0 0 14px var(--accent)}
[data-skin="pulse"] .kpi .v{color:var(--accent);text-shadow:0 0 22px color-mix(in srgb,var(--accent) 70%,transparent);font-size:2.3rem}
[data-skin="pulse"] .kpi.k-acc .v{-webkit-background-clip:border-box;background-clip:border-box;background:none;color:var(--accent2)}
[data-skin="pulse"] .item{background:transparent;border-color:color-mix(in srgb,var(--fg) 12%,transparent)}
[data-skin="pulse"] .cue{border-left:3px solid var(--accent2);box-shadow:var(--glow)}
[data-skin="pulse"] .top{border-image:none;border-bottom:1px solid var(--accent);box-shadow:0 0 30px -6px var(--accent)}
[data-skin="pulse"] .tabs a{transform:none;border-radius:4px;background:transparent;font-family:var(--mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
[data-skin="pulse"] .tabs a>span.t{transform:none}
[data-skin="pulse"] .tabs a[aria-current="page"]{background:transparent;color:var(--accent);border-color:var(--accent);box-shadow:var(--glow)}
[data-skin="pulse"] button,[data-skin="pulse"] .btn{background:transparent;border-radius:4px;font-family:var(--mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
[data-skin="pulse"] .primary{background:transparent;color:var(--accent);border:1px solid var(--accent);box-shadow:var(--glow)}
[data-skin="pulse"] .primary:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}
[data-skin="pulse"] input,[data-skin="pulse"] select,[data-skin="pulse"] textarea{border-radius:4px;background:transparent}
[data-skin="pulse"] input:focus,[data-skin="pulse"] select:focus{border-color:var(--accent);box-shadow:var(--glow);outline:0}
[data-skin="pulse"] .card-m{background:var(--surface);color:var(--fg);border:1px solid var(--accent);box-shadow:var(--glow),inset 0 0 60px -20px var(--accent)}
[data-skin="pulse"] .card-m .big{color:var(--accent);text-shadow:0 0 26px var(--accent)}
[data-skin="pulse"] .card-m .pill{background:transparent;color:var(--accent);border:1px solid var(--accent)}
[data-skin="pulse"] .card-m::after{background:none;border:1px solid color-mix(in srgb,var(--accent2) 50%,transparent);border-radius:50%;transform:none}
[data-skin="pulse"] .bar i{background:var(--accent);box-shadow:0 0 12px var(--accent)}
[data-skin="pulse"] .chart .b{background:transparent;border:1px solid color-mix(in srgb,var(--fg) 40%,transparent)}
[data-skin="pulse"] .chart .b.cur{background:var(--accent);border-color:var(--accent);box-shadow:0 0 14px var(--accent)}
[data-skin="pulse"] .pill{background:transparent;border:1px solid currentColor}

/* ---------- theme picker thumbnails ---------- */
.thm{display:grid;gap:.45rem;padding:.6rem;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--raise)}
.thm input{position:absolute;opacity:0}
.thm:has(input:checked){border-color:var(--fg);box-shadow:0 0 0 2px var(--fg)}
.thm:has(input:focus-visible){outline:2px solid var(--accent2);outline-offset:2px}
.thm .mock{height:92px;border-radius:8px;position:relative;overflow:hidden;padding:10px;display:grid;gap:6px;align-content:start}
.thm .mock i{display:block;height:12px;border-radius:3px}
.thm .mock .a{width:60%;height:16px}
.thm .mock .c{height:30px}
.thm small{color:var(--muted);font-size:.74rem;line-height:1.3}
.mock-arena{background:#0A0C1F}.mock-arena .a{background:linear-gradient(100deg,var(--accent),var(--accent2));transform:skewX(-12deg)}.mock-arena .c{background:#1B2050;border-radius:6px}.mock-arena .b{background:#2A3068;width:40%}
.mock-glass{background:radial-gradient(circle at 15% 10%,var(--accent),transparent 55%),radial-gradient(circle at 90% 60%,var(--accent2),transparent 55%),#1a1d40}.mock-glass .a,.mock-glass .c,.mock-glass .b{background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.35);border-radius:12px;backdrop-filter:blur(6px)}.mock-glass .b{width:45%}
.mock-fight{background:#F2F2F2;background-image:repeating-linear-gradient(-45deg,transparent 0 8px,rgba(0,0,0,.05) 8px 9px)}.mock-fight .a{background:var(--accent);border:2px solid #000;border-radius:0;box-shadow:3px 3px 0 #000}.mock-fight .c{background:#fff;border:2px solid #000;border-radius:0;box-shadow:3px 3px 0 #000}.mock-fight .b{background:#000;width:35%;border-radius:0}
.mock-studio{background:#F6F4F1}.mock-studio .a{background:var(--accent);border-radius:99px;width:45%}.mock-studio .c{background:#fff;border-radius:16px;box-shadow:0 6px 14px -8px rgba(0,0,0,.25)}.mock-studio .b{background:#E7E3DD;border-radius:99px;width:55%}
.mock-pulse{background:#05060F;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:12px 12px}.mock-pulse .a{background:transparent;border:1px solid var(--accent);box-shadow:0 0 10px var(--accent);border-radius:3px}.mock-pulse .c{background:transparent;border:1px solid var(--accent2);border-radius:3px}.mock-pulse .b{background:var(--accent);box-shadow:0 0 10px var(--accent);width:30%;height:4px;border-radius:2px}
