.hero-zone-types{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}.operator-hero-stats{display:grid;grid-template-columns:1fr 1fr;column-gap:18px;row-gap:22px;align-self:stretch;align-content:start;margin-top:20px}.operator-index-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-hero-types{grid-column:1 / -1;margin:0;align-items:center}.operator-hero-types-label{font-size:13px;color:var(--ink-2);font-weight:500}.oi-name a{color:inherit;text-decoration:none}.oi-name a:hover{text-decoration:underline}.eligibility-test-page{padding:0 0 72px;display:grid;gap:24px}.eligibility-test-card,.eligibility-feedback{padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--surface)}.eligibility-test-label{display:block;margin-bottom:10px;font-size:14px;font-weight:700;color:var(--ink)}.eligibility-test-input-wrap{position:relative}.eligibility-suggestions{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 40px #0f172a1f;overflow:hidden}.eligibility-suggestion{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;border:0;border-top:1px solid var(--line);background:transparent;text-align:left;font:inherit;cursor:pointer}.eligibility-suggestion:first-child{border-top:0}.eligibility-suggestion strong{color:var(--ink);font-size:14px}.eligibility-suggestion span{color:var(--ink-2);font-size:12.5px}.eligibility-suggestion:hover{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.eligibility-test-hint{margin:10px 0 0;font-size:13px;color:var(--muted)}.eligibility-empty{color:var(--muted);font-size:14px}.eligibility-status{padding:14px 16px;border-radius:16px;font-size:14px;font-weight:600}.eligibility-status.is-loading{background:#0b5cff14;color:var(--accent)}.eligibility-status.is-error{background:#dc262614;color:#991b1b}.eligibility-status.is-success{background:#16a34a1a;color:#166534}.eligibility-result-card{margin-top:16px;border:1px solid var(--line);border-radius:18px;padding:20px 22px;background:var(--bg)}.eligibility-result-head strong{display:block;font-size:18px;color:var(--ink);margin-bottom:6px}.eligibility-result-head p{margin:0;color:var(--ink-2);line-height:1.55}.eligibility-result-rows{display:grid;gap:10px;margin-top:18px}.eligibility-result-row{display:flex;justify-content:space-between;gap:20px;padding-top:10px;border-top:1px solid var(--line)}.eligibility-result-row span{color:var(--ink-2);font-size:13px}.eligibility-result-row strong{color:var(--ink);font-size:13px;text-align:right}.eligibility-result-card.is-available{border-color:#16a34a3d}.eligibility-result-card.is-on-demand,.eligibility-result-card.is-in-progress,.eligibility-result-card.is-pm-ready,.eligibility-result-card.is-pm-progress,.eligibility-result-card.is-planned{border-color:#0b5cff2e}.eligibility-result-card.is-abandoned{border-color:#dc262633}.dep-map{padding:0 28px 72px}#dep-map{width:100%;height:720px;display:block;border-radius:18px;overflow:hidden;border:1px solid var(--line-2);background:linear-gradient(180deg,color-mix(in srgb,var(--soft) 65%,transparent),var(--bg));position:relative;z-index:0}.dep-map-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(180deg,#ffffffd6,#f4f7fceb);color:var(--ink-2);z-index:2;transition:opacity .22s ease,visibility .22s ease}.dep-map-loading.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.dep-map-loading-spinner{width:34px;height:34px;border-radius:999px;border:3px solid rgba(26,95,200,.16);border-top-color:var(--accent);animation:dep-map-spin .75s linear infinite}.dep-map-loading-text{font-size:14px;font-weight:600;line-height:1.4}@keyframes dep-map-spin{to{transform:rotate(360deg)}}.dep-map-error{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:24px;text-align:center;color:var(--ink-2);font-size:16px;font-weight:600;line-height:1.5;background:linear-gradient(180deg,#ffffffeb,#f4f7fcf5)}.dep-map .leaflet-container{font:inherit;background:transparent}.dep-map .leaflet-tile{transition:filter .18s ease}:root[data-theme=dark] .dep-map .leaflet-tile{filter:brightness(.6) invert(1) contrast(1.08) saturate(.72) hue-rotate(180deg)}@media (prefers-color-scheme:dark){:root:not([data-theme]) .dep-map .leaflet-tile{filter:brightness(.6) invert(1) contrast(1.08) saturate(.72) hue-rotate(180deg)}}.dep-map .leaflet-control-attribution{background:#ffffffe0;color:var(--muted);font-size:11px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dep-map .leaflet-control-attribution a{color:var(--ink-2)}.dep-map .leaflet-bar{border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 20px #0f172a14}.dep-map .leaflet-bar a{background:#ffffffeb;color:var(--ink);border-bottom-color:#0f172a14}.dep-map .leaflet-bar a:hover{background:#fffffffa;color:var(--ink)}.dep-map .leaflet-control.dep-legend{margin:14px}.dep-map .dep-legend-box{min-width:148px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#ffffffeb;box-shadow:0 12px 24px #0f172a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dep-map .dep-legend-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;padding:0;background:transparent;text-align:left;cursor:pointer}.dep-map .dep-legend-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.dep-map .dep-legend-indicator{color:var(--ink-2);width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-size:22px;font-weight:400;line-height:1;transform:none}.dep-map .dep-legend-body{margin-top:10px}.dep-map .dep-legend-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2)}.dep-map .dep-legend-row+.dep-legend-row{margin-top:6px}.dep-map .dep-legend-swatch{width:12px;height:12px;border-radius:4px;border:1px solid rgba(15,23,42,.06);flex-shrink:0}.dep-map .leaflet-popup-content-wrapper{border-radius:14px}.dep-map .leaflet-popup-content-wrapper,.dep-map .leaflet-popup-tip-container,.dep-map .leaflet-popup-tip{pointer-events:auto}.dep-map .leaflet-popup-content{margin:14px 16px}.dep-map .leaflet-popup-content strong{display:block;margin-bottom:10px;font-size:14px;color:var(--ink)}.dep-map .leaflet-popup-close-button{color:var(--ink-2)}.dep-map .leaflet-popup-close-button:hover{color:var(--ink);background:transparent}.dep-map .leaflet-popup-tip{background:var(--surface)}.dep-map .tt-row{display:flex;justify-content:space-between;gap:20px;font-size:12.5px;color:var(--ink-2);margin-top:4px}.dep-map .tt-row span:last-child{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.dep-map .map-popup-link{display:inline-flex;align-items:center;margin-top:10px;color:var(--accent);font-size:12.5px;font-weight:600}.dep-map .map-popup-link:hover{text-decoration:underline}@media (hover:hover) and (pointer:fine){.dep-map .map-popup-link{display:none}#dep-map.is-vector-tile-map .map-popup-link{display:inline-flex}}#dep-map.is-vector-tile-map .map-popup-link{display:inline-flex}#dep-map.is-vector-tile-map.is-vector-clickable,#dep-map.is-vector-tile-map.is-vector-clickable .leaflet-container{cursor:pointer}:root[data-theme=dark] .dep-map .leaflet-control-attribution{background:#0c1018d1;color:#e6ecf7c7}:root[data-theme=dark] .dep-map .leaflet-control-attribution a{color:#e6ecf7eb}:root[data-theme=dark] .dep-map .dep-legend-box{border-color:#ffffff14;background:#0c1018d1;box-shadow:0 12px 24px #00000047}:root[data-theme=dark] .dep-map .dep-legend-title{color:#e6ecf7b8}:root[data-theme=dark] .dep-map .dep-legend-indicator{color:#e6ecf7cc}:root[data-theme=dark] .dep-map .dep-legend-row{color:#e6ecf7e6}:root[data-theme=dark] .dep-map .dep-legend-swatch{border-color:#ffffff14}:root[data-theme=dark] .dep-map .leaflet-bar{border-color:#ffffff14;box-shadow:0 10px 20px #00000047}:root[data-theme=dark] .dep-map .leaflet-bar a{background:#0c1018e0;color:#e6ecf7f0;border-bottom-color:#ffffff14}:root[data-theme=dark] .dep-map .leaflet-bar a:hover{background:#121824f5}:root[data-theme=dark] .dep-map .leaflet-popup-content-wrapper,:root[data-theme=dark] .dep-map .leaflet-popup-tip{background:#0a0e16f0;color:#e6ecf7eb;box-shadow:0 16px 36px #00000057}:root[data-theme=dark] .dep-map .leaflet-popup-content strong{color:#f4f7fcfa}:root[data-theme=dark] .dep-map .tt-row{color:#e6ecf7c7}:root[data-theme=dark] .dep-map .tt-row span:last-child{color:#f4f7fcfa}:root[data-theme=dark] .dep-map .map-popup-link{color:#7eb6fffa}:root[data-theme=dark] .dep-map .leaflet-popup-close-button{color:#e6ecf7b3}:root[data-theme=dark] .dep-map .leaflet-popup-close-button:hover{color:#f4f7fcfa;background:transparent}@media (prefers-color-scheme:dark){:root:not([data-theme]) .dep-map .leaflet-control-attribution{background:#0c1018d1;color:#e6ecf7c7}:root:not([data-theme]) .dep-map .leaflet-control-attribution a{color:#e6ecf7eb}:root:not([data-theme]) .dep-map .dep-legend-box{border-color:#ffffff14;background:#0c1018d1;box-shadow:0 12px 24px #00000047}:root:not([data-theme]) .dep-map .dep-legend-title{color:#e6ecf7b8}:root:not([data-theme]) .dep-map .dep-legend-indicator{color:#e6ecf7cc}:root:not([data-theme]) .dep-map .dep-legend-row{color:#e6ecf7e6}:root:not([data-theme]) .dep-map .dep-legend-swatch{border-color:#ffffff14}:root:not([data-theme]) .dep-map .leaflet-bar{border-color:#ffffff14;box-shadow:0 10px 20px #00000047}:root:not([data-theme]) .dep-map .leaflet-bar a{background:#0c1018e0;color:#e6ecf7f0;border-bottom-color:#ffffff14}:root:not([data-theme]) .dep-map .leaflet-bar a:hover{background:#121824f5}:root:not([data-theme]) .dep-map .leaflet-popup-content-wrapper,:root:not([data-theme]) .dep-map .leaflet-popup-tip{background:#0a0e16f0;color:#e6ecf7eb;box-shadow:0 16px 36px #00000057}:root:not([data-theme]) .dep-map .leaflet-popup-content strong{color:#f4f7fcfa}:root:not([data-theme]) .dep-map .tt-row{color:#e6ecf7c7}:root:not([data-theme]) .dep-map .tt-row span:last-child{color:#f4f7fcfa}:root:not([data-theme]) .dep-map .map-popup-link{color:#7eb6fffa}:root:not([data-theme]) .dep-map .leaflet-popup-close-button{color:#e6ecf7b3}:root:not([data-theme]) .dep-map .leaflet-popup-close-button:hover{color:#f4f7fcfa;background:transparent}}.operators-infra{padding:0 28px 72px}.oi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.operator-index-grid,.zone-index-grid{align-items:stretch}@media (max-width:900px){.oi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.operators-infra .oi-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(260px,84vw);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-left:0;-webkit-overflow-scrolling:touch}.operators-infra .oi-card{scroll-snap-align:start}}@media (max-width:900px){.operator-hero-stats{grid-template-columns:1fr}}@media (max-width:560px){.operator-hero-stats{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(240px,82vw);overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.operator-hero-stats .stat{scroll-snap-align:start}.dep-map .hero-meta{display:block;overflow-x:auto;overflow-y:hidden;margin:0 0 18px;padding-bottom:8px;-webkit-overflow-scrolling:touch}.dep-map .hero-meta span{display:flex;flex-wrap:nowrap;gap:10px;width:max-content;min-width:100%}.dep-map .hero-meta .pill{flex:0 0 auto;white-space:nowrap}}.oi-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;min-width:0}.oi-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.oi-name{font-weight:700;font-size:15.5px;letter-spacing:-.01em}.oi-types{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.oi-type{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--soft);padding:3px 8px;border-radius:4px;font-weight:600}.operator-zone-filters{flex-wrap:wrap;justify-content:flex-end}.operator-zone-filters .oi-type{border:1px solid transparent;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.operator-zone-filters .oi-type:hover{border-color:var(--line-2);color:var(--ink)}.operator-zone-filters .oi-type.is-active{background:var(--ink);color:var(--surface)}.oi-share{font-size:14px;color:var(--ink-2);margin-bottom:8px}.oi-share strong{font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.02em;margin-right:6px}.oi-card .bar{height:5px;margin-bottom:12px}.oi-meta{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}.operator-index-card{display:flex;flex-direction:column;gap:0;color:inherit;text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease,background .15s ease}.operator-index-card:hover{border-color:var(--line-2);box-shadow:0 16px 34px #0f172a14;transform:translateY(-1px)}.operator-index-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:-2px 0 12px;font-size:12.5px;color:var(--muted)}.zone-index-text{margin:0 0 16px;color:var(--ink-2);font-size:14px;line-height:1.6}.operator-index-communes{display:flex;flex-direction:column;gap:4px;margin-top:auto}.operator-index-communes strong{font-size:34px;line-height:1;letter-spacing:-.03em;color:var(--ink)}.operator-index-communes span{font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}.operator-index-empty{margin:20px 0 0;color:var(--muted);font-size:14px}.zone-note,.zone-empty-state{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.zone-note{margin:0 0 20px;padding:16px 18px;color:var(--ink-2);font-size:14px;line-height:1.65}.zone-empty-state{display:flex;flex-direction:column;gap:6px;padding:24px 26px;color:var(--ink-2)}.zone-empty-state strong{color:var(--ink);font-size:16px}.zone-copy{max-width:74ch;color:var(--ink-2);font-size:15.5px;line-height:1.8;padding:0 0 72px}.zone-copy p{margin:0 0 18px}.zone-chart-wrap .chart-legend{flex-wrap:wrap;row-gap:10px}.zone-chart-section{padding:0 28px 72px}#zone-history-chart,#zone-production-chart{width:100%;height:auto;display:block}#zone-history-chart .grid,#zone-production-chart .grid{stroke:var(--line-2);stroke-width:1}#zone-history-chart .axis,#zone-production-chart .axis{fill:var(--muted);font-size:11px;font-family:inherit}#zone-history-chart .line{fill:none;stroke-linejoin:round;stroke-linecap:round}.zone-chart-wrap .chart-tooltip{white-space:normal;min-width:220px;max-width:320px}.zone-chart-wrap .tt-swatch{width:10px;height:10px;border-radius:2px;display:inline-block;margin-right:8px;vertical-align:middle}.zone-chart-wrap .tt-row span:first-child{display:inline-flex;align-items:center}.zone-chart-wrap .tt-row-total{padding-bottom:6px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.14)}.sw-bar{width:12px;height:12px}.communes{padding:0 28px 72px}.com-filters{display:flex;gap:12px;align-items:center}.com-search{width:260px}.communes-table{background:var(--surface);overflow:hidden}.communes-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.communes-table-native{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;background:var(--surface)}.communes-table-native thead th{background:var(--soft);font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding:12px 24px;text-align:left;white-space:nowrap}.communes-table-native tbody th,.communes-table-native tbody td{padding:14px 24px;font-size:14px;color:var(--ink);border-top:1px solid var(--line-2);vertical-align:middle;white-space:nowrap}.communes-table-native tbody th{text-align:left}.communes-table-native tbody tr{transition:background .15s}.communes-table-native tbody tr:hover th,.communes-table-native tbody tr:hover td{background:var(--bg)}.communes-table-native .com-empty{padding:24px;color:var(--muted);text-align:center}.communes-table:not(.communes-table-native) .com-head,.communes-table:not(.communes-table-native) .com-row{display:grid;grid-template-columns:1.6fr 1.4fr 1.2fr 1fr 1fr;gap:20px;padding:14px 24px;align-items:center;font-size:14px}.communes-table:not(.communes-table-native) .com-head{background:var(--soft);font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding:12px 24px}.com-sort-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;margin:0;font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;font-weight:inherit;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:color .15s ease}.com-sort-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.com-sort-btn:after{content:"↕";font-size:11px;color:var(--muted);opacity:.6}.com-sort-btn:hover,.com-sort-btn.is-active{color:var(--ink)}.com-sort-btn.is-active:after{opacity:1;color:var(--accent)}.com-sort-btn[data-sort-direction=asc]:after{content:"↑"}.com-sort-btn[data-sort-direction=desc]:after{content:"↓"}.com-sort-btn:focus-visible{outline:0;color:var(--ink);box-shadow:0 0 0 4px #0b5cff1f;border-radius:8px}.communes-table:not(.communes-table-native) .com-row{border-top:1px solid var(--line-2);transition:background .15s;color:var(--ink)}.communes-table:not(.communes-table-native) .com-row:hover{background:var(--bg)}.com-name{font-weight:600;display:flex;align-items:center;gap:8px}.com-name:after{content:"→";color:var(--muted);font-weight:400;opacity:0;transition:opacity .15s,transform .15s}.communes-table-native .com-name{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.communes-table-native .com-name:hover{text-decoration:none}.communes-table-native .com-name:after,.communes-table:not(.communes-table-native) .com-row:hover .com-name:after{opacity:1;transform:translate(2px)}.communes-table-native tbody tr:not(:hover) .com-name:after{opacity:0;transform:none}.com-cov{display:flex;align-items:center;gap:10px;font-variant-numeric:tabular-nums}.com-cov-bar{width:70px;height:4px;background:var(--line-2);border-radius:2px;overflow:hidden}.com-cov-bar i{display:block;height:100%;background:var(--accent);border-radius:2px}.com-cov-bar.low i{background:#d97706}.com-cov-bar.vlow i{background:#dc2626}.com-num{font-variant-numeric:tabular-nums;color:var(--ink-2)}.com-cp{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px}@media (max-width:760px){#dep-map{height:560px}.communes-table-wrap{border-radius:var(--radius)}.communes-table-native{min-width:720px}.communes-table:not(.communes-table-native) .com-head{display:none}.communes-table:not(.communes-table-native) .com-row{grid-template-columns:1fr auto;grid-template-areas:"name cov" "raccord cp" "locaux cp";gap:6px 16px;padding:16px}.communes-table:not(.communes-table-native) .com-name{grid-area:name;font-size:15px}.communes-table:not(.communes-table-native) .com-cov{grid-area:cov;justify-self:end;font-size:13px}.communes-table:not(.communes-table-native) .com-row .com-num:nth-of-type(1){grid-area:raccord;font-size:13px}.communes-table:not(.communes-table-native) .com-row .com-num:nth-of-type(2){grid-area:locaux;font-size:13px}.communes-table:not(.communes-table-native) .com-cp{grid-area:cp;align-self:center;justify-self:end}.com-filters{flex-direction:column;align-items:stretch;width:100%}.com-search{width:100%}.dep-map .leaflet-control.dep-legend{margin:10px}.dep-map .dep-legend-box{min-width:132px;padding:10px 12px}}
