:root{--orange:#ea5621;--rose:#f090b4;--bleu:#1f9ed9;--encre:#181d27;--bg:#f7f3ee;--bg2:#fff;--panel:#ffffffe0;--line:#181d271a;--txt:#181d27;--txt2:#5b6170;--chip:#efe9e2;--chipOn:#181d27;--chipOnTxt:#fff;--pos:#1e8a4c;--neg:#d2381f;--shadow:0 10px 30px #181d271a}:root[data-theme=dark]{--bg:#10141c;--bg2:#161b25;--panel:#161b25db;--line:#ffffff1a;--txt:#f4f1ec;--txt2:#a3a9b6;--chip:#232a37;--chipOn:#f4f1ec;--chipOnTxt:#10141c;--pos:#5ddb8a;--neg:#ff7a66;--shadow:0 10px 30px #00000059}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{background:var(--bg);color:var(--txt);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;font-family:Cabin,Gill Sans,system-ui,sans-serif}input,textarea,select{-webkit-user-select:text;user-select:text}.scene{position:fixed;inset:0}.scene canvas{display:block}.up{color:var(--pos)}.down{color:var(--neg)}.card{background:var(--panel);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:14px 14px 12px}.card h3{letter-spacing:.12em;text-transform:uppercase;color:var(--txt2);align-items:center;gap:8px;margin:0 0 10px;font-size:11px;font-weight:700;display:flex}.pill{letter-spacing:.06em;text-transform:uppercase;color:var(--orange);background:#ea562124;border-radius:999px;align-items:center;gap:4px;padding:3px 7px;font:700 10px Cabin,Gill Sans,system-ui,sans-serif;display:inline-flex}.hint{color:var(--txt2);font-size:11.5px}.iconbtn{border:1px solid var(--line);background:var(--panel);width:38px;height:38px;color:var(--txt);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);border-radius:12px;place-items:center;display:grid}.iconbtn:hover{border-color:var(--orange)}.iconbtn.on{background:var(--orange);color:#fff;border-color:var(--orange)}.iconbtn svg{width:18px;height:18px}.iconbtn.txt{white-space:nowrap;align-items:center;gap:7px;width:auto;padding:0 12px;font:600 13px Cabin,Gill Sans,system-ui,sans-serif;display:inline-flex}.btnplain{border:1px solid var(--line);background:var(--chip);color:var(--txt);cursor:pointer;border-radius:11px;padding:8px 16px;font:600 13px Cabin,Gill Sans,system-ui,sans-serif}.btnplain:hover{border-color:var(--orange)}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button{background:var(--chip);color:var(--txt);cursor:pointer;white-space:nowrap;border:0;border-radius:10px;flex:auto;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font:600 13px Cabin,Gill Sans,system-ui,sans-serif;transition:background .2s,color .2s;display:flex}.seg button:hover{outline:1px solid var(--orange)}.seg button.on{background:var(--chipOn);color:var(--chipOnTxt)}.seg .dot{border-radius:50%;width:9px;height:9px}.seg.viz button{flex:45%}.seg.themes{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.seg.themes button{text-overflow:ellipsis;min-width:0;overflow:hidden}.seg.months{gap:4px;margin-top:6px}.seg.months button{flex:1 1 0;padding:6px 2px;font-size:11.5px}.select{border:1px solid var(--line);background:var(--chip);width:100%;color:var(--txt);cursor:pointer;appearance:auto;border-radius:10px;padding:8px 10px;font:600 13px Cabin,Gill Sans,system-ui,sans-serif}.select:focus{outline:2px solid #ea562180}.select option,.select optgroup{background:var(--bg2);color:var(--txt)}.topbar{pointer-events:none;z-index:5;align-items:center;gap:18px;padding:14px 20px;display:flex;position:fixed;top:0;left:0;right:0}.topbar .brand{pointer-events:auto;align-items:flex-end;gap:14px;display:flex}.topbar img{height:44px;display:block}.topbar h1{letter-spacing:-.01em;margin:0 0 -3px;font:800 22px/1.05 Bricolage Grotesque,sans-serif}.topbar h1 small{color:var(--txt2);letter-spacing:0;margin-top:2px;font:500 13px/1.15 Cabin,Gill Sans,system-ui,sans-serif;display:block}.topbar .tools{pointer-events:auto;gap:8px;margin-left:auto;display:flex}:root[data-theme=dark] .topbar img{filter:brightness(1.08)}.caps-tag{vertical-align:3px;letter-spacing:.12em;color:#fff;background:linear-gradient(135deg,#ea5621,#f27a3e);border-radius:7px;margin-left:6px;padding:3px 7px 2px;font:800 11px/1 Cabin,Gill Sans,system-ui,sans-serif;display:inline-block;box-shadow:0 3px 8px #ea56214d}.dock{z-index:4;scrollbar-width:none;flex-direction:column;gap:12px;width:316px;max-height:calc(100% - 104px);padding-bottom:4px;display:flex;position:fixed;top:84px;left:20px;overflow:auto}.dock::-webkit-scrollbar{display:none}.dock>.card{flex:none}.side{z-index:4;flex-direction:column;gap:12px;width:330px;max-height:calc(100% - 104px);display:flex;position:fixed;top:84px;right:20px}.kpi-card h3{margin-bottom:2px!important}.kpi-card .kpi-sub{color:var(--txt2);margin-bottom:8px;font-size:12px}.kpi-card .kpi .big{letter-spacing:-.02em;font:800 38px/1 Bricolage Grotesque,sans-serif}.kpi-card .kpi-row{gap:8px;margin-top:10px;display:flex}.kpi-card .kpi-row div{background:var(--chip);border-radius:12px;flex:1;min-width:0;padding:8px 10px}.kpi-card .kpi-row b{font-size:14.5px;display:block}.kpi-card .kpi-row span{color:var(--txt2);font-size:11px}.kpi-card .kpi-foot{color:var(--txt2);margin-top:8px;font-size:12px}.monthly svg{width:100%;height:auto;display:block;overflow:visible}.monthly .band{fill:#ea56211a}.monthly .grid{stroke:var(--line)}.monthly polyline{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.monthly .l25{stroke:var(--txt2);opacity:.45;stroke-dasharray:4 4}.monthly .d25{fill:var(--txt2);opacity:.7}.monthly .mx{fill:var(--txt2);text-anchor:middle;font:600 9.5px Cabin,Gill Sans,system-ui,sans-serif}.monthly .mx.on{fill:var(--orange);font-weight:800}.monthly .mleg{color:var(--txt2);flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;font-size:11.5px;display:flex}.monthly .mleg span{align-items:center;gap:5px;display:flex}.monthly .mleg i{border-radius:2px;width:14px;height:3px;display:inline-block}.monthly .mleg .k25{background:var(--txt2);opacity:.5}.monthly .mleg .hint{margin-left:auto}.rank{flex:auto;min-height:120px;overflow:auto}.rank ol{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.rank li{cursor:pointer;border-radius:10px;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:grid}.rank li:hover,.rank li.hl{background:var(--chip)}.rank li.sel{background:var(--chipOn);color:var(--chipOnTxt)}.rank li.sel .n{color:inherit}.rank li .n{color:var(--txt2);text-align:right;font-size:11px}.rank li .nm{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rank li .v{font-variant-numeric:tabular-nums;font-weight:700}.rank li .bar{background:var(--line);border-radius:2px;grid-column:2/4;height:4px;margin-top:-2px;overflow:hidden}.rank li .bar i{border-radius:2px;height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1);display:block}.dk-card{padding:16px 16px 14px;position:relative;overflow:hidden}.dk-card:before{content:"";pointer-events:none;background:linear-gradient(#ffffff8c,#fff0);height:70px;position:absolute;inset:0 0 auto}.dk-card>*{position:relative}:root[data-theme=dark] .dk-card:before{background:linear-gradient(#ffffff0a,#fff0)}.card h3.dk-h{letter-spacing:-.01em;text-transform:none;color:var(--txt);align-items:baseline;gap:9px;margin:0 0 12px;font:800 16px/1.1 Bricolage Grotesque,sans-serif;display:flex}.card h3.dk-h .dk-n{letter-spacing:.12em;color:var(--orange);font-variant-numeric:tabular-nums;background:#ea56211a;border-radius:6px;padding:3px 6px;font:800 11px Cabin,Gill Sans,system-ui,sans-serif;transform:translateY(-2px)}.card h3.dk-h .pill{align-self:center;margin-left:auto}.dk-sub{letter-spacing:.13em;text-transform:uppercase;color:var(--txt2);align-items:center;gap:8px;margin:16px 0 8px;font:700 10.5px Cabin,Gill Sans,system-ui,sans-serif;display:flex}.dk-sub span{letter-spacing:.04em;text-transform:none;opacity:.8;font-weight:600}.dk-sub:after{content:"";background:var(--line);flex:1;height:1px}.vtiles{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;display:grid}.vtiles .vtile{grid-column:span 2}.vtiles .vtile:nth-child(n+4){text-align:left;flex-direction:row;grid-column:span 3;gap:9px;padding:8px 10px}.vtiles .vtile:nth-child(n+4) svg{width:30px;height:32px}.vtiles .vtile:nth-child(n+4) b{display:block}.vtiles .vtile:nth-child(n+4).on:after{margin-top:-3.5px;top:50%;right:10px}.vtile{text-align:center;border:1px solid var(--line);background:var(--bg2);min-width:0;color:var(--txt);cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:3px;padding:10px 6px 9px;font-family:Cabin,Gill Sans,system-ui,sans-serif;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .2s,box-shadow .25s,background .25s;display:flex;position:relative}.vtile svg{filter:saturate(.85);flex:none;width:34px;height:36px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.vtile b{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font:700 12.5px/1.15 Cabin,Gill Sans,system-ui,sans-serif;overflow:hidden}.vtile small{color:var(--txt2);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:10.5px;overflow:hidden}.vtile>span{align-items:inherit;flex-direction:column;gap:2px;min-width:0;max-width:100%;display:flex}.vtile:hover{border-color:#ea562173;transform:translateY(-2px);box-shadow:0 8px 18px #181d2714}.vtile:hover svg{transform:scale(1.06)}.vtile.on{border-color:var(--orange);background:linear-gradient(160deg, #ea562121, #ea562105 70%), var(--bg2);box-shadow:0 8px 22px #ea562138,inset 0 0 0 1px #ea562159}.vtile.on svg{filter:none;transform:scale(1.06)}.vtile.on b{color:var(--orange)}.vtile.on:after{content:"";background:var(--orange);border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px;box-shadow:0 0 0 3px #ea562133}.seg2{background:var(--chip);border-radius:13px;gap:2px;padding:3px;display:flex;position:relative;box-shadow:inset 0 1px 2px #181d270f}.seg2 button{z-index:1;min-width:0;color:var(--txt2);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-radius:10px;flex:1 1 0;padding:8px 6px;font:700 12.5px Cabin,Gill Sans,system-ui,sans-serif;transition:color .25s;position:relative;overflow:hidden}.seg2 button:hover{color:var(--txt)}.seg2 button.on{color:#fff}.seg2 .pill-bg{background:linear-gradient(135deg,#ea5621 0%,#f27a3e 100%);border-radius:10px;transition:transform .4s cubic-bezier(.2,.8,.2,1),width .4s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;left:0;box-shadow:0 4px 12px #ea562159}.seg2.small button{padding:6px 4px;font-size:11.5px}.ptoggle{grid-template-columns:1fr 1fr;gap:7px;display:grid}.ptoggle button{cursor:pointer;text-align:left;border:1px solid var(--line);background:var(--bg2);color:var(--txt);border-radius:13px;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 11px;font-family:Cabin,Gill Sans,system-ui,sans-serif;transition:all .25s cubic-bezier(.2,.8,.2,1);display:flex}.ptoggle button b{letter-spacing:-.01em;font:800 13.5px/1.15 Bricolage Grotesque,sans-serif}.ptoggle button small{color:var(--txt2);font-size:10.5px}.ptoggle button:hover{border-color:#ea562173}.ptoggle button.on{color:#fff;background:linear-gradient(135deg,#ea5621 0%,#f27a3e 100%);border-color:#0000;box-shadow:0 6px 16px #ea56214d}.ptoggle button.on small{color:#ffffffd9}.mrail{grid-template-columns:repeat(8,minmax(0,1fr));gap:3px;margin-top:8px;display:grid}.mrail button{cursor:pointer;color:var(--txt2);background:0 0;border:0;border-radius:9px;flex-direction:column;align-items:center;gap:5px;padding:5px 0 6px;font:600 10.5px Cabin,Gill Sans,system-ui,sans-serif;transition:background .2s,color .2s;display:flex}.mrail button i{background:var(--line);border-radius:2px;width:100%;height:4px;transition:background .3s,height .3s cubic-bezier(.2,.8,.2,1),transform .3s cubic-bezier(.2,.8,.2,1)}.mrail button.sum i{background:#ea562138}.mrail button.in{color:var(--txt)}.mrail button.in i{background:var(--orange)}.mrail button.on{background:var(--chip);color:var(--orange)}.mrail button.on i{transform:scaleY(1.6)}.mrail button:hover{color:var(--txt);background:var(--chip)}.stiles{grid-template-columns:1fr 1fr;gap:7px;display:grid}.stiles .stile{cursor:pointer;border:1px solid var(--line);background:var(--bg2);min-width:0;color:var(--txt);text-align:left;white-space:nowrap;text-overflow:ellipsis;border-radius:13px;align-items:center;gap:9px;padding:7px 10px 7px 7px;font:700 12.5px Cabin,Gill Sans,system-ui,sans-serif;transition:all .25s cubic-bezier(.2,.8,.2,1);display:flex;overflow:hidden}.stiles .stile .ic{width:28px;height:28px;color:var(--c);background:color-mix(in srgb, var(--c) 13%, transparent);border-radius:9px;flex:none;place-items:center;transition:all .25s cubic-bezier(.2,.8,.2,1);display:grid}.stiles .stile .ic svg{width:16px;height:16px}.stiles .stile:hover{border-color:color-mix(in srgb, var(--c) 55%, transparent);transform:translateY(-1px)}.stiles .stile.on{border-color:var(--c);background:color-mix(in srgb, var(--c) 9%, var(--bg2));box-shadow:0 6px 16px color-mix(in srgb, var(--c) 22%, transparent)}.stiles .stile.on .ic{background:var(--c);color:#fff}.dd-btn{cursor:pointer;border:1px solid var(--line);background:var(--bg2);width:100%;height:42px;color:var(--txt);text-align:left;border-radius:12px;align-items:center;gap:8px;padding:0 12px;font:600 12.5px Cabin,Gill Sans,system-ui,sans-serif;transition:border-color .2s,box-shadow .25s cubic-bezier(.2,.8,.2,1);display:flex}.dd-btn .dd-val{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.dd-btn .dd-code{letter-spacing:.04em;color:var(--orange);background:#ea56211a;border-radius:6px;flex:none;padding:3px 6px;font:800 10.5px Cabin,Gill Sans,system-ui,sans-serif}.dd-btn .dd-dot{border-radius:50%;flex:none;width:8px;height:8px}.dd-btn .dd-chev{width:15px;height:15px;color:var(--orange);flex:none;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.dd-btn:hover{border-color:#ea562173}.dd-btn:focus-visible{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #ea56212e}.dd-btn.open{border-color:var(--orange);box-shadow:0 0 0 3px #ea562124}.dd-btn.open .dd-chev{transform:rotate(180deg)}.dd-btn.set{background:linear-gradient(160deg, #ea562114, transparent 70%), var(--bg2);border-color:#ea56218c}.dd-pop{z-index:60;background:var(--bg2);border:1px solid var(--line);border-radius:16px;flex-direction:column;font-family:Cabin,Gill Sans,system-ui,sans-serif;animation:.18s cubic-bezier(.2,.8,.2,1) dd-in;display:flex;position:fixed;overflow:hidden;box-shadow:0 18px 44px #181d2733,0 2px 6px #181d270f}:root[data-theme=dark] .dd-pop{box-shadow:0 18px 44px #00000080}@keyframes dd-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.dd-search{background:var(--chip);border-radius:10px;align-items:center;gap:8px;height:36px;margin:8px 8px 4px;padding:0 10px;display:flex}.dd-search svg{width:15px;height:15px;color:var(--txt2);flex:none}.dd-search input{min-width:0;color:var(--txt);background:0 0;border:0;outline:0;flex:1;font:600 12.5px Cabin,Gill Sans,system-ui,sans-serif}.dd-search input::placeholder{color:var(--txt2);font-weight:500}.dd-list{overscroll-behavior:contain;scrollbar-width:thin;padding:4px 6px 6px;overflow:auto}.dd-gl{z-index:1;letter-spacing:.13em;text-transform:uppercase;color:var(--txt2);background:var(--bg2);align-items:center;gap:7px;margin-top:2px;padding:9px 8px 5px;font:700 10px Cabin,Gill Sans,system-ui,sans-serif;display:flex;position:sticky;top:-4px}.dd-gl i{border-radius:50%;width:8px;height:8px}.dd-it{cursor:pointer;text-align:left;width:100%;color:var(--txt);background:0 0;border:0;border-radius:9px;align-items:center;gap:9px;padding:8px 9px;font:600 12.5px/1.25 Cabin,Gill Sans,system-ui,sans-serif;display:flex}.dd-it b{letter-spacing:.03em;min-width:46px;color:var(--txt2);flex:none;font:800 10.5px Cabin,Gill Sans,system-ui,sans-serif}.dd-it span{flex:1;min-width:0}.dd-it svg{width:15px;height:15px;color:var(--orange);flex:none}.dd-it.hi{background:var(--chip)}.dd-it.on,.dd-it.on b{color:var(--orange)}.dd-empty{color:var(--txt2);text-align:center;padding:14px 10px;font-size:12px}.adv .adv-head{all:unset;cursor:pointer;width:100%;display:block}.adv .adv-head h3.dk-h{margin:0}.adv .chev{width:16px;height:16px;color:var(--txt2);align-self:center;margin-left:auto;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.adv .pill+.chev{margin-left:6px}.adv.open .chev{transform:rotate(180deg)}.adv .adv-body{grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.8,.2,1);display:grid}.adv .adv-body>div{min-height:0;overflow:hidden}.adv.open .adv-body{grid-template-rows:1fr}.adv.open .adv-body>div{padding-top:6px}.adv .field{letter-spacing:.1em;text-transform:uppercase;color:var(--txt2);margin-top:10px;font:700 10.5px Cabin,Gill Sans,system-ui,sans-serif;display:block}.adv .field .dd-btn,.adv .field .seg2{letter-spacing:0;text-transform:none;margin-top:6px}.adv .reset{width:100%;color:var(--orange);cursor:pointer;background:#ea56210d;border:1px dashed #ea562180;border-radius:11px;justify-content:center;align-items:center;gap:7px;margin-top:14px;padding:8px;font:700 12px Cabin,Gill Sans,system-ui,sans-serif;transition:background .2s;display:flex}.adv .reset svg{width:14px;height:14px}.adv .reset:hover{background:#ea56211f}.legend{z-index:4;min-width:360px;padding:10px 16px;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.legend .t{color:var(--txt2);justify-content:space-between;gap:12px;margin-bottom:6px;font-size:12px;display:flex}.legend .ramp{border-radius:5px;height:10px}.legend .ticks{font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:4px;font-size:11.5px;display:flex}.legend .keys{justify-content:center;gap:14px;font-size:12.5px;display:flex}.legend .keys span{align-items:center;gap:6px;display:flex}.legend .keys i{border-radius:3px;width:12px;height:12px}.detail{z-index:6;opacity:0;pointer-events:none;width:min(480px,100% - 40px);max-height:calc(100% - 200px);transition:opacity .25s,transform .25s;position:fixed;top:84px;left:50%;overflow:auto;transform:translate(-50%,-10px)}.detail.show{opacity:1;pointer-events:auto;transform:translate(-50%)}.detail h2{margin:0 30px 2px 0;font:800 20px/1.1 Bricolage Grotesque,sans-serif}.detail .sub{color:var(--txt2);font-size:12.5px}.detail .close{border-radius:9px;width:30px;height:30px;position:absolute;top:10px;right:10px}.detail .close svg{width:15px;height:15px}.detail h4{letter-spacing:.12em;text-transform:uppercase;color:var(--txt2);margin:14px 0 6px;font-size:11px;font-weight:700}.detail table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:10px;font-size:13px}.detail th{text-transform:uppercase;letter-spacing:.08em;color:var(--txt2);text-align:right;padding:4px 6px;font-size:10.5px;font-weight:700}.detail th:first-child,.detail td:first-child{text-align:left}.detail td{text-align:right;border-top:1px solid var(--line);padding:7px 6px}.detail td:first-child{align-items:center;gap:7px;font-weight:600;display:flex}.detail td i{border-radius:50%;width:9px;height:9px;display:inline-block}.detail tr.tot td{font-weight:700}.detail .nafbars{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.detail .nafbars li{grid-template-columns:1fr auto;gap:2px 8px;font-size:12.5px;display:grid}.detail .nafbars .nm{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;display:flex;overflow:hidden}.detail .nafbars .nm i{border-radius:50%;flex:none;width:8px;height:8px}.detail .nafbars .v{font-variant-numeric:tabular-nums;font-weight:700}.detail .nafbars .v em{margin-left:4px;font-size:11.5px;font-style:normal;font-weight:600}.detail .nafbars .bar{background:var(--line);border-radius:2px;grid-column:1/3;height:4px}.detail .nafbars .bar i{border-radius:2px;height:100%;display:block}.detail .split .stack{background:var(--line);border-radius:5px;height:10px;display:flex;overflow:hidden}.detail .split .fr{background:#1f9ed9}.detail .split .wd{background:#f2a33a}.detail .split .splitleg{gap:14px;margin-top:5px;font-size:12px;display:flex}.detail .split .splitleg span{align-items:center;gap:5px;display:flex}.detail .split .splitleg i{border-radius:3px;width:9px;height:9px;display:inline-block}.detail .split .apps{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:8px;display:grid}.detail .split .apps span{background:var(--chip);color:var(--txt2);border-radius:10px;padding:6px 8px;font-size:11px;line-height:1.2}.detail .split .apps b{color:var(--txt);font-size:14px;display:block}.lbl{text-align:center;white-space:nowrap;pointer-events:none;transition:opacity .3s}.lbl.pin{transform:translate(-50%,calc(-100% - 6px))}.lbl.pin:after{content:"";background:var(--txt2);opacity:.6;width:1px;height:14px;margin:0 auto;display:block}.lbl .box{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:9px;padding:3px 8px 4px;display:inline-block;box-shadow:0 4px 14px #0000001f}.lbl .nm{color:var(--txt2);font-size:10.5px;line-height:1.1}.lbl .val{color:var(--txt);font:800 14px/1.1 Bricolage Grotesque,sans-serif}.lbl .val.up{color:var(--pos)}.lbl .val.down{color:var(--neg)}.lbl.small .val{font-size:12px}.lbl.hide,.lbl.occl{opacity:0}.lbl.hl .box{border-color:var(--orange);box-shadow:0 0 0 2px #ea562159}.lbl.city{transform:translate(-50%,-50%)}.lbl.city span{color:var(--txt2);text-shadow:0 0 3px var(--bg), 0 0 3px var(--bg);font-size:10.5px;font-weight:600}.tip{z-index:7;pointer-events:none;background:var(--encre);color:#fff;opacity:0;border-radius:10px;max-width:280px;padding:7px 10px;font-size:12.5px;transition:opacity .12s;position:fixed;transform:translate(12px,12px)}.tip.show{opacity:1}.tip b{font:800 15px Bricolage Grotesque,sans-serif}.tip .dim{opacity:.75}.about{z-index:9;background:#0a0c1273;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.about .card{-webkit-user-select:text;user-select:text;max-width:700px;max-height:calc(100% - 40px);font-size:13.5px;line-height:1.5;overflow:auto}.about h2{margin:0 0 8px;font-family:Bricolage Grotesque,sans-serif}.about li{margin-bottom:7px}.about .right{text-align:right;margin:12px 0 0}.scale-note{background:var(--chip);border-left:4px solid var(--orange);border-radius:14px;margin-top:14px;padding:14px 16px}.scale-note h3{text-transform:none;letter-spacing:0;color:var(--txt);margin:0 0 8px;font:800 15px Bricolage Grotesque,sans-serif}.scale-note .sn-body{grid-template-columns:1fr 180px;align-items:start;gap:16px;display:grid}.scale-note p{margin:0 0 8px;font-size:13px}.scale-note .f{background:var(--bg2);color:var(--orange);border-radius:8px;padding:4px 10px;font:700 12.5px Cabin,Gill Sans,system-ui,sans-serif;display:inline-block}.scale-note ul{margin:0 0 8px;padding-left:18px;font-size:12.5px}.scale-note ul li{margin-bottom:4px}.scale-note .dim{color:var(--txt2);opacity:1;font-size:12px}.scale-note figure{background:var(--bg2);border-radius:12px;margin:0;padding:8px}.scale-note svg{width:100%;display:block}.scale-note svg text{fill:var(--txt2);font:600 8px Cabin,Gill Sans,system-ui,sans-serif}.scale-note .ax{stroke:var(--line);stroke-width:1.2px;fill:none}.scale-note polyline{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.scale-note .lin{stroke:var(--txt2);stroke-dasharray:4 3;opacity:.7}.scale-note .sq{stroke:var(--orange)}.scale-note .kn{stroke:var(--bleu)}.scale-note figcaption{color:var(--txt2);flex-wrap:wrap;gap:4px 10px;margin-top:4px;font-size:11px;display:flex}.scale-note figcaption span{align-items:center;gap:5px;display:inline-flex}.scale-note figcaption i{border-top:2.4px solid;width:14px;height:0}.scale-note figcaption i.lin{border-color:var(--txt2);border-top-style:dashed}.scale-note figcaption i.sq{border-color:var(--orange)}.scale-note figcaption i.kn{border-color:var(--bleu)}@media (width<=600px){.scale-note .sn-body{grid-template-columns:1fr}.scale-note figure{max-width:240px}}.loader{z-index:20;background:var(--bg);place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}.loader.done{opacity:0;pointer-events:none}.loader div{color:var(--txt2);letter-spacing:.1em;text-transform:uppercase;font:700 14px Cabin,Gill Sans,system-ui,sans-serif}.app.embed .topbar .brand,.app.clean .dock,.app.clean .side,.mnav{display:none}@media (width<=900px){html,body,#root{height:100dvh}.topbar{gap:8px;padding:8px 10px}.topbar img{height:30px}.topbar h1{font-size:15px}.topbar h1 small{display:none}.topbar .tools{gap:5px}.iconbtn{border-radius:11px;width:36px;height:36px}.iconbtn.txt{justify-content:center;width:36px;padding:0}.iconbtn.txt span,.iconbtn.hide-m{display:none}.dock,.side{top:auto;left:8px;right:8px;bottom:calc(66px + env(safe-area-inset-bottom));z-index:8;overscroll-behavior:contain;width:auto;max-height:min(52dvh,460px);display:none;position:fixed;overflow:auto}.app.tab-vues .dock,.app.tab-filtres .dock,.app.tab-chiffres .side{display:flex}.app.tab-vues .dock .card:not([data-tab=vues]),.app.tab-filtres .dock .card:not([data-tab=filtres]){display:none}.legend{min-width:0;padding:6px 10px;font-size:11px;inset:54px 8px auto;transform:none}.lbl .nm{font-size:9px}.lbl .val{font-size:11.5px}.lbl.small .val{font-size:10.5px}.lbl .box{padding:2px 6px 3px}.detail{top:auto;bottom:calc(72px + env(safe-area-inset-bottom));width:calc(100% - 16px);max-height:55dvh}.tip{display:none}.seg button{padding:10px 8px;font-size:13px}.mnav{z-index:9;background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom));justify-content:space-around;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.mnav button{color:var(--txt2);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:7px 2px;font:600 11px Cabin,Gill Sans,system-ui,sans-serif;display:flex}.mnav button svg{width:21px;height:21px}.mnav button.on{color:var(--orange);background:var(--chip)}}
