:root{--paper:#f4f2ec;--panel:#fbfaf6;--line:#d8d3c6;--ink:#1c1a16;--muted:#5b5648;--faint:#6f695f;--fainter:#746e63;--hair:#ece8dd;--hair2:#ddd7c9;--field:#ffffff;--chip:#efece3;--selbg:#f3f0e7;--accent:#a31f34;--node-bg:#f7f5ef;--node-grid:rgba(28,26,22,.07);--node-link:rgba(28,26,22,.14);--node-link-strong:rgba(28,26,22,.24);--node-card-bg:rgba(251,250,246,.88);--font-futura:Futura,"Futura PT","Avenir Next",Avenir,"Century Gothic",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-family:var(--font-futura)}*{box-sizing:border-box}body,html{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-futura);font-weight:300}.seo-prerender{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button,input,textarea{font:inherit}a{color:inherit}.c11-app{min-height:100vh;background:var(--paper);color:var(--ink)}.c11-app.dark{--paper:#131217;--panel:#1c1b22;--line:#2b2933;--ink:#f2efe8;--muted:#aaa49a;--faint:#817b72;--fainter:#6f6a5f;--hair:#302d36;--hair2:#494552;--field:#1c1b22;--chip:#26242e;--selbg:#24212b;--accent:#ef6178;--node-bg:#050505;--node-grid:rgba(255,255,255,.06);--node-link:rgba(255,255,255,.12);--node-link-strong:rgba(255,255,255,.22);--node-card-bg:rgba(5,5,5,.76)}.page{max-width:min(1760px,calc(100vw - 48px));margin:0 auto;padding:32px clamp(18px,2.6vw,42px) 56px}.hero{justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:26px}.hero,.hero-heading-row{display:flex;align-items:flex-end;flex-wrap:wrap}.hero-heading-row{position:relative;gap:8px}.hero-title-inner{display:inline}.hero-title .hero-controls-toggle:not(.hero-controls-toggle--mobile){display:inline-flex;vertical-align:middle;margin-left:0;margin-bottom:0}.hero-about-panel,.hero-title-actions{display:none}.hero-controls-toggle{align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;padding:0;border:1px solid var(--hair2);border-radius:3px;background:var(--panel);color:var(--muted);cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease}.hero-controls-toggle span{display:block;font-size:14px;line-height:1;transition:transform .18s ease}.hero-controls-toggle:hover{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 36%,var(--hair2))}.hero-controls-toggle[aria-expanded=true]:not(.hero-about-toggle) span{transform:rotate(180deg)}.hero-about-toggle[aria-expanded=true]{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 36%,var(--hair2))}.hero-controls-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero-controls-toggle--mobile{width:auto;height:auto;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--faint)}.hero-controls-toggle--mobile span{font-size:9px;line-height:1}.hero-controls-toggle--mobile:hover{background:transparent;color:var(--ink)}.hero-mobile-theme-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:90;min-width:120px;padding:6px;background:var(--field);border:1px solid var(--hair2);border-radius:5px;box-shadow:0 16px 44px rgba(0,0,0,.18)}.hero-mobile-theme-menu.is-open{display:block}.hero-mobile-title-actions{display:inline;white-space:nowrap}.hero-mobile-title-actions .hero-controls-toggle--mobile,.hero-mobile-title-actions .hero-mobile-theme-option--inline{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.hero-mobile-title-actions .hero-controls-toggle--mobile{margin-left:8px}.hero-mobile-title-actions .hero-mobile-theme-option--inline{margin-left:4px;width:auto;min-width:0;min-height:17px;height:17px;padding:0 2px;border:0;background:transparent;color:var(--faint);font-family:var(--font-futura);font-size:9px;font-weight:700;letter-spacing:.03em;line-height:1;border-radius:0;cursor:pointer}.hero-mobile-title-actions .hero-mobile-theme-option--inline:hover{color:var(--ink);background:transparent}.hero-mobile-theme-option{width:100%;min-height:32px}@media (min-width:701px){.hero{position:relative;align-items:flex-start}.hero-heading-row{align-items:center}.hero-title-actions{display:inline-flex;align-items:center;gap:6px;margin-left:calc(.18em + 10px);vertical-align:middle}.hero-title .hero-controls-toggle:not(.hero-controls-toggle--mobile){width:.434em;height:.434em;min-width:18px;min-height:18px;margin-left:0;vertical-align:middle}.hero-title .hero-controls-toggle:not(.hero-controls-toggle--mobile) span{font-size:.224em}.hero-title .hero-about-toggle{transition:color .18s ease,border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.hero-title .hero-about-toggle:hover{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 48%,var(--hair2));background:color-mix(in srgb,var(--panel) 78%,var(--accent) 22%);transform:translateY(-1px);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 18%,transparent)}.hero-title .hero-about-toggle:active{transform:translateY(0);box-shadow:none}.hero-title .hero-about-toggle span{font-family:var(--font-futura);font-size:.2em;font-weight:700;font-style:italic;line-height:1;text-transform:lowercase}.hero-about-panel{display:grid;grid-gap:8px;gap:8px;width:100%;margin-left:0;padding:14px 16px;border:1px solid var(--hair2);border-radius:5px;background:var(--panel);box-shadow:0 16px 44px rgba(0,0,0,.2);text-align:left;transform-origin:top right;animation:hero-about-in .48s cubic-bezier(.22,1,.36,1) both;transition:border-color .2s ease,box-shadow .2s ease}.hero-about-panel:hover{border-color:color-mix(in srgb,var(--accent) 34%,var(--hair2));box-shadow:0 18px 48px rgba(0,0,0,.24),0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}.hero-about-panel>*{animation:hero-about-item-in .42s cubic-bezier(.22,1,.36,1) both}.hero-about-panel>:first-child{animation-delay:.08s}.hero-about-panel>:nth-child(2){animation-delay:.16s}@keyframes hero-about-in{0%{opacity:0;transform:translateY(-10px) scale(.97);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes hero-about-item-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero-about-panel,.hero-about-panel>*{animation:none;filter:none;transform:none}.hero-title .hero-about-toggle:hover{transform:none;box-shadow:none}}.hero-about-body{margin:0;font-size:12px;line-height:1.4;color:var(--muted)}.hero-about-meta{margin:0;font-size:12px;line-height:1.35;color:var(--faint)}.hero-about-footer{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-top:2px}.hero-about-meta strong{color:var(--ink);font-weight:700}.hero-about-meta a{color:var(--ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--hair2) 80%,transparent);transition:color .16s ease,border-color .16s ease}.hero-about-meta a:hover{color:var(--accent);border-bottom-color:var(--accent)}.header-controls-slot--hero{display:none;position:absolute;top:0;right:0;z-index:90;min-width:min(100%,520px)}.header-controls-slot--hero.is-open{display:block}.header-controls-slot--hero.is-open:has(.hero-about-panel){position:relative;top:auto;right:auto;z-index:1;flex:1 1 560px;width:min(920px,100%);min-width:min(560px,100%);max-width:920px;align-self:flex-start}.header-controls-slot--hero.is-open .actions{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}}.eyebrow{margin:0 0 8px;color:var(--accent);font-family:var(--font-futura);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}h1,h2,p{margin:0}h1{font-family:var(--font-futura);font-size:clamp(30px,4vw,46px);line-height:1.02;font-weight:800}.hero-title{min-height:1.02em}h2{font-family:var(--font-futura);font-size:21px;line-height:1.05;font-weight:700}.sub{margin-top:5px;color:var(--muted);font-size:14px;font-weight:300}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.btn,.mini-btn{border:1px solid var(--hair2);background:var(--panel);color:var(--ink);border-radius:3px;min-height:36px;padding:0 13px;cursor:pointer;font-family:var(--font-futura);font-size:11px;letter-spacing:.04em;font-weight:700;text-decoration:none}.hero-theme-toggle{display:none}.mini-btn{min-height:28px;padding:0 9px;font-size:12px;color:var(--muted)}.seg{display:flex;gap:3px;padding:3px;background:var(--selbg);border:1px solid var(--hair2);border-radius:3px;min-height:36px}.seg button{min-width:76px;border:0;border-radius:2px;cursor:pointer;color:var(--muted);background:transparent;font-family:var(--font-futura);font-size:11px;letter-spacing:.04em;font-weight:700}.seg button.on{background:var(--field);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}.year-inputs.header-years{display:flex;align-items:center;gap:8px}.header-years label{display:flex;align-items:center;gap:6px;color:var(--muted);font-family:var(--font-futura);font-size:11px;letter-spacing:.04em;font-weight:700}.header-years input[type=number]{width:76px;min-height:36px;border:1px solid var(--hair2);background:var(--field);color:var(--ink);border-radius:3px;padding:0 8px;font-size:12px;font-family:var(--font-futura);font-weight:700}.header-course{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;letter-spacing:.04em}.header-course,.header-course select{font-family:var(--font-futura);font-weight:700}.header-course select{min-height:36px;max-width:min(340px,46vw);border:1px solid var(--hair2);background:var(--field);color:var(--ink);border-radius:3px;padding:0 28px 0 10px;font-size:12px}.stats{position:relative;z-index:50;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-bottom:24px;overflow:visible}.stat{min-height:140px;padding:27.4px 25.4px;background:var(--panel);border:1px solid var(--line);border-radius:4px;box-sizing:border-box}.stat-action{position:relative;display:block;width:100%;border:0;color:var(--ink);text-align:left;cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.stat-action:has(.stat-menu){z-index:60}.stat-action:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--panel) 86%,var(--accent) 14%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent)}.stat-action:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.stat-sparkline{display:block;width:100%;height:61px;overflow:visible;opacity:0;animation:stat-sparkline-reveal .4s ease forwards;animation-delay:calc(var(--stat-reveal-delay, 0s) + 70ms)}.stat-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(86px,44%);grid-gap:15.2px;gap:15.2px;align-items:end;margin-top:9.1px}.stat-copy{display:grid;grid-gap:6.1px;gap:6.1px;min-width:0}.stat-label{display:block;color:var(--faint);font-family:var(--font-futura);font-size:11.5px;line-height:1.25;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.stat-value{font-size:26.4px;line-height:1;font-weight:100;letter-spacing:-.01em;transform:translateY(6px);animation:stat-value-reveal .48s ease forwards;animation-delay:var(--stat-reveal-delay,0s)}.stat-detail,.stat-value{display:block;font-family:var(--font-futura);opacity:0}.stat-detail{color:var(--faint);font-size:13.9px;font-weight:600;letter-spacing:.02em;animation:stat-value-reveal .48s ease forwards;animation-delay:calc(var(--stat-reveal-delay, 0s) + 90ms)}@keyframes stat-value-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes stat-sparkline-reveal{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.stat-detail,.stat-sparkline,.stat-value{animation:none;opacity:1;transform:none}}.stat-sparkline-line{stroke:var(--spark-accent,var(--accent));stroke-linecap:round;stroke-linejoin:round}.stat-sparkline-area{opacity:0}.stat-sparkline-hatch{stroke:var(--spark-accent,var(--accent));opacity:.62}.stat-menu{position:absolute;z-index:70;top:calc(100% + 8px);left:14px;min-width:min(320px,calc(100vw - 48px));display:grid;grid-gap:2px;gap:2px;padding:6px;background:var(--field);border:1px solid var(--hair2);border-radius:5px;box-shadow:0 16px 44px rgba(0,0,0,.18)}.stat-menu-right{left:auto;right:14px}.stat-menu button{width:100%;border:0;border-radius:3px;background:transparent;color:var(--ink);text-align:left;padding:8px 9px;cursor:pointer;font-size:12px;font-family:var(--font-futura);font-weight:500}.stat-menu button.active,.stat-menu button:hover{background:var(--selbg);color:var(--accent)}.layout{position:relative;z-index:1;display:grid;grid-template-columns:clamp(310px,23vw,390px) minmax(0,1fr);grid-template-rows:auto;grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:visible;transition:grid-template-columns .38s cubic-bezier(.22,1,.36,1),gap .28s ease}.layout.sidebar-collapsed{overflow:hidden}.layout.sidebar-collapsed,.layout.themes-panel-collapsed{grid-template-columns:0 minmax(0,1fr);gap:0}.layout.themes-panel-collapsed .layout-sidebar{opacity:0;pointer-events:none;overflow:hidden}.panel{background:var(--panel)}.layout-sidebar{grid-column:1;grid-row:1/-1;min-width:0;min-height:0;align-self:stretch;display:flex;flex-direction:column;overflow:hidden;transition:opacity .28s ease,height .38s cubic-bezier(.22,1,.36,1)}.layout-sidebar>.atlas-reveal,.layout-sidebar>.atlas-skeleton-sidebar{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.controls,.layout-sidebar .controls{flex:1 1 auto;min-height:0;overflow-y:auto}.controls{min-width:0;padding:32px 26px;overscroll-behavior:contain;transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .24s ease}.layout-main{grid-column:2;grid-row:1;position:relative;flex-direction:column;overflow:hidden;background:var(--panel);transition:height .38s cubic-bezier(.22,1,.36,1)}.layout-chart,.layout-main{min-width:0;min-height:0;display:flex}.layout-chart{flex:1 1 auto;flex-direction:column}.layout-chart>.atlas-reveal,.layout-chart>.atlas-skeleton-chart,.layout-chart>.chart-stage{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.chart-stage-pane{display:none;flex:1 1 auto;min-height:0;flex-direction:column;overflow:hidden}.chart-stage-pane.is-active{display:flex;min-height:480px}.chart-stage--map{animation:none;opacity:1;transform:none}.layout-main:has(.chart-stage--map){transition:none}.layout:has(.chart-stage--map){align-items:stretch}.layout:has(.chart-stage--map) .layout-sidebar{align-self:stretch;height:auto;max-height:none}.layout:has(.chart-stage--map) .layout-main{height:auto;min-height:480px}.layout.has-scrub .layout-chart{min-height:0}.layout.has-scrub.has-lifecycle-detail .layout-chart{flex:0 0 auto;overflow:visible}.layout.has-scrub.has-lifecycle-detail .lifecycle-panel:not(.lifecycle-panel--leadlag){flex:0 0 auto}.layout.has-scrub.has-lifecycle-detail .lifecycle-panel:not(.lifecycle-panel--leadlag) .lifecycle-landscape{flex:0 0 auto;min-height:260px;max-height:var(--lifecycle-landscape-max-h)}.layout.has-scrub.has-lifecycle-detail .lifecycle-detail{flex:0 0 auto;gap:20px;padding-top:20px;padding-bottom:20px}.layout.has-lifecycle-detail .layout-scrub{padding-top:24px}.layout.has-scrub .layout-chart:has(.lifecycle-panel:not(.lifecycle-panel--leadlag))+.layout-scrub{margin-top:0;padding-top:31px;padding-bottom:20px}.layout-scrub{flex:0 0 auto;margin:0;padding:16px 24px 20px;border-top:1px solid var(--line);background:var(--panel)}.header-controls-slot--scrub{display:none}.layout.sidebar-collapsed .controls{transform:translateX(-105%);opacity:0;pointer-events:none}.section+.section{margin-top:32px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.section-title{font-size:14px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.section-head .section-title{margin-bottom:0}.section-head button.section-title{color:var(--muted);-moz-appearance:none;appearance:none;-webkit-appearance:none}.section-head button.section-title,.section-title-button{border:0;background:transparent;padding:0;text-align:left}.section-title-button{cursor:pointer}.section-title-button:hover{color:var(--accent)}.lifecycle-theme-head{flex:1 1;min-width:0}.lifecycle-section-head{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}.lifecycle-section-head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.lifecycle-section-title{flex:1 1;min-width:0;margin-bottom:0;line-height:1.35;letter-spacing:.1em;font-size:12px;white-space:normal;word-break:normal;overflow-wrap:break-word}.section-head:has(.lifecycle-section-head){align-items:flex-start}.lifecycle-sidebar-note{margin:0;font-size:11px;line-height:1.35;color:var(--faint)}.sidebar-panel-toggle{position:relative;flex-shrink:0;width:26px;height:26px;border:1px solid var(--hair2);border-radius:3px;background:var(--field);color:var(--muted);cursor:pointer;display:inline-flex;padding:0;font-size:18px;transition:color .16s ease,border-color .16s ease,background .16s ease}.sidebar-panel-toggle,.sidebar-panel-toggle span{align-items:center;justify-content:center;line-height:1}.sidebar-panel-toggle span{position:absolute;inset:0;display:flex;transform:translate(.5px,-.5px)}.sidebar-panel-toggle:hover{color:var(--ink);border-color:var(--accent);background:var(--selbg)}.lifecycle-sidebar-reopen{position:absolute;left:0;top:72px;z-index:4;border:1px solid var(--line);border-left:0;border-radius:0 4px 4px 0;background:var(--panel);color:var(--muted);cursor:pointer;padding:8px 10px 8px 8px;font-family:var(--font-futura);font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);transition:color .16s ease,border-color .16s ease,background .16s ease}.lifecycle-sidebar-reopen:hover{color:var(--accent);background:var(--selbg)}@media (min-width:981px){.layout.themes-panel-collapsed .layout-main .lifecycle-sidebar-reopen{left:0;right:auto;transform:translateX(-100%) rotate(180deg);border-left:1px solid var(--line);border-right:0;border-radius:4px 0 0 4px}}.theme-head-actions{display:flex;align-items:center;gap:8px}.lens-section-head{position:relative;align-items:flex-start;flex-wrap:wrap}.lens-title-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.lens-title-toggle:hover{color:var(--accent)}.lens-title-chevron{font-size:10px;line-height:1;color:var(--faint)}.lens-menu{position:absolute;z-index:70;top:calc(100% + 6px);left:0;right:0;display:grid;grid-gap:2px;gap:2px;padding:6px;background:var(--field);border:1px solid var(--hair2);border-radius:5px;box-shadow:0 16px 44px rgba(0,0,0,.18)}.lens-menu button{width:100%;border:0;border-radius:3px;background:transparent;color:var(--ink);text-align:left;padding:8px 9px;cursor:pointer;font-size:12px;font-family:var(--font-futura);font-weight:500}.lens-menu button.active,.lens-menu button:hover{background:var(--selbg);color:var(--accent)}.lens-menu-top{margin-top:2px;border-top:1px solid var(--hair2)!important;border-radius:0 0 3px 3px!important;font-weight:700!important;letter-spacing:.06em;text-transform:uppercase;font-size:10px!important}.lens-select{display:flex;align-items:center;gap:6px;min-height:28px}.lens-select span{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.lens-select select{min-height:28px;max-width:111px;border:1px solid var(--hair2);border-radius:3px;background:var(--field);color:var(--ink);padding:0 24px 0 8px;font-size:10px;font-weight:800;letter-spacing:.04em}.checks{display:grid;grid-gap:4px;gap:4px}.check{display:grid;grid-template-columns:24px 1fr auto;grid-gap:12px;gap:12px;align-items:center;color:var(--ink);font-size:13px;font-weight:800;min-height:40px;border-radius:5px;padding:7px 10px;cursor:pointer}.check.on{background:var(--selbg)}.check:not(.on){color:var(--faint)}.theme-check{transition:opacity .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.theme-check.focus{background:color-mix(in srgb,var(--theme) 16%,var(--field));box-shadow:inset 0 0 0 2px var(--theme);transform:translateX(2px);color:var(--ink)}.theme-check.dim{opacity:.34}.lifecycle-tech-row{width:100%;border:1px solid transparent;background:transparent;text-align:left;font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.lifecycle-tech-row.selected{background:color-mix(in srgb,var(--theme) 18%,var(--field));border-color:color-mix(in srgb,var(--theme) 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--theme) 35%,transparent);color:var(--ink);opacity:1}.lifecycle-tech-row.dim{opacity:.38}.lifecycle-tech-row.dim:hover{opacity:.72}.lifecycle-tech-swatch{width:14px;height:14px;border:2px solid var(--theme,var(--hair2));border-radius:3px;background:color-mix(in srgb,var(--theme) 28%,transparent)}.lifecycle-tech-row.selected .lifecycle-tech-swatch{background:var(--theme,var(--accent));border-color:var(--theme,var(--accent));box-shadow:0 0 0 2px color-mix(in srgb,var(--theme) 24%,transparent)}.check input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border:2px solid var(--theme,var(--hair2));border-radius:3px;margin:0;background:transparent}.check input:checked{background:var(--theme,var(--accent));border-color:var(--theme,var(--accent))}.check small{color:var(--faint);font-family:var(--font-futura);font-size:10.5px;font-weight:700}.course-check{font-size:13px;font-weight:700;min-height:34px}.chart-panel{padding:22px 24px 10px;position:relative;min-width:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.layout.has-scrub .layout-chart:has(.chart-panel){flex:0 0 auto}.layout.has-scrub .chart-panel{flex:0 0 auto;padding-bottom:8px}.layout.has-scrub .chart-panel svg{flex:0 0 auto;width:100%;aspect-ratio:1000/430;min-height:280px;height:auto}.layout.has-scrub{--lifecycle-landscape-max-h:400px}.layout.has-scrub.themes-panel-collapsed{--lifecycle-landscape-max-h:460px}.layout.has-scrub.has-lifecycle-detail{--lifecycle-landscape-max-h:340px}.layout.has-scrub.has-lifecycle-detail.themes-panel-collapsed{--lifecycle-landscape-max-h:380px}.layout.has-scrub .lifecycle-panel:not(.lifecycle-panel--leadlag){flex:0 0 auto;min-height:0;display:flex;flex-direction:column;margin-bottom:0}.layout.has-scrub .lifecycle-panel:not(.lifecycle-panel--leadlag) .lifecycle-landscape{flex:0 0 auto;width:100%;aspect-ratio:1000/430;height:auto;min-height:280px;max-height:var(--lifecycle-landscape-max-h);overflow:visible;transition:max-height .38s cubic-bezier(.22,1,.36,1)}.layout.has-scrub:not(.has-lifecycle-detail) .layout-chart:has(.lifecycle-panel:not(.lifecycle-panel--leadlag)){flex:0 0 auto}.view-head{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:12px 16px;padding:18px 24px 16px;background:var(--panel);border-bottom:1px solid var(--line)}.view-head-toggles{margin-left:auto}.view-head-classifier-row,.view-head-toggles{display:flex;align-items:center;gap:8px;flex-shrink:0}.themes-panel-reopen{width:28px;min-width:28px;height:32px;min-height:32px;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);cursor:pointer;font-family:var(--font-futura);font-size:18px;font-weight:700;line-height:1;display:grid;place-items:center;transition:color .16s ease}.themes-panel-reopen:hover{color:var(--accent);background:transparent}.themes-panel-reopen span{display:block;transform:translateX(-1px)}.view-toggle-divider{width:1px;height:20px;background:var(--hair2);flex-shrink:0}.classifier-toggle-stack{display:flex;flex-direction:column;gap:0;min-width:0;flex:1 1}.classifier-mode-note{display:none}.view-toggle{display:flex;gap:3px;padding:3px;background:var(--selbg);border:1px solid var(--hair2);border-radius:3px;min-height:32px}.lifecycle-subtoggle button{min-width:72px}.view-toggle button{min-width:62px;border:0;border-radius:2px;cursor:pointer;color:var(--muted);background:transparent;font-family:var(--font-futura);font-size:11px;letter-spacing:.04em;font-weight:700}.view-toggle button.on{background:var(--field);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}.view-toggle button.ai-read-tab-nudge{animation:ai-read-tab-nudge 1.8s ease-in-out infinite;color:#ca8a04;box-shadow:0 0 0 2px color-mix(in srgb,#eab308 42%,transparent)}@keyframes ai-read-tab-nudge{0%,to{color:#ca8a04;box-shadow:0 0 0 2px color-mix(in srgb,#eab308 38%,transparent)}50%{color:#eab308;box-shadow:0 0 0 3px color-mix(in srgb,#eab308 55%,transparent),0 0 14px color-mix(in srgb,#eab308 28%,transparent)}}@media (prefers-reduced-motion:reduce){.view-toggle button.ai-read-tab-nudge{animation:none;color:#ca8a04}}.view-toggle button.ai-read-pulse.on{animation:ai-read-tab-pulse 1.8s ease-in-out infinite}@keyframes ai-read-tab-pulse{0%,to{color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}50%{color:#ca8a04;box-shadow:0 0 0 2px color-mix(in srgb,#eab308 42%,transparent),0 1px 2px rgba(0,0,0,.12)}}@media (prefers-reduced-motion:reduce){.view-toggle button.ai-read-pulse.on{animation:none;color:#ca8a04}}.chart-head .classifier-delta-badge{margin:10px 0 0;font-family:var(--font-futura);font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--muted);line-height:1.45}.chart-head .classifier-coverage-warning{margin:8px 0 0;font-size:12px;line-height:1.45;color:#ca8a04}.chart-head .classifier-coverage-warning strong{font-weight:700}.classifier-delta-badge strong,.classifier-delta-theme{font-weight:800;color:var(--ink)}.classifier-delta-side.is-active strong{color:var(--ink)}.classifier-delta-ai.is-active strong{color:#ca8a04}.classifier-delta-ai.is-active{animation:ai-read-text-pulse 1.8s ease-in-out infinite}@keyframes ai-read-text-pulse{0%,to{color:var(--muted)}50%{color:#ca8a04}}@media (prefers-reduced-motion:reduce){.classifier-delta-ai.is-active{animation:none;color:#ca8a04}}.view-select{display:flex;align-items:center;position:relative}.view-select select{min-height:32px;min-width:118px;border:1px solid var(--hair2);background:var(--field);color:var(--ink);border-radius:3px;padding:0 33px 0 10px;font-family:var(--font-futura);font-size:11px;letter-spacing:.04em;font-weight:700;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.view-select:after{content:"";position:absolute;right:13px;top:50%;width:7px;height:7px;pointer-events:none;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:translateY(-70%) rotate(45deg)}.chart-head{display:grid;grid-template-columns:1fr auto;grid-gap:20px;gap:20px;margin-bottom:10px}.chart-head-view-toggle{display:none}.chart-stage,.chart-stage-shell{position:relative;flex:1 1 auto;min-height:0}.chart-stage-shell{display:flex;flex-direction:column}.chart-stage-shell>.chart-stage-pane.is-active{flex:1 1 auto;min-height:0}.chart-view-overlays{position:absolute;inset:0;z-index:4;pointer-events:none}.chart-view-overlays>*{pointer-events:auto}.chart-svg-wrap{position:relative;width:100%}.ai-read-chart-callout{position:absolute;top:14%;left:56%;transform:translateX(-50%);z-index:3;width:min(248px,calc(100% - 28px));padding:11px 14px;border:1px solid color-mix(in srgb,#eab308 48%,var(--hair2));border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,#eab308 12%);box-shadow:0 0 0 1px color-mix(in srgb,#eab308 22%,transparent),0 0 18px color-mix(in srgb,#eab308 38%,transparent),0 0 42px color-mix(in srgb,#eab308 20%,transparent),0 10px 28px rgba(0,0,0,.24);animation:ai-read-callout-in .45s ease-out both,ai-read-callout-halo 2.2s ease-in-out infinite;animation-delay:.18s,.55s}@keyframes ai-read-callout-in{0%{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes ai-read-callout-halo{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,#eab308 22%,transparent),0 0 18px color-mix(in srgb,#eab308 34%,transparent),0 0 42px color-mix(in srgb,#eab308 16%,transparent),0 10px 28px rgba(0,0,0,.24)}50%{box-shadow:0 0 0 1px color-mix(in srgb,#eab308 42%,transparent),0 0 28px color-mix(in srgb,#eab308 52%,transparent),0 0 56px color-mix(in srgb,#eab308 28%,transparent),0 10px 28px rgba(0,0,0,.24)}}@media (prefers-reduced-motion:reduce){.ai-read-chart-callout{animation:none;box-shadow:0 0 0 1px color-mix(in srgb,#eab308 30%,transparent),0 0 22px color-mix(in srgb,#eab308 40%,transparent),0 10px 28px rgba(0,0,0,.24)}}.ai-read-chart-callout-kicker{margin:0 0 4px;font-family:var(--font-futura);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ca8a04}.ai-read-chart-callout-body{margin:0;font-size:11px;line-height:1.4;color:var(--ink)}.emergent-chart-callout{position:absolute;top:14%;left:56%;transform:translateX(-50%);z-index:3;width:min(248px,calc(100% - 28px));padding:11px 14px;border:1px solid color-mix(in srgb,#2dd4bf 48%,var(--hair2));border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,#2dd4bf 12%);box-shadow:0 0 0 1px color-mix(in srgb,#2dd4bf 22%,transparent),0 0 18px color-mix(in srgb,#2dd4bf 38%,transparent),0 0 42px color-mix(in srgb,#2dd4bf 20%,transparent),0 10px 28px rgba(0,0,0,.24);animation:emergent-callout-in .45s ease-out both,emergent-callout-halo 2.2s ease-in-out infinite;animation-delay:.18s,.55s}@keyframes emergent-callout-in{0%{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes emergent-callout-halo{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,#2dd4bf 22%,transparent),0 0 18px color-mix(in srgb,#2dd4bf 34%,transparent),0 0 42px color-mix(in srgb,#2dd4bf 16%,transparent),0 10px 28px rgba(0,0,0,.24)}50%{box-shadow:0 0 0 1px color-mix(in srgb,#2dd4bf 42%,transparent),0 0 28px color-mix(in srgb,#2dd4bf 52%,transparent),0 0 56px color-mix(in srgb,#2dd4bf 28%,transparent),0 10px 28px rgba(0,0,0,.24)}}@media (prefers-reduced-motion:reduce){.emergent-chart-callout{animation:none;box-shadow:0 0 0 1px color-mix(in srgb,#2dd4bf 30%,transparent),0 0 22px color-mix(in srgb,#2dd4bf 40%,transparent),0 10px 28px rgba(0,0,0,.24)}}.emergent-chart-callout-kicker{margin:0 0 4px;font-family:var(--font-futura);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#0d9488}.c11-app.dark .emergent-chart-callout-kicker{color:#2dd4bf}.emergent-chart-callout-body{margin:0;font-size:11px;line-height:1.4;color:var(--ink)}.keyword-chart-callout{--keyword-callout-shift:-150px;position:absolute;top:14%;left:48%;transform:translateX(calc(-50% + var(--keyword-callout-shift)));z-index:3;width:min(248px,calc(100% - 28px));padding:11px 14px;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--hair2));border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,var(--accent) 12%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 0 18px color-mix(in srgb,var(--accent) 34%,transparent),0 0 42px color-mix(in srgb,var(--accent) 18%,transparent),0 10px 28px rgba(0,0,0,.24);animation:keyword-callout-in .45s ease-out both,keyword-callout-halo 2.2s ease-in-out infinite;animation-delay:.18s,.55s}@keyframes keyword-callout-in{0%{opacity:0;transform:translateX(calc(-50% + var(--keyword-callout-shift, -150px))) translateY(8px)}to{opacity:1;transform:translateX(calc(-50% + var(--keyword-callout-shift, -150px))) translateY(0)}}@keyframes keyword-callout-halo{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 0 18px color-mix(in srgb,var(--accent) 30%,transparent),0 0 42px color-mix(in srgb,var(--accent) 14%,transparent),0 10px 28px rgba(0,0,0,.24)}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent),0 0 28px color-mix(in srgb,var(--accent) 46%,transparent),0 0 56px color-mix(in srgb,var(--accent) 24%,transparent),0 10px 28px rgba(0,0,0,.24)}}@keyframes keyword-callout-halo-mobile{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 0 10px color-mix(in srgb,var(--accent) 24%,transparent),0 0 22px color-mix(in srgb,var(--accent) 10%,transparent),0 6px 16px rgba(0,0,0,.2)}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 34%,transparent),0 0 14px color-mix(in srgb,var(--accent) 32%,transparent),0 0 28px color-mix(in srgb,var(--accent) 14%,transparent),0 6px 16px rgba(0,0,0,.2)}}@media (prefers-reduced-motion:reduce){.keyword-chart-callout{animation:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent),0 0 22px color-mix(in srgb,var(--accent) 36%,transparent),0 10px 28px rgba(0,0,0,.24)}}.keyword-chart-callout-kicker{margin:0 0 4px;font-family:var(--font-futura);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.keyword-chart-callout-body{margin:0;font-size:11px;line-height:1.4;color:var(--ink)}.keyword-chart-legend{position:absolute;z-index:3;width:min(220px,calc(100% - 24px));padding:8px 10px 10px;border:1px solid color-mix(in srgb,var(--hair2) 72%,var(--accent) 28%);border-radius:6px;background:color-mix(in srgb,var(--panel) 92%,var(--accent) 8%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent),0 8px 24px rgba(0,0,0,.22);transform:none;animation:keyword-legend-in .4s ease-out both}@keyframes keyword-legend-in{0%{opacity:0}to{opacity:1}}.keyword-chart-legend-head{display:grid;grid-template-columns:18px 1fr 20px;align-items:center;grid-gap:6px;gap:6px;margin-bottom:6px}.keyword-chart-legend-handle{width:18px;height:18px;padding:0;border:0;border-radius:3px;background:transparent;color:var(--muted);cursor:-webkit-grab;cursor:grab;touch-action:none;display:inline-flex;align-items:center;justify-content:center}.keyword-chart-legend-handle span{width:10px;height:10px;background:radial-gradient(circle,currentColor 1.1px,transparent 1.2px) 0 0 /5px 5px}.keyword-chart-legend-handle:hover{color:var(--ink);background:color-mix(in srgb,var(--hair) 70%,transparent)}.keyword-chart-legend-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.keyword-chart-legend-dismiss{position:static;width:20px;height:20px;padding:0;border:0;border-radius:3px;background:transparent;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;transition:color .16s ease,background .16s ease}.keyword-chart-legend-dismiss:hover{color:var(--ink);background:color-mix(in srgb,var(--hair) 70%,transparent)}.keyword-chart-legend-kicker{margin:0;font-family:var(--font-futura);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.keyword-chart-legend-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.keyword-chart-legend-list li{margin:0;padding:0}.keyword-chart-legend-item{display:grid;grid-template-columns:10px 1fr;grid-gap:8px;gap:8px;align-items:center;width:100%;min-width:0;padding:4px 5px;border:0;border-radius:3px;background:transparent;text-align:left;cursor:pointer;transition:opacity .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.keyword-chart-legend-item.is-focused{background:color-mix(in srgb,var(--theme) 16%,var(--field));box-shadow:inset 0 0 0 2px var(--theme);transform:translateX(2px)}.keyword-chart-legend-item.is-dimmed{opacity:.34}.keyword-chart-legend-item:hover:not(.is-focused){background:color-mix(in srgb,var(--hair) 55%,transparent)}.keyword-chart-legend-expand{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;margin-top:4px;padding:2px 0 0;border:0;border-top:1px solid var(--hair);background:transparent;color:var(--muted);font-size:10px;line-height:1;cursor:pointer;transition:color .16s ease,background .16s ease}.keyword-chart-legend-expand:hover{color:var(--ink);background:color-mix(in srgb,var(--hair) 45%,transparent)}.keyword-chart-legend-expand-count{font-size:8px;font-weight:700;letter-spacing:.04em}.keyword-chart-legend-swatch{width:10px;height:10px;border-radius:2px;box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 10%,transparent)}.keyword-chart-legend-label{font-size:10px;line-height:1.25;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.keyword-chart-legend--dock{position:static;z-index:auto;width:auto;flex-shrink:0;margin:12px 0 2px;padding:12px 0 8px;border:0;border-top:1px solid var(--hair);background:transparent;transform:none;animation:none;box-shadow:none}.keyword-chart-legend--dock .keyword-chart-legend-head{grid-template-columns:1fr;margin-bottom:10px}.keyword-chart-legend--dock .keyword-chart-legend-kicker{font-size:10px;letter-spacing:.14em}.keyword-chart-legend--dock .keyword-chart-legend-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px 14px;gap:8px 14px}.keyword-chart-legend--dock .keyword-chart-legend-item{grid-template-columns:9px 1fr;gap:8px;padding:3px 0;transition:opacity .18s ease}.keyword-chart-legend--dock .keyword-chart-legend-swatch{width:9px;height:9px}.keyword-chart-legend--dock .keyword-chart-legend-label{font-size:11px;line-height:1.3}.keyword-chart-legend--dock .keyword-chart-legend-item.is-focused{background:transparent;box-shadow:none;transform:none}.keyword-chart-legend--dock .keyword-chart-legend-item.is-focused .keyword-chart-legend-label{font-weight:700;color:var(--ink)}.keyword-chart-legend--dock .keyword-chart-legend-item:hover:not(.is-focused){background:transparent}.keyword-chart-legend--dock .keyword-chart-legend-expand{margin-top:10px;padding:10px 0 2px;background:transparent}.keyword-chart-legend--dock .keyword-chart-legend-expand:hover{background:transparent}.keyword-chart-legend--dock .keyword-chart-legend-expand-count{font-size:9px}@media (prefers-reduced-motion:reduce){.keyword-chart-legend{animation:none}}.chart-svg{touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:-webkit-grab;cursor:grab}.chart-svg.is-panning{cursor:-webkit-grabbing;cursor:grabbing}.chart-svg.is-y-dragging,.chart-y-axis-hit{cursor:ns-resize}svg{width:100%;display:block;overflow:visible}.axis-text{fill:var(--faint);font-weight:700;font-family:Futura,Futura PT,Avenir Next,Avenir,Century Gothic,sans-serif}.grid{stroke:var(--hair);stroke-width:1}.grid-x{stroke:color-mix(in srgb,var(--hair) 62%,transparent);stroke-width:1}.axis{stroke:var(--hair2);stroke-width:1.2}.year-hit{cursor:pointer}.theme-line{transition:opacity .18s ease,stroke-width .18s ease}.theme-line-future{stroke:var(--faint);stroke-width:1.1;pointer-events:none}.theme-line-hit{cursor:pointer}.theme-line-head,.theme-line-pulse{pointer-events:none}.theme-line-pulse{transform-box:fill-box;transform-origin:center}.theme-line-pulse-ring{fill:none;stroke:var(--theme);stroke-width:1.5;animation:theme-line-pulse-ring 1.75s ease-out infinite;animation-delay:var(--pulse-delay,0s)}.theme-line-pulse-glow{fill:color-mix(in srgb,var(--theme) 30%,transparent);stroke:none;animation:theme-line-pulse-glow 1.75s ease-in-out infinite;animation-delay:var(--pulse-delay,0s)}.theme-line-pulse-core{stroke:color-mix(in srgb,var(--theme) 75%,white);stroke-width:1.1}@keyframes theme-line-pulse-ring{0%{transform:scale(1);opacity:.78}72%{transform:scale(2.35);opacity:.05}to{transform:scale(2.35);opacity:0}}@keyframes theme-line-pulse-glow{0%,to{transform:scale(1.18);opacity:.36}50%{transform:scale(1.62);opacity:.1}}@media (prefers-reduced-motion:reduce){.theme-line-pulse-glow,.theme-line-pulse-ring{animation:none;opacity:.28;transform:none}}.theme-line--caption-focus{animation:theme-line-caption-pulse 1s ease-in-out infinite;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--theme) 70%,transparent))}.theme-line-head--caption-focus .theme-line-pulse-glow,.theme-line-head--caption-focus .theme-line-pulse-ring{animation-duration:1s}@keyframes theme-line-caption-pulse{0%,to{opacity:1}50%{opacity:.72}}@media (prefers-reduced-motion:reduce){.theme-line--caption-focus{animation:none;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--theme) 55%,transparent))}}.theme-lines-halo{pointer-events:none}.theme-line-halo{fill:none;stroke:var(--theme);stroke-width:9;stroke-linejoin:round;stroke-linecap:round;filter:url(#theme-line-halo-blur);opacity:.32;animation:theme-line-halo-in 1s ease-out both;animation-delay:var(--halo-delay,0s)}.theme-line-end-halo{transform-box:fill-box;transform-origin:center;pointer-events:none}.theme-line-end-halo-glow{fill:color-mix(in srgb,var(--theme) 34%,transparent);stroke:none;animation:theme-line-end-halo-glow 2.4s ease-in-out infinite;animation-delay:var(--halo-delay,0s)}.theme-line-end-halo-ring{fill:none;stroke:var(--theme);stroke-width:1.3;opacity:.55;animation:theme-line-end-halo-ring 2.4s ease-out infinite;animation-delay:var(--halo-delay,0s)}@keyframes theme-line-halo-in{0%{opacity:0;stroke-width:4}to{opacity:.32;stroke-width:9}}@keyframes theme-line-end-halo-ring{0%{transform:scale(1);opacity:.62}72%{transform:scale(2.1);opacity:.06}to{transform:scale(2.1);opacity:0}}@keyframes theme-line-end-halo-glow{0%,to{transform:scale(1.12);opacity:.34}50%{transform:scale(1.48);opacity:.12}}@media (prefers-reduced-motion:reduce){.theme-line-halo{animation:none;opacity:.24}.theme-line-end-halo-glow,.theme-line-end-halo-ring{animation:none;opacity:.28;transform:none}}.focus-badge rect{fill:color-mix(in srgb,var(--theme) 88%,black 12%);stroke:color-mix(in srgb,var(--theme) 70%,white 30%);stroke-width:1;filter:drop-shadow(0 7px 14px rgba(0,0,0,.22))}.focus-badge circle{fill:white;opacity:.95}.focus-badge text{fill:white;font-family:var(--font-futura);font-weight:900;letter-spacing:.02em}.peak-yoy-badge{animation:peak-yoy-badge-in .28s ease-out both}.peak-yoy-badge-halo{fill:color-mix(in srgb,var(--theme) 14%,transparent);stroke:var(--theme);pointer-events:none}.peak-yoy-badge-halo-glow{stroke-width:1;opacity:.22;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--theme) 42%,transparent));animation:peak-yoy-badge-halo-glow 2.2s ease-in-out infinite}.peak-yoy-badge-halo-ring{fill:none;stroke-width:1.25;opacity:.42;animation:peak-yoy-badge-halo-ring 2.2s ease-out infinite}.peak-yoy-badge-body{fill:color-mix(in srgb,var(--theme) 16%,var(--panel));stroke:color-mix(in srgb,var(--theme) 58%,transparent);stroke-width:1;filter:drop-shadow(0 4px 10px rgba(0,0,0,.16))}@keyframes peak-yoy-badge-halo-glow{0%,to{opacity:.16}50%{opacity:.34}}@keyframes peak-yoy-badge-halo-ring{0%{opacity:.4}70%{opacity:.1}to{opacity:0}}@keyframes peak-yoy-badge-in{0%{opacity:0}to{opacity:1}}.peak-yoy-badge text{fill:var(--theme);font-family:var(--font-futura);font-weight:800;letter-spacing:.04em}@media (max-width:700px){.focus-badge rect{stroke-width:1.25}.peak-yoy-badge-body{stroke-width:1.15}}@media (prefers-reduced-motion:reduce){.peak-yoy-badge{animation:none}.peak-yoy-badge-halo-glow,.peak-yoy-badge-halo-ring{animation:none;opacity:.24}}.progress-label text{font-family:var(--font-futura);font-weight:800;paint-order:stroke;stroke:var(--panel);stroke-linejoin:round}.scrubber{margin:53px 24px 0}.layout-scrub .scrubber{margin:0}.scrubber{--scrub-accent:var(--accent)}.scrub-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.scrub-title-row{display:flex;align-items:center;gap:12px;min-width:0}.scrub-range,.scrub-title{font-family:var(--font-futura);font-weight:700;letter-spacing:.11em;text-transform:uppercase}.scrub-title{font-size:11px;color:var(--muted)}.scrub-range{font-size:22px;color:var(--scrub-accent);white-space:nowrap;transition:color .22s ease}.scrub-playback{display:flex;align-items:center;gap:6px}.scrub-playback-caption{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--scrub-accent) 48%,var(--hair2));border-radius:4px;background:color-mix(in srgb,var(--panel) 72%,var(--scrub-accent) 28%);box-shadow:0 0 0 1px color-mix(in srgb,var(--scrub-accent) 16%,transparent);transition:background .22s ease,border-color .22s ease,box-shadow .22s ease;animation:scrub-playback-caption-in .34s ease-out both}.scrub-playback-caption-year{flex:0 0 auto;font-family:var(--font-futura);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--scrub-accent)}.scrub-playback-caption-text{min-width:0;font-family:var(--font-futura);font-size:14px;font-weight:500;line-height:1.35;color:var(--ink)}@keyframes scrub-playback-caption-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.playback-caption-badge{animation:playback-caption-badge-in .28s ease-out both}.playback-caption-badge-line{stroke:var(--caption-accent,var(--accent));stroke-width:1.25;stroke-dasharray:3 4;opacity:.72}.playback-caption-badge-body{fill:color-mix(in srgb,var(--panel) 88%,var(--caption-accent,var(--accent)) 12%);stroke:color-mix(in srgb,var(--caption-accent,var(--accent)) 55%,var(--hair2));stroke-width:1;filter:drop-shadow(0 6px 14px rgba(0,0,0,.22))}.playback-caption-badge-year{fill:var(--caption-accent,var(--accent));font-family:var(--font-futura);font-weight:800;letter-spacing:.04em}.playback-caption-badge-text{fill:var(--ink);font-family:var(--font-futura);font-weight:600;letter-spacing:.01em}.playback-caption-callout{--caption-accent:var(--accent);position:absolute;top:12%;left:50%;transform:translateX(-50%);z-index:5;width:min(140px,calc(100% - 48px));padding:7px 9px;border:1px solid color-mix(in srgb,var(--caption-accent) 48%,var(--hair2));border-radius:5px;background:color-mix(in srgb,var(--panel) 88%,var(--caption-accent) 12%);box-shadow:0 0 0 1px color-mix(in srgb,var(--caption-accent) 22%,transparent),0 0 12px color-mix(in srgb,var(--caption-accent) 28%,transparent),0 0 24px color-mix(in srgb,var(--caption-accent) 14%,transparent),0 6px 16px rgba(0,0,0,.22);pointer-events:none;animation:playback-caption-callout-in .28s ease-out both,playback-caption-callout-halo 2.2s ease-in-out infinite;animation-delay:0s,.3s}.playback-caption-callout-kicker{margin:0 0 3px;font-family:var(--font-futura);font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--caption-accent)}.playback-caption-callout-body{margin:0;font-family:var(--font-futura);font-size:11px;font-weight:600;line-height:1.3;color:var(--ink)}@keyframes playback-caption-badge-in{0%{opacity:0}to{opacity:1}}@keyframes playback-caption-callout-in{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes playback-caption-callout-halo{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,var(--caption-accent) 22%,transparent),0 0 12px color-mix(in srgb,var(--caption-accent) 24%,transparent),0 0 24px color-mix(in srgb,var(--caption-accent) 10%,transparent),0 6px 16px rgba(0,0,0,.22)}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--caption-accent) 40%,transparent),0 0 18px color-mix(in srgb,var(--caption-accent) 40%,transparent),0 0 32px color-mix(in srgb,var(--caption-accent) 16%,transparent),0 6px 16px rgba(0,0,0,.22)}}@media (prefers-reduced-motion:reduce){.playback-caption-badge,.scrub-playback-caption{animation:none}.playback-caption-callout{animation:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--caption-accent) 30%,transparent),0 0 16px color-mix(in srgb,var(--caption-accent) 28%,transparent),0 6px 16px rgba(0,0,0,.22)}}.scrub-circle{width:30px;height:30px;border:1px solid var(--hair2);border-radius:50%;background:var(--field);color:var(--ink);display:grid;place-items:center;cursor:pointer;font-family:var(--font-futura);font-size:11px;font-weight:800;line-height:1;transition:transform .16s ease,border-color .16s ease,background .16s ease}.scrub-circle:hover{transform:translateY(-1px);border-color:var(--scrub-accent)}.scrub-circle.is-playing{background:var(--scrub-accent);border-color:var(--scrub-accent);color:white}.scrub-track{position:relative;height:86px;border:1px solid var(--hair2);border-radius:5px;background:var(--chip);overflow:visible;cursor:crosshair;touch-action:none}.scrub-track svg{position:absolute;inset:0;width:100%;height:100%;-webkit-clip-path:inset(0 round 5px);clip-path:inset(0 round 5px)}.scrub-bar{fill:color-mix(in srgb,var(--muted) 42%,transparent)}.scrub-selection{top:0;bottom:0;background:color-mix(in srgb,var(--scrub-accent) 24%,transparent);border-left:2px solid var(--scrub-accent);border-right:2px solid var(--scrub-accent);transition:background .22s ease,border-color .22s ease}.scrub-handle,.scrub-selection{position:absolute;pointer-events:none}.scrub-handle{top:-1px;width:14px;height:calc(100% + 2px);border:0;border-radius:4px;background:var(--scrub-accent);cursor:ew-resize;display:flex;align-items:center;justify-content:center;gap:2px;padding:0;transform:translateX(-50%);transition:background .22s ease,box-shadow .22s ease}.scrub-handle span{width:1.5px;height:14px;background:rgba(255,255,255,.7);border-radius:2px}.scrub-handle.playback-handle{box-shadow:0 0 0 5px color-mix(in srgb,var(--scrub-accent) 18%,transparent)}.scrub-ticks{display:flex;justify-content:space-between;margin-top:6px;padding:0 16px 4px;font-family:var(--font-futura);color:var(--fainter);font-size:11px;font-weight:500}.map-panel{position:relative;flex:1 1 auto;min-height:360px;height:100%;overflow:hidden}.map-canvas-wrap{position:absolute;inset:0}.map-canvas,.map-fallback{width:100%;height:100%;background:var(--chip)}.map-fallback{position:absolute;inset:0;background:linear-gradient(color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px),radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 48%),var(--chip);background-size:80px 80px,80px 80px,auto,auto}.map-marker-anchor{position:relative;width:var(--size);height:var(--size)}.map-marker-anchor.selected{z-index:5}.map-marker{position:absolute;width:var(--size);height:var(--size);min-width:var(--size);border:1px solid color-mix(in srgb,var(--marker,var(--accent)) 72%,white 28%);border-radius:50%;background:color-mix(in srgb,var(--marker,var(--accent)) 82%,transparent);color:white;display:grid;place-items:center;font-family:var(--font-futura);font-size:9px;font-weight:800;line-height:1;padding:0;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.22),0 0 34px color-mix(in srgb,var(--marker,var(--accent)) 34%,transparent);transform:translate(-50%,-50%);transition:transform .16s ease,filter .16s ease}.map-marker-count{position:relative;z-index:1}.map-marker-badge{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) translateY(4px);width:max-content;max-width:180px;border:1px solid color-mix(in srgb,var(--marker,var(--accent)) 72%,white 28%);border-radius:4px;background:color-mix(in srgb,var(--marker,var(--accent)) 88%,black 12%);color:white;padding:5px 8px;font-size:10px;font-weight:900;letter-spacing:.04em;line-height:1;opacity:0;pointer-events:none;box-shadow:0 10px 26px rgba(0,0,0,.22);transition:opacity .16s ease,transform .16s ease}.map-marker.selected .map-marker-badge{opacity:1;transform:translateX(-50%) translateY(0)}.map-marker:hover{transform:translate(-50%,-50%) scale(1.12);filter:brightness(1.08)}.map-marker.selected{z-index:5;transform:translate(-50%,-50%) scale(1.18);box-shadow:0 10px 34px rgba(0,0,0,.28),0 0 0 5px color-mix(in srgb,var(--marker,var(--accent)) 28%,transparent),0 0 42px color-mix(in srgb,var(--marker,var(--accent)) 42%,transparent)}.map-marker.dim{opacity:.18;filter:grayscale(.45)}.map-marker-anchor .map-marker{inset:0;width:100%;height:100%;min-width:0;transform:none}.map-marker-anchor .map-marker:hover{transform:scale(1.12)}.map-marker-anchor .map-marker.selected{transform:scale(1.18)}.map-kicker{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.place-panel h2{font-size:28px;line-height:1.05;margin-bottom:8px}.place-category{margin-top:14px;border:1px solid color-mix(in srgb,var(--theme) 42%,var(--hair2));border-radius:5px;padding:10px 11px;background:color-mix(in srgb,var(--theme) 13%,var(--field))}.place-category span{display:block;color:var(--theme);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.place-category strong{display:block;margin-top:4px;color:var(--ink);font-size:13px;line-height:1.25}.place-breakdown{display:grid;grid-gap:6px;gap:6px;margin-top:10px}.place-breakdown div{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;align-items:center;border-left:3px solid var(--theme);padding:5px 0 5px 8px}.place-breakdown span{color:var(--muted);font-size:11px;font-weight:700;line-height:1.2}.place-breakdown strong{color:var(--ink);font-size:11px;font-weight:800}.place-samples{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.place-samples a{display:grid;grid-template-columns:44px 1fr;grid-gap:10px;gap:10px;color:var(--ink);text-decoration:none;font-size:12px;line-height:1.3;font-weight:500;padding-top:10px;border-top:1px solid var(--hair)}.place-samples span{color:var(--accent);font-weight:800}.node-panel{padding:22px 24px;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.node-head{display:grid;grid-template-columns:1fr auto;grid-gap:20px;gap:20px;margin-bottom:12px;flex:0 0 auto}.node-stage{position:relative;flex:1 1 auto;min-height:360px;border:1px solid var(--hair2);border-radius:5px;overflow:hidden;background:radial-gradient(circle at 48% 45%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 42%),linear-gradient(var(--node-grid) 1px,transparent 1px),linear-gradient(90deg,var(--node-grid) 1px,transparent 1px),var(--node-bg);background-size:auto,58px 58px,58px 58px,auto;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.node-stage--3d{min-height:560px}.node-stage--3d,.node-stage--3d.is-light{background:var(--panel)}.node-stage--3d canvas{display:block;width:100%!important;height:100%!important}.node-stage--3d .graph-tooltip{font-family:var(--font-futura);font-size:12px;font-weight:600;line-height:1.35;letter-spacing:.01em;color:#f7f4ef;background:rgba(8,8,10,.92);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:4px;padding:8px 10px;white-space:pre-line;box-shadow:0 10px 28px rgba(0,0,0,.35);pointer-events:none}.node-label-layer{inset:0;z-index:3;overflow:hidden}.node-fg-label,.node-label-layer{position:absolute;pointer-events:none}.node-fg-label{top:0;left:0;font-family:var(--font-futura),"Futura","Avenir Next",sans-serif;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.02em;color:#f7f4ef;background:rgba(8,8,10,.9);border:1px solid rgba(255,255,255,.22);border-radius:4px;padding:4px 8px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:0 6px 18px rgba(0,0,0,.45);will-change:transform}.node-fg-label.is-theme{font-size:13px;font-weight:800;padding:5px 9px}.node-fg-label.is-thesis{font-size:11px;font-weight:600;max-width:240px;white-space:normal;line-height:1.25}.node-head-meta{color:var(--muted);font-weight:600;font-size:.92em}.node-fg-label.is-light,.node-stage--3d.is-light .node-fg-label{color:#111111;background:rgba(255,255,255,.94);border-color:rgba(0,0,0,.16);box-shadow:0 6px 18px rgba(0,0,0,.12)}.node-stage svg{width:100%;height:100%;min-height:360px}.node-tools{position:absolute;z-index:4;right:14px;top:14px;display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--hair2);border-radius:999px;background:var(--node-card-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 12px 34px rgba(0,0,0,.12)}.node-tools button{min-width:28px;height:28px;border:0;border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;font-size:11px;font-weight:900}.node-tools button:hover{background:var(--selbg)}.node-tools span{min-width:44px;color:var(--muted);text-align:center;font-size:10px;font-weight:900;letter-spacing:.06em}.node-link{stroke:var(--node-link);stroke-linecap:round}.node-link.strong{stroke:var(--node-link-strong)}.node-item{cursor:-webkit-grab;cursor:grab;transition:opacity .16s ease}.node-item:active{cursor:-webkit-grabbing;cursor:grabbing}.node-item circle{fill:color-mix(in srgb,var(--theme) 72%,transparent);stroke:color-mix(in srgb,var(--theme) 58%,var(--field) 42%);stroke-width:1.2;filter:drop-shadow(0 8px 18px rgba(0,0,0,.22));transition:r .16s ease,stroke-width .16s ease,opacity .16s ease}.node-item.theme circle{fill:color-mix(in srgb,var(--theme) 58%,transparent);stroke-width:2}.node-item text{fill:color-mix(in srgb,var(--theme) 56%,var(--ink) 44%);font-family:var(--font-futura);font-size:12px;font-weight:900;paint-order:stroke;stroke:var(--node-bg);stroke-width:4px;stroke-linejoin:round}.node-item.theme text{font-size:14px}.node-item.focus circle,.node-item.selected circle{stroke-width:3;filter:drop-shadow(0 0 16px color-mix(in srgb,var(--theme) 64%,transparent))}.node-item.dim{opacity:.18}.node-detail-panel{border-bottom:1px solid var(--hair);padding-bottom:24px}.node-detail-panel h2{margin-top:6px;font-size:26px;line-height:1.05}.ai-panel{min-height:360px;flex:1 1 auto;display:grid;grid-template-columns:minmax(220px,.42fr) minmax(0,1fr);grid-gap:1px;gap:1px;background:var(--line);border-top:1px solid var(--line)}.ai-chat,.ai-rail{background:var(--panel)}.ai-rail{padding:32px 28px}.ai-kicker{margin-bottom:10px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ai-sub{margin-top:10px;color:var(--muted);font-size:13px;line-height:1.45;font-weight:300}.ai-context{display:grid;grid-gap:8px;gap:8px;margin-top:24px}.ai-context span{width:-moz-fit-content;width:fit-content;border:1px solid var(--hair2);border-radius:999px;padding:6px 10px;color:var(--muted);background:var(--field);font-size:11px;font-weight:700;letter-spacing:.04em}.ai-chat{display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-width:0;padding:24px}.ai-messages{min-height:390px;max-height:455px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding-right:4px}.ai-empty{max-width:520px;margin:auto;text-align:center;color:var(--muted)}.ai-empty strong{display:block;color:var(--ink);font-size:18px;line-height:1.2}.ai-empty span{display:block;margin-top:8px;font-size:13px;line-height:1.45;font-weight:300}.ai-message{max-width:min(680px,92%);border:1px solid var(--hair2);border-radius:8px;padding:12px 14px;background:var(--field);box-shadow:0 12px 32px rgba(0,0,0,.05)}.ai-message.user{align-self:flex-end;background:color-mix(in srgb,var(--accent) 12%,var(--field));border-color:color-mix(in srgb,var(--accent) 36%,var(--hair2))}.ai-message.assistant{align-self:flex-start}.ai-message span{display:block;margin-bottom:5px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ai-message p{white-space:pre-wrap;color:var(--ink);font-size:13px;line-height:1.45;font-weight:300}.ai-error{border:1px solid color-mix(in srgb,var(--accent) 44%,var(--hair2));background:color-mix(in srgb,var(--accent) 10%,var(--field));color:var(--accent);border-radius:5px;padding:10px 12px;font-size:12px;font-weight:700}.ai-suggestions{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 12px}.ai-suggestions button{border:1px solid var(--hair2);border-radius:999px;background:var(--field);color:var(--muted);cursor:pointer;padding:7px 10px;font-size:11px;font-weight:700;transition:transform .16s ease,border-color .16s ease,color .16s ease}.ai-suggestions button:hover{transform:translateY(-1px);border-color:var(--accent);color:var(--ink)}.ai-suggestions button:disabled{opacity:.5;cursor:default;transform:none}.ai-form{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-gap:10px;gap:10px;align-items:stretch}.ai-form textarea{resize:none;min-height:74px;border:1px solid var(--hair2);border-radius:7px;background:var(--field);color:var(--ink);padding:11px 12px;font-size:13px;line-height:1.4;font-weight:500;outline:none}.ai-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.ai-form button{border:1px solid var(--accent);border-radius:7px;background:var(--accent);color:white;cursor:pointer;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ai-form button:hover{filter:brightness(1.05)}.ai-md{color:var(--ink);font-size:14px;line-height:1.55;font-weight:300}.ai-md>:first-child{margin-top:0}.ai-md>:last-child{margin-bottom:0}.ai-md p{margin:0 0 10px;white-space:normal}.ai-md ol,.ai-md ul{margin:0 0 10px;padding-left:20px;display:grid;grid-gap:4px;gap:4px}.ai-md h1,.ai-md h2,.ai-md h3,.ai-md h4{margin:14px 0 6px;font-size:14px;font-weight:700;letter-spacing:.02em}.ai-md strong{font-weight:700}.ai-md a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.ai-md code{background:var(--chip);border:1px solid var(--hair);border-radius:4px;padding:1px 5px;font-size:12px}.ai-md pre{overflow-x:auto;background:var(--chip);border:1px solid var(--hair);border-radius:7px;padding:10px 12px}.ai-md pre code{background:none;border:0;padding:0}.ai-md blockquote{margin:0 0 10px;padding:2px 0 2px 12px;border-left:3px solid var(--accent);color:var(--muted)}.ai-message .ai-md{font-size:13px;line-height:1.45}.ai-screen{position:fixed;inset:0;z-index:120;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font-family:var(--font-futura)}.ai-screen-head{display:flex;align-items:center;gap:12px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.ai-screen-back{flex:none;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--hair2);border-radius:999px;background:var(--field);color:var(--ink);cursor:pointer;font-size:20px;line-height:1;padding-bottom:3px}.ai-screen-title{min-width:0;flex:1 1;display:grid;grid-gap:1px;gap:1px}.ai-screen-title strong{font-size:15px;font-weight:700;letter-spacing:.01em}.ai-screen-title span{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:.03em}.ai-screen-dot{flex:none;width:8px;height:8px;border-radius:999px;background:#3ba55d}.ai-screen-dot[data-busy]{background:var(--accent);animation:ai-dot-pulse 1s ease-in-out infinite}@keyframes ai-dot-pulse{50%{opacity:.35}}.ai-screen-scroll{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:12px;padding:18px 16px 12px;scroll-behavior:smooth}.ai-screen-empty{margin:auto;max-width:300px;text-align:center;display:grid;grid-gap:8px;gap:8px}.ai-screen-mark{margin:0 auto 4px;width:-moz-fit-content;width:fit-content;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--hair2));border-radius:999px;padding:5px 12px;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.ai-screen-empty strong{font-size:20px;line-height:1.25;font-weight:700}.ai-screen-empty span{color:var(--muted);font-size:13px;line-height:1.5;font-weight:300}.ai-bubble{max-width:88%}.ai-bubble p{margin:0;white-space:pre-wrap;font-size:14px;line-height:1.5}.ai-bubble.user{align-self:flex-end;background:color-mix(in srgb,var(--accent) 14%,var(--field));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--hair2));border-radius:18px 18px 4px 18px;padding:10px 14px;font-weight:500}.ai-bubble.assistant{align-self:flex-start;max-width:100%;padding:2px 2px 2px 0}.ai-thinking{display:inline-flex;gap:5px;padding:12px 4px}.ai-thinking span{width:7px;height:7px;border-radius:999px;background:var(--muted);animation:ai-think 1.2s ease-in-out infinite}.ai-thinking span:nth-child(2){animation-delay:.18s}.ai-thinking span:nth-child(3){animation-delay:.36s}@keyframes ai-think{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.ai-screen-foot{flex:none;border-top:1px solid var(--line);background:var(--paper);padding:10px 12px calc(10px + env(safe-area-inset-bottom));display:grid;grid-gap:8px;gap:8px}.ai-screen-chips{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.ai-screen-chips::-webkit-scrollbar{display:none}.ai-screen-chips button{flex:none;border:1px solid var(--hair2);border-radius:999px;background:var(--field);color:var(--muted);cursor:pointer;padding:8px 13px;font-size:12px;font-weight:600;white-space:nowrap}.ai-screen-chips button:active{border-color:var(--accent);color:var(--ink)}.ai-screen-composer{display:flex;align-items:flex-end;gap:8px;border:1px solid var(--hair2);border-radius:22px;background:var(--field);padding:6px 6px 6px 16px;transition:border-color .16s ease,box-shadow .16s ease}.ai-screen-composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.ai-screen-composer textarea{flex:1 1;min-width:0;border:0;outline:none;resize:none;background:transparent;color:var(--ink);font-size:16px;line-height:1.4;font-weight:400;padding:7px 0;max-height:120px}.ai-screen-composer textarea::placeholder{color:var(--faint)}.ai-send{flex:none;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:999px;background:var(--accent);color:#fff;cursor:pointer;transition:opacity .16s ease,transform .16s ease}.ai-send:disabled{opacity:.35;cursor:default}.ai-send:not(:disabled):active{transform:scale(.92)}.ai-send-arrow{font-size:18px;font-weight:700;line-height:1}.ai-send-stop{width:11px;height:11px;border-radius:2px;background:#fff}.ai-screen-note{margin:0;text-align:center;color:var(--fainter);font-size:10px;font-weight:500;letter-spacing:.04em}.lower{display:grid;grid-template-columns:1.55fr 1fr;grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:24px;border-radius:4px;overflow:hidden}.records{padding:24px 28px}.records-head{display:grid;grid-template-columns:1fr minmax(280px,420px);grid-gap:20px;gap:20px;align-items:end;margin-bottom:0;padding-bottom:18px;border-bottom:1px solid var(--line)}.records-head h2{margin:0 0 6px}.records-head .sub{margin:0;font-size:13px;line-height:1.45}input[type=search]{width:100%;min-height:43px;border:1px solid var(--hair2);background:var(--field);color:var(--ink);border-radius:5px;padding:0 12px;font-size:14px;font-weight:600}.record-list{max-height:480px;overflow:auto;padding-top:6px;padding-right:4px}.record{display:grid;grid-template-columns:44px minmax(0,1fr);grid-gap:16px;gap:16px;padding:18px 4px 20px;border-bottom:1px solid var(--hair)}.record:last-child{border-bottom:0;padding-bottom:8px}.year{font-size:12px;color:var(--accent);padding-top:3px}.title,.year{font-family:var(--font-futura);font-weight:700}.title{font-size:15px;line-height:1.3;color:var(--ink);text-decoration:none;display:inline-block}.title:hover{color:var(--accent)}.meta{color:var(--muted);font-size:11.5px;font-weight:400;line-height:1.45;margin-top:7px}.abstract{font-size:12.5px;line-height:1.52;margin-top:10px;max-width:72ch}.abstract,.more{color:var(--muted);font-weight:300}.more{font-size:12px;line-height:1.35;margin-top:5px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tag{font-family:var(--font-futura);font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:3px;color:var(--theme);background:color-mix(in srgb,var(--theme) 14%,transparent);border:1px solid color-mix(in srgb,var(--theme) 34%,transparent)}.defs{padding:24px 28px;max-height:580px;overflow-y:auto}.defs h2{margin:0 0 6px}.defs-intro{margin:0 0 18px;max-width:44ch;font-size:13px;line-height:1.5}.def-list{display:grid;grid-gap:0;gap:0}.def-row{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--hair);align-items:flex-start}.def-row--active{background:color-mix(in srgb,var(--theme) 10%,transparent);margin:0 -12px;padding-left:12px;padding-right:12px;border-radius:4px}.def-row:last-child{border-bottom:0;padding-bottom:4px}.def-bar{width:3px;border-radius:4px;flex-shrink:0;align-self:stretch;min-height:2.8em;background:var(--theme)}.def-copy{display:grid;grid-gap:5px;gap:5px;min-width:0}.def-name{font-family:var(--font-futura);font-size:14px;font-weight:700;line-height:1.25;color:var(--ink)}.def-desc{font-size:12px;color:var(--muted);line-height:1.5;font-weight:300}.def-pattern{font-family:var(--font-futura);font-size:10.5px;line-height:1.45;letter-spacing:.01em}.def-pattern,.source-note{color:var(--fainter);font-weight:300}.source-note{margin:22px 2px 0;font-size:12px;line-height:1.5}@media (min-width:1500px){.page{max-width:min(1880px,calc(100vw - 56px))}.chart-panel{padding-left:28px}.chart-panel,.layout-scrub,.view-head{padding-right:28px}.layout-scrub{padding-left:28px}.scrubber{margin-left:28px;margin-right:28px}.layout-scrub .scrubber{margin:0}}@media (max-width:980px){.page{max-width:100%;padding-left:14px;padding-right:14px}.layout,.lower,.records-head{grid-template-columns:minmax(0,1fr)}.layout{background:transparent;border:0;gap:14px;grid-template-rows:auto auto}.layout>.panel{border:1px solid var(--line);border-radius:4px}.layout-sidebar{grid-column:1;grid-row:2;overflow:visible;height:auto!important;align-self:start}.controls{max-height:408px;margin-bottom:0}.layout-main{grid-column:1;grid-row:1;border:1px solid var(--line);border-radius:4px 4px 0 0;height:auto!important}.layout-scrub{border-top:1px solid var(--line);border-radius:0;padding:16px 18px 18px}.layout.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.layout.sidebar-collapsed .layout-sidebar{max-height:0;overflow:hidden}.layout.sidebar-collapsed .controls{max-height:0;padding-top:0;padding-bottom:0;margin-bottom:0;border:0;overflow:hidden}.stats{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:19px}.stat{min-height:0;padding:16.8px 16px}.stat-main{gap:9.6px}.stat-value{font-size:17.6px}.stat-label{font-size:9px;letter-spacing:.1em;line-height:1.25}.stat-detail{font-size:10px}.stat-sparkline{height:40.8px}.actions{justify-content:flex-start}.chart-panel{border-bottom:0;border-radius:0}.scrubber{margin:0;padding:42px 18px 18px;background:var(--panel);border:0;border-radius:0}.layout-scrub .scrubber{margin:0}.lower{background:transparent;border:0;gap:14px}.defs,.records{border:1px solid var(--line);border-radius:4px}.keyword-chart-callout{--keyword-callout-shift:-30px;left:50%;width:min(186px,calc(75% - 28px));padding:8px 10px}.keyword-chart-callout-kicker{font-size:9px;margin-bottom:3px}.keyword-chart-callout-body{font-size:9px;line-height:1.35}.keyword-chart-legend{width:min(148px,calc(58% - 12px));padding:6px 7px 7px;border-radius:4px}.keyword-chart-legend-head{margin-bottom:4px}.keyword-chart-legend-handle{width:16px;height:16px}.keyword-chart-legend-dismiss{width:18px;height:18px;font-size:14px}.keyword-chart-legend-kicker{font-size:7px}.keyword-chart-legend-expand{margin-top:3px;padding-top:2px;font-size:9px}.keyword-chart-legend-expand-count{font-size:7px}.keyword-chart-legend-item{grid-template-columns:8px 1fr;gap:6px;padding:3px 4px}.keyword-chart-legend-swatch{width:8px;height:8px}.keyword-chart-legend-label{font-size:8px}.keyword-chart-legend--dock{width:auto;margin:12px 0 2px;padding:12px 0 8px}.keyword-chart-legend--dock .keyword-chart-legend-head{margin-bottom:10px}.keyword-chart-legend--dock .keyword-chart-legend-kicker{font-size:10px}.keyword-chart-legend--dock .keyword-chart-legend-list{gap:8px 12px}.keyword-chart-legend--dock .keyword-chart-legend-item{grid-template-columns:9px 1fr;gap:8px;padding:3px 0}.keyword-chart-legend--dock .keyword-chart-legend-swatch{width:9px;height:9px}.keyword-chart-legend--dock .keyword-chart-legend-label{font-size:11px;line-height:1.3}.keyword-chart-legend--dock .keyword-chart-legend-expand{margin-top:10px;padding:10px 0 2px;font-size:11px}.keyword-chart-legend--dock .keyword-chart-legend-expand-count{font-size:9px}}@media (max-width:700px){.page{padding:32px 14px 36px}.hero{position:relative;align-items:flex-start;gap:20px;padding-top:4px;padding-bottom:22px;margin-bottom:20px}.eyebrow{font-size:10px;line-height:1.45;letter-spacing:.1em;margin-bottom:14px}h1{font-size:34px;line-height:1.08}.hero-heading-row{align-items:center}.hero .sub{font-size:12px;line-height:1.45;margin-top:10px}.header-controls-slot--hero,.header-controls-slot--scrub{display:none}h2{font-size:18px}.sub{font-size:12px;line-height:1.35}.stats{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.stat{padding:14px 12px;min-height:96px}.stat-main{gap:8px;margin-top:8px}.stat-value{font-size:22px}.stat-label{font-size:11px;letter-spacing:.08em;line-height:1.2}.stat-detail{font-size:12px}.stat-sparkline{height:40px}.stat-menu{min-width:0}.stat-menu,.stat-menu-right{left:8px;right:8px}.layout{border-radius:3px}.controls{max-height:388px;padding:20px 16px}.section+.section{margin-top:22px}.section-head{align-items:flex-start;flex-wrap:wrap}.theme-head-actions{width:100%;justify-content:space-between}.lens-select{flex:1 1 auto;justify-content:space-between}.lens-select select{max-width:none;width:44%}.check{grid-template-columns:20px 1fr auto;gap:9px;font-size:12px;padding:7px 8px}.check small{font-size:10px}.view-head{padding:12px 14px;gap:8px}.classifier-toggle-stack{width:100%;gap:6px}.classifier-mode-note{display:block;position:relative;width:100%;box-sizing:border-box;padding:8px 28px 8px 10px;border-radius:4px;border:1px solid var(--hair2);animation:classifier-mode-note-in .32s ease-out both,classifier-mode-note-pulse 1.6s ease-in-out infinite;animation-delay:0s,.28s}.classifier-mode-note-close{position:absolute;top:4px;right:4px;width:22px;height:22px;padding:0;border:0;border-radius:3px;background:transparent;color:var(--muted);cursor:pointer;font-family:var(--font-futura);font-size:16px;font-weight:700;line-height:1;display:grid;place-items:center}.classifier-mode-note-close:focus-visible,.classifier-mode-note-close:hover{color:var(--ink);background:color-mix(in srgb,var(--field) 70%,transparent)}.classifier-mode-note.is-keyword{border-color:color-mix(in srgb,var(--accent) 46%,var(--hair2));background:color-mix(in srgb,var(--panel) 86%,var(--accent) 14%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent),0 0 14px color-mix(in srgb,var(--accent) 28%,transparent)}.classifier-mode-note.is-semantic{border-color:color-mix(in srgb,#eab308 48%,var(--hair2));background:color-mix(in srgb,var(--panel) 86%,#eab308 14%);box-shadow:0 0 0 1px color-mix(in srgb,#eab308 18%,transparent),0 0 14px color-mix(in srgb,#eab308 28%,transparent)}.classifier-mode-note.is-emergent{border-color:color-mix(in srgb,#2dd4bf 48%,var(--hair2));background:color-mix(in srgb,var(--panel) 86%,#2dd4bf 14%);box-shadow:0 0 0 1px color-mix(in srgb,#2dd4bf 18%,transparent),0 0 14px color-mix(in srgb,#2dd4bf 28%,transparent)}.classifier-mode-note-kicker{margin:0 0 2px;font-family:var(--font-futura);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.classifier-mode-note.is-keyword .classifier-mode-note-kicker{color:var(--accent)}.classifier-mode-note.is-semantic .classifier-mode-note-kicker{color:#ca8a04}.classifier-mode-note.is-emergent .classifier-mode-note-kicker{color:#0d9488}.c11-app.dark .classifier-mode-note.is-emergent .classifier-mode-note-kicker{color:#2dd4bf}.classifier-mode-note-body{margin:0;font-size:11px;line-height:1.35;color:var(--ink)}@keyframes classifier-mode-note-in{0%{opacity:0;transform:translateY(-4px);max-height:0}to{opacity:1;transform:translateY(0);max-height:80px}}@keyframes classifier-mode-note-pulse{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,var(--mode-note,var(--accent)) 16%,transparent),0 0 10px color-mix(in srgb,var(--mode-note,var(--accent)) 22%,transparent)}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--mode-note,var(--accent)) 36%,transparent),0 0 18px color-mix(in srgb,var(--mode-note,var(--accent)) 40%,transparent)}}.classifier-mode-note.is-keyword{--mode-note:var(--accent)}.classifier-mode-note.is-semantic{--mode-note:#eab308}.classifier-mode-note.is-emergent{--mode-note:#2dd4bf}@media (prefers-reduced-motion:reduce){.classifier-mode-note{animation:none}}.chart-panel{padding:8px 10px 12px;overflow-x:hidden}.chart-panel:has(.keyword-chart-legend--dock){padding-bottom:6px}.keyword-chart-legend--dock{margin:14px 0 4px;padding:14px 0 10px}.keyword-chart-legend--dock .keyword-chart-legend-head{margin-bottom:12px}.keyword-chart-legend--dock .keyword-chart-legend-list{gap:10px 14px}.keyword-chart-legend--dock .keyword-chart-legend-item{padding:4px 0}.keyword-chart-legend--dock .keyword-chart-legend-expand{margin-top:12px;padding:12px 0 4px}.chart-head{display:flex;flex-direction:column;gap:0;margin-bottom:18px}.chart-head>div:first-child{display:flex;flex-direction:column;gap:6px}.chart-head h2{font-size:18px;line-height:1.22;font-weight:800}.chart-head .sub{margin-top:0;font-size:12px;line-height:1.45}.chart-head .classifier-delta-badge{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:2px;font-size:11px;line-height:1.4}.chart-head .classifier-delta-sep{display:none}.chart-head .classifier-delta-side{display:block}.chart-head-view-toggle{display:flex;align-items:center;justify-content:flex-start;margin-top:12px;margin-bottom:0;padding-top:12px;border-top:1px solid var(--hair);animation:chart-view-toggle-in .35s ease-out both}@keyframes chart-view-toggle-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.chart-head-view-toggle{animation:none}}.chart-head-view-toggle .view-select{width:100%;max-width:168px}.chart-head-view-toggle .view-select select{width:100%;min-height:36px;font-size:12px}.view-head--graph .view-head-toggles{display:none}.chart-stage{width:100%}.ai-read-chart-callout{top:10%;left:50%;width:min(220px,calc(100% - 20px));padding:10px 12px}.ai-read-chart-callout-body{font-size:10px}.emergent-chart-callout{top:10%;left:50%;width:min(220px,calc(100% - 20px));padding:10px 12px}.emergent-chart-callout-body{font-size:10px}.keyword-chart-callout{top:12%;left:50%;--keyword-callout-shift:-30px;width:min(112px,calc(50% - 12px));padding:5px 7px;border-radius:4px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 0 10px color-mix(in srgb,var(--accent) 26%,transparent),0 0 22px color-mix(in srgb,var(--accent) 12%,transparent),0 6px 16px rgba(0,0,0,.2);animation:keyword-callout-in .45s ease-out both,keyword-callout-halo-mobile 2.2s ease-in-out infinite}.keyword-chart-callout-kicker{font-size:7px;letter-spacing:.1em;margin-bottom:2px}.keyword-chart-callout-body{font-size:8px;line-height:1.3}.playback-caption-callout{top:11%;width:min(150px,calc(100% - 48px));padding:8px 10px;border-radius:5px;animation:playback-caption-callout-in .28s ease-out both,playback-caption-callout-halo 2.2s ease-in-out infinite;animation-delay:0s,.3s}.playback-caption-callout-kicker{font-size:8px;margin-bottom:4px;letter-spacing:.12em}.playback-caption-callout-body{font-size:11px;line-height:1.3;font-weight:600}@media (prefers-reduced-motion:reduce){.keyword-chart-callout{animation:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent),0 0 12px color-mix(in srgb,var(--accent) 30%,transparent),0 6px 16px rgba(0,0,0,.2)}.playback-caption-callout{animation:none}}.chart-panel svg,.layout.has-scrub .chart-panel svg{width:100%;max-width:100%;min-width:0;aspect-ratio:1000/686;height:auto;min-height:0}.layout.has-scrub .chart-panel{padding-bottom:8px}.scrubber{display:flex;flex-direction:column;margin:0;padding:13px 14px 16px}.layout-scrub{padding-top:16px;padding-bottom:20px}.layout-scrub .scrubber{margin:0}.scrub-head{display:contents}.scrub-playback-caption{order:1;margin:0 0 10px;padding:8px 10px;gap:8px;align-items:flex-start}.scrub-range{order:2;margin:0 0 10px;font-size:20px}.scrub-track{order:3;height:72px}.scrub-ticks{order:4;font-size:10px}.scrub-title-row{order:5;width:100%;justify-content:space-between;gap:10px;margin-top:12px}.scrub-title{font-size:10px;line-height:1.35;letter-spacing:.08em}.scrub-playback-caption-year{font-size:10px;letter-spacing:.06em;padding-top:1px}.scrub-playback-caption-text{font-size:12px;line-height:1.3;font-weight:600}.scrub-circle{width:34px;height:34px}.map-panel{min-height:320px}.map-canvas,.map-fallback{min-height:0}.map-marker{font-size:8px}.node-panel{padding:16px 14px}.node-stage,.node-stage svg{min-height:208px}.node-stage--3d{min-height:312px}.node-head{grid-template-columns:1fr;gap:10px}.node-stage{min-height:338px;overflow-x:auto}.node-stage--3d{overflow:hidden;height:312px;max-height:312px}.node-stage svg{min-width:860px;height:338px}.ai-panel{grid-template-columns:minmax(0,1fr);min-height:560px}.ai-rail{padding:20px 16px}.ai-chat{padding:16px}.ai-messages{min-height:320px;max-height:440px}.ai-form{grid-template-columns:1fr}.ai-form button{min-height:42px}.lower{margin-top:18px}.defs,.records{padding:18px 14px}.records-head{gap:12px;align-items:stretch}.record-list{max-height:520px}.record{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:16px 2px 18px}.title{font-size:14px}.abstract,.meta,.more{font-size:11px}.def-row{padding:14px 0;gap:12px}}.lifecycle-panel{display:grid;grid-gap:14px;gap:14px;padding:22px 24px 10px;flex:1 1 auto;min-height:0}.chart-stage-shell:has(.lifecycle-panel--leadlag),.chart-stage:has(.lifecycle-panel--leadlag),.layout-chart:has(.lifecycle-panel--leadlag){flex:0 0 auto;min-height:auto;overflow:visible}.layout-chart>.lifecycle-panel--leadlag{display:flex;flex-direction:column;flex:0 0 auto;min-height:auto;overflow:visible;padding-bottom:22px}.lifecycle-landscape{margin-bottom:0;overflow:visible}.lifecycle-landscape .lifecycle-axis-text{font-family:Futura,Futura PT,Avenir Next,Avenir,Century Gothic,sans-serif;font-size:17.6px;font-weight:700;fill:var(--faint);transition:fill .22s ease,font-weight .22s ease,opacity .22s ease,stroke .22s ease}.lifecycle-axis-hit{cursor:pointer}.lifecycle-axis-hit:focus-visible .lifecycle-axis-text{fill:var(--theme,var(--accent))}.lifecycle-landscape.is-playing .lifecycle-axis-hit{pointer-events:none;cursor:default}.lifecycle-landscape .lifecycle-axis-text--active{font-weight:800;fill:var(--theme);paint-order:stroke fill;stroke:color-mix(in srgb,var(--surface) 90%,transparent);stroke-width:2.5px;stroke-linejoin:round;animation:lifecycle-axis-pulse 2.6s ease-in-out infinite}@keyframes lifecycle-axis-pulse{0%,to{opacity:1}50%{opacity:.76}}@media (prefers-reduced-motion:reduce){.lifecycle-landscape .lifecycle-axis-text--active{animation:none}}.lifecycle-landscape.has-register-filter .lifecycle-axis-text--dimmed,.lifecycle-landscape.has-selection .lifecycle-axis-text--dimmed{font-weight:400;fill:var(--faint);opacity:.42}.lifecycle-year-badge{fill:var(--accent);font:800 12px Futura,Futura PT,Avenir Next,Avenir,Century Gothic,sans-serif;letter-spacing:.08em}.lifecycle-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:20px 40px;gap:20px 40px;align-items:center;padding-bottom:6px}.lifecycle-head h2{margin:0 0 10px}.lifecycle-head .sub{margin:0;max-width:54ch;line-height:1.5}.lifecycle-methods-note{margin-top:10px;max-width:62ch;font-size:11.5px;line-height:1.45;color:var(--fainter)}.lifecycle-legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-content:center;max-width:400px}.lifecycle-legend button{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:3px;font-family:var(--font-futura);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border:1px solid var(--hair2);background:var(--field);cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.lifecycle-legend button:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--theme)}.lifecycle-legend button:hover{color:var(--ink);border-color:color-mix(in srgb,var(--theme) 42%,var(--hair2))}.lifecycle-legend button.on,.lifecycle-legend button[aria-pressed=true]{color:var(--ink);border-color:color-mix(in srgb,var(--theme) 58%,var(--hair2));background:color-mix(in srgb,var(--theme) 14%,var(--field));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--theme) 30%,transparent)}.lifecycle-arc{stroke:var(--hair2);stroke-width:2;stroke-dasharray:5 5;transition:opacity .25s ease}.lifecycle-landscape.is-marker-loading .lifecycle-arc{opacity:.28}.lifecycle-marker-skeleton{fill:color-mix(in srgb,var(--hair2) 72%,transparent);stroke:color-mix(in srgb,var(--muted) 18%,var(--hair2));stroke-width:1.2;pointer-events:none;animation:lifecycle-marker-skeleton 1.05s ease-in-out infinite}@keyframes lifecycle-marker-skeleton{0%,to{opacity:.38;transform:scale(.92)}50%{opacity:.78;transform:scale(1)}}.lifecycle-intro-pulse.lifecycle-halo-ring{animation:lifecycle-halo-ring 1.75s ease-out infinite}.lifecycle-intro-pulse.lifecycle-halo-glow{animation:lifecycle-halo-glow 1.75s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.lifecycle-marker-skeleton{animation:none;opacity:.55}}.lifecycle-landscape{cursor:default}.lifecycle-landscape.has-selection{cursor:pointer}.lifecycle-backdrop{pointer-events:all}.lifecycle-landscape.has-register-filter .lifecycle-arc,.lifecycle-landscape.has-selection .lifecycle-arc{opacity:.35}.lifecycle-landscape.is-playing .lifecycle-arc{opacity:.24}.lifecycle-landscape.is-playing .lifecycle-label{pointer-events:none}.lifecycle-landscape.is-playing .lifecycle-label--playback{paint-order:stroke fill;stroke:color-mix(in srgb,var(--surface) 88%,transparent);stroke-width:4px;stroke-linejoin:round}.lifecycle-landscape.is-playing .lifecycle-node{pointer-events:none}.lifecycle-landscape.is-playing .lifecycle-backdrop{cursor:default}.lifecycle-node{cursor:pointer;transition:opacity .22s ease}.lifecycle-landscape.has-register-filter .lifecycle-node.dimmed,.lifecycle-landscape.has-selection .lifecycle-node.dimmed{opacity:.16}.lifecycle-landscape.has-register-filter .lifecycle-node.dimmed .lifecycle-label,.lifecycle-landscape.has-selection .lifecycle-node.dimmed .lifecycle-label{opacity:.4}.lifecycle-core{fill:color-mix(in srgb,var(--theme) 72%,transparent);stroke:var(--theme);stroke-width:1.4;transition:fill .16s ease,stroke-width .16s ease}.lifecycle-node:hover .lifecycle-core{fill:var(--theme)}.lifecycle-node.selected .lifecycle-core{fill:var(--theme);stroke:var(--ink);stroke-width:2.2;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--theme) 70%,transparent))}.lifecycle-node.is-small-n .lifecycle-core{fill:color-mix(in srgb,var(--panel) 78%,transparent);stroke:var(--theme);stroke-width:2.2}.lifecycle-node.is-small-n.selected .lifecycle-core{fill:color-mix(in srgb,var(--theme) 22%,var(--panel));stroke:var(--theme);stroke-width:2.6}.lifecycle-landscape.has-register-filter .lifecycle-node.register-match .lifecycle-core{fill:var(--theme);stroke-width:2;animation:lifecycle-axis-pulse 2.6s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.lifecycle-landscape.has-register-filter .lifecycle-node.register-match .lifecycle-core{animation:none}}.lifecycle-halo{fill:none;stroke:var(--theme);transform-box:fill-box;transform-origin:center;pointer-events:none}.lifecycle-halo-glow{fill:color-mix(in srgb,var(--theme) 28%,transparent);stroke:none;animation:lifecycle-halo-glow 2.2s ease-in-out infinite}.lifecycle-halo-ring{stroke-width:1.6;opacity:.65;animation:lifecycle-halo-ring 2.2s ease-out infinite}@keyframes lifecycle-halo-ring{0%{transform:scale(1);opacity:.7;stroke-width:1.6}70%{transform:scale(2.15);opacity:.08;stroke-width:.6}to{transform:scale(2.15);opacity:0;stroke-width:.6}}@keyframes lifecycle-halo-glow{0%,to{transform:scale(1.15);opacity:.34}50%{transform:scale(1.55);opacity:.14}}.lifecycle-label,.lifecycle-node text{fill:var(--muted);font-family:Futura,Futura PT,Avenir Next,Avenir,Century Gothic,sans-serif;font-weight:700;font-size:11px;pointer-events:none;transition:fill .2s ease,opacity .22s ease;paint-order:stroke fill;stroke:color-mix(in srgb,var(--panel) 88%,transparent);stroke-width:4px;stroke-linejoin:round}.lifecycle-node.selected .lifecycle-label{fill:var(--ink);font-weight:800;text-transform:uppercase;letter-spacing:.03em}.lifecycle-landscape.has-register-filter .lifecycle-node.register-match .lifecycle-label{fill:var(--ink);font-weight:800}.lifecycle-node:hover:not(.dimmed) .lifecycle-label{fill:var(--ink)}@media (max-width:980px){.lifecycle-label,.lifecycle-node text{font-size:22px;stroke-width:8px}.lifecycle-landscape.is-playing .lifecycle-label--playback{stroke-width:8px}.layout.has-scrub .lifecycle-panel:not(.lifecycle-panel--leadlag) .lifecycle-landscape,.layout.has-scrub.has-lifecycle-detail .lifecycle-landscape--mobile,.layout.has-scrub.has-lifecycle-detail .lifecycle-panel:not(.lifecycle-panel--leadlag) .lifecycle-landscape,.lifecycle-landscape--mobile{min-height:0;aspect-ratio:1000/620;max-height:none}.layout.has-scrub.has-lifecycle-detail .lifecycle-panel:not(.lifecycle-panel--leadlag){gap:10px;padding-bottom:4px}.layout.has-scrub.has-lifecycle-detail .lifecycle-landscape{margin-top:0;margin-bottom:0}.layout.has-scrub.has-lifecycle-detail .lifecycle-detail{padding-top:10px;padding-bottom:10px;gap:10px;margin-top:0;border-top:1px solid var(--line)}.lifecycle-panel:not(.lifecycle-panel--leadlag){padding-top:10px;padding-bottom:4px;gap:20px}.lifecycle-head{padding-bottom:4px}.lifecycle-legend{margin-bottom:8px}.lifecycle-landscape{margin-top:4px}}.lifecycle-marker-caption{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;width:100%;text-align:left;pointer-events:none;text-size-adjust:none}.lifecycle-marker-caption-text{fill:var(--ink);font-family:Futura,Futura PT,Avenir Next,Avenir,Century Gothic,sans-serif;pointer-events:none;paint-order:stroke fill;stroke:color-mix(in srgb,var(--panel) 88%,transparent);stroke-width:3px;stroke-linejoin:round}.lifecycle-marker-caption-text .lifecycle-marker-caption-title{text-transform:uppercase;letter-spacing:.03em}.lifecycle-marker-caption-text .lifecycle-marker-caption-body{fill:var(--ink);opacity:.92;font-weight:500}.lifecycle-marker-title{margin:0 0 3px;font-weight:800;line-height:1.18;letter-spacing:.03em;text-transform:uppercase}.lifecycle-explain,.lifecycle-marker-title{color:var(--ink);font-family:var(--font-futura),Futura,"Futura PT","Avenir Next",Avenir,sans-serif}.lifecycle-explain{margin:0;width:100%;max-width:280px;min-height:2.5em;line-height:1.34;font-weight:500;text-align:left;text-transform:none;opacity:.92}.typewriter-body{display:inline;text-align:left;white-space:pre-line}.typewriter-cursor{display:inline-block;margin-left:1px;color:var(--accent);font-weight:700;animation:typewriter-blink .75s step-end infinite}@keyframes typewriter-blink{50%{opacity:0}}.lifecycle-detail{border-top:1px solid var(--line);padding-top:14px;display:grid;grid-gap:10px;gap:10px}.lifecycle-detail .trajectory-chart{display:block;margin-bottom:2px}.leadlag-detail .trajectory-chart,.leadlag-detail>svg{width:100%;height:auto;aspect-ratio:1000/260;flex-shrink:0}.lifecycle-detail-head h3{margin:0 0 3px;font-family:var(--font-futura);font-size:19px;text-transform:capitalize}.lifecycle-line{stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}.trajectory-chart{overflow:visible}.trajectory-chart .trajectory-axis-text{font-size:10px;letter-spacing:.01em}.trajectory-hit{fill:transparent;cursor:crosshair;outline:none}.trajectory-hit:focus-visible{fill:color-mix(in srgb,var(--accent) 10%,transparent)}.trajectory-point{transition:r .14s ease}.trajectory-point.is-hovered{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--theme,var(--accent)) 55%,transparent))}.trajectory-hover-line{stroke:color-mix(in srgb,var(--accent) 42%,var(--hair2));stroke-width:1;stroke-dasharray:3 3;pointer-events:none;transition:stroke .16s ease}.trajectory-hover-line.is-selected{stroke-dasharray:none;stroke-width:1.5;opacity:.95}.lifecycle-vol.is-hovered{fill:color-mix(in srgb,var(--muted) 42%,transparent)}.lifecycle-vol.patent-vol.is-hovered{fill:color-mix(in srgb,var(--accent) 48%,transparent)}.trajectory-tooltip{box-sizing:border-box;width:100%;height:100%;padding:9px 11px;border:1px solid color-mix(in srgb,var(--theme) 38%,var(--hair2));border-radius:5px;background:color-mix(in srgb,var(--panel) 92%,var(--theme) 8%);box-shadow:0 10px 24px rgba(0,0,0,.22);pointer-events:none}.trajectory-tooltip-year{margin:0 0 3px;font-family:var(--font-futura);font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--ink)}.trajectory-tooltip-copy{margin:0 0 2px;font-size:11px;line-height:1.35;font-weight:500;color:var(--ink)}.trajectory-tooltip-stage{margin:0;font-family:var(--font-futura);font-size:10px;font-weight:700;letter-spacing:.02em;color:var(--theme)}.lifecycle-vol{fill:color-mix(in srgb,var(--muted) 26%,transparent)}.lifecycle-theses{display:grid;grid-gap:6px;gap:6px;margin-top:8px;padding-top:18px;border-top:1px solid var(--hair);max-height:min(42vh,300px);overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;padding-right:4px}.lifecycle-theses a{display:flex;gap:10px;align-items:baseline;color:var(--ink);text-decoration:none;font-size:12.5px;padding:5px 6px;border-radius:3px;transition:opacity .16s ease,background .16s ease,color .16s ease}.lifecycle-theses a:hover{background:var(--selbg)}.lifecycle-theses.is-year-active a:not(.is-year-hovered){opacity:.38}.lifecycle-theses a.is-year-hovered{background:color-mix(in srgb,var(--thesis-hover-theme,var(--accent)) 14%,var(--selbg));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--thesis-hover-theme,var(--accent)) 32%,transparent);opacity:1}.lifecycle-theses a.is-year-hovered span{color:var(--thesis-hover-theme,var(--accent))}.lifecycle-theses a span{color:var(--faint);font-family:var(--font-futura);font-size:11px;font-weight:700;min-width:34px;transition:color .16s ease}.lifecycle-head-actions{display:flex;justify-content:flex-end;align-items:flex-start}.lifecycle-panel--leadlag{gap:0}.lifecycle-head--leadlag{grid-template-columns:1fr;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}.lifecycle-head--leadlag h2{margin-bottom:8px}.lifecycle-head--leadlag .sub{max-width:68ch}.leadlag-panel{display:grid;grid-gap:14px;gap:14px;padding-bottom:18px;margin-bottom:0;border-bottom:1px solid var(--line)}.leadlag-summary{margin:0;max-width:72ch;font-size:13.5px;line-height:1.5;color:var(--muted)}.leadlag-stats{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.leadlag-stats strong{color:var(--ink);font-weight:800;letter-spacing:.04em;text-transform:none}.leadlag-chart{display:grid;grid-gap:10px;gap:10px;padding-top:4px}.leadlag-row{display:grid;grid-template-columns:minmax(168px,1.25fr) minmax(120px,1fr) auto;grid-gap:16px 18px;gap:16px 18px;align-items:center;border:1px solid var(--line);background:transparent;border-radius:5px;padding:13px 16px;text-align:left;cursor:pointer;color:inherit;transition:background .16s ease,border-color .16s ease,transform .16s ease}.leadlag-row:hover{background:color-mix(in srgb,var(--selbg) 70%,transparent)}.leadlag-row.selected{background:var(--selbg);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.leadlag-row-label{display:flex;align-items:center;gap:12px;min-width:0}.leadlag-label{font-size:13px;font-weight:700;line-height:1.25;text-transform:capitalize;color:var(--ink)}.leadlag-meta{font-size:11px;font-weight:700;color:var(--muted);white-space:nowrap;font-family:var(--font-futura);padding-left:4px}.leadlag-bar-wrap{position:relative;height:10px;background:color-mix(in srgb,var(--muted) 10%,transparent);border-radius:99px;overflow:visible}.leadlag-bar-axis{position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;transform:translateX(-50%);background:color-mix(in srgb,var(--muted) 34%,transparent);border-radius:1px}.leadlag-bar{position:absolute;top:0;bottom:0;left:50%;border-radius:99px;background:var(--theme);opacity:.88;animation:leadlag-bar-in .55s cubic-bezier(.4,0,.2,1) both}.leadlag-bar,.leadlag-bar.thesis-leads{transform-origin:left center}.leadlag-bar.patent-leads{left:auto;right:50%;transform-origin:right center;background:color-mix(in srgb,var(--muted) 68%,var(--theme));animation-name:leadlag-bar-in-reverse}@keyframes leadlag-bar-in{0%{transform:scaleX(0);opacity:.35}to{transform:scaleX(1);opacity:.88}}@keyframes leadlag-bar-in-reverse{0%{transform:scaleX(0);opacity:.35}to{transform:scaleX(1);opacity:.88}}.leadlag-icon{display:inline-flex;flex-shrink:0;width:22px;height:22px;color:color-mix(in srgb,var(--muted) 82%,var(--ink))}.leadlag-icon svg{width:100%;height:100%}.leadlag-row.selected .leadlag-icon,.leadlag-row:hover .leadlag-icon{color:var(--ink)}.leadlag-icon-vehicle{animation:leadlag-icon-drift 2.8s ease-in-out infinite}.leadlag-icon-solar-rays{transform-origin:10px 10px;animation:leadlag-icon-spin 9s linear infinite}.leadlag-icon-building-floor{animation:leadlag-icon-scan 2.4s ease-in-out infinite}.leadlag-icon-water-ripple{transform-origin:10px 13.5px;animation:leadlag-icon-ripple 2.6s ease-out infinite}.leadlag-icon-rail-window{animation:leadlag-icon-pulse 2.2s ease-in-out infinite}.leadlag-icon-default-line{animation:leadlag-icon-type 2.8s ease-in-out infinite}.leadlag-icon-ai-core{transform-origin:10px 10px;animation:leadlag-icon-pulse 2.1s ease-in-out infinite}.leadlag-icon-data-band{animation:leadlag-icon-scan 2.6s ease-in-out infinite}.leadlag-icon-compute-bars{animation:leadlag-icon-type 2.4s ease-in-out infinite}.structure-neighbor-row .leadlag-icon-ai-core,.structure-neighbor-row .leadlag-icon-building-floor,.structure-neighbor-row .leadlag-icon-compute-bars,.structure-neighbor-row .leadlag-icon-data-band,.structure-neighbor-row .leadlag-icon-default-line,.structure-neighbor-row .leadlag-icon-rail-window,.structure-neighbor-row .leadlag-icon-solar-rays,.structure-neighbor-row .leadlag-icon-vehicle,.structure-neighbor-row .leadlag-icon-water-ripple,.structure-tech-row .leadlag-icon-ai-core,.structure-tech-row .leadlag-icon-building-floor,.structure-tech-row .leadlag-icon-compute-bars,.structure-tech-row .leadlag-icon-data-band,.structure-tech-row .leadlag-icon-default-line,.structure-tech-row .leadlag-icon-rail-window,.structure-tech-row .leadlag-icon-solar-rays,.structure-tech-row .leadlag-icon-vehicle,.structure-tech-row .leadlag-icon-water-ripple{animation:none}.structure-neighbor-row:hover .leadlag-icon-vehicle,.structure-tech-row.is-active .leadlag-icon-vehicle,.structure-tech-row:hover .leadlag-icon-vehicle{animation:leadlag-icon-drift 2.8s ease-in-out infinite}.structure-neighbor-row:hover .leadlag-icon-solar-rays,.structure-tech-row.is-active .leadlag-icon-solar-rays,.structure-tech-row:hover .leadlag-icon-solar-rays{animation:leadlag-icon-spin 9s linear infinite}.structure-neighbor-row:hover .leadlag-icon-building-floor,.structure-tech-row.is-active .leadlag-icon-building-floor,.structure-tech-row:hover .leadlag-icon-building-floor{animation:leadlag-icon-scan 2.4s ease-in-out infinite}.structure-neighbor-row:hover .leadlag-icon-water-ripple,.structure-tech-row.is-active .leadlag-icon-water-ripple,.structure-tech-row:hover .leadlag-icon-water-ripple{animation:leadlag-icon-ripple 2.6s ease-out infinite}.structure-neighbor-row:hover .leadlag-icon-rail-window,.structure-tech-row.is-active .leadlag-icon-rail-window,.structure-tech-row:hover .leadlag-icon-rail-window{animation:leadlag-icon-pulse 2.2s ease-in-out infinite}.structure-neighbor-row:hover .leadlag-icon-default-line,.structure-tech-row.is-active .leadlag-icon-default-line,.structure-tech-row:hover .leadlag-icon-default-line{animation:leadlag-icon-type 2.8s ease-in-out infinite}.structure-neighbor-row:hover .leadlag-icon-ai-core,.structure-tech-row.is-active .leadlag-icon-ai-core,.structure-tech-row:hover .leadlag-icon-ai-core{animation:leadlag-icon-pulse 2.1s ease-in-out infinite}.structure-neighbor-row:hover .leadlag-icon-data-band,.structure-tech-row.is-active .leadlag-icon-data-band,.structure-tech-row:hover .leadlag-icon-data-band{animation:leadlag-icon-scan 2.6s ease-in-out infinite}.structure-neighbor-row:hover .leadlag-icon-compute-bars,.structure-tech-row.is-active .leadlag-icon-compute-bars,.structure-tech-row:hover .leadlag-icon-compute-bars{animation:leadlag-icon-type 2.4s ease-in-out infinite}@keyframes leadlag-icon-drift{0%,to{transform:translateX(0)}50%{transform:translateX(1.2px)}}@keyframes leadlag-icon-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes leadlag-icon-scan{0%,to{opacity:.45}50%{opacity:1}}@keyframes leadlag-icon-ripple{0%{transform:scale(.72);opacity:.15}70%{transform:scale(1.15);opacity:.5}to{transform:scale(1.15);opacity:0}}@keyframes leadlag-icon-pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes leadlag-icon-type{0%,to{stroke-dasharray:6 6;stroke-dashoffset:0}50%{stroke-dashoffset:6}}@media (prefers-reduced-motion:reduce){.leadlag-bar,.leadlag-icon-ai-core,.leadlag-icon-building-floor,.leadlag-icon-compute-bars,.leadlag-icon-data-band,.leadlag-icon-default-line,.leadlag-icon-rail-window,.leadlag-icon-solar-rays,.leadlag-icon-vehicle,.leadlag-icon-water-ripple,.structure-neighbor-row,.structure-neighbor-row:hover,.structure-tech-row,.structure-tech-row:hover,.structure-tech-row:hover .structure-tech-icon{animation:none!important;transition:none!important;transform:none!important}}.leadlag-footnote{margin:8px 0 0;font-size:12px;line-height:1.45;color:var(--faint)}.leadlag-detail-hint{margin:0;padding:20px 0 8px;color:var(--muted);font-size:13px}.leadlag-detail{margin-top:0;padding-top:22px;padding-bottom:8px;border-top:0;display:grid;grid-gap:12px;gap:12px}.leadlag-detail-kicker{margin:0;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.leadlag-detail .lifecycle-detail-head{display:grid;grid-gap:6px;gap:6px}.leadlag-detail .lifecycle-detail-head h3{margin:0;font-family:var(--font-futura);font-size:16px;font-weight:700;text-transform:capitalize;color:var(--ink)}.leadlag-detail-meta{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted)}.leadlag-detail-meta strong{color:var(--ink);font-weight:700}.leadlag-detail .lifecycle-theses{margin-top:4px;padding-top:12px;border-top:1px solid var(--line)}.lifecycle-vol.patent-vol{fill:color-mix(in srgb,var(--accent) 34%,transparent)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes atlas-reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes atlas-reveal-fade{0%{opacity:0}to{opacity:1}}.skeleton-block{background:linear-gradient(90deg,color-mix(in srgb,var(--hair2) 88%,transparent) 0,color-mix(in srgb,var(--muted) 16%,var(--chip)) 45%,color-mix(in srgb,var(--hair2) 88%,transparent) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.1s ease-in-out infinite;border-radius:4px}.atlas-reveal{animation:atlas-reveal .22s ease-out both}.header-controls-reveal{animation-name:atlas-reveal-fade}.c11-app.ui-settled .atlas-reveal{animation:none;opacity:1;transform:none}.stats-host{position:relative;z-index:50}.atlas-skeleton-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.skeleton-hero-eyebrow{width:min(320px,72vw);height:12px;margin-bottom:8px}.skeleton-hero-sub{width:min(480px,92vw);height:14px;margin-top:5px}.skeleton-header-course{width:132px;height:38px}.skeleton-header-year{width:92px;height:38px}.skeleton-header-btn{width:68px;height:38px}.skeleton-pill{border-radius:5px}.atlas-skeleton-stats .skeleton-stat{display:grid;grid-gap:12.2px;gap:12.2px;min-height:140px;padding:27.4px 25.4px;background:var(--panel);border:1px solid var(--line);border-radius:4px;box-sizing:border-box}.skeleton-stat-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(86px,44%);grid-gap:15.2px;gap:15.2px;align-items:end;margin-top:9.1px}.skeleton-stat-value{width:91px;height:36.5px}.atlas-skeleton-stats .skeleton-stat-sparkline{width:100%;height:61px;border-radius:0;background:none;animation:none;position:relative;overflow:hidden}.atlas-skeleton-stats .skeleton-stat-sparkline:after{content:"";position:absolute;left:0;right:0;bottom:22%;height:2px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--hair2) 88%,transparent) 0,color-mix(in srgb,var(--muted) 16%,var(--chip)) 45%,color-mix(in srgb,var(--hair2) 88%,transparent) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.1s ease-in-out infinite;transform:rotate(-5deg);transform-origin:left center}.skeleton-stat-label{width:122px;height:15px}.atlas-skeleton-sidebar .section{padding:18px 20px 16px;border-bottom:1px solid var(--line)}.atlas-skeleton-sidebar .section:last-child{border-bottom:0}.skeleton-section-title{width:88px;height:14px}.skeleton-section-title--wide{width:120px}.skeleton-lens-select{width:118px;height:28px;margin-left:auto}.skeleton-chip-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.skeleton-chip{width:54px;height:28px;border-radius:3px}.skeleton-theme-rows{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.skeleton-theme-row{display:grid;grid-template-columns:10px 1fr 28px;grid-gap:10px;gap:10px;align-items:center}.skeleton-theme-dot{width:10px;height:10px;border-radius:50%}.skeleton-theme-count,.skeleton-theme-name{height:12px}.atlas-skeleton-view-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px 12px;border-bottom:1px solid var(--line)}.skeleton-classifier-toggle{width:220px;height:34px}.skeleton-view-toggle{width:280px;height:34px}.atlas-skeleton-chart{padding:22px 24px 10px}.skeleton-chart-title{width:240px;height:22px;margin-bottom:10px}.skeleton-chart-sub{width:320px;max-width:70%;height:12px}.skeleton-chart-badge{width:92px;height:28px;margin-left:auto}.skeleton-chart-plot{display:grid;grid-template-columns:34px minmax(0,1fr);grid-gap:10px;gap:10px;margin-top:18px;min-height:360px}.skeleton-chart-y-axis{width:100%;height:100%;border-radius:3px}.skeleton-chart-area{position:relative;min-height:360px;border:1px solid var(--hair2);border-radius:5px;background:var(--chip);overflow:hidden}.skeleton-chart-line{position:absolute;left:8%;right:8%;top:calc(18% + var(--i) * 12%);height:3px;border-radius:999px;transform:rotate(calc(-8deg + var(--i) * 4deg));opacity:calc(.55 + var(--i) * .08)}.atlas-skeleton-scrubber{margin:0}.skeleton-scrub-label{width:220px;height:12px}.skeleton-scrub-circle{width:34px;height:34px;border-radius:50%}.skeleton-scrub-range{width:160px;height:24px;margin-left:auto}.skeleton-scrub-track{display:flex;align-items:flex-end;gap:2px;height:86px;padding:0 8px 8px;border:1px solid var(--hair2);border-radius:5px;background:var(--chip)}.skeleton-scrub-bar{flex:1 1;min-width:0;align-self:flex-end;border-radius:2px 2px 0 0}.atlas-skeleton-lower .skeleton-defs,.atlas-skeleton-lower .skeleton-records{padding:24px 28px}.skeleton-records-title{width:180px;height:22px;margin-bottom:10px}.skeleton-records-sub{width:260px;max-width:100%;height:12px}.skeleton-search{width:100%;height:43px;border-radius:5px}.skeleton-record-list{display:grid;grid-gap:4px;gap:4px;margin-top:12px}.skeleton-record{display:grid;grid-template-columns:44px minmax(0,1fr);grid-gap:16px;gap:16px;padding:16px 4px;border-bottom:1px solid var(--hair)}.skeleton-record-year{width:36px;height:14px}.skeleton-record-title{width:72%;height:14px;margin-bottom:10px}.skeleton-record-meta{width:54%;height:11px;margin-bottom:10px}.skeleton-record-abstract{width:92%;height:11px}.skeleton-defs-title{width:140px;height:22px;margin-bottom:18px}.skeleton-def-row{display:grid;grid-template-columns:12px minmax(0,1fr);grid-gap:12px;gap:12px;padding:14px 0;border-bottom:1px solid var(--hair)}.skeleton-def-dot{width:12px;height:12px;border-radius:50%;margin-top:2px}.skeleton-def-name{width:48%;height:13px;margin-bottom:8px}.skeleton-def-text{width:100%;height:11px}@media (max-width:860px){.view-head{flex-direction:column;align-items:stretch;padding:14px 14px 12px;gap:10px}.view-head .classifier-toggle-stack{flex:1 1;width:auto;min-width:0}.view-head .classifier-toggle{flex:1 1;width:100%;min-width:0}.view-head-classifier-row{width:100%}.view-head .classifier-toggle button{flex:1 1;min-width:0}.view-head-toggles{margin-left:0;width:100%;justify-content:flex-end;align-items:center}.lifecycle-panel{padding:10px 14px 4px;gap:20px}.lifecycle-head{grid-template-columns:1fr;gap:16px;align-items:start}.lifecycle-legend{justify-content:flex-start;max-width:none}.leadlag-chart{gap:8px}.leadlag-row{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:10px 12px;padding:12px 14px}.leadlag-row-label{grid-column:1;grid-row:1;gap:10px}.leadlag-meta{grid-column:2;grid-row:1;align-self:center;padding-left:0}.leadlag-bar-wrap{grid-column:1/-1;grid-row:2}}.structure-panel{display:flex;flex-direction:column;gap:12px;min-height:560px;height:100%}.structure-panel--graph{gap:0;min-height:0;height:100%}.structure-panel--loading{justify-content:center}.structure-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex:0 0 auto}.structure-head--fullrow{flex:0 0 auto;padding:14px 24px 16px;background:var(--panel);border-bottom:1px solid var(--line)}.structure-head--fullrow h2{margin:0 0 6px}.structure-head--fullrow .sub{margin:0;max-width:62ch}@media (min-width:981px){.layout.layout--structure{position:relative;overflow:hidden}.layout.layout--structure .layout-main{overflow:hidden}.layout.layout--structure .chart-stage--structure,.layout.layout--structure .chart-stage-shell,.layout.layout--structure .layout-chart,.layout.layout--structure .structure-panel--graph{min-height:0;overflow:hidden}.layout.layout--structure .structure-stage--full{height:100%;min-height:0;max-height:none;flex:1 1 auto}.layout.layout--structure .structure-head--fullrow{position:absolute;left:0;right:0;top:var(--structure-head-top,0);width:auto;margin:0;box-sizing:border-box;padding-left:26px;z-index:5}.layout.layout--structure .structure-head-slot{flex:0 0 auto;height:var(--structure-head-height,0);pointer-events:none}.layout.layout--structure.sidebar-collapsed .structure-head--fullrow,.layout.layout--structure.themes-panel-collapsed .structure-head--fullrow{padding-left:24px}.layout.layout--structure .layout-sidebar{padding-top:var(--structure-sidebar-pad,0);box-sizing:border-box;overflow:hidden}.layout.layout--structure .layout-sidebar .controls{padding-top:14px}}.structure-head-meta{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:11px;letter-spacing:.08em;white-space:nowrap}.structure-head-meta,.structure-kicker{font-weight:800;text-transform:uppercase;color:var(--muted)}.structure-kicker{margin:0 0 4px;font-size:10px;letter-spacing:.1em}.structure-lifecycle-link{margin-top:8px;border:1px solid var(--hair2);border-radius:999px;background:transparent;color:var(--ink);font-size:11px;font-weight:700;padding:6px 10px;cursor:pointer}.structure-lifecycle-link:hover{border-color:var(--accent)}.structure-empty,.structure-muted{color:var(--muted);font-size:13px}.structure-error{color:#a31f34;border:1px solid color-mix(in srgb,#a31f34 35%,var(--hair2));padding:8px 10px;border-radius:4px}.structure-stage,.structure-stage--full{position:relative;border:1px solid var(--hair2);border-radius:5px;overflow:hidden;min-width:0;min-height:480px;flex:1 1 auto;height:min(68vh,720px);background:var(--panel)}.structure-panel.is-light .structure-stage{background:var(--panel)}.structure-cosmo-shell{position:relative;width:100%;height:100%;min-height:0}.structure-cosmo,.structure-cosmo-shell>div:first-child{display:block!important;width:100%!important;height:100%!important;max-height:100%!important}.structure-cosmo-controls{position:absolute;right:12px;bottom:36px;z-index:3;display:flex;flex-direction:column;gap:6px}.structure-cosmo-fit{border:1px solid color-mix(in srgb,var(--hair2,#3a3a40) 80%,transparent);border-radius:4px;background:color-mix(in srgb,#121214 82%,transparent);color:#f5f2ec;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:7px 10px;cursor:pointer}.structure-panel.is-light .structure-cosmo-fit{background:color-mix(in srgb,#fff 88%,transparent);color:#1a1816}.structure-cosmo-fit:hover{border-color:var(--accent,#a31f34)}.structure-cosmo [class*=Label],.structure-cosmo [class*=cosmographLabel]{pointer-events:auto;cursor:pointer;white-space:nowrap;line-height:1.2}.structure-cosmo-hint{position:absolute;left:12px;bottom:10px;z-index:3;margin:0;font-size:11px;letter-spacing:.02em;color:color-mix(in srgb,var(--muted,#9a968e) 85%,transparent);pointer-events:none}.structure-panel.is-light .structure-cosmo-hint{color:rgba(40,36,32,.55)}.structure-sidebar-section{display:grid;grid-gap:10px;gap:10px}.structure-sidebar-search input{width:100%;border:1px solid var(--hair2);border-radius:4px;background:var(--field);color:var(--ink);padding:8px 10px}.structure-sidebar-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px;max-height:min(47vh,364px);overflow:auto}.structure-tech-row{width:100%;text-align:left;border:1px solid color-mix(in srgb,var(--stage,var(--hair2)) 28%,transparent);border-radius:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--stage,#8a8680) 16%,transparent) 0,color-mix(in srgb,var(--stage,#8a8680) 5%,transparent) 42%,transparent 100%);color:inherit;padding:8px 10px 8px 8px;cursor:pointer;display:grid;grid-template-columns:3px 22px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.structure-tech-swatch{align-self:stretch;width:3px;border-radius:999px;background:var(--stage,#8a8680);opacity:.9;transition:transform .18s ease,opacity .18s ease}.structure-tech-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--stage,var(--muted));transition:transform .2s ease,color .18s ease}.structure-tech-icon .leadlag-icon,.structure-tech-icon .leadlag-icon svg{width:18px;height:18px}.structure-tech-icon--sm{width:16px;height:16px}.structure-tech-icon--sm .leadlag-icon,.structure-tech-icon--sm .leadlag-icon svg{width:14px;height:14px}.structure-tech-copy{display:grid;grid-gap:2px;gap:2px;min-width:0}.structure-tech-copy strong{font-size:12px;font-weight:700;line-height:1.25}.structure-tech-copy small{color:var(--muted);font-size:10px}.structure-tech-row:hover{transform:translateX(2px);border-color:color-mix(in srgb,var(--stage,var(--accent)) 55%,var(--hair2));background:linear-gradient(90deg,color-mix(in srgb,var(--stage,#8a8680) 24%,transparent) 0,color-mix(in srgb,var(--stage,#8a8680) 8%,transparent) 48%,transparent 100%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--stage,#8a8680) 18%,transparent)}.structure-tech-row:hover .structure-tech-swatch{transform:scaleY(1.08);opacity:1}.structure-tech-row:hover .structure-tech-icon{transform:translateY(-1px) scale(1.08)}.structure-tech-row.is-active{border-color:color-mix(in srgb,var(--stage,var(--accent)) 70%,var(--hair2));background:linear-gradient(90deg,color-mix(in srgb,var(--stage,#8a8680) 32%,transparent) 0,color-mix(in srgb,var(--stage,#8a8680) 12%,transparent) 55%,transparent 100%);box-shadow:inset 3px 0 0 var(--stage,var(--accent))}.structure-tech-row.is-active .structure-tech-copy strong{color:color-mix(in srgb,var(--stage,var(--ink)) 35%,var(--ink))}.structure-tech-row.is-active .structure-tech-icon{transform:scale(1.06)}.structure-sidebar-hint{margin:4px 0 0}.structure-sidebar-detail{border-top:1px solid color-mix(in srgb,var(--stage,var(--hair2)) 35%,var(--line));padding-top:10px}.structure-sidebar-selected-head{display:grid;grid-template-columns:22px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:start}.structure-sidebar-selected-head .structure-tech-icon{margin-top:2px}.structure-sidebar-detail h2{margin:0 0 4px;font-size:16px;line-height:1.25}.structure-sidebar-subhead{margin:12px 0 4px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.structure-sidebar-neighbors,.structure-sidebar-theses{margin:0;padding-left:0;list-style:none;display:grid;grid-gap:3px;gap:3px;font-size:12px}.structure-neighbor-row{width:100%;display:grid;grid-template-columns:16px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;border:0;border-radius:4px;background:color-mix(in srgb,var(--stage,transparent) 8%,transparent);color:inherit;cursor:pointer;padding:5px 6px;text-align:left;transition:background .16s ease,transform .16s ease}.structure-neighbor-row:hover{transform:translateX(2px);background:color-mix(in srgb,var(--stage,transparent) 16%,transparent)}.structure-neighbor-row .structure-tech-icon{color:var(--stage,var(--muted))}.structure-neighbor-row:hover .structure-tech-icon{transform:scale(1.08)}.structure-sidebar-neighbors em{color:var(--muted);font-style:normal}.structure-sidebar-theses a{color:var(--muted);text-decoration:none}.structure-sidebar-theses a:hover{color:var(--ink);text-decoration:underline}.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}@media (max-width:900px){.structure-stage{height:52vh;min-height:360px}.structure-sidebar-list{max-height:220px}}.structure-spike{min-height:100vh;background:#0c0c0e;color:#f7f4ef;font-family:var(--font-futura);padding:20px 22px 28px}.structure-spike-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}.structure-spike-kicker{margin:0 0 6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#ef6178}.structure-spike h1{margin:0 0 8px;font-size:28px;font-weight:700;letter-spacing:-.02em}.structure-spike-sub{margin:0;max-width:62ch;color:#b8b3a8;font-size:14px;line-height:1.45;font-weight:400}.structure-spike-meta{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a8680}.structure-spike-error{color:#ff8a9a;border:1px solid rgba(239,97,120,.45);padding:10px 12px;border-radius:4px}.structure-spike-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);grid-gap:14px;gap:14px;height:calc(100vh - 150px);min-height:480px;align-items:stretch}.structure-spike-side{display:flex;flex-direction:column;gap:12px;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:12px;background:rgba(255,255,255,.03);overflow:auto;min-height:0;max-height:100%}.structure-spike-search{display:grid;grid-gap:6px;gap:6px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a8680}.structure-spike-search input{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:4px;background:#161618;color:#f7f4ef;padding:8px 10px}.structure-spike-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px;max-height:220px;overflow:auto}.structure-spike-list button{width:100%;text-align:left;border:1px solid transparent;border-radius:4px;background:transparent;color:inherit;padding:8px 9px;cursor:pointer;display:grid;grid-gap:2px;gap:2px}.structure-spike-list button strong{font-size:13px;font-weight:700}.structure-spike-list button small{color:#8a8680;font-size:11px}.structure-spike-list button.is-active,.structure-spike-list button:hover{border-color:color-mix(in srgb,var(--stage,#7c6af0) 55%,transparent);background:color-mix(in srgb,var(--stage,#7c6af0) 14%,transparent)}.structure-spike-detail h2{margin:0 0 6px;font-size:18px}.structure-spike-detail h3{margin:14px 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8a8680}.structure-spike-detail ol,.structure-spike-theses{margin:0;padding-left:18px;display:grid;grid-gap:4px;gap:4px;font-size:13px}.structure-spike-detail ol button{border:0;background:none;color:#f7f4ef;cursor:pointer;padding:0;text-align:left}.structure-spike-detail ol em{color:#8a8680;font-style:normal}.structure-spike-theses a{color:#c8c2b6;text-decoration:none}.structure-spike-theses a:hover{color:#fff;text-decoration:underline}.structure-spike-muted{color:#8a8680;font-size:13px}.structure-spike-stage{position:relative;border:1px solid rgba(255,255,255,.1);border-radius:6px;overflow:hidden;min-width:0;min-height:0;height:100%;background:#0c0c0e}.structure-spike-cosmo,.structure-spike-stage>div{display:block!important;width:100%!important;height:100%!important;max-height:100%!important}@media (max-width:900px){.structure-spike-layout{grid-template-columns:1fr;height:auto}.structure-spike-side{max-height:50vh}.structure-spike-stage{height:60vh;min-height:420px}}