:root{
  --rawtec-bg:#eef2f7;
  --rawtec-panel:#ffffff;
  --rawtec-ink:#152033;
  --rawtec-muted:#6b7280;
  --rawtec-blue:#1f5eff;
  --rawtec-blue-2:#0b2f6f;
  --rawtec-border:#d9e0ea;
  --rawtec-shadow:0 14px 40px rgba(21,32,51,.10);
}
*{box-sizing:border-box}
body.rawtec-shell{background:var(--rawtec-bg); color:var(--rawtec-ink); min-height:100vh;}
a{text-decoration:none}.app-layout{display:flex; min-height:100vh}.sidebar{width:280px; background:linear-gradient(180deg,#0b1729,#121f35); color:#fff; padding:22px 16px; position:sticky; top:0; height:100vh; overflow:auto}.brand{display:flex; align-items:center; gap:12px; color:#fff; padding:10px 8px 20px; border-bottom:1px solid rgba(255,255,255,.12); margin-bottom:16px}.brand:hover{color:#fff}.brand-mark{display:grid; place-items:center; width:42px; height:42px; border-radius:14px; background:linear-gradient(135deg,var(--rawtec-blue),#70a5ff); font-weight:800; letter-spacing:.5px}.brand small{display:block; color:#aab8d0; font-size:.72rem; margin-top:2px}.side-nav{display:grid; gap:5px}.nav-item{color:#dbe6f8; padding:10px 12px; border-radius:12px; font-weight:600}.nav-item:hover{color:#fff; background:rgba(255,255,255,.10)}.main-panel{flex:1; min-width:0}.topbar{height:72px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:12px 26px; background:rgba(255,255,255,.78); backdrop-filter:blur(12px); border-bottom:1px solid var(--rawtec-border); position:sticky; top:0; z-index:5}.quick-search{flex:1; max-width:620px}.quick-search input{width:100%; border:1px solid var(--rawtec-border); border-radius:999px; padding:11px 18px; outline:none; background:#f8fafc}.quick-search input:focus{border-color:var(--rawtec-blue); box-shadow:0 0 0 4px rgba(31,94,255,.10)}.top-actions{display:flex; gap:8px; flex-wrap:wrap}.content-area{padding:28px;}.hero-card{display:flex; justify-content:space-between; gap:24px; align-items:center; color:#fff; padding:30px; border-radius:26px; background:radial-gradient(circle at 15% 0%,#3575ff 0%,#143f9a 38%,#0e203d 100%); box-shadow:var(--rawtec-shadow)}.hero-card h1{margin:0; font-weight:800}.eyebrow{margin:0 0 6px; color:#bdd2ff; text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; font-weight:800}.hero-actions{display:flex; gap:10px; flex-wrap:wrap}.stat-grid{display:grid; grid-template-columns:repeat(8,minmax(120px,1fr)); gap:14px}.stat-card{display:block; padding:18px; border-radius:20px; background:var(--rawtec-panel); border:1px solid var(--rawtec-border); color:var(--rawtec-ink); box-shadow:0 10px 28px rgba(21,32,51,.06)}.stat-card span{display:block; color:var(--rawtec-muted); font-weight:700; font-size:.82rem}.stat-card strong{font-size:2rem; line-height:1.1}.stat-card:hover{transform:translateY(-2px); box-shadow:var(--rawtec-shadow)}.panel-card,.card{background:var(--rawtec-panel); border:1px solid var(--rawtec-border); border-radius:22px; box-shadow:0 8px 24px rgba(21,32,51,.06)}.panel-card{padding:20px}.panel-title{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px}.panel-title h2{font-size:1.05rem; margin:0; font-weight:800}.event-card-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}.event-tile{display:block; border:1px solid var(--rawtec-border); border-radius:18px; padding:16px; color:var(--rawtec-ink); background:linear-gradient(180deg,#fff,#f8fafc)}.event-tile:hover{border-color:#9bbcff; box-shadow:0 12px 30px rgba(31,94,255,.10)}.event-tile h3{font-size:1.05rem; margin:10px 0 4px; font-weight:800}.event-tile p{margin:0; color:var(--rawtec-muted)}.status-pill{display:inline-flex; align-items:center; padding:4px 9px; border-radius:999px; background:#e8f0ff; color:#1646a3; font-size:.75rem; font-weight:800}.tile-meta{display:flex; justify-content:space-between; gap:8px; margin-top:14px; color:var(--rawtec-muted); font-size:.85rem}.timeline-list{display:grid; gap:10px}.timeline-item{display:block; padding:12px 14px; border-left:4px solid var(--rawtec-blue); background:#f8fafc; border-radius:14px; color:var(--rawtec-ink)}.timeline-item span,.timeline-item small{display:block}.timeline-item small{color:var(--rawtec-muted)}.clean-list{list-style:none; padding:0; margin:0; display:grid; gap:10px}.clean-list li{display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid #eef2f7; padding-bottom:9px}.clean-list span{color:var(--rawtec-muted); font-size:.9rem}.table{--bs-table-bg:transparent}.table thead th{color:#566174; font-size:.8rem; text-transform:uppercase; letter-spacing:.06em}.btn{border-radius:12px; font-weight:700}.btn-primary{background:var(--rawtec-blue); border-color:var(--rawtec-blue)}.form-control,.form-select{border-radius:12px}.plan-toolbar{background:#fff; border:1px solid var(--rawtec-border); border-bottom:0; padding:.75rem 1rem; color:#495057; border-radius:18px 18px 0 0}.plan-viewport{overflow:auto; max-height:78vh; background:#e9ecef; border:1px solid var(--rawtec-border); border-radius:0 0 18px 18px}.plan-canvas{transform-origin:top left; display:block; width:100%; min-height:650px; background:white; border:0; box-shadow:0 2px 12px rgba(0,0,0,.08)}.plan-element{cursor:move}.plan-element.selected rect{stroke:#ffc107; stroke-width:4}.layer-toggle{vertical-align:middle}@media (max-width:1200px){.stat-grid{grid-template-columns:repeat(4,1fr)}.event-card-grid{grid-template-columns:1fr}.sidebar{width:245px}}@media (max-width:850px){.app-layout{display:block}.sidebar{position:relative; width:100%; height:auto}.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{height:auto; flex-direction:column; align-items:stretch}.content-area{padding:18px}.hero-card{display:block}.hero-actions{margin-top:18px}.stat-grid{grid-template-columns:repeat(2,1fr)}}

/* V2.5 Plan Builder Pro */
.builder-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr) 280px;
  gap: 16px;
  align-items: start;
}
.builder-panel { position: sticky; top: 16px; }
.builder-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 14px;
  margin-bottom: 14px;
  box-shadow: 0 10px 28px rgba(15,23,42,.06);
}
.builder-card h2 { font-size: 1rem; font-weight: 800; margin: 0 0 12px; color: #0f172a; }
.builder-main {
  min-width: 0;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 12px;
  box-shadow: 0 14px 34px rgba(15,23,42,.08);
}
.builder-toolbar, .builder-layers {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 8px 10px;
  border-radius: 12px;
  background: #f8fafc;
  margin-bottom: 10px;
  border: 1px solid #e2e8f0;
}
.builder-layers label { font-size: .85rem; color: #334155; }
.pro-viewport {
  height: calc(100vh - 230px);
  min-height: 560px;
  overflow: auto;
  background: repeating-linear-gradient(45deg, #f1f5f9, #f1f5f9 10px, #e2e8f0 10px, #e2e8f0 20px);
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  padding: 30px;
}
.pro-canvas {
  display: block;
  background: #fff;
  margin: auto;
  box-shadow: 0 20px 60px rgba(15,23,42,.22);
  cursor: crosshair;
}
.plan-element { cursor: move; }
.plan-element.selected rect {
  stroke: #f97316 !important;
  stroke-width: 4 !important;
  filter: drop-shadow(0 0 6px rgba(249,115,22,.45));
}
.plan-measure text { paint-order: stroke; stroke: #fff; stroke-width: 4px; }
#objectSelect { font-size: .9rem; }
@media (max-width: 1200px){ .builder-layout { grid-template-columns: 1fr; } .builder-panel { position: static; } .pro-viewport { height: 65vh; } }

/* V2.5.1 Plan Calibration */
#backgroundLayer { cursor: default; }
#planBackground { transition: opacity .15s ease, filter .15s ease; }
.builder-card .form-range { width: 100%; }
.pro-viewport { scroll-behavior: smooth; }
.builder-toolbar .btn { white-space: nowrap; }
.builder-card input[type="checkbox"] { margin-right: 6px; }

/* V2.5.2 Plan Builder ergonomie */
.plan-element .shape-main,
.plan-element rect,
.plan-element ellipse,
.plan-element polygon {
  vector-effect: non-scaling-stroke;
}
.plan-element text {
  pointer-events: none;
  font-weight: 800;
  paint-order: stroke;
  stroke: rgba(15, 23, 42, .55);
  stroke-width: 2px;
}
.plan-element.selected .shape-main,
.plan-element.selected rect,
.plan-element.selected ellipse,
.plan-element.selected polygon,
.plan-element.selected line {
  stroke: #f97316 !important;
  stroke-width: 4 !important;
  filter: drop-shadow(0 0 6px rgba(249, 115, 22, .45));
}
.plan-measure { cursor: move; }
.plan-measure line { vector-effect: non-scaling-stroke; }
.plan-measure:hover line { stroke-width: 5; }
#deleteSelectionBtn { min-width: 150px; }
.builder-layers label {
  padding: 3px 6px;
  border-radius: 999px;
  background: #eef2ff;
}
#objectSelect option[hidden] { display: none; }
.pro-canvas { cursor: default; }
.plan-element { cursor: grab; }
.plan-element:active { cursor: grabbing; }


/* V2.5.3 Plan toolbar navigation */
.builder-panel-switches{display:flex; gap:8px; flex-wrap:wrap; align-items:center;}
.builder-layout.hide-left-panel{grid-template-columns:minmax(0,1fr) 280px;}
.builder-layout.hide-left-panel #leftBuilderPanel{display:none;}
.builder-layout.hide-right-panel{grid-template-columns:280px minmax(0,1fr);}
.builder-layout.hide-right-panel #rightBuilderPanel{display:none;}
.builder-layout.hide-left-panel.hide-right-panel{grid-template-columns:minmax(0,1fr);}
.toolbar-pro{align-items:center;}
.toolbar-toolbox{display:inline-flex; align-items:center; gap:4px; padding:4px; border-radius:14px; background:#0f172a; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}
.tool-btn{border:0; border-radius:10px; min-width:34px; height:32px; padding:0 8px; background:#1e293b; color:#fff; font-weight:800; cursor:pointer;}
.tool-btn:hover{background:#334155;}
.tool-btn.danger{background:#991b1b;}
.tool-btn.danger:hover{background:#b91c1c;}
.tool-separator{width:1px; height:22px; background:#475569; margin:0 2px;}
.card-toggle{width:100%; display:flex; justify-content:space-between; align-items:center; border:0; background:transparent; color:#0f172a; font-size:1rem; font-weight:900; padding:0 0 10px; cursor:pointer;}
.card-toggle span{transition:transform .15s ease;}
.collapsible-card.is-collapsed .card-body-mini{display:none;}
.collapsible-card.is-collapsed .card-toggle span{transform:rotate(-90deg);}
.plan-element.selected .shape-main,
.plan-element.selected rect,
.plan-element.selected ellipse,
.plan-element.selected polygon,
.plan-element.selected line{stroke:#f97316!important; stroke-width:5!important;}
.plan-measure.selected line{stroke:#7c3aed!important; stroke-width:5!important;}
@media (max-width:1200px){.builder-layout.hide-left-panel,.builder-layout.hide-right-panel{grid-template-columns:1fr}.toolbar-toolbox{width:100%; overflow-x:auto}}

/* v2.5.4 - fonds PDF convertis en image HD */
.plan-background-image {
  image-rendering: auto;
}
.builder-canvas image.plan-background-image {
  pointer-events: none;
}
.alert-warning.small {
  border-radius: 12px;
}

/* v2.5.5 - manipulation précise des objets du Plan Builder */
.plan-element.selected { filter: drop-shadow(0 8px 14px rgba(249,115,22,.25)); }
.selection-adornment { pointer-events: none; }
.resize-handle { fill: #ffffff; stroke: #f97316; stroke-width: 3; cursor: nwse-resize; vector-effect: non-scaling-stroke; }
.resize-handle[data-corner="n"], .resize-handle[data-corner="s"] { cursor: ns-resize; }
.resize-handle[data-corner="e"], .resize-handle[data-corner="w"] { cursor: ew-resize; }
.resize-handle[data-corner="ne"], .resize-handle[data-corner="sw"] { cursor: nesw-resize; }
.rotate-handle { fill: #2563eb; stroke: #ffffff; stroke-width: 3; cursor: grab; vector-effect: non-scaling-stroke; }
.rotate-handle:active { cursor: grabbing; }
.plan-measure { cursor: grab; }
.plan-measure:active { cursor: grabbing; }
.plan-element text { pointer-events: none; user-select: none; }
.plan-element .shape-main { pointer-events: visiblePainted; }


/* v2.5.6 - suppression fiable objets/mesures */
.plan-measure.selected line { stroke: #ef4444 !important; stroke-width: 4 !important; }
.plan-measure.selected text { fill: #ef4444 !important; font-weight: 800; }
.plan-element.selected .shape-main, .plan-element.selected rect, .plan-element.selected ellipse, .plan-element.selected polygon, .plan-element.selected line { filter: drop-shadow(0 0 6px rgba(37, 99, 235, .7)); }


/* v2.5.7 - selection unifiee objets / textes / formes / mesures */
.plan-element { pointer-events: all; }
.plan-element text { pointer-events: all; cursor: grab; user-select: none; }
.plan-element .selection-hitbox { fill: transparent !important; stroke: none !important; pointer-events: all; }
.plan-element.selected .selection-hitbox { stroke: #f97316 !important; stroke-width: 2 !important; stroke-dasharray: 4 4; }
.plan-measure { pointer-events: all; }
.plan-measure text { pointer-events: all; cursor: grab; }
.plan-measure .measure-hitbox { stroke: transparent !important; pointer-events: stroke; }
.plan-element:hover .selection-hitbox,
.plan-measure:hover .measure-hitbox { opacity: 1; }

/* v2.6 - moteur de plan refactorisé */
.plan-element,
.plan-measure { pointer-events: all; }
.plan-element text,
.plan-measure text { pointer-events: all !important; cursor: grab; user-select: none; }
.plan-element .selection-hitbox { fill: #000 !important; fill-opacity: .001 !important; stroke: none !important; pointer-events: all !important; }
.plan-measure .measure-hitbox { stroke: #000 !important; stroke-opacity: .001 !important; stroke-width: 22px !important; pointer-events: stroke !important; }
.plan-element.selected .selection-hitbox { stroke: #f97316 !important; stroke-width: 2px !important; stroke-dasharray: 4 4; fill-opacity: .001 !important; }
.plan-measure.selected .measure-hitbox { stroke: #f97316 !important; stroke-opacity: .08 !important; }
.plan-measure.selected text { fill: #ef4444 !important; font-weight: 800; }
.plan-element.selected { filter: drop-shadow(0 0 8px rgba(249, 115, 22, .55)); }
.selection-adornment { vector-effect: non-scaling-stroke; }
.builder-toolbar .btn { min-height: 34px; }

/* Régie Plan v2.8 - Plan Pro UX */
.selection-marquee{fill:rgba(37,99,235,.12);stroke:#2563eb;stroke-width:2;stroke-dasharray:8 5;pointer-events:none;}
.plan-element.is-locked,.plan-element.layer-locked,.plan-measure.layer-locked{opacity:.55;cursor:not-allowed!important;}
.plan-element.is-locked .selection-hitbox,.plan-element.layer-locked .selection-hitbox{cursor:not-allowed!important;}
.layer-lock{margin-left:-8px;margin-right:8px;color:#64748b;font-size:.78rem;}
.toolbar-toolbox .tool-btn{min-width:34px;}
.builder-toolbar{gap:6px;align-items:center;}
.plan-element.selected .selection-hitbox,.plan-measure.selected .measure-hitbox{stroke:#f97316!important;stroke-width:3!important;stroke-dasharray:6 4;}

/* Régie Plan v2.9 - Zones & Groupes */
.plan-zone { pointer-events: none; }
.plan-zone.zone-hidden { display: none; }
.plan-zone .zone-shape { filter: drop-shadow(0 2px 6px rgba(15,23,42,.08)); }
.plan-element[data-zone-id]:not([data-zone-id=""]) .selection-hitbox { stroke: rgba(37,99,235,.35) !important; }
.plan-element[data-group-id]:not([data-group-id=""]) .selection-hitbox { stroke: rgba(249,115,22,.45) !important; }
.plan-element[data-locked="1"] { opacity: .78; cursor: not-allowed; }
.zone-tree { display: grid; gap: .35rem; }
.zone-tree-row { display: flex; align-items: center; gap: .25rem; padding: .25rem .35rem; border-left: 4px solid var(--zone-color, #64748b); background: #f8fafc; border-radius: .45rem; }
.zone-tree-row form { display: inline; margin: 0; }
.zone-tree-row button { border: 0; background: transparent; padding: .15rem .25rem; }
.zone-tree-row .zone-select { flex: 1; text-align: left; font-weight: 650; color: #0f172a; }
.zone-tree-row.locked .zone-select::after { content: '  verrouillé'; color: #64748b; font-weight: 400; font-size: .75rem; }

/* Régie Plan v3.1 - CRUD admin actions */
.action-bar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.btn-danger-soft{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fecaca!important}.btn-danger-soft:hover{background:#fecaca!important;color:#7f1d1d!important}.actions-cell{white-space:nowrap;text-align:right}.inline-delete-form{display:inline}

/* Régie Plan v3.2 - Exploitation Cockpit */
.progress{background:#e5e7eb;border-radius:999px;overflow:hidden}
.progress-bar{background:linear-gradient(90deg,#16a34a,#2563eb);height:100%}
.clean-list{list-style:none;padding-left:0}.clean-list li{display:flex;justify-content:space-between;gap:12px;padding:.55rem 0;border-bottom:1px solid #e5e7eb}.clean-list li:last-child{border-bottom:0}.clean-list span{color:#64748b;font-size:.9rem;text-align:right}


/* Régie Plan v3.3.1 - Plan Background Edit */
.builder-card[data-card="background"] .bg-light {
  background: #f8fafc !important;
  border-color: #dbe4f0 !important;
}
.builder-card[data-card="background"] input[type="file"] {
  font-size: .85rem;
}

/* Régie Plan v3.3.2 - Calibration d'échelle */
.scale-status{color:#475569}
.scale-calibration-box{border:1px dashed #93c5fd;background:#eff6ff;border-radius:12px;padding:10px}
.scale-calibration-marker circle{fill:#2563eb;stroke:#fff;stroke-width:3;filter:drop-shadow(0 2px 5px rgba(37,99,235,.4))}
.scale-calibration-marker text{fill:#1e3a8a;font-weight:800;font-size:16px;paint-order:stroke;stroke:#fff;stroke-width:4px}
.scale-calibration-line{stroke:#2563eb;stroke-width:3;stroke-dasharray:8 5;pointer-events:none}

/* Regie Plan v3.4 - cartographie zones/surfaces */
.zone-kpi {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .4rem;
}
.zone-kpi > div {
  border: 1px solid #e2e8f0;
  border-radius: .65rem;
  padding: .45rem;
  background: #f8fafc;
  text-align: center;
}
.zone-kpi strong {
  display: block;
  font-size: 1rem;
  color: #0f172a;
}
.zone-kpi span {
  display: block;
  font-size: .72rem;
  color: #64748b;
}
.zone-tree-row-pro .zone-select {
  flex: 1 1 auto;
  text-align: left;
  line-height: 1.15;
}
.zone-tree-row-pro .zone-title {
  display: block;
  font-weight: 700;
}
.zone-tree-row-pro .zone-meta {
  display: block;
  font-size: .72rem;
  color: #64748b;
}
.zone-tree-row-pro .zone-alert {
  display: block;
  font-size: .72rem;
  color: #b45309;
}
.zone-create-form input,
.zone-create-form select {
  min-height: 32px;
}
.plan-zone .zone-shape {
  vector-effect: non-scaling-stroke;
}


/* Regie Plan v3.4.1 - background persistence hard guard */
#backgroundLayer {
  display: inline !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#planBackground {
  display: inline !important;
  visibility: visible !important;
  pointer-events: none !important;
}


/* Regie Plan v3.4.2 - background HTML fallback */
#planBackgroundHtmlFallback {
  display: block !important;
  visibility: visible !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

#planBackgroundHtmlFallback img {
  display: block !important;
  visibility: visible !important;
}


/* Regie Plan v3.4.6 - plan editor wide layout */
.plan-editor-view-switches {
  position: sticky;
  top: 76px;
  z-index: 20;
  background: rgba(238, 242, 247, .94);
  backdrop-filter: blur(10px);
  border: 1px solid #dbe4f0;
  border-radius: 14px;
  padding: 8px;
}
.plan-view-hint { align-self: center; }
.builder-layout.unified-tools {
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 12px;
}
.builder-layout.unified-tools #rightBuilderPanel {
  display: none !important;
}
.builder-layout.unified-tools #leftBuilderPanel {
  max-height: calc(100vh - 130px);
  overflow: auto;
  padding-right: 4px;
}
.builder-layout.unified-tools #leftBuilderPanel .builder-card {
  margin-bottom: 10px;
  padding: 12px;
  border-radius: 14px;
}
.builder-layout.unified-tools #leftBuilderPanel .card-toggle {
  font-size: .92rem;
  padding-bottom: 8px;
}
.builder-layout.unified-tools .builder-main {
  padding: 10px;
}
.builder-layout.unified-tools .pro-viewport {
  height: calc(100vh - 210px);
  min-height: 660px;
  padding: 16px;
}
.builder-layout.unified-tools.hide-left-panel {
  grid-template-columns: minmax(0, 1fr) !important;
}
.builder-layout.unified-tools.hide-left-panel #leftBuilderPanel {
  display: none !important;
}
body.plan-editor-focus .sidebar,
body.plan-editor-focus .topbar,
body.plan-editor-focus .plan-editor-page-header {
  display: none !important;
}

/* Regie Plan v4.9.8 - grouped sidebar navigation */
.side-nav { gap: 8px; }
.nav-section { border-bottom: 1px solid rgba(219, 230, 248, .12); padding-bottom: 7px; }
.nav-section:last-child { border-bottom: 0; }
.nav-section summary { display: flex; align-items: center; gap: 8px; cursor: pointer; list-style: none; padding: 9px 10px; border-radius: 10px; color: #aebfd9; font-size: .74rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; user-select: none; }
.nav-section summary::-webkit-details-marker { display: none; }
.nav-section summary::after { content: ''; width: 7px; height: 7px; margin-left: auto; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .16s ease; }
.nav-section[open] summary { color: #f8fbff; background: rgba(255,255,255,.06); }
.nav-section[open] summary::after { transform: rotate(225deg) translateY(-2px); }
.nav-section summary:hover { color: #fff; background: rgba(255,255,255,.10); }
.nav-section-links { display: grid; gap: 3px; padding: 4px 0 2px; }
.nav-section .nav-item { display: block; padding: 8px 12px 8px 16px; margin-left: 8px; font-size: .91rem; }
.nav-section-admin { margin-top: 4px; }
.brand-logo { width:42px; height:42px; object-fit:contain; border-radius:14px; background:#fff; padding:3px; }
.create-menu { position:relative; }
.create-menu summary { list-style:none; }
.create-menu summary::-webkit-details-marker { display:none; }
.create-menu-panel { position:absolute; right:0; top:calc(100% + 8px); z-index:20; width:225px; display:grid; gap:2px; padding:8px; background:#fff; border:1px solid var(--rawtec-border); border-radius:14px; box-shadow:var(--rawtec-shadow); }
.create-menu-panel a { color:var(--rawtec-ink); border-radius:9px; padding:9px 10px; font-weight:700; font-size:.9rem; }
.create-menu-panel a:hover { color:var(--rawtec-blue-2); background:#edf4ff; }
@media (max-width: 850px) {
  .side-nav { grid-template-columns: 1fr; }
  .nav-section { min-width: 0; }
  .nav-section-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nav-section .nav-item { margin-left: 0; padding-left: 10px; }
}

/* v4.9.9 - identité Société et navigation métier simplifiée */
.content-area h1 { font-weight:850; letter-spacing:-.025em; }
.content-area > .d-flex:first-child { padding-bottom:14px; border-bottom:1px solid #e5eaf2; }
.event-detail-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
@media (max-width: 850px) {
  .event-detail-actions { justify-content:flex-start; margin-top:12px; }
  .create-menu-panel { right:auto; left:0; }
}
body.plan-editor-focus .content-area {
  padding: 8px !important;
}
body.plan-editor-focus .main-panel {
  width: 100% !important;
}
body.plan-editor-focus .plan-editor-view-switches {
  top: 0;
  margin-bottom: 8px !important;
  border-radius: 10px;
}
body.plan-editor-focus .builder-layout {
  display: block !important;
}
body.plan-editor-focus #leftBuilderPanel,
body.plan-editor-focus #rightBuilderPanel {
  display: none !important;
}
body.plan-editor-focus .builder-main {
  padding: 8px !important;
  border-radius: 12px !important;
}
body.plan-editor-focus .builder-toolbar,
body.plan-editor-focus .builder-layers {
  margin-bottom: 6px;
  padding: 6px 8px;
}
body.plan-editor-focus .pro-viewport {
  height: calc(100vh - 118px) !important;
  min-height: 0 !important;
  padding: 12px !important;
}
body.plan-editor-focus .plan-view-hint {
  display: none !important;
}
@media (max-width: 1200px) {
  .builder-layout.unified-tools { grid-template-columns: 1fr; }
  .builder-layout.unified-tools #leftBuilderPanel { max-height: none; }
  .builder-layout.unified-tools .pro-viewport { height: 65vh; min-height: 520px; }
}


/* Regie Plan v3.4.7 - background fill exact box */
#planBackgroundDomLayer img,
#planBackgroundHtmlFallback img {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
}

/* Regie Plan v3.4.8 - single background renderer */
#backgroundLayer,
#planBackground,
#planBackgroundHtmlFallback {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

#planBackgroundDomLayer {
  display: block !important;
  visibility: visible !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

#planBackgroundDomLayer img {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
}

/* Regie Plan v3.4.9 - background and grid same box */
#planBackgroundDomLayer {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

#planBackgroundDomLayer img.plan-bg-dom-img {
  object-fit: fill !important;
  pointer-events: none !important;
  display: block !important;
  visibility: visible !important;
}

/* Regie Plan v3.4.10 - canvas stage and measure tool */
.plan-viewport {
  position: relative !important;
  overflow: auto !important;
}

#planCanvas {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  max-width: none !important;
  max-height: none !important;
  background: transparent !important;
}

#planBackgroundDomLayer {
  position: absolute !important;
  z-index: 1 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

#planBackgroundDomLayer img.plan-bg-dom-img {
  position: absolute !important;
  pointer-events: none !important;
  display: block !important;
  visibility: visible !important;
}

.measure-check-panel {
  position: sticky;
  top: 0;
  z-index: 30;
  margin-bottom: 8px;
  padding: 10px 12px;
  border: 1px solid #bfdbfe;
  border-radius: 12px;
  background: #eff6ff;
  color: #0f172a;
}

.measure-check-panel.active {
  display: block !important;
}

.measure-check-line {
  stroke: #ef4444;
  stroke-width: 4;
  stroke-dasharray: 8 6;
  pointer-events: none;
}

.measure-check-point {
  fill: #ef4444;
  stroke: white;
  stroke-width: 2;
  pointer-events: none;
}

body.measure-check-active #planCanvas {
  cursor: crosshair !important;
}


/* Regie Plan v3.6.7-print-layout-export - stable repair baseline */
.assignment-row { background: #f8fafc; }


/* Regie Plan v3.6.7-print-layout-export - toolbar and panel tabs */
.plan-ux-command-bar {
  position: sticky;
  top: 124px;
  z-index: 19;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: -4px 0 12px;
  padding: 8px;
  border: 1px solid #cbd5e1;
  border-radius: 16px;
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(12px);
  box-shadow: 0 12px 30px rgba(15,23,42,.08);
}
.plan-ux-command-group { display: inline-flex; align-items: center; gap: 6px; padding: 4px 6px; border-radius: 14px; background: #f8fafc; border: 1px solid #e2e8f0; }
.plan-ux-command-group-save { margin-left: auto; }
.plan-ux-label { font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; color: #64748b; font-weight: 900; padding: 0 4px; }
.plan-panel-tabs { position: sticky; top: 0; z-index: 11; display: flex; gap: 6px; flex-wrap: wrap; padding: 8px; margin-bottom: 10px; border: 1px solid #dbe4f0; border-radius: 16px; background: rgba(248,250,252,.96); backdrop-filter: blur(10px); }
.plan-panel-tab { border: 1px solid #cbd5e1; background: #fff; color: #334155; font-weight: 800; border-radius: 999px; padding: 6px 10px; font-size: .82rem; cursor: pointer; }
.plan-panel-tab:hover { border-color: #94a3b8; background: #f1f5f9; }
.plan-panel-tab.active { border-color: #1f5eff; background: #e8f0ff; color: #143f9a; }
.builder-card.is-tab-hidden { display: none !important; }
.plan-ux-hint-row { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin: 0 0 8px; padding: 6px 10px; border: 1px solid #e2e8f0; border-radius: 12px; background: #f8fafc; color: #475569; font-size: .82rem; }
.plan-ux-hint-row kbd { border: 1px solid #cbd5e1; background: #fff; border-radius: 6px; padding: 1px 5px; font-size: .75rem; }
body.plan-editor-focus .plan-ux-command-bar { top: 50px; margin-bottom: 8px; }
body.plan-editor-focus .plan-panel-tabs { display: none; }
@media (max-width: 1200px) { .plan-ux-command-bar { top: 0; } .plan-ux-command-group-save { margin-left: 0; } .plan-ux-hint-row { display: block; } }


/* Regie Plan v3.6.7-print-layout-export - context inspector */
.plan-inspector-card { border-color: #bfdbfe; box-shadow: 0 8px 24px rgba(15, 23, 42, .06); }
.plan-inspector-status { display: inline-flex; align-items: center; gap: 6px; padding: 3px 8px; border-radius: 999px; background: #eff6ff; color: #1d4ed8; font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
.plan-inspector-title { margin-top: 8px; font-size: 1rem; font-weight: 800; color: #0f172a; line-height: 1.2; }
.plan-inspector-subtitle { margin-top: 2px; color: #64748b; font-size: .86rem; }
.plan-inspector-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 12px 0; }
.plan-inspector-kpis div { padding: 8px; border: 1px solid #e2e8f0; border-radius: 12px; background: #f8fafc; }
.plan-inspector-kpis span { display: block; color: #64748b; font-size: .74rem; }
.plan-inspector-kpis strong { display: block; color: #0f172a; font-size: 1.05rem; }
.plan-inspector-details { margin: 0; display: grid; gap: 6px; }
.plan-inspector-details div { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 8px; align-items: start; padding: 6px 0; border-bottom: 1px dashed #e2e8f0; }
.plan-inspector-details dt { color: #64748b; font-size: .78rem; font-weight: 700; }
.plan-inspector-details dd { margin: 0; color: #0f172a; font-size: .84rem; overflow-wrap: anywhere; }
.plan-inspector-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }


/* Regie Plan v3.6.7-print-layout-export - layer control panel */
.plan-layer-control-card {
  display: grid;
  gap: 10px;
  border: 1px solid #dbe4f0;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  border-radius: 16px;
  padding: 12px;
  margin: 10px 0 12px;
}
.plan-layer-control-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}
.plan-layer-actions { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.plan-layer-list { display: flex; flex-wrap: wrap; gap: 8px; }
.plan-layer-row {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 6px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 4px 12px rgba(15, 23, 42, .04);
}
.plan-layer-row label { margin: 0; display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
.plan-layer-name { font-weight: 700; font-size: .84rem; }
.plan-layer-lock { color: #64748b; }
.plan-layer-count {
  min-width: 22px;
  padding: 2px 6px;
  border-radius: 999px;
  background: #e8f0ff;
  color: #1646a3;
  font-size: .75rem;
  font-weight: 800;
  text-align: center;
}
.plan-layer-row.is-hidden-layer { opacity: .48; background: #f1f5f9; }
.plan-layer-row.is-locked-layer { border-color: #f59e0b; background: #fffbeb; }
.plan-layer-row.is-locked-layer .plan-layer-count { background: #fef3c7; color: #92400e; }
.plan-element.layer-locked,
.plan-measure.layer-locked { opacity: .56; cursor: not-allowed !important; }
.plan-element.layer-locked .selection-hitbox,
.plan-measure.layer-locked .measure-hitbox { cursor: not-allowed !important; }
@media (max-width: 900px) {
  .plan-layer-control-header { display: block; }
  .plan-layer-actions { justify-content: flex-start; margin-top: 8px; }
}


/* Regie Plan v3.6.7-print-layout-export - visual affectation badges */
.plan-assignment-badge { pointer-events: none; filter: drop-shadow(0 2px 5px rgba(15, 23, 42, .28)); }
.plan-assignment-badge circle { fill: #2563eb; stroke: #ffffff; stroke-width: 3; }
.plan-assignment-badge text { fill: #ffffff; font-size: 13px; font-weight: 900; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.plan-assignment-badge.is-critical circle { fill: #dc2626; }
.plan-element.has-assignments > .shape-main { stroke-width: 3; stroke: #2563eb; }
.plan-element.has-critical-assignments > .shape-main { stroke: #dc2626; }
.plan-zone.has-assignments .zone-shape { stroke-width: 4; }
.assignment-badges-hidden .plan-assignment-badge { display: none; }
.assignment-badges-hidden .plan-element.has-assignments > .shape-main { stroke-width: 1.5; }
#toggleAssignmentBadgesBtn.active { border-color: #2563eb; background: #dbeafe; color: #1d4ed8; }
@media print { .plan-assignment-badge { display: none; } }


/* Regie Plan v3.6.7-print-layout-export - live audit panel */
.plan-live-audit-card { border-color: #fde68a; background: #fffbeb; }
.plan-live-audit-summary { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.plan-live-audit-pill { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 8px; font-size: 12px; font-weight: 800; border: 1px solid #cbd5e1; background: #f8fafc; color: #334155; }
.plan-live-audit-pill.is-critical { border-color: #fecaca; background: #fee2e2; color: #991b1b; }
.plan-live-audit-pill.is-warning { border-color: #fde68a; background: #fef3c7; color: #92400e; }
.plan-live-audit-pill.is-info { border-color: #bfdbfe; background: #dbeafe; color: #1e40af; }
.plan-live-audit-pill.is-muted { border-color: #e2e8f0; background: #f8fafc; color: #64748b; }
.plan-live-audit-list { display: grid; gap: 7px; max-height: 320px; overflow: auto; padding-right: 2px; }
.plan-live-audit-item { border: 1px solid #e2e8f0; border-left-width: 4px; border-radius: 12px; padding: 8px 10px; background: #ffffff; }
.plan-live-audit-item strong { display: block; font-size: 13px; color: #0f172a; }
.plan-live-audit-item span { display: block; font-size: 12px; color: #475569; margin-top: 2px; }
.plan-live-audit-item em { display: block; font-size: 11px; color: #64748b; margin-top: 4px; font-style: normal; }
.plan-live-audit-item.is-critical { border-left-color: #dc2626; }
.plan-live-audit-item.is-warning { border-left-color: #f59e0b; }
.plan-live-audit-item.is-info { border-left-color: #2563eb; }
.plan-live-audit-ok { border: 1px solid #bbf7d0; border-radius: 12px; padding: 9px 10px; background: #f0fdf4; color: #166534; font-size: 13px; font-weight: 700; }
.plan-live-audit-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
#refreshPlanAuditBtn.active { border-color: #f59e0b; background: #fef3c7; color: #92400e; }


/* Regie Plan v3.6.7-print-layout-export - company titleblock */
.plan-titleblock {
  filter: drop-shadow(0 6px 16px rgba(15, 23, 42, 0.16));
}
.plan-titleblock text {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.plan-titleblock-card .plan-inspector-details div {
  grid-template-columns: 78px 1fr;
}
.company-titleblock-preview .border {
  min-height: 180px;
}

/* Regie Plan v3.6.7-print-layout-export - cartouche type DAO en bas de feuille */
.plan-titleblock-cad {
  filter: drop-shadow(0 2px 7px rgba(15, 23, 42, 0.12));
}
.plan-titleblock-cad text {
  font-family: Arial, Helvetica, sans-serif;
  dominant-baseline: auto;
}
.plan-titleblock-cad .cad-label {
  fill: #334155;
  font-size: 7.2px;
  font-weight: 700;
  letter-spacing: .10em;
}
.plan-titleblock-cad .cad-company {
  fill: #0f172a;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .04em;
}
.plan-titleblock-cad .cad-title {
  fill: #0f172a;
  font-size: 13px;
  font-weight: 800;
}
.plan-titleblock-cad .cad-value {
  fill: #1e293b;
  font-size: 10px;
  font-weight: 600;
}
.plan-titleblock-cad .cad-small {
  fill: #334155;
  font-size: 9px;
}
.plan-titleblock-cad .cad-mini {
  fill: #475569;
  font-size: 8px;
}
.plan-titleblock-cad .cad-meta-label {
  fill: #64748b;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .08em;
}
.plan-titleblock-cad .cad-meta-value {
  fill: #0f172a;
  font-size: 8px;
  font-weight: 700;
}
.plan-titleblock-cad .cad-rev {
  fill: #0f172a;
  font-size: 18px;
  font-weight: 900;
}

/* Regie Plan v3.6.7-print-layout-export - export/impression */
.plan-print-export-card code { font-size: 0.72rem; }
.plan-print-export-card .d-grid { display: grid; }
.plan-print-export-card .gap-2 { gap: .5rem; }


/* Regie Plan v3.6.8-titleblock-polish - ajustements anti-chevauchement cartouche */
.plan-titleblock-cad .cad-title { dominant-baseline: alphabetic; }
.plan-titleblock-cad .cad-label { dominant-baseline: alphabetic; }
.plan-titleblock-cad .cad-meta-label { dominant-baseline: alphabetic; }
.plan-titleblock-cad .cad-meta-value { dominant-baseline: alphabetic; }


/* Regie Plan v3.6.9-titleblock-toggle - controles cartouche dans l utilitaire plan */
.plan-titleblock-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 12px;
  margin-bottom: 8px;
  border: 1px solid rgba(15, 23, 42, 0.10);
  border-radius: 10px;
  background: #f8fafc;
}
.plan-titleblock-toggle-row input[type="checkbox"] {
  width: 1rem;
  height: 1rem;
}
#toggleTitleBlockBtn.active,
#toggleTitleBlockCardBtn.active {
  color: #fff;
  background: #0f172a;
  border-color: #0f172a;
}
.plan-titleblock-hidden .plan-titleblock-card {
  border-color: rgba(100, 116, 139, 0.45);
}

/* Regie Plan v3.7.3-rawtec-object-library-v2 */
.object-library-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.object-library-kpis > div {
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .04);
}
.object-library-kpis span {
  display: block;
  color: #64748b;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.object-library-kpis strong {
  display: block;
  color: #0f172a;
  font-size: 1.8rem;
  line-height: 1;
  margin-top: 4px;
}
.object-library-filter {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 320px) auto;
  gap: 12px;
  align-items: end;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 16px;
  padding: 14px;
}
.object-library-filter-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.object-library-category-strip {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.object-library-category-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, .10);
  color: #0f172a;
  background: #fff;
  text-decoration: none;
  font-size: .86rem;
}
.object-library-category-pill:hover { background: #f1f5f9; color: #0f172a; }
.object-library-category-pill strong {
  font-size: .75rem;
  padding: 1px 7px;
  border-radius: 999px;
  background: #e2e8f0;
}
.object-library-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  display: inline-block;
  flex: 0 0 auto;
}
.object-library-section {
  margin-bottom: 28px;
}
.object-library-section-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.object-library-section-title h2 {
  font-size: 1.1rem;
  margin: 0;
}
.object-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 12px;
}
.object-card {
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .04);
}
.object-card-head {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}
.object-card h3 {
  margin: 0;
  font-size: 1rem;
}
.object-icon {
  min-width: 54px;
  height: 42px;
  border: 2px solid #64748b;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .62rem;
  font-weight: 900;
  text-align: center;
  padding: 4px;
  background: #f8fafc;
}
.object-card-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.object-card-meta span {
  border-radius: 999px;
  background: #f1f5f9;
  color: #334155;
  padding: 3px 8px;
  font-size: .74rem;
  font-weight: 700;
}
.object-card p {
  margin: 0;
  color: #475569;
  font-size: .86rem;
}
.plan-object-filter-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.plan-object-category-chips {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.plan-object-category-chips button {
  border: 1px solid rgba(15,23,42,.12);
  background: #fff;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: .75rem;
}
.plan-object-category-chips button.active {
  background: #0f172a;
  border-color: #0f172a;
  color: #fff;
}
@media (max-width: 900px) {
  .object-library-kpis,
  .object-library-filter { grid-template-columns: 1fr; }
}


/* Regie Plan v3.7.4-advanced-layers */
.plan-layer-control-card-pro { border-color:#bfdbfe; background:linear-gradient(180deg,#ffffff,#eff6ff); }
.plan-layer-presets { display:flex; flex-wrap:wrap; gap:6px; padding:8px; border:1px dashed #bfdbfe; border-radius:14px; background:#ffffff; }
.plan-layer-list-pro { display:grid; grid-template-columns:repeat(auto-fit,minmax(225px,1fr)); gap:8px; }
.plan-layer-row-pro { justify-content:space-between; min-height:54px; border-radius:16px; padding:8px 10px; }
.plan-layer-row-pro.is-system-layer { background:#f8fafc; }
.plan-layer-text { display:grid; line-height:1.1; }
.plan-layer-desc { display:block; font-size:.68rem; color:#64748b; font-weight:600; margin-top:2px; }
.plan-layer-opacity { min-width:72px; }
.layer-opacity-toggle { width:72px; accent-color:#2563eb; }
.plan-layer-row.is-dimmed-layer { box-shadow:inset 0 0 0 1px rgba(37,99,235,.18),0 4px 12px rgba(15,23,42,.04); }
.plan-layer-export-note { padding:7px 9px; border-radius:12px; background:#fff; border:1px solid #dbeafe; }
.plan-layer-row-pro .plan-layer-lock { margin-left:0; margin-right:0; }
@media (max-width:900px){ .plan-layer-list-pro{grid-template-columns:1fr;} .plan-layer-opacity{min-width:62px;} .layer-opacity-toggle{width:62px;} }

/* Regie Plan v3.7.6-editor-side-panels */
.plan-placement-card {
  border-color: #c7d2fe;
  background: linear-gradient(180deg, #ffffff, #eef2ff);
}
.plan-placement-status {
  border: 1px solid #e0e7ff;
  background: #ffffff;
  border-radius: 12px;
  padding: 7px 9px;
}
.plan-placement-section {
  padding: 8px;
  border: 1px solid rgba(99,102,241,.16);
  background: rgba(255,255,255,.82);
  border-radius: 14px;
  margin-bottom: 8px;
}
.plan-placement-section-title {
  font-size: .76rem;
  font-weight: 900;
  color: #312e81;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 6px;
}
.plan-placement-grid {
  display: grid;
  gap: 6px;
}
.plan-placement-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.plan-placement-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.plan-placement-grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.plan-placement-grid.six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.plan-placement-grid .btn,
.plan-nudge-pad .btn { font-size: .74rem; font-weight: 800; }
.plan-nudge-pad {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  max-width: 210px;
  margin: 0 auto;
}
.plan-element.selected.is-placement-preview .selection-hitbox {
  stroke: #4f46e5 !important;
  stroke-width: 4px !important;
}
@media (max-width: 900px) {
  .plan-placement-grid.three,
  .plan-placement-grid.four,
  .plan-placement-grid.six { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


/* Regie Plan v3.7.6-editor-side-panels */
.plan-editor-view-switches {
  top: 72px;
  z-index: 40;
}
.plan-ux-command-bar {
  top: 128px;
  z-index: 39;
}
.builder-layout.unified-tools .builder-main {
  position: relative;
}
.builder-layout.unified-tools .builder-toolbar.toolbar-pro {
  position: sticky;
  top: 186px;
  z-index: 38;
  background: rgba(248,250,252,.97);
  backdrop-filter: blur(12px);
  box-shadow: 0 10px 24px rgba(15,23,42,.08);
  border: 1px solid #dbe4f0;
}
.builder-layout.unified-tools #leftBuilderPanel {
  top: 188px;
  max-height: calc(100vh - 198px);
  scrollbar-width: thin;
}
.plan-side-layer-card {
  border-color: #bfdbfe;
  background: linear-gradient(180deg,#ffffff,#eff6ff);
}
.plan-side-layer-card .builder-layers {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.plan-side-layer-card .plan-layer-control-card {
  display: grid;
  gap: 9px;
}
.plan-side-layer-card .plan-layer-control-header {
  display: block;
}
.plan-side-layer-card .plan-layer-actions {
  justify-content: flex-start;
  margin-top: 8px;
}
.plan-side-layer-card .plan-layer-actions .btn,
.plan-side-layer-card .plan-layer-presets .btn {
  padding: 4px 7px;
  font-size: .74rem;
}
.plan-side-layer-card .plan-layer-presets {
  padding: 6px;
  gap: 5px;
}
.plan-side-layer-card .plan-layer-list-pro {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
  max-height: 360px;
  overflow: auto;
  padding-right: 3px;
}
.plan-side-layer-card .plan-layer-row-pro {
  min-height: 48px;
  padding: 7px 8px;
  border-radius: 13px;
}
.plan-side-layer-card .plan-layer-name {
  font-size: .8rem;
}
.plan-side-layer-card .plan-layer-desc {
  font-size: .64rem;
}
.plan-side-layer-card .plan-layer-opacity {
  min-width: 58px;
}
.plan-side-layer-card .layer-opacity-toggle {
  width: 58px;
}
.plan-side-layer-card .plan-layer-export-note {
  font-size: .72rem;
  padding: 6px 8px;
}
.plan-titleblock-toggle-row,
.plan-ux-hint-row {
  position: relative;
  z-index: 4;
}
body.plan-editor-focus .plan-ux-command-bar {
  top: 8px;
}
body.plan-editor-focus .builder-layout.unified-tools .builder-toolbar.toolbar-pro {
  top: 70px;
}
body.plan-editor-focus .builder-layout.unified-tools .pro-viewport {
  height: calc(100vh - 138px) !important;
}
@media (max-width:1200px){
  .plan-editor-view-switches,
  .plan-ux-command-bar,
  .builder-layout.unified-tools .builder-toolbar.toolbar-pro { top: 0; }
  .builder-layout.unified-tools #leftBuilderPanel { top: 0; max-height: none; }
}


/* Regie Plan v3.7.7-editor-compact-workspace */
body.plan-editor-page .content-area {
  padding-top: 14px;
}
body.plan-editor-page .topbar {
  transition: height .18s ease, opacity .18s ease, padding .18s ease, transform .18s ease;
}
body.plan-editor-compact .topbar {
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 26px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  border: 0 !important;
  transform: translateY(-8px);
  pointer-events: none;
}
body.plan-editor-compact.plan-editor-search-open .topbar {
  height: 58px !important;
  padding: 8px 18px !important;
  opacity: 1 !important;
  border-bottom: 1px solid var(--rawtec-border) !important;
  transform: translateY(0);
  pointer-events: auto;
  z-index: 95;
}
body.plan-editor-page .topbar .top-actions { display: none; }
body.plan-editor-page .topbar .quick-search { max-width: 760px; }
body.plan-editor-page .topbar .quick-search input { padding: 8px 14px; }
body.plan-editor-compact .content-area { padding: 10px 12px 14px !important; }
body.plan-editor-compact .plan-editor-admin-header {
  display: none !important;
}
body.plan-editor-admin-open .plan-editor-admin-header {
  display: flex !important;
  margin-bottom: 8px !important;
  padding: 8px 10px;
  border: 1px solid #dbe4f0;
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 10px 28px rgba(15,23,42,.08);
}
body.plan-editor-admin-open .plan-editor-admin-header h1 { font-size: 1.08rem; margin: 0; }
body.plan-editor-admin-open .plan-editor-admin-header .scale-status,
body.plan-editor-admin-open .plan-editor-admin-header .text-muted { font-size: .75rem; }
body.plan-editor-admin-open .plan-editor-admin-header .btn { padding: 4px 8px; font-size: .78rem; }
body.plan-editor-compact .plan-editor-view-switches {
  top: 0 !important;
  margin-bottom: 6px !important;
  padding: 5px 7px !important;
  border-radius: 12px !important;
  display: inline-flex;
  width: auto;
  max-width: 100%;
  gap: 5px;
  z-index: 92;
}
body.plan-editor-compact .plan-editor-view-switches .plan-view-hint,
body.plan-editor-compact .plan-editor-view-switches button:nth-of-type(4) {
  display: none !important;
}
body.plan-editor-compact .plan-editor-view-switches .btn {
  padding: 4px 8px;
  font-size: .78rem;
}
body.plan-editor-compact .plan-ux-command-bar {
  position: sticky !important;
  top: 0 !important;
  z-index: 91 !important;
  margin: 0 0 6px !important;
  padding: 6px 8px !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.13);
  background: rgba(255,255,255,.98) !important;
  backdrop-filter: blur(14px);
}
body.plan-editor-compact .plan-ux-command-group {
  padding: 3px 5px;
  gap: 4px;
}
body.plan-editor-compact .plan-ux-command-group .btn {
  padding: 4px 7px;
  font-size: .76rem;
}
body.plan-editor-compact .plan-ux-label { font-size: .62rem; }
body.plan-editor-compact .plan-command-meta { display: none; }
body.plan-editor-compact .plan-save-primary {
  box-shadow: 0 8px 18px rgba(22,163,74,.22);
}
body.plan-editor-compact .builder-layout.unified-tools {
  grid-template-columns: 285px minmax(0, 1fr);
  gap: 8px;
}
body.plan-editor-compact .builder-layout.unified-tools #leftBuilderPanel {
  top: 58px !important;
  max-height: calc(100vh - 66px) !important;
}
body.plan-editor-compact .builder-layout.unified-tools .builder-main {
  padding: 7px !important;
  border-radius: 14px;
}
body.plan-editor-compact .builder-layout.unified-tools .builder-toolbar.toolbar-pro {
  top: 52px !important;
  z-index: 80 !important;
  padding: 5px 7px !important;
  margin-bottom: 5px !important;
  gap: 5px;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(15,23,42,.09);
}
body.plan-editor-compact .builder-layout.unified-tools .builder-toolbar.toolbar-pro .btn,
body.plan-editor-compact .builder-layout.unified-tools .builder-toolbar.toolbar-pro .tool-btn {
  padding: 3px 6px;
  font-size: .74rem;
}
body.plan-editor-compact .builder-layout.unified-tools .builder-toolbar.toolbar-pro .ms-auto,
body.plan-editor-compact .plan-ux-hint-row {
  display: none !important;
}
body.plan-editor-compact .plan-titleblock-toggle-row {
  padding: 4px 8px !important;
  margin-bottom: 5px !important;
  border-radius: 10px !important;
}
body.plan-editor-compact .builder-layout.unified-tools .pro-viewport {
  height: calc(100vh - 112px) !important;
  min-height: 610px !important;
  padding: 14px !important;
  scroll-behavior: auto;
}
body.plan-editor-compact .builder-card {
  margin-bottom: 8px;
}
body.plan-editor-compact .plan-panel-tabs {
  top: 0 !important;
  padding: 5px !important;
  gap: 4px;
}
body.plan-editor-compact .plan-panel-tab {
  padding: 4px 7px;
  font-size: .72rem;
}
body.plan-editor-compact .plan-side-layer-card .plan-layer-list-pro {
  max-height: 300px;
}
body.plan-editor-compact.plan-editor-search-open .plan-ux-command-bar {
  top: 58px !important;
}
body.plan-editor-compact.plan-editor-search-open .builder-layout.unified-tools .builder-toolbar.toolbar-pro {
  top: 110px !important;
}
body.plan-editor-compact.plan-editor-search-open .builder-layout.unified-tools #leftBuilderPanel {
  top: 116px !important;
  max-height: calc(100vh - 124px) !important;
}
body.plan-editor-focus .plan-ux-command-bar { top: 0 !important; }
body.plan-editor-focus .builder-layout.unified-tools .builder-toolbar.toolbar-pro { top: 52px !important; }
body.plan-editor-focus .builder-layout.unified-tools .pro-viewport { height: calc(100vh - 112px) !important; }
@media (max-width: 1200px) {
  body.plan-editor-compact .builder-layout.unified-tools { grid-template-columns: 1fr; }
  body.plan-editor-compact .builder-layout.unified-tools #leftBuilderPanel { max-height: none !important; top: 0 !important; }
  body.plan-editor-compact .plan-ux-command-bar,
  body.plan-editor-compact .builder-layout.unified-tools .builder-toolbar.toolbar-pro { top: 0 !important; }
}

/* v3.8.0 - Liaison plan / matériel événement */
.plan-material-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .45rem;
}
.plan-material-kpis div {
  border: 1px solid #e5e7eb;
  border-radius: .65rem;
  background: #f8fafc;
  padding: .45rem .5rem;
  text-align: center;
}
.plan-material-kpis strong {
  display: block;
  font-size: 1.1rem;
  line-height: 1;
  color: #0f172a;
}
.plan-material-kpis span {
  display: block;
  color: #64748b;
  font-size: .72rem;
  margin-top: .2rem;
}
.plan-material-mini-list {
  display: grid;
  gap: .35rem;
}
.plan-material-mini-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .25rem .5rem;
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: .55rem;
  background: #fff;
  padding: .4rem .5rem;
}
.plan-material-mini-row.has-warning {
  border-color: #facc15;
  background: #fffbeb;
}
.plan-material-mini-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.plan-material-mini-row small {
  grid-column: 1 / -1;
  color: #64748b;
}


/* v3.9.0 live exploitation */
.live-shell{margin:-8px -6px 0}.live-header{background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;border-radius:18px;padding:22px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;box-shadow:0 14px 36px rgba(15,23,42,.18)}.live-header h1{margin:0;font-size:clamp(1.6rem,4vw,2.4rem)}.live-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;opacity:.75}.live-subtitle{opacity:.86}.live-actions{display:flex;gap:8px;flex-wrap:wrap}.live-status-strip{position:sticky;top:0;z-index:40;background:#0f172a;color:#fff;border-radius:0 0 16px 16px;margin:0 10px 18px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 10px 28px rgba(15,23,42,.22)}.live-select{min-width:180px}.live-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.live-kpi{background:#fff;border:1px solid rgba(148,163,184,.35);border-radius:16px;padding:15px;box-shadow:0 8px 20px rgba(15,23,42,.06)}.live-kpi span{display:block;color:#64748b;font-size:.82rem}.live-kpi strong{display:block;font-size:1.75rem;line-height:1.1}.live-kpi small{color:#64748b}.live-alert{border-color:#fecaca;background:#fff1f2}.live-card{background:#fff;border:1px solid rgba(148,163,184,.35);border-radius:18px;padding:16px;box-shadow:0 8px 22px rgba(15,23,42,.06)}.live-card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.live-card-title h2{font-size:1.1rem;margin:0}.live-card-title span{color:#64748b;font-size:.9rem}.live-list{display:grid;gap:10px}.live-list.compact{gap:8px}.live-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(226,232,240,.9);border-radius:14px;padding:10px;background:#f8fafc}.live-row-alert{border-color:#fecaca;background:#fff1f2}.live-inline-form{display:flex;gap:6px;align-items:center;min-width:240px}.live-table td,.live-table th{vertical-align:middle}.live-contact{border:1px solid rgba(226,232,240,.9);border-radius:14px;padding:10px;background:#f8fafc}.live-contact strong,.live-contact span{display:block}.live-contact span{color:#64748b;font-size:.85rem}.live-event-card.live-active{border-color:#22c55e;box-shadow:0 0 0 2px rgba(34,197,94,.12),0 10px 26px rgba(15,23,42,.08)}.live-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.live-mini-grid div{border-radius:12px;background:#f8fafc;padding:10px}.live-mini-grid span{display:block;font-size:.78rem;color:#64748b}.live-mini-grid strong{font-size:1.3rem}@media(max-width:1100px){.live-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-row{align-items:flex-start;flex-direction:column}.live-inline-form{width:100%;min-width:0}.live-inline-form select{flex:1}}@media(max-width:720px){.live-shell{margin:0}.live-header{border-radius:0;margin:-16px -12px 0}.live-status-strip{border-radius:0;margin:0 -12px 14px;align-items:flex-start;flex-direction:column}.live-kpi-grid{grid-template-columns:1fr}.live-actions .btn{width:100%}.live-actions{width:100%}.live-card{border-radius:14px;padding:12px}}


/* v4.0.0 - Régie Plan Pro */
.pro-hero{background:radial-gradient(circle at 20% 0%,#4f46e5 0%,#1d4ed8 42%,#071426 100%)}
.pro-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pro-event-card{background:#fff;border:1px solid var(--rawtec-border);border-radius:24px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.07)}.pro-event-card.is-live{border-color:#22c55e;box-shadow:0 16px 34px rgba(34,197,94,.12)}.pro-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.pro-card-head h2{font-size:1.1rem;margin:.55rem 0 .2rem;font-weight:900}.pro-card-head p{margin:0;color:#64748b}.pro-score{text-align:right}.pro-score strong{font-size:2rem;line-height:1;color:#0f172a}.pro-score span{display:block;color:#64748b;font-weight:800;font-size:.8rem}.pro-progress{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden}.pro-progress span{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#22c55e);border-radius:999px}.pro-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.pro-mini-grid div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:9px}.pro-mini-grid span{display:block;color:#64748b;font-size:.75rem;font-weight:800}.pro-mini-grid strong{font-size:1.15rem}.pro-top-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:14px}.pro-readiness,.pro-kpi{background:#fff;border:1px solid var(--rawtec-border);border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.06)}.pro-readiness span,.pro-kpi span{display:block;color:#64748b;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.pro-readiness strong,.pro-kpi strong{font-size:2rem;line-height:1.2}.pro-kpi.is-warning{border-color:#fbbf24;background:#fffbeb}.pro-stepper{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.pro-step{border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:12px}.pro-step.done{border-color:#22c55e;background:#f0fdf4}.pro-step strong{display:block}.pro-step span{color:#64748b;font-size:.85rem}.pro-risk-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.pro-risk-list.compact{margin-top:12px;gap:6px}.pro-risk-list li{border-left:4px solid #94a3b8;background:#f8fafc;border-radius:12px;padding:10px 12px}.pro-risk-list li span{display:block;color:#64748b;font-size:.86rem}.pro-risk-list .risk-danger{border-color:#dc2626;background:#fef2f2}.pro-risk-list .risk-warning{border-color:#f59e0b;background:#fffbeb}.pro-risk-list .risk-info{border-color:#2563eb;background:#eff6ff}.pro-risk-list .risk-ok{border-color:#16a34a;background:#f0fdf4}@media (max-width:1300px){.pro-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-top-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-stepper{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:850px){.pro-event-grid,.pro-top-grid{grid-template-columns:1fr}.pro-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-stepper{grid-template-columns:1fr}}


/* v4.0.1 - Pro polish */
.pro-readiness em{display:inline-flex;margin:.2rem 0 .45rem;padding:.2rem .55rem;border-radius:999px;font-style:normal;font-weight:900;font-size:.78rem;background:#e2e8f0;color:#0f172a}.pro-readiness small{display:block;color:#64748b;margin-top:.45rem}.pro-band-success{border-color:#22c55e;background:#f0fdf4}.pro-band-warning{border-color:#f59e0b;background:#fffbeb}.pro-band-danger{border-color:#dc2626;background:#fef2f2}.pro-band-info{border-color:#2563eb;background:#eff6ff}.pro-band-muted{border-color:#94a3b8;background:#f8fafc}.pro-score.is-success strong,.pro-score.is-success span{color:#16a34a}.pro-score.is-warning strong,.pro-score.is-warning span{color:#b45309}.pro-score.is-danger strong,.pro-score.is-danger span{color:#dc2626}.pro-score.is-info strong,.pro-score.is-info span{color:#2563eb}.pro-action-panel{border-color:#dbeafe;background:linear-gradient(180deg,#ffffff,#eff6ff)}.pro-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pro-action-card{display:block;text-decoration:none;border:1px solid #dbeafe;background:#fff;border-radius:16px;padding:12px;color:#0f172a;box-shadow:0 6px 16px rgba(15,23,42,.04)}.pro-action-card:hover{border-color:#2563eb;box-shadow:0 10px 24px rgba(37,99,235,.12)}.pro-action-card strong{display:block;font-weight:900}.pro-action-card span{display:block;color:#64748b;font-size:.84rem;margin-top:.25rem}.pro-progress.compact{height:8px;min-width:90px;margin-bottom:.15rem}.pro-progress-success span{background:linear-gradient(90deg,#16a34a,#22c55e)}.pro-progress-warning span{background:linear-gradient(90deg,#f59e0b,#facc15)}.pro-progress-danger span{background:linear-gradient(90deg,#dc2626,#fb7185)}.pro-progress-info span{background:linear-gradient(90deg,#2563eb,#60a5fa)}@media(max-width:1200px){.pro-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.pro-action-grid{grid-template-columns:1fr}.pro-card-head{align-items:flex-start}.pro-score{text-align:left}}

/* v4.1.0 - Event lifecycle / delete */
.event-tile-managed{position:relative;display:block}.event-tile-managed h3 a{color:var(--rawtec-ink)}.event-tile-actions{display:flex;gap:.45rem;flex-wrap:wrap}.pro-action-card.danger{border-color:#fecaca;background:#fff1f2}.pro-action-card.danger strong{color:#991b1b}.event-delete-panel .table-warning td{background:#fffbeb}.event-delete-panel .border-danger{border-color:#fecaca!important}.event-delete-panel .pro-kpi.is-warning{background:#fffbeb;border-color:#fbbf24}

/* v4.2.0 - Event control / clôture */
.closeout-hero{background:radial-gradient(circle at 10% 0%,#0ea5e9 0%,#1d4ed8 38%,#020617 100%)}
.closeout-kpi-grid{display:grid;grid-template-columns:2fr repeat(4,minmax(0,1fr));gap:14px}.closeout-score{background:#fff;border:1px solid var(--rawtec-border);border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.06)}.closeout-score span{display:block;color:#64748b;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.closeout-score strong{display:block;font-size:2.2rem;line-height:1.1}.closeout-score small{display:block;color:#64748b;margin:.25rem 0 .65rem}.closeout-score.is-ok{border-color:#22c55e;background:#f0fdf4}.closeout-score.is-warning{border-color:#f59e0b;background:#fffbeb}.closeout-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.closeout-action-card{width:100%;height:100%;text-align:left;border:1px solid #dbeafe;background:#fff;border-radius:16px;padding:14px;color:#0f172a;box-shadow:0 6px 16px rgba(15,23,42,.04)}.closeout-action-card:hover{border-color:#2563eb;box-shadow:0 10px 24px rgba(37,99,235,.12)}.closeout-action-card strong{display:block;font-weight:900}.closeout-action-card span{display:block;color:#64748b;font-size:.84rem;margin-top:.25rem}.event-delete-panel .alert-info{border-color:#bfdbfe;background:#eff6ff}@media(max-width:1200px){.closeout-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.closeout-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.closeout-kpi-grid,.closeout-action-grid{grid-template-columns:1fr}}


/* v4.3.0 - Post event report */
.post-event-hero { background: linear-gradient(135deg, #111827 0%, #374151 100%); }
.post-event-kpi-grid { display: grid; grid-template-columns: 1.4fr repeat(5, minmax(120px, 1fr)); gap: 12px; }
.post-event-score { background: #fff; border: 1px solid rgba(15,23,42,.10); border-radius: 18px; padding: 18px; box-shadow: 0 10px 28px rgba(15,23,42,.08); display:flex; flex-direction:column; gap:4px; }
.post-event-score span { color:#64748b; font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; font-weight:700; }
.post-event-score strong { font-size:1.8rem; color:#111827; }
.post-event-score small { color:#64748b; }
.post-event-score.is-ok { border-color: rgba(22,163,74,.28); background: linear-gradient(180deg,#f0fdf4,#fff); }
.post-event-score.is-warning { border-color: rgba(245,158,11,.30); background: linear-gradient(180deg,#fffbeb,#fff); }
.clean-list.rich li { align-items:flex-start; }
.clean-list.rich li strong { max-width:100%; }
@media (max-width: 1100px) { .post-event-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .post-event-kpi-grid { grid-template-columns: 1fr; } }


/* v4.3.1 - Polish bilan export */
.post-event-score.is-danger { border-color: rgba(220,53,69,.35); background: rgba(220,53,69,.08); }
.post-event-score.is-info { border-color: rgba(13,110,253,.25); background: rgba(13,110,253,.06); }
.pro-risk-list .risk-ok { border-left-color: #198754; }
.pro-risk-list .risk-ok strong { color: #146c43; }
.pro-risk-list .risk-warning { border-left-color: #ffc107; }


/* v4.3.2 - Role boundaries Planning sync */
.role-boundary-note, .planning-master-note {
  border-left: 4px solid #0d6efd;
  background: rgba(13, 110, 253, .08);
}


/* v4.4.0 - retours terrain */
.field-feedback-shell .feedback-category-grid div { min-height: 72px; }
.field-feedback-shell .post-event-score.ok { background: linear-gradient(135deg, #ecfdf5, #ffffff); border-color: #86efac; }
.field-feedback-shell .post-event-score.warning { background: linear-gradient(135deg, #fffbeb, #ffffff); border-color: #fcd34d; }
.field-feedback-shell .post-event-score.danger { background: linear-gradient(135deg, #fef2f2, #ffffff); border-color: #fca5a5; }

/* v4.5.0 - continuité opérationnelle */
.continuity-hero{background:linear-gradient(135deg,#172554,#2563eb 58%,#0ea5e9)}
.logbook-hero{background:linear-gradient(135deg,#111827,#7c2d12 62%,#dc2626)}
.dossier-hero{background:linear-gradient(135deg,#052e16,#047857 58%,#0d9488)}
.reuse-grid{display:grid;gap:9px}.reuse-grid label{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:start;border:1px solid #e2e8f0;border-radius:14px;padding:11px;background:#f8fafc}.reuse-grid label input{grid-row:1/3;margin-top:4px}.reuse-grid label strong,.reuse-grid label span{grid-column:2}.reuse-grid label span{font-size:.82rem;color:#64748b}
.continuity-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.continuity-kpis>div{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fff}.continuity-kpis span{display:block;color:#64748b;font-size:.8rem;font-weight:800;text-transform:uppercase}.continuity-kpis strong{font-size:1.8rem}.continuity-kpis .is-danger{border-color:#fca5a5;background:#fef2f2}
.logbook-list{display:grid;gap:12px}.logbook-entry{border:1px solid #e2e8f0;border-left:5px solid #94a3b8;border-radius:16px;padding:14px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05)}.logbook-entry.priority-important{border-left-color:#f59e0b}.logbook-entry.priority-critical{border-left-color:#dc2626}.logbook-entry.status-resolved,.logbook-entry.status-archived{opacity:.76;background:#f8fafc}.logbook-head{display:flex;justify-content:space-between;gap:12px}.logbook-head h2{font-size:1.08rem;margin:.45rem 0}.logbook-head time{color:#64748b;white-space:nowrap;font-size:.85rem}
.dossier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dossier-grid .panel-card{min-width:0}
@media(max-width:900px){.continuity-kpis,.dossier-grid{grid-template-columns:1fr}.logbook-head{flex-direction:column}.logbook-head time{white-space:normal}}

/* v4.6.0 - conducteur événement */
.conductor-shell{max-width:1500px;margin:0 auto}.conductor-hero{background:radial-gradient(circle at 15% 0%,#6d5dfc 0%,#3031a5 38%,#111936 100%)}
.conductor-stats{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:12px}.conductor-stats>div{background:#fff;border:1px solid var(--rawtec-border);border-radius:18px;padding:16px;box-shadow:0 8px 22px rgba(21,32,51,.05)}.conductor-stats span{display:block;color:var(--rawtec-muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.conductor-stats strong{font-size:1.8rem}.conductor-stats .is-warning{border-color:#f7c65d;background:#fffaf0}.conductor-stats .is-critical{border-color:#f18b8b;background:#fff5f5;color:#a01414}
.conductor-add summary{cursor:pointer;font-weight:800;color:#203861}.conductor-list{display:grid;gap:10px}.conductor-day{position:sticky;top:76px;z-index:3;margin-top:14px;padding:8px 14px;border-radius:12px;background:#17233d;color:#fff;font-weight:800;box-shadow:0 6px 18px rgba(12,24,48,.18)}
.conductor-row{display:grid;grid-template-columns:105px minmax(0,1fr) 155px;gap:16px;align-items:start;padding:16px 18px;background:#fff;border:1px solid var(--rawtec-border);border-left:6px solid #7894c5;border-radius:18px;box-shadow:0 7px 20px rgba(21,32,51,.05)}.conductor-status-done{border-left-color:#2ca66f;opacity:.82}.conductor-status-in_progress{border-left-color:#286cff}.conductor-status-delayed{border-left-color:#e49a19;background:#fffaf1}.conductor-status-cancelled{border-left-color:#a7afbd;opacity:.64}.conductor-critical{box-shadow:0 0 0 2px rgba(211,50,50,.18),0 8px 22px rgba(120,20,20,.08)}
.conductor-time strong{display:block;font-size:1.55rem;color:#162441}.conductor-time span{font-size:.75rem;text-transform:uppercase;font-weight:800;color:#6b778b}.conductor-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.conductor-title h3{font-size:1rem;margin:0;font-weight:850}.conductor-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;color:#687487;font-size:.82rem}.conductor-main p{margin:9px 0 0;color:#3f4b5e;font-size:.9rem}.priority-pill{padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:850}.priority-important{background:#fff0c7;color:#8a5b00}.priority-critical{background:#ffe0e0;color:#a01414}.conductor-action .form-select{min-width:130px}
@media(max-width:1000px){.conductor-stats{grid-template-columns:repeat(2,1fr)}.conductor-row{grid-template-columns:78px minmax(0,1fr)}.conductor-action{grid-column:2}.conductor-day{top:6px}}@media(max-width:620px){.conductor-stats{grid-template-columns:1fr 1fr}.conductor-row{grid-template-columns:1fr}.conductor-action{grid-column:auto}.conductor-time{display:flex;align-items:center;gap:10px}.conductor-time strong{font-size:1.25rem}}

/* v4.6.1 - stabilisation conducteur */
.conductor-scope-note{margin:0 0 12px;color:#667085;font-size:.88rem}.conductor-hero .hero-actions{gap:8px}.conductor-stats{grid-template-columns:repeat(6,minmax(112px,1fr))}.conductor-list .conductor-row:focus-within{outline:3px solid rgba(40,108,255,.18)}@media(max-width:1150px){.conductor-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.conductor-stats{grid-template-columns:1fr 1fr}}


/* V4.7.0 Conducteur terrain */
.conductor-field-shell{max-width:1180px;margin:0 auto}.conductor-field-hero{background:radial-gradient(circle at 15% 0%,#00a37a 0%,#135a7a 38%,#10213d 100%)}
.conductor-field-bar{position:sticky;top:82px;z-index:6}.conductor-field-stats{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px}.conductor-field-stats>div{background:#fff;border:1px solid var(--rawtec-border);border-radius:18px;padding:14px;box-shadow:0 8px 20px rgba(21,32,51,.05)}.conductor-field-stats span{display:block;color:var(--rawtec-muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.conductor-field-stats strong{font-size:1.55rem}.conductor-field-stats .is-warning{border-color:#f7c65d;background:#fffaf0}.conductor-field-stats .is-critical{border-color:#f18b8b;background:#fff5f5;color:#a01414}
.conductor-next-card{border-left:6px solid #00a37a}.conductor-next-main{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.conductor-next-main strong{font-size:2.4rem;color:#0f766e}.conductor-next-main h2{font-size:1.35rem;margin:0;font-weight:900}.conductor-field-list{display:grid;gap:10px}.conductor-field-row{display:grid;grid-template-columns:92px minmax(0,1fr) 140px;gap:14px;align-items:start;padding:14px 16px;background:#fff;border:1px solid var(--rawtec-border);border-left:6px solid #7894c5;border-radius:18px;box-shadow:0 8px 20px rgba(21,32,51,.05)}.conductor-field-row.is-next{box-shadow:0 0 0 3px rgba(0,163,122,.18),0 8px 20px rgba(21,32,51,.05)}.conductor-field-row.is-overdue{background:#fff8ed}.field-time strong{display:block;font-size:1.45rem;color:#162441}.field-time span{font-size:.72rem;text-transform:uppercase;font-weight:850;color:#6b778b}.field-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.field-title h3{font-size:1.02rem;margin:0;font-weight:900}.field-main p{margin:8px 0 0;color:#3f4b5e;font-size:.9rem}
@media(max-width:850px){.conductor-field-bar{top:0}.conductor-field-stats{grid-template-columns:repeat(2,1fr)}.conductor-field-row{grid-template-columns:1fr}.field-time{display:flex;gap:10px;align-items:center}.field-actions{margin-top:6px}.conductor-next-main strong{font-size:2rem}}

/* Régie Plan v4.8.0 - poste de commandement régisseur */
.regisseur-shell{max-width:1220px;margin:0 auto}.regisseur-hero{background:radial-gradient(circle at 12% 0%,#ffb703 0%,#244e7a 36%,#101a32 100%)}
.regisseur-status{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px}.regisseur-status>div{border-left:4px solid #244e7a;padding-left:12px}.regisseur-status span,.regisseur-kpis span{display:block;color:var(--rawtec-muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.regisseur-status strong{font-size:.98rem}.regisseur-kpis{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px}.regisseur-kpis>div{background:#fff;border:1px solid var(--rawtec-border);border-radius:18px;padding:14px;box-shadow:0 8px 20px rgba(21,32,51,.05)}.regisseur-kpis strong{font-size:1.7rem}.regisseur-kpis .is-warning{border-color:#f7c65d;background:#fff9eb}.regisseur-kpis .is-critical{border-color:#ef8d8d;background:#fff5f5;color:#a01414}
.regisseur-next{border-left:6px solid #ffb703}.regisseur-next-line{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.regisseur-next-line strong{font-size:2.6rem;color:#b45309}.regisseur-next-line h2{font-size:1.38rem;margin:0;font-weight:900}.regisseur-window-form{min-width:120px}.regisseur-timeline{display:grid;gap:10px}.regisseur-row{display:grid;grid-template-columns:86px minmax(0,1fr) 138px;gap:14px;align-items:start;border:1px solid var(--rawtec-border);border-left:6px solid #7894c5;border-radius:18px;background:#fff;padding:13px 15px;box-shadow:0 8px 20px rgba(21,32,51,.05)}.regisseur-row.is-next{box-shadow:0 0 0 3px rgba(255,183,3,.2),0 8px 20px rgba(21,32,51,.05)}.regisseur-row.is-critical{border-left-color:#dc2626}.regisseur-row.is-overdue{background:#fff8ed;border-left-color:#f59e0b}.regisseur-time strong{display:block;font-size:1.45rem;color:#162441}.regisseur-time span{font-size:.72rem;text-transform:uppercase;font-weight:850;color:#6b778b}.regisseur-main p{margin:8px 0 0;color:#3f4b5e;font-size:.9rem}.regisseur-alert-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}.regisseur-alert-list li{border:1px solid var(--rawtec-border);border-radius:14px;padding:10px 12px;background:#fff}.regisseur-alert-list strong{display:block;font-size:.9rem}.regisseur-alert-list span{display:block;color:var(--rawtec-muted);font-size:.78rem;margin-top:3px}.regisseur-note-card textarea{resize:vertical}
@media(max-width:900px){.regisseur-status,.regisseur-kpis{grid-template-columns:repeat(2,1fr)}.regisseur-row{grid-template-columns:1fr}.regisseur-actions{margin-top:6px}.regisseur-next-line strong{font-size:2rem}}

/* Regie Plan v4.8.1 - polish poste regisseur */
.regisseur-polish .hero-actions{align-items:flex-start}.regisseur-brief{display:flex;justify-content:space-between;gap:18px;align-items:center;border-left:7px solid #244e7a}.regisseur-brief h2{font-size:1.35rem;margin:0 0 6px;font-weight:900}.regisseur-brief p{margin:0;color:#3f4b5e}.regisseur-brief-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.regisseur-state-danger{border-left-color:#dc2626;background:#fff7f7}.regisseur-state-warning{border-left-color:#f59e0b;background:#fffaf0}.regisseur-state-ok{border-left-color:#16a34a;background:#f6fff9}.regisseur-state-idle{border-left-color:#7894c5;background:#f8fbff}.regisseur-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px}.regisseur-quick-card{display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;background:#fff;border:1px solid var(--rawtec-border);border-radius:18px;padding:13px 15px;box-shadow:0 8px 20px rgba(21,32,51,.05);color:inherit}.regisseur-quick-card span{font-size:.78rem;font-weight:900;text-transform:uppercase;color:var(--rawtec-muted)}.regisseur-quick-card strong{font-size:1.3rem}.regisseur-quick-card.level-danger{border-color:#ef8d8d;background:#fff5f5}.regisseur-quick-card.level-warning{border-color:#f7c65d;background:#fff9eb}.regisseur-window-title{align-items:flex-start}.regisseur-window-chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.regisseur-time em{display:block;font-style:normal;font-size:.72rem;font-weight:850;color:#b45309;margin-top:3px}.regisseur-quick-status{display:grid;grid-template-columns:1fr;gap:5px}.regisseur-kpis small{display:block;color:var(--rawtec-muted);font-size:.72rem;font-weight:750;margin-top:-2px}.regisseur-row.is-next{border-left-color:#ffb703}.regisseur-note-card .form-label{font-size:.78rem;font-weight:850;color:#45546a}.regisseur-window-card{overflow:hidden}
@media(max-width:1000px){.regisseur-brief{align-items:flex-start;flex-direction:column}.regisseur-brief-actions{justify-content:flex-start}.regisseur-quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.regisseur-quick-grid,.regisseur-kpis,.regisseur-status{grid-template-columns:1fr}.regisseur-window-title{gap:10px}.regisseur-window-chips{justify-content:flex-start}.regisseur-quick-status{grid-template-columns:repeat(3,1fr)}.regisseur-quick-status .btn{font-size:.76rem;padding:5px 6px}.regisseur-brief-actions .btn{width:100%}}


/* Regie Plan v4.8.6 - ergonomie editeur / calibration */
.pro-canvas.plan-canvas{width:auto;min-height:0;max-width:none;}
.builder-layout.plan-advanced-tools-collapsed .toolbar-toolbox{display:none;}
.toolbar-pro{gap:8px;flex-wrap:wrap;}
#toggleAdvancedPlanToolsBtn{white-space:nowrap;}
.plan-viewport.pro-viewport{position:relative;overflow:auto;min-height:62vh;max-height:calc(100vh - 220px);}
#gridLayer{pointer-events:none;}
.scale-calibration-marker text{paint-order:stroke;stroke:#fff;stroke-width:4px;}
.builder-card.is-collapsed{padding-bottom:10px;}
.builder-card.is-collapsed .card-toggle{padding-bottom:0;}
@media (max-width:1100px){.toolbar-pro .btn{font-size:.78rem;padding:.35rem .5rem}.plan-viewport.pro-viewport{max-height:calc(100vh - 185px)}}


/* Regie Plan v4.8.7 - workspace compact éditeur de plan */
body.plan-editor-v487 .content-area {
  padding-top: 14px;
}
.plan-editor-v487-switches {
  margin-bottom: 6px !important;
  padding: 5px 7px !important;
  border-radius: 12px !important;
}
.plan-ux-command-bar-v487 {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  align-items: center;
  overflow-x: auto;
  padding: 6px 8px !important;
  margin-bottom: 6px !important;
  border-radius: 14px !important;
}
.plan-ux-command-bar-v487 .plan-ux-command-group {
  flex: 0 0 auto;
  padding: 3px 5px;
}
.plan-ux-command-bar-v487 .btn {
  padding: 4px 7px;
  font-size: .76rem;
  line-height: 1.15;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace {
  grid-template-columns: 260px minmax(0,1fr) 330px !important;
  gap: 8px !important;
  align-items: start;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace #rightBuilderPanel {
  display: block !important;
  position: sticky;
  top: 72px;
  max-height: calc(100vh - 82px);
  overflow: auto;
  padding-left: 2px;
  scrollbar-width: thin;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace #leftBuilderPanel {
  top: 72px !important;
  max-height: calc(100vh - 82px) !important;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace .builder-main {
  padding: 7px !important;
  border-radius: 14px !important;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace .builder-toolbar.toolbar-pro.plan-editor-slim-toolbar {
  position: sticky;
  top: 52px !important;
  z-index: 45;
  padding: 5px 7px !important;
  margin-bottom: 5px !important;
  gap: 5px !important;
  flex-wrap: nowrap;
  overflow-x: auto;
  border-radius: 12px !important;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace .builder-toolbar.toolbar-pro.plan-editor-slim-toolbar .btn,
.builder-layout.unified-tools.plan-editor-v487-compact-workspace .builder-toolbar.toolbar-pro.plan-editor-slim-toolbar label {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: .76rem;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace .pro-viewport {
  height: calc(100vh - 128px) !important;
  min-height: 680px !important;
  padding: 12px !important;
}
.plan-v487-tool-drawer-card {
  border-color: #bfdbfe !important;
  background: linear-gradient(180deg,#ffffff,#eff6ff) !important;
}
.plan-v487-drawer-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 8px;
  margin-bottom: 10px;
}
.plan-v487-tool-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 6px;
}
.plan-v487-tool-grid button {
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  color: #0f172a;
  min-height: 32px;
  font-size: .78rem;
  font-weight: 800;
}
.plan-v487-tool-grid button:hover {
  border-color: #2563eb;
  color: #1d4ed8;
  background: #eff6ff;
}
.plan-v487-advanced-box {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #dbeafe;
}
.plan-v487-toolbar-toolbox {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 5px;
  background: #0f172a !important;
}
.plan-v487-toolbar-toolbox .tool-btn {
  width: 100%;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace.hide-right-panel {
  grid-template-columns: 260px minmax(0,1fr) !important;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace.hide-right-panel #rightBuilderPanel {
  display: none !important;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace.hide-left-panel {
  grid-template-columns: minmax(0,1fr) 330px !important;
}
.builder-layout.unified-tools.plan-editor-v487-compact-workspace.hide-left-panel.hide-right-panel {
  grid-template-columns: minmax(0,1fr) !important;
}
body.plan-editor-focus .builder-layout.unified-tools.plan-editor-v487-compact-workspace #rightBuilderPanel,
body.plan-editor-focus .builder-layout.unified-tools.plan-editor-v487-compact-workspace #leftBuilderPanel {
  display: none !important;
}
body.plan-editor-focus .builder-layout.unified-tools.plan-editor-v487-compact-workspace .pro-viewport {
  height: calc(100vh - 96px) !important;
}
@media (max-width: 1350px) {
  .builder-layout.unified-tools.plan-editor-v487-compact-workspace {
    grid-template-columns: 235px minmax(0,1fr) 300px !important;
  }
}
@media (max-width: 1100px) {
  .builder-layout.unified-tools.plan-editor-v487-compact-workspace {
    grid-template-columns: 1fr !important;
  }
  .builder-layout.unified-tools.plan-editor-v487-compact-workspace #leftBuilderPanel,
  .builder-layout.unified-tools.plan-editor-v487-compact-workspace #rightBuilderPanel {
    position: static !important;
    max-height: none !important;
  }
}


/* Regie Plan v4.9.1 - video UX editor toolbar / collapsible panels */
body.plan-editor-v491 .content-area { padding-top: 10px; }
.plan-editor-v491-switches { position: sticky; top: 48px; z-index: 70; display: flex; align-items: center; gap: 5px; padding: 4px 6px !important; margin-bottom: 5px !important; background: rgba(241,245,249,.96); border: 1px solid #dbe4f0; border-radius: 12px; }
.plan-editor-v491-switches .btn { padding: 3px 7px; font-size: .72rem; line-height: 1.1; border-radius: 9px; }
.plan-editor-v491-switches .plan-view-hint { font-size: .72rem; }
.plan-v491-top-toolbar { position: sticky; top: 84px; z-index: 65; min-height: 38px; max-height: 48px; display: flex; flex-wrap: nowrap !important; align-items: center; gap: 5px; padding: 5px 7px !important; margin-bottom: 5px !important; border: 1px solid #cbd5e1; background: rgba(255,255,255,.97); box-shadow: 0 8px 22px rgba(15,23,42,.07); overflow-x: auto; }
.plan-v491-top-toolbar .plan-ux-command-group { padding: 2px 4px !important; gap: 4px !important; border-radius: 10px; }
.plan-v491-top-toolbar .plan-ux-label { font-size: .58rem !important; letter-spacing: .08em; text-transform: uppercase; color: #64748b; padding: 0 2px; }
.plan-v491-top-toolbar .btn { padding: 3px 6px !important; font-size: .70rem !important; min-height: 28px; border-radius: 9px !important; white-space: nowrap; }
.plan-v491-top-toolbar .plan-save-primary { min-width: 76px; }
.plan-v491-top-toolbar .plan-command-meta { display: none !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux { grid-template-columns: 245px minmax(0,1fr) 285px !important; gap: 7px !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v491-video-ux #rightBuilderPanel { top: 138px !important; max-height: calc(100vh - 148px) !important; scrollbar-width: thin; }
.builder-layout.unified-tools.plan-editor-v491-video-ux .builder-main { padding: 6px !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux .pro-viewport { height: calc(100vh - 172px) !important; min-height: 700px !important; padding: 10px !important; }
.plan-panel-collapse-head { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin-bottom: 6px; padding: 5px 7px; border: 1px solid #dbe4f0; border-radius: 11px; background: #ffffff; color: #0f172a; font-size: .78rem; font-weight: 900; }
.plan-panel-collapse-head button { width: 28px; height: 26px; border: 1px solid #cbd5e1; background: #f8fafc; border-radius: 8px; font-weight: 900; }
.plan-v491-panel-handles { position: fixed; inset: 0; pointer-events: none; z-index: 90; }
.plan-v491-edge-toggle { pointer-events: auto; position: fixed; top: 50%; transform: translateY(-50%); width: 26px; height: 54px; border: 1px solid #cbd5e1; background: rgba(255,255,255,.96); box-shadow: 0 10px 26px rgba(15,23,42,.14); font-weight: 900; color: #0f172a; }
.plan-v491-edge-left { left: 286px; border-radius: 0 10px 10px 0; }
.plan-v491-edge-right { right: 12px; border-radius: 10px 0 0 10px; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact { grid-template-columns: 54px minmax(0,1fr) 285px !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact #leftBuilderPanel { overflow: hidden; padding-right: 0; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact #leftBuilderPanel .builder-card { display: none !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact #leftBuilderPanel .plan-panel-collapse-head strong { display: none; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact #leftBuilderPanel .plan-panel-tabs { display: grid; grid-template-columns: 1fr; gap: 5px; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact #leftBuilderPanel .plan-panel-tab { width: 42px; min-height: 56px; padding: 5px 2px; writing-mode: vertical-rl; transform: rotate(180deg); font-size: .68rem; border-radius: 10px; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact { grid-template-columns: 245px minmax(0,1fr) 58px !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact #rightBuilderPanel { overflow: hidden; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact #rightBuilderPanel .builder-card:not(.plan-v491-top-tool-card) { display: none !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v491-top-tool-card { padding: 7px 5px !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-drawer-head strong,
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-drawer-head .small,
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-drawer-head .d-flex,
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-advanced-box { display: none !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-tool-grid { grid-template-columns: 1fr !important; gap: 5px; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-tool-grid button { min-height: 30px; padding: 2px; font-size: 0; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact .plan-v487-tool-grid button:nth-child(-n+8) { font-size: .63rem; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.hide-left-panel.right-panel-compact { grid-template-columns: minmax(0,1fr) 58px !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.hide-right-panel.left-panel-compact { grid-template-columns: 54px minmax(0,1fr) !important; }
.builder-layout.unified-tools.plan-editor-v491-video-ux.hide-left-panel.hide-right-panel { grid-template-columns: minmax(0,1fr) !important; }
.plan-v491-top-tool-card { padding: 9px !important; border-radius: 13px !important; }
.plan-v491-top-tool-card .plan-v487-drawer-head { margin-bottom: 7px; }
.plan-v491-top-tool-card .plan-v487-tool-grid { grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 4px !important; }
.plan-v491-top-tool-card .plan-v487-tool-grid button { min-height: 28px !important; padding: 2px 3px !important; font-size: .66rem !important; border-radius: 8px !important; line-height: 1.05; }
.plan-v491-top-tool-card .plan-v487-advanced-box { margin-top: 7px; padding-top: 7px; }
.plan-v491-top-tool-card .plan-v487-toolbar-toolbox { grid-template-columns: repeat(6,minmax(0,1fr)) !important; gap: 4px !important; }
.plan-v491-top-tool-card .tool-btn { height: 28px; min-width: 0; font-size: .72rem; }
body.regie-sidebar-compact .sidebar { width: 74px; padding: 18px 8px; }
body.regie-sidebar-compact .brand { justify-content: center; padding: 8px 0 16px; }
body.regie-sidebar-compact .brand span:not(.brand-mark) { display: none; }
body.regie-sidebar-compact .nav-item { font-size: 0; text-align: center; padding: 10px 4px; }
body.regie-sidebar-compact .nav-item::first-letter { font-size: 1.18rem; }
body.regie-sidebar-compact .topbar { padding-left: 14px; padding-right: 14px; }
body.plan-editor-focus .plan-v491-top-toolbar { top: 0 !important; }
body.plan-editor-focus .plan-editor-v491-switches { display: none !important; }
body.plan-editor-focus .builder-layout.unified-tools.plan-editor-v491-video-ux .pro-viewport { height: calc(100vh - 66px) !important; min-height: 0 !important; }
@media (max-width: 1350px) { .builder-layout.unified-tools.plan-editor-v491-video-ux { grid-template-columns: 220px minmax(0,1fr) 260px !important; } .builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact { grid-template-columns: 220px minmax(0,1fr) 56px !important; } }
@media (max-width: 1100px) { .plan-v491-panel-handles { display: none; } .builder-layout.unified-tools.plan-editor-v491-video-ux, .builder-layout.unified-tools.plan-editor-v491-video-ux.left-panel-compact, .builder-layout.unified-tools.plan-editor-v491-video-ux.right-panel-compact { grid-template-columns: 1fr !important; } .builder-layout.unified-tools.plan-editor-v491-video-ux #leftBuilderPanel, .builder-layout.unified-tools.plan-editor-v491-video-ux #rightBuilderPanel { position: static !important; max-height: none !important; } }


/* Regie Plan v4.9.2 - layout clean: one toolbar, compact panels, no duplicated toolbar rows */
body.plan-editor-v492-active .plan-editor-page-header { display: none !important; }
body.plan-editor-v492-active .plan-editor-v492-switches { display: none !important; }
body.plan-editor-v492-active .content-area { padding-top: 6px !important; }
.plan-v492-main-toolbar { top: 0 !important; z-index: 120 !important; min-height: 42px !important; max-height: 48px !important; padding: 5px 7px !important; margin: 0 0 6px 0 !important; border-radius: 12px !important; overflow-x: auto !important; overflow-y: hidden !important; background: rgba(255,255,255,.98) !important; border: 1px solid #cbd5e1 !important; box-shadow: 0 8px 22px rgba(15,23,42,.08) !important; }
.plan-v492-toolbar-inner { display: flex; align-items: center; gap: 5px; flex-wrap: nowrap; min-width: max-content; }
.plan-v492-main-toolbar .btn { padding: 4px 8px !important; font-size: .74rem !important; line-height: 1.1 !important; min-height: 30px !important; border-radius: 9px !important; white-space: nowrap !important; }
.plan-v492-main-toolbar .plan-save-primary { min-width: 86px; font-weight: 900; }
.plan-v492-divider { width: 1px; height: 26px; background: #cbd5e1; margin: 0 2px; flex: 0 0 1px; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean { grid-template-columns: 58px minmax(0,1fr) 56px !important; gap: 6px !important; align-items: start; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.left-panel-compact) { grid-template-columns: 255px minmax(0,1fr) 56px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.right-panel-compact) { grid-template-columns: 58px minmax(0,1fr) 320px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.left-panel-compact):not(.right-panel-compact) { grid-template-columns: 255px minmax(0,1fr) 320px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.hide-right-panel { grid-template-columns: 58px minmax(0,1fr) !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.hide-left-panel { grid-template-columns: minmax(0,1fr) 56px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.hide-left-panel.hide-right-panel { grid-template-columns: minmax(0,1fr) !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v492-layout-clean #rightBuilderPanel { top: 56px !important; max-height: calc(100vh - 68px) !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean .builder-main { padding: 0 !important; min-width: 0; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean .builder-toolbar.plan-editor-slim-toolbar { display: none !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean .plan-ux-hint-row { display: none !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean .plan-titleblock-toggle-row { min-height: 30px !important; padding: 5px 9px !important; margin-bottom: 5px !important; border-radius: 10px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean .pro-viewport { height: calc(100vh - 102px) !important; min-height: 720px !important; padding: 8px !important; border-radius: 12px !important; }
/* Left panel compact rail */
.builder-layout.unified-tools.plan-editor-v492-layout-clean.left-panel-compact #leftBuilderPanel { width: 58px !important; padding: 5px 4px !important; overflow: hidden !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.left-panel-compact #leftBuilderPanel .plan-panel-collapse-head { padding: 4px 3px !important; justify-content: center !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.left-panel-compact #leftBuilderPanel .plan-panel-collapse-head strong { display: none !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.left-panel-compact #leftBuilderPanel .builder-card { display: none !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.left-panel-compact #leftBuilderPanel .plan-panel-tabs { display: flex !important; flex-direction: column !important; gap: 5px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.left-panel-compact #leftBuilderPanel .plan-panel-tab { width: 46px !important; min-height: 52px !important; padding: 5px 2px !important; writing-mode: vertical-rl !important; transform: rotate(180deg) !important; font-size: .67rem !important; border-radius: 10px !important; }
/* Right panel clean collapsed rail */
.builder-layout.unified-tools.plan-editor-v492-layout-clean.right-panel-compact #rightBuilderPanel { width: 56px !important; padding: 5px 4px !important; overflow: hidden !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.right-panel-compact #rightBuilderPanel .builder-card { display: none !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.right-panel-compact #rightBuilderPanel .plan-panel-collapse-head { min-height: 96px !important; padding: 6px 3px !important; display: flex !important; flex-direction: column !important; justify-content: center !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.right-panel-compact #rightBuilderPanel .plan-panel-collapse-head strong { writing-mode: vertical-rl !important; transform: rotate(180deg) !important; font-size: .74rem !important; display: inline !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean.right-panel-compact #rightBuilderPanel .plan-panel-collapse-head button { width: 34px !important; height: 30px !important; }
.builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.right-panel-compact) #rightBuilderPanel { width: 320px !important; padding: 7px !important; }
.plan-v492-side-tools-card { padding: 10px !important; border-radius: 13px !important; }
.plan-v492-tools-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.plan-v492-tool-section { border-top: 1px solid #e2e8f0; padding-top: 8px; margin-top: 8px; }
.plan-v492-tool-section:first-of-type { border-top: 0; padding-top: 0; margin-top: 0; }
.plan-v492-tool-title { font-size: .68rem; font-weight: 900; color: #475569; text-transform: uppercase; letter-spacing: .07em; margin-bottom: 5px; }
.plan-v492-tool-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 5px; }
.plan-v492-tool-grid button { min-height: 30px; padding: 4px 5px; border: 1px solid #cbd5e1; background: #fff; color: #0f172a; border-radius: 9px; font-size: .70rem; font-weight: 800; line-height: 1.05; }
.plan-v492-tool-grid button:hover { border-color: #2563eb; background: #eff6ff; }
.plan-v492-advanced-grid { grid-template-columns: repeat(6,minmax(0,1fr)) !important; gap: 4px !important; margin-top: 6px; }
.plan-v492-advanced-grid .tool-btn { height: 28px; min-width: 0; font-size: .72rem; }
.plan-v491-edge-left { left: calc(var(--sidebar-width, 300px) + 58px) !important; top: 52% !important; }
.plan-v491-edge-right { right: 7px !important; top: 52% !important; }
body.regie-sidebar-compact .content-wrapper { margin-left: 74px !important; }
body.plan-editor-v492-active.regie-sidebar-compact .sidebar { width: 74px !important; padding: 14px 7px !important; }
body.plan-editor-v492-active.regie-sidebar-compact .brand { justify-content: center !important; padding: 8px 0 14px !important; }
body.plan-editor-v492-active.regie-sidebar-compact .brand span:not(.brand-mark),
body.plan-editor-v492-active.regie-sidebar-compact .nav-label,
body.plan-editor-v492-active.regie-sidebar-compact .nav-section-title { display: none !important; }
body.plan-editor-v492-active.regie-sidebar-compact .nav-item { font-size: 0 !important; justify-content: center !important; padding: 9px 4px !important; }
body.plan-editor-v492-active.regie-sidebar-compact .nav-item .icon, body.plan-editor-v492-active.regie-sidebar-compact .nav-item::first-letter { font-size: 1.15rem !important; }
body.plan-editor-focus .plan-v492-main-toolbar { top: 0 !important; }
body.plan-editor-focus .builder-layout.unified-tools.plan-editor-v492-layout-clean .pro-viewport { height: calc(100vh - 56px) !important; min-height: 0 !important; }
@media (max-width: 1250px) {
  .builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.right-panel-compact) { grid-template-columns: 58px minmax(0,1fr) 290px !important; }
  .plan-v492-tool-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .builder-layout.unified-tools.plan-editor-v492-layout-clean,
  .builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.left-panel-compact),
  .builder-layout.unified-tools.plan-editor-v492-layout-clean:not(.right-panel-compact) { grid-template-columns: 1fr !important; }
  .builder-layout.unified-tools.plan-editor-v492-layout-clean #leftBuilderPanel,
  .builder-layout.unified-tools.plan-editor-v492-layout-clean #rightBuilderPanel { position: static !important; width: auto !important; max-height: none !important; }
}

/* v4.9.7 - event form and action bar repair */
.event-detail-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  max-width: 100%;
}
.event-detail-actions .btn { flex: 0 0 auto; }
@media (max-width: 900px) {
  .event-detail-actions { justify-content: flex-start; margin-top: 12px; }
}


/* Regie Plan v4.9.3 - panels overlay mode: tools no longer shrink the canvas */
body.plan-editor-v493-active .content-area { padding-top: 8px !important; }
body.plan-editor-v493-active.regie-sidebar-compact .sidebar { width: 76px !important; min-width: 76px !important; }
body.plan-editor-v493-active.regie-sidebar-compact .sidebar .brand-text,
body.plan-editor-v493-active.regie-sidebar-compact .sidebar .nav-label,
body.plan-editor-v493-active.regie-sidebar-compact .sidebar .menu-text,
body.plan-editor-v493-active.regie-sidebar-compact .sidebar .nav-section-title { display: none !important; }
body.plan-editor-v493-active.regie-sidebar-compact .sidebar .nav-link,
body.plan-editor-v493-active.regie-sidebar-compact .sidebar a { justify-content: center !important; padding-left: 8px !important; padding-right: 8px !important; }

.builder-layout.unified-tools.plan-editor-v493-panels-overlay {
  grid-template-columns: 54px minmax(0, 1fr) 54px !important;
  gap: 8px !important;
  position: relative !important;
  align-items: stretch !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay .builder-main {
  grid-column: 2 !important;
  min-width: 0 !important;
  padding: 6px !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay .pro-viewport {
  min-height: 720px !important;
  height: calc(100vh - 138px) !important;
  padding: 8px !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v493-panels-overlay #rightBuilderPanel {
  top: 0 !important;
  max-height: calc(100vh - 146px) !important;
  z-index: 90 !important;
  border-radius: 14px !important;
  transition: width .16s ease, transform .16s ease, box-shadow .16s ease, opacity .16s ease !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay #leftBuilderPanel { grid-column: 1 !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay #rightBuilderPanel { grid-column: 3 !important; }

/* Compact side rails stay in the grid */
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.left-panel-compact #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.right-panel-compact #rightBuilderPanel {
  position: sticky !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  box-shadow: none !important;
  overflow: hidden !important;
  background: rgba(248,250,252,.94) !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.left-panel-compact #leftBuilderPanel .builder-card { display: none !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.right-panel-compact #rightBuilderPanel .builder-card:not(.plan-v491-top-tool-card):not(.plan-v492-side-tools-card) { display: none !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.right-panel-compact #rightBuilderPanel .plan-v492-side-tools-card .plan-v492-tools-body { display: none !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.right-panel-compact #rightBuilderPanel .plan-v492-side-tools-card { padding: 8px 5px !important; writing-mode: vertical-rl; transform: rotate(180deg); min-height: 120px; display: flex; align-items: center; justify-content: center; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay.right-panel-compact #rightBuilderPanel .plan-v492-side-tools-card strong { font-size: .72rem; }

/* Open panels become overlays and do not change the center canvas column */
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.left-panel-compact) #leftBuilderPanel {
  position: absolute !important;
  left: 58px !important;
  width: 240px !important;
  min-width: 240px !important;
  max-width: 240px !important;
  background: rgba(248,250,252,.98) !important;
  box-shadow: 0 18px 50px rgba(15,23,42,.18) !important;
  overflow: auto !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.right-panel-compact) #rightBuilderPanel {
  position: absolute !important;
  right: 58px !important;
  width: 310px !important;
  min-width: 310px !important;
  max-width: 310px !important;
  background: rgba(248,250,252,.98) !important;
  box-shadow: 0 18px 50px rgba(15,23,42,.18) !important;
  overflow: auto !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.left-panel-compact) #leftBuilderPanel .plan-panel-tabs {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 5px !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.left-panel-compact) #leftBuilderPanel .plan-panel-tab {
  writing-mode: horizontal-tb !important;
  transform: none !important;
  width: auto !important;
  min-height: 34px !important;
  padding: 5px 7px !important;
  font-size: .72rem !important;
}
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.left-panel-compact) #leftBuilderPanel .builder-card { padding: 8px !important; margin-bottom: 8px !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.right-panel-compact) #rightBuilderPanel .plan-v492-side-tools-card { padding: 10px !important; writing-mode: horizontal-tb; transform: none; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay:not(.right-panel-compact) #rightBuilderPanel .plan-v492-tools-body { display: block !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay .plan-v492-tool-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 6px !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay .plan-v492-tool-grid .btn { white-space: normal !important; min-height: 30px !important; padding: 5px 6px !important; font-size: .72rem !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay .plan-v492-tool-section { margin-bottom: 10px !important; }
.builder-layout.unified-tools.plan-editor-v493-panels-overlay .plan-v492-tool-section-title { font-size: .68rem !important; letter-spacing: .05em !important; text-transform: uppercase !important; color: #64748b !important; margin: 0 0 5px !important; }

.plan-editor-v493-overlay-badge { display: inline-flex; align-items: center; gap: 4px; font-size: .68rem; color: #64748b; }
@media (max-width: 980px) {
  .builder-layout.unified-tools.plan-editor-v493-panels-overlay { grid-template-columns: 1fr !important; }
  .builder-layout.unified-tools.plan-editor-v493-panels-overlay #leftBuilderPanel,
  .builder-layout.unified-tools.plan-editor-v493-panels-overlay #rightBuilderPanel { position: static !important; width: auto !important; max-width: none !important; max-height: none !important; }
  .builder-layout.unified-tools.plan-editor-v493-panels-overlay .builder-main { grid-column: 1 !important; }
}

/* Regie Plan v4.9.4 - guided tools: one toolbar, clear canvas/background actions */
body.plan-editor-v494-active .plan-editor-slim-toolbar,
.builder-layout.unified-tools.plan-editor-v494-guided-tools .plan-editor-slim-toolbar,
.builder-layout.unified-tools.plan-editor-v494-guided-tools .plan-v494-obsolete-toolbar {
  display: none !important;
}
.builder-layout.unified-tools.plan-editor-v494-guided-tools .pro-viewport {
  height: calc(100vh - 118px) !important;
}
.plan-v494-action-hint {
  margin: 0 0 6px 0;
  padding: 5px 10px;
  border: 1px solid #dbeafe;
  background: #eff6ff;
  color: #1e3a8a;
  border-radius: 10px;
  font-size: .74rem;
  font-weight: 700;
}
.plan-v494-guided-calibration .plan-v494-guided-help {
  border-radius: 10px;
  line-height: 1.35;
}
.plan-v492-main-toolbar .btn[title] { cursor: pointer; }
.builder-layout.unified-tools.plan-editor-v494-guided-tools:not(.left-panel-compact) #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v494-guided-tools:not(.right-panel-compact) #rightBuilderPanel { z-index: 150 !important; }
.builder-layout.unified-tools.plan-editor-v494-guided-tools .plan-v492-tool-grid button { min-height: 34px !important; line-height: 1.12 !important; }

/* Regie Plan v4.9.5 - Finder-style grouped top toolbar and anchored panel handles */
.plan-v495-finder-toolbar {
  position: sticky !important;
  top: 8px !important;
  z-index: 180 !important;
  max-height: none !important;
  min-height: 42px !important;
  overflow: visible !important;
  padding: 7px 9px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.10) !important;
}
.plan-v495-finder-inner {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  width: 100% !important;
  overflow: visible !important;
}
.plan-v495-window-controls {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  padding: 0 4px 0 2px;
}
.plan-v495-window-controls span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: inline-block;
  background: #cbd5e1;
}
.plan-v495-window-controls span:nth-child(1) { background: #ef4444; }
.plan-v495-window-controls span:nth-child(2) { background: #f59e0b; }
.plan-v495-window-controls span:nth-child(3) { background: #22c55e; }
.plan-v495-app-title {
  font-size: .83rem;
  font-weight: 950;
  color: #0f172a;
  padding: 0 7px 0 2px;
  border-right: 1px solid #e2e8f0;
  white-space: nowrap;
}
.plan-v495-menu {
  position: relative;
  flex: 0 0 auto;
}
.plan-v495-menu-btn {
  border: 0;
  background: transparent;
  color: #0f172a;
  border-radius: 9px;
  padding: 5px 9px;
  font-weight: 900;
  font-size: .80rem;
  line-height: 1.15;
}
.plan-v495-menu-btn:hover,
.plan-v495-menu.is-open .plan-v495-menu-btn {
  background: #e0f2fe;
  color: #075985;
}
.plan-v495-menu-list {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 225px;
  padding: 7px;
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 18px 45px rgba(15,23,42,.18);
  z-index: 260;
}
.plan-v495-menu.is-open .plan-v495-menu-list { display: grid; gap: 4px; }
.plan-v495-menu-item {
  display: block;
  width: 100%;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #0f172a;
  text-align: left;
  padding: 8px 9px;
  font-weight: 850;
  font-size: .80rem;
  text-decoration: none;
  line-height: 1.15;
  white-space: nowrap;
}
.plan-v495-menu-item:hover,
.plan-v495-menu-item:focus {
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
  text-decoration: none;
}
.plan-v495-primary {
  background: #16a34a !important;
  color: #ffffff !important;
}
.plan-v495-primary:hover,
.plan-v495-primary:focus {
  background: #15803d !important;
  color: #ffffff !important;
}
.plan-v495-menu-form { margin: 0; }
.plan-v495-spacer { flex: 1 1 auto; min-width: 16px; }
.plan-v495-save-pill {
  border: 1px solid #15803d;
  background: #16a34a;
  color: #ffffff;
  border-radius: 999px;
  padding: 5px 13px;
  font-size: .80rem;
  font-weight: 950;
  white-space: nowrap;
}
.plan-v495-save-pill:hover { background: #15803d; }
.plan-v495-action-hint {
  margin: 5px 0 8px !important;
  border-left: 4px solid #2563eb !important;
}
/* Supprime les anciennes poignées flottantes au milieu du canvas. Les poignées utiles sont collées aux panneaux. */
.plan-editor-v495-finder-toolbar ~ .plan-v491-panel-handles,
.plan-v491-panel-handles {
  display: none !important;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #rightBuilderPanel {
  position: absolute !important;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #leftBuilderPanel .plan-panel-collapse-head,
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #rightBuilderPanel .plan-panel-collapse-head {
  position: relative;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #leftBuilderPanel .plan-panel-collapse-head button,
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #rightBuilderPanel .plan-panel-collapse-head button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 27px;
  height: 48px;
  padding: 0;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15,23,42,.14);
  z-index: 310;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #leftBuilderPanel .plan-panel-collapse-head button {
  right: -19px;
  border-radius: 0 11px 11px 0;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar #rightBuilderPanel .plan-panel-collapse-head button {
  left: -19px;
  border-radius: 11px 0 0 11px;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar.left-panel-compact #leftBuilderPanel .plan-panel-collapse-head button {
  right: -16px;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar.right-panel-compact #rightBuilderPanel .plan-panel-collapse-head button {
  left: -16px;
}
body.plan-editor-v495-active .plan-editor-page-header {
  display: none !important;
}
body.plan-editor-v495-active .content-area {
  padding-top: 8px !important;
}
.builder-layout.unified-tools.plan-editor-v495-finder-toolbar .pro-viewport {
  height: calc(100vh - 126px) !important;
  min-height: 690px !important;
}
@media (max-width: 900px) {
  .plan-v495-finder-inner { overflow-x: auto !important; }
  .plan-v495-menu-list { position: fixed; top: 78px; left: 12px; right: 12px; min-width: 0; }
  .plan-v495-save-pill { display: none; }
}

/* Regie Plan v4.9.6 - workspace polish */
body.plan-editor-v496-active .content-area {
  padding: 6px 10px 10px !important;
}
.plan-v496-workspace-toolbar {
  top: 6px !important;
  min-height: 48px !important;
  padding: 6px 10px !important;
  border-color: #d5dce8 !important;
  border-radius: 13px !important;
  background: linear-gradient(180deg,rgba(255,255,255,.99),rgba(246,248,252,.99)) !important;
  box-shadow: 0 8px 24px rgba(15,23,42,.09), inset 0 1px 0 #ffffff !important;
}
.plan-v496-workspace-toolbar .plan-v495-finder-inner { gap: 4px !important; }
.plan-v496-workspace-toolbar .plan-v495-window-controls { padding-right: 7px; }
.plan-v496-workspace-toolbar .plan-v495-window-controls span { width: 8px; height: 8px; opacity: .88; }
.plan-v496-workspace-toolbar .plan-v495-app-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 142px;
  padding-right: 12px;
  margin-right: 3px;
  font-size: .78rem;
  letter-spacing: .01em;
}
.plan-v496-app-mark {
  display: inline-grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 8px;
  background: linear-gradient(135deg,#2563eb,#1646a3);
  color: #fff;
  font-size: .61rem;
  font-weight: 950;
  box-shadow: 0 4px 10px rgba(37,99,235,.22);
}
.plan-v496-workspace-toolbar .plan-v495-menu-btn {
  position: relative;
  min-height: 32px;
  padding: 6px 20px 6px 10px;
  border: 1px solid transparent;
  font-size: .78rem;
}
.plan-v496-workspace-toolbar .plan-v495-menu-btn::after {
  content: '';
  position: absolute;
  right: 8px;
  top: 50%;
  width: 5px;
  height: 5px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-70%) rotate(45deg);
  opacity: .58;
}
.plan-v496-workspace-toolbar .plan-v495-menu-btn:hover,
.plan-v496-workspace-toolbar .plan-v495-menu.is-open .plan-v495-menu-btn {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}
.plan-v496-workspace-toolbar .plan-v495-menu-list {
  top: calc(100% + 6px);
  min-width: 238px;
  padding: 6px;
  border-color: #d5dce8;
  border-radius: 12px;
  box-shadow: 0 20px 48px rgba(15,23,42,.17), 0 2px 8px rgba(15,23,42,.06);
}
.plan-v496-workspace-toolbar .plan-v495-menu-item {
  min-height: 34px;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: .78rem;
  font-weight: 800;
}
.plan-v496-workspace-toolbar .plan-v495-save-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 6px 14px;
  border-radius: 10px;
  box-shadow: 0 5px 12px rgba(22,163,74,.18);
}
.plan-v496-workspace-toolbar .plan-v495-save-pill span { font-size: .86rem; }
.builder-layout.unified-tools.plan-editor-v496-workspace-polish {
  grid-template-columns: 48px minmax(0,1fr) 48px !important;
  gap: 6px !important;
  margin-top: 6px !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish .builder-main {
  grid-column: 2 !important;
  padding: 0 !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish .plan-titleblock-toggle-row,
body.plan-editor-v496-active .plan-v494-action-hint,
body.plan-editor-v496-active .plan-v495-action-hint { display: none !important; }
.builder-layout.unified-tools.plan-editor-v496-workspace-polish .pro-viewport {
  height: calc(100vh - 78px) !important;
  min-height: 520px !important;
  padding: 8px !important;
  border-radius: 12px !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish.left-panel-compact #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v496-workspace-polish.right-panel-compact #rightBuilderPanel {
  position: sticky !important;
  top: 60px !important;
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  overflow: hidden !important;
  box-shadow: none !important;
  background: rgba(248,250,252,.96) !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.left-panel-compact) #leftBuilderPanel {
  position: absolute !important;
  left: 52px !important;
  width: 260px !important;
  min-width: 260px !important;
  max-width: 260px !important;
  overflow: auto !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.right-panel-compact) #rightBuilderPanel {
  position: absolute !important;
  right: 52px !important;
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  overflow: auto !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish #leftBuilderPanel,
.builder-layout.unified-tools.plan-editor-v496-workspace-polish #rightBuilderPanel {
  top: 0 !important;
  max-height: calc(100vh - 86px) !important;
  z-index: 150 !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish.left-panel-compact #leftBuilderPanel .plan-panel-collapse-head button,
.builder-layout.unified-tools.plan-editor-v496-workspace-polish.right-panel-compact #rightBuilderPanel .plan-panel-collapse-head button {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}
.builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.left-panel-compact) #leftBuilderPanel .plan-panel-collapse-head button { right: -19px !important; }
.builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.right-panel-compact) #rightBuilderPanel .plan-panel-collapse-head button { left: -19px !important; }
.builder-layout.unified-tools.plan-editor-v496-workspace-polish #leftBuilderPanel .plan-panel-collapse-head button:hover,
.builder-layout.unified-tools.plan-editor-v496-workspace-polish #rightBuilderPanel .plan-panel-collapse-head button:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}
@media (max-width: 980px) {
  .plan-v496-workspace-toolbar .plan-v495-app-title { min-width: auto; }
  .plan-v496-workspace-toolbar .plan-v495-app-title > span:last-child { display: none; }
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish { grid-template-columns: 42px minmax(0,1fr) 42px !important; }
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish.left-panel-compact #leftBuilderPanel,
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish.right-panel-compact #rightBuilderPanel { position: sticky !important; width: 42px !important; min-width: 42px !important; max-width: 42px !important; }
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.left-panel-compact) #leftBuilderPanel,
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.right-panel-compact) #rightBuilderPanel { position: fixed !important; top: 66px !important; bottom: 10px !important; width: min(84vw,310px) !important; min-width: 0 !important; max-width: 310px !important; max-height: none !important; }
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.left-panel-compact) #leftBuilderPanel { left: 8px !important; }
  .builder-layout.unified-tools.plan-editor-v496-workspace-polish:not(.right-panel-compact) #rightBuilderPanel { right: 8px !important; }
}
/* Écran de connexion harmonisé Rawtec */
body.regie-login-page{min-height:100vh;margin:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 12% 12%,#2f71ed 0,transparent 31%),radial-gradient(circle at 88% 85%,#1758c9 0,transparent 27%),linear-gradient(135deg,#071225,#102b63 55%,#061126);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.regie-login-shell{width:min(450px,calc(100% - 32px));position:relative}.regie-login-card{position:relative;isolation:isolate;overflow:hidden;background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.7);border-radius:30px;padding:34px;color:#0f172a;box-shadow:0 35px 80px rgba(0,0,0,.32)}.regie-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:32px}.regie-login-brand strong{display:block;font-size:16px;font-weight:900}.regie-login-brand small{display:block;margin-top:3px;color:#64748b;letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.regie-login-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#2563eb,#0f2f6d);color:#fff;font-size:13px;font-weight:950;letter-spacing:.04em;box-shadow:0 10px 24px rgba(37,99,235,.24)}.regie-login-heading{position:relative}.regie-login-eyebrow{margin:0 0 9px;color:#2563eb;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.16em}.regie-login-heading h1{margin:4px 0 6px;font-size:38px;letter-spacing:-.05em}.regie-login-heading>p:last-child{margin:0;color:#64748b;line-height:1.55}.regie-login-form{position:relative;display:grid;gap:16px;margin-top:25px}.regie-login-form label{display:grid;gap:6px;color:#64748b;font-size:13px;font-weight:900}.regie-login-form input{width:100%;min-height:48px;padding:12px 14px;border:1px solid #d9e0ea;border-radius:14px;background:#fff;color:#0f172a;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.regie-login-form input:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}.regie-login-form button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;margin-top:4px;border:0;border-radius:14px;background:#2563eb;color:#fff;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(37,99,235,.2)}.regie-login-form button:hover{background:#1d4ed8}.regie-login-error{position:relative;margin-top:20px;padding:13px 15px;border:1px solid #fecaca;border-radius:16px;background:#fff1f2;color:#991b1b;font-weight:800}.regie-login-help{position:relative;margin:21px 0 0;text-align:center;color:#64748b;font-size:12px;font-weight:700}.regie-login-orbit{position:absolute;z-index:-1;border-radius:999px;pointer-events:none}.regie-login-orbit-one{width:190px;height:190px;right:-110px;top:-100px;background:radial-gradient(circle,rgba(37,99,235,.14),transparent 68%)}.regie-login-orbit-two{width:160px;height:160px;left:-105px;bottom:-92px;background:radial-gradient(circle,rgba(14,165,233,.12),transparent 68%)}@media (max-width:640px){.regie-login-card{padding:27px 23px;border-radius:25px}.regie-login-brand{margin-bottom:26px}.regie-login-heading h1{font-size:34px}}

/* Regie Plan v4.10.1 - stable plan-editor layout */
body.plan-editor-v4101-active .app-layout{overflow-x:hidden}
body.plan-editor-v4101-active .main-panel{min-width:0}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar{flex:0 0 76px!important;width:76px!important;min-width:76px!important;padding:18px 8px!important;overflow-x:hidden!important}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar .brand{justify-content:center!important;gap:0!important;padding-inline:0!important}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar .brand>span:not(.brand-mark){display:none!important}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar .nav-section>summary{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:10px 4px!important;overflow:hidden!important;white-space:nowrap!important;font-size:0!important}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar .nav-section>summary>span{font-size:1.15rem!important;line-height:1!important}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar .nav-item{display:block!important;width:100%!important;overflow:hidden!important;white-space:nowrap!important;text-align:center!important;font-size:0!important;padding:10px 4px!important}
body.plan-editor-v4101-active.regie-sidebar-compact .sidebar .nav-item::first-letter{font-size:1.15rem!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout{grid-template-columns:48px minmax(0,1fr) 48px!important;gap:8px!important;align-items:stretch!important;position:relative!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact){grid-template-columns:minmax(260px,280px) minmax(0,1fr) 48px!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.right-panel-compact){grid-template-columns:48px minmax(0,1fr) minmax(280px,300px)!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact):not(.right-panel-compact){grid-template-columns:minmax(260px,280px) minmax(0,1fr) minmax(280px,300px)!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout .builder-main{grid-column:2!important;min-width:0!important;padding:0!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout #leftBuilderPanel,.builder-layout.unified-tools.plan-editor-v4101-stable-layout #rightBuilderPanel{position:sticky!important;inset:0 auto auto!important;width:100%!important;min-width:0!important;max-width:none!important;max-height:calc(100vh - 86px)!important;overflow-x:hidden!important;overflow-y:auto!important;z-index:20!important;box-shadow:0 8px 24px rgba(15,23,42,.08)!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout.left-panel-compact #leftBuilderPanel,.builder-layout.unified-tools.plan-editor-v4101-stable-layout.right-panel-compact #rightBuilderPanel{width:48px!important;min-width:48px!important;max-width:48px!important;overflow:hidden!important;box-shadow:none!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact) #leftBuilderPanel .plan-panel-collapse-head button,.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.right-panel-compact) #rightBuilderPanel .plan-panel-collapse-head button{position:static!important;inset:auto!important;transform:none!important;margin-left:auto!important}
.builder-layout.unified-tools.plan-editor-v4101-stable-layout .pro-viewport{width:100%!important;min-width:0!important;height:calc(100vh - 78px)!important;min-height:520px!important;overflow:auto!important}
@media(max-width:1180px){.builder-layout.unified-tools.plan-editor-v4101-stable-layout,.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact),.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.right-panel-compact),.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact):not(.right-panel-compact){grid-template-columns:42px minmax(0,1fr) 42px!important}.builder-layout.unified-tools.plan-editor-v4101-stable-layout.left-panel-compact #leftBuilderPanel,.builder-layout.unified-tools.plan-editor-v4101-stable-layout.right-panel-compact #rightBuilderPanel{width:42px!important;min-width:42px!important;max-width:42px!important}.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact) #leftBuilderPanel,.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.right-panel-compact) #rightBuilderPanel{position:fixed!important;top:66px!important;bottom:10px!important;width:min(84vw,320px)!important;min-width:0!important;max-width:320px!important;max-height:none!important;z-index:300!important;box-shadow:0 24px 64px rgba(15,23,42,.28)!important}.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.left-panel-compact) #leftBuilderPanel{left:8px!important;right:auto!important}.builder-layout.unified-tools.plan-editor-v4101-stable-layout:not(.right-panel-compact) #rightBuilderPanel{right:8px!important;left:auto!important}}
@media(max-width:850px){body.plan-editor-v4101-active .app-layout{display:flex!important}body.plan-editor-v4101-active.regie-sidebar-compact .sidebar{position:sticky!important;top:0!important;height:100vh!important}body.plan-editor-v4101-active .content-area{padding-inline:8px!important}.plan-v4101-workspace-toolbar .plan-v495-window-controls,.plan-v4101-workspace-toolbar .plan-v495-app-title{display:none!important}}

/* Regie Plan v4.10.2 - explicit, non-overlapping sidebar controls */
.plan-v4102-explicit-toggles .plan-v4102-sidebar-toggle{display:inline-grid;place-items:center;flex:0 0 36px;width:36px;height:34px;padding:0;border:1px solid #cbd5e1;border-radius:9px;background:#f8fafc;color:#0f172a;font-size:1.05rem;font-weight:900;line-height:1;cursor:pointer}
.plan-v4102-explicit-toggles .plan-v4102-sidebar-toggle:hover,.plan-v4102-explicit-toggles .plan-v4102-sidebar-toggle:focus-visible{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8;outline:none}
body.regie-sidebar-compact .plan-v4102-explicit-toggles .plan-v4102-sidebar-toggle{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}
.builder-layout.plan-editor-v4101-stable-layout #leftPanelCollapseBtn,.builder-layout.plan-editor-v4101-stable-layout #rightPanelCollapseBtn{flex:0 0 34px;z-index:1!important}

/* Regie Plan v4.10.3 - sidebar accordion coherent */
.side-nav .nav-item.is-active,
.side-nav .nav-item[aria-current="page"]{
  color:#fff;
  background:linear-gradient(135deg,rgba(37,99,235,.42),rgba(14,165,233,.18));
  box-shadow:inset 3px 0 0 #60a5fa;
}
.side-nav .nav-section summary{transition:background-color .16s ease,color .16s ease}
.side-nav .nav-section:not([open]) summary{background:transparent}
