.container.site-planner{flex-direction:column;gap:14px;width:min(1760px,100% - 32px);max-width:none;padding-top:24px;padding-bottom:28px;display:flex}.site-planner-toolbar{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.site-planner-toolbar .btn{align-items:center;gap:8px;display:inline-flex}.site-planner-add{align-items:center;gap:8px;display:flex}.site-planner-add select{border:1px solid var(--line);min-height:44px;color:inherit;font:inherit;background:#ffffff0f;border-radius:12px;padding:0 12px}.site-planner-hidden-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-planner-scale{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.site-planner-scale input{width:120px}.site-planner-message{margin:0}.site-planner-canvas{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.site-planner-canvas svg{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.site-planner-canvas.mode-add svg,.site-planner-canvas.mode-scale svg{cursor:crosshair}.site-planner-device{cursor:grab}.site-planner-handle{cursor:alias}.site-planner-legend{color:var(--muted);background:#111;flex-wrap:wrap;gap:8px 16px;margin:0;padding:10px 14px;font-size:13px;list-style:none;display:flex}.site-planner-legend li{align-items:center;gap:6px;display:inline-flex}.site-planner-legend span{border-radius:50%;width:14px;height:14px}.site-planner-legend-band span{opacity:.75;border-radius:4px}.site-planner-editor{margin:0;padding:18px 20px}.site-planner-editor-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.site-planner-chip{color:#0b0b0b;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:800}.site-planner-fields{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 16px;display:grid}.site-planner-fields input[type=range]{width:100%}.site-planner-summary{color:var(--muted);margin:6px 0 0;font-size:14px}.site-planner-row{flex-wrap:wrap;gap:10px;display:flex}.site-planner-row .btn{align-items:center;gap:6px;display:inline-flex}.site-planner-table{overflow-x:auto}.site-planner-table table{border-collapse:collapse;width:100%;font-size:14px}.site-planner-table th,.site-planner-table td{border-bottom:1px solid var(--line);text-align:left;padding:8px 10px}.site-planner-table td:last-child{white-space:normal}.site-planner-table tr{cursor:pointer}.site-planner-table tr.active td{background:#ff17171a}.site-planner-name{flex:240px;margin:0}.site-planner-name input{border:1px solid var(--line);width:100%;min-height:44px;color:inherit;font:inherit;background:#ffffff0f;border-radius:12px;padding:0 12px}.site-planner-tabs{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.site-planner-tabs .btn{min-height:38px;padding:6px 14px;font-size:14px}.site-planner-totals{margin:10px 0;padding-left:20px;font-size:14px}.site-planner-missing{color:var(--muted);font-style:italic}.site-planner-cabling{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.site-planner-cabling h3{grid-column:1/-1;margin:0 0 4px;font-size:15px}.site-planner-schedule-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.site-planner-schedule-head h2{margin:0}.site-planner-schedule-head .btn{align-items:center;gap:8px;display:inline-flex}.site-planner-cables{margin-top:22px}.site-planner-cables h3{margin:0 0 10px}@media (max-width:640px){.container.site-planner{width:calc(100% - 16px)}}
.container.rack-planner{flex-direction:column;gap:14px;width:min(1400px,100% - 32px);max-width:none;padding-top:24px;padding-bottom:28px;display:flex}.rack-planner-toolbar{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.rack-planner-toolbar .field{margin:0}.rack-planner-toolbar .btn,.rack-planner-row .btn{align-items:center;gap:6px;display:inline-flex}.rack-planner-add>div{gap:8px;display:flex}.rack-planner-toolbar select,.rack-planner-name input{border:1px solid var(--line);min-height:44px;color:inherit;font:inherit;background:#ffffff0f;border-radius:12px;padding:0 12px}.rack-planner-name{flex:260px}.rack-planner-name input{width:100%}.rack-planner-message{color:var(--muted);margin:0}.rack-planner-main{grid-template-columns:minmax(0,620px) minmax(280px,1fr);align-items:start;gap:18px;display:grid}.rack-planner-canvas{border:1px solid var(--line);background:#f3f4f6;border-radius:18px;overflow:hidden}.rack-planner-canvas svg{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.rack-item{cursor:grab}.rack-item:active{cursor:grabbing}.rack-planner-side{flex-direction:column;gap:14px;display:flex}.rack-planner-editor{flex-direction:column;gap:4px;margin:0;padding:16px 18px;display:flex}.rack-planner-row{flex-wrap:wrap;gap:8px;margin-bottom:6px;display:flex}.rack-planner-row .btn{min-height:38px;padding:6px 12px;font-size:14px}.rack-planner-table{overflow-x:auto}.rack-planner-table table{border-collapse:collapse;width:100%;font-size:14px}.rack-planner-table th,.rack-planner-table td{border-bottom:1px solid var(--line);text-align:left;padding:6px 10px}.rack-planner-table tr{cursor:pointer}.rack-planner-table tr.free td{color:var(--muted);cursor:default;font-style:italic}.rack-planner-table tr.active td{background:#ff17171a}@media (max-width:900px){.rack-planner-main{grid-template-columns:1fr}}.rack-planner-tabs{flex-wrap:wrap;gap:8px;display:flex}.rack-planner-tabs .btn{align-items:center;gap:6px;min-height:40px;padding:6px 14px;font-size:14px;display:inline-flex}.rack-planner-tab-size{opacity:.7;font-weight:600}.rack-planner-room{overflow-x:auto}.rack-room-rack{cursor:pointer}.rack-planner-export{width:1px;height:1px;position:absolute;top:0;left:-10000px;overflow:hidden}
