/* SPARTA spatial planning surface; extends the existing sales studio. */
/* Easy mode keeps placement and the resulting structure together. */
.easy-studio .structure-head p{margin-top:9px;font-size:.9375rem}
.easy-startbar{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:12px 16px;border:1px solid #d4e2e7;border-radius:12px;background:#fff;margin-bottom:18px;font-size:.9375rem}
.easy-startbar>span{color:#566b76}
.easy-startbar>div{display:flex;gap:6px;margin-right:auto}
.easy-startbar button{font-size:.875rem}
.easy-help{background:#e8f5f7;border:1px solid #b9dce3;border-radius:12px;padding:20px 24px;margin-bottom:18px;line-height:1.8}
.easy-help ol{padding-right:24px;margin:10px 0}
.easy-help p{font-size:.875rem;margin:8px 0}
.easy-bases{padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:18px}
.easy-bases-title{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.easy-bases-title span{font-size:.875rem;color:var(--muted)}
.easy-base-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.easy-base-grid button{padding:8px 8px 14px;display:flex;flex-direction:column;align-items:center;gap:6px;background:#f8fafb}
.easy-base-grid button:hover{border-color:#177e98;background:#ecf7f9}
.easy-base-grid svg{border-radius:6px;max-height:145px}
.easy-base-grid span{font-size:.8125rem;color:var(--muted)}
.easy-studio .rig-workspace{grid-template-columns:310px minmax(0,1fr)}
.easy-gallery-heading{padding:18px 16px 13px}
.easy-gallery-heading h2{font-size:1.0625rem}
.easy-gallery-heading p{font-size:.875rem;color:var(--muted);margin-top:6px}
.easy-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}
.easy-card{display:flex;flex-direction:column;align-items:stretch;text-align:right;gap:7px;padding:10px;background:#fff;min-width:0;cursor:grab;border:1px solid #dce5e8;border-radius:10px;transition:border-color .15s,box-shadow .15s}
.easy-card:hover,.easy-card.picked{border-color:#0e899e;box-shadow:0 0 0 2px #16879721}
.easy-card:active{cursor:grabbing}
.easy-card img,.easy-no-photo{height:88px;width:100%;object-fit:contain;background:#f7f9fa;border-radius:6px;pointer-events:none}
.easy-no-photo{display:grid;place-items:center;font-size:2rem;color:#7496a4}
.easy-card strong{font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
.easy-card>span:not(.easy-no-photo),.easy-card small{font-size:.75rem;color:#607780;line-height:1.5}
.easy-card>b{font-size:.75rem;color:#0b7288;margin-top:auto;padding-top:3px}
.easy-card:disabled{opacity:.65;cursor:default;background:#f0f3f4;box-shadow:none}
.easy-card:disabled>b{color:#697982}
.easy-size-toggle{width:100%;display:flex;justify-content:space-between;border:0;border-top:1px solid var(--line);border-radius:0;padding:16px;font-size:.875rem;background:#f8fafb}
.easy-sizes{padding:16px;display:grid;gap:12px;border-top:1px solid var(--line)}
.easy-sizes label,.easy-sizes input,.easy-sizes select,.easy-sizes p{font-size:.8125rem}
.easy-scene-tip{font-size:.8125rem;color:#b9cbd2}
.rig-placement{padding:15px 18px;background:#1e343b;border-top:1px solid #38626a;color:#dcefee;line-height:1.5}
.placement-idle{display:block;text-align:center;font-size:.875rem;color:#bbd9dd}
.placement-title{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:12px}
.placement-title>div{display:grid;gap:4px}
.placement-title span{font-size:.8125rem;color:#bcd2d5}
.placement-title button{background:transparent;border-color:#5d7c84;color:#dce8e8;font-size:.8125rem;padding:6px 10px}
.placement-targets{display:flex;flex-wrap:wrap;gap:8px}
.placement-targets button{background:#ddf6ef;color:#144c4a;border-color:#90c9bd;padding:9px 12px;font-size:.875rem;min-width:112px;text-align:right}
.placement-targets button:hover{background:#fff4cb;border-color:#d8ba6b}
.placement-targets small{display:block;font-size:.75rem;opacity:.8;margin-top:2px}
.placement-note{font-size:.75rem;color:#b2cbd0;margin-top:12px}
.easy-inspector{padding:17px 18px;background:#fff;border-top:3px solid #d3ad4b}
.easy-inspector.empty{border-top:0;padding:17px 20px;color:#476570}
.easy-inspector.empty p{font-size:.875rem;margin-top:6px;line-height:1.6}
.easy-selected{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:13px}
.easy-selected>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.easy-selected .overline{letter-spacing:0;font-size:.75rem;margin:0;direction:rtl}
.easy-selected strong{font-size:.9375rem;line-height:1.5}
.easy-selected button{padding:4px 10px;border:0;font-size:1.25rem;background:transparent}
.easy-component-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.easy-component-actions button{font-size:.8125rem;padding:9px 12px}
.easy-inspector>label{max-width:260px;font-size:.875rem}
.easy-inspector .height-editor{margin-bottom:8px}
.easy-project-fields{display:grid;grid-template-columns:1fr 1fr minmax(240px,1.1fr);gap:15px;margin-top:20px;align-items:start}
.easy-project-fields>label{font-size:.875rem}
.easy-review{padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:.875rem;line-height:1.6}
.easy-review>summary{cursor:pointer}
.easy-review label,.easy-review p,.easy-review button{margin-top:12px;font-size:.8125rem}
@media(max-width:1180px){.easy-studio .rig-workspace{grid-template-columns:275px minmax(0,1fr)}.easy-gallery{padding:10px;gap:8px}.easy-startbar{gap:12px}.easy-project-fields{grid-template-columns:1fr 1fr}.easy-review{grid-column:1/-1}}
@media(max-width:900px){.easy-studio .rig-workspace{grid-template-columns:1fr}.easy-studio .easy-controls{order:1}.easy-studio .rig-scene{order:2}.easy-studio .rig-control-scroll{max-height:330px}.easy-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.easy-card img,.easy-no-photo{height:65px}.easy-gallery-heading{padding:14px}.easy-startbar>span{font-size:.8125rem}.easy-base-grid svg{max-height:115px}}
@media(max-width:600px){.easy-startbar{gap:10px;padding:12px}.easy-startbar>span{display:none}.easy-startbar>div{gap:4px}.easy-startbar button{padding:9px 10px}.easy-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.easy-card{padding:8px;gap:5px}.easy-card img,.easy-no-photo{height:60px}.easy-card strong{font-size:.8125rem}.easy-card>span:not(.easy-no-photo),.easy-card small,.easy-card>b{font-size:.6875rem}.easy-studio .rig-control-scroll{max-height:255px}.easy-base-grid{grid-template-columns:1fr}.easy-base-grid button{display:grid;grid-template-columns:110px 1fr;text-align:right;column-gap:12px}.easy-base-grid svg{grid-row:1/3;height:85px}.easy-base-grid span{align-self:start}.easy-base-grid strong{align-self:end}.easy-help{padding:16px;font-size:.875rem}.easy-scene-tip{width:100%}.easy-project-fields{gap:12px}.easy-selected strong{font-size:.875rem}.rig-placement{padding:14px}.placement-targets button{flex:1 1 100px}.easy-inspector{padding:15px}.easy-studio .structure-head .actions{width:100%}}
.structure-mode .layout{grid-template-columns:175px minmax(0,1fr)}
.structure-mode .cart{display:none}
.structure-mode .mobile-summary{display:block;margin-right:auto}
.structure-mode .project-status{margin-right:0}
.structure-mode main{padding:24px 28px}
.structure-head{align-items:center;margin-bottom:18px}
.structure-head h1{font-size:1.85rem}
.structure-head .overline{margin-bottom:5px}
.structure-meta{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) minmax(330px,1.2fr);gap:18px;align-items:end;margin-bottom:20px}
.preset-group>span{display:block;font-size:.875rem;font-weight:600;line-height:1.5;margin-bottom:6px}
.preset-group>div{display:flex;gap:5px;flex-wrap:wrap}
.preset-group button{font-size:.875rem;padding:11px 9px}
.rig-workspace{display:grid;grid-template-columns:325px minmax(0,1fr);gap:18px;align-items:start}
.rig-controls{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;min-width:0}
.rig-tabs{display:flex;border-bottom:1px solid var(--line);background:#e7ecee;padding:5px;gap:2px}
.rig-tabs button{flex:1;border:0;background:transparent;font-size:.875rem;padding:12px 6px}
.rig-tabs button.active{background:white;box-shadow:0 2px 4px #10202a13;color:#086682;font-weight:700}
.rig-control-scroll{max-height:720px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#a1b4bd transparent}
.rig-section{padding:18px;border-bottom:1px solid var(--line);display:grid;gap:14px}
.rig-section:last-child{border-bottom:0}
.rig-section h3{font-size:1rem}
.rig-section .panel-title{margin-bottom:0}
.rig-section input,.rig-section select{font-size:.875rem;padding:10px 9px}
.rig-section .notice{margin:0}
.rig-section .muted{font-size:.875rem}
.rig-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end}
.rig-two>button{font-size:.875rem;min-height:43px}
.frame-bay{background:#f2f5f6;border:1px solid #e3e9eb;padding:13px;border-radius:8px;display:grid;gap:10px}
.frame-bay>strong{font-size:.875rem}
.frame-bay-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.875rem}
.frame-bay-title button{font-size:.8125rem;padding:7px 8px;background:#fff}
.post-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;direction:ltr}
.post-map button{display:flex;justify-content:space-between;align-items:center;gap:5px;font-size:.875rem;direction:rtl;padding:10px}
.post-map button b{font-weight:500;font-variant-numeric:tabular-nums;color:var(--muted)}
.post-map button.active,.component-row.active{border-color:#057899;background:#eaf5f9;box-shadow:inset -3px 0 #0589b3}
.component-row{display:flex;gap:10px;align-items:center;justify-content:space-between;text-align:right;width:100%;font-size:.875rem;line-height:1.5;padding:12px;min-width:0}
.component-row>span{min-width:0}
.component-row small{display:block;font-size:.8125rem;color:var(--muted);line-height:1.5;margin-top:4px}
.component-row b{white-space:nowrap;color:#16627a;font-size:.875rem;flex-shrink:0}
.rig-scene{border:1px solid #24343b;border-radius:12px;overflow:hidden;min-width:0;background:#111b20}
.scene-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #ffffff18;color:#f2f5f6;flex-wrap:wrap}
.scene-toolbar>div:first-child{display:flex;flex-direction:column;gap:5px;flex-shrink:0}
.scene-toolbar b{font-size:1rem}
.scene-toolbar span{font-size:.8125rem;color:#aebec5}
.view-buttons{display:flex;gap:4px;flex-wrap:wrap}
.view-buttons button{background:#26333a;border-color:#394c55;color:#e2eaee;font-size:.875rem;padding:7px 9px}
.view-buttons button:hover{background:#374b55;border-color:#99b2bd}
.scene-editbar{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:12px 16px;background:#17242b;border-bottom:1px solid #30404a}
.scene-editbar button{font-size:.875rem;padding:9px 11px;color:#d2dfe4;border-color:#3a4b54;background:#22333d}
.scene-modes,.scene-tools{display:flex;gap:5px;flex-wrap:wrap}
.scene-modes button.active{background:#dfbb61;color:#142128;border-color:#dfbb61;font-weight:700}
.scene-layers{display:flex;gap:16px;padding:11px 17px;align-items:center;flex-wrap:wrap;color:#c3d0d7;font-size:.875rem;background:#122027;border-bottom:1px solid #263941}
.scene-layers label{display:flex;gap:7px;align-items:center;font-weight:400;cursor:pointer}
.scene-layers input{width:16px;height:16px;padding:0;margin:0;accent-color:#d3ad4b}
.scene-layers .layer-note{margin-right:auto;font-size:.8125rem;color:#a0b4bf}
.rig-wide .rig-workspace{grid-template-columns:minmax(0,1fr)}
.rig-wide .rig-controls,.rig-wide .structure-meta{display:none}
.rig-wide #rig-canvas{height:65vh;min-height:400px}
#rig-canvas{display:block;width:100%;height:clamp(390px,53vh,620px);touch-action:none;cursor:grab}
#rig-canvas:active{cursor:grabbing}
#rig-canvas:focus-visible{outline-offset:-4px}
.scene-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:13px 18px;font-size:.8125rem;line-height:1.6;color:#b1c1c8;background:#17242b;border-top:1px solid #ffffff0e}
.rig-inspector{padding:20px;background:#fff;border-top:3px solid #d3ad4b;min-height:165px}
.inspector-title{display:flex;gap:14px;align-items:center;margin-bottom:16px;min-width:0}
.inspector-title img{width:70px;height:60px;object-fit:contain}
.inspector-title>div{min-width:0}
.inspector-title .overline{letter-spacing:0;font-size:.8125rem;direction:rtl;margin-bottom:3px}
.inspector-title .sku{font-size:.8125rem}
.inspector-fields{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.inspector-fields>label{flex:1 1 115px;max-width:270px}
.inspector-fields>button{font-size:.875rem;min-height:43px}
.inspector-fields select,.inspector-fields input{font-size:.875rem}
.height-editor{padding:13px 15px;background:#f0f5f7;border:1px solid #d9e5e9;border-radius:8px;margin:0 0 17px}
.height-editor>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:.875rem;line-height:1.5}
#rig-live-height{color:#146780;font-weight:700;font-variant-numeric:tabular-nums}
.height-slider{display:flex;align-items:center;gap:12px;direction:ltr;margin:10px 0}
.height-slider input{padding:0;accent-color:#15728e;height:25px;border:0;background:transparent}
.height-slider button{padding:7px 10px;font-size:.875rem;flex-shrink:0;font-variant-numeric:tabular-nums}
.height-editor>.muted{font-size:.8125rem}
.assembly-visual{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,1fr);align-items:center;gap:20px;border:1px solid #e0e7ea;border-radius:9px;margin:15px 0;overflow:hidden;background:#f6f8f9}
.rig-summary-svg{display:block;width:100%;height:auto}
.assembly-visual-meta{display:flex;flex-direction:column;gap:7px;padding:16px;font-size:.875rem;line-height:1.6}
.assembly-visual-meta strong{font-size:1rem;margin-bottom:3px}
.assembly-visual-meta small{font-size:.8125rem;color:#586e77;margin-top:7px;line-height:1.6}
.danger-text{color:#954730}
.structure-bottom{margin-top:20px;display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,2fr);gap:18px;align-items:start}
.structure-spec{display:flex;flex-direction:column;gap:7px;background:#e6ecef;border-radius:9px;padding:18px;font-size:.875rem;line-height:1.6}
.structure-spec>strong{font-size:1rem;margin-bottom:2px}
.structure-review{background:white;border:1px solid var(--line);border-radius:9px;padding:8px 18px}
.structure-review>summary{color:var(--ink);font-size:.9375rem;padding:12px 0}
.structure-review[open]{padding-bottom:15px}
.structure-review>p{margin-top:12px}
.structure-mode .commit-bar{margin-top:18px}
@media(min-width:1600px){.structure-mode .layout{grid-template-columns:195px minmax(0,1fr)}.rig-workspace{grid-template-columns:350px minmax(0,1fr)}.rig-control-scroll{max-height:800px}.structure-mode main{padding:28px 38px}}
@media(max-width:1180px){.structure-mode .layout{grid-template-columns:155px minmax(0,1fr)}.structure-mode main{padding:22px 18px}.rig-workspace{grid-template-columns:285px minmax(0,1fr);gap:12px}.structure-meta{grid-template-columns:1fr 1fr}.preset-group{grid-column:1/-1}.rig-section{padding:15px}.scene-toolbar{padding:13px}.scene-toolbar>div:first-child{flex-direction:row;gap:10px;align-items:center}.scene-foot{padding:12px}.inspector-title img{width:50px;height:50px}.rig-inspector{padding:15px}.structure-bottom{grid-template-columns:1fr 1.5fr}.structure-mode .brand-title{display:none}}
@media(max-width:900px){.rig-workspace{grid-template-columns:minmax(0,1fr)}.rig-controls{order:2}.rig-scene{order:1}.rig-control-scroll{max-height:none}.rig-tabs{position:sticky;top:0}.rig-section{padding:18px}.post-map{grid-template-columns:repeat(4,minmax(0,1fr))}.structure-mode .layout{grid-template-columns:140px minmax(0,1fr)}.structure-head{align-items:flex-start;flex-wrap:wrap}.structure-head .actions{gap:5px}.structure-bottom{grid-template-columns:1fr}.structure-spec{flex-direction:row;flex-wrap:wrap;gap:12px}.structure-mode .sidebar{padding:18px 8px}.structure-mode .sparta-mark img{width:120px}#rig-canvas{height:390px}.component-row{max-width:100%}}
@media(max-width:760px){.structure-mode .layout{display:block}.structure-mode main{padding:20px 14px}.structure-mode .sidebar{padding:6px 10px}.structure-mode .tab-row{width:100%}.structure-mode .tab-row button{padding:10px 9px;flex:1}.structure-mode .project-status{display:none}.structure-meta{gap:12px}.structure-head h1{font-size:1.75rem}.structure-head .actions button{padding:8px 10px}.preset-group button{padding:10px;flex:1}.preset-group>div{gap:5px}.rig-inspector{min-height:140px}.scene-toolbar{gap:10px}.scene-toolbar>div:first-child{width:100%;justify-content:space-between}.view-buttons{width:100%}.view-buttons button{flex:1;padding:8px 6px}.scene-foot{font-size:.8125rem}.post-map{grid-template-columns:repeat(2,minmax(0,1fr))}.structure-mode .commit-bar{align-items:stretch;flex-direction:column;gap:12px}.structure-mode .commit-bar>button{width:100%}.structure-review>summary{font-size:.875rem}#rig-canvas{height:360px}}
@media(prefers-reduced-motion:reduce){.rig-workspace *{scroll-behavior:auto}}
@media(max-width:760px){.scene-editbar{padding:11px}.scene-editbar button{font-size:.875rem;padding:8px}.scene-layers{gap:10px;padding:10px 12px}.scene-layers .layer-note{width:100%;margin:0}.height-editor{padding:11px}.assembly-visual{grid-template-columns:1fr;gap:0}.assembly-visual-meta{padding:14px 18px}.assembly-visual-meta strong{margin:0}.rig-wide #rig-canvas{height:55vh;min-height:330px}}
@media print{#print-area .print-assembly{break-inside:avoid;margin:16px 0 25px;padding-bottom:15px;border-bottom:1px solid #bdc9ce}#print-area .print-assembly h2{margin-bottom:5px}#print-area .assembly-visual{display:block;border:1px solid #cbd5da;background:#fff;margin:10px 0;break-inside:avoid}#print-area .rig-summary-svg{height:auto;width:100%;max-height:320px}#print-area .assembly-visual-meta{padding:10px 14px;display:flex;flex-direction:row;flex-wrap:wrap;gap:7px 20px;font-size:9pt;border-top:1px solid #d8e0e4}#print-area .assembly-visual-meta strong{font-size:10pt;width:100%;margin:0}#print-area .assembly-visual-meta small{font-size:9pt;margin:0;width:100%}}

.easy-edit-notice{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.easy-edit-notice button{font-size:.8125rem;padding:8px 10px}
