.atlas-page{display:flex;flex-direction:column;gap:var(--space-3)}.atlas-header{display:flex;align-items:flex-start;gap:var(--space-3);justify-content:space-between}.atlas-header h1{margin:0;font-size:var(--text-xl);font-weight:600;letter-spacing:.01em}.atlas-header p{margin:.15rem 0 0;color:var(--text-muted);font-size:var(--text-sm)}.atlas-refresh{display:inline-flex;height:var(--control-h);padding:0 var(--space-3);color:var(--text-secondary);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:500;transition:border-color .12s ease,color .12s ease}.atlas-refresh:disabled{cursor:not-allowed;opacity:.5}.atlas-refresh:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-accent)}.atlas-alert{padding:var(--space-1) var(--space-3);color:#fca5a5;background:#f871711a;border:1px solid rgb(248 113 113 / 35%);border-radius:var(--radius-sm);font-size:var(--text-sm)}.atlas-empty{padding:var(--space-6) 0;color:var(--text-muted);font-size:var(--text-sm);text-align:center}.atlas-empty-copy{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.atlas-index,.atlas-browser{display:flex;flex-direction:column;gap:var(--space-3)}.atlas-browser-tools{display:flex;align-items:center;gap:var(--space-3)}.atlas-browser-search{width:16rem;height:var(--control-h);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-sizing:border-box;font-size:var(--text-sm);max-width:40vw}.atlas-browser-search:focus-visible{border-color:var(--border-accent);outline:none}.atlas-browser-crumbs{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-1);min-width:0}.atlas-browser-crumb{padding:0;font:inherit;color:var(--text-muted);background:none;border:none;cursor:pointer;font-size:var(--text-sm);font-weight:500}.atlas-browser-crumb:hover,.atlas-browser-crumb:focus-visible{color:var(--text-accent);outline:none;text-decoration:underline}.atlas-browser-crumb[aria-current=true]{color:var(--text-primary);cursor:default;font-size:var(--text-base);font-weight:600;text-decoration:none}.atlas-picker-nav{display:flex;align-items:center;gap:var(--space-3)}.atlas-picker-nav .atlas-browser-crumbs{flex:1}.atlas-picker-nav .atlas-browser-search{width:12rem}.atlas-picker-up{height:var(--control-h);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.atlas-picker-up:hover,.atlas-picker-up:focus-visible{color:var(--text-accent);border-color:var(--border-accent);outline:none}.atlas-picker-context{display:flex;padding:var(--space-2) var(--space-3);background:var(--surface-secondary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);gap:var(--space-3);margin-top:var(--space-2)}.atlas-picker-context-copy{display:flex;flex:1;align-items:baseline;column-gap:var(--space-2);flex-wrap:wrap;min-width:0}.atlas-picker-context-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.atlas-picker-context-meta{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.atlas-picker-context-desc{display:-webkit-box;color:var(--text-secondary);-webkit-box-orient:vertical;flex-basis:100%;font-size:var(--text-xs);-webkit-line-clamp:2;overflow:hidden}.atlas-picker-start{height:var(--control-h);padding:0 var(--space-4);color:#0b1220;background:var(--text-accent);border:1px solid var(--border-accent);border-radius:var(--radius-md);cursor:pointer;flex-shrink:0;font-size:var(--text-xs);font-weight:700;white-space:nowrap}.atlas-picker-start:disabled{color:var(--text-accent);background:transparent;cursor:default}.atlas-picker-start:hover:not(:disabled),.atlas-picker-start:focus-visible:not(:disabled){filter:brightness(1.1);outline:none}.atlas-picker-selection{display:flex;padding:var(--space-2) var(--space-3);background:#60a5fa14;align-items:baseline;border:1px solid var(--border-accent);border-radius:var(--radius-md);column-gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}.atlas-picker-selection-empty{background:var(--surface-secondary);border-color:var(--border-muted);border-style:dashed}.atlas-picker-selection-label{color:var(--text-accent);font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.atlas-picker-selection-name{color:var(--text-primary);font-size:var(--text-base);font-weight:700}.atlas-picker-selection-meta{color:var(--text-muted);font-size:var(--text-xs)}.atlas-picker-selection-desc{display:-webkit-box;color:var(--text-secondary);-webkit-box-orient:vertical;flex-basis:100%;font-size:var(--text-xs);-webkit-line-clamp:2;overflow:hidden}.atlas-picker-selection-hint{color:var(--text-muted);font-size:var(--text-sm)}.atlas-browser-results{margin-top:var(--space-2);max-height:24rem;overflow-y:auto}.atlas-terrain-region{fill:#344a742e;stroke:#7ea6e859;stroke-width:1.25}.atlas-terrain-contour{fill:none;stroke:#94a3b81a;stroke-dasharray:1 6;stroke-width:1}.atlas-terrain-title{fill:var(--text-muted);font-family:var(--font-ui);font-size:15px;font-style:italic;letter-spacing:.22em;text-transform:uppercase}.atlas-cluster-dot{fill:#8ea3c4;transition:fill .12s ease}.atlas-cluster-selectable .atlas-cluster-dot{fill:#7ea6e8;stroke:#7ea6e873;stroke-width:4}.atlas-map-body:hover .atlas-cluster-dot,.atlas-map-body:focus-visible .atlas-cluster-dot{fill:#dbe6f7}.atlas-cluster-inert{cursor:default;opacity:.45}.atlas-cluster-name{font-size:12.5px;paint-order:stroke;stroke:#0c1322;stroke-width:3px}.atlas-panel,.atlas-map-panel{padding:var(--space-3) var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight)}.atlas-map-panel{background:radial-gradient(ellipse at 0% 50%,rgb(59 130 246 / 7%),transparent 55%) var(--surface-primary);overflow:hidden}.atlas-panel-title-row{display:flex;align-items:baseline;gap:var(--space-3);justify-content:space-between}.atlas-panel-title-row h2,.atlas-panel-heading{margin:0;font-size:var(--text-base);font-weight:600}.atlas-panel-note{margin:0;color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.atlas-index-columns{display:grid;align-items:start;gap:var(--space-3);grid-template-columns:minmax(0,5fr) minmax(0,4fr)}@media(width<=900px){.atlas-index-columns{grid-template-columns:1fr}}.atlas-map{display:block;width:100%;height:auto;margin-top:var(--space-2)}.atlas-map-orbit{fill:none;stroke:#94a3b81f;stroke-width:1}.atlas-sun-core{stop-color:#f2d9a4;stop-opacity:.95}.atlas-sun-mid{stop-color:#d8933f;stop-opacity:.35}.atlas-sun-edge{stop-color:#d8933f;stop-opacity:0}.atlas-map-body{cursor:pointer;outline:none}.atlas-map-planet{fill:#1d2c4b;stroke:#7ea6e8b3;stroke-width:1.25;transition:fill .12s ease,stroke .12s ease}.atlas-map-home .atlas-map-planet{fill:#234a7c;stroke:#9ec2f5}.atlas-map-body:hover .atlas-map-planet,.atlas-map-body:focus-visible .atlas-map-planet{fill:#27406e;stroke:#a8c7f2}.atlas-map-home-halo{animation:atlas-halo 4s ease-in-out infinite;fill:none;stroke:#7ea6e840;stroke-dasharray:3 5;stroke-width:1}@keyframes atlas-halo{0%,to{stroke-opacity:.4}50%{stroke-opacity:1}}.atlas-map-current{filter:drop-shadow(0 0 5px rgb(253 224 71 / 60%))}.atlas-map-current circle,.atlas-map-current rect{stroke:var(--color-accent-yellow);stroke-width:2}.atlas-map-current path{stroke:var(--color-accent-yellow)}.atlas-map-current text{fill:var(--color-accent-yellow);font-weight:700}.atlas-map-ring{fill:none;stroke:#b4c8eb8c;stroke-dasharray:5 3;stroke-width:1.25}.atlas-map-moon-dot{fill:#8ea3c4;transition:fill .12s ease}.atlas-map-body:hover .atlas-map-moon-dot,.atlas-map-body:focus-visible .atlas-map-moon-dot{fill:#cdd9ee}.atlas-map-name{fill:var(--text-secondary);font-family:var(--font-ui);font-size:15px;font-weight:600}.atlas-map-sun-name{fill:#e8c98f;letter-spacing:.06em;text-transform:uppercase}.atlas-map-body:hover .atlas-map-name,.atlas-map-body:focus-visible .atlas-map-name{fill:var(--text-primary)}.atlas-map-count{fill:var(--text-muted);font-family:var(--font-ui);font-size:11.5px}.atlas-map-empty{fill:var(--text-muted);font-family:var(--font-ui);font-size:15px}.atlas-map-lane{fill:none;stroke:#e8c98fa6;stroke-dasharray:7 5;stroke-width:1.75;transition:stroke .12s ease}.atlas-map-lane-group:hover .atlas-map-lane,.atlas-map-lane-group:focus-visible .atlas-map-lane{stroke:#e8c98ff2}.atlas-map-lane-name{fill:#e8c98fe5;paint-order:stroke;stroke:#0c1322;stroke-width:3px}.atlas-bodymap-panel{overflow:hidden}.atlas-bodymap-planet{fill:#14203a;stroke:#7ea6e88c;stroke-width:1.5}.atlas-bodymap-planet-name{fill:var(--text-primary);font-family:var(--font-ui);font-size:17px;font-weight:600}.atlas-bodymap-layer-label{fill:var(--text-muted);font-family:var(--font-ui);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.atlas-bodymap-surface-dot{fill:#9ec2f5}.atlas-bodymap-surface-name{fill:var(--text-secondary);font-size:12.5px;font-weight:500}.atlas-bodymap-track{fill:none;stroke:#94a3b824;stroke-width:1}.atlas-bodymap-ring{fill:none;stroke:#b4c8eb73;stroke-dasharray:5 4;stroke-width:1.25;transition:stroke .12s ease}.atlas-map-body:hover .atlas-bodymap-ring,.atlas-map-body:focus-visible .atlas-bodymap-ring{stroke:#b4c8ebd9}.atlas-bodymap-ring-name{fill:var(--text-secondary)}.atlas-bodymap-ring-count{fill:var(--text-muted);font-size:11.5px;font-weight:400}.atlas-bodymap-station{fill:#8ea3c4;transition:fill .12s ease}.atlas-map-body:hover .atlas-bodymap-station,.atlas-map-body:focus-visible .atlas-bodymap-station{fill:#dbe6f7}.atlas-bodymap-station-tethered{fill:#e8c98f}.atlas-bodymap-tether{stroke:#e8c98f73;stroke-dasharray:2 3;stroke-width:1}.atlas-bodymap-lane{stroke:#e8c98fa6;stroke-dasharray:7 5;stroke-width:1.75;transition:stroke .12s ease}.atlas-map-body:hover .atlas-bodymap-lane,.atlas-map-body:focus-visible .atlas-bodymap-lane{stroke:#e8c98ff2}.atlas-bodymap-hub{fill:#e8c98f}.atlas-bodymap-hub-name{fill:var(--text-muted)}.atlas-map-sun-core-dot{fill:#f2d9a4}.atlas-map-topdown .atlas-map-sun-name{font-size:12px}.atlas-map-free-marker{fill:#e8c98f33;stroke:#e8c98fb3;stroke-width:1;transition:fill .12s ease}.atlas-map-free:hover .atlas-map-free-marker,.atlas-map-free:focus-visible .atlas-map-free-marker{fill:#e8c98f8c}.atlas-bodymap-globe{stroke:#7ea6e873;stroke-width:1.25}.atlas-globe-light{stop-color:#24365e}.atlas-globe-dark{stop-color:#0d1730}.atlas-bodymap-graticule{stroke:#94a3b824;stroke-width:1}.atlas-bodymap-meridian{stroke:#e8c98f4d;stroke-dasharray:2 4}.atlas-bodymap-equator{stroke:#94a3b838;stroke-dasharray:2 4}.atlas-bodymap-leader{stroke:#94a3b838;stroke-width:.75}.atlas-bodymap-adjacency{stroke:#7ea6e84d;stroke-width:1}.atlas-bodymap-region-extent{fill:#60a5fa0f;stroke:#7ea6e84d;stroke-dasharray:3 3;stroke-width:1}.atlas-bodymap-region-dot{fill:#7ea6e8}.atlas-bodymap-planet-dot{fill:#234a7c;stroke:#9ec2f5;stroke-width:1.5}.atlas-bodymap-sunline{stroke:#e8c98f40;stroke-dasharray:2 5;stroke-width:1}.atlas-bodymap-sun-glyph{fill:#e8c98f;font-size:15px;text-anchor:middle}.atlas-bodymap-zone-marker{fill:#60a5fa26;stroke:#7ea6e899;stroke-width:1.25;transition:fill .12s ease}.atlas-map-body:hover .atlas-bodymap-zone-marker,.atlas-map-body:focus-visible .atlas-bodymap-zone-marker{fill:#60a5fa66}.atlas-bodymap-unplaced{fill:var(--text-muted);font-family:var(--font-ui);font-size:11px}.atlas-bodymap-zone-band{fill:none;stroke:#60a5fa4d;stroke-linecap:round;stroke-width:7;transition:stroke .12s ease}.atlas-map-body:hover .atlas-bodymap-zone-band,.atlas-map-body:focus-visible .atlas-bodymap-zone-band{stroke:#60a5fa8c}.atlas-bodymap-hab-dot{fill:#b7cdf0}.atlas-bodymap-hab-name{fill:var(--text-muted);font-family:var(--font-ui);font-size:10.5px;paint-order:stroke;stroke:#0c1322;stroke-width:3px;transition:fill .12s ease}.atlas-map-body:hover .atlas-bodymap-hab-name,.atlas-map-body:focus-visible .atlas-bodymap-hab-name{fill:var(--text-primary)}.atlas-bodymap-unfixed-track{fill:none;stroke:#94a3b833;stroke-dasharray:3 6;stroke-width:1}.atlas-gazetteer,.atlas-gazetteer ul{display:flex;margin:0;padding:0;flex-direction:column;list-style:none}.atlas-gazetteer-row{display:flex;width:100%;padding:.2rem var(--space-2);font:inherit;color:var(--text-secondary);background:transparent;align-items:baseline;border:none;border-radius:var(--radius-sm);border-top:1px solid var(--border-subtle);cursor:pointer;font-size:var(--text-sm);gap:var(--space-2);text-align:left}.atlas-gazetteer-row:hover,.atlas-gazetteer-row:focus-visible{color:var(--text-primary);background:var(--surface-tertiary);outline:none}.atlas-gazetteer-row-selected,.atlas-gazetteer-row-selected:hover{background:#3b82f61f;box-shadow:inset 2px 0 0 var(--color-accent-blue)}.atlas-gazetteer-row-context{cursor:default;opacity:.55}.atlas-gazetteer-row-context:hover{background:transparent}.atlas-row-name{color:var(--text-primary);font-weight:500}.atlas-gazetteer-row-context .atlas-row-name{color:var(--text-secondary);font-weight:400}.atlas-row-sub{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.atlas-row-count{color:var(--text-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;margin-left:auto}.atlas-registry{display:flex;flex-direction:column;max-height:30rem;overflow-y:auto}.atlas-registry-group{border-top:1px solid var(--border-subtle)}.atlas-registry-group summary{display:flex;padding:var(--space-1) 0;color:var(--text-secondary);align-items:center;cursor:pointer;font-size:var(--text-sm);font-weight:600;gap:var(--space-2);list-style:none}.atlas-registry-group summary::-webkit-details-marker{display:none}.atlas-registry-group summary:after,.atlas-fragment summary:after{color:var(--text-muted);content:"▸";font-size:var(--text-2xs);margin-left:auto;transition:transform .12s ease}.atlas-registry-group[open] summary:after,.atlas-fragment[open] summary:after{transform:rotate(90deg)}.atlas-registry-count{color:var(--text-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;font-weight:500}.atlas-registry-group ul{display:flex;margin:0 0 var(--space-2);padding:0;flex-direction:column;list-style:none}.atlas-registry-group li button{display:flex;width:100%;padding:.15rem var(--space-2) .15rem var(--space-4);font:inherit;color:var(--text-secondary);background:transparent;align-items:baseline;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);gap:var(--space-2);text-align:left}.atlas-registry-group li button:hover,.atlas-registry-group li button:focus-visible{background:var(--surface-tertiary);outline:none}.atlas-entity{display:flex;flex-direction:column;gap:var(--space-3)}.atlas-breadcrumbs{display:flex;align-items:baseline;flex-wrap:wrap;font-size:var(--text-xs);gap:var(--space-1)}.atlas-breadcrumbs a{color:var(--text-muted);text-decoration:none}.atlas-breadcrumbs a:hover,.atlas-breadcrumbs a:focus-visible{color:var(--text-accent);text-decoration:underline}.atlas-breadcrumb-sep{color:var(--text-muted);opacity:.5}.atlas-entity-head{display:flex;align-items:flex-start;gap:var(--space-3);justify-content:space-between}.atlas-entity-head h1{margin:0 0 var(--space-1);font-size:var(--text-xl);font-weight:600}.atlas-chip-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1)}.atlas-chip{padding:.05rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.atlas-chip[data-kind=geographic_location]{color:#93c1f7;background:#60a5fa1a;border-color:#60a5fa59}.atlas-chip[data-kind=installation]{color:#7de8d3;background:#2dd4bf1a;border-color:#2dd4bf59}.atlas-chip[data-kind=faction]{color:#c4b5fd;background:#a78bfa1a;border-color:#a78bfa59}.atlas-chip[data-kind=npc]{color:#f9a8d4;background:#f472b61a;border-color:#f472b659}.atlas-chip[data-kind=artifact]{color:#fcd34d;background:#fbbf241a;border-color:#fbbf2459}.atlas-chip[data-kind=transport]{color:#67e8f9;background:#22d3ee1a;border-color:#22d3ee59}.atlas-chip-prominence[data-prominence=mythic]{color:#fcd34d;background:#fbbf241a;border-color:#fbbf2466}.atlas-chip-prominence[data-prominence=renowned]{color:#c4b5fd;background:#a78bfa1a;border-color:#a78bfa66}.atlas-start-button{flex:none;height:var(--control-h-lg);padding:0 var(--space-4);color:#fff;background:var(--gradient-cta);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:filter .12s ease}.atlas-start-button:disabled{cursor:not-allowed;opacity:.6}.atlas-start-button:hover:not(:disabled){filter:brightness(1.12)}.atlas-description{margin:0;color:var(--text-secondary);font-size:var(--text-base);line-height:1.55;max-width:60rem}.atlas-facts{display:flex;margin:0;flex-wrap:wrap;gap:var(--space-2)}.atlas-fact{display:flex;padding:var(--space-1) var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column}.atlas-fact dt{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.atlas-fact dd{margin:0;color:var(--text-primary);font-size:var(--text-sm)}.atlas-section{padding:var(--space-3) var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight)}.atlas-section h3{display:flex;margin:0 0 var(--space-2);color:var(--text-muted);align-items:baseline;font-size:var(--text-2xs);font-weight:600;gap:var(--space-2);letter-spacing:.08em;text-transform:uppercase}.atlas-section-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:500}.atlas-tile-grid{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.atlas-tile{display:flex;padding:var(--space-2) var(--space-3);font:inherit;color:inherit;background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:.15rem;text-align:left;transition:border-color .12s ease,background .12s ease}.atlas-tile:hover,.atlas-tile:focus-visible{background:var(--surface-tertiary);border-color:var(--border-accent);outline:none}.atlas-tile-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.atlas-tile-meta{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.atlas-tile-desc{display:-webkit-box;color:var(--text-secondary);-webkit-box-orient:vertical;font-size:var(--text-xs);-webkit-line-clamp:2;line-height:1.45;overflow:hidden}.atlas-tile-count{color:var(--text-accent);font-size:var(--text-2xs);margin-top:.15rem}.atlas-presence{display:flex;flex-direction:column;gap:var(--space-2)}.atlas-presence-group{display:flex;align-items:baseline;gap:var(--space-3)}.atlas-presence-kind{display:flex;flex:none;margin:0;color:var(--text-muted);align-items:center;font-size:var(--text-xs);font-weight:500;gap:var(--space-1);min-width:7rem}.atlas-presence-chips{display:flex;flex-wrap:wrap;gap:var(--space-1)}.atlas-presence-chip{padding:.1rem var(--space-2);font:inherit;color:var(--text-secondary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);transition:border-color .12s ease,color .12s ease}.atlas-presence-chip:hover,.atlas-presence-chip:focus-visible{color:var(--text-primary);border-color:var(--border-accent);outline:none}.atlas-links-group{margin-bottom:var(--space-2)}.atlas-links-group:last-child{margin-bottom:0}.atlas-links-category{margin:0 0 var(--space-1);color:var(--text-secondary);font-size:var(--text-xs);font-weight:600}.atlas-links{display:flex;flex-direction:column}.atlas-link-row{display:flex;padding:.2rem 0;align-items:baseline;border-top:1px solid var(--border-subtle);gap:var(--space-2)}.atlas-link-pill{flex:none;color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;min-width:9rem;text-transform:uppercase}.atlas-link-body{display:flex;color:var(--text-muted);align-items:baseline;flex-wrap:wrap;font-size:var(--text-sm);gap:var(--space-2);min-width:0}.atlas-link-target{color:var(--text-accent);text-decoration:none}a.atlas-link-target:hover,a.atlas-link-target:focus-visible{text-decoration:underline}.atlas-link-era{color:var(--text-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums}.atlas-link-strength{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-2xs)}.atlas-fragments{display:flex;flex-direction:column}.atlas-fragment{border-top:1px solid var(--border-subtle)}.atlas-fragment summary{display:flex;padding:var(--space-1) 0;align-items:baseline;cursor:pointer;gap:var(--space-2);list-style:none}.atlas-fragment summary::-webkit-details-marker{display:none}.atlas-fragment-title{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.atlas-fragment-tags{color:var(--text-muted);font-size:var(--text-2xs);font-weight:400;letter-spacing:.04em;text-transform:uppercase}.atlas-fragment-snippet{color:var(--text-muted);font-size:var(--text-xs);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atlas-fragment-body{margin:0 0 var(--space-2);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.55;max-width:60rem}.atlas-fragment-body p{margin:0 0 var(--space-2)}.atlas-lore-ref{color:var(--text-primary);font-style:italic}.atlas-lore-notes{border-top:1px solid var(--border-subtle);margin-top:var(--space-2);padding-top:var(--space-2)}.atlas-lore-notes-title{margin:0 0 var(--space-1);color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.atlas-lore-notes ul{display:flex;margin:0;flex-direction:column;gap:var(--space-1);padding-left:var(--space-4)}.atlas-lore-notes li{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}.atlas-lore-notes li p{margin:0}.atlas-classifications ul{display:flex;margin:0;padding:0;flex-wrap:wrap;gap:var(--space-2);list-style:none}.atlas-classifications li{display:inline-flex;background:var(--surface-secondary);align-items:center;border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.atlas-page .atlas-classifications li button{padding:var(--space-1) var(--space-2);color:var(--text-accent);background:transparent;border:0;cursor:pointer}.atlas-classifications li>span{color:var(--text-muted);font-size:var(--text-2xs);padding-right:var(--space-2);text-transform:uppercase}.encyclopedia-page{display:flex;flex:1;padding:var(--space-5);flex-direction:column;gap:var(--space-4);min-width:0;overflow-y:auto}.encyclopedia-header h1,.encyclopedia-entry h1,.encyclopedia-section h2,.encyclopedia-header p,.encyclopedia-overline{margin:0}.encyclopedia-header h1,.encyclopedia-entry h1{color:var(--text-primary);font-size:var(--text-2xl)}.encyclopedia-header p,.encyclopedia-lead{color:var(--text-secondary);line-height:1.55}.encyclopedia-filters{display:grid;gap:var(--space-2);grid-template-columns:minmax(14rem,1fr) repeat(2,minmax(9rem,auto))}.encyclopedia-filters input,.encyclopedia-filters select{height:var(--control-h-lg);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md)}.encyclopedia-card-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.encyclopedia-card-grid>button{display:flex;padding:var(--space-3);color:var(--text-secondary);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:var(--space-2);text-align:left}.encyclopedia-card-grid>button:hover,.encyclopedia-card-grid>button:focus-visible{border-color:var(--border-accent);outline:none}.encyclopedia-card-heading{display:flex;color:var(--text-primary);align-items:center;gap:var(--space-2);justify-content:space-between}.encyclopedia-card-heading>span,.encyclopedia-chip-row span,.encyclopedia-topics span{padding:.12rem var(--space-2);color:var(--text-muted);background:var(--surface-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-size:var(--text-2xs)}.encyclopedia-card-meta{color:var(--text-muted);font-size:var(--text-xs)}.encyclopedia-card-summary{font-size:var(--text-sm);line-height:1.45}.encyclopedia-empty,.encyclopedia-alert{margin:0;color:var(--text-muted)}.encyclopedia-alert{color:var(--color-danger)}.encyclopedia-entry{margin:0 auto;max-width:68rem}.encyclopedia-entry-header,.encyclopedia-chip-row,.encyclopedia-topics{display:flex;gap:var(--space-2)}.encyclopedia-chip-row,.encyclopedia-topics{flex-wrap:wrap;margin-top:var(--space-2)}.encyclopedia-overline{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase}.encyclopedia-facts,.encyclopedia-identity{display:grid;margin:0;gap:var(--space-2)}.encyclopedia-facts{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.encyclopedia-facts>div,.encyclopedia-identity>div{padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.encyclopedia-facts dt,.encyclopedia-identity dt{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.05em;text-transform:uppercase}.encyclopedia-facts dd,.encyclopedia-identity dd{margin:var(--space-1) 0 0;color:var(--text-secondary);line-height:1.5}.encyclopedia-section{color:var(--text-secondary);border-top:1px solid var(--border-subtle);line-height:1.6;padding-top:var(--space-3)}.encyclopedia-section h2{color:var(--text-primary);font-size:var(--text-lg)}.encyclopedia-associations{display:flex;margin:var(--space-2) 0 0;padding:0;flex-direction:column;gap:var(--space-1);list-style:none}.encyclopedia-associations li{display:flex;align-items:baseline;gap:var(--space-2)}.encyclopedia-associations li>span{color:var(--text-muted);font-size:var(--text-2xs);text-transform:uppercase}@media(width<=720px){.encyclopedia-page{padding:var(--space-3)}.encyclopedia-filters{grid-template-columns:1fr}}.modal-backdrop{position:fixed;background:#050912b3;backdrop-filter:blur(2px);inset:0;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:30}.modal-backdrop.open{opacity:1;pointer-events:auto}.modal{position:fixed;top:50%;left:50%;display:flex;width:min(640px,95vw);padding:0;background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;max-height:90vh;opacity:0;pointer-events:none;transform:translate(-50%,-48%) scale(.98);transition:opacity .15s ease,transform .15s ease;z-index:40}.modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.modal-header{display:flex;padding:var(--space-3) var(--space-4);align-items:center;border-bottom:1px solid var(--border-subtle);justify-content:space-between}.modal-header h2{margin:0;font-size:var(--text-base);font-weight:600}.modal-overline{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.modal-close{color:var(--text-muted);background:transparent;border:none;cursor:pointer;font-size:1.25rem;line-height:1;transition:color .12s ease}.modal-close:hover{color:var(--text-primary)}.modal-body{display:flex;padding:var(--space-4);flex-direction:column;gap:var(--space-3);overflow-y:auto}.modal-footer{display:flex;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-subtle);gap:var(--space-2);justify-content:flex-end}.modal-primary,.modal-secondary{height:var(--control-h-lg);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:filter .12s ease,border-color .12s ease}.modal-primary{color:#fff;background:var(--gradient-cta)}.modal-primary:hover{filter:brightness(1.12)}.modal-secondary{color:var(--text-secondary);background:var(--surface-tertiary);border-color:var(--border-muted)}.modal-secondary:hover{color:var(--text-primary);border-color:var(--border-default)}.atlas-modal{width:min(72rem,95vw);height:min(54rem,90vh)}.atlas-modal-header{flex:none}.atlas-modal-actions{display:flex;align-items:center;gap:var(--space-3)}.atlas-modal-actions a{color:var(--text-accent);font-size:var(--text-xs);font-weight:600;text-decoration:none}.atlas-modal-actions a:hover,.atlas-modal-actions a:focus-visible{text-decoration:underline}.atlas-modal-body{min-height:0}@media(width<=720px){.atlas-modal{width:96vw;height:94vh;max-height:94vh}}.login-screen{display:flex;height:100vh;padding:var(--space-8) var(--space-6);background:radial-gradient(circle at top,rgb(59 130 246 / 8%),transparent 50%) var(--bg-shell);align-items:center;box-sizing:border-box;flex-direction:column;gap:var(--space-6);overflow-y:auto}.login-hero{display:flex;width:min(720px,100%);padding:var(--space-8);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-lg);box-shadow:var(--panel-highlight);flex-direction:column;flex-shrink:0;justify-content:center}.login-hero-eyebrow{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.login-hero-title{margin:var(--space-1) 0 var(--space-3);color:var(--text-primary);font-size:2rem;font-weight:600;line-height:1.2}.login-hero-lore,.login-hero-plain{margin:0;color:var(--text-secondary);font-size:var(--text-base)}.login-hero-plain{font-size:var(--text-sm)}.login-primer{background:var(--surface-secondary);border-color:var(--border-subtle)}.login-form-shell{display:flex;width:100%;align-items:center;flex-shrink:0;justify-content:center}.login-card{display:flex;width:100%;margin:0 auto;padding:var(--space-6);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight),var(--shadow-md);flex-direction:column;gap:var(--space-2);max-width:420px}.login-title{margin:0 0 var(--space-1);color:var(--text-primary);font-size:var(--text-lg);font-weight:600;text-align:center}.login-subtitle{margin:0 0 var(--space-3);color:var(--text-muted);font-size:var(--text-sm);text-align:center}.login-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:500;letter-spacing:.04em}.login-input{height:var(--control-h-lg);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-size:var(--text-sm)}.login-input:focus-visible{border-color:var(--border-accent);outline:none}.login-error{margin:0;padding:var(--space-2) var(--space-3);color:#fca5a5;background:#f871711a;border-radius:var(--radius-md);font-size:var(--text-sm)}.login-button{height:var(--control-h-lg);padding:0 var(--space-4);color:#fff;background:var(--gradient-cta);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;margin-top:var(--space-2)}.login-button:disabled{cursor:default;opacity:.6}.login-button:hover:not(:disabled){filter:brightness(1.12)}.login-button-secondary{color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);font-weight:500;margin-top:var(--space-3)}.login-button-secondary:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-accent);filter:none}@media(width<=768px){.login-hero{padding:var(--space-6)}}.momentum-indicator{display:inline-flex;width:1.125rem;height:1.125rem;background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-xs);font-variant-numeric:tabular-nums;justify-content:center;margin-left:var(--space-1)}.momentum-indicator.momentum-positive{color:#9be8bf;background:#22c55e1a;border-color:#22c55e59}.momentum-indicator.momentum-negative{color:#fca5a5;background:#f871711a;border-color:#f8717159}.momentum-indicator.momentum-neutral{color:var(--text-muted);border-color:var(--border-muted)}.session-panel{display:flex;padding:var(--space-4);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-4)}.session-panel-header{display:flex;align-items:flex-start;border-bottom:1px solid var(--border-subtle);gap:var(--space-3);justify-content:space-between;padding-bottom:var(--space-3)}.session-panel-header h2{margin:0;font-size:var(--text-lg);font-weight:600}.session-panel-subtitle{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.session-panel-empty{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.session-chip{display:inline-flex;padding:.05rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:500;gap:var(--space-2);letter-spacing:.04em;text-transform:uppercase}.chip-muted{color:var(--text-muted)}.panel-label{margin:0 0 var(--space-2);color:var(--text-muted);border-bottom:1px solid var(--border-subtle);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;padding-bottom:var(--space-1);text-transform:uppercase}.panel-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.panel-list{display:flex;margin:0;padding:0;flex-direction:column}.panel-list-row{display:flex;padding:var(--space-1) 0;align-items:center;font-size:var(--text-sm);justify-content:space-between}.panel-list-row+.panel-list-row{border-top:1px solid var(--border-subtle)}.panel-list-row dt{margin:0;color:var(--text-muted);letter-spacing:.03em;text-transform:capitalize}.panel-list-row dd{margin:0;color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:500;text-align:right}.panel-skill-list{display:flex;margin:0;padding:0;flex-direction:column;list-style:none}.panel-skill-list li{display:flex;padding:var(--space-1) 0;align-items:center;font-size:var(--text-sm);justify-content:space-between}.panel-skill-list li+li{border-top:1px solid var(--border-subtle)}.panel-skill-tier{color:var(--text-accent);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.panel-tags{display:flex;flex-wrap:wrap;gap:var(--space-1)}.panel-nature .panel-list-row{align-items:flex-start;flex-direction:column;gap:var(--space-1)}.panel-nature .panel-list-row dd{font-weight:400;text-align:left}.panel-bio{margin:0 0 var(--space-2);color:var(--text-primary);font-size:var(--text-sm);line-height:1.5}.panel-calling-list{display:flex;margin:0;padding:0 0 0 var(--space-3);flex-direction:column;font-size:var(--text-sm);gap:var(--space-1);line-height:1.4}.inventory-section{display:flex;flex-direction:column;gap:var(--space-1)}.inventory-list{display:flex;margin:0;padding:0;flex-direction:column;list-style:none}.inventory-list-item{display:flex;padding:var(--space-2) 0;align-items:center;gap:var(--space-3);justify-content:space-between}.inventory-list-item+.inventory-list-item{border-top:1px solid var(--border-subtle)}.inventory-item-name{margin:0;color:var(--text-primary);font-size:var(--text-sm);font-weight:500}.inventory-item-meta{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-xs)}.inventory-item-effect{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.inventory-quantity{display:inline-flex;padding:.05rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.character-drawer-backdrop{position:fixed;background:#02061799;inset:0;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.character-drawer-backdrop.open{opacity:1;pointer-events:auto}.character-drawer{position:fixed;top:0;bottom:0;left:0;width:min(420px,90vw);padding:var(--space-6) var(--space-4);background:var(--surface-elevated);border-right:1px solid var(--border-default);box-shadow:var(--shadow-lg);overflow-y:auto;transform:translate(-100%);transition:transform .22s ease;z-index:11}.character-drawer.open{transform:translate(0)}.character-drawer-close{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;width:1.75rem;height:1.75rem;color:var(--text-muted);background:transparent;align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-lg);justify-content:center;line-height:1;z-index:1}.character-drawer-close:hover{color:var(--text-primary);border-color:var(--border-default)}.chronicle-seed-text{margin:0;padding:var(--space-3);color:var(--text-secondary);background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:var(--text-sm);font-style:italic;line-height:1.6}.anchor-entity-card{display:flex;padding:var(--space-3);background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-1)}.anchor-entity-card:hover{border-color:var(--border-muted)}.anchor-entity-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:500}.anchor-entity-meta{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.entity-unresolved-hint{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--text-xs)}.thread-list{display:flex;margin:0;padding:0;flex-direction:column;gap:var(--space-2);list-style:none}.thread-item{padding:var(--space-3);background:var(--surface-primary);border:1px solid var(--border-subtle);border-left:2px solid var(--border-muted);border-radius:var(--radius-md)}.thread-item-focused{border-color:var(--border-accent);border-left-color:var(--color-accent-blue)}.thread-header{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.thread-title{color:var(--text-primary);font-size:var(--text-sm);font-weight:500}.thread-status{padding:.05rem var(--space-2);color:var(--text-muted);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);flex-shrink:0;font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.thread-goal,.thread-position,.local-continuity-note,.local-continuity-location{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--text-xs);line-height:1.5}.thread-position,.local-continuity-location{color:var(--text-muted)}.wrap-target-panel{padding:var(--space-3);background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.wrap-target-panel .panel-label{margin-bottom:var(--space-2)}.chronicle-drawer-backdrop{position:fixed;background:#02061799;inset:0;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.chronicle-drawer-backdrop.open{opacity:1;pointer-events:auto}.chronicle-drawer{position:fixed;top:0;right:0;bottom:0;width:min(480px,90vw);padding:var(--space-6) var(--space-4);background:var(--surface-elevated);border-left:1px solid var(--border-default);box-shadow:var(--shadow-lg);overflow-y:auto;transform:translate(100%);transition:transform .22s ease;z-index:11}.chronicle-drawer.open{transform:translate(0)}.chronicle-drawer-close{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;width:1.75rem;height:1.75rem;color:var(--text-muted);background:transparent;align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-lg);justify-content:center;line-height:1;z-index:1}.chronicle-drawer-close:hover{color:var(--text-primary);border-color:var(--border-default)}.template-drawer-backdrop{position:fixed;background:#02061799;inset:0;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:12}.template-drawer-backdrop.open{opacity:1;pointer-events:auto}.template-drawer{position:fixed;top:0;right:0;bottom:0;display:flex;width:min(640px,95vw);padding:var(--space-6);background:var(--surface-elevated);border-left:1px solid var(--border-default);box-shadow:var(--shadow-lg);flex-direction:column;transform:translate(100%);transition:transform .22s ease;z-index:13}.template-drawer.open{transform:translate(0)}.template-drawer-close{position:absolute;top:var(--space-3);left:var(--space-3);display:flex;width:1.75rem;height:1.75rem;color:var(--text-muted);background:transparent;align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-lg);justify-content:center;line-height:1}.template-drawer-close:hover{color:var(--text-primary);border-color:var(--border-default)}.template-drawer-layout{display:grid;height:100%;gap:var(--space-4);grid-template-columns:230px 1fr}.template-list{display:flex;flex-direction:column;gap:var(--space-3)}.template-list-header{display:flex;border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-2)}.template-list-title{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.template-list-subtitle{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.template-list-body{display:flex;margin:0;padding:0;flex-direction:column;gap:var(--space-1);list-style:none}.template-list-item{display:flex;padding:var(--space-2);color:var(--text-secondary);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:.15rem;text-align:left}.template-list-item:hover{background:var(--surface-secondary);border-color:var(--border-subtle)}.template-list-item.active{color:var(--text-primary);background:var(--surface-tertiary);border-color:var(--border-default)}.template-list-label{margin:0;font-size:var(--text-sm);font-weight:500}.template-list-meta{margin:0;color:var(--text-muted);font-size:var(--text-2xs)}.template-empty{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.template-note{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.template-editor{display:flex;padding:var(--space-4);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-4)}.template-editor-header{display:flex;border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-3)}.template-editor-title{margin:0;color:var(--text-primary);font-size:var(--text-lg);font-weight:600}.template-editor-description{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.template-editor-status{display:flex;margin:0;align-items:center;gap:var(--space-2)}.template-badge{display:inline-flex;padding:.05rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.template-badge.badge-override{color:var(--color-accent-yellow);border-color:#facc1566}.template-updated{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.template-editor-label{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.template-editor-textarea{padding:var(--space-3);color:var(--text-primary);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.5;min-height:180px;resize:vertical}.template-editor-textarea:focus-visible{border-color:var(--border-accent);outline:none}.template-editor-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.template-button{display:inline-flex;height:var(--control-h);padding:0 var(--space-3);align-items:center;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:500}.template-button.primary{color:var(--text-primary);background:var(--gradient-cta);border:1px solid transparent}.template-button.secondary{color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted)}.template-button.secondary:hover:not(:disabled){border-color:var(--border-accent)}.template-button:disabled{cursor:not-allowed;opacity:.5}.template-placeholder{margin:0;color:var(--text-muted);font-size:var(--text-sm);min-height:4rem}.template-error{margin:0;padding:var(--space-2) var(--space-3);color:#fca5a5;background:#f871711a;border-radius:var(--radius-md);font-size:var(--text-sm)}.inventory-delta-badge{position:relative;display:inline-flex;padding:.0625rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:default;gap:var(--space-1);transition:border-color .12s ease,color .12s ease}.inventory-delta-badge:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.inventory-delta-badge .badge-icon{font-size:var(--text-xs)}.inventory-delta-tooltip{position:absolute;top:calc(100% + var(--space-2));left:50%;width:max(260px,18vw);padding:var(--space-3);color:var(--text-primary);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-xs);opacity:0;pointer-events:none;text-transform:none;transform:translate(-50%,-4px);transition:opacity .12s ease,transform .12s ease;z-index:20}.inventory-delta-badge:hover,.inventory-delta-badge:focus-within{color:var(--text-primary);border-color:var(--border-default)}.inventory-delta-badge:hover .inventory-delta-tooltip,.inventory-delta-badge:focus-within .inventory-delta-tooltip{opacity:1;pointer-events:auto;transform:translate(-50%)}.inventory-delta-title{margin:0 0 var(--space-2);color:var(--text-muted);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.inventory-delta-row{display:grid;padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle);font-size:var(--text-xs);gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.inventory-delta-row:last-child{border-bottom:none}.inventory-delta-row .delta-op{font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.inventory-delta-row.inventory-delta-add .delta-op{color:#9be8bf}.inventory-delta-row.inventory-delta-remove .delta-op{color:#fca5a5}.inventory-delta-row.inventory-delta-consume .delta-op{color:#c4b5fd}.inventory-delta-row.inventory-delta-update .delta-op{color:var(--text-accent)}.inventory-delta-row .delta-kind{color:var(--text-muted);font-size:var(--text-2xs)}.inventory-delta-row .delta-name{color:var(--text-primary);font-weight:600}.inventory-delta-row .delta-quantity{font-variant-numeric:tabular-nums;font-weight:600;justify-self:end}.inventory-delta-row .delta-description{color:var(--text-secondary);font-size:var(--text-2xs)}.inventory-delta-row .delta-effect{color:var(--text-secondary);font-style:italic}.skill-check-badge{position:relative;display:inline-flex}.skill-check-icon{display:inline-flex;width:1.25rem;height:1.25rem;padding:0;color:var(--text-accent);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;transition:border-color .12s ease,color .12s ease}.skill-check-icon:hover{border-color:var(--border-accent)}.skill-check-icon svg{width:.875rem;height:.875rem}.skill-check-tooltip{position:absolute;top:calc(100% + var(--space-2));right:0;padding:var(--space-3);color:var(--text-primary);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-xs);min-width:220px;opacity:0;pointer-events:none;text-transform:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;z-index:20}.skill-check-badge:hover .skill-check-tooltip,.skill-check-badge:focus-within .skill-check-tooltip{opacity:1;pointer-events:auto;transform:translateY(0)}.skill-check-title{margin:0 0 var(--space-2);color:var(--text-muted);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.skill-check-list{display:flex;margin:0;padding:0;flex-direction:column;font-size:var(--text-xs);gap:var(--space-1)}.skill-check-list div{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.skill-check-list dt{margin:0;color:var(--text-muted);font-weight:500}.skill-check-list dd{margin:0;color:var(--text-primary);font-variant-numeric:tabular-nums}.entity-reference{position:relative;display:inline}.entity-reference-trigger{padding:0;font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-decoration:underline;text-decoration-color:var(--text-accent);text-decoration-thickness:2px;text-underline-offset:.18em}.entity-reference-popover{position:absolute;bottom:calc(100% + var(--space-2));left:0;display:flex;width:min(20rem,80vw);padding:var(--space-3);color:var(--text-secondary);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);flex-direction:column;font-size:var(--text-xs);gap:var(--space-1);line-height:1.4;text-align:left;z-index:20}.entity-reference-popover strong{color:var(--text-primary);font-size:var(--text-sm)}.entity-reference-popover a{color:var(--text-accent);margin-top:var(--space-1)}.chat-canvas{display:flex;flex:1;width:100%;padding:var(--space-3);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);box-sizing:border-box;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.chat-stream{flex:1;width:100%;box-sizing:border-box;outline:none;overflow:hidden auto;padding-right:var(--space-2)}.chat-stream:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.chat-entry{border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-3);padding-bottom:var(--space-3)}.chat-entry:last-child{border-bottom:none;margin-bottom:0}.chat-entry-header{display:flex;align-items:flex-start;gap:var(--space-2);justify-content:space-between}.chat-entry-heading{display:flex;color:var(--text-muted);align-items:baseline;font-size:var(--text-2xs);font-weight:600;gap:var(--space-2);letter-spacing:.06em;text-transform:uppercase}.chat-entry-player .chat-entry-role{color:#f0abcf}.chat-entry-gm .chat-entry-role{color:var(--text-accent)}.chat-entry-aside{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);justify-content:flex-end}.chat-entry-summary{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--text-sm);font-style:italic}.skill-progress-badges{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.skill-progress-badge{padding:.0625rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.skill-progress-badge-skill-gain{color:#5eead4;background:#2dd4bf1a;border-color:#2dd4bf4d}.skill-progress-badge-skill-tier-up{color:#c4b5fd;background:#818cf81a;border-color:#818cf84d}.chat-entry-delta-note,.chat-entry-node-trace{margin:var(--space-2) 0 0;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-2xs)}.chat-entry-world{margin:var(--space-2) 0 0;padding:var(--space-2);color:var(--text-muted);border-left:2px solid var(--border-subtle, var(--text-muted));font-size:var(--text-2xs)}.chat-entry-world-toggle{padding:0;color:inherit;background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit;letter-spacing:.03em;text-transform:uppercase}.chat-entry-world-text{margin:var(--space-2) 0 0;font-style:italic}.chat-entry-spark{color:var(--color-accent-yellow);font-size:var(--text-xs)}.chat-entry-intent-tag,.chat-entry-timeline-tag{padding:.0625rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.chat-entry-scene-tag{color:#c4b5fd;background:#8b5cf617;border-color:#c4b5fd47}.chat-entry-timeline-tag{color:#98e8f5;background:#5eead414;border-color:#5eead447}.chat-entry-content{line-height:1.55}.chat-entry-player .chat-entry-content{color:#f3bcd8}.chat-entry-gm .chat-entry-content{color:#cfe0f7}.chat-entry-content>p:first-child{margin-top:var(--space-2)}.chat-entry-content>p:last-child{margin-bottom:0}.chat-entry-toggleable{cursor:pointer}.chat-entry-system{padding:var(--space-1) var(--space-2);background:#f8717114;border-left:2px solid rgb(248 113 113 / 70%);border-radius:var(--radius-sm);margin-left:calc(var(--space-2) * -1)}.chat-entry-system .chat-entry-heading,.chat-entry-system .chat-entry-content{color:#fecaca}.chat-entry-system .chat-entry-meta{color:#fca5a5}.chat-empty{color:var(--text-muted);margin-top:var(--space-6);text-align:center}.chat-loading{display:inline-flex;padding:var(--space-1) var(--space-3);color:var(--text-secondary);background:#3b82f614;align-items:center;align-self:flex-start;border:1px solid rgb(96 165 250 / 25%);border-radius:var(--radius-md);font-size:var(--text-sm);gap:var(--space-2);margin-top:var(--space-2)}.chat-loading-spinner{width:.875rem;height:.875rem;animation:chat-loading-spin .85s linear infinite;border:2px solid rgb(59 130 246 / 25%);border-radius:var(--radius-full);border-top-color:var(--text-accent)}.chat-loading-text{letter-spacing:.01em}@keyframes chat-loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-entry-feedback-button{padding:.0625rem var(--space-2);color:var(--text-accent);background:#3b82f61a;border:1px solid rgb(147 197 253 / 25%);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-2xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase;transition:background .12s ease,border-color .12s ease}.chat-entry-branch-button{padding:.0625rem var(--space-2);color:#99f6e4;background:#2dd4bf1a;border:1px solid rgb(45 212 191 / 35%);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:background .12s ease,border-color .12s ease}.chat-entry-branch-button:disabled{cursor:wait;opacity:.5}.chat-entry-branch-button:hover:not(:disabled){background:#2dd4bf2e;border-color:#2dd4bfa6}.chat-entry-feedback-button:disabled{cursor:not-allowed;opacity:.4}.chat-entry-feedback-button:hover:not(:disabled){background:#60a5fa2e;border-color:#93c5fd8c}.chat-entry-feedback-status{color:#a5b4fc;font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.chat-feedback-modal{position:fixed;display:flex;padding:var(--space-4);align-items:center;inset:0;justify-content:center;z-index:50}.chat-feedback-backdrop{position:absolute;width:100%;height:100%;background:#050912b3;backdrop-filter:blur(2px);border:none;cursor:pointer;inset:0}.chat-feedback-content{position:relative;display:flex;width:100%;padding:var(--space-4);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;gap:var(--space-3);max-height:calc(100vh - 4rem);max-width:30rem;overflow-y:auto;z-index:1}.chat-feedback-header{display:flex;color:var(--text-primary);align-items:center;justify-content:space-between}.chat-feedback-header h3{margin:0;font-size:var(--text-base);font-weight:600}.chat-feedback-close{color:var(--text-secondary);background:none;border:none;cursor:pointer;font-size:1.3rem;line-height:1;transition:color .12s ease}.chat-feedback-close:hover{color:var(--text-primary)}.chat-feedback-excerpt{margin:0;padding:var(--space-2) var(--space-3);color:var(--text-secondary);background:var(--surface-primary);border:1px solid var(--border-subtle);border-left:2px solid var(--border-accent);border-radius:var(--radius-sm);font-size:var(--text-sm)}.chat-feedback-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chat-feedback-expectations{display:flex;flex-direction:column;gap:var(--space-2)}.chat-feedback-field{display:flex;color:var(--text-secondary);flex-direction:column;font-size:var(--text-sm);gap:var(--space-1)}.chat-feedback-field select{height:var(--control-h-lg);padding:0 var(--space-2);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-sm)}.chat-feedback-field select:focus-visible{border-color:var(--border-accent);outline:none}.chat-feedback-boolean-grid{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.chat-feedback-note-input{padding:var(--space-2);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);margin-top:var(--space-1);resize:vertical}.chat-feedback-note-input:focus-visible{border-color:var(--border-accent);outline:none}.chat-feedback-option{display:inline-flex;padding:var(--space-1) var(--space-3);color:var(--text-secondary);background:var(--surface-secondary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:500;gap:var(--space-2);transition:border-color .12s ease,color .12s ease}.chat-feedback-option:hover{color:var(--text-primary);border-color:var(--border-default)}.chat-feedback-option:has(input:checked){color:var(--text-primary);border-color:var(--border-accent)}.chat-feedback-comment{display:flex;color:var(--text-secondary);flex-direction:column;font-size:var(--text-sm);gap:var(--space-1)}.chat-feedback-comment textarea{padding:var(--space-2);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);min-height:4.5rem;resize:vertical}.chat-feedback-comment textarea:focus-visible{border-color:var(--border-accent);outline:none}.chat-feedback-error{margin:0;color:#fecaca;font-size:var(--text-sm)}.chat-feedback-actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-1)}.chat-feedback-actions button{height:var(--control-h-lg);padding:0 var(--space-4);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:border-color .12s ease,background .12s ease}.chat-feedback-actions button:hover{border-color:var(--border-default)}.chat-feedback-submit{background:#3b82f640;border-color:#60a5fa66}.chat-feedback-submit:hover{border-color:#60a5faa6}.chat-feedback-submit:disabled{cursor:not-allowed;opacity:.5}.chat-entry-response-pager{display:flex;color:#9fb4d4;align-items:center;font-size:.75rem;gap:var(--space-2);margin-bottom:var(--space-1);text-transform:lowercase}.chat-response-pager-button{padding:0 var(--space-2);color:inherit;background:#94a3b81f;border:1px solid rgb(148 163 184 / 25%);border-radius:4px;cursor:pointer;line-height:1}.chat-response-pager-button:hover{background:#94a3b838}.location-pill{display:inline-flex;height:var(--control-h-lg);padding:0 var(--space-2);background:var(--surface-secondary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);box-sizing:border-box;gap:var(--space-2);max-width:100%;min-width:0}.location-pill-label{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.location-pill-value{display:flex;color:var(--text-primary);align-items:center;font-size:var(--text-sm);font-weight:500;gap:var(--space-1);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-pill-link{padding:0;color:var(--text-primary);background:none;border:none;cursor:pointer;font-size:inherit;font-weight:500;overflow:hidden;text-align:left;text-decoration:underline;text-decoration-color:var(--border-accent);text-decoration-style:dashed;text-overflow:ellipsis;text-underline-offset:3px;transition:text-decoration-color .12s ease;white-space:nowrap}.location-pill-link:hover{text-decoration-color:var(--text-primary)}.location-pill-meta{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase}.location-pill-empty .location-pill-value{color:var(--text-muted)}.chat-composer{display:flex;flex:none;padding:var(--space-3);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.chat-offline-banner{margin:0;padding:var(--space-1) var(--space-3);color:#fde68a;background-color:#facc151a;border:1px solid rgb(250 204 21 / 30%);border-radius:var(--radius-sm);font-size:var(--text-sm)}.chat-closed-banner{margin:0;padding:var(--space-1) var(--space-3);color:#fecaca;background-color:#f871711a;border:1px solid rgb(248 113 113 / 30%);border-radius:var(--radius-sm);font-size:var(--text-sm)}.chat-input{width:100%;padding:var(--space-2) var(--space-3);color:inherit;background-color:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-sizing:border-box;font-family:inherit;font-size:var(--text-base);resize:vertical;transition:border-color .12s ease}.chat-entity-targets{display:flex;color:var(--text-muted);align-items:center;flex-wrap:wrap;font-size:var(--text-xs);gap:var(--space-1)}.chat-entity-targets button{padding:.125rem var(--space-2);font:inherit;color:var(--text-accent);background:var(--surface-tertiary);border:1px solid var(--border-accent);border-radius:var(--radius-sm);cursor:pointer}.chat-input:focus-visible{border-color:var(--border-accent);outline:none}.chat-composer-controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between}.chat-composer-actions{display:flex;align-items:center;gap:var(--space-2)}.chat-wrap-toggle{height:var(--control-h-lg);padding:0 var(--space-3);color:#f5c3dd;background-color:transparent;border:1px solid rgb(236 72 153 / 40%);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:background-color .15s ease,color .15s ease,opacity .15s ease,border-color .15s ease}.chat-wrap-toggle:disabled{cursor:not-allowed;opacity:.6}.chat-wrap-toggle:hover:not(:disabled){background-color:#ec48991f;border-color:#ec489999}.chat-wrap-toggle-active{color:#fdf2f8;background-color:#ec489938;border-color:#ec4899a6}.chat-send-button{height:var(--control-h-lg);padding:0 var(--space-6);color:#fff;background:var(--gradient-cta);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;font-size:var(--text-sm);font-weight:600;letter-spacing:.01em;transition:filter .12s ease,box-shadow .12s ease}.chat-send-button:disabled{cursor:not-allowed;opacity:.6}.chat-send-button:hover:not(:disabled){box-shadow:var(--shadow-md);filter:brightness(1.12)}.chat-header{display:flex;width:100%;align-items:center;gap:var(--space-3);justify-content:space-between;min-width:0}.chat-title{margin:0;color:var(--text-primary);font-size:var(--text-lg);font-weight:600;letter-spacing:.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-status{display:inline-flex;flex:none;color:var(--text-muted);align-items:center;font-size:var(--text-xs);gap:var(--space-1)}.chat-status-dot{width:.4375rem;height:.4375rem;background:var(--text-muted);border-radius:var(--radius-full)}.chat-status-connected .chat-status-dot{background:var(--color-success)}.chat-status-connecting .chat-status-dot{background:var(--color-accent-blue);animation:chat-status-pulse 1.2s ease-in-out infinite}.chat-status-error{color:#fca5a5}.chat-status-error .chat-status-dot{background:var(--color-danger)}@keyframes chat-status-pulse{0%,to{opacity:1}50%{opacity:.35}}.chat-error{width:100%;margin:var(--space-1) 0 0;padding:var(--space-1) var(--space-3);color:#fecaca;background-color:#f871711a;border:1px solid rgb(248 113 113 / 35%);border-radius:var(--radius-sm);box-sizing:border-box;font-size:var(--text-sm)}.bug-report-modal{width:min(640px,95vw)}.bug-report-body{display:flex;flex-direction:column;gap:var(--space-2)}.bug-report-intro{margin:0 0 var(--space-2);color:var(--text-secondary);font-size:var(--text-sm)}.bug-report-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:500}.bug-report-input,.bug-report-textarea{width:100%;padding:var(--space-2) var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-sm)}.bug-report-textarea{min-height:120px;resize:vertical}.bug-report-input:focus-visible,.bug-report-textarea:focus-visible{border-color:var(--border-accent);outline:none}.bug-report-context{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.bug-report-error{margin:0;padding:var(--space-2) var(--space-3);color:#fca5a5;background:#f871711a;border-radius:var(--radius-md);font-size:var(--text-sm)}.bug-report-success{margin:0;padding:var(--space-2) var(--space-3);color:#9be8bf;background:#22c55e1a;border-radius:var(--radius-md);font-size:var(--text-sm)}.bug-report-actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-2)}.bug-report-cancel,.bug-report-submit{height:var(--control-h-lg);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:filter .12s ease,border-color .12s ease}.bug-report-cancel{color:var(--text-secondary);background:var(--surface-tertiary);border-color:var(--border-muted)}.bug-report-cancel:hover{color:var(--text-primary);border-color:var(--border-default)}.bug-report-submit{color:#fff;background:var(--gradient-cta)}.bug-report-submit:disabled{cursor:not-allowed;opacity:.6}.bug-report-submit:hover:not(:disabled){filter:brightness(1.12)}.changelog-modal{width:min(560px,95vw)}.changelog-body{padding:0}.changelog-empty{margin:0;padding:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);text-align:center}.changelog-list{margin:0;padding:0;list-style:none}.changelog-entry{display:flex;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-subtle);flex-direction:column;gap:var(--space-1);outline:none}.changelog-entry:first-child{border-top:none}.changelog-entry:focus-visible{outline:1px solid var(--border-accent);outline-offset:-1px}.changelog-entry-main{display:flex;align-items:flex-start;gap:var(--space-3)}.changelog-entry-type{display:inline-flex;padding:.05rem var(--space-2);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);flex-shrink:0;font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.changelog-entry-type-feature{color:var(--text-accent);background:#3b82f61a}.changelog-entry-type-improvement{color:#9be8bf;background:#22c55e1a}.changelog-entry-type-bugfix{color:#f0abcf;background:#ec48991a}.changelog-entry-content{display:flex;flex-direction:column;gap:var(--space-1)}.changelog-entry-summary{margin:0;color:var(--text-primary);font-size:var(--text-sm)}.changelog-entry-meta{display:flex;margin:0;color:var(--text-muted);align-items:center;font-size:var(--text-2xs);gap:var(--space-2)}.changelog-entry-meta dt{letter-spacing:.08em;text-transform:uppercase}.changelog-entry-meta dd{margin:0;color:var(--text-secondary);font-weight:600}.changelog-entry-details{margin:0;color:var(--text-secondary);font-size:var(--text-xs);max-height:0;opacity:0;overflow:hidden;transition:max-height .15s ease,opacity .15s ease}.changelog-entry:hover .changelog-entry-details,.changelog-entry:focus .changelog-entry-details,.changelog-entry:focus-within .changelog-entry-details{max-height:200px;opacity:1}.changelog-toggle{display:inline-flex;color:var(--text-secondary);align-items:center;font-size:var(--text-xs);gap:var(--space-2);margin-left:var(--space-4);margin-right:auto}.changelog-toggle input{width:1rem;height:1rem;accent-color:var(--text-accent)}.modal-header-title{display:flex;flex-direction:column;gap:var(--space-1)}.player-settings-modal{width:min(560px,95vw)}.player-settings-body{display:flex;flex-direction:column;gap:var(--space-3)}.player-settings-description{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.player-settings-slider-row{display:flex;flex-direction:column;gap:var(--space-2)}.player-settings-slider{width:100%;accent-color:var(--text-accent)}.player-settings-slider-labels{display:flex;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;justify-content:space-between;letter-spacing:.08em;text-transform:uppercase}.player-settings-level{padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.player-settings-level h3{margin:0 0 var(--space-1);font-size:var(--text-sm);font-weight:600}.player-settings-level p{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.player-settings-status{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.player-settings-error{margin:0;padding:var(--space-2) var(--space-3);color:#fca5a5;background:#f871711a;border-radius:var(--radius-md);font-size:var(--text-sm)}.player-settings-divider{height:1px;margin:var(--space-2) 0;background:var(--border-subtle)}.player-settings-models{display:flex;flex-direction:column;gap:var(--space-3)}.player-settings-models h3{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.player-settings-model-row{display:flex;flex-direction:column;gap:var(--space-2)}.player-settings-model-row label{display:flex;flex-direction:column;gap:var(--space-1)}.player-settings-model-row strong{color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}.player-settings-model-row .model-description{color:var(--text-muted);font-size:var(--text-xs)}.player-settings-model-row select{height:var(--control-h-lg);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-family:inherit;font-size:var(--text-sm)}.player-settings-model-row select:focus-visible{border-color:var(--border-accent);outline:none}.player-settings-model-row select:disabled{cursor:not-allowed;opacity:.5}.player-settings-close{height:var(--control-h-lg);padding:0 var(--space-4);color:var(--text-secondary);background:var(--surface-tertiary);align-self:flex-end;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:border-color .12s ease,color .12s ease}.player-settings-close:hover{color:var(--text-primary);border-color:var(--border-default)}.user-guide-modal{width:min(720px,95vw)}.user-guide-body{display:flex;flex-direction:column;gap:var(--space-3);max-height:min(70vh,640px);overflow-y:auto}.user-guide-intro{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.user-guide-accordion{display:flex;flex-direction:column}.user-guide-section{border-top:1px solid var(--border-subtle)}.user-guide-summary{display:flex;width:100%;padding:var(--space-3) var(--space-1);color:inherit;background:none;align-items:flex-start;border:none;cursor:pointer;gap:var(--space-3);justify-content:space-between;text-align:left}.user-guide-summary h3{margin:0 0 var(--space-1);color:var(--text-primary);font-size:var(--text-sm);font-weight:600;transition:color .12s ease}.user-guide-summary:hover h3{color:var(--text-accent)}.user-guide-summary p{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.user-guide-summary span{color:var(--text-muted);font-size:var(--text-lg);line-height:1}.user-guide-content{padding:0 var(--space-1) var(--space-3)}.user-guide-content ol{display:flex;margin:0;color:var(--text-secondary);flex-direction:column;font-size:var(--text-sm);gap:var(--space-2);padding-left:var(--space-4)}.user-guide-content li{line-height:1.5}.audit-page{display:flex;padding:var(--space-5);flex-direction:column;gap:var(--space-4)}.audit-page-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between}.audit-page-header h1{margin:0;font-size:var(--text-xl);font-weight:600}.audit-page-header p{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.audit-header-actions{display:flex;gap:var(--space-2)}.audit-header-actions button,.audit-filter-apply,.audit-panel-footer button,.audit-form-actions button,.audit-panel-header button{height:var(--control-h);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);transition:border-color .12s ease}.audit-filter-apply{align-self:flex-end}.audit-header-actions button:disabled,.audit-filter-apply:disabled,.audit-panel-footer button:disabled,.audit-form-actions button:disabled,.audit-panel-header button:disabled{cursor:not-allowed;opacity:.6}.audit-header-actions button:hover:not(:disabled),.audit-filter-apply:hover:not(:disabled),.audit-panel-footer button:hover:not(:disabled),.audit-form-actions button:hover:not(:disabled),.audit-panel-header button:hover:not(:disabled){border-color:var(--border-accent)}.audit-layout{display:flex;flex-direction:column;gap:var(--space-4)}.audit-panel{display:flex;padding:var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;gap:var(--space-3);min-height:0}.audit-grid-wrapper{margin-top:var(--space-3)}.audit-panel-header{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.audit-panel-header h2{margin:0;font-size:var(--text-base);font-weight:600}.audit-count{color:var(--text-muted);font-size:var(--text-xs)}.audit-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--space-3)}.audit-filter-group{display:flex;flex-direction:column;gap:var(--space-1)}.audit-filter-group label,.audit-filter-group span{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.audit-filter-group input,.audit-filter-group select,.audit-filter-group textarea{height:var(--control-h);padding:0 var(--space-2);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-size:var(--text-sm)}.audit-filter-group select option{color:var(--text-primary);background:var(--surface-secondary)}.audit-filter-row{display:flex;gap:var(--space-3)}.audit-filter-status-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.audit-filter-checkbox{display:inline-flex;color:var(--text-secondary);align-items:center;font-size:var(--text-xs);gap:var(--space-1)}.audit-filter-checkbox span{color:var(--text-secondary);font-size:var(--text-xs);font-weight:400;letter-spacing:normal;text-transform:none}.audit-queue-list{display:flex;margin:0;padding:0;flex-direction:column;list-style:none;max-height:12rem;overflow-y:auto}.audit-queue-list.horizontal{flex-direction:row;gap:var(--space-3);max-height:none;overflow:auto hidden;padding-bottom:var(--space-1)}.audit-queue-list.horizontal>li{flex:0 0 auto;min-width:220px}.audit-queue-item{width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:0;border-top:1px solid var(--border-subtle);cursor:pointer;text-align:left;transition:background .12s ease}.audit-queue-item:hover{background:var(--surface-secondary)}.audit-queue-item.selected{background:var(--surface-secondary);box-shadow:inset 2px 0 0 var(--border-accent)}.horizontal .audit-queue-item{min-width:220px}.audit-queue-list.horizontal .audit-queue-item{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.audit-queue-list.horizontal .audit-queue-item:hover{border-color:var(--border-muted)}.audit-queue-item-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.audit-chip{display:inline-flex;padding:.05rem var(--space-2);align-items:center;border:1px solid transparent;border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:500;justify-content:center;letter-spacing:.04em;text-transform:uppercase}.audit-chip.status-completed{color:#9be8bf;background:#22c55e1a;border-color:#22c55e4d}.audit-chip.status-in-progress{color:#fde68a;background:#facc151a;border-color:#facc154d}.audit-chip.status-unreviewed{color:var(--text-muted);background:var(--surface-tertiary);border-color:var(--border-muted)}.audit-chip.severity-critical{color:#fca5a5;background:#f871711a;border-color:#f871714d}.audit-chip.severity-major{color:#fde68a;background:#facc151a;border-color:#facc154d}.audit-chip.severity-info,.audit-chip.severity-minor{color:var(--text-accent);background:#3b82f61a;border-color:#3b82f64d}.audit-grid-link{height:var(--control-h);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);transition:border-color .12s ease}.audit-grid-link:hover{border-color:var(--border-accent)}.audit-queue-item-title{margin:0;font-weight:600}.audit-queue-item-meta,.audit-queue-item-date{color:var(--text-muted);font-size:var(--text-xs)}.audit-queue-item-preview{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.audit-panel-footer{display:flex;justify-content:center}.audit-workspace{display:flex;flex-direction:column;gap:var(--space-3)}.audit-context{display:grid;padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.audit-context-label{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.audit-context-value{margin:0;font-weight:600}.audit-body{display:flex;flex-direction:column;gap:var(--space-3)}.audit-body h3{margin:0 0 var(--space-2);color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.audit-blob{padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);max-height:none;min-height:240px;overflow:auto;overflow-wrap:break-word;white-space:pre-wrap}.audit-form{display:flex;flex-direction:column;gap:var(--space-3)}.audit-form label{display:flex;flex-direction:column;font-size:var(--text-xs);gap:var(--space-1)}.audit-form input,.audit-form textarea,.audit-form select{padding:var(--space-2);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-size:var(--text-sm)}.audit-tags{display:flex;flex-direction:column;gap:var(--space-1)}.audit-tag-grid{display:grid;gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.audit-dialog-content{display:flex;flex-direction:column;gap:var(--space-3)}.audit-dialog-notes{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.audit-dialog-notes textarea{width:100%;padding:var(--space-2);font:inherit;color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-size:var(--text-sm);letter-spacing:normal;margin-top:var(--space-1);text-transform:none}.audit-filter-group input:focus-visible,.audit-filter-group select:focus-visible,.audit-filter-group textarea:focus-visible,.audit-form input:focus-visible,.audit-form select:focus-visible,.audit-form textarea:focus-visible,.audit-dialog-notes textarea:focus-visible{border-color:var(--border-accent);outline:none}.audit-dialog-tags{display:flex;flex-direction:column;gap:var(--space-1)}.audit-dialog-tags>p{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.audit-dialog-tags .audit-tag-grid{display:grid;gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.audit-form-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.audit-form-actions .primary{height:var(--control-h-lg);color:#fff;background:var(--gradient-cta);border:none}.audit-form-actions .secondary{background:var(--surface-tertiary)}.audit-placeholder{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.audit-proposal-list{display:flex;margin:0;padding:0;flex-direction:column;list-style:none}.audit-proposal-item{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-subtle)}.audit-proposal-head{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.audit-proposal-title{margin:0;font-weight:600}.audit-proposal-summary{margin:var(--space-1) 0;font-size:var(--text-sm)}.audit-proposal-meta{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.audit-proposal-tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}.audit-chip.tag-chip{color:var(--text-secondary);background:var(--surface-tertiary);border-color:var(--border-muted)}.audit-error{margin:0;color:var(--color-danger);font-size:var(--text-sm)}.audit-feedback-panel{display:flex;border-top:1px solid var(--border-subtle);flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3)}.audit-feedback-header{display:flex;align-items:baseline;gap:var(--space-2);justify-content:space-between}.audit-feedback-header h3{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.audit-feedback-count{color:var(--text-muted);font-size:var(--text-xs)}.audit-feedback-list{display:flex;margin:0;padding:0;flex-direction:column;gap:var(--space-2);list-style:none}.audit-feedback-item{display:flex;padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-1);transition:border-color .12s ease}.audit-feedback-item:hover{border-color:var(--border-muted)}.audit-feedback-meta{display:flex;color:var(--text-secondary);align-items:center;flex-wrap:wrap;font-size:var(--text-xs);gap:var(--space-2)}.audit-feedback-comment{margin:0;color:var(--text-primary);font-size:var(--text-sm)}.audit-feedback-expectations{display:flex;color:var(--text-secondary);flex-direction:column;font-size:var(--text-xs);gap:var(--space-1)}.audit-feedback-expectation-row{display:flex;gap:var(--space-2);justify-content:space-between}.audit-feedback-expectation-row span{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.audit-feedback-expectation-row strong{font-weight:600}.audit-feedback-note{margin:.15rem 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.audit-feedback-item .sentiment-positive{color:#9be8bf;background:#22c55e1a;border-color:#22c55e4d}.audit-feedback-item .sentiment-neutral{color:#fde68a;background:#facc151a;border-color:#facc154d}.audit-feedback-item .sentiment-negative{color:#fca5a5;background:#f871711a;border-color:#f871714d}.bug-page{display:flex;padding:var(--space-5);flex-direction:column;gap:var(--space-4)}.bug-page-header{display:flex;align-items:center;gap:var(--space-3);justify-content:space-between}.bug-page-header h1{margin:0;font-size:var(--text-xl);font-weight:600}.bug-page-header p{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.bug-page-actions{display:flex;gap:var(--space-2)}.bug-page-actions button{height:var(--control-h);padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);transition:border-color .12s ease}.bug-page-actions button:disabled{cursor:not-allowed;opacity:.6}.bug-page-actions button:not(:disabled):hover{border-color:var(--border-accent)}.bug-grid-card{display:flex;padding:var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;gap:var(--space-3)}.bug-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.bug-filter-statuses{display:flex;flex-wrap:wrap;gap:var(--space-2)}.bug-grid-wrapper{flex:1;min-height:480px}.bug-grid{width:100%;height:100%}.bug-grid .bug-grid-row-selected{background:#3b82f61a}.bug-page-error{margin:0;padding:var(--space-2) var(--space-3);color:#fca5a5;background:#f871711a;border:1px solid rgb(248 113 113 / 30%);border-radius:var(--radius-md);font-size:var(--text-sm)}.bug-detail-dialog{display:flex;flex-direction:column;gap:var(--space-4)}.bug-detail-header{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between}.bug-detail-overline{margin:0 0 var(--space-1);color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.bug-detail-title{margin:0;font-size:var(--text-lg);font-weight:600}.bug-detail-meta{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-xs)}.bug-detail-context{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.bug-detail-context dl{margin:0}.bug-detail-context dt{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.bug-detail-context dd{margin:2px 0 0;font-size:var(--text-sm)}.bug-detail-section{display:flex;flex-direction:column;gap:var(--space-2)}.bug-detail-body,.bug-detail-metadata{margin:0;padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap}.bug-detail-form-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.bug-detail-error{margin:0;color:var(--color-danger);font-size:var(--text-sm)}.ws-page{display:flex;padding:var(--space-6);flex-direction:column;gap:var(--space-4)}.ws-header{display:flex;align-items:center;gap:var(--space-4);justify-content:space-between}.ws-header h1{margin:0;color:var(--text-primary);font-size:var(--text-xl);font-weight:600}.ws-header p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-sm);max-width:48rem}.ws-refresh{height:var(--control-h);padding:0 var(--space-3);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:500}.ws-refresh:disabled{cursor:default;opacity:.6}.ws-refresh:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-accent)}.ws-alert{padding:var(--space-2) var(--space-3);color:#fca5a5;background:#f871711a;border:1px solid rgb(248 113 113 / 25%);border-radius:var(--radius-md);font-size:var(--text-sm)}.ws-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(26rem,1fr))}.ws-card{display:flex;padding:var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;gap:var(--space-3)}.ws-card-header h2{margin:0;color:var(--text-primary);font-size:var(--text-base);font-weight:600}.ws-card-header p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-xs)}.ws-form{display:grid;gap:var(--space-3)}.ws-field input,.ws-field select{width:100%;padding:var(--space-1) var(--space-2);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-size:var(--text-sm)}.ws-field input:focus-visible,.ws-field select:focus-visible{border-color:var(--border-accent);outline:none}.ws-form button{justify-self:flex-start}.ws-table{display:flex;flex-direction:column}.ws-table-head,.ws-table-row{display:grid;align-items:center;gap:var(--space-2);grid-template-columns:repeat(5,1fr)}.ws-table-head{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;padding-bottom:var(--space-2);text-transform:uppercase}.ws-table-row{padding:var(--space-2) 0;color:var(--text-secondary);border-top:1px solid var(--border-subtle);font-size:var(--text-sm)}.ws-kind-id{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600}.ws-link{padding:0;color:var(--text-accent);background:none;border:none;cursor:pointer}.context-reference-browser{border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.context-reference-browser header h2,.context-reference-browser header p,.context-reference-state{margin:0}.context-reference-browser header h2{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.context-reference-browser header p,.context-reference-state{color:var(--text-muted);font-size:var(--text-2xs);line-height:1.35;margin-top:var(--space-1)}.context-reference-tree{margin-top:var(--space-2)}.context-reference-tree details{min-width:0}.context-reference-tree summary{display:flex;padding:.22rem var(--space-1);color:var(--text-secondary);align-items:center;cursor:pointer;font-size:var(--text-xs);font-weight:600;gap:var(--space-1);list-style:none}.context-reference-tree summary::-webkit-details-marker{display:none}.context-reference-tree summary:before{width:.8rem;color:var(--text-muted);content:"›";transform:rotate(0);transition:transform .1s ease}.context-reference-tree details[open]>summary:before{transform:rotate(90deg)}.context-reference-tree summary>span{color:var(--text-muted);font-size:var(--text-2xs);font-weight:400;margin-left:auto}.context-reference-branch{border-left:1px solid var(--border-subtle);margin-left:var(--space-2);padding-left:var(--space-1)}.context-reference-branch>details>summary{color:var(--text-muted);font-size:var(--text-2xs);text-transform:uppercase}.context-reference-tree ul{margin:0 0 var(--space-1) var(--space-2);padding:0;list-style:none}.context-reference-tree li button{display:flex;width:100%;padding:.28rem var(--space-1);font:inherit;color:var(--text-secondary);background:transparent;align-items:baseline;border:0;border-radius:var(--radius-sm);cursor:pointer;gap:var(--space-1);justify-content:space-between;text-align:left}.context-reference-tree li button:hover,.context-reference-tree li button:focus-visible{color:var(--text-accent);background:var(--surface-tertiary);outline:none}.context-reference-tree li button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-reference-tree li button small{flex:none;color:var(--text-muted);font-size:var(--text-2xs)}.available-entities{border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.available-entities h2{margin:0;padding:0 0 var(--space-2);color:var(--text-primary);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.available-entities-empty{margin:0;color:var(--text-muted);font-size:var(--text-2xs)}.available-entities-list{margin:0;padding:0;list-style:none}.available-entity{border-top:1px solid var(--border-subtle)}.available-entity-atlas{display:flex;width:100%;padding:.35rem 0;font:inherit;color:var(--text-secondary);background:transparent;align-items:baseline;border:0;cursor:pointer;gap:var(--space-1);justify-content:space-between;min-width:0;text-decoration:none}.available-entity-name{color:var(--text-primary);font-size:var(--text-xs);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.available-entity-kind{color:var(--text-muted);font-size:var(--text-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.available-entity-atlas:hover .available-entity-name,.available-entity-atlas:focus-visible .available-entity-name{color:var(--text-accent);text-decoration:underline;text-underline-offset:.16em}.available-entity-atlas:focus-visible{border-radius:var(--radius-xs);outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media(width<=800px){.available-entities-list{display:flex;overflow-x:auto}.available-entity{flex:0 0 auto;border-left:1px solid var(--border-subtle);border-top:0}}.chronicle-navigation{display:flex;flex:0 0 264px;width:264px;padding:var(--space-3);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);box-sizing:border-box;flex-direction:column;gap:var(--space-3);min-height:0;overflow-y:auto}.chronicle-navigation-eyebrow,.chronicle-navigation-title,.chronicle-navigation-section h2{margin:0}.chronicle-navigation-eyebrow,.chronicle-navigation-section h2{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.chronicle-navigation-title{color:var(--text-primary);font-size:var(--text-base);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chronicle-navigation-controls{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.chronicle-navigation-controls button{height:1.5rem;padding:0 var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-2xs)}.chronicle-navigation-controls button:hover,.chronicle-navigation-controls button:focus-visible,.chronicle-navigation-controls button.is-active{color:var(--text-accent);border-color:var(--border-accent);outline:none}.chronicle-navigation-controls button:disabled{cursor:not-allowed;opacity:.55}.chronicle-navigation-section{border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.chronicle-navigation-section h2{margin-bottom:var(--space-2)}.chronicle-navigation-empty{margin:0;color:var(--text-muted);font-size:var(--text-2xs)}.chronicle-thread-list{display:flex;margin:0;padding:0;flex-direction:column;gap:var(--space-1);list-style:none}.chronicle-thread{position:relative;padding:var(--space-2);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-left:2px solid var(--border-muted);border-radius:var(--radius-sm)}.chronicle-thread.is-focused{border-color:var(--border-accent);border-left-color:var(--color-accent-blue)}.chronicle-thread-heading{display:flex;align-items:baseline;gap:var(--space-1);justify-content:space-between}.chronicle-thread-title{color:var(--text-primary);font-size:var(--text-xs);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chronicle-thread-status{flex:none;color:var(--text-muted);font-size:var(--text-2xs);text-transform:uppercase}.chronicle-thread-detail{position:absolute;top:calc(100% + var(--space-1));left:0;width:220px;padding:var(--space-2);color:var(--text-secondary);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);box-sizing:border-box;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;z-index:5}.chronicle-thread-detail p{margin:0;font-size:var(--text-xs)}.chronicle-thread:focus .chronicle-thread-detail,.chronicle-thread:hover .chronicle-thread-detail{opacity:1;transform:translateY(0)}@media(width<=800px){.chronicle-navigation{width:100%;flex-basis:auto;max-height:38vh}}.player-directory{display:flex;flex:1;padding:var(--space-3);flex-direction:column;gap:var(--space-3);min-width:0}.player-directory-header,.player-directory-section-header{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.player-directory-eyebrow,.player-directory-header h2,.player-directory-section-header h3{margin:0}.player-directory-eyebrow,.player-directory-section-header h3{color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.player-directory-header h2{color:var(--text-primary);font-size:var(--text-base);font-weight:600}.player-directory-refresh{height:1.5rem;padding:0 var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-2xs)}.player-directory-refresh:disabled{cursor:wait;opacity:.65}.player-directory-section{border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.player-directory-section-header{margin-bottom:var(--space-2)}.player-directory-list{display:flex;margin:0;padding:0;flex-direction:column;gap:var(--space-1);list-style:none}.player-directory-character,.player-directory-chronicle{width:100%;padding:var(--space-2);color:var(--text-secondary);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);box-sizing:border-box}.player-directory-character{display:flex;cursor:pointer;flex-direction:column;gap:.1rem;text-align:left}.player-directory-character:hover,.player-directory-character:focus-visible,.player-directory-character.is-selected{border-color:var(--border-accent);outline:none}.player-directory-chronicle{display:flex;flex-direction:column;gap:var(--space-1)}.player-directory-item-copy{display:flex;flex-direction:column;gap:.1rem;min-width:0}.player-directory-item-title{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-directory-item-meta,.player-directory-empty{color:var(--text-muted);font-size:var(--text-2xs)}.player-directory-empty{margin:0}.player-directory-actions{display:flex;flex-wrap:wrap;gap:var(--space-1)}.player-directory-error{margin:0;color:#fca5a5;font-size:var(--text-xs)}.main-navigation{display:flex;flex:0 0 264px;width:264px;background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;min-height:0;overflow-y:auto}.world-guide-navigation{display:grid;padding:var(--space-3);border-bottom:1px solid var(--border-subtle);gap:var(--space-1);grid-template-columns:1fr 1fr}.world-guide-navigation h2{margin:0 0 var(--space-1);color:var(--text-muted);font-size:var(--text-2xs);grid-column:1 / -1;letter-spacing:.08em;text-transform:uppercase}.world-guide-navigation a{padding:var(--space-2);color:var(--text-secondary);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--text-xs);text-align:center;text-decoration:none}.world-guide-navigation a:hover,.world-guide-navigation a:focus-visible,.world-guide-navigation a.active{color:var(--text-accent);border-color:var(--border-accent);outline:none}@media(width<=800px){.main-navigation{width:100%;flex-basis:auto;max-height:38vh}}.landing-page{display:flex;flex-direction:column;gap:var(--space-3)}.landing-header{display:flex;align-items:center;gap:var(--space-3);justify-content:space-between}.landing-header-copy h1{margin:0;font-size:var(--text-xl);font-weight:600;letter-spacing:.01em}.landing-tagline{margin:.15rem 0 0;color:var(--text-muted);font-size:var(--text-sm)}.landing-eyebrow{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase}.landing-grid{display:grid;align-items:start;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.landing-panel{padding:var(--space-3) var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight)}.landing-panel-header{display:flex;align-items:center;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-2)}.landing-panel-header h2{margin:0;font-size:var(--text-base);font-weight:600}.landing-feature-list,.landing-chronicle-list,.landing-entity-list{display:flex;margin:0;padding:0;flex-direction:column;list-style:none}.landing-feature-row{display:flex;padding:var(--space-1) 0;align-items:baseline;border-top:1px solid var(--border-subtle);gap:var(--space-3)}.landing-feature-date{flex:none;color:var(--text-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;min-width:3.25rem}.landing-feature-summary{margin:0;color:var(--text-secondary);font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing-feature-details-wrapper{position:relative;display:block;min-width:0}.landing-feature-details-wrapper:hover .landing-feature-summary,.landing-feature-details-wrapper:focus .landing-feature-summary{color:var(--text-primary)}.landing-feature-tooltip{position:absolute;top:calc(100% + .4rem);left:0;padding:var(--space-2) var(--space-3);color:var(--text-secondary);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-xs);line-height:1.5;max-width:min(380px,80vw);min-width:240px;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease;z-index:15}.landing-feature-details-wrapper:hover .landing-feature-tooltip,.landing-feature-details-wrapper:focus-within .landing-feature-tooltip,.landing-feature-details-wrapper:focus .landing-feature-tooltip{opacity:1;pointer-events:auto;transform:translateY(0)}.landing-feed-row{padding:var(--space-2) 0;border-top:1px solid var(--border-subtle)}.landing-chronicle-title-row,.landing-entity-title-row{display:flex;margin:0;align-items:baseline;gap:var(--space-2);justify-content:space-between}.landing-entity-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;text-decoration:none}.landing-entity-name:hover{color:var(--text-accent)}.landing-entity-name:focus-visible{color:var(--text-accent);outline:1px solid var(--border-accent);outline-offset:2px}.landing-entity-date{flex:none;color:var(--text-muted);font-size:var(--text-2xs)}.landing-entity-meta,.landing-entity-update-title,.landing-entity-summary{margin:0}.landing-entity-meta{color:var(--text-muted);font-size:var(--text-2xs);text-transform:capitalize}.landing-entity-update-title{color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;margin-top:.15rem}.landing-entity-summary{color:var(--text-secondary);font-size:var(--text-xs);line-height:1.4;margin-top:.15rem;max-height:2.8em;overflow:hidden}.landing-chronicle-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.landing-chronicle-date{flex:none;color:var(--text-muted);font-size:var(--text-2xs)}.landing-chronicle-state{display:inline-flex;flex:none;align-items:center;gap:var(--space-2)}.landing-chronicle-status{padding:.05rem var(--space-1);color:var(--text-muted);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.landing-chronicle-status.status-open{color:#9be8bf;background:#10b9811a;border-color:#10b9814d}.landing-chronicle-meta{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.landing-chronicle-hook{margin:.15rem 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.landing-presence-note{margin:var(--space-2) 0 0;color:var(--text-muted);border-top:1px solid var(--border-subtle);font-size:var(--text-2xs);padding-top:var(--space-2)}.landing-link-button{display:inline-flex;height:1.5rem;padding:0 var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);font-weight:500;transition:border-color .12s ease,color .12s ease;white-space:nowrap}.landing-link-button:disabled{cursor:not-allowed;opacity:.5}.landing-link-button:focus-visible,.landing-link-button:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-accent);outline:none}.landing-row-copy{min-width:0}.landing-error{margin:0 0 var(--space-2);color:#fca5a5;font-size:var(--text-sm)}.landing-empty-copy{margin:0;color:var(--text-muted);font-size:var(--text-sm)}@media(width<=900px){.landing-grid{grid-template-columns:1fr}}.scene-stage{display:flex;padding:var(--space-3) var(--space-4);color:var(--text-primary);background:linear-gradient(115deg,#101b2ef0,#0d1422fa),var(--surface-secondary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);gap:var(--space-3);min-width:0}.scene-stage-dialog{border-color:#7dd3fc59}.scene-stage-battle{border-color:#fb718561}.scene-stage-hunt{border-color:#a3e63557}.scene-stage-chase{border-color:#fbbf2461}.scene-stage-search{border-color:#c4b5fd61}.scene-stage-symbol{display:grid;flex:0 0 3.5rem;width:3.5rem;height:3.5rem;color:var(--text-primary);background:#ffffff0d;border:1px solid var(--border-default);border-radius:50%;font-size:1.45rem;place-items:center}.scene-stage-symbol-battle{color:#fda4af}.scene-stage-symbol-hunt{color:#bef264}.scene-stage-symbol-chase{color:#fcd34d}.scene-stage-symbol-search{color:#c4b5fd}.scene-stage-copy{min-width:0}.scene-stage-copy h2{margin:.1rem 0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-stage-eyebrow{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}@media(width<=640px){.scene-stage{padding:var(--space-3)}.scene-stage-symbol{width:3rem;height:3rem;flex-basis:3rem}}.player-menu{position:relative}.player-menu-toggle{display:inline-flex;height:var(--control-h);padding:0 var(--space-2);color:var(--text-secondary);background:transparent;align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;gap:.4rem;transition:border-color .12s ease,background .12s ease,color .12s ease}.player-menu-toggle:hover,.player-menu-toggle:focus-visible{color:var(--text-primary);background:var(--surface-tertiary);border-color:var(--border-default);outline:none}.player-menu-toggle-text{display:flex;font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;min-width:0}.player-menu-name-badge{display:flex;align-items:center;gap:.3rem}.player-menu-role-badge{display:inline-flex;align-items:center;font-size:.85rem;justify-content:center;line-height:1}.player-menu-caret{color:var(--text-muted);font-size:.7rem}.player-menu-panel{position:absolute;top:calc(100% + .4rem);right:0;width:min(360px,90vw);padding:var(--space-3);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:80vh;opacity:0;overflow-y:auto;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;z-index:45}.player-menu-panel.open{opacity:1;pointer-events:auto;transform:translateY(0)}.player-menu-header{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between;margin-bottom:var(--space-2)}.player-menu-name{margin:0;color:var(--text-primary);font-size:var(--text-sm);font-weight:600;letter-spacing:.04em}.player-menu-logout{height:1.5rem;padding:0 var(--space-2);color:#fda4af;background:transparent;border:1px solid rgb(248 113 113 / 40%);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);font-weight:500}.player-menu-logout:hover,.player-menu-logout:focus-visible{background:#f871711f;border-color:#f87171b3;outline:none}.player-menu-pill-label{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.07em;text-transform:uppercase}.player-menu-links{display:flex;margin:0;padding:0;flex-direction:column;gap:2px;list-style:none}.player-menu-link-button{display:flex;width:100%;padding:var(--space-1) var(--space-2);color:var(--text-primary);background:transparent;align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;gap:var(--space-2);text-align:left;transition:background .12s ease}.player-menu-link-button:hover,.player-menu-link-button:focus-visible{background:var(--surface-tertiary);outline:none}.player-menu-link-icon{display:inline-flex;flex:none;width:1.75rem;height:1.75rem;color:var(--text-accent);background:#3b82f61a;align-items:center;border-radius:var(--radius-sm);justify-content:center}.player-menu-link-text{display:flex;flex-direction:column;gap:0;min-width:0}.player-menu-link-title{font-size:var(--text-sm);font-weight:500}.player-menu-link-subtitle{color:var(--text-muted);font-size:var(--text-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-menu-empty{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.player-menu-info-row{display:flex;gap:var(--space-1);margin-bottom:var(--space-2)}.player-menu-info-card{flex:1;padding:var(--space-1) var(--space-2);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0}.player-menu-info-primary{margin:0;color:var(--text-primary);font-size:var(--text-xs);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-menu-info-secondary{margin:.2rem 0 0;color:var(--text-secondary);font-size:var(--text-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-menu-usage-row{display:flex;margin:var(--space-2) 0;padding:var(--space-2) 0;align-items:center;border-bottom:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:var(--space-2)}.player-menu-usage-label{color:var(--text-muted);font-size:var(--text-2xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.player-menu-usage-table{width:100%;border-collapse:collapse}.player-menu-usage-table th,.player-menu-usage-table td{padding:.1rem .25rem;text-align:left}.player-menu-usage-value{color:var(--text-primary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:600;text-align:left}.player-menu-usage-note{margin:0;color:var(--text-muted);font-size:var(--text-2xs)}.player-menu-usage-header{display:flex;width:100%;align-items:center;gap:var(--space-2);justify-content:space-between}.player-menu-usage-cost{position:relative;padding:.05rem var(--space-2);color:#9be8bf;background:#22c55e1a;border:1px solid rgb(34 197 94 / 30%);border-radius:var(--radius-sm);cursor:help;font-size:var(--text-2xs);font-variant-numeric:tabular-nums;font-weight:600}.player-menu-cost-breakdown{position:absolute;top:50%;right:calc(100% + .5rem);width:230px;padding:var(--space-2);background:var(--surface-elevated);animation:slide-in .15s ease;border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transform:translateY(-50%);z-index:50}@keyframes slide-in{0%{opacity:0;transform:translateY(-50%) translate(8px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.player-menu-cost-breakdown-title{margin:0 0 var(--space-1);color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase}.player-menu-cost-breakdown-table{width:100%;border-collapse:collapse;font-size:var(--text-2xs)}.player-menu-cost-breakdown-table th{padding:.2rem .35rem;color:var(--text-muted);font-size:.6rem;font-weight:500;letter-spacing:.05em;text-align:left;text-transform:uppercase}.player-menu-cost-breakdown-table td{padding:.25rem .35rem;color:var(--text-secondary);border-top:1px solid var(--border-subtle);font-variant-numeric:tabular-nums}.player-menu-cost-model-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.character-wizard{display:flex;flex:1;flex-direction:column;gap:var(--space-3);min-height:0}.character-wizard-header{display:flex;align-items:flex-start;gap:var(--space-3);justify-content:space-between}.character-wizard-header h1{margin:0;font-size:var(--text-xl);font-weight:600;letter-spacing:.01em}.character-wizard-header p{margin:.15rem 0 0;color:var(--text-muted);font-size:var(--text-sm)}.character-wizard-body{display:flex;flex:1;padding:var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;min-height:0;overflow-y:auto}.character-wizard-footer{display:flex;gap:var(--space-2);justify-content:flex-end}.character-wizard-footer button{height:var(--control-h-lg);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:filter .12s ease,border-color .12s ease,color .12s ease}.character-wizard-footer button.secondary{color:var(--text-secondary);background:var(--surface-tertiary);border-color:var(--border-muted)}.character-wizard-footer button.secondary:hover{color:var(--text-primary);border-color:var(--border-default)}.character-wizard-footer button.primary{color:#fff;background:var(--gradient-cta)}.character-wizard-footer button.primary:hover:not(:disabled){filter:brightness(1.12)}.character-wizard-footer button:disabled{cursor:not-allowed;opacity:.5}.wizard-step-body{display:flex;flex-direction:column;gap:var(--space-4)}.wizard-section h2{margin:0 0 var(--space-1);font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.wizard-hint{margin:0 0 var(--space-2);color:var(--text-muted);font-size:var(--text-sm);line-height:1.5;max-width:62ch}.wizard-field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-2)}.wizard-field>span{color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.wizard-field>small{color:var(--text-muted);font-size:var(--text-xs)}.wizard-field input,.wizard-textarea{width:100%;padding:var(--space-2);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm)}.wizard-field-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.entity-card-grid{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.entity-card{position:relative;display:flex;padding:var(--space-2);color:var(--text-primary);background:var(--surface-tertiary);border:2px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:var(--space-1);text-align:left;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.entity-card:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.entity-card:hover:not(.selected){border-color:var(--border-default)}.entity-card.selected{color:#e6fffa;background:#2dd4bf24;border-color:var(--color-accent-teal);box-shadow:inset 0 0 0 1px #2dd4bf29}.entity-card.selected:after,.wizard-chip.selected:after{position:absolute;top:var(--space-2);right:var(--space-2);display:flex;width:1.25rem;height:1.25rem;color:#061a18;background:var(--color-accent-teal);align-items:center;border-radius:var(--radius-full);content:"✓";font-size:var(--text-xs);font-weight:800;justify-content:center;line-height:1}.entity-card-name{font-size:var(--text-sm);font-weight:600;padding-right:1.75rem}.entity-card-description{display:-webkit-box;color:var(--text-muted);-webkit-box-orient:vertical;font-size:var(--text-xs);-webkit-line-clamp:3;line-height:1.4;overflow:hidden}.entity-card.selected .entity-card-description{color:#b7e7df}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-2)}.wizard-chip{position:relative;display:flex;padding:var(--space-2);color:var(--text-primary);background:var(--surface-tertiary);border:2px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:.1rem;max-width:20rem;text-align:left;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.wizard-chip:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.wizard-chip.selected{color:#e6fffa;background:#2dd4bf24;border-color:var(--color-accent-teal);box-shadow:inset 0 0 0 1px #2dd4bf29}.wizard-chip:hover:not(.selected){border-color:var(--border-default)}.wizard-chip>span{font-size:var(--text-sm);font-weight:600;padding-right:1.75rem}.wizard-chip>small{color:var(--text-muted);font-size:var(--text-xs);line-height:1.35}.attribute-grid{display:flex;flex-direction:column;gap:var(--space-2)}.attribute-row{display:flex;align-items:center;gap:var(--space-3);justify-content:space-between}.attribute-name{color:var(--text-secondary);font-size:var(--text-sm);text-transform:capitalize}.tier-buttons{display:flex;gap:var(--space-1)}.tier-button{display:flex;padding:var(--space-1) var(--space-2);color:var(--text-muted);background:var(--surface-tertiary);border:2px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;font-size:var(--text-2xs);gap:.1rem;text-transform:uppercase;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.tier-button:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.tier-button.selected{color:#e6fffa;background:#2dd4bf2e;border-color:var(--color-accent-teal)}.tier-button>small{color:var(--text-accent);font-variant-numeric:tabular-nums}.wizard-chip.selected>small{color:#b7e7df}.tier-button.selected>small{color:#99f6e4}.skill-slot-list{display:flex;flex-direction:column;gap:var(--space-2)}.skill-slot{display:grid;align-items:center;gap:var(--space-2);grid-template-columns:6rem 1fr 9rem}.skill-slot-tier{display:flex;color:var(--text-accent);flex-direction:column;font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.skill-slot-name,.skill-slot-attribute{padding:var(--space-2);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm)}.skill-slot-issue{margin:0;color:#fca5a5;font-size:var(--text-xs);grid-column:2 / -1}.wizard-issue-list{margin:var(--space-2) 0 0;padding:0 0 0 var(--space-3);color:#fca5a5;font-size:var(--text-sm);line-height:1.5}.review-list{display:flex;margin:0;padding:0;flex-direction:column}.review-row{display:flex;padding:var(--space-1) 0;align-items:baseline;font-size:var(--text-sm);gap:var(--space-3);justify-content:space-between}.review-row+.review-row{border-top:1px solid var(--border-subtle)}.review-row dt{margin:0;color:var(--text-muted);text-transform:capitalize}.review-row dd{margin:0;color:var(--text-primary);text-align:right}.review-bio{margin:0;color:var(--text-primary);font-size:var(--text-sm);line-height:1.55;max-width:62ch}.chronicle-wizard{display:flex;flex:1;flex-direction:column;gap:var(--space-3);min-height:0}.chronicle-wizard-header{display:flex;align-items:flex-start;gap:var(--space-3);justify-content:space-between}.chronicle-wizard-header h1{margin:0;font-size:var(--text-xl);font-weight:600;letter-spacing:.01em}.chronicle-wizard-header p{margin:.15rem 0 0;color:var(--text-muted);font-size:var(--text-sm)}.wizard-close{height:var(--control-h);padding:0 var(--space-3);color:var(--text-secondary);background:transparent;border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);transition:border-color .12s ease,color .12s ease}.wizard-close:hover,.wizard-close:focus-visible{color:var(--text-primary);border-color:var(--border-default);outline:none}.wizard-stepper{display:flex;margin:0;padding:0;counter-reset:wizard-step;gap:var(--space-1);list-style:none}.wizard-stepper li{display:flex;flex:1;align-items:center;min-width:0}.wizard-stepper li:not(:first-child):before{flex:1;height:1px;margin:0 var(--space-2);background:var(--border-muted);content:"";min-width:.75rem}.wizard-step{display:inline-flex;flex:none;height:var(--control-h);padding:0 var(--space-2);color:var(--text-muted);background:transparent;align-items:center;border:none;border-radius:var(--radius-md);counter-increment:wizard-step;cursor:pointer;font-size:var(--text-xs);font-weight:500;gap:var(--space-2);transition:color .12s ease,background .12s ease;white-space:nowrap}.wizard-step:before{display:inline-flex;width:1.125rem;height:1.125rem;color:var(--text-muted);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-full);content:counter(wizard-step);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;justify-content:center}.wizard-step:disabled{cursor:not-allowed;opacity:.45}.wizard-step:hover:not(:disabled){color:var(--text-primary);background:var(--surface-tertiary)}.wizard-step.active{color:var(--text-primary)}.wizard-step.active:before{color:#fff;background:var(--color-accent-blue);border-color:transparent}.chronicle-wizard-body{display:flex;flex:1;padding:var(--space-4);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-shadow:var(--panel-highlight);flex-direction:column;min-height:0;overflow-y:auto}.chronicle-wizard-footer{display:flex;gap:var(--space-2);justify-content:flex-end}.chronicle-wizard-footer button{height:var(--control-h-lg);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:filter .12s ease,border-color .12s ease,color .12s ease}.location-step-actions{display:flex;align-items:center;gap:var(--space-2)}.location-step-actions button{height:var(--control-h);padding:0 var(--space-3);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:500;transition:border-color .12s ease,color .12s ease}.chronicle-wizard-footer button.secondary{color:var(--text-secondary);background:var(--surface-tertiary);border-color:var(--border-muted)}.chronicle-wizard-footer button.secondary:hover{color:var(--text-primary);border-color:var(--border-default)}.chronicle-wizard-footer button.primary{color:#fff;background:var(--gradient-cta)}.chronicle-wizard-footer button.primary:hover:not(:disabled){filter:brightness(1.12)}.chronicle-wizard-footer button:disabled{cursor:not-allowed;opacity:.5}.location-step-actions button:disabled{cursor:not-allowed;opacity:.5}.location-step-actions button:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-accent)}.wizard-error{margin:0;padding:var(--space-1) var(--space-3);color:#fecaca;background:#f871711a;border:1px solid rgb(248 113 113 / 35%);border-radius:var(--radius-sm);font-size:var(--text-sm)}.location-step{display:flex;flex:1;flex-direction:column;gap:var(--space-3);min-height:0}.location-step-header{display:flex;align-items:flex-start;gap:var(--space-3);justify-content:space-between}.location-step-header h2,.anchor-step-header h2{margin:0;font-size:var(--text-base);font-weight:600}.location-step-header p,.anchor-step-header p{margin:.15rem 0 0;color:var(--text-muted);font-size:var(--text-xs)}.anchor-card{display:flex;padding:var(--space-2) var(--space-3);font:inherit;color:inherit;background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:.15rem;text-align:left;transition:border-color .12s ease,background .12s ease}.anchor-card:hover{background:var(--surface-tertiary);border-color:var(--border-muted)}.anchor-card.active{background:#3b82f614;border-color:var(--border-accent)}.anchor-card-name{margin:0;color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.anchor-card-meta{margin:0;color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.anchor-card-desc{display:-webkit-box;margin:.2rem 0 0;color:var(--text-secondary);-webkit-box-orient:vertical;font-size:var(--text-xs);-webkit-line-clamp:3;line-height:1.45;overflow:hidden}.location-step-spinner{width:14px;height:14px;border:2px solid transparent;border-radius:50%;flex-shrink:0;opacity:0}.location-step-spinner[data-active=true]{animation:location-step-spin .7s linear infinite;border-color:var(--border-muted);border-top-color:var(--text-accent);opacity:1}@keyframes location-step-spin{to{transform:rotate(360deg)}}.tone-step{display:flex;flex-direction:column;gap:var(--space-3)}.tone-step>p{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.tone-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tone-chip{height:var(--control-h);padding:0 var(--space-3);color:var(--text-secondary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-sm);text-transform:capitalize;transition:border-color .12s ease,color .12s ease,background .12s ease}.tone-chip:hover{color:var(--text-primary);border-color:var(--border-default)}.tone-chip.active{color:var(--text-primary);background:#3b82f626;border-color:var(--border-accent)}.tone-step label{display:flex;color:var(--text-secondary);flex-direction:column;font-size:var(--text-sm);gap:var(--space-1);max-width:32rem}.tone-step textarea{padding:var(--space-2) var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-sm);resize:vertical}.custom-seed-editor input,.custom-seed-editor textarea{padding:var(--space-2) var(--space-3);color:var(--text-primary);background:var(--surface-secondary);border:1px solid var(--border-muted);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-sm)}.custom-seed-editor textarea{resize:vertical}.tone-step textarea:focus-visible{border-color:var(--border-accent);outline:none}.custom-seed-editor input:focus-visible,.custom-seed-editor textarea:focus-visible{border-color:var(--border-accent);outline:none}.seed-step{display:flex;flex-direction:column;gap:var(--space-3)}.seed-toolbar{display:flex;align-items:center;gap:var(--space-2)}.seed-toolbar-prominent .chip-button{height:var(--control-h-lg);padding:0 var(--space-4);font-size:var(--text-sm)}.seed-list{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.seed-card{display:flex;padding:var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-2);transition:border-color .12s ease}.seed-card:hover{border-color:var(--border-muted)}.seed-card.active{background:#3b82f614;border-color:var(--border-accent)}.seed-card-header{display:flex;align-items:flex-start;gap:var(--space-2);justify-content:space-between}.seed-title{margin:0;color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.seed-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);justify-content:flex-end}.seed-tag{padding:.05rem var(--space-2);color:var(--text-muted);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.seed-choose-button{height:1.5rem;padding:0 var(--space-2);color:var(--text-accent);background:#3b82f61f;border:1px solid rgb(96 165 250 / 35%);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);font-weight:500;transition:border-color .12s ease;white-space:nowrap}.seed-choose-button:hover{border-color:var(--border-accent)}.seed-teaser{margin:0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}.seed-empty{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.custom-seed-editor{display:flex;border-top:1px solid var(--border-subtle);flex-direction:column;gap:var(--space-2);max-width:32rem;padding-top:var(--space-3)}.custom-seed-editor h4{margin:0;color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.custom-seed-editor label{display:flex;color:var(--text-secondary);flex-direction:column;font-size:var(--text-sm);gap:var(--space-1)}.anchor-step{display:flex;flex-direction:column;gap:var(--space-3)}.anchor-step>p{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.anchor-step-header{display:flex;align-items:flex-start;gap:var(--space-3);justify-content:space-between}.anchor-step-list{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.anchor-group{display:flex;flex-direction:column;gap:var(--space-2)}.anchor-group-title{display:flex;margin:0;color:var(--text-muted);align-items:center;border-bottom:1px solid var(--border-subtle);font-size:var(--text-2xs);font-weight:600;gap:var(--space-2);letter-spacing:.08em;padding-bottom:var(--space-1);text-transform:uppercase}.anchor-group-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:500}.anchor-card-prominence{padding:.05rem var(--space-2);color:var(--text-muted);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);letter-spacing:.04em;margin-left:var(--space-2);text-transform:uppercase}.anchor-card-prominence-mythic{color:#fcd34d;background:#fbbf241a;border-color:#fbbf2466}.anchor-card-prominence-renowned{color:#c4b5fd;background:#a78bfa1a;border-color:#a78bfa66}.create-step{display:grid;align-content:start;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.create-summary-card{padding:var(--space-2) var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.create-step>.create-summary-card:first-child{grid-column:1 / -1}.create-summary-compact{display:grid;gap:var(--space-2);grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.create-summary-card h3{margin:0 0 var(--space-1);color:var(--text-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.create-summary-header{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.create-summary-badges{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1)}.create-badge{padding:.05rem var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.create-badge-muted{color:var(--text-muted);background:transparent}.create-badge-accent{color:var(--text-accent);background:#3b82f61a;border-color:#60a5fa59}.create-summary-title{margin:0;color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.create-summary-desc{margin:.2rem 0 0;color:var(--text-secondary);font-size:var(--text-xs);line-height:1.5}.create-summary-empty{color:var(--text-muted);font-size:var(--text-xs)}.create-summary-content{display:flex;flex-direction:column;gap:var(--space-1)}.create-tone-note{margin:0;color:var(--text-secondary);font-size:var(--text-xs);font-style:italic}.create-title-input{width:100%;padding:var(--space-2) var(--space-3);color:var(--text-primary);background:var(--surface-primary);border:1px solid var(--border-muted);border-radius:var(--radius-md);box-sizing:border-box;font-family:inherit;font-size:var(--text-sm)}.create-title-input:focus-visible{border-color:var(--border-accent);outline:none}.credential-check-screen{display:flex;width:100%;height:100vh;color:var(--text-muted);background:var(--bg-shell);align-items:center;flex-direction:column;gap:var(--space-3);justify-content:center}.credential-check-screen p{margin:0;font-size:var(--text-sm)}.credential-check-spinner{width:1.75rem;height:1.75rem;animation:credential-check-spin .8s linear infinite;border:2px solid var(--border-muted);border-radius:50%;border-top-color:var(--text-accent)}@keyframes credential-check-spin{to{transform:rotate(360deg)}}.app-main{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-height:0;min-width:0}.app-route-workspace{display:flex;flex:1;min-height:0;min-width:0}.session-bar{display:flex;width:100%;align-items:center;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between}.session-guide-button,.session-report-button{display:inline-flex;height:var(--control-h);padding:0 var(--space-3);color:var(--text-secondary);background:transparent;align-items:center;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:background .12s ease,color .12s ease,border-color .12s ease}.session-guide-button:hover,.session-guide-button:focus-visible,.session-report-button:hover,.session-report-button:focus-visible{color:var(--text-primary);background:var(--surface-tertiary);border-color:var(--border-muted);outline:none}.session-changelog-button{display:inline-flex;width:var(--control-h);height:var(--control-h);color:var(--text-muted);background:transparent;align-items:center;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;justify-content:center;transition:background .12s ease,color .12s ease,border-color .12s ease}.session-changelog-button:hover,.session-changelog-button:focus-visible{color:var(--text-primary);background:var(--surface-tertiary);border-color:var(--border-muted);outline:none}.session-changelog-button svg{pointer-events:none}.app-global-header{display:flex;flex:none;height:var(--header-h);padding:0 var(--space-4);background:var(--surface-primary);align-items:center;border-bottom:1px solid var(--border-muted);gap:var(--space-3);justify-content:space-between}.session-meta{display:flex;align-items:center;gap:var(--space-2);justify-content:flex-end}.session-meta-actions{display:flex;align-items:center;gap:var(--space-1)}.session-home-button{display:inline-flex;height:var(--control-h);padding:0 var(--space-2);color:var(--text-primary);background:transparent;align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;gap:var(--space-2);letter-spacing:.01em;transition:color .12s ease}.session-home-button:before{width:.5rem;height:.5rem;background:var(--gradient-cta);border-radius:var(--radius-xs);content:""}.session-home-button:hover,.session-home-button:focus-visible{color:var(--text-accent);outline:none}.app-route-surface{display:flex;flex:1;padding:var(--space-3) var(--space-4);box-sizing:border-box;flex-direction:column;min-height:0;min-width:0;overflow-y:auto}.chronicle-route-state{display:flex;flex:1;color:var(--text-secondary);align-items:center;border:1px dashed var(--border-muted);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-3);justify-content:center;min-height:320px}.chronicle-route-state button{height:var(--control-h-lg);padding:0 var(--space-4);color:var(--text-primary);background:var(--surface-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:border-color .12s ease,background .12s ease}.chronicle-route-state button:hover,.chronicle-route-state button:focus-visible{background:var(--surface-secondary);border-color:var(--border-accent);outline:none}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--font-ui: inter, system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", sfmono-regular, menlo, consolas, monospace;--radius-xs: .1875rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-full: 999px;--opacity-muted: .08;--opacity-low: .15;--opacity-mid: .3;--opacity-high: .6;--shadow-sm: 0 1px 2px rgb(0 0 0 / 30%);--shadow-md: 0 4px 12px rgb(0 0 0 / 35%);--shadow-lg: 0 12px 32px rgb(0 0 0 / 50%);--shadow-glow: 0 0 0 1px rgb(96 165 250 / 25%);--color-primary: #6c8bff;--color-secondary: #4bd4aa;--color-accent-pink: #ec4899;--color-accent-blue: #3b82f6;--color-accent-teal: #2dd4bf;--color-accent-purple: #a78bfa;--color-accent-yellow: #fde047;--color-danger: #f87171;--color-success: #34d399;--surface-primary: #0c1322;--surface-secondary: #111a2e;--surface-tertiary: #16213a;--surface-elevated: #121c31;--bg-base: #0a101d;--bg-shell: #070b14;--text-primary: #eef2fa;--text-secondary: #c4cfe4;--text-muted: #8593ab;--text-accent: #8fb8f6;--border-subtle: rgb(148 163 184 / 10%);--border-muted: rgb(148 163 184 / 16%);--border-default: rgb(148 163 184 / 28%);--border-accent: rgb(96 165 250 / 55%);--panel-glow-inset: inset 0 0 0 1px rgb(148 163 184 / 8%);--panel-highlight: inset 0 1px 0 rgb(255 255 255 / 3%);--panel-shadow: 0 1px 2px rgb(0 0 0 / 25%);--control-h: 1.75rem;--control-h-lg: 2.125rem;--header-h: 3rem;--gradient-cta: linear-gradient(120deg, #4f7cf2, #b452c8);--focus-ring: 2px solid rgb(96 165 250 / 70%);--focus-offset: 2px}:root{color:var(--text-primary);background-color:var(--bg-shell);color-scheme:dark;font-family:var(--font-ui);line-height:1.5}body{margin:0;min-height:100vh;overflow:hidden}.app-shell{display:flex;width:100%;height:100vh;background:var(--bg-shell);box-sizing:border-box;flex-direction:column;overflow:hidden}.app-frame{display:flex;flex:1;width:100%;flex-direction:column;min-height:0}.app-layout{display:flex;flex:1;width:100%;gap:var(--space-3);min-height:0;min-width:0}@media(width<=800px){.app-layout{flex-direction:column}}.app-header{display:flex;align-items:center;border-bottom:1px solid var(--border-subtle);justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-3)}.app-title{font-size:var(--text-xl);font-weight:600;letter-spacing:.02em}.app-session-id{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms;animation-iteration-count:1;scroll-behavior:auto;transition-duration:.01ms}}.chip-button{display:inline-flex;height:1.5rem;padding:0 var(--space-2);color:var(--text-secondary);background:var(--surface-tertiary);align-items:center;border:1px solid var(--border-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);font-weight:500;gap:.3rem;transition:border-color .12s ease,color .12s ease,background .12s ease;white-space:nowrap}.chip-button:focus-visible,.chip-button:hover{color:var(--text-primary);border-color:var(--border-accent);outline:none}.chip-button:disabled{cursor:not-allowed;opacity:.5}.chip-button-active{color:#b7f0d4;background:#34d3991f;border-color:#34d39966}.chip-button-danger{color:#fda4af;background:#f871711a;border-color:#f8717159}.chip-button-danger:hover,.chip-button-danger:focus-visible{color:#fecdd3;border-color:#f8717199}.atlas-kind-dot{flex:none;width:.5rem;height:.5rem;background:var(--text-muted);border-radius:var(--radius-full)}.atlas-kind-dot[data-kind=geographic_location]{background:#60a5fa}.atlas-kind-dot[data-kind=installation]{background:#2dd4bf}.atlas-kind-dot[data-kind=faction]{background:#a78bfa}.atlas-kind-dot[data-kind=npc]{background:#f472b6}.atlas-kind-dot[data-kind=artifact]{background:#fbbf24}.atlas-kind-dot[data-kind=creature]{background:#a3e635}.atlas-kind-dot[data-kind=resource]{background:#34d399}.atlas-kind-dot[data-kind=transport]{background:#22d3ee}.atlas-kind-dot[data-kind=incident]{background:#f87171}.atlas-kind-dot[data-kind=conflict]{background:#fb7185}.atlas-kind-dot[data-kind=era]{background:#94a3b8}.atlas-kind-dot[data-kind=concept]{background:#818cf8}.atlas-kind-dot[data-kind=culture]{background:#fb923c}.atlas-kind-dot[data-kind=species]{background:#4ade80}.atlas-kind-dot[data-kind=phenomenon]{background:#e879f9}.atlas-kind-dot[data-kind=ability]{background:#38bdf8}.atlas-kind-dot[data-kind=edict]{background:#a8a29e}.atlas-kind-dot[data-kind=rumor]{background:#fde047}
