:root{--cible:44px;--ep-focus:2px;--rame:cubic-bezier(.65, 0, .35, 1)}*{box-sizing:border-box}html,body{background:var(--calque);height:100%;color:var(--encre);font:400 15px/1.45 var(--font-texte);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;overflow:hidden}:where(button,input,[tabindex]):focus-visible{outline:var(--ep-focus) solid var(--encre);outline-offset:2px}#map{touch-action:none;position:fixed;inset:0}#ui{pointer-events:none;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));position:fixed;inset:0}#ui>*{pointer-events:auto}.mono{font-family:var(--font-chiffre);font-variant-numeric:tabular-nums}.panel{background:var(--papier);border:1px solid var(--trait);border-radius:var(--rayon-0)}.btn{min-width:var(--cible);min-height:var(--cible);border:1px solid var(--trait-fort);border-radius:var(--rayon-2);background:var(--papier-haut);color:var(--encre);font:650 15px/1 var(--font-texte);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .16s, transform .16s var(--rame);justify-content:center;align-items:center;padding:0 14px;display:inline-flex}@media (hover:hover){.btn:hover{background:var(--papier)}}.btn:active{transform:translateY(1px)}@media (prefers-reduced-motion:reduce){.btn{transition:none}}@media (hover:hover){.btn.principal:hover{background:var(--encre);opacity:.9}}.btn.danger{color:var(--rouille);border-color:var(--rouille)}.btn:disabled{cursor:not-allowed;color:var(--encre-2);background:var(--papier);border-color:var(--trait);border-style:dashed}.btn.principal:disabled{opacity:.45;background:var(--encre);color:var(--encre-inverse);border-style:solid}.icon-btn{padding:0}dialog.fenetre{border:1px solid var(--encre);border-radius:var(--rayon-2);background:var(--papier-haut);width:min(400px,100% - 32px);color:var(--encre);opacity:1;transition:opacity .24s cubic-bezier(.22, 1, .36, 1), transform .24s cubic-bezier(.22, 1, .36, 1), overlay .24s allow-discrete, display .24s allow-discrete;padding:0;transform:none}dialog.fenetre:not([open]){opacity:0;transition-duration:.16s;transform:translateY(4px)}@starting-style{dialog.fenetre[open]{opacity:0;transform:translateY(8px)scale(.98)}}dialog.fenetre::backdrop{background:#14223a40}dialog.fenetre form{flex-direction:column;gap:16px;padding:24px;display:flex}dialog.fenetre h2{font:800 30px/1 var(--font-plaque);text-transform:uppercase;margin:0}.fenetre .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.champ{flex-direction:column;gap:6px;display:flex}.champ label,.champ-label{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.champ input{min-height:var(--cible);border:2px solid var(--encre);border-radius:var(--rayon-1);background:var(--papier-haut);color:var(--encre);font:700 20px/1 var(--font-etroit);padding:0 12px}.suggestions{flex-wrap:wrap;gap:6px;display:flex}.suggestions button{border:1px dashed var(--trait-fort);border-radius:var(--rayon-1);min-height:32px;color:var(--encre);font:600 14px/1 var(--font-etroit);cursor:pointer;background:0 0;padding:0 10px}@media (hover:hover){.suggestions button:hover{background:var(--papier)}}.palette{grid-template-columns:repeat(4, var(--cible));gap:4px;display:grid}.palette button{width:var(--cible);height:var(--cible);border-radius:var(--rayon-2);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.palette button span{width:28px;height:28px;box-shadow:0 0 0 2px var(--papier-haut);border-radius:50%}.palette button[aria-checked=true] span{box-shadow:0 0 0 2px var(--papier-haut), 0 0 0 4px var(--encre)}.fenetre .petit{color:var(--encre-2);margin:0;font-size:13px;line-height:1.4}.actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.btn.discret{background:0 0;border-color:#0000}@media (hover:hover){.btn.discret:hover{background:var(--papier)}}.btn.principal:disabled{opacity:.45;cursor:not-allowed}@media (prefers-reduced-motion:reduce){dialog.fenetre,dialog.fenetre:not([open]){transition-property:opacity,overlay,display;transition-duration:.12s;transform:none}}body.partie-finie #map{filter:grayscale(.55)}dialog.fin{--fin:var(--rouille);border:1px solid var(--encre);border-radius:var(--rayon-2);background:var(--papier-haut);width:min(560px,100% - 32px);max-height:calc(100% - 32px);color:var(--encre);padding:0;overflow:hidden auto}dialog.fin.gagne{--fin:var(--vert)}dialog.fin::backdrop{background:color-mix(in srgb, var(--calque) 62%, transparent)}dialog.fin.gagne::backdrop{background:color-mix(in srgb, var(--calque) 40%, transparent)}.carte-fin{flex-direction:column;gap:16px;padding:24px;display:flex}.carte-fin .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase}.carte-fin .ton{color:var(--fin)}.carte-fin h2{font:800 34px/1 var(--font-plaque);text-transform:uppercase;text-wrap:balance;margin:0}.chapeau{color:var(--encre-2);margin:0}.chapeau b{color:var(--encre);font-weight:650}.distinction{color:var(--encre-2);margin:0;font-size:14px}.distinction.obtenue{color:var(--vert)}.distinction.obtenue b{font-weight:700}.frise-fin{height:30px;margin:50px 0 10px;position:relative}.frise-fin .rail{border-top:2px dashed var(--trait-fort);position:absolute;top:13px;left:0;right:0}.frise-fin .tenu{height:6px;width:var(--tenu);background:var(--fin);position:absolute;top:11px;left:0}.frise-fin .coupure{left:var(--tenu);background:var(--fin);width:20px;height:20px;box-shadow:0 0 0 3px var(--papier-haut);border-radius:50%;margin-left:-10px;position:absolute;top:5px}.frise-fin .neutre{background:var(--papier-haut);border:2px solid var(--vert);border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;top:9px}.frise-fin .borne{font:500 11px/1 var(--font-chiffre);color:var(--encre-2);position:absolute;top:30px}.frise-fin .fin-annee{color:var(--fin);transform:translate(-50%)}.gagne .frise-fin .fin-annee{transform:translate(-100%)}.tampon-fin{white-space:nowrap;border:3px solid var(--fin);outline:1.5px solid var(--fin);outline-offset:3px;border-radius:var(--rayon-1);color:var(--fin);background:color-mix(in srgb, var(--papier-haut) 85%, transparent);font:800 22px/1 var(--font-plaque);letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:8px 14px 6px;position:absolute;top:-46px;right:0;transform:rotate(-8deg)}.tampon-fin.a-gauche{left:8%;right:auto}.tampon-fin small{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.14em;margin-top:3px;display:block}dialog.fin.joue .tampon-fin{animation:.28s cubic-bezier(.2,.9,.3,1.2) .35s both coup-tampon}@keyframes coup-tampon{0%{opacity:0;transform:rotate(-8deg)scale(1.8)}}.bilan{background:var(--papier);border:1px solid var(--trait);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px;padding:12px 16px;display:grid}.score-total{flex-direction:column;gap:4px;display:flex}.score-total .libelle{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.14em;text-transform:uppercase;color:var(--encre-2)}.score-total .total{font:600 48px/1 var(--font-chiffre);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.score-total .niveau{color:var(--encre-2);font-size:13px}.detail{grid-template-columns:1fr auto auto;gap:6px 12px;margin:0;font-size:14px;display:grid}.detail dd{font:500 13px/1.45 var(--font-chiffre);font-variant-numeric:tabular-nums;text-align:right;color:var(--encre-2);margin:0}.detail dd.pts{color:var(--encre);min-width:4.5em}.meilleur{color:var(--encre-2);margin:0;font-size:13px}.stats div{background:var(--papier);border:1px solid var(--trait);flex-direction:column;gap:2px;min-width:0;padding:8px;display:flex}.stats b{font:500 17px/1.1 var(--font-chiffre);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stats span{color:var(--encre-2);font-size:12px}.carte-fin .actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}#ui>.pastille-bilan{left:50%;bottom:calc(max(12px, env(safe-area-inset-bottom)) + 150px);border-color:var(--rouille);color:var(--rouille);font-weight:700;position:absolute;transform:translate(-50%)}#ui>.pastille-bilan.gagne{border-color:var(--vert);color:var(--vert)}.pastille-bilan[hidden]{display:none}@media (width<=520px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.bilan{grid-template-columns:1fr;gap:12px}.score-total .total{font-size:44px}.frise-fin{margin-top:62px}.tampon-fin{font-size:16px;top:-56px}}@media (prefers-reduced-motion:reduce){dialog.fin.joue .tampon-fin{animation:none}}dialog.arbre{border:1px solid var(--encre);border-radius:var(--rayon-2);background:var(--calque);width:min(1320px,100% - 32px);max-width:none;height:calc(100% - 32px);max-height:none;color:var(--encre);flex-direction:column;padding:0;display:none;overflow:hidden}dialog.arbre[open]{display:flex}dialog.arbre::backdrop{background:color-mix(in srgb, var(--calque) 62%, transparent)}dialog.arbre .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.arbre-tete{background:var(--papier);border-bottom:1px solid var(--trait);align-items:center;gap:16px;padding:16px 24px 12px;display:flex}.arbre-tete>div:first-child{flex:1;min-width:0}.arbre-tete h2{font:800 40px/1 var(--font-plaque);margin:2px 0 0}.arbre-points span{align-items:center;gap:6px;font-size:14px;display:inline-flex}.arbre-points svg{width:20px;height:20px;color:var(--vert)}.arbre-points b{font-size:20px;font-weight:600}.arbre-epoques{background:var(--papier);border-bottom:1px solid var(--trait);align-items:center;gap:4px;padding:6px 16px;display:flex}.arbre-epoques ol{scrollbar-width:none;flex:1;gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.arbre-epoques li{flex:1;min-width:104px}.epoque{width:100%;min-height:var(--cible);color:var(--encre-2);font:600 13px/1.15 var(--font-etroit);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;padding:4px 10px;display:flex}.epoque .mono{font-size:11px;font-weight:500}.epoque.vue{color:var(--encre);border-bottom-color:var(--encre)}.epoque.en-cours .mono:after{content:" ●";color:var(--vert)}@media (hover:hover){.epoque:hover{color:var(--encre);background:var(--papier-haut)}}.epoque:focus-visible{outline:var(--ep-focus) solid var(--encre);outline-offset:-2px}.arbre-corps{flex:1;grid-template-columns:minmax(0,1fr) 320px;min-height:0;display:grid}.arbre-plan{overscroll-behavior:contain;position:relative;overflow:auto}.plan-interieur{position:relative}.branche{border-top:1px solid var(--trait);position:absolute;left:0;right:0}.branche:nth-child(2n){background:color-mix(in srgb, var(--papier) 45%, transparent)}.nom-branche{z-index:4;width:112px;height:100%;font:800 12px/1.3 var(--font-plaque);letter-spacing:.07em;text-transform:uppercase;color:var(--encre-2);background:var(--calque);border-left:4px solid var(--c);border-right:1px solid var(--trait);padding:10px 8px 0 10px;display:block;position:sticky;left:0}.axe{height:30px;position:absolute;top:0;left:0;right:0}.axe .borne{color:var(--encre-2);font-size:11px;position:absolute;top:9px;transform:translate(-50%)}.axe .borne.forte{color:var(--encre);font-weight:600}.coupure-epoque{border-left:1px dashed var(--trait-fort);position:absolute;top:26px;bottom:0}.maintenant{border-left:2px solid var(--vert);z-index:1;position:absolute;top:26px;bottom:0}.maintenant .mono{border-radius:var(--rayon-1);background:var(--vert);color:var(--encre-inverse);padding:1px 5px;font-size:11px;position:absolute;top:-24px;left:0;transform:translate(-50%)}.liens{pointer-events:none;position:absolute;top:0;left:0}.pli{z-index:3;border:1px dashed var(--trait-fort);background:var(--papier);width:52px;color:var(--encre-2);cursor:pointer;font:600 14px/1 var(--font-chiffre);justify-content:center;align-items:center;display:flex;position:absolute;top:30px}.pli.droite{right:0}@media (hover:hover){.pli:hover{color:var(--encre);background:var(--papier-haut)}}.cp-noeud{z-index:2;border:1.5px solid var(--encre);border-left:4px solid var(--c);border-radius:var(--rayon-2);background:var(--papier-haut);width:132px;height:54px;color:var(--encre);text-align:left;cursor:pointer;grid-template-rows:auto auto;grid-template-columns:20px minmax(0,1fr);align-content:center;column-gap:7px;padding:4px 8px 4px 9px;transition:opacity .18s,box-shadow .18s;display:grid;position:absolute}.cp-noeud svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;grid-row:1/3;align-self:center;width:20px;height:20px}.cp-noeud b{font:700 14px/1.1 var(--font-etroit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cp-noeud small{color:var(--encre-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;overflow:hidden}.cp-noeud.acquis{background:var(--encre);border-color:var(--encre);border-left-color:var(--c);color:var(--encre-inverse)}.cp-noeud.acquis small{color:color-mix(in srgb, var(--encre-inverse) 80%, transparent)}.cp-noeud.disponible{outline:1.5px dashed var(--encre);outline-offset:3px}.cp-noeud.verrouille{border-style:dashed;border-color:var(--trait-fort);color:var(--encre-2);background:var(--papier);border-left-style:solid}.cp-noeud.choisi{box-shadow:0 0 0 3px var(--calque), 0 0 0 5px var(--encre)}.cp-noeud.estompe{opacity:.3}.cp-noeud:focus-visible{outline:var(--ep-focus) solid var(--encre);outline-offset:3px}@media (hover:hover){.cp-noeud.verrouille:hover,.cp-noeud.disponible:hover{background:var(--papier-haut)}}.arbre-fiche{background:var(--papier-haut);border-left:1px solid var(--trait);flex-direction:column;gap:14px;padding:20px;display:flex;overflow-y:auto}.arbre-fiche .aide{color:var(--encre-2);margin:0;font-size:15px;line-height:1.45}.fiche-tete{border-left:4px solid var(--c);align-items:center;gap:12px;padding-left:10px;display:flex}.fiche-tete svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:28px;height:28px}.fiche-tete h3{font:800 28px/1 var(--font-plaque);margin:2px 0 0}.arbre-fiche .effet{margin:0;font-size:18px;line-height:1.5}.carte-effet{background:var(--vert-doux);flex-direction:column;gap:3px;margin:0;padding:10px 12px;font-weight:650;display:flex}.a-venir{color:var(--encre-2);margin:0;font-size:13px;font-style:italic}.conditions{color:var(--encre-2);flex-direction:column;gap:4px;margin:4px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.conditions li{gap:8px;display:flex}.conditions li span{text-align:center;width:1em}.conditions li.ok{color:var(--encre)}.conditions li.ok span{color:var(--vert);font-weight:700}.fiche-pied{flex-direction:column;gap:8px;margin-top:auto;display:flex}.fiche-pied .debloquer{width:100%}.pourquoi{color:var(--rouille);margin:0;font-size:13px}.tampon-acquis{border:2px solid var(--vert);border-radius:var(--rayon-1);color:var(--vert);font:800 18px/1 var(--font-plaque);letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;padding:6px 12px 4px;transform:rotate(-3deg)}.open-tree{gap:6px;position:relative}.open-tree svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.cp-pastille{background:var(--rouille);min-width:20px;height:20px;color:var(--encre-inverse);font:600 11px/20px var(--font-chiffre);text-align:center;box-shadow:0 0 0 2px var(--papier);border-radius:999px;padding:0 5px;position:absolute;top:-7px;right:-7px}.cp-pastille[hidden]{display:none}@media (width<=1599px){.open-tree .libelle{display:none}.open-tree{padding:0}}@media (width<=760px){dialog.arbre{border:0;border-radius:0;width:100%;height:100%}.arbre-tete{flex-wrap:wrap;gap:8px 12px;padding:12px 16px 8px}.arbre-tete>div:first-child{flex:1 1 0}.arbre-tete h2{font-size:26px}.arbre-points{flex-basis:100%;order:3}.nom-branche{letter-spacing:.04em;overflow-wrap:anywhere;width:76px;padding:8px 4px 0 6px;font-size:11px}.arbre-corps{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.arbre-fiche{border-left:0;border-top:1px solid var(--encre);max-height:42vh;padding:16px}.arbre-fiche .effet{font-size:16px}}@media (prefers-reduced-motion:reduce){.cp-noeud{transition:none}}#ui>.pose-gare{background:var(--papier-haut);border:1px solid var(--trait-fort);border-radius:var(--rayon-2);pointer-events:auto;flex-direction:column;gap:6px;padding:6px;display:flex;position:absolute}.pose-gare .tuile{border:1px solid var(--trait-fort);border-radius:var(--rayon-2);background:var(--papier-haut);min-width:88px;min-height:88px;color:var(--encre);font:700 14px/1.1 var(--font-etroit);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px 10px;display:flex}.pose-gare .tuile svg{width:64px;height:48px}.pose-gare .tuile[aria-pressed=true]{border:2px solid var(--encre);padding:5px 9px}@media (hover:hover){.pose-gare .tuile:hover{background:var(--papier)}}.pose-gare .tuile:focus-visible,.pose-gare .puce:focus-visible{outline:var(--ep-focus) solid var(--encre);outline-offset:2px}.pose-gare .types{gap:4px;display:flex}.pose-gare .puce{border:1px solid var(--trait-fort);border-radius:var(--rayon-1);background:var(--papier-haut);min-height:32px;color:var(--encre-2);font:600 12px/1 var(--font-etroit);cursor:pointer;flex:1;padding:0 8px}.pose-gare .puce[aria-checked=true]{background:var(--encre);border-color:var(--encre);color:var(--encre-inverse)}@media (hover:hover){#map.pose-gare-active,#map.pose-gare-active canvas{cursor:none}}.bulle-gare{z-index:9;white-space:nowrap;pointer-events:none;background:var(--rouille-doux);border:1px solid var(--rouille);border-radius:var(--rayon-1);color:var(--rouille);font:650 13px/1.2 var(--font-texte);padding:5px 9px;position:fixed;transform:translate(-50%,-100%)}.bulle-gare[hidden],.pose-tactile[hidden]{display:none}.pose-tactile{z-index:9;gap:8px;width:max-content;display:flex;position:fixed;transform:translate(-50%)}@media (width<=760px){#ui>.pose-gare{flex-direction:row;align-self:flex-start;align-items:stretch;position:static}.pose-gare .types{flex-direction:column}}.cartouche{width:280px}.cartouche>header,.cartouche>summary{border-bottom:1px solid var(--trait);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.cartouche>header svg{width:20px;height:20px;color:var(--encre-2);flex:none}.cartouche .corps{flex-direction:column;gap:10px;padding:12px;display:flex}.plaque{font:800 16px/1 var(--font-plaque);letter-spacing:.07em;text-transform:uppercase;margin:0}#ui .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.topbar{flex-wrap:wrap;align-items:center;gap:14px;max-width:min(820px,100% - 300px);padding:8px 12px;display:flex}.topbar .city{font:800 20px/1 var(--font-plaque);letter-spacing:.07em;text-transform:uppercase}.tampon{border:2px solid var(--encre);border-radius:var(--rayon-1);background:var(--papier);flex-direction:column;align-items:center;padding:6px 10px 5px;display:inline-flex;transform:rotate(-2deg)}.tampon .an{letter-spacing:.02em;font-size:22px;font-weight:500;line-height:1}.tampon .reste{font:600 9px/1.3 var(--font-chiffre);letter-spacing:.14em;text-transform:uppercase;color:var(--encre-2)}.tampon.echeance{border-color:var(--rouille);color:var(--rouille)}.tampon.echeance .reste{color:var(--rouille)}.sauve{opacity:0;pointer-events:none;transition:opacity .3s}.sauve.on{opacity:1}.open-menu{gap:8px}.open-menu svg{width:20px;height:20px}.time-controls{gap:4px;display:flex}.time-controls .btn svg{fill:currentColor;stroke:none;width:16px;height:16px}.time-controls .btn[aria-pressed=true]{background:var(--encre);border-color:var(--encre);color:var(--encre-inverse)}.frise{flex:1;min-width:60px;height:10px;position:relative}.frise .rail{background:var(--trait-fort);height:2px;position:absolute;top:4px;left:0;right:0}.frise .fait{background:var(--encre);width:0;height:4px;position:absolute;top:3px;left:0}.pop{color:var(--encre-2);font-size:13px}.pop span{color:var(--encre);font-size:14px}#ui>.carbon{top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));position:absolute}.jauge .tete{justify-content:space-between;align-items:baseline;display:flex}.jauge .valeur{font-size:22px;font-weight:500}.jauge .etat{font:600 13px/1.2 var(--font-texte);color:var(--vert)}.jauge .piste{background:var(--calque);border:1px solid var(--trait-fort);height:10px;position:relative;overflow:hidden}.jauge .rempli{background:var(--vert);transition:width .32s var(--rame);position:absolute;inset:0 auto 0 0}.jauge.ambre .rempli{background:var(--ambre)}.jauge.ambre .etat{color:var(--ambre)}.jauge.rouille .rempli{background:repeating-linear-gradient(135deg, var(--rouille) 0 4px, var(--rouille-doux) 4px 6px)}.jauge.rouille .etat{color:var(--rouille)}.jauge .perte{color:var(--encre-2);font-size:12px}#ui>.prompt{background:var(--papier-haut);border-color:var(--encre);border-radius:var(--rayon-2);pointer-events:none;width:fit-content;max-width:min(460px,100%);margin:8px 0 0;padding:10px 14px;font-weight:650}.prompt[hidden]{display:none}#ui>.transports{left:max(12px, env(safe-area-inset-left));bottom:max(12px, env(safe-area-inset-bottom));width:auto;position:absolute}.modes{flex-wrap:wrap;flex-direction:row!important;gap:8px!important}.mode-col{flex-direction:column;align-items:center;gap:6px;display:flex}.mode{border-radius:var(--rayon-2);min-width:64px;min-height:64px;color:var(--encre);cursor:pointer;font:700 13px/1 var(--font-etroit);background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:8px 6px 6px;display:inline-flex}.mode svg{width:26px;height:26px}.mode .soulign{border-radius:2px;width:26px;height:4px}.mode[aria-pressed=true]{background:var(--papier-haut);border-color:var(--encre)}.mode:disabled{color:var(--encre-2);cursor:not-allowed}.mode:disabled .soulign{background:repeating-linear-gradient(90deg, var(--trait-fort) 0 3px, transparent 3px 6px)!important}.quota{border:1px solid var(--trait-fort);border-radius:var(--rayon-1);background:var(--papier-haut);white-space:nowrap;align-items:center;min-height:24px;padding:0 8px;font-size:11px;display:inline-flex}.quota.complet{color:var(--rouille);border-color:var(--rouille);background:var(--rouille-doux)}#ui>.lignes{right:max(12px, env(safe-area-inset-right));top:calc(max(12px, env(safe-area-inset-top)) + 150px);max-height:calc(100% - 330px);position:absolute;overflow:auto}.lignes>summary{cursor:pointer;list-style:none}.lignes>summary::-webkit-details-marker{display:none}.lignes:not([open])>summary{border-bottom:0}.ligne{grid-template-columns:26px 1fr auto;align-items:center;gap:10px;display:grid}.ligne+.ligne{border-top:1px solid var(--trait);padding-top:10px}.trait{border-radius:3px;align-self:stretch;width:6px;min-height:20px;display:inline-block}.ligne-texte{flex-direction:column;gap:2px;min-width:0;display:flex}.ligne-texte strong{font:700 15px/1.1 var(--font-etroit)}.ligne-texte span{color:var(--encre-2);font-size:12px}.ligne-texte .alerte{color:var(--rouille)}.rames{gap:4px;display:flex}.ligne.masquee .ligne-texte,.ligne.masquee .indice{opacity:.45}.ligne .vue svg{width:16px;height:16px}.ligne .vue[aria-pressed=false]{color:var(--encre-2);border-style:dashed}.lignes-vue{border-bottom:1px solid var(--trait);flex-wrap:wrap;align-items:center;gap:4px;padding-bottom:8px;display:flex}.lignes-vue .etiquette{margin-right:auto}.btn.mini.texte{width:auto;padding:0 8px;font-size:12px}.btn.mini{min-width:32px;min-height:32px;padding:0;font-size:16px}.vide{color:var(--encre-2);margin:0;font-size:13px}#ui>.map-tools{right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:4px;padding:4px;display:flex;position:absolute}.map-tools [data-zoom]{padding:0;font-size:20px}.map-tools .density{padding:0 8px;font-size:13px}.map-tools .density.on{border-color:var(--encre);background:var(--encre);color:var(--encre-inverse)}.zoom-level{font:500 12px var(--font-chiffre);color:var(--encre-2)}#ui>.station-menu{background:var(--papier-haut);border:1px solid var(--encre);border-radius:var(--rayon-2);flex-direction:column;gap:4px;width:max-content;max-width:280px;padding:6px;display:flex;position:absolute;transform:translate(-50%)}.station-menu[hidden]{display:none!important}.station-menu .btn{justify-content:flex-start;gap:8px;min-height:40px;font-size:14px}.station-menu .trait{align-self:center;width:14px;height:5px;min-height:0}@media (width<=760px){#ui{flex-direction:column;align-items:stretch;gap:8px;display:flex}.topbar{gap:10px;max-width:none;position:relative}.sauve{position:absolute;top:8px;left:15px}.topbar .frise,.pop{display:none}#ui>.carbon{width:auto;position:static}.carbon>header{display:none}.carbon .corps{flex-direction:row;align-items:center;padding:8px 12px}.carbon .tete{gap:8px}.carbon .piste{flex:1}.carbon .perte{display:none}#ui>.prompt{margin:0}#ui>.lignes{width:auto;max-height:40vh;position:static}#ui>.transports{right:calc(max(12px, env(safe-area-inset-right)) + 64px)}.mode{min-width:56px;min-height:56px}}@media (prefers-reduced-motion:reduce){.jauge .rempli{transition:none}}.lignes>footer{border-top:1px solid var(--trait);padding:6px 12px}.achats{flex-direction:column;gap:6px;display:flex;padding-bottom:10px!important}.achat-rames,.achat-lignes{flex-wrap:wrap;gap:4px;display:flex}.btn.achat{gap:6px;min-height:32px;padding:0 10px;font-size:12px}.btn.achat .soulign{border-radius:2px;width:4px;height:14px}.btn.achat:disabled{color:var(--encre-2);cursor:not-allowed;opacity:.55}@media (width<=760px){#ui>.transports{left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom))}.transports>header{display:none}.transports .corps{padding:6px}.modes{flex-wrap:nowrap;justify-content:space-between;gap:2px!important}.mode-col{flex:1;gap:4px;min-width:0}.mode{width:100%;min-width:0;min-height:52px;padding:6px 2px 4px;font-size:12px}.quota{min-height:20px;padding:0 4px;font-size:9.5px}#ui>.map-tools{bottom:calc(max(8px, env(safe-area-inset-bottom)) + 108px);background:0 0;border:0;padding:0;right:8px}.map-tools [data-zoom],.map-tools .zoom-level{display:none}.time-controls .btn{min-width:40px}.mode-col:has(.mode:disabled) .quota{visibility:hidden}.quota .long{display:none}}dialog.settings{border:1px solid var(--encre);border-radius:var(--rayon-2);background:var(--papier-haut);width:min(440px,100% - 32px);min-width:min(380px,100% - 32px);color:var(--encre);opacity:1;transform-origin:50% 0;transition:opacity .24s cubic-bezier(.22, 1, .36, 1), transform .24s cubic-bezier(.22, 1, .36, 1), overlay .24s allow-discrete, display .24s allow-discrete;padding:0;transform:none}dialog.settings:not([open]){opacity:0;transition-duration:.16s;transition-timing-function:cubic-bezier(.4,0,1,1);transform:translateY(4px)}@starting-style{dialog.settings[open]{opacity:0;transform:translateY(8px)scale(.98)}}dialog.settings::backdrop{transition:background-color .24s cubic-bezier(.22, 1, .36, 1), overlay .24s allow-discrete, display .24s allow-discrete;background:#14223a59}dialog.settings:not([open])::backdrop{background:#14223a00;transition-duration:.16s}@starting-style{dialog.settings[open]::backdrop{background:#14223a00}}.open-settings svg{transition:transform .32s var(--rame)}.open-settings[aria-expanded=true] svg{transform:rotate(60deg)}.settings-body{flex-direction:column;gap:16px;padding:24px;display:flex}.settings-body header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-body header>div{flex-direction:column;gap:6px;display:flex}.settings-body h2{font:800 30px/1 var(--font-plaque);text-transform:uppercase;margin:0}.settings-body .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.icon-btn{background:0 0;border-color:#0000;padding:0}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.settings-list{margin:0;padding:0;list-style:none}.settings-list>li{border-top:1px solid var(--trait);padding:12px 0}.settings-list>li:last-child{border-bottom:1px solid var(--trait)}.row-icon{color:var(--encre-2);display:flex}.slider-row{grid-template-columns:20px 1fr 5ch;align-items:center;gap:2px 10px;display:grid}.slider-row label{font-weight:650}.slider-row output{color:var(--encre-2);justify-self:end;font-size:14px}.slider-hint{color:var(--encre-2);grid-column:2/-1;font-size:13px}.slider-row input[type=range]{width:100%;height:var(--cible);appearance:none;cursor:pointer;background:0 0;grid-column:1/-1;margin:0}.slider-row input[type=range]::-webkit-slider-runnable-track{border:1px solid var(--trait-fort);background:linear-gradient(var(--encre), var(--encre)) 0 / var(--fill,50%) 100% no-repeat, var(--calque);border-radius:2px;height:4px}.slider-row input[type=range]::-moz-range-track{border:1px solid var(--trait-fort);background:var(--calque);border-radius:2px;height:4px}.slider-row input[type=range]::-moz-range-progress{background:var(--encre);border-radius:2px;height:4px}.slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:2.5px solid var(--encre);background:radial-gradient(circle, var(--encre) 0 3px, var(--papier-haut) 3.5px);width:20px;height:20px;transition:transform .16s var(--rame);border-radius:50%;margin-top:-9px}.slider-row input[type=range]::-moz-range-thumb{border:2.5px solid var(--encre);background:radial-gradient(circle, var(--encre) 0 3px, var(--papier-haut) 3.5px);width:15px;height:15px;transition:transform .16s var(--rame);border-radius:50%}@media (hover:hover){.slider-row input[type=range]:not(:disabled):hover::-webkit-slider-thumb{transform:scale(1.1)}.slider-row input[type=range]:not(:disabled):hover::-moz-range-thumb{transform:scale(1.1)}}.slider-row input[type=range].dragging::-webkit-slider-thumb{background:radial-gradient(circle, var(--papier-haut) 0 3px, var(--encre) 3.5px)}.slider-row input[type=range].dragging::-moz-range-thumb{background:radial-gradient(circle, var(--papier-haut) 0 3px, var(--encre) 3.5px)}.slider-row input[type=range]:focus-visible{outline:none}.slider-row input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--papier-haut), 0 0 0 4px var(--encre)}.slider-row input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--papier-haut), 0 0 0 4px var(--encre)}.slider-row input[type=range]:disabled{cursor:not-allowed}.slider-row input[type=range]:disabled::-webkit-slider-runnable-track{background:repeating-linear-gradient(90deg, var(--trait-fort) 0 4px, transparent 4px 8px);border-color:#0000}.slider-row input[type=range]:disabled::-moz-range-track{background:repeating-linear-gradient(90deg, var(--trait-fort) 0 4px, transparent 4px 8px);border-color:#0000}.slider-row input[type=range]:disabled::-moz-range-progress{background:0 0}.slider-row input[type=range]:disabled::-webkit-slider-thumb{border-color:var(--encre-2);background:radial-gradient(circle, var(--encre-2) 0 3px, var(--papier-haut) 3.5px)}.slider-row input[type=range]:disabled::-moz-range-thumb{border-color:var(--encre-2);background:radial-gradient(circle, var(--encre-2) 0 3px, var(--papier-haut) 3.5px)}.switch-row{min-height:var(--cible);grid-template-columns:20px 1fr auto auto;align-items:center;gap:10px;display:grid}.switch-label{font-weight:650}.switch-state{color:var(--encre-2);font-weight:650}.switch{width:44px;height:var(--cible);cursor:pointer;background:0 0;border:0;padding:0;position:relative}.switch:before{content:"";border:1.5px solid var(--trait-fort);background:var(--calque);box-sizing:border-box;height:24px;transition:background-color .16s var(--rame), border-color .16s var(--rame);border-radius:999px;position:absolute;top:10px;left:0;right:0}.switch span{border:1.5px solid var(--encre);background:var(--papier-haut);box-sizing:border-box;width:18px;height:18px;transition:transform .16s var(--rame);border-radius:50%;position:absolute;top:13px;left:3px}.switch[aria-checked=true]:before{background:var(--encre);border-color:var(--encre)}.switch[aria-checked=true] span{border-color:var(--papier-haut);transform:translate(20px)}.switch:focus-visible{outline:none}.switch:focus-visible:before{box-shadow:0 0 0 2px var(--papier-haut), 0 0 0 4px var(--encre)}.settings-body footer{justify-content:flex-end;display:flex}@media (prefers-reduced-motion:reduce){dialog.settings,dialog.settings:not([open]){transition-property:opacity,overlay,display;transition-duration:.12s;transform:none}@starting-style{dialog.settings[open]{transform:none}}.open-settings svg,.switch:before,.switch span{transition:none}.slider-row input[type=range]::-webkit-slider-thumb{transition:none}.slider-row input[type=range]::-moz-range-thumb{transition:none}}.emplacements{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.fiche{background:var(--papier-haut);border:1px solid var(--trait);border-radius:var(--rayon-0);flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex;position:relative}.fiche.courante{border:2px solid var(--encre);padding:11px}.fiche.vide,.fiche.abimee{background:0 0;border-style:dashed}.fiche h3{font:800 22px/1 var(--font-plaque);letter-spacing:.04em;text-transform:uppercase;overflow-wrap:anywhere;margin:0}.fiche .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.fiche-meta,.fiche-date{color:var(--encre-2);margin:0;font-size:13px;line-height:1.35}.fiche-meta .sain{color:var(--vert)}.fiche-meta .ambre{color:var(--ambre)}.fiche-meta .rouille{color:var(--rouille)}.fiche-alerte{color:var(--ambre);margin:0;font-size:12px;line-height:1.35}.apercu{aspect-ratio:16/10;border:1px solid var(--trait);background:var(--calque);margin-bottom:4px;position:relative;overflow:hidden}.apercu canvas,.apercu img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.tampon-an{border:2px solid var(--encre);border-radius:var(--rayon-1);background:var(--papier);padding:3px 7px 2px;font-size:15px;line-height:1;position:absolute;bottom:8px;right:8px;transform:rotate(-2deg)}.fiche-vide{min-height:120px;color:var(--encre-2);font:600 15px/1.2 var(--font-etroit);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.fiche-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:6px;display:flex}.fiche-actions .principal{flex:1;gap:8px}.fiche-actions .principal svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.fiche-actions .icon-btn svg{width:20px;height:20px}.fiche-actions .icon-btn{color:var(--encre-2)}.fiche .en-cours{color:var(--encre)!important}.fiche.vide>.btn{margin-top:auto}.confirmer{background:color-mix(in srgb, var(--papier-haut) 94%, transparent);font:600 15px/1.3 var(--font-etroit);flex-direction:column;justify-content:flex-end;gap:8px;padding:12px;display:flex;position:absolute;inset:0}.confirmer[hidden]{display:none}.confirmer span{margin-bottom:auto;padding-top:24px}.confirmer .btn{width:100%}dialog.fenetre-emplacements{width:min(960px,100% - 32px)}.fenetre-tete{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.fenetre-tete .icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}@media (width<=760px){.emplacements{grid-template-columns:1fr}.fiche h3{font-size:17px}.fiche:not(.vide):not(.abimee){grid-template-columns:92px minmax(0,1fr);column-gap:12px;display:grid}.fiche:not(.vide):not(.abimee) .apercu{grid-row:1/span 4;align-self:start;margin:0}.fiche:not(.vide):not(.abimee) .fiche-actions,.fiche:not(.vide):not(.abimee) .fiche-alerte{grid-column:1/-1}.fiche-vide{flex-direction:row;min-height:56px}}dialog.menu-partie{width:min(360px,100% - 32px)}.menu-boutons{flex-direction:column;gap:8px;display:flex}.menu-boutons .btn{min-height:var(--cible);justify-content:flex-start;gap:10px;font-size:16px}.menu-boutons .btn.principal{justify-content:center}.menu-boutons .btn svg{width:20px;height:20px}.tuto-voile{z-index:8;position:fixed;inset:0}.tuto-voile.sombre{background:#14223a4d}.tuto-voile[hidden],.tuto-anneau[hidden],.tuto-fiche [hidden]{display:none}.tuto-anneau{z-index:8;pointer-events:none;border:2px solid var(--encre);border-radius:var(--rayon-2);position:fixed;box-shadow:0 0 0 100vmax #14223a4d}.tuto-anneau.attente{box-shadow:none;animation:tuto-appel 1.6s var(--rame) infinite}@keyframes tuto-appel{0%{box-shadow:0 0 #14223a73}70%,to{box-shadow:0 0 0 12px #14223a00}}.tuto-fiche{z-index:8;background:var(--papier-haut);border:1px solid var(--encre);border-radius:var(--rayon-2);width:min(380px,100vw - 16px);color:var(--encre);flex-direction:column;gap:10px;padding:16px;display:flex;position:fixed}.tuto-tete{justify-content:space-between;gap:8px;display:flex}.tuto-etiquette,.tuto-compte{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.tuto-fiche h2{font:800 26px/1 var(--font-plaque);text-transform:uppercase;margin:0}.tuto-fiche p{margin:0;font-size:15px;line-height:1.45}.tuto-ligne{justify-content:space-between;align-items:center;height:10px;display:flex;position:relative}.tuto-ligne:before{content:"";background:var(--trait-fort);height:2px;position:absolute;top:4px;left:0;right:0}.tuto-ligne span{border:2px solid var(--trait-fort);background:var(--papier-haut);border-radius:50%;width:10px;height:10px;position:relative}.tuto-ligne span.fait{border-color:var(--encre);background:var(--encre)}.tuto-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.tuto-actions .passer{color:var(--encre-2);margin-right:auto;padding:0 8px}.tuto-actions .replier{display:none}@media (width<=760px){.tuto-fiche{gap:8px;padding:12px}.tuto-fiche h2{font-size:22px}.tuto-fiche p{font-size:14px}.tuto-fiche.action .replier{display:inline-flex}.tuto-fiche.action.repliee :is(.tuto-ligne,p){display:none}.tuto-actions .btn{padding-inline:10px}}@media (prefers-reduced-motion:reduce){.tuto-anneau.attente{animation:none}}#creation:empty{display:none}#creation{z-index:9;background-color:var(--calque);background-image:linear-gradient(var(--calque-trame) 1px, transparent 1px), linear-gradient(90deg, var(--calque-trame) 1px, transparent 1px);background-size:40px 40px;place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.attente{flex-direction:column;align-items:center;gap:18px;width:min(580px,100% - 32px);padding:24px 0;transition:opacity .24s cubic-bezier(.22,1,.36,1);display:flex}.attente.sortie{opacity:0}.attente .etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.attente h1{font:800 44px/1 var(--font-plaque);text-transform:uppercase;text-align:center;margin:0}.plan{aspect-ratio:16/10;background:var(--plan-papier);border:1px solid var(--trait);width:100%}.plan .papier{fill:var(--plan-papier)}.plan .berge,.plan .eau{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:trace .9s var(--rame) forwards}.plan .berge{stroke:var(--plan-berge);stroke-width:41.6px}.plan .eau{stroke:var(--plan-eau);stroke-width:40px}.plan line{stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:trace .4s var(--rame) forwards}.plan .rue{stroke:var(--plan-rue);stroke-width:5.2px}.plan .axe{stroke:var(--plan-rue);stroke-width:7.4px}.plan .rue.bord{stroke:var(--plan-rue-bord);stroke-width:6.6px}.plan .axe.bord{stroke:var(--plan-rue-bord);stroke-width:8.8px}.plan .maison{opacity:0;transform-box:fill-box;transform-origin:50%;animation:.35s cubic-bezier(.22,1,.36,1) forwards surgit}.plan .maison polygon{fill:var(--plan-bati);stroke:var(--plan-trait);stroke-width:.7px}.plan .maison polygon.ombre{fill:var(--plan-ombre);stroke:none}.plan .touffe{opacity:0;transform-box:fill-box;transform-origin:50%;animation:.45s cubic-bezier(.22,1,.36,1) forwards pousse}@keyframes trace{to{stroke-dashoffset:0}}@keyframes apparait{to{opacity:1}}@keyframes pousse{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}@keyframes surgit{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.progres{grid-template-columns:repeat(5,1fr);width:100%;margin:0;padding:0;list-style:none;display:grid;position:relative}.progres .rail,.progres .avance{height:3px;position:absolute;top:8px;left:10%}.progres .rail{background:var(--trait-fort);right:10%}.progres .avance{width:calc(80% * var(--p));background:var(--encre);transition:width .32s var(--rame)}.station{flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.poincon{border:2.5px solid var(--trait-fort);background:var(--papier-haut);box-sizing:border-box;border-radius:50%;width:18px;height:18px}.station.encours .poincon{border-color:var(--encre);background:radial-gradient(circle, var(--encre) 0 2.5px, var(--papier-haut) 3px)}.station.fait .poincon{border-color:var(--encre);background:var(--encre)}.station .nom{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.1em;text-transform:uppercase;color:var(--encre-2)}.station.encours .nom,.station.fait .nom{color:var(--encre)}.attente .etat{min-height:1.4em;color:var(--encre-2);margin:0;font-size:15px}@media (width<=480px){.attente h1{font-size:34px}.station .nom{letter-spacing:.04em;font-size:9px}}@media (prefers-reduced-motion:reduce){.plan *{opacity:1!important;stroke-dashoffset:0!important;animation:none!important;transform:none!important}.attente,.progres .avance{transition:none}}#intro:empty{display:none}#intro{z-index:10;-webkit-overflow-scrolling:touch;background-color:var(--calque);background-image:linear-gradient(var(--calque-trame) 1px, transparent 1px), linear-gradient(90deg, var(--calque-trame) 1px, transparent 1px);background-size:40px 40px;position:fixed;inset:0;overflow-y:auto}.intro{max-width:1600px;min-height:100%;padding:max(24px, env(safe-area-inset-top)) max(48px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(48px, env(safe-area-inset-left));flex-direction:column;gap:clamp(16px,2.6vh,28px);margin:0 auto;display:flex}.etiquette{font:600 11px/1.2 var(--font-chiffre);letter-spacing:.12em;text-transform:uppercase;color:var(--encre-2)}.intro h1{font:800 clamp(44px, min(5.2vw, 8.4vh), 84px)/.92 var(--font-plaque);letter-spacing:.005em;text-transform:uppercase;margin:0}.intro h2{font:800 16px/1 var(--font-plaque);letter-spacing:.07em;text-transform:uppercase;margin:0}.pitch{max-width:680px;margin:0;font-size:18px;line-height:1.5}.intro .card{background:var(--papier);border:1px solid var(--trait);border-radius:var(--rayon-0)}.intro-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand img{border-radius:8px;display:block}.brand>div{flex-direction:column;gap:3px;display:flex}.logotype{font:900 30px/.9 var(--font-plaque);letter-spacing:.01em;text-transform:uppercase}.open-settings{gap:8px}.head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.open-saves{gap:8px}.open-saves svg{width:20px;height:20px}.continue{font:800 18px/1 var(--font-plaque);text-transform:uppercase;letter-spacing:.04em;gap:10px}.continue-ville{font:600 14px/1 var(--font-etroit);text-transform:none;letter-spacing:0;opacity:.85}.continue svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.open-settings svg,.icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.intro-top{grid-template-columns:minmax(0,1.5fr) minmax(360px,1fr);align-items:stretch;gap:clamp(24px,3vw,56px);display:grid}.intro-pitch{flex-direction:column;gap:clamp(14px,2.2vh,22px);display:flex}.goals{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:auto;display:grid}.goal{gap:12px;padding:14px 16px;display:flex}.goal svg{fill:none;width:24px;height:24px;stroke:var(--encre);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.goal.danger svg{stroke:var(--rouille)}.goal div{flex-direction:column;gap:4px;display:flex}.goal strong{font:700 16px/1.1 var(--font-etroit)}.goal span{color:var(--encre-2);font-size:13px;line-height:1.4}.intro-city{flex-direction:column;gap:10px;padding:20px;display:flex;background:var(--papier-haut)!important}.field-label{font:800 16px/1 var(--font-plaque);letter-spacing:.07em;text-transform:uppercase}.name-field{position:relative}.name-field:after{content:"";border:3px solid var(--vert);opacity:0;pointer-events:none;border-radius:6px;position:absolute;inset:-4px}.name-field.hint-on:after{animation:2.4s cubic-bezier(.22,1,.36,1) 1.2s 3 name-halo}.pencil{pointer-events:none;fill:none;width:20px;height:20px;stroke:var(--encre-2);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;transform-origin:20% 80%;position:absolute;top:16px;right:14px}.name-field.hint-on .pencil{animation:2.4s ease-in-out 1.2s 3 pencil-write}.name-field:focus-within .pencil{stroke:var(--encre)}@keyframes pencil-write{0%,40%,to{transform:none}8%{transform:translate(-2px,1px)rotate(-14deg)}16%{transform:translate(1px,-1px)rotate(6deg)}24%{transform:translate(-2px,1px)rotate(-12deg)}32%{transform:translate(0)rotate(3deg)}}@keyframes name-halo{0%{opacity:0;transform:scale(1)}12%{opacity:.8;transform:scale(1)}55%,to{opacity:0;transform:scale(1.05,1.3)}}#cname{border:2px solid var(--encre);border-radius:var(--rayon-1);background:var(--papier-haut);width:100%;height:52px;font:700 26px/1 var(--font-etroit);color:var(--encre);padding:0 46px 0 14px}.hint{color:var(--encre-2);font-size:13px;font-weight:500}.preview-head{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.preview-head .etiquette{overflow-wrap:anywhere;min-width:0}.reroll{border:1px solid var(--trait-fort);border-radius:var(--rayon-2);background:var(--papier-haut);height:34px;color:var(--encre);font:650 14px/1 var(--font-texte);cursor:pointer;white-space:nowrap;transition:background-color .16s, transform .16s var(--rame);flex:none;align-items:center;gap:6px;padding:0 12px 0 10px;display:inline-flex;position:relative}.reroll:before{content:"";position:absolute;inset:-5px}.reroll:after{content:"";border:3px solid var(--vert);opacity:0;pointer-events:none;border-radius:9px;position:absolute;inset:-4px}.reroll svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}@media (hover:hover){.reroll:hover{background:var(--papier)}}.reroll:active{transform:translateY(1px)}.reroll.hint-on:after{animation:2.4s cubic-bezier(.22,1,.36,1) 8.4s 2 name-halo}.reroll.hint-on svg{animation:reroll-turn 2.4s var(--rame) 8.4s 2}.reroll.spin svg{animation:reroll-spin .32s var(--rame)}@keyframes reroll-turn{0%{transform:none}30%,to{transform:rotate(180deg)}}@keyframes reroll-spin{0%{transform:rotate(-180deg)}}.preview{border:1px solid var(--trait);background:var(--calque);flex:1;min-height:150px;position:relative;overflow:hidden}.preview canvas{width:100%;height:100%;transition:opacity .16s;display:block;position:absolute;inset:0}.preview.swap canvas{opacity:0}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stats div{flex-direction:column;gap:4px;display:flex}.stats strong{font:500 22px/1 var(--font-chiffre);font-variant-numeric:tabular-nums}.stats span{color:var(--encre-2);font-size:13px;font-weight:500}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-head span{color:var(--encre-2);font-size:13px;font-weight:500}.intro-timeline{flex-direction:column;gap:12px;display:flex}.tl{height:110px;animation:.5s ease-out .1s both tl-fade;position:relative}.tl ol{margin:0;padding:0;list-style:none}.tl-tick{left:var(--pos);background:var(--trait-fort);width:1px;height:6px;margin-left:-.5px;position:absolute;top:26px}.tl-tick.major{background:var(--encre-2);height:10px;top:22px}.tl-tick span{color:var(--encre-2);white-space:nowrap;font-size:11px;font-weight:500;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.tl-tick.at-start span{left:0;transform:none}.tl-tick.at-end span{left:auto;right:0;transform:none}.tl-track,.tl-fill{height:4px;position:absolute;top:36px;left:0;right:0}.tl-track{background:var(--trait)}.tl-fill{background:var(--encre);transform-origin:0;animation:tl-draw var(--dur) linear var(--start) both}.tl-head{pointer-events:none;height:10px;animation:tl-head var(--dur) linear var(--start) both;position:absolute;top:33px;left:0;right:0}.tl-head span{background:var(--encre);width:10px;height:10px;box-shadow:0 0 0 3px var(--calque);animation:tl-fade .2s ease-out var(--start) both, tl-out .3s cubic-bezier(.4, 0, 1, 1) calc(var(--start) + var(--dur)) forwards;border-radius:50%;position:absolute;top:0;right:-5px}.tl-step{--ring:var(--encre);--fill:var(--papier-haut);left:var(--pos);text-align:center;flex-direction:column;align-items:center;gap:7px;width:150px;margin-left:-75px;display:flex;position:absolute;top:22px}.tl-step.first{--fill:var(--encre);text-align:left;align-items:flex-start;width:120px;margin-left:0}.tl-step.end{--ring:var(--rouille);text-align:right;align-items:flex-end;margin-left:-150px}.tl-dot{width:18px;height:18px;margin-top:7px;display:block;position:relative}.tl-halo,.tl-ring{border-radius:50%;position:absolute;inset:0}.tl-halo{background:var(--ring);opacity:0;animation:tl-halo .7s cubic-bezier(.22, 1, .36, 1) var(--t) both}.tl-ring{background:var(--fill);border:2.5px solid var(--ring);animation:tl-ring .3s ease-out var(--t) both, tl-pop .45s cubic-bezier(.22, 1, .36, 1) var(--t) both}.tl-year{font:500 14px/1 var(--font-chiffre);color:var(--ring);animation:tl-rise .4s cubic-bezier(.22, 1, .36, 1) calc(var(--t) + 50ms) both}.tl-label{font:600 14px/1.25 var(--font-etroit);color:var(--encre-2);animation:tl-rise .5s cubic-bezier(.22, 1, .36, 1) calc(var(--t) + .15s) both}@keyframes tl-fade{0%{opacity:0}}@keyframes tl-rise{0%{opacity:0;transform:translateY(6px)}}@keyframes tl-ring{0%{border-color:var(--trait);background:var(--papier-haut)}}@keyframes tl-pop{40%{transform:scale(1.22)}}@keyframes tl-halo{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@keyframes tl-out{to{opacity:0;transform:scale(.4)}}@keyframes tl-draw{0%{transform:scaleX(0)}}@keyframes tl-head{0%{transform:translate(-100%)}}@keyframes tl-draw-v{0%{transform:scaleY(0)}}@keyframes tl-head-v{0%{transform:translateY(-100%)}}.intro-bottom{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.levels-wrap{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.levels-wrap .section-head{justify-content:flex-start}.levels{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.level{border:1px solid var(--trait-fort);border-radius:var(--rayon-2);background:var(--papier);color:var(--encre);font-family:var(--font-texte);text-align:left;cursor:pointer;flex-direction:column;gap:7px;padding:12px 14px;transition:background-color .16s;display:flex}@media (hover:hover){.level:not(.on):hover{background:var(--papier-haut)}}.level.on{border:2px solid var(--encre);background:var(--papier-haut);padding:11px 13px}.level-name{width:100%;font:800 20px/1 var(--font-plaque);letter-spacing:.04em;text-transform:uppercase;align-items:center;display:flex}.check{visibility:hidden;background:var(--encre);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;margin-left:auto;display:flex}.check svg{fill:none;width:13px;height:13px;stroke:var(--encre-inverse);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.level.on .check{visibility:visible}.reach{justify-content:space-between;font-size:13px;font-weight:650;display:flex}.reach .mono{color:var(--c)}.bar{background:var(--calque);border:1px solid var(--trait);height:6px;display:block;overflow:hidden}.bar span{background:var(--c);height:100%;display:block}.rules{font:500 12px/1.4 var(--font-texte);color:var(--encre-2)}.desc{font-size:13px;font-weight:650;line-height:1.4}@media (hover:hover){.btn.principal:hover{background:var(--encre);opacity:.9}}.start{min-width:300px;height:72px;font:800 26px/1 var(--font-plaque);text-transform:uppercase;letter-spacing:.04em;flex:none;gap:0;padding:0;position:relative}.start-label{padding:0 24px 0 30px}.start-annee{border-left:2px dashed color-mix(in srgb, var(--encre-inverse) 45%, transparent);font:500 24px/1 var(--font-chiffre);letter-spacing:0;align-self:stretch;align-items:center;gap:12px;padding:0 26px 0 22px;display:flex}.start svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px;transition:transform .24s var(--rame)}@media (hover:hover){.start:hover svg{transform:translate(5px)}}.start:after{content:"";border:3px solid var(--encre);opacity:0;pointer-events:none;border-radius:9px;animation:2.4s cubic-bezier(.22,1,.36,1) 13.4s 2 name-halo;position:absolute;inset:-5px}@media (width>=1161px){.intro-top{flex:1 0 auto}}@media (width<=960px){.intro{padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}.intro-top{grid-template-columns:1fr;gap:24px}.goals,.levels{grid-template-columns:1fr}.preview{flex:none;height:170px}.intro-bottom{flex-direction:column;align-items:stretch}.intro{padding-bottom:calc(72px + 2 * max(12px, env(safe-area-inset-bottom)) + 12px)}.start{z-index:2;min-width:0;left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));position:fixed}.start-label{text-align:center;flex:1}}@media (width<=640px){.intro{padding-left:16px;padding-right:16px}.pitch{font-size:16px}#cname{font-size:22px}.open-settings span,.open-saves .libelle,.continue-ville{display:none}}@media (width<=1160px){.tl{height:300px;margin-left:4px}.tl-scale{display:none}.tl-track,.tl-fill{width:4px;height:auto;inset:0 auto 23px 7px}.tl-fill{transform-origin:top;animation-name:tl-draw-v}.tl-head{width:10px;height:auto;animation-name:tl-head-v;inset:0 auto 23px 4px}.tl-head span{inset:auto auto -5px 0}.tl-step,.tl-step.first,.tl-step.end{left:0;top:var(--pos);text-align:left;grid-template-columns:18px 44px 1fr;align-items:center;gap:10px;width:auto;margin:-16px 0 0;display:grid;right:0}.tl-step.first{margin-top:0}.tl-step.end{margin-top:-32px}.tl-dot{margin-top:0}}@media (prefers-reduced-motion:reduce){.tl *{animation:none!important}.tl-head{display:none}.tl{animation:.4s ease-out both tl-fade!important}.name-field.hint-on:after,.name-field.hint-on .pencil,.reroll:after,.reroll svg,.start:after{animation:none!important}.start svg,.preview canvas{transition:none}}.intro{z-index:1;position:relative}.intro-bg{z-index:0;pointer-events:none;opacity:.55;position:fixed;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(120% 90% at 78% 30%,#000 25%,#0000 70%);mask-image:radial-gradient(120% 90% at 78% 30%,#000 25%,#0000 70%)}.bg-frame{object-fit:cover;object-position:62% 45%;opacity:0;width:100%;height:100%;transition:opacity .6s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.bg-frame.on{opacity:1}@media (prefers-reduced-motion:reduce){.bg-frame{transition:none}}@media (width<=640px){.intro-bg{opacity:.3}}[data-epoque="1850"]{--calque:#ece4d2;--calque-trame:#e3d9c2;--papier:#f5efe0;--papier-haut:#fbf7ec;--trait:#b9a98a;--trait-fort:#7e6c4c;--encre:#2a2118;--encre-2:#5d4f3c;--encre-inverse:#f5efe0;--accent:#6e2c1f;--sur-accent:#f5efe0;--vert:#3f6b2c;--vert-doux:#e8edd9;--ambre:#83560f;--rouille:#8f3213;--rouille-doux:#f5e2d6;--font-plaque:"Bodoni Moda", Georgia, serif;--font-etroit:Spectral, Georgia, serif;--font-texte:Spectral, Georgia, serif;--font-chiffre:Spectral, Georgia, serif;--font-afficheur:Spectral, Georgia, serif;--rayon-0:0;--rayon-1:0;--rayon-2:0;--plan-papier:#f3ecdc;--plan-berge:#7e8a80;--plan-eau:#dde3dc;--plan-rue:#fbf7ec;--plan-rue-bord:#a8997c;--plan-bati:#f7f1e3;--plan-trait:#5d4f3c;--plan-ombre:#cfc3a8}[data-epoque="1900"]{--calque:#0f2f57;--calque-trame:#143863;--papier:#16406f;--papier-haut:#1c4d83;--trait:#5f83a8;--trait-fort:#c9d6de;--encre:#f6f1e4;--encre-2:#cdd6d6;--encre-inverse:#0f2f57;--accent:#e8c15a;--sur-accent:#0f2f57;--vert:#8fdcae;--vert-doux:#1b4c52;--ambre:#f0c969;--rouille:#ffb199;--rouille-doux:#4a2b3a;--font-plaque:Federo, Georgia, serif;--font-etroit:"Alegreya Sans", system-ui, sans-serif;--font-texte:"Alegreya Sans", system-ui, sans-serif;--font-chiffre:"Alegreya Sans", system-ui, sans-serif;--font-afficheur:"Alegreya Sans", system-ui, sans-serif;--rayon-0:10px;--rayon-1:6px;--rayon-2:8px;--plan-papier:#f4f0e4;--plan-berge:#5f7f98;--plan-eau:#d6e4ea;--plan-rue:#fff;--plan-rue-bord:#9fa6a6;--plan-bati:#eef0ea;--plan-trait:#4b5a6a;--plan-ombre:#c5ccd0}[data-epoque="1950"]{--calque:#f1efe9;--calque-trame:#e8e5dd;--papier:#fbfaf6;--papier-haut:#fff;--trait:#b8b5ac;--trait-fort:#1c1c1c;--encre:#1c1c1c;--encre-2:#55534d;--encre-inverse:#fbfaf6;--accent:#c8321e;--sur-accent:#fff;--vert:#1f6b43;--vert-doux:#e2eee6;--ambre:#8a5a0a;--rouille:#b4360f;--rouille-doux:#fae8e0;--font-plaque:Jost, Futura, sans-serif;--font-etroit:Jost, Futura, sans-serif;--font-texte:Jost, Futura, sans-serif;--font-chiffre:"Courier Prime", Courier, monospace;--font-afficheur:"Courier Prime", Courier, monospace;--rayon-0:0;--rayon-1:0;--rayon-2:0;--plan-papier:#f7f5ef;--plan-berge:#7d8c94;--plan-eau:#dce6ea;--plan-rue:#fff;--plan-rue-bord:#a7a39a;--plan-bati:#fff;--plan-trait:#55534d;--plan-ombre:#c9c6bc}[data-epoque="1980"]{--calque:#0b1714;--calque-trame:#10221d;--papier:#0f1f1b;--papier-haut:#14292a;--trait:#2a4a40;--trait-fort:#5fae8a;--encre:#c8f5d8;--encre-2:#86c2a2;--encre-inverse:#0b1714;--accent:#ffb000;--sur-accent:#0b1714;--vert:#7df0a8;--vert-doux:#12352a;--ambre:#ffb000;--rouille:#ff8a6c;--rouille-doux:#3a1c14;--font-plaque:VT323, monospace;--font-etroit:"IBM Plex Sans Condensed", "Arial Narrow", sans-serif;--font-texte:"IBM Plex Sans Condensed", "Arial Narrow", sans-serif;--font-chiffre:"IBM Plex Mono", monospace;--font-afficheur:VT323, monospace;--rayon-0:0;--rayon-1:0;--rayon-2:0;--plan-papier:#0e1c19;--plan-berge:#2c6b7a;--plan-eau:#0a2a33;--plan-rue:#1d3a32;--plan-rue-bord:#31564a;--plan-bati:#1b3a33;--plan-trait:#5fae8a;--plan-ombre:#07100e}[data-epoque="2050"]{--calque:#eef1ee;--calque-trame:#e6eae6;--papier:#fafbf9;--papier-haut:#fff;--trait:#d4d9d4;--trait-fort:#7d877f;--encre:#16201b;--encre-2:#4d5a52;--encre-inverse:#fafbf9;--accent:#1f6f5c;--sur-accent:#fff;--vert:#1f6f5c;--vert-doux:#e2f0eb;--ambre:#8a5a0a;--rouille:#b4471a;--rouille-doux:#fbece4;--font-plaque:Geist, system-ui, sans-serif;--font-etroit:Geist, system-ui, sans-serif;--font-texte:Geist, system-ui, sans-serif;--font-chiffre:"Geist Mono", monospace;--font-afficheur:"Geist Mono", monospace;--rayon-0:14px;--rayon-1:6px;--rayon-2:12px;--plan-papier:#f9faf8;--plan-berge:#8a98a0;--plan-eau:#e8f0f2;--plan-rue:#fff;--plan-rue-bord:#a8afa9;--plan-bati:#fff;--plan-trait:#68736c;--plan-ombre:#ccd2cd}[data-epoque="2050"][data-carbone=tendu]{--accent:#b4471a;--calque:#f1ebe6;--trait:#d9cfc6}html{font-family:var(--font-texte)}body{font-synthesis-weight:none;font-variant-numeric:lining-nums}.tampon .an,.jauge .valeur{font-family:var(--font-afficheur);font-variant-numeric:tabular-nums lining-nums}.btn.principal{background:var(--accent);border-color:var(--accent);color:var(--sur-accent)}@media (hover:hover){.btn.principal:hover{background:var(--accent)}}.btn.principal:disabled{background:var(--accent);color:var(--sur-accent)}.indice{border:3px solid var(--c);background:var(--papier-haut);width:26px;height:26px;color:var(--encre);font:700 13px/1 var(--font-etroit);border-radius:50%;flex:none;place-items:center;display:inline-grid}[data-epoque="1850"] .panel{border:3px double var(--trait-fort)}[data-epoque="1850"] .plaque{letter-spacing:.05em;text-transform:none;font-variant:small-caps;font-size:18px;font-weight:700}[data-epoque="1850"] .cartouche>header{border-bottom-color:var(--trait-fort);justify-content:center}[data-epoque="1850"] .cartouche>header>svg{display:none}[data-epoque="1850"] .topbar .city{letter-spacing:.04em;text-transform:none;font-variant:small-caps;font-size:22px;font-weight:700}[data-epoque="1850"] #ui .etiquette{letter-spacing:.04em;text-transform:none;font-size:12px;font-style:italic;font-weight:500}[data-epoque="1850"] .tampon{border-color:var(--accent);color:var(--accent)}[data-epoque="1850"] .tampon .reste{color:var(--accent);letter-spacing:0;text-transform:none;font-size:11px;font-weight:500}[data-epoque="1850"] .jauge .rempli{background:repeating-linear-gradient(135deg, var(--vert) 0 2px, transparent 2px 4px)}[data-epoque="1850"] .jauge.ambre .rempli{background:repeating-linear-gradient(135deg, var(--ambre) 0 2px, transparent 2px 4px)}[data-epoque="1850"] .btn{border:3px double var(--trait-fort);font-variant:small-caps;letter-spacing:.04em;font-size:16px;font-weight:600}[data-epoque="1850"] .btn.mini{font-size:16px}[data-epoque="1850"] .btn.principal{border-color:var(--sur-accent);outline:1px solid var(--accent)}[data-epoque="1850"] .btn.discret{border-color:#0000}[data-epoque="1850"] .btn.danger{border-color:var(--rouille)}[data-epoque="1900"] .panel{border:2px solid var(--accent);box-shadow:inset 0 0 0 3px var(--papier), inset 0 0 0 4px var(--trait-fort)}[data-epoque="1900"] .plaque{letter-spacing:.08em;font-size:15px;font-weight:400}[data-epoque="1900"] .cartouche>header{border-bottom:0;justify-content:center;padding-top:12px}[data-epoque="1900"] .cartouche>header>svg{display:none}[data-epoque="1900"] .topbar .city{letter-spacing:.06em;font-weight:400}[data-epoque="1900"] .tampon{border-color:var(--accent);border-radius:999px;padding:6px 16px 5px;transform:none}[data-epoque="1900"] .tampon .reste{font-family:var(--font-texte);letter-spacing:0;text-transform:none;font-size:11px;font-weight:500}[data-epoque="1900"] .jauge .piste{border-color:var(--accent);border-radius:6px;height:12px}[data-epoque="1900"] .btn{letter-spacing:.03em;font-weight:700}[data-epoque="1900"] .mode .soulign,[data-epoque="1900"] .btn.achat .soulign{outline:1px solid var(--papier)}[data-epoque="1900"] #ui .etiquette{letter-spacing:.04em;font-size:12px;font-weight:500}[data-epoque="1950"] .panel{border:0;border-top:6px solid var(--encre)}[data-epoque="1950"] .plaque{letter-spacing:0;text-transform:lowercase;font-size:18px;font-weight:700}[data-epoque="1950"] .cartouche>header{border-bottom:0}[data-epoque="1950"] .topbar .city{letter-spacing:-.01em;text-transform:lowercase;font-size:24px;font-weight:800}[data-epoque="1950"] #ui .etiquette{letter-spacing:0;text-transform:none;font-size:12px;font-weight:400}[data-epoque="1950"] .tampon{background:var(--accent);border-color:var(--accent);color:var(--sur-accent);transform:none}[data-epoque="1950"] .tampon .reste{color:var(--sur-accent);letter-spacing:0;text-transform:none;font-size:10px;font-weight:400}[data-epoque="1950"] .jauge .piste{background:var(--trait);border:0;height:14px}[data-epoque="1950"] .jauge .rempli{background:var(--encre)}[data-epoque="1950"] .jauge.ambre .rempli{background:var(--ambre)}[data-epoque="1950"] .btn{text-transform:lowercase;border-width:2px;font-weight:700}[data-epoque="1950"] .btn.discret{border-color:#0000}[data-epoque="1950"] #ui>.prompt{border-top-width:6px}[data-epoque="1980"] .panel{border-color:var(--trait-fort)}[data-epoque="1980"] .cartouche,[data-epoque="1980"] .topbar{background-image:repeating-linear-gradient(0deg,#00000029 0 1px,#0000 1px 3px)}[data-epoque="1980"] .plaque{letter-spacing:.02em;font-size:21px;font-weight:400}[data-epoque="1980"] .plaque:before{content:"> ";color:var(--accent)}[data-epoque="1980"] .cartouche>header,[data-epoque="1980"] .cartouche>summary{border-bottom-color:var(--trait-fort)}[data-epoque="1980"] .topbar .city{letter-spacing:.03em;font-size:26px;font-weight:400}[data-epoque="1980"] .tampon{border-width:1px;border-color:var(--trait-fort);color:var(--accent);background:#000;transform:none}[data-epoque="1980"] .tampon .an{font-size:32px;font-weight:400}[data-epoque="1980"] .tampon .reste{letter-spacing:.04em;font-size:9px}[data-epoque="1980"] .jauge .piste{background:0 0;height:14px}[data-epoque="1980"] .jauge .valeur{font-size:32px;font-weight:400}[data-epoque="1980"] .jauge .rempli{background:repeating-linear-gradient(90deg, var(--vert) 0 7px, transparent 7px 10px)}[data-epoque="1980"] .jauge.ambre .rempli{background:repeating-linear-gradient(90deg, var(--ambre) 0 7px, transparent 7px 10px)}[data-epoque="1980"] .jauge.rouille .rempli{background:repeating-linear-gradient(90deg, var(--rouille) 0 7px, transparent 7px 10px)}[data-epoque="1980"] .btn{text-transform:uppercase;font-size:14px;font-weight:500}[data-epoque="2050"] .plaque{letter-spacing:0;text-transform:none;font-size:14px;font-weight:500}[data-epoque="2050"] .cartouche>header{border-bottom:0;padding:12px 16px 0}[data-epoque="2050"] .cartouche>summary{border-bottom:0;padding:12px 16px}[data-epoque="2050"] .cartouche .corps{padding:8px 16px 16px}[data-epoque="2050"] .topbar .city{letter-spacing:-.01em;text-transform:none;font-size:18px;font-weight:600}[data-epoque="2050"] #ui .etiquette{letter-spacing:0;text-transform:none;font-size:12px;font-weight:500}[data-epoque="2050"] .tampon{border:1px solid var(--trait);border-radius:var(--rayon-1);align-items:flex-start;transform:none}[data-epoque="2050"] .tampon .an{font-weight:400}[data-epoque="2050"] .tampon .reste{letter-spacing:0;text-transform:none;font-size:10px;font-weight:500}[data-epoque="2050"] .jauge .piste{background:var(--trait);border:0;height:3px}[data-epoque="2050"] .jauge .rempli{background:var(--accent)}[data-epoque="2050"] .jauge.ambre .rempli{background:var(--ambre)}[data-epoque="2050"] .jauge.rouille .rempli{background:var(--rouille)}[data-epoque="2050"] .jauge .valeur{font-weight:400}[data-epoque="2050"] .btn{font-weight:500}.passage{z-index:1000;pointer-events:all;background:var(--calque);position:fixed;inset:0;overflow:hidden}.passage.couvre{animation:.9s both passage-couvre}.passage.decouvre{animation:.9s both passage-decouvre}.passage .sceau{background:var(--accent);color:var(--sur-accent);text-align:center;white-space:nowrap;font:700 56px/1 var(--font-plaque);padding:14px 28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.passage .sceau small{font:500 16px/1.2 var(--font-texte);margin-top:8px;display:block}@keyframes passage-couvre{0%{clip-path:inset(0 100% 0 0);animation-timing-function:cubic-bezier(.65,0,.35,1)}30%,38%{clip-path:inset(0 67% 0 0);animation-timing-function:cubic-bezier(.65,0,.35,1)}64%,72%{clip-path:inset(0 34% 0 0);animation-timing-function:cubic-bezier(.65,0,.35,1)}to{clip-path:inset(0)}}@keyframes passage-decouvre{0%{clip-path:inset(0);animation-timing-function:cubic-bezier(.65,0,.35,1)}30%,38%{clip-path:inset(0 0 0 33%);animation-timing-function:cubic-bezier(.65,0,.35,1)}64%,72%{clip-path:inset(0 0 0 66%);animation-timing-function:cubic-bezier(.65,0,.35,1)}to{clip-path:inset(0 0 0 100%)}}.select-row{grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;display:grid}.select-row select{min-height:var(--cible);border:1px solid var(--trait-fort);border-radius:var(--rayon-1);background:var(--papier-haut);color:var(--encre);font:500 15px/1 var(--font-texte);grid-column:1/-1;padding:0 10px}.btn[hidden]{display:none}[data-epoque]{--echelle-titre:1}[data-epoque="1850"]{--echelle-titre:.58}[data-epoque="1900"]{--echelle-titre:.66}[data-epoque="1950"]{--echelle-titre:.68}[data-epoque="1980"]{--echelle-titre:.98}[data-epoque="2050"]{--echelle-titre:.6}.intro h1{font-size:calc(clamp(44px, min(5.2vw, 8.4vh), 84px) * var(--echelle-titre));line-height:1}[data-epoque="1900"] :is(.intro h1,.intro h2,.logotype,.field-label,.level-name,.attente h1,.carte-fin h2,.fiche h3,.settings-body h2,.tuto-fiche h2,.arbre-tete h2,.fiche-tete h3),[data-epoque="1900"] dialog.fenetre h2,[data-epoque="1980"] :is(.intro h1,.intro h2,.logotype,.field-label,.level-name,.attente h1,.carte-fin h2,.fiche h3,.settings-body h2,.tuto-fiche h2,.arbre-tete h2,.fiche-tete h3),[data-epoque="1980"] dialog.fenetre h2{font-weight:400}[data-epoque="1950"] :is(.intro h1,.intro h2,.logotype,.field-label,.level-name,.attente h1,.carte-fin h2,.fiche h3,.settings-body h2,.tuto-fiche h2,.arbre-tete h2,.fiche-tete h3){text-transform:lowercase;letter-spacing:0;font-weight:700}[data-epoque="1950"] dialog.fenetre h2{text-transform:lowercase;font-weight:700}[data-epoque="2050"] :is(.intro h1,.intro h2,.logotype,.field-label,.level-name,.attente h1,.carte-fin h2,.fiche h3,.settings-body h2,.tuto-fiche h2,.arbre-tete h2,.fiche-tete h3){text-transform:none;letter-spacing:-.01em;font-weight:600}[data-epoque="2050"] dialog.fenetre h2{text-transform:none;font-weight:600}[data-epoque="1900"] .intro-bg,[data-epoque="1980"] .intro-bg{filter:invert()hue-rotate(180deg);opacity:.22}.intro{gap:clamp(10px,1.8vh,20px)}@media (width>=761px){.topbar{max-width:min(1040px,100% - 320px)}}@media (width<=760px){.mode{font-size:11px}[data-epoque] .topbar .btn{font-size:13px}}.quota .long{margin-left:.35em}@media (width<=760px){[data-epoque="2050"] .mode{font-size:10.5px}}
