.precision-workbench[hidden]{display:none}.precision-workbench{position:absolute;inset:0;z-index:9;background:#edf3f5;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;border:1px solid #d2e0e5}.precision-active>.scene-top,.precision-active>.scene-layers,.precision-active>.mode-toolbar,.precision-active>.view-controls,.precision-active>.scene-bottom,.precision-active>#labels,.precision-active>.scale-key{visibility:hidden}.precision-top{display:flex;align-items:center;justify-content:space-between;padding:10px;gap:8px;background:#fff;border-bottom:1px solid #d3e0e6}.precision-walls{display:flex;gap:4px}.precision-top button{min-height:44px;padding:8px 13px;font-size:12px}.precision-walls [aria-pressed=true]{background:#254a5b;color:white;border-color:#254a5b}.precision-stage{min-height:0;position:relative;overflow:hidden;background-image:linear-gradient(#c8dce733 1px,transparent 1px),linear-gradient(90deg,#c8dce733 1px,transparent 1px);background-size:24px 24px}.precision-svg{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair;user-select:none}.precision-zoom{position:absolute;bottom:8px;right:8px;display:flex;gap:4px}.precision-zoom button{min-height:44px;min-width:44px;background:#fff}.precision-status{padding:8px 12px;font-size:12px;line-height:1.45;background:#fff;border-top:1px solid #d5e0e5;color:#355263;min-height:35px}.paint-selection{background:#eaf3f7;border:1px solid #b8d0dd;border-radius:10px;padding:12px;margin:12px 0}.paint-selection strong{font-size:16px}.paint-selection p{font-size:12px;margin:5px 0 10px}.paint-navigate{display:flex;gap:5px}.paint-navigate button{min-width:44px;min-height:44px}.paint-navigate select{min-width:0;flex:1}.paint-apply{margin-top:10px;min-height:46px;width:100%}.paint-targets{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px}.paint-targets button{min-height:44px;font-size:12px}.paint-targets .selected{background:#254a5b;color:#fff}.precision-launch{min-height:44px;width:100%;margin-bottom:10px}.paint-help{font-size:12px;line-height:1.5;color:#5c7380}.task-next{display:block;width:100%;margin-top:20px;min-height:44px}.scene-top .project-title{max-width:320px}
@media(max-width:900px){.precision-top{padding:5px;gap:4px;flex-wrap:wrap}.precision-walls{flex:1}.precision-walls button{padding:6px;font-size:11px;flex:1;white-space:nowrap}.precision-3d{padding:6px!important;font-size:11px!important;min-width:60px}.precision-status{font-size:11px;padding:5px 9px;min-height:28px}.precision-zoom button{min-width:44px;min-height:44px}.paint-selection{padding:10px;margin:8px 0}.paint-selection p{margin-bottom:5px}.paint-navigate select{font-size:16px}.paint-help{margin:5px 0}.precision-active .mobile-scene-actions{display:none}.precision-active .mobile-scene-popover{display:none}}
.extra-palette{border:1px solid #d6e2e8;border-radius:8px;padding:8px 10px;margin:12px 0!important}.extra-palette summary{min-height:40px;cursor:pointer;font-size:12px;color:#385464;display:flex;align-items:center}.extra-palette[open] .swatches{margin-top:10px}.paint-selection+.label{margin-top:12px}

/* Keep the escape to the complete hall visible while editing an elevation. */
.precision-top .precision-3d {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 44px;
  white-space: nowrap;
  border: 1px solid #254a5b;
  border-radius: 8px;
  background: #254a5b;
  color: #fff;
  font-weight: 600;
  box-shadow: 0 2px 7px #1b3d5114;
}
.precision-top .precision-3d:hover { background: #173b4d; border-color: #173b4d; }
.precision-walls button { border-radius: 7px; }
.precision-walls [aria-pressed="true"] { background: #e8f3f8; border-color: #8ab0c5; color: #1c445a; box-shadow: inset 0 -2px #ef971e; }
.precision-status { overflow-wrap: anywhere; max-height: 96px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.precision-zoom { padding: 3px; gap: 4px; border: 1px solid #d1dfe7; border-radius: 10px; background: #fffffff2; box-shadow: 0 3px 14px #24485814; }
.precision-zoom button { padding: 4px; min-width: 44px; border: 1px solid transparent; border-radius: 6px; color: #31566b; font-size: 18px; }
.precision-zoom button:hover { background: #eaf2f7; border-color: #a9c1d0; }
.precision-svg { -webkit-user-select: none; -webkit-touch-callout: none; }
.precision-workbench[data-mode="openings"] .precision-svg,
.precision-workbench[data-mode="openings"] .precision-svg [data-opening-id] { cursor: grab; }
.precision-workbench.is-dragging .precision-svg,
.precision-workbench.is-dragging .precision-svg [data-opening-id] { cursor: grabbing; }
.precision-svg [data-opening-id] text { pointer-events: none; }
.precision-svg [data-opening-id][data-selected="true"] > rect { stroke: #e7820c; stroke-width: 3px; }
.precision-workbench button:focus-visible { outline: 3px solid #ed941c; outline-offset: 2px; }

@media (max-width: 900px) {
  .precision-top { display: grid; grid-template-columns: minmax(0, 1fr) 104px; align-items: stretch; padding: 5px; gap: 5px; }
  .precision-top .precision-walls { display: grid; grid-template-columns: repeat(4, minmax(44px, 1fr)); min-width: 0; gap: 3px; }
  .precision-top .precision-walls button { min-width: 44px; min-height: 44px; padding: 4px 2px; font-size: 12px; line-height: 1.15; white-space: normal; overflow-wrap: normal; }
  .precision-top .precision-3d { min-width: 0; width: 104px; min-height: 44px; padding: 6px !important; font-size: 12px !important; }
  .precision-status { font-size: 12px; line-height: 1.4; padding: 6px 9px; max-height: 80px; }
  .precision-zoom { bottom: 6px; right: 6px; padding: 2px; gap: 2px; }
  .precision-zoom button { min-width: 44px; min-height: 44px; }
  .extra-palette summary { min-height: 44px; }
}
@media (max-width: 359px) {
  .precision-top { grid-template-columns: minmax(0, 1fr) 98px; padding-inline: 4px; gap: 4px; }
  .precision-top .precision-3d { width: 98px; padding-inline: 4px !important; }
  .precision-top .precision-walls { gap: 2px; }
  .precision-top .precision-walls button { padding-inline: 1px; }
}
