.epidemic-mosaic-shell{--em-bg-outer: #101416;--em-bg-panel: #1c2327;--em-bg-recessed: #14191c;--em-bg-control: #2a3338;--em-bg-control-hover: #344046;--em-border: #2f3a40;--em-border-bright: #4b5a63;--em-seam-light: rgba(243, 241, 233, .08);--em-text-main: #f3f1e9;--em-text-secondary: #bac4c8;--em-text-muted: #8c999e;--em-accent-amber: #e8832a;--em-accent-amber-bright: #ffaa4c;--em-accent-teal: #3b9b8e;--em-accent-violet: #a992d4;--em-comp-s: #3e5463;--em-comp-i: #e8832a;--em-comp-r: #3b9b8e;--em-comp-v: #a992d4;background:var(--em-bg-outer);color:var(--em-text-main);border:1px solid var(--em-border);border-radius:14px;box-shadow:0 20px 48px #0000008c,inset 0 1px 0 var(--em-seam-light);padding:1.25rem;margin:1.5rem 0 2.25rem;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media(min-width:768px){.epidemic-mosaic-shell{padding:1.65rem 1.85rem}}.em-intro{border-bottom:1px solid var(--em-border);padding-bottom:1.1rem;margin-bottom:1.25rem}.em-intro__top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem}.em-intro__title{margin:0;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:800;letter-spacing:-.02em;color:var(--em-text-main)!important;line-height:1.15}.em-intro__meta{margin:0;font-size:.84rem;color:var(--em-text-secondary)}.em-intro__meta a{color:var(--em-text-main);text-decoration:underline;text-underline-offset:3px}.em-intro__lead{margin:.65rem 0 .25rem;font-size:clamp(1.08rem,1.8vw,1.28rem);font-weight:700;color:var(--em-accent-amber-bright);line-height:1.38}.em-intro__sub{margin:0;font-size:.98rem;color:var(--em-text-secondary);line-height:1.5}.em-intro__rules{display:grid;grid-template-columns:1fr;gap:.5rem;margin-top:.85rem;padding:.7rem .9rem;background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:9px;font-size:.88rem;color:var(--em-text-secondary);line-height:1.45}@media(min-width:768px){.em-intro__rules{grid-template-columns:1fr 1fr;gap:1rem}}.em-intro__rules p{margin:0}.em-intro__rules strong{color:var(--em-text-main)}.em-workbench{display:flex;flex-direction:column;gap:1.1rem}.em-panel{background:linear-gradient(180deg,#ffffff06,#00000014),var(--em-bg-panel);border:1px solid var(--em-border);border-radius:11px;padding:.95rem 1.05rem;box-shadow:inset 0 1px 0 var(--em-seam-light),0 4px 14px #00000047}.em-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem}.em-toolbar__group{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.em-toolbar__label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--em-text-secondary);margin-right:.2rem}.em-segmented{display:inline-flex;flex-wrap:wrap;background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:9px;padding:.2rem;gap:.2rem;box-shadow:inset 0 2px 4px #00000073}.em-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.45rem .9rem;font-size:.9rem;font-weight:600;color:var(--em-text-main);background:linear-gradient(180deg,#ffffff0d,#00000024),var(--em-bg-control);border:1px solid var(--em-border-bright);border-radius:7px;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease;box-shadow:0 2px 4px #00000059,inset 0 1px #ffffff14}.em-btn:hover:not(:disabled){background:var(--em-bg-control-hover);border-color:#657782}.em-btn:focus-visible,.em-select:focus-visible,.em-input:focus-visible,.em-polygon-hit:focus-visible{outline:2px solid var(--em-accent-amber-bright);outline-offset:2px}.em-btn:disabled{opacity:.5;cursor:not-allowed}.em-btn--segmented{border-color:transparent;background:transparent;box-shadow:none;color:var(--em-text-secondary);padding:.4rem .85rem}.em-btn--segmented:hover:not(:disabled){color:var(--em-text-main);background:#ffffff0a;border-color:transparent}.em-btn--segmented[aria-pressed=true]{background:linear-gradient(180deg,#f2943a,#d9731c);color:#101416;font-weight:700;border-color:#ffb869;box-shadow:0 2px 8px #e8832a66,inset 0 1px #ffffff59}.em-btn--primary{background:linear-gradient(180deg,#f59b3d,#df761d);color:#101416;font-weight:700;border-color:#ffbe73;box-shadow:0 2px 10px #e8832a61,inset 0 1px #ffffff59}.em-btn--primary:hover:not(:disabled){background:linear-gradient(180deg,#ffaa4c,#e8832a);border-color:#ffd099}.em-status-dot{width:8px;height:8px;border-radius:50%;background:var(--em-text-muted);display:inline-block}.em-status-dot--active{background:#4ce0b3;box-shadow:0 0 8px #4ce0b3cc}.em-status-dot--amber{background:var(--em-accent-amber-bright);box-shadow:0 0 8px #ffaa4ccc}.em-experiment-config{display:flex;flex-direction:column;gap:.75rem;padding-top:.8rem;border-top:1px solid var(--em-border)}.em-experiment-config__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.2rem}.em-experiment-config__explain{margin:0;font-size:.9rem;color:var(--em-text-secondary);line-height:1.48}.em-experiment-config__explain strong{color:var(--em-text-main)}.em-field-group{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.em-field{display:flex;flex-direction:column;gap:.25rem}.em-field label{font-size:.78rem;font-weight:600;color:var(--em-text-secondary)}.em-select,.em-input{min-height:44px;background:var(--em-bg-recessed);color:var(--em-text-main);border:1px solid var(--em-border-bright);border-radius:7px;padding:.4rem .7rem;font-size:.9rem;font-family:inherit}.em-range-wrap{display:flex;align-items:center;gap:.65rem}.em-range{accent-color:var(--em-accent-amber-bright);width:180px;height:28px;cursor:pointer}.em-banner{padding:.55rem .85rem;background:#e8832a1f;border:1px solid rgba(255,170,76,.42);border-radius:8px;font-size:.86rem;color:var(--em-text-main);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.em-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1.2rem;padding:.6rem .9rem;background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:9px;font-size:.83rem;color:var(--em-text-secondary)}.em-legend__items{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1.15rem}.em-legend__item{display:inline-flex;align-items:center;gap:.42rem;color:var(--em-text-main);font-weight:600}.em-Swatch{width:16px;height:16px;border-radius:3px;border:1px solid rgba(255,255,255,.28);display:inline-block;flex-shrink:0}.em-Swatch--s{background:var(--em-comp-s)}.em-Swatch--i{background:var(--em-comp-i)}.em-Swatch--r{background:var(--em-comp-r)}.em-Swatch--v{background:repeating-linear-gradient(-45deg,#937ac2,#937ac2 3px,#d8cbf0 3px 5px)}.em-cities-grid--bridge{display:grid;grid-template-columns:1fr;gap:1rem}.em-cities-grid--vaccination{display:grid;grid-template-columns:1fr;gap:.9rem}@media(min-width:920px){.em-cities-grid--bridge{grid-template-columns:1fr 1fr}.em-cities-grid--vaccination{grid-template-columns:repeat(3,1fr)}.em-mobile-switcher{display:none!important}}@media(max-width:919px){.em-city-card--hidden-mobile{display:none!important}}.em-city-card{background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:10px;padding:.75rem;display:flex;flex-direction:column;gap:.55rem;box-shadow:inset 0 2px 6px #00000080}.em-city-card__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem .6rem}.em-city-card__title{margin:0;font-size:1rem;font-weight:700;color:var(--em-text-main);display:inline-flex;align-items:center;gap:.45rem}.em-city-card__badge{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.79rem;color:var(--em-text-secondary);background:var(--em-bg-panel);border:1px solid var(--em-border);border-radius:5px;padding:.15rem .45rem}.em-city-card__metrics{display:flex;flex-wrap:wrap;gap:.45rem .9rem;font-size:.81rem;color:var(--em-text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.em-city-card__metrics strong{color:var(--em-text-main)}.em-svg-stage{width:100%;height:auto;aspect-ratio:600 / 420;display:block;background:#0d1113;border:1px solid #252f34;border-radius:8px}.em-polygon-hit{cursor:pointer}.em-summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.em-summary-card{background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:8px;padding:.65rem .85rem;display:flex;flex-direction:column;gap:.3rem}.em-summary-card__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.88rem;font-weight:700;color:var(--em-text-main)}.em-summary-card__stats{display:flex;flex-wrap:wrap;gap:.35rem .85rem;font-size:.82rem;color:var(--em-text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.em-lower-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:960px){.em-lower-grid{grid-template-columns:1.05fr 1.25fr}}.em-detail-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .85rem;margin-bottom:.65rem}.em-detail-title{margin:0;font-size:1rem;font-weight:700;color:var(--em-text-main)}.em-pop-bar-wrap{display:flex;flex-direction:column;gap:.35rem;margin:.55rem 0}.em-pop-bar{display:flex;width:100%;height:16px;background:#0d1113;border:1px solid var(--em-border-bright);border-radius:5px;overflow:hidden}.em-pop-bar__seg--s{background:var(--em-comp-s)}.em-pop-bar__seg--v{background:repeating-linear-gradient(-45deg,#937ac2,#937ac2 4px,#d8cbf0 4px 7px)}.em-pop-bar__seg--r{background:var(--em-comp-r)}.em-pop-bar__seg--i{background:var(--em-comp-i)}.em-pop-counts{display:flex;flex-wrap:wrap;gap:.45rem .9rem;font-size:.81rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--em-text-secondary)}.em-pop-counts strong{color:var(--em-text-main)}.em-chart-svg{width:100%;height:auto;display:block;background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:8px}.em-batch-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:.65rem}.em-batch-table th,.em-batch-table td{padding:.5rem .65rem;text-align:left;border-bottom:1px solid var(--em-border)}.em-batch-table th{color:var(--em-text-secondary);font-weight:600;font-size:.79rem;text-transform:uppercase;letter-spacing:.04em}.em-batch-table td{color:var(--em-text-main);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.em-disclosure{background:var(--em-bg-panel);border:1px solid var(--em-border);border-radius:10px;overflow:hidden}.em-disclosure>summary{min-height:46px;padding:.75rem 1.05rem;font-weight:700;font-size:.96rem;color:var(--em-text-main);cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;background:var(--em-bg-control)}.em-disclosure>summary::-webkit-details-marker{display:none}.em-disclosure__body{padding:1rem 1.15rem;display:flex;flex-direction:column;gap:.9rem;font-size:.92rem;color:var(--em-text-secondary);line-height:1.55}.em-disclosure__params{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.85rem;padding:.85rem;background:var(--em-bg-recessed);border:1px solid var(--em-border);border-radius:8px}.em-fallback{display:flex;flex-direction:column;gap:.85rem;padding:1rem;background:var(--em-bg-panel);border:1px solid var(--em-border);border-radius:10px}.em-fallback img{width:100%;height:auto;border-radius:8px;border:1px solid var(--em-border-bright)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
