
/* VRS Studio Pro 3.0 — Sprint 1 / Livrable 1
   Surcouche graphique uniquement : aucune logique ni commande modifiée. */
:root{
  color-scheme:dark;
  --vrs-bg:#07101b;
  --vrs-bg-soft:#0b1724;
  --vrs-panel:#101f30;
  --vrs-panel-2:#14263a;
  --vrs-border:rgba(143,177,211,.16);
  --vrs-text:#f4f8fc;
  --vrs-muted:#91a5bb;
  --vrs-accent:#1dd5c0;
  --vrs-blue:#2aa9ff;
  --vrs-green:#39d27f;
  --vrs-yellow:#f1c45c;
  --vrs-red:#ff687a;
  --vrs-radius:16px;
  --vrs-shadow:0 20px 55px rgba(0,0,0,.28);
}
html{background:var(--vrs-bg)}
body{
  background:
    radial-gradient(circle at 82% -10%,rgba(42,169,255,.12),transparent 32%),
    radial-gradient(circle at 18% 110%,rgba(29,213,192,.08),transparent 36%),
    var(--vrs-bg)!important;
  color:var(--vrs-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.sidebar,.vrs-sidebar,.live-sidebar{
  background:linear-gradient(180deg,#0d1a29 0%,#08131f 100%)!important;
  border-right:1px solid var(--vrs-border)!important;
  box-shadow:12px 0 36px rgba(0,0,0,.12);
}
.brand,.vrs-brand{letter-spacing:.01em}
.brand-mark,.vrs-brand-mark{
  background:linear-gradient(135deg,var(--vrs-accent),#73efe0)!important;
  color:#04191d!important;
  box-shadow:0 12px 28px rgba(29,213,192,.2)!important;
  border:0!important;
}
.sidebar nav a,.vrs-nav a,.live-nav a{
  border-radius:11px!important;
  transition:background .18s,border-color .18s,color .18s,transform .18s!important;
}
.sidebar nav a:hover,.vrs-nav a:hover,.live-nav a:hover{
  background:rgba(255,255,255,.04)!important;
  color:#fff!important;
  transform:translateX(2px);
}
.sidebar nav a.active,.vrs-nav a.active,.live-nav a.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(29,213,192,.15),rgba(42,169,255,.07))!important;
  border-color:rgba(29,213,192,.19)!important;
}
main,.main,.vrs-main,.live-main{background:transparent!important}
.topbar,.vrs-topbar,.live-topbar{
  border-bottom-color:var(--vrs-border)!important;
}
h1,h2,h3,h4,strong{letter-spacing:-.01em}
.subtitle,.eyebrow,.vrs-heading p,.live-topbar p,small{color:var(--vrs-muted)}
button,.vrs-btn,.refresh-square{
  border-radius:10px!important;
  font-weight:800!important;
  transition:transform .18s,filter .18s,border-color .18s!important;
}
button:hover:not(:disabled),.vrs-btn:hover:not(:disabled){
  transform:translateY(-1px);
  filter:brightness(1.05);
}
.panel,.vrs-panel,.vrs-stat,.hero,.kpis article,.station-card,.service-item,.alert-item{
  background:linear-gradient(145deg,rgba(17,32,49,.97),rgba(10,22,35,.98))!important;
  border:1px solid var(--vrs-border)!important;
  border-radius:var(--vrs-radius)!important;
  box-shadow:var(--vrs-shadow)!important;
}
.panel-head,.panel-title,.vrs-panel-title{
  border-bottom-color:var(--vrs-border)!important;
}
.badge,.counter,.vrs-badge,.onair-pill{
  border-radius:999px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
}
.track,.progress-track,.meter .track{
  background:#1a3046!important;
  overflow:hidden;
  border-radius:999px!important;
}
.track i,.progress-track span,.meter .track i{
  background:linear-gradient(90deg,var(--vrs-accent),var(--vrs-blue))!important;
}
input,select,textarea{
  background:#132438!important;
  color:#fff!important;
  border-color:#2b455f!important;
  border-radius:9px!important;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--vrs-accent)!important;
  box-shadow:0 0 0 3px rgba(29,213,192,.1)!important;
  outline:none!important;
}
.player-bar{
  background:rgba(9,20,32,.96)!important;
  border-top:1px solid var(--vrs-border)!important;
  backdrop-filter:blur(14px);
}
audio{accent-color:var(--vrs-accent)}
.vrs-radio-switcher,.vrs-radio-select{
  background:rgba(12,24,38,.96)!important;
  border-color:var(--vrs-border)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.24)!important;
}
.live-footer{
  border-top-color:var(--vrs-border)!important;
  background:rgba(8,18,29,.9)!important;
}
.status.success,.vrs-status.ok{border-color:rgba(57,210,127,.3)!important}
.status.error,.vrs-status.err{border-color:rgba(255,104,122,.3)!important}
@media(max-width:900px){
  .sidebar,.vrs-sidebar,.live-sidebar{box-shadow:none}
}
