.editor-root{color:#ddd;z-index:70;background:#0a0a1a;flex-direction:column;font-family:Courier New,monospace;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.editor-toolbar{background:#05050f;border-bottom:1px solid #0ff4;flex:none;align-items:center;gap:6px;padding:6px 8px;font-size:12px;display:flex}.editor-toolbar .spacer{flex:1}.editor-toolbar button{color:#ddd;font:inherit;cursor:pointer;background:#111;border:1px solid #333;padding:6px 10px}.editor-toolbar button:disabled{opacity:.4;cursor:not-allowed}.editor-toolbar button.active,.editor-toolbar button.primary{color:#0ff;background:#0ff2;border-color:#0ff}.editor-body{flex:1;min-height:0;display:flex}.editor-outline,.editor-inspector{box-sizing:border-box;background:#08081a;padding:8px;font-size:11px;overflow:auto}.editor-outline{border-right:1px solid #222;width:220px}.editor-inspector{border-left:1px solid #222;width:240px}.editor-preview{touch-action:none;background:#03030a;flex:1;min-width:0;position:relative;overflow:hidden}.editor-preview canvas{width:100%;height:100%;display:block}.editor-overlay{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.editor-root.compact .editor-outline,.editor-root.compact .editor-inspector{z-index:5;width:min(280px,80vw);transition:transform .2s;position:absolute;top:38px;bottom:0;transform:translate(-105%)}.editor-root.compact .editor-inspector{left:auto;right:0;transform:translate(105%)}.editor-root.compact .editor-outline.open,.editor-root.compact .editor-inspector.open{transform:translate(0)}.editor-fab{z-index:6;background:#0009;border:1px solid #0ff8;border-radius:6px;gap:6px;padding:4px;display:none;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.editor-root.compact .editor-fab{display:flex}.editor-empty{color:#667;text-align:center;justify-content:center;align-items:center;height:100%;padding:16px;display:flex}.outline-root .group-label{color:#666;letter-spacing:.1em;text-transform:uppercase;margin:8px 0 2px;font-size:9px}.outline-root .outline-row{cursor:pointer;color:#ccc;border-radius:3px;padding:4px 6px}.outline-root .outline-row:hover{background:#ffffff08}.outline-root .outline-row.selected{color:#0ff;background:#0ff2;border-left:2px solid #0ff;padding-left:4px}.outline-root .indent{padding-left:10px}.inspector-title{color:#0ff;letter-spacing:.08em;margin:0 0 8px;font-size:12px}.field-row{flex-direction:column;gap:3px;margin-bottom:8px;font-size:11px;display:flex}.field-row label{color:#889;text-transform:uppercase;letter-spacing:.05em;font-size:10px}.field-row input,.field-row select,.field-row textarea{color:#ddd;font:inherit;background:#111;border:1px solid #333;min-height:28px;padding:4px 6px;font-size:12px}.field-row input:focus,.field-row select:focus,.field-row textarea:focus{border-color:#0ff;outline:none}.field-row input[type=color]{width:50px;height:30px;padding:2px}.field-row button.danger{color:#f68;background:#300;border:1px solid #f684;padding:6px 10px}.editor-toolbar .palette-btn{color:#ddd;background:#111;border:1px solid #333;padding:6px 10px}.editor-toolbar .palette-btn.active{color:#0ff;background:#0ff3;border-color:#0ff;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{box-shadow:0 0 8px #0ff8}}.editor-toolbar .tool-btn.primary{color:#0ff;background:#0ff2;border-color:#0ff}.outline-row .warn{color:#fc3;margin-left:4px}.issues{background:#2a1f00;border:1px solid #fc38;border-radius:4px;margin-top:12px;padding:8px}.issues h4{color:#fc3;margin:0 0 4px;font-size:11px}.issues ul{color:#ddd;margin:0;padding-left:16px;font-size:11px}.editor-dialog-backdrop{z-index:1000;background:#000000b3;justify-content:center;align-items:center;font-family:Courier New,monospace;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.editor-dialog{color:#ddd;background:#0a0a1a;border:1px solid #0ff6;border-radius:6px;max-width:min(440px,90vw);padding:18px 20px}.editor-dialog h3{color:#0ff;margin:0 0 8px;font-size:15px}.editor-dialog p{margin:0 0 14px;font-size:13px;line-height:1.4}.editor-dialog .dialog-buttons{justify-content:flex-end;gap:8px;display:flex}.editor-dialog .dialog-buttons button{color:#ddd;cursor:pointer;font:inherit;background:#111;border:1px solid #333;min-height:36px;padding:8px 14px}.editor-dialog .dialog-buttons button.primary{color:#0ff;background:#0ff2;border-color:#0ff}.editor-dialog .dialog-buttons button.danger{color:#f68;background:#300;border-color:#f684}.outline-row.add-seg{color:#0ff;text-align:center;cursor:pointer;border:1px dashed #0ff6;margin-top:6px}.outline-row.add-seg:hover{background:#00ffff15}.nudge-grid{grid-template-columns:repeat(3,36px);justify-content:center;gap:2px;margin-top:8px;display:grid}.nudge-grid button{color:#ddd;font:inherit;cursor:pointer;background:#111;border:1px solid #333;min-height:36px}.nudge-grid button:hover{background:#222}.editor-root{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.editor-toolbar button{min-width:36px;min-height:36px}.editor-dialog .dialog-buttons button{min-height:44px}.outline-row:focus-visible{outline-offset:2px;outline:2px solid #0ff}.editor-toolbar button:focus-visible{outline-offset:2px;outline:2px solid #0ff}.field-row input:focus-visible{outline-offset:2px;outline:2px solid #0ff}.field-row select:focus-visible{outline-offset:2px;outline:2px solid #0ff}.field-row textarea:focus-visible{outline-offset:2px;outline:2px solid #0ff}.editor-dialog button:focus-visible{outline-offset:2px;outline:2px solid #0ff}.editor-toolbar button.blocked{opacity:.55;cursor:not-allowed}
