@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@500;600;700;800&display=swap";:root{--font-display:"Outfit", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--accent:#3b82f6;--accent-hover:#7aa1ff;--accent-deep:#2c53cc;--accent-text:#a3c1ff;--accent-soft:#3b82f626;--accent-glow:#3b82f64d;--bg-base:#04091a;--bg-panel:#1e293bb3;--bg-card:#1e293bcc;--bg-panel-solid:#0f172a;--bg-elevated:#131c33;--bg-input:#0f172aa6;--border-light:#3b82f640;--border-color:var(--border-light);--border-strong:#3b82f673;--border-glow:#3b82f673;--shadow-glass:inset 0 1px 0 0 #ffffff1f, 0 12px 40px 0 #00000073, 0 0 20px 0 #3b82f60a;--shadow-glass-hover:inset 0 1px 0 0 #fff3, 0 16px 48px 0 #0000008c, 0 0 25px 0 #3b82f614;--radius-card:16px;--radius-control:10px;--color-solar:var(--accent);--color-solar-glow:var(--accent-glow);--color-pv:#10b981;--color-battery:#3b82f6;--color-battery-glow:#3b82f666;--color-grid:#f59e0b;--color-grid-glow:#f59e0b66;--color-load:#ec4899;--color-load-glow:#ec489966;--color-sky:var(--accent);--text-primary:#f8fafc;--text-secondary:#9ca3af;--text-muted:#6b7280;--on-accent:#fff;--surface-hsl:222 47% 11%;--header-bg:#1e293b8c;--nav-bg:#1e293b8c;--nav-text:#d1d5db;--nav-icon:#9ca3af;--nav-hover-bg:#1e293b99;--nav-hover-text:#fff;--nav-hover-icon:#e5e7eb;--nav-active-bg:#3b82f640;--nav-active-border:#3b82f699;--nav-active-text:#fff;--nav-active-bar:#a3c1ff;--btn-active-bg:#3b82f652;--btn-active-text:#fff;--btn-secondary-hover-text:#fff;--ghost-bg:#1e293b99;--ghost-bg-hover:#1e293be6;--ghost-border:#94a3b840;--overlay-bg:#04091ac7;--pill-success-text:#6ee7b7;--pill-warn-text:#fcd34d;--danger-text:#fca5a5;--success-text:#6ee7b7;--scroll-track:#0f172a66;--scroll-thumb:#3b82f64d;--scroll-thumb-hover:#3b82f699;--body-gradient:radial-gradient(1200px 600px at 15% -10%, #3b82f61a, transparent 60%), radial-gradient(900px 500px at 110% 110%, #a855f714, transparent 60%)}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--accent-text:#0b64f4;--accent-hover:#0a5ce0;--accent-glow:#3b82f633;--bg-base:#eaeef5;--bg-panel:#fff9;--bg-card:#ffffff8c;--bg-panel-solid:#fafbfd;--bg-elevated:#fafbfd;--bg-input:#f1f4f9e6;--border-light:#94a3b859;--border-strong:#3b82f666;--border-glow:#3b82f666;--shadow-glass:0 1px 0 #fff9 inset, 0 8px 30px #0f172a14;--shadow-glass-hover:0 1px 0 #fffc inset, 0 12px 36px #0f172a1f;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--surface-hsl:0 0% 100%;--header-bg:#ffffff59;--nav-bg:#ffffff59;--nav-text:#4b5563;--nav-icon:#9ca3af;--nav-hover-bg:#fff9;--nav-hover-text:#111827;--nav-hover-icon:#4b5563;--nav-active-bg:#3b82f626;--nav-active-border:#3b82f666;--nav-active-text:#0b64f4;--nav-active-bar:#3b82f6;--btn-active-bg:#3b82f633;--btn-active-text:#0b64f4;--btn-secondary-hover-text:#0950c3;--ghost-bg:#fff9;--ghost-bg-hover:#fff;--ghost-border:#e5e7eb;--overlay-bg:#0f172a59;--pill-success-text:#047857;--pill-warn-text:#b45309;--danger-text:#b91c1c;--success-text:#047857;--scroll-track:#94a3b826;--scroll-thumb:#3b82f640;--scroll-thumb-hover:#3b82f673;--body-gradient:radial-gradient(1200px 600px at 15% -10%, #3b82f614, transparent 60%), radial-gradient(900px 500px at 110% 110%, #a855f70f, transparent 60%)}*{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background-color:var(--bg-base);background-image:var(--body-gradient);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;width:100vw;height:100vh;font-size:14px;transition:background-color .3s,color .3s;overflow:hidden}::selection{color:var(--accent-text);background:#3b82f64d}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600}#network-bg{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}.glass-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-light);border-radius:var(--radius-card);box-shadow:var(--shadow-glass);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-panel:hover{border-color:var(--border-strong);box-shadow:var(--shadow-glass-hover)}.modal-overlay{background:var(--overlay-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:99999;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.tab-loss-btn{background:var(--bg-input);border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);border-radius:8px;padding:6px 12px;font-size:.78rem;font-weight:600;transition:all .2s}.tab-loss-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--accent-soft)}.tab-loss-btn.active{background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:0 0 18px -4px var(--accent-glow)}.glow-solar{box-shadow:0 0 15px var(--color-solar-glow);border-color:var(--color-solar)!important}.glow-battery{box-shadow:0 0 15px var(--color-battery-glow);border-color:var(--color-battery)!important}.glow-grid{box-shadow:0 0 15px var(--color-grid-glow);border-color:var(--color-grid)!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.form-group{margin-bottom:16px}.form-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin-bottom:6px;font-size:.72rem;font-weight:600;display:block}.form-control{background-color:var(--bg-input);border:1px solid var(--border-light);border-radius:var(--radius-control);width:100%;color:var(--text-primary);font-family:var(--font-sans);padding:9px 12px;font-size:.875rem;transition:all .2s}.form-control:hover{border-color:var(--border-strong)}.form-control:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #3b82f640}.form-control::placeholder{color:var(--text-muted)}select.form-control option{background:var(--bg-elevated);color:var(--text-primary)}input[type=range],input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.form-row{gap:12px;display:flex}.form-row>*{flex:1}.btn{font-family:var(--font-sans);border-radius:var(--radius-control);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-size:.8rem;font-weight:600;line-height:1.1;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:focus-visible{outline-offset:2px;outline:2px solid #6da2f8}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-primary{color:var(--on-accent);background-image:linear-gradient(135deg,#2563eb,#3b82f6);border-color:#0000}.btn-primary:not(:disabled):hover{transform:translateY(-1.5px);box-shadow:0 6px 24px #3b82f673}.btn-secondary{color:var(--accent-text);background-color:#3b82f629;border:1px solid #3b82f673}.btn-secondary:not(:disabled):hover{color:var(--btn-secondary-hover-text);background-color:#3b82f647;border-color:#3b82f699}.btn-ghost{background-color:var(--ghost-bg);color:var(--text-secondary);border:1px solid var(--ghost-border)}.btn-ghost:not(:disabled):hover{background-color:var(--ghost-bg-hover);color:var(--text-primary)}.btn-danger{color:var(--danger-text);background-color:#ef444426;border:1px solid #ef444466}.btn-danger:not(:disabled):hover{color:var(--text-primary);background-color:#ef444447}.btn-success{color:var(--success-text);background-color:#10b98126;border:1px solid #10b98166}.btn-success:not(:disabled):hover{color:var(--text-primary);background-color:#10b98147}.btn:not(:disabled):active{transform:translateY(.5px)}.btn.active{background-color:var(--btn-active-bg);border-color:var(--accent);color:var(--btn-active-text);box-shadow:inset 0 0 0 1px #3b82f680, 0 0 16px -4px var(--accent-glow);background-image:none}.btn.active:hover{background-color:#3b82f66b}#app-container{z-index:1;grid-template:"header"64px"main"1fr/1fr;width:100vw;height:100vh;display:grid;position:relative}#app-header{background-color:var(--header-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-light);z-index:100;grid-area:header;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-badge{background:#fff;border:1px solid #fff9;border-radius:12px;justify-content:center;align-items:center;padding:4px 6px;display:inline-flex;box-shadow:0 4px 16px #00000059}.brand-logo{mix-blend-mode:multiply;width:auto;height:34px;display:block}.brand-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700;line-height:1.1}.brand-sub{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:#e61c2a;margin-top:2px;font-size:.62rem;font-weight:800;display:block}#app-sidebar{background-color:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid var(--border-light);z-index:90;flex-direction:column;grid-area:sidebar;gap:24px;padding:20px;display:flex;overflow-y:auto}#app-main{grid-area:main;position:relative;overflow:hidden}#app-bottom{background-color:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-light);z-index:90;grid-area:bottom;gap:24px;padding:16px 24px;display:flex;overflow-y:auto}#workflow-nav{background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);flex-shrink:0;gap:6px;padding:8px 16px;display:flex;overflow-x:auto}.view-nav-btn{color:var(--nav-text);font-family:var(--font-sans);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:8px 14px 8px 16px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex;position:relative}.view-nav-btn .nav-icon{width:16px;height:16px;color:var(--nav-icon);flex-shrink:0;transition:transform .2s,color .2s}.view-nav-btn .nav-step{font-family:var(--font-mono);color:var(--text-muted);font-size:.66rem;transition:color .2s}.view-nav-btn:hover{background:var(--nav-hover-bg);color:var(--nav-hover-text)}.view-nav-btn:hover .nav-icon{color:var(--nav-hover-icon);transform:scale(1.1)}.view-nav-btn.active{background:var(--nav-active-bg);border-color:var(--nav-active-border);color:var(--nav-active-text);box-shadow:0 0 25px -5px var(--accent-glow);font-weight:600}.view-nav-btn.active:before{content:"";background:var(--nav-active-bar);border-radius:0 9999px 9999px 0;width:4px;height:20px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.view-nav-btn.active .nav-icon,.view-nav-btn.active .nav-step{color:var(--accent-text)}.module-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-text);border-bottom:1px solid var(--border-light);align-items:center;gap:8px;margin-bottom:14px;padding-bottom:8px;font-size:.8rem;font-weight:700;display:flex}.config-section{flex-direction:column;display:flex}.tabs{border-bottom:1px solid var(--border-light);margin-bottom:16px;display:flex}.tab-btn{color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--accent-text);border-bottom-color:var(--accent)}.tab-content{display:none}.tab-content.active{display:block}.status-pill{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.status-pill-success{color:var(--pill-success-text);background-color:#10b98126;border:1px solid #10b9814d}.status-pill-info{background-color:var(--accent-soft);color:var(--accent-text);border:1px solid var(--border-strong)}.status-pill-warn{color:var(--pill-warn-text);background-color:#f59e0b26;border:1px solid #f59e0b4d}table{border-color:var(--border-light)}#nav-btn-motion{padding:5px 8px}#nav-btn-motion svg{width:14px;height:14px;display:block}#nav-btn-theme{padding:5px 8px}#nav-btn-theme svg{width:14px;height:14px;display:block}#nav-btn-theme .icon-sun{display:none}#nav-btn-theme .icon-moon,html[data-theme=light] #nav-btn-theme .icon-sun{display:block}html[data-theme=light] #nav-btn-theme .icon-moon{display:none}.help-drawer{z-index:100030;justify-content:flex-end;display:none;position:fixed;inset:0}.help-drawer.help-drawer-open{display:flex}.help-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#04091a73;animation:.12s ease-out help-fade;position:absolute;inset:0}.help-panel{background:var(--bg-panel-solid);border-left:1px solid var(--border-light);width:min(36rem,100vw);height:100%;color:var(--text-primary);flex-direction:column;animation:.18s ease-out help-slide;display:flex;position:relative;box-shadow:-12px 0 40px #00000059}@keyframes help-fade{0%{opacity:0}to{opacity:1}}@keyframes help-slide{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.help-backdrop,.help-panel{animation:none}}.help-header{border-bottom:1px solid var(--border-light);flex-shrink:0;padding:14px 18px 12px}.help-header-row{align-items:flex-start;gap:10px;display:flex}.help-titles{flex:1;min-width:0}.help-eyebrow{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);margin:0;font-size:.62rem;font-weight:700}.help-title{font-family:var(--font-display);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:1.1rem;font-weight:700;line-height:1.25;overflow:hidden}.help-icon-btn{flex-shrink:0;width:32px;height:32px;padding:0;font-size:1rem}.help-search{margin-top:12px}.help-search .form-control{padding:8px 12px;font-size:.85rem}.help-scroller{flex:1;min-height:0;padding:16px 18px 20px;overflow-y:auto}.help-foot{border-top:1px solid var(--border-light);color:var(--text-muted);flex-shrink:0;padding:10px 18px;font-size:.72rem}.help-contents{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.help-contents-item{width:100%;color:var(--text-primary);font-family:var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:baseline;gap:12px;padding:9px 12px;font-size:.9rem;transition:background .15s;display:flex}.help-contents-item:hover{background:hsl(var(--surface-hsl) / .6);border-color:var(--border-light)}.help-n{font-family:var(--font-mono);color:var(--accent-text);flex-shrink:0;margin-right:6px;font-size:.72rem}.help-count{color:var(--text-muted);margin:0 0 10px;font-size:.75rem}.help-hits{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.help-hit{text-align:left;border:1px solid var(--border-light);background:var(--bg-card);width:100%;color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;border-radius:12px;padding:10px 14px;transition:border-color .15s}.help-hit:hover{border-color:var(--border-strong)}.help-hit-title{margin:0;font-size:.9rem;font-weight:600}.help-snippet{color:var(--text-secondary);margin:4px 0 0;font-size:.8rem;line-height:1.5}.help-snippet mark{color:var(--text-primary);background:#3b82f638;border-radius:3px;padding:0 2px}.help-empty{text-align:center;color:var(--text-secondary);padding:40px 0;font-size:.9rem}.help-body{color:var(--text-secondary);font-size:.92rem;line-height:1.6}.help-body>*+*{margin-top:14px}.help-body p{margin:0}.help-heading{color:var(--text-primary);scroll-margin-top:8px}h3.help-heading{font-family:var(--font-display);padding-top:8px;font-size:1rem;font-weight:600}h4.help-heading{padding-top:4px;font-size:.88rem;font-weight:600}.help-anchor-hit{background:#3b82f61f;border-radius:8px;margin:0 -8px;box-shadow:0 0 0 1px #3b82f673;padding:4px 8px!important}.help-strong{color:var(--text-primary);font-weight:600}.help-ui{font-family:var(--font-mono);color:var(--accent-text);background:#3b82f624;border-radius:6px;padding:1px 6px;font-size:.85em}.help-link{color:var(--accent-text);text-underline-offset:2px;word-break:break-all;text-decoration:underline}.help-bullets{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.help-bullets li::marker{color:var(--text-muted)}.help-steps{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.help-steps li{grid-template-columns:24px 1fr;align-items:start;gap:10px;display:grid}.help-step-n{background:var(--accent);width:24px;height:24px;color:var(--on-accent);border-radius:999px;place-items:center;margin-top:1px;font-size:.7rem;font-weight:700;display:grid}.help-note{border-left:4px solid var(--accent);background:#3b82f614;border-radius:12px;flex-direction:column;gap:6px;padding:10px 14px;display:flex}.help-note-warn{background:#f59e0b1a;border-left-color:#f59e0b}.help-note-label{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);font-size:.62rem;font-weight:700}.help-note-warn .help-note-label{color:#d97706}.help-legend{border:1px solid var(--border-light);border-radius:12px;margin:0;overflow:hidden}.help-legend-row{grid-template-columns:9rem 1fr;gap:12px;padding:9px 14px;display:grid}.help-legend-row+.help-legend-row{border-top:1px solid var(--border-light)}.help-legend dt{color:var(--text-primary);font-weight:600}.help-legend dd{margin:0}@media (width<=480px){.help-legend-row{grid-template-columns:1fr;gap:2px}}.help-tablewrap{border:1px solid var(--border-light);border-radius:12px;overflow-x:auto}.help-table{border-collapse:collapse;width:100%;font-size:.82rem}.help-table th{text-align:left;white-space:nowrap;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-light);padding:8px 12px;font-size:.64rem;font-weight:700}.help-table td{vertical-align:top;border-top:1px solid var(--border-light);padding:8px 12px}.help-table tbody tr:first-child td{border-top:0}.help-figure{flex-direction:column;gap:8px;margin:0;display:flex}.help-figure img{border:1px solid var(--border-light);background:#fff;border-radius:12px;width:100%}.help-figure img.help-figure-phone{max-width:260px;margin:0 auto}.help-figure figcaption{color:var(--text-muted);font-size:.8rem}.help-figure-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-text);margin-right:6px;font-size:.68rem}.help-who{flex-wrap:wrap;gap:6px;padding-top:4px;display:flex}.help-chip{color:var(--accent-text);background:#3b82f624;border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.help-hint{border:1px solid var(--border-strong);width:18px;height:18px;color:var(--text-muted);vertical-align:middle;cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;line-height:1;transition:all .15s;display:inline-grid}.help-hint:hover{border-color:var(--accent);color:var(--accent-text);background:#3b82f61f}.help-hint:focus-visible{outline-offset:2px;outline:2px solid #6da2f8}.leaflet-tooltip.dno-area-label{box-shadow:none;color:#fff;white-space:normal;text-align:center;text-shadow:0 0 3px #000000f2,0 0 6px #000c;pointer-events:none;background:0 0;border:none;width:110px;padding:0;font-size:.66rem;font-weight:700;line-height:1.25}.leaflet-tooltip.dno-area-label:before{display:none}:root{--pvs-tint-pv:#fbbf24;--pvs-tint-excl:#f87171;--pvs-tint-build:#7dd3fc;--pvs-tint-table:#c4b5fd;--pvs-tint-sun:#fbbf24;--pvs-tint-ok:#34d399}html[data-theme=light]{--pvs-tint-pv:#b45309;--pvs-tint-excl:#dc2626;--pvs-tint-build:#0369a1;--pvs-tint-table:#6d28d9;--pvs-tint-sun:#b45309;--pvs-tint-ok:#047857}#pvs-toolbar.pvs-ribbon{background:hsl(var(--surface-hsl) / .92);border-bottom:1px solid var(--border-light);z-index:10;flex-wrap:wrap;align-items:stretch;row-gap:2px;padding:3px 6px 2px;display:flex;position:relative}.pvs-group{border-right:1px solid var(--border-light);flex-direction:column;justify-content:space-between;align-items:center;gap:1px;padding:1px 4px;display:flex}.pvs-group:last-child{border-right:none}#pvs-toolbar.pvs-ribbon .pvs-group{padding:1px 3px}#pvs-toolbar.pvs-ribbon .pvs-tb{padding:0 2.5px}.pvs-group-row{align-items:center;gap:1px;display:flex}.pvs-group-label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:.56rem;font-weight:700;line-height:1.3}.pvs-seg{background:var(--bg-input);border:1px solid var(--border-light);border-radius:8px;align-items:center;gap:1px;padding:1px;display:inline-flex}.pvs-seg-label{color:var(--text-secondary);white-space:nowrap;padding:0 4px 0 5px;font-size:.62rem;font-weight:600}.pvs-tb{min-width:24px;height:28px;color:var(--text-secondary);font:600 .7rem/1 var(--font-sans);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:3px;padding:0 3px;transition:background-color .12s,color .12s,border-color .12s;display:inline-flex}.pvs-seg .pvs-tb{border-radius:6px;min-width:23px;height:24px}.pvs-tb svg{flex:none;width:16px;height:16px}.pvs-tb .pvs-caret{opacity:.7;width:10px;height:10px;margin-left:-2px}.pvs-tb:hover:not(:disabled){background:var(--accent-soft);color:var(--text-primary)}.pvs-tb.active{background:var(--btn-active-bg);color:var(--btn-active-text);border-color:var(--nav-active-border)}.pvs-tb:disabled{opacity:.35;cursor:default}.pvs-tb:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pvs-tb.primary{color:var(--on-accent);background-image:linear-gradient(135deg,#2563eb,#3b82f6)}.pvs-tb[data-tint=pv] svg{color:var(--pvs-tint-pv)}.pvs-tb[data-tint=excl] svg{color:var(--pvs-tint-excl)}.pvs-tb[data-tint=build] svg{color:var(--pvs-tint-build)}.pvs-tb[data-tint=table] svg{color:var(--pvs-tint-table)}.pvs-tb[data-tint=sun] svg{color:var(--pvs-tint-sun)}.pvs-tb[data-tint=ok] svg{color:var(--pvs-tint-ok)}.pvs-tb.active[data-tint] svg{color:currentColor}.pvs-popover{z-index:1200;background:var(--bg-panel-solid);border:1px solid var(--border-strong);min-width:250px;max-height:min(70vh,560px);font-family:var(--font-sans);border-radius:10px;padding:6px;position:absolute;overflow-y:auto;box-shadow:0 14px 40px #00000073}.pvs-popover-head{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);padding:7px 8px 3px;font-size:.58rem;font-weight:700}.pvs-popover-item{width:100%;color:var(--text-primary);font:500 .76rem/1.25 var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;padding:6px 8px;display:flex}.pvs-popover-item:hover,.pvs-popover-item:focus-visible{background:var(--accent-soft);outline:none}.pvs-popover-item svg{width:18px;height:18px;color:var(--pvs-tint-build);flex:none}.pvs-popover-item small{color:var(--text-muted);font-size:.66rem;font-weight:400;display:block}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.tour-root{z-index:2147480000;pointer-events:none;font-family:var(--font-sans);--tour-dim:#02061794;--tour-dim-light:#02061733;--tour-ring:var(--accent);display:none;position:fixed;inset:0}html[data-theme=light] .tour-root{--tour-dim:#0f172a6b;--tour-dim-light:#0f172a24}.tour-root.tour-on{display:block}.tour-dim{pointer-events:none;position:absolute;inset:0}.tour-dim path{fill:var(--tour-dim);transition:fill .16s}.tour-root[data-dim=light] .tour-dim path{fill:var(--tour-dim-light)}.tour-root[data-dim=none] .tour-dim path{fill:#0000}.tour-shield{pointer-events:auto;cursor:not-allowed;background:0 0;position:absolute;top:0;left:0}.tour-ring{pointer-events:none;border:2px solid var(--tour-ring);box-shadow:0 0 0 4px var(--accent-soft), 0 0 22px var(--accent);animation:1.6s ease-in-out infinite tour-pulse;position:absolute;top:0;left:0}@keyframes tour-pulse{0%,to{box-shadow:0 0 0 3px var(--accent-soft), 0 0 14px #3b82f68c}50%{box-shadow:0 0 0 9px #3b82f614,0 0 26px #3b82f6d9}}.tour-ring.tour-ring-flash{animation:.42s ease-out tour-flash,1.6s ease-in-out .42s infinite tour-pulse}@keyframes tour-flash{0%{border-color:#f59e0b;box-shadow:0 0 0 10px #f59e0b40}to{border-color:var(--tour-ring)}}.tour-ghosts{pointer-events:none;position:absolute;inset:0}.tour-ghost{width:30px;height:30px;color:var(--on-accent);background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft), 0 4px 14px #00000073;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;animation:1.4s ease-in-out infinite tour-ghost;display:flex;position:absolute;top:-15px;left:-15px}.tour-ghost.tour-ghost-done{opacity:.85;background:#10b981;animation:none}@keyframes tour-ghost{0%,to{box-shadow:0 0 0 3px var(--accent-soft), 0 4px 14px #00000073}50%{box-shadow:0 0 0 10px #3b82f61f,0 4px 14px #00000073}}.tour-card{pointer-events:auto;background:var(--bg-panel-solid);width:min(380px,100vw - 24px);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:12px;padding:14px 16px 12px;transition:transform .18s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;left:0;box-shadow:0 18px 50px #00000073,inset 0 0 0 1px #ffffff08}.tour-still .tour-card{transition:none}.tour-card.tour-nudge{animation:.36s ease-in-out tour-shake}@keyframes tour-shake{0%,to{translate:0}25%{translate:-6px}75%{translate:6px}}.tour-card-head{align-items:flex-start;gap:8px;display:flex}.tour-eyebrow{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);flex:1;margin:0;font-size:.66rem;font-weight:700}.tour-head-btns{gap:2px;margin:-4px -6px 0 0;display:flex}.tour-icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;width:26px;height:24px;font-size:1rem;line-height:1}.tour-icon-btn:hover{background:var(--accent-soft);color:var(--text-primary)}.tour-title{font-family:var(--font-display);margin:6px 0;font-size:1.02rem;font-weight:700;line-height:1.3}.tour-body{color:var(--text-primary);font-size:.8rem;line-height:1.55}.tour-body p{margin:0 0 7px}.tour-body ul{margin:0 0 7px;padding-left:18px}.tour-body li{margin:2px 0}.tour-body strong{color:var(--text-primary)}.tour-ui{font-family:var(--font-sans);background:var(--accent-soft);border:1px solid var(--border-light);color:var(--text-primary);white-space:nowrap;border-radius:5px;padding:1px 6px;font-size:.74rem;font-weight:600}.tour-status{background:var(--accent-soft);color:var(--text-primary);border-radius:7px;margin:4px 0 8px;padding:6px 9px;font-size:.74rem;line-height:1.4}.tour-status[data-tone=done]{color:#10b981;background:#10b98124;font-weight:700}.tour-status[data-tone=warn]{color:#d97706;background:#f59e0b24}.tour-status[data-tone=error]{color:#ef4444;background:#ef44441f}html:not([data-theme=light]) .tour-status[data-tone=warn]{color:#fbbf24}.tour-status[data-tone=wait]:before{content:"";border:2px solid var(--accent);vertical-align:-1px;border-right-color:#0000;border-radius:50%;width:9px;height:9px;margin-right:7px;animation:.8s linear infinite tour-spin;display:inline-block}.tour-still .tour-status[data-tone=wait]:before{animation:none}@keyframes tour-spin{to{transform:rotate(360deg)}}.tour-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.tour-spacer{flex:1}.tour-btn{padding:5px 11px!important;font-size:.74rem!important}.tour-track{background:var(--border-light);border-radius:0 0 12px 12px;height:3px;margin:10px -16px -12px;overflow:hidden}.tour-bar{background:var(--accent);width:0;height:100%;transition:width .24s}.tour-menu{z-index:2;background:var(--bg-panel-solid);border:1px solid var(--border-light);border-radius:9px;min-width:220px;padding:5px;display:none;position:absolute;top:34px;right:10px;box-shadow:0 12px 30px #0006}.tour-menu.tour-menu-open{flex-direction:column;display:flex}.tour-menu-item{text-align:left;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 10px;font-size:.78rem}.tour-menu-item:hover{background:var(--accent-soft)}.tour-menu-danger{color:#ef4444}.tour-pill{pointer-events:auto;background:var(--bg-panel-solid);border:1px solid var(--border-strong);max-width:min(420px,100vw - 32px);color:var(--text-primary);border-radius:999px;align-items:center;gap:8px;padding:7px 8px 7px 12px;font-size:.76rem;display:none;position:absolute;bottom:16px;right:16px;box-shadow:0 10px 30px #0006}.tour-pill-text{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.tour-pill-btn{background:var(--accent);color:var(--on-accent);cursor:pointer;border:none;border-radius:999px;padding:4px 11px;font-size:.72rem;font-weight:700}.tour-collapsed .tour-card{display:none}.tour-collapsed .tour-pill{display:flex}.tour-hub{z-index:2147480001;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--font-sans);background:#0206178c;justify-content:center;align-items:center;display:none;position:fixed;inset:0}html[data-theme=light] .tour-hub{background:#0f172a59}.tour-hub.tour-hub-open{display:flex}.tour-hub-panel{background:var(--bg-panel-solid);width:min(640px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:14px;padding:20px 22px 18px;overflow-y:auto;box-shadow:0 24px 70px #00000080}.tour-hub-head{align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.tour-hub-head h2{font-family:var(--font-display);flex:1;margin:0;font-size:1.25rem}.tour-hub-sub{color:var(--text-secondary);margin:0 0 14px;font-size:.8rem;line-height:1.5}.tour-hub-cta{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.tour-hub-section{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);margin:14px 0 6px;font-size:.7rem;font-weight:700}.tour-chapters{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tour-chapter{border:1px solid var(--border-light);background:var(--bg-card);border-radius:9px;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.tour-chapter-n{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-text);border-radius:50%;justify-content:center;align-items:center;font-size:.74rem;font-weight:800;display:flex}.tour-chapter.tour-done .tour-chapter-n{color:#10b981;background:#10b9812e}.tour-chapter.tour-current{border-color:var(--accent)}.tour-chapter.tour-soon{opacity:.55}.tour-chapter-title{font-size:.84rem;font-weight:700}.tour-chapter-sum{color:var(--text-secondary);margin-top:1px;font-size:.72rem}.tour-chapter-meta{color:var(--text-muted);white-space:nowrap;font-size:.68rem}.tour-hub-foot{color:var(--text-muted);margin-top:14px;font-size:.7rem;line-height:1.5}.tour-toast{z-index:2147480002;background:var(--bg-panel-solid);width:min(360px,100vw - 36px);color:var(--text-primary);border:1px solid var(--border-strong);font-family:var(--font-sans);border-radius:12px;padding:14px 16px;font-size:.8rem;line-height:1.5;animation:.26s ease-out tour-rise;position:fixed;bottom:18px;right:18px;box-shadow:0 16px 44px #00000073}.tour-toast h4{font-family:var(--font-display);margin:0 0 4px;font-size:.95rem}.tour-toast p{color:var(--text-secondary);margin:0 0 10px}.tour-toast-actions{justify-content:flex-end;gap:6px;display:flex}@keyframes tour-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.tour-ring,.tour-ghost,.tour-toast,.tour-status[data-tone=wait]:before{animation:none}.tour-card{transition:none}}.tour-still .tour-ring,.tour-still .tour-ghost{animation:none}@media (width<=720px){.tour-card{width:calc(100vw - 24px)}.tour-chapter{grid-template-columns:26px 1fr}.tour-chapter-meta{display:none}}
