.desktop-dock{display:none}
.desktop-cable-menu{display:none}
.cable-display-controls>p{font-size:12px;font-weight:600;margin:4px 0 10px}
.cable-display-controls>div{display:grid;gap:6px}
.pf-theme .cable-display-controls button{width:100%;padding:10px;text-align:left;min-height:40px;border:1px solid #d5dce2;border-radius:7px!important;background:#fff;font-size:12px;color:#273441}
.pf-theme .cable-display-controls button[aria-pressed=true]{border-color:#0066cc;color:#0066cc;background:#e7f1fc;box-shadow:inset 3px 0 #0066cc}
.cable-display-controls small{display:block;margin:10px 0;font-size:10px;color:#647182;line-height:1.5}
.view-top .build-identity{flex:1;min-width:0;max-width:none}
.view-top .build-identity label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.view-top .build-identity input{width:100%;min-width:0;max-width:380px;border:1px solid transparent;border-radius:4px;background:transparent;padding:5px 7px;font-family:var(--pf-t--global--font--family--body,"Red Hat Text",sans-serif);font-size:14px;line-height:22px;color:#273441;text-overflow:ellipsis;letter-spacing:normal}
.view-top .build-identity input:hover{border-color:#d5dce2;background:#fff}
.view-top .build-identity input:focus{outline:2px solid #0066cc;outline-offset:0;background:#fff}
.view-card .view-top{align-items:center;gap:10px;padding:7px 12px}
.view-top #view-label{white-space:nowrap;flex:none}
.pf-theme :is(.desktop-dock,.mobile-tabs) .build-menu-items{top:auto;bottom:calc(100% + 12px);right:0;border-radius:14px;padding:8px;max-height:calc(100dvh - 180px);overflow:auto;box-shadow:0 12px 32px #20354c20;letter-spacing:normal}
.pf-theme :is(.desktop-dock,.mobile-tabs) .build-menu-items button{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;margin:0;min-height:40px;padding:10px;border:0;background:#fff;color:#273441;box-shadow:none;text-align:left;font-size:12px}
.pf-theme :is(.desktop-dock,.mobile-tabs) .build-menu-items button::after{display:none}
.pf-theme :is(.desktop-dock,.mobile-tabs) .build-menu-items button:hover:not(:disabled){background:#edf5fc;color:#0066cc}
.pf-theme :is(.desktop-dock,.mobile-tabs) .build-menu-items #undo{border-bottom:1px solid #e8ecf0;margin-bottom:5px}
.build-menu-items svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
/* Keep render announcements available to screen readers without a status row. */
.pf-theme #canvas .view-card .view-bottom{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(min-width:901px){
  .workspace .canvas-column,.workspace .inspector,.workspace>.library{max-height:calc(100dvh - 140px)}
  .workspace .canvas-column{height:calc(100dvh - 140px)}
  .canvas-column .view-card{position:relative;padding-bottom:96px;overflow:visible}
  .desktop-dock{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:6;display:flex;align-items:center;gap:4px;width:max-content;max-width:calc(100% - 20px);padding:7px;background:rgba(255,255,255,.97);border:1px solid #d5dce2;border-radius:19px;box-shadow:0 8px 26px #20354c18,0 2px 5px #20354c08}
  .pf-theme .desktop-dock>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:54px;min-height:60px;padding:8px;border:1px solid transparent;border-radius:12px!important;font-family:inherit;font-size:11px;font-weight:500;line-height:1.2;color:#4b5968;background:transparent;white-space:nowrap}
  .desktop-dock>.build-menu>summary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:48px;min-height:60px;padding:8px;border:1px solid transparent;border-radius:12px!important;font-size:11px;line-height:1.2;background:transparent;color:#4b5968}
  .desktop-dock>.build-menu[open]>summary{background:#e7f1fc;border-color:#b5d4f2;color:#0066cc}
  .pf-theme .desktop-dock>#save-build{background:#0066cc;color:#fff;margin-left:3px}
  .pf-theme .desktop-dock>#save-build::after{display:none}
  .pf-theme .desktop-dock>#save-build:hover{background:#0053a6;color:#fff}
  .desktop-dock svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .pf-theme .desktop-dock>button:hover:not(:disabled){background:#f0f4f8;border-color:#dce3e9;color:#162c43}
  .pf-theme .desktop-dock>button:is([aria-expanded=true],[aria-pressed=true]){background:#e7f1fc;border-color:#b5d4f2;color:#0066cc}
  .pf-theme .desktop-dock button:focus-visible{outline:2px solid #0066cc;outline-offset:2px}
  .dock-divider{height:30px;width:1px;background:#e1e6eb;margin:0 2px;flex:none}
  .desktop-view-menu{display:none;position:absolute;bottom:calc(100% + 12px);left:0;width:230px;padding:8px;background:#fff;border:1px solid #d5dce2;border-radius:14px;box-shadow:0 12px 32px #20354c20}
  .dock-views-open .desktop-view-menu{display:block}
  .desktop-cable-menu{position:absolute;bottom:calc(100% + 12px);right:0;width:260px;padding:14px;background:#fff;border:1px solid #d5dce2;border-radius:14px;box-shadow:0 12px 32px #20354c20}
  .dock-cable-menu-open .desktop-cable-menu{display:block}
  .desktop-view-menu>p{padding:6px 10px 10px;font-size:11px;color:#647182;border-bottom:1px solid #e8ecf0;margin-bottom:5px}
  .desktop-view-menu .view-tools{display:flex;flex-direction:column;gap:2px}
  .pf-theme .desktop-view-menu .view-tools button{display:flex;align-items:center;justify-content:flex-start;gap:12px;text-align:left;width:100%;min-height:39px;padding:8px 10px;border:0!important;border-radius:7px!important;background:#fff;color:#263646;font-size:12px;box-shadow:none}
  .pf-theme .desktop-view-menu .view-tools button::after{display:none}
  .pf-theme .desktop-view-menu .view-tools button:hover{background:#edf5fc;color:#0066cc}
  .desktop-view-menu .view-tools svg{width:18px;height:18px}
  .view-card .view-bottom{padding:3px 12px;min-height:20px}
  .view-card .view-hint{display:none}
  .view-card:not(.dock-cables-open)>#cable-overview{display:none}
  .view-card .rack-stage>.canvas-rack-plan{display:none;left:12px;bottom:4px;width:200px;max-height:calc(100% - 16px);z-index:7;border-radius:12px!important;padding:12px;box-shadow:0 8px 26px #20354c20}
  .view-card.dock-placement-open .rack-stage>.canvas-rack-plan{display:flex}
}
@media(min-width:901px) and (max-width:1200px){
  .desktop-dock{gap:1px;padding:5px;border-radius:15px;max-width:calc(100% - 12px)}
  .pf-theme .desktop-dock>button{min-width:42px;padding:7px 5px;font-size:10px;min-height:56px}
  .desktop-dock>.build-menu>summary{min-width:38px;min-height:56px;padding:7px 5px;font-size:10px}
  .desktop-dock svg{width:20px;height:20px}.dock-divider{margin:0 1px}
}
@media(max-width:900px){.mobile-placement .view-tools button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.mobile-placement .view-tools button{display:flex;align-items:center;gap:6px}}
@media(max-width:900px){
  .mobile-placement .cable-display-controls{padding:14px 0;border-top:1px solid #e2e6eb}
  .mobile-placement .cable-display-controls button{min-height:44px}
  .mobile-placement [data-cable-overview]{display:none}
  .view-top .build-identity input{font-size:16px;padding:5px 0}
  .view-card .view-top{flex-wrap:wrap;gap:4px 10px;padding:7px 12px}
  .view-top .build-identity{flex-basis:70%}
  .view-top .mobile-view-actions{width:100%;justify-content:flex-end}
  .mobile-tabs>.build-menu{flex:1;min-width:0}
  .mobile-tabs>.build-menu>summary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;padding:5px;border:0;border-radius:10px!important;background:transparent;color:#56616d;font-size:11px;line-height:16px;font-weight:500}
  .mobile-tabs>.build-menu[open]>summary{background:#e7f1fc;color:#0066cc}
  .mobile-tabs>.build-menu .build-menu-items{min-width:230px;max-width:calc(100vw - 24px)}
  .pf-theme .mobile-tabs .build-menu-items button{flex-direction:row;justify-content:flex-start;font-size:13px;min-height:44px}
}
