.map-window-frame{flex:1;display:flex;flex-direction:column;overflow:hidden}.map-canvas-container{overflow:hidden;background-color:var(--color-neutral-300);position:relative;width:100%;height:100%}.map-canvas-layer{position:absolute;top:0;left:0;image-rendering:pixelated;image-rendering:crisp-edges;will-change:transform}.map-canvas-layer.no-events{pointer-events:none}.map-canvas{display:block;cursor:crosshair}.map-canvas.panning{cursor:grabbing}.scroll-track-h{position:absolute;bottom:0;left:0;right:10px;height:10px;background:var(--scrollbar-track);border-top:1px solid var(--border-default)}.scroll-track-v{position:absolute;top:0;right:0;bottom:10px;width:10px;background:var(--scrollbar-track);border-left:1px solid var(--border-default)}.scroll-thumb-h,.scroll-thumb-v{position:absolute;background:var(--scrollbar-thumb);cursor:grab}.scroll-thumb-h:hover,.scroll-thumb-v:hover{background:var(--scrollbar-thumb-hover)}.scroll-thumb-h:active,.scroll-thumb-v:active{background:var(--accent-active);cursor:grabbing}.scroll-thumb-h{top:1px;height:8px;min-width:20px}.scroll-thumb-v{left:1px;width:8px;min-height:20px}.scroll-arrow-up,.scroll-arrow-down,.scroll-arrow-left,.scroll-arrow-right{position:absolute;width:10px;height:10px;background-color:var(--scrollbar-track);border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.scroll-arrow-up:hover,.scroll-arrow-down:hover,.scroll-arrow-left:hover,.scroll-arrow-right:hover{background-color:var(--bg-hover)}.scroll-arrow-up:active,.scroll-arrow-down:active,.scroll-arrow-left:active,.scroll-arrow-right:active{background-color:var(--bg-active)}.scroll-arrow-up{top:0;right:0}.scroll-arrow-down{bottom:0;right:0}.scroll-arrow-left{left:0;bottom:0}.scroll-arrow-right{right:0;bottom:0}.scroll-arrow-up:after,.scroll-arrow-down:after,.scroll-arrow-left:after,.scroll-arrow-right:after{content:"";display:block;width:0;height:0;border-style:solid}.scroll-arrow-up:after{border-width:0 3px 4px 3px;border-color:transparent transparent var(--text-secondary) transparent}.scroll-arrow-down:after{border-width:4px 3px 0 3px;border-color:var(--text-secondary) transparent transparent transparent}.scroll-arrow-left:after{border-width:3px 4px 3px 0;border-color:transparent var(--text-secondary) transparent transparent}.scroll-arrow-right:after{border-width:3px 0 3px 4px;border-color:transparent transparent transparent var(--text-secondary)}.scroll-corner{position:absolute;bottom:0;right:0;width:10px;height:10px;background:var(--scrollbar-track)}.map-settings-dialog{border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);background:var(--bg-primary);color:var(--text-primary);padding:0;width:680px;height:auto;max-height:80vh;max-width:none;overflow:visible;position:relative}.map-settings-dialog[open]{display:flex;flex-direction:column;overflow:hidden}.map-settings-dialog::backdrop{background-color:var(--overlay-bg)}.dialog-title-bar{background:var(--title-bar-bg);color:var(--text-on-accent);padding:0 8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);height:28px;flex-shrink:0;display:flex;align-items:center;user-select:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0;cursor:move;gap:8px}.dialog-title-text{flex:1}.dialog-close-button{background:transparent;border:none;color:var(--text-on-accent);font-size:16px;line-height:1;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius-sm);padding:0}.dialog-close-button:hover{background:var(--surface-hover-overlay)}.dialog-content{display:flex;flex-direction:column;overflow:hidden;flex:1;min-height:0}.dialog-tabs{display:flex;flex-direction:row;flex-wrap:nowrap;flex-shrink:0;list-style:none;margin:0;padding:var(--space-0_5) var(--space-0_5) 0 var(--space-0_5);gap:var(--space-0_5);background:var(--bg-primary);border-bottom:1px solid var(--border-default);position:relative;z-index:1}.dialog-tabs li[role=tab]{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:var(--space-0_5) var(--space-1_5);cursor:pointer;font-size:var(--font-size-xs);color:var(--text-secondary);user-select:none;position:relative}.dialog-tabs li[role=tab]:hover{background:var(--bg-hover);color:var(--text-primary)}.dialog-tabs li[role=tab][aria-selected=true]{background:var(--surface);border-color:var(--border-default);border-bottom-color:var(--surface);margin-bottom:-1px;z-index:2;font-weight:700;color:var(--text-heading)}.map-settings-dialog .tab-content{padding:var(--space-1) var(--space-2);overflow-y:scroll;background:var(--bg-primary);max-height:calc(80vh - 90px)}.map-settings-dialog .tab-content::-webkit-scrollbar{width:14px}.map-settings-dialog .tab-content::-webkit-scrollbar-track{background:var(--bg-secondary);border-left:1px solid var(--border-default)}.map-settings-dialog .tab-content::-webkit-scrollbar-thumb{background:var(--surface-light, #c0c0c0);border:1px solid var(--border-default);min-height:30px}.map-settings-dialog .tab-content::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.map-settings-dialog .tab-panel{display:block}.map-settings-dialog .tab-panel[hidden]{display:none}.dialog-buttons{display:flex;align-items:center;flex-shrink:0;gap:var(--space-1);padding:var(--space-0_75) var(--space-1);border-top:1px solid var(--border-default);background:var(--bg-primary);justify-content:flex-end}.reset-all-button{margin-right:auto}.win95-button{background:var(--surface);padding:var(--space-0_5) var(--space-2);min-width:75px;font-size:var(--font-size-xs);font-family:inherit;cursor:pointer;user-select:none;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary)}.win95-button:hover{background:var(--bg-hover)}.win95-button:active{background:var(--bg-active)}.win95-button:focus{outline:2px solid var(--input-focus);outline-offset:2px}.win95-button:disabled{color:var(--text-disabled);cursor:default;background:var(--surface-light)}.setting-input-row{display:flex;align-items:center;margin-bottom:2px;gap:var(--space-0_5)}.setting-input-label{flex:0 0 140px;font-size:var(--font-size-xs);color:var(--text-primary)}.setting-input-controls{display:flex;align-items:center;gap:var(--space-0_75);flex:1}.setting-input-disabled{opacity:.45;pointer-events:none}.range-label{font-size:var(--font-size-2xs);color:var(--text-tertiary);min-width:45px;text-align:center}.range-label.min{text-align:right}.range-label.max{text-align:left}.setting-slider{flex:1;min-width:100px;height:4px;-webkit-appearance:none;background:var(--slider-track);cursor:pointer;border:1px solid var(--border-default);border-radius:var(--radius-full)}.setting-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--slider-thumb);cursor:grab;border:1px solid var(--border-default);border-radius:var(--radius-sm)}.setting-slider::-moz-range-thumb{width:14px;height:14px;background:var(--slider-thumb);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:grab}.setting-number-input{width:70px;padding:var(--space-0_25) var(--space-0_5);font-size:var(--font-size-xs);font-family:inherit;color:var(--text-primary);background:var(--input-bg);text-align:center;border:1px solid var(--input-border);border-radius:var(--radius-sm)}.setting-number-input:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--focus-ring)}.reset-button{width:20px;height:20px;padding:0;font-size:var(--font-size-xs);background:var(--surface);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-default);border-radius:var(--radius-sm)}.reset-button:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.reset-button:active:not(:disabled){background:var(--bg-active)}.reset-button:disabled{color:var(--text-disabled);cursor:default}.setting-warning{display:block;font-size:10px;color:var(--text-warning, #c87800);margin-top:-2px;padding-left:2px;opacity:.85}.setting-group{margin-bottom:var(--space-0_5)}.setting-label{display:block;font-size:var(--font-size-xs);color:var(--text-primary);margin-bottom:2px}.text-input,.text-area{width:100%;padding:var(--space-0_5) var(--space-0_75);font-size:var(--font-size-xs);font-family:inherit;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm)}.text-input:focus,.text-area:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--focus-ring)}.text-area{resize:vertical;min-height:60px}.checkbox-input-row{display:flex;align-items:center;margin-bottom:2px}.checkbox-label{display:flex;align-items:center;gap:var(--space-0_75);cursor:pointer;user-select:none}.checkbox-input{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-primary)}.checkbox-label-text{font-size:var(--font-size-xs);color:var(--text-primary)}.select-input-row{display:flex;align-items:center;gap:var(--space-0_5);margin-bottom:2px}.select-input-label{flex:0 0 140px;font-size:var(--font-size-xs);color:var(--text-primary)}.select-input{flex:1;padding:var(--space-0_25) var(--space-0_75);font-size:var(--font-size-xs);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);cursor:pointer;color-scheme:inherit}.select-input:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--focus-ring)}.weapons-header-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-0_5)}.weapons-header-col{flex:1}.section-heading{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-heading);margin:var(--space-0_75) 0 var(--space-0_25) 0;padding-bottom:2px;border-bottom:1px solid var(--border-subtle)}.section-heading:first-child{margin-top:0}.team-selector{padding:var(--space-0_5) var(--space-0_75)}.team-selector-label{font-size:var(--font-size-2xs);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-1)}.team-selector-options{display:flex;flex-direction:column;gap:var(--space-px)}.team-option{display:flex;align-items:center;gap:var(--space-0_5);cursor:pointer;padding:var(--space-px) var(--space-0_25);font-size:var(--font-size-2xs);color:var(--text-primary);border-radius:var(--radius-sm)}.team-option:hover{background:var(--accent-primary);color:var(--text-on-accent)}.team-option input[type=radio]{margin:0;width:10px;height:10px}.team-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--border-default);flex-shrink:0}.team-name{white-space:nowrap}.game-object-tool-panel{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-0_5) 0;min-width:160px}.gotool-title{font-size:var(--font-size-sm);font-weight:700;color:var(--text-heading);padding:var(--space-0_25) var(--space-0_75);border-bottom:1px solid var(--border-default);margin-bottom:var(--space-0_25)}.gotool-field{display:flex;align-items:center;gap:var(--space-0_5);padding:var(--space-0_25) var(--space-0_75)}.gotool-label{font-size:var(--font-size-sm);color:var(--text-primary);min-width:50px;white-space:nowrap}.gotool-select{flex:1;font-size:var(--font-size-sm);font-family:inherit;padding:var(--space-px) var(--space-0_25);background:var(--input-bg);color:var(--text-primary);border:1px solid var(--input-border);border-radius:var(--radius-sm);min-width:0;color-scheme:inherit}.gotool-warning{font-size:var(--font-size-sm);color:var(--text-warning);padding:var(--space-0_5) var(--space-0_75);font-style:italic}.editor-stats-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;margin:0 6px;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:11px;color:#a0aab4bf;background:#0000002e;border-radius:4px;white-space:nowrap;user-select:none}.editor-stats-badge .stats-sep{opacity:.4}.editor-stats-badge .stats-maps{color:#00d2d3cc}.toolbar{display:flex;align-items:center;padding:var(--space-1) var(--space-1);background:var(--surface);border-bottom:1px solid var(--border-subtle);gap:2px}.floating-toolbar-container{position:fixed;z-index:200000}.floating-toolbar{display:flex;flex-wrap:wrap;width:calc(28px * 3 + 2px * 3 + var(--space-1) * 2);padding:var(--space-1);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);gap:2px}.floating-toolbar-container{display:flex;flex-direction:column;gap:4px}.floating-toolbar-handle{width:100%;flex-basis:100%;height:8px;cursor:grab;background:repeating-linear-gradient(90deg,var(--border-default) 0px,var(--border-default) 2px,transparent 2px,transparent 4px);border-radius:var(--radius-sm);opacity:.6}.floating-toolbar-handle:active{cursor:grabbing;opacity:1}.floating-toolbar-separator{width:100%;height:1px;margin:var(--space-0_5) 0;background:var(--border-subtle);flex-basis:100%}.floating-toolbar .toolbar-button-wrapper{position:relative}.floating-toolbar .toolbar-dropdown{top:0;left:100%;margin-left:4px}.floating-toolbar .grid-settings-wrapper{flex-direction:column}.floating-toolbar .grid-settings-arrow{width:28px;height:10px;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.floating-toolbar .grid-settings-dropdown{top:0;left:100%;right:auto;margin-left:4px}.toolbar-button{display:flex;align-items:center;justify-content:center;padding:var(--space-0_25);width:28px;height:28px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;font-family:inherit}.toolbar-button:hover:not(:disabled){background:var(--bg-hover)}.toolbar-button:active:not(:disabled){background:var(--bg-active);border-color:var(--border-default)}.toolbar-button.active{background:var(--bg-active);border-color:var(--border-default)}.toolbar-button:disabled{opacity:.4;cursor:not-allowed}.toolbar-button svg{display:block;flex-shrink:0}.tileset-tool-icon,.tileset-tool-icon-canvas{display:block;image-rendering:pixelated}[data-theme=dark] .png-tool-icon,[data-theme=terminal] .png-tool-icon{filter:invert(1)}.toolbar-separator{width:1px;height:20px;margin:0 var(--space-1);align-self:center;border-left:1px solid var(--border-subtle)}.toolbar-spacer{flex:1}.toolbar-info{font-size:var(--font-size-xs);color:var(--text-primary)}.map-name{padding:0 var(--space-1);font-size:var(--font-size-xs);color:var(--text-primary)}.toolbar-window-controls{display:flex;align-items:center;gap:2px;margin-left:var(--space-1);padding-left:var(--space-1);border-left:1px solid var(--border-default)}.toolbar-window-controls .window-btn{width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);position:relative;padding:0}.toolbar-window-controls .window-minimize-btn:before{content:"";display:block;width:7px;height:1px;background:currentColor}.toolbar-window-controls .window-restore-btn{overflow:hidden}.toolbar-window-controls .window-restore-btn:before{content:"";position:absolute;width:5px;height:5px;border:1px solid currentColor;bottom:3px;left:3px}.toolbar-window-controls .window-restore-btn:after{content:"";position:absolute;width:5px;height:5px;border:1px solid currentColor;top:3px;right:3px}.toolbar-window-controls .window-close-btn:before,.toolbar-window-controls .window-close-btn:after{content:"";position:absolute;width:8px;height:1px;background:currentColor;top:50%;left:50%}.toolbar-window-controls .window-close-btn:before{transform:translate(-50%,-50%) rotate(45deg)}.toolbar-window-controls .window-close-btn:after{transform:translate(-50%,-50%) rotate(-45deg)}.toolbar-window-controls .window-btn:hover{background:var(--bg-hover)}.toolbar-window-controls .window-close-btn:hover{background:var(--color-error);color:#fff}.toolbar-button-wrapper{position:relative;display:inline-block}.toolbar-button.has-variants:after{content:"";position:absolute;bottom:2px;right:2px;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid var(--text-primary)}.toolbar-dropdown{position:absolute;top:100%;left:0;z-index:200000;min-width:80px;background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1)}.toolbar-dropdown-item{display:block;width:100%;padding:var(--space-0_5) var(--space-1);font-size:var(--font-size-2xs);font-family:inherit;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;white-space:nowrap}.toolbar-dropdown-item:hover{background:var(--accent-primary);color:var(--text-on-accent)}.toolbar-dropdown-item.selected{font-weight:700;background:var(--accent-primary);color:var(--text-on-accent)}.grid-settings-wrapper{position:relative;display:inline-flex;align-items:center}.grid-settings-arrow{display:flex;align-items:center;justify-content:center;width:10px;height:28px;padding:0;border:1px solid transparent;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:6px;line-height:1}.grid-settings-arrow:hover{background:var(--bg-hover)}.grid-settings-dropdown{position:absolute;top:100%;right:0;z-index:200000;width:200px;background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1_5);display:flex;flex-direction:column;gap:var(--space-1)}.grid-settings-row{display:flex;align-items:center;gap:var(--space-1)}.grid-settings-label{font-size:var(--font-size-2xs);color:var(--text-secondary);width:46px;flex-shrink:0}.grid-settings-slider{flex:1;height:14px;cursor:pointer;accent-color:var(--accent-primary)}.grid-settings-value{font-size:var(--font-size-2xs);font-family:var(--font-mono);color:var(--text-secondary);width:46px;text-align:right;flex-shrink:0}.grid-settings-color{width:28px;height:20px;padding:0;border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;background:transparent}.grid-settings-color::-webkit-color-swatch-wrapper{padding:1px}.grid-settings-color::-webkit-color-swatch{border:none;border-radius:2px}.grid-settings-reset{justify-content:flex-end;border-top:1px solid var(--border-subtle);padding-top:var(--space-1);margin-top:var(--space-0_5)}.grid-settings-reset-btn{font-size:var(--font-size-2xs);font-family:inherit;color:var(--text-secondary);background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-0_25) var(--space-1);cursor:pointer}.grid-settings-reset-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.bg-settings-wrapper{position:relative;display:inline-flex;align-items:center}.floating-toolbar .bg-settings-wrapper{display:flex}.bg-settings-dropdown{width:180px}.bg-mode-select{width:100%;padding:var(--space-0_5) var(--space-1);font-size:var(--font-size-2xs);font-family:inherit;background:var(--surface);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer}.bg-mode-select:focus{outline:1px solid var(--accent-primary)}.floating-toolbar .bg-settings-wrapper{flex-direction:column}.floating-toolbar .bg-settings-dropdown{top:0;left:100%;right:auto;margin-left:4px}.wall-preview{display:block;width:48px;height:16px;image-rendering:pixelated;flex-shrink:0}.wall-dropdown{min-width:140px}.wall-dropdown .toolbar-dropdown-item{display:flex;align-items:center;gap:var(--space-1)}.warp-preview{display:block;width:16px;height:16px;image-rendering:pixelated;flex-shrink:0}.warp-dropdown{min-width:140px}.warp-dropdown .toolbar-dropdown-item{display:flex;align-items:center;gap:var(--space-1)}.stamp-dropdown{min-width:140px}.stamp-dropdown .toolbar-dropdown-item{display:flex;align-items:center;gap:var(--space-1)}.stamp-preview-3x3{display:block;width:48px;height:48px;image-rendering:pixelated;flex-shrink:0}.stamp-preview-1x1{display:block;width:16px;height:16px;image-rendering:pixelated;flex-shrink:0}.variant-label{flex:1}.tile-palette{flex:1;min-width:660px;background-color:var(--bg-secondary);border-left:1px solid var(--border-default);display:flex;flex-direction:column;overflow:hidden}.tile-palette.compact{flex:0 0 auto;min-width:0;border-left:none}.palette-canvas-container{flex:1;min-height:0;overflow:auto}.palette-header{padding:var(--space-1) var(--space-1_5);background-color:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default)}.palette-canvas{display:block;cursor:pointer;border:1px solid var(--border-default);background-color:var(--surface);background-image:linear-gradient(45deg,var(--color-neutral-300) 25%,transparent 25%),linear-gradient(-45deg,var(--color-neutral-300) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-neutral-300) 75%),linear-gradient(-45deg,transparent 75%,var(--color-neutral-300) 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.tile-palette:not(.compact) .palette-canvas{margin:var(--space-0_5)}.tile-palette.compact .palette-canvas{width:100%}.palette-info{padding:var(--space-1) var(--space-1_5);color:var(--text-secondary);font-size:var(--font-size-xs);border-top:1px solid var(--border-default)}.tile-palette.compact .palette-info{padding:var(--space-0_5) var(--space-1);font-size:var(--font-size-2xs)}.tile-palette.compact .palette-header{padding:var(--space-0_75) var(--space-1_25);font-size:var(--font-size-xs)}.wall-selector{border-top:1px solid var(--border-default)}.wall-select{width:calc(100% - 24px);margin:var(--space-1) var(--space-1_5);padding:var(--space-1);background-color:var(--bg-primary);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-xs);cursor:pointer}.wall-select:focus{outline:none;border-color:var(--accent-primary)}.wall-select option{background-color:var(--bg-primary);color:var(--text-primary)}.status-bar{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-1);background:var(--surface);border-top:1px solid var(--border-subtle);font-size:var(--font-size-xs);min-height:22px}.status-field{padding:var(--space-px) var(--space-0_75);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);white-space:nowrap}.status-field-coords{min-width:120px}.status-field-tile{min-width:65px}.status-field-zoom-controls{display:flex;align-items:center;gap:var(--space-0_5);margin:0 var(--space-0_5)}.zoom-slider{-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;width:100px}.zoom-slider::-webkit-slider-runnable-track{background:var(--slider-track);height:4px;border-radius:var(--radius-full)}.zoom-slider::-moz-range-track{background:var(--slider-track);height:4px;border-radius:var(--radius-full)}.zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:var(--slider-thumb);border:1px solid var(--border-default);margin-top:-4px}.zoom-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--slider-thumb);border:1px solid var(--border-default)}.zoom-slider::-webkit-slider-thumb:hover{background:var(--slider-thumb-active)}.zoom-slider::-moz-range-thumb:hover{background:var(--slider-thumb-active)}.zoom-btn{width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-size:var(--font-size-xs);cursor:pointer;line-height:1}.zoom-btn:hover:not(:disabled){background:var(--bg-hover)}.zoom-btn:active:not(:disabled){background:var(--bg-active)}.zoom-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.zoom-input{width:42px;padding:var(--space-px) var(--space-0_25);border:1px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text-primary);font-size:var(--font-size-xs);text-align:right;font-family:var(--font-mono)}.zoom-input:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--focus-ring)}.zoom-input::-webkit-inner-spin-button,.zoom-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.zoom-input[type=number]{-moz-appearance:textfield}.zoom-percent-label{font-size:var(--font-size-xs);color:var(--text-secondary)}.zoom-preset-btn{padding:var(--space-px) var(--space-0_5);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-size:var(--font-size-2xs);cursor:pointer;white-space:nowrap;line-height:1}.zoom-preset-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.zoom-preset-btn:active{background:var(--bg-active)}.zoom-preset-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.zoom-preset-btn.active:hover{background:var(--accent-hover)}.status-separator{color:var(--text-secondary);opacity:.5}.status-spacer{flex:1}.ruler-mode-selector{display:flex;align-items:center;gap:2px;margin:0 var(--space-0_5);padding:0 var(--space-0_25);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface)}.ruler-mode-btn{width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;line-height:1}.ruler-mode-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.ruler-mode-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.ruler-mode-btn.active:hover{background:var(--accent-hover)}.ruler-clear-btn{width:auto;padding:0 var(--space-0_5);font-size:var(--font-size-2xs);margin-left:2px;border-left:1px solid var(--border-subtle)}.set-path-btn{margin-left:var(--space-0_5);padding:var(--space-px) var(--space-0_75);font-size:var(--font-size-2xs);font-family:inherit;font-weight:var(--font-weight-semibold);color:var(--text-on-accent);background:var(--accent-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);cursor:pointer;line-height:1}.set-path-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.status-resize-grip{width:16px;height:16px;flex-shrink:0;background:linear-gradient(135deg,transparent 0px,transparent 5px,var(--border-default) 5px,var(--border-default) 6px,transparent 6px,transparent 7px,var(--border-light) 7px,var(--border-light) 8px,transparent 8px),linear-gradient(135deg,transparent 0px,transparent 9px,var(--border-default) 9px,var(--border-default) 10px,transparent 10px,transparent 11px,var(--border-light) 11px,var(--border-light) 12px,transparent 12px),linear-gradient(135deg,transparent 0px,transparent 13px,var(--border-default) 13px,var(--border-default) 14px,transparent 14px,transparent 15px,var(--border-light) 15px,var(--border-light) 16px,transparent 16px);background-size:16px 16px;background-repeat:no-repeat;background-position:bottom right}.update-pill{display:inline-flex;align-items:center;padding:var(--space-px) var(--space-1);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);white-space:nowrap;animation:update-fade-in .3s ease-out}@keyframes update-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.update-checking{color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-subtle)}.update-downloading{color:var(--accent-primary);background:var(--bg-tertiary);border:1px solid var(--accent-primary)}.update-ready{color:var(--text-on-accent);background:var(--accent-primary);border:1px solid var(--accent-primary);cursor:pointer;font-family:inherit}.update-ready:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.map-settings-panel{width:280px;background:var(--bg-primary);border-left:1px solid var(--border-default);overflow-y:auto;display:flex;flex-direction:column}.map-settings-panel.compact{width:auto;border-left:none}.panel-header{padding:var(--space-1_5) var(--space-2);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-default)}.map-settings-panel.compact .panel-header{padding:var(--space-0_75) var(--space-1_25);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.no-map{padding:20px;color:var(--text-tertiary);text-align:center;font-style:italic}.settings-section{padding:var(--space-1_5) var(--space-2);border-bottom:1px solid var(--border-default)}.map-settings-panel.compact .settings-section{padding:var(--space-1) var(--space-1_25)}.section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-1_25)}.map-settings-panel.compact .section-title{font-size:var(--font-size-2xs);margin-bottom:var(--space-0_75)}.setting-row{margin-bottom:var(--space-1_25)}.map-settings-panel.compact .setting-row{margin-bottom:var(--space-0_75)}.setting-label{display:block;font-size:var(--font-size-xs);color:var(--text-primary);margin-bottom:var(--space-0_5)}.map-settings-panel.compact .setting-label{font-size:var(--font-size-2xs);margin-bottom:var(--space-0_25)}.setting-controls{display:flex;align-items:center;gap:var(--space-1)}.setting-slider{flex:1;height:4px;-webkit-appearance:none;background:var(--slider-track);cursor:pointer}.setting-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--slider-thumb);cursor:grab}.setting-slider::-webkit-slider-thumb:active{cursor:grabbing;background:var(--slider-thumb-active)}.setting-input{width:50px;padding:var(--space-0_5) var(--space-0_75);font-size:var(--font-size-xs);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);text-align:center}.map-settings-panel.compact .setting-input{width:40px;padding:var(--space-0_25) var(--space-0_5);font-size:var(--font-size-2xs)}.setting-input:focus{outline:none;border-color:var(--input-focus)}.setting-range{font-size:var(--font-size-2xs);color:var(--text-tertiary);min-width:45px}.map-settings-panel.compact .setting-range{display:none}.setting-text-input{width:100%;padding:var(--space-0_75) var(--space-1);font-size:var(--font-size-xs);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border)}.setting-text-input:focus{outline:none;border-color:var(--input-focus)}.setting-textarea{width:100%;padding:var(--space-0_75) var(--space-1);font-size:var(--font-size-xs);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);resize:vertical;font-family:inherit}.setting-textarea:focus{outline:none;border-color:var(--input-focus)}.setting-select{width:100%;padding:var(--space-0_75) var(--space-1);font-size:var(--font-size-xs);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);cursor:pointer}.setting-select:focus{outline:none;border-color:var(--input-focus)}.setting-checkbox{display:flex;align-items:center}.setting-checkbox .setting-label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:0}.setting-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-primary)}.animation-panel{background:var(--surface);border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;width:100%;flex:1;min-height:0;overflow:hidden}.animation-panel .panel-header{padding:var(--space-1) var(--space-0_5);font-size:var(--font-size-2xs);font-weight:700;color:var(--text-primary);background:var(--surface);border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:center}.toggle-btn{padding:var(--space-px) var(--space-0_5);font-size:var(--font-size-2xs);font-family:inherit;color:var(--text-primary);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer}.toggle-btn:hover{background:var(--bg-hover)}.toggle-btn:active{background:var(--bg-active);border-color:var(--border-default)}.animation-list-container{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--border-default) var(--surface)}.animation-list-container::-webkit-scrollbar{width:8px}.animation-list-container::-webkit-scrollbar-track{background:var(--surface)}.animation-list-container::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-sm)}.animation-list-container::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.animation-canvas{cursor:pointer;display:block}.anim-controls{padding:var(--space-0_5);border-top:1px solid var(--border-default);background:var(--surface);display:flex;flex-direction:column;gap:var(--space-0_5)}.mode-toggle{display:flex;gap:var(--space-1)}.mode-option{display:flex;align-items:center;gap:var(--space-1);cursor:pointer;font-size:var(--font-size-2xs);color:var(--text-primary)}.mode-option input[type=radio]{margin:0;width:10px;height:10px}.offset-row{display:flex;align-items:center;gap:var(--space-1)}.offset-row label{font-size:var(--font-size-2xs);color:var(--text-primary)}.offset-input{width:28px;padding:var(--space-px) var(--space-0_25);font-size:var(--font-size-2xs);font-family:inherit;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm)}.offset-input:disabled{background:var(--surface);color:var(--text-disabled)}.offset-input.error{border-color:var(--color-error, #e53935);background-color:color-mix(in oklch,var(--color-error, #e53935) 10%,var(--input-bg))}.animation-panel .team-selector{padding:var(--space-1)}.animation-panel .team-selector-label{font-size:var(--font-size-2xs);margin-bottom:var(--space-px)}.animation-panel .team-selector-options{gap:0}.animation-panel .team-option{padding:0 var(--space-px);font-size:var(--font-size-2xs)}.animation-panel .team-dot{width:6px;height:6px}.animation-panel .team-name{display:none}.animation-preview{background:var(--bg-secondary)}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-0_75) var(--space-1_25);background:var(--bg-primary);border-bottom:1px solid var(--border-default)}.preview-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.preview-content{display:flex;gap:var(--space-1_25);padding:var(--space-1) var(--space-1_25)}.preview-canvas{flex:0 0 64px;border:1px solid var(--border-default);background:var(--canvas-checker-bg)}.preview-controls{flex:1;display:flex;flex-direction:column;gap:var(--space-0_5);min-width:0}.control-row{display:flex;align-items:center;gap:var(--space-0_75);font-size:var(--font-size-2xs)}.control-row label{color:var(--text-secondary);min-width:36px}.anim-id-input{width:40px;padding:var(--space-0_25) var(--space-0_5);font-size:var(--font-size-2xs);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);text-align:center}.anim-id-input:focus{outline:none;border-color:var(--accent-primary)}.hex-id{color:var(--text-secondary);font-family:monospace}.offset-slider{flex:1;height:3px;-webkit-appearance:none;background:var(--border-default)}.offset-slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;background:var(--accent-primary);cursor:pointer}.offset-val{min-width:20px;text-align:right;color:var(--text-secondary)}.anim-info{font-size:var(--font-size-2xs);color:var(--text-secondary);margin-top:var(--space-0_25)}.use-btn{margin-top:var(--space-0_5);padding:var(--space-0_5) var(--space-1);font-size:var(--font-size-2xs);color:var(--text-on-accent);background:var(--accent-primary);border:none;border-radius:var(--radius-sm);cursor:pointer}.use-btn:hover:not(:disabled){background:var(--accent-hover)}.use-btn:disabled{color:var(--text-disabled);background:var(--surface-light);cursor:not-allowed}.right-sidebar{display:flex;flex-direction:column;height:100%;background-color:var(--bg-secondary);border-left:1px solid var(--border-default);overflow:hidden}.sidebar-section{border-bottom:1px solid var(--border-default)}.sidebar-section:last-child{border-bottom:none}.animation-section{flex:0 0 auto}.tiles-section{flex:1 1 auto;min-height:200px;overflow:hidden}.ruler-notepad-section{flex:0 0 auto}.ruler-notepad{padding:var(--space-1) var(--space-1_5)}.ruler-notepad-header{font-size:var(--font-size-xs);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-0_5)}.ruler-notepad-value{font-size:var(--font-size-sm);font-family:var(--font-mono);color:var(--text-primary);padding:var(--space-0_5) var(--space-0_75);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:var(--space-0_5)}.ruler-notepad-hint{font-size:var(--font-size-xs);color:var(--text-secondary);font-style:italic;padding:var(--space-0_5) 0}.ruler-notepad-coords{font-size:var(--font-size-2xs);font-family:var(--font-mono);color:var(--text-secondary)}.settings-section{flex:0 0 auto;max-height:40%;overflow-y:auto}.minimap{position:absolute;top:8px;right:8px;z-index:200000;background:var(--surface);flex-shrink:0;border:1px solid var(--border-default);box-shadow:var(--shadow-md);border-radius:var(--radius-sm)}.minimap-canvas{display:block;cursor:crosshair;image-rendering:pixelated;image-rendering:crisp-edges;margin:0 auto}body.tile-editor-active .floating-toolbar-container,body.tile-editor-active .minimap{display:none}.tileset-editor{display:flex;height:100%;gap:1px;background:var(--border-default)}.tileset-editor.empty{display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-tertiary);font-size:var(--font-size-sm)}.te-grid-panel{flex:1;display:flex;flex-direction:column;background:var(--bg-secondary);min-width:200px}.te-grid-header{display:flex;flex-direction:column;padding:4px 8px;border-bottom:1px solid var(--border-default);gap:2px}.te-grid-header-row{display:flex;align-items:center;gap:4px}.te-grid-zoom{display:flex;gap:2px}.te-grid-zoom button{padding:1px 6px;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;border-radius:2px}.te-grid-zoom button:hover{background:var(--bg-hover)}.te-grid-zoom button.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.te-grid-scroll{flex:1;overflow:auto;min-height:0;min-width:0}.te-grid-scroll canvas{display:block;image-rendering:pixelated;cursor:pointer}.te-grid-scroll.te-panning{cursor:grabbing}.te-grid-scroll.te-panning canvas{cursor:grabbing;pointer-events:none}.te-grid-scroll.te-pan-ready{cursor:grab}.te-grid-scroll.te-pan-ready canvas{cursor:grab}.te-float-panel{position:fixed;z-index:200001;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:6px;box-shadow:0 8px 32px #0006,0 2px 8px #0003;overflow:hidden}.te-float-titlebar{display:flex;align-items:center;gap:6px;padding:4px 8px;border-bottom:1px solid var(--border-default);height:28px;cursor:grab;user-select:none;background:var(--bg-primary)}.te-float-titlebar:active{cursor:grabbing}.te-drag-icon{color:var(--text-tertiary);flex-shrink:0}.te-resize-e{position:absolute;top:0;right:-4px;width:8px;height:calc(100% - 12px);cursor:ew-resize;z-index:1}.te-resize-s{position:absolute;bottom:-4px;left:0;width:calc(100% - 12px);height:8px;cursor:ns-resize;z-index:1}.te-resize-se{position:absolute;bottom:-4px;right:-4px;width:14px;height:14px;cursor:nwse-resize;z-index:2}.te-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.te-sublabel{font-size:var(--font-size-xs);color:var(--text-tertiary)}.te-modified-badge{font-size:10px;color:var(--color-orange-600, #cc4400);background:#cc44001f;padding:1px 5px;border-radius:3px;margin-left:auto}.te-editor-main{display:flex;align-items:center;justify-content:center;padding:8px;background:var(--bg-primary);flex:1;min-height:0;position:relative;overflow:hidden}.te-editor-scroll{overflow:auto;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.te-pixel-canvas{image-rendering:pixelated;cursor:crosshair;border:1px solid var(--border-default)}.te-zoom-indicator{position:absolute;bottom:4px;right:8px;font-size:10px;color:var(--text-tertiary);pointer-events:none;opacity:.6}.te-float-body{display:flex;flex:1;min-height:0;overflow:hidden}.te-sidebar{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-right:1px solid var(--border-default);background:var(--surface);flex-shrink:0}.te-sidebar-sep{width:24px;height:1px;margin:3px 0;background:var(--border-subtle)}.te-sidebar-color{width:26px;height:24px;padding:0;border:1px solid var(--border-default);border-radius:3px;cursor:pointer;background:none}.te-editor-area{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.te-panel-footer{display:flex;align-items:center;gap:8px;padding:6px 8px;border-top:1px solid var(--border-default)}.te-footer-actions{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.te-tool-btn{display:flex;align-items:center;justify-content:center;width:28px;height:26px;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;border-radius:3px;padding:0;transition:background .1s,color .1s}.te-tool-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.te-tool-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.te-tool-sep{width:1px;height:18px;background:var(--border-default);margin:0 3px}.te-color-swatch{width:18px;height:18px;border:1px solid var(--border-default);border-radius:2px;flex-shrink:0}.te-color-hex{font-size:10px;color:var(--text-tertiary);font-family:monospace}.te-preview-wrap{margin-left:auto}.te-preview-canvas{image-rendering:pixelated;border:1px solid var(--border-default);width:48px;height:48px;display:block}.te-apply-btn{padding:2px 8px;border:1px solid var(--color-green-600, #22aa44);background:transparent;color:var(--color-green-600, #22aa44);font-size:10px;border-radius:3px;cursor:pointer;white-space:nowrap}.te-apply-btn:hover{background:#22aa441f}.te-revert-btn{padding:2px 8px;border:1px solid var(--color-orange-600, #cc4400);background:transparent;color:var(--color-orange-600, #cc4400);font-size:10px;border-radius:3px;cursor:pointer;white-space:nowrap}.te-revert-btn:hover{background:#cc44001f}.te-undo-apply-btn{padding:2px 8px;border:1px solid var(--text-secondary, #888);background:transparent;color:var(--text-secondary, #888);font-size:10px;border-radius:3px;cursor:pointer;white-space:nowrap}.te-undo-apply-btn:hover{background:#8888881f}.te-bg-select{padding:1px 4px;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-secondary);font-size:10px;border-radius:2px;cursor:pointer}.te-bg-color{width:22px;height:20px;padding:0;border:1px solid var(--border-default);border-radius:2px;cursor:pointer;background:none}.te-load-btn{display:flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;border-radius:3px}.te-load-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.te-export-btn{color:var(--color-blue-400, #5588ff)}.tabbed-bottom-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary)}.tab-bar{display:flex;flex-direction:row;height:32px;border-bottom:1px solid var(--border-default);background:var(--bg-secondary)}.tab{padding:var(--space-1) var(--space-2);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:var(--space-0_5);font-size:var(--font-size-sm);font-family:inherit}.tab:hover{background:var(--bg-hover);color:var(--text-primary)}.tab.active{color:var(--text-primary);border-bottom:2px solid var(--accent-primary)}.tab-icon{font-size:var(--font-size-base)}.tab-content{flex:1;overflow:hidden}.tab-content[hidden],body.sprite-editor-active .floating-toolbar-container,body.sprite-editor-active .minimap,body.sprite-editor-active .te-float-panel{display:none}body:not(.sprite-editor-active) .se-float-panel{display:none}.sprite-editor{display:flex;height:100%;gap:1px;background:var(--border-default)}.sprite-editor.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-tertiary);font-size:var(--font-size-sm);gap:6px}.se-hint{font-size:var(--font-size-xs);color:var(--text-tertiary);opacity:.7}.se-grid-panel{flex:1;display:flex;flex-direction:column;background:var(--bg-secondary);min-width:200px}.se-category-bar{display:flex;align-items:center;gap:3px;padding:2px 0;flex-wrap:wrap}.se-filter-icon{color:var(--text-tertiary);flex-shrink:0;margin-right:2px}.se-cat-btn{padding:1px 6px;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-tertiary);font-size:9px;cursor:pointer;border-radius:2px;text-transform:capitalize;transition:background .1s,color .1s,border-color .1s}.se-cat-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.se-cat-btn.active{background:color-mix(in srgb,var(--cat-color) 15%,var(--bg-primary));color:var(--cat-color);border-color:var(--cat-color)}.se-region-list{width:180px;display:flex;flex-direction:column;background:var(--bg-secondary);border-left:1px solid var(--border-default);flex-shrink:0}.se-region-list-header{padding:4px 8px;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-default)}.se-region-list-body{flex:1;overflow-y:auto;min-height:0}.se-region-item{display:flex;align-items:center;gap:4px;width:100%;padding:3px 8px;border:none;background:transparent;color:var(--text-secondary);font-size:10px;cursor:pointer;text-align:left;transition:background .1s}.se-region-item:hover{background:var(--bg-hover)}.se-region-item.active{background:var(--accent-primary);color:#fff}.se-region-item.active .se-region-size{color:#ffffffb3}.se-region-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.se-region-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.se-region-size{font-size:9px;color:var(--text-tertiary);flex-shrink:0}.se-fix-btn{padding:1px 8px;border:1px solid var(--color-orange-600, #cc6600);background:transparent;color:var(--color-orange-600, #cc6600);font-size:10px;font-weight:600;cursor:pointer;border-radius:3px;margin-left:auto;white-space:nowrap}.se-fix-btn:hover{background:#cc66001f}.se-nudge-pad{display:flex;flex-direction:column;align-items:center;gap:1px}.se-nudge-row{display:flex;align-items:center;gap:1px}.se-nudge-btn{width:20px;height:18px;padding:0;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-secondary);font-size:8px;cursor:pointer;border-radius:2px;display:flex;align-items:center;justify-content:center;line-height:1}.se-nudge-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.se-nudge-btn:active{background:var(--accent-primary);color:#fff}.se-nudge-label{font-size:8px;color:var(--text-tertiary);font-family:monospace;min-width:36px;text-align:center}.te-pixel-canvas.te-panning{cursor:grabbing!important}.te-pixel-canvas.te-pan-ready{cursor:grab!important}.se-float-panel .te-editor-scroll{overflow:auto;align-items:flex-start;justify-content:flex-start}.se-float-panel{position:fixed;z-index:200001;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:6px;box-shadow:0 8px 32px #0006,0 2px 8px #0003;overflow:hidden}.ruler-notepad-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.notepad-tab-bar{display:flex;flex-shrink:0;border-bottom:1px solid var(--border-default);background:var(--bg-tertiary)}.notepad-tab{flex:1;padding:var(--space-0_5) var(--space-0_75);font-size:var(--font-size-sm);font-family:inherit;font-weight:var(--font-weight-semibold);color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.notepad-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.notepad-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-primary)}.notepad-tab-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.notepad-textarea{flex:1;width:100%;padding:var(--space-0_75);font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--text-primary);background:var(--notepad-bg);border:none;outline:none;resize:none;overflow-y:auto}.notepad-textarea::placeholder{color:var(--text-secondary);font-style:italic}.set-path-panel-btn{display:block;width:auto;margin:var(--space-0_25) var(--space-1);padding:var(--space-0_25) var(--space-0_75);font-size:var(--font-size-2xs);font-family:inherit;font-weight:var(--font-weight-semibold);color:var(--text-on-accent);background:var(--accent-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);cursor:pointer;text-align:center;flex-shrink:0}.set-path-panel-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.notepad-header{display:flex;align-items:center;justify-content:flex-end;padding:var(--space-0_25) var(--space-0_75);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.notepad-header-actions{display:flex;align-items:center;gap:var(--space-0_5)}.notepad-vis-all-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.notepad-vis-all-btn:hover{background:var(--surface-hover, rgba(255, 255, 255, .1));color:var(--text-primary)}.notepad-action-btn{font-size:var(--font-size-2xs);padding:var(--space-0_25) var(--space-0_75);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.notepad-action-btn:hover{background:var(--surface-hover, rgba(255, 255, 255, .1));color:var(--text-primary)}.notepad-empty-state{display:flex;align-items:center;justify-content:center;flex:1;padding:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-xs);text-align:center;background:var(--notepad-bg)}.notepad-empty-state kbd{display:inline-block;padding:var(--space-0_25) var(--space-0_5);font-size:var(--font-size-2xs);font-family:var(--font-mono);background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);margin:0 var(--space-0_25)}.notepad-entries{flex:1;overflow-y:auto;overflow-x:hidden;background:var(--notepad-bg)}.notepad-entry{padding:var(--space-0_5) var(--space-1);border-bottom:1px solid var(--border-subtle)}.notepad-entry:last-child{border-bottom:none}.notepad-entry.entry-dimmed{opacity:.5}.entry-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-0_25)}.entry-timestamp{font-size:var(--font-size-2xs);color:var(--text-secondary)}.entry-actions{display:flex;align-items:center;gap:var(--space-0_25)}.entry-delete-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-xs);opacity:0;transition:opacity .1s}.notepad-entry:hover .entry-delete-btn{opacity:1}.entry-delete-btn:hover{background:var(--surface-hover, rgba(255, 255, 255, .1));color:var(--text-primary)}.entry-vis-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.entry-vis-btn:hover{color:var(--text-primary)}.entry-vis-btn.entry-hidden{color:var(--text-secondary);opacity:.5}.entry-value{font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--text-primary);padding:var(--space-0_25) var(--space-0_5);background:var(--surface);border-radius:var(--radius-sm);margin-bottom:var(--space-0_25)}.entry-label{font-size:var(--font-size-2xs);color:var(--text-primary);cursor:text;padding:var(--space-0_25) 0}.entry-label-placeholder{color:var(--text-secondary);font-style:italic}.entry-label-input{width:100%;font-size:var(--font-size-2xs);font-family:inherit;color:var(--text-primary);background:var(--surface);border:1px solid var(--border-accent, var(--border-default));border-radius:var(--radius-sm);padding:var(--space-0_25) var(--space-0_5);outline:none;box-sizing:border-box}.entry-value-hidden{opacity:.4}.ship-sticker-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-secondary);border-left:1px solid var(--border-default)}.ssp-header{display:flex;align-items:center;gap:var(--space-0_5);padding:var(--space-0_5) var(--space-0_75);border-bottom:1px solid var(--border-default);background:var(--bg-tertiary);flex-shrink:0}.ssp-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);letter-spacing:.02em}.ssp-spacer{flex:1}.ssp-sources{display:flex;flex-direction:column;gap:var(--space-0_25);padding:var(--space-0_5) var(--space-0_75);border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0}.ssp-source-row{display:flex;align-items:center;gap:var(--space-0_5)}.ssp-source-label{font-size:var(--font-size-2xs);color:var(--text-secondary);font-weight:var(--font-weight-semibold);width:48px;flex-shrink:0;letter-spacing:.04em;text-transform:uppercase}.ssp-source-dropdown{flex:1;min-width:0}.ssp-source-btn{display:flex;align-items:center;gap:var(--space-0_5);width:100%;padding:3px 8px;height:22px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface, rgba(255, 255, 255, .04));color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-2xs);text-align:left}.ssp-source-btn:hover{background:var(--surface-hover, rgba(255, 255, 255, .08));border-color:var(--border-default)}.ssp-source-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ssp-source-caret{color:var(--text-secondary);font-size:10px;line-height:1;flex-shrink:0}.ssp-dropdown-wrap{position:relative}.ssp-patch-dropdown{position:absolute;top:100%;right:0;z-index:1000;min-width:180px;max-height:300px;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border-default);border-radius:4px;box-shadow:0 4px 12px #0000004d;padding:2px 0;margin-top:2px}.ssp-patch-option{display:block;width:100%;padding:4px 10px;border:none;background:transparent;color:inherit;font:inherit;font-size:11px;text-align:left;cursor:pointer;white-space:nowrap}.ssp-patch-option:hover{background:var(--surface-hover, rgba(255, 255, 255, .08))}.ssp-patch-option--active{font-weight:600;color:var(--accent-primary, var(--text-primary))}.ssp-patch-check{margin-right:4px;color:var(--accent-primary, var(--text-primary))}.ssp-patch-dropdown::-webkit-scrollbar{width:6px}.ssp-patch-dropdown::-webkit-scrollbar-track{background:var(--surface)}.ssp-patch-dropdown::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}.ssp-count{font-size:var(--font-size-2xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;margin-right:var(--space-0_25)}.ssp-icon-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.ssp-icon-btn:hover:not(:disabled){background:var(--surface-hover, rgba(255, 255, 255, .08));color:var(--text-primary)}.ssp-icon-btn:disabled{opacity:.35;cursor:not-allowed}.ssp-armed{display:flex;align-items:center;gap:var(--space-0_5);padding:var(--space-0_5) var(--space-0_75);border-bottom:1px solid var(--border-subtle);background:linear-gradient(to right,color-mix(in srgb,var(--team-color, #44bb66) 18%,transparent),transparent);font-size:var(--font-size-2xs);flex-shrink:0}.ssp-armed-dot{width:8px;height:8px;border-radius:50%;background:var(--team-color, #44bb66);box-shadow:0 0 6px var(--team-color, #44bb66);animation:ssp-pulse 1.6s ease-in-out infinite;flex-shrink:0}@keyframes ssp-pulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}.ssp-armed-label{color:var(--text-primary)}.ssp-armed-label strong{color:var(--team-color, #44bb66);font-weight:var(--font-weight-semibold)}.ssp-armed-hint{color:var(--text-secondary);font-style:italic;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ssp-disarm{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.ssp-disarm:hover{color:var(--text-primary);background:#ffffff14}.ssp-grid-wrap{flex:1;overflow:auto;padding:var(--space-0_5);position:relative}.ssp-grid-wrap::-webkit-scrollbar{width:8px;height:8px}.ssp-grid-wrap::-webkit-scrollbar-track{background:var(--surface)}.ssp-grid-wrap::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-sm)}.ssp-canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges;cursor:pointer}.ssp-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-secondary);font-size:var(--font-size-xs);font-style:italic;pointer-events:none;z-index:2}.ssp-sticker-selection{display:flex;align-items:center;gap:var(--space-0_5);padding:var(--space-0_5) var(--space-0_75);border-top:1px solid var(--border-subtle);font-size:var(--font-size-2xs);color:var(--text-secondary);flex-shrink:0}.tileset-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.tileset-title-bar{display:flex;align-items:center;gap:var(--space-0_5);flex-shrink:0}.tileset-view-tab{padding:2px 8px;border:none;background:transparent;color:var(--text-secondary);font:inherit;font-size:11px;cursor:pointer;border-bottom:2px solid transparent}.tileset-view-tab:hover{color:var(--text-primary)}.tileset-view-tab--active{color:var(--text-primary);font-weight:600;border-bottom-color:var(--accent-primary, #4488ff)}.tileset-title-spacer{flex:1}.tileset-change-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:1px solid var(--border-subtle);border-radius:3px;background:transparent;color:inherit;cursor:pointer;opacity:.7}.tileset-change-btn:hover{opacity:1;background:var(--surface-hover, rgba(255, 255, 255, .1))}.tileset-dropdown-wrap{position:relative}.tileset-patch-dropdown{position:absolute;top:100%;left:0;z-index:1000;min-width:180px;max-height:300px;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border-default);border-radius:4px;box-shadow:0 4px 12px #0000004d;padding:2px 0;margin-top:2px}.tileset-patch-option{display:block;width:100%;padding:4px 10px;border:none;background:transparent;color:inherit;font:inherit;font-size:11px;text-align:left;cursor:pointer;white-space:nowrap}.tileset-patch-option:hover{background:var(--surface-hover, rgba(255, 255, 255, .1))}.tileset-patch-option--active{font-weight:600;color:var(--accent, var(--text-primary))}.tileset-patch-check{margin-right:4px;color:var(--accent, var(--text-primary))}.tileset-patch-dropdown::-webkit-scrollbar{width:6px}.tileset-patch-dropdown::-webkit-scrollbar-track{background:var(--surface)}.tileset-patch-dropdown::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}.tileset-panel-body{flex:1;display:flex;flex-direction:row;overflow:hidden}.tileset-palette-section{width:660px;flex-shrink:0;height:100%;overflow-y:auto;border-right:1px solid var(--border-default)}.tileset-palette-section::-webkit-scrollbar{width:8px}.tileset-palette-section::-webkit-scrollbar-track{background:var(--surface)}.tileset-palette-section::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-sm)}.tileset-palette-section::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.notepad-column{flex:1;min-width:240px;height:100%;background:var(--bg-secondary);overflow:hidden}.stickers-column{flex:0 0 656px;height:100%;overflow:hidden}.trace-image-window{display:flex;flex-direction:column;height:100%;border:1px solid var(--border-default);border-radius:var(--radius-sm);overflow:hidden;background:transparent;box-shadow:var(--shadow-md)}.trace-image-window~*{pointer-events:auto!important}.trace-image-title-bar{display:flex;align-items:center;height:22px;padding:0 6px;user-select:none;cursor:default;gap:6px;flex-shrink:0;background:var(--bg-tertiary);color:var(--text-primary);pointer-events:auto}.trace-image-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.trace-opacity-label{font-size:10px;min-width:24px;text-align:right;color:var(--text-secondary)}.trace-opacity-slider{width:60px;cursor:pointer;pointer-events:auto;accent-color:var(--title-bar-bg)}.trace-close-btn:before,.trace-close-btn:after{content:"";position:absolute;width:8px;height:1px;background:currentColor;top:50%;left:50%}.trace-close-btn:before{transform:translate(-50%,-50%) rotate(45deg)}.trace-close-btn:after{transform:translate(-50%,-50%) rotate(-45deg)}.trace-close-btn:hover{background:var(--color-error);color:#fff}.trace-image-content{pointer-events:none;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent}.trace-image-content img{width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none}.workspace{position:relative;width:100%;height:100%;overflow:hidden;background:var(--bg-secondary)}.workspace.empty{display:flex;align-items:center;justify-content:center}.empty-workspace-message{color:var(--text-secondary);text-align:center;user-select:none;font-size:14px}.child-window{display:flex;flex-direction:column;height:100%;border:1px solid var(--border-default);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-primary);box-shadow:var(--shadow-sm)}.child-window.active{border-color:var(--title-bar-bg);box-shadow:var(--shadow-md)}.child-window.maximized{border:none;border-radius:0;box-shadow:none}.window-title-bar{display:flex;align-items:center;height:22px;padding:0 6px;user-select:none;cursor:default;gap:6px;flex-shrink:0;background:var(--bg-tertiary);color:var(--text-primary)}.child-window.active .window-title-bar{background:var(--title-bar-bg);color:var(--text-on-accent)}.window-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.window-controls{display:flex;align-items:center;gap:2px;flex-shrink:0}.window-btn{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:inherit;cursor:pointer;border-radius:var(--radius-sm);position:relative;padding:0}.window-minimize-btn:before{content:"";display:block;width:7px;height:1px;background:currentColor}.window-maximize-btn:before{content:"";display:block;width:7px;height:7px;border:1px solid currentColor}.window-restore-btn{overflow:hidden}.window-restore-btn:before{content:"";position:absolute;width:5px;height:5px;border:1px solid currentColor;bottom:3px;left:3px}.window-restore-btn:after{content:"";position:absolute;width:5px;height:5px;border:1px solid currentColor;top:3px;right:3px}.window-close-btn:before,.window-close-btn:after{content:"";position:absolute;width:8px;height:1px;background:currentColor;top:50%;left:50%}.window-close-btn:before{transform:translate(-50%,-50%) rotate(45deg)}.window-close-btn:after{transform:translate(-50%,-50%) rotate(-45deg)}.child-window.active .window-close-btn:hover{background:var(--color-error);color:#fff}.child-window:not(.active) .window-close-btn:hover{background:var(--color-error);color:#fff}.child-window.active .window-minimize-btn:hover,.child-window.active .window-maximize-btn:hover,.child-window.active .window-restore-btn:hover{background:var(--surface-hover-overlay)}.child-window:not(.active) .window-minimize-btn:hover,.child-window:not(.active) .window-maximize-btn:hover,.child-window:not(.active) .window-restore-btn:hover{background:var(--bg-hover)}.window-content{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.react-draggable-dragging .window-content{pointer-events:none}.minimized-bars-container{position:absolute;top:0;left:0;right:0;display:flex;flex-wrap:wrap;gap:4px;padding:4px;z-index:500;pointer-events:none}.minimized-bar{width:160px;height:22px;display:flex;align-items:center;gap:2px;padding:0 4px 0 6px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:default;user-select:none;pointer-events:auto;box-shadow:var(--shadow-xs)}.minimized-bar.active{background:var(--title-bar-bg);color:var(--text-on-accent);border-color:var(--title-bar-bg)}.minimized-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer}.minimized-controls{display:flex;align-items:center;gap:2px;flex-shrink:0}.minimized-bar .window-close-btn:hover{background:var(--color-error);color:#fff}.minimized-bar .window-restore-btn:hover{background:var(--surface-hover-overlay)}.minimized-bar:not(.active) .window-restore-btn:hover{background:var(--bg-hover)}.overview-export-dialog{border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);background:var(--bg-primary);color:var(--text-primary);padding:0;width:420px;height:auto;max-height:80vh;max-width:none;overflow:visible;position:relative}.overview-export-dialog[open]{display:flex;flex-direction:column;overflow:hidden}.overview-export-dialog::backdrop{background-color:var(--overlay-bg)}.overview-export-content{display:flex;flex-direction:column;gap:var(--space-1_5);padding:var(--space-2);overflow-y:auto;max-height:calc(80vh - 90px)}.overview-export-content .section-heading{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-heading);margin:0 0 var(--space-0_5) 0;padding-bottom:2px;border-bottom:1px solid var(--border-subtle)}.export-radio-group{display:flex;flex-direction:column;gap:var(--space-0_5)}.export-radio-label{display:flex;align-items:center;gap:var(--space-0_75);font-size:var(--font-size-xs);color:var(--text-primary);cursor:pointer;user-select:none}.export-radio-label input[type=radio]{accent-color:var(--accent-primary);margin:0}.export-radio-label.disabled{color:var(--text-disabled);cursor:default}.export-radio-hint{font-size:var(--font-size-2xs);color:var(--text-tertiary);margin-left:22px}.export-aspect-presets{display:flex;flex-wrap:wrap;gap:var(--space-0_5)}.export-aspect-btn{background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:var(--space-0_25) var(--space-1);font-size:var(--font-size-xs);font-family:inherit;color:var(--text-primary);cursor:pointer;user-select:none;min-width:48px;text-align:center}.export-aspect-btn:hover{background:var(--bg-hover)}.export-aspect-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.export-select-row{display:flex;align-items:center;gap:var(--space-0_75)}.export-select-row label{font-size:var(--font-size-xs);color:var(--text-primary);flex-shrink:0}.export-select{flex:1;padding:var(--space-0_25) var(--space-0_75);font-size:var(--font-size-xs);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);cursor:pointer;color-scheme:inherit}.export-select:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--focus-ring)}.export-color-row{display:flex;align-items:center;gap:var(--space-0_75);margin-top:var(--space-0_5)}.export-color-row label{font-size:var(--font-size-xs);color:var(--text-primary)}.export-color-input{width:60px;height:26px;padding:1px;border:1px solid var(--input-border);border-radius:var(--radius-sm);cursor:pointer;background:var(--input-bg)}.export-color-hex{width:80px;padding:var(--space-0_25) var(--space-0_5);font-size:var(--font-size-xs);font-family:inherit;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);text-align:center}.export-color-hex:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--focus-ring)}.export-browse-row{display:flex;align-items:center;gap:var(--space-0_75);margin-top:var(--space-0_5)}.export-browse-filename{font-size:var(--font-size-2xs);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.export-status{font-size:var(--font-size-xs);padding:var(--space-0_5) var(--space-0_75);border-radius:var(--radius-sm);text-align:center}.export-status.success{background:var(--status-success-bg, rgba(0, 200, 100, .15));color:var(--status-success-text, #4caf50)}.export-status.error{background:var(--status-error-bg, rgba(200, 0, 0, .15));color:var(--status-error-text, #f44336)}:root{--color-neutral-0: oklch(100% 0 0);--color-neutral-50: oklch(98% .015 50);--color-neutral-100: oklch(95% .015 50);--color-neutral-200: oklch(90% .015 50);--color-neutral-300: oklch(80% .012 50);--color-neutral-500: oklch(60% .01 50);--color-neutral-700: oklch(35% .008 50);--color-neutral-900: oklch(20% 0 0);--color-blue-400: oklch(70% .12 250);--color-blue-500: oklch(60% .15 250);--color-blue-600: oklch(50% .15 250);--color-red-500: oklch(55% .22 25);--color-orange-600: oklch(55% .17 50);--space-0: 0;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-7: 56px;--space-8: 64px;--space-9: 72px;--space-10: 80px;--space-px: 1px;--space-0_25: 2px;--space-0_5: 4px;--space-0_75: 6px;--space-1_25: 10px;--space-1_5: 12px;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "Cascadia Code", Menlo, Monaco, "Courier New", monospace;--font-size-2xs: 9px;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--radius-none: 0;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--surface: var(--color-neutral-0);--surface-secondary: var(--color-neutral-50);--surface-light: var(--color-neutral-100);--text-primary: var(--color-neutral-900);--text-secondary: var(--color-neutral-700);--text-tertiary: var(--color-neutral-500);--text-disabled: var(--color-neutral-300);--bg-primary: var(--color-neutral-0);--bg-secondary: var(--color-neutral-50);--bg-tertiary: var(--color-neutral-100);--bg-hover: var(--color-neutral-100);--bg-active: var(--color-neutral-200);--bg-window: var(--color-neutral-0);--border-default: var(--color-neutral-300);--border-subtle: var(--color-neutral-200);--border-light: var(--color-neutral-100);--border-dark: var(--color-neutral-700);--border-emphasis: var(--color-neutral-500);--accent-primary: var(--color-blue-500);--accent-hover: var(--color-blue-600);--accent-active: var(--color-blue-600);--scrollbar-track: var(--color-neutral-100);--scrollbar-thumb: var(--color-neutral-300);--scrollbar-thumb-hover: var(--color-neutral-500);--input-bg: var(--color-neutral-0);--input-border: var(--color-neutral-300);--input-focus: var(--color-blue-500);--slider-track: var(--color-neutral-300);--slider-thumb: var(--color-neutral-0);--slider-thumb-active: var(--color-neutral-50);--workspace-bg: var(--color-neutral-200);--text-on-accent: #ffffff;--text-warning: var(--color-orange-600);--color-error: var(--color-red-500);--gradient-title-bar: linear-gradient(to right, oklch(28% .15 265), var(--accent-primary));--surface-hover-overlay: rgba(255, 255, 255, .2);--overlay-bg: rgba(0, 0, 0, .5);--focus-ring: rgba(16, 132, 208, .2);--canvas-checker-bg: var(--color-neutral-300);--canvas-out-of-map-bg: oklch(82% .008 250);--canvas-map-border: rgba(100, 120, 160, .6);--title-bar-bg: var(--color-neutral-700);--text-heading: var(--color-neutral-700);--notepad-bg: var(--color-neutral-100)}[data-theme=dark]{color-scheme:dark;--surface: oklch(18% .01 260);--surface-secondary: oklch(15% .01 260);--surface-light: oklch(22% .01 260);--text-primary: oklch(92% 0 0);--text-secondary: oklch(70% 0 0);--text-tertiary: oklch(55% 0 0);--text-disabled: oklch(35% 0 0);--bg-primary: oklch(14% .01 260);--bg-secondary: oklch(16% .01 260);--bg-tertiary: oklch(20% .01 260);--bg-hover: oklch(24% .01 260);--bg-active: oklch(28% .01 260);--bg-window: oklch(16% .01 260);--border-default: oklch(30% .01 260);--border-subtle: oklch(24% .01 260);--border-light: oklch(20% .01 260);--border-dark: oklch(40% .01 260);--border-emphasis: oklch(45% .01 260);--scrollbar-track: oklch(18% .01 260);--scrollbar-thumb: oklch(35% .01 260);--scrollbar-thumb-hover: oklch(45% .01 260);--input-bg: oklch(12% .01 260);--input-border: oklch(30% .01 260);--slider-track: oklch(30% .01 260);--slider-thumb: oklch(40% .01 260);--slider-thumb-active: oklch(45% .01 260);--workspace-bg: oklch(12% .01 260);--text-on-accent: #ffffff;--text-heading: oklch(75% .1 250);--title-bar-bg: oklch(22% .03 260);--gradient-title-bar: linear-gradient(to right, oklch(22% .08 260), oklch(30% .12 250));--surface-hover-overlay: rgba(255, 255, 255, .1);--overlay-bg: rgba(0, 0, 0, .7);--focus-ring: rgba(80, 160, 255, .3);--canvas-checker-bg: oklch(25% .01 260);--canvas-out-of-map-bg: oklch(10% .015 260);--canvas-map-border: rgba(120, 160, 220, .5);--notepad-bg: oklch(16% .01 260);--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .2);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .3), 0 1px 2px 0 rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .2)}[data-theme=terminal]{color-scheme:dark;--surface: oklch(8% .02 160);--surface-secondary: oklch(6% .02 160);--surface-light: oklch(12% .02 160);--text-primary: oklch(85% .15 160);--text-secondary: oklch(65% .12 160);--text-tertiary: oklch(50% .08 160);--text-disabled: oklch(30% .05 160);--bg-primary: oklch(5% .01 160);--bg-secondary: oklch(7% .02 160);--bg-tertiary: oklch(10% .02 160);--bg-hover: oklch(14% .03 160);--bg-active: oklch(18% .04 160);--bg-window: oklch(6% .01 160);--border-default: oklch(22% .04 160);--border-subtle: oklch(16% .03 160);--border-light: oklch(12% .02 160);--border-dark: oklch(35% .06 160);--border-emphasis: oklch(40% .06 160);--accent-primary: oklch(70% .14 190);--accent-hover: oklch(60% .14 190);--accent-active: oklch(55% .14 190);--scrollbar-track: oklch(8% .02 160);--scrollbar-thumb: oklch(25% .05 160);--scrollbar-thumb-hover: oklch(35% .06 160);--input-bg: oklch(4% .01 160);--input-border: oklch(22% .04 160);--input-focus: oklch(70% .14 190);--slider-track: oklch(20% .04 160);--slider-thumb: oklch(30% .06 160);--slider-thumb-active: oklch(35% .06 160);--workspace-bg: oklch(3% 0 0);--text-on-accent: oklch(85% .13 85);--text-heading: oklch(82% .13 85);--title-bar-bg: oklch(10% .04 160);--gradient-title-bar: linear-gradient(to right, oklch(10% .06 160), oklch(20% .1 170));--surface-hover-overlay: rgba(0, 255, 128, .1);--overlay-bg: rgba(0, 0, 0, .8);--focus-ring: rgba(0, 255, 180, .2);--canvas-checker-bg: oklch(15% .03 160);--canvas-out-of-map-bg: oklch(3% .01 160);--canvas-map-border: oklch(45% .08 160);--notepad-bg: oklch(6% .02 160);--shadow-xs: 0 1px 2px 0 rgba(0, 80, 40, .15);--shadow-sm: 0 1px 3px 0 rgba(0, 80, 40, .2), 0 1px 2px 0 rgba(0, 80, 40, .15);--shadow-md: 0 4px 6px -1px rgba(0, 80, 40, .25), 0 2px 4px -1px rgba(0, 80, 40, .15);--shadow-lg: 0 10px 15px -3px rgba(0, 80, 40, .3), 0 4px 6px -2px rgba(0, 80, 40, .15);--shadow-xl: 0 20px 25px -5px rgba(0, 80, 40, .3), 0 10px 10px -5px rgba(0, 80, 40, .15);--font-sans: ui-monospace, "Cascadia Code", Menlo, Monaco, "Courier New", monospace}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-base);-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100%}.app-content{flex:1;display:flex;flex-direction:row;overflow:hidden}.main-area{position:relative;width:100%;height:100%;overflow:hidden;display:flex;flex-direction:column}.win95-frame-inset{border-top:1px solid var(--border-dark);border-left:1px solid var(--border-dark);border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.panel-title-bar{background:var(--bg-tertiary);color:var(--text-primary);padding:0 8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-family:var(--font-sans);height:28px;display:flex;align-items:center;user-select:none;cursor:default;gap:8px;flex-shrink:0}.resize-handle-vertical{flex:0 0 4px;background:var(--surface);cursor:col-resize;position:relative;border:1px solid var(--border-default)}.resize-handle-vertical:before{content:"";position:absolute;inset:0 -4px}.resize-handle-horizontal{flex:0 0 4px;background:var(--surface);cursor:row-resize;position:relative;border:1px solid var(--border-default)}.collapse-button{display:flex;align-items:center;justify-content:center;width:24px;height:14px;background-color:var(--scrollbar-track);border:1px solid var(--border-default);cursor:pointer;padding:0;z-index:1}.collapse-button:hover{background-color:var(--bg-hover)}.collapse-button:after{content:"";display:block;width:0;height:0;border-style:solid}.collapse-button.collapsed:after{border-width:0 4px 5px 4px;border-color:transparent transparent var(--text-secondary) transparent}.collapse-button.expanded:after{border-width:5px 4px 0 4px;border-color:var(--text-secondary) transparent transparent transparent}[data-panel-resize-handle-id],[data-panel-id],[data-panel-group-id]{transition:none!important}[data-panel-id],[data-panel-group-id]{min-height:0;min-width:0}.update-banner{display:flex;align-items:center;justify-content:center;padding:var(--space-0_5) var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0;animation:banner-slide-in .3s ease-out}@keyframes banner-slide-in{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.update-banner-checking{background:var(--bg-tertiary);color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.update-banner-downloading{background:var(--bg-tertiary);color:var(--accent-primary);border-bottom:1px solid var(--accent-primary)}.update-banner-ready{background:var(--accent-primary);color:var(--text-on-accent);border:none;border-bottom:1px solid var(--accent-hover);cursor:pointer;font-family:inherit;width:100%}.update-banner-ready:hover{background:var(--accent-hover)}
