.cinergo-plan { color:var(--eau-text,#17232d); font-family:inherit; width:auto; }
.cinergo-plan * { box-sizing:border-box; }
.cinergo-plan .cf-toolbar,.cinergo-plan .cf-actions { display:flex; flex-wrap:wrap; align-items:end; gap:var(--eau-gap,12px); margin-block:var(--eau-gap,16px); }
.cinergo-plan label { display:grid; gap:6px; min-width:0; }
.cinergo-plan.cf-fallback input:not([type=checkbox]),.cinergo-plan.cf-fallback select,.cinergo-plan.cf-fallback textarea { width:100%; max-width:100%; color:var(--eau-text,#17232d); background:var(--eau-control,#fff); border:1px solid var(--eau-border,#aeb8c2); border-radius:var(--eau-radius,4px); font:inherit; padding:8px; }
.cinergo-plan .cf-toolbar label { flex:1 1 210px; }
.cinergo-plan .cf-toolbar .cf-check { display:flex; align-items:center; flex:0 1 auto; }
.cinergo-plan .cf-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,320px); gap:var(--eau-gap,18px); align-items:start; }
.cinergo-plan .cf-map-scroll { overflow:auto; width:100%; background:#fff; border:1px solid var(--eau-border,#b9c2cb); }
.cinergo-plan .cf-map { display:block; max-width:none; height:auto; min-width:900px; }
.cinergo-plan .cf-map-column { min-width:0; }
.cinergo-plan .cf-stand { cursor:pointer; fill:#d5eef7; stroke:#23647b; stroke-width:1.5; }
.cinergo-plan .cf-reserved { fill:#fff0bd; stroke:#916500; }
.cinergo-plan .cf-assigned { fill:#d3eddb; stroke:#286542; }
.cinergo-plan .cf-selected rect { stroke:#20262e; stroke-width:5; }
.cinergo-plan .cf-stand:hover rect,.cinergo-plan .cf-stand:focus rect { stroke:#20262e; stroke-width:4; }
.cinergo-plan .cf-stand text { fill:#17232d; stroke:none; font:500 13px system-ui,sans-serif; }
.cinergo-plan .cf-dim { opacity:.25; }
.cinergo-plan .cf-zone { fill:#e7a668; fill-opacity:.25; stroke:#aa6734; stroke-width:1; stroke-dasharray:4 3; pointer-events:none; }
.cinergo-plan .cf-zone-structure { fill:#b55d63; fill-opacity:.2; stroke:#8b2b37; stroke-dasharray:none; }
.cinergo-plan .cf-map-note { fill:#27394b; font:500 17px system-ui,sans-serif; }
.cinergo-plan .cf-detail,.cinergo-plan .cf-help,.cinergo-plan .cf-publish { padding:var(--eau-card-padding,16px); }
.cinergo-plan.cf-fallback .cf-detail,.cinergo-plan.cf-fallback .cf-help,.cinergo-plan.cf-fallback .cf-publish { background:var(--eau-surface,#fff); border:1px solid var(--eau-border,#c7cdd3); border-radius:var(--eau-radius,6px); }
.cinergo-plan .cf-detail form { display:grid; gap:var(--eau-gap,12px); }
.cinergo-plan .cf-detail form .button { justify-self:start; }
.cinergo-plan label.cf-check { display:flex; align-items:center; gap:8px; }
.cinergo-plan .cf-detail h2 { margin-block-start:0; }
.cinergo-plan .cf-fields { display:grid; grid-template-columns:1fr 1fr; gap:var(--eau-gap,12px); }
.cinergo-plan .cf-draft { background:#fff2d4; color:#654a0b; padding:12px 16px; border-left:4px solid #b77700; }
.cinergo-plan .cf-summary { font-size:var(--eau-type-kpi-size,16px); }
.cinergo-plan .cf-source,.cinergo-plan .cf-power { font-size:var(--eau-type-info-size,13px); color:var(--eau-type-info-color,inherit); }
.cinergo-plan .cf-warning { background:#fff2d4; color:#654a0b; padding:10px; }
.cinergo-plan .cf-feedback { margin-block:12px; }
.cinergo-plan .cf-error { background:#fbe8e8; color:#89282d; padding:12px; }
.cinergo-plan .cf-success { color:var(--eau-text,#17232d); }
.cinergo-plan .cf-legend { display:flex; flex-wrap:wrap; gap:8px 16px; font-size:var(--eau-type-info-size,13px); }
.cinergo-plan .cf-key:before { content:''; display:inline-block; width:12px; height:12px; margin-right:5px; background:#d5eef7; border:1px solid #23647b; }
.cinergo-plan .cf-key.reserved:before { background:#fff0bd; border-color:#916500; }
.cinergo-plan .cf-key.assigned:before { background:#d3eddb; border-color:#286542; }
.cinergo-plan .cf-key.structure:before { background:#e9c6c9; border-color:#8b2b37; }
.cinergo-plan .cf-key.study:before { background:#f5dfc8; border-color:#aa6734; }
.cinergo-plan .cf-logo { max-width:160px; max-height:100px; object-fit:contain; }
.cinergo-plan .cf-table-wrap { overflow:auto; margin-block:20px; }
.cinergo-plan table { border-collapse:collapse; width:100%; color:inherit; }
.cinergo-plan.cf-fallback th,.cinergo-plan.cf-fallback td { padding:10px; text-align:left; border-bottom:1px solid var(--eau-border,#c7cdd3); }
.cinergo-plan .cf-import { max-width:250px; }
.cinergo-plan .cf-publish { display:grid; gap:12px; margin-block:20px; }
.cinergo-plan .cf-publish .button { justify-self:start; }
@media(max-width:1000px){.cinergo-plan .cf-layout {grid-template-columns:1fr}.cinergo-plan .cf-detail form {grid-template-columns:repeat(2,minmax(0,1fr))}.cinergo-plan .cf-detail form>p,.cinergo-plan .cf-fields {grid-column:1/-1}}
@media(max-width:520px){.cinergo-plan .cf-detail form {grid-template-columns:1fr}.cinergo-plan .cf-toolbar {align-items:stretch}.cinergo-plan input,.cinergo-plan select,.cinergo-plan textarea {font-size:16px}}
@media print { @page { size:A3 landscape; margin:12mm; } .cinergo-plan .cf-toolbar,.cinergo-plan .cf-detail,.cinergo-plan .cf-actions,.cinergo-plan .cf-publish,.cinergo-plan .cf-help,.cinergo-plan .cf-table-wrap,.cinergo-plan .cf-feedback {display:none!important}.cinergo-plan .cf-layout {display:block}.cinergo-plan .cf-map-scroll {overflow:visible;border:0}.cinergo-plan .cf-map {width:100%!important;min-width:0;max-height:220mm}.cinergo-plan .cf-draft {border:0;padding:0;background:none}.cinergo-plan .cf-power {margin:4px 0}.cinergo-plan .cf-source {margin:4px 0;font-size:10px}.cinergo-plan .cf-summary {margin:6px 0} #adminmenumain,#wpadminbar,#wpfooter,#screen-meta-links {display:none!important} #wpcontent {margin:0!important} }
/* The drawing uses metres in its SVG viewBox; UI controls retain Echo tokens. */
.cinergo-plan .cf-map { min-width:620px; }
.cinergo-plan .cf-stand { stroke-width:.06; fill:#fff; stroke:#0d0d0d; }
.cinergo-plan .cf-reserved { fill:#f3f5d7; stroke-dasharray:.18 .12; }
.cinergo-plan .cf-assigned { fill:#e5fe02; }
.cinergo-plan .cf-selected rect,.cinergo-plan .cf-stand:hover rect,.cinergo-plan .cf-stand:focus rect { stroke-width:.18; }
.cinergo-plan .cf-stand text { font:600 .62px system-ui,sans-serif; fill:#0d0d0d; }
.cinergo-plan .cf-front { fill:none; stroke:#0d0d0d; stroke-width:.065; stroke-dasharray:.24 .14; stroke-linecap:butt; pointer-events:none; }
.cinergo-plan .cf-stand .cf-footprint,.cinergo-plan .cf-selected .cf-footprint,.cinergo-plan .cf-stand:hover .cf-footprint,.cinergo-plan .cf-stand:focus .cf-footprint { stroke:none; }
.cinergo-plan .cf-walls { fill:none; stroke:#0d0d0d; stroke-width:.06; pointer-events:none; }
.cinergo-plan .cf-selected .cf-walls,.cinergo-plan .cf-stand:hover .cf-walls,.cinergo-plan .cf-stand:focus .cf-walls { stroke-width:.15; }
.cinergo-plan .cf-stand .cf-label-dimensions,.cinergo-plan .cf-stand .cf-label-area { font-size:.47px; font-weight:500; }
.cinergo-plan .cf-map.cf-with-measurements { min-width:1200px; }
.cinergo-plan .cf-zone { stroke-width:.04; stroke-dasharray:.15 .1; }
.cinergo-plan .cf-zone-structure { stroke-dasharray:none; }
.cinergo-plan .cf-architecture { fill:none; stroke:#0d0d0d; stroke-width:.045; pointer-events:none; stroke-linejoin:round; }
.cinergo-plan .cf-cad-struttura { stroke-width:.07; }
.cinergo-plan .cf-cad-scale { stroke:#777; stroke-width:.03; }
.cinergo-plan .cf-cad-serramenti { stroke:#777; stroke-width:.035; }
.cinergo-plan .cf-room-labels { font:500 .55px system-ui,sans-serif; fill:#757575; pointer-events:none; letter-spacing:.08px; }
.cinergo-plan .cf-key.available:before { background:#fff; border-color:#0d0d0d; }
.cinergo-plan .cf-key.reserved:before { background:#f3f5d7; border:1px dashed #0d0d0d; }
.cinergo-plan .cf-key.assigned:before { background:#e5fe02; border-color:#0d0d0d; }
.cinergo-plan .cf-operations { border-top:1px solid var(--eau-border,#c7cdd3); margin-top:var(--eau-gap,16px); padding-top:var(--eau-gap,16px); }
.cinergo-plan .cf-operations form { display:grid; gap:var(--eau-gap,12px); margin-bottom:var(--eau-gap,16px); }
.cinergo-plan .cf-map.cf-drag-mode { touch-action:none; }
.cinergo-plan .cf-drag-mode .cf-stand:not([data-fixed]) { cursor:grab; user-select:none; }
.cinergo-plan .cf-drag-mode .cf-dragging { cursor:grabbing; }
.cinergo-plan .cf-dragging .cf-footprint { fill-opacity:.75; }
.cinergo-plan .cf-drop-valid .cf-footprint { fill:#d3eddb; }
.cinergo-plan .cf-drop-invalid .cf-footprint { fill:#fbe8e8; }
.cinergo-plan .cf-drop-valid .cf-walls { stroke:#286542; stroke-width:.18; }
.cinergo-plan .cf-drop-invalid .cf-walls { stroke:#89282d; stroke-width:.18; }
.cinergo-plan .cf-grid-line { fill:none; stroke:#8d959c; stroke-opacity:.55; stroke-width:.025; }
.cinergo-plan [data-drag-status] { height:3em; overflow:hidden; }
.cinergo-plan .cf-sidebar { display:grid; gap:var(--eau-gap,16px); min-width:0; }
.cinergo-plan .cf-layers { padding:var(--eau-card-padding,16px); min-width:0; }
.cinergo-plan.cf-fallback .cf-layers { background:var(--eau-surface,#fff); border:1px solid var(--eau-border,#c7cdd3); border-radius:var(--eau-radius,6px); }
.cinergo-plan .cf-layers h2 { margin-top:0; }
.cinergo-plan .cf-layer-reference { display:grid; gap:var(--eau-gap,12px); }
.cinergo-plan .cf-layer-tree { max-height:320px; overflow:auto; margin-block:var(--eau-gap,12px); border-block:1px solid var(--eau-border,#c7cdd3); }
.cinergo-plan .cf-layer-tree details { padding-block:var(--eau-gap,12px); }
.cinergo-plan .cf-layer-tree summary { cursor:pointer; }
.cinergo-plan .cf-object-list { list-style:none; margin:0; padding:0; }
.cinergo-plan .cf-object-list li { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--eau-gap,12px); border-bottom:1px solid var(--eau-border,#c7cdd3); padding-block:8px; }
.cinergo-plan .cf-object-list button { text-align:start; overflow-wrap:anywhere; }
.cinergo-plan .cf-object-list small { max-width:120px; overflow-wrap:anywhere; }
.cinergo-plan .cf-object-list .cf-object-selected { font-weight:700; color:var(--eau-primary,#245ef4); text-decoration:underline; }
.cinergo-plan .cf-group-visibility { margin-block:var(--eau-gap,12px); }
.cinergo-plan .cf-zone-object .cf-zone { pointer-events:all; cursor:pointer; }
.cinergo-plan .cf-zone-selected .cf-zone { stroke-width:.15; }
.cinergo-plan .cf-zone-disabled { opacity:.35; }
.cinergo-plan .cf-drag-mode .cf-zone-object { cursor:grab; }
.cinergo-plan .cf-drag-mode .cf-zone-object .cf-zone { cursor:inherit; }
.cinergo-plan .cf-zone-object.cf-drop-valid .cf-zone { fill:#d3eddb; stroke:#286542; stroke-width:.15; }
.cinergo-plan .cf-zone-object.cf-drop-invalid .cf-zone { fill:#fbe8e8; stroke:#89282d; stroke-width:.15; }
@media print {.cinergo-plan .cf-sidebar,.cinergo-plan [data-drag-status],.cinergo-plan [data-drag-help] {display:none!important}}
/* Public event palette is scoped to each published map, independently of admin colours. */
.cinergo-published-scenario,.cinergo-plan.cf-public {
  --cf-bg:#fff; --cf-fg:#0d0d0d; --cf-muted:#737373; --cf-border:#dedede;
  --cf-reserved:#f3f5d7; --cf-bare:#ececec; --cf-accent:#e5fe02; --cf-link:#0d0d0d; --cf-focus:#0d0d0d; --cf-button-bg:#0d0d0d; --cf-button-fg:#fff;
  color:var(--cf-fg); background:var(--cf-bg); color-scheme:light;
}
.cinergo-published-scenario[data-cf-theme="dark"],.cinergo-plan.cf-public[data-cf-theme="dark"] {
  --cf-bg:#050505; --cf-fg:#f3f3ef; --cf-muted:#bcbcb6; --cf-border:#70706c;
  --cf-reserved:#292e16; --cf-bare:#262626; --cf-link:#e5fe02; --cf-focus:#e5fe02; --cf-button-bg:#050505; --cf-button-fg:#f3f3ef;
  color-scheme:dark;
}
.cinergo-published-scenario[data-cf-theme]>h2 { color:var(--cf-fg); }
.cinergo-plan.cf-public { --eau-text:var(--cf-fg); --eau-border:var(--cf-border); --eau-control:var(--cf-bg); --eau-surface:var(--cf-bg); }
.cinergo-plan.cf-public .cf-map { min-width:0; }
.cinergo-plan.cf-public .cf-map-scroll { border:0; background:var(--cf-bg); }
.cinergo-plan.cf-public .cf-summary,.cinergo-plan.cf-public [data-feedback] { display:none; }
.cinergo-plan.cf-public .cf-toolbar { margin-top:0; align-items:end; }
.cinergo-plan.cf-public .cf-toolbar label { max-width:500px; color:var(--cf-fg); }
.cinergo-plan.cf-public input::placeholder { color:var(--cf-muted); opacity:1; }
.cinergo-plan.cf-public .button { background:var(--cf-button-bg); color:var(--cf-button-fg); border:1px solid var(--cf-fg); border-radius:0; min-width:42px; padding:8px 14px; font:inherit; cursor:pointer; }
.cinergo-plan.cf-public .button:hover { background:var(--cf-accent); color:#0d0d0d; }
.cinergo-plan.cf-public .cf-detail { border:1px solid var(--cf-border); border-top:4px solid var(--cf-accent); border-radius:0; background:var(--cf-bg); color:var(--cf-fg); }
.cinergo-plan.cf-public .cf-detail p { color:var(--cf-fg); }
.cinergo-plan.cf-public .cf-detail h2 { color:var(--cf-fg); font-size:22px; }
.cinergo-plan.cf-public .cf-detail h3 { color:var(--cf-fg); font-size:20px; }
.cinergo-plan.cf-public a { color:var(--cf-link); }
.cinergo-plan.cf-public .cf-legend { color:var(--cf-fg); font-size:13px; }
.cinergo-plan.cf-public .cf-exhibitors { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr)); gap:16px; margin-block:24px; }
.cinergo-plan.cf-public .cf-exhibitor { display:block; background:var(--cf-bg); color:var(--cf-fg); border:1px solid var(--cf-border); border-left:4px solid var(--cf-accent); text-align:left; padding:16px; cursor:pointer; font:inherit; }
.cinergo-plan.cf-public .cf-exhibitor strong,.cinergo-plan.cf-public .cf-exhibitor span { display:block; }
.cinergo-plan.cf-public :focus-visible { outline:3px solid var(--cf-focus); outline-offset:3px; }
.cinergo-plan.cf-public .cf-architecture { stroke:var(--cf-fg); }
.cinergo-plan.cf-public .cf-cad-scale,.cinergo-plan.cf-public .cf-cad-serramenti { stroke:var(--cf-muted); }
.cinergo-plan.cf-public .cf-room-labels { fill:var(--cf-muted); }
.cinergo-plan.cf-public .cf-map-note { fill:var(--cf-fg); }
.cinergo-plan.cf-public .cf-stand { --cf-stand-ink:var(--cf-fg); fill:var(--cf-bg); stroke:var(--cf-fg); }
.cinergo-plan.cf-public .cf-reserved { fill:var(--cf-reserved); }
.cinergo-plan.cf-public .cf-assigned { --cf-stand-ink:#0d0d0d; fill:var(--cf-accent); }
.cinergo-plan.cf-public .cf-stand text { fill:var(--cf-stand-ink); }
.cinergo-plan.cf-public .cf-front,.cinergo-plan.cf-public .cf-walls { stroke:var(--cf-stand-ink); }
.cinergo-plan.cf-public .cf-walls { stroke-dasharray:none; }
.cinergo-plan.cf-public .cf-bare .cf-footprint { fill:var(--cf-bare); }
.cinergo-plan.cf-public .cf-bare.cf-reserved .cf-footprint { fill:var(--cf-reserved); }
.cinergo-plan.cf-public .cf-bare.cf-assigned .cf-footprint { fill:var(--cf-accent); }
.cinergo-plan.cf-public .cf-key.available:before { background:var(--cf-bg); border-color:var(--cf-fg); }
.cinergo-plan.cf-public .cf-key.reserved:before { background:var(--cf-reserved); border-color:var(--cf-fg); }
.cinergo-plan.cf-public .cf-key.assigned:before { background:var(--cf-accent); border-color:var(--cf-fg); }
.cinergo-plan.cf-public .cf-key.cf-bare-key:before { background:var(--cf-bare); border-color:var(--cf-fg); }
@media(max-width:700px){.cinergo-plan.cf-public .cf-layout{grid-template-columns:1fr}.cinergo-plan.cf-public .cf-detail{padding:16px}.cinergo-plan.cf-public .cf-toolbar label{flex-basis:100%;max-width:none}}
@container cinergo-public (max-width:700px){.cinergo-plan.cf-public .cf-layout{grid-template-columns:1fr}.cinergo-plan.cf-public .cf-detail{padding:16px}.cinergo-plan.cf-public .cf-toolbar label{flex-basis:100%;max-width:none}}
@media print {.cinergo-plan .cf-map{min-width:0}.cinergo-plan .cf-exhibitors{display:none!important}}
.cinergo-plan .cf-scenario-tabs { display:flex; flex-wrap:wrap; gap:var(--eau-gap,12px); margin-block:var(--eau-gap,16px); }
.cinergo-plan .cf-scenario-tab { display:grid; gap:6px; min-width:0; max-width:100%; }
.cinergo-plan .cf-scenario-tab .button { margin:0; max-width:100%; white-space:normal; text-align:start; }
.cinergo-plan .cf-parent-note { display:block; font-size:var(--eau-type-info-size,13px); color:var(--eau-type-info-color,inherit); overflow-wrap:anywhere; }
.cinergo-plan .cf-scenario-management { display:flex; flex-wrap:wrap; align-items:start; gap:var(--eau-gap,16px); margin-block:var(--eau-gap,16px); }
.cinergo-plan .cf-scenario-management>* { flex:1 1 320px; min-width:0; }
.cinergo-plan .cf-create { padding:var(--eau-card-padding,16px); }
.cinergo-plan .cf-create form,.cinergo-plan [data-rename-scenario],.cinergo-plan [data-clone-scenario],.cinergo-plan .cf-layout-management,.cinergo-plan [data-add-stand] { display:grid; gap:var(--eau-gap,12px); }
.cinergo-plan .cf-create form { margin-top:var(--eau-gap,12px); }
.cinergo-plan .cf-scenario-management button { justify-self:start; }
.cinergo-plan.cf-fallback .cf-create { border:1px solid var(--eau-border,#c7cdd3); background:var(--eau-surface,#fff); border-radius:var(--eau-radius,6px); }
.cinergo-published-scenario { box-sizing:border-box; width:100%; max-width:var(--cf-public-max-width,2000px); margin:24px auto; padding-inline:min(var(--cf-public-padding,24px),calc(var(--cf-public-max-width,2000px) / 10),10%); container:cinergo-public / inline-size; }
@media print {.cinergo-plan .cf-scenario-tabs,.cinergo-plan .cf-scenario-management,.cinergo-plan [data-multi-warning]{display:none!important}}
@media print {.cinergo-plan .cf-map.cf-with-measurements {min-width:0}}
/* A published Dark map makes the hosting page canvas share its background.
   Match rendered shortcode markup, including widgets rendered after wp_head. */
@media screen {
  html:has(body:not(.wp-admin) .cinergo-published-scenario[data-cf-theme="dark"]),
  body:not(.wp-admin):has(.cinergo-published-scenario[data-cf-theme="dark"]),
  body:not(.wp-admin):has(.cinergo-published-scenario[data-cf-theme="dark"]) :has(.cinergo-published-scenario[data-cf-theme="dark"]),
  body:not(.wp-admin):has(.cinergo-published-scenario[data-cf-theme="dark"]) :is(.template-container,.template-content,.page-wrapper,.content-page,.page-heading,.et-footers-wrapper) {
    background:#050505!important;
  }
  html:has(body:not(.wp-admin) .cinergo-published-scenario[data-cf-theme="dark"]),
  body:not(.wp-admin):has(.cinergo-published-scenario[data-cf-theme="dark"]) {
    color-scheme:dark;
  }
  body:not(.wp-admin):has(.cinergo-published-scenario[data-cf-theme="dark"]),
  body:not(.wp-admin):has(.cinergo-published-scenario[data-cf-theme="dark"]) :is(.page-heading,.page-heading h1,.page-heading h2,.page-heading .title,.page-heading .breadcrumbs,.page-heading .breadcrumbs a,.page-heading .breadcrumbs span,.entry-title,.page-title) {
    color:#f3f3ef;
  }
}

/* Admin workspace: one inspector pane at a time, using the shared GUI controls. */
.cinergo-plan .cf-workspace [hidden] { display:none!important; }
.cinergo-plan .cf-workspace { display:flex; flex-direction:column; gap:var(--eau-gap,12px); min-width:0; }
.cinergo-plan .cf-workspace-controls { flex:none; min-width:0; }
.cinergo-plan .cf-workspace .cf-toolbar,.cinergo-plan .cf-workspace .cf-actions { margin-block:var(--eau-gap,12px); }
.cinergo-plan .cf-workspace .cf-summary { margin-block:var(--eau-gap,8px); }
.cinergo-plan .cf-workspace .cf-feedback:empty { display:none; }
.cinergo-plan .cf-workspace .cf-actions .cf-feedback { flex-basis:100%; margin:0; }
.cinergo-plan .cf-workspace [data-drag-status] { height:1.5em; margin:0; overflow:hidden; }
.cinergo-plan .cf-workspace .cf-layout { grid-template-columns:minmax(0,1fr) minmax(300px,360px); height:72dvh; min-height:420px; align-items:stretch; }
.cinergo-plan .cf-workspace .cf-map-column { display:flex; flex-direction:column; min-height:0; }
.cinergo-plan .cf-workspace .cf-map-scroll { flex:1; min-height:0; overscroll-behavior:contain; }
.cinergo-plan .cf-workspace .cf-map,.cinergo-plan .cf-workspace .cf-map.cf-with-measurements { min-width:0; margin-inline:auto; }
.cinergo-plan .cf-workspace .cf-legend { flex:none; margin-bottom:0; }
.cinergo-plan .cf-workspace .cf-sidebar { display:flex; flex-direction:column; min-height:0; padding:0; gap:0; overflow:hidden; background:var(--eau-surface,#fff); border:1px solid var(--eau-border,#c7cdd3); border-radius:var(--eau-radius,6px); }
.cinergo-plan .cf-panel-tabs { display:flex; flex-wrap:wrap; gap:var(--eau-gap,8px); padding:var(--eau-card-padding,12px); border-bottom:1px solid var(--eau-border,#c7cdd3); }
.cinergo-plan .cf-panel-tabs .button { flex:1; margin:0; white-space:normal; }
.cinergo-plan .cf-panel-tabs [aria-selected=true] { font-weight:700; }
.cinergo-plan .cf-inspector-scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; }
.cinergo-plan .cf-workspace .cf-inspector-scroll .cf-detail,.cinergo-plan .cf-workspace .cf-layers { margin:0; border:0; box-shadow:none; background:transparent; }
.cinergo-plan .cf-workspace .cf-layer-tree { max-height:none; overflow:visible; }
.cinergo-plan .cf-workspace .cf-detail form { grid-template-columns:1fr; }
.cinergo-plan .cf-form-panel { display:grid; gap:var(--eau-gap,12px); }
.cinergo-plan .cf-form-panel p { margin-block:0; }
.cinergo-plan .cf-detail .cf-panel-tabs { position:sticky; top:0; z-index:3; background:var(--eau-surface,#fff); padding-inline:0; padding-top:0; margin-bottom:var(--eau-gap,12px); }
.cinergo-plan .cf-apply-bar { position:sticky; bottom:0; z-index:2; display:grid; gap:var(--eau-gap,8px); padding-block:var(--eau-gap,12px); background:var(--eau-surface,#fff); border-top:1px solid var(--eau-border,#c7cdd3); }
.cinergo-plan .cf-apply-bar small { color:var(--eau-type-info-color,inherit); }
.cinergo-plan .cf-workspace .cf-operations { margin-top:0; padding-top:0; border:0; }
.cinergo-plan .cf-view-options { flex:1 1 100%; }
.cinergo-plan summary { cursor:pointer; }
.cinergo-plan .cf-view-options-body { display:flex; flex-wrap:wrap; gap:var(--eau-gap,12px); padding-top:var(--eau-gap,12px); }
.cinergo-plan .cf-view-options-body .cf-public-theme { flex:1 1 320px; }
.cinergo-plan .cf-view-options-body .cf-public-dimension { flex:1 1 210px; }
.cinergo-plan .cf-layout-tools { margin-block:var(--eau-gap,12px); }
.cinergo-plan .cf-workspace-info,.cinergo-plan .cf-publication-help,.cinergo-plan .cf-stand-list { padding:var(--eau-card-padding,16px); margin-block:var(--eau-gap,16px); }
.cinergo-plan.cf-fallback .cf-publication-help,.cinergo-plan.cf-fallback .cf-stand-list { background:var(--eau-surface,#fff); border:1px solid var(--eau-border,#c7cdd3); border-radius:var(--eau-radius,6px); }
.cinergo-plan .cf-workspace.cf-workspace-expanded { position:fixed; inset:var(--wp-admin--admin-bar--height,0px) 0 0; z-index:100000; padding:var(--eau-card-padding,16px); background:var(--eau-page,#f0f0f1); overflow:auto; }
.cinergo-plan .cf-workspace-expanded .cf-layout { flex:1; height:auto; min-height:0; }
@media screen and (min-width:801px){
  .cinergo-plan .cf-workspace:not(.cf-workspace-expanded) .cf-layout { height:auto; min-height:0; align-items:start; }
  .cinergo-plan .cf-workspace:not(.cf-workspace-expanded) .cf-map-scroll { flex:none; overflow-y:hidden; overscroll-behavior:auto; }
  .cinergo-plan .cf-workspace:not(.cf-workspace-expanded) .cf-sidebar { position:sticky; top:calc(var(--wp-admin--admin-bar--height,0px) + var(--eau-gap,12px)); height:max(420px,88dvh); }
}
@media(max-width:1100px){
  .cinergo-plan .cf-workspace .cf-layout { grid-template-columns:minmax(0,1fr) minmax(280px,320px); }
}
@media(max-width:800px){
  .cinergo-plan .cf-workspace .cf-layout { grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(140px,.85fr) minmax(220px,1.15fr); height:80dvh; min-height:360px; }
  .cinergo-plan .cf-workspace .cf-map-column { position:static; min-height:0; }
  .cinergo-plan .cf-workspace .cf-map-scroll { min-height:0; }
  .cinergo-plan .cf-workspace .cf-legend { display:none; }
  .cinergo-plan .cf-workspace .cf-sidebar { min-height:0; }
  .cinergo-plan .cf-workspace.cf-workspace-expanded { top:0; }
  .cinergo-plan .cf-workspace-expanded .cf-workspace-controls { max-height:30dvh; overflow:auto; overscroll-behavior:contain; }
  .cinergo-plan .cf-workspace-expanded .cf-layout { flex:1; height:auto; }
}
@media print {
  .cinergo-plan .cf-workspace,.cinergo-plan .cf-workspace.cf-workspace-expanded { position:static; display:block; padding:0; overflow:visible; }
  .cinergo-plan .cf-workspace .cf-layout { display:block; height:auto; min-height:0; }
  .cinergo-plan .cf-workspace .cf-map-column { display:block; position:static; }
  .cinergo-plan .cf-workspace .cf-map-scroll { height:auto!important; overflow:visible; }
  .cinergo-plan .cf-workspace-controls,.cinergo-plan .cf-layout-tools,.cinergo-plan .cf-publication-help,.cinergo-plan .cf-stand-list,.cinergo-plan .cf-workspace-info { display:none!important; }
}
.cinergo-plan .cf-open-sides { display:grid; gap:var(--eau-gap,12px); min-width:0; margin:0; padding:var(--eau-card-padding,12px); border:1px solid var(--eau-border,#c7cdd3); }
.cinergo-plan .cf-open-sides p { margin:0; }
.cinergo-plan .cf-open-sides small { display:block; color:var(--eau-type-info-color,inherit); font-size:var(--eau-type-info-size,13px); }
.cinergo-plan .cf-line-key:before { content:''; display:inline-block; width:28px; margin-right:6px; vertical-align:middle; border-top:2px solid currentColor; }
.cinergo-plan .cf-open-key:before { border-top-style:dashed; }
.cinergo-plan .cf-selected .cf-front,.cinergo-plan .cf-stand:hover .cf-front,.cinergo-plan .cf-stand:focus .cf-front { stroke-width:.12; }
.cinergo-plan .cf-bare .cf-footprint { fill:#ececec; }
.cinergo-plan .cf-bare.cf-reserved .cf-footprint { fill:#f3f5d7; }
.cinergo-plan .cf-bare.cf-assigned .cf-footprint { fill:#e5fe02; }
.cinergo-plan .cf-key.cf-bare-key:before { background:#ececec; border:1px solid #0d0d0d; }
.cinergo-plan .cf-bare.cf-drop-valid .cf-footprint { fill:#d3eddb; }
.cinergo-plan .cf-bare.cf-drop-invalid .cf-footprint { fill:#fbe8e8; }
.cinergo-plan .cf-placement-mode { cursor:crosshair; }
.cinergo-plan .cf-copy-preview { pointer-events:none; opacity:.8; }
.cinergo-plan .cf-copy-preview .cf-footprint { fill-opacity:.7; }
.cinergo-plan .cf-copy-bar { display:flex; align-items:center; flex-wrap:wrap; gap:var(--eau-gap,12px); }
.cinergo-plan [data-copy-status] { flex:1 1 240px; height:3em; overflow:auto; margin:0; }
@media print {.cinergo-plan .cf-copy-preview,.cinergo-plan .cf-copy-bar {display:none!important}}

/* Layout protection uses the current shared button and spacing tokens. */
.cinergo-plan .cf-layout-protection { display:flex; flex-wrap:wrap; align-items:center; gap:var(--eau-gap,8px); }
.cinergo-plan .cf-layout-protection .button { display:inline-flex; align-items:center; gap:6px; }
.cinergo-plan .cf-layout-protection .dashicons { flex:none; }
/* Halls share one editor contract; their drafts and geometry stay independent. */
.cf-hall-tabs { margin-block:var(--eau-gap,16px); }
.cf-hall-order,.cf-hall-pending { padding:var(--eau-card-padding,16px); margin-block:var(--eau-gap,16px); color:var(--eau-text,#17232d); background:var(--eau-surface,#fff); border:1px solid var(--eau-border,#c7cdd3); border-radius:var(--eau-radius,6px); }
.cf-hall-order summary { cursor:pointer; }
.cf-hall-order ol { display:flex; flex-wrap:wrap; gap:var(--eau-gap,16px); list-style:decimal inside; padding:0; }
.cf-hall-order li { padding:var(--eau-gap,12px); border:1px solid var(--eau-border,#c7cdd3); border-radius:var(--eau-radius,6px); }
.cinergo-plan .cf-element-add { padding-block:var(--eau-gap,12px); border-bottom:1px solid var(--eau-border,#c7cdd3); margin-bottom:var(--eau-gap,16px); }
.cinergo-plan .cf-element-buttons { display:flex; flex-wrap:wrap; gap:var(--eau-gap,8px); }
.cinergo-plan [data-element-editor] { display:grid; gap:var(--eau-gap,12px); }
.cinergo-plan .cf-usable-floor { fill:#f4f5f1; stroke:#b9c1ae; stroke-width:.035; pointer-events:none; }
.cinergo-plan .cf-element { cursor:pointer; stroke:#0d0d0d; stroke-width:.06; --cf-element-fill:#fff; --cf-element-ink:#0d0d0d; }
.cinergo-plan .cf-element-body { fill:var(--cf-element-fill); stroke:var(--cf-element-ink); }
.cinergo-plan .cf-element-stage { --cf-element-fill:#161616; --cf-element-ink:#fff; }
.cinergo-plan .cf-element-seating { --cf-element-fill:#f1f4df; }
.cinergo-plan .cf-element-bar { --cf-element-fill:#e5fe02; }
.cinergo-plan .cf-element text { font:600 .55px system-ui,sans-serif; fill:var(--cf-element-ink); stroke:none; pointer-events:none; }
.cinergo-plan .cf-element-symbol { fill:none; stroke:var(--cf-element-ink); stroke-width:.1; pointer-events:none; }
.cinergo-plan .cf-seat-symbol { fill:var(--cf-element-ink); stroke:none; pointer-events:none; }
.cinergo-plan .cf-meeting-table { fill:none; stroke:var(--cf-element-ink); stroke-width:.07; pointer-events:none; }
.cinergo-plan .cf-element-selected .cf-element-body,.cinergo-plan .cf-element:hover .cf-element-body,.cinergo-plan .cf-element:focus .cf-element-body { stroke:#6f7c00; stroke-width:.17; }
.cinergo-plan .cf-drag-mode .cf-element { cursor:grab; user-select:none; }
.cinergo-plan .cf-element.cf-dragging { cursor:grabbing; }
.cinergo-plan .cf-element.cf-drop-valid .cf-element-body { fill:#d3eddb; stroke:#286542; }
.cinergo-plan .cf-element.cf-drop-invalid .cf-element-body { fill:#fbe8e8; stroke:#89282d; }
.cinergo-plan .cf-wayfinding { pointer-events:none; }
.cinergo-plan .cf-way-arrow { fill:none; stroke:#717b00; stroke-width:.13; stroke-linejoin:round; stroke-linecap:round; }
.cinergo-plan .cf-way-badge { fill:#e5fe02; stroke:#0d0d0d; stroke-width:.035; }
.cinergo-plan .cf-wayfinding text { fill:#0d0d0d; stroke:none; font:650 .51px system-ui,sans-serif; }
.cinergo-plan .cf-description { white-space:pre-line; overflow-wrap:anywhere; }
.cinergo-plan .cf-reserved { fill:#f6b700; }
.cinergo-plan .cf-key.reserved:before { background:#f6b700; }
.cinergo-plan.cf-public { --cf-reserved:#f6b700; }
.cinergo-plan.cf-public .cf-reserved { --cf-stand-ink:#121212; }
.cinergo-plan.cf-public .cf-key.reserved:before { background:#f6b700; border-color:#a66f00; }
.cinergo-plan.cf-public .cf-legend { font-size:18px; font-weight:600; line-height:1.5; gap:14px 24px; padding-block:20px; margin-block:0; border-block:1px solid var(--cf-border); }
.cinergo-plan.cf-public .cf-key,.cinergo-plan.cf-public .cf-line-key { display:inline-flex; align-items:center; gap:9px; }
.cinergo-plan.cf-public .cf-key:before { width:22px; height:22px; margin:0; flex:none; border-width:2px; }
.cinergo-plan.cf-public .cf-line-key:before { width:40px; margin:0; flex:none; border-top-width:2px; }
.cinergo-plan .cf-element-key-stage:before { background:#161616; border-color:#777; }
.cinergo-plan .cf-element-key-seating:before { background:#f1f4df; border-color:#777; }
.cinergo-plan .cf-element-key-meeting:before { background:var(--cf-bg); border-color:var(--cf-fg); }
.cinergo-plan .cf-element-key-bar:before { background:#e5fe02; border-color:#777; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-usable-floor { fill:#10110d; stroke:#5d6350; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element { --cf-element-fill:#10110d; --cf-element-ink:#f3f3ef; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-stage { --cf-element-fill:#e5fe02; --cf-element-ink:#0d0d0d; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-seating { --cf-element-fill:#20251a; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-bar { --cf-element-fill:#e5fe02; --cf-element-ink:#0d0d0d; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-key-stage:before { background:#e5fe02; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-key-seating:before { background:#20251a; border-color:#f3f3ef; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-way-arrow { stroke:#e5fe02; }
.cinergo-published-scenario .cf-hall-label { display:inline-block; margin-inline-end:.4em; color:var(--cf-fg); }
@media(max-width:700px){.cinergo-plan.cf-public .cf-legend{font-size:16px;gap:12px 18px}.cf-hall-tabs{display:flex;flex-wrap:wrap}.cf-hall-tabs .nav-tab{margin-left:0;margin-right:8px}}
.cinergo-plan .cf-wayfinding .cf-way-subtitle { font-size:.38px; font-weight:500; }
.cinergo-plan.cf-public[data-cf-theme] { --cf-reserved:#f6b700; }
/* Direct manipulation follows the active shared control palette. */
.cinergo-plan .cf-map { margin-inline:auto; }
.cinergo-plan .cf-zoom-readout { align-self:center; min-width:4em; text-align:center; font-variant-numeric:tabular-nums; color:inherit; }
.cinergo-plan .cf-transform-handle { touch-action:none; cursor:nwse-resize; outline:none; }
.cinergo-plan .cf-resize-ne,.cinergo-plan .cf-resize-sw { cursor:nesw-resize; }
.cinergo-plan .cf-rotate-handle { cursor:grab; }
.cinergo-plan .cf-handle-hit { fill:transparent; stroke:transparent; stroke-width:24px; vector-effect:non-scaling-stroke; pointer-events:all; }
.cinergo-plan .cf-handle-dot { fill:var(--eau-surface,#fff); stroke:var(--eau-primary,#245ef4); stroke-width:2px; vector-effect:non-scaling-stroke; pointer-events:none; }
.cinergo-plan .cf-transform-handle:focus .cf-handle-dot { stroke:var(--eau-primary,#245ef4); stroke-width:4px; }
.cinergo-plan .cf-handle-stem { fill:none; stroke:var(--eau-primary,#245ef4); stroke-width:1.5px; vector-effect:non-scaling-stroke; pointer-events:none; }
.cinergo-plan .cf-transform-preview { pointer-events:none; opacity:.8; }
.cinergo-plan .cf-transform-original { opacity:.25; }
.cinergo-plan .cf-transform-preview.cf-drop-valid .cf-element-body { stroke:#268250; stroke-width:.12; }
.cinergo-plan .cf-transform-preview.cf-drop-invalid .cf-element-body { fill:#f9d8d8; stroke:#bb2637; stroke-width:.12; }
.cinergo-plan .cf-facing-symbol { fill:none; stroke:var(--cf-element-ink); stroke-width:.065; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.cinergo-plan .cf-seat-back { fill:none; stroke:var(--cf-element-ink); stroke-width:.04; pointer-events:none; }
.cinergo-plan .cf-element-wall { --cf-element-fill:#202020; --cf-element-ink:#202020; }
.cinergo-plan .cf-element-wall .cf-element-label { fill:#202020; }
.cinergo-plan .cf-element-door,.cinergo-plan .cf-element-opening,.cinergo-plan .cf-element-curtain { --cf-element-fill:transparent; }
.cinergo-plan .cf-element-door .cf-element-body { stroke-dasharray:.12 .12; stroke-opacity:.4; }
.cinergo-plan .cf-element-opening .cf-element-body { stroke:none; }
.cinergo-plan .cf-opening-symbol { fill:none; stroke:var(--cf-element-ink); stroke-width:.06; stroke-dasharray:.16 .12; pointer-events:none; }
.cinergo-plan .cf-element-curtain .cf-element-body { fill:#e5fe02; fill-opacity:.15; stroke-opacity:.35; }
.cinergo-plan .cf-element-key-wall:before { background:var(--cf-fg,#202020); border-color:var(--cf-fg,#202020); }
.cinergo-plan .cf-element-key-door:before { background:transparent; border:2px dashed var(--cf-fg,#202020); }
.cinergo-plan .cf-element-key-opening:before { background:transparent; border:0; border-bottom:2px dashed var(--cf-fg,#202020); }
.cinergo-plan .cf-element-key-curtain:before { background:repeating-linear-gradient(90deg,var(--cf-fg,#202020) 0 2px,transparent 2px 6px); border-color:var(--cf-fg,#202020); }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-wall { --cf-element-fill:#f3f3ef; --cf-element-ink:#f3f3ef; }
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-wall .cf-element-label { fill:#f3f3ef; }
@media print {.cinergo-plan .cf-transform-controls,.cinergo-plan .cf-transform-preview{display:none!important}}

.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-door,
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-opening,
.cinergo-plan.cf-public[data-cf-theme="dark"] .cf-element-curtain { --cf-element-fill:transparent; }
