@font-face{font-family:Barlow Condensed;font-weight:600;font-display:swap;src:url(./barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:700;font-display:swap;src:url(./barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2")}@font-face{font-family:Barlow;font-weight:400;font-display:swap;src:url(./barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2")}@font-face{font-family:Barlow;font-weight:500;font-display:swap;src:url(./barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2")}@font-face{font-family:Barlow;font-weight:600;font-display:swap;src:url(./barlow-latin-600-normal-DILqtrty.woff2)format("woff2")}:root{--asphalt:#23272c;--asphalt-2:#30363d;--concrete:#e2e5e6;--panel:#fff;--ink:#1b1f23;--muted:#5b636b;--line:#d4d8db;--mark:#f2c230;--sign:#1f5fae;--alert:#c8102e;--font-display:"Barlow Condensed", "Arial Narrow", Arial, sans-serif;--font-body:"Barlow", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--concrete);color:var(--ink);font:15px/1.4 var(--font-body);flex-direction:column;display:flex}button,input,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--sign);outline-offset:2px}a{color:var(--sign)}#defs{width:0;height:0;position:absolute;overflow:hidden}.grow{flex:1}.wip{color:#4a3d0a;background:#fff7d6;border-bottom:1px solid #ecd486;align-items:center;gap:12px;padding:6px 16px;font-size:14px;display:flex}.wip-tag{font:700 13px/1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#1b1f23;background:#f2c230 repeating-linear-gradient(135deg,#1b1f23 0 5px,#0000 5px 10px) 0 0/18px 100% no-repeat;border-radius:4px;flex:none;padding:5px 10px 5px 26px}.wip a{color:#4a3d0a;font-weight:600}.top{background:var(--asphalt);color:#eef1f3;flex-wrap:wrap;align-items:flex-end;gap:10px 22px;padding:10px 16px 12px;display:flex}.brand{flex-direction:column;gap:4px;margin-right:6px;display:flex}.brand h1{font:700 30px/1 var(--font-display);letter-spacing:.02em;margin:0}.brand h1 span{color:var(--mark)}.brand .lane{background:repeating-linear-gradient(90deg, var(--mark) 0 14px, transparent 14px 24px);width:150px;height:3px}.brand small{font:500 12.5px var(--font-body);color:#aab3ba}.grp{flex-direction:column;gap:4px;display:flex}.grp>.lbl{font:600 11.5px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#9aa4ac}.seg{background:var(--asphalt-2);border:1px solid #4b525a;border-radius:8px;display:inline-flex;overflow:hidden}.seg button{font:600 14.5px var(--font-display);letter-spacing:.02em;color:#d3d9dd;white-space:nowrap;background:0 0;border:0;padding:6px 10px}.seg button+button{border-left:1px solid #4b525a}.seg button[aria-pressed=true]{background:var(--mark);color:#1b1f23}.seg button:hover:not([aria-pressed=true]){background:#3b424a}.stepper{background:var(--asphalt-2);border:1px solid #4b525a;border-radius:8px;align-items:center;display:inline-flex;overflow:hidden}.stepper button{width:30px;height:32px;font:700 17px var(--font-display);color:#d3d9dd;background:0 0;border:0}.stepper button:hover{background:#3b424a}.stepper output{text-align:center;min-width:24px;font:700 15px var(--font-display);font-variant-numeric:tabular-nums}.top .spacer{flex:1}.top .actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{background:var(--asphalt-2);color:#e8ecef;font:600 14.5px var(--font-display);letter-spacing:.02em;white-space:nowrap;border:1px solid #4b525a;border-radius:8px;padding:7px 12px}.btn:hover{background:#3b424a}.btn.primary{background:var(--mark);border-color:var(--mark);color:#1b1f23}.btn.primary:hover{background:#ffd34d}.btn[disabled]{opacity:.5;cursor:wait}.toggle{font:500 13.5px var(--font-body);align-items:center;gap:6px;display:inline-flex}.top .toggle{color:#d3d9dd}.toggle input{accent-color:var(--mark);width:16px;height:16px}main{flex:1;grid-template-columns:minmax(0,1fr) 400px;min-height:0;display:grid}#stage{background-color:#dfe2e3;background-image:radial-gradient(#c3c8cb 1px,#0000 1px);background-size:18px 18px;min-height:0;position:relative;overflow:auto}.stagebar{z-index:5;border-bottom:1px solid var(--line);background:#e2e5e6f0;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex;position:sticky;top:0;left:0}.stagebar .info{font:600 14px var(--font-display);letter-spacing:.02em;color:var(--muted);font-variant-numeric:tabular-nums}.stagebar .warn{color:#8d0a1f;font:600 13.5px var(--font-body);background:#fdecee;border:1px solid #f1b8c0;border-radius:8px;align-items:center;gap:8px;padding:4px 6px 4px 10px;display:none}.stagebar .warn.on{display:inline-flex}.lbtn{border:1px solid var(--line);color:var(--ink);font:600 14px var(--font-display);letter-spacing:.02em;background:#fff;border-radius:8px;padding:5px 10px}.lbtn:hover{border-color:#9aa3aa}.lbtn.small{padding:3px 8px;font-size:13px}.lbtn.red{background:var(--alert);border-color:var(--alert);color:#fff}#quartierWrap{justify-content:center;min-width:max-content;padding:26px;display:flex}#quartier{gap:4px;display:grid}.cell{cursor:pointer;background:#fff;position:relative;box-shadow:0 1px 2px #00000040,0 4px 14px #00000014}.cell svg{width:100%;height:100%;display:block}.cell.sel{outline:3px solid var(--sign);outline-offset:3px;z-index:2}.cell .tag{color:#fff;font:700 13px/1 var(--font-display);pointer-events:none;letter-spacing:.03em;background:#1b1f23d6;border-radius:5px;padding:4px 7px;position:absolute;top:6px;left:6px}.cell.empty{box-shadow:none;color:var(--muted);font:600 15px var(--font-display);letter-spacing:.03em;background:#ffffff59;border:2px dashed #98a1a7;place-items:center;display:grid}.cell.empty:hover{color:var(--ink);background:#ffffffb3}.mm{background:var(--alert);z-index:3;pointer-events:none;border-radius:3px;position:absolute;box-shadow:0 0 0 2px #fff}#editor{background:var(--panel);border-left:1px solid var(--line);min-height:0;overflow:hidden auto}.ed{flex-direction:column;gap:18px;padding:16px 18px 40px;display:flex}.edhead{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.edhead h2{font:700 26px/1 var(--font-display);letter-spacing:.02em;margin:0}.edhead .type{font:600 13px var(--font-display);letter-spacing:.06em;text-transform:uppercase;background:var(--asphalt);color:var(--mark);border-radius:5px;padding:4px 8px}.edhead .tools{flex-wrap:wrap;gap:6px;width:100%;display:flex}.sec{flex-direction:column;gap:9px;display:flex}.sec>h3{font:700 13px var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin:0;display:flex}.sec>h3:after{content:"";background:var(--line);flex:1;height:1px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);font:600 14px var(--font-display);letter-spacing:.02em;color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;display:inline-flex}.chip:hover{border-color:#98a1a7}.chip[aria-pressed=true]{background:var(--asphalt);border-color:var(--asphalt);color:#fff}.sw{border:1px solid #00000026;border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.sw-pmr{background:#2a63b8}.sw-elec{background:#2f9d68}.sw-livraison,.sw-taxi{background:#e7b416}.sw-police{background:#1d3f8f}.sw-pompiers{background:#c62828}.lseg{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.lseg button{font:600 14px var(--font-display);letter-spacing:.02em;background:#fff;border:0;padding:6px 10px}.lseg button+button{border-left:1px solid var(--line)}.lseg button[aria-pressed=true]{background:var(--asphalt);color:#fff}.compass{flex:none;grid-template-rows:38px 64px 38px;grid-template-columns:50px 1fr 50px;gap:4px;width:250px;max-width:100%;display:grid}.compass button{border:1px solid var(--line);font:700 13px var(--font-display);letter-spacing:.04em;color:var(--muted);background:#fff;border-radius:7px}.compass button[aria-pressed=true]{color:#fff;box-shadow:inset 0 0 0 2px #3a3f45, inset 0 0 0 3px var(--mark);background:#3a3f45;border-color:#3a3f45}.compass .c{background:var(--concrete);text-align:center;font:700 15px/1.1 var(--font-display);color:var(--ink);border-radius:8px;grid-area:2/2;place-items:center;padding:4px;display:grid}.compass .n{grid-area:1/2}.compass .s{grid-area:3/2}.compass .w{grid-area:2/1}.compass .e{grid-area:2/3}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row.align-start{align-items:flex-start;gap:16px}.row>.k{font:600 13.5px var(--font-body);color:var(--muted);min-width:96px}.zone{border:1px solid var(--line);background:#fbfbfb;border-radius:10px;flex-direction:column;gap:9px;padding:10px 12px;display:flex}.zone.hl{border-color:var(--sign);box-shadow:0 0 0 2px #1f5fae2e}.zone .zt{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.zone .zt b{font:700 18px var(--font-display);letter-spacing:.02em}.zone .zt small{color:var(--muted);font-variant-numeric:tabular-nums}.mini{border:1px solid var(--line);background:#fff;border-radius:7px;align-items:center;display:inline-flex;overflow:hidden}.mini button{width:26px;height:28px;font:700 16px var(--font-display);background:#fff;border:0}.mini button:hover{background:#eef0f1}.mini output{text-align:center;min-width:30px;font:700 14px var(--font-display);font-variant-numeric:tabular-nums}.specials{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 12px;display:grid}.specials .sp{font:500 13.5px var(--font-body);justify-content:space-between;align-items:center;gap:6px;display:flex}.specials .sp>span{align-items:center;gap:6px;display:inline-flex}input[type=text],select{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:0;padding:6px 9px}input[type=text].short{width:70px}input[type=range]{accent-color:var(--sign);flex:1;min-width:120px}.hint{color:var(--muted);margin:0;font-size:13px}.hint.wmm{min-width:52px}.note{border-left:3px solid var(--mark);background:#f3f5f6;border-radius:0 6px 6px 0;margin:0;padding:8px 10px;font-size:13.5px}.export{border:1px solid var(--line);background:#fbfbfb;border-radius:10px;flex-direction:column;gap:10px;padding:12px;display:flex}.export .btn.primary{padding:10px 14px;font-size:17px}.export .toggle input{accent-color:var(--sign)}.status{font:500 13.5px var(--font-body);color:var(--muted);min-height:1.2em}.status.err{color:var(--alert)}.sizes{border-collapse:collapse;width:100%;font-size:13px}.sizes td,.sizes th{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:4px}.sizes th{font:600 12px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.site-footer{color:var(--muted);border-top:1px solid var(--line);text-align:center;background:#eceeef;padding:8px 16px;font-size:13px}.site-footer a{color:var(--ink)}@media (width<=980px){html,body{height:auto}main{grid-template-columns:1fr}#stage{overflow:visible}#quartierWrap{justify-content:flex-start;min-width:0;overflow-x:auto}#editor{border-left:0;border-top:1px solid var(--line);overflow:visible}.stagebar{position:static}.wip{flex-wrap:wrap;gap:6px 10px}}@media (prefers-reduced-motion:no-preference){.chip,.btn,.lbtn,.seg button{transition:background-color .12s,border-color .12s,color .12s}}
