:root{--chassis-metal: #2d3540;--chassis-highlight: #465161;--chassis-shadow: #181d24;--deck-metal: linear-gradient(180deg, #d3d8e2 0%, #a4adb8 100%);--crt-color: #33ff66;--crt-opacity: 1}*{box-sizing:border-box;margin:0;padding:0}body{background:#11151a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#fff;display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;overflow-x:hidden}.machineCabinetViewport{width:100%;max-width:1200px;margin:0 auto;position:relative;display:flex;justify-content:center}.machineChassis{width:100%;background:linear-gradient(135deg,var(--chassis-metal) 0%,var(--chassis-shadow) 100%);border:8px solid #14171d;border-radius:20px;box-shadow:0 40px 100px #000000d9,inset 0 2px 4px #ffffff40;position:relative;padding:30px;display:flex;flex-direction:column;gap:25px;overflow:hidden;-webkit-user-select:none;user-select:none}.chassisRivet{position:absolute;width:14px;height:14px;background:radial-gradient(circle at 4px 4px,#f2f5fa,#76818e 60%,#3e4650);border-radius:50%;box-shadow:inset 0 1px 1px #ffffffb3,0 2px 4px #000c}.chassisRivet.tl{top:12px;left:12px}.chassisRivet.tr{top:12px;right:12px}.chassisRivet.bl{bottom:12px;left:12px}.chassisRivet.br{bottom:12px;right:12px}.machineTopRow{display:flex;gap:30px;align-items:stretch;justify-content:space-between}.crtScreenBezel{flex:1.2;background:#14181f;border:12px solid #0f1216;border-radius:28px;box-shadow:inset 0 8px 16px #000c,0 8px 20px #00000080;padding:8px;position:relative;aspect-ratio:4 / 3;display:flex;overflow:hidden}.crtScreen{width:100%;height:100%;background:#020703;border-radius:18px;position:relative;overflow:hidden;box-shadow:inset 0 0 35px #00ff504d;display:flex;flex-direction:column}.crtGlow{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,transparent 30%,rgba(0,0,0,.5) 100%);pointer-events:none;z-index:3}.crtScanlines{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(#12101000 50%,#00000040 50%),linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f);background-size:100% 4px,6px 100%;pointer-events:none;z-index:4}.crtContent{flex:1;padding:16px;font-family:Courier New,Courier,monospace;color:var(--crt-color);opacity:var(--crt-opacity);text-shadow:0 0 6px var(--crt-color);overflow-y:auto;transition:opacity .25s ease,color .25s ease;font-size:13px;line-height:1.4;scrollbar-width:thin;scrollbar-color:var(--crt-color) transparent}.crtDefaultMenu{display:flex;flex-direction:column;gap:6px}.menuLine{font-weight:700}.menuSubLine{padding-left:18px;font-size:12px;color:#ffffffb3}.stenciledInstructions{flex:1;font-family:Courier New,Courier,monospace;color:#0f141ae6;text-shadow:0 1px 1px rgba(255,255,255,.25);display:flex;flex-direction:column;gap:15px;padding:15px 0}.factoryTitle{font-size:26px;font-weight:900;letter-spacing:1px;border-bottom:2px solid rgba(15,20,26,.6);padding-bottom:5px}.factorySub{font-size:12px;font-weight:700;letter-spacing:2px;margin-top:-10px}.factorySpecs{display:flex;flex-direction:column;gap:15px;margin-top:10px}.specCol h3{font-size:13px;font-weight:800;margin-bottom:6px}.specCol ul{list-style:none}.specCol li{font-size:12px;margin-bottom:4px}.specVal{font-size:12px;font-weight:700;background:#0000001a;padding:3px 8px;border-radius:4px;margin-bottom:5px;display:inline-block}.controlPanelDeck{background:var(--deck-metal);border:3px solid #6b7787;border-radius:10px;box-shadow:inset 0 2px 4px #fff9,0 8px 16px #0006;padding:20px;display:flex;justify-content:space-between;align-items:center;position:relative}.deckGroup{display:flex;flex-direction:column;align-items:center;gap:10px}.deckLabel{font-family:Courier New,Courier,monospace;font-size:11px;font-weight:900;color:#2c3540;letter-spacing:1px;text-shadow:0 1px 0 rgba(255,255,255,.5);border-bottom:1px solid rgba(0,0,0,.25);padding-bottom:2px}.leverSwitchContainer{height:50px;display:flex;align-items:center}.leverSwitch{width:24px;height:40px;background:#1c2128;border-radius:6px;border:2px solid #5a6472;position:relative;cursor:pointer;outline:none}.leverHandle{position:absolute;width:14px;height:24px;background:linear-gradient(90deg,#f2f5fa,#76818e);left:3px;border-radius:3px;box-shadow:0 2px 4px #00000080;transition:top .15s ease-out}.leverSwitch.up .leverHandle{top:2px;border-top:4px solid #fff}.leverSwitch.down .leverHandle{top:14px;border-bottom:4px solid #fff}.knobsRow{display:flex;gap:20px}.knobControl{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer}.controlKnob{width:46px;height:46px;background:radial-gradient(circle,#3d4650,#1e2329 80%,#0c0f13);border-radius:50%;border:3px solid #5a6472;box-shadow:0 4px 8px #0009,inset 0 1px 1px #fff3;position:relative;transition:transform .2s cubic-bezier(.18,.89,.32,1.28)}.knobIndicatorLine{position:absolute;width:4px;height:16px;background:#f2f5fa;top:4px;left:18px;border-radius:2px}.knobLabel{font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700;color:#1e2329;letter-spacing:.5px}.solenoidRunBtn{width:50px;height:36px;background:radial-gradient(circle,#e6e6e6,#9aa2ae);border:2px solid #5a6472;border-radius:4px;box-shadow:0 4px #4a545e,0 4px 6px #0006;font-family:Courier New,Courier,monospace;font-weight:900;font-size:12px;color:#1e2329;cursor:pointer;outline:none;transition:all .08s ease}.solenoidRunBtn:active{transform:translateY(3px);box-shadow:0 1px #4a545e,0 1px 3px #00000080}.solenoidRunBtn.staged{background:radial-gradient(circle,#ffea8a,#cca300);border-color:#a38000}.statusLed{width:12px;height:12px;border-radius:50%;background-color:#3a3f45;border:2px solid #1c2128;box-shadow:inset 0 1px 2px #000c;transition:background-color .2s ease,box-shadow .2s ease}.statusLed.red.on{background-color:#ff3b30;box-shadow:0 0 10px #ff3b30,inset 0 1px 1px #fffc}.statusLed.blue.on{background-color:#007aff;box-shadow:0 0 10px #007aff,inset 0 1px 1px #fffc}.statusLed.green.on{background-color:#34c759;box-shadow:0 0 10px #34c759,inset 0 1px 1px #fffc}.statusLed.blinking.on{animation:pulseLed .5s infinite alternate}@keyframes pulseLed{0%{opacity:.3;filter:brightness(.6)}to{opacity:1;filter:brightness(1.2)}}.machineBottomRow{display:flex;justify-content:space-between;align-items:flex-end;margin-top:10px}.coinMechanism{position:relative;display:flex;flex-direction:column;align-items:center}.brassFaceplate{width:140px;height:110px;background:radial-gradient(circle at center,gold,#b8860b 80%,#8b6508);border:3px solid #6b530c;border-radius:8px;box-shadow:0 6px 12px #00000080,inset 0 1px 2px #fff6;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center}.coinScrew{position:absolute;width:8px;height:8px;background:#3e3108;border-radius:50%}.coinScrew.tl{top:6px;left:6px}.coinScrew.tr{top:6px;right:6px}.coinScrew.bl{bottom:6px;left:6px}.coinScrew.br{bottom:6px;right:6px}.coinEntrySlot{width:14px;height:60px;background:#11151a;border-radius:4px;border:2px solid #54410a;box-shadow:inset 0 2px 4px #000000e6}.coinLabel{font-family:Courier New,Courier,monospace;font-size:10px;font-weight:900;color:#1e1601;margin-top:8px}.paperMaskingTape{position:absolute;width:190px;background:#f6ebd0;border:1px solid #e3d3b0;padding:6px 12px;color:#1a150b;font-family:Permanent Marker,cursive,sans-serif;font-size:13px;text-align:center;transform:rotate(-6deg);box-shadow:0 4px 8px #0000004d;top:30px;left:-25px;z-index:10;opacity:.9;border-radius:2px}.buttonMechanism{display:flex;flex-direction:column;align-items:center;gap:12px}.giantIngestButton{width:110px;height:110px;background:radial-gradient(circle at 35px 35px,#ff4d4d,#a30000 70%,#600);border:6px solid #14171d;border-radius:50%;box-shadow:0 12px #540000,0 12px 20px #000000b3,inset 0 3px 5px #fff6;font-family:Impact,sans-serif;font-size:20px;letter-spacing:1px;color:#fffffff2;text-shadow:0 2px 4px rgba(0,0,0,.6);cursor:pointer;outline:none;transition:all .1s cubic-bezier(.18,.89,.32,1.28)}.giantIngestButton:active:not(:disabled){transform:translateY(8px);box-shadow:0 4px #540000,0 4px 10px #000c}.giantIngestButton:disabled{filter:brightness(.4);cursor:not-allowed}.buttonUnderLabel{font-family:Courier New,Courier,monospace;font-size:11px;font-weight:700;color:#0f141ae6;text-shadow:0 1px 0 rgba(255,255,255,.2)}.authRockerBox{width:180px;background:radial-gradient(circle at center,#2c3540,#151a21);border:3px solid #1c2128;border-radius:8px;padding:12px;position:relative;box-shadow:0 6px 12px #00000080,inset 0 1px 1px #ffffff26;display:flex;flex-direction:column;align-items:center;gap:8px}.authBoxScrew{position:absolute;width:6px;height:6px;background:#3e4650;border-radius:50%}.authBoxScrew.tl{top:4px;left:4px}.authBoxScrew.tr{top:4px;right:4px}.authBoxScrew.bl{bottom:4px;left:4px}.authBoxScrew.br{bottom:4px;right:4px}.authBoxLabel{font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700;color:#ffffff80;letter-spacing:.5px}.authActiveBlock{display:flex;width:100%;justify-content:space-between;align-items:center;background:#0000004d;padding:6px 8px;border-radius:4px}.userBadge{font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700;color:#34c759;border:1px solid #34c759;padding:2px 4px;border-radius:2px;text-shadow:0 0 4px rgba(52,199,89,.4)}.userBadge.inactive{color:#ff9500;border-color:#ff9500;text-shadow:none}.authControlBtn{font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700;padding:4px 6px;border-radius:2px;border:1px solid #5a6472;background:#222c36;color:#fff;cursor:pointer;outline:none}.authControlBtn:hover{background:#3e4c5a}.authBoxStatus{font-family:Courier New,Courier,monospace;font-size:9px;color:#fff6}.terminalResultsBlock{display:flex;flex-direction:column;height:100%;gap:12px}.terminalResultsHeader{display:flex;justify-content:space-between;align-items:center}.readoutSub{font-size:10px;color:#ffffff80}.terminalSearch input{background:#0006;border:1px solid var(--crt-color);border-radius:4px;padding:4px 8px;color:var(--crt-color);font-family:Courier New,Courier,monospace;font-size:11px;outline:none}.terminalSummary{background:#ffffff0d;padding:8px 12px;border-radius:4px;border-left:3px solid var(--crt-color);font-size:11px}.terminalTableWrap{flex:1;overflow-y:auto}.terminalTableWrap table{width:100%;border-collapse:collapse;font-size:11px}.terminalTableWrap th{text-align:left;border-bottom:1px solid rgba(255,255,255,.2);padding:4px;color:#ffffff80}.terminalTableWrap td{padding:4px;border-bottom:1px solid rgba(255,255,255,.05)}.terminalTableWrap td.passed{color:#34c759}.terminalTableWrap td.failed{color:#ff3b30}.terminalPagination{display:flex;justify-content:space-between;align-items:center;font-size:10px}.pageControls button{background:none;border:1px solid var(--crt-color);color:var(--crt-color);padding:2px 6px;font-family:Courier New,Courier,monospace;cursor:pointer;margin-left:4px;border-radius:2px}.terminalDownloads{display:flex;gap:10px;margin-top:4px}.terminalDownloads a{color:var(--crt-color);text-decoration:underline;font-size:11px;font-weight:700}.crtLogTerminal{display:flex;flex-direction:column;gap:5px}.terminalProgressBar{width:100%;height:10px;background:#ffffff1a;border-radius:5px;overflow:hidden;margin:5px 0}.terminalProgressBar span{display:block;height:100%;background-color:var(--crt-color);box-shadow:0 0 6px var(--crt-color)}.vintageModalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;flex-direction:column;justify-content:center;align-items:center}.vintageCableWire{width:12px;height:200px;background:radial-gradient(circle at center,#1a1a1a,#0d0d0d);border-radius:6px;box-shadow:0 8px 16px #0009;position:absolute;bottom:0;z-index:5}.vintageModalMachine{width:500px;background:linear-gradient(135deg,#4b5563,#1f2937);border:6px solid #111827;border-radius:12px;box-shadow:0 25px 50px #000c,inset 0 1px 1px #fff3;padding:24px;position:relative;display:flex;flex-direction:column;gap:15px}.modalRivet{position:absolute;width:10px;height:10px;background:radial-gradient(circle at 3px 3px,#e5e7eb,#6b7280);border-radius:50%;box-shadow:0 1px 2px #0009}.modalRivet.tl{top:8px;left:8px}.modalRivet.tr{top:8px;right:8px}.modalRivet.bl{bottom:8px;left:8px}.modalRivet.br{bottom:8px;right:8px}.modalHeader{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid rgba(255,255,255,.15);padding-bottom:8px}.modalTitle{font-family:Courier New,Courier,monospace;font-size:14px;font-weight:700}.modalCloseBtn{font-family:Courier New,Courier,monospace;font-size:10px;background:#dc2626;border:1px solid #991b1b;color:#fff;padding:4px 8px;border-radius:3px;cursor:pointer}.vintageDragDropArea{border:2px dashed #9ca3af;border-radius:8px;padding:40px 20px;text-align:center;background:#0003;position:relative}.vintageDragDropArea.dragging{border-color:#34c759;background:#34c7591a}.dragHopperLines{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 46%,rgba(255,255,255,.02) 47%,rgba(255,255,255,.02) 53%,transparent 54%);background-size:20px 20px;pointer-events:none}.dragText{font-family:Courier New,Courier,monospace;font-size:14px;font-weight:700;margin-bottom:8px}.dragSubText{font-size:11px;color:#ffffff80;margin-bottom:20px}.modalButtonsRow{display:flex;justify-content:center;gap:15px}.modalActionBtn{font-family:Courier New,Courier,monospace;font-size:11px;font-weight:700;padding:8px 16px;border-radius:4px;border:2px solid #4b5563;background:radial-gradient(circle,#f3f4f6,#d1d5db);color:#111827;cursor:pointer;outline:none;box-shadow:0 2px 4px #0006}.modalActionBtn:active{transform:translateY(1px);box-shadow:0 1px 2px #00000080}.hiddenInputs{display:none}
