/* AZUR Horizons 1.8 — Horizon vivant. Dernière couche, compatible avec l'interface 1.8. */
:root{
  --hv-cyan:#77eee2;
  --hv-gold:#f5ce71;
  --hv-coral:#f08b6d;
  --hv-panel:rgba(6,28,40,.965);
  --hv-line:rgba(173,235,224,.22);
}

/* Le retour de tir passe par la mire et les bords de l'image, jamais par une
   nouvelle boîte de texte au centre de l'action. */
body.azur-v2 #vignette{transition:box-shadow .18s ease,background .18s ease}
body.azur-v2.v19-firing .crosshair{transform:translate(-50%,-50%) scale(1.24);filter:drop-shadow(0 0 7px rgba(255,231,154,.9))}
body.azur-v2.v19-hit-confirm .crosshair{color:#fff0a6!important;filter:drop-shadow(0 0 8px #f8cf58)}
body.azur-v2.v19-damaged #vignette{box-shadow:inset 0 0 100px 18px rgba(240,87,69,.38),inset 0 0 190px rgba(58,4,14,.36)!important}
.azur-v2 .crosshair{transition:transform .08s ease,color .08s ease,filter .08s ease}
.azur-v2 .damage-number{font-variant-numeric:tabular-nums}

/* Le rail Ascension devient un journal de terrain lisible, sans couvrir le personnage. */
body.azur-v2[data-screen="menu"] .v18-lobby-rail.v19-lobby-rail{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;
  border:1px solid var(--hv-line);background:rgba(5,27,40,.82);box-shadow:0 14px 35px rgba(0,13,25,.28);
}
body.azur-v2[data-screen="menu"] .v19-lobby-rail span{min-width:0;padding:10px 12px;background:rgba(17,55,65,.44)}
body.azur-v2[data-screen="menu"] .v19-lobby-rail b{display:block;color:var(--hv-gold);font-size:10px;letter-spacing:.11em;margin-bottom:3px}

/* Casier et boutique : hiérarchie plus nette, aperçu 3D mieux séparé, états
   possession/équipement lisibles sans agrandir toute l'interface. */
.azur-v2 .exp-shop-wallet,.azur-v2 .exp-locker-summary{background:linear-gradient(110deg,rgba(22,68,76,.82),rgba(11,38,52,.72));border-color:var(--hv-line)}
.azur-v2 .exp-shop-spotlight{position:relative;overflow:hidden;background:linear-gradient(118deg,color-mix(in srgb,var(--item-color) 25%,#0b2b3c),#092333 68%);border-color:color-mix(in srgb,var(--item-color) 48%,transparent)}
.azur-v2 .exp-shop-spotlight::after{content:"";position:absolute;width:160px;height:160px;right:-55px;bottom:-85px;border:1px solid color-mix(in srgb,var(--item-color) 42%,transparent);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.025),0 0 0 48px rgba(255,255,255,.018);pointer-events:none}
.azur-v2 .exp-cosmetic{background:rgba(13,43,56,.9);border-color:rgba(177,229,221,.17)}
.azur-v2 .exp-cosmetic:hover,.azur-v2 .exp-cosmetic.selected{border-color:color-mix(in srgb,var(--item-color) 68%,#dffef6);background:rgba(19,55,66,.96)}
.azur-v2 .exp-card-art{background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--item-color) 24%,transparent),transparent 64%),linear-gradient(160deg,rgba(255,255,255,.045),rgba(1,14,25,.15))}
.azur-v2 .exp-card-state{letter-spacing:.08em}
.azur-v2 .exp-filterbar{position:sticky;top:-25px;z-index:4;padding:10px 0;background:linear-gradient(var(--hv-panel) 78%,transparent)}
.azur-v2 .exp-preview{border-color:var(--hv-line);background:linear-gradient(110deg,rgba(21,58,69,.9),rgba(8,32,46,.9))}
.azur-v2 .loadout-pill{border-color:rgba(173,235,224,.18);background:rgba(14,46,58,.82)}

/* La carte et le garage utilisent le même langage de navigation que le salon. */
.azur-v2 .map-dialog,.azur-v2 .garage-dialog{background:var(--hv-panel);border-color:var(--hv-line)}
.azur-v2 .full-map{border:1px solid rgba(196,239,225,.34);box-shadow:0 14px 35px rgba(0,12,22,.32);background:#17668d}
.azur-v2 .map-legend{display:flex;flex-wrap:wrap;gap:8px 18px;color:#c7e4dd;font-size:10px;letter-spacing:.05em}
.azur-v2 .garage-card{background:linear-gradient(155deg,rgba(25,67,78,.93),rgba(8,31,44,.96));border-color:rgba(173,235,224,.18)}
.azur-v2 .garage-card:hover{border-color:rgba(119,238,226,.55)}
.azur-v2 .garage-car-art{filter:drop-shadow(0 13px 12px rgba(0,8,17,.34))}
.azur-v2 .garage-speed{color:var(--hv-gold)}
.azur-v2 .paint-swatch.selected{outline-color:#f7f3d7;box-shadow:0 0 0 3px rgba(119,238,226,.22)}

/* Construction : l'aperçu et l'édition directe restent compacts mais gagnent
   une lecture matérielle claire. */
.azur-v2 .build-bar{border-color:rgba(119,238,226,.48)!important;background:rgba(5,25,38,.96)!important}
.azur-v2 .build-bar .btn.active{background:var(--hv-gold)!important;color:#12283a!important;border-color:var(--hv-gold)!important}
.azur-v2 .world-edit{background:rgba(5,27,40,.96);border-color:rgba(119,238,226,.42);box-shadow:0 20px 55px rgba(0,12,23,.44)}
.azur-v2 .world-edit-grid button{transition:background .1s ease,border-color .1s ease}
.azur-v2 .world-edit-grid button.selected{background:rgba(245,206,113,.72);border-color:#fff0b1}

/* Les six emotes ressemblent à une roue d'actions tout en conservant de grandes
   cibles tactiles et l'accès clavier. */
.azur-v2 .v2-emote-picker{background:radial-gradient(circle at 50% 45%,rgba(38,88,91,.84),rgba(5,25,39,.98) 68%);border-color:rgba(137,231,214,.42)}
.azur-v2 .v2-emote-choice{background:rgba(13,48,61,.88)}
.azur-v2 .v2-emote-choice:nth-child(2n){background:rgba(18,57,67,.88)}
.azur-v2 .v2-emote-choice:hover,.azur-v2 .v2-emote-choice:focus-visible{background:rgba(41,104,103,.92);border-color:var(--hv-gold)!important}

/* Écran très large : l'espace supplémentaire sert au monde, pas à étirer les cartes. */
@media(min-width:1500px){
  .azur-v2 .v2-scroll-panel{max-width:1040px!important}
  .azur-v2 .exp-shop-grid,.azur-v2 .locker-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:620px) and (orientation:portrait){
  body.azur-v2[data-screen="menu"] .v18-lobby-rail.v19-lobby-rail{display:none}
  .azur-v2 .exp-filterbar{top:-16px;padding:7px 0}
  .azur-v2 .exp-shop-spotlight{grid-template-columns:78px 1fr!important}
  .azur-v2 .exp-shop-spotlight>div:last-child{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap}
  .azur-v2 .map-legend{font-size:8px;gap:6px 10px}
}
@media(max-height:470px) and (orientation:landscape){
  body.azur-v2[data-screen="menu"] .v18-lobby-rail.v19-lobby-rail{display:none}
  .azur-v2 .exp-filterbar{top:-16px}
}
@media(prefers-reduced-motion:reduce){
  body.azur-v2 #vignette,.azur-v2 .crosshair,.azur-v2 .world-edit-grid button{transition:none!important}
}
