dialog.station-racks{--rack-ink:#eee6d7;--rack-muted:#c0b6a5;--rack-focus:#e6c68e;width:min(1190px,calc(100vw - 48px));max-width:none;height:min(890px,calc(100dvh - 48px));max-height:none;padding:0;border:1px solid #655a46;border-radius:3px;background:#161714;color:var(--rack-ink);overflow:hidden;box-sizing:border-box;color-scheme:dark;font-family:Inter,sans-serif;box-shadow:0 24px 100px #000b}
.station-racks::backdrop{background:#080a08b8}
.station-racks *{box-sizing:border-box}
.station-racks button,.station-racks select{font:inherit}
.station-racks button{cursor:pointer}
.station-racks button:disabled{cursor:default;opacity:.42}
.station-racks button:focus-visible,.station-racks select:focus-visible{outline:2px solid var(--rack-focus);outline-offset:3px}
.station-racks ::selection{background:#b59a61;color:#141710}
.station-racks [hidden]{display:none!important}
.racks-room{height:100%;display:flex;flex-direction:column;position:relative;isolation:isolate;background:linear-gradient(180deg,#10120fa8,#141510ba),var(--rack-scene-image,url('assets/racks.webp')) center 48%/cover}
.racks-room::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(100deg,#231c0c20,transparent 30%,#191a12a0 70%,#080c07a0)}
.racks-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 30px 15px;background:#181517d9;border-bottom:1px solid #6b654346;flex-shrink:0}
.racks-header h2{font:600 clamp(20px,2vw,27px)/1.2 Sora,sans-serif;letter-spacing:-.03em;margin:0 0 6px;color:var(--rack-ink)}
.racks-header p{font-size:13px;line-height:1.5;margin:0;color:var(--rack-muted)}
.racks-close{display:flex;align-items:center;gap:8px;min-height:44px;border:0;background:transparent;color:var(--rack-ink);padding:8px 0 8px 12px;font-size:12px!important}
.racks-close:hover{color:#fff7e7}
.racks-close svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:none}
.racks-scroll{overflow:auto;flex:1;min-height:0;scrollbar-color:#746b54 #191b15;scrollbar-width:thin}
.racks-workspace{padding:34px 6.5% 20px;max-width:1170px;margin:0 auto}
.racks-board{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding-bottom:60px}
.rack-cabinet{position:relative;padding:37px 21px 0;background:linear-gradient(90deg,#171718,#333335 2%,#666366 3%,#292829 5%,#111112 7%,#181819 92%,#4b4947 96%,#262527 98%);border:1px solid #494647;box-shadow:11px 15px 20px #0508049c,inset 0 0 20px #000;min-width:0;border-radius:3px 3px 1px 1px}
.rack-cabinet::after{content:"";height:9px;position:absolute;bottom:-10px;left:16px;right:16px;background:linear-gradient(90deg,#080b08 0 13%,transparent 13% 86%,#080b08 86%)}
.rack-cabinet-cap{position:absolute;top:0;left:5px;right:5px;height:32px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-top:2px solid #77716b;background:linear-gradient(#4e4946,#242324);color:#e1dac6;font:10px/1.1 Consolas,monospace;letter-spacing:.09em;white-space:nowrap}
.rack-inventory{font-size:8px;color:#c0c1a8;letter-spacing:.03em}
.rack-rail{position:absolute;top:36px;bottom:36px;width:12px;background:repeating-linear-gradient(180deg,#494746 0 4px,#111113 4px 9px,#494746 9px 18px);border-left:2px solid #77716b;border-right:2px solid #222022}
.rack-rail-left{left:6px}.rack-rail-right{right:6px}
.rack-switch,.rack-machine,.rack-power-unit{position:relative;background:linear-gradient(105deg,#646465,#444446 35%,#2b2b2e);border:1px solid #74716d;border-bottom:3px solid #171518;box-shadow:inset 0 1px #b5b19a33;min-width:0}
.rack-bolts{position:absolute;inset:0;pointer-events:none}
.rack-bolt{position:absolute;width:6px;height:6px;border-radius:50%;background:linear-gradient(45deg,#676a58 42%,#080d08 43% 57%,#96927c 58%);box-shadow:0 1px 2px #030602}
.rack-bolt:nth-child(1){left:5px;top:6px}.rack-bolt:nth-child(2){right:5px;top:6px}.rack-bolt:nth-child(3){left:5px;bottom:7px}.rack-bolt:nth-child(4){right:5px;bottom:7px}
.rack-switch{height:131px;padding:16px 15px 9px;background:linear-gradient(115deg,#c2bcb1,#aaa59d 40%,#8e8b86)}
.rack-switch-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:6px}
.rack-switch-title h3{font:500 9px/1.2 Inter,sans-serif;letter-spacing:.065em;color:#f0e9d4;margin:0}
.rack-switch-title>span{display:flex;align-items:center;gap:5px;white-space:nowrap;font:8px Consolas,monospace;color:#e2dec5}
.rack-switch-power{width:4px;height:4px;background:#b8d47a;box-shadow:0 0 3px #d4e88b}
.rack-switch-ports{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:1px}
.rack-switch-port{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:3px 0 4px;height:60px;border:1px solid transparent;border-radius:2px;background:transparent;color:#e4dfc9;touch-action:none}
.rack-port-number{font:9px/1 Consolas,monospace}
.rack-jack{position:relative;display:block;width:22px;height:20px;background:#111114;border:2px solid #9d9890;border-bottom:3px solid #807b76;border-radius:1px;box-shadow:inset 0 1px 3px #000,0 1px 1px #10170e;flex-shrink:0}
.rack-jack::before{content:"";position:absolute;left:5px;right:5px;bottom:1px;height:5px;background:repeating-linear-gradient(90deg,#bbaa63 0 1px,transparent 1px 2px)}
.rack-switch-port.is-occupied .rack-jack{border-color:#bdb9a2;background:var(--cable-color);box-shadow:inset 2px 2px 0 #ffffff25,inset -3px -1px 0 #0005}
.rack-switch-port.is-occupied .rack-jack::before{left:5px;right:5px;top:-3px;height:7px;background:#e8e7cc88;border:1px solid #303b2859}
.rack-switch-port.is-occupied .rack-jack::after{content:"";position:absolute;left:6px;bottom:-7px;width:7px;height:8px;background:var(--cable-color);border-left:1px solid #fff3;border-right:1px solid #0004}
.rack-port-lights{display:flex;justify-content:space-between;width:20px}
.rack-port-lights i{width:5px;height:3px;background:#202d18;border:1px solid #0f180c}
.rack-switch-port.is-linked .rack-port-lights i:first-child{background:#c4eb75;box-shadow:0 0 4px #aee152a0}
.rack-switch-port.is-linked .rack-port-lights i:last-child{background:#e3be54;animation:rack-activity 2.3s steps(1,end) infinite}
.rack-switch-port:nth-child(3n) .rack-port-lights i:last-child{animation-delay:-1.1s}
.rack-switch-port:nth-child(5n) .rack-port-lights i:last-child{animation-delay:-.6s}
.rack-switch-port:hover{background:#a5a88924}
.rack-switch-port.is-available{border-color:#ccd2a579;background:#dce6a515}
.rack-switch-port.is-selected{outline:1px solid var(--rack-focus);outline-offset:0}
.rack-switch-labels{display:flex;justify-content:space-between;margin:3px 3px 0;color:#d1d5ba;font:7px/1 Consolas,monospace;letter-spacing:.07em}
.rack-blank{height:29px;position:relative;border:1px solid #514b49;background:#1c1b1e;margin:4px 0}
.rack-cable-brush{padding:8px 15px}
.rack-cable-brush span{display:block;box-shadow:inset 0 3px 4px #000;background:repeating-linear-gradient(90deg,#131215 0 2px,#3e3c3c 2px 3px);height:10px;border:1px solid #67605c}
.rack-machine{height:134px;margin-bottom:5px;padding:14px 18px 8px}
.rack-machine-top{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}
.rack-machine-top h3{font:500 13px/1.2 Inter,sans-serif;letter-spacing:.035em;margin:0;color:#f3ecda}
.rack-role{display:block;color:#d4d2bb;font-size:10px;line-height:1.5;margin-top:2px}
.rack-model{color:#d4d3b9;font:9px/1.4 Consolas,monospace;white-space:nowrap}
.rack-drive-bank{display:flex;gap:4px;margin:8px 0 2px;width:calc(100% - 35px)}
.rack-drive{position:relative;display:flex;align-items:center;gap:4px;background:#18191b;border:1px solid #99949150;box-shadow:inset 0 2px 3px #030603aa;height:25px;flex:1;padding:3px 5px}
.rack-drive>i{height:15px;width:3px;background:#8d8d8b;box-shadow:1px 0 0 #050d03}
.rack-drive>b{font:7px/1 Consolas,monospace;font-weight:400;color:#c4c0b8}
.rack-drive>em{margin-left:auto;width:3px;height:3px;background:#111d0e}
.rack-machine.is-linked .rack-drive>em{background:#b2d376}
.rack-machine.is-linked .rack-drive:nth-child(2)>em{animation:rack-activity 3.1s steps(1,end) infinite}
.rack-machine-bottom{display:flex;align-items:center;height:38px;gap:7px}
.rack-machine-actions{display:flex;gap:1px;align-items:center;position:relative;z-index:3}
.rack-power,.rack-restart{display:grid;place-items:center;background:transparent;border:0;color:#cfd4b9;width:32px;height:36px;padding:8px}
.rack-power svg,.rack-restart svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.rack-power{color:#c4e994}
.rack-power svg{filter:drop-shadow(0 0 2px #9cd46750)}
.rack-power:hover,.rack-restart:hover{background:#d9ddbd20}
.rack-device-state{font:10px/1.2 Consolas,monospace;letter-spacing:.04em;color:#d7dec2;white-space:nowrap;position:relative;z-index:3;background:#262529;padding:3px}
.rack-server-port{margin-left:auto;display:flex;gap:5px;align-items:center;background:transparent;border:0;color:#d8dbc4;padding:4px 0 4px 5px;height:37px;position:relative;z-index:3;flex-shrink:0}
.rack-server-port>span{font:6px Consolas,monospace;writing-mode:vertical-rl}
.rack-server-port .rack-jack{width:18px;height:16px;background:var(--cable-color);border:2px solid #9b9f87;box-shadow:inset -3px 0 #0003}
.rack-server-port .rack-jack::before{display:none}
.rack-server-port[aria-pressed="true"]{outline:1px solid var(--rack-focus);outline-offset:1px}
.rack-handle{position:absolute;left:6px;top:43px;height:45px;width:5px;border-radius:3px;background:linear-gradient(90deg,#141c12,#737962,#172014);box-shadow:1px 1px 2px #0009}
.rack-handle-right{left:auto;right:6px}
.rack-machine.is-off .rack-power{color:#9fa38d}
.rack-machine.is-off .rack-power svg{filter:none}
.rack-machine.is-off .rack-device-state{color:#c5b8a4;background:#29272b}
.rack-machine.is-booting .rack-device-state{color:#f0ca7f}
.rack-machine.is-booting .rack-power{color:#e7c77e}
.rack-base{min-height:53px;display:flex;gap:14px;align-items:center;padding:12px 8px 10px}



.rack-power-unit{height:131px;display:flex;align-items:center;gap:12px;padding:18px 22px;background:linear-gradient(110deg,#3d3a38,#252426)}
.rack-pdu-copy>span{display:block;font-size:8px;letter-spacing:.055em;color:#c8cdb7;white-space:nowrap}
.rack-pdu-copy>b{display:block;font:26px/1.3 Consolas,monospace;letter-spacing:.04em;color:#d6b96e;background:#1b2218;padding:2px 9px;margin:6px 0 4px;box-shadow:inset 0 1px 3px #030502;max-width:95px}
.rack-pdu-copy>b>span{font-size:10px;margin-left:7px;color:#999e7b}
.rack-pdu-copy>small{display:block;font:7px Consolas,monospace;color:#bac6aa}
.rack-pdu-vents{height:67px;flex:1;background:repeating-linear-gradient(180deg,#151416 0 3px,#57524f 3px 5px);min-width:20px}
.rack-pdu-lamp{width:7px;height:14px;background:#e2ad58;border:2px solid #666950;box-shadow:0 0 8px #a1702740}
.rack-wires{position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:2;filter:drop-shadow(2px 4px 2px #0007)}
.rack-cable{opacity:.88}
.rack-cable.is-selected{opacity:1;filter:drop-shadow(0 0 2px #ead4a070)}
.rack-loose-tray{grid-column:1/-1;display:flex;justify-content:center;gap:18px;min-height:38px;position:absolute;left:20px;right:20px;bottom:0;z-index:3}
.rack-loose-cable{display:flex;gap:7px;align-items:center;color:#efe0c5;background:#29272b;border:1px solid #8b8264;border-radius:2px;padding:7px 10px;font:9px/1.2 Consolas,monospace!important;touch-action:none}
.rack-loose-plug{position:relative;display:block;width:14px;height:20px;background:var(--cable-color);border:1px solid #d1cdb5;box-shadow:inset -3px 0 #0003;border-radius:2px}
.rack-loose-plug::before{content:"";position:absolute;left:2px;right:2px;top:-4px;height:5px;background:#d5d5b9;border:1px solid #84866d}
.rack-loose-cable[aria-pressed="true"]{outline:2px solid var(--rack-focus);outline-offset:2px}
.is-patching,.is-patching button{cursor:grabbing}
.racks-footer{flex-shrink:0;padding:14px 30px 15px;background:#171519f5;border-top:1px solid #6d70543f}
.rack-patch-hint{font-size:12px;line-height:1.5;margin:0;color:#ded8c6}
.rack-patch-actions{display:flex;align-items:center;gap:15px;min-height:30px;flex-wrap:wrap;font-size:11px}
.rack-selected-label{display:flex;gap:8px;align-items:center;font-weight:500;color:#f0e7d0}
.rack-selected-label::before{content:"";width:15px;height:4px;background:var(--cable-color)}
.rack-route-label{display:flex;gap:7px;align-items:center;color:#cccab4}
.rack-route{padding:6px 24px 6px 7px;min-height:32px;border:1px solid #75685c;border-radius:2px;background:#29262a;color:#f0ead6;font-size:11px!important}
.rack-patch-actions button{color:#e8e0cb;background:transparent;border:0;border-bottom:1px solid #7b8267;padding:7px 0;min-height:32px}
.rack-patch-actions button:hover{color:#fff6df;border-color:#efe0b5}
.rack-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:6px}
.rack-announcement{font-size:11px;line-height:1.5;color:#bebca8;margin:0;min-height:17px}
.rack-reset{flex-shrink:0;color:#d8d1bc;font-size:11px!important;min-height:32px;background:transparent;border:0;padding:6px 0;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#69715a}
.rack-keyboard-hint{margin:5px 0 0;color:#b3b6a1;font-size:10px;line-height:1.5}
@keyframes rack-activity{0%,13%,25%,29%,67%,75%,83%,100%{opacity:1}7%,20%,27%,40%,72%,79%,89%{opacity:.16}}
@media(max-width:1050px){.racks-workspace{padding:25px 4% 14px}.racks-board{gap:25px}.rack-inventory{font-size:7px}.rack-machine{padding-left:14px;padding-right:14px}.rack-device-state{font-size:7px}.rack-switch{padding-left:11px;padding-right:11px}.rack-switch-title h3{font-size:8px}.rack-machine-actions{gap:0}.rack-power,.rack-restart{width:27px;padding:6px}.rack-model{font-size:7px}}
@media(max-width:760px){dialog.station-racks{width:calc(100vw - 24px);height:calc(100dvh - 24px)}.racks-header{padding:16px 19px 13px}.racks-close span{display:none}.racks-close{padding:8px}.racks-workspace{max-width:530px;padding:20px 22px 13px}.racks-board{grid-template-columns:1fr;gap:25px;padding-bottom:64px}.rack-cabinet-b .rack-power-unit,.rack-cabinet-b .rack-blank{display:none}.rack-cabinet-b{padding-top:38px}.rack-inventory{font-size:8px}.rack-machine{height:136px;padding-left:18px;padding-right:18px}.rack-machine-top h3{font-size:12px}.rack-role{font-size:9px}.rack-model{font-size:8px}.rack-device-state{font-size:8px}.rack-power,.rack-restart{width:36px;height:40px;padding:10px}.rack-machine-bottom{gap:8px}.rack-switch{padding-left:17px;padding-right:17px}.rack-switch-title h3{font-size:9px}.rack-switch-port{height:63px}.rack-cabinet-a .rack-base{min-height:43px}.rack-loose-tray{flex-wrap:wrap;gap:8px;left:0;right:0}.rack-loose-cable{min-height:37px;padding:5px 7px}.rack-loose-cable>span{font-size:8px}.racks-footer{padding:12px 18px 14px}.rack-patch-hint{font-size:11px}.rack-keyboard-hint{font-size:10px}.rack-footer-bottom{gap:10px;align-items:flex-start}.rack-announcement{font-size:10px}.rack-reset{font-size:10px!important;min-height:37px}.rack-patch-actions{gap:10px;row-gap:5px}.rack-selected-label{font-size:10px}.rack-route-label{font-size:10px}.rack-route{max-width:144px;min-height:37px}.rack-patch-actions button{min-height:37px}.racks-room{background-position:42% center}}
@media(max-width:400px){.racks-workspace{padding-left:14px;padding-right:14px}.rack-cabinet{padding-left:19px;padding-right:19px}.rack-machine{padding-left:13px;padding-right:13px}.rack-model{font-size:7px}.rack-machine-top h3{font-size:11px}.rack-switch{padding-left:10px;padding-right:10px}.rack-jack{width:20px}.rack-machine-bottom{gap:4px}.rack-power,.rack-restart{width:31px;padding:8px}.rack-device-state{font-size:7px}.rack-selected-label{width:100%}.rack-patch-actions{gap:12px}.rack-base{gap:10px}}
@media(prefers-reduced-motion:reduce){.station-racks *{animation:none!important;transition:none!important}.rack-switch-port.is-linked .rack-port-lights i:last-child{opacity:1}}

.station-racks.rack-motion-off *{animation:none!important;transition:none!important}
/* The rack room: mixed salvaged hardware under a warm workshop light. */
@font-face{font-family:Rack Outfit;src:url('assets/fonts/outfit.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Rack Sans;src:url('assets/fonts/dm-sans.woff2') format('woff2');font-weight:100 1000;font-display:swap}
dialog.station-racks{--rack-ink:#f0e7db;--rack-muted:#c6bbb1;--rack-focus:#edb475;border:0;border-radius:2px;background:#191719;font-family:Rack Sans,sans-serif;box-shadow:0 26px 90px #000b}
.station-racks::backdrop{background:#080709c7}
.racks-room{background:linear-gradient(180deg,#17121666,#1b15134f 45%,#171216ab),var(--rack-scene-image,url('assets/racks.webp')) center 48%/cover}
.racks-room::before{background:linear-gradient(100deg,#ab693010,transparent 42%,#100e1644)}
.racks-header{padding:23px 35px 20px;background:#171419ed;border:0}
.racks-header h2{font:500 clamp(28px,3vw,39px)/1.05 Rack Outfit,sans-serif;letter-spacing:-.035em;margin:0 0 8px}
.racks-header p{font:400 13px/1.4 Rack Sans,sans-serif;color:#c6bbb1}
.racks-close{font-family:Rack Sans,sans-serif;font-size:13px!important;color:#f0e7db}
.racks-scroll{scrollbar-color:#947968 #242024}
.racks-workspace{padding-top:30px;padding-bottom:12px}
.racks-board{gap:40px}
.rack-cabinet{border:0;border-radius:3px;box-shadow:10px 15px 24px #080608a8,inset 1px 0 #a3988466;padding-top:39px}
.rack-cabinet-cap{background:linear-gradient(#4a4440,#252225);border-top:2px solid #8e8070;color:#d9cfc2;font:500 11px/1 Rack Outfit,sans-serif;letter-spacing:.07em}
.rack-inventory{font:400 8px/1 Rack Sans,sans-serif;color:#c0b3a6;letter-spacing:.03em}
.rack-switch{height:139px;background:linear-gradient(110deg,#cbc4b9,#a9a59e 52%,#95918c);border-color:#d8cec1;border-bottom-color:#292627}
.rack-switch-title h3{font:600 10px/1.2 Rack Outfit,sans-serif;color:#252226;letter-spacing:.06em}
.rack-switch-title>span,.rack-port-number,.rack-switch-labels{color:#322f31}
.rack-switch-title>span{font-family:Rack Sans,sans-serif;font-weight:600}
.rack-switch-labels{font-size:8px;letter-spacing:.04em}
.rack-switch-port{color:#292629}
.rack-switch-port:hover{background:#fff8e333}
.rack-switch-port.is-available{background:#e3bd822e;border-color:#715537}
.rack-machine{height:156px;padding-top:16px;background:linear-gradient(108deg,#3d3c40,#2a2a2e 60%,#222226);border-color:#656066;border-bottom-color:#111115}
.rack-machine-top h3{display:inline-block;font:600 13px/1.1 Rack Outfit,sans-serif;letter-spacing:.025em;padding:4px 6px 3px;background:#c9c0ae;color:#252327;box-shadow:0 1px 2px #0007}
.rack-role{font:400 11px/1.4 Rack Sans,sans-serif;color:#c9bfb6;margin-top:5px}
.rack-model{font:500 9px/1.4 Rack Sans,sans-serif;color:#c9bfb6;letter-spacing:.05em}
.rack-drive-bank{margin-top:12px;gap:5px}
.rack-drive{height:27px;border-color:#68646b;background:linear-gradient(#17171b,#222227)}
.rack-machine-bottom{height:40px;margin-top:5px}
.rack-device-state{background:transparent;color:#ded1c0;font-size:9px;letter-spacing:.03em}
.rack-power,.rack-restart{border:1px solid #756a5a66;border-radius:50%;width:29px;height:29px;padding:6px;background:#19181c;color:#d8cfc3;margin-right:4px;box-shadow:inset 0 1px 2px #0008}
.rack-power{color:#a9c67d}.rack-power svg{filter:none}
.rack-restart:hover,.rack-power:hover{background:#4b4038}
.rack-machine.is-off .rack-device-state{background:transparent;color:#b0a5a0}
.rack-machine.is-booting .rack-device-state{color:#efbc70}
.rack-handle{background:linear-gradient(90deg,#141318,#8b8580,#282329)}
.rack-machine[data-device="cache"]{background:linear-gradient(108deg,#bbb1a2,#9b9388 66%,#877f77);border-color:#c9bdab}
.rack-machine[data-device="cache"] .rack-role,.rack-machine[data-device="cache"] .rack-model,.rack-machine[data-device="cache"] .rack-device-state{color:#312d2b}
.rack-machine[data-device="cache"] .rack-machine-top{padding-right:93px}
.rack-machine[data-device="cache"] .rack-model{display:none}
.rack-machine[data-device="cache"] .rack-drive-bank{width:calc(100% - 99px)}
.rack-machine[data-device="archive"]{background:linear-gradient(108deg,#545153,#3c3a3f 68%,#2a292f)}
.rack-machine[data-device="beacon"]{background:linear-gradient(108deg,#313135,#222227)}
.rack-machine[data-device="beacon"] .rack-machine-top h3{background:#35363a;color:#dfd6c9;box-shadow:none;padding-left:0}
.rack-power-unit{height:139px;padding:18px;background:linear-gradient(108deg,#302d2e,#1d1c21);border-color:#5c5350;gap:10px}
.rack-pdu-copy>span{font:500 9px/1.2 Rack Outfit,sans-serif;letter-spacing:.045em;color:#e4d7c8}
.rack-pdu-copy>b{color:#f0bc73;background:#151315;box-shadow:inset 0 2px 5px #000;letter-spacing:.07em}
.rack-pdu-copy>b>span,.rack-pdu-copy>small{color:#bdb0a1}
.rack-pdu-vents{margin-right:74px;height:73px;opacity:.8}
.rack-pdu-lamp{position:absolute;right:14px;bottom:16px}
.rack-note{position:absolute;object-fit:contain;pointer-events:none;user-select:none;z-index:4;filter:drop-shadow(2px 5px 3px #0006)}
.rack-note-power{width:112px;height:112px;right:14px;top:4px;transform:rotate(6deg)}
.rack-note-cache{width:105px;height:105px;right:14px;top:0;transform:rotate(-7deg)}
.rack-base{min-height:30px;padding:0}
.racks-footer{padding:16px 35px 18px;background:#171419f5;border-top:1px solid #a2806230}
.rack-patch-hint{font:500 13px/1.5 Rack Sans,sans-serif;color:#e8dccf}
.rack-announcement{font:400 12px/1.5 Rack Sans,sans-serif;color:#c5b8ad}
.rack-keyboard-hint{font:400 11px/1.4 Rack Sans,sans-serif;color:#b6aaa2}
.rack-reset{color:#e3c19a;text-decoration-color:#8b6b4d;font-family:Rack Sans,sans-serif}
.rack-loose-cable{background:#2d2727;border-color:#7b6656;color:#eee0cf;font-family:Rack Sans,sans-serif!important}
.rack-route-label{color:#d6c8bc}.rack-route{background:#292326;color:#f2e3d4;border-color:#796457}
@media(max-width:1050px){.racks-board{gap:25px}.rack-note-cache{right:8px;width:93px;height:93px}.rack-machine-top h3{font-size:12px}.rack-role{font-size:10px}.rack-device-state{font-size:8px}}
@media(max-width:760px){.racks-header{padding:20px 22px 17px}.racks-header h2{font-size:30px}.racks-workspace{padding-top:22px}.rack-cabinet-b .rack-power-unit{display:flex}.rack-cabinet-b .rack-blank{display:block}.rack-cabinet-b{padding-top:39px}.rack-machine{height:166px}.rack-machine-top h3{font-size:13px}.rack-machine-actions{gap:2px}.rack-power,.rack-restart{width:38px;height:38px;padding:10px;margin-right:2px}.rack-device-state{font-size:8px}.rack-note-cache{width:100px;height:100px;right:10px}.racks-footer{padding:13px 19px 15px}.rack-patch-hint{font-size:12px}.rack-announcement,.rack-keyboard-hint{font-size:10px}.rack-cabinet-a .rack-base{min-height:30px}}

/* Applied maintenance labels, inset character LCDs, and shielded RJ45 terminations. */
.rack-switch-title h3,.rack-role,.rack-cabinet-cap>span:first-child,.rack-inventory,.rack-machine[data-device="beacon"] .rack-machine-top h3{
  display:inline-block;width:fit-content;background:linear-gradient(105deg,#d7ceba,#c3b9a5);
  color:#292622;padding:3px 6px;border:1px solid #eee1c255;
  box-shadow:0 1px 2px #0008,inset 0 1px #fff3;
}
.rack-switch-title h3{transform:rotate(-1deg);margin:-3px 0 -2px}
.rack-role{font:500 10px/1.2 Rack Sans,sans-serif;margin-top:4px;padding:2px 5px;transform:rotate(-.7deg)}
.rack-machine[data-device="cache"] .rack-role{color:#292622}
.rack-machine[data-device="archive"] .rack-role{transform:rotate(.6deg)}
.rack-cabinet-cap>span:first-child{padding:3px 6px;letter-spacing:.05em}
.rack-inventory{padding:2px 4px;font-size:7px;transform:rotate(-.4deg)}
.rack-machine[data-device="beacon"] .rack-machine-top h3{padding:4px 6px 3px}
.rack-device-state,.rack-machine[data-device="cache"] .rack-device-state{
  display:inline-flex;align-items:center;justify-content:center;min-width:90px;height:25px;
  padding:3px 6px;border:3px solid #262529;border-top-color:#131215;border-bottom-color:#55514b;
  border-radius:2px;color:#263025;font:600 9px/1 Consolas,monospace;letter-spacing:.06em;
  background:linear-gradient(165deg,#dae0af33 0 42%,transparent 43%),repeating-linear-gradient(0deg,#00000009 0 1px,transparent 1px 3px),#a6ae83;
  box-shadow:inset 1px 2px 3px #17201688,0 1px 0 #d7cbb24d;text-shadow:1px 1px #e4e8ba55;
}
.rack-machine.is-booting .rack-device-state{color:#30331c;background-color:#c5b975}
.rack-machine.is-off .rack-device-state,.rack-machine[data-device="cache"].is-off .rack-device-state{
  color:#59604c;background:#727866;text-shadow:none;box-shadow:inset 1px 2px 4px #172016aa,0 1px #b7aa9533;
}
.rack-server-port{gap:5px;padding-left:3px}
.rack-server-port .rack-jack{
  width:24px;height:23px;border:2px solid #aaa6a0;border-bottom:3px solid #696666;
  background:linear-gradient(90deg,#111216 0 12%,transparent 12% 88%,#111216 88%),linear-gradient(#d9d9c380 0 32%,var(--cable-color) 33%);
  box-shadow:inset 0 1px 3px #000,0 1px 2px #000b;
}
.rack-server-port .rack-jack::before{
  display:block;left:4px;right:4px;top:1px;bottom:auto;height:5px;
  background:repeating-linear-gradient(90deg,#cfb974 0 1px,#36332b 1px 2px);
  border-top:1px solid #e6e0c680;
}
.rack-server-port .rack-jack::after{
  content:"";position:absolute;left:6px;bottom:-7px;width:7px;height:13px;
  background:linear-gradient(90deg,#fff3,transparent 40%,#0005),var(--cable-color);
  border:1px solid #41413b;border-top:3px solid #e0e1cf99;border-radius:1px;
}
.rack-server-port>span{align-self:flex-start;margin-top:5px}
.rack-server-leds{position:absolute;left:2px;right:9px;top:3px;display:flex;justify-content:space-between;pointer-events:none}
.rack-server-leds b{width:3px;height:3px;background:#25291e;box-shadow:0 0 0 1px #151616}
.is-linked .rack-server-leds b:first-child{background:#b4d778;box-shadow:0 0 3px #b4d77888}
.is-linked .rack-server-leds b:last-child{background:#dfb66a;animation:rack-activity 2.3s steps(1,end) infinite}
@media(max-width:1050px){.rack-device-state,.rack-machine[data-device="cache"] .rack-device-state{min-width:77px;font-size:8px;padding:3px 4px}}
@media(max-width:400px){.rack-machine-actions{gap:0}.rack-power,.rack-restart{width:29px;height:32px;padding:7px;margin-right:1px}.rack-device-state,.rack-machine[data-device="cache"] .rack-device-state{min-width:73px;font-size:7px}.rack-role{font-size:9px}}
@media(prefers-reduced-motion:reduce){.is-linked .rack-server-leds b:last-child{animation:none}}
.rack-role{display:block}
.rack-pdu-copy>small{width:fit-content;padding:2px 4px;background:#c3b9a5;color:#292622;box-shadow:0 1px 2px #0007;transform:rotate(-.5deg)}
