.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{color-scheme:light;--ink-50: oklch(98% .006 165);--ink-100: oklch(96% .008 165);--ink-200: oklch(91% .01 165);--ink-300: oklch(84% .012 165);--ink-400: oklch(71% .014 165);--ink-500: oklch(58% .014 165);--ink-600: oklch(46% .013 165);--ink-700: oklch(35% .012 165);--ink-800: oklch(25% .01 165);--ink-900: oklch(17% .008 165);--jade-50: oklch(97% .018 165);--jade-100: oklch(93% .034 165);--jade-200: oklch(85% .055 165);--jade-300: oklch(75% .078 165);--jade-400: oklch(64% .092 165);--jade-500: oklch(52% .095 165);--jade-600: oklch(44% .085 165);--jade-700: oklch(36% .07 165);--jade-800: oklch(28% .052 165);--amber-500: oklch(72% .14 75);--red-500: oklch(60% .18 28);--font-ui: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-literary: "Noto Serif SC", "Songti SC", serif;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 30px;--leading-tight: 1.25;--leading-normal: 1.55;--leading-reading: 1.8;--tracking-tight: -.025em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--radius-sm: 6px;--radius-md: 9px;--radius-lg: 12px;--radius-xl: 16px;--shadow-raised: 0 12px 30px oklch(20% .012 165 / .08), 0 2px 6px oklch(20% .012 165 / .05);--shadow-overlay: 0 24px 64px oklch(20% .012 165 / .12), 0 6px 16px oklch(20% .012 165 / .07);--duration-fast: .15s;--duration-normal: .24s;--duration-panel: .32s;--ease-out: cubic-bezier(.16, 1, .3, 1);--surface-canvas: var(--ink-50);--surface-sidebar: var(--ink-100);--surface-raised: oklch(99% .003 165);--surface-sunken: var(--ink-100);--surface-overlay: oklch(99.5% .002 165);--text-primary: var(--ink-900);--text-secondary: var(--ink-600);--text-tertiary: var(--ink-500);--text-literary: var(--ink-700);--border-subtle: oklch(30% .018 165 / .09);--border-default: oklch(30% .018 165 / .16);--border-strong: oklch(30% .018 165 / .28);--accent-bg: var(--jade-600);--accent-hover: var(--jade-700);--accent-active: var(--jade-800);--accent-soft: var(--jade-100);--accent-text: var(--jade-700);--focus-ring: var(--jade-400);--status-running: var(--jade-600);--status-warning: var(--amber-500);--status-error: var(--red-500);--story-map-bg: var(--surface-sunken);--story-map-grid: oklch(35% .025 165 / .08);--story-map-node-bg: var(--surface-raised);--story-map-node-border: var(--border-default);--story-map-edge: oklch(44% .055 165 / .48);--story-map-edge-active: var(--accent-bg);--story-map-selection: var(--jade-100)}:root{font-family:var(--font-ui);color:var(--text-primary);background:var(--surface-canvas);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:1024px;min-height:100vh}button,select{border:0}button{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed;opacity:.54}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.app-shell{display:grid;grid-template-columns:188px minmax(0,1fr);min-height:100vh;background:var(--surface-canvas)}.app-shell__sidebar{display:flex;min-height:100vh;flex-direction:column;padding:24px 12px 20px;background:var(--surface-sidebar);border-right:1px solid var(--border-subtle)}.brand-lockup{display:flex;align-items:center;gap:10px;padding:0 10px 28px}.brand-lockup__mark{display:grid;width:34px;height:34px;place-items:center;color:var(--surface-raised);background:var(--accent-bg);border-radius:var(--radius-sm);font-family:var(--font-literary);font-size:18px}.brand-lockup span:last-child{display:grid;gap:1px}.brand-lockup strong{color:var(--text-primary);font-family:var(--font-literary);font-size:16px;font-weight:700;letter-spacing:.04em}.brand-lockup small{color:var(--text-tertiary);font-size:var(--text-xs)}.primary-nav{display:flex;flex:1;flex-direction:column;gap:4px}.primary-nav__section-label,.section-kicker{margin:0;color:var(--accent-text);font-size:11px;font-weight:700;letter-spacing:.14em;line-height:1.4}.primary-nav__section-label{margin:0 10px 8px;color:var(--text-tertiary)}.primary-nav__item{display:flex;width:100%;min-height:48px;align-items:center;gap:10px;padding:8px 10px;color:var(--text-secondary);background:transparent;border-radius:var(--radius-md);text-align:left;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.primary-nav__item:hover,.primary-nav__item.is-active{color:var(--accent-text);background:var(--accent-soft)}.primary-nav__item>span{display:grid;gap:2px}.primary-nav__item strong{font-size:13px;font-weight:650}.primary-nav__item small{color:var(--text-tertiary);font-size:11px}.primary-nav__footer{margin:auto 10px 0;padding-top:16px;border-top:1px solid var(--border-subtle)}.primary-nav__footer p,.primary-nav__footer small{display:block;margin:0}.primary-nav__footer p{color:var(--text-secondary);font-family:var(--font-literary);font-size:13px}.primary-nav__footer small{margin-top:4px;color:var(--text-tertiary);font-size:11px;line-height:1.45}.app-shell__body{min-width:0}.topbar{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:24px;padding:14px 32px;background:color-mix(in oklch,var(--surface-canvas) 90%,white);border-bottom:1px solid var(--border-subtle)}.work-switcher{display:grid;grid-template-columns:auto minmax(150px,240px);align-items:center;gap:8px 12px}.work-switcher__label{grid-column:1 / -1;color:var(--text-tertiary);font-size:11px;letter-spacing:.08em}.work-switcher select{min-width:180px;padding:4px 28px 4px 0;color:var(--text-primary);background:transparent;font-family:var(--font-literary);font-size:18px;font-weight:650}.work-switcher__genre{color:var(--text-tertiary);font-size:12px}.topbar__meta{display:flex;align-items:center;gap:18px}.text-button{min-height:40px;padding:8px 4px;color:var(--accent-text);background:transparent;font-size:13px}.connection-status{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px;white-space:nowrap}.connection-status small{color:var(--text-tertiary)}.connection-status__dot{width:7px;height:7px;flex:0 0 auto;background:var(--status-running);border-radius:50%}.connection-status--connecting .connection-status__dot{background:var(--status-warning)}.connection-status--offline-snapshot .connection-status__dot,.connection-status--demo .connection-status__dot{background:var(--text-tertiary)}.app-shell__main{min-height:calc(100vh - 72px);padding:40px 40px 56px}.editorial-home{width:min(1240px,100%);margin:0 auto}.editorial-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding-bottom:32px;border-bottom:1px solid var(--border-default)}.editorial-hero__copy{max-width:660px}.editorial-hero h1{max-width:16ch;margin:10px 0 14px;color:var(--text-primary);font-family:var(--font-literary);font-size:clamp(32px,4vw,54px);font-weight:650;letter-spacing:var(--tracking-tight);line-height:1.14;text-wrap:balance}.editorial-hero__lede{max-width:58ch;margin:0;color:var(--text-secondary);font-size:15px;line-height:var(--leading-reading)}.editorial-hero__stamp{display:grid;min-width:138px;justify-items:center;gap:8px;padding:16px 12px;color:var(--accent-text);border:1px solid var(--border-default);border-radius:var(--radius-lg);font-size:11px;text-align:center}.inline-notice{display:flex;align-items:center;gap:8px;margin:20px 0 -4px;padding:10px 12px;color:var(--text-secondary);background:var(--surface-sunken);border-left:2px solid var(--status-warning);font-size:13px}.editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:40px;padding-top:32px}.decision-brief{min-width:0}.section-heading,.pulse-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.section-heading h2,.pulse-heading h2{margin:7px 0 0;color:var(--text-primary);font-family:var(--font-literary);font-size:23px;font-weight:650;letter-spacing:-.02em}.section-heading__count{color:var(--text-tertiary);font-size:13px;font-variant-numeric:tabular-nums}.decision-item{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:16px;margin-top:22px;padding:24px 0;border-top:1px solid var(--decision-divider, var(--border-default))}.decision-item--primary{padding-top:28px}.decision-item__index{color:var(--accent-text);font-family:var(--font-literary);font-size:19px;font-variant-numeric:tabular-nums}.decision-item__body{min-width:0}.decision-item__eyebrow{color:var(--text-tertiary);font-size:11px;letter-spacing:.1em}.decision-item h3{margin:8px 0 7px;color:var(--text-primary);font-family:var(--font-literary);font-size:20px;font-weight:650;line-height:1.35}.decision-item p{max-width:60ch;margin:0 0 16px;color:var(--text-secondary);font-size:14px;line-height:1.7}.decision-item__signal{display:flex;align-items:flex-start;gap:5px;color:var(--accent-text);font-size:11px}.decision-item__signal--muted{color:var(--text-tertiary)}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border-radius:var(--button-primary-radius, var(--radius-md));font-size:13px;font-weight:650;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.button--primary{color:var(--surface-raised);background:var(--button-primary-bg, var(--accent-bg))}.button--primary:hover:not(:disabled){background:var(--button-primary-hover, var(--accent-hover))}.button--quiet{color:var(--accent-text);background:var(--accent-soft)}.button--quiet:hover:not(:disabled){background:var(--jade-200)}.production-control{margin-top:26px;padding:22px 20px 20px;background:color-mix(in oklch,var(--surface-raised) 76%,var(--accent-soft));border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 12px 28px #1118150a}.production-control .section-heading{align-items:center}.production-control .section-heading h2{margin-top:5px;font-size:19px}.production-control__gate{margin-top:18px;padding-top:18px;border-top:1px solid var(--border-subtle)}.production-control__gate h3{margin:7px 0;color:var(--text-primary);font-family:var(--font-literary);font-size:18px;font-weight:650;line-height:1.35}.production-control__gate p{margin:0 0 13px;color:var(--text-secondary);font-size:13px;line-height:1.65}.production-control__question{padding-left:12px;border-left:2px solid var(--jade-300);color:var(--text-primary)!important}.production-control__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.production-control__row label{display:inline-flex;align-items:center;gap:8px;color:var(--text-tertiary);font-size:12px}.production-control input,.production-control select,.production-control textarea{min-height:42px;padding:8px 11px;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md);font:inherit;font-size:13px}.production-control input{min-width:min(360px,100%);flex:1 1 260px}.production-control textarea{width:100%;min-height:68px;margin:4px 0 10px;resize:vertical;line-height:1.55}.production-control input:focus,.production-control select:focus,.production-control textarea:focus{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 30%,transparent);outline-offset:1px}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;color:var(--accent-text);background:var(--accent-soft);border-radius:999px;font-size:11px;font-weight:650}.home-pulse{min-width:0;padding-left:24px;border-left:1px solid var(--border-default)}.pulse-block{margin-top:24px;padding-top:18px;border-top:1px solid var(--border-subtle)}.pulse-block__heading h3{margin:5px 0 0;color:var(--text-primary);font-family:var(--font-literary);font-size:15px;font-weight:650}.production-timeline ol{display:grid;gap:12px;margin:16px 0 0;padding:0;list-style:none}.production-timeline__item{display:flex;align-items:flex-start;gap:9px}.production-timeline__mark{display:grid;width:18px;height:18px;flex:0 0 auto;place-items:center;color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:50%}.production-timeline__item--done .production-timeline__mark{color:var(--accent-text);background:var(--accent-soft);border-color:var(--jade-200)}.production-timeline__item--active .production-timeline__mark{color:var(--accent-text);border-color:var(--accent-bg)}.production-timeline__item--active .production-timeline__mark svg{animation:pulse-spin 2.4s linear infinite}.production-timeline__item>span:last-child{display:grid;gap:2px}.production-timeline__item strong{color:var(--text-secondary);font-size:12px;font-weight:650}.production-timeline__item small{color:var(--text-tertiary);font-size:11px}.bootstrap-activity__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bootstrap-activity__status{color:var(--accent-text);font-size:10px;white-space:nowrap}.bootstrap-activity__description{margin:12px 0 0;color:var(--text-tertiary);font-size:11px;line-height:1.65}.bootstrap-activity__meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;color:var(--text-secondary);font-size:11px}.bootstrap-activity__error{display:flex;align-items:flex-start;gap:6px;margin:12px 0 0;color:var(--status-error);font-size:11px;line-height:1.5}.bootstrap-activity__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px}.bootstrap-activity__actions .button{min-height:36px;gap:5px;padding:7px 10px;font-size:11px}.bootstrap-activity__polling,.bootstrap-activity__idle{display:inline-flex;align-items:center;gap:5px;color:var(--text-tertiary);font-size:10px}.bootstrap-activity__error+.bootstrap-activity__actions{margin-top:10px}.readiness-meters__list{display:grid;gap:12px;margin-top:16px}.readiness-meter{display:grid;gap:6px}.readiness-meter>div:first-child{display:flex;justify-content:space-between;color:var(--text-secondary);font-size:11px}.readiness-meter strong{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}.readiness-meter__track{height:4px;overflow:hidden;background:var(--ink-200);border-radius:999px}.readiness-meter__track i{display:block;height:100%;background:var(--accent-bg);border-radius:inherit;transition:width var(--duration-normal) var(--ease-out)}.story-map-preview{margin-top:24px;padding-top:20px;border-top:1px solid var(--border-subtle)}.story-map-preview--empty{min-height:270px}.story-map-preview__heading,.story-map-preview__footer,.story-map-preview__details-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.story-map-preview h3{margin:5px 0 0;color:var(--text-primary);font-family:var(--font-literary);font-size:16px;font-weight:650}.story-map-preview__version{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.story-map-preview__canvas{position:relative;height:188px;margin-top:14px;overflow:hidden;background-color:var(--story-map-bg);background-image:radial-gradient(var(--story-map-grid) .7px,transparent .7px);background-size:13px 13px;border:1px solid var(--border-default);border-radius:var(--radius-lg)}.story-map-preview__node{position:absolute;z-index:2;display:flex;max-width:110px;min-height:34px;align-items:center;gap:6px;padding:6px 8px;color:var(--text-secondary);background:var(--story-map-node-bg);border:1px solid var(--story-map-node-border);border-radius:var(--radius-sm);box-shadow:0 3px 10px #1118150f;font-size:10px;line-height:1.25;text-align:left;transform:translate(-50%,-50%);transition:border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.story-map-preview__node:hover,.story-map-preview__node.is-focused{color:var(--accent-text);background:var(--story-map-selection);border-color:var(--accent-bg)}.story-map-preview__node-mark{width:7px;height:7px;flex:0 0 auto;background:var(--ink-500);border-radius:50%}.story-map-preview__node--world_entity .story-map-preview__node-mark{background:var(--jade-600)}.story-map-preview__node--world_rule .story-map-preview__node-mark{background:var(--amber-500)}.story-map-preview__node--character .story-map-preview__node-mark{background:var(--ink-700)}.story-map-preview__edge-hints{position:absolute;inset:0;z-index:1;pointer-events:none}.story-map-preview__edge-hints i{position:absolute;top:calc(22px + var(--edge-index) * 25px);left:20px;width:calc(62% - var(--edge-index) * 9px);height:1px;background:var(--story-map-edge);transform:rotate(calc(18deg - var(--edge-index) * 7deg));transform-origin:left center}.story-map-preview__details{margin-top:12px}.story-map-preview__details-title strong{overflow:hidden;color:var(--text-secondary);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.story-map-preview__details-title span{flex:0 0 auto;color:var(--text-tertiary);font-size:10px}.story-map-preview__details>p{margin:5px 0 8px;color:var(--text-tertiary);font-size:11px;line-height:1.5}.story-map-preview__details ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.story-map-preview__details li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--text-secondary);font-size:11px}.story-map-preview__details li small{color:var(--text-tertiary);font-size:10px}.story-map-preview__details li.is-muted{color:var(--text-tertiary)}.story-map-preview__footer{margin-top:14px;padding-top:12px;border-top:1px solid var(--border-subtle)}.layout-save-state{display:inline-flex;align-items:center;gap:5px;color:var(--text-tertiary);font-size:10px}.layout-save-state--saved{color:var(--accent-text)}.layout-save-state--error,.layout-save-state--conflict{color:var(--status-error)}.story-map-preview__open{display:inline-flex;min-height:32px;align-items:center;gap:4px;padding:4px 0;font-size:11px}.story-map-preview__empty-icon{display:grid;width:32px;height:32px;margin-bottom:14px;place-items:center;color:var(--accent-text);background:var(--accent-soft);border-radius:var(--radius-sm)}.story-map-preview--empty h3{margin:7px 0;font-family:var(--font-literary);font-size:16px}.story-map-preview--empty>p:last-child{margin:0;color:var(--text-tertiary);font-size:11px;line-height:1.6}.spin{animation:pulse-spin 1.2s linear infinite}@keyframes pulse-spin{to{transform:rotate(360deg)}}.pulse-heading{align-items:center}.pulse-heading h2{font-size:20px}.pulse-heading__status{color:var(--accent-text);font-size:11px}.pulse-summary{display:grid;gap:5px;margin-top:28px;padding:14px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.pulse-summary span,.pulse-summary small{color:var(--text-tertiary);font-size:12px}.pulse-summary strong{color:var(--text-primary);font-family:var(--font-literary);font-size:16px;font-weight:650}.story-map-teaser{display:block;width:100%;margin-top:20px;padding:0;color:var(--text-primary);background:transparent;text-align:left}.story-map-teaser__header{display:flex;align-items:center;justify-content:space-between;color:var(--accent-text);font-size:13px;font-weight:650}.story-map-teaser__canvas{position:relative;height:132px;margin-top:10px;overflow:hidden;background-color:var(--story-map-bg);background-image:radial-gradient(var(--story-map-grid) .7px,transparent .7px);background-size:13px 13px;border:1px solid var(--border-default);border-radius:var(--radius-lg)}.map-dot{position:absolute;width:24px;height:24px;border:3px solid var(--surface-raised);border-radius:50%;box-shadow:0 0 0 1px var(--border-strong)}.map-dot--jade{top:24px;left:26px;background:var(--accent-bg)}.map-dot--ink{top:78px;left:114px;background:var(--ink-700)}.map-dot--amber{top:37px;right:30px;background:var(--amber-500)}.map-line{position:absolute;height:1px;background:var(--story-map-edge);transform-origin:left center}.map-line--one{top:45px;left:46px;width:86px;transform:rotate(34deg)}.map-line--two{top:44px;left:134px;width:81px;transform:rotate(-5deg)}.story-map-teaser p{margin:9px 0 0;color:var(--text-tertiary);font-size:11px}.literary-snippet{margin:28px 0 0;padding-top:20px;color:var(--text-literary);border-top:1px solid var(--border-subtle);font-family:var(--font-literary);font-size:14px;line-height:1.85}.literary-snippet cite{display:block;margin-top:8px;color:var(--text-tertiary);font-family:var(--font-ui);font-size:11px;font-style:normal}.empty-work-state,.page-placeholder{max-width:680px;margin:64px auto;padding:48px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-raised)}.empty-work-state h2,.page-placeholder h1{margin:10px 0;font-family:var(--font-literary);font-size:32px;font-weight:650;letter-spacing:var(--tracking-tight)}.empty-work-state p:not(.section-kicker),.page-placeholder p:not(.section-kicker){max-width:48ch;margin:0 0 24px;color:var(--text-secondary);line-height:1.75}.empty-work-state__actions{display:flex;flex-wrap:wrap;gap:10px}.story-map-workspace{width:min(1420px,100%);margin:0 auto}.story-map-workspace__header{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding-bottom:24px;border-bottom:1px solid var(--border-default)}.story-map-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:28px;padding:4px 0}.story-map-workspace__header h1{margin:7px 0 8px;font-family:var(--font-literary);font-size:clamp(30px,4vw,48px);font-weight:650;letter-spacing:var(--tracking-tight)}.story-map-workspace__header p:not(.section-kicker){max-width:62ch;margin:0;color:var(--text-secondary);font-size:14px;line-height:1.7}.story-map-workspace__meta{display:grid;flex:0 0 auto;justify-items:end;gap:8px;color:var(--text-tertiary);font-size:12px}.story-map-workspace__meta span{display:inline-flex;align-items:center;gap:5px}.story-map-workspace__meta strong{color:var(--accent-text);font-size:13px;font-variant-numeric:tabular-nums;font-weight:650}.story-map-workspace__toolbar{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border-subtle)}.story-map-filters{display:flex;align-items:center;gap:7px}.story-map-filters__label{margin-right:4px;color:var(--text-tertiary);font-size:12px}.story-map-filters button{min-height:36px;padding:7px 10px;color:var(--text-tertiary);background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:12px}.story-map-filters button:hover,.story-map-filters button.is-active{color:var(--accent-text);background:var(--accent-soft);border-color:var(--jade-200)}.story-map-workspace__grid{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:24px;padding-top:24px}.story-map-canvas-panel{min-width:0}.story-map-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.story-map-section-heading h2{margin:6px 0 0;font-family:var(--font-literary);font-size:20px;font-weight:650}.story-map-section-heading>span{color:var(--text-tertiary);font-size:12px;font-variant-numeric:tabular-nums}.story-map-canvas{position:relative;height:min(620px,calc(100vh - 310px));min-height:430px;margin-top:14px;overflow:hidden;background:var(--story-map-bg);border:1px solid var(--border-default);border-radius:var(--radius-lg)}.story-map-canvas .react-flow{font-family:var(--font-ui)}.story-map-canvas .react-flow__controls{overflow:hidden;border:1px solid var(--border-default);border-radius:var(--radius-sm);box-shadow:none}.story-map-canvas .react-flow__controls-button{width:30px;height:30px;color:var(--text-secondary);background:var(--surface-raised);border-bottom:1px solid var(--border-subtle)}.story-map-canvas .react-flow__edge-path{stroke:var(--story-map-edge);stroke-width:1.5}.story-map-canvas .react-flow__edge-text{fill:var(--text-secondary);font-size:10px}.story-map-canvas .story-map-edge--attention .react-flow__edge-path{stroke:var(--amber-500);stroke-dasharray:4 3}.story-map-canvas .story-map-edge--cross .react-flow__edge-path{stroke:var(--story-map-edge);stroke-width:1;stroke-dasharray:3 4;opacity:.5}.story-map-canvas__hint{position:absolute;right:14px;bottom:12px;margin:0;padding:5px 8px;color:var(--text-tertiary);background:color-mix(in oklch,var(--surface-raised) 90%,transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:11px;pointer-events:none}.story-map-node{display:flex;min-width:150px;align-items:center;gap:9px;padding:10px 12px;color:var(--text-secondary);background:var(--story-map-node-bg);border:1px solid var(--story-map-node-border);border-radius:var(--radius-md);box-shadow:var(--shadow-raised)}.story-map-node.is-selected{color:var(--accent-text);background:var(--story-map-selection);border-color:var(--accent-bg);box-shadow:0 0 0 3px #509e7e29,var(--shadow-raised)}.story-map-node--attention{border-style:dashed;border-color:var(--amber-500)}.story-map-node__mark{width:10px;height:10px;flex:0 0 auto;background:var(--ink-500);border-radius:50%}.story-map-node--world_entity .story-map-node__mark{background:var(--jade-600)}.story-map-node--world_rule .story-map-node__mark{background:var(--amber-500)}.story-map-node--character .story-map-node__mark{background:var(--ink-700)}.story-map-node--story_node .story-map-node__mark{background:var(--accent-bg)}.story-map-node__copy{display:grid;gap:3px}.story-map-node__copy strong{color:inherit;font-size:12px;font-weight:650;line-height:1.25}.story-map-node__copy small{color:var(--text-tertiary);font-size:10px;font-variant-numeric:tabular-nums}.story-map-node__handle{width:7px;height:7px;background:var(--accent-bg);border:1px solid var(--surface-raised)}.story-map-inspector{align-self:start;padding:20px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg)}.story-map-inspector h2{margin:7px 0 12px;font-family:var(--font-literary);font-size:22px;font-weight:650;line-height:1.3}.story-map-inspector>p:not(.section-kicker),.story-map-inspector__relations p,.story-map-inspector__readonly{color:var(--text-secondary);font-size:13px;line-height:1.7}.story-map-inspector__summary{margin:0}.story-map-inspector dl{display:grid;gap:8px;margin:20px 0;padding:14px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.story-map-inspector dl div{display:flex;justify-content:space-between;gap:12px}.story-map-inspector dt,.story-map-inspector dd{margin:0;font-size:12px}.story-map-inspector dt{color:var(--text-tertiary)}.story-map-inspector dd{color:var(--text-secondary);font-variant-numeric:tabular-nums}.story-map-inspector dd.is-attention{color:var(--status-warning)}.story-map-inspector__relations>span{display:block}.story-map-inspector__relations ul{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}.story-map-inspector__relations li{padding-left:10px;color:var(--text-secondary);border-left:2px solid var(--accent-bg);font-size:12px}.story-map-inspector__readonly{margin:22px 0 0;padding-top:14px;color:var(--text-tertiary);border-top:1px solid var(--border-subtle);font-size:11px}.story-relation-list{margin-top:24px;padding:20px 0 0;border-top:1px solid var(--border-default)}.story-relation-list__empty{margin:18px 0 0;color:var(--text-tertiary);font-size:13px}.story-relation-list ul{display:grid;gap:0;margin:14px 0 0;padding:0;list-style:none}.story-relation-list li{display:flex;align-items:center;gap:12px;min-height:48px;border-top:1px solid var(--border-subtle)}.story-relation-list li button{display:flex;flex:1;align-items:center;gap:14px;min-height:44px;padding:6px 0;color:var(--text-secondary);background:transparent;text-align:left}.story-relation-list li button span{flex:1;font-size:12px}.story-relation-list li button strong{color:var(--accent-text);font-size:12px;font-weight:650}.story-relation-list li small{color:var(--text-tertiary);font-size:10px}.story-relation-list li.is-related{background:var(--accent-soft)}.story-relation-list li.is-related button{padding-left:8px;padding-right:8px}.story-map-proposals{margin-top:28px;padding:22px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.story-map-proposals__intro{max-width:72ch;margin:12px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.7}.story-map-proposals__form{display:grid;grid-template-columns:minmax(210px,1fr) minmax(150px,.6fr) minmax(260px,1.4fr) auto;align-items:end;gap:12px;margin-top:18px}.story-map-proposals__form label{display:grid;gap:6px;min-width:0;color:var(--text-secondary);font-size:12px}.story-map-proposals__form select,.story-map-proposals__form textarea{width:100%;min-height:44px;padding:9px 12px;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:13px}.story-map-proposals__form textarea{min-height:74px;resize:vertical}.story-map-proposals__form select:focus,.story-map-proposals__form textarea:focus{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 38%,transparent);outline-offset:1px}.story-map-proposals__status,.story-map-proposals__error{margin:12px 0 0;font-size:12px;line-height:1.5}.story-map-proposals__status{color:var(--text-tertiary)}.story-map-proposals__error{color:var(--status-error)}.story-map-proposals__apply{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:12px 14px;background:color-mix(in oklch,var(--accent-bg) 8%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--accent-bg) 28%,var(--border-subtle));border-radius:var(--radius-md)}.story-map-proposals__apply>div{display:grid;gap:4px}.story-map-proposals__apply strong{color:var(--text-primary);font-size:13px}.story-map-proposals__apply span:last-child{color:var(--text-tertiary);font-size:11px}.story-map-proposals__list{margin-top:24px;padding-top:18px;border-top:1px solid var(--border-subtle)}.story-map-proposals__list h3{margin:6px 0 0;font-family:var(--font-literary);font-size:18px}.story-map-proposals__list ul{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.story-map-proposals__list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;background:var(--surface-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.story-map-proposals__list li>div:first-child{display:grid;gap:4px;min-width:0}.story-map-proposals__list li strong{overflow:hidden;color:var(--text-primary);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.story-map-proposals__list li span{color:var(--text-tertiary);font-size:11px}.story-map-proposals__approve{display:flex;flex:0 0 auto;gap:8px}.story-map-proposals__approve input{min-height:40px;width:min(260px,28vw);padding:8px 10px;color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:12px}.story-map-proposals__empty{margin:14px 0 0;color:var(--text-tertiary);font-size:12px}.world-candidate-review{margin-top:28px;padding-top:24px;border-top:1px solid var(--border-default)}.world-candidate-review__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.world-candidate-review__header h3{margin:6px 0 8px;font-size:20px;font-weight:700;letter-spacing:-.015em}.world-candidate-review__header>div>p:last-child{max-width:70ch;margin:0;color:var(--text-secondary);font-size:13px;line-height:1.7}.world-candidate-review__state{flex:0 0 auto;padding:6px 9px;color:var(--text-secondary);background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:11px;font-weight:700}.world-candidate-review__state--validated,.world-candidate-review__state--approved{color:var(--accent-text);background:var(--accent-soft);border-color:color-mix(in oklch,var(--accent-bg) 22%,var(--border-subtle))}.world-candidate-review__state--invalid,.world-candidate-review__state--stale{color:var(--status-error)}.world-candidate-review__spine{display:flex;width:max-content;max-width:100%;flex-direction:column;align-items:flex-start;margin-top:22px;padding:14px 16px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.world-candidate-review__version{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;min-width:230px;align-items:center;gap:18px;padding-left:24px;color:var(--text-primary);font-size:13px;font-variant-numeric:tabular-nums;font-weight:700}.world-candidate-review__version:before{position:absolute;left:1px;width:10px;height:10px;background:var(--surface-raised);border:2px solid var(--ink-400);border-radius:50%;content:""}.world-candidate-review__version--candidate:before{background:var(--accent-bg);border-color:var(--accent-bg);box-shadow:0 0 0 4px color-mix(in oklch,var(--accent-bg) 13%,transparent)}.world-candidate-review__version small{color:var(--text-tertiary);font-size:11px;font-weight:500}.world-candidate-review__spine-line{display:grid;width:12px;height:32px;margin-left:0;place-items:end center;color:var(--accent-text);border-left:1px solid color-mix(in oklch,var(--accent-bg) 48%,var(--border-default))}.world-candidate-review__spine-line svg{transform:translate(6px,4px)}.world-candidate-review__alert{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding:12px 14px;color:color-mix(in oklch,var(--status-error) 78%,var(--text-primary));background:color-mix(in oklch,var(--status-error) 6%,var(--surface-raised));border:1px solid color-mix(in oklch,var(--status-error) 22%,var(--border-subtle));border-radius:var(--radius-md);font-size:12px;line-height:1.6}.world-candidate-review__alert svg{flex:0 0 auto;margin-top:1px}.world-candidate-review__alert p{margin:0}.world-candidate-review__alert p+p{margin-top:4px}.world-candidate-review__tabs{display:flex;gap:4px;margin-top:24px;border-bottom:1px solid var(--border-default)}.world-candidate-review__tabs button{position:relative;min-width:86px;min-height:44px;padding:9px 14px;color:var(--text-tertiary);background:transparent;font-size:13px;font-weight:650;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.world-candidate-review__tabs button:after{position:absolute;right:10px;bottom:-1px;left:10px;height:2px;background:transparent;content:""}.world-candidate-review__tabs button:hover,.world-candidate-review__tabs button[aria-selected=true]{color:var(--accent-text);background:color-mix(in oklch,var(--accent-soft) 52%,transparent)}.world-candidate-review__tabs button[aria-selected=true]:after{background:var(--accent-bg)}.world-candidate-review__tabpanel{padding-top:14px}.world-candidate-review__diff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.world-candidate-review__diff-column{min-width:0;padding:13px 14px;background:var(--surface-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.world-candidate-review__diff-heading{display:flex;align-items:center;gap:7px;color:var(--text-secondary)}.world-candidate-review__diff-heading svg{color:var(--accent-text)}.world-candidate-review__diff-heading strong{font-size:12px;font-variant-numeric:tabular-nums}.world-candidate-review__diff-column ul{display:grid;gap:0;margin:10px 0 0;padding:0;list-style:none}.world-candidate-review__diff-column li{display:grid;min-width:0;gap:2px;padding:8px 0;border-top:1px solid var(--border-subtle)}.world-candidate-review__diff-column li span{overflow:hidden;color:var(--text-secondary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.world-candidate-review__diff-column code,.world-candidate-review__issues code{overflow:hidden;color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.world-candidate-review__diff-column>p{margin:10px 0 0;color:var(--text-tertiary);font-size:11px}.world-candidate-review__validation{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(260px,1.2fr);gap:14px 24px;margin-top:18px;padding:16px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.world-candidate-review__validation-title,.world-candidate-review__validation-summary,.world-candidate-review__validation-summary span{display:flex;align-items:center}.world-candidate-review__validation-title{align-items:flex-start;gap:9px;color:var(--accent-text)}.world-candidate-review__validation-title h4{margin:0;color:var(--text-primary);font-size:13px}.world-candidate-review__validation-title p{margin:3px 0 0;color:var(--text-tertiary);font-size:11px}.world-candidate-review__validation-summary{flex-wrap:wrap;justify-content:flex-end;gap:8px 18px;color:var(--text-secondary);font-size:12px}.world-candidate-review__validation-summary span{gap:5px}.world-candidate-review__validation-summary svg{color:var(--accent-text)}.world-candidate-review__issues{display:grid;grid-column:1 / -1;gap:6px;margin:0;padding:0;list-style:none}.world-candidate-review__issues li{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(120px,.5fr);align-items:baseline;gap:8px;color:var(--text-secondary);font-size:12px}.world-candidate-review__issues strong{color:var(--status-warning);font-size:11px}.world-candidate-review__issues .world-candidate-review__issues-more{display:block;grid-column:1 / -1;padding-top:4px;color:var(--text-tertiary);font-size:11px}.world-candidate-review__approval{display:grid;gap:7px;margin-top:18px}.world-candidate-review__approval label{color:var(--text-primary);font-size:13px;font-weight:650}.world-candidate-review__approval>p{margin:0;color:var(--text-tertiary);font-size:11px;line-height:1.5}.world-candidate-review__approval textarea{width:100%;min-height:88px;padding:11px 12px;resize:vertical;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:13px;line-height:1.6}.world-candidate-review__approval textarea:focus-visible{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 38%,transparent);outline-offset:1px}.world-candidate-review__approval-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.world-candidate-review__approval-actions>span{color:var(--text-tertiary);font-size:11px}.routing-page,.history-page{width:min(1120px,100%);margin:0 auto}.routing-page__header,.history-page__header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:26px;border-bottom:1px solid var(--border-default)}.routing-page__header h1,.history-page__header h1{margin:8px 0 10px;font-family:var(--font-literary);font-size:clamp(32px,4vw,48px);font-weight:650;letter-spacing:var(--tracking-tight)}.routing-page__header p:not(.section-kicker),.history-page__header p:not(.section-kicker){max-width:64ch;margin:0;color:var(--text-secondary);font-size:14px;line-height:1.75}.routing-page__stamp{display:grid;flex:0 0 auto;gap:6px;min-width:170px;padding:14px 16px;color:var(--accent-text);background:var(--accent-soft);border:1px solid var(--jade-200);border-radius:var(--radius-lg);font-size:11px}.routing-page__stamp strong{font-size:13px;font-weight:650}.routing-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.routing-section-heading h2{margin:7px 0 0;font-family:var(--font-literary);font-size:22px;font-weight:650}.routing-section-heading>span{color:var(--text-tertiary);font-size:12px;font-variant-numeric:tabular-nums}.model-profile-table{margin-top:30px;padding:22px 0 0;border-top:1px solid var(--border-default)}.routing-degraded-notice{display:flex;align-items:flex-start;gap:8px;margin-top:18px;padding:11px 12px;color:var(--text-secondary);background:color-mix(in oklch,var(--amber-500) 11%,var(--surface-raised));border-left:2px solid var(--amber-500);font-size:12px;line-height:1.55}.routing-degraded-notice svg{flex:0 0 auto;color:var(--amber-500)}.routing-degraded-notice strong{margin-right:6px;color:var(--text-primary);font-weight:650}.model-profile-table__scroll{margin-top:16px;overflow-x:auto;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.model-profile-table table{width:100%;min-width:680px;border-collapse:collapse;text-align:left}.model-profile-table th,.model-profile-table td{padding:14px 12px;border-top:1px solid var(--border-subtle);vertical-align:middle;font-size:12px}.model-profile-table thead th{color:var(--text-tertiary);border-top:0;font-size:11px;font-weight:600;letter-spacing:.04em}.model-profile-table tbody th{width:30%;font-weight:500}.model-profile-table tbody tr:first-child th,.model-profile-table tbody tr:first-child td{border-top:0}.model-profile-table tr.is-disabled{opacity:.58}.model-profile-table__name,.model-profile-table__recommendation,.model-profile-table__status,.model-profile-table__group{display:inline-flex;align-items:center;gap:5px}.model-profile-table__name{color:var(--text-primary);font-family:var(--font-literary);font-size:14px;font-weight:650}.model-profile-table th small{display:block;margin-top:4px;color:var(--text-tertiary);font-size:10px;font-weight:400}.model-profile-table__recommendation{color:var(--accent-text)}.model-profile-table__group{color:var(--text-secondary);font-variant-numeric:tabular-nums}.model-profile-table__status{color:var(--text-tertiary)}.model-profile-table__status--ready{color:var(--accent-text)}.agent-config-page{display:grid;gap:22px}.agent-config-page__error{margin:0;padding:12px 14px;color:var(--status-error);background:color-mix(in oklch,var(--status-error) 7%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--status-error) 22%,var(--border-subtle));border-radius:var(--radius-md);font-size:12px}.agent-config-card,.local-runtime-panel{padding:22px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.agent-config-profiles,.agent-config-routes,.local-runtime-panel__services{display:grid;gap:0;margin-top:16px}.agent-config-profile,.agent-config-route,.local-runtime-service{display:grid;grid-template-columns:minmax(150px,1fr) minmax(190px,1fr) minmax(180px,1fr) auto auto;align-items:center;gap:14px;min-height:58px;padding:10px 0;border-top:1px solid var(--border-subtle)}.agent-config-route{grid-template-columns:minmax(190px,1.2fr) minmax(220px,1fr) minmax(190px,.8fr)}.agent-config-profile:first-child,.agent-config-route:first-child,.local-runtime-service:first-child{border-top:0}.agent-config-profile>div,.agent-config-route>div,.local-runtime-service>div{display:grid;gap:4px}.agent-config-profile strong,.agent-config-route strong,.local-runtime-service strong{color:var(--text-primary);font-size:13px}.agent-config-profile small,.agent-config-route small,.local-runtime-service small{color:var(--text-tertiary);font-size:11px}.agent-config-profile label,.agent-config-route label{display:grid;gap:5px;color:var(--text-tertiary);font-size:10px}.agent-config-profile input,.agent-config-route select{width:100%;min-height:36px;padding:7px 9px;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:12px}.agent-config-profile__credential{display:flex;align-items:center;gap:8px}.agent-config-profile__credential input{min-width:0;flex:1}.agent-config-profile__status,.agent-config-route__state{display:inline-flex;align-items:center;gap:5px;color:var(--text-tertiary);font-size:11px;white-space:nowrap}.agent-config-route__state{color:var(--accent-text)}.agent-config-actions,.local-runtime-panel__actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 2px;color:var(--text-tertiary);font-size:11px}.local-runtime-panel__actions{justify-content:flex-start;margin-top:18px}.local-runtime-panel__badge{padding:6px 9px;border-radius:999px;font-size:11px}.local-runtime-panel__badge--ready{color:var(--accent-text);background:var(--accent-soft)}.local-runtime-panel__badge--failed{color:var(--status-error);background:color-mix(in oklch,var(--status-error) 8%,var(--surface-canvas))}.local-runtime-panel__badge--starting{color:var(--status-warning);background:color-mix(in oklch,var(--status-warning) 8%,var(--surface-canvas))}.local-runtime-panel__badge--stopped{color:var(--text-tertiary);background:var(--surface-sunken)}.local-runtime-service{grid-template-columns:1fr auto;min-height:44px}.local-runtime-service>span{color:var(--text-secondary);font-size:11px}.local-runtime-panel__empty,.local-runtime-panel__error{margin:16px 0 0;color:var(--text-tertiary);font-size:12px;line-height:1.6}.local-runtime-panel__error{color:var(--status-error)}.evolution-center-page{display:grid;gap:22px}.evolution-center-page__error{margin:0;padding:12px 14px;color:var(--status-error);background:color-mix(in oklch,var(--status-error) 7%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--status-error) 22%,var(--border-subtle));border-radius:var(--radius-md);font-size:12px}.evolution-center-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.evolution-center-metric{display:grid;gap:10px;min-height:112px;padding:16px;color:var(--text-tertiary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg)}.evolution-center-metric svg{color:var(--accent-text)}.evolution-center-metric strong{color:var(--text-primary);font-size:26px;font-variant-numeric:tabular-nums}.evolution-center-card{padding:22px;color:var(--text-secondary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.evolution-center-card p{max-width:720px;margin:12px 0 0;line-height:1.7}.evolution-center-card__status{color:var(--status-warning);font-size:11px}.learning-library-page{display:grid;gap:22px}.learning-library-page__error,.learning-library-page__message{margin:0;padding:12px 14px;border-radius:var(--radius-md);font-size:12px;line-height:1.6}.learning-library-page__error{color:var(--status-error);background:color-mix(in oklch,var(--status-error) 7%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--status-error) 22%,var(--border-subtle))}.learning-library-page__message{color:var(--status-success);background:color-mix(in oklch,var(--status-success) 7%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--status-success) 22%,var(--border-subtle))}.learning-library-card{padding:22px;color:var(--text-secondary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.learning-library-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.learning-library-form label{display:grid;gap:7px;color:var(--text-tertiary);font-size:12px}.learning-library-form input:not([type=file]),.learning-library-form select,.learning-library-form textarea{width:100%;padding:10px 11px;color:var(--text-primary);background:var(--surface-sunken);border:1px solid var(--border-default);border-radius:var(--radius-md);font:inherit}.learning-library-form textarea{min-height:150px;resize:vertical;line-height:1.6}.learning-library-form__full{grid-column:1 / -1}.learning-library-form__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;grid-column:1 / -1}.learning-library-file{position:relative;overflow:hidden}.learning-library-file input[type=file]{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.learning-library-card__note{display:flex;align-items:flex-start;gap:7px;margin:16px 0 0;color:var(--text-tertiary);font-size:11px;line-height:1.65}.learning-library-card__note svg{flex:0 0 auto;margin-top:2px;color:var(--accent-text)}.learning-library-patterns{display:grid;gap:12px;margin-top:16px}.learning-library-pattern{display:grid;gap:12px;padding:16px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.learning-library-pattern__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.learning-library-pattern h3{margin:5px 0 0;color:var(--text-primary);font-size:16px}.learning-library-pattern p{margin:0;line-height:1.65}.learning-library-pattern__status{padding:4px 8px;color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:99px;font-size:11px;white-space:nowrap}.learning-library-pattern__status--active{color:var(--status-success);border-color:color-mix(in oklch,var(--status-success) 30%,var(--border-default))}.learning-library-pattern__status--pending_review{color:var(--status-warning);border-color:color-mix(in oklch,var(--status-warning) 30%,var(--border-default))}.learning-library-pattern__chips{display:flex;flex-wrap:wrap;gap:6px}.learning-library-pattern__chips span{padding:4px 7px;color:var(--text-tertiary);background:var(--surface-raised);border-radius:5px;font-size:10px;font-variant-numeric:tabular-nums}.learning-library-pattern__safe{display:inline-flex;align-items:center;gap:6px;color:var(--text-tertiary);font-size:11px}.source-discovery-page{display:grid;gap:22px}.source-discovery-page__error,.source-discovery-page__message{margin:0;padding:12px 14px;border-radius:var(--radius-md);font-size:12px;line-height:1.6}.source-discovery-page__error{color:var(--status-error);background:color-mix(in oklch,var(--status-error) 7%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--status-error) 22%,var(--border-subtle))}.source-discovery-page__message{color:var(--status-success);background:color-mix(in oklch,var(--status-success) 7%,var(--surface-canvas));border:1px solid color-mix(in oklch,var(--status-success) 22%,var(--border-subtle))}.source-discovery-notice{display:flex;align-items:flex-start;gap:9px;padding:13px 15px;color:var(--text-secondary);background:color-mix(in oklch,var(--accent-soft) 48%,var(--surface-raised));border:1px solid color-mix(in oklch,var(--accent-bg) 22%,var(--border-default));border-radius:var(--radius-lg);font-size:11px;line-height:1.6}.source-discovery-notice svg{flex:0 0 auto;margin-top:1px;color:var(--accent-text)}.source-discovery-card{padding:22px;color:var(--text-secondary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.source-discovery-list{display:grid;gap:12px;margin-top:16px}.source-discovery-candidate{display:grid;gap:11px;padding:17px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-left:3px solid var(--accent-bg);border-radius:var(--radius-lg)}.source-discovery-candidate--summary_only{border-left-color:var(--status-warning)}.source-discovery-candidate--prohibited{border-left-color:var(--status-error)}.source-discovery-candidate__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.source-discovery-candidate__head .section-kicker{display:inline-flex;align-items:center;gap:5px}.source-discovery-candidate h3{margin:5px 0 0;color:var(--text-primary);font-size:16px}.source-discovery-candidate__author{margin:5px 0 0;color:var(--text-tertiary);font-size:11px}.source-discovery-candidate__status{padding:4px 8px;color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:99px;font-size:11px;white-space:nowrap}.source-discovery-candidate__url{display:inline-flex;align-items:center;gap:5px;overflow:hidden;color:var(--accent-text);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.source-discovery-candidate__evidence{display:flex;flex-wrap:wrap;gap:7px}.source-discovery-candidate__evidence span,.source-discovery-candidate__evidence strong{padding:4px 7px;color:var(--text-tertiary);background:var(--surface-raised);border-radius:5px;font-size:10px;font-weight:500}.source-discovery-candidate__evidence strong{color:var(--accent-text)}.source-discovery-candidate--summary_only .source-discovery-candidate__evidence strong{color:var(--status-warning)}.source-discovery-candidate--prohibited .source-discovery-candidate__evidence strong{color:var(--status-error)}.source-discovery-candidate__summary{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.65}.source-discovery-candidate__recommendation{display:flex;gap:7px;margin:0;color:var(--text-tertiary);font-size:11px;line-height:1.6}.source-discovery-candidate__recommendation span{color:var(--text-secondary);font-weight:650}.source-discovery-candidate__warning{display:flex;align-items:flex-start;gap:6px;margin:0;color:var(--status-error);font-size:11px;line-height:1.5}.source-discovery-candidate__warning svg{flex:0 0 auto;margin-top:1px}.source-discovery-candidate__actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}.source-discovery-candidate__actions .button{min-height:34px;gap:5px;font-size:11px}.source-discovery-candidate__constraint{color:var(--text-tertiary);font-size:10px;line-height:1.5}@media(max-width:900px){.agent-config-profile,.agent-config-route{grid-template-columns:1fr 1fr}.agent-config-profile>div,.agent-config-route>div{grid-column:1 / -1}.agent-config-actions{align-items:flex-start;flex-direction:column}.evolution-center-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-library-form{grid-template-columns:1fr}.learning-library-form__full{grid-column:auto}.learning-library-form__actions{align-items:stretch;flex-direction:column}}.muted-text{color:var(--text-tertiary)}.routing-footnote,.routing-lookup__hint,.routing-drawer__fallback,.history-page__footnote{color:var(--text-tertiary);font-size:11px;line-height:1.6}.routing-footnote{margin:12px 0 0}.routing-empty{display:flex;align-items:flex-start;gap:10px;margin-top:30px;padding:22px 0;color:var(--text-tertiary);border-top:1px solid var(--border-default);font-size:13px}.routing-empty p{margin:0}.routing-lookup{margin-top:36px;padding-top:24px;border-top:1px solid var(--border-default)}.routing-lookup__form{margin-top:18px}.routing-lookup__form label{display:block;margin-bottom:7px;color:var(--text-secondary);font-size:12px}.routing-lookup__form>div{display:flex;gap:10px;max-width:680px}.routing-lookup__form input{flex:1;min-height:44px;padding:9px 12px;color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:13px}.routing-lookup__form input::placeholder{color:var(--text-tertiary)}.routing-lookup__form input:focus{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 38%,transparent);outline-offset:1px}.routing-lookup__hint{margin:12px 0 0}.routing-lookup__error{margin:12px 0 0;color:var(--status-error);font-size:12px}.routing-lookup__success{margin:12px 0 0;color:var(--accent-text);font-size:12px}.routing-drawer-backdrop{position:fixed;z-index:20;inset:0;display:flex;justify-content:flex-end;background:#1118152e}.routing-drawer{width:min(420px,100%);height:100%;overflow:auto;padding:28px;background:var(--surface-overlay);box-shadow:var(--shadow-overlay)}.routing-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.routing-drawer__header h2{margin:7px 0 0;font-family:var(--font-literary);font-size:26px;font-weight:650}.icon-button{display:grid;width:38px;height:38px;place-items:center;color:var(--text-secondary);background:transparent;border-radius:var(--radius-sm)}.icon-button:hover{color:var(--accent-text);background:var(--accent-soft)}.routing-drawer__warning{margin-top:24px;padding:10px 12px;color:var(--text-primary);background:color-mix(in oklch,var(--amber-500) 12%,var(--surface-raised));border-left:2px solid var(--amber-500);font-size:12px;line-height:1.5}.routing-drawer__facts{display:grid;gap:0;margin:24px 0 0;border-top:1px solid var(--border-subtle)}.routing-drawer__facts div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--border-subtle)}.routing-drawer__facts dt{color:var(--text-tertiary);font-size:11px}.routing-drawer__facts dd{overflow-wrap:anywhere;margin:0;color:var(--text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.routing-drawer__reason{margin:18px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.65}.routing-drawer__fallback{margin-top:22px;padding-top:14px;border-top:1px solid var(--border-subtle)}.history-page__source{flex:0 0 auto;color:var(--accent-text);font-size:12px}.history-page__summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}.history-page__summary>div{display:grid;grid-template-columns:auto 1fr;gap:6px 9px;padding:16px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg)}.history-page__summary svg{grid-row:span 2;color:var(--accent-text)}.history-page__summary span{color:var(--text-tertiary);font-size:11px}.history-events__filters{margin-top:22px;padding:20px 22px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.history-events__filters-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.history-events__filters-heading h2{margin:3px 0 0;font-family:var(--font-display);font-size:20px;letter-spacing:-.02em}.history-events__filters-heading>span{color:var(--text-tertiary);font-size:12px}.history-events__filter-form{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(240px,1.2fr) auto;align-items:end;gap:12px;margin-top:16px}.history-events__filter-form label{display:grid;gap:6px;min-width:0;color:var(--text-secondary);font-size:12px}.history-events__filter-form select,.history-events__filter-form input{width:100%;min-height:44px;padding:9px 12px;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:13px}.history-events__filter-form select:focus,.history-events__filter-form input:focus{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 38%,transparent);outline-offset:1px}.history-events__filter-form input::placeholder{color:var(--text-tertiary)}.history-events__filter-actions{display:flex;flex-wrap:wrap;gap:8px}.history-events__status,.history-events__error{margin:12px 0 0;font-size:12px;line-height:1.5}.history-events__status{color:var(--text-tertiary)}.history-events__error{color:var(--status-error)}.history-events{margin-top:22px;padding:22px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.history-events__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.history-events__heading h2{margin:3px 0 0;font-family:var(--font-display);font-size:24px;letter-spacing:-.02em}.history-events__heading>span{color:var(--text-tertiary);font-size:12px}.history-events__list{display:grid;gap:0;margin:20px 0 0;padding:0;list-style:none}.history-event{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;border-top:1px solid var(--border-subtle)}.history-event__marker{display:grid;width:28px;height:28px;place-items:center;color:var(--accent-text);background:var(--accent-soft);border-radius:50%}.history-event__body{display:grid;gap:3px}.history-event__body strong{font-size:13px}.history-event__body span,.history-event time{color:var(--text-tertiary);font-size:12px}.history-events__note{margin:18px 0 0;color:var(--text-tertiary);font-size:12px}.history-events__load-more{display:block;margin:16px auto 0}.history-page__summary strong{color:var(--text-primary);font-family:var(--font-literary);font-size:15px;font-weight:650}.history-page__empty{max-width:680px;margin:52px auto 0;padding:30px 0;border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default)}.history-page__empty-icon{display:grid;width:36px;height:36px;place-items:center;color:var(--accent-text);background:var(--accent-soft);border-radius:var(--radius-sm)}.history-page__empty h2{margin:10px 0;font-family:var(--font-literary);font-size:26px;font-weight:650}.history-page__empty p:not(.section-kicker){max-width:54ch;margin:0;color:var(--text-secondary);font-size:14px;line-height:1.75}.history-page__footnote{margin:22px auto 0;max-width:680px}@media(max-width:1180px){.story-map-workspace__grid{grid-template-columns:minmax(0,1fr) 260px}.story-map-inspector{padding:16px}.story-map-proposals__form{grid-template-columns:minmax(180px,1fr) minmax(140px,.7fr)}.story-map-proposals__form label:nth-child(3){grid-column:1 / -1}.story-map-proposals__form .button{justify-self:start}.world-candidate-review__validation{grid-template-columns:1fr}.world-candidate-review__validation-summary{justify-content:flex-start}}@media(max-width:1180px){.app-shell{grid-template-columns:168px minmax(0,1fr)}.app-shell__main{padding:32px 28px 48px}.editorial-grid{gap:24px}.home-pulse{padding-left:18px}}@media(max-width:760px){.routing-page__header,.history-page__header{align-items:flex-start;flex-direction:column}.routing-page__stamp{width:100%}.history-page__summary,.story-map-proposals__form{grid-template-columns:1fr}.story-map-proposals__form label:nth-child(3){grid-column:auto}.story-map-proposals__form .button{width:100%}.story-map-proposals__list li{align-items:stretch;flex-direction:column}.story-map-proposals__approve,.story-map-proposals__approve input{width:100%}.world-candidate-review__header,.world-candidate-review__approval-actions{align-items:stretch;flex-direction:column}.world-candidate-review__state{align-self:flex-start}.world-candidate-review__diff-grid{grid-template-columns:1fr}.world-candidate-review__issues li{grid-template-columns:auto minmax(0,1fr)}.world-candidate-review__issues code{grid-column:2}.world-candidate-review__approval textarea{font-size:16px}.world-candidate-review__approval-actions .button{width:100%}.history-events__filter-form{grid-template-columns:1fr}.history-events__filter-actions{width:100%}.history-events__filter-actions .button{flex:1 1 0}.routing-lookup__form>div{flex-direction:column}}.results-panel{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border-default);min-width:0}.results-panel__header,.result-reader__header,.result-reader__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.results-panel__header h2{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-lg)}.results-panel__header p,.result-reader__header p{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--text-secondary)}.results-panel .text-button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.results-panel__notice,.results-panel__empty{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);margin:var(--space-4) 0}.results-panel__error{font-size:var(--text-sm);color:var(--status-error)}.results-panel__message{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--accent-text);overflow-wrap:anywhere}.results-panel__chapters{margin:var(--space-4) 0 0;padding:0;list-style:none;max-height:240px;overflow:auto}.results-panel__chapters li{border-bottom:1px solid var(--border-subtle)}.results-panel__chapters button{display:flex;align-items:center;width:100%;gap:var(--space-3);min-height:48px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;cursor:pointer;color:var(--text-primary);text-align:left;font:inherit;font-size:var(--text-sm);transition:background-color var(--duration-fast)}.results-panel__chapters button:hover{background:var(--surface-sunken)}.results-panel__chapters button.is-selected{background:var(--accent-soft);color:var(--accent-text)}.results-panel__chapter-number{font-weight:600}.results-panel__chapter-status,.results-panel__chapter-quality{font-size:var(--text-xs);color:var(--text-secondary)}.results-panel__chapter-quality{margin-left:auto;font-variant-numeric:tabular-nums}.results-panel button:disabled{opacity:.5;cursor:not-allowed}.result-reader{margin-top:var(--space-6);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);overflow:hidden}.result-reader__header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle)}.result-reader__header h3{font-size:var(--text-lg);margin:0}.result-reader__body{max-height:420px;overflow:auto;padding:var(--space-6);color:var(--text-literary);font-family:var(--font-literary);font-size:var(--text-base);line-height:var(--leading-reading);white-space:pre-wrap;overflow-wrap:anywhere}.result-reader__evidence{border-top:1px solid var(--border-subtle);padding:var(--space-2) var(--space-6);font-size:var(--text-xs);color:var(--text-secondary)}.result-reader__evidence summary{cursor:pointer;min-height:44px;align-content:center;color:var(--text-primary)}.result-reader__evidence ul{padding:0;margin:var(--space-2) 0 var(--space-4);list-style:none}.result-reader__evidence li{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0}.result-reader__evidence strong{font-weight:500;color:var(--accent-text)}.result-reader__evidence dl{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--space-2) var(--space-3)}.result-reader__evidence dd{margin:0}.result-reader__hash{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.result-reader__footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle)}.result-reader__footer>span{font-size:var(--text-xs);color:var(--text-secondary)}.result-reader__footer .button{min-height:44px;flex:0 0 auto}@media(max-width:760px){.result-reader__footer{align-items:flex-start;flex-direction:column}.result-reader__body{padding:var(--space-4)}}.result-reader__route-caption{margin-top:var(--space-6);color:var(--text-primary);font-weight:500}.result-reader__routes li>div{min-width:0;text-align:right;overflow-wrap:anywhere}.result-reader__routes li>div>span{display:block;margin-top:var(--space-1)}.result-reader__evidence .button{min-height:44px;margin:var(--space-2) 0 var(--space-3)}.batch-results{margin-top:var(--space-6);border-top:1px solid var(--border-subtle);font-size:var(--text-sm);min-width:0}.batch-results summary{min-height:48px;align-content:center;cursor:pointer;color:var(--text-primary);font-weight:500}.batch-results summary>span{margin-left:var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);font-weight:400}.batch-results__content{padding:var(--space-3) 0 var(--space-4)}.batch-results__selection label{display:block;font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--space-1)}.batch-results__selection>div{display:flex;gap:var(--space-2);align-items:center}.batch-results select{min-width:0;flex:1;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-primary);font:inherit;font-variant-numeric:tabular-nums}.batch-results .text-button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.batch-results__note{margin:var(--space-3) 0 var(--space-4);font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--leading-normal)}.batch-results__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-2)}.batch-results .button{min-height:44px}.batch-results button:disabled{opacity:.5;cursor:not-allowed}.results-panel__chapter-number,.result-reader__evidence dd{font-variant-numeric:tabular-nums}@media(max-width:760px){.batch-results summary>span{display:block;margin:var(--space-1) 0 var(--space-2)}}button,a,input,select,textarea{font:inherit}.bootstrap-notice{display:grid;min-height:100vh;place-content:center;gap:12px;padding:32px;background:var(--surface-canvas)}.bootstrap-notice h1,.bootstrap-notice p{margin:0}.bootstrap-notice h1{max-width:22ch;font-family:var(--font-literary);font-size:clamp(30px,4vw,52px);line-height:1.15;letter-spacing:-.025em}.bootstrap-notice p:last-child{color:var(--text-secondary);font-size:16px}.bootstrap-kicker{color:var(--accent-text);font-size:13px;font-weight:700;letter-spacing:.14em}.connection-setup{display:grid;min-height:100vh;place-items:center;padding:32px;background:var(--surface-canvas)}.connection-setup--loading{color:var(--text-secondary);font-size:13px}.connection-setup-overlay{position:fixed;z-index:20;inset:0;overflow:auto;background:color-mix(in oklch,var(--surface-canvas) 86%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.connection-setup-overlay .connection-setup{min-height:100%;background:transparent}.connection-setup__card{width:min(560px,100%);padding:42px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-raised)}.connection-setup__mark{display:grid;width:42px;height:42px;margin-bottom:24px;place-items:center;color:var(--accent-text);background:var(--accent-soft);border-radius:var(--radius-md)}.connection-setup h1{margin:8px 0 12px;font-family:var(--font-literary);font-size:clamp(30px,5vw,46px);letter-spacing:var(--tracking-tight)}.connection-setup__lede{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.75}.connection-setup__form{display:grid;gap:18px;margin-top:30px}.connection-setup__field{display:grid;gap:7px;color:var(--text-secondary);font-size:12px;font-weight:650}.connection-setup__field input{width:100%;min-height:44px;padding:10px 12px;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md);outline:none}.connection-setup__field input:focus{border-color:var(--accent-bg);box-shadow:0 0 0 3px var(--accent-soft)}.connection-setup__field small{color:var(--text-tertiary);font-size:11px;font-weight:400;line-height:1.5}.connection-setup__secret-input{display:flex;align-items:center;gap:8px;padding-left:12px;background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md)}.connection-setup__secret-input:focus-within{border-color:var(--accent-bg);box-shadow:0 0 0 3px var(--accent-soft)}.connection-setup__secret-input input{min-height:42px;padding-left:0;border:0;box-shadow:none}.connection-setup__safe-note{display:inline-flex;align-items:center;gap:5px}.connection-setup__error{display:flex;align-items:flex-start;gap:7px;margin:0;padding:10px 12px;color:var(--status-error);background:color-mix(in oklch,var(--status-error) 7%,transparent);border-left:2px solid var(--status-error);font-size:12px;line-height:1.5}.connection-setup__success{display:flex;align-items:flex-start;gap:7px;margin:0;padding:10px 12px;color:var(--accent-text);background:var(--accent-soft);border-left:2px solid var(--accent-bg);font-size:12px;line-height:1.5}.connection-setup__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.wizard-page{width:min(1360px,100%);margin:0 auto}.wizard-page__header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:28px;border-bottom:1px solid var(--border-default)}.wizard-page__header h1{margin:8px 0 10px;font-family:var(--font-literary);font-size:clamp(32px,4vw,48px);font-weight:650;letter-spacing:var(--tracking-tight)}.wizard-page__header p:not(.section-kicker){max-width:62ch;margin:0;color:var(--text-secondary);font-size:14px;line-height:var(--leading-reading)}.wizard-page__status{display:flex;align-items:center;gap:18px;color:var(--text-tertiary);font-size:12px;white-space:nowrap}.wizard-page__status .is-saving{color:var(--accent-text)}.wizard-layout{display:grid;grid-template-columns:188px minmax(0,1fr) 240px;gap:28px;padding-top:30px}.wizard-spine{display:flex;min-width:0;flex-direction:column;gap:5px}.wizard-spine__step{display:flex;min-height:48px;align-items:center;gap:10px;padding:8px 10px;color:var(--text-tertiary);background:transparent;border-radius:var(--radius-md);text-align:left}.wizard-spine__step:hover:not(:disabled),.wizard-spine__step.is-active{color:var(--accent-text);background:var(--accent-soft)}.wizard-spine__step>span{display:grid;width:26px;height:26px;place-items:center;color:inherit;border:1px solid currentColor;border-radius:50%;font-size:10px}.wizard-spine__step strong{font-size:13px;font-weight:650}.wizard-spine__step.is-complete>span{background:var(--accent-soft)}.wizard-spine__note{display:flex;gap:8px;margin-top:auto;padding:18px 10px 0;color:var(--text-tertiary);border-top:1px solid var(--border-subtle);font-size:11px;line-height:1.6}.wizard-main{min-width:0;padding:2px 0 0}.wizard-main__eyebrow{color:var(--accent-text);font-size:12px;font-weight:700;letter-spacing:.08em}.wizard-main h2{max-width:26ch;margin:10px 0 24px;font-family:var(--font-literary);font-size:clamp(24px,3vw,34px);font-weight:650;letter-spacing:-.02em;line-height:1.25}.wizard-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.wizard-form-stack{display:grid;gap:18px}.wizard-field,.wizard-list-editor{display:grid;gap:8px;min-width:0}.wizard-field>span,.wizard-field__label{color:var(--text-secondary);font-size:12px;font-weight:650}.wizard-field em{margin-left:6px;color:var(--accent-text);font-size:10px;font-style:normal;font-weight:500}.wizard-field input,.wizard-field textarea,.wizard-field select,.wizard-list-editor__add input{width:100%;min-height:44px;padding:10px 12px;color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md)}.wizard-field textarea{min-height:92px;resize:vertical;line-height:var(--leading-reading)}.wizard-field input:focus,.wizard-field textarea:focus,.wizard-field select:focus,.wizard-list-editor__add input:focus{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 30%,transparent)}.wizard-character-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.wizard-list-editor__items{display:flex;min-height:22px;flex-wrap:wrap;gap:7px}.wizard-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;color:var(--accent-text);background:var(--accent-soft);border-radius:999px;font-size:12px;line-height:1.35}.wizard-chip button{display:grid;width:20px;height:20px;place-items:center;padding:0;color:inherit;background:transparent;border-radius:50%}.wizard-chip button:hover{background:color-mix(in oklch,var(--accent-bg) 12%,transparent)}.wizard-list-editor__add{display:flex;gap:8px}.wizard-list-editor__add .button{flex:0 0 auto}.wizard-policy-card{display:grid;align-content:center;gap:6px;min-height:92px;padding:14px 16px;background:var(--accent-soft);border-left:3px solid var(--accent-bg);border-radius:var(--radius-md)}.wizard-policy-card strong{color:var(--accent-text);font-size:13px}.wizard-policy-card span{color:var(--text-secondary);font-size:12px;line-height:1.55}.wizard-summary{display:grid;gap:0;border-top:1px solid var(--border-default)}.wizard-summary>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--border-subtle)}.wizard-summary span{color:var(--text-tertiary);font-size:12px}.wizard-summary strong{color:var(--text-primary);font-size:14px;font-weight:600}.wizard-summary p{margin:20px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.7}.wizard-errors{margin:-8px 0 18px;padding:10px 12px;color:var(--status-error);background:color-mix(in oklch,var(--status-error) 7%,transparent);border-left:2px solid var(--status-error);font-size:12px}.wizard-errors p{margin:2px 0}.wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:32px;padding-top:20px;border-top:1px solid var(--border-default)}.wizard-actions .button{min-height:44px}.initial-world-review{display:grid;gap:18px;padding:20px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised)}.initial-world-review__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.initial-world-review__header h2{margin:5px 0 7px;font-family:var(--font-literary);font-size:22px;line-height:1.3;letter-spacing:var(--tracking-tight)}.initial-world-review__header p:not(.section-kicker){max-width:610px;margin:0;color:var(--text-secondary);font-size:13px;line-height:1.65}.initial-world-review__badge{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:7px 10px;color:var(--accent-text);background:var(--accent-soft);border-radius:999px;font-size:12px}.initial-world-review__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle)}.initial-world-review__summary span{display:grid;gap:5px;padding:12px;background:var(--surface-canvas);color:var(--text-tertiary);font-size:11px}.initial-world-review__summary strong{color:var(--text-primary);font-size:14px;font-weight:650}.initial-world-review__notice,.initial-world-review__error{display:flex;align-items:center;gap:8px;margin:0;color:var(--status-error);font-size:12px;line-height:1.5}.initial-world-review__notice .text-button{margin-left:auto}.initial-world-review__loading{display:flex;align-items:center;gap:8px;min-height:88px;color:var(--text-secondary);font-size:13px}.initial-world-review__issues{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--status-warning);font-size:12px}.initial-world-review__issues span{display:inline-flex;align-items:center;gap:5px}.initial-world-review__tabs{border-bottom:1px solid var(--border-default)}.initial-world-review__tabs [role=tablist]{display:flex;gap:18px}.initial-world-review__tabs button{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 2px;color:var(--text-tertiary);background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;font-size:13px;cursor:pointer}.initial-world-review__tabs button:hover,.initial-world-review__tabs button.is-active{color:var(--accent-text)}.initial-world-review__tabs button.is-active{border-bottom-color:var(--accent-bg)}.initial-world-review__tabs button span{min-width:20px;padding:2px 5px;color:inherit;background:var(--surface-sunken);border-radius:999px;font-size:11px;text-align:center}.initial-world-review__content{display:grid;gap:8px;min-height:92px;max-height:280px;overflow:auto;padding-right:4px}.initial-world-review__content article{padding:11px 12px;background:var(--surface-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.initial-world-review__content article>span{color:var(--accent-text);font-size:11px}.initial-world-review__content h3{margin:3px 0 5px;color:var(--text-primary);font-size:13px;font-weight:650}.initial-world-review__content p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.6;overflow-wrap:anywhere}.initial-world-review__muted{margin:0;color:var(--text-tertiary);font-size:12px}.initial-world-review__actions{display:grid;gap:9px;padding-top:15px;border-top:1px solid var(--border-subtle)}.initial-world-review__actions label{display:flex;gap:6px;color:var(--text-primary);font-size:13px;font-weight:650}.initial-world-review__actions label span{color:var(--text-tertiary);font-size:11px;font-weight:400}.initial-world-review__actions textarea{min-height:70px;resize:vertical;padding:10px 12px;color:var(--text-primary);background:var(--surface-canvas);border:1px solid var(--border-default);border-radius:var(--radius-sm);font:inherit;font-size:13px;line-height:1.6}.initial-world-review__actions textarea:focus{border-color:var(--accent-bg);outline:3px solid color-mix(in oklch,var(--focus-ring) 30%,transparent)}.initial-world-review__actions>div{display:flex;flex-wrap:wrap;gap:9px}.initial-world-review__actions .button{min-height:42px}.wizard-advice{align-self:start;padding:18px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised)}.wizard-advice h3{margin:10px 0;font-family:var(--font-literary);font-size:20px;line-height:1.35}.wizard-advice>p:not(.section-kicker){margin:0 0 20px;color:var(--text-secondary);font-size:12px;line-height:1.7}.wizard-advice__rule{display:grid;gap:4px;padding:12px 0;border-top:1px solid var(--border-subtle)}.wizard-advice__rule span{color:var(--text-tertiary);font-size:11px}.wizard-advice__rule strong{color:var(--text-primary);font-size:12px;font-weight:650}@media(max-width:1120px){.wizard-layout{grid-template-columns:156px minmax(0,1fr)}.wizard-advice{grid-column:2}}@media(max-width:760px){.wizard-page__header{align-items:flex-start;flex-direction:column}.wizard-page__status{width:100%;justify-content:space-between}.wizard-layout{grid-template-columns:1fr}.wizard-advice{grid-column:auto}.wizard-spine{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.wizard-spine>.section-kicker,.wizard-spine__note{grid-column:1 / -1}.wizard-spine__step{min-height:44px;justify-content:center;padding:6px}.wizard-spine__step strong{display:none}.wizard-form-grid,.wizard-character-grid{grid-template-columns:1fr}.wizard-summary>div{grid-template-columns:90px minmax(0,1fr)}.initial-world-review__header{flex-direction:column}.initial-world-review__summary{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.bookshelf-page{display:grid;gap:22px}.bookshelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.bookshelf-card{display:flex;align-items:center;gap:14px;min-height:94px;padding:18px;text-align:left;color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.bookshelf-card:hover,.bookshelf-card.is-selected{border-color:var(--accent-text);box-shadow:var(--shadow-sm)}.bookshelf-card__mark{display:grid;width:42px;height:42px;place-items:center;color:var(--accent-text);background:var(--accent-bg);border-radius:var(--radius-sm)}.bookshelf-card span:last-child{display:grid;gap:5px}.bookshelf-card strong{font-family:var(--font-literary);font-size:17px}.bookshelf-card small,.bookshelf-chapters small{color:var(--text-tertiary)}.bookshelf-empty{display:grid;justify-items:center;gap:8px;padding:48px;color:var(--text-tertiary);background:var(--surface-raised);border:1px dashed var(--border-subtle);border-radius:var(--radius-md)}.bookshelf-reader{display:grid;grid-template-columns:minmax(240px,.35fr) minmax(0,1fr);gap:18px;align-items:start}.bookshelf-reader__index,.bookshelf-reader__content{min-width:0;padding:20px;background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.bookshelf-reader__content{min-height:480px}.bookshelf-reader__placeholder{display:grid;min-height:420px;place-content:center;justify-items:center;gap:12px;color:var(--text-tertiary)}.bookshelf-chapters{display:grid;gap:6px;margin:18px 0 0;padding:0;list-style:none}.bookshelf-chapters button{display:flex;width:100%;justify-content:space-between;gap:10px;padding:12px;color:var(--text-primary);text-align:left;background:transparent;border-radius:var(--radius-sm)}.bookshelf-chapters button:hover,.bookshelf-chapters button[aria-pressed=true]{color:var(--accent-text);background:var(--accent-bg)}.bookshelf-reader .result-reader{padding:0;border:0;box-shadow:none}.bookshelf-reader .result-reader__body{max-width:760px;margin:0 auto}.evolution-pipeline{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:8px;margin:22px 0;padding:0;list-style:none}.evolution-pipeline li{display:grid;gap:6px;min-height:116px;padding:12px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.evolution-pipeline li strong{display:grid;width:24px;height:24px;place-items:center;color:var(--text-tertiary);background:var(--surface-raised);border-radius:50%}.evolution-pipeline li span{font-weight:700}.evolution-pipeline li small{color:var(--text-tertiary);line-height:1.4}.evolution-pipeline li.is-done{border-color:var(--accent-text)}.evolution-pipeline li.is-done strong{color:var(--surface-raised);background:var(--accent-text)}.evolution-pipeline li.is-current{background:var(--accent-bg);border-color:var(--accent-text)}@media(max-width:1200px){.evolution-pipeline{grid-template-columns:repeat(4,minmax(120px,1fr))}}
