/* app/partie/batiments.css : le menu « Construire » qui s'ouvre sur le halo d'un nid détruit
   (app/partie/batiments.js). La roue (choix de Tris, 20/10) : sur tout l'écran sous le bandeau, le jeu
   assombri et en pause ; six médaillons en rond, comme les améliorations (app/arene/arene.css),
   « Construire » et « Plus tard » au centre. Couché : de part et d'autre (--xc, --yc) ; debout :
   en haut et en bas (--xd, --yd). */
.chantier{position:fixed;left:0;right:0;bottom:0;top:var(--bandeau,58px);z-index:9160;box-sizing:border-box;padding:8px 10px 10px;
 display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,rgba(4,8,18,.82),rgba(4,8,18,.6) 75%);
 font:600 12px system-ui,sans-serif;color:#e9ecf4;touch-action:none;user-select:none;-webkit-user-select:none;animation:chantier-in .18s ease-out;}
.chantier[hidden]{display:none;}
@keyframes chantier-in{from{opacity:0;}}
.chantier-roue{--w:150px;--h:calc(var(--r) + 74px);--r:clamp(54px,14vh,80px);position:relative;
 width:min(80vw,calc((100vh - var(--bandeau,58px)) * 2.2));height:min(100%,620px);animation:chantier-roue .35s cubic-bezier(.2,1.3,.4,1);}
/* La roue apparaît d'un bloc, sans « fill » : un médaillon par animation, décalés et figés à l'opacité 0
   avant de partir, en restait parfois un invisible mais cliquable (Tris, 23-24/10, A16 et Pixel 7a). Sans
   remplissage, une apparition qui ne part pas laisse la roue telle quelle, visible. */
@keyframes chantier-roue{from{opacity:0;transform:scale(.9);}}
.chantier-carte{--x:var(--xc);--y:var(--yc);position:absolute;left:calc(50% + var(--x) * (50% - var(--w) / 2) - var(--w) / 2);top:calc(50% + var(--y) * (50% - var(--h) / 2) - var(--h) / 2);
 width:var(--w);height:var(--h);display:flex;flex-direction:column;align-items:center;padding:0;border:0;background:none;font:inherit;color:#e9ecf4;text-align:center;
 cursor:pointer;-webkit-tap-highlight-color:transparent;}
.chantier-rond{position:relative;flex:none;width:var(--r);height:var(--r);border-radius:50%;transition:transform .12s ease;
 background:radial-gradient(circle,color-mix(in srgb,var(--c) 20%,#0c0e18) 0 57%,transparent 57.5%);box-shadow:0 0 28px color-mix(in srgb,var(--c) 30%,transparent);}
.chantier-rond canvas{position:absolute;inset:14%;width:72%;height:72%;}
.chantier-crans{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill-rule:evenodd;}
.chantier-crans .pris{fill:var(--c);}
.chantier-crans .reste{fill:rgba(255,255,255,.13);}
.chantier-crans .or{fill:#ffd23d;}
.chantier-places{display:flex;gap:4px;margin-top:5px;}
.chantier-places i{width:14px;height:4px;border-radius:2px;background:rgba(255,255,255,.18);}
.chantier-places i.on{background:var(--c);}
.chantier-niv{position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);min-width:20px;padding:1px 6px;border-radius:9px;font:800 11px system-ui,sans-serif;color:#0c0e18;background:var(--c);box-shadow:0 0 0 2px #0c0e18;}
.chantier-carte.max .chantier-niv{background:#ffe27a;}
.chantier-carte kbd{position:absolute;right:-4px;top:-2px;font:700 11px system-ui,sans-serif;color:#8f97ad;}
.chantier-carte b{margin-top:12px;font-size:12.5px;font-weight:780;line-height:1.2;}
.chantier-carte i{margin-top:3px;font-style:normal;font-size:11px;line-height:1.3;color:#b4bccd;text-shadow:0 1px 6px rgba(0,0,0,.8);}
.chantier-carte:active:not(:disabled) .chantier-rond{transform:scale(.94);}
.chantier-carte:disabled{filter:grayscale(.85);opacity:.45;cursor:default;}
.chantier-coeur{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:10px;}
.chantier-coeur span{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#7ff3ff;text-shadow:0 0 12px rgba(0,224,255,.6);}
.chantier-carte.chantier-plus-tard{position:static;width:auto;height:auto;display:block;padding:9px 24px;border-radius:99px;border:1.5px solid rgba(255,255,255,.22);
 background:rgba(10,14,26,.6);font-size:13px;font-weight:700;letter-spacing:.06em;color:#cfd6e6;white-space:nowrap;}
.chantier-plus-tard kbd{position:static;margin-left:8px;}
/* huit (le Relais de soutien, 31/10) : « Construire » et « Plus tard » côte à côte, entre les deux rangées */
.chantier-roue.huit .chantier-coeur{flex-direction:row;gap:14px;}
@media (hover:none){.chantier-carte kbd{display:none;}}
@media (hover:hover){:where(html:not(.doigt)) .chantier-carte:hover:not(:disabled) .chantier-rond{transform:scale(1.06);}}
@media (max-aspect-ratio:1/1){
 .chantier-carte{--x:var(--xd);--y:var(--yd);}
 .chantier-roue{--r:clamp(62px,9vh,82px);width:min(96vw,440px);height:min(100%,560px);}
 /* sept : « Construire » en bas à droite, à côté du septième médaillon (app/partie/batiments.js) */
 .chantier-roue.sept{height:min(100%,620px);}
 .chantier-roue.sept .chantier-coeur{left:calc(100% - var(--w) / 2);top:calc(100% - var(--h) / 2);}
 /* huit : quatre rangées de deux serrées en haut, « Construire » et « Plus tard » côte à côte dessous */
 .chantier-roue.huit{--r:clamp(54px,7.6vh,78px);height:min(100%,700px);}
 .chantier-roue.huit .chantier-carte{top:calc(var(--rang) * (100% - 64px - var(--h)) / 3);}
 .chantier-roue.huit .chantier-coeur{top:calc(100% - 28px);}
}
