/* A service bench: molded cartridges, metal sockets and exposed gold contacts. */
.workbench{position:relative;padding:28px 32px 22px;background:radial-gradient(circle at 12px 12px,#758378 0 2px,#101c14 3px 5px,transparent 6px),radial-gradient(circle at calc(100% - 12px) 12px,#758378 0 2px,#101c14 3px 5px,transparent 6px),linear-gradient(135deg,#344238,#202d24 45%,#131e17);border:1px solid #6b7c6d;box-shadow:inset 0 0 0 4px #111b14,inset 0 0 0 5px #4a5b4e,0 8px 0 #050b07,0 9px 0 #405046,0 22px 40px #0007;max-width:860px;margin:0 auto 28px}
.hardware-top{display:flex;align-items:center;justify-content:space-between}.hardware-brand{font:600 27px var(--ui);color:#b8c7b8;letter-spacing:2px}.hardware-brand small{display:block;font:8px var(--mono);letter-spacing:1px;margin-top:6px;color:#8c9b8d}.bus-display{background:#060d08;border:2px solid #18231b;box-shadow:0 1px 0 #526356,inset 0 2px 8px #000;padding:12px 18px;color:#c7ffc8;min-width:122px}.bus-display small{font:7px var(--mono);display:block;color:#829e88;letter-spacing:1px}.bus-display b{font:25px var(--mono);display:block;margin-top:5px;text-shadow:0 0 9px #a3ffa955}.bus-display i{font:11px var(--mono);font-style:normal;color:#6a946f}.hardware-vents{height:13px;background:repeating-linear-gradient(90deg,#070e09 0 4px,#49594d 4px 5px,transparent 5px 9px);width:36%;margin:22px 0}
.socket-bank{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.socket-title{display:flex;justify-content:space-between;margin-bottom:10px;font:9px var(--mono);color:#99aa9a}.socket-title kbd{font:9px var(--mono);color:#c3d5c6}.decksocket{position:relative;display:block;width:100%;padding:15px 12px 23px;background:linear-gradient(90deg,#040906,#121e16 45%,#020704);border:2px solid #0d160f;box-shadow:inset 0 4px 14px #000,inset 0 0 0 2px #344638,0 1px 0 #657368;cursor:grab;min-height:240px;transition:border-color .15s,background .15s;touch-action:none}.decksocket:hover{background:#102317;border-color:#9abe9e}.socket-latch{position:absolute;width:42%;height:8px;bottom:3px;left:29%;background:linear-gradient(#69766a,#3a493d);border:1px solid #1d2920;box-shadow:0 3px 0 #020604}.socket-indicator{font:7px var(--mono);letter-spacing:1px;color:#859e89;display:flex;align-items:center;gap:7px;margin-top:12px}.socket-indicator i{width:5px;height:5px;background:#a4ffb6;box-shadow:0 0 7px #a4ffb677}.hardware-bottom{display:flex;align-items:center;gap:14px;margin-top:24px;padding-top:18px;border-top:1px solid #445447;font:7px var(--mono);color:#889a8c}.hardware-bottom b{display:block;margin-top:5px;font-weight:400;color:#b3c1b4}.hardware-port{width:54px;height:18px;background:repeating-linear-gradient(90deg,#8c835c 0 2px,#0a100c 2px 5px);border:5px solid #111b14;box-shadow:0 1px 0 #536359}.hardware-screw{margin-left:auto;font:18px var(--mono);color:#697a6c}.deck-instruction{text-align:center;font:11px/1.5 var(--mono);color:#9abca3;min-height:34px;margin:26px 0}
.cartridge{--cart:#839a76;display:block;position:relative;color:#121d16;background:linear-gradient(135deg,#5a6957,#323f32 50%,#1e2b21);border:1px solid #81917a;box-shadow:inset 0 0 0 3px #27382b,inset 0 0 0 4px #54664d,3px 5px 0 #030a05,4px 6px 0 #405140,8px 12px 14px #0008;padding:15px 12px 19px;text-align:left;transform:translateY(-3px);user-select:none;-webkit-user-select:none}.cart-grip{display:block;height:9px;margin:0 4px 12px;background:repeating-linear-gradient(0deg,#112016 0 1px,#5f7058 1px 3px)}.cart-label{display:block;background:linear-gradient(110deg,var(--cart),color-mix(in srgb,var(--cart),#e2e0bf 15%));padding:11px 10px 14px;border:1px solid #a3b18c;box-shadow:0 1px 0 #1c271b,inset 0 0 13px #10231720}.cart-series{display:block;font:7px var(--mono);letter-spacing:1px;color:#243b29}.cart-face{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:15px 0 10px}.cart-face .icon{width:32px;height:32px;filter:none}.cart-face strong{font:600 25px/.9 var(--ui);text-transform:uppercase;letter-spacing:.7px}.cart-rule{display:block;height:3px;background:#263d2a;opacity:.7}.cart-effect{display:block;font:8px var(--mono);margin-top:10px;white-space:nowrap;color:#243b29}.cart-serial{display:block;font:6px var(--mono);color:#8f9c83;letter-spacing:.8px;margin-top:13px}.cart-pins{position:absolute;bottom:-10px;left:17%;width:66%;height:11px;background:repeating-linear-gradient(90deg,#a08b4d 0 5px,#d6bd74 5px 7px,#242c1e 7px 10px);border:1px solid #344127;box-shadow:0 2px 0 #050a05}.cartridge-cloak{--cart:#9cb29b}.cartridge-decoy{--cart:#c2b894}.cartridge-scan,.cartridge-radar{--cart:#8cbbbd}.cartridge-repair{--cart:#c0a18d}.cartridge-siphon{--cart:#a5b780}.cartridge-overclock{--cart:#bf998a}
.module-case{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;padding:28px;background:repeating-linear-gradient(45deg,#101a13 0 2px,#0c150f 2px 5px);border:1px solid #34493a;box-shadow:inset 0 0 0 6px #09110c,inset 0 4px 20px #000a}.case-cell{padding:14px 12px 0;background:#030a05;box-shadow:0 1px 0 #2b4032,inset 0 1px 7px #000;border:1px solid #182b1e}.loose-module{display:block;width:100%;border:0;padding:0;background:transparent;cursor:grab;touch-action:none;transition:transform .15s}.loose-module:hover{transform:translateY(-5px)}.case-status{display:block;font:7px var(--mono);color:#779980;text-align:center;margin:23px 0 12px}.module-inspector{border-left:2px solid #4d6d56;padding:4px 20px;margin:25px 0}.module-inspector>span{font:10px var(--mono);color:#b7d7bf}.module-inspector p{font:600 17px/1.5 var(--ui);color:#8fad98;margin:8px 0}.decksocket.accepts{border-color:#78a983}.decksocket.overpower{border-color:#ac7053}.decksocket.drop-target{border-color:#cdffb9;background:#2a4d33;box-shadow:inset 0 0 24px #a4ffa133,0 0 14px #a4ffa122}.decksocket.overpower.drop-target{background:#4a2d20;border-color:#e9a074}.loose-module.picked .cartridge{outline:2px solid #c2e9bb;outline-offset:4px}.drag-source .cartridge{opacity:.3}.cartridge-ghost{position:fixed;width:160px;transform:translate(-50%,-60%) rotate(-5deg);pointer-events:none;z-index:10000;filter:drop-shadow(12px 20px 12px #0009)}.dragging-module{cursor:grabbing!important}.workbench.locked .decksocket{opacity:.7;cursor:not-allowed}.decksocket:focus-visible,.loose-module:focus-visible{outline:2px solid #e6ffd3;outline-offset:5px}

@media(max-width:700px){.workbench{padding:20px 13px 16px;margin-top:12px}.hardware-brand{font-size:20px;letter-spacing:1px}.hardware-brand small{font-size:6px;letter-spacing:.4px}.bus-display{padding:8px 10px;min-width:90px}.bus-display b{font-size:20px}.bus-display small{font-size:6px}.hardware-vents{margin:18px 0;width:46%;height:10px}.socket-bank{gap:8px}.socket-title{font-size:7px;letter-spacing:0;margin-bottom:7px}.socket-title kbd{font-size:7px}.decksocket{min-height:170px;padding:10px 5px 18px}.compact.cartridge{padding:9px 5px 13px;box-shadow:inset 0 0 0 2px #27382b,inset 0 0 0 3px #54664d,2px 4px 0 #030a05,4px 7px 8px #0007}.compact .cart-label{padding:8px 5px}.compact .cart-series{font-size:5px;letter-spacing:0}.compact .cart-face{gap:10px;padding:12px 0 8px}.compact .cart-face .icon{width:24px;height:24px}.compact .cart-face strong{font-size:16px;letter-spacing:0}.compact .cart-grip{margin:0 2px 8px;height:6px}.compact .cart-effect{font:600 9px var(--ui);margin-top:6px}.compact .cart-serial{font-size:4px;letter-spacing:0;margin-top:10px}.cart-pins{height:9px;bottom:-8px}.socket-indicator{font-size:6px;gap:4px;letter-spacing:0}.socket-indicator i{width:4px;height:4px}.hardware-bottom{font-size:6px;gap:10px;margin-top:18px;padding-top:14px}.hardware-port{width:36px;height:15px;border-width:4px}.module-case{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px;gap:18px}.case-cell{padding:12px 8px 0}.cart-face strong{font-size:22px}.cart-effect{font:600 12px var(--ui)}.cart-series{font-size:6px;letter-spacing:.6px}.cart-serial{font-size:5px}.cartridge{padding:12px 8px 16px}.deck-instruction{font-size:9px;margin:24px 3px 18px}.module-inspector{padding:4px 14px}.module-inspector p{font-size:15px}.cartridge-ghost{width:112px}}
@media(max-width:360px){.compact .cart-face strong{font-size:14px}.compact .cart-effect{font-size:8px}.socket-title{font-size:6px}.workbench{padding-inline:10px}.socket-bank{gap:6px}}
.cart-level{display:flex;gap:4px;padding:6px 12px;background:#0a170e}.cart-level i{height:4px;flex:1;background:#36523d}.cart-level i.lit{background:#b5f5c2;box-shadow:0 0 4px #8cffab44}
.module-wishes{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.module-wishes>small{width:100%;color:var(--dim);font:10px var(--mono)}.module-wishes button{padding:8px 12px}.module-wishes button[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan)}.inventory-note>small{font:10px var(--mono);color:var(--cyan)}
