/* GUIDON FIX11CM · Venue Design Studio v2 */
.venue-design-shell{max-width:none!important}.venue-design-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 0 18px;padding:6px 0}.venue-design-heading h1{margin:4px 0 9px;color:#081d36;font:700 36px/1.05 Georgia,serif}.venue-design-heading>div:first-child>p:last-child{max-width:900px;margin:0;color:#64758a;line-height:1.55}.venue-heading-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.venue-design-status{display:grid;grid-template-columns:1.4fr .8fr .8fr .9fr;gap:10px;margin-bottom:16px}.venue-design-status>div{display:grid;gap:4px;padding:12px 14px;border:1px solid #dce3ea;border-radius:10px;background:#fff}.venue-design-status span{color:#778598;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.venue-design-status strong{color:#10263e;font-size:14px}.venue-status-saved{grid-template-columns:1fr auto}.venue-status-saved span{grid-column:1}.venue-status-saved strong{grid-column:1}.venue-status-saved small{grid-column:2;grid-row:1/3;align-self:center;color:#64758a;font-size:10px;line-height:1.35;border-left:1px solid #e3e7eb;padding-left:12px;max-width:105px}
.venue-studio-grid{display:grid;grid-template-columns:260px minmax(620px,1fr) 270px;gap:14px;align-items:start}.venue-tool-panel{display:grid;gap:12px;position:sticky;top:16px}.venue-tool-section,.venue-canvas-panel{border:1px solid #dbe2ea;border-radius:14px;background:#fff;box-shadow:0 7px 24px rgba(7,26,51,.045)}.venue-tool-section{padding:15px}.venue-tool-section h2{margin:3px 0 12px;color:#0a2039;font:700 19px/1.2 Georgia,serif}.venue-tool-section .eyebrow,.venue-canvas-toolbar .eyebrow{margin:0;color:#c28d1c;font-size:10px;letter-spacing:.12em}.venue-room-inputs,.venue-inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.venue-tool-section label{display:grid;gap:5px;color:#23364d;font-size:11px;font-weight:800}.venue-field-label{display:block;margin:2px 0 6px;color:#23364d;font-size:11px;font-weight:800}.venue-tool-section input,.venue-tool-section select{box-sizing:border-box;width:100%;min-height:38px;border:1px solid #cfd8e3;border-radius:8px;background:#fff;padding:7px 9px;color:#13263c;font:inherit}.venue-snap-control{margin-top:10px}.venue-add-feature{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.venue-full-button{width:100%;margin-top:9px}.venue-helper{margin:9px 0 0;color:#718095;font-size:11px;line-height:1.45}.venue-inspector-grid .wide{grid-column:1/-1}.venue-inspector-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.venue-inspector-actions .danger-action{grid-column:1/-1}.danger-action{color:#a62121!important;border-color:#efc8c8!important;background:#fff!important}.venue-reset-section{border-color:#eadede}.venue-segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px}.venue-segmented button{min-height:38px;border:1px solid #ccd6e1;border-radius:8px;background:#fff;color:#18314c;font-weight:800;cursor:pointer}.venue-segmented button.active{border-color:#0b2947;background:#0b2947;color:#fff}.venue-color-legend{display:grid;gap:6px;margin:10px 0}.venue-color-legend span{display:flex;align-items:center;gap:8px;color:#64748b;font-size:11px;font-weight:700}.venue-color-legend i{width:15px;height:15px;border:1px solid #a8b4c0;border-radius:50%;background:#edf1f5}.venue-color-legend i[data-cat="reserved"]{background:#f2bd38;border-color:#c28d1c}.venue-color-legend i[data-cat="restricted"]{background:#5598eb;border-color:#2a70c5}.venue-color-legend i[data-cat="special"]{background:#66c77a;border-color:#32974b}.venue-color-legend i[data-cat="inactive"]{background:#ef5d65;border-color:#c8323c}.venue-display-category{margin-bottom:10px}.venue-stack-actions{display:grid;gap:8px}.venue-stack-actions .button{width:100%;justify-content:center}.venue-export-section{border-color:#e7dfcb}
.venue-canvas-panel{min-width:0;padding:14px}.venue-canvas-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:2px 2px 10px}.venue-canvas-toolbar h2{margin:3px 0 0;color:#0a2039;font:700 24px/1.2 Georgia,serif}.venue-canvas-actions{display:flex;align-items:stretch;gap:4px;flex-wrap:wrap;justify-content:flex-end}.venue-canvas-actions button{display:grid;place-items:center;gap:1px;min-width:48px;min-height:44px;padding:4px 7px;border:0;border-radius:7px;background:transparent;color:#17324e;font-size:16px;font-weight:900;cursor:pointer}.venue-canvas-actions button small{font-size:8px;font-weight:800;white-space:nowrap}.venue-canvas-actions button.active{background:#e9eef4}.venue-canvas-stage{display:flex;align-items:flex-start;justify-content:center;min-height:570px;padding:16px;border:1px solid #d8e0e8;border-radius:11px;background:#eef2f6;overflow:auto}.venue-room{--room-ratio:1.333;--venue-zoom:1;position:relative;width:min(100%,1120px);aspect-ratio:var(--room-ratio);min-width:650px;max-height:760px;border:3px solid #152b43;border-radius:4px;background-color:#fff;background-image:linear-gradient(to right,rgba(12,42,70,.055) 1px,transparent 1px),linear-gradient(to bottom,rgba(12,42,70,.055) 1px,transparent 1px);background-size:4% 4%;box-shadow:0 3px 12px rgba(8,27,48,.08);overflow:hidden;outline:none;transform:scale(var(--venue-zoom));transform-origin:top center;margin-bottom:calc((var(--venue-zoom) - 1)*100px)}.venue-room:focus-visible{box-shadow:0 0 0 3px rgba(201,154,43,.28)}.venue-room-label{position:absolute;right:8px;bottom:7px;z-index:1;display:grid;text-align:right;pointer-events:none}.venue-room-label strong{color:#506176;font-size:11px}.venue-room-label span{color:#8b97a5;font-size:9px}
.venue-object{position:absolute;display:flex;align-items:center;justify-content:center;box-sizing:border-box;transform-origin:center;user-select:none;touch-action:none;cursor:grab;z-index:3}.venue-object:active{cursor:grabbing}.venue-object.selected{z-index:8;box-shadow:0 0 0 3px rgba(202,158,54,.5)}.venue-object.table{--table-fill:#edf1f5;--table-border:#718198;border:2px solid var(--table-border);background:var(--table-fill);color:#0b2745;font-weight:900;overflow:visible}.venue-object.table.round{border-radius:50%}.venue-object.table.rectangular{border-radius:8px}.venue-object.table.cat-reserved{--table-fill:#f2bd38;--table-border:#b77d00}.venue-object.table.cat-restricted{--table-fill:#5598eb;--table-border:#2a70c5}.venue-object.table.cat-special{--table-fill:#66c77a;--table-border:#32974b}.venue-object.table.cat-inactive{--table-fill:#ef767d;--table-border:#c8323c;opacity:.58}.venue-object.table.no-color{--table-fill:#fff;--table-border:#173553}.venue-object.table span.object-label{position:relative;z-index:4;font-size:clamp(10px,1vw,14px);line-height:1;pointer-events:none}.table-chair{position:absolute;z-index:1;width:13%;height:10%;min-width:4px;min-height:3px;border:1px solid #748397;border-radius:2px;background:#f8fafc;box-shadow:0 1px 1px rgba(20,43,68,.12);pointer-events:none;transform-origin:center}.venue-object.table.rectangular .table-chair{width:12%;height:10%}
.venue-object.feature{border:2px solid #6d7e91;border-radius:6px;background:#e9eef4;color:#263d55;font-size:11px;font-weight:900;letter-spacing:.04em;text-align:center;padding:4px}.venue-object.feature.stage{border-color:#485460;background:#46515c;color:#fff}.venue-object.feature.walkway{border:1px solid #c6ced7;background:linear-gradient(#edf1f4,#e2e8ed);color:#17324e;z-index:2}.venue-object.feature.dancefloor{border-color:#9a7a2e;background:#fff8e6}.venue-object.feature.entrance{border-color:#5f7388;background:#fff}.venue-object.feature.podium{border-color:#8b6c26;background:#f7eed5}.venue-object.feature.service{border-color:#71869a;background:#eef3f7}.venue-object.feature.powmia{border-color:#17212c;background:#f6f6f3;color:#111}.venue-object.feature.powmia::before{content:"◐";display:block;margin-right:4px;font-size:16px}.venue-object.feature.barcart{border-color:#8a5b26;background:#d7a55b;color:#2b1d0e}.venue-object.feature.barcart::before{content:"▦";display:block;margin-right:4px}.venue-object .object-label{pointer-events:none}.venue-preview .venue-object{cursor:default}.venue-preview .venue-object.selected{box-shadow:none}.venue-preview .venue-room{background-image:none}.venue-canvas-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-top:10px}.venue-canvas-footer .inline-message{margin:0;min-height:18px}.venue-canvas-footer .venue-helper{max-width:720px;margin:0;text-align:right}.venue-design-body[data-layout-dirty="1"] #venueSaveState{color:#a76b00}.venue-design-body[data-layout-dirty="0"] #venueSaveState{color:#247142}
@media(max-width:1450px){.venue-studio-grid{grid-template-columns:250px minmax(600px,1fr)}.venue-right-panel{position:static;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.venue-right-panel .venue-tool-section{min-width:0}}
@media(max-width:1120px){.venue-studio-grid{grid-template-columns:1fr}.venue-tool-panel{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.venue-right-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.venue-tool-section:last-child{grid-column:auto}.venue-design-status{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.venue-design-heading{flex-direction:column}.venue-heading-actions{width:100%;justify-content:stretch}.venue-heading-actions>*{flex:1}.venue-design-heading h1{font-size:30px}.venue-design-status,.venue-tool-panel,.venue-right-panel{grid-template-columns:1fr}.venue-status-saved{grid-template-columns:1fr}.venue-status-saved small{grid-column:1;grid-row:auto;border-left:0;padding-left:0}.venue-canvas-panel{padding:10px}.venue-canvas-toolbar,.venue-canvas-footer{align-items:flex-start;flex-direction:column}.venue-canvas-footer .venue-helper{text-align:left}.venue-canvas-stage{min-height:420px;padding:10px}.venue-room{min-width:560px}}

/* FIX11CN · true circular table geometry polish */
.venue-object.table.round{border-radius:50%!important;}
.venue-object.table.round .table-chair{width:13%;height:10%;}

/* FIX11CO · Venue Design Studio v3 planning intelligence + visual polish */
@media (min-width:1001px){
  body.guidon-sidebar-enabled .venue-design-shell{padding-left:14px!important;}
}
.venue-file-control input[type="file"]{min-height:auto;padding:7px;background:#f8fafc}
.venue-tool-pair{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.venue-layout-check{border-color:#dfe5eb}
.venue-has-conflicts .venue-layout-check{border-color:#e3b2b2;background:#fffafa}
.venue-has-conflicts #venueConflictCount{color:#a62121}
.venue-background-reference{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0;pointer-events:none;filter:saturate(.55) contrast(.92)}
.venue-measure-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:20;pointer-events:none;overflow:visible}
.measure-line{stroke:#b07c14;stroke-width:.35;stroke-dasharray:1.2 1;vector-effect:non-scaling-stroke}
.measure-label{fill:#8a620f;font-size:2px;font-weight:800;text-anchor:middle;paint-order:stroke;stroke:#fff;stroke-width:.5px}
.venue-object.table{color:var(--table-text,#0b2745)!important;background:var(--table-fill,#edf1f5)!important;border-color:var(--table-border,#718198)!important;}
.venue-object.table.is-reserved{box-shadow:0 0 0 3px #d4a52f,0 0 0 5px rgba(212,165,47,.18)}
.venue-object.table.is-inactive{opacity:.48;filter:grayscale(.35)}
.venue-object.table span.object-label{color:var(--table-text,#0b2745)!important;font-size:clamp(11px,1vw,15px)}
.venue-object.locked{cursor:not-allowed!important}
.venue-object.locked::after{content:"🔒";position:absolute;right:-8px;top:-10px;z-index:12;display:grid;place-items:center;width:18px;height:18px;border:1px solid #d0d8e1;border-radius:50%;background:#fff;font-size:9px;box-shadow:0 2px 5px rgba(0,0,0,.08)}
.venue-object.has-conflict{outline:3px solid rgba(178,43,43,.78);outline-offset:3px}
.venue-object.feature{display:grid!important;grid-template-rows:minmax(0,1fr) auto;gap:2px;overflow:visible;padding:5px;background:#fff!important;color:#263d55!important}
.venue-feature-symbol{display:grid;place-items:center;min-width:0;min-height:0;width:100%;height:100%;color:#50677e}
.venue-feature-symbol svg{width:100%;height:100%;max-width:100%;max-height:100%;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.venue-object.feature .object-label{display:block;position:relative;z-index:3;padding:1px 3px;border-radius:4px;background:rgba(255,255,255,.76);font-size:clamp(8px,.75vw,11px);line-height:1.05;letter-spacing:0;text-transform:none}
.venue-object.feature.dancefloor{background:#f8f0dc!important;border-color:#b39248;color:#6d5219!important}.venue-object.feature.dancefloor .venue-feature-symbol{color:#b39248}
.venue-object.feature.walkway{background:rgba(229,235,240,.82)!important;border-color:#b7c2cd}.venue-object.feature.walkway .venue-feature-symbol{color:#8092a4}
.venue-object.feature.dj{background:#e9eef4!important;border-color:#586e84}.venue-object.feature.dj .venue-feature-symbol{color:#29445f}
.venue-object.feature.projector{background:#fff!important;border-color:#7b8da0}.venue-object.feature.projector .venue-feature-symbol{color:#536b83}
.venue-object.feature.barcart{background:#e1b36b!important;border-color:#8a5b26}.venue-object.feature.barcart .venue-feature-symbol{color:#5d3b17}
.venue-object.feature.powmia{background:#f7f7f3!important;border-color:#17212c}.venue-object.feature.powmia .venue-feature-symbol{color:#17212c}
.venue-object.feature.entrance{background:#fff!important;border-color:#5f7388}.venue-object.feature.entrance .venue-feature-symbol{color:#5f7388}
.venue-object.feature.podium{background:#f7eed5!important;border-color:#8b6c26}.venue-object.feature.podium .venue-feature-symbol{color:#8b6c26}
.venue-object.feature.service{background:#eef3f7!important;border-color:#71869a}.venue-object.feature.service .venue-feature-symbol{color:#71869a}
.venue-object.feature.stage{background:#46515c!important;border-color:#485460}.venue-object.feature.stage .venue-feature-symbol{color:#fff}
.venue-preview .venue-object.locked::after,.venue-preview .venue-object.has-conflict{outline:0}.venue-preview .venue-object.locked::after{display:none}.venue-preview .venue-object.feature{border-color:transparent!important}.venue-preview .venue-object.feature .object-label{background:rgba(255,255,255,.58)}
.venue-color-legend{max-height:190px;overflow:auto;padding-right:2px}.venue-color-legend i.legend-reserved{background:#fff;border:3px solid #d4a52f;box-sizing:border-box}
.venue-canvas-actions button:disabled{opacity:.35;cursor:not-allowed}.venue-canvas-actions button.active{background:#e5ebf1;box-shadow:inset 0 0 0 1px #cad4df}
@media(max-width:1450px){.venue-tool-pair{grid-template-columns:1fr 1fr}}
/* FIX11CP Studio planning polish */
.table-number-label{display:flex!important;align-items:center;justify-content:center;position:absolute!important;inset:0!important;z-index:20!important;color:var(--table-text,#0b2745)!important;font-weight:900!important;font-size:clamp(12px,1.1vw,18px)!important;text-shadow:0 1px 0 rgba(255,255,255,.18)}
.venue-measured-heading{font:800 .78rem/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#53657a;margin:1rem 0 .55rem}
#tableScale{width:100%;accent-color:#b88a22}.venue-snap-control #tableScaleLabel{display:block;margin-top:.25rem}

/* FIX11CQ · ceremonial table is intentionally neutral; no religious glyph */
.venue-object.feature.powmia::before{content:none!important;display:none!important}

/* FIX11CT deterministic Studio table labels */
.table-number-label{color:#0b2745!important;text-shadow:0 1px 0 rgba(255,255,255,.9),0 0 3px rgba(255,255,255,.8)!important;mix-blend-mode:normal!important;opacity:1!important;visibility:visible!important;}
/* FIX11CU deterministic Studio rendering */
.venue-object{transition:none!important;animation:none!important;}
.venue-object.table .table-number-label{
  position:absolute!important;inset:0!important;display:flex!important;
  align-items:center!important;justify-content:center!important;
  z-index:999!important;color:#0b2745!important;font-weight:900!important;
  font-size:clamp(12px,1.1vw,18px)!important;line-height:1!important;
  opacity:1!important;visibility:visible!important;pointer-events:none!important;
  text-shadow:0 1px 0 rgba(255,255,255,.95),0 0 4px rgba(255,255,255,.95)!important;
}

/* FIX11CV: POW/MIA table is a compact ceremonial symbol, never a boxed venue feature. */
.venue-object.feature.powmia{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;overflow:visible!important;grid-template-rows:minmax(0,1fr) auto!important}
.venue-object.feature.powmia .venue-feature-symbol{width:100%;height:100%;color:#173553!important}
.venue-object.feature.powmia .venue-feature-symbol svg{max-width:100%;max-height:100%}
.venue-object.feature.powmia .object-label{position:absolute!important;top:100%;left:50%;transform:translateX(-50%);white-space:nowrap;background:transparent!important;padding:2px 0!important;font-size:9px!important;color:#173553!important}
.venue-preview .venue-object.feature.powmia{border:0!important;background:transparent!important}

/* FIX11HU authoritative seating-plan controls */
.venue-table-rules{display:grid;gap:8px;margin-top:12px;max-height:280px;overflow:auto}.venue-table-rule{border:1px solid #d9e1e8;border-radius:8px;padding:8px;background:#fff}.venue-table-rule summary{font-weight:800;cursor:pointer}.venue-table-rule>div{display:grid;grid-template-columns:90px 1fr;gap:8px;margin-top:8px}.guidon-build-venue-studio-launch{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;border:1px solid #d8e0e8;border-left:4px solid #c89b2b;border-radius:12px;margin-top:18px}.guidon-build-venue-studio-launch div{display:grid;gap:5px}
/* FIX11HV: keep Studio control rails compact while the canvas remains the primary workspace. */
@media (min-width:1100px){.venue-design-body{overflow:hidden}.venue-design-shell{height:calc(100vh - var(--guidon-shell-header-height,0px));overflow:hidden;display:flex;flex-direction:column}.venue-studio-grid{min-height:0;flex:1;overflow:hidden}.venue-left-panel,.venue-right-panel{overflow:auto;max-height:100%;scrollbar-width:thin}.venue-canvas-panel{min-height:0;overflow:hidden}.venue-canvas-stage{min-height:0;flex:1}.venue-tool-section{padding:10px}.venue-tool-section h2{margin-bottom:7px}.venue-helper{margin-top:5px}}
