@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-BJItruJi.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-C1SKuNhx.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-BPWuI_CM.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-CTUnhTqV.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-n6oPB5VF.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-DSasf_jt.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-B97dYap6.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-OKGpH0gQ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-BHf956ki.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-CyDjbWPV.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CdZtFfYS.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-BU83cd9M.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cfrm0EKX.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DujcQJCN.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-D1zm99-P.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-BEypoZQd.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-By04ZBDJ.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-BwBTeJfm.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-rpgY82Kd.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-V_-bWxzT.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DprGrCew.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-CgrnmiIU.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-BFLYOLbL.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-Dh0NORqx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-jBHiQjEG.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-CJ5MtzOJ.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-DM9A4i1K.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BuRiwhxF.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-FZrtz_q-.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-BJUfoJTU.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DHNi5J5O.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-D03elqKW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-dAZVOL-H.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-bp4QDljZ.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-BGOKnPO6.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-ZykYOGKL.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-B3hZxag_.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-ZyMXPjaT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-DvQQgHTq.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CJUKFyLa.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BFiUPp6R.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DLynVohM.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-DxDDqVQb.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-uwM7KshN.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-Dm_PoFIZ.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-O6-GRVqx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-CmcxpzmF.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-yqk7_qG0.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-BtGHVI3Q.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-N1TV9ACq.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-CevHOlzG.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-QhwQXayn.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-Dn-cqWhb.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-BhDX_RLI.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-C_OblDzq.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-zoSM89R3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--la-blue: #163B66;--la-orange: #E67E22;--la-bg: #FBF9F6;--la-surface: #FFFFFF;--la-text: #242B33;--la-primary: #163B66;--la-accent: #E67E22;--la-accent-hover: #C0631C;--la-border: #D4DAE1;--la-caption: #5C6B7C;--la-font-sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--la-font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;--la-fs-base: 16px;--la-fs-xs: .75rem;--la-fs-sm: .875rem;--la-fs-md: 1rem;--la-fs-lg: 1.25rem;--la-fs-xl: 1.5625rem;--la-fs-2xl: 1.9375rem;--la-fs-3xl: 2.4375rem;--la-fw-body: 400;--la-fw-emph: 500;--la-fw-head: 600;--la-fw-display: 700}[data-theme=dark]{--la-bg: #0F1E33;--la-surface: #16283F;--la-text: #FBF9F6;--la-primary: #5B86C2;--la-accent: #E67E22;--la-accent-hover: #E89A52;--la-border: #2A3C56;--la-caption: #8DA0B8}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--la-bg: #0F1E33;--la-surface: #16283F;--la-text: #FBF9F6;--la-primary: #5B86C2;--la-accent: #E67E22;--la-accent-hover: #E89A52;--la-border: #2A3C56;--la-caption: #8DA0B8}}body{background:var(--la-bg);color:var(--la-text);font-family:var(--la-font-sans);font-size:var(--la-fs-base);line-height:1.55}h1,h2,h3,h4{color:var(--la-primary);font-weight:var(--la-fw-head)}a{color:var(--la-accent);text-decoration:none}a:hover,a:focus{color:var(--la-accent-hover);text-decoration:underline}code,pre,.data,.tabular{font-family:var(--la-font-mono)}hr,.rule{border:none;border-top:1px solid var(--la-border)}.caption,small,figcaption{color:var(--la-caption);font-size:var(--la-fs-sm)}:root{--chart-1:#2B5EBA;--chart-2:#089772;--chart-3:#A53260;--chart-4:#BC8302;--chart-seq-1:#9DB5D2;--chart-seq-2:#7B9AC2;--chart-seq-3:#5A80B1;--chart-seq-4:#3E6597;--chart-seq-5:#2A4E7B;--chart-seq-6:#163B66;--chart-div-low:#A53260;--chart-div-mid:#8E8E8E;--chart-div-high:#089772;--chart-good:#1F7A4D;--chart-warning:#B4780A;--chart-critical:#A32C2C;--epistemic-computed: var(--archive-blue);--epistemic-human: var(--archive-orange);--epistemic-assumed-bg:#FDF1E4;--epistemic-assumed-ink:#8A4708;--chart-surface:var(--warm-white);--chart-grid:var(--archive-grey);--chart-axis:var(--soft-slate)}[data-theme=dark]{--chart-surface:#10233D;--chart-grid:#24405F;--chart-axis:#2E4F73;--chart-1:#2666DB;--chart-2:#08A87F;--chart-3:#B4446E;--chart-4:#C48800}:root{color-scheme:light;--app-surface: var(--emr-surface, var(--la-bg));--app-surface-muted: var(--emr-surface-muted, var(--la-border));--app-structure: var(--emr-structure, var(--la-primary));--app-structure-2: var(--emr-structure-secondary, var(--la-blue));--app-insight: var(--emr-insight, var(--la-accent));--app-historical: var(--emr-historical, var(--la-border));--app-text: var(--la-text);--app-caption: var(--la-caption);--ok: #1F7A4D;--warn: #B4780A;--bad: #A32C2C;--dock-h: 76px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:#10233d}#app{position:relative;max-width:412px;margin:0 auto;height:100dvh;max-height:900px;display:flex;flex-direction:column;overflow:hidden;background:var(--app-surface);color:var(--app-text);font-family:var(--la-font-sans)}.topbar{background:var(--app-structure);color:#fff;padding:max(8px,env(safe-area-inset-top)) 12px 8px;flex:0 0 auto}.topbar__row{display:flex;align-items:center;gap:8px}.topbar__home{display:inline-flex;align-items:center;gap:8px;padding:2px 6px 2px 0;margin:0;background:none;border:none;color:inherit;cursor:pointer;border-radius:6px;text-align:left}.topbar__home:hover{opacity:.85}.topbar__home:focus-visible{outline:2px solid #fff;outline-offset:2px}.topbar__seal{width:26px;height:26px;border-radius:50%;flex:0 0 auto}.topbar__title{font-weight:var(--la-fw-head);font-size:var(--la-fs-sm);letter-spacing:.01em}.topbar__spacer{flex:1}.topbar__manual{color:#fff;text-decoration:none;opacity:.8;font-size:var(--la-fs-sm);letter-spacing:.02em;padding:3px 8px;margin-right:4px;border:1px solid rgba(255,255,255,.35);border-radius:999px;white-space:nowrap}.topbar__manual:hover{opacity:1;border-color:#ffffffb3}.topbar__manual:focus-visible{outline:2px solid #fff;outline-offset:2px;opacity:1}.clock{text-align:right;line-height:1.1}.clock__year{font-family:var(--la-font-mono);font-size:var(--la-fs-sm);font-variant-numeric:tabular-nums}.clock__turn{font-size:10px;color:#a9c0de}.invstrip{display:flex;gap:6px;align-items:center}.invdot{width:9px;height:9px;border-radius:50%;background:var(--ok);position:relative}.invdot[data-state=hit]{background:var(--app-insight)}.invdot[data-state=void]{background:var(--bad)}.invstrip__label{font-size:10px;color:#a9c0de;margin-left:2px}.lenstabs{display:flex;gap:4px;overflow-x:auto;padding:6px 8px;background:var(--app-surface);border-bottom:1px solid var(--app-surface-muted);flex:0 0 auto;scrollbar-width:none}.lenstabs::-webkit-scrollbar{display:none}.lenstab{display:flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid transparent;background:transparent;color:var(--app-caption);padding:6px 10px;border-radius:999px;font-size:var(--la-fs-sm);cursor:pointer}.lenstab[aria-selected=true]{background:var(--app-structure);color:#fff}.lenstab__icon{width:16px;height:16px}.lens{flex:1 1 auto;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:14px}.lens__head{display:flex;align-items:baseline;justify-content:space-between}.lens__name{font-size:var(--la-fs-lg);font-weight:var(--la-fw-head);color:var(--app-structure)}.lens__sub{font-size:var(--la-fs-xs);color:var(--app-caption)}.hero{background:var(--app-surface);border:1px solid var(--app-surface-muted);border-radius:10px;padding:12px}.pulse{display:grid;grid-template-columns:1fr 1fr;gap:8px}.surprise{border-left:3px solid var(--app-insight);padding:6px 10px}.surprise__head{font-weight:var(--la-fw-head);font-size:var(--la-fs-sm)}.surprise__body{font-size:var(--la-fs-sm);color:var(--app-caption)}.stat{background:var(--app-surface);border:1px solid var(--app-surface-muted);border-radius:8px;padding:8px 10px}.stat__label{font-size:var(--la-fs-xs);color:var(--app-caption);text-transform:uppercase;letter-spacing:.04em}.stat__info{margin-left:4px;color:var(--app-caption);cursor:help;text-transform:none;font-size:11px;opacity:.75}.stat__info:hover{opacity:1;color:var(--app-structure)}.infotag{position:relative;display:inline-flex;vertical-align:baseline}.infotag__btn{font:inherit;line-height:1;text-transform:none;background:none;border:none;padding:0 2px;margin-left:4px;color:var(--app-caption);cursor:pointer;opacity:.75}.infotag__btn:hover,.infotag__btn[aria-expanded=true]{opacity:1;color:var(--app-structure)}.infotag__btn:focus-visible{outline:2px solid var(--app-structure);outline-offset:2px;border-radius:3px}.infotag__pop{position:absolute;z-index:40;top:calc(100% + 6px);left:50%;width:min(260px,74vw);background:var(--app-surface);color:var(--app-text);border:1px solid var(--app-historical);border-radius:8px;padding:8px 10px;font-size:var(--la-fs-sm);font-weight:400;line-height:1.45;letter-spacing:0;text-transform:none;text-align:left;white-space:normal;box-shadow:0 8px 24px #10233d33}.stat__value{font-family:var(--la-font-mono);font-size:var(--la-fs-lg);font-variant-numeric:tabular-nums;color:var(--app-text)}.stat__basis{font-size:10px;color:var(--app-caption);margin-top:1px;letter-spacing:.01em}.stat__delta{font-size:var(--la-fs-xs);font-family:var(--la-font-mono)}.stat__delta[data-dir=up]{color:var(--ok)}.stat__delta[data-dir=dn]{color:var(--bad)}.stat__delta[data-dir=flat]{color:var(--app-caption)}.sparse{border:1px dashed var(--app-surface-muted);border-radius:10px;padding:16px;color:var(--app-caption);font-size:var(--la-fs-sm);text-align:center}.sparse__title{color:var(--app-structure);font-weight:var(--la-fw-head);margin-bottom:4px}.threshold{font-family:var(--la-font-mono);color:var(--app-text)}.spark{width:100%;height:46px;display:block}.spark path{fill:none;stroke:var(--chart-1);stroke-width:1.5}.tchart{display:flex;flex-direction:column;gap:6px}.tchart__top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.tchart__label{font-size:var(--la-fs-sm);color:var(--app-structure);font-weight:var(--la-fw-head)}.tchart__label em{font-style:normal;color:var(--app-caption);font-weight:400}.tchart__ranges{display:inline-flex;gap:4px}.tchart__range{font-family:var(--la-font-mono);font-size:var(--la-fs-xs);padding:2px 7px;border:1px solid var(--app-historical);border-radius:999px;background:transparent;color:var(--app-caption);cursor:pointer}.tchart__range[aria-pressed=true]{background:var(--app-structure);color:#fff;border-color:var(--app-structure)}.tchart__svg{width:100%;height:132px;display:block;touch-action:none}.tchart__area{fill:var(--app-structure);opacity:.07;stroke:none}.tchart__line{fill:none;stroke:var(--app-structure);stroke-width:1.6;stroke-linejoin:round}.tchart__grid{stroke:var(--app-historical);stroke-width:.5;opacity:.5}.tchart__cursor{stroke:var(--app-historical);stroke-width:1;stroke-dasharray:2 2}.tchart__end{fill:var(--app-structure)}.tchart__dot{fill:var(--app-structure);stroke:#fff;stroke-width:1}.tchart__ytick{fill:var(--app-caption);font-family:var(--la-font-mono);font-size:8px}.tchart__axis{display:flex;justify-content:space-between;gap:8px;font-family:var(--la-font-mono);font-size:var(--la-fs-xs);color:var(--app-caption)}.tchart__read{color:var(--app-text);text-align:center}.landmap{width:100%;height:auto;display:block}.landmap polygon[role=button]:focus-visible{outline:none;stroke:var(--app-structure);stroke-width:2.6}.hexcard{margin-top:10px;border:1px solid var(--app-historical);border-radius:10px;background:var(--app-surface);padding:10px 12px}.hexcard__head{display:flex;align-items:center;justify-content:space-between;font-weight:var(--la-fw-head);color:var(--app-structure);font-size:var(--la-fs-sm)}.hexcard__close{background:none;border:none;font-size:20px;line-height:1;padding:0 4px;color:var(--app-caption);cursor:pointer}.hexcard__close:hover{color:var(--app-structure)}.hexcard__group{margin-top:8px}.hexcard__gname{font-family:var(--la-font-mono);font-size:var(--la-fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--app-caption);margin-bottom:3px}.hexcard__rows{margin:0;display:grid;gap:3px}.hexcard__row{display:flex;justify-content:space-between;gap:12px;font-size:var(--la-fs-sm)}.hexcard__row dt{margin:0;color:var(--app-caption)}.hexcard__row dd{margin:0;font-family:var(--la-font-mono);font-variant-numeric:tabular-nums;color:var(--app-text)}.bikey{display:flex;align-items:center;gap:12px;margin-top:8px}.bikey__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);width:54px;height:54px;border:1px solid var(--app-historical);border-radius:4px;overflow:hidden;transform:scaleY(-1);flex:0 0 auto}.bikey__grid span{display:block}.bikey__labs{display:flex;flex-direction:column;gap:3px;font-size:var(--la-fs-xs);color:var(--app-caption)}.dock{flex:0 0 auto;min-height:var(--dock-h);display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px max(10px,env(safe-area-inset-bottom));background:var(--app-surface);border-top:1px solid var(--app-surface-muted)}.playpause{width:52px;height:52px;border-radius:50%;border:none;background:var(--app-structure);color:#fff;display:grid;place-items:center;cursor:pointer;flex:0 0 auto}.playpause[data-paused=true]{background:var(--app-insight)}.playpause img{width:22px;height:22px;filter:brightness(0) invert(1)}.speeds{display:flex;gap:4px}.speed{min-width:44px;height:40px;border:1px solid var(--app-surface-muted);background:transparent;color:var(--app-text);border-radius:8px;font-family:var(--la-font-mono);font-size:var(--la-fs-sm);cursor:pointer}.speed[aria-pressed=true]{background:var(--app-structure);color:#fff;border-color:var(--app-structure)}.digestbtn{position:relative;width:44px;height:44px;border:1px solid var(--app-surface-muted);background:transparent;border-radius:8px;display:grid;place-items:center;cursor:pointer}.digestbtn img{width:20px;height:20px}.badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--app-insight);color:#fff;font-size:11px;display:grid;place-items:center}.centre{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom));text-align:center;overflow-y:auto}.centre__seal{width:72px;height:72px;border-radius:50%}.centre h1{color:var(--app-structure);font-size:var(--la-fs-xl);margin:0}.centre p{color:var(--app-caption);font-size:var(--la-fs-sm);max-width:32ch;margin:0}.btn{border:none;border-radius:8px;padding:12px 20px;font-size:var(--la-fs-md);cursor:pointer;background:var(--app-structure);color:#fff}.btn--ghost{background:transparent;color:var(--app-structure);border:1px solid var(--app-structure)}.runlist{width:100%;max-width:360px;display:flex;flex-direction:column;gap:8px}.runitem{display:flex;align-items:center;gap:8px;border:1px solid var(--app-surface-muted);border-radius:8px;padding:8px 10px;background:var(--app-surface)}.runitem__open{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:none;border:none;padding:0;cursor:pointer;text-align:left;color:var(--app-text)}.runitem__name{font-weight:var(--la-fw-emph)}.runitem__meta{color:var(--app-caption);font-family:var(--la-font-mono);font-size:var(--la-fs-xs)}.runitem__actions{display:flex;gap:6px;flex:0 0 auto}.dialog{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#10233d73;display:flex;align-items:center;justify-content:center;padding:24px}.dialog__card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:12px;background:var(--app-surface);border:1px solid var(--app-surface-muted);border-radius:14px;padding:18px;box-shadow:0 12px 48px #10233d47}.dialog__title{font-size:var(--la-fs-lg);font-weight:var(--la-fw-head);color:var(--app-structure)}.dialog__card .dim{text-align:left}.dialog__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.newworld__name{width:100%;padding:10px 12px;border:1px solid var(--app-surface-muted);border-radius:8px;background:var(--app-surface);color:var(--app-text);font-family:var(--la-font-sans);font-size:var(--la-fs-md);text-align:center}.newworld__name::placeholder{color:var(--app-caption)}.newworld__name:focus{outline:none;border-color:var(--app-structure)}.chip{border:1px solid var(--app-surface-muted);background:transparent;color:var(--app-text);border-radius:6px;padding:5px 9px;font-size:var(--la-fs-xs);cursor:pointer;white-space:nowrap}.chip:hover{border-color:var(--app-structure)}.chip[aria-pressed=true]{background:var(--app-structure);color:#fff;border-color:var(--app-structure)}.chip--danger{border-color:var(--bad);color:var(--bad)}.msg{color:var(--bad);font-size:var(--la-fs-sm)}.dim{color:var(--app-caption);font-size:var(--la-fs-sm)}.codex{display:flex;flex-direction:column;height:100%;overflow:hidden}.codex__body{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:14px}.codex__intro{display:flex;flex-direction:column;gap:8px}.codex__intro p{margin:0;text-align:left}.codex__name{font-size:var(--la-fs-lg);font-weight:var(--la-fw-head);color:var(--app-structure)}.codex__invented{color:var(--app-insight);font-weight:var(--la-fw-emph)}.codex__filters{display:flex;gap:6px}.codex__list{display:flex;flex-direction:column;gap:8px}.param{border:1px solid var(--app-surface-muted);border-radius:8px;padding:10px;background:var(--app-surface)}.param--invented{border-left:3px solid var(--app-insight)}.param__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.param__key{font-family:var(--la-font-mono);font-size:var(--la-fs-sm);font-weight:var(--la-fw-emph);color:var(--app-text);word-break:break-word}.param__val{margin-top:4px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.param__num{font-family:var(--la-font-mono);font-size:var(--la-fs-md);color:var(--app-structure)}.param__units{color:var(--app-caption);font-size:var(--la-fs-xs)}.param__range{color:var(--app-caption);font-family:var(--la-font-mono);font-size:var(--la-fs-xs);margin-left:auto}.param__desc{margin-top:6px;font-size:var(--la-fs-sm)}.param__meta{margin-top:6px;font-size:var(--la-fs-xs);color:var(--app-caption)}.prov{font-size:10px;padding:2px 8px;border-radius:999px;white-space:nowrap;font-weight:var(--la-fw-emph);flex:0 0 auto}.prov--cited{background:var(--app-structure);color:#fff}.prov--estimated{background:var(--app-historical);color:var(--app-text)}.prov--invented{background:var(--app-insight);color:#fff}.param--changed{border-left:3px solid var(--app-insight)}.param__input{width:130px;font-family:var(--la-font-mono);font-size:var(--la-fs-md);color:var(--app-structure);background:var(--app-surface);border:1px solid var(--app-surface-muted);border-radius:6px;padding:4px 8px}.param--changed .param__input{border-color:var(--app-insight);color:var(--app-insight)}.param__was{color:var(--app-caption);font-size:var(--la-fs-xs);text-decoration:line-through}.codex__fork{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:10px 12px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--app-surface-muted);background:var(--app-surface)}.codex__forkcount{margin-right:auto;color:var(--app-insight);font-weight:var(--la-fw-emph);font-size:var(--la-fs-sm)}@media (min-width: 1024px){body{background:var(--app-surface-muted)}#app{max-width:min(1440px,94vw);height:calc(100dvh - 32px);max-height:none;margin:16px auto;background:var(--la-surface);border:1px solid var(--app-surface-muted);border-radius:12px;box-shadow:0 8px 40px #10233d1f}.lens{padding:22px 28px;gap:18px}.lens:has(.hero){display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-auto-rows:min-content;align-content:start;column-gap:24px}.lens:has(.hero)>.lens__head{grid-column:1 / -1}.lens:has(.hero)>.hero{grid-column:1}.lens:has(.hero)>:not(.hero):not(.lens__head){grid-column:2}.pulse{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.centre{gap:20px}.centre p{max-width:56ch}.runlist{max-width:560px}.codex__body{padding:20px 28px}.codex__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:10px}}.layergroups{display:flex;gap:6px}.layerchips{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.chip--sm{padding:3px 8px;font-size:11px}.chip:disabled{opacity:.4;cursor:not-allowed}.landlegend{display:flex;align-items:center;gap:8px;margin-top:8px;font-family:var(--la-font-mono);font-size:var(--la-fs-xs);color:var(--app-caption)}.landlegend__ramp{flex:1;height:8px;border-radius:4px;background:linear-gradient(to right,var(--chart-seq-1),var(--chart-seq-3),var(--chart-seq-6))}.timesplit{display:flex;width:100%;height:22px;border-radius:6px;overflow:hidden;margin-top:8px;border:1px solid var(--app-surface-muted)}.timesplit__seg{height:100%}.timesplit__legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:var(--la-fs-xs);color:var(--app-caption)}.timesplit__legend span{display:inline-flex;align-items:center;gap:5px}.timesplit__legend i{width:10px;height:10px;border-radius:2px;display:inline-block}:root{--ec-bg: var(--la-bg, #FBF9F6);--ec-surface: var(--la-surface, #FFFFFF);--ec-text: var(--la-text, #242B33);--ec-border: var(--la-border, #D4DAE1);--ec-navy: var(--la-blue, #163B66);--ec-accent: var(--la-orange, #E67E22);--ec-caption: var(--la-caption, #5C6B7C)}.ec{min-height:100vh;background:var(--ec-bg);color:var(--ec-text);font-family:var(--la-font-sans, "IBM Plex Sans", system-ui, sans-serif)}.ec__top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--ec-border);background:var(--ec-surface)}.ec__brand{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--ec-navy)}.ec__mark{height:28px;width:auto}.ec__link{background:none;border:none;color:var(--ec-caption);cursor:pointer;font:inherit;padding:6px 8px}.ec__link:hover{color:var(--ec-accent)}.ec__main{max-width:860px;margin:0 auto;padding:20px 16px;display:flex;flex-direction:column;gap:18px}.ec__main--run{max-width:900px}.ec__panel{background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:10px;padding:16px}.ec__panel h2{margin:0 0 6px;font-size:1.05rem;color:var(--ec-navy)}.ec__dim{color:var(--ec-caption);margin:4px 0}.ec__bad{color:#b23b3b}.ec__row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px}.ec__row select,.ec__row input{padding:8px 10px;border:1px solid var(--ec-border);border-radius:8px;font:inherit;background:var(--ec-bg);color:var(--ec-text);min-height:40px}.ec__row input{flex:1 1 160px}.ec__btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid var(--ec-border);background:var(--ec-surface);color:var(--ec-text);font:inherit;cursor:pointer;min-height:40px}.ec__btn:hover:not(:disabled){border-color:var(--ec-navy)}.ec__btn--primary{background:var(--ec-navy);color:#fff;border-color:var(--ec-navy)}.ec__btn--primary:hover:not(:disabled){background:#1d4c80}.ec__btn:disabled{opacity:.5;cursor:default}.ec__bicon{width:18px;height:18px;filter:brightness(0) invert(1)}.ec__btn:not(.ec__btn--primary) .ec__bicon{filter:none}.ec__runs{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.ec__runs li{display:flex;align-items:center;gap:8px}.ec__runopen{flex:1;text-align:left;background:var(--ec-bg);border:1px solid var(--ec-border);border-radius:8px;padding:10px 12px;cursor:pointer;font:inherit;color:var(--ec-text)}.ec__runopen:hover{border-color:var(--ec-navy)}.ec__runhead{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.ec__title{font-weight:600;color:var(--ec-navy)}.ec__stats{margin-left:auto;display:flex;gap:14px;font-family:var(--la-font-mono, "IBM Plex Mono", monospace);font-size:.85rem;color:var(--ec-caption)}.ec__stats b{color:var(--ec-text)}.ec__layout{display:flex;gap:14px;align-items:flex-start}.ec__left{flex:1 1 auto;min-width:0}.ec__side{flex:0 0 340px;display:flex;flex-direction:column;gap:10px;background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:12px;padding:12px}@media (max-width: 860px){.ec__layout{flex-direction:column}.ec__side{flex-basis:auto;width:100%}}.ec__zoombar{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ec__canvas{background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:12px;overflow:auto;max-height:64vh}.ec__canvas svg{display:block;max-width:none}.ec__sh{margin:2px 0 4px;font-size:.9rem;color:var(--ec-navy)}.ec__scroll{max-height:34vh;overflow:auto}.ec__vtable{width:100%;border-collapse:collapse;font-size:.8rem;font-family:var(--la-font-mono, monospace)}.ec__vtable td{padding:3px 6px;border-bottom:1px solid var(--ec-border);vertical-align:middle}.ec__num{text-align:right;color:var(--ec-text);white-space:nowrap}.ec__vrow{cursor:pointer}.ec__vrow:hover td{background:var(--ec-bg)}.ec__spark{width:120px;height:26px}.ec__spark polyline{fill:none;stroke:var(--ec-navy);stroke-width:1.4;vector-effect:non-scaling-stroke}.ec__edge line{stroke:var(--ec-border);stroke-width:1.6}.ec__arrow{fill:var(--ec-caption)}.ec__edgelabel{fill:var(--ec-caption);font-size:10px;text-anchor:middle;font-family:var(--la-font-mono, monospace)}.ec__node{cursor:pointer}.ec__node circle{fill:var(--ec-surface);stroke:var(--ec-navy);stroke-width:1.6}.ec__node--on circle{stroke:var(--ec-accent);stroke-width:2.6}.ec__nodelabel{text-anchor:middle;font-size:11px;fill:var(--ec-text);font-weight:500}.ec__fields,.ec__stocks{display:flex;flex-wrap:wrap;gap:8px}.ec__detail{background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:10px;padding:12px}.ec__chip{font-family:var(--la-font-mono, monospace);font-size:.82rem;background:var(--ec-bg);border:1px solid var(--ec-border);border-radius:6px;padding:3px 8px}.ec__dock{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:10px;position:sticky;bottom:calc(env(safe-area-inset-bottom,0px) + 8px)}.ec__speeds{display:flex;gap:4px}.ec__spd{min-width:44px;min-height:40px;border:1px solid var(--ec-border);background:var(--ec-surface);border-radius:8px;cursor:pointer;font:inherit;color:var(--ec-text);font-family:var(--la-font-mono, monospace)}.ec__spd--on{background:var(--ec-navy);color:#fff;border-color:var(--ec-navy)}.ec__spd:disabled{opacity:.5;cursor:default}.ec__name{width:100%;padding:8px 10px;border:1px solid var(--ec-border);border-radius:8px;font:inherit;background:var(--ec-bg);color:var(--ec-text);min-height:40px;margin-bottom:10px}.ec__palette{display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:10px;padding:10px}.ec__chipbtn{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;border:1px solid var(--ec-border);background:var(--ec-bg);color:var(--ec-text);font:inherit;cursor:pointer}.ec__chipbtn:hover{border-color:var(--ec-navy)}.ec__chipbtn .ec__bicon{filter:none;width:16px;height:16px}.ec__hint{flex-basis:100%}.ec__btn--danger{border-color:#c98b8b;color:#9a2f2f}.ec__btn--danger:hover:not(:disabled){background:#fbeaea;border-color:#9a2f2f}.ec__sublabel{margin:8px 0 2px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ec-caption)}.ec__numedit{width:100%;padding:4px 6px;border:1px solid var(--ec-border);border-radius:6px;font:inherit;font-family:var(--la-font-mono, monospace);font-size:.8rem;background:var(--ec-bg);color:var(--ec-text)}.ec__numedit:focus{outline:none;border-color:var(--ec-accent)}.ec__eq{border:1px solid var(--ec-border);border-radius:8px;padding:6px 8px;margin-top:6px}.ec__eqhead{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.82rem;font-weight:500}.ec__eqhead select{padding:3px 6px;border:1px solid var(--ec-border);border-radius:6px;font:inherit;font-size:.78rem;background:var(--ec-bg);color:var(--ec-text)}.ec__node--from circle{stroke:var(--ec-accent);stroke-dasharray:4 3;stroke-width:2.4}.ec__edge{cursor:pointer}.ec__edge--on line{stroke:var(--ec-accent);stroke-width:2.6}.authgate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--la-bg, #FBF9F6);color:var(--la-text, #242B33);font-family:var(--la-font-sans, "IBM Plex Sans", system-ui, sans-serif)}.authgate__card{width:100%;max-width:420px;background:var(--la-surface, #FFFFFF);border:1px solid var(--la-border, #D4DAE1);border-radius:12px;padding:28px 24px;text-align:center;box-shadow:0 1px 2px #163b660f,0 8px 24px #163b6614}.authgate__brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:14px}.authgate__seal{height:36px;width:36px}.authgate__title{font-size:var(--la-fs-xl, 1.4rem);font-weight:600;color:var(--la-primary, #163B66);letter-spacing:.01em}.authgate__h{font-size:var(--la-fs-lg, 1.1rem);font-weight:600;color:var(--la-text, #242B33);margin:6px 0 10px;text-wrap:balance}.authgate__dim{color:var(--la-caption, #5C6B7C);margin:8px 0 16px;line-height:1.5}.authgate__bad{color:#b3261e;margin:10px 0}.authgate__form{display:flex;flex-direction:column;gap:10px;margin:4px 0 14px;text-align:left}.authgate__form input,.authgate__form textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--la-border, #D4DAE1);border-radius:8px;font:inherit;color:inherit;background:var(--la-bg, #FBF9F6)}.authgate__form textarea{resize:vertical}.authgate__btn{display:inline-block;padding:10px 18px;border-radius:8px;border:1px solid var(--la-border, #D4DAE1);background:var(--la-surface, #FFFFFF);color:var(--la-text, #242B33);font:inherit;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease}.authgate__btn:hover{border-color:var(--la-primary, #163B66)}.authgate__btn:disabled{opacity:.5;cursor:default}.authgate__btn--primary{background:var(--la-accent, #E67E22);border-color:var(--la-accent, #E67E22);color:#fff}.authgate__btn--primary:hover{background:var(--la-accent-hover, #D06A12);border-color:var(--la-accent-hover, #D06A12)}.authgate__btn--ghost{background:transparent;border-color:transparent;color:var(--la-caption, #5C6B7C);margin-top:12px}.authgate__btn+.authgate__btn{margin-left:8px}
