.terminal-page main{max-width:2300px}.terminal-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px}.terminal-diagram{display:block;width:100%;min-width:1900px}.terminal-diagram.fit{min-width:0}.terminal-rail{fill:none;stroke:#adc6c6;stroke-width:8;stroke-linecap:butt}.terminal-diagram .circuit-recess{stroke-width:9}.terminal-diagram .circuit-window{stroke-width:5}.terminal-diagram .platform{fill:#b9e4e80d;stroke:#98b9b380}.terminal-diagram .platform-label{fill:#c6ded8;font-size:15px;font-weight:400}.terminal-diagram .rotor-wrap{width:67px}.terminal-diagram .rotor-label{font-size:10px}.terminal-diagram .tiny{font-size:12px}.terminal-diagram .circuit-id{font-size:10px;fill:#c2d5d2}.terminal-bank-title{fill:#c3ddd7;font-size:17px;letter-spacing:1px}.terminal-line-label{fill:#e0efeb;font-size:17px;font-weight:500}.terminal-train-id{fill:#e8efde;font-size:12px;font-family:Consolas,monospace}.terminal-numbers{display:grid;grid-template-columns:repeat(11,minmax(45px,1fr));gap:8px;width:100%}.terminal-numbers div{min-width:0;text-align:center}.terminal-numbers small{font-size:9px;color:#a5c2bc;display:block;margin-bottom:5px}.terminal-numbers span{display:block;background:#08252d;border:1px solid #82aaa63d;color:#e2edc4;font:18px Consolas,monospace;line-height:30px;letter-spacing:1px}.terminal-page .number-indicator{display:block;padding:18px}.terminal-page .soundbar{flex-wrap:wrap}.terminal-page .approachaudio{flex-wrap:wrap}.terminal-page .brief .metrics{flex-wrap:wrap}.terminal-sidebar{background:#fff;border:1px solid #167d8d25;border-radius:5px;padding:20px;min-width:0}.terminal-sidebar h2{margin:0 0 14px;font-size:16px}.terminal-sidebar h3{margin-top:24px;font-size:13px}.terminal-card-list{max-height:350px;overflow:auto}.terminal-train-card{display:block;text-align:left;width:100%;border:1px solid #b9e4e8;border-radius:3px;margin:0 0 8px;padding:10px;background:#f7fbfc}.terminal-train-card.selected{border-color:#167d8d;border-left-width:4px}.terminal-train-card strong{font-size:15px;margin-left:8px}.terminal-train-card>span:last-of-type,.terminal-train-card small{display:block;font-size:11px;color:#4d6d7a;margin-top:5px;line-height:1.6}.kind.paid{color:#6e5324;background:#f7ebcc;border-color:#d9bb6a}.terminal-platform-select{display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:10px}.terminal-route{font-size:12px;line-height:1.9;margin-top:12px}.terminal-route p{margin:8px 0}.terminal-page .lockrow{font-size:11px}.terminal-lower{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;margin-top:30px}.terminal-lower>section{background:#fff;border:1px solid #167d8d28;border-radius:5px;padding:20px;min-width:0}.terminal-lower h2{font-size:16px}.terminal-lower .logs{max-height:360px;overflow:auto;line-height:1.8;font-size:11px}.terminal-lower .tablewrap{max-height:400px}.terminal-lower table{min-width:740px}.terminal-setup{max-width:830px}.terminal-network{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#b9e4e82b;padding:14px 20px;border:1px solid #167d8d22;border-radius:4px;font-size:13px;color:#167d8d}.terminal-network b{font-weight:500}.terminal-grade{display:flex;align-items:center;gap:24px;font:60px Georgia,serif;color:#167d8d;margin:10px 0}.terminal-grade strong{font:30px Consolas,monospace}.menu-link{font-size:12px;text-decoration:none;border-bottom:1px solid #167d8d40;padding-bottom:3px}.terminal-page header .toolbar{justify-content:flex-end}.terminal-page .modal{padding:30px 15px;overflow:auto}.terminal-page .modalbox{margin:auto;max-height:90vh;overflow:auto}.terminal-page .consolehead span{line-height:1.7}.terminal-reference{line-height:1.9;font-size:13px}.terminal-reference p{max-width:1100px}.terminal-reference a{margin-right:14px}@media(max-width:1300px){.terminal-layout{grid-template-columns:minmax(0,1fr)}.terminal-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.terminal-sidebar h3{margin-top:0}.terminal-card-list{max-height:280px}.terminal-lower{grid-template-columns:1fr}}@media(max-width:750px){.terminal-numbers{grid-template-columns:repeat(6,minmax(35px,1fr));gap:6px}.terminal-numbers span{font-size:14px;line-height:24px}.terminal-sidebar{grid-template-columns:1fr}.terminal-network{font-size:11px;padding:12px;gap:8px}.terminal-page .modalbox{padding:22px}.terminal-lower>section{padding:14px}.terminal-page .soundbar .approachgroup{width:100%}}

.terminal-diagram{min-width:2350px}.terminal-numbers{grid-template-columns:repeat(15,minmax(35px,1fr))}.terminal-page .approachaudio{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.terminal-page .approachgroup{border-left:0!important;padding-left:0!important;gap:6px}.terminal-page .approachgroup strong{font-size:10px}.terminal-page .approachgroup button{padding:5px 7px;font-size:10px}.destination{font-size:12px;background:#1c4047;color:#c6ded8;border:1px solid #8eb1ac;padding:4px 7px;border-radius:2px;min-width:54px;white-space:nowrap;cursor:pointer;box-shadow:inset 0 1px 3px #001820}.destination.available{background:#a9ded1;color:#092d34;border-color:#eef8e1;box-shadow:0 0 0 2px #d1eadc66}.destination:hover{background:#b9e4e8;color:#071b2b}.rotor.armed{outline:2px solid #f4a34c;outline-offset:1px;background:#f4a34c22!important}@media(max-width:1100px){.terminal-numbers{grid-template-columns:repeat(8,minmax(35px,1fr))}}@media(max-width:750px){.terminal-page .approachaudio{grid-template-columns:1fr 1fr}.terminal-numbers{grid-template-columns:repeat(5,minmax(35px,1fr))}}

.destination-wrap{text-align:center;width:70px}.destination{display:block;width:32px;height:32px;min-width:32px;padding:0;margin:0 auto;border-radius:50%;font:10px Consolas,monospace;line-height:30px;border:2px solid #a3c8bf;box-shadow:inset 0 2px 4px #001820,0 2px 2px #102d32;aspect-ratio:1}.destination-label{display:block;margin-top:3px;color:#c8ded8;font-size:9px;line-height:12px;white-space:nowrap}.flat-diamond{fill:none;stroke:#adcfbf;stroke-width:2;pointer-events:none}.flat-diamond.reserved{stroke:#f0f5e1;stroke-width:3}.flat-diamond.occupied{stroke:#f36c70;stroke-width:3}

.console .destination{background:radial-gradient(circle at 32% 25%,#fff 0,#f1f5e9 38%,#cad7c4 73%,#a3b69f 100%);color:#183c31;border:2px solid #c9d7bf;font-weight:700;box-shadow:inset 1px 1px 2px #fff,inset -2px -3px 3px #71876d80,2px 3px 3px #08212788}.console .destination.available{background:radial-gradient(circle at 32% 25%,#fff 0,#f1f5e9 38%,#cad7c4 73%,#a3b69f 100%);border-color:#fff;box-shadow:inset 1px 1px 2px #fff,inset -2px -3px 3px #71876d80,0 0 0 3px #a1e2d388,2px 3px 3px #08212788}.console .destination:hover{filter:brightness(1.08)}.console .rotor.shunt .handle{background:linear-gradient(90deg,#235a43,#6cb98b 58%,#398061)}.console .rotor.shunt .disc{background:#164430;border-color:#a7d3ab;color:#f4f8df}.console .rotor.shunt:hover{background:#b9e4e81a}

/* Compact overview by default; enlarge only when requested. */
.terminal-diagram.fit{min-width:0;width:100%;height:auto}.terminal-diagram .terminal-line-label{font-size:13px;font-weight:500}.terminal-page .number-indicator{padding:10px 14px}.terminal-numbers{gap:5px}.terminal-numbers small{font-size:8px;margin-bottom:3px}.terminal-numbers span{font-size:14px;line-height:24px}.terminal-page .consolehead{padding:9px 14px 0}.terminal-page .aspectlegend{padding-top:6px}.terminal-layout{gap:16px;grid-template-columns:minmax(0,1fr) 270px}
@media(max-width:1300px){.terminal-layout{grid-template-columns:minmax(0,1fr)} }
