.network-basics{padding:4px 0 0}.network-basics__header{margin-bottom:20px}.network-basics__header h3{display:flex;align-items:center;gap:10px;margin:0;color:var(--color-accent);font-size:clamp(21px,2.2vw,28px);font-weight:600;letter-spacing:-.035em;line-height:1.2}.network-basics__header h3 svg{width:.85em;height:.85em;flex:0 0 auto}.network-basics__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.network-lesson{display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(150deg,rgba(var(--color-accent-rgb),.035),transparent 45%),var(--color-canvas)}.network-lesson__heading{display:flex;align-items:center;gap:9px}.network-lesson__number{color:var(--color-accent);font:10px var(--font-data)}.network-lesson__heading h4{margin:0;color:var(--color-text);font-size:14px;font-weight:600;letter-spacing:-.02em}.network-lesson__description{min-height:54px;margin:10px 0 13px;color:var(--color-text-muted);font-size:12px;line-height:1.5}.network-lesson__description strong{color:var(--color-text);font-weight:500}.network-lesson__scene{position:relative;isolation:isolate;aspect-ratio:5 / 3;width:100%;border:1px solid rgba(var(--color-accent-rgb),.09);border-radius:var(--radius-md);background:radial-gradient(circle,color-mix(in srgb,var(--color-text-subtle) 14%,transparent) .7px,transparent .9px) 4px 4px / 13px 13px}.network-lesson__scene>svg{display:block;width:100%;height:100%}.network-lesson__scene-label{position:absolute;top:8px;left:10px;z-index:1;color:var(--color-text-subtle);font:8px var(--font-data);letter-spacing:.08em;text-transform:uppercase}.network-region-outline{fill:rgba(var(--color-accent-rgb),.025);stroke:rgba(var(--color-accent-rgb),.17)}.network-region-divider{fill:none;stroke:rgba(var(--color-accent-rgb),.12);stroke-dasharray:3 4}.network-trade-link{stroke:var(--color-border-strong);stroke-width:2;transition:stroke .16s}.network-trade-link.is-active{stroke:var(--color-accent)}.network-region-controls{position:absolute;top:0;right:0;bottom:0;left:0}.network-region{position:absolute;display:grid;place-items:center;width:39px;height:39px;padding:0;transform:translate(-50%,-50%);border:1px solid var(--color-border-strong);border-radius:50%;background:var(--color-surface);color:var(--color-text-muted);font:13px var(--font-data);cursor:pointer;transition:background .16s,box-shadow .16s,border-color .16s}.network-region.is-partner{border-color:var(--color-accent);color:var(--color-accent)}.network-region[aria-pressed=true]{border-color:var(--color-accent);color:var(--color-on-accent);background:var(--color-accent);box-shadow:0 0 0 6px rgba(var(--color-accent-rgb),.1),0 0 22px rgba(var(--color-accent-rgb),.13)}.network-region:hover{box-shadow:0 0 0 5px rgba(var(--color-accent-rgb),.14)}.network-lesson__interaction{display:flex;align-items:center;min-height:65px;width:100%}.network-lesson__legend{justify-content:center;gap:23px;color:var(--color-text-muted);font-size:10px}.network-lesson__legend span{display:inline-flex;align-items:center;gap:7px}.network-legend-dot{width:7px;height:7px;border:1px solid var(--color-accent);border-radius:50%}.network-legend-line{width:15px;height:1px;background:var(--color-accent)}.network-lesson__result{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:12px;border-top:1px solid var(--color-border);font-size:11px;line-height:1.45}.network-lesson__result strong{color:var(--color-accent-strong);font-size:12px;font-weight:500}.network-lesson__result>span{color:var(--color-text-muted)}.network-orbit{fill:none;stroke:rgba(var(--color-accent-rgb),.15);stroke-dasharray:2 5}.network-orbit--incoming{stroke:color-mix(in srgb,var(--color-chart-incoming) 20%,transparent)}.network-volume-guide{stroke:var(--color-accent-soft);stroke-width:22;stroke-linecap:round}.network-volume-link{stroke:var(--color-accent);stroke-linecap:round;transition:stroke-width .12s}.network-volume-arrow{fill:var(--color-accent)}.network-diagram-node{fill:var(--color-surface);stroke:var(--color-accent)}.network-diagram-node--incoming{stroke:var(--color-chart-incoming)}.network-node-letter,.network-flow-label,.network-volume-count,.network-bridge-label,.network-route-caption,.network-route-region text{fill:var(--color-accent);font-family:var(--font-data);text-anchor:middle}.network-node-letter,.network-route-region text{font-size:15px}.network-node-letter--incoming,.network-flow-label--incoming{fill:var(--color-chart-incoming)}.network-flow-label,.network-bridge-label{font-size:8px;letter-spacing:.1em}.network-volume-count{fill:var(--color-text);font-size:12px}.network-volume-control{flex-direction:column;align-items:stretch;justify-content:center;gap:3px}.network-volume-control label{display:flex;justify-content:space-between;color:var(--color-text-muted);font-size:10px}.network-volume-control output{color:var(--color-accent);font-family:var(--font-data)}.network-volume-control input{width:100%;height:21px;margin:0;accent-color:var(--color-accent);cursor:pointer}.network-bridge-zone{fill:transparent;stroke:var(--color-border-strong);stroke-dasharray:3 4;transition:fill .16s,stroke .16s}.network-bridge-zone.is-active{fill:var(--color-accent-soft);stroke:var(--color-accent)}.network-route-link line{stroke:var(--color-border-strong);stroke-width:2}.network-route-link path{fill:var(--color-border-strong)}.network-route-link.is-reachable line{stroke:var(--color-accent)}.network-route-link.is-reachable path{fill:var(--color-accent)}.network-route-link.is-removed line{stroke-dasharray:2 5;opacity:.6}.network-route-region circle{fill:var(--color-surface);stroke:var(--color-border-strong)}.network-route-region text{fill:var(--color-text-subtle)}.network-route-region.is-reachable circle{fill:color-mix(in srgb,var(--color-accent) 15%,var(--color-surface));stroke:var(--color-accent)}.network-route-region.is-reachable text{fill:var(--color-accent-strong)}.network-route-caption{fill:var(--color-text-muted);font-size:10px}.network-bridge-control{display:flex;align-items:center;gap:8px;width:100%;min-height:35px;padding:7px 9px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:10px var(--font-body);cursor:pointer;transition:background .16s,border-color .16s}.network-bridge-control:hover{border-color:var(--color-accent);background:var(--color-surface-strong)}.network-bridge-control__icon{display:flex;align-items:center;justify-content:space-between;width:20px;height:2px;background:var(--color-border-strong)}.network-bridge-control__icon i{width:5px;height:5px;border:1px solid var(--color-text-subtle);border-radius:50%;background:var(--color-surface)}.network-bridge-control[aria-pressed=true] .network-bridge-control__icon{background:var(--color-accent)}.network-bridge-control[aria-pressed=true] .network-bridge-control__icon i{border-color:var(--color-accent)}.network-bridge-control__state{margin-left:auto;color:var(--color-text-muted);font-family:var(--font-data);font-size:9px}.network-bridge-control[aria-pressed=true] .network-bridge-control__state{color:var(--color-accent)}@media (max-width: 900px){.network-basics__cards{grid-template-columns:1fr}.network-lesson__description{min-height:0}.network-lesson__scene{max-width:360px;align-self:center}}@media (prefers-reduced-motion: reduce){.network-basics *,.network-basics *:before,.network-basics *:after{transition:none;animation:none}}.comparison-overlay{--comparison-original: var(--color-chart-original);--comparison-intervention: var(--color-accent);--comparison-introduction: var(--color-chart-purple);--event-marker-height: 20px;width:min(1440px,96vw);height:min(820px,94dvh);max-width:none;max-height:none;padding:0;overflow:hidden;color:var(--color-text);font-family:var(--font-body);border:1px solid var(--color-border-strong);border-radius:16px;background:var(--color-surface-muted);box-shadow:var(--floating-light-shadow),inset 0 1px rgba(var(--color-accent-rgb),.1)}.comparison-overlay[open]{display:flex;flex-direction:column}.comparison-overlay::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.comparison-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px 8px;background:radial-gradient(ellipse at 20% 0,rgba(var(--color-accent-rgb),.07),transparent 65%)}.comparison-header h2{display:inline-flex;min-width:0;align-items:center;gap:10px;margin:0;color:var(--color-accent);font-size:clamp(20px,2.15vw,28px);font-weight:600;line-height:1.2;letter-spacing:-.035em}.comparison-header__title>svg{width:.85em;height:.85em;flex:0 0 auto}.comparison-header__actions{display:flex;flex:0 0 auto;align-items:center;gap:12px}.scenario-presets{display:flex;flex:0 0 auto;align-items:center}.scenario-presets,.scenario-settings-group{position:relative;flex:0 0 auto;flex-direction:column;align-items:stretch;gap:7px;padding:8px 7px 6px;border:1px solid rgba(var(--color-accent-rgb),.27);border-radius:14px;background:linear-gradient(150deg,rgba(var(--color-accent-rgb),.055),transparent 70%);box-shadow:inset 0 1px #ffffff08}.scenario-presets__heading,.scenario-settings-group>legend{position:absolute;top:-6px;left:11px;padding:0 5px;width:auto;margin:0;color:var(--color-accent);background:var(--color-surface-muted);font:10px/1.2 var(--font-data);letter-spacing:.14em;text-transform:uppercase}.scenario-presets__buttons{display:flex;align-items:center;gap:5px}.comparison-mode{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:linear-gradient(165deg,rgba(var(--color-accent-rgb),.08),transparent 65%),var(--color-page-bg);box-shadow:inset 0 1px #ffffff0a,0 4px 14px #0000002e}.comparison-mode:before{content:"";position:absolute;z-index:-1;inset:4px auto 4px 4px;width:calc(50% - 4px);border:1px solid rgba(var(--color-accent-strong-rgb),.8);border-radius:inherit;background:var(--fill-selected);box-shadow:inset 0 1px #ffffff73,0 0 15px rgba(var(--color-accent-rgb),.18);opacity:0;pointer-events:none;transition:transform .24s ease,opacity .16s ease}.comparison-mode[data-mode=trade]:before,.comparison-mode[data-mode=simulation]:before{opacity:1}.comparison-mode[data-mode=simulation]:before{transform:translate(100%)}.comparison-mode button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:7px 14px;border:1px solid transparent;border-radius:var(--radius-pill);color:var(--color-text-muted);background:transparent;font:500 14px var(--font-body);cursor:pointer;transition:color .16s ease,background .16s ease}.comparison-mode button svg{width:16px;height:16px;flex:0 0 auto}.comparison-mode button:hover:not(:disabled):not([aria-pressed=true]){color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.06)}.comparison-mode button[aria-pressed=true]{color:var(--color-on-selected)}.comparison-mode button:disabled{cursor:not-allowed;opacity:.5}.comparison-close{position:relative;display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;padding:0;color:var(--color-accent-strong);border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:50%;background:radial-gradient(circle at 30% 15%,rgba(var(--color-accent-rgb),.15),transparent 70%),var(--color-surface);box-shadow:inset 0 1px #ffffff12,0 4px 14px #0003;cursor:pointer;transition:color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.comparison-close:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid transparent;border-top-color:rgba(var(--color-accent-rgb),.45);border-bottom-color:rgba(var(--color-accent-rgb),.45);border-radius:inherit;transform:rotate(-35deg);pointer-events:none;transition:transform .24s ease,border-color .16s ease}.comparison-close:hover,.comparison-close:focus-visible{color:var(--color-text);border-color:var(--color-accent);box-shadow:inset 0 0 12px rgba(var(--color-accent-rgb),.08),0 0 18px rgba(var(--color-accent-rgb),.16)}.comparison-close:hover:before,.comparison-close:focus-visible:before{border-top-color:var(--color-accent);border-bottom-color:var(--color-accent);transform:rotate(35deg)}.comparison-close:active{transform:scale(.94)}.comparison-scenarios-toggle{display:flex;flex:0 0 auto;min-height:38px;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-muted);background:var(--color-surface);font:13px var(--font-body);cursor:pointer}.comparison-scenarios-toggle svg{width:13px;height:13px}.comparison-scenarios-toggle>span{color:var(--color-accent);font:16px/1 var(--font-data)}.comparison-scenarios-toggle:hover,.comparison-scenarios-toggle[aria-expanded=true]{color:var(--color-accent-strong);border-color:var(--color-accent);background:var(--color-accent-soft);box-shadow:inset 0 0 12px rgba(var(--color-accent-rgb),.05)}.comparison-scenarios-toggle.has-active-scenario{border-color:var(--color-chart-coral)}.scenario-library{position:absolute;top:8px;left:18px;z-index:3;width:min(920px,calc(100% - 36px));max-height:calc(100% - 26px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;padding:16px;border:1px solid rgba(var(--color-accent-rgb),.24);border-radius:var(--radius-lg);background:radial-gradient(ellipse at 0 0,rgba(var(--color-accent-rgb),.07),transparent 65%),var(--color-canvas);box-shadow:var(--floating-light-shadow),inset 0 1px rgba(var(--color-accent-rgb),.08)}.comparison-custom-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;padding:0;border:0;background:var(--color-scrim);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:default}.scenario-library[hidden]{display:none}.scenario-library__heading,.scenario-slot__heading,.scenario-slot__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.scenario-library h3{margin:0;font-size:15px;font-weight:600}.scenario-library .comparison-info__tip{display:none;top:calc(100% + 10px);bottom:auto}.scenario-library .comparison-info:is(:hover,:focus-within) .comparison-info__tip{display:block}.scenario-preset-settings{min-width:0;margin:16px 0}.scenario-preset-settings__row{display:flex;align-items:center;gap:18px}.scenario-preset-setting{display:flex;flex:0 0 auto;align-items:center;gap:8px}.scenario-preset-setting__label{display:flex;align-items:center;gap:4px}.scenario-preset-setting__label label{color:var(--color-text);font-size:13px;font-weight:600;white-space:nowrap}.scenario-preset-setting__label-short{display:none}.scenario-preset-setting .panel-info-button{width:20px;height:20px;font-size:12px}.scenario-preset-setting .comparison-info__tip{width:min(300px,calc(100vw - 80px));left:0;right:auto}.scenario-preset-setting:last-child .comparison-info__tip{left:auto;right:0}.scenario-preset-setting .comparison-help__heading{padding:8px 10px}.scenario-preset-setting .comparison-help__icon{width:24px;height:24px;border-radius:7px}.scenario-preset-setting .comparison-help__eyebrow{display:none}.scenario-preset-setting .comparison-help__body{gap:6px;padding:8px 10px}.scenario-preset-setting .comparison-help__rows{gap:6px}.scenario-preset-setting .comparison-help__row{grid-template-columns:48px 1fr;gap:6px}.scenario-preset-setting .comparison-help__footer{padding:6px 10px}.scenario-preset-setting__value{display:flex;flex:0 0 auto;align-items:center;gap:4px}.scenario-preset-stepper{display:inline-flex;align-items:center;padding:2px;border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:8px;background:linear-gradient(160deg,rgba(var(--color-accent-rgb),.09),transparent 70%),var(--color-page-bg);box-shadow:inset 0 1px #ffffff0d}.scenario-preset-stepper:focus-within{border-color:var(--color-accent);box-shadow:0 0 10px rgba(var(--color-accent-rgb),.13)}.scenario-preset-stepper button{display:grid;place-items:center;width:28px;height:30px;padding:0;border:1px solid rgba(var(--color-accent-rgb),.12);border-radius:5px;color:var(--color-accent-strong);background:linear-gradient(150deg,rgba(var(--color-accent-rgb),.14),rgba(var(--color-accent-rgb),.025));font:16px/1 var(--font-data);cursor:pointer;transition:background .14s ease,box-shadow .14s ease,transform .14s ease}.scenario-preset-stepper button:hover:not(:disabled){background:rgba(var(--color-accent-rgb),.23);box-shadow:0 0 9px rgba(var(--color-accent-rgb),.2),inset 0 1px #ffffff1a}.scenario-preset-stepper button:active:not(:disabled){transform:scale(.91)}.scenario-preset-stepper input{width:34px;min-width:0;height:30px;padding:2px;border:0;border-radius:3px;color:var(--color-text);background:transparent;font:14px var(--font-data);text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.scenario-preset-stepper input::-webkit-inner-spin-button,.scenario-preset-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.scenario-preset-stepper :is(input,button):focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.scenario-preset-stepper__number{display:flex;flex:1;align-items:center;justify-content:center;gap:2px;min-width:0}.scenario-preset-stepper__number input:not(:last-child){text-align:right}.scenario-preset-stepper__unit{flex:0 0 auto;color:var(--color-text-muted);font:12px/1 var(--font-data)}.scenario-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.scenario-preset{position:relative;flex:0 0 auto;border:1px solid var(--color-border-strong);border-radius:10px;background:linear-gradient(150deg,rgba(var(--color-accent-rgb),.08),transparent 65%),var(--color-surface);box-shadow:inset 0 1px #ffffff0a}.scenario-preset>.comparison-info{position:absolute;top:3px;right:3px}.scenario-presets .scenario-preset .panel-info-button{width:20px;height:20px;font-size:12px}.scenario-preset .comparison-info__tip{top:calc(100% + 12px);bottom:auto;right:0;width:min(380px,60vw);max-height:min(480px,calc(100dvh - 200px));overflow-y:auto;overscroll-behavior:contain;padding:0;border-color:rgba(var(--color-accent-rgb),.32);border-radius:14px;background:var(--color-surface-strong);box-shadow:var(--floating-light-shadow),inset 0 1px rgba(var(--color-accent-rgb),.1);white-space:normal;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.scenario-preset:nth-of-type(-n+3) .comparison-info__tip{left:0;right:auto}.scenario-preset>.comparison-info:after{content:"";position:absolute;top:100%;bottom:auto;right:0;left:0;height:12px;pointer-events:none}.scenario-preset>.comparison-info:hover,.scenario-preset>.comparison-info:focus-within{z-index:7}.scenario-preset>.comparison-info:hover:after,.scenario-preset>.comparison-info:focus-within:after,.scenario-preset .comparison-info:hover .comparison-info__tip,.scenario-preset .comparison-info:focus-within .comparison-info__tip{pointer-events:auto}.scenario-preset .comparison-info__tip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.preset-help{display:block;font:13px/1.5 var(--font-body)}.preset-help__heading{display:flex;align-items:center;gap:10px;padding:16px;border-bottom:1px solid var(--color-border);background:radial-gradient(ellipse at 0 0,rgba(var(--color-accent-rgb),.14),transparent 80%)}.preset-help__icon{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:10px;color:var(--color-accent);background:var(--color-accent-soft);box-shadow:inset 0 1px #ffffff0d}.preset-help__icon svg{width:17px;height:17px}.preset-help__title{display:grid;min-width:0;gap:3px}.preset-help__eyebrow{color:var(--color-text-subtle);font:10px/1.3 var(--font-data);letter-spacing:.1em;text-transform:uppercase}.preset-help__title>strong{color:var(--color-text);font-size:15px;font-weight:600;line-height:1.25}.preset-help__delay{display:grid;flex:0 0 auto;gap:2px;margin-left:auto;padding-left:10px;text-align:right}.preset-help__delay>strong{color:var(--color-accent);font:500 22px/1 var(--font-data)}.preset-help__delay>small{color:var(--color-text-muted);font:10px/1.3 var(--font-data)}.preset-help__rows{display:grid;gap:13px;padding:16px}.preset-help__row{display:grid;grid-template-columns:15px minmax(0,1fr);align-items:start;gap:10px}.preset-help__row>svg{width:13px;height:13px;margin-top:2px;color:var(--color-accent);opacity:.85}.preset-help__row>span{display:grid;gap:3px}.preset-help__row strong{color:var(--color-text);font-size:12px;font-weight:600}.preset-help__row>span>span{color:var(--color-text-muted)}.preset-help__context{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin:0 16px;padding:10px 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font:11px/1.4 var(--font-data)}.preset-help__context>span{display:inline-flex;align-items:center;gap:6px;min-width:0}.preset-help__context svg{width:11px;height:11px;flex:0 0 auto;color:var(--color-accent)}.preset-help__notes{display:grid;gap:8px;padding:12px 16px}.preset-help__notes>span{display:flex;align-items:start;gap:8px;color:var(--color-text-muted);font-size:12px;line-height:1.5}.preset-help__notes svg{width:11px;height:11px;flex:0 0 auto;margin-top:2px;color:var(--color-text-subtle)}.preset-help__footer{display:block;padding:11px 16px;border-top:1px solid var(--color-border);color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.045);font-size:12px;line-height:1.5}.scenario-presets--comparisons .scenario-preset__icon{gap:4px}.comparison-preset-help .preset-help__heading{padding:12px}.comparison-preset-help .preset-help__icon{display:flex;gap:5px;width:auto;min-width:36px;padding:8px}.comparison-preset-help .preset-help__rows{gap:10px;padding:12px}.comparison-preset-help__summary{color:var(--color-text-muted)}.comparison-preset-help__columns{display:grid;gap:6px}.comparison-preset-help__column{display:grid;grid-template-columns:16px 14px 64px minmax(0,1fr);align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--color-border);border-left:2px solid var(--scenario-color);border-radius:7px}.comparison-preset-help__column>small{color:var(--scenario-color);font:11px var(--font-data)}.comparison-preset-help__column>svg{width:13px;height:13px;color:var(--color-accent)}.comparison-preset-help__column>strong{color:var(--color-text);font-size:12px;font-weight:500}.comparison-preset-help__column>span{color:var(--color-text-muted);font-size:12px}.comparison-preset-help .preset-help__footer{padding:10px 12px;font-size:11px}.scenario-preset>button{display:flex;min-height:38px;align-items:center;gap:6px;padding:8px 27px 8px 10px;border:0;border-radius:inherit;color:var(--color-text-muted);background:transparent;font:13px var(--font-body);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.scenario-preset>button:hover:not(:disabled):not([aria-pressed=true]){color:var(--color-accent-strong);background:var(--color-accent-soft)}.scenario-preset>button:disabled{opacity:.45;cursor:not-allowed}.scenario-preset.is-active{border-color:var(--color-chart-coral)}.scenario-preset__active{position:absolute;right:5px;bottom:5px;width:8px;height:8px;pointer-events:none}.scenario-preset__icon{display:flex;flex:0 0 auto;color:var(--color-accent)}.scenario-preset__icon svg{width:14px;height:14px}.scenario-preset__label{white-space:normal;text-align:left;line-height:1.35}.scenario-slot{min-width:0;padding:11px;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md)}.scenario-slot.is-saved{border-style:solid;background:rgba(var(--color-accent-rgb),.025)}.scenario-slot.is-active{border-color:var(--color-chart-coral)}.scenario-slot__heading label{color:var(--color-text-muted);font-size:11px}.scenario-slot__heading label>span{margin-right:5px;color:var(--color-accent);font-family:var(--font-data)}.scenario-slot__heading time{color:var(--color-text-subtle);font:10px var(--font-data)}.scenario-slot input{width:100%;min-width:0;height:36px;margin:8px 0;padding:5px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface);font:13px var(--font-body)}.scenario-slot input::placeholder{color:var(--color-text-subtle)}.scenario-slot__footer{gap:8px}.scenario-slot__footer p{flex:1;min-width:0;margin:0;color:var(--color-text-subtle);font:11px/1.4 var(--font-body)}.scenario-slot__actions{display:flex;flex:0 0 auto;gap:5px}.scenario-slot__actions button{min-height:34px;padding:6px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-accent-strong);background:var(--color-accent-soft);font:13px var(--font-body);cursor:pointer}.scenario-slot__actions button:last-child{color:var(--color-text-muted);background:transparent}.scenario-library button:disabled,.comparison-scenarios-toggle:disabled,.scenario-library input:disabled{opacity:.45;cursor:not-allowed}.comparison-scenario-message{flex:0 0 auto;margin:0;padding:0 24px 10px;color:var(--color-accent-strong);font:13px/1.5 var(--font-body);overflow-wrap:anywhere}.comparison-scenario-message.is-error{color:var(--color-chart-incoming)}.comparison-results,.comparison-results__content{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.comparison-results{position:relative;display:grid;grid-template-columns:312px minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.comparison-results__content{isolation:isolate;min-width:0}.comparison-sidebar{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;margin:8px 0 14px 18px;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.comparison-sidebar .comparison-info__tip{position:fixed}.comparison-sidebar .comparison-info:after{top:100%;bottom:auto}.comparison-sidebar>:is(.scenario-presets,.scenario-settings-group){flex:1 0 auto}.comparison-sidebar :is(.scenario-presets,.scenario-settings-group){padding:10px 10px 8px}.comparison-sidebar :is(.scenario-presets__heading,.scenario-settings-group>legend){font-size:11px}.comparison-sidebar .scenario-presets__buttons{display:grid;flex:1;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(min-content,1fr);align-items:stretch;gap:5px}.comparison-sidebar .scenario-presets--comparisons .scenario-presets__buttons{grid-template-columns:1fr}.comparison-sidebar .scenario-preset>button{width:100%;height:100%;min-height:38px;gap:7px;padding:7px 27px 7px 10px;font-size:13px}.comparison-sidebar .scenario-preset .panel-info-button{width:20px;height:20px;font-size:12px}.comparison-sidebar .scenario-preset__label{display:inline}.comparison-sidebar .scenario-preset .comparison-info__tip{left:auto;right:0}.comparison-sidebar .comparison-scenarios-toggle{height:100%;min-height:34px;gap:7px;padding:5px 9px;border-radius:10px}.comparison-sidebar .comparison-scenarios-toggle svg{width:14px;height:14px}.comparison-sidebar .comparison-scenarios-toggle>span{margin-left:auto}.comparison-sidebar .comparison-details{grid-template-rows:auto auto minmax(min-content,1fr)}.comparison-sidebar .comparison-details__scenarios{grid-auto-rows:minmax(min-content,1fr)}.comparison-sidebar .scenario-preset-settings{display:flex;margin:0}.comparison-sidebar .scenario-preset-settings__row{display:grid;flex:1;grid-auto-rows:minmax(min-content,1fr);gap:10px}.comparison-sidebar .scenario-comparison-controls{align-items:center}.comparison-sidebar .scenario-preset-setting{justify-content:space-between}.comparison-sidebar .scenario-preset-setting__label{flex:1;min-width:0;justify-content:space-between}.comparison-sidebar .scenario-preset-setting__label label{font-size:13px;line-height:1.25;white-space:normal}.comparison-sidebar .scenario-preset-setting__value{width:124px}.comparison-sidebar .scenario-preset-stepper{flex:1}.comparison-sidebar .scenario-preset-stepper input{width:calc(3ch + 4px)}.comparison-sidebar .scenario-preset-setting .comparison-info__tip{left:auto;right:0}.scenario-preset-stepper :is(input,button):disabled{opacity:.45;cursor:not-allowed}.comparison-details{display:grid;gap:8px;margin:0}.comparison-details__heading{display:flex;align-items:center;gap:8px}.comparison-details__icon{display:grid;flex:0 0 26px;height:26px;place-items:center;border:1px solid rgba(var(--color-accent-rgb),.25);border-radius:9px;color:var(--color-accent);background:var(--color-accent-soft)}.comparison-details__icon svg{width:14px;height:14px}.comparison-details__heading>span:nth-child(2){display:grid;flex:1;min-width:0;gap:3px}.comparison-details__heading strong{color:var(--color-accent-strong);font:500 14px var(--font-data)}.comparison-details__facts{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;margin:0}.comparison-details__facts>div{min-width:0}.comparison-details__facts dt{display:flex;align-items:center;gap:5px;color:var(--color-text-subtle);font:11px var(--font-body)}.comparison-details__facts dt svg{width:10px;height:10px;color:var(--color-accent)}.comparison-details__facts dd{margin:4px 0 0;color:var(--color-text);font:12px/1.35 var(--font-data);overflow-wrap:anywhere}.comparison-details__population{grid-column:1 / -1}.comparison-details__facts>.comparison-details__population{display:grid;grid-template-columns:subgrid;align-items:baseline;gap:8px}.comparison-details__population dd{margin:0}.comparison-details__scenarios{display:grid;gap:5px}.comparison-details__scenario{display:flex;align-items:center;gap:7px;min-width:0;padding:5px 7px;border-left:2px solid var(--scenario-color);border-radius:5px;background:color-mix(in srgb,var(--color-chart-original) 4.5%,transparent)}.comparison-details__number{color:var(--scenario-color);font:11px var(--font-data)}.comparison-details__scenario>svg{width:12px;height:12px;flex:0 0 auto;color:var(--scenario-color)}.comparison-details__scenario-name{display:grid;flex:1;min-width:0;gap:3px}.comparison-details__scenario-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font:500 12px var(--font-body)}.comparison-details__scenario-name small{color:var(--color-text-muted);font:11px/1.3 var(--font-body)}.comparison-details--three .comparison-details__scenario-name{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px}.comparison-details--three .comparison-details__scenario{min-height:26px}.comparison-details .comparison-info__tip{top:calc(100% + 10px);bottom:auto;left:auto;right:0}.comparison-recomputing{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:var(--color-accent-strong);background:var(--color-scrim);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font:14px var(--font-body);letter-spacing:.04em}.comparison-recomputing__ring{position:relative;display:grid;place-items:center;width:58px;height:58px;border:1px solid var(--color-border-strong);border-radius:50%;background:var(--color-canvas);box-shadow:0 0 28px var(--color-accent-soft),inset 0 0 18px var(--color-accent-soft);font-size:21px}.comparison-recomputing--editable{pointer-events:none}.comparison-recomputing__ring:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border:2px solid transparent;border-top-color:var(--color-accent);border-bottom-color:var(--color-accent-soft);border-radius:50%;animation:comparison-recompute-spin 1.2s linear infinite}@keyframes comparison-recompute-spin{to{transform:rotate(360deg)}}.comparison-body,.scenario-comparison-body{min-height:0;flex:1 1 auto;overflow-y:auto;padding:8px 18px 14px;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.comparison-layout{display:grid;min-height:100%;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:14px}.comparison-scope{min-width:0;padding:17px 15px 0;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(var(--color-accent-rgb),.025),transparent 45%),var(--color-canvas)}.comparison-scope{display:flex;flex-direction:column}.comparison-scope>*{flex-shrink:0}.comparison-scope__heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:21px}.comparison-scope>.comparison-scope__heading{flex-wrap:wrap;gap:6px;min-height:30px}.comparison-scope__title{display:flex;flex:0 0 auto;align-items:center;gap:6px}.comparison-scope h3{flex-shrink:0;margin:0;font-size:14px;font-weight:600;letter-spacing:-.02em}.comparison-scope__context{display:flex;flex:1 1 110px;align-items:center;min-width:144px}.comparison-region-select{width:100%}.comparison-region-select>select{width:100%}.comparison-overlay select{min-width:0;min-height:36px;padding:5px 24px 5px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface);font:14px var(--font-body);text-overflow:ellipsis}.comparison-scope__heading select{padding-block:5px}.comparison-metric-select{display:flex;flex:1.4 1 160px;align-items:center;gap:6px;min-width:142px}.comparison-metric-select>select{flex:1 1 auto;width:0}.comparison-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 4px}.comparison-pair>div{display:flex;flex-direction:column;gap:5px;min-width:0}.comparison-series-label{color:var(--comparison-original);font:11px var(--font-data)}.comparison-series-label--intervention{color:var(--comparison-intervention)}.comparison-pair strong{color:var(--comparison-original);font:500 clamp(17px,1.7vw,26px) var(--font-data);overflow-wrap:anywhere;letter-spacing:-.045em}.comparison-pair>div:nth-child(2) strong{color:var(--color-accent-strong)}.comparison-scope--top-regions{min-height:0}.comparison-trajectories,.comparison-trajectory{display:flex;flex:1;flex-direction:column;min-height:0}.comparison-ranked-regions{display:flex;flex:1 1 0;flex-direction:column;min-height:0;margin-top:10px;overflow-y:auto}.comparison-region-row{display:flex;flex:1 0 110px;flex-direction:column;min-height:110px;padding:7px 0 3px}.comparison-region-row+.comparison-region-row{border-top:1px solid var(--color-border)}.comparison-region-row__name{align-self:flex-start;max-width:100%;padding:0;border:0;color:var(--color-text);background:transparent;font:500 14px var(--font-body);text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;cursor:pointer}.comparison-region-row__name span{margin-right:5px;color:var(--color-text-subtle);font-family:var(--font-data)}.comparison-region-row__name:hover{color:var(--color-accent);text-decoration:underline}.comparison-region-row__name:focus-visible,.comparison-ranked-regions:focus-visible,.scenario-comparison-regions:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.comparison-region-row__values{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 8px;margin-top:5px;color:var(--comparison-original);font:11px var(--font-data)}.comparison-region-row__values strong{font-weight:500}.comparison-delta{fill:var(--color-text-muted);font:13px var(--font-data);stroke:var(--color-canvas);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}.comparison-chart-container{position:relative;flex:1 0 160px;min-height:160px;margin:40px 0 14px}.comparison-region-row .comparison-chart-container{flex-basis:64px;min-height:64px;margin:6px 0 2px}.comparison-chart{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;touch-action:pan-y}.comparison-chart:focus-visible{outline:1px solid var(--color-accent);outline-offset:3px;border-radius:3px}.comparison-gridline{stroke:var(--color-chart-grid);stroke-width:.7;stroke-dasharray:2 5}.comparison-axis{fill:var(--color-text-subtle);font:13px var(--font-data)}.comparison-chart-interventions{pointer-events:none;stroke:var(--color-chart-incoming);stroke-width:1;stroke-dasharray:2 4;opacity:.5}.comparison-chart-events{position:absolute;height:20px;pointer-events:none}.comparison-introduction-line{pointer-events:none;stroke:var(--comparison-introduction);stroke-width:1;stroke-dasharray:4 5;opacity:.7}.comparison-chart-events .comparison-event{--event-tip-width: min(320px, var(--chart-event-width))}.comparison-chart-events .comparison-event.is-introduction{top:-24px}.comparison-chart-events .comparison-event:after{top:100%;bottom:auto;height:10px}.comparison-chart-events .comparison-event__tip{top:calc(100% + 10px);bottom:auto;max-height:min(280px,var(--chart-event-space))}.comparison-chart-events .comparison-event[data-placement=above] .comparison-event__tip{top:auto;bottom:calc(100% + 10px)}.comparison-chart-events .comparison-event[data-placement=above]:after{top:auto;bottom:100%}.comparison-chart-events .comparison-event__marker>span{width:9px;height:9px;background:var(--color-chart-incoming)}.comparison-scope__heading .comparison-info__tip{top:calc(100% + 10px);bottom:auto}.comparison-line{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.comparison-line--original{stroke:var(--comparison-original);stroke-dasharray:5 5}.comparison-line--intervention{stroke:var(--comparison-intervention)}.comparison-current-date{stroke:var(--color-chart-incoming);stroke-dasharray:3 5;opacity:.55}.comparison-cursor{stroke:var(--color-text-muted);stroke-width:1;opacity:.55}.comparison-point{stroke:var(--color-canvas);stroke-width:1.5}.comparison-point--original{fill:var(--comparison-original)}.comparison-point--intervention{fill:var(--comparison-intervention)}.comparison-chart-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--color-text-subtle);font-size:14px}.comparison-stats{margin:0 -15px;border-top:1px solid var(--color-border)}.comparison-stats summary{padding:12px 15px;color:var(--color-text-muted);font-size:13px;cursor:pointer}.comparison-stats summary>span{padding:1px 5px;margin-left:5px;color:var(--color-text-subtle);border:1px solid var(--color-border);border-radius:var(--radius-sm);font:11px var(--font-data)}.comparison-stats table{width:100%;margin-bottom:8px;border-collapse:collapse;table-layout:fixed;font-size:11px}.comparison-stats th,.comparison-stats td{padding:7px 5px;border-top:1px solid var(--color-border);text-align:right;overflow-wrap:anywhere}.comparison-stats th:first-child{width:32%;padding-left:15px;text-align:left}.comparison-stats thead th,.comparison-stats tbody th{color:var(--color-text-muted);font-weight:400}.comparison-stats td{font-family:var(--font-data)}.comparison-stats td:nth-child(3){color:var(--color-accent)}.comparison-region-empty{margin:18px 0 0;color:var(--color-text-subtle);font-size:12px;line-height:1.55}.comparison-event-range{position:absolute;top:8px;height:4px;border-block:1px solid color-mix(in srgb,var(--color-chart-coral) 60%,transparent);border-radius:3px;background:color-mix(in srgb,var(--color-chart-coral) 16%,transparent);box-shadow:0 0 9px color-mix(in srgb,var(--color-chart-coral) 16%,transparent);pointer-events:none}.comparison-event-range:before,.comparison-event-range:after{content:"";position:absolute;top:-4px;width:2px;height:10px;border-radius:2px;background:var(--color-chart-incoming);box-shadow:0 0 6px color-mix(in srgb,var(--color-chart-coral) 40%,transparent)}.comparison-event-range:before{left:0}.comparison-event-range:after{right:0}.comparison-event{--event-tip-width: min(360px, calc(100vw - 100px) );--event-color: var(--color-chart-incoming);position:absolute;width:var(--event-marker-width);height:var(--event-marker-height);transform:translate(-50%);pointer-events:auto}.comparison-event.is-introduction{--event-color: var(--comparison-introduction)}.comparison-event.is-range:before{display:none}.comparison-event:after{position:absolute;right:0;bottom:100%;left:0;height:16px;pointer-events:none;content:""}.comparison-event:hover:after,.comparison-event:focus-within:after{pointer-events:auto}.comparison-event__marker{display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;border-radius:4px;background:transparent;cursor:pointer}.comparison-event__marker:focus-visible{outline:2px solid var(--event-color);outline-offset:2px}.comparison-event__marker>span{width:7px;height:7px;transform:rotate(45deg);border:1px solid var(--event-color);background:var(--color-canvas);box-shadow:0 0 6px color-mix(in srgb,var(--color-chart-coral) 30%,transparent)}.comparison-event__marker.is-grouped>span{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:max-content;height:100%;padding:0 7px;transform:none;border-radius:10px;color:var(--event-color);background:linear-gradient(155deg,color-mix(in srgb,var(--color-chart-coral) 12%,transparent),transparent 85%),var(--color-canvas);font:11px/1 var(--font-data);white-space:nowrap}.comparison-event.is-introduction .comparison-event__marker>span{background:linear-gradient(155deg,color-mix(in srgb,var(--color-chart-purple) 16%,transparent),transparent 85%),var(--color-canvas);box-shadow:0 0 8px color-mix(in srgb,var(--color-chart-purple) 18%,transparent)}.comparison-event.is-introduction .comparison-event__marker i{width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 6px currentColor}.comparison-event:hover,.comparison-event:focus-within{z-index:6}.comparison-event:hover .comparison-event__marker>span,.comparison-event:focus-within .comparison-event__marker>span{background:var(--event-color);color:var(--color-canvas);box-shadow:0 0 10px color-mix(in srgb,var(--color-chart-coral) 60%,transparent)}.comparison-event__range-label{margin:9px 0 0;color:var(--color-text-muted);font:12px/1.5 var(--font-data)}.comparison-event.is-introduction .comparison-event__heading>span{color:var(--comparison-introduction)}.comparison-event__tip{position:absolute;left:calc(50% - var(--event-position) * var(--event-tip-width));bottom:calc(100% + 16px);width:var(--event-tip-width);max-height:min(280px,50vh);overflow-y:auto;overscroll-behavior:contain;padding:14px;border:1px solid rgba(var(--color-accent-rgb),.32);border-radius:14px;color:var(--color-text);background:var(--color-surface-strong);box-shadow:var(--floating-light-shadow),inset 0 1px rgba(var(--color-accent-rgb),.1);font:13px/1.6 var(--font-body);opacity:0;visibility:hidden;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;transition:opacity .1s ease}.comparison-event__tip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.comparison-event:hover .comparison-event__tip,.comparison-event:focus-within .comparison-event__tip{opacity:1;visibility:visible;transition-delay:0s}.comparison-event__heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-14px -14px 0;padding:14px;border-bottom:1px solid var(--color-border);background:radial-gradient(ellipse at 0 0,rgba(var(--color-accent-rgb),.14),transparent 80%)}.comparison-event__heading>strong{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.comparison-event__heading>strong>svg{width:15px;height:15px;flex:0 0 auto;color:var(--color-accent)}.comparison-event__heading span{flex:0 0 auto;color:var(--color-chart-incoming);font-family:var(--font-data)}.comparison-event__step+.comparison-event__step{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border)}.comparison-event__step>button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:6px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-accent-strong);background:var(--color-accent-soft);font:13px var(--font-body);cursor:pointer}.comparison-event__tip ul{margin:10px 0 0;padding-left:16px}.comparison-event__tip li+li{margin-top:8px}.comparison-event__tip li::marker{color:var(--color-accent)}.comparison-event__tip time{display:block;margin-left:0;color:var(--color-text-muted);font-family:var(--font-data)}.comparison-info{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;z-index:2}.comparison-info .panel-info-button{width:20px;height:20px;font:600 12px Georgia,serif}.comparison-info:after{content:"";display:none;position:absolute;right:0;bottom:100%;left:0;height:10px;pointer-events:none}.comparison-info__tip{position:absolute;right:-4px;bottom:calc(100% + 10px);width:min(320px,60vw);max-height:min(420px,calc(100dvh - 260px));overflow-y:auto;overscroll-behavior:contain;padding:0;border:1px solid rgba(var(--color-accent-rgb),.32);border-radius:14px;color:var(--color-text);background:var(--color-surface-strong);box-shadow:var(--floating-light-shadow),inset 0 1px rgba(var(--color-accent-rgb),.1);font:13px/1.5 var(--font-body);letter-spacing:0;opacity:0;visibility:hidden;pointer-events:none;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}:is(.comparison-body,.scenario-library) .comparison-info__tip{top:calc(100% + 10px);bottom:auto}:is(.comparison-body,.scenario-library) .comparison-info:after{top:100%;bottom:auto}:is(.comparison-body,.comparison-sidebar,.scenario-library) .comparison-info[data-placement=above] .comparison-info__tip{top:auto;bottom:calc(100% + 10px)}:is(.comparison-body,.comparison-sidebar,.scenario-library) .comparison-info[data-placement=above]:after{top:auto;bottom:100%}.comparison-info__tip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.comparison-info:hover,.comparison-info:focus-within{z-index:5}.comparison-info:hover .comparison-info__tip,.comparison-info:focus-within .comparison-info__tip{opacity:1;visibility:visible;pointer-events:auto}.comparison-info:hover:after,.comparison-info:focus-within:after{display:block;pointer-events:auto}.comparison-help{display:block}.comparison-help__heading{display:flex;align-items:center;gap:10px;padding:14px;border-bottom:1px solid var(--color-border);background:radial-gradient(ellipse at 0 0,rgba(var(--color-accent-rgb),.14),transparent 80%)}.comparison-help__icon{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:9px;color:var(--color-accent);background:var(--color-accent-soft);box-shadow:inset 0 1px #ffffff0d}.comparison-help__icon svg{width:15px;height:15px}.comparison-help__heading>span:last-child{display:grid;min-width:0;gap:3px}.comparison-help__eyebrow{color:var(--color-text-subtle);font:10px/1.3 var(--font-data);letter-spacing:.1em;text-transform:uppercase}.comparison-help__heading strong{color:var(--color-text);font-size:13px;font-weight:600;line-height:1.3}.comparison-help__body{display:grid;gap:12px;padding:14px}.comparison-help__summary{color:var(--color-text-muted)}.comparison-help__rows{display:grid;gap:12px}.comparison-help__row{display:grid;gap:3px}.comparison-help__row>strong{color:var(--color-accent-strong);font-size:12px;font-weight:500}.comparison-help__row>span{color:var(--color-text-muted)}.comparison-help__footer{display:block;padding:11px 14px;border-top:1px solid var(--color-border);color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.045);font-size:12px;line-height:1.5}.comparison-state{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:30px;text-align:center}.comparison-state__symbol{display:grid;width:58px;height:58px;place-items:center;border:1px solid var(--color-accent);border-radius:50%;color:var(--color-accent);background:var(--color-accent-soft);box-shadow:0 0 0 8px rgba(var(--color-accent-rgb),.035);font-size:25px}.comparison-state__symbol.is-error{border-color:var(--color-chart-incoming);color:var(--color-chart-incoming)}.comparison-state h3{margin:5px 0 0;font-size:18px;font-weight:500}.comparison-state p{max-width:420px;margin:0;color:var(--color-text-muted);font-size:14px;line-height:1.6}.comparison-body>.comparison-state{min-height:100%}.comparison-view-switch{position:relative;isolation:isolate;display:grid;flex:0 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;border:1px solid var(--color-border-strong);border-radius:13px;background:linear-gradient(145deg,rgba(var(--color-accent-rgb),.1),transparent 75%),var(--color-page-bg);box-shadow:inset 0 1px #ffffff0a}.comparison-view-switch:before{content:"";position:absolute;z-index:-1;inset:4px auto 4px 4px;width:calc(50% - 4px);border:1px solid rgba(var(--color-accent-strong-rgb),.8);border-radius:9px;background:var(--fill-selected);box-shadow:inset 0 1px #ffffff73,0 0 18px rgba(var(--color-accent-rgb),.16);pointer-events:none;transition:transform .24s ease}.comparison-view-switch[data-view=three]:before{transform:translate(100%)}.comparison-view-switch button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:7px 14px;border:0;border-radius:9px;color:var(--color-text-muted);background:transparent;font:500 14px/1.35 var(--font-body);white-space:nowrap;cursor:pointer;transition:color .16s ease}.comparison-view-switch button svg{width:16px;height:16px;flex:0 0 auto}.comparison-view-switch button strong{font-weight:600}.comparison-view-switch button[aria-pressed=true]{color:var(--color-on-selected)}.comparison-view-switch button:hover:not([aria-pressed=true]):not(:disabled){color:var(--color-accent-strong)}.comparison-view-switch button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.comparison-view-switch button:disabled{opacity:.5;cursor:not-allowed}.scenario-comparison-controls{display:grid;flex:0 0 auto;gap:10px}.scenario-comparison-controls>label,.comparison-metric-pair>label{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:7px;font:13px var(--font-body);color:var(--color-text-muted)}.scenario-comparison-controls>label{margin-left:30px}.scenario-comparison-controls select{min-width:0;width:100%;min-height:36px;font-size:14px}.comparison-metric-pair{position:relative;display:grid;gap:10px;padding-left:30px}.comparison-metric-link{position:absolute;top:18px;bottom:18px;left:0;width:24px;color:var(--color-border-strong)}.comparison-metric-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:12px;border:1px dashed currentColor;border-right:0;border-radius:5px 0 0 5px}.comparison-metric-pair[data-locked=true] .comparison-metric-link{color:var(--color-accent)}.comparison-metric-pair[data-locked=true] .comparison-metric-link:before{border-style:solid}.comparison-metric-lock{position:absolute;top:50%;left:0;transform:translateY(-50%);cursor:pointer}.comparison-metric-lock input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:inherit}.comparison-metric-lock span{display:grid;place-items:center;width:26px;height:28px;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-canvas);color:var(--color-text-muted);transition:background .16s ease,border-color .16s ease,color .16s ease}.comparison-metric-lock svg{width:13px;height:13px}.comparison-metric-lock input:checked+span{border-color:var(--color-accent);background:linear-gradient(var(--color-accent-soft),var(--color-accent-soft)),var(--color-canvas);color:var(--color-accent-strong)}.comparison-metric-lock:hover input:not(:disabled)+span{border-color:var(--color-accent-strong);color:var(--color-accent-strong)}.comparison-metric-lock input:focus-visible+span{outline:2px solid var(--color-accent);outline-offset:3px}.comparison-metric-lock input:disabled{cursor:not-allowed}.comparison-metric-lock input:disabled+span{opacity:.5}.scenario-comparison-columns{display:grid;grid-template-columns:repeat(3,minmax(272px,1fr));align-items:stretch;gap:12px;height:100%}.scenario-comparison-column{display:flex;flex-direction:column;min-width:0;min-height:0;padding:12px;border:1px solid var(--color-border);border-top:2px solid var(--scenario-color);border-radius:var(--radius-lg);background:var(--color-canvas)}.scenario-comparison-column__heading{display:flex;align-items:center;gap:10px}.scenario-comparison-column__heading>span{color:var(--scenario-color);font:500 14px var(--font-data)}.scenario-comparison-strategy{position:relative;flex:1;min-width:0}.scenario-comparison-strategy select{display:block;width:100%;padding-left:34px}.scenario-comparison-strategy__icon{position:absolute;top:50%;left:11px;width:14px;height:14px;transform:translateY(-50%);color:var(--scenario-color);pointer-events:none}.scenario-comparison-strategy select:disabled+.scenario-comparison-strategy__icon{opacity:.45}.scenario-comparison-column__heading .comparison-info__tip{width:min(340px,calc(100vw - 100px))}.scenario-comparison-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 0}.scenario-comparison-settings label{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-width:0;color:var(--color-text-muted);font:13px/1.35 var(--font-body)}.scenario-comparison-settings input{min-width:0;width:100%;height:36px;padding:5px 8px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--scenario-color);font:500 15px/20px var(--font-data)}.scenario-comparison-settings label>span{display:flex;align-items:center;height:36px}.scenario-comparison-values{display:flex;justify-content:space-between;gap:10px;color:var(--color-text-muted);font:12px/1.35 var(--font-body)}.scenario-comparison-values>span{display:flex;flex-direction:column;gap:5px}.scenario-comparison-values>span:last-child{text-align:right}.scenario-comparison-values strong{color:var(--scenario-color);font:500 20px var(--font-data)}.scenario-comparison-values>span:last-child strong{font-size:15px}.scenario-comparison-network{display:flex;flex-direction:column;margin-top:12px}.scenario-comparison-network .comparison-chart-container{flex:0 0 100px;min-height:100px;margin:36px 0 10px}.scenario-comparison-regions{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto}.scenario-comparison-region-heading{flex:none;margin:2px 0 8px;color:var(--color-text-muted);font:12px/1.35 var(--font-body)}.scenario-comparison-regions .comparison-region-row{min-height:92px;flex-basis:92px}.scenario-comparison-region-value{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font:12px var(--font-body)}.scenario-comparison-region-value>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.scenario-comparison-region-value strong{flex:0 0 auto;color:var(--scenario-color);font:500 13px var(--font-data)}.scenario-comparison-pending{display:grid;flex:1;min-height:180px;place-items:center;color:var(--color-text-muted);font-size:14px}@media (max-height: 820px){.comparison-sidebar .scenario-presets--comparisons .scenario-presets__buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-sidebar .scenario-presets--comparisons .scenario-preset:first-child{grid-column:1 / -1}.comparison-sidebar .scenario-presets--comparisons .scenario-preset>button{gap:5px;padding:7px 27px 7px 9px}.comparison-sidebar .scenario-presets--comparisons .scenario-preset__label{white-space:normal}}@media (max-height: 700px){.comparison-sidebar{gap:12px}.comparison-sidebar :is(.scenario-presets,.scenario-settings-group){padding-block:8px 6px}.comparison-sidebar .scenario-preset-settings__row,.scenario-comparison-controls,.comparison-details{gap:6px}.comparison-details__icon{flex-basis:22px;height:22px}.comparison-details__scenario{padding-block:3px}.comparison-details--three .comparison-details__scenario{min-height:22px}}@media (max-width: 1350px){.scenario-preset__label{display:none}.scenario-preset>button{width:38px;padding:7px 16px 7px 6px}}@media (max-width: 1150px){.comparison-header__actions{flex-wrap:wrap;justify-content:space-between;gap:8px}.scenario-preset .comparison-info__tip{left:0;right:auto}.scenario-slot__footer{align-items:flex-start;flex-direction:column}.comparison-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 840px){.scenario-preset-settings__row{gap:12px}.scenario-preset-setting__label-full{display:none}.scenario-preset-setting__label-short{display:inline}}@media (max-width: 760px){.comparison-header{position:relative;padding:15px 16px 8px;gap:10px}.comparison-header__actions{gap:8px}.comparison-header__title{min-width:0;min-height:44px;padding-right:56px}.comparison-close{position:absolute;top:15px;right:16px}.scenario-presets{gap:4px;padding-inline:5px}.scenario-presets__buttons{gap:4px}.scenario-preset .comparison-info__tip{width:min(380px,calc(50vw - 16px))}.comparison-scenarios-toggle{min-height:32px;gap:5px;padding:6px 8px}.scenario-slot-grid{grid-template-columns:1fr}.scenario-slot__footer{align-items:center;flex-direction:row}.comparison-mode button{padding:6px 9px}.comparison-layout{grid-template-columns:1fr}.comparison-scenario-message{padding-right:16px;padding-left:16px}}@media (prefers-reduced-motion: reduce){.comparison-overlay *,.comparison-overlay *:before,.comparison-overlay *:after{transition:none;animation:none}}.pooled-flows .imports,.pooled-ports .imports,[data-flow-channel=imports]{--flow-accent: var(--color-chart-incoming)}.pooled-flows .exports,.pooled-ports .exports,[data-flow-channel=exports]{--flow-accent: var(--color-chart-outgoing)}.pooled-flow-link{fill:none;stroke:var(--flow-accent);stroke-dasharray:7 7;stroke-linecap:round;pointer-events:none;transition:opacity .16s,filter .16s}.pooled-flow-route:is(.is-hovered,.is-region-hovered) .pooled-flow-link{opacity:.85;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--flow-accent) 55%,transparent));animation:pooled-flow-travel 1.8s linear infinite}.pooled-flow-halo{fill:none;stroke:var(--color-canvas);stroke-width:6;opacity:0;pointer-events:none;transition:opacity .16s}.pooled-flow-route:is(.is-hovered,.is-region-hovered) .pooled-flow-halo{opacity:.9}#mainFigureSVG>.links{transition:opacity .16s}#mainFigureSVG.pooled-flow-focus>.links{opacity:.14}#mainFigureSVG.pooled-flow-focus .pooled-flow-route:not(.is-hovered) .pooled-flow-link,#mainFigureSVG.region-flow-focus .pooled-flow-route:not(.is-region-hovered) .pooled-flow-link{opacity:.025}body:not(.focus-mode-active) #mainFigureSVG.map-view>.links>.link{stroke-width:.85px;opacity:.075;marker-end:none}#mainFigureSVG>.links>path{transition:opacity .16s}body:not(.focus-mode-active) #mainFigureSVG.region-flow-focus>.links>path:not([data-node-flow]){opacity:.025}#mainFigureSVG .links>[data-node-flow=incoming]{--flow-accent: var(--color-chart-incoming)}#mainFigureSVG .links>[data-node-flow=outgoing]{--flow-accent: var(--color-chart-outgoing)}body:not(.focus-mode-active) #mainFigureSVG.region-flow-focus>.links>path[data-node-flow]{stroke:var(--flow-accent);stroke-width:1.7px;stroke-linecap:round;stroke-dasharray:7 7;opacity:.85;marker-end:none;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--flow-accent) 55%,transparent));animation:pooled-flow-travel 1.8s linear infinite}.pooled-flow-hit{fill:none;stroke:transparent;stroke-width:12;vector-effect:non-scaling-stroke;pointer-events:stroke;outline:none}.pooled-flows marker path{fill:var(--flow-accent)}.port-gradient-start{stop-color:color-mix(in srgb,var(--flow-accent) 7%,var(--color-canvas))}.port-gradient-end{stop-color:var(--color-canvas)}.pooled-port{outline:none;cursor:grab;touch-action:none}.pooled-port.is-dragging{cursor:grabbing}.port-surface{stroke:color-mix(in srgb,var(--color-border) 65%,transparent);stroke-width:.7;filter:drop-shadow(0 3px 6px rgb(0 0 0 / 7%));transition:filter .18s,stroke .18s}.port-orbit,.port-icon-orbit{fill:none;stroke:var(--flow-accent);stroke-width:.8;stroke-linecap:round;opacity:.45;pointer-events:none;transition:opacity .18s}.port-icon-orbit{opacity:.3}.port-icon{fill:none;stroke:var(--flow-accent);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.pooled-port.is-hovered .port-surface,.pooled-port:focus-visible .port-surface{stroke:color-mix(in srgb,var(--flow-accent) 60%,var(--color-border));filter:drop-shadow(0 2px 5px rgb(0 0 0 / 10%))}.pooled-port.is-hovered .port-orbit,.pooled-port:focus-visible .port-orbit{opacity:.9}.pooled-port text{fill:var(--color-text);font-family:var(--font-body);pointer-events:none}.pooled-port .port-name{font-size:10px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;fill:color-mix(in srgb,var(--flow-accent) 65%,var(--color-text-muted))}.pooled-port .port-value{font:400 18px var(--font-data);letter-spacing:-.4px;font-variant-numeric:tabular-nums}.pooled-port .port-caption{font-size:9px;fill:var(--color-text-muted)}.network-hover-callout[data-flow-channel] .network-callout-surface{stroke:color-mix(in srgb,var(--flow-accent) 55%,transparent)}.network-callout-connector[data-flow-channel],.network-hover-callout[data-flow-channel] .network-callout-accent{stroke:var(--flow-accent)}.network-hover-callout[data-flow-channel] .network-callout-code{fill:var(--flow-accent)}.network-hover-callout[data-flow-channel] .network-callout-row{fill:color-mix(in srgb,var(--flow-accent) 8%,transparent)}.network-callout-note{color:var(--color-text-muted);font:11px/16px var(--font-body)}@keyframes pooled-flow-travel{to{stroke-dashoffset:-14}}@media (prefers-reduced-motion: reduce){.pooled-flow-route:is(.is-hovered,.is-region-hovered) .pooled-flow-link,body:not(.focus-mode-active) #mainFigureSVG.region-flow-focus>.links>path[data-node-flow]{animation:none}.pooled-flow-link,.pooled-flow-halo,.port-surface,.port-orbit,.port-icon-orbit,#mainFigureSVG>.links,#mainFigureSVG>.links>path{transition:none}}.trade-item[data-flow-channel] .trade-icon,.trade-item[data-flow-channel] .trade-route-label{color:var(--flow-accent)}:root{--cursor-default: default;--cursor-pointer: pointer;--cursor-text: text;--cursor-move: move;--cursor-not-allowed: not-allowed;--cursor-help: help}@media (any-pointer: fine) and (any-hover: hover) and (forced-colors: none){:root{--cursor-default: url(/assets/default-aIAqEPgm.svg) 20 19, default;--cursor-pointer: url(/assets/pointer-Ce5WLOEA.svg) 28 18, pointer;--cursor-text: url(/assets/text-BW9Q9h_L.svg) 32 32, text;--cursor-move: url(/assets/move-BZSOCig0.svg) 32 32, move;--cursor-not-allowed: url(/assets/not-allowed-DtWaYy5O.svg) 32 32, not-allowed;--cursor-help: url(/assets/help-Dh6nZyq2.svg) 20 19, help}}html{cursor:var(--cursor-default)}:is(button,[type=button],[type=submit],[type=reset]):not(:disabled),a[href],select,summary,[role=button],input:is([type=checkbox],[type=radio],[type=range],[type=file]){cursor:var(--cursor-pointer)}:where(textarea,input:not([type]),input:is([type=text],[type=search],[type=email],[type=url],[type=tel],[type=password],[type=number]),[contenteditable]:not([contenteditable=false])){cursor:var(--cursor-text)}:is(button,input,select,textarea):disabled,:is(button,input,select,textarea,[role=button])[aria-disabled=true]{cursor:var(--cursor-not-allowed)}.panel-info-button:not(:disabled):not([aria-disabled=true]){cursor:var(--cursor-help)}:root{color-scheme:dark;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--hotspot-ring-max-scale: 1.06;--font-data: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--color-page-bg: #080e17;--color-page-bg-alt: #080e17;--color-canvas: #0c1420;--color-surface: #141e2b;--color-surface-strong: #1c2939;--color-surface-muted: #101925;--color-panel-dark: #141e2b;--color-panel-dark-strong: #1c2939;--color-text: #e8eef5;--color-text-muted: #a5b5c8;--color-text-subtle: #8b9db2;--color-text-on-dark: #e8eef5;--color-on-accent: #082623;--color-border: #2b3b4e;--color-border-strong: #52667d;--color-border-soft: #2b3b4e;--color-accent: #72e4d4;--color-accent-strong: #9cf2e5;--color-accent-soft: rgba(var(--color-accent-rgb), .1);--color-glow: #467980;--color-track: #52667d;--color-disabled: #64758a;--color-disabled-bg: #182231;--color-focus: #9cf2e5;--color-chart-grid: #35465b;--color-chart-outgoing: #72e4d4;--color-chart-incoming: #ffba86;--fill-action: var(--color-accent);--fill-brand: linear-gradient(115deg, #193740, #141e2b 80%);--fill-mode-map: #233e4b;--fill-mode-graph: #35324f;--shadow-card: 0 4px 20px rgba(0, 0, 0, .12);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .12);--shadow-control: 0 2px 6px rgba(0, 0, 0, .2);--shadow-glow: inset 0 0 0 1px rgba(114, 228, 212, .12);--floating-light-bg: #1c2939;--floating-light-border: #52667d;--floating-light-shadow: 0 16px 40px rgba(0, 0, 0, .35);--floating-dark-bg: #1c2939;--floating-dark-border: #52667d;--floating-dark-shadow: 0 16px 40px rgba(0, 0, 0, .35);--color-accent-rgb: 114, 228, 212;--color-accent-strong-rgb: 156, 242, 229;--color-contrast-rgb: 255, 255, 255;--color-text-rgb: 232, 238, 245;--color-backdrop: rgba(4, 9, 16, .78);--color-scrim: rgba(8, 15, 24, .3);--color-chart-original: #a1adc0;--color-chart-purple: #c8b6ff;--color-chart-coral: #f6b5a4;--color-chart-rose: #f28b96;--color-chart-amber: #f1c77b;--color-chart-green: #7ccbae;--color-chart-blue: #85b9ee;--color-chart-combined: #ff00ff;--color-hotspot-in: #009e73;--color-hotspot-out: #56b4e9;--color-hotspot-between: #e69f00;--color-hotspot-rank: #f0e442;--color-hotspot-eigen: #cc79a7;--color-community-blue: #78b8ed;--color-community-orange: #ffba86;--color-community-green: #7ccbae;--color-community-rose: #f28b96;--color-community-purple: #bca6ed;--color-community-tan: #d3b49a;--color-community-pink: #e8a2cf;--color-community-slate: #a0b1c5;--color-community-olive: #cfce87;--color-community-cyan: #72d5df;--blend-spatial-flow: screen;--fill-selected: linear-gradient(145deg, #a4f2e6, #65cdbf);--color-on-selected: #0b302b;--fill-brand-card: linear-gradient(145deg, #1c3340, #111c29 75%);--fill-focus: linear-gradient(135deg, rgba(34, 63, 68, .52), rgba(16, 28, 42, .32));--fill-restriction-switch: linear-gradient(135deg, #8c473f, #63312c);--fill-permission-switch: linear-gradient(135deg, #12766b, #185e55);--filter-watermark: brightness(0) invert(1);--filter-brand-logo: none;--radius-sm: 4px;--radius-md: 7px;--radius-lg: 10px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 10px;--space-4: 12px;--space-5: 16px;--space-6: 20px;--control-size: 38px;--time-controls-width: min(54%, 420px);--time-slider-offset: calc( var(--control-size) + var(--control-size) + var(--space-3) + var(--space-3) + 5px );--time-slider-width: calc( var(--time-controls-width) - var(--control-size) - var(--control-size) - var(--space-3) - var(--space-3) - 10px );--time-date-bottom: 45px;--time-slider-center-bottom: calc(var(--space-6) + 19px);--time-date-slider-gap: calc( var(--time-date-bottom) - var(--time-slider-center-bottom) );--time-author-line-height: 1rem;--transition-fast: .12s cubic-bezier(.2, 0, .38, .9);--transition-base: .2s cubic-bezier(.2, 0, .38, .9)}:root[data-theme=light]{color-scheme:light;--color-page-bg: #eaf0f3;--color-page-bg-alt: #eaf0f3;--color-canvas: #f5f8fa;--color-surface: #ffffff;--color-surface-strong: #e7eff3;--color-surface-muted: #f6f9fb;--color-panel-dark: #ffffff;--color-panel-dark-strong: #e7eff3;--color-text: #243a4a;--color-text-muted: #526879;--color-text-subtle: #607587;--color-text-on-dark: #243a4a;--color-on-accent: #ffffff;--color-border: #ccd9e2;--color-border-strong: #91a6b6;--color-border-soft: #dbe4ea;--color-accent: #087f72;--color-accent-strong: #06685e;--color-accent-rgb: 8, 127, 114;--color-accent-strong-rgb: 6, 104, 94;--color-contrast-rgb: 36, 58, 74;--color-text-rgb: 36, 58, 74;--color-glow: #79aaa8;--color-track: #9bafbd;--color-disabled: #7c8e9d;--color-disabled-bg: #dfe8ee;--color-focus: #06685e;--color-chart-grid: #c2d2dd;--color-chart-outgoing: #087f72;--color-chart-incoming: #ac5c22;--color-chart-original: #5c6e82;--color-chart-purple: #7652b5;--color-chart-coral: #b8523b;--color-chart-rose: #bc4562;--color-chart-amber: #976215;--color-chart-green: #298166;--color-chart-blue: #3675ac;--color-chart-combined: #a830ad;--color-community-blue: #3677ad;--color-community-orange: #a75c20;--color-community-green: #247a61;--color-community-rose: #b84a60;--color-community-purple: #7958ad;--color-community-tan: #906746;--color-community-pink: #a94f87;--color-community-slate: #566f89;--color-community-olive: #767820;--color-community-cyan: #147987;--blend-spatial-flow: normal;--color-backdrop: rgba(31, 49, 64, .3);--color-scrim: rgba(242, 247, 247, .6);--fill-brand: linear-gradient(115deg, #e2f2ed, #ffffff 80%);--fill-brand-card: linear-gradient(145deg, #e1f0ed, #f6f9fb 75%);--fill-mode-map: #d1e8e4;--fill-mode-graph: #e3ddf0;--fill-focus: linear-gradient(135deg, rgba(225, 244, 239, .94), rgba(246, 249, 251, .9));--fill-restriction-switch: linear-gradient(135deg, #f8e4df, #eed0c8);--fill-permission-switch: linear-gradient(135deg, #d0eae5, #bce0d9);--shadow-card: 0 4px 20px rgba(36, 58, 74, .05);--shadow-soft: 0 1px 2px rgba(36, 58, 74, .06);--shadow-control: 0 2px 6px rgba(36, 58, 74, .1);--shadow-glow: inset 0 0 0 1px rgba(8, 127, 114, .12);--floating-light-bg: #ffffff;--floating-light-border: #91a6b6;--floating-light-shadow: 0 16px 40px rgba(36, 58, 74, .16);--floating-dark-bg: #ffffff;--floating-dark-border: #91a6b6;--floating-dark-shadow: 0 16px 40px rgba(36, 58, 74, .16);--filter-watermark: none;--filter-brand-logo: brightness(0) saturate(100%)}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}:root:active-view-transition *{transition:none!important}::view-transition-old(root){z-index:0}::view-transition-new(root){z-index:1}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}html,body,#root{min-height:100%}body{margin:0;color:var(--color-text);font-family:var(--font-body);line-height:1.5;background:var(--color-page-bg);font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.herdlink-tooltip{position:fixed;left:-9999px;top:-9999px;z-index:30000;width:max-content;max-width:min(240px,72vw);padding:6px 9px;color:var(--color-text);font-size:.78rem;font-weight:700;line-height:1.2;text-align:center;white-space:normal;letter-spacing:0;pointer-events:none;background:var(--floating-light-bg);border:1px solid var(--floating-light-border);border-radius:var(--radius-sm);box-shadow:var(--floating-light-shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast)}.herdlink-tooltip.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.herdlink-tooltip.is-chart,body.focus-mode-active .herdlink-tooltip.is-chart{max-width:min(240px,72vw);padding:6px 9px;border-radius:10px;border-color:color-mix(in srgb,var(--color-accent) 28%,var(--color-border));background:linear-gradient(135deg,rgba(var(--color-accent-rgb),.08),transparent 65%),color-mix(in srgb,var(--color-surface) 82%,transparent);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:0 6px 20px #00000029;text-align:left;font-size:10px;font-weight:400;line-height:1.3}.chart-tip{display:grid;gap:3px}.chart-tip-region{--chart-tip-color: var(--color-accent-strong);display:grid;grid-template-columns:46px minmax(0,1fr);align-items:baseline;gap:7px}.chart-tip-region.outgoing{--chart-tip-color: var(--color-chart-outgoing)}.chart-tip-region.incoming{--chart-tip-color: var(--color-chart-incoming)}.chart-tip-code{padding:1px 4px;white-space:nowrap;border:1px solid color-mix(in srgb,var(--chart-tip-color) 25%,transparent);border-radius:4px;color:var(--chart-tip-color);background:color-mix(in srgb,var(--chart-tip-color) 8%,transparent);font:500 9px var(--font-data);text-align:center}.chart-tip-name{color:var(--color-text);overflow-wrap:anywhere}.chart-tip-metrics{display:flex;align-items:baseline;gap:4px;padding-top:5px;border-top:1px solid var(--color-border);color:var(--color-text-muted)}.chart-tip-value{color:var(--color-text);font:500 12px var(--font-data)}.chart-tip-detail{margin-left:auto;padding-left:10px;font:10px var(--font-data)}.chart-region-target{cursor:var(--cursor-pointer)}.chart-region-target:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:2px}.trade-circle.chart-region-target:hover,.trade-circle.chart-region-target:focus-visible{stroke:var(--color-text);stroke-width:1.5}.partition-region-button{padding:0;border:0;border-radius:2px;color:inherit;background:transparent;font:inherit}.partition-region-button:hover{color:var(--color-accent-strong);text-decoration:underline}.herdlink-tooltip.is-rich{width:min(390px,calc(100vw - 24px));max-width:min(390px,calc(100vw - 24px));padding:0;text-align:left}.tip-card{display:grid;gap:10px;padding:12px}.tip-heading{display:flex;align-items:center;gap:8px;color:var(--color-accent-strong);font-size:.9rem;font-weight:600}.tip-heading i{width:18px;text-align:center}.tip-intro{margin:0;color:var(--color-text-muted);font-size:.78rem;font-weight:600;line-height:1.34}.tip-section-list,.tip-options{display:grid;gap:7px}.tip-section{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;padding:7px;border:1px solid rgba(var(--color-accent-rgb),.13);border-radius:var(--radius-sm);background:rgba(var(--color-accent-rgb),.06)}.tip-section-icon{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;color:var(--color-accent-strong);border-radius:50%;background:rgba(var(--color-accent-rgb),.12)}.tip-section-icon i{font-size:.72rem}.tip-section-copy,.tip-option{display:grid;min-width:0;gap:2px}.tip-section-copy strong,.tip-option strong{color:var(--color-text);font-size:.75rem;font-weight:600;line-height:1.2}.tip-section-copy span,.tip-option span{color:var(--color-text-muted);font-size:.72rem;font-weight:600;line-height:1.28}.tip-equation{padding:10px 0;color:var(--color-text);font-family:math;font-size:1.15rem;font-weight:400;line-height:normal}.tip-options{grid-template-columns:repeat(2,minmax(0,1fr))}.tip-option{padding:7px;border:1px solid rgba(var(--color-accent-rgb),.12);border-radius:var(--radius-sm);background:var(--color-surface)}body.focus-mode-active .herdlink-tooltip{color:var(--color-text-on-dark);background:var(--floating-dark-bg);border-color:var(--floating-dark-border);box-shadow:var(--floating-dark-shadow)}body.focus-mode-active .tip-heading,body.focus-mode-active .tip-section-icon{color:var(--color-accent-strong)}body.focus-mode-active .tip-intro,body.focus-mode-active .tip-section-copy span,body.focus-mode-active .tip-option span{color:var(--color-text-muted)}body.focus-mode-active .tip-section,body.focus-mode-active .tip-option{border-color:var(--color-text-subtle);background:rgba(var(--color-contrast-rgb),.06)}body.focus-mode-active .tip-section-icon{background:rgba(var(--color-accent-rgb),.15)}body.focus-mode-active .tip-section-copy strong,body.focus-mode-active .tip-option strong{color:var(--color-text)}.panel-title-label{display:flex;width:auto;max-width:none;min-height:18px;align-items:center;gap:8px;line-height:18px}.panel-label-text{display:inline-flex;min-width:0;align-items:center;gap:5px}.panel-title-label .panel-info-button,#globalStatsControls .panel-info-button,#nodeStatsControls .panel-info-button{margin-left:auto}.panel-info-button{display:inline-flex;width:18px;height:18px;flex:0 0 auto;align-items:center;justify-content:center;padding:0;color:var(--color-accent-strong);border:0;border-radius:50%;background:rgba(var(--color-accent-rgb),.1);cursor:var(--cursor-help);transition:color var(--transition-fast),background var(--transition-fast),filter var(--transition-fast),transform var(--transition-fast)}.panel-info-button:hover,.panel-info-button:focus-visible{color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.18);filter:brightness(1.12);transform:none}.panel-info-button i{font-size:.78rem;line-height:1}body.mode-panels-rendering #tradeDistribution>:not(.panel-title-label),body.mode-panels-rendering #tradeClusters>:not(.panel-title-label),body.mode-panels-rendering #globalStats>:not(#globalStatsControls):not(.simulation-panel-heading),body.mode-panels-rendering #nodeStats>:not(#nodeStatsControls):not(.simulation-panel-heading),body.mode-panels-rendering #simulationIncidence>:not(.simulation-incidence-heading),body.mode-panels-rendering #tradeConcentration>:not(.trade-concentration-heading),body.mode-panels-rendering #tradeNodeDistribution>:not(.panel-title-label),body.mode-panels-rendering #tradeNodeInsight>:not(.trade-nodeinsight-label):not(#tradeNodeInsightControls),body.mode-panels-rendering #inArboContainer>:not(.inArboTitle){filter:blur(3px);opacity:.48;pointer-events:none;transition:filter var(--transition-fast),opacity var(--transition-fast)}body.simulation-mode-active #globalStats>svg:not(.simulation-global-chart),body.simulation-mode-active #nodeStats>svg:not(.simulation-node-chart){visibility:hidden}body.focus-mode-active .panel-info-button,.glowing-border .panel-info-button,.glowing-border-instant .panel-info-button{color:var(--color-text);background:rgba(var(--color-contrast-rgb),.1)}body.focus-mode-active .panel-info-button:hover,body.focus-mode-active .panel-info-button:focus-visible,.glowing-border .panel-info-button:hover,.glowing-border .panel-info-button:focus-visible,.glowing-border-instant .panel-info-button:hover,.glowing-border-instant .panel-info-button:focus-visible{color:var(--color-text);background:rgba(var(--color-contrast-rgb),.18)}::selection{background:rgba(var(--color-accent-rgb),.2)}.screen-access-content{min-height:100%}.screen-access-content.is-screen-blocked{visibility:hidden}.screen-size-notice{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40000;display:grid;min-height:100vh;min-height:100svh;place-items:center;padding:24px;background:var(--color-page-bg)}.screen-size-notice-card{width:min(100%,430px);padding:30px 4px 24px;text-align:left;border-top:3px solid var(--color-accent-strong);border-bottom:1px solid var(--color-border)}.screen-size-notice-icon{display:grid;width:72px;height:72px;margin:0 0 18px;color:var(--color-accent-strong);place-items:center}.screen-size-notice-icon svg{width:72px;height:72px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.screen-size-notice-icon .screen-orientation-portrait{opacity:.25;stroke-dasharray:3 5}.screen-size-notice-icon .screen-orientation-landscape{fill:var(--color-page-bg)}.screen-size-notice-status{display:flex;align-items:center;gap:10px;margin:24px 0 0;padding-top:16px;color:var(--color-text-muted);font-size:.8rem;border-top:1px solid var(--color-border)}.screen-size-notice-status>span{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-soft)}.screen-size-notice-brand{margin:0 0 6px;color:var(--color-accent-strong);font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.screen-size-notice-card h1{margin:0;color:var(--color-text);font-size:clamp(1.8rem,8vw,2.35rem);line-height:1.08}.screen-size-notice-copy{margin:14px 0 0;color:var(--color-text-muted);font-size:1rem;line-height:1.55}.screen-size-notice-device{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:24px;padding-top:12px;color:var(--color-accent-strong);font-size:.86rem;font-weight:600;border-top:1px solid var(--color-border)}.screen-size-notice-device strong{color:var(--color-text-muted);font-weight:700}.screen-size-notice-device svg{width:22px;font-size:1.15rem;text-align:center}.screen-size-copy-button{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:10px 14px;color:var(--color-on-accent);font-size:.9rem;font-weight:600;border:1px solid var(--color-accent-strong);border-radius:var(--radius-sm);background:var(--fill-action);box-shadow:none;cursor:var(--cursor-pointer);transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.screen-size-copy-button:hover{color:var(--color-on-accent);background:var(--color-focus);box-shadow:none;transform:none}.screen-size-copy-button:active{box-shadow:none;transform:translate(1px,1px)}.screen-size-copy-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.8}@media (max-height: 520px){.screen-size-notice{padding:12px}.screen-size-notice-card{padding:16px 4px 14px}.screen-size-notice-icon{width:60px;height:60px;margin-bottom:8px}.screen-size-notice-icon svg{width:46px;height:46px}.screen-size-notice-brand{margin-bottom:2px}.screen-size-notice-card h1{font-size:1.65rem}.screen-size-notice-copy{margin-top:7px;font-size:.92rem;line-height:1.4}.screen-size-notice-device{margin-top:10px;padding-top:8px}.screen-size-copy-button{margin-top:8px}}#mainContainer{display:grid;grid-template-columns:minmax(0,20fr) minmax(0,50fr) minmax(0,30fr);gap:var(--space-4);height:100vh;padding:var(--space-3);overflow:hidden}#col1,#col2,.col3{min-width:0}.glowing-border,.glowing-border-instant,.glowing-border-switcher,.glowing-border-switcher-instant,.header-row-dark,.header-row-dark-instant{border:1px solid var(--color-glow)!important;box-shadow:var(--shadow-glow)!important}.glowing-border{transition:box-shadow var(--transition-base),border var(--transition-base)}.glowing-border-switcher,.glowing-border-switcher-instant,.header-row-dark,.header-row-dark-instant{background:var(--color-panel-dark)!important}.glowing-border-switcher{transition:box-shadow var(--transition-base),border var(--transition-base),background var(--transition-base),color var(--transition-base)}.glowing-border-switcher,.glowing-border-switcher-instant{color:var(--color-text-on-dark)!important}.header-row-dark{transition:background var(--transition-base)}#col1{width:auto;height:calc(100vh - 20px);background:transparent}#col1 .card,.col1-top{background:transparent;border:none}#col1 .card{display:flex;height:100%;flex-direction:column;box-shadow:none}.col1-bottom{flex:1;min-height:0;overflow-y:hidden;padding:var(--space-3);padding-top:5px;background:transparent}#col1 .card-header{container:herdlink-header / inline-size;position:relative;z-index:30;display:flex;overflow:visible;flex-direction:column;padding:var(--space-3);padding-bottom:5px;background:transparent;border:none}.header-row,.header-row-2,.header-row-3{width:100%;display:flex;justify-content:flex-start;background:transparent}.header-row{margin-bottom:0}.header-row:last-child{border-bottom:none}.header-row-1{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:110px;margin-bottom:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--fill-brand);box-shadow:var(--shadow-soft)}.app-brand{display:flex;min-width:0;align-items:center;gap:12px}.app-brand-info{position:relative;flex:0 0 auto;width:clamp(48px,18cqi,64px)}.app-brand-trigger{display:block;width:100%;padding:3px;border:1px solid rgba(var(--color-accent-rgb),.24);border-radius:50%;background:rgba(var(--color-accent-rgb),.06);cursor:pointer}.app-brand-trigger:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:5px}.app-brand-mark{display:block;width:100%;height:auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,.12));transition:transform .42s cubic-bezier(.22,1,.36,1),filter .42s ease}.app-brand-info.is-open .app-brand-mark{transform:scale(1.12);filter:drop-shadow(0 4px 12px rgba(var(--color-accent-rgb),.2))}.app-brand-card{position:absolute;z-index:1;top:100%;left:0;width:288px;padding-top:16px;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s ease,visibility .24s}.app-brand-info.is-open .app-brand-card{visibility:visible;opacity:1;pointer-events:auto}.app-brand-card-content{padding:16px;border:1px solid rgba(var(--color-accent-rgb),.35);border-radius:var(--radius-lg);background:var(--fill-brand-card);box-shadow:0 16px 36px #0006,inset 0 1px rgba(var(--color-accent-rgb),.12);transform:translateY(6px);transition:transform .24s ease}.app-brand-info.is-open .app-brand-card-content{transform:translateY(0)}.app-brand-card-header{padding-bottom:12px;border-bottom:1px solid rgba(var(--color-accent-rgb),.18)}.app-brand-card-header h2{margin:0 0 4px;color:var(--color-accent-strong);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.app-brand-card-header img{display:block;width:212px;height:auto;filter:var(--filter-brand-logo)}.app-brand-people{margin:0}.app-brand-people>div{padding-top:14px}.app-brand-people>div+div{margin-top:14px;border-top:1px solid rgba(var(--color-text-rgb),.08)}.app-brand-people dt{margin-bottom:5px;color:var(--color-text-muted);font-size:10px;font-weight:500;letter-spacing:.04em}.app-brand-people dd{margin:0}.app-brand-people a{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:4px;color:var(--color-text-on-dark);text-decoration:none}.app-brand-people a>span:first-child{display:grid;gap:4px}.app-brand-people strong{font-size:14px;font-weight:600}.app-brand-people small{color:var(--color-accent-strong);font-size:11px}.app-brand-link-arrow{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(var(--color-accent-rgb),.2);border-radius:50%;color:var(--color-accent-strong);font-size:16px;transition:background var(--transition-fast),border-color var(--transition-fast)}.app-brand-people a:hover .app-brand-link-arrow{border-color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.1)}.app-brand-people a:hover strong{color:var(--color-accent-strong)}.app-brand-people a:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:4px}@media (prefers-reduced-motion: reduce){.app-brand-mark,.app-brand-card,.app-brand-card-content{transition:none}}.logo-container{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:9px}.logo-container .app-title{line-height:1.1}.app-brand-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px}.logo-container .app-version{padding:3px 5px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.6rem;font-weight:500;line-height:1.2;color:var(--color-text-muted);background:var(--color-surface);font-family:var(--font-data);letter-spacing:.03em}.logo-container .app-credit{font-size:.65rem;font-weight:500;line-height:1.2;color:var(--color-text-muted)}.app-credit-link{color:inherit;text-decoration:none}.app-credit-link:hover{color:var(--color-accent-strong);text-decoration:underline;text-decoration-thickness:1.5px}.app-credit-link i{margin-right:6px}.logo-container h4{margin:0;font-size:clamp(1.4rem,8cqi,1.9rem);color:var(--color-text);font-weight:650;letter-spacing:-.045em}.logo-svg-container{width:64px;flex-shrink:0;opacity:.7;transition:opacity var(--transition-base),transform var(--transition-base)}.logo-svg-container svg{width:100%;height:auto}.logo-svg-container:hover{opacity:1;transform:scale(1.05)}@container herdlink-header (max-width: 340px){.header-row-1{min-height:96px;justify-content:flex-start;padding:16px}.app-brand{gap:14px}.logo-svg-container{display:none}}.header-controls-row{display:grid;width:100%;grid-template-columns:minmax(0,1fr) 54px;gap:var(--space-2);align-items:stretch}.header-switcher-stack{display:flex;min-width:0;flex-direction:column}.csv-switcher{display:flex;width:100%;height:47px;overflow:hidden;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);border-color:var(--color-border)}.upper-switcher{border-bottom-left-radius:0;border-bottom-right-radius:0}.lower-switcher{border-top-left-radius:0;border-top-right-radius:0}.csv-switcher input[type=radio]{display:none}.csv-switcher label{display:flex;flex:1;align-items:center;justify-content:center;padding:var(--space-3);color:var(--color-text-muted);font-weight:600;text-align:center;cursor:var(--cursor-pointer);transition:background var(--transition-base),color var(--transition-base),filter var(--transition-fast)}.csv-switcher input[type=radio]:checked+label{color:var(--color-accent);background:var(--color-accent-soft);box-shadow:inset 0 -2px 0 var(--color-accent)}.csv-switcher label:hover{background:rgba(var(--color-accent-rgb),.08)}.animal-switcher input[type=radio]:disabled+label{color:var(--color-disabled);background:none;cursor:var(--cursor-not-allowed);filter:saturate(.45)}.animal-switcher input[type=radio]:disabled+label:hover{background:none}.csv-switcher.disabled{opacity:.65;pointer-events:none;border-color:var(--color-border-strong);background:var(--color-disabled-bg)}.animal-switcher.disabled{pointer-events:auto}.csv-switcher.disabled label{color:var(--color-disabled);cursor:var(--cursor-not-allowed);background:none}.mode-switcher-frame{display:flex;min-width:0;min-height:94px;padding:4px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);border-color:var(--color-border)}.mode-switcher{display:flex;width:100%;overflow:hidden;flex-direction:column;border-radius:var(--radius-sm);background:var(--color-surface)}.mode-switcher input[type=radio]{display:none}.mode-switcher label{display:flex;flex:1;min-height:0;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.95rem;cursor:var(--cursor-pointer);transition:background var(--transition-base),color var(--transition-base),filter var(--transition-fast)}.mode-switcher label+input[type=radio]+label{border-top:1px solid rgba(var(--color-accent-rgb),.18)}.mode-switcher input[type=radio]:checked+label{color:var(--color-on-accent);background:var(--fill-action)}.mode-switcher label:hover{background:rgba(var(--color-accent-rgb),.08)}.mode-switcher-frame.disabled{opacity:.65;pointer-events:none}.mode-switcher-frame.disabled .mode-switcher label{cursor:var(--cursor-not-allowed);filter:saturate(.65)}.mode-switcher-frame.glowing-border-switcher .mode-switcher,.mode-switcher-frame.glowing-border-switcher-instant .mode-switcher{background:var(--color-surface)}.mode-switcher-frame.glowing-border-switcher .mode-switcher label+input[type=radio]+label,.mode-switcher-frame.glowing-border-switcher-instant .mode-switcher label+input[type=radio]+label{border-top-color:var(--color-text-subtle)}.mode-switcher-frame.glowing-border-switcher .mode-switcher label:hover,.mode-switcher-frame.glowing-border-switcher-instant .mode-switcher label:hover{background:rgba(var(--color-contrast-rgb),.08)}#col2{width:auto;position:relative;height:calc(100vh - 40px);margin-block:var(--space-3);overflow:hidden;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-canvas);box-shadow:var(--shadow-card);border-color:var(--color-border)}#mainFigureSVG:focus{outline:none}#mainFigureSVG .nodeGroup.is-focused>circle.primary,#mainFigureSVG .nodeGroup.is-focused>foreignObject.inactive-overlay{filter:drop-shadow(0 0 3px rgba(var(--color-accent-strong-rgb),.9)) drop-shadow(0 0 10px rgba(var(--color-accent-rgb),.65))}#mainFigureSVG .nodeGroup.is-focused>circle.primary{stroke:var(--color-focus);stroke-width:2;vector-effect:non-scaling-stroke}#mainFigureSVG .nodeGroup.is-focused .inactive-overlay i{color:var(--color-focus)}:root[data-theme=light] #mainFigureSVG .nodeLabel.is-focused{stroke:var(--color-canvas);stroke-width:5px;stroke-linejoin:round;paint-order:stroke fill;filter:none}.network-focus-indicator{position:absolute;z-index:11;top:calc(var(--space-6) + 1px);left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);display:grid;justify-items:center;gap:8px;padding:12px 18px;border:1px solid rgba(var(--color-accent-strong-rgb),.6);border-radius:10px;background:var(--fill-focus);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px #d3fff833,0 0 16px rgba(var(--color-accent-rgb),.18),0 6px 20px #00000029;pointer-events:none}.network-focus-indicator[hidden]{display:none}#networkFocusRegion{color:var(--color-accent-strong);font-size:14px;line-height:20px;text-shadow:0 0 8px rgba(var(--color-accent-rgb),.35)}#exitFocusButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:5px 12px;border:1px solid rgba(var(--color-accent-rgb),.5);border-radius:5px;background:var(--color-accent-soft);color:var(--color-accent-strong);font-size:12px;font-weight:600;line-height:18px;white-space:nowrap;pointer-events:auto;cursor:pointer}#exitFocusButton:hover{background:rgba(var(--color-accent-rgb),.2);border-color:var(--color-accent)}#exitFocusButton kbd{font:10px/14px var(--font-data);padding:0 4px;border:1px solid rgba(var(--color-accent-rgb),.4);border-radius:3px}.watermark{position:absolute;bottom:65px;right:var(--space-3);display:flex;align-items:center;gap:var(--space-2);opacity:.5;font-size:.8rem;color:var(--color-text-on-dark)}.watermark-text{font-weight:700}.watermark-logo{width:140px;height:40px;filter:var(--filter-watermark);opacity:.6}.help-overlay-button,.comparison-overlay-button,.map-layer-button,.theme-toggle-button,.restore-button,#timeControlsContainer button{display:inline-flex;align-items:center;justify-content:center;width:var(--control-size);height:var(--control-size);padding:0;color:var(--color-accent);background:var(--color-surface-strong);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-control);cursor:var(--cursor-pointer);transition:transform var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.help-overlay-button:hover,.comparison-overlay-button:hover,.map-layer-button:hover:not(:disabled),.theme-toggle-button:hover:not(:disabled),.restore-button:hover:not(:disabled),#timeControlsContainer button:hover{filter:brightness(1.12);transform:none}.help-overlay-button:active,.comparison-overlay-button:active,.map-layer-button:active:not(:disabled),.theme-toggle-button:active:not(:disabled),.restore-button:active:not(:disabled),#timeControlsContainer button:active{transform:scale(.97)}.map-layer-button:disabled,.theme-toggle-button:disabled,.restore-button:disabled,#timeControlsContainer button:disabled,.toggle-button-container .btn:disabled{opacity:.5;cursor:var(--cursor-not-allowed);background:var(--color-disabled-bg);box-shadow:none;transform:none}.help-overlay-button{position:absolute;top:var(--space-6);right:var(--space-6);z-index:100}.comparison-overlay-button{position:absolute;top:calc(var(--space-6) + var(--control-size) + var(--space-2));right:var(--space-6);z-index:100}.toggle-button-container{position:absolute;bottom:var(--space-6);right:164px;min-width:37px;justify-content:center}.toggle-button-container .btn{position:relative;z-index:0;overflow:hidden;width:var(--control-size);height:var(--control-size);display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;padding:0;text-align:center;color:var(--color-text-on-dark);border:none;border-radius:var(--radius-md);cursor:var(--cursor-pointer);background:transparent;filter:brightness(1);transition:transform var(--transition-base),filter var(--transition-base),opacity var(--transition-base);will-change:filter,opacity;box-shadow:var(--shadow-control)}.toggle-button-container .btn .btn-text{position:relative;z-index:3;color:var(--color-text-on-dark)}.toggle-button-container .btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--fill-mode-map);transition:opacity var(--transition-base);z-index:1;opacity:1}.toggle-button-container .btn:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--fill-mode-graph);transition:opacity var(--transition-base);z-index:1;opacity:0}.toggle-button-container .btn.map-mode:before{opacity:1}.toggle-button-container .btn.map-mode:after{opacity:0}.toggle-button-container .btn.graph-mode:before{opacity:0}.toggle-button-container .btn.graph-mode:after{opacity:1}.toggle-button-container .btn:hover{transform:none;filter:brightness(1.2)}.toggle-button-container .btn:active{transform:scale(.97)}.toggle-button-container .btn:disabled:before,.toggle-button-container .btn:disabled:after{opacity:.5!important;transition:opacity var(--transition-base)}.theme-toggle-button,.restore-button,.map-layer-button{z-index:9999}.map-layer-button{position:absolute;bottom:var(--space-6);right:116px}.map-layer-menu{position:absolute;bottom:70px;right:var(--space-6);display:none;width:min(292px,calc(100% - 40px));max-height:calc(100% - 90px);padding:var(--space-5);overflow-y:auto;scrollbar-gutter:stable;overscroll-behavior:contain;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-strong);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--color-text);font-size:.8rem;line-height:1.4;z-index:9998}.map-layer-menu.active{display:block}.map-layer-menu h2{margin:0 0 var(--space-4);font-size:.95rem}.map-layer-field{display:grid;gap:var(--space-1);margin-bottom:var(--space-4)}.map-layer-field>label,.map-layer-context legend,.map-layer-opacity>label{font-weight:600}.map-layer-field select,.map-layer-reset{width:100%;min-width:0;min-height:32px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-text)}.map-layer-reset{margin-top:var(--space-3);cursor:var(--cursor-pointer)}.map-layer-reset:hover{border-color:var(--color-accent)}.map-layer-context{min-width:0;padding:0 0 var(--space-3);margin:0 0 var(--space-3);border:0;border-bottom:1px solid var(--color-border)}.map-layer-context legend{padding:0;margin-bottom:var(--space-1);font-size:inherit}.map-layer-context label{display:flex;align-items:center;gap:var(--space-2);min-height:29px;cursor:var(--cursor-pointer)}.map-layer-context input{flex:0 0 16px;width:16px;height:16px;margin:0}.map-layer-opacity{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-2)}.map-layer-opacity input{grid-column:1 / -1;width:100%;min-height:24px;margin:0;accent-color:var(--color-accent)}#mapLayerStatus{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:.72rem;overflow-wrap:anywhere}#mapLayerStatus:empty{display:none}.theme-toggle-button{position:absolute;right:var(--space-6);bottom:var(--space-6)}.restore-button{position:absolute;right:68px;bottom:var(--space-6)}#timeControlsContainer{position:absolute;left:var(--space-6);bottom:var(--space-6);z-index:9999;display:none;width:var(--time-controls-width);align-items:center;gap:var(--space-3);color:var(--color-text-on-dark)}#timeControlsContainer button{flex:0 0 auto;margin:0}.time-slider-lane{position:relative;flex:1;min-width:0;height:14px;margin:0 5px}#timeControlsContainer input[type=range]{display:block;width:100%;height:14px;margin:0;-webkit-appearance:none;background:transparent;cursor:var(--cursor-pointer)}#timeControlsContainer input[type=range]::-webkit-slider-runnable-track{height:6px;background:var(--color-track);border-radius:3px}#timeControlsContainer input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--fill-action);border-radius:50%;margin-top:-4px;transition:transform var(--transition-fast)}#timeControlsContainer input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}#timeControlsContainer input[type=range]::-moz-range-track{height:6px;background:var(--color-track);border-radius:3px}#timeControlsContainer input[type=range]::-moz-range-thumb{width:14px;height:14px;background:var(--fill-action);border:none;border-radius:50%;transition:transform var(--transition-fast)}#timeControlsContainer input[type=range]::-moz-range-thumb:hover{transform:scale(1.1)}.simulation-timeline{position:absolute;left:7px;right:7px;bottom:13px;height:36px;pointer-events:none}body:not(.simulation-mode-active) .simulation-timeline,.simulation-timeline[hidden]{display:none}.simulation-timeline svg{display:block;width:100%;height:100%;overflow:visible}.simulation-timeline-area{fill:url(#timelinePrevalenceFill)}.simulation-timeline-curve{fill:none;stroke:var(--color-chart-rose);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px rgb(242 139 150 / 28%))}.simulation-timeline-introduction{position:absolute;top:0;bottom:-10px;width:1px;background:linear-gradient(transparent,var(--color-chart-purple));box-shadow:0 0 5px #c8b6ff59}.simulation-timeline-introduction:after{content:"";position:absolute;left:-3px;bottom:1px;width:7px;height:7px;border-radius:1px;background:var(--color-chart-purple);transform:rotate(45deg);box-shadow:0 0 7px #c8b6ffa6}.simulation-timeline-current{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--color-chart-rose);box-shadow:0 0 6px #f28b96a6;transform:translate(-50%,-50%)}body.simulation-mode-active .current-date-widget{top:calc(100% - var(--time-slider-center-bottom) + 10px);bottom:auto}body.simulation-mode-active .time-author-credit{display:none!important}#timeControlsContainer button:focus,#timeControlsContainer input[type=range]:focus{outline-offset:2px}.current-date-widget{position:absolute;left:calc(var(--space-6) + var(--time-slider-offset));bottom:var(--time-date-bottom);z-index:9999;display:inline-flex!important;width:var(--time-slider-width);min-width:50px;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.9rem;pointer-events:none;text-align:center}.current-date-label{margin-right:5px;font-weight:700;text-align:right}.current-date-value{font-weight:400;text-align:left;font-family:var(--font-data);font-size:.78rem;color:var(--color-text)}.time-author-credit{position:absolute;left:calc(var(--space-6) + var(--time-slider-offset));bottom:calc(var(--time-slider-center-bottom) - var(--time-date-slider-gap) - var(--time-author-line-height));z-index:9999;display:none;width:var(--time-slider-width);min-width:50px;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.68rem;font-weight:400;line-height:var(--time-author-line-height);pointer-events:none;text-align:center}.simulation-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20000;display:flex;align-items:center;justify-content:center;padding:var(--space-6);pointer-events:none;background:var(--color-backdrop);opacity:0;visibility:hidden;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:opacity var(--transition-base),visibility var(--transition-base)}.simulation-loading-overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}.simulation-loading-panel{width:min(460px,92%);padding:var(--space-5);color:var(--color-text);border:1px solid var(--floating-light-border);border-radius:var(--radius-lg);background:var(--floating-light-bg);box-shadow:var(--floating-light-shadow)}.simulation-loading-header{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:var(--space-3);align-items:center}.simulation-loading-header>i{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;color:var(--color-on-accent);border-radius:var(--radius-md);background:var(--color-chart-amber)}.simulation-loading-title{font-size:1rem;font-weight:600;line-height:1.1}.simulation-loading-stage{margin-top:3px;color:var(--color-text-muted);font-size:.84rem;font-weight:600}.simulation-loading-percent{font-size:1.1rem;font-weight:600;font-variant-numeric:tabular-nums}.simulation-progress-track{height:8px;margin-top:var(--space-5);overflow:hidden;border-radius:var(--radius-pill);background:rgba(var(--color-accent-rgb),.14)}.simulation-progress-bar{width:0;height:100%;border-radius:inherit;background:var(--color-accent);transition:width .18s ease}.simulation-progress-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-5)}.simulation-progress-item{display:flex;min-width:0;align-items:center;gap:7px;color:var(--color-text-subtle);font-size:.8rem;font-weight:500}.simulation-progress-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:rgba(var(--color-accent-rgb),.2)}.simulation-progress-item.is-running{color:var(--color-text)}.simulation-progress-item.is-running .simulation-progress-dot{background:var(--color-chart-amber);box-shadow:0 0 0 4px #f2c94c2e}.simulation-progress-item.is-done{color:var(--color-text-muted)}.simulation-progress-item.is-done .simulation-progress-dot{background:var(--color-accent)}body.focus-mode-active .simulation-loading-overlay{background:var(--color-backdrop)}body.focus-mode-active .simulation-loading-panel{color:var(--color-text-on-dark);border-color:var(--floating-dark-border);background:var(--floating-dark-bg);box-shadow:var(--floating-dark-shadow)}body.focus-mode-active .simulation-loading-stage{color:var(--color-text-muted)}body.focus-mode-active .simulation-progress-track{background:rgba(var(--color-contrast-rgb),.18)}body.focus-mode-active .simulation-progress-item{color:var(--color-text-subtle)}body.focus-mode-active .simulation-progress-dot{background:rgba(var(--color-contrast-rgb),.3)}body.focus-mode-active .simulation-progress-item.is-running{color:var(--color-text)}body.focus-mode-active .simulation-progress-item.is-done{color:var(--color-text-muted)}.col3{position:relative;display:flex;width:auto;height:calc(100vh - 20px);padding:var(--space-3);flex-direction:column;border:none}#col1 #tradeDistribution,#col1 #tradeClusters,#col1 #tradeNodeDistribution,#col1 #tradeNodeInsight{box-shadow:none}.col1-bottom-section-content{padding:6px 10px}.network-score-toolbar{position:absolute;top:var(--space-6);left:22px;z-index:9999;display:flex;align-items:center;gap:6px;max-width:calc(100% - 80px)}#networkTransRiskScore{min-width:0;display:none;color:var(--color-accent-strong);font-size:1rem;font-weight:600}.simulation-controls-panel{container-type:inline-size;position:absolute;top:var(--space-3);left:var(--space-3);right:calc(var(--space-3) + 10px);z-index:12;padding:12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.simulation-controls-panel[hidden]{display:none!important}.simulation-controls-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:10px;color:var(--color-text);font-size:.82rem;font-weight:600}.simulation-controls-heading-text{display:inline-flex;min-width:0;margin-right:auto;align-items:center;gap:var(--space-2)}.simulation-controls-info{color:var(--color-accent-strong)}.simulation-controls-info:hover,.simulation-controls-info:focus-visible{color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.18);filter:brightness(1.18);transform:none}.simulation-controls-info i{font-size:.82rem;line-height:1}.simulation-population{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--space-2);color:var(--color-text-muted);font-size:.68rem}.simulation-population[hidden]{display:none}.simulation-population>span{margin-right:auto}.simulation-population strong{margin-left:5px;font-weight:500}.simulation-population-import{position:relative;cursor:pointer}.simulation-population-import input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;cursor:pointer}.simulation-population-import:focus-within{outline:2px solid var(--color-accent-strong)}.simulation-population-import:has(input:disabled){opacity:.45;cursor:default}.simulation-population button,.simulation-population-import{padding:4px 6px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-strong);color:var(--color-text);font-size:inherit}.simulation-control-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-content:space-between;gap:10px}.simulation-settings-switch{display:flex;flex-shrink:0;gap:2px;padding:3px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-strong)}.simulation-settings-switch button{padding:4px 12px;border:0;border-radius:3px;color:var(--color-text-muted);background:transparent;font-size:11px;line-height:16px;font-weight:500;cursor:pointer}.simulation-settings-switch button:hover{color:var(--color-text)}.simulation-settings-switch button[aria-selected=true]{color:var(--color-accent-strong);background:rgba(var(--color-accent-rgb),.13)}.simulation-settings-switch button:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:2px}.simulation-settings-pages{display:grid;min-width:0;align-items:stretch}.simulation-settings-page{display:flex;flex-direction:column;grid-area:1 / 1;min-width:0}.simulation-settings-page .simulation-control-grid{flex:1}.simulation-settings-page[aria-hidden=true]{visibility:hidden}.simulation-settings-page--additional .simulation-control-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.simulation-settings-page--additional .simulation-control-grid label{grid-column:auto}.simulation-model-description{margin:6px 0 0;color:var(--color-text-muted);font-size:.65rem;line-height:1.35}.simulation-model-description:empty{display:none}.simulation-control-grid label{display:flex;grid-column:span 3;min-width:0;flex-direction:column;justify-content:flex-end;gap:4px;color:var(--color-text-muted);font-size:10.5px;line-height:14px;font-weight:500}.simulation-control-grid .simulation-seed-region{grid-column:span 7}.simulation-control-grid .simulation-introduction-date{grid-column:span 5}@container (max-width: 360px){.simulation-control-grid,.simulation-settings-page--additional .simulation-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.simulation-control-grid label{grid-column:auto}.simulation-control-grid .simulation-seed-region,.simulation-control-grid .simulation-introduction-date{grid-column:span 2}.simulation-controls-title{flex-wrap:wrap}.simulation-controls-heading-text{flex-basis:100%}}.simulation-control-grid input[type=date]{color-scheme:inherit}.simulation-control-grid input,.simulation-control-grid select,.simulation-population select{min-width:0;width:100%;padding:5px 7px;color:var(--color-text);font-size:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-strong)}.simulation-control-grid input,.simulation-control-grid select{height:32px}.simulation-control-grid input[type=number]{font-variant-numeric:tabular-nums}.simulation-control-grid input:focus-visible,.simulation-control-grid select:focus-visible{outline:1px solid var(--color-accent-strong);outline-offset:1px}.simulation-control-grid input:disabled,.simulation-control-grid select:disabled{color:var(--color-disabled);background:var(--color-disabled-bg)}.simulation-node-controls{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;min-width:0;width:100%;overflow:hidden;color:var(--color-text);font-size:.72rem}.simulation-node-controls[hidden],#simulationDateLinkControls[hidden]{display:none!important}.simulation-node-controls-body{flex:1 1 auto;width:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-3);scrollbar-color:var(--color-accent) transparent}.simulation-node-controls-title{flex:0 0 auto;margin:var(--space-3) var(--space-3) 0;color:var(--color-text-on-dark);font-size:14px;font-weight:700}.simulation-node-search-label{display:block;margin-bottom:3px}#simulationNodeSearch{box-sizing:border-box;width:100%;min-width:0;padding:5px 7px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-strong);color:var(--color-text);font:inherit}.simulation-node-permissions-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-top:var(--space-2)}.simulation-node-permissions-table caption{padding-bottom:5px;text-align:left;color:var(--color-text-muted);font-size:.64rem}.simulation-node-permissions-table th,.simulation-node-permissions-table td{padding:6px 4px;border-bottom:1px solid var(--color-border-soft);text-align:center;vertical-align:middle;overflow-wrap:anywhere}.simulation-node-permissions-table th:first-child{width:48%;text-align:left}.simulation-node-permissions-table thead th{position:sticky;top:0;z-index:1;background:var(--color-surface-strong)}.simulation-node-permissions-table tbody th{font-weight:400}.simulation-node-permissions-table tr.is-selected{background:rgba(var(--color-accent-rgb),.12);box-shadow:inset 3px 0 var(--color-accent)}.simulation-node-permission{position:relative;display:inline-block;width:40px;height:22px;margin:0;padding:0;vertical-align:middle;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(250,128,114,.38);border-radius:var(--radius-md);background:#fa807214;box-shadow:inset 0 1px 3px #0003;cursor:var(--cursor-pointer);transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.simulation-node-permission:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:var(--radius-sm);background:#d58e84;box-shadow:inset 0 1px rgba(var(--color-contrast-rgb),.2),0 1px 3px #00000040;transition:transform .18s ease,background var(--transition-base)}.simulation-node-permission:checked{border-color:rgba(var(--color-accent-rgb),.55);background:rgba(var(--color-accent-rgb),.14)}.simulation-node-permission:checked:before{transform:translate(18px);background:var(--color-accent)}.simulation-node-permission:indeterminate{border-color:#f1c77b8c;background:#f1c77b1f}.simulation-node-permission:indeterminate:before{transform:translate(9px);background:var(--color-chart-amber)}.simulation-node-permission:indeterminate:after{content:"";position:absolute;top:9px;left:calc(50% - 3px);width:6px;height:2px;border-radius:1px;background:var(--color-on-accent)}.simulation-node-permission:enabled:hover{border-color:var(--color-text);box-shadow:0 0 8px rgba(var(--color-accent-rgb),.1)}.simulation-node-permission:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.simulation-node-permission:disabled{opacity:.45;cursor:var(--cursor-not-allowed)}.simulation-node-bulk-label{display:inline-flex;flex-direction:column;align-items:center;gap:5px;line-height:1.25;cursor:var(--cursor-pointer)}.simulation-node-bulk{margin:0}.simulation-restriction-timeline{flex:0 0 auto;min-width:0;margin:var(--space-3) var(--space-3) 0;padding:5px 0 7px;border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg,rgba(var(--color-accent-rgb),.025),transparent)}.simulation-restriction-timeline [hidden]{display:none}.simulation-restriction-scroll{max-height:calc(clamp(78px,17vh,156px) + 17px);overflow:auto;scroll-padding:20px 12px 3px 48px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.simulation-restriction-content{width:max(100%,calc(44px + 16px + var(--restriction-rail-width, 0px)))}.simulation-restriction-axis,.simulation-restriction-row{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center}.simulation-restriction-axis{position:sticky;top:0;z-index:4;padding:0 12px 3px 4px;background:var(--color-panel-dark);color:var(--color-text-subtle);font:9px var(--font-data)}.simulation-restriction-axis>span{position:sticky;left:4px;align-self:stretch;background:var(--color-panel-dark)}.simulation-restriction-axis-range{display:flex;justify-content:space-between;gap:var(--space-1)}.simulation-restriction-rows{padding:3px 12px 3px 4px}.simulation-restriction-row{min-height:26px}.simulation-restriction-region{position:sticky;left:4px;z-index:3;display:flex;align-items:center;width:34px;height:26px;background:var(--color-panel-dark);box-shadow:4px 0 0 var(--color-panel-dark);color:var(--color-text-muted);font:10px var(--font-data);cursor:help}.simulation-restriction-track{position:relative;height:26px;min-width:0}.simulation-restriction-baseline{position:absolute;inset:50% 0 auto;height:1px;background:var(--color-border-strong)}.simulation-restriction-timeline .is-allowed{--restriction-color: var(--color-accent)}.simulation-restriction-timeline .is-exports{--restriction-color: salmon}.simulation-restriction-timeline .is-imports{--restriction-color: var(--color-chart-purple)}.simulation-restriction-timeline .is-both{--restriction-color: var(--color-chart-amber)}.simulation-restriction-segment{position:absolute;top:50%;height:6px;transform:translateY(-50%);border-top:1px solid rgba(var(--color-contrast-rgb),.35);border-radius:2px;background:linear-gradient(180deg,transparent,rgba(8,14,23,.28)),var(--restriction-color);box-shadow:0 0 7px color-mix(in srgb,var(--restriction-color) 24%,transparent);cursor:help}.simulation-restriction-segment:hover,.simulation-restriction-segment:focus-visible{z-index:1;outline:1px solid var(--restriction-color);outline-offset:2px;filter:brightness(1.15)}.simulation-restriction-point{position:absolute;z-index:2;top:50%;display:grid;width:12px;height:22px;padding:0;place-items:center;transform:translate(-50%,-50%);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--restriction-color);cursor:var(--cursor-pointer)}.simulation-restriction-point:before{content:"";width:7px;height:7px;transform:rotate(45deg);border:1px solid currentColor;background:var(--color-panel-dark);box-shadow:0 0 5px color-mix(in srgb,currentColor 35%,transparent)}.simulation-restriction-point:hover:before,.simulation-restriction-point:focus-visible:before,.simulation-restriction-point.is-current:before{background:currentColor;box-shadow:0 0 8px currentColor}.simulation-restriction-cursor{position:absolute;z-index:1;top:3px;bottom:3px;width:1px;background:rgba(var(--color-text-rgb),.7);box-shadow:0 0 4px rgba(var(--color-text-rgb),.45);pointer-events:none}.simulation-restriction-empty{margin:0;padding:4px;color:var(--color-text-subtle);font-size:.65rem}.simulation-link-status{display:block;margin-top:3px;font-size:.65rem;line-height:1.3;opacity:.8}.initial-sr,.current-sr{font-family:inherit}.trade-info-header,.trade-section,.simulation-node-controls,.in-arbo-container{border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-panel-dark);box-shadow:var(--shadow-soft)}.trade-info-header{flex:0 0 45px;margin-bottom:5px;padding:8px 10px;color:var(--color-text-on-dark);font-size:18px;font-weight:700}.trade-section{display:flex;flex:1;width:100%;min-width:0;flex-direction:column;overflow:hidden}.trade-section:first-child{margin-bottom:0}.trade-section-header{flex:0 0 auto;height:37px;padding:8px 8px 8px 11px;color:var(--color-text-on-dark);font-size:14px;font-weight:700;background:var(--color-surface-strong);border-bottom:1px solid var(--color-border-soft);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.simulation-controls-toolbar{display:flex;flex:0 0 auto;align-items:stretch;gap:var(--space-2);margin-bottom:var(--space-2);padding:2px}.simulation-controls-toolbar .trade-info-header{display:flex;flex:1 1 auto;align-items:center;gap:var(--space-2);min-width:0;min-height:45px;margin:0}.simulation-focus-region-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulation-controls-toolbar .simulation-focus-pill{float:none;flex:0 0 auto;margin-top:0}.simulation-local-control{display:flex;flex:0 0 auto;flex-direction:row;align-items:center;gap:var(--space-2);margin:0;border-bottom-color:var(--color-border-strong);border-radius:var(--radius-lg)}.simulation-link-control-label{display:inline-flex;min-width:0;align-items:center;gap:10px;cursor:var(--cursor-pointer)}.simulation-link-control-label input{flex:0 0 auto;margin:0;bottom:0}.simulation-local-control .trade-checkbox{width:18px;height:18px}.simulation-local-control .simulation-local-volume{flex:0 0 auto;min-width:0;margin-left:auto;font-size:inherit}.simulation-local-volume+.panel-info-button{margin-left:0}.simulation-control-switch{--switch-icon-turn: 0deg;position:relative;display:flex;flex:0 0 auto;aspect-ratio:2 / 1;align-items:stretch;min-height:30px;padding:3px;border:1px solid salmon;border-radius:var(--radius-lg);background:var(--fill-restriction-switch);box-shadow:inset 0 1px 3px #00000040;cursor:var(--cursor-pointer);transition:border-color var(--transition-base),background var(--transition-base),filter var(--transition-base)}.simulation-control-switch-thumb{position:relative;display:grid;width:calc(50% - 4px);min-height:22px;place-items:center;overflow:hidden;border-radius:var(--radius-md);color:#3b1b16;background:salmon;box-shadow:var(--shadow-control);transition:transform .36s cubic-bezier(.22,1,.36,1),color var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}.simulation-control-switch-thumb:after{content:"";position:absolute;top:-30%;right:0;bottom:-30%;left:0;background:linear-gradient(110deg,transparent 25%,rgba(var(--color-contrast-rgb),.45) 50%,transparent 75%);transform:translate(-140%);transition:transform .5s ease;pointer-events:none}.simulation-control-switch-icon{position:relative;display:grid;width:26px;height:26px;place-items:center;font-size:14px;line-height:1;transform:rotate(var(--switch-icon-turn));transition:transform .42s cubic-bezier(.22,1,.36,1)}.simulation-control-switch-icon:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid currentColor;border-left-color:transparent;border-right-color:transparent;border-radius:50%;opacity:.25;transform:rotate(-45deg) scale(.9);transition:transform .42s ease,opacity var(--transition-base)}.simulation-control-switch[data-mode=nodes]{--switch-icon-turn: 180deg;border-color:var(--color-accent);background:var(--fill-permission-switch)}.simulation-control-switch[data-mode=nodes] .simulation-control-switch-thumb{transform:translate(calc(100% + 8px));color:var(--color-on-accent);background:var(--color-accent-strong)}.simulation-control-switch:hover,.simulation-control-switch:focus-visible{filter:brightness(1.12)}.simulation-control-switch:hover .simulation-control-switch-icon,.simulation-control-switch:focus-visible .simulation-control-switch-icon{transform:rotate(calc(var(--switch-icon-turn) + 15deg)) scale(1.08)}.simulation-control-switch:hover .simulation-control-switch-icon:before,.simulation-control-switch:focus-visible .simulation-control-switch-icon:before{opacity:.6;transform:rotate(45deg) scale(1)}.simulation-control-switch:hover .simulation-control-switch-thumb:after,.simulation-control-switch:focus-visible .simulation-control-switch-thumb:after{transform:translate(140%)}.trade-list::-webkit-scrollbar{width:8px}.trade-list::-webkit-scrollbar-thumb{background-color:var(--color-accent);border-radius:4px}.trade-list::-webkit-scrollbar-thumb:hover{filter:brightness(1.2)}.trade-list::-webkit-scrollbar-track{background-color:#0003;border-radius:4px}.trade-list{flex:1;min-height:0;color:var(--color-text-on-dark);background:transparent;padding:var(--space-3);padding-top:5px;overflow-y:auto;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);scrollbar-color:var(--color-accent) rgba(0,0,0,.2)}.trade-item{display:flex;align-items:center;gap:var(--space-3);padding:.25rem 0;border-bottom:1px solid rgba(var(--color-contrast-rgb),.16);font-size:.8rem}.trade-item:last-child{border-bottom:none}.trade-item-main{display:flex;flex:1;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3)}.trade-dest,.trade-src{display:flex;flex:1;min-width:0;align-items:center;gap:6px;font-weight:500}.trade-icon{flex:0 0 20px;text-align:center}.trade-distance{display:inline-flex;flex:0 0 auto;align-items:center}.distance-bar{width:50px;height:10px;display:block;flex:0 0 auto}.trade-route-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:normal;overflow-wrap:anywhere}.trade-volume{display:inline-flex;flex:0 0 72px;min-width:72px;align-items:center;justify-content:flex-end;font-weight:600;font-size:.95rem;line-height:1;text-align:right;font-variant-numeric:tabular-nums}.simulation-focus-pill{float:right;margin-top:3px;padding:2px 7px;color:var(--color-on-accent);font-size:.72rem;font-weight:600;border-radius:var(--radius-pill);background:var(--color-chart-amber)}.trade-header-checkbox{position:relative;display:inline-block;width:18px;height:18px;bottom:1px;border:2px solid rgba(var(--color-contrast-rgb),.45);border-radius:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:var(--cursor-pointer);transition:background var(--transition-base),border-color var(--transition-base);vertical-align:middle;margin-left:10px}.trade-header-checkbox:enabled:checked,.trade-header-checkbox:enabled:indeterminate{background:var(--color-accent);border-color:transparent}.trade-header-checkbox:disabled,.trade-header-checkbox:disabled:checked{background:var(--color-disabled);border-color:var(--color-disabled);cursor:var(--cursor-not-allowed)}.trade-checkbox{position:relative;flex:0 0 auto;width:20px;height:20px;border:2px solid rgba(var(--color-contrast-rgb),.45);border-radius:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:var(--cursor-pointer);transition:background var(--transition-base),border-color var(--transition-base);margin-left:0}.trade-checkbox:enabled:checked{background:var(--color-accent);border-color:transparent}.trade-checkbox:disabled,.trade-checkbox:disabled:checked{background:var(--color-disabled);border-color:var(--color-disabled);cursor:var(--cursor-not-allowed)}.trade-header-checkbox:checked:after,.simulation-local-control .trade-checkbox:checked:after{content:"";position:absolute;left:4px;top:0;width:5px;height:10px;border:solid var(--color-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.trade-header-checkbox:indeterminate:after{content:"";position:absolute;left:3px;top:6px;width:8px;height:2px;border:0;background:var(--color-on-accent);transform:none}.trade-checkbox:checked:after{content:"";position:absolute;left:4px;top:0;width:6px;height:12px;border:solid var(--color-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.no-trades{justify-content:center;text-align:center;font-style:italic;color:var(--color-text-muted)}.trade-info-container{width:100%;height:100%;display:flex;min-height:0;flex-direction:column}.trade-panel{height:60%;width:100%;position:relative;display:flex;min-height:0;flex-direction:column;margin-bottom:var(--space-3);overflow:visible}.trade-sections{flex:1 1 auto;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3);padding:2px;overflow:visible}#simulationDateLinkControls{grid-template-rows:auto minmax(0,1fr) minmax(0,1fr)}.in-arbo-container{visibility:hidden;height:calc(40% - 10px);width:100%;position:relative;padding:var(--space-3)}.inArboTitle{position:absolute;z-index:11;font-size:14px;font-weight:700;color:var(--color-text-on-dark)}.arbo-link{opacity:1;stroke:var(--color-chart-outgoing);stroke-width:1;stroke-dasharray:5 5;stroke-linecap:round;animation:dashFlow 2s linear infinite}@keyframes dashFlow{to{stroke-dashoffset:-10}}.no-arbo{position:absolute;top:40px;text-align:center;font-style:italic;color:var(--color-text-muted)}.global-stats-chart,.simulation-incidence-panel,.trade-concentration-panel{width:calc(100% - 10px);height:33.3vh;position:absolute;z-index:10;margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}#globalStatsControls{position:absolute;top:var(--space-3);left:var(--space-3);right:var(--space-3);z-index:11;display:flex;align-items:center;gap:var(--space-2);padding:0}#globalStatsControls label{display:inline-flex;align-items:center;gap:5px;margin-right:0;font-size:14px;font-weight:700}#globalStatsControls select{padding:2px 8px;color:var(--color-text);font-size:14px;background:var(--color-surface-strong);border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);outline-offset:2px;border-color:var(--color-border-strong);min-width:0;max-width:100%}#globalStatsControls select:hover{filter:brightness(1.08)}.node-stats-chart{width:calc(100% - 10px);height:calc(66.7vh - 50px);margin-top:calc(33.3vh + 10px);margin-bottom:var(--space-3);position:absolute;z-index:10;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}body:not(.focus-mode-active) #col3{gap:var(--space-3)}body.simulation-mode-active:not(.focus-mode-active) .simulation-controls-panel{position:relative;top:auto;left:auto;right:auto;order:0;flex:0 0 auto;width:calc(100% - 10px);margin:0;background:var(--color-surface);backdrop-filter:none;-webkit-backdrop-filter:none}body:not(.focus-mode-active) .global-stats-chart,body:not(.focus-mode-active) .simulation-incidence-panel,body:not(.focus-mode-active) .trade-concentration-panel,body:not(.focus-mode-active) .node-stats-chart{position:relative;overflow:hidden;width:calc(100% - 10px);margin:0}body:not(.focus-mode-active) .global-stats-chart{order:1;flex:1 1 0;min-height:0;height:auto}.simulation-incidence-panel{display:none}body.simulation-mode-active:not(.focus-mode-active) .simulation-incidence-panel{display:block;order:2;flex:.85 1 0;min-height:0;height:auto}.simulation-incidence-period{margin-left:auto;color:var(--color-text-muted);font-size:9px;font-weight:400}.simulation-incidence-panel .panel-info-button{margin-left:0}.simulation-incidence-summary{position:absolute;top:40px;left:16px;right:16px;z-index:11;display:flex;gap:20px}.simulation-incidence-summary>span{display:flex;align-items:center;gap:5px;color:var(--color-text-muted);font-size:10px}.simulation-incidence-summary i{width:7px;height:7px;border-radius:2px;background:var(--source-color)}.simulation-incidence-summary strong{color:var(--source-color);font:500 12px var(--font-data)}.trade-concentration-panel{display:none}body:not(.simulation-mode-active):not(.focus-mode-active) .trade-concentration-panel{display:block;order:2;flex:.85 1 0;min-height:0;height:auto}.trade-concentration-roster{margin-left:auto;color:var(--color-text-muted);font-size:9px;font-weight:400}.trade-concentration-panel .panel-info-button{margin-left:0}.trade-concentration-summary{position:absolute;top:40px;left:16px;right:16px;z-index:11;display:flex;align-items:center;gap:20px}.trade-concentration-summary>span{display:flex;align-items:center;gap:6px;color:var(--color-text-muted);font-size:10px}.trade-concentration-summary strong{color:var(--color-chart-amber);font:500 12px var(--font-data)}.trade-concentration-summary .trade-concentration-reference{margin-left:auto;gap:5px;font-size:9px}.trade-concentration-reference i{width:14px;border-top:1px dashed var(--color-text-muted)}body:not(.focus-mode-active) .node-stats-chart{order:3;flex:1.4 1 0;min-height:0;height:auto}body:not(.simulation-mode-active):not(.focus-mode-active) .node-stats-chart{flex:1.65 1 0}body:not(.focus-mode-active) #tradeInfo{display:none!important}.simulation-global-chart text,.simulation-incidence-chart text,.trade-concentration-chart text,.simulation-node-chart text,.simulation-spatial-chart text,.simulation-partition-chart text,.simulation-focus-chart text,.trade-nodeinsight-svg text{fill:var(--color-text-muted);font-size:10px;font-weight:500}#globalStats>svg:not(.svg-inline--fa),#nodeStats>svg:not(.svg-inline--fa),.simulation-global-chart,.simulation-incidence-chart,.trade-concentration-chart,.simulation-node-chart,.simulation-spatial-chart,.simulation-partition-chart{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.simulation-partition-chart,.trade-community-chart{transition:filter var(--transition-base),opacity var(--transition-base)}#tradeClusters.simulation-partition-map-expanded .simulation-partition-chart,#tradeClusters.simulation-partition-map-expanded .trade-community-chart{filter:blur(2.5px);opacity:.36}.trade-community-chart text{fill:var(--color-text-muted);font-size:9px;font-weight:600}.community-scale-control{container-type:inline-size;position:absolute;top:38px;right:12px;left:12px;z-index:7;display:flex;align-items:center;gap:8px;color:var(--color-text-muted);font-size:11px;font-weight:600}.community-scale-control select{min-width:72px;padding:3px 6px;color:var(--color-text);font:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-strong)}.community-scale-control select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.community-scale-control label{white-space:nowrap}.community-view-switch{display:inline-flex;align-items:stretch;flex-shrink:0;gap:2px;margin-left:auto;padding:2px;color:var(--color-text-subtle);font:inherit;font-size:10px;line-height:1.4;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-muted);cursor:pointer}.community-view-switch>span{display:inline-flex;align-items:center;gap:4px;padding:2px 5px;border-radius:2px;transition:color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.community-view-switch svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.community-view-switch[aria-checked=false] .community-view-switch__heatmap,.community-view-switch[aria-checked=true] .community-view-switch__flow{color:var(--color-accent-strong);background:var(--color-accent-soft);box-shadow:inset 0 0 0 1px rgba(var(--color-accent-rgb),.23)}.community-view-switch:hover{border-color:var(--color-accent)}@container (max-width: 310px){.community-scale-control label{white-space:normal}.community-view-switch{justify-content:center;min-width:32px;min-height:28px}.community-view-switch__label,.community-view-switch[aria-checked=false] .community-view-switch__flow,.community-view-switch[aria-checked=true] .community-view-switch__heatmap{display:none}}@container (max-width: 185px){.community-scale-control label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}.community-flow-chart{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 50% 52%,rgba(var(--color-accent-rgb),.045),transparent 65%);transition:filter var(--transition-base),opacity var(--transition-base)}.community-flow-orbit{fill:none;stroke:var(--color-chart-grid);stroke-width:.65;stroke-opacity:.6;pointer-events:none}.community-flow-orbit:last-of-type{stroke:var(--color-accent);stroke-opacity:.3;filter:drop-shadow(0 0 3px rgba(var(--color-accent-rgb),.35))}.community-flow-sector{stroke:none;fill-opacity:.8;pointer-events:none}.community-flow-link{fill:none;stroke-linecap:round;pointer-events:none;opacity:calc(var(--flow-fade, 1) * var(--flow-emphasis, var(--flow-weight, 1)))}.community-flow-plot.is-exiting .community-flow-node,.community-flow-plot.is-exiting .community-flow-hit{pointer-events:none}.community-flow-hit{pointer-events:all}.community-flow-node{cursor:pointer;outline:none}.community-flow-node circle{stroke:var(--color-canvas);stroke-width:1}.community-flow-node-label,.community-flow-community-label,.community-flow-caption{fill:var(--color-text-muted);font-size:9px;font-weight:600;pointer-events:none}.community-flow-node-label{fill:var(--color-text);font-size:8px}.community-flow-community-label{font-size:9px;font-weight:700;paint-order:stroke;stroke:var(--color-surface);stroke-width:3px;stroke-linejoin:round}.community-flow-chart.has-highlight .community-flow-link:not(.is-highlighted){--flow-emphasis: .035}.community-flow-chart.has-highlight .community-flow-node:not(.is-highlighted){opacity:.3}.community-flow-link.is-highlighted{--flow-emphasis: .85;filter:drop-shadow(0 0 2px currentColor)}.community-flow-node.is-highlighted circle,.community-flow-node:focus-visible circle{stroke:var(--color-accent-strong);stroke-width:1.5;filter:drop-shadow(0 0 3px currentColor)}.community-flow-node:focus-visible .community-flow-node-label{fill:var(--color-accent-strong)}.trade-community-cell,.trade-community-load-bar{vector-effect:non-scaling-stroke}.trade-community-column-label,.trade-community-row-label,.trade-community-load-label{fill:var(--color-text)!important}.trade-community-summary-label{fill:var(--color-text-muted)!important;font-size:9px;font-weight:600}.trade-community-summary-value{fill:var(--color-text)!important;font-size:11px;font-weight:600}.simulation-global-chart .tick line,.simulation-node-chart .tick line{stroke:rgba(var(--color-accent-rgb),.12)}.simulation-global-chart .domain,.simulation-node-chart .domain,.simulation-spatial-chart .domain,.simulation-partition-chart .domain,.simulation-focus-chart .domain,.trade-nodeinsight-svg .domain{stroke:rgba(var(--color-accent-rgb),.18)}.simulation-spatial-region{vector-effect:non-scaling-stroke}.simulation-spatial-flow{mix-blend-mode:var(--blend-spatial-flow);stroke-opacity:.7;pointer-events:stroke}.simulation-spatial-flow-casings{display:none;fill:none;stroke:#fff;stroke-linecap:round;pointer-events:none}:root[data-theme=light] .simulation-spatial-flow{stroke-opacity:1}:root[data-theme=light] .simulation-spatial-flow-casings{display:inline}.simulation-spatial-bubble,.simulation-partition-cell,.simulation-partition-burden{vector-effect:non-scaling-stroke}.simulation-spatial-mini-legend text{fill:var(--color-text-muted)!important;font-size:8.5px;font-weight:600}.simulation-kpi-label{fill:var(--color-text-muted)!important;font-size:9px;font-weight:600}.simulation-kpi-value{fill:var(--color-text)!important;font-size:11px;font-weight:600}.simulation-partition-column-label,.simulation-partition-row-label,.simulation-partition-burden-label{fill:var(--color-text)!important;font-size:9px;font-weight:600}.simulation-partition-map{position:absolute;right:var(--space-3);bottom:var(--space-3);left:var(--space-3);z-index:12;display:block;min-height:0;max-height:var(--partition-map-compact-height, 56px);overflow:hidden;padding:6px 8px;color:var(--color-text);border:1px solid rgba(var(--color-accent-rgb),.2);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:0 8px 20px rgba(var(--color-accent-rgb),.08);pointer-events:auto;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:max-height var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}.simulation-partition-map:hover,.simulation-partition-map:focus-visible,.simulation-partition-map:focus-within{max-height:var(--partition-map-expanded-height, 180px);overflow-y:auto;background:var(--color-surface);box-shadow:0 16px 34px rgba(var(--color-accent-rgb),.18)}.simulation-partition-map:focus-visible{outline:2px solid rgba(var(--color-accent-rgb),.45);outline-offset:2px}.simulation-partition-map-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:5px}.simulation-partition-map-compact,.simulation-partition-map-full{display:grid;grid-template-columns:repeat(var(--partition-map-columns, 1),minmax(0,1fr));gap:4px 8px}.simulation-partition-map-full{display:none}.simulation-partition-map:hover .simulation-partition-map-compact,.simulation-partition-map:focus-visible .simulation-partition-map-compact,.simulation-partition-map:focus-within .simulation-partition-map-compact{display:none}.simulation-partition-map:hover .simulation-partition-map-full,.simulation-partition-map:focus-visible .simulation-partition-map-full,.simulation-partition-map:focus-within .simulation-partition-map-full{display:grid}.simulation-partition-map-title,.simulation-partition-map-more,.simulation-partition-map-hint{color:var(--color-text-muted);font-size:9px;font-weight:600;line-height:1}.simulation-partition-map-title{color:var(--color-text)}.simulation-partition-map-more{grid-column:1 / -1}.simulation-partition-map-hint{flex:0 0 auto;font-size:8px;text-transform:uppercase}.simulation-partition-map-row{display:flex;min-width:0;align-items:center;gap:6px;font-size:9px;font-weight:600;line-height:1.15}.simulation-partition-map-key{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;color:var(--color-text)}.simulation-partition-map-swatch{width:7px;height:7px;flex:0 0 auto;border-radius:50%}.simulation-partition-map-regions{min-width:0;overflow:hidden;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap}.simulation-partition-map-full .simulation-partition-map-row{align-items:flex-start}.simulation-partition-map-full .simulation-partition-map-regions{overflow:visible;line-height:1.2;text-overflow:clip;white-space:normal}.simulation-current-line{stroke:var(--color-text-subtle);stroke-width:1.5;stroke-dasharray:4 3}.simulation-current-range{fill:#6b72802e;pointer-events:none}.simulation-current-callout,.simulation-compartment-callouts{pointer-events:none}.simulation-current-callout-bg,.simulation-compartment-callout-bg{fill:var(--color-surface-strong)}.simulation-current-callout-connector,.simulation-compartment-callout-connector{stroke:var(--color-text-subtle);stroke-width:1;stroke-dasharray:4 3}.simulation-current-callout-text,.simulation-compartment-callout-text{fill:var(--color-text)!important;font-size:10px;font-weight:600}.simulation-compartment-callout-point{stroke:rgba(var(--color-contrast-rgb),.9);stroke-width:1.2}.simulation-chart-date-legend{fill:var(--color-text)!important;font-size:10px;font-weight:600}.simulation-ledger-axis-label{fill:var(--color-text)!important;font-size:11px;font-weight:600}.simulation-focus-legend text{fill:var(--color-text);font-size:10px;font-weight:700}body.simulation-mode-active #tradeNodeDistribution .simulation-focus-chart text,body.simulation-mode-active #tradeNodeInsight .trade-nodeinsight-svg.simulation-nodeinsight-svg text{fill:var(--color-text)}body.simulation-mode-active #tradeNodeDistribution .simulation-focus-chart .simulation-focus-axis path,body.simulation-mode-active #tradeNodeDistribution .simulation-focus-chart .simulation-focus-axis line,body.simulation-mode-active #tradeNodeInsight .trade-nodeinsight-svg.simulation-nodeinsight-svg .simulation-focus-axis path,body.simulation-mode-active #tradeNodeInsight .trade-nodeinsight-svg.simulation-nodeinsight-svg .simulation-focus-axis line{stroke:rgba(var(--color-contrast-rgb),.62)}body.simulation-mode-active #tradeNodeDistribution .simulation-focus-chart .simulation-focus-grid line,body.simulation-mode-active #tradeNodeInsight .trade-nodeinsight-svg.simulation-nodeinsight-svg .simulation-focus-grid line{stroke:rgba(var(--color-contrast-rgb),.2);stroke-dasharray:3 3}body.simulation-mode-active #tradeNodeDistribution .simulation-focus-chart .simulation-focus-grid path,body.simulation-mode-active #tradeNodeInsight .trade-nodeinsight-svg.simulation-nodeinsight-svg .simulation-focus-grid path{stroke:none}#tradeNodeInsight.glowing-border .trade-nodeinsight-svg text,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg text{fill:var(--color-text)}#tradeNodeInsight.glowing-border .trade-nodeinsight-svg .x-axis path,#tradeNodeInsight.glowing-border .trade-nodeinsight-svg .x-axis line,#tradeNodeInsight.glowing-border .trade-nodeinsight-svg .y-axis path,#tradeNodeInsight.glowing-border .trade-nodeinsight-svg .y-axis line,#tradeNodeInsight.glowing-border .trade-nodeinsight-svg .distance-axis-container path,#tradeNodeInsight.glowing-border .trade-nodeinsight-svg .distance-axis-container line,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg .x-axis path,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg .x-axis line,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg .y-axis path,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg .y-axis line,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg .distance-axis-container path,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-svg .distance-axis-container line{stroke:rgba(var(--color-contrast-rgb),.62)}.simulation-chart-legend text,.simulation-panel-title{fill:var(--color-text);font-size:11px;font-weight:600}.simulation-panel-heading,.simulation-incidence-heading,.trade-concentration-heading{position:absolute;top:var(--space-3);left:var(--space-3);right:var(--space-3);z-index:11;color:var(--color-text);font-size:.86rem;font-weight:600}.simulation-node-bar text{fill:var(--color-text);font-size:10px;font-weight:600;stroke:none}.simulation-donut{pointer-events:none}#nodeStatsControls{position:absolute;top:var(--space-3);left:var(--space-3);right:var(--space-3);z-index:11;display:flex;align-items:center;gap:var(--space-2);padding:0}#nodeStatsControls label{display:inline-flex;align-items:center;gap:5px;margin-right:0;font-size:14px;font-weight:700}#nodeStatsControls select{padding:2px 8px;color:var(--color-text);font-size:14px;background:var(--color-surface-strong);border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);outline-offset:2px;border-color:var(--color-border-strong);min-width:0;max-width:100%}#nodeStatsControls select:hover{filter:brightness(1.08)}.node,.nodeOver{cursor:var(--cursor-pointer)}circle:hover,g.node:hover{cursor:var(--cursor-pointer)}.trade-donut{cursor:var(--cursor-pointer)}.inactive-overlay-selected i{color:var(--color-text)}@keyframes breathing{0%,to{transform:scale(1)}50%{transform:scale(var(--hotspot-ring-max-scale))}}.hotspot-rings{transform-box:fill-box;transform-origin:center}.hotspot-rings:not(:empty){animation:breathing 2.8s ease-in-out infinite}@keyframes breathing-legend{0%{stroke-opacity:1;transform:scale(1)}50%{stroke-opacity:1;transform:scale(1)}to{stroke-opacity:1;transform:scale(1)}}.hotspotHalo{fill:none;stroke:var(--color-chart-incoming);stroke-width:2;opacity:.8;animation:pulseHalo 1.5s infinite}@keyframes pulseHalo{0%{r:0;opacity:.8}to{transform:scale(1.5);opacity:0}}.hotspotLegend{right:20px;bottom:calc(120px + var(--map-layer-legend-height, 0px));min-width:95px;height:140px;position:absolute;border-radius:4px;cursor:var(--cursor-move)}.legendIcon{width:28px;height:28px;flex:0 0 auto;margin-right:6px}.hotspot-symbol{display:block;width:100%;height:100%}.hotspot-symbol text{fill:var(--color-text);font-family:var(--font-body);font-size:10px;font-weight:600}.hotspotInfoButton{flex:0 0 auto;display:inline-flex;width:26px;height:26px;padding:0;align-items:center;justify-content:center;cursor:var(--cursor-pointer);font-size:18px;color:var(--color-accent-strong);border:0;background:none;transition:opacity var(--transition-base),transform var(--transition-base),visibility var(--transition-base)}.hotspotInfoButton i{color:currentColor}.hotspotInfoButton:hover,.hotspotInfoButton:focus-visible{transform:scale(1.1);filter:brightness(1.2)}.statsContainer{cursor:var(--cursor-move);position:absolute;top:60px;left:20px;width:220px;height:190px;display:flex;flex-direction:column;justify-content:flex-start;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:4px 8px 4px 4px;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);background:color-mix(in srgb,var(--color-surface) 70%,transparent);box-shadow:var(--shadow-card)}.statsContainer.simulation-stats-container{height:auto}.statsContainer.simulation-stats-container .stat-item:last-child{margin-bottom:0}.stat-item{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--color-text-muted);font-family:var(--font-body);font-size:.8rem;font-weight:500}.stat-icon{width:24px;text-align:center}.stat-label{flex:1;text-align:left;margin-left:8px}.stat-value{text-align:right;margin-left:8px;font-family:var(--font-data);font-weight:500;color:var(--color-text)}#mainFigureSVG .links{pointer-events:none}#mainFigureSVG .links>.link{marker-end:url(#arrowSmall)}#mainFigureSVG .links>.linkOver{marker-end:none}#mainFigureSVG .links>:is(.linkSelectOut,.linkSelectIn,.linkSelectOutOver,.linkSelectInOver){marker-end:url(#arrow)}:root[data-theme=light] #mainFigureSVG #arrow path{fill:context-stroke}.link{fill:none;stroke-width:1.5px;opacity:.2}:root[data-theme=light] #mainFigureSVG .links>.link{stroke-width:1.2px;opacity:.14}.linkOver{fill:none;filter:url(#edgeGlow);stroke:var(--color-accent);stroke-width:4px;opacity:1;stroke-dasharray:5 5;animation:dash 2s linear infinite}.linkSelectOut{fill:none;filter:none;opacity:1;stroke:var(--color-chart-outgoing);stroke-width:1.5px;stroke-dasharray:5 5;animation:dash 2s linear infinite}.linkSelectOutOver{fill:none;filter:url(#edgeGlow);opacity:1;stroke:var(--color-chart-purple);stroke-width:2.5px;stroke-dasharray:5 5;animation:dash 1s linear infinite}.linkSelectIn{fill:none;filter:none;opacity:1;stroke:var(--color-chart-incoming);stroke-width:1.5px;stroke-dasharray:5 5;animation:dash 2s linear infinite}.linkSelectInOver{fill:none;filter:url(#edgeGlow);opacity:1;stroke:var(--color-chart-purple);stroke-width:2.5px;stroke-dasharray:5 5;animation:dash 1s linear infinite}@keyframes dash{to{stroke-dashoffset:-10}}.bubble text{font:12px var(--font-body);fill:var(--color-text)}.map path{stroke:var(--color-border-strong);stroke-width:1}.annotation-group{pointer-events:none;position:relative}#networkCalloutSVG{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:10010;pointer-events:none}.current-date-annotation{font-size:.9rem;fill:var(--color-text);pointer-events:none}#globalStats .current-date-annotation rect.annotation-note-bg,#globalStats .simulation-compartment-callout-bg,#nodeStats .top-label-group rect.label-bg{fill:var(--color-surface-strong);fill-opacity:.96;stroke:var(--color-accent);stroke-width:1;filter:drop-shadow(0 0 4px var(--color-glow))}#nodeStats .top-label-group text{font-size:13px;font-weight:600}.annotation-connector{stroke-dasharray:4,2;opacity:.9}#tradeClusters,#tradeDistribution,#tradeNodeDistribution,#tradeNodeInsight{position:relative;min-height:200px;height:calc(50% - 5px);overflow:hidden;margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}#tradeNodeDistribution,#tradeNodeInsight{visibility:hidden}.distance-fit-dot{fill:var(--color-text);stroke:currentColor;stroke-width:.8px;paint-order:stroke fill;text-shadow:0 0 2px currentColor,0 0 4px currentColor,0 0 6px currentColor}#tradeDistribution .distance-fit-label,.distance-fit-summary{stroke:var(--color-surface);stroke-width:3px;stroke-linejoin:round;paint-order:stroke fill}.trade-clusters-label,.trade-distribution-label,.trade-node-distribution-label{position:absolute;top:0;left:0;right:0;z-index:6;padding:var(--space-3);color:var(--color-text);font-size:14px;font-weight:700}#tradeNodeInsight svg.trade-placeholder-svg{position:absolute;top:0;right:0;bottom:0;left:0}.trade-nodeinsight-label{position:absolute;top:8px;left:var(--space-3);right:var(--space-3);z-index:6;color:var(--color-text);font-size:14px;font-weight:700}.inArboTitle.panel-title-label{top:var(--space-3);left:var(--space-3);right:var(--space-3)}#tradeNodeInsightControls{position:absolute;top:32px;left:var(--space-3);right:var(--space-3);z-index:6;display:flex;align-items:center;gap:var(--space-2);font-size:12px}#tradeNodeInsightControls label{margin:0;color:var(--color-text);white-space:nowrap}#tradeNodeInsightSelect{flex:1;min-width:0;background:var(--color-surface-strong);color:var(--color-text);border:1px solid rgba(var(--color-accent-rgb),.12);border-radius:var(--radius-sm);padding:2px 6px;font-size:12px}#tradeNodeInsightSummary{position:absolute;top:58px;left:var(--space-3);right:var(--space-3);z-index:6;font-size:11px;line-height:1.25;color:var(--color-text-muted);pointer-events:none}#tradeNodeDistribution.glowing-border .trade-node-distribution-label,#tradeNodeDistribution.glowing-border-instant .trade-node-distribution-label,#tradeNodeInsight.glowing-border .trade-nodeinsight-label,#tradeNodeInsight.glowing-border-instant .trade-nodeinsight-label,#tradeNodeInsight.glowing-border #tradeNodeInsightControls label,#tradeNodeInsight.glowing-border-instant #tradeNodeInsightControls label,#tradeNodeInsight.glowing-border #tradeNodeInsightSummary,#tradeNodeInsight.glowing-border-instant #tradeNodeInsightSummary{color:var(--color-text-on-dark)}.cluster-annotation .annotation-note-label{font-size:8px}.cluster-annotation .annotation-note-title{font-size:10px}.network-hover-callout{font-family:var(--font-body);pointer-events:none}.network-callout-surface{fill:url(#networkCalloutSurface);fill-opacity:.82;stroke:rgba(var(--color-accent-rgb),.4);stroke-width:1;filter:drop-shadow(0 5px 12px rgb(0 0 0 / 18%))}.network-callout-connector{fill:none;stroke:var(--color-accent);stroke-width:1;stroke-opacity:.7;stroke-linecap:round;stroke-linejoin:round}.network-callout-accent{stroke:var(--color-accent);stroke-width:2;stroke-linecap:round;filter:drop-shadow(0 0 4px var(--color-glow))}.network-callout-code{fill:var(--color-accent);font:600 13px var(--font-data);letter-spacing:.5px}.network-callout-tag{fill:var(--color-text-muted);font:11px var(--font-data)}.network-callout-name{color:var(--color-text);font:600 13px/18px var(--font-body);overflow-wrap:anywhere}.network-callout-label{fill:var(--color-text-muted);font-size:11px}.network-callout-value{fill:var(--color-text);font:500 12px var(--font-data);font-variant-numeric:tabular-nums}.network-callout-hero{fill:var(--color-text);font:500 23px var(--font-data);letter-spacing:-.8px}.network-callout-caption{fill:var(--color-text-muted);font-size:9px;letter-spacing:.7px;text-transform:uppercase}.network-callout-divider{stroke:var(--color-border);stroke-width:1}.network-callout-row{fill:var(--color-accent-soft)}.network-hover-callout .radar-ring{fill:none;stroke:var(--color-chart-grid);stroke-width:.7}.network-hover-callout .radar-axis{stroke:var(--color-chart-grid);stroke-width:.7}.network-hover-callout .node-radar{fill:var(--color-accent-soft);stroke:var(--color-accent);stroke-width:1.5;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(var(--color-accent-rgb),.22))}.network-hover-callout .vertex{fill:var(--color-accent-strong);stroke:var(--color-accent);stroke-width:.75}.network-hover-callout .radar-axis-label{fill:var(--color-text-muted);font:500 9px var(--font-data)}.line{fill:none;stroke:var(--color-accent);stroke-miterlimit:10;stroke-width:1;animation:none}.circle{fill:transparent;transition:fill var(--transition-base)}.blue-bg{fill:var(--color-accent);animation:none;animation-delay:3s}@keyframes circle-pulse{0%,to{fill:var(--color-accent)}50%{fill:var(--color-accent-strong)}}@keyframes line-pulse{0%,to{stroke:var(--color-accent)}50%{stroke:var(--color-accent-strong)}}@keyframes svg-pulse{0%,to{stroke:var(--color-accent)}50%{stroke:var(--color-text)}}.intro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;background:var(--color-backdrop);z-index:10020;animation:overlayFadeIn var(--transition-base) forwards}.intro-overlay.hide{animation:overlayFadeOut var(--transition-base) forwards;pointer-events:none}.hotspot-info-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10020;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--color-backdrop);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:overlayFadeIn var(--transition-base) forwards}.hotspot-info-overlay.hide{animation:overlayFadeOut var(--transition-base) forwards;pointer-events:none}.hotspot-info-card{position:relative;width:min(980px,92vw);max-height:min(720px,90vh);overflow-y:auto;padding:22px;color:var(--color-text);border:1px solid rgba(var(--color-accent-rgb),.08);border-radius:var(--radius-lg);background:var(--color-surface-strong);box-shadow:0 18px 36px #00000038;animation:contentSlideIn var(--transition-base) forwards}.hotspot-info-overlay.hide .hotspot-info-card{animation:contentSlideOut var(--transition-base) forwards}.hotspot-info-close{position:absolute;top:14px;right:14px;display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;color:var(--color-text-muted);border:1px solid rgba(var(--color-accent-rgb),.1);border-radius:50%;background:var(--color-surface-strong);cursor:var(--cursor-pointer);transition:color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.hotspot-info-close:hover,.hotspot-info-close:focus-visible{color:var(--color-on-accent);background:var(--fill-action);transform:none}.hotspot-info-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px;padding-right:42px}.hotspot-info-badge{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);padding:6px 10px;color:var(--color-accent-strong);font-size:1rem;font-weight:600;border:1px solid rgba(var(--color-accent-rgb),.25);border-radius:var(--radius-md);background:var(--color-accent-soft)}.hotspot-info-card h2{margin:0;color:var(--color-text);font-size:1.55rem;line-height:1.1}.hotspot-info-subtitle{max-width:720px;margin:8px 0 0;color:var(--color-text-muted);font-size:.96rem}.hotspot-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.hotspot-metric-card{display:flex;min-width:0;flex-direction:column;gap:7px;padding:11px 12px;border:1px solid rgba(var(--color-accent-rgb),.08);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--color-surface-strong),var(--color-surface));box-shadow:0 8px 18px #0000001f}.hotspot-metric-head{display:flex;min-width:0;min-height:36px;align-items:center;justify-content:space-between;gap:var(--space-2)}.hotspot-metric-code{display:inline-flex;width:32px;height:32px;flex:0 0 auto}.hotspot-metric-role{display:inline-flex;flex:1;min-width:0;margin:0;align-items:center;gap:5px;color:var(--color-accent-strong);font-size:.78rem;font-weight:600;line-height:1.3;white-space:normal}.hotspot-metric-role i{flex:0 0 auto}.hotspot-metric-title{min-width:0;overflow-wrap:break-word}.hotspot-metric-card>h3{margin:0;color:var(--color-text);font-size:.96rem;line-height:1.15}.hotspot-metric-card p{margin:0;color:var(--color-text-muted);font-size:.86rem;line-height:1.32}.hotspot-metric-method{margin-top:auto;padding-top:7px;color:var(--color-text-subtle);font-size:.76rem;font-weight:600;border-top:1px solid rgba(var(--color-accent-rgb),.08)}body.focus-mode-active .hotspot-info-overlay{background:var(--color-backdrop)}body.focus-mode-active .hotspot-info-card{color:var(--color-text-on-dark);border-color:var(--floating-dark-border);background:linear-gradient(180deg,var(--color-surface),var(--color-surface));box-shadow:var(--floating-dark-shadow)}body.focus-mode-active .hotspot-info-close{color:var(--color-text-muted);border-color:var(--color-text-subtle);background:rgba(var(--color-contrast-rgb),.08)}body.focus-mode-active .hotspot-info-close:hover,body.focus-mode-active .hotspot-info-close:focus-visible{color:var(--color-on-accent);background:var(--color-chart-amber)}body.focus-mode-active .hotspot-info-badge{color:var(--color-accent-strong);border-color:rgba(var(--color-accent-rgb),.26);background:rgba(var(--color-accent-rgb),.16)}body.focus-mode-active .hotspot-info-card h2{color:var(--color-text)}body.focus-mode-active .hotspot-info-subtitle{color:var(--color-text-muted)}body.focus-mode-active .hotspot-metric-card{border-color:var(--color-text-subtle);background:linear-gradient(180deg,rgba(var(--color-contrast-rgb),.08),rgba(var(--color-contrast-rgb),.04));box-shadow:none}body.focus-mode-active .hotspot-metric-role{color:var(--color-accent-strong)}body.focus-mode-active .hotspot-metric-card>h3{color:var(--color-text)}body.focus-mode-active .hotspot-metric-card p{color:var(--color-text-muted)}body.focus-mode-active .hotspot-metric-method{color:var(--color-text-subtle);border-top-color:var(--color-text-subtle)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}.intro-connector-defs{position:absolute}.intro-content{display:flex;flex-direction:column;color:var(--color-text);width:min(1080px,92vw);max-height:min(760px,92vh);overflow:hidden;padding:22px 22px 18px;background:var(--color-surface-muted);border:1px solid rgba(var(--color-accent-rgb),.08);border-radius:var(--radius-lg);box-shadow:0 18px 36px #00000038;animation:contentSlideIn var(--transition-base) forwards;border-color:var(--color-border-strong)}.intro-pages{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.intro-overlay.hide .intro-content{animation:contentSlideOut var(--transition-base) forwards}@keyframes contentSlideIn{0%{transform:translateY(-24px);opacity:.5}to{transform:translateY(0);opacity:1}}@keyframes contentSlideOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(-16px);opacity:0}}.intro-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}.intro-subtitle{margin:6px 0 0;color:var(--color-text-muted)}.intro-left,.intro-right{display:flex;flex-direction:column}.intro-badge{display:inline-flex;align-items:center;gap:var(--space-2);width:100%;margin-bottom:var(--space-3);padding:6px 10px;color:var(--color-accent-strong);font-size:.9rem;font-weight:600;white-space:nowrap;background:transparent;border:none;border-radius:0;letter-spacing:.04em;border-bottom:1px solid var(--color-border)}.intro-badge-left,.intro-badge-right{align-self:center;text-align:center;justify-content:center}.intro-grid{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(460px,1.1fr);gap:16px;align-items:start}@media (max-width: 900px){.intro-grid{grid-template-columns:1fr}}.intro-note-list{display:grid;gap:7px}.intro-note{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding:8px 10px;border:1px solid rgba(var(--color-accent-rgb),.08);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:none;border-color:var(--color-border)}.intro-note--simulation{border-color:var(--color-border);background:var(--color-surface)}.intro-note-index{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;color:var(--color-accent-strong);font-size:.72rem;font-weight:600;border:1px solid rgba(var(--color-accent-rgb),.24);border-radius:50%;background:rgba(var(--color-accent-rgb),.12)}.intro-note-copy{min-width:0;color:var(--color-text);font-size:.94rem;line-height:1.35}.intro-note-copy i{margin:0 4px 0 6px;color:var(--color-accent-strong)}.intro-note-copy i:first-child{margin-left:0}.intro-note-copy kbd{padding:2px 5px;border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent-strong);font-family:var(--font-data);font-size:.85em;font-weight:600;white-space:nowrap}.intro-note-copy kbd i{margin:0}.intro-content [hidden]{display:none}.intro-page-switch{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:44px;padding:9px 14px;color:var(--color-text-subtle);background:linear-gradient(120deg,var(--color-surface-strong),var(--color-surface));border:1px solid var(--color-border);border-radius:var(--radius-pill);box-shadow:inset 0 1px rgba(var(--color-contrast-rgb),.04);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.intro-page-switch:hover{border-color:var(--color-accent);box-shadow:0 0 20px rgba(var(--color-accent-rgb),.08)}.intro-page-switch__label{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:600;white-space:nowrap;transition:color var(--transition-base)}.intro-page-switch__label svg{width:14px;height:14px;fill:var(--color-surface);stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}.intro-page-switch[aria-checked=false] .intro-page-switch__label--guide,.intro-page-switch[aria-checked=true] .intro-page-switch__label--networks{color:var(--color-accent-strong)}.intro-page-switch__track{position:relative;width:42px;height:22px;flex:0 0 auto;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-page-bg);box-shadow:inset 0 0 10px rgba(var(--color-accent-rgb),.08)}.intro-page-switch__thumb{position:absolute;top:3px;left:3px;width:14px;height:14px;border:3px solid var(--color-accent);border-radius:50%;background:var(--color-on-accent);box-shadow:0 0 9px rgba(var(--color-accent-rgb),.45);transition:transform var(--transition-base)}.intro-page-switch[aria-checked=true] .intro-page-switch__thumb{transform:translate(20px)}@media (prefers-reduced-motion: reduce){.intro-page-switch,.intro-page-switch__label,.intro-page-switch__thumb{transition:none}}.intro-meta{margin-top:10px;color:var(--color-text-subtle)}.intro-actions{display:flex;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}.kbd-annotated{position:relative;display:grid;grid-template-columns:1fr minmax(260px,360px) 1fr;grid-template-rows:auto auto auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(var(--color-accent-rgb),.08);border-radius:var(--radius-md);background:var(--color-surface);border-color:var(--color-border)}.kbd-callout{position:relative;max-width:240px;padding:6px 10px;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.8rem;line-height:1.25;background:var(--color-surface-strong);border:1px solid rgba(var(--color-contrast-rgb),.12);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:border-color var(--transition-fast),background var(--transition-fast)}.kbd-callout.is-shortcut-active,.kbd-callout:focus-visible{outline:none;border-color:var(--color-accent);background:var(--color-accent-soft)}.kbd-top-callouts{display:grid;grid-column:1 / -1;grid-row:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-bottom:12px}.kbd-side-callouts{display:flex;grid-column:1;grid-row:2;flex-direction:column;justify-content:space-between;gap:10px}.kbd-side-callouts .kbd-callout{align-self:stretch}#introKeyboard{grid-column:2;grid-row:2;width:100%;justify-self:center}.kbd-callout__title{font-weight:600;margin-bottom:4px;color:var(--color-text)}.kbd-callout__title kbd{padding:2px 6px;border-radius:6px;background:var(--color-surface-muted);color:var(--color-accent);margin-right:6px;font-weight:500}.kbd-callout--m{grid-column:3;grid-row:2;justify-self:end;align-self:end}.kbd-callout--q{grid-column:1;grid-row:2;justify-self:start;align-self:start}.kbd-callout--space{grid-column:1;grid-row:3;justify-self:start;align-self:end}.kbd-callout--f{grid-column:3;grid-row:3;justify-self:end;align-self:start}.kbd-callout--c{grid-column:1;grid-row:2;justify-self:start;align-self:end}.kbd-callout--arrows{grid-column:2;grid-row:3;justify-self:center;align-self:end}.kbd-dot{position:absolute;width:6px;height:6px;border-radius:999px;background:var(--color-border-strong);box-shadow:0 0 0 3px var(--color-surface)}.is-shortcut-active .kbd-dot{background:var(--color-accent)}.kbd-callout--q .kbd-dot,.kbd-callout--c .kbd-dot{right:-4px;top:50%;transform:translateY(-50%)}.kbd-callout--t .kbd-dot,.kbd-callout--e .kbd-dot,.kbd-callout--r .kbd-dot,.kbd-callout--h .kbd-dot{bottom:-4px;left:50%;transform:translate(-50%)}.kbd-callout--m .kbd-dot,.kbd-callout--f .kbd-dot{left:-4px;top:50%;transform:translateY(-50%)}.kbd-callout--space .kbd-dot,.kbd-callout--arrows .kbd-dot{top:-4px;left:50%;transform:translate(-50%)}#introKeyboard .hg-button{border-radius:3px;font-weight:500;color:var(--color-text-muted);background:var(--color-surface-strong);border-bottom:2px solid var(--color-border)}#introKeyboard .hg-button.intro-key--hot{background:var(--color-accent-soft)!important;color:var(--color-accent)!important;border:1px solid var(--color-accent)!important;box-shadow:none!important;font-weight:600!important}#introKeyboard .hg-button.is-shortcut-active{background:var(--color-accent)!important;color:var(--color-on-accent)!important}svg.leader-line,svg.leader-line:not(:root){overflow:visible!important;z-index:25000!important;pointer-events:none!important}svg.leader-line>g{clip-path:url(#introConnectorClip)}.leader-line{z-index:25000!important}#mainFigureSVG{background:var(--color-canvas);color:var(--color-text);font-family:var(--font-body)}#mainContainer svg text{font-family:var(--font-body)}#globalStats .domain,#simulationIncidence .domain,#tradeConcentration .domain,#nodeStats .domain,#globalStats .tick line,#simulationIncidence .tick line,#tradeConcentration .tick line,#nodeStats .tick line{stroke:var(--color-chart-grid)}#globalStats .tick text,#simulationIncidence .tick text,#tradeConcentration .tick text,#nodeStats .tick text{fill:var(--color-text-muted)}#introKeyboard.hg-theme-default{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm)}#introOkButton{height:44px;color:var(--color-on-accent);background:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-pill);padding:9px 16px;font-weight:600}#introOkButton:hover{background:var(--color-accent-strong)}input[type=checkbox]{accent-color:var(--color-accent)}select:focus-visible,#timeControlsContainer button:focus-visible,#timeControlsContainer input:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (max-width: 1280px){#mainContainer{grid-template-columns:minmax(0,22fr) minmax(0,48fr) minmax(0,30fr);gap:var(--space-2)}:root{--time-controls-width: min(60%, 390px)}}@media (max-width: 1040px){#mainContainer{grid-template-columns:minmax(0,24fr) minmax(0,44fr) minmax(0,32fr);padding:var(--space-2)}.col3{padding:var(--space-2)}.statsContainer{width:204px}.watermark-logo{width:112px}:root{--time-controls-width: calc(100% - 236px) }#globalStatsControls label,#nodeStatsControls label,#globalStatsControls select,#nodeStatsControls select{font-size:12px}.current-date-widget,.current-date-value{font-size:.7rem;white-space:nowrap}.current-date-label{margin-right:3px}.time-author-credit{font-size:.65rem;white-space:nowrap}}@media (max-width: 900px){.kbd-annotated{grid-template-columns:1fr;grid-template-rows:auto}.kbd-top-callouts{grid-column:1;grid-row:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.kbd-side-callouts{grid-row:auto}#introKeyboard{grid-column:1;grid-row:auto;max-width:360px}.kbd-callout,.kbd-callout--t,.kbd-callout--e,.kbd-callout--m,.kbd-callout--q,.kbd-callout--h,.kbd-callout--r,.kbd-callout--space,.kbd-callout--f,.kbd-callout--c,.kbd-callout--arrows{grid-column:1;grid-row:auto;justify-self:stretch;align-self:auto;max-width:none;width:auto}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
