/* Approved studio appearance. Screen chrome only; no drawing or report selectors. */
@media screen {
  .studio-ui {
    --studio-panel:#fff;--studio-raised:#f5f6f7;--studio-ink:#20252c;
    --studio-muted:#616a74;--studio-line:#e1e5e9;--studio-canvas:#eef0f2;
    --studio-active:#f0f2f4;--studio-accent:#b91e2b;
    font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;
  }
  :root[data-theme="dark"] .studio-ui {
    --studio-panel:#202329;--studio-raised:#272b32;--studio-ink:#f3f4f6;
    --studio-muted:#b2bac5;--studio-line:#353c46;--studio-canvas:#292e36;
    --studio-active:#2e343e;--studio-accent:#ff7883;
  }
  .studio-ui .app-header {
    height:62px;min-height:62px;padding:0 20px;gap:22px;flex-wrap:nowrap;
    background:#181b20;color:#fff;border-bottom:1px solid #30363e;
    position:relative;z-index:10;
  }
  .studio-ui .app-header .rookberry-brand {flex-shrink:0;overflow:visible}
  .studio-ui .app-header .rookberry-wordmark {width:176px;height:auto}
  .studio-ui .app-header .logo-light {display:none}
  .studio-ui .app-header .logo-dark {display:block}
  .studio-project-title {min-width:0;flex:0 1 285px;border-left:1px solid #454b54;padding-left:20px}
  .studio-project-title h1 {margin:0;color:#f3f4f6;font-size:14px;font-weight:600;line-height:1.35;max-height:38px;overflow:auto;scrollbar-width:thin}
  .studio-nav {display:flex;align-self:stretch;align-items:stretch;gap:4px;flex-shrink:0}
  .studio-nav button {position:relative;border:0;border-radius:0;background:none;color:#c6cbd3;font-size:13px;padding:0 14px}
  .studio-nav button:hover {background:#282d35;color:#fff}
  .studio-nav .studio-current {color:#fff;font-weight:650}
  .studio-nav .studio-current::after {content:"";position:absolute;bottom:0;left:12px;right:12px;height:3px;background:#ed3041}
  .studio-ui .header-actions {margin-left:auto;gap:10px;flex-shrink:0;width:auto}
  .studio-ui .header-actions > button {min-height:36px;padding:8px 15px;font-size:12px;border-radius:5px;white-space:nowrap}
  .studio-ui .header-actions #save-project {color:#f4f5f7;border:1px solid #626b78;background:transparent}
  .studio-ui .header-actions #save-project:hover {background:#2b313a}
  .studio-ui .header-actions #export {background:#d92332;border-color:#d92332;color:#fff;font-weight:650}
  .studio-ui .header-actions #export:hover {background:#b91e2b}
  .studio-menu {position:relative}
  .studio-menu summary {cursor:pointer;list-style:none;display:grid;place-items:center;width:36px;height:36px;border-radius:5px;color:#e6e9ef}
  .studio-menu summary::-webkit-details-marker {display:none}
  .studio-menu summary:hover,.studio-menu[open] summary {background:#343a43}
  .studio-menu summary svg {width:22px;height:22px}
  .studio-menu-items {position:absolute;right:0;top:46px;min-width:220px;padding:6px;border:1px solid var(--studio-line);border-radius:7px;background:var(--studio-panel);box-shadow:0 8px 28px #0003}
  .studio-ui .studio-menu-items button {display:flex;width:100%;align-items:center;min-height:40px;text-align:left;padding:9px 12px;color:var(--studio-ink);border:0;border-radius:4px;margin:0;background:transparent}
  .studio-ui .studio-menu-items button:hover {background:var(--studio-active)}
  .studio-ui .studio-menu-items .theme-toggle {gap:9px}
  .studio-ui .studio-menu-items .theme-toggle>span {display:block}
  .studio-ui .studio-menu-items .theme-switch {margin-left:auto;flex-shrink:0}
  .studio-ui summary:focus-visible {outline:3px solid var(--focus);outline-offset:3px}
  .studio-ui.home-view .studio-project-title,.studio-ui.home-view .studio-nav {display:none}
  .studio-ui.home-view .workspace {display:none}

  .studio-ui .workspace {grid-template-columns:216px minmax(320px,1fr) 292px;height:calc(100dvh - 62px);min-height:570px}
  .studio-ui .drawing-area {min-height:0}
  .studio-ui .project-panel,.studio-ui .properties-panel {background:var(--studio-panel);color:var(--studio-ink);border-color:var(--studio-line);scrollbar-width:thin;scrollbar-color:#89929c65 transparent}
  .studio-ui .project-panel {padding:16px 12px 14px;gap:0}
  .studio-ui .customer-logo-panel {padding:0 2px 12px;margin:0 0 12px;border-color:var(--studio-line)}
  .studio-ui .customer-logo-panel button {font-size:11px;min-height:30px;padding:6px 8px}
  .studio-ui .customer-logo-panel img {max-height:48px;padding:3px;margin-bottom:7px}
  .studio-ui .customer-logo-panel small {display:none}
  .studio-ui #cable-search-open {width:100%;min-height:39px;justify-content:flex-start;text-align:left;padding:9px 10px;color:var(--studio-muted);background:var(--studio-panel);border:1px solid var(--studio-line);border-radius:5px;font-size:12px;gap:4px}
  .studio-ui #cable-search-open:hover {border-color:var(--studio-accent);color:var(--studio-ink)}
  .search-key {margin-left:auto;font-size:9px;color:var(--studio-muted);white-space:nowrap}
  .studio-ui .studio-sheet-heading {margin:22px 8px 11px;color:var(--studio-ink);font-size:13px;font-weight:650}
  .studio-ui #floor-list {display:flex;flex-direction:column;gap:4px;margin-bottom:17px}
  .studio-ui .floor-button {padding:10px 12px;min-height:59px;gap:9px;border-radius:5px;font-size:12px;color:var(--studio-ink);font-weight:600;flex-shrink:0}
  .studio-ui .floor-button:hover {background:var(--studio-raised)}
  .studio-ui .floor-button.active {background:var(--studio-active);color:var(--studio-ink);box-shadow:inset 3px 0 #d92332}
  .studio-ui .floor-button .floor-icon {display:none}
  .studio-ui .floor-button.active .floor-icon {color:var(--studio-accent)}
  .studio-ui .floor-button .floor-info {line-height:1.4}
  .studio-ui .floor-button small {color:var(--studio-muted);font-size:11px;font-weight:400;margin-top:3px}
  .studio-ui .floor-count {border:0;background:transparent;font-size:11px;padding:0;color:var(--studio-muted);font-weight:500}
  .studio-ui .upload-button {min-height:36px;border-radius:5px;background:var(--studio-panel);font-size:12px;gap:9px;padding:6px 11px;border-color:var(--studio-line)}
  .studio-ui .upload-button:hover {background:var(--studio-raised)}
  .studio-ui .upload-button span {font-size:20px;color:var(--studio-ink)}
  .studio-ui .meeting-dashboard-section {padding:0;margin:8px 0 14px;border:0}
  .studio-ui .meeting-dashboard-section h2,.studio-ui .meeting-dashboard-section p,.studio-ui .meeting-dashboard-section small {display:none}
  .studio-ui .meeting-dashboard-link {background:var(--studio-panel);color:var(--studio-ink);border-color:var(--studio-line);border-radius:5px;min-height:37px;padding:8px 10px;font-size:12px}
  .studio-ui .meeting-dashboard-link:hover {background:var(--studio-raised);color:var(--studio-accent)}
  .studio-disclosure {border-top:1px solid var(--studio-line);padding:10px 2px;margin-top:10px}
  .studio-disclosure > summary {font-size:12px;font-weight:650;cursor:pointer;color:var(--studio-ink);padding:5px 6px;list-style:none;display:flex;align-items:center;justify-content:space-between}
  .studio-disclosure > summary::-webkit-details-marker {display:none}
  .studio-disclosure > summary::after {content:"⌄";font-size:15px;color:var(--studio-muted);transform:rotate(-90deg)}
  .studio-disclosure[open] > summary::after {transform:none}
  .studio-ui .layers {margin:0;border:0}
  .studio-ui .layers label {font-size:12px;margin:13px 6px;color:var(--studio-muted)}
  .studio-ui .layers input {width:15px;height:15px;margin:0 2px 0 0}
  .studio-ui .project-heading {padding:7px 6px}
  .studio-ui .project-heading .text-button {font-size:12px}
  .studio-ui .int-project-tools {margin:3px 0 10px;gap:6px}
  .studio-ui .int-project-tools button {padding:9px;font-size:12px;border-radius:5px}
  .studio-ui .int-project-tools small {font-size:10px;line-height:1.4;margin-top:3px}
  .studio-ui #delete-plan {font-size:12px;min-height:34px}
  .studio-ui .left-footer {margin:0;padding:15px 6px 0;font-size:11px;line-height:1.5;display:block}
  .studio-ui .left-footer .sample-tag,.studio-ui .left-footer button {font-size:11px}
  .studio-ui .recovery-controls {margin:14px 6px 0;padding-top:12px;border-top:1px solid var(--studio-line);font-size:10px;gap:4px;flex-direction:column;align-items:flex-start}
  .studio-ui .recovery-controls button {font-size:10px;min-height:23px;margin:0}

  .studio-ui .drawing-header {height:62px;background:var(--studio-panel);padding:0 20px;border-color:var(--studio-line);gap:12px}
  .studio-ui .drawing-header h2 {font-size:16px;font-weight:650;letter-spacing:-.2px;line-height:1.35;margin:2px 0 0;color:var(--studio-ink)}
  .studio-ui #building-label {font-size:11px;color:var(--studio-muted)}
  .studio-ui .drawing-actions {gap:3px;flex-shrink:0}
  .studio-ui .drawing-actions .icon-button {font-size:21px;min-height:32px;padding:4px 7px}
  .studio-ui .drawing-actions .scale-state {font-size:12px;min-height:32px;padding:5px 6px;white-space:nowrap}
  .studio-ui .edit-strip {position:static;flex:0 0 auto;left:auto;top:auto;max-width:none;min-height:40px;border:0;border-bottom:1px solid var(--studio-line);border-radius:0;background:var(--studio-panel);box-shadow:none;padding:5px 20px;gap:7px;z-index:auto;color:var(--studio-muted)}
  .studio-ui .edit-strip button,.studio-ui .edit-strip select {font-size:11px;min-height:27px;padding:4px 7px;border-radius:4px}
  .studio-ui .edit-strip label {font-size:11px;margin-right:2px}
  .studio-ui .edit-strip input {width:14px;height:14px}
  .studio-ui #shortcut-help {margin-left:auto;min-width:27px}
  .studio-ui .canvas-shell {background:var(--studio-canvas);padding:0;border:0;min-height:300px;flex:1 1 0}
  .studio-ui .toolbar {top:auto;bottom:20px;padding:6px;gap:2px;max-width:calc(100% - 28px);border-radius:8px;border-color:var(--studio-line);background:var(--studio-panel);box-shadow:0 4px 16px #1318201c;z-index:2}
  .studio-ui .toolbar .tool {min-width:50px;min-height:55px;padding:7px 8px;gap:5px;font-size:11px;border-radius:5px;color:var(--studio-muted)}
  .studio-ui .toolbar .tool svg {width:19px;height:19px}
  .studio-ui .toolbar .tool.active {background:var(--accent-soft);color:var(--studio-accent)}
  .studio-ui .toolbar .tool:hover {background:var(--studio-active);color:var(--studio-ink)}
  .studio-ui .toolbar .tool.active:hover {background:var(--accent-soft);color:var(--studio-accent)}
  .studio-ui .tool-help {top:12px;bottom:auto;left:14px;max-width:calc(100% - 28px);padding:6px 9px;font-size:10px;line-height:1.5;border:1px solid var(--studio-line);background:var(--studio-panel);color:var(--studio-muted);box-shadow:none;border-radius:4px}
  .studio-ui .status-bar {min-height:44px;gap:14px;padding:7px 16px;font-size:11px;background:var(--studio-panel);border-color:var(--studio-line);color:var(--studio-muted);flex-wrap:wrap}
  .studio-ui .status-bar b {font-size:12px;color:var(--studio-ink);font-variant-numeric:tabular-nums}
  .studio-ui .status-bar > span {white-space:nowrap}
  .studio-ui #stat-connections {display:none}
  .studio-ui #schedule {display:none}
  .studio-ui .zoom-controls {position:static;margin-left:auto;border:1px solid var(--studio-line);border-radius:4px;box-shadow:none;background:var(--studio-panel);color:var(--studio-muted);flex-shrink:0}
  .studio-ui .status-bar .zoom-controls button {margin:0;min-height:27px;padding:4px 9px;font-size:11px;color:var(--studio-ink);background:transparent}
  .studio-ui .status-bar .zoom-controls button:hover {background:var(--studio-active)}
  .studio-ui .zoom-controls span {font-size:11px;min-width:37px}
  .studio-ui .zoom-controls .fit-button {border-color:var(--studio-line)}

  .studio-ui .properties-panel {padding:24px 20px}
  .studio-ui .properties-panel h2 {font-size:20px;line-height:1.3;letter-spacing:-.4px;font-weight:650;margin:4px 0 8px;overflow-wrap:anywhere}
  .studio-ui .properties-panel h3 {font-size:13px;font-weight:650;line-height:1.4}
  .studio-ui .property-type {gap:12px;margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid var(--studio-line)}
  .studio-ui .property-type h2 {margin:4px 0 0}
  .studio-ui .property-sub {font-size:11px;color:var(--studio-muted)}
  .studio-ui .type-icon {width:42px;height:42px;flex-shrink:0;border-radius:50%;background:var(--studio-raised)}
  .studio-ui .properties-panel .field {font-size:11px;color:var(--studio-muted);margin:16px 0;line-height:1.5}
  .studio-ui .properties-panel .field input,.studio-ui .properties-panel .field select,.studio-ui .properties-panel .field textarea {font-family:inherit;font-size:13px;min-height:36px;background:var(--studio-panel);border-color:var(--studio-line);color:var(--studio-ink);border-radius:5px;margin-top:6px;padding:8px 9px}
  .studio-ui .properties-panel .field input:focus,.studio-ui .properties-panel .field select:focus,.studio-ui .properties-panel .field textarea:focus {border-color:var(--studio-accent)}
  .studio-ui .properties-panel .field-row {gap:10px}
  .studio-ui .properties-panel .field-row .field {margin:7px 0}
  .studio-ui .properties-panel .connection-chain {background:var(--studio-raised);border:0;border-left:2px solid #255bdd;border-radius:0;padding:13px;font-size:12px;line-height:1.7;color:var(--studio-ink)}
  .studio-ui .properties-panel .property-divider {border-color:var(--studio-line);margin:22px 0}
  .studio-ui .properties-panel .readout {font-size:12px;line-height:1.5;color:var(--studio-muted)}
  .studio-ui .properties-panel .readout b {color:var(--studio-ink);font-weight:600}
  .studio-ui .properties-panel .note-box {font-size:11px;line-height:1.65;border-radius:4px;padding:12px;margin:16px 0}
  .studio-ui .properties-panel .warning-box {border-left:2px solid #e1a62d}
  .studio-ui .properties-panel .wide {font-size:12px;border-radius:5px;min-height:36px;line-height:1.4}
  .studio-ui .properties-panel .control-note {font-size:11px;line-height:1.65}
  .studio-ui .properties-panel .overview-grid {gap:20px 14px;margin:24px 0}
  .studio-ui .properties-panel .overview-big {font-size:29px;letter-spacing:-.7px;font-weight:600}
  .studio-ui .properties-panel .overview-grid small {font-size:11px;line-height:1.5;color:var(--studio-muted)}
  .studio-ui .properties-panel .legend-row {font-size:11px;line-height:1.45;margin:13px 0;gap:10px}
  .studio-ui .properties-panel .source-filter-label {font-size:11px;color:var(--studio-muted)}
  .studio-ui .properties-panel .source-filter-label input {background:var(--studio-panel);font-size:12px;min-height:35px;border-color:var(--studio-line)}
  .studio-ui .properties-panel .symbol-sizing {font-size:11px;border-color:var(--studio-line)}
  .studio-ui .properties-panel [data-connected-device] {margin-top:6px;text-align:left;padding:10px 12px;background:var(--studio-raised);border:0;border-left:2px solid #1a969a;border-radius:0}
  .studio-ui .home-dashboard {padding-top:36px}
}

@media screen and (min-width:1800px) {
  .studio-ui .workspace {grid-template-columns:236px minmax(320px,1fr) 310px}
  .studio-ui .project-panel {padding-left:16px;padding-right:16px}
  .studio-ui .toolbar .tool {min-width:57px}
}
@media screen and (max-width:1280px) {
  .studio-ui .app-header {gap:14px;padding:0 16px}
  .studio-ui .app-header .rookberry-wordmark {width:155px}
  .studio-project-title {flex-basis:210px;padding-left:14px}
  .studio-project-title h1 {font-size:12px}
  .studio-nav button {font-size:12px;padding:0 10px}
  .studio-ui .header-actions {gap:7px}
  .studio-ui .header-actions > button {padding:8px 11px}
  .studio-ui .workspace {grid-template-columns:196px minmax(320px,1fr) 266px}
  .studio-ui .properties-panel {padding:20px 16px}
  .studio-ui .drawing-header {padding:0 14px}
  .studio-ui .drawing-header h2 {font-size:14px}
  .studio-ui .edit-strip {padding:5px 14px}
  .search-key {display:none}
  .studio-ui .toolbar .tool {min-width:46px;padding:7px 6px}
  .studio-ui .status-bar {gap:9px;padding-left:12px;padding-right:12px}
}
@media screen and (max-width:1050px) {
  .studio-project-title {display:none}
  .studio-ui .workspace {grid-template-columns:184px minmax(320px,1fr);height:auto;min-height:calc(100dvh - 62px)}
  .studio-ui .drawing-area {height:calc(100dvh - 62px);min-height:600px}
  .studio-ui .project-panel {max-height:calc(100dvh - 62px)}
  .studio-ui .properties-panel {grid-column:1/-1;border-top:1px solid var(--studio-line);border-left:0;max-height:none;overflow:visible;columns:2;column-gap:40px;padding:24px}
  .studio-ui .properties-panel > * {break-inside:avoid}
  .studio-ui .properties-panel .property-type {column-span:all}
  .studio-ui .properties-panel > .field,.studio-ui .properties-panel .field-row {max-width:none}
}
@media screen and (max-width:700px) {
  .studio-ui .app-header {gap:10px;height:58px;min-height:58px;padding:0 12px}
  .studio-ui .app-header .rookberry-wordmark {width:136px}
  .studio-nav {gap:0}
  .studio-nav button {font-size:11px;padding:0 7px}
  .studio-nav .studio-current {display:none}
  .studio-ui .header-actions > button {font-size:11px;min-height:33px;padding:7px 9px}
  .studio-ui .header-actions {gap:4px}
  .studio-menu summary {width:30px;height:33px}
  .studio-ui .workspace {display:grid;grid-template-columns:156px minmax(0,1fr);height:auto}
  .studio-ui .project-panel {padding:12px 8px;max-height:calc(100dvh - 58px);display:flex}
  .studio-ui .floor-button {min-width:0;width:100%;padding:10px 8px;gap:6px;font-size:12px}
  .studio-ui .floor-button .floor-icon {display:none}
  .studio-ui #floor-list {display:flex;flex-direction:column;overflow:visible}
  .studio-ui .project-panel > .panel-caption,.studio-ui .layers {display:block}
  .studio-ui .studio-sheet-heading {font-size:12px;margin:18px 6px 9px}
  .studio-ui #cable-search-open {font-size:11px;padding:8px}
  .studio-ui .customer-logo-panel small {display:none}
  .studio-ui .drawing-area {height:calc(100dvh - 58px);min-height:570px}
  .studio-ui .drawing-header {height:auto;min-height:70px;align-items:flex-start;flex-direction:column;justify-content:center;gap:3px;padding:8px 12px}
  .studio-ui .drawing-actions {width:100%;justify-content:flex-end}
  .studio-ui .edit-strip {padding:5px 9px;gap:5px}
  .studio-ui .toolbar {bottom:12px;max-width:calc(100% - 18px);padding:5px}
  .studio-ui .toolbar .tool {min-width:44px}
  .studio-ui .tool-help {left:9px;top:9px;right:auto;max-width:calc(100% - 18px);font-size:9px;padding:5px 7px}
  .studio-ui .status-bar {font-size:10px;gap:7px;padding:7px 9px}
  .studio-ui .status-bar b {font-size:11px}
  .studio-ui .status-bar > span:has(#stat-length) {white-space:normal}
  .studio-ui .zoom-controls {margin-left:0}
  .studio-ui .properties-panel {columns:1;max-height:none;padding:22px}
}
@media screen and (max-width:620px) {
  .studio-ui .app-header {height:auto;min-height:58px;flex-wrap:wrap;padding:10px 12px;gap:8px}
  .studio-ui .app-header .rookberry-wordmark {width:139px}
  .studio-ui .header-actions {margin-left:auto}
  .studio-nav {order:3;width:100%;height:34px;border-top:1px solid #373c44;padding-top:3px}
  .studio-nav .studio-current {display:block}
  .studio-nav button {flex:1}
  .studio-ui .workspace {display:flex;flex-direction:column}
  .studio-ui .project-panel {max-height:300px;padding:12px;display:block;overflow:auto}
  .studio-ui #floor-list {flex-direction:row;overflow:auto;margin:8px 0 12px;padding-bottom:6px}
  .studio-ui .floor-button {min-width:156px;max-width:180px}
  .studio-ui .project-panel .studio-sheet-heading {margin:14px 0 4px}
  .studio-ui .project-panel > .studio-disclosure,.studio-ui .project-panel > .meeting-dashboard-section,.studio-ui .project-panel > .upload-button {margin-top:8px}
  .studio-ui .project-panel > .recovery-controls {margin-top:8px}
  .studio-ui .drawing-area {height:75dvh;min-height:570px}
  .studio-ui .drawing-header {flex-direction:row;align-items:center;justify-content:space-between;min-height:64px;padding:8px 12px;gap:8px}
  .studio-ui .drawing-actions {width:auto}
  .studio-ui .drawing-actions .scale-state {max-width:95px;white-space:normal}
  .studio-ui .status-bar .zoom-controls {margin-left:auto}
}
@media screen and (max-width:420px) {
  .studio-ui .app-header .rookberry-wordmark {width:122px}
  .studio-ui .header-actions > button {padding:7px 8px}
}
