:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3efe4;--panel:#fffbf5eb;--panel-strong:#fffaf2;--ink:#1f2430;--muted:#6d756f;--accent:#bf5a36;--accent-dark:#8a3d20;--line:#1f24301f;--live:#1f2430;--dead:#fdf8ef;--cell-dead:#fdf8ef;--cell-dead-alt:#e0c68f;--cell-line-soft:#1f24301a;--cell-line-strong:#1f243033;--cell-line-aperiodic:#1f24303d;--tone-cream:#f8f1e5;--tone-linen:#ead6b6;--tone-sand:#efe4d0;--tone-flax:#e1cdac;--tone-tan:#e5c089;--tone-stone:#d5bb8f;--tone-rose:#dbc1b2;--tone-clay:#c88d4b;--tone-shadow:#b89a6e;--shadow:0 18px 40px #2f27191f;--page-bg:radial-gradient(circle at top left, #bf5a362e, transparent 28%), radial-gradient(circle at bottom right, #1f24301a, transparent 25%), linear-gradient(135deg, #efe7d6 0%, #f8f3ea 48%, #ece4d3 100%);--status-tile-bg:#ffffff6b;--status-tile-line:#1f243014;--btn-disabled-bg:#1f243014;--btn-disabled-text:#69707b;--btn-disabled-line:#1f24301f;--btn-primary-bg:#bf5a36;--btn-primary-hover:#a44928;--btn-primary-text:#fff8f3;--btn-primary-line:#8a3d2042;--btn-soft-bg:#1f24300f;--btn-soft-hover:#1f24301f;--btn-soft-text:var(--ink);--btn-soft-line:#1f24301f;--btn-secondary-bg:#22324a;--btn-secondary-hover:#162235;--btn-secondary-text:#f6f9ff;--btn-secondary-line:#1f243042;--btn-secondary-disabled-bg:#1f243014;--btn-secondary-disabled-text:#6e7784;--btn-secondary-disabled-line:#1f24301f;--btn-synced-bg:#1f243014;--btn-synced-text:var(--ink);--btn-synced-line:#1f243029;--help-bg:#1f243008;--panel-strong-hover:#fffdf8;--field-bg:var(--panel-strong);--field-text:var(--ink);--field-border:var(--line);--palette-button-bg:var(--panel-strong);--palette-button-hover:var(--panel-strong-hover);--swatch-border:#0000001a;--grid-panel-bg:#fffcf8f5;--radius:20px;--mono:"IBM Plex Mono", "Consolas", monospace;--sans:"Segoe UI", "Helvetica Neue", sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#10151d;--panel:#111720eb;--panel-strong:#161d29;--ink:#e7edf8;--muted:#a1aec5;--accent:#d67a4c;--accent-dark:#f1a275;--line:#e7edf81f;--live:#f2f5ff;--dead:#f8f1e5;--cell-dead:#f8f1e5;--cell-dead-alt:#d5bb8f;--cell-line-soft:#e7edf812;--cell-line-strong:#e7edf824;--cell-line-aperiodic:#070b116b;--tone-cream:#f8f1e5;--tone-linen:#ead6b6;--tone-sand:#efe4d0;--tone-flax:#e1cdac;--tone-tan:#e5c089;--tone-stone:#d5bb8f;--tone-rose:#dbc1b2;--tone-clay:#c88d4b;--tone-shadow:#b89a6e;--shadow:0 22px 42px #00000061;--page-bg:radial-gradient(circle at top left, #d67a4c2e, transparent 26%), radial-gradient(circle at bottom right, #7a99ff1f, transparent 24%), linear-gradient(135deg, #0f141d 0%, #151c28 45%, #10161f 100%);--status-tile-bg:#ffffff08;--status-tile-line:#e7edf814;--btn-disabled-bg:#e7edf80f;--btn-disabled-text:#b7c3d7;--btn-disabled-line:#e7edf81a;--btn-primary-bg:#d67a4c;--btn-primary-hover:#e89468;--btn-primary-text:#fff9f5;--btn-primary-line:#f1a27547;--btn-soft-bg:#e7edf812;--btn-soft-hover:#e7edf824;--btn-soft-text:#e7edf8;--btn-soft-line:#e7edf81f;--btn-secondary-bg:#4e6788;--btn-secondary-hover:#6280a7;--btn-secondary-text:#f8fbff;--btn-secondary-line:#e7edf84d;--btn-secondary-disabled-bg:#e7edf814;--btn-secondary-disabled-text:#aab7cc;--btn-secondary-disabled-line:#e7edf81f;--btn-synced-bg:#e7edf814;--btn-synced-text:#e7edf8;--btn-synced-line:#e7edf829;--help-bg:#ffffff08;--panel-strong-hover:#1c2636;--field-bg:#182130;--field-text:#edf3ff;--field-border:#e7edf829;--palette-button-bg:#242c39;--palette-button-hover:#2c3443;--swatch-border:#ffffff29;--grid-panel-bg:#0f141ef2}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{min-height:100dvh;font-family:var(--sans);color:var(--ink);background:var(--page-bg);margin:0;overflow:hidden}#app-startup-error{color:#7a2018;width:min(720px,100vw - 24px);font:600 .95rem/1.4 var(--sans);background:#bf433614;border:1px solid #bf433640;border-radius:.75rem;margin:1rem auto 0;padding:.85rem 1rem;display:none}#app-startup-error.startup-error-visible{display:block}:root[data-theme=dark] #app-startup-error{color:#ffb1a1;background:#bf43362e;border-color:#ff9c8947}.standalone-startup-status{z-index:16;pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf875;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.standalone-startup-status-card{background:#fffbf5f0;border:1px solid #ffffff52;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-width:min(340px,100% - 32px);max-width:min(420px,100% - 32px);padding:14px 16px;display:grid;box-shadow:0 18px 30px #0f16221f}.standalone-startup-copy{gap:4px;min-width:0;display:grid}.app-frame.standalone-startup-pending .top-bar-controls,.app-frame.standalone-startup-pending .control-drawer{opacity:.72}.standalone-startup-status.is-error{pointer-events:auto}.standalone-startup-status.is-error .standalone-startup-status-card{color:#7a2018;background:#fff6f4fa;border-color:#bf433640}.standalone-startup-status.is-error .blocking-activity-detail{color:inherit}.standalone-startup-status.is-error .standalone-startup-spinner{display:none}:root[data-theme=dark] .standalone-startup-status{background:#0f141e85}:root[data-theme=dark] .standalone-startup-status-card{background:#161d29f0;border-color:#e7edf82e;box-shadow:0 18px 30px #00000047}:root[data-theme=dark] .standalone-startup-status.is-error .standalone-startup-status-card{color:#ffb1a1;background:#3a1818f0;border-color:#ff9c8947}button,input,select{font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-frame{grid-template-rows:auto minmax(0,1fr);gap:8px;width:min(1680px,100vw - 20px);height:100dvh;margin:0 auto;padding:6px 0 8px;display:grid;position:relative}.top-bar,.canvas-shell{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-drawer{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff9f1fa}:root[data-theme=dark] .control-drawer{background:#111720fa}.top-bar{z-index:50;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;width:100%;max-width:100%;padding:10px 12px;display:grid;position:relative}.top-bar>*{min-width:0}.top-bar-brand{flex:none;align-content:center;gap:2px;min-width:148px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent-dark);font-family:var(--mono);margin:0;font-size:.62rem}h1{margin:0;font-size:clamp(1.02rem,1.4vw,1.45rem);line-height:1.05}.top-bar-strip{justify-content:space-between;align-items:center;gap:12px;width:100%;min-width:0;max-width:100%;display:flex}.top-bar-summary{flex-wrap:nowrap;flex:none;align-items:stretch;gap:6px;min-width:0;display:flex}.summary-chip,.sync-pill{border:1px solid var(--status-tile-line);background:var(--status-tile-bg);border-radius:12px;align-items:center;gap:6px;min-height:36px;padding:6px 10px;display:flex}.summary-chip{min-width:96px}.summary-label{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:.64rem}.summary-value{white-space:nowrap;font-size:.88rem;font-weight:700;line-height:1}.sync-pill{min-width:112px;color:var(--muted);letter-spacing:.02em;font-size:.74rem;font-weight:600}.top-bar-controls{flex-wrap:nowrap;flex:auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.top-bar-control-group{border-left:1px solid var(--status-tile-line);align-items:center;gap:8px;padding-left:10px;display:flex}.top-bar-control-group:first-child{border-left:0;padding-left:0}.top-bar-topology-group{flex:0 0 clamp(220px,20vw,300px);min-width:0}.top-bar-tiling-control{z-index:8}.top-bar-actions-group{border:1px solid var(--status-tile-line);background:var(--status-tile-bg);border-radius:16px;flex:none;gap:4px;margin-left:auto;padding:4px}.top-control{gap:4px;min-width:108px;display:grid;position:relative}.compact-select{min-width:138px}.top-bar-tiling-control{width:100%;min-width:0}.top-control-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:700}.tiling-picker-control{grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.tiling-selected-preview,.tiling-preview-card-thumb{border:1px solid var(--line);background:linear-gradient(135deg, #ffffff94, #ffffff2e), var(--field-bg);border-radius:6px;place-items:center;display:grid;overflow:hidden}.tiling-selected-preview{width:46px;height:34px;min-height:34px}.tiling-picker-toggle{border-color:var(--field-border);background:var(--field-bg);width:100%;min-width:0;min-height:42px;color:var(--field-text);box-shadow:none;text-align:left;grid-template-columns:46px minmax(0,1fr) 14px;align-items:center;gap:9px;padding:4px 10px 4px 4px;display:grid}.tiling-picker-toggle:hover:not(:disabled),.tiling-picker-toggle:focus-visible,.tiling-picker-toggle[aria-expanded=true]{border-color:var(--accent);background:var(--btn-soft-hover);box-shadow:none}.tiling-selected-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.89rem;font-weight:700;line-height:1.15;overflow:hidden}.tiling-picker-caret{opacity:.76;border-top:5px solid;border-left:4px solid #0000;border-right:4px solid #0000;justify-self:center;width:0;height:0}.tiling-picker-menu{z-index:60;border:1px solid var(--line);background:var(--panel-strong);width:min(740px,100vw - 24px);max-height:min(68vh,620px);box-shadow:var(--shadow);border-radius:8px;padding:12px;position:absolute;top:calc(100% + 8px);left:0;overflow:auto}.tiling-picker-search-row{z-index:1;background:var(--panel-strong);gap:8px;margin:-12px -12px 10px;padding:12px;display:grid;position:sticky;top:-12px}.tiling-picker-search-header{align-items:center;gap:8px;min-width:0;display:flex}.tiling-picker-search-title{font-size:.86rem;font-weight:800;line-height:1.15}.tiling-picker-menu-current{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.74rem;font-weight:700;overflow:hidden}.tiling-picker-close{background:var(--btn-soft-bg);width:32px;min-width:32px;min-height:32px;color:var(--ink);border-color:var(--btn-soft-line);box-shadow:none;border-radius:999px;flex:none;padding:0;font-size:1.1rem;line-height:1}.tiling-picker-close:hover:not(:disabled),.tiling-picker-close:focus-visible{background:var(--btn-soft-hover);border-color:var(--accent);box-shadow:none}.tiling-picker-search-label{display:block}.tiling-picker-search{border-radius:10px;min-height:34px;font-size:.86rem}.tiling-picker-empty{color:var(--muted);text-align:center;padding:18px 10px 10px;font-size:.86rem}.tiling-preview-group+.tiling-preview-group{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.tiling-preview-group-title{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.68rem;font-weight:800}.tiling-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}button.tiling-preview-card{border-color:var(--btn-soft-line);background:var(--btn-soft-bg);min-height:78px;color:var(--ink);box-shadow:none;text-align:left;border-radius:8px;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:9px;padding:8px;display:grid}button.tiling-preview-card:hover:not(:disabled),button.tiling-preview-card:focus-visible{background:var(--btn-soft-hover);border-color:var(--accent);box-shadow:none}button.tiling-preview-card.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, var(--panel-strong))}.tiling-preview-card-thumb{width:86px;height:54px}.tiling-preview-card-copy{gap:3px;min-width:0;display:grid}.tiling-preview-card-label,.tiling-preview-card-meta{overflow-wrap:anywhere;min-width:0}.tiling-preview-card-label{font-size:.78rem;font-weight:800;line-height:1.16}.tiling-preview-card-meta{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.tiling-preview-svg{width:100%;height:100%;display:block}.tiling-preview-shape{stroke:var(--cell-line-strong);stroke-width:1.2px;stroke-linejoin:round}.tiling-preview-fill-a{fill:var(--tone-cream)}.tiling-preview-fill-b{fill:var(--tone-tan)}.tiling-preview-fill-c{fill:var(--tone-stone)}.tiling-preview-fill-d{fill:var(--tone-clay)}:root[data-theme=dark] .tiling-selected-preview,:root[data-theme=dark] .tiling-preview-card-thumb{background:linear-gradient(135deg, #e7edf814, #e7edf805), var(--field-bg)}.top-compact-control{min-width:96px}.speed-control{min-width:104px}.speed-stepper{grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;gap:5px;display:grid}.speed-stepper-btn{min-height:34px;font-family:var(--mono);border-radius:10px;padding:0;font-size:.9rem;font-weight:800}.speed-stepper-input{text-align:center}.speed-actual-label{font-family:var(--mono);color:var(--muted);font-size:.68rem}.speed-actual-label[data-tone=warning]{color:var(--accent-dark)}.top-slider-value{font-family:var(--mono);color:var(--muted);font-size:.74rem}.top-manual-input{justify-self:start;width:min(96px,100%);padding-right:6px}.top-control-limit-cue{font-family:var(--mono);color:var(--accent-dark);letter-spacing:.01em;pointer-events:none;z-index:1;font-size:.68rem;position:absolute;bottom:0;left:0}.top-control.has-limit-cue .top-manual-input,.top-manual-input.is-limit-cue{border-color:var(--accent);animation:.26s 2 limit-cue-pulse;box-shadow:0 0 0 3px #bf5a3629}.top-control.has-limit-cue .top-slider-value{visibility:hidden}:root[data-theme=dark] .top-control-limit-cue{color:var(--accent-dark)}:root[data-theme=dark] .top-control.has-limit-cue .top-manual-input,:root[data-theme=dark] .top-manual-input.is-limit-cue{box-shadow:0 0 0 3px #d67a4c33}@keyframes limit-cue-pulse{0%{transform:translate(0)}30%{transform:translate(-1px)}60%{transform:translate(1px)}to{transform:translate(0)}}input,select{border:1px solid var(--field-border);background:var(--field-bg);width:100%;color:var(--field-text);border-radius:14px}input,select,button{min-height:36px}input,select{padding:8px 10px}button{appearance:none;border:1px solid var(--btn-primary-line);background-color:var(--btn-primary-bg);width:auto;color:var(--btn-primary-text);cursor:pointer;border-radius:12px;padding:6px 10px;font-weight:700;transition:transform .14s,background-color .14s,border-color .14s,color .14s,box-shadow .14s,opacity .14s;box-shadow:0 8px 18px #0f16221a}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #0f162224}button:disabled{background-color:var(--btn-disabled-bg);color:var(--btn-disabled-text);border-color:var(--btn-disabled-line);cursor:not-allowed;box-shadow:none;transform:none}button.soft-action{background-color:var(--btn-soft-bg);color:var(--btn-soft-text);border-color:var(--btn-soft-line);box-shadow:none}button.soft-action:hover:not(:disabled){background-color:var(--btn-soft-hover);box-shadow:none}button.soft-action.is-selected{background-color:var(--panel-strong);border-color:var(--accent);color:var(--ink);box-shadow:inset 0 0 0 1px var(--accent)}button.primary-action{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-line)}button.primary-action:hover:not(:disabled){background-color:var(--btn-primary-hover)}.top-bar-action{min-width:58px;box-shadow:none;white-space:nowrap;border-radius:10px;padding:5px 10px}button.is-running{color:#f8fbff;background-color:#131a25;border-color:#e7edf81f}button.is-running:hover:not(:disabled){background-color:#0d131d}button.theme-toggle{background-color:var(--panel);width:42px;min-width:42px;color:var(--ink);border-color:var(--line);box-shadow:var(--shadow);border-radius:999px;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}button.theme-toggle:hover:not(:disabled){background-color:var(--panel-strong)}button.theme-toggle .theme-toggle-icon{font-size:1.15rem;line-height:1;transition:opacity .14s,transform .14s;position:absolute}button.theme-toggle .theme-icon-sun{opacity:0;transform:translateY(5px)scale(.82)}button.theme-toggle .theme-icon-moon,:root[data-theme=dark] button.theme-toggle .theme-icon-sun{opacity:1;transform:translateY(0)scale(1)}:root[data-theme=dark] button.theme-toggle .theme-icon-moon{opacity:0;transform:translateY(-5px)scale(.82)}.drawer-toggle{min-width:102px}.main-stage{grid-template-columns:minmax(0,1fr);gap:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.main-stage.is-drawer-open{grid-template-columns:minmax(0,1fr)}.canvas-shell{background:var(--grid-panel-bg);min-width:0;height:100%;min-height:0;padding:8px}.grid-panel{flex-direction:column;height:100%;min-height:0;display:flex;position:relative}.canvas-hud{z-index:5;pointer-events:none;gap:8px;width:min(460px,100% - 28px);display:grid;position:absolute;top:14px;left:14px}.canvas-edit-cue{z-index:6;min-width:min(320px,100% - 40px);max-width:calc(100% - 40px);color:var(--ink);letter-spacing:.01em;text-align:center;pointer-events:none;background:#fffbf5f0;border:1px solid #ffffff38;border-radius:999px;padding:10px 14px;font-size:.82rem;font-weight:700;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 24px #0f16221a}.canvas-first-action-hint{z-index:4;min-width:min(280px,100% - 48px);max-width:min(360px,100% - 48px);color:var(--ink);text-align:center;pointer-events:none;background:#fffbf5e6;border:1px solid #ffffff3d;border-radius:16px;gap:4px;padding:12px 16px;font-size:.84rem;line-height:1.3;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 16px 32px #0f16221c}.canvas-first-action-hint:after{content:"";background:linear-gradient(#bf5a3670,#bf5a3600);width:1px;height:18px;position:absolute;top:calc(100% - 1px);left:50%;transform:translate(-50%)}.canvas-first-action-hint strong{font-size:.9rem;line-height:1.15}.canvas-first-action-hint span{color:var(--muted)}.canvas-hud-row{background:#fffbf5eb;border:1px solid #ffffff38;border-radius:16px;align-items:center;gap:10px;padding:10px 12px;display:flex;box-shadow:0 12px 24px #0f162214}.canvas-hud-topology-row{justify-content:flex-start}.canvas-hud-context-row{justify-content:space-between;align-items:stretch}.canvas-hud-context-block{gap:4px;min-width:0;display:grid}.canvas-hud-label{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:700}.canvas-hud-value{min-width:0;font-size:.92rem;font-weight:700;line-height:1.1;display:block}.canvas-hud-adjacency{min-height:28px;color:var(--muted);letter-spacing:.03em;background:#1f243014;border-radius:999px;align-items:center;padding:0 10px;font-size:.72rem;font-weight:700;display:inline-flex}.grid-viewport{border-radius:18px;flex:auto;width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:auto}.grid-canvas{touch-action:none;cursor:default;background:0 0;border-radius:18px;display:block}.grid-canvas[data-edit-mode=armed]{cursor:crosshair}.grid-canvas[data-edit-mode=idle],.grid-canvas[data-edit-mode=running]{cursor:default}.grid-panel.is-live-compare>:not(.live-compare-workspace){display:none}.main-stage.is-live-compare,.main-stage.is-drawer-open.is-live-compare{grid-template-columns:minmax(0,1fr)}.main-stage.is-live-compare .control-drawer{display:none}.live-compare-workspace{grid-template-rows:auto minmax(0,1fr);gap:12px;width:100%;height:100%;min-height:0;display:grid;position:relative}.live-compare-toolbar{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;padding:10px 12px;display:flex}.live-compare-summary{min-width:0;color:var(--muted);font-size:.85rem}.live-compare-toolbar-group,.live-compare-paint-palette{align-items:center;gap:6px;min-width:0;display:flex}.live-compare-paint-palette{flex-wrap:wrap}.live-compare-action,.live-compare-pane-action,.live-compare-editor-tool,.live-compare-paint-state{border:1px solid var(--btn-soft-line);background:var(--btn-soft-bg);color:var(--btn-soft-text);font:inherit;cursor:pointer;border-radius:6px;padding:8px 10px;font-size:.82rem;line-height:1}.live-compare-action:hover,.live-compare-pane-action:hover,.live-compare-editor-tool:hover,.live-compare-paint-state:hover{background:var(--btn-soft-hover);border-color:var(--accent)}.live-compare-editor-tool.is-selected,.live-compare-paint-state.is-selected{background:var(--panel-strong);border-color:var(--accent);color:var(--ink);box-shadow:inset 0 0 0 1px var(--accent)}.live-compare-paint-state{align-items:center;gap:6px;display:inline-flex}.live-compare-paint-swatch{border:1px solid var(--swatch-border);border-radius:999px;flex:none;width:14px;height:14px}.live-compare-panes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;display:grid}.live-compare-pane{border:1px solid var(--line);background:var(--grid-panel-bg);border-radius:8px;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.live-compare-pane.is-active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 20%, transparent)}.live-compare-pane-header{border-bottom:1px solid var(--line);background:var(--panel);grid-template-columns:auto auto minmax(150px,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.live-compare-pane-title{font-size:.88rem}.live-compare-pane-meta{color:var(--muted);white-space:nowrap;gap:8px;font-size:.78rem;display:flex}.live-compare-tiling-select{border:1px solid var(--field-border);background:var(--field-bg);width:100%;min-width:0;color:var(--field-text);font:inherit;border-radius:6px;padding:7px 8px;font-size:.82rem}.live-compare-pane-actions{gap:6px;display:flex}.live-compare-pane-viewport{background:var(--grid-panel-bg);place-items:center;min-width:0;min-height:0;padding:12px;display:grid;overflow:auto}.live-compare-canvas{max-width:100%;max-height:100%}.blocking-activity-overlay{z-index:12;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffcf894;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.blocking-activity-card{text-align:center;background:#fffbf5f5;border:1px solid #ffffff47;border-radius:18px;justify-items:center;gap:8px;min-width:min(320px,100% - 32px);max-width:min(360px,100% - 32px);padding:18px 20px;display:grid;box-shadow:0 18px 30px #0f16221f}.blocking-activity-spinner{border:3px solid #1f24301f;border-top-color:var(--accent);border-radius:999px;width:30px;height:30px;animation:.9s linear infinite blocking-activity-spin}.blocking-activity-message{font-size:.94rem;font-weight:700;line-height:1.2}.blocking-activity-detail{color:var(--muted);font-size:.8rem;line-height:1.35}.control-drawer{z-index:40;opacity:1;flex-direction:column;width:clamp(320px,30vw,360px);min-width:0;max-width:calc(100vw - 24px);min-height:0;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:hidden;transform:translate(calc(100% + 14px))}.control-drawer[data-open=false]{opacity:0;pointer-events:none;transform:translate(calc(100% + 14px))}.control-drawer[data-open=true]{opacity:1;pointer-events:auto;transform:translate(0)}.control-drawer-inner{align-content:start;gap:8px;height:100%;padding:12px;display:grid;overflow:auto}.drawer-sticky-summary{gap:8px;display:grid}.panel-section{margin:0}.drawer-header{border:1px solid var(--line);background:var(--status-tile-bg);border-radius:16px;gap:4px;padding:10px 12px;display:grid}.drawer-header-copy{gap:4px;min-width:0;display:grid}.drawer-header-context{gap:2px;display:grid}.drawer-message-stack{gap:8px;display:grid}.drawer-quick-start-hint{background:var(--status-tile-bg);border:1px solid #bf5a3638;border-radius:14px;gap:8px;padding:10px 11px;font-size:.8rem;display:grid}.drawer-showcase-title{color:var(--accent-dark);letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:700}.drawer-showcase-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.showcase-action-button{width:100%}.showcase-action-button-wide{grid-column:1/-1}.drawer-showcase-hint{font-size:.78rem}.drawer-header-title{font-size:.96rem;font-weight:700;line-height:1.1}.drawer-header-subtitle{color:var(--muted);font-size:.82rem;line-height:1.3}.drawer-nav{z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel-strong);flex-wrap:wrap;gap:5px;margin:0 -12px;padding:8px 12px;display:flex;position:sticky;top:-12px}.drawer-nav-pill{border:1px solid var(--line);background:var(--btn-soft-bg);color:var(--muted);white-space:nowrap;border-radius:10px;padding:4px 10px;font-size:.72rem;font-weight:700;text-decoration:none;transition:background .1s,color .1s,border-color .1s;display:inline-block}.drawer-nav-pill:hover{background:var(--btn-soft-hover);color:var(--ink);border-color:var(--accent)}.drawer-nav-pill.is-active,.drawer-nav-pill[aria-current=true]{background:color-mix(in srgb, var(--accent) 14%, var(--panel-strong));color:var(--ink);border-color:color-mix(in srgb, var(--accent) 58%, var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 16%, transparent)}.drawer-nav-pill.is-active:hover,.drawer-nav-pill[aria-current=true]:hover{background:color-mix(in srgb, var(--accent) 20%, var(--panel-strong))}.drawer-section{border:1px solid var(--line);background:var(--status-tile-bg);border-radius:16px;padding:9px 10px;scroll-margin-top:78px;position:relative}.drawer-section:before{content:"";background:var(--accent);opacity:.42;border-radius:999px;width:3px;position:absolute;top:12px;bottom:12px;left:0}.drawer-section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:10px;margin:-1px 0 9px;padding-bottom:7px;display:flex}.drawer-section-meta{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:.68rem;font-weight:700;overflow:hidden}.drawer-section-summary{color:var(--muted);margin:-2px 0 10px;font-size:.8rem;line-height:1.4}.drawer-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.drawer-topology-grid{grid-template-columns:minmax(0,1fr)}.drawer-control{min-width:0}.drawer-control .top-manual-input,.drawer-control select{width:100%}.drawer-rule-control{margin-bottom:10px}.rule-search-input{border-radius:10px;min-height:34px;margin-bottom:7px;font-size:.86rem}.rule-search-status{color:var(--muted);margin-top:6px;font-size:.74rem;line-height:1.25;display:block}.drawer-speed-control{margin-top:10px}.drawer-speed-control .top-slider-value,.drawer-speed-control .speed-actual-label{line-height:1.1}.panel-section h2{text-transform:uppercase;letter-spacing:.09em;margin:0;font-size:.8rem}.drawer-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.preset-seed-controls{gap:8px;display:grid}.preset-seed-controls.has-picker{grid-template-columns:minmax(0,1fr) auto}.preset-seed-controls.has-picker #preset-seed-btn{width:auto;min-width:112px}.preset-helper-text{margin-top:6px;font-size:.8rem}.pattern-status{border:1px solid var(--line);background:var(--status-tile-bg);color:var(--muted);border-radius:14px;padding:9px 11px;font-size:.82rem;line-height:1.4}.inspector-status{margin:0}.topology-status{border:1px solid var(--line);background:var(--status-tile-bg);border-radius:14px;gap:2px;padding:9px 11px;display:grid}.topology-status-label{letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;line-height:1.35}.topology-status-detail{color:var(--muted);font-size:.82rem;line-height:1.4}.topology-status[data-tone=warning] .topology-status-label{color:#b13d2e}:root[data-theme=dark] .topology-status[data-tone=warning] .topology-status-label{color:#ff9c89}.pattern-status[data-tone=success]{color:var(--accent-dark)}.pattern-status[data-tone=error]{color:#b13d2e}:root[data-theme=dark] .pattern-status[data-tone=error]{color:#ff9c89}.paint-palette{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));align-items:stretch;gap:8px;margin-top:10px;display:grid}.rule-summary{color:var(--muted);margin:0 0 10px;font-size:.84rem;line-height:1.45}.selection-inspector-header{gap:2px;margin-bottom:8px;display:grid}.selection-inspector-title{font-size:.95rem;line-height:1.3}.selection-inspector-subtitle,.selection-inspector-hint{color:var(--muted);font-size:.82rem;line-height:1.4}.selection-inspector-hint{margin:0}.selection-inspector-rows{gap:8px;display:grid}.selection-inspector-row{grid-template-columns:minmax(0,110px) minmax(0,1fr);align-items:start;gap:10px;display:grid}.selection-inspector-row-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:700}.selection-inspector-row-value{overflow-wrap:anywhere;font-size:.84rem;line-height:1.45}.selection-inspector-advanced{margin-top:10px}.selection-inspector-advanced-rows{padding:10px 12px 12px}.editor-shortcut-hint{margin-top:10px}.editor-tool-button,.brush-size-button{background-color:var(--btn-soft-bg);width:100%;color:var(--btn-soft-text);border-color:var(--btn-soft-line);box-shadow:none}.editor-tool-button:hover:not(:disabled),.brush-size-button:hover:not(:disabled){background-color:var(--btn-soft-hover);box-shadow:none}.editor-tool-button.is-selected,.brush-size-button.is-selected{background-color:var(--panel-strong);border-color:var(--accent);color:var(--ink);box-shadow:inset 0 0 0 1px var(--accent)}.paint-state-button{background-color:var(--palette-button-bg);width:100%;color:var(--ink);justify-content:flex-start;align-items:center;gap:8px;padding:8px 10px;display:flex}.paint-state-button:hover:not(:disabled){background-color:var(--palette-button-hover)}.paint-state-button.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.paint-state-swatch{border:1px solid var(--swatch-border);border-radius:999px;flex:none;width:18px;height:18px}.paint-state-label{text-align:left;flex:auto;min-width:0}.rule-help-toggle{border:1px solid var(--line);background:var(--help-bg);border-radius:14px;margin-top:10px;overflow:hidden}.rule-help-toggle summary{cursor:pointer;letter-spacing:.05em;text-transform:uppercase;padding:10px 12px;font-size:.76rem;font-weight:700;list-style:none}.rule-help-toggle summary::-webkit-details-marker{display:none}.rule-help-toggle summary:after{content:"+";float:right;color:var(--accent-dark);font-size:1rem}.rule-help-toggle[open] summary:after{content:"−"}.rule-help-toggle[open] summary{border-bottom:1px solid var(--line)}.rule-help-toggle .rule-description,.rule-help-toggle .hint{padding:10px 12px 0}.rule-help-toggle .hint:last-child,.rule-help-toggle .rule-description:last-child{padding-bottom:12px}.buried-setting-toggle{border:1px solid var(--line);background:var(--status-tile-bg);border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:10px 12px;display:grid}.buried-setting-toggle input{width:16px;min-width:16px;height:16px;min-height:16px;margin:2px 0 0;padding:0}.buried-setting-copy{gap:4px;display:grid}.buried-setting-title{font-size:.82rem;font-weight:700;line-height:1.2}.reset-settings-btn{justify-self:start}.drawer-action-stack{gap:8px;display:grid}.drawer-action-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;display:grid}.drawer-action-row:first-child{border-top:0;padding-top:0}.drawer-action-row-copy{gap:3px;min-width:0;display:grid}.drawer-action-row-copy strong{font-size:.82rem;line-height:1.2}.patterns-share-btn{width:auto;min-width:124px}.file-io-toggle{margin-top:8px}.drawer-file-io-hint{padding-bottom:0}.rule-help-toggle .file-io-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px 12px 12px;display:grid}.advanced-section-hint{margin:8px 0}.display-theme-toggle{align-items:center;margin-top:8px}.rule-description,.hint{color:var(--muted);margin:0;font-size:.86rem;line-height:1.45}.drawer-backdrop{z-index:20;pointer-events:none;background:#070b1133;display:none;position:absolute;inset:0}.drawer-backdrop:not([hidden]){display:block}:root[data-theme=dark] .canvas-hud-row{background:#111720e6;border-color:#e7edf81f;box-shadow:0 14px 28px #00000038}:root[data-theme=dark] .canvas-edit-cue{background:#111720f2;border-color:#e7edf81f;box-shadow:0 14px 28px #00000038}:root[data-theme=dark] .canvas-first-action-hint{background:#111720e6;border-color:#e7edf81f;box-shadow:0 16px 32px #0000003d}.canvas-toolbar{z-index:6;pointer-events:all;background:#fffbf5f0;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:6px;max-width:calc(100% - 28px);padding:6px 9px;display:flex;position:absolute;bottom:14px;left:14px;box-shadow:0 12px 24px #0f16221a}.canvas-toolbar[data-edit-mode=armed]{border-color:#447eff5c;box-shadow:0 12px 24px #0f16221a,0 0 0 2px #447eff14}.canvas-toolbar-sep{background:#1f24301f;flex:none;width:1px;height:20px;margin:0 1px}.canvas-toolbar-controls{align-items:center;gap:5px;display:none}.canvas-toolbar[data-edit-mode=armed] .canvas-toolbar-arm-btn{display:none}.canvas-toolbar[data-edit-mode=armed] .canvas-toolbar-controls{display:flex}.canvas-toolbar-arm-btn{color:var(--ink);cursor:pointer;white-space:nowrap;background:#1f24300b;border:none;border-radius:999px;padding:5px 12px;font-size:.82rem;font-weight:600;line-height:1.5}.canvas-toolbar-arm-btn:hover{color:var(--accent);background:#1f243014}.canvas-toolbar-palette,.canvas-toolbar-tools,.canvas-toolbar-brush{background:#1f24300b;border-radius:999px;align-items:center;gap:4px;padding:2px;display:flex}.canvas-toolbar-swatch-btn{cursor:pointer;background:0 0;border:2px solid #1f24302e;border-radius:999px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:border-color .1s;display:flex}.canvas-toolbar-swatch-btn:hover:not(:disabled){border-color:#1f243066}.canvas-toolbar-swatch-btn.is-selected{border-color:var(--accent)}.canvas-toolbar-swatch{border:1px solid var(--swatch-border);border-radius:999px;width:16px;height:16px;display:block}.canvas-toolbar-tool-btn,.canvas-toolbar-brush-btn{min-width:28px;min-height:28px;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:600;line-height:1.4}.canvas-toolbar-brush-btn{text-align:center;font-family:var(--mono);padding:4px 6px}.canvas-toolbar-tool-btn:hover:not(:disabled),.canvas-toolbar-brush-btn:hover:not(:disabled){background:#1f243014}.canvas-toolbar-tool-btn.is-selected,.canvas-toolbar-brush-btn.is-selected{border-color:var(--accent);background:#1f24301a}.canvas-toolbar-act-btn{width:30px;height:30px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:.85rem;display:flex}.canvas-toolbar-act-btn:hover:not(:disabled){background:#1f243014}.canvas-toolbar-act-btn:disabled{opacity:.35;cursor:default}.canvas-toolbar-help-btn{opacity:.55;font-style:italic}.canvas-toolbar-help-btn:hover,.canvas-toolbar-help-btn.is-active{opacity:1}.canvas-toolbar-help-btn.is-active{background:#1f24301a}.canvas-toolbar-shortcuts{white-space:nowrap;pointer-events:none;background:#fffbf5f7;border:1px solid #ffffff38;border-radius:12px;flex-wrap:wrap;gap:5px 14px;padding:8px 14px;font-size:.78rem;display:flex;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 8px 20px #0f16221f}.shortcut-item{color:var(--ink);align-items:center;gap:5px;display:flex}.canvas-toolbar-shortcuts kbd{font-family:var(--mono);background:#1f243014;border:1px solid #1f24302e;border-radius:4px;padding:1px 5px;font-size:.72rem;font-weight:700;line-height:1.5}:root[data-theme=dark] .canvas-toolbar-shortcuts{background:#111720f7;border-color:#e7edf81f}:root[data-theme=dark] .canvas-toolbar-shortcuts kbd{background:#e7edf81a;border-color:#e7edf833}:root[data-theme=dark] .canvas-toolbar-help-btn.is-active{background:#e7edf81a}:root[data-theme=dark] .canvas-toolbar{background:#111720f2;border-color:#e7edf81f;box-shadow:0 14px 28px #00000038}:root[data-theme=dark] .canvas-toolbar[data-edit-mode=armed]{border-color:#77a4ff57;box-shadow:0 14px 28px #00000038,0 0 0 2px #77a4ff1a}:root[data-theme=dark] .canvas-toolbar-sep{background:#e7edf81f}:root[data-theme=dark] .canvas-toolbar-arm-btn,:root[data-theme=dark] .canvas-toolbar-palette,:root[data-theme=dark] .canvas-toolbar-tools,:root[data-theme=dark] .canvas-toolbar-brush{background:#e7edf80f}:root[data-theme=dark] .canvas-toolbar-swatch-btn{border-color:#e7edf833}:root[data-theme=dark] .canvas-toolbar-swatch-btn:hover:not(:disabled){border-color:#e7edf873}:root[data-theme=dark] .canvas-toolbar-tool-btn:hover:not(:disabled),:root[data-theme=dark] .canvas-toolbar-brush-btn:hover:not(:disabled),:root[data-theme=dark] .canvas-toolbar-act-btn:hover:not(:disabled),:root[data-theme=dark] .canvas-toolbar-arm-btn:hover{background:#e7edf814}:root[data-theme=dark] .canvas-toolbar-tool-btn.is-selected,:root[data-theme=dark] .canvas-toolbar-brush-btn.is-selected{background:#e7edf81a}:root[data-theme=dark] .canvas-hud-adjacency{background:#e7edf814}:root[data-theme=dark] .blocking-activity-overlay{background:#0f141e94}:root[data-theme=dark] .blocking-activity-card{background:#111720f5;border-color:#e7edf824;box-shadow:0 18px 30px #00000047}:root[data-theme=dark] .blocking-activity-spinner{border-color:#e7edf81f;border-top-color:var(--accent)}@keyframes blocking-activity-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=1200px){.top-bar{gap:10px}.top-bar-strip{flex-wrap:wrap;align-items:stretch}.top-bar-controls{flex-wrap:wrap;gap:6px;width:100%}.top-bar-control-group{flex-wrap:wrap}.top-bar-actions-group{margin-left:0}.top-bar-brand{min-width:132px}.top-bar-tiling-control{min-width:0}}@media (width<=860px){.live-compare-toolbar{flex-direction:column;align-items:stretch}.live-compare-panes{grid-template-columns:minmax(0,1fr)}.live-compare-pane-header{grid-template-columns:1fr}.live-compare-pane-actions{flex-wrap:wrap}.app-frame{gap:8px;width:min(1400px,100vw - 16px);height:100dvh;min-height:100dvh;padding:6px 0}.top-bar{flex-wrap:wrap;padding:12px;display:flex}.top-bar-brand,.top-bar-strip,.top-bar-summary,.top-bar-controls{flex-basis:100%;min-width:0}.top-bar-strip{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.top-bar-summary,.top-bar-controls{flex-wrap:wrap;width:100%;max-width:100%}.top-bar-controls{justify-content:flex-start;min-width:0}.top-bar-control-group{border-left:0;flex-wrap:wrap;width:100%;min-width:0;padding-left:0}.top-bar-tiling-control{width:100%;min-width:0}.tiling-picker-control{grid-template-columns:minmax(0,1fr);width:100%}.tiling-picker-menu{border-radius:18px;grid-template-rows:auto minmax(0,1fr) auto;width:auto;max-height:none;padding:0 12px 12px;display:grid;position:fixed;inset:104px 12px 12px;overflow:hidden}.tiling-picker-search-row{border-bottom:1px solid var(--line);margin:0 -12px 10px;padding:12px;top:0}.tiling-picker-search-header{gap:10px}.tiling-picker-search-title{font-size:.95rem}.tiling-picker-menu-current{font-size:.78rem}.tiling-picker-search{min-height:40px}.tiling-picker-list{min-height:0;padding-bottom:6px;overflow:auto}.tiling-picker-empty{align-self:start}.tiling-preview-grid{grid-template-columns:minmax(0,1fr)}.summary-chip{flex:calc(50% - 4px);min-width:calc(50% - 4px)}.sync-pill{width:100%}.main-stage,.main-stage.is-drawer-open{grid-template-columns:minmax(0,1fr);height:100%;min-height:0;display:grid}.canvas-shell{width:100%;height:100%;min-height:0}.grid-viewport{height:100%}.control-drawer{border-radius:20px;width:min(380px,100vw - 16px);max-width:calc(100vw - 16px);top:8px;bottom:8px;right:8px;transform:translate(calc(100% + 16px));box-shadow:0 20px 44px #0f162233}.control-drawer[data-open=true]{pointer-events:auto;transform:translate(0)}.control-drawer[data-open=false]{transform:translate(calc(100% + 16px))}.control-drawer-inner{gap:7px;padding:10px}.drawer-sticky-summary{z-index:5;border-bottom:1px solid var(--line);background:var(--panel-strong);margin:-10px -10px 0;padding:10px 10px 8px;position:sticky;top:-10px}.drawer-sticky-summary .drawer-header{border-radius:14px;padding:8px 10px}.drawer-sticky-summary .drawer-message-stack{gap:6px}.drawer-sticky-summary .drawer-quick-start-hint{padding:8px 9px}.drawer-sticky-summary .drawer-nav{background:0 0;border:0;margin:0;padding:0;position:static}.drawer-nav-pill{padding:4px 8px;font-size:.7rem}.drawer-section{border-radius:14px;padding:8px 9px;scroll-margin-top:150px}.drawer-section-heading{margin-bottom:8px;padding-bottom:6px}.canvas-hud{width:min(100%,100% - 24px);top:12px;left:12px}.canvas-first-action-hint{min-width:min(260px,100% - 36px);max-width:calc(100% - 36px);padding:10px 12px;top:46%}.canvas-first-action-hint:after{height:14px}.canvas-toolbar{border-radius:18px;align-items:stretch;max-width:none;padding:7px;bottom:12px;left:12px;right:12px}.canvas-toolbar-arm-btn{background:#1f24300f;border-radius:12px;width:100%;min-height:40px;padding:8px 12px;font-size:.9rem}.canvas-toolbar[data-edit-mode=armed] .canvas-toolbar-controls{flex-wrap:wrap;gap:6px;width:100%}.canvas-toolbar-sep{display:none}.canvas-toolbar-palette,.canvas-toolbar-tools,.canvas-toolbar-brush{background:#1f24300b;border:1px solid #1f24301a;border-radius:999px;gap:4px;min-height:38px;padding:3px}.canvas-toolbar-palette{flex:100%;order:1;max-width:100%;overflow-x:auto}.canvas-toolbar-tools{flex:158px;order:2}.canvas-toolbar-brush{flex:0 auto;order:3}.canvas-toolbar-swatch-btn{width:32px;height:32px}.canvas-toolbar-swatch{width:22px;height:22px}.canvas-toolbar-tool-btn,.canvas-toolbar-brush-btn,.canvas-toolbar-act-btn{border-radius:999px;min-width:32px;min-height:32px;font-size:.82rem}.canvas-toolbar-tool-btn{flex:32px;padding:5px 8px}.canvas-toolbar-brush-btn{width:32px;padding:5px 7px}.canvas-toolbar-act-btn{background:#1f24300b;order:4;width:34px;height:34px}.canvas-toolbar-help-btn{margin-left:auto}.canvas-toolbar-shortcuts{white-space:normal;gap:6px 12px;max-width:100%;font-size:.76rem;right:0}.canvas-edit-cue{min-width:min(300px,100% - 28px);max-width:calc(100% - 28px);bottom:74px}.drawer-backdrop{pointer-events:auto}.drawer-action-grid,.drawer-showcase-actions,.drawer-control-grid{grid-template-columns:1fr}.drawer-action-row{grid-template-columns:1fr;align-items:stretch}.patterns-share-btn{width:100%}}
