.nav-logo{cursor:pointer;user-select:none;perspective:420px;}
.nav-logo-img{cursor:pointer;}
.nav-logo-img{
  transform-origin:50% 50%;
  transform-style:preserve-3d;
  backface-visibility:visible;
  transition:transform .14s ease;
}
.nav-logo-img.nudge{
  transform:translateY(-4px) scale(1.07);
}
.nav-logo-img.spinning{
  animation:logoSpinY .9s cubic-bezier(.2,.7,.2,1);
}
@keyframes logoSpinY{
  from{transform:rotateY(0deg);}
  to{transform:rotateY(360deg);}
}
body.editing nav{top:42px;}
.edit-bar{
  display:none;position:fixed;top:0;left:0;right:0;z-index:400;
  height:42px;padding:0 20px;
  background:var(--red);color:#fff;
  align-items:center;justify-content:space-between;gap:16px;
}
body.editing .edit-bar{display:flex;}
.edit-bar strong{letter-spacing:2px;font-size:.7rem;text-transform:uppercase;}
.edit-bar-actions{display:flex;gap:8px;}
.edit-bar button,.gate-box button,.score-form button,.upload-btn{
  font-family:inherit;letter-spacing:1px;text-transform:uppercase;
  border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;
  padding:7px 12px;cursor:pointer;
}
.edit-bar button:hover,.gate-box button:hover{background:#fff;color:var(--red);}
.gate{
  display:none;position:fixed;inset:0;z-index:500;
  background:rgba(0,0,0,.78);
  align-items:center;justify-content:center;
}
.gate.open{display:flex;}
.gate-box{
  width:min(420px,92vw);background:var(--card);border:1px solid var(--border);
  border-top:3px solid var(--red);padding:32px 28px;
}
.gate-box h3{margin-bottom:8px;}
.gate-box p{color:var(--text);font-size:.85rem;margin-bottom:16px;}
.gate-box input,.score-form input,.score-form select,.edit-bar input{
  width:100%;background:#111;border:1px solid var(--border);color:#fff;
  padding:10px 12px;margin-bottom:10px;outline:none;
  font-family:Arial,Helvetica,sans-serif!important;
  letter-spacing:normal;
}
.gate-err{color:var(--red);font-size:.75rem;min-height:1.1em;margin-bottom:8px;}
[data-edit][contenteditable="true"],[contenteditable="true"]{
  outline:1px dashed rgba(245,196,0,.55);outline-offset:4px;cursor:text;
}
.photo-item,.pilot-photo-slot,.hero-slide-bg,.video-placeholder{position:relative;}
.upload-btn{
  display:none;position:absolute;z-index:20;right:10px;top:10px;
  background:rgba(200,0,26,.9);font-size:.58rem;
}
.hero-slide .upload-btn,.page-hero .upload-btn{z-index:20;}
body.editing .hero-slide > .upload-btn,
body.editing .hero-slide > .upload-btn.remove-btn{display:none!important;}
.carousel-edit{
  display:none;position:absolute;top:108px;right:24px;z-index:40;
  width:min(300px,88vw);
  background:rgba(10,10,10,.92);
  border:1px solid rgba(255,255,255,.22);
  border-top:3px solid var(--red);
  padding:14px 14px 8px;
  color:#fff;
}
body.editing .carousel-edit{display:block;}
.carousel-edit strong{
  display:block;letter-spacing:2px;font-size:.68rem;text-transform:uppercase;margin-bottom:6px;
}
.carousel-edit p{color:rgba(255,255,255,.7);font-size:.78rem;margin:0 0 10px;line-height:1.4;}
.carousel-edit-row{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  padding:8px 0;border-top:1px solid rgba(255,255,255,.12);
}
.carousel-edit-row.current{background:rgba(200,0,26,.18);margin:0 -8px;padding:8px;}
.carousel-edit-row span{min-width:58px;font-size:.72rem;letter-spacing:1px;text-transform:uppercase;}
.carousel-edit .upload-btn{
  position:static;display:inline-block;margin:0;
}
body.editing .carousel-edit .upload-btn.remove-btn{display:none;}
body.editing .carousel-edit .upload-btn.remove-btn.is-on{display:inline-block;}
.carousel-edit-go{
  font-family:inherit;font-size:.62rem;letter-spacing:1px;text-transform:uppercase;
  border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;
  padding:6px 8px;cursor:pointer;
}
.carousel-edit-go:hover,.carousel-edit-row.current .carousel-edit-go{background:#fff;color:var(--red);}
.page-hero-bg{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center;
}
.page-hero-bg.has-placeholder::after{content:none;}
.page-hero-content{display:none;}
.page-hero::after{display:none;}
.page-hero .banner-edit{
  position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);
  z-index:30;display:none;align-items:center;gap:10px;flex-wrap:wrap;
  justify-content:center;
}
body.editing .page-hero .banner-edit{display:flex;}
.page-hero .banner-edit .upload-btn[data-slot]{
  position:static;display:inline-block!important;
  padding:12px 20px;font-size:.75rem;
  background:#C8001A;border:1px solid #fff;
}
.page-hero .banner-edit .upload-btn.remove-btn{display:none!important;position:static;}
body.editing .page-hero .banner-edit .upload-btn.remove-btn.is-on{display:inline-block!important;}
.star-meter{
  font-family:'AfinalFont',monospace;font-size:.85rem;letter-spacing:1px;
  color:var(--yellow);min-width:72px;text-align:center;
}
.star-meter.armed{color:#fff;text-shadow:0 0 10px #F5C400;}
body.editing .upload-btn{display:inline-block;}
.upload-btn.remove-btn{
  top:auto;bottom:10px;right:10px;
  background:rgba(0,0,0,.78);
}
body.editing .upload-btn.remove-btn{display:none;}
body.editing .upload-btn.remove-btn.is-on{display:inline-block;}
#videoSection{position:relative;}
body.editing #videoSection .upload-btn.remove-btn{z-index:6;}
#page-classement .rules-box{
  background:var(--card);border:1px solid var(--border);border-left:3px solid var(--yellow);
  padding:22px 24px;margin-bottom:28px;color:var(--text);line-height:1.7;
}
.rank-table{width:100%;border-collapse:collapse;}
.rank-table th,.rank-table td{border-bottom:1px solid var(--border);padding:12px 10px;text-align:left;}
.rank-table th{color:var(--yellow);font-size:.65rem;letter-spacing:2px;text-transform:uppercase;}
.rank-table .pts{color:var(--yellow);font-size:1.1rem;}
.rank-empty{color:var(--text);padding:24px 0;}
.score-form{
  display:none;margin-top:28px;background:var(--card);border:1px solid var(--border);
  padding:22px;max-width:520px;
}
body.editing .score-form{display:block;}
.score-form h3{margin-bottom:12px;}
.easter-67{
  display:none;margin-top:12px;max-width:220px;border:2px solid var(--yellow);
}
.easter-67.show{display:block;}
.game-inner{min-width:0;}
.canvas-wrap{max-width:100%;overflow:hidden;}
#dashCanvas,#hookCanvas{max-width:100%;height:auto;}

@media (max-width:900px){
  nav{padding:0 16px;}
  .nav-links{display:none;}
  .nav-links.open{
    display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;
    background:#0a0a0a;border-bottom:1px solid var(--border);
  }
  .hero-content,.page-hero,.pilots-section,.projects-list,.planning-section,.games-hub,.game-panel,footer,.section-block{
    padding-left:16px;padding-right:16px;
  }
  .hero-content{padding-bottom:48px;}
  .hero-arrow{display:none;}
  .pilots-grid,.games-hub-grid{grid-template-columns:1fr;}
  .game-inner{grid-template-columns:1fr;}
  .lb{position:static;}
  .photo-grid{grid-template-columns:1fr;}
  .pi-1,.pi-2,.pi-3,.pi-4,.pi-5{grid-column:auto;height:220px;}
  .planning-grid{grid-template-columns:1fr;}
}
