.workshop,.game-host{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#18243a;color:#e1eaf8;font-size:12px;position:relative}
.workshop-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:7px;background:#22324d;border-bottom:1px solid #526485;flex-shrink:0}
.workshop .ui-button,.game-host .ui-button{padding:4px 9px;min-height:26px;background:#31476a;color:#edf4ff;border:1px solid #7189ab;border-radius:4px;font-size:12px}
.workshop .ui-button.primary{background:#225da0}.workshop button:disabled{opacity:.4}.workshop button:hover:not(:disabled){filter:brightness(1.2)}
.workshop-body{display:flex;flex:1;min-height:0}.workshop-sidebar{width:230px;flex-shrink:0;overflow:auto;padding:9px;background:#1e2b43;border-right:1px solid #526485}
.workshop-field{display:flex;flex-direction:column;gap:3px;margin:6px 0}.workshop input,.workshop select{width:100%;min-width:0;background:#132137;color:#edf4ff;border:1px solid #617599;border-radius:3px;padding:4px;font:inherit}.workshop input[type=color]{height:29px;padding:2px}.workshop summary{cursor:pointer;font-weight:600;padding:5px 0}
.workshop-section-title{margin:12px 0 5px;font-weight:bold}.workshop-object-tools{display:flex;flex-wrap:wrap;gap:4px}.workshop-objects{max-height:145px;overflow:auto;margin:7px 0;border:1px solid #455979;min-height:35px}
.workshop-object{display:block;text-align:left;width:100%;padding:6px 8px;border:0;background:transparent;color:inherit}.workshop-object.selected{background:#335984}.workshop-object-inspector{border-bottom:1px solid #526485;padding:7px 0 12px}.workshop-variable{padding:5px;margin:7px 0;background:#142138}
.workshop-center{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.workshop-scene{display:flex;flex-direction:column;height:43%;min-height:130px;flex-shrink:0;overflow:hidden;background:#10192b;border-bottom:1px solid #526485}.scene-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding:5px 8px;background:#22324d;flex-shrink:0}.scene-zoom-status{min-width:64px;text-align:center;font-variant-numeric:tabular-nums}.scene-hint{font-size:11px;color:#c0d0e5}.scene-viewport{flex:1;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:none}.scene-surface{position:relative}.workshop-scene canvas{display:block;position:absolute;max-width:none;max-height:none;touch-action:none;outline:none;box-shadow:0 0 0 1px #667c9d}.scene-viewport.can-pan canvas{cursor:grab}.scene-viewport.panning,.scene-viewport.panning canvas{cursor:grabbing}
.workshop-pane-resizer{position:relative;flex:0 0 8px;background:#18243a;cursor:col-resize;touch-action:none;outline-offset:-2px}.workshop-pane-resizer::after{content:"";position:absolute;left:3px;top:calc(50% - 18px);height:36px;border-left:2px dotted #8299bc}.workshop-pane-resizer:hover,.workshop-pane-resizer.dragging,.workshop-pane-resizer:focus-visible{background:#365578}
.workshop-pane-resizer[aria-orientation=horizontal]{width:100%;cursor:row-resize}.workshop-pane-resizer[aria-orientation=horizontal]::after{left:calc(50% - 18px);top:3px;width:36px;height:0;border-left:0;border-top:2px dotted #8299bc}
.recipe-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0 14px}.recipe-note{color:#c0d0e5}
.workshop-graph{flex:1;min-height:0;display:flex;flex-direction:column}.graph-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:7px;background:#263750}.graph-toolbar select{width:145px}.graph-hint{font-size:11px;color:#c0d0e5}.graph-layout{display:flex;flex:1;min-height:0;min-width:0}.graph-view{flex:1;overflow:auto;min-width:120px;background:#101c30}.graph-board{position:relative;background-image:radial-gradient(#53627a 1px,transparent 1px);background-size:16px 16px;min-width:100%;min-height:100%}.graph-board>p{padding:15px}.graph-inspector{width:200px;flex-shrink:0;overflow:auto;padding:9px;background:#1e2b43;border-left:1px solid #526485}.graph-inspector>small{display:block;margin:4px 0;color:#aabdd9}
.graph-node{position:absolute;width:185px;min-height:85px;border:1px solid #7b91ad;border-radius:6px;background:#2a3b58;box-shadow:0 3px 8px #0006}.graph-node.selected{border:2px solid #8fd7ff}.graph-node.event{background:#3c3964}.graph-node-header{display:block;width:100%;padding:7px;border:0;border-radius:6px 6px 0 0;background:#ffffff10;color:inherit;text-align:left;font-weight:bold;cursor:grab;touch-action:none}.graph-node-id{display:block;padding:2px 8px;color:#c2cee0;font-size:10px}.graph-input,.graph-output{border:0;background:transparent;color:#d0e5ff;padding:5px;cursor:crosshair;font:inherit}.graph-input{position:absolute;left:0;top:40px}.graph-ports{display:flex;align-items:flex-end;flex-direction:column}.graph-output.wiring{background:#276b92}.graph-disconnect{display:block;color:#ffcfad;background:transparent;border:1px solid #66799b;margin:6px 0;text-align:left;padding:4px;font:inherit;word-break:break-word}.graph-wires{position:absolute;width:100%;height:100%;pointer-events:none;overflow:visible}.graph-wires path{stroke:#93cded;fill:none;stroke-width:2}
.workshop-status{padding:6px 9px;background:#22324d;border-top:1px solid #526485;flex-shrink:0;white-space:pre-wrap;max-height:85px;overflow:auto}.workshop-sheet{position:absolute;z-index:10;inset:12% 12%;overflow:auto;padding:16px;background:#22324d;border:1px solid #8798b3;border-radius:7px;box-shadow:0 10px 50px #000b;color:#edf4ff}.workshop-sheet .sheet-heading{display:flex;justify-content:space-between;align-items:center;padding:0 0 10px;background:none;color:inherit}.workshop-sheet .sheet-heading button{background:transparent;border:0;color:inherit;font-size:22px}.workshop-sheet p{line-height:1.5}.workshop-file-list{display:flex;flex-direction:column;gap:5px}.workshop-file-list .file-picker-row,.workshop-error{color:inherit;background:#304666;border:1px solid #6b7f9f;padding:9px;text-align:left;white-space:pre-wrap}.workshop-error{color:#ffdeac}.workshop-sheet .dialog-actions{margin-top:15px}
.game-stage{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;min-width:0;padding:10px;overflow:hidden;background:#0e1726}.game-stage canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;outline:none}.game-status{flex:1;white-space:pre-wrap}
.start-group-heading{padding:8px 12px 4px;font-size:11px;font-weight:bold;border-top:1px solid #526485;margin-top:5px;opacity:.85}
