.visual-controls:has([data-view=space]){justify-content:flex-end}.visual-selector[hidden],.visual-space[hidden]{display:none}
.cube-space{position:relative;background:radial-gradient(ellipse at 35% 38%,#c6741510,transparent 65%);color:var(--text,#e5ded7);min-width:0}
.cube-space [hidden]{display:none!important}.cube-space-toolbar{display:flex;justify-content:space-between;gap:12px;padding:16px 18px 10px;flex-wrap:wrap}
.cube-space-context{font-size:10px;line-height:1.6;color:var(--muted,#ac9885);margin:0;padding:0 19px 13px;overflow-wrap:anywhere}
.cube-space-modes,.cube-space-actions{display:flex;align-items:center;gap:5px}.cube-space button{padding:7px 10px;border:1px solid transparent;border-radius:8px;font:inherit;font-size:11px;color:var(--muted,#a69a90);background:transparent;cursor:pointer}
.cube-space button:hover{background:#af682814;color:var(--text,#ead8c8)}.cube-space button:focus-visible,.cube-space select:focus-visible,.cube-space canvas:focus-visible{outline:2px solid #ec985d;outline-offset:3px}
.cube-space button[aria-pressed=true]{color:#da8d54;border-color:#d5843d38;background:#b16b2520}.cube-space button:disabled{opacity:.45;cursor:default}
.cube-space-selectors{display:flex;gap:12px;flex-wrap:wrap;padding:3px 18px 14px}.cube-space label{font-size:10px;color:var(--muted,#a69a90)}.cube-space-selectors label{display:flex;align-items:center;gap:8px}
.cube-space select{max-width:190px;padding:7px 9px;border-radius:7px;border:1px solid var(--border,#ffffff20);color:var(--text,#ddd);background:var(--paper,#13110f);font:inherit;font-size:11px}
.cube-space-layout{display:grid;grid-template-columns:minmax(0,1fr) 205px;min-height:420px}.cube-space-stage{position:relative;min-width:0;height:430px;isolation:isolate;overflow:hidden}.cube-space canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.cube-space canvas:active{cursor:grabbing}
.cube-space-axis{position:absolute;left:0;top:0;pointer-events:none;font:10px/1.2 var(--mono,monospace);color:#c88a5e;padding:4px 6px;white-space:nowrap;background:#08060499;border-radius:4px}
.cube-space-hint{position:absolute;bottom:8px;left:16px;right:16px;text-align:center;font-size:10px;color:var(--muted,#9f9085);pointer-events:none;opacity:.8}
.cube-space-inspector{border-left:1px solid #bb91651a;padding:18px 18px 18px 15px;min-width:0;background:linear-gradient(150deg,#ffffff02,transparent)}
.cube-space-observation{display:flex;flex-direction:column;gap:8px}.cube-space-observation select{width:100%;max-width:100%}.cube-space-detail{padding-top:28px;overflow-wrap:anywhere}.cube-space-eyebrow{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#c78e63}.cube-space-value{display:block;font-family:var(--display,inherit);font-size:30px;font-weight:400;letter-spacing:-.05em;line-height:1.2;margin:9px 0 4px;font-variant-numeric:tabular-nums}.cube-space-unit{color:var(--muted,#a69a90);font-size:11px}
.cube-space-detail dl{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;font-size:10px;line-height:1.4;margin:23px 0}.cube-space-detail dt{color:var(--muted,#a69a90)}.cube-space-detail dd{margin:0;text-align:right}.cube-space-cell-status{font-size:9px;color:#c5a381;border:1px solid #bf7b452c;border-radius:5px;padding:4px 6px}.cube-space-citation,.cube-space-cell-note{font-size:10px;line-height:1.6;color:var(--muted,#a99c92)}
.cube-space-legend{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:14px 19px;border-top:1px solid #c6946720;font-size:10px;color:var(--muted,#baa592)}.cube-space-scale{display:flex;align-items:center;gap:12px}.cube-space-scale i{display:block;width:88px;height:5px;border-radius:8px;background:linear-gradient(90deg,#67300a,#fcbc4b)}.cube-space-scale i.neutral{background:#ad6c34}.cube-space-notice{padding:0 19px 17px;margin:0;font-size:10px;color:var(--muted,#a99c92);line-height:1.65}.cube-space-fallback{padding:32px;font-size:13px;color:var(--muted,#aaa)}
.cube-space[data-mode=guide] .cube-space-layout{grid-template-columns:1fr}.cube-space[data-mode=guide] .cube-space-stage{height:470px}
.cube-space:fullscreen{background:#080706;overflow:auto;padding:18px;box-sizing:border-box}.cube-space:fullscreen .cube-space-stage{height:calc(100vh - 230px);min-height:380px}.cube-space:fullscreen .cube-space-layout{grid-template-columns:minmax(0,1fr) 280px}.cube-space:fullscreen[data-mode=guide] .cube-space-layout{grid-template-columns:1fr}.cube-space::backdrop{background:#000}
@media(max-width:700px){.cube-space-layout{grid-template-columns:1fr}.cube-space-stage{height:350px}.cube-space-inspector{border-left:0;border-top:1px solid #bb91651a;display:grid;grid-template-columns:150px 1fr;gap:18px}.cube-space-detail{padding-top:0}.cube-space-detail dl{margin:16px 0}.cube-space[data-mode=guide] .cube-space-stage{height:370px}.cube-space:fullscreen .cube-space-layout{grid-template-columns:1fr}.cube-space-value{font-size:26px}}
@media(prefers-contrast:more){.cube-space-axis{background:#000;color:#fff}.cube-space-inspector{border-color:currentColor}.cube-space-notice,.cube-space-hint{color:inherit;opacity:1}}
/* Saved construction is the readable entry point; 3D remains an inspection view. */
.cube-space{border:1px solid var(--border,#ffffff18);border-radius:14px;overflow:hidden;background:var(--paper,#11100e)}
.cube-space-layout{grid-template-columns:minmax(0,1fr) 240px}.cube-space-toolbar{padding:16px 18px}.cube-space-modes{gap:4px;flex-wrap:wrap}
.cube-space-modes button{border:1px solid var(--border,#ffffff18);padding:9px 12px}.cube-space-modes button[aria-pressed=true]{background:#bf85491b;border-color:#bf854970;color:var(--text,#eee0d0)}
.cube-space-selectors{border-top:1px solid var(--border,#ffffff15);border-bottom:1px solid var(--border,#ffffff15);padding:14px 18px;align-items:flex-start}
.cube-dimension-controls{display:flex;flex-wrap:wrap;gap:10px 14px}.cube-axis-choice{padding-right:10px;border-right:1px solid var(--border,#ffffff15)}
.cube-layer-spacing{min-width:150px}.cube-layer-spacing input{width:100px;accent-color:#bf8549}
.cube-space[data-mode=construction] .cube-space-stage{height:auto;min-height:420px;overflow:visible}
.cube-construction{padding:24px 22px 18px}.cube-construction-header h4{font-size:20px;font-weight:500;line-height:1.3;letter-spacing:-.025em;margin:9px 0}
.cube-construction-eyebrow{font:9px/1.4 var(--mono,monospace);letter-spacing:.16em;color:var(--muted,#b29d87)}
.cube-construction p{font-size:12px;line-height:1.75;color:var(--muted,#a99c92);margin:9px 0 14px}
.cube-construction-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:20px 0 24px}
.cube-construction-steps button{background:var(--paper,#13110f);border:1px solid var(--border,#ffffff20);padding:11px 4px;font-size:11px;border-radius:7px}
.cube-construction-steps button[aria-pressed=true]{border-color:#c7925d;color:var(--text,#eddbc6);box-shadow:inset 0 -2px #c7925d}
.cube-construction-body>h4{font-size:14px;margin:0 0 8px;font-weight:600}.cube-construction-body>h5{font:11px/1.4 var(--mono,monospace);margin:18px 0 8px;color:var(--muted,#b39d86)}
.cube-dimension-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.cube-dimension-card{padding:15px 14px;border:1px solid var(--border,#ffffff20);border-top:3px solid #b09a7c;border-radius:8px;min-width:0;background:linear-gradient(135deg,#ffffff03,transparent)}
.cube-dimension-card[data-axis=X]{border-top-color:#729cb2}.cube-dimension-card[data-axis=Y]{border-top-color:#ca9b58}.cube-dimension-card[data-axis=Z]{border-top-color:#a28ab6}.cube-dimension-card[data-axis=fixed]{border-top-color:#76a797}
.cube-dimension-card>span{font:9px/1.3 var(--mono,monospace);letter-spacing:.08em;color:var(--muted,#a99c92)}.cube-dimension-card strong{display:block;font-size:14px;font-weight:500;margin-top:8px;text-transform:capitalize}
.cube-dimension-card p{font-size:11px;margin:8px 0;overflow-wrap:anywhere}.cube-dimension-card small{font-size:10px;color:#76a797}
.cube-construction p.cube-construction-equation{padding:13px 14px;border:1px dashed var(--border,#ffffff30);border-radius:7px;font:11px/1.7 var(--mono,monospace);color:var(--text,#e0d1be);overflow-wrap:anywhere}
.cube-construction p.cube-construction-caption{font-size:10px;border-top:1px solid var(--border,#ffffff18);padding-top:15px;margin:20px 0 0}
.cube-matrix-scroll{overflow:auto;max-height:360px;border:1px solid var(--border,#ffffff20);border-radius:8px}.cube-matrix{border-collapse:collapse;font:11px/1.5 var(--mono,monospace);width:100%}
.cube-matrix th{font-weight:400;padding:10px;text-align:left;white-space:nowrap;background:var(--paper,#16130f);color:var(--muted,#b6a087)}.cube-matrix thead{position:sticky;top:0;z-index:1}
.cube-matrix td{border:1px solid var(--border,#ffffff12);padding:4px;min-width:80px;text-align:center}.cube-matrix .cube-matrix-cell{display:block;width:100%;min-height:36px;padding:8px;border:1px solid transparent;background:#bb864315;color:var(--text,#eddbc6);font:inherit;border-radius:4px}
.cube-matrix .cube-matrix-cell[data-missing=true]{border:1px dashed var(--border,#ffffff35);background:transparent;color:var(--muted,#a99c92);font-size:9px}.cube-matrix .cube-matrix-cell[data-selected=true]{border:1px solid #d5a56d;background:#d5a56d22}
.cube-source-list{display:flex;flex-direction:column;gap:7px}.cube-source-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--border,#ffffff18);border-radius:7px}.cube-source-list code{font:10px/1.5 var(--mono,monospace);overflow-wrap:anywhere;min-width:0}.cube-source-list button{flex-shrink:0;border-color:var(--border,#ffffff20)}
.cube-check-list{display:grid;gap:8px}.cube-check{font:10px/1.7 var(--mono,monospace);padding:12px;border:1px solid var(--border,#ffffff20);border-radius:7px;overflow-wrap:anywhere}
.cube-member-label{position:absolute;left:0;top:0;pointer-events:none;font:9px/1.3 var(--mono,monospace);color:var(--text,#e0d1be);padding:3px 5px;background:var(--paper,#11100e);border:1px solid var(--border,#ffffff20);border-radius:3px;opacity:.94;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cube-space-inspector{background:linear-gradient(145deg,#bb854708,transparent);padding:22px 18px}.cube-space-value{font-size:34px}.cube-space-detail>button{display:block;margin-top:12px;border-color:var(--border,#ffffff24);text-align:left}
@media(max-width:850px){.cube-space-layout{grid-template-columns:1fr}.cube-space-inspector{border-left:0;border-top:1px solid var(--border,#ffffff20);display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px}.cube-space-detail{padding-top:0}.cube-construction{padding:20px 16px}.cube-space-stage{height:400px}}
@media(max-width:480px){.cube-dimension-map{grid-template-columns:1fr}.cube-space-inspector{display:block}.cube-space-detail{padding-top:20px}.cube-construction-steps button{font-size:10px}.cube-space-selectors label{flex-wrap:wrap}.cube-space select{max-width:145px}}
