.map-loading-overlay{position:fixed;inset:0;z-index:2000;background-color:#ffffffb8;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:progress;animation:overlayFade .15s ease-out}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}.spinner{width:40px;height:40px;border:4px solid var(--color-text-muted);border-top:4px solid var(--color-text);border-radius:50%;animation:spin 1s linear infinite}.loading-text{margin-top:10px;font-size:14px;color:var(--color-text);font-weight:700}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-fab{position:fixed;right:14px;bottom:22px;z-index:1200;width:54px;height:54px;border-radius:50%;border:none;cursor:pointer;color:#fff;font-size:24px;background:linear-gradient(135deg,#6366f1,#7c3aed);box-shadow:0 8px 24px #6366f173;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.ai-fab:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 12px 30px #6366f18c}.ai-panel{position:fixed;right:60px;bottom:40px;z-index:1200;width:400px;max-width:calc(100vw - 44px);height:560px;max-height:calc(100vh - 44px);display:flex;flex-direction:column;background:#fffffff5;-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1);border:1px solid rgba(255,255,255,.7);border-radius:18px;box-shadow:0 24px 70px #1e1b4b47;overflow:hidden;animation:aiPanelIn .22s cubic-bezier(.2,.8,.2,1);font-family:Inter,-apple-system,sans-serif}@keyframes aiPanelIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff}.ai-header-title{display:flex;align-items:center;gap:10px}.ai-header-icon{font-size:20px}.ai-header-sub{font-size:11px;opacity:.85}.ai-header-actions{display:flex;align-items:center;gap:8px}.ai-close,.ai-clear-btn{background:#ffffff2e;border:none;color:#fff;border-radius:8px;padding:5px 10px;cursor:pointer;font-size:12px}.ai-close:hover,.ai-clear-btn:hover{background:#ffffff4d}.ai-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.ai-hello{color:#64748b;font-size:13px}.ai-hello p{margin:4px 0 10px}.ai-hello button{display:block;width:100%;text-align:left;margin-bottom:6px;padding:9px 12px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:10px;cursor:pointer;font-size:12.5px;color:#334155}.ai-hello button:hover{border-color:#6366f1;background:#eef2ff}.ai-msg{max-width:88%;padding:9px 13px;border-radius:14px;font-size:13.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.ai-msg.user{align-self:flex-end;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;border-bottom-right-radius:4px}.ai-msg.ai{align-self:flex-start;background:#f1f5f9;color:#1e293b;border-bottom-left-radius:4px;max-width:95%}.ai-msg.ai.error{background:#fef2f2;color:#991b1b}.ai-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.ai-msg .ai-chips{margin:0 0 6px}.ai-chip{font-size:10.5px;background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;font-family:ui-monospace,Menlo,monospace}.ai-chip.fail{background:#fef2f2;color:#991b1b;border-color:#fecaca}.ai-chart{margin-top:8px;background:#fff;border-radius:10px;padding:4px;position:relative}.ai-chart-id{position:absolute;top:6px;right:8px;z-index:2;font:600 9.5px ui-monospace,Menlo,monospace;color:#94a3b8;background:#f1f5f9;border-radius:6px;padding:1px 6px}.ai-table-wrap{margin-top:8px;max-height:220px;overflow:auto;border-radius:10px;background:#fff}.ai-table{border-collapse:collapse;width:100%;font-size:11px}.ai-table th{position:sticky;top:0;background:#eef2ff;color:#4338ca;padding:5px 8px;text-align:left;white-space:nowrap}.ai-table td{padding:4px 8px;border-top:1px solid #f1f5f9;white-space:nowrap}.ai-table-more{padding:6px 8px;color:#94a3b8;font-size:11px}.ai-map-note{margin-top:8px;font-size:12px;color:#4338ca;background:#eef2ff;border-radius:8px;padding:6px 10px}.ai-typing{display:flex;gap:4px;padding:4px 2px}.ai-typing span{width:7px;height:7px;border-radius:50%;background:#a5b4fc;animation:aiBounce 1.2s infinite}.ai-typing span:nth-child(2){animation-delay:.15s}.ai-typing span:nth-child(3){animation-delay:.3s}@keyframes aiBounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.ai-input-row{display:flex;gap:8px;padding:12px;border-top:1px solid #e2e8f0;background:#fff}.ai-input-row textarea{flex:1;resize:none;border:1px solid #e2e8f0;border-radius:10px;padding:9px 12px;font:13.5px Inter,sans-serif;outline:none;max-height:90px}.ai-input-row textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.ai-send{width:40px;border:none;border-radius:10px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;cursor:pointer;font-size:15px;transition:filter .15s ease}.ai-send:hover:not(:disabled){filter:brightness(1.08)}.ai-send:disabled{opacity:.45;cursor:default}.ai-fab-stack{position:fixed;right:60px;bottom:40px;z-index:1200;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.ai-fab-stack .ai-fab{position:static}.ai-layer-pill{border:none;cursor:pointer;background:#fff;color:#6d28d9;font:600 12px Inter,sans-serif;border-radius:999px;padding:6px 12px;box-shadow:0 4px 14px #1e1b4b38}.ai-layer-pill:hover{background:#eef2ff}.ai-inline-clear{margin-left:8px;border:none;background:none;color:#6d28d9;font-size:11px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.ai-chip.pending{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}.ai-chip-spin{display:inline-block;width:9px;height:9px;border-radius:50%;border:2px solid #a5b4fc;border-top-color:#4338ca;animation:aiSpin .7s linear infinite;vertical-align:-1px}@keyframes aiSpin{to{transform:rotate(360deg)}}.ai-send.ai-stop{background:#dc2626}.ai-send.ai-stop:hover{filter:brightness(1.1)}.ai-stopped-note{font-size:11px;color:#9ca3af;margin-top:4px}.ai-chip{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-sim-card{margin-top:8px;background:#fff;border:1px solid #e2e8f0;border-left:3px solid #7c3aed;border-radius:10px;padding:10px 12px;font-size:12.5px}.ai-sim-head{font-weight:700;color:#1e293b;display:flex;align-items:center;gap:8px}.ai-sim-badge{font:600 10px Inter,sans-serif;text-transform:uppercase;background:#ede9fe;color:#6d28d9;border-radius:999px;padding:2px 8px}.ai-sim-badge.done{background:#dcfce7;color:#166534}.ai-sim-badge.fail{background:#fee2e2;color:#b91c1c}.ai-sim-ops{margin:6px 0 4px 18px;padding:0;color:#334155}.ai-sim-ops li{margin:2px 0}.ai-sim-meta{color:#64748b;font-size:11.5px;margin-top:4px}.ai-sim-start{margin-top:8px;border:none;border-radius:8px;background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;font:600 12.5px Inter,sans-serif;padding:7px 14px;cursor:pointer}.ai-sim-start:hover:not(:disabled){filter:brightness(1.08)}.ai-sim-start:disabled{opacity:.5;cursor:default}.ai-sim-bar{margin-top:6px;height:7px;border-radius:999px;background:#f1f5f9;overflow:hidden}.ai-sim-bar>div{height:100%;border-radius:999px;background:linear-gradient(90deg,#6366f1,#7c3aed);transition:width .6s ease}.ai-sim-desc{margin:4px 0 2px;font-size:12px;line-height:1.4;color:#334155}.mapbox-gl-draw_ctrl-bottom-left,.mapbox-gl-draw_ctrl-top-left{margin-left:0;border-radius:0 4px 4px 0}.mapbox-gl-draw_ctrl-top-right,.mapbox-gl-draw_ctrl-bottom-right{margin-right:0;border-radius:4px 0 0 4px}.mapbox-gl-draw_ctrl-draw-btn{border-color:#000000e6;color:#ffffff80;width:30px;height:30px}.mapbox-gl-draw_ctrl-draw-btn.active,.mapbox-gl-draw_ctrl-draw-btn.active:hover{background-color:#0000000d}.mapbox-gl-draw_ctrl-draw-btn{background-repeat:no-repeat;background-position:center}.mapbox-gl-draw_point{background-image:url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20">%3Cpath d="m10 2c-3.3 0-6 2.7-6 6s6 9 6 9 6-5.7 6-9-2.7-6-6-6zm0 2c2.1 0 3.8 1.7 3.8 3.8 0 1.5-1.8 3.9-2.9 5.2h-1.7c-1.1-1.4-2.9-3.8-2.9-5.2-.1-2.1 1.6-3.8 3.7-3.8z"/>%3C/svg>')}.mapbox-gl-draw_polygon{background-image:url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20">%3Cpath d="m15 12.3v-4.6c.6-.3 1-1 1-1.7 0-1.1-.9-2-2-2-.7 0-1.4.4-1.7 1h-4.6c-.3-.6-1-1-1.7-1-1.1 0-2 .9-2 2 0 .7.4 1.4 1 1.7v4.6c-.6.3-1 1-1 1.7 0 1.1.9 2 2 2 .7 0 1.4-.4 1.7-1h4.6c.3.6 1 1 1.7 1 1.1 0 2-.9 2-2 0-.7-.4-1.4-1-1.7zm-8-.3v-4l1-1h4l1 1v4l-1 1h-4z"/>%3C/svg>')}.mapbox-gl-draw_line{background-image:url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20">%3Cpath d="m13.5 3.5c-1.4 0-2.5 1.1-2.5 2.5 0 .3 0 .6.2.9l-3.8 3.8c-.3-.1-.6-.2-.9-.2-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5c0-.3 0-.6-.2-.9l3.8-3.8c.3.1.6.2.9.2 1.4 0 2.5-1.1 2.5-2.5s-1.1-2.5-2.5-2.5z"/>%3C/svg>')}.mapbox-gl-draw_trash{background-image:url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20">%3Cpath d="M10,3.4 c-0.8,0-1.5,0.5-1.8,1.2H5l-1,1v1h12v-1l-1-1h-3.2C11.5,3.9,10.8,3.4,10,3.4z M5,8v7c0,1,1,2,2,2h6c1,0,2-1,2-2V8h-2v5.5h-1.5V8h-3 v5.5H7V8H5z"/>%3C/svg>')}.mapbox-gl-draw_uncombine{background-image:url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20">%3Cpath d="m12 2c-.3 0-.5.1-.7.3l-1 1c-.4.4-.4 1 0 1.4l1 1c.4.4 1 .4 1.4 0l1-1c.4-.4.4-1 0-1.4l-1-1c-.2-.2-.4-.3-.7-.3zm4 4c-.3 0-.5.1-.7.3l-1 1c-.4.4-.4 1 0 1.4l1 1c.4.4 1 .4 1.4 0l1-1c.4-.4.4-1 0-1.4l-1-1c-.2-.2-.4-.3-.7-.3zm-7 1c-1 0-1 1-.5 1.5.3.3 1 1 1 1l-1 1s-.5.5 0 1 1 0 1 0l1-1 1 1c.5.5 1.5.5 1.5-.5v-4zm-5 3c-.3 0-.5.1-.7.3l-1 1c-.4.4-.4 1 0 1.4l4.9 4.9c.4.4 1 .4 1.4 0l1-1c.4-.4.4-1 0-1.4l-4.9-4.9c-.1-.2-.4-.3-.7-.3z"/>%3C/svg>')}.mapbox-gl-draw_combine{background-image:url('data:image/svg+xml;utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20">%3Cpath d="M12.1,2c-0.3,0-0.5,0.1-0.7,0.3l-1,1c-0.4,0.4-0.4,1,0,1.4l4.9,4.9c0.4,0.4,1,0.4,1.4,0l1-1 c0.4-0.4,0.4-1,0-1.4l-4.9-4.9C12.6,2.1,12.3,2,12.1,2z M8,8C7,8,7,9,7.5,9.5c0.3,0.3,1,1,1,1l-1,1c0,0-0.5,0.5,0,1s1,0,1,0l1-1l1,1 C11,13,12,13,12,12V8H8z M4,10c-0.3,0-0.5,0.1-0.7,0.3l-1,1c-0.4,0.4-0.4,1,0,1.4l1,1c0.4,0.4,1,0.4,1.4,0l1-1c0.4-0.4,0.4-1,0-1.4 l-1-1C4.5,10.1,4.3,10,4,10z M8,14c-0.3,0-0.5,0.1-0.7,0.3l-1,1c-0.4,0.4-0.4,1,0,1.4l1,1c0.4,0.4,1,0.4,1.4,0l1-1 c0.4-0.4,0.4-1,0-1.4l-1-1C8.5,14.1,8.3,14,8,14z"/>%3C/svg>')}.mapboxgl-map.mouse-pointer .mapboxgl-canvas-container.mapboxgl-interactive{cursor:pointer}.mapboxgl-map.mouse-move .mapboxgl-canvas-container.mapboxgl-interactive{cursor:move}.mapboxgl-map.mouse-add .mapboxgl-canvas-container.mapboxgl-interactive{cursor:crosshair}.mapboxgl-map.mouse-move.mode-direct_select .mapboxgl-canvas-container.mapboxgl-interactive{cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.mapboxgl-map.mode-direct_select.feature-vertex.mouse-move .mapboxgl-canvas-container.mapboxgl-interactive{cursor:move}.mapboxgl-map.mode-direct_select.feature-midpoint.mouse-pointer .mapboxgl-canvas-container.mapboxgl-interactive{cursor:cell}.mapboxgl-map.mode-direct_select.feature-feature.mouse-move .mapboxgl-canvas-container.mapboxgl-interactive{cursor:move}.mapboxgl-map.mode-static.mouse-pointer .mapboxgl-canvas-container.mapboxgl-interactive{cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.mapbox-gl-draw_boxselect{pointer-events:none;position:absolute;top:0;left:0;width:0;height:0;background:#0000001a;border:2px dotted #fff;opacity:.5}.right-sidebar{position:fixed;top:0;right:0;height:100vh;background-color:var(--color-surface);border-left:1px solid var(--color-border);display:flex;flex-direction:column;transition:width .3s ease,min-width .3s ease;z-index:99}.right-sidebar.open{width:320px;min-width:320px}.right-sidebar.expanded{width:600px;min-width:600px}.right-sidebar.feature-table-open{width:900px!important;min-width:900px!important}.right-sidebar.collapsed{width:48px;min-width:48px}.right-sidebar.hidden{width:0;min-width:0;border-left:none;overflow:hidden}.right-sidebar-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--color-border)}.right-sidebar-title{font-size:16px;font-weight:400;color:var(--color-text);white-space:nowrap;overflow:hidden;margin-left:12px}.right-sidebar-close{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;padding:4px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.right-sidebar-close:hover{color:var(--color-text);background-color:var(--color-bg)}.right-sidebar-header-actions{display:flex;align-items:center;gap:2px}.right-sidebar.collapsed .right-sidebar-header{justify-content:center;padding:14px 8px;border-bottom:none}.right-sidebar-toolbar{flex-shrink:0;display:flex;align-items:center;gap:4px;padding:8px 16px;border-bottom:1px solid var(--color-border)}.socio-header-btn{gap:5px;font-size:14px;padding:4px 6px}.socio-header-btn.active{background-color:var(--color-bg);color:var(--color-primary)}.right-sidebar-socio{flex-shrink:0;padding:10px 16px 0}.right-sidebar-socio .socio-panel{margin-bottom:0}.right-sidebar-content{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:16px;display:flex;flex-direction:column;gap:10px}.right-sidebar-content::-webkit-scrollbar{width:6px}.right-sidebar-content::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:3px}.right-sidebar-content::-webkit-scrollbar-thumb:hover{background-color:#00000040}.panel-toolbar-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);font-size:14px;color:var(--color-text);white-space:nowrap}.panel-toolbar-btn:hover{background-color:var(--color-bg)}.graph-button{height:40px;font-size:14px;border-radius:var(--radius);padding:4px 12px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;border:none;cursor:pointer;transition:background .2s ease-in-out}.graph-button.active{background:var(--color-primary-dark);font-weight:700}.graph-button:hover{background:var(--color-primary-dark)}.graph-button.small{height:20px;font-size:12px;padding:2px 8px}.plot-container{margin-top:0;display:flex;flex-direction:column;gap:14px;min-height:0}.plot-container>*{flex-shrink:0}.canton-mode-share+.plot-container{margin-top:10px}.plot-container:after{content:"";display:block;flex-shrink:0;min-height:16px}.plot-container h3{font-size:15px;font-weight:600;color:var(--color-text-dark);margin:0;letter-spacing:.01em}.plot-container h4{font-size:13px;font-weight:600;color:var(--color-text-dark);margin:0 0 6px;letter-spacing:.01em}.plot-container h5{font-size:12px;font-weight:600;color:var(--color-text);margin:0 0 6px;text-transform:uppercase;letter-spacing:.04em}.plot-container h6{font-size:12px;font-weight:600;color:var(--color-text-secondary);margin:0 0 6px}.plot-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:10px}.plot-card:has(>.plot-card-header){padding:0;gap:0;overflow:hidden}.plot-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border)}.plot-card-header h4{font-size:14px;font-weight:600;color:var(--color-text-dark);margin:0!important;letter-spacing:.01em}.plot-card:has(>.plot-card-header)>*:not(.plot-card-header){padding:10px 14px 2px}.plot-context-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:var(--color-primary-light);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:12px;color:var(--color-text);margin-top:8px}.plot-context-pill strong{color:var(--color-text-dark);font-weight:600}.plot-controls{display:flex;flex-wrap:wrap;gap:18px 28px;margin:4px 2px 8px}.plot-controls-group{display:flex;flex-direction:column;gap:6px;min-width:140px}.plot-controls-label{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.plot-controls-group label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text);cursor:pointer}.plot-controls-group input[type=radio]{accent-color:var(--color-primary);cursor:pointer}.plot-controls-group .plot-controls-hint{font-size:11px;font-weight:400;color:var(--color-text-muted);text-transform:none;letter-spacing:0;margin-left:6px}.plot-select{height:32px;padding:0 10px;font-size:13px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;min-width:160px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.plot-select:hover{border-color:var(--color-border-light)}.plot-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.plot-time-row{display:flex;align-items:center;gap:16px;padding:6px 4px 12px}.plot-time-row .plot-time-slider{flex:1;display:flex;flex-direction:column;gap:4px}.plot-time-row .plot-time-label{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.plot-toggle{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--color-text-secondary)}.plot-toggle .plot-toggle-active{color:var(--color-text-dark);font-weight:600}.plot-toggle .plot-toggle-track{position:relative;width:38px;height:20px;border-radius:999px;background:var(--color-border-light);cursor:pointer;transition:background var(--transition-fast)}.plot-toggle .plot-toggle-track.is-on{background:var(--color-primary)}.plot-toggle .plot-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000026;transition:transform var(--transition-fast)}.plot-toggle .plot-toggle-track.is-on .plot-toggle-thumb{transform:translate(18px)}.plot-toggle input{opacity:0;width:0;height:0}.plot-action-btn{height:28px;padding:0 10px;font-size:12px;font-weight:500;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.plot-action-btn:hover{background:var(--color-bg);border-color:var(--color-border-light);color:var(--color-text-dark)}.plot-action-btn.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.plot-action-btn.is-active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.plot-stats{display:flex;flex-wrap:wrap;gap:8px}.plot-stat-chip{display:inline-flex;align-items:baseline;gap:6px;padding:8px 12px;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:12px;color:var(--color-text-secondary)}.plot-stat-chip strong{color:var(--color-text-dark);font-weight:600;font-variant-numeric:tabular-nums}.plot-empty{padding:16px;text-align:center;color:var(--color-text-muted);font-size:13px;font-style:italic;background:var(--color-bg-subtle);border:1px dashed var(--color-border);border-radius:var(--radius-sm)}.feature-table-state{display:grid;place-items:center;width:100%;font-size:13px;color:var(--color-text-secondary)}.feature-table-state--empty{color:var(--color-text-muted);font-style:italic}.mode-filter-container{display:flex;flex-direction:column;gap:6px;background:var(--color-surface);padding:8px 12px 14px;border-radius:var(--radius);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);margin-top:0}.mode-filter-label{font-size:12px;font-weight:400;color:var(--color-text-secondary);letter-spacing:.02em;margin:0}.mode-filter-select{width:100%;height:168px;padding:4px;font-size:13px;font-family:inherit;color:var(--color-text);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-subtle);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.mode-filter-select:hover{border-color:var(--color-border-light);cursor:pointer}.mode-filter-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.mode-filter-select option{padding:7px 10px;font-size:13px;border-radius:var(--radius-xs);color:var(--color-text)}.mode-filter-select option:checked{background:var(--color-primary) linear-gradient(0deg,var(--color-primary),var(--color-primary));color:#fff;font-weight:500}.mode-filter-select::-webkit-scrollbar{width:8px}.mode-filter-select::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:4px}.mode-filter-select::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.mode-filter-divider{height:1px;background:var(--color-border);margin:10px -12px 8px}.mode-filter-slider{padding:4px 16% 10px}.mode-filter-time-label{padding-left:16%}.sidebar-footer{flex-shrink:0;border-top:1px solid var(--color-border);padding:10px 16px;background:var(--color-surface)}.network-buttons-row{display:flex;align-items:center;justify-content:flex-start;gap:8px}.right-sidebar-control-row{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 12px 12px;gap:12px}.right-sidebar-label{font-size:13px;font-weight:500;color:var(--color-text);display:block;margin-bottom:4px}.right-sidebar-checkbox{font-size:13px;font-weight:500;color:var(--color-text);white-space:nowrap;display:flex;align-items:center;gap:6px;cursor:pointer}.rc-slider{position:relative;width:100%;height:14px;padding:5px 0;border-radius:6px;touch-action:none;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider *{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider-rail{position:absolute;width:100%;height:4px;background-color:#e9e9e9;border-radius:6px}.rc-slider-track,.rc-slider-tracks{position:absolute;height:4px;background-color:#abe2fb;border-radius:6px}.rc-slider-track-draggable{z-index:1;box-sizing:content-box;background-clip:content-box;border-top:5px solid rgba(0,0,0,0);border-bottom:5px solid rgba(0,0,0,0);transform:translateY(-5px)}.rc-slider-handle{position:absolute;z-index:1;width:14px;height:14px;margin-top:-5px;background-color:#fff;border:solid 2px #96dbfa;border-radius:50%;cursor:pointer;cursor:-webkit-grab;cursor:grab;opacity:.8;-webkit-user-select:none;user-select:none;touch-action:pan-x}.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging{border-color:#57c5f7;box-shadow:0 0 0 5px #96dbfa}.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging-delete{opacity:0}.rc-slider-handle:focus{outline:none;box-shadow:none}.rc-slider-handle:focus-visible{border-color:#2db7f5;box-shadow:0 0 0 3px #96dbfa}.rc-slider-handle-click-focused:focus{border-color:#96dbfa;box-shadow:unset}.rc-slider-handle:hover{border-color:#57c5f7}.rc-slider-handle:active{border-color:#57c5f7;box-shadow:0 0 5px #57c5f7;cursor:-webkit-grabbing;cursor:grabbing}.rc-slider-mark{position:absolute;top:18px;left:0;width:100%;font-size:12px}.rc-slider-mark-text{position:absolute;display:inline-block;color:#999;text-align:center;vertical-align:middle;cursor:pointer}.rc-slider-mark-text-active{color:#666}.rc-slider-step{position:absolute;width:100%;height:4px;background:transparent}.rc-slider-dot{position:absolute;bottom:-2px;width:8px;height:8px;vertical-align:middle;background-color:#fff;border:2px solid #e9e9e9;border-radius:50%;cursor:pointer}.rc-slider-dot-active{border-color:#96dbfa}.rc-slider-dot-reverse{margin-right:-4px}.rc-slider-disabled{background-color:#e9e9e9}.rc-slider-disabled .rc-slider-track{background-color:#ccc}.rc-slider-disabled .rc-slider-handle,.rc-slider-disabled .rc-slider-dot{background-color:#fff;border-color:#ccc;box-shadow:none;cursor:not-allowed}.rc-slider-disabled .rc-slider-mark-text,.rc-slider-disabled .rc-slider-dot{cursor:not-allowed!important}.rc-slider-vertical{width:14px;height:100%;padding:0 5px}.rc-slider-vertical .rc-slider-rail{width:4px;height:100%}.rc-slider-vertical .rc-slider-track{bottom:0;left:5px;width:4px}.rc-slider-vertical .rc-slider-track-draggable{border-top:0;border-right:5px solid rgba(0,0,0,0);border-bottom:0;border-left:5px solid rgba(0,0,0,0);transform:translate(-5px)}.rc-slider-vertical .rc-slider-handle{position:absolute;z-index:1;margin-top:0;margin-left:-5px;touch-action:pan-y}.rc-slider-vertical .rc-slider-mark{top:0;left:18px;height:100%}.rc-slider-vertical .rc-slider-step{width:4px;height:100%}.rc-slider-vertical .rc-slider-dot{margin-left:-2px}.rc-slider-tooltip-zoom-down-enter,.rc-slider-tooltip-zoom-down-appear,.rc-slider-tooltip-zoom-down-leave{display:block!important;animation-duration:.3s;animation-fill-mode:both;animation-play-state:paused}.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active{animation-name:rcSliderTooltipZoomDownIn;animation-play-state:running}.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active{animation-name:rcSliderTooltipZoomDownOut;animation-play-state:running}.rc-slider-tooltip-zoom-down-enter,.rc-slider-tooltip-zoom-down-appear{transform:scale(0);animation-timing-function:cubic-bezier(.23,1,.32,1)}.rc-slider-tooltip-zoom-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes rcSliderTooltipZoomDownIn{0%{transform:scale(0);transform-origin:50% 100%;opacity:0}to{transform:scale(1);transform-origin:50% 100%}}@keyframes rcSliderTooltipZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}to{transform:scale(0);transform-origin:50% 100%;opacity:0}}.rc-slider-tooltip{position:absolute;top:-9999px;left:-9999px;visibility:visible;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider-tooltip *{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider-tooltip-hidden{display:none}.rc-slider-tooltip-placement-top{padding:4px 0 8px}.rc-slider-tooltip-inner{min-width:24px;height:24px;padding:6px 2px;color:#fff;font-size:12px;line-height:1;text-align:center;text-decoration:none;background-color:#6c6c6c;border-radius:6px;box-shadow:0 0 4px #d9d9d9}.rc-slider-tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.rc-slider-tooltip-placement-top .rc-slider-tooltip-arrow{bottom:4px;left:50%;margin-left:-4px;border-width:4px 4px 0;border-top-color:#6c6c6c}.dz-title{font-size:1.05em;font-weight:600;color:var(--color-text-dark);margin:0 0 12px}.dz-control-label{font-size:.78em;font-weight:500;color:var(--color-text-secondary);margin:0 0 4px}.dz-controls-row{display:flex;gap:10px;align-items:flex-end;margin:0 0 6px}.dz-view-group{display:flex;flex-direction:column;gap:3px}.dz-view-group .dz-control-label{margin:0}.dz-view-narrow{flex:0 0 auto;width:140px}.dz-view-narrow .flow-dir-btn{font-size:.72em;padding:4px 1px}.dz-time-block{flex:1;min-width:0;max-width:240px;margin-left:15px;display:flex;flex-direction:column;gap:3px}.dz-time-block .dz-control-label{margin:0}.dz-time-block .rc-slider{margin:4px 8% 16px;width:auto}.dz-filter-stack{display:flex;gap:10px;margin-bottom:14px}.dz-filter-row{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.dz-filter-row .dz-control-label{margin:0}.dz-filter-row .flow-direction-toggle{width:100%}.dz-filter-row .flow-dir-btn{font-size:.66em;padding:3px 1px}.dz-list-card h4{margin:0 0 8px}.dz-list{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto;padding:4px 14px 12px}.dz-list-empty{color:var(--color-text-muted);font-size:.85em;font-style:italic;margin:0;padding:8px 0}.dz-list-row{display:grid;grid-template-columns:1fr 80px auto auto;gap:8px;align-items:center;padding:6px 8px;border-radius:var(--radius, 6px);font-size:.85em;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast, .15s ease)}.dz-list-row:hover,.dz-list-row.hovered{background:var(--color-primary-light)}.dz-list-row.active{background:var(--color-primary-light);box-shadow:inset 0 0 0 1.5px var(--color-primary)}.dz-list-all{grid-template-columns:1fr auto;font-weight:600;border-bottom:1px solid var(--color-border);margin-bottom:2px;padding-bottom:8px}.dz-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px}.dz-title-row .dz-title{margin:0}.dz-internal-toggle{flex:0 0 auto;font-size:12px}.dz-list-within{font-weight:600;border-bottom:1px solid var(--color-border);margin-bottom:2px;padding-bottom:8px}.dz-list-within.active{box-shadow:inset 0 0 0 1.5px #ea580c}.dz-list-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dz-list-bar-wrap{height:6px;background:var(--color-bg);border-radius:3px;overflow:hidden}.dz-list-bar{height:100%;border-radius:3px;transition:width var(--transition-fast, .15s ease)}.dz-list-count{font-variant-numeric:tabular-nums;font-size:.82em;color:var(--color-text-secondary);text-align:right;min-width:50px}.dz-list-share{font-variant-numeric:tabular-nums;font-size:.78em;color:var(--color-text-muted);text-align:right;min-width:38px}.dz-plot-filter{font-size:.8em;font-weight:400;color:var(--color-text-secondary)}.choropleth-controls{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.choropleth-field{display:flex;flex-direction:column;gap:6px}.choropleth-label{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0}.choropleth-select{width:100%;height:32px;padding:0 10px;font-size:13px;font-family:inherit;color:var(--color-text);background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.choropleth-select:hover{border-color:var(--color-border-light);cursor:pointer}.choropleth-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.choropleth-segmented{display:flex;border-radius:var(--radius-sm);border:1px solid var(--color-border-light);overflow:hidden}.choropleth-segmented-btn{flex:1;padding:7px 0;font-size:12.5px;font-weight:500;font-family:inherit;border:none;background:var(--color-bg-subtle);color:var(--color-text-secondary);cursor:pointer;transition:none;outline:none;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.choropleth-segmented-btn:active{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.choropleth-segmented-btn.active:active{background:var(--color-primary-blue);color:#fff}.choropleth-segmented-btn::-moz-focus-inner{border:0;padding:0}.choropleth-segmented-btn:focus,.choropleth-segmented-btn:focus-visible{outline:none;box-shadow:none}.choropleth-segmented-btn:not(:last-child){border-right:1px solid var(--color-border-light)}.choropleth-segmented-btn:hover:not(.active){background:var(--color-bg);color:var(--color-text)}.choropleth-segmented-btn.active{background:var(--color-primary-blue);color:#fff}.choropleth-legend{display:flex;flex-direction:column;gap:6px;margin-top:4px;padding-top:10px;border-top:1px solid var(--color-border)}.choropleth-legend-title{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.choropleth-legend-bar{display:flex;align-items:center;gap:8px}.choropleth-legend-label{font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-secondary);min-width:28px;text-align:center}.choropleth-legend-gradient{flex:1;height:10px;border-radius:999px;border:1px solid var(--color-border)}.canton-mode-share{margin-top:16px;background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);overflow:hidden;transition:opacity .3s ease-in-out}.plot-container .canton-mode-share{margin-top:0}.canton-mode-share h4{margin:0;padding:12px 14px;font-size:14px;font-weight:600;color:var(--color-text-dark);background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);letter-spacing:.01em}.canton-mode-share h4:last-child{border-bottom:none}.canton-mode-share table{width:100%;border-collapse:collapse;font-size:13px}.canton-mode-share th,.canton-mode-share td{padding:9px 14px;text-align:left;border-bottom:1px solid var(--color-border)}.canton-mode-share th{background:var(--color-surface);color:var(--color-text-secondary);font-weight:600;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.canton-mode-share td{color:var(--color-text)}.canton-mode-share td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:500;color:var(--color-text-dark)}.canton-mode-share th:last-child{text-align:right}.canton-mode-share tr:last-child td{border-bottom:none;padding-bottom:8px}.canton-mode-share .highlight{color:#fff;font-weight:600}.canton-mode-share .highlight td{color:#fff!important}.canton-mode-share tbody tr{transition:background-color var(--transition-fast)}.canton-mode-share tbody tr:hover:not(.highlight){background-color:var(--color-bg-subtle)}.mode-badges{display:flex;flex-wrap:wrap;gap:6px;padding:5px 0}.mode-badge{background-color:var(--color-badge-bg);color:var(--color-text);border-radius:12px;padding:4px 10px;font-size:13px;font-weight:500;display:inline-block}.line-toggle{background:none;border:none;padding:0;margin-bottom:4px;font-weight:700;cursor:pointer;color:var(--color-text)}.line-group-list{list-style:none;padding-left:0}.line-toggle{background:none;border:none;font-size:inherit;padding:0;margin:0;font-weight:400;color:var(--color-text);cursor:pointer;text-align:left}.inner-lines-table{width:100%;border-collapse:collapse;font-size:.95em}.inner-lines-table td{padding:2px 0}.route-indent{padding-left:1.2em;color:var(--color-text-muted);font-style:italic}.badge-container{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.mode-badge{background-color:var(--color-badge-bg);color:var(--color-text);border-radius:12px;padding:4px 10px;font-size:13px;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.mode-badge:hover{background-color:silver}.mode-badge.active{background-color:var(--color-primary);color:#fff}.route-toggle{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 10px 4px 8px;font-size:12px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:999px;cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.route-toggle:hover{color:var(--color-text-dark);background:var(--color-bg);border-color:var(--color-border-light)}.route-toggle.is-open{color:var(--color-primary);background:var(--color-primary-light);border-color:transparent}.route-toggle-chevron{display:inline-block;font-size:10px;line-height:1;transition:transform var(--transition-fast)}.route-toggle.is-open .route-toggle-chevron{transform:rotate(90deg)}.route-toggle-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 5px;font-size:10.5px;font-weight:600;line-height:1;color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px}.route-toggle.is-open .route-toggle-count{color:var(--color-primary);background:#fff;border-color:var(--color-primary-light)}.route-list{list-style:none;margin:8px 0 0;padding:4px 0;font-size:12.5px;color:var(--color-text);border-top:1px solid var(--color-border)}.route-row{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:var(--radius-xs);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.route-row:hover,.route-row.is-hovered{background-color:var(--color-primary-light);color:var(--color-text-dark)}.route-row-dot{width:5px;height:5px;border-radius:50%;background:var(--color-text-muted);flex-shrink:0;transition:background-color var(--transition-fast)}.route-row:hover .route-row-dot,.route-row.is-hovered .route-row-dot{background:var(--color-primary)}.route-row-id{font-variant-numeric:tabular-nums;letter-spacing:.01em}.metric-card{background-color:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius);padding:.75rem 1rem;min-width:100px;text-align:center;margin-top:8px;margin-left:5px;margin-bottom:-6px}.metric-label{font-size:.85rem;color:var(--color-text-muted)}.metric-value{font-size:1.25rem;font-weight:700;color:var(--color-primary)}:root{--dt-row-selected: 13, 110, 253;--dt-row-selected-text: 255, 255, 255;--dt-row-selected-link: 228, 228, 228;--dt-row-stripe: 0, 0, 0;--dt-row-hover: 0, 0, 0;--dt-column-ordering: 0, 0, 0;--dt-header-align-items: center;--dt-header-vertical-align: middle;--dt-html-background: white}:root.dark{--dt-html-background: rgb(33, 37, 41)}table.dataTable tbody td.dt-control{text-align:center;cursor:pointer}table.dataTable tbody td.dt-control:before{display:inline-block;box-sizing:border-box;content:"";border-top:5px solid transparent;border-left:10px solid rgba(0,0,0,.5);border-bottom:5px solid transparent;border-right:0px solid transparent}table.dataTable tbody tr.dt-hasChild td.dt-control:before{border-top:10px solid rgba(0,0,0,.5);border-left:5px solid transparent;border-bottom:0px solid transparent;border-right:5px solid transparent}table.dataTable tfoot:empty{display:none}html.dark table.dataTable td.dt-control:before,:root[data-bs-theme=dark] table.dataTable td.dt-control:before,:root[data-theme=dark] table.dataTable td.dt-control:before{border-left-color:#ffffff80}html.dark table.dataTable tr.dt-hasChild td.dt-control:before,:root[data-bs-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before,:root[data-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before{border-top-color:#ffffff80;border-left-color:transparent}div.dt-scroll{width:100%}div.dt-scroll-body thead tr,div.dt-scroll-body tfoot tr{height:0}div.dt-scroll-body thead tr th,div.dt-scroll-body thead tr td,div.dt-scroll-body tfoot tr th,div.dt-scroll-body tfoot tr td{height:0!important;padding-top:0!important;padding-bottom:0!important;border-top-width:0px!important;border-bottom-width:0px!important}div.dt-scroll-body thead tr th div.dt-scroll-sizing,div.dt-scroll-body thead tr td div.dt-scroll-sizing,div.dt-scroll-body tfoot tr th div.dt-scroll-sizing,div.dt-scroll-body tfoot tr td div.dt-scroll-sizing{height:0!important;overflow:hidden!important}table.dataTable thead>tr>th.dt-orderable-asc span.dt-column-order:before,table.dataTable thead>tr>th.dt-ordering-asc span.dt-column-order:before,table.dataTable thead>tr>td.dt-orderable-asc span.dt-column-order:before,table.dataTable thead>tr>td.dt-ordering-asc span.dt-column-order:before{position:absolute;display:block;bottom:50%;content:"▲";content:"▲"/""}table.dataTable thead>tr>th.dt-orderable-desc span.dt-column-order:after,table.dataTable thead>tr>th.dt-ordering-desc span.dt-column-order:after,table.dataTable thead>tr>td.dt-orderable-desc span.dt-column-order:after,table.dataTable thead>tr>td.dt-ordering-desc span.dt-column-order:after{position:absolute;display:block;top:50%;content:"▼";content:"▼"/""}table.dataTable thead>tr>th.dt-orderable-asc span.dt-column-order,table.dataTable thead>tr>th.dt-orderable-desc span.dt-column-order,table.dataTable thead>tr>th.dt-ordering-asc span.dt-column-order,table.dataTable thead>tr>th.dt-ordering-desc span.dt-column-order,table.dataTable thead>tr>td.dt-orderable-asc span.dt-column-order,table.dataTable thead>tr>td.dt-orderable-desc span.dt-column-order,table.dataTable thead>tr>td.dt-ordering-asc span.dt-column-order,table.dataTable thead>tr>td.dt-ordering-desc span.dt-column-order{position:relative;width:12px;height:20px}table.dataTable thead>tr>th.dt-orderable-asc span.dt-column-order:before,table.dataTable thead>tr>th.dt-orderable-asc span.dt-column-order:after,table.dataTable thead>tr>th.dt-orderable-desc span.dt-column-order:before,table.dataTable thead>tr>th.dt-orderable-desc span.dt-column-order:after,table.dataTable thead>tr>th.dt-ordering-asc span.dt-column-order:before,table.dataTable thead>tr>th.dt-ordering-asc span.dt-column-order:after,table.dataTable thead>tr>th.dt-ordering-desc span.dt-column-order:before,table.dataTable thead>tr>th.dt-ordering-desc span.dt-column-order:after,table.dataTable thead>tr>td.dt-orderable-asc span.dt-column-order:before,table.dataTable thead>tr>td.dt-orderable-asc span.dt-column-order:after,table.dataTable thead>tr>td.dt-orderable-desc span.dt-column-order:before,table.dataTable thead>tr>td.dt-orderable-desc span.dt-column-order:after,table.dataTable thead>tr>td.dt-ordering-asc span.dt-column-order:before,table.dataTable thead>tr>td.dt-ordering-asc span.dt-column-order:after,table.dataTable thead>tr>td.dt-ordering-desc span.dt-column-order:before,table.dataTable thead>tr>td.dt-ordering-desc span.dt-column-order:after{left:0;opacity:.125;line-height:9px;font-size:.8em}table.dataTable thead>tr>th.dt-orderable-asc,table.dataTable thead>tr>th.dt-orderable-desc,table.dataTable thead>tr>td.dt-orderable-asc,table.dataTable thead>tr>td.dt-orderable-desc{cursor:pointer}table.dataTable thead>tr>th.dt-orderable-asc:hover,table.dataTable thead>tr>th.dt-orderable-desc:hover,table.dataTable thead>tr>td.dt-orderable-asc:hover,table.dataTable thead>tr>td.dt-orderable-desc:hover{outline:2px solid rgba(0,0,0,.05);outline-offset:-2px}table.dataTable thead>tr>th.dt-ordering-asc span.dt-column-order:before,table.dataTable thead>tr>th.dt-ordering-desc span.dt-column-order:after,table.dataTable thead>tr>td.dt-ordering-asc span.dt-column-order:before,table.dataTable thead>tr>td.dt-ordering-desc span.dt-column-order:after{opacity:.6}table.dataTable thead>tr>th.dt-orderable-none:not(.dt-ordering-asc,.dt-ordering-desc) span.dt-column-order:empty,table.dataTable thead>tr>th.sorting_desc_disabled span.dt-column-order:after,table.dataTable thead>tr>th.sorting_asc_disabled span.dt-column-order:before,table.dataTable thead>tr>td.dt-orderable-none:not(.dt-ordering-asc,.dt-ordering-desc) span.dt-column-order:empty,table.dataTable thead>tr>td.sorting_desc_disabled span.dt-column-order:after,table.dataTable thead>tr>td.sorting_asc_disabled span.dt-column-order:before{display:none}table.dataTable thead>tr>th:active,table.dataTable thead>tr>td:active{outline:none}table.dataTable thead>tr>th div.dt-column-header,table.dataTable thead>tr>th div.dt-column-footer,table.dataTable thead>tr>td div.dt-column-header,table.dataTable thead>tr>td div.dt-column-footer,table.dataTable tfoot>tr>th div.dt-column-header,table.dataTable tfoot>tr>th div.dt-column-footer,table.dataTable tfoot>tr>td div.dt-column-header,table.dataTable tfoot>tr>td div.dt-column-footer{display:flex;justify-content:space-between;align-items:var(--dt-header-align-items);gap:4px}table.dataTable thead>tr>th div.dt-column-header span.dt-column-title,table.dataTable thead>tr>th div.dt-column-footer span.dt-column-title,table.dataTable thead>tr>td div.dt-column-header span.dt-column-title,table.dataTable thead>tr>td div.dt-column-footer span.dt-column-title,table.dataTable tfoot>tr>th div.dt-column-header span.dt-column-title,table.dataTable tfoot>tr>th div.dt-column-footer span.dt-column-title,table.dataTable tfoot>tr>td div.dt-column-header span.dt-column-title,table.dataTable tfoot>tr>td div.dt-column-footer span.dt-column-title{flex-grow:1}table.dataTable thead>tr>th div.dt-column-header span.dt-column-title:empty,table.dataTable thead>tr>th div.dt-column-footer span.dt-column-title:empty,table.dataTable thead>tr>td div.dt-column-header span.dt-column-title:empty,table.dataTable thead>tr>td div.dt-column-footer span.dt-column-title:empty,table.dataTable tfoot>tr>th div.dt-column-header span.dt-column-title:empty,table.dataTable tfoot>tr>th div.dt-column-footer span.dt-column-title:empty,table.dataTable tfoot>tr>td div.dt-column-header span.dt-column-title:empty,table.dataTable tfoot>tr>td div.dt-column-footer span.dt-column-title:empty{display:none}div.dt-scroll-body>table.dataTable>thead>tr>th,div.dt-scroll-body>table.dataTable>thead>tr>td{overflow:hidden}:root.dark table.dataTable thead>tr>th.dt-orderable-asc:hover,:root.dark table.dataTable thead>tr>th.dt-orderable-desc:hover,:root.dark table.dataTable thead>tr>td.dt-orderable-asc:hover,:root.dark table.dataTable thead>tr>td.dt-orderable-desc:hover,:root[data-bs-theme=dark] table.dataTable thead>tr>th.dt-orderable-asc:hover,:root[data-bs-theme=dark] table.dataTable thead>tr>th.dt-orderable-desc:hover,:root[data-bs-theme=dark] table.dataTable thead>tr>td.dt-orderable-asc:hover,:root[data-bs-theme=dark] table.dataTable thead>tr>td.dt-orderable-desc:hover{outline:2px solid rgba(255,255,255,.05)}div.dt-processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;margin-top:-22px;text-align:center;padding:2px;z-index:10}div.dt-processing>div:last-child{position:relative;width:80px;height:15px;margin:1em auto}div.dt-processing>div:last-child>div{position:absolute;top:0;width:13px;height:13px;border-radius:50%;background:#0d6efd;background:rgb(var(--dt-row-selected));animation-timing-function:cubic-bezier(0,1,1,0)}div.dt-processing>div:last-child>div:nth-child(1){left:8px;animation:datatables-loader-1 .6s infinite}div.dt-processing>div:last-child>div:nth-child(2){left:8px;animation:datatables-loader-2 .6s infinite}div.dt-processing>div:last-child>div:nth-child(3){left:32px;animation:datatables-loader-2 .6s infinite}div.dt-processing>div:last-child>div:nth-child(4){left:56px;animation:datatables-loader-3 .6s infinite}@keyframes datatables-loader-1{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes datatables-loader-3{0%{transform:scale(1)}to{transform:scale(0)}}@keyframes datatables-loader-2{0%{transform:translate(0)}to{transform:translate(24px)}}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}table.dataTable th,table.dataTable td{box-sizing:border-box}table.dataTable th.dt-type-numeric,table.dataTable th.dt-type-date,table.dataTable td.dt-type-numeric,table.dataTable td.dt-type-date{text-align:right}table.dataTable th.dt-type-numeric div.dt-column-header,table.dataTable th.dt-type-numeric div.dt-column-footer,table.dataTable th.dt-type-date div.dt-column-header,table.dataTable th.dt-type-date div.dt-column-footer,table.dataTable td.dt-type-numeric div.dt-column-header,table.dataTable td.dt-type-numeric div.dt-column-footer,table.dataTable td.dt-type-date div.dt-column-header,table.dataTable td.dt-type-date div.dt-column-footer{flex-direction:row-reverse}table.dataTable th.dt-left,table.dataTable td.dt-left{text-align:left}table.dataTable th.dt-left div.dt-column-header,table.dataTable th.dt-left div.dt-column-footer,table.dataTable td.dt-left div.dt-column-header,table.dataTable td.dt-left div.dt-column-footer{flex-direction:row}table.dataTable th.dt-center,table.dataTable td.dt-center{text-align:center}table.dataTable th.dt-right,table.dataTable td.dt-right{text-align:right}table.dataTable th.dt-right div.dt-column-header,table.dataTable th.dt-right div.dt-column-footer,table.dataTable td.dt-right div.dt-column-header,table.dataTable td.dt-right div.dt-column-footer{flex-direction:row-reverse}table.dataTable th.dt-justify,table.dataTable td.dt-justify{text-align:justify}table.dataTable th.dt-justify div.dt-column-header,table.dataTable th.dt-justify div.dt-column-footer,table.dataTable td.dt-justify div.dt-column-header,table.dataTable td.dt-justify div.dt-column-footer{flex-direction:row}table.dataTable th.dt-nowrap,table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable th.dt-empty,table.dataTable td.dt-empty{text-align:center;vertical-align:top}table.dataTable thead th,table.dataTable thead td,table.dataTable tfoot th,table.dataTable tfoot td{text-align:left;vertical-align:var(--dt-header-vertical-align)}table.dataTable thead th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable thead th.dt-head-left div.dt-column-header,table.dataTable thead th.dt-head-left div.dt-column-footer,table.dataTable thead td.dt-head-left div.dt-column-header,table.dataTable thead td.dt-head-left div.dt-column-footer,table.dataTable tfoot th.dt-head-left div.dt-column-header,table.dataTable tfoot th.dt-head-left div.dt-column-footer,table.dataTable tfoot td.dt-head-left div.dt-column-header,table.dataTable tfoot td.dt-head-left div.dt-column-footer{flex-direction:row}table.dataTable thead th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable thead th.dt-head-right div.dt-column-header,table.dataTable thead th.dt-head-right div.dt-column-footer,table.dataTable thead td.dt-head-right div.dt-column-header,table.dataTable thead td.dt-head-right div.dt-column-footer,table.dataTable tfoot th.dt-head-right div.dt-column-header,table.dataTable tfoot th.dt-head-right div.dt-column-footer,table.dataTable tfoot td.dt-head-right div.dt-column-header,table.dataTable tfoot td.dt-head-right div.dt-column-footer{flex-direction:row-reverse}table.dataTable thead th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-justify div.dt-column-header,table.dataTable thead th.dt-head-justify div.dt-column-footer,table.dataTable thead td.dt-head-justify div.dt-column-header,table.dataTable thead td.dt-head-justify div.dt-column-footer,table.dataTable tfoot th.dt-head-justify div.dt-column-header,table.dataTable tfoot th.dt-head-justify div.dt-column-footer,table.dataTable tfoot td.dt-head-justify div.dt-column-header,table.dataTable tfoot td.dt-head-justify div.dt-column-footer{flex-direction:row}table.dataTable thead th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody th.dt-body-left,table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center,table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right,table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify,table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap,table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}:root{--dt-row-hover-alpha: .035;--dt-row-stripe-alpha: .023;--dt-column-ordering-alpha: .019;--dt-row-selected-stripe-alpha: .923;--dt-row-selected-column-ordering-alpha: .919}table.dataTable{width:100%;margin:0 auto;border-spacing:0}table.dataTable thead th,table.dataTable tfoot th{font-weight:700}table.dataTable>thead>tr>th,table.dataTable>thead>tr>td{padding:10px;border-bottom:1px solid rgba(0,0,0,.3)}table.dataTable>thead>tr>th:active,table.dataTable>thead>tr>td:active{outline:none}table.dataTable>tfoot>tr>th,table.dataTable>tfoot>tr>td{border-top:1px solid rgba(0,0,0,.3);padding:10px 10px 6px}table.dataTable>tbody>tr{background-color:transparent}table.dataTable>tbody>tr:first-child>*{border-top:none}table.dataTable>tbody>tr:last-child>*{border-bottom:none}table.dataTable>tbody>tr.selected>*{box-shadow:inset 0 0 0 9999px #0d6efde6;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),.9);color:#fff;color:rgb(var(--dt-row-selected-text))}table.dataTable>tbody>tr.selected a{color:#e4e4e4;color:rgb(var(--dt-row-selected-link))}table.dataTable>tbody>tr>th,table.dataTable>tbody>tr>td{padding:8px 10px}table.dataTable.row-border>tbody>tr>*,table.dataTable.display>tbody>tr>*{border-top:1px solid rgba(0,0,0,.15)}table.dataTable.row-border>tbody>tr:first-child>*,table.dataTable.display>tbody>tr:first-child>*{border-top:none}table.dataTable.row-border>tbody>tr.selected+tr.selected>td,table.dataTable.display>tbody>tr.selected+tr.selected>td{border-top-color:#0d6efda6;border-top-color:rgba(var(--dt-row-selected),.65)}table.dataTable.cell-border>tbody>tr>*{border-top:1px solid rgba(0,0,0,.15);border-right:1px solid rgba(0,0,0,.15)}table.dataTable.cell-border>tbody>tr>*:first-child{border-left:1px solid rgba(0,0,0,.15)}table.dataTable.cell-border>tbody>tr:first-child>*{border-top:1px solid rgba(0,0,0,.3)}table.dataTable.stripe>tbody>tr:nth-child(odd)>*,table.dataTable.display>tbody>tr:nth-child(odd)>*{box-shadow:inset 0 0 0 9999px #00000006;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-stripe),var(--dt-row-stripe-alpha))}table.dataTable.stripe>tbody>tr:nth-child(odd).selected>*,table.dataTable.display>tbody>tr:nth-child(odd).selected>*{box-shadow:inset 0 0 0 9999px #0d6efdeb;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),var(--dt-row-selected-stripe-alpha))}table.dataTable.hover>tbody>tr:hover>*,table.dataTable.display>tbody>tr:hover>*{box-shadow:inset 0 0 0 9999px #00000009;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-hover),var(--dt-row-hover-alpha))}table.dataTable.hover>tbody>tr.selected:hover>*,table.dataTable.display>tbody>tr.selected:hover>*{box-shadow:inset 0 0 0 9999px #0d6efd!important;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),1)!important}table.dataTable.order-column>tbody tr>.sorting_1,table.dataTable.order-column>tbody tr>.sorting_2,table.dataTable.order-column>tbody tr>.sorting_3,table.dataTable.display>tbody tr>.sorting_1,table.dataTable.display>tbody tr>.sorting_2,table.dataTable.display>tbody tr>.sorting_3{box-shadow:inset 0 0 0 9999px #00000005;box-shadow:inset 0 0 0 9999px rgba(var(--dt-column-ordering),var(--dt-column-ordering-alpha))}table.dataTable.order-column>tbody tr.selected>.sorting_1,table.dataTable.order-column>tbody tr.selected>.sorting_2,table.dataTable.order-column>tbody tr.selected>.sorting_3,table.dataTable.display>tbody tr.selected>.sorting_1,table.dataTable.display>tbody tr.selected>.sorting_2,table.dataTable.display>tbody tr.selected>.sorting_3{box-shadow:inset 0 0 0 9999px #0d6efdea;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),var(--dt-row-selected-column-ordering-alpha))}table.dataTable.display>tbody>tr:nth-child(odd)>.sorting_1,table.dataTable.order-column.stripe>tbody>tr:nth-child(odd)>.sorting_1{box-shadow:inset 0 0 0 9999px #0000000e;box-shadow:inset 0 0 0 9999px rgba(var(--dt-column-ordering),calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha)))}table.dataTable.display>tbody>tr:nth-child(odd)>.sorting_2,table.dataTable.order-column.stripe>tbody>tr:nth-child(odd)>.sorting_2{box-shadow:inset 0 0 0 9999px #0000000c;box-shadow:inset 0 0 0 9999px rgba(var(--dt-column-ordering),calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) - .007))}table.dataTable.display>tbody>tr:nth-child(odd)>.sorting_3,table.dataTable.order-column.stripe>tbody>tr:nth-child(odd)>.sorting_3{box-shadow:inset 0 0 0 9999px #0000000a;box-shadow:inset 0 0 0 9999px rgba(var(--dt-column-ordering),calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) - .015))}table.dataTable.display>tbody>tr:nth-child(odd).selected>.sorting_1,table.dataTable.order-column.stripe>tbody>tr:nth-child(odd).selected>.sorting_1{box-shadow:inset 0 0 0 9999px #0d6efdf3;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha)))}table.dataTable.display>tbody>tr:nth-child(odd).selected>.sorting_2,table.dataTable.order-column.stripe>tbody>tr:nth-child(odd).selected>.sorting_2{box-shadow:inset 0 0 0 9999px #0d6efdf1;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) - .007))}table.dataTable.display>tbody>tr:nth-child(odd).selected>.sorting_3,table.dataTable.order-column.stripe>tbody>tr:nth-child(odd).selected>.sorting_3{box-shadow:inset 0 0 0 9999px #0d6efdef;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) - .015))}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{box-shadow:inset 0 0 0 9999px #00000015;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-hover),calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha)))}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{box-shadow:inset 0 0 0 9999px #00000013;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-hover),calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - .007))}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{box-shadow:inset 0 0 0 9999px #00000010;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-hover),calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - .015))}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{box-shadow:inset 0 0 0 9999px #0d6efdfa;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha)))}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{box-shadow:inset 0 0 0 9999px #0d6efdf8;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - .007))}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{box-shadow:inset 0 0 0 9999px #0d6efdf5;box-shadow:inset 0 0 0 9999px rgba(var(--dt-row-selected),calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - .015))}table.dataTable.compact thead th,table.dataTable.compact thead td,table.dataTable.compact tfoot th,table.dataTable.compact tfoot td,table.dataTable.compact tbody th,table.dataTable.compact tbody td{padding:4px}div.dt-container div.dt-layout-row{display:flex;justify-content:space-between;align-items:center;width:100%;margin:.75em 0}div.dt-container div.dt-layout-row div.dt-layout-cell{display:flex;justify-content:space-between;align-items:center}div.dt-container div.dt-layout-row div.dt-layout-cell.dt-layout-start{justify-content:flex-start;margin-right:auto}div.dt-container div.dt-layout-row div.dt-layout-cell.dt-layout-end{justify-content:flex-end;margin-left:auto}div.dt-container div.dt-layout-row div.dt-layout-cell:empty{display:none}@media screen and (max-width:767px){div.dt-container div.dt-layout-row:not(.dt-layout-table){display:block}div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell{display:block;text-align:center}div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell>*{margin:.5em 0}div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell.dt-layout-start{margin-right:0}div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell.dt-layout-end{margin-left:0}}div.dt-container div.dt-layout-start>*:not(:last-child){margin-right:1em}div.dt-container div.dt-layout-end>*:not(:first-child){margin-left:1em}div.dt-container div.dt-layout-full{width:100%}div.dt-container div.dt-layout-full>*:only-child{margin-left:auto;margin-right:auto}div.dt-container div.dt-layout-table>div{display:block!important}@media screen and (max-width:767px){div.dt-container div.dt-layout-start>*:not(:last-child){margin-right:0}div.dt-container div.dt-layout-end>*:not(:first-child){margin-left:0}}div.dt-container{position:relative;clear:both}div.dt-container .dt-search input{border:1px solid #aaa;border-radius:3px;padding:5px;background-color:transparent;color:inherit;margin-left:3px}div.dt-container .dt-input{border:1px solid #aaa;border-radius:3px;padding:5px;background-color:transparent;color:inherit}div.dt-container select.dt-input{padding:4px}div.dt-container .dt-paging .dt-paging-button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:.5em 1em;margin-left:2px;text-align:center;text-decoration:none!important;cursor:pointer;color:inherit!important;border:1px solid transparent;border-radius:2px;background:transparent}div.dt-container .dt-paging .dt-paging-button.current,div.dt-container .dt-paging .dt-paging-button.current:hover{color:inherit!important;border:1px solid rgba(0,0,0,.3);background-color:#0000000d;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(229.5,229.5,229.5,.05)),color-stop(100%,rgba(0,0,0,.05)));background:-webkit-linear-gradient(top,rgba(229.5,229.5,229.5,.05) 0%,rgba(0,0,0,.05) 100%);background:-moz-linear-gradient(top,rgba(229.5,229.5,229.5,.05) 0%,rgba(0,0,0,.05) 100%);background:-ms-linear-gradient(top,rgba(229.5,229.5,229.5,.05) 0%,rgba(0,0,0,.05) 100%);background:-o-linear-gradient(top,rgba(229.5,229.5,229.5,.05) 0%,rgba(0,0,0,.05) 100%);background:linear-gradient(to bottom,#e6e6e60d,#0000000d)}div.dt-container .dt-paging .dt-paging-button.disabled,div.dt-container .dt-paging .dt-paging-button.disabled:hover,div.dt-container .dt-paging .dt-paging-button.disabled:active{cursor:default;color:#00000080!important;border:1px solid transparent;background:transparent;box-shadow:none}div.dt-container .dt-paging .dt-paging-button:hover{color:#fff!important;border:1px solid #111;background-color:#111;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgb(88.4,88.4,88.4)),color-stop(100%,#111));background:-webkit-linear-gradient(top,rgb(88.4,88.4,88.4) 0%,#111 100%);background:-moz-linear-gradient(top,rgb(88.4,88.4,88.4) 0%,#111 100%);background:-ms-linear-gradient(top,rgb(88.4,88.4,88.4) 0%,#111 100%);background:-o-linear-gradient(top,rgb(88.4,88.4,88.4) 0%,#111 100%);background:linear-gradient(to bottom,#585858,#111)}div.dt-container .dt-paging .dt-paging-button:active{outline:none;background-color:#0c0c0c;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgb(42.5,42.5,42.5)),color-stop(100%,rgb(11.9,11.9,11.9)));background:-webkit-linear-gradient(top,rgb(42.5,42.5,42.5) 0%,rgb(11.9,11.9,11.9) 100%);background:-moz-linear-gradient(top,rgb(42.5,42.5,42.5) 0%,rgb(11.9,11.9,11.9) 100%);background:-ms-linear-gradient(top,rgb(42.5,42.5,42.5) 0%,rgb(11.9,11.9,11.9) 100%);background:-o-linear-gradient(top,rgb(42.5,42.5,42.5) 0%,rgb(11.9,11.9,11.9) 100%);background:linear-gradient(to bottom,#2b2b2b,#0c0c0c);box-shadow:inset 0 0 3px #111}div.dt-container .dt-paging .ellipsis{padding:0 1em}div.dt-container .dt-length,div.dt-container .dt-search,div.dt-container .dt-info,div.dt-container .dt-processing,div.dt-container .dt-paging{color:inherit}div.dt-container .dataTables_scroll{clear:both}div.dt-container .dataTables_scroll div.dt-scroll-body{-webkit-overflow-scrolling:touch}div.dt-container .dataTables_scroll div.dt-scroll-body>table>thead>tr>th,div.dt-container .dataTables_scroll div.dt-scroll-body>table>thead>tr>td,div.dt-container .dataTables_scroll div.dt-scroll-body>table>tbody>tr>th,div.dt-container .dataTables_scroll div.dt-scroll-body>table>tbody>tr>td{vertical-align:middle}div.dt-container .dataTables_scroll div.dt-scroll-body>table>thead>tr>th>div.dataTables_sizing,div.dt-container .dataTables_scroll div.dt-scroll-body>table>thead>tr>td>div.dataTables_sizing,div.dt-container .dataTables_scroll div.dt-scroll-body>table>tbody>tr>th>div.dataTables_sizing,div.dt-container .dataTables_scroll div.dt-scroll-body>table>tbody>tr>td>div.dataTables_sizing{height:0;overflow:hidden;margin:0!important;padding:0!important}div.dt-container.dt-empty-footer tbody>tr:last-child>*{border-bottom:1px solid rgba(0,0,0,.3)}div.dt-container.dt-empty-footer .dt-scroll-body{border-bottom:1px solid rgba(0,0,0,.3)}div.dt-container.dt-empty-footer .dt-scroll-body tbody>tr:last-child>*{border-bottom:none}html.dark{--dt-row-hover: 255, 255, 255;--dt-row-stripe: 255, 255, 255;--dt-column-ordering: 255, 255, 255}html.dark table.dataTable>thead>tr>th,html.dark table.dataTable>thead>tr>td{border-bottom:1px solid rgb(89,91,94)}html.dark table.dataTable>thead>tr>th:active,html.dark table.dataTable>thead>tr>td:active{outline:none}html.dark table.dataTable>tfoot>tr>th,html.dark table.dataTable>tfoot>tr>td{border-top:1px solid rgb(89,91,94)}html.dark table.dataTable.row-border>tbody>tr>*,html.dark table.dataTable.display>tbody>tr>*{border-top:1px solid rgb(64,67,70)}html.dark table.dataTable.row-border>tbody>tr:first-child>*,html.dark table.dataTable.display>tbody>tr:first-child>*{border-top:none}html.dark table.dataTable.row-border>tbody>tr.selected+tr.selected>td,html.dark table.dataTable.display>tbody>tr.selected+tr.selected>td{border-top-color:#0d6efda6;border-top-color:rgba(var(--dt-row-selected),.65)}html.dark table.dataTable.cell-border>tbody>tr>th,html.dark table.dataTable.cell-border>tbody>tr>td{border-top:1px solid rgb(64,67,70);border-right:1px solid rgb(64,67,70)}html.dark table.dataTable.cell-border>tbody>tr>th:first-child,html.dark table.dataTable.cell-border>tbody>tr>td:first-child{border-left:1px solid rgb(64,67,70)}html.dark .dt-container.dt-empty-footer table.dataTable{border-bottom:1px solid rgb(89,91,94)}html.dark .dt-container .dt-search input,html.dark .dt-container .dt-length select{border:1px solid rgba(255,255,255,.2);background-color:var(--dt-html-background)}html.dark .dt-container .dt-paging .dt-paging-button.current,html.dark .dt-container .dt-paging .dt-paging-button.current:hover{border:1px solid rgb(89,91,94);background:#ffffff26}html.dark .dt-container .dt-paging .dt-paging-button.disabled,html.dark .dt-container .dt-paging .dt-paging-button.disabled:hover,html.dark .dt-container .dt-paging .dt-paging-button.disabled:active{color:#666!important}html.dark .dt-container .dt-paging .dt-paging-button:hover{border:1px solid rgb(53,53,53);background:#353535}html.dark .dt-container .dt-paging .dt-paging-button:active{background:#3a3a3a}*[dir=rtl] table.dataTable thead th,*[dir=rtl] table.dataTable thead td,*[dir=rtl] table.dataTable tfoot th,*[dir=rtl] table.dataTable tfoot td{text-align:right}*[dir=rtl] table.dataTable th.dt-type-numeric,*[dir=rtl] table.dataTable th.dt-type-date,*[dir=rtl] table.dataTable td.dt-type-numeric,*[dir=rtl] table.dataTable td.dt-type-date{text-align:left}*[dir=rtl] div.dt-container div.dt-layout-cell.dt-start{text-align:right}*[dir=rtl] div.dt-container div.dt-layout-cell.dt-end{text-align:left}*[dir=rtl] div.dt-container div.dt-search input{margin:0 3px 0 0}.flow-direction-toggle{display:flex;gap:0;margin-bottom:12px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border-light)}.flow-dir-btn{flex:1;padding:6px 0;font-size:.82em;font-weight:500;border:none;background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.flow-dir-btn:not(:last-child){border-right:1px solid var(--color-border-light)}.flow-dir-btn:hover{background:var(--color-border)}.flow-dir-btn.active{background:var(--color-primary-blue);color:#fff}.link-selector{display:flex;align-items:center;gap:8px;margin-bottom:8px}.link-selector label{font-size:.82em;font-weight:500;color:var(--color-text);white-space:nowrap}.link-selector select{flex:1;padding:5px 8px;font-size:.82em;border-radius:var(--radius-sm);border:1px solid var(--color-border-light);background:var(--color-bg-subtle);cursor:pointer}.link-selector select:hover{border-color:var(--color-text-muted)}.no-selection{text-align:center;padding:30px 20px;background:var(--color-bg-subtle);border-radius:var(--radius);color:var(--color-text-muted)}.no-selection .hint{font-size:.85em;color:var(--color-text-muted);margin-top:8px}.nf-no-selection{text-align:center;padding:30px 20px;background:var(--color-bg-subtle);border-radius:var(--radius);color:var(--color-text-muted)}.nf-no-selection .nf-hint{font-size:.85em;color:var(--color-text-muted);margin-top:8px}.nf-matrix-hint{margin:10px 14px 8px;font-size:11px;font-weight:500;color:var(--color-text-muted);letter-spacing:.02em}.nf-matrix-scroll{margin:0 14px 12px;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.canton-mode-share .nf-matrix{border-collapse:collapse;font-size:12px;width:100%;min-width:max-content}.canton-mode-share .nf-matrix th,.canton-mode-share .nf-matrix td{padding:6px 8px;text-align:center;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);white-space:nowrap}.canton-mode-share .nf-matrix th:last-child,.canton-mode-share .nf-matrix td:last-child{border-right:none}.canton-mode-share .nf-matrix tr:last-child td{border-bottom:none}.nf-matrix-corner{background:var(--color-bg-subtle);font-size:11px;font-weight:500;color:var(--color-text-secondary);min-width:70px}.nf-matrix-col-header{background:var(--color-bg-subtle);min-width:44px}.nf-matrix-row-header{background:var(--color-bg-subtle);text-align:left}.nf-matrix-cell{cursor:pointer;transition:outline .1s ease;min-width:40px;font-variant-numeric:tabular-nums}.nf-matrix-cell.hovered{outline:2px solid var(--color-primary);outline-offset:-2px;z-index:1;position:relative}.nf-matrix-total,.nf-matrix-total-header{font-weight:600;background:var(--color-bg-subtle);font-variant-numeric:tabular-nums}.nf-matrix-totals-row td{font-weight:600;background:var(--color-bg-subtle);border-top:1px solid var(--color-border)}.nf-matrix-grand-total{font-weight:700;background:var(--color-bg)!important;color:var(--color-text-dark)}.nf-link-badge{display:inline-block;padding:2px 6px;border-radius:var(--radius-xs);font-size:11px;font-weight:600;min-width:22px;text-align:center;background:var(--color-bg-subtle);color:var(--color-text);font-variant-numeric:tabular-nums}.nf-links-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:12px 14px 14px}.nf-links-col h5{margin:0 0 6px;padding-bottom:4px;font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border)}.nf-link-row{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:5px 2px;font-size:12.5px;border-bottom:1px solid var(--color-border);transition:background-color var(--transition-fast)}.nf-link-row:last-child{border-bottom:none}.nf-link-row:hover{background:var(--color-bg-subtle)}.nf-link-flow{font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-dark);min-width:30px;text-align:right}.zf-canton-pickers{display:flex;align-items:flex-end;gap:6px;margin-bottom:12px}.zf-canton-row{flex:1;display:flex;flex-direction:column;gap:4px}.zf-canton-row label{font-size:.78em;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.zf-canton-row select{padding:5px 8px;font-size:.85em;border-radius:var(--radius-sm);border:1px solid var(--color-border-light);background:var(--color-bg-subtle);cursor:pointer}.zf-canton-row select:hover{border-color:var(--color-text-muted)}.zf-origin-display{padding:5px 8px;font-size:.85em;border-radius:var(--radius-sm);border:1px solid var(--color-border-light);background:var(--color-bg-subtle);min-height:1.2em;color:var(--color-text)}.zf-origin-empty{color:var(--color-text-muted, var(--color-text-secondary));font-style:italic}.pt-summary-table{width:100%;border-collapse:collapse;font-size:.85em;margin-top:6px}.pt-summary-table th,.pt-summary-table td{padding:5px 8px;border-bottom:1px solid var(--color-border, #e5e7eb);text-align:right}.pt-summary-table th{background:var(--color-bg, #f3f4f6);font-weight:600;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;font-size:.72em;letter-spacing:.04em}.pt-summary-table th:first-child,.pt-summary-table td:first-child{text-align:left;text-transform:capitalize}.pt-summary-table tr.pt-totals-row td{border-top:2px solid var(--color-border, #e5e7eb);border-bottom:none;font-weight:600;background:var(--color-bg, #f3f4f6)}.pt-totals-card{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:8px 0 12px}.pt-total-cell{background:var(--color-bg, #f3f4f6);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, 6px);padding:8px 10px;text-align:center}.pt-total-cell .pt-total-label{display:block;font-size:.72em;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.pt-total-cell .pt-total-value{display:block;font-size:1.05em;font-weight:600;color:var(--color-text, #374151)}.pt-no-polygon{padding:12px;color:var(--color-text-secondary, #6b7280);font-size:.9em}.pt-no-polygon .hint{color:var(--color-text-secondary, #6b7280);font-size:.85em;margin-top:4px;font-style:italic}.pt-routes-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;margin:10px 0;background:var(--color-bg, #f3f4f6);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, 6px);font-size:.85em}.pt-routes-toggle label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--color-text, #374151)}.pt-routes-toggle .pt-routes-note{color:var(--color-text-secondary, #6b7280);font-size:.8em;font-style:italic}.pt-direction-toggle{display:flex;gap:0;margin:0 0 12px;border-radius:var(--radius-sm, 4px);overflow:hidden;border:1px solid var(--color-border-light, #e5e7eb)}.pt-direction-btn{flex:1;padding:6px 0;font-size:.82em;font-weight:500;border:none;background:var(--color-bg, #f3f4f6);color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:background var(--transition-fast, .15s ease),color var(--transition-fast, .15s ease)}.pt-direction-btn:not(:last-child){border-right:1px solid var(--color-border-light, #e5e7eb)}.pt-direction-btn:hover{background:var(--color-border, #e5e7eb)}.pt-direction-btn.active{background:var(--color-primary-blue, #6366f1);color:#fff}.pt-table-wrapper{font-family:Inter,sans-serif;color:var(--color-text, #374151);font-size:13px;width:100%}.pt-table{border-collapse:separate;border-spacing:0;width:100%}.pt-table thead th{background:var(--color-bg-subtle, #f9fafb);color:var(--color-text-dark, #111827);font-weight:600;font-size:12px;letter-spacing:.02em;padding:10px 12px;border-bottom:1px solid var(--color-border, #e5e7eb);border-top:1px solid var(--color-border, #e5e7eb);text-align:left;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.pt-table thead th:first-child{border-top-left-radius:var(--radius-sm, 4px)}.pt-table thead th:last-child{border-top-right-radius:var(--radius-sm, 4px)}.pt-table thead th:hover{background:var(--color-bg, #f3f4f6)}.pt-th-label{display:inline-block;vertical-align:middle}.pt-sort-arrow{display:inline-block;width:0;height:0;margin-left:6px;vertical-align:middle;border-left:4px solid transparent;border-right:4px solid transparent;opacity:.25;border-top:5px solid var(--color-text-secondary, #6b7280);border-bottom:none;transition:opacity .15s ease,transform .15s ease}.pt-sort-asc .pt-sort-arrow{opacity:1;border-top:none;border-bottom:5px solid var(--color-primary, #6366f1)}.pt-sort-desc .pt-sort-arrow{opacity:1;border-top:5px solid var(--color-primary, #6366f1);border-bottom:none}.pt-table tbody td{padding:8px 12px;border-bottom:1px solid var(--color-border, #e5e7eb);background:var(--color-surface, #ffffff);color:var(--color-text, #374151)}.pt-table tbody tr.pt-odd td{background:var(--color-bg-subtle, #f9fafb)}.pt-table tbody tr:hover td{background:var(--color-primary-light, rgba(99, 102, 241, .08));color:var(--color-text-dark, #111827)}.pt-cell-text{text-transform:capitalize}.pt-cell-num{text-align:right;font-variant-numeric:tabular-nums}.pt-table-state{display:flex;align-items:center;justify-content:center;padding:24px 12px;color:var(--color-text-secondary, #6b7280);font-size:.9em;background:var(--color-bg-subtle, #f9fafb);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-sm, 4px)}.pt-table-state--empty{font-style:italic}.socio-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);margin-bottom:12px;overflow:hidden}.socio-header{display:flex;align-items:center;gap:7px;padding:9px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;background:transparent;transition:background var(--transition-fast)}.socio-header:hover{background:var(--color-bg-subtle)}.socio-panel:has(.socio-body) .socio-header{border-bottom:1px solid var(--color-border)}.socio-panel-icon{color:var(--color-text-muted);flex-shrink:0}.socio-title{font-size:.85em;font-weight:500;color:var(--color-text)}.socio-badge{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--color-primary);color:#fff;font-size:.65em;font-weight:600;line-height:1}.socio-header-spacer{flex:1}.socio-clear-btn{border:none;background:none;padding:0 2px;font-size:.75em;font-weight:500;color:var(--color-primary);cursor:pointer}.socio-clear-btn:hover{text-decoration:underline}.socio-clear-bottom{align-self:flex-end;margin-top:-4px}.socio-chevron{color:var(--color-text-muted);transition:transform var(--transition-fast);flex-shrink:0}.socio-chevron.open{transform:rotate(180deg)}.socio-body{padding:10px;display:flex;flex-direction:column;gap:12px}.socio-row{display:flex;flex-direction:column;gap:6px}.socio-row-label{font-size:.78em;font-weight:500;color:var(--color-text-secondary)}.socio-segmented{display:flex;gap:0;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border)}.socio-seg-btn{flex:1;padding:5px 0;font-size:.8em;font-weight:500;border:none;background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.socio-seg-btn:not(:last-child){border-right:1px solid var(--color-border)}.socio-seg-btn:hover{background:var(--color-border)}.socio-seg-btn.active{background:var(--color-primary);color:#fff}.socio-slider-wrap .rc-slider{margin:2px 10px 16px;width:auto}.socio-slider-wrap .rc-slider-mark-text{font-size:.76em;-webkit-user-select:none;user-select:none;white-space:nowrap}.socio-chips{display:flex;flex-wrap:wrap;gap:5px}.socio-chip{padding:3px 9px;font-size:.78em;font-weight:500;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.socio-chip:hover{border-color:var(--color-border-light);background:var(--color-bg-subtle)}.socio-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.left-sidebar{width:215px;min-width:215px;height:100vh;background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:20px 0;position:fixed;left:0;top:0;transition:width .3s ease,min-width .3s ease;z-index:100}.left-sidebar.collapsed{width:60px;min-width:60px}.left-sidebar-content{flex:1 1 auto;overflow-y:auto;overflow-x:hidden}.left-sidebar-toggle{flex-shrink:0;padding:16px;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:color .2s ease;width:100%}.left-sidebar-toggle:hover{color:var(--color-text)}.left-sidebar-section{padding:0 16px;margin-bottom:20px}.left-sidebar.collapsed .left-sidebar-section{padding:0 8px}.left-sidebar-section-title{font-size:11px;font-weight:400;color:var(--color-text-muted);letter-spacing:.5px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;background:none;border:none;padding:4px 0;width:100%;cursor:pointer;-webkit-user-select:none;user-select:none}.left-sidebar-section-title:hover{color:var(--color-text-secondary)}.left-sidebar-section-chevron{font-size:10px;color:var(--color-text-muted);transition:color .2s ease}.left-sidebar-section-title:hover .left-sidebar-section-chevron{color:var(--color-text-secondary)}.left-sidebar-nav{display:flex;flex-direction:column;gap:4px}.left-sidebar-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left}.left-sidebar.collapsed .left-sidebar-item{justify-content:center;padding:10px}.left-sidebar-item:hover{background-color:var(--color-bg)}.left-sidebar-item.active{background-color:var(--color-primary-light);border-left:3px solid var(--color-primary);margin-left:-3px}.left-sidebar.collapsed .left-sidebar-item.active{border-left:none;margin-left:0;border-bottom:3px solid var(--color-primary)}.left-sidebar-item.active .left-sidebar-label{color:var(--color-primary-dark);font-weight:500}.left-sidebar-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.left-sidebar-label{font-size:14px;color:var(--color-text);white-space:nowrap;overflow:hidden}.left-sidebar-item.logout-item .left-sidebar-icon,.left-sidebar-item.logout-item .left-sidebar-label{color:var(--color-text-secondary)}.left-sidebar-item.logout-item:hover{background-color:var(--color-bg)}.left-sidebar-item.admin-item .left-sidebar-icon,.left-sidebar-item.admin-item .left-sidebar-label{color:var(--color-primary)}.left-sidebar-item.admin-item:hover{background-color:var(--color-primary-light)}.left-sidebar-item.reset-item,.left-sidebar-item.reset-item .left-sidebar-icon,.left-sidebar-item.reset-item .left-sidebar-label{color:var(--color-error-dark)}.left-sidebar-item.reset-item:hover{background-color:var(--color-error-light)}.left-sidebar-item.crosslink-item .left-sidebar-icon,.left-sidebar-item.crosslink-item .left-sidebar-label{color:var(--color-primary-dark)}.left-sidebar-item.crosslink-item:hover{background-color:var(--color-primary-light)}.simjobs-backdrop{position:fixed;inset:0;z-index:1500;background:#0006;display:flex;align-items:center;justify-content:center;animation:simjobs-overlayIn .15s ease forwards}@keyframes simjobs-overlayIn{0%{opacity:0}to{opacity:1}}.simjobs-modal{width:600px;max-width:calc(100vw - 40px);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 20px 60px #00000026;font-family:Inter,-apple-system,sans-serif;overflow:hidden;animation:simjobs-modalIn .22s cubic-bezier(.2,.8,.2,1) forwards;opacity:0;transform:translateY(10px)}@keyframes simjobs-modalIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.simjobs-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0;flex:0 0 auto}.simjobs-header strong{font-size:16px;font-weight:600;color:var(--color-text)}.simjobs-close{background:none;border:none;font-size:18px;color:var(--color-text-muted);cursor:pointer;padding:4px;line-height:1;transition:color var(--transition-fast)}.simjobs-close:hover{color:var(--color-text)}.simjobs-body{padding:20px 24px;overflow-y:auto;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:12px}.simjobs-empty{color:var(--color-text-muted);font-size:13px;padding:14px 0}.simjobs-empty code{font-size:12px;background:var(--color-bg);padding:2px 6px;border-radius:var(--radius-xs);color:var(--color-primary-dark)}.simjobs-filters{display:flex;gap:6px;padding:10px 12px 2px;flex-wrap:wrap}.simjobs-filter{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:999px;padding:3px 10px;font:500 11.5px Inter,sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.simjobs-filter.on{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark)}.simjobs-filter-count{background:var(--color-bg);color:var(--color-text-secondary);border-radius:999px;padding:0 6px;font-size:10.5px;min-width:16px;text-align:center}.simjobs-filter.on .simjobs-filter-count{background:var(--color-primary-light);color:var(--color-primary-dark)}.simjobs-purge{margin-left:auto;color:var(--color-error-dark);border-color:var(--color-error-light)}.simjobs-purge:hover{background:var(--color-error-light)}.simjobs-delete{margin-left:auto;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);border-radius:var(--radius-sm);font-size:11.5px;padding:5px 10px;cursor:pointer}.simjobs-delete:hover{border-color:var(--color-error-light);color:var(--color-error-dark);background:var(--color-error-light)}.simjobs-delete:disabled{opacity:.5;cursor:default}.simjobs-row{border:1px solid var(--color-border);border-radius:var(--radius);font-size:12.5px;background:var(--color-surface)}.simjobs-row.open{border-color:var(--color-primary);box-shadow:0 2px 10px #6366f114}.simjobs-row-head{width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) auto auto 14px;align-items:center;gap:10px;padding:8px 10px;border:none;background:none;cursor:pointer;text-align:left;font:inherit;color:inherit}.simjobs-row-head:hover{background:var(--color-bg-subtle);border-radius:var(--radius)}.simjobs-dot{width:8px;height:8px;border-radius:50%;background:#a78bfa}.simjobs-dot.done{background:var(--color-success)}.simjobs-dot.failed,.simjobs-dot.cancelled{background:var(--color-error-dark)}.simjobs-dot.running,.simjobs-dot.uploading{background:var(--color-primary-blue);animation:simPulse 2s infinite}.simjobs-dot.queued{background:#f59e0b}.simjobs-row-title{font-weight:600;color:var(--color-text-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simjobs-row-id{color:var(--color-text-muted);font-weight:500;margin-right:2px}.simjobs-row-stage{color:var(--color-text-secondary);font-size:11.5px;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}.simjobs-row-when{color:var(--color-text-muted);font-size:11px;white-space:nowrap}.simjobs-chevron{color:var(--color-text-muted);font-size:11px;text-align:right}.simjobs-bar.thin{margin:0 10px 6px;height:4px}.simjobs-detail{padding:2px 12px 10px 28px;border-top:1px dashed var(--color-border);margin-top:2px}.simjobs-detail .simjobs-desc{margin:8px 0 4px}.simjobs-detail .simjobs-ops{margin:4px 0 4px 16px}.simjobs-detail .simjobs-meta{margin-top:4px}.simjobs-detail .simjobs-actions{margin-top:8px}.simjobs-error{background:var(--color-error-light);color:#991b1b;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px}.simjobs-card{border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius);padding:12px 14px;font-size:13px;transition:background .12s ease}.simjobs-card:hover{background:#6366f106}.simjobs-card.done{border-left-color:var(--color-success)}.simjobs-card.failed,.simjobs-card.cancelled{border-left-color:var(--color-error)}.simjobs-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.simjobs-title{font-weight:600;color:var(--color-text-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simjobs-badge{flex-shrink:0;display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;background:var(--color-primary-light);color:var(--color-primary-dark)}.simjobs-badge.done{background:var(--color-success-light);color:var(--color-success)}.simjobs-badge.failed,.simjobs-badge.cancelled{background:var(--color-error-light);color:#b91c1c}.simjobs-badge.running,.simjobs-badge.uploading{background:#dbeafe;color:#1d4ed8}.simjobs-desc{margin:6px 0 2px;color:var(--color-text-secondary);font-size:13px;line-height:1.45}.simjobs-ops{margin:6px 0 2px 18px;padding:0;color:var(--color-text-secondary);font-size:12px}.simjobs-ops li{margin:2px 0}.simjobs-bar{margin-top:8px;height:6px;border-radius:3px;background:var(--color-border);overflow:hidden}.simjobs-bar>div{height:100%;border-radius:3px;background:var(--color-primary);transition:width .6s ease}.simjobs-meta{color:var(--color-text-muted);font-size:12px;margin-top:6px}.simjobs-actions{display:flex;align-items:center;gap:8px;margin-top:10px}.simjobs-open{display:inline-flex;align-items:center;gap:4px;border:none;border-radius:var(--radius-sm);background-color:var(--color-success);color:#fff;font-family:inherit;font-size:12px;font-weight:500;padding:6px 12px;cursor:pointer;transition:all var(--transition-fast)}.simjobs-open:hover{filter:brightness(1.07);transform:translateY(-1px)}.simjobs-open:active{transform:translateY(0)}.simjobs-cancel{border:1px solid var(--color-error);background:transparent;color:var(--color-error);border-radius:var(--radius-sm);font-family:inherit;font-size:12px;font-weight:500;padding:5px 10px;cursor:pointer;transition:all var(--transition-fast)}.simjobs-cancel:hover{background-color:var(--color-error-light)}.simjobs-when{margin-left:auto;color:var(--color-text-muted);font-size:11px}.simjobs-open:disabled,.simjobs-cancel:disabled{opacity:.5;cursor:default;transform:none}.simjobs-nav-badge{margin-left:auto;background:var(--color-primary);color:#fff;font:700 10px Inter,sans-serif;border-radius:999px;min-width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;animation:simPulse 2s infinite}@keyframes simPulse{0%,to{box-shadow:0 0 #6366f180}50%{box-shadow:0 0 0 5px #6366f100}}.dataset-selector-wrapper{position:relative;margin-bottom:4px}.left-sidebar-item.dataset-item .left-sidebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-panel{position:fixed;top:80px;width:260px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--shadow-soft);z-index:200;overflow:hidden;display:flex;flex-direction:column}.dataset-panel-header{padding:10px 14px;font-size:11px;font-weight:400;color:var(--color-text-muted);letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.dataset-panel-list{max-height:215px;overflow-y:auto;padding:4px}.dataset-panel-empty{padding:16px 14px;font-size:13px;color:var(--color-text-muted);text-align:center}.dataset-panel-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;font-size:13px;color:var(--color-text)}.dataset-panel-item:hover{background-color:var(--color-bg)}.dataset-panel-item.selected{background-color:var(--color-primary-light);color:var(--color-primary-dark);font-weight:500}.dataset-panel-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-panel-badge{font-size:10px;padding:1px 6px;border-radius:9999px;background-color:var(--color-bg);color:var(--color-text-muted);flex-shrink:0}.dataset-panel-item.selected .dataset-panel-badge{background-color:#6366f126;color:var(--color-primary-dark)}.dataset-panel-check{font-size:12px;color:var(--color-primary);flex-shrink:0}.left-sidebar-item.dataset-success{background-color:var(--color-success-light)}.left-sidebar-item.dataset-success .left-sidebar-icon,.left-sidebar-item.dataset-success .left-sidebar-label{color:var(--color-success)}.dataset-panel-flask{font-size:12px;margin-right:2px}.dataset-panel-section{padding:8px 12px 4px;font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--color-text-muted);border-top:1px solid var(--color-border);margin-top:4px}.dataset-panel-badge.sim{background-color:#7c3aed1f;color:#6d28d9;display:inline-flex;align-items:center;gap:3px}.dataset-panel-sim{align-items:flex-start;padding-top:8px;padding-bottom:8px}.dataset-panel-sim-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.dataset-panel-sim-stage{font-size:11px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-panel-sim-bar{display:block;height:4px;border-radius:9999px;background:var(--color-bg);overflow:hidden}.dataset-panel-sim-bar>span{display:block;height:100%;background:linear-gradient(90deg,#6366f1,#7c3aed);transition:width .6s ease}.dataset-panel-badge.sim-status{background:#ede9fe;color:#6d28d9}.dataset-panel-badge.sim-status.running,.dataset-panel-badge.sim-status.uploading{background:#dbeafe;color:#1d4ed8}.dataset-panel-badge.sim-status.failed,.dataset-panel-badge.sim-status.cancelled{background:#fee2e2;color:#b91c1c}.apitok-backdrop{position:fixed;inset:0;z-index:1500;background:#0006;display:flex;align-items:center;justify-content:center;animation:apitok-overlayIn .15s ease forwards}@keyframes apitok-overlayIn{0%{opacity:0}to{opacity:1}}.apitok-modal{width:620px;max-width:calc(100vw - 40px);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 20px 60px #00000026;font-family:Inter,-apple-system,sans-serif;overflow:hidden;animation:apitok-modalIn .22s cubic-bezier(.2,.8,.2,1) forwards;opacity:0;transform:translateY(10px)}@keyframes apitok-modalIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.apitok-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0;flex:0 0 auto}.apitok-header strong{font-size:16px;font-weight:600;color:var(--color-text)}.apitok-close{background:none;border:none;font-size:18px;color:var(--color-text-muted);cursor:pointer;padding:4px;line-height:1;transition:color var(--transition-fast)}.apitok-close:hover{color:var(--color-text)}.apitok-body{padding:20px 24px;overflow-y:auto;flex:1 1 auto;min-height:0}.apitok-intro{margin:0 0 16px;font-size:13px;color:var(--color-text-secondary);line-height:1.5}.apitok-create{display:flex;gap:8px;margin-bottom:14px}.apitok-create input{flex:1;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 12px;font-family:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.apitok-create input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11f}.apitok-create select{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 10px;font-family:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface);appearance:auto;outline:none;transition:border-color var(--transition-fast)}.apitok-create select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11f}.apitok-create button{border:none;border-radius:var(--radius-sm);padding:8px 16px;background-color:var(--color-primary);color:#fff;font-family:inherit;font-weight:500;font-size:13px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.apitok-create button:hover{background-color:var(--color-primary-dark);box-shadow:0 4px 14px #6366f14d}.apitok-create button:active{transform:scale(.98)}.apitok-create button:disabled{opacity:.5;cursor:default;transform:none;box-shadow:none}.apitok-error{background:var(--color-error-light);color:#991b1b;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;margin-bottom:12px}.apitok-fresh{background:var(--color-success-light);border:1px solid rgba(22,163,74,.25);border-radius:var(--radius);padding:12px 14px;margin-bottom:16px}.apitok-fresh-title{font-size:13px;font-weight:600;color:#166534;margin-bottom:8px}.apitok-fresh-row{display:flex;align-items:center;gap:8px}.apitok-fresh-row code{flex:1;font-size:12px;background:var(--color-surface);border:1px solid rgba(22,163,74,.15);border-radius:var(--radius-xs);padding:6px 8px;overflow-x:auto;white-space:nowrap;color:var(--color-primary-dark)}.apitok-fresh-row button{border:none;border-radius:var(--radius-sm);background:var(--color-success);color:#fff;font-family:inherit;font-size:12px;font-weight:500;padding:6px 12px;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.apitok-fresh-row button:hover{filter:brightness(1.07)}.apitok-connect{margin-top:10px;font-size:13px}.apitok-connect summary{cursor:pointer;color:var(--color-success);font-weight:600}.apitok-connect-body{margin-top:8px;display:flex;flex-direction:column;gap:6px}.apitok-connect-label{color:var(--color-text-secondary);font-size:12px}.apitok-cmd{display:block;background:#0f172a;color:#e2e8f0;border-radius:var(--radius);padding:10px 12px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;word-break:break-all}.apitok-list table{width:100%;border-collapse:collapse}.apitok-list th{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:8px;border-bottom:2px solid var(--color-border);text-align:left;white-space:nowrap}.apitok-list td{font-size:13px;padding:8px;border-bottom:1px solid var(--color-border);vertical-align:middle}.apitok-list tbody tr{transition:background .12s ease}.apitok-list tbody tr:hover{background:#6366f10b}.apitok-list tbody tr:last-child td{border-bottom:none}.apitok-empty{color:var(--color-text-muted);font-size:13px;padding:14px 0}.apitok-revoke{border:1px solid var(--color-error);background:transparent;color:var(--color-error);border-radius:var(--radius-sm);font-family:inherit;font-size:12px;font-weight:500;padding:4px 10px;cursor:pointer;transition:all var(--transition-fast)}.apitok-revoke:hover{background-color:var(--color-error-light)}.canton-search{position:absolute;top:15px;left:calc(var(--left-sidebar-width) + 15px);z-index:10;display:flex;width:280px;gap:8px;align-items:center;transition:left .3s ease}.canton-input{padding:8px;border:1px solid var(--color-border-light);border-radius:var(--radius-xs);outline:none;width:100%;transition:border-color .3s ease}.canton-input:focus{border-color:var(--color-primary)}.search-button{background-color:var(--color-primary);color:#fff;border:none;padding:8px 12px;border-radius:var(--radius-xs);cursor:pointer;transition:background-color .3s ease;width:90px}.search-button:hover{background-color:var(--color-primary-dark)}.suggestions{list-style:none;margin:4px 0 0;padding:4px 0;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-xs);width:220px;max-height:420px;overflow-y:auto;position:absolute;top:100%;left:0;z-index:20;box-shadow:0 4px 12px #00000026}.suggestions li{cursor:pointer;transition:background .15s ease}.suggestion-header{padding:6px 10px 4px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-subtle);cursor:default!important;border-top:1px solid var(--color-border)}.suggestion-header:first-child{border-top:none}.suggestion-canton{padding:8px 10px;color:var(--color-text)}.suggestion-canton:hover,.suggestion-canton.selected{background:var(--color-primary);color:#fff}.suggestion-stop{padding:6px 10px;border-bottom:1px solid var(--color-bg)}.suggestion-stop:last-child{border-bottom:none}.suggestion-stop:hover,.suggestion-stop.selected{background:var(--color-primary-light)}.suggestion-stop .stop-name{font-size:13px;font-weight:600;color:var(--color-text-dark)}.suggestion-stop .stop-modes{font-size:11px;color:var(--color-text-secondary);font-style:italic;margin-top:2px}.suggestions::-webkit-scrollbar{width:6px}.suggestions::-webkit-scrollbar-track{background:var(--color-bg);border-radius:3px}.suggestions::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:3px}.suggestions::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-cyrillic-ext-400-normal-Dc4VJyIJ.woff2) format("woff2"),url(/eth-webmap/assets/inter-cyrillic-ext-400-normal-BE2fNs0E.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-cyrillic-400-normal-BLGc9T1a.woff2) format("woff2"),url(/eth-webmap/assets/inter-cyrillic-400-normal-alAqRL36.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-greek-ext-400-normal-Bput3-QP.woff2) format("woff2"),url(/eth-webmap/assets/inter-greek-ext-400-normal-XIH6-K3k.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-greek-400-normal-DxZsaF_h.woff2) format("woff2"),url(/eth-webmap/assets/inter-greek-400-normal-C3I71FoW.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/eth-webmap/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/eth-webmap/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-webmap/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/eth-webmap/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{margin:0;padding:0;box-sizing:border-box}:root{--left-sidebar-width: 60px;--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-primary-light: #eef2ff;--color-primary-blue: #2563eb;--color-bg: #f3f4f6;--color-bg-subtle: #f9fafb;--color-surface: #ffffff;--color-border: #e5e7eb;--color-border-light: #d1d5db;--color-text: #374151;--color-text-dark: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-error: #ef4444;--color-error-dark: #dc2626;--color-error-light: #fee2e2;--color-success: #16a34a;--color-success-light: #dcfce7;--color-accent: #0d9488;--color-accent-light: #ccfbf1;--color-badge-bg: #dee2e6;--radius: 8px;--radius-sm: 6px;--radius-xs: 4px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 2px 4px rgba(0, 0, 0, .1);--shadow-focus: 0 0 0 2px rgba(99, 102, 241, .1);--transition-fast: .15s ease}body{font-family:Inter,sans-serif;margin:0;padding:0;background-color:var(--color-bg)}button{font-family:inherit}#root{position:absolute;inset:0}#map-container{height:100%;width:100%}.popup-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.popup-content{background:#fff;padding:2rem;border-radius:.5rem;width:400px;box-shadow:0 0 10px #00000040}.network-legend-container{position:absolute;bottom:40px;left:calc(var(--left-sidebar-width, 60px) + 15px);background:var(--color-surface);color:var(--color-text);padding:12px 18px;border-radius:var(--radius);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);font-family:Inter,sans-serif;width:160px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;transition:left .3s ease}.network-legend-title{font-size:13px;font-weight:400;margin-bottom:5px;text-align:left;color:var(--color-text)}.network-legend-bar{display:flex;justify-content:space-between;width:100%;font-size:12px;font-weight:400}.network-legend-gradient{width:100%;height:10px;border-radius:5px;background:linear-gradient(to right,#ffffb2,#fed976,#feb24c,#fd8d3c,#fc4e2a,#e31a1c,#b10026)}.capacity-legend{display:flex;flex-direction:column;gap:8px;width:100%;align-items:flex-start}.capacity-item{display:flex;align-items:center;gap:10px}.capacity-line{height:6px;border-radius:3px;background-color:var(--color-primary)}.capacity-line.thin{width:50px;height:2px}.capacity-line.medium{width:50px;height:4px}.capacity-line.thick{width:50px;height:8px}.network-legend-label{font-size:11px;font-weight:400;color:var(--color-text-secondary)}.transit-stop-legend{display:flex;justify-content:space-between;align-items:flex-end;margin-top:6px}.transit-stop-legend-item{display:flex;flex-direction:column;align-items:center}.transit-stop-circle{border-radius:50%;background-color:#f80;margin-bottom:2px;border:1px solid var(--color-text)}.demo-badge{position:fixed;top:12px;right:12px;z-index:30;padding:4px 10px;border:1px solid var(--color-primary);border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark);font:600 12px/1.4 inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-sm)}.demo-badge:hover{background:var(--color-surface)}.demo-box{position:fixed;top:12px;right:12px;z-index:30;width:210px;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-md);transition:right .3s ease}body:has(.right-sidebar.collapsed) .demo-box{right:60px}body:has(.right-sidebar.open) .demo-box{right:332px}body:has(.right-sidebar.expanded) .demo-box{right:612px}body:has(.right-sidebar.feature-table-open) .demo-box{right:912px}.demo-hover{position:fixed;top:12px;right:12px;z-index:30}.demo-hover .demo-hover-badge{position:static}.demo-box.demo-hover-panel{position:absolute;top:calc(100% + 6px);right:0;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.demo-box.demo-hover-panel:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.demo-hover:hover .demo-hover-panel,.demo-hover:focus-within .demo-hover-panel{opacity:1;visibility:visible;transform:translateY(0)}.demo-box-note{margin:0;color:var(--color-text);font-size:12px;line-height:1.45}.demo-box-title{margin:10px 0 4px;padding-top:10px;border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.demo-box-list{margin:0;padding:0 0 0 14px;color:var(--color-text);font-size:12px;line-height:1.6}.demo-box-list li::marker{color:var(--color-text-muted)}.demo-box-about{margin-top:8px;padding:0;border:none;background:transparent;color:var(--color-primary-dark);font-size:12px;font-weight:600;cursor:pointer}.demo-box-about:hover{text-decoration:underline}.demo-banner{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:40;width:min(640px,calc(100vw - 32px));padding:16px 44px 16px 18px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md),0 8px 24px #0000001f}.demo-banner-text{margin:0;font-size:13px;line-height:1.5}.demo-banner-text+.demo-banner-text{margin-top:8px}.demo-banner-close{position:absolute;top:2px;right:6px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);font-size:20px;line-height:1;cursor:pointer;transition:color .15s ease}.demo-banner-close:hover{color:var(--color-primary)}.full-version-tag{padding:1px 6px;border:1px solid var(--color-border-light);border-radius:var(--radius-xs);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:10px;line-height:1.6;white-space:nowrap;cursor:pointer}.full-version-tag:hover{color:var(--color-primary-dark);border-color:var(--color-primary)}.left-sidebar-item.full-version-item{cursor:default;opacity:.75}.left-sidebar-item.full-version-item .left-sidebar-label{color:var(--color-text-muted)}.full-version-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.full-version-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 6px;cursor:default}.full-version-list{list-style:none;margin:2px 0 0;padding:0 4px}.full-version-list button{display:flex;align-items:center;gap:8px;width:100%;padding:4px 8px;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-muted);font-size:12px;text-align:left;cursor:pointer}.full-version-list button:hover{background:var(--color-bg);color:var(--color-text-secondary)}.full-version-icon{width:12px}@media(max-width:600px){.demo-banner{bottom:12px}}
