/* /Pages/Home.razor.rz.scp.css */
.sim-app[b-ylr82s37xi] {
    height: 100vh;
    display: grid;
    grid-template-rows: 64px minmax(0, 1fr) 150px;
    overflow: hidden;
    background: #080d10;
}

.app-header[b-ylr82s37xi] {
    position: relative;
    z-index: 20;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 8px 12px;
    border-bottom: 1px solid #273940;
    background: #0b1419;
}

.brand-mark[b-ylr82s37xi] { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; background: #b9212c; color: white; font-size: 27px; font-weight: 800; border-radius: 5px; }
.brand-copy[b-ylr82s37xi] { min-width: 220px; }
.brand-copy h1[b-ylr82s37xi] { margin: 0; font-size: 21px; line-height: 1.1; font-weight: 700; }
.brand-copy h1:focus[b-ylr82s37xi] { outline: none; }
.brand-copy span[b-ylr82s37xi], .quiet[b-ylr82s37xi] { color: #91a4ab; font-size: 12px; }
.header-readout[b-ylr82s37xi] { display: flex; align-items: center; gap: 8px; margin-left: auto; color: #a9bbc0; font-size: 12px; white-space: nowrap; }
.header-tools[b-ylr82s37xi] { display: flex; gap: 7px; }
.vps-command[b-ylr82s37xi] { background: #865f19; border-color: #ac812a; }
.profile-command[b-ylr82s37xi] { background: #176879; border-color: #28899b; }
.account-menu[b-ylr82s37xi] { min-width: 0; display: grid; gap: 2px; padding-left: 3px; font-size: 10px; }
.account-menu span[b-ylr82s37xi] { max-width: 150px; overflow: hidden; color: #a9bbc0; text-overflow: ellipsis; white-space: nowrap; }
.account-menu a[b-ylr82s37xi] { color: #39d9e5; text-decoration: none; }
.account-menu a:hover[b-ylr82s37xi] { text-decoration: underline; }
.setup-menu[b-ylr82s37xi] { position: relative; }
.setup-menu-trigger[b-ylr82s37xi]::after { content: ""; display: inline-block; margin-left: 8px; border: 4px solid transparent; border-top-color: #a9bbc0; transform: translateY(3px); }
.setup-menu-panel[b-ylr82s37xi] { position: absolute; z-index: 30; top: calc(100% + 7px); left: 0; width: 290px; display: grid; overflow: hidden; border: 1px solid #3a525b; border-radius: 5px; background: #0d191e; box-shadow: 0 15px 40px rgba(0, 0, 0, .65); }
.setup-menu-panel button[b-ylr82s37xi] { min-width: 0; display: grid; gap: 3px; padding: 11px 13px; border: 0; border-bottom: 1px solid #293d45; color: #eef4f5; background: #0f1d22; text-align: left; }
.setup-menu-panel button:last-child[b-ylr82s37xi] { border-bottom: 0; }
.setup-menu-panel button:hover[b-ylr82s37xi] { background: #17313a; }
.setup-menu-panel strong[b-ylr82s37xi] { font-size: 13px; }
.setup-menu-panel span[b-ylr82s37xi] { color: #8ea3aa; font-size: 10px; }
.signal[b-ylr82s37xi] { width: 9px; height: 9px; border-radius: 50%; background: #5f6c70; box-shadow: 0 0 0 3px #1d292e; }
.signal.sync[b-ylr82s37xi] { background: #32d8e6; box-shadow: 0 0 10px #32d8e6; }

.command[b-ylr82s37xi], .file-command[b-ylr82s37xi], .control[b-ylr82s37xi], .icon-command[b-ylr82s37xi] { border: 1px solid #34474f; border-radius: 4px; color: #edf4f5; background: #1b292f; min-height: 34px; padding: 7px 13px; font-weight: 650; }
.command:hover[b-ylr82s37xi], .file-command:hover[b-ylr82s37xi], .control:hover[b-ylr82s37xi], .icon-command:hover[b-ylr82s37xi] { border-color: #6d8892; background: #23343b; }
.command.primary[b-ylr82s37xi] { background: #176f3b; border-color: #279355; }
.command.secondary[b-ylr82s37xi] { background: #1a282e; }
.command.full[b-ylr82s37xi] { width: 100%; margin-top: 12px; }
.file-command[b-ylr82s37xi] { position: relative; overflow: hidden; white-space: nowrap; }
.file-command input[b-ylr82s37xi] { position: absolute; inset: 0; opacity: 0; cursor: pointer; }

.workspace[b-ylr82s37xi] { min-height: 0; display: grid; grid-template-columns: minmax(300px, 27vw) minmax(560px, 1fr); }
.program-pane[b-ylr82s37xi], .machine-pane[b-ylr82s37xi] { min-width: 0; min-height: 0; background: #0c151a; }
.program-pane[b-ylr82s37xi] { position: relative; display: grid; grid-template-rows: auto minmax(0, 1fr); border-right: 1px solid #26383f; }
.machine-pane[b-ylr82s37xi] { position: relative; overflow: hidden; background: #0a1115; }

.pane-heading[b-ylr82s37xi] { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 10px 12px; border-bottom: 1px solid #26383f; background: #101d22; }
.pane-heading > div:first-child[b-ylr82s37xi] { display: grid; gap: 2px; min-width: 0; }
.pane-heading strong[b-ylr82s37xi] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eyebrow[b-ylr82s37xi] { color: #66d7e0; font-size: 10px; font-weight: 800; }
.segmented[b-ylr82s37xi] { display: flex; border: 1px solid #34474f; border-radius: 4px; overflow: hidden; }
.segmented button[b-ylr82s37xi] { border: 0; padding: 5px 10px; background: #111d22; color: #9bafb6; font-size: 11px; }
.segmented button.active[b-ylr82s37xi] { background: #28798a; color: white; }

.code-list[b-ylr82s37xi] { overflow: auto; padding: 6px 0 20px; background: #070d10; }
.code-line[b-ylr82s37xi] { position: relative; width: 100%; min-height: 24px; display: grid; grid-template-columns: 14px 40px minmax(0, 1fr); align-items: center; border: 0; padding: 1px 8px 1px 4px; color: #d9e7e9; background: transparent; font: 12px/1.55 Consolas, monospace; text-align: left; }
.code-line:hover[b-ylr82s37xi] { background: #132129; }
.code-line.executing[b-ylr82s37xi] { color: #fff; background: #a80082; }
.code-line.selected[b-ylr82s37xi] { color: #081014; background: #d8f0f2; }
.line-number[b-ylr82s37xi] { color: #71868d; text-align: right; padding-right: 9px; user-select: none; }
.code-line.executing .line-number[b-ylr82s37xi] { color: #fff; }
.code-line.selected .line-number[b-ylr82s37xi] { color: #31535d; }
.line-code[b-ylr82s37xi] { overflow: hidden; white-space: pre; text-overflow: clip; }
.breakpoint-dot[b-ylr82s37xi] { width: 8px; height: 8px; border-radius: 50%; }
.has-breakpoint .breakpoint-dot[b-ylr82s37xi] { background: #ef5d58; box-shadow: 0 0 7px #ef5d58; }
.program-editor[b-ylr82s37xi] { width: 100%; height: 100%; resize: none; border: 0; outline: 0; padding: 12px; color: #d9e7e9; background: #070d10; font: 12px/1.55 Consolas, monospace; }
.editor-actions[b-ylr82s37xi] { display: flex; align-items: center; gap: 12px; position: absolute; left: 10px; bottom: 128px; }
.editor-actions span[b-ylr82s37xi] { color: #91a4ab; font-size: 11px; }

.machine-canvas[b-ylr82s37xi] { width: 100%; height: 100%; display: block; touch-action: none; cursor: grab; }
.machine-canvas:active[b-ylr82s37xi] { cursor: grabbing; }
.machine-overlay[b-ylr82s37xi] { position: absolute; z-index: 2; top: 12px; display: grid; gap: 3px; pointer-events: none; font: 11px/1.25 Consolas, monospace; color: #8fa4aa; text-shadow: 0 1px #05090b; }
.machine-overlay.top-left[b-ylr82s37xi] { left: 14px; }
.machine-overlay.top-right[b-ylr82s37xi] { top: auto; right: 14px; bottom: 70px; text-align: right; }
.machine-overlay strong[b-ylr82s37xi] { color: #34dbe8; font-size: 13px; }
.status-band[b-ylr82s37xi] { position: absolute; z-index: 3; inset: auto 10px 10px; display: grid; grid-template-columns: repeat(6, minmax(82px, 1fr)); background: rgba(8, 15, 18, .94); border: 1px solid #2c4149; }
.status-band div[b-ylr82s37xi] { min-width: 0; padding: 8px 7px; border-right: 1px solid #2c4149; text-align: center; }
.status-band div:last-child[b-ylr82s37xi] { border-right: 0; }
.status-band span[b-ylr82s37xi] { display: block; color: #81969d; font-size: 9px; }
.status-band strong[b-ylr82s37xi] { display: block; overflow: hidden; margin-top: 2px; color: #eff5f6; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }

.config-tabs[b-ylr82s37xi] { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid #293c43; }
.config-tabs button[b-ylr82s37xi] { height: 39px; border: 0; border-right: 1px solid #293c43; background: #101c21; color: #91a4ab; }
.config-tabs button:last-child[b-ylr82s37xi] { border-right: 0; }
.config-tabs button.active[b-ylr82s37xi] { color: #35dce8; box-shadow: inset 0 -2px #35dce8; background: #132229; }
.config-content[b-ylr82s37xi] { height: calc(100% - 40px); overflow: auto; padding: 14px; }
.config-content h2[b-ylr82s37xi] { margin: 0 0 9px; font-size: 16px; }
.config-content .quiet[b-ylr82s37xi] { margin: 0 0 12px; line-height: 1.45; }
.field-label[b-ylr82s37xi] { display: grid; gap: 4px; margin-bottom: 9px; color: #93a8af; font-size: 11px; }
.field-label input[b-ylr82s37xi], .config-content input[b-ylr82s37xi], .config-content select[b-ylr82s37xi] { width: 100%; min-width: 0; height: 30px; border: 1px solid #30444c; border-radius: 3px; padding: 4px 7px; color: #eef4f5; background: #070d10; }
.field-label input:focus[b-ylr82s37xi], .config-content input:focus[b-ylr82s37xi], .config-content select:focus[b-ylr82s37xi] { outline: 1px solid #32d8e6; border-color: #32d8e6; }
.coordinate-summary[b-ylr82s37xi] { display: flex; justify-content: space-between; margin-top: 14px; padding-top: 10px; border-top: 1px solid #263940; color: #8fa4aa; font-size: 11px; }
.coordinate-summary strong[b-ylr82s37xi] { color: #f1c861; }

.tools-content[b-ylr82s37xi] { padding: 10px 8px 14px; }
.tool-table[b-ylr82s37xi] { overflow: auto; border: 1px solid #263940; }
.tool-row[b-ylr82s37xi] { display: grid; grid-template-columns: 32px minmax(110px, 1fr) 58px 72px 72px; min-width: 352px; border-bottom: 1px solid #263940; }
.tool-row:last-child[b-ylr82s37xi] { border-bottom: 0; }
.tool-row > *[b-ylr82s37xi] { height: 29px; min-width: 0; border: 0; border-right: 1px solid #263940; border-radius: 0; padding: 4px; background: #0a1216; color: #dbe8ea; font-size: 10px; }
.tool-row > *:last-child[b-ylr82s37xi] { border-right: 0; }
.tool-row .station[b-ylr82s37xi] { display: grid; place-items: center; color: #94a7ad; }
.tool-header > *[b-ylr82s37xi] { display: grid; place-items: center start; background: #16252b; color: #a9bac0; font-weight: 700; }
.tool-header > *:first-child[b-ylr82s37xi] { place-items: center; }
.tool-row.active-tool > *[b-ylr82s37xi] { background: #17333b; color: #fff; }

.offset-grid[b-ylr82s37xi] { display: grid; grid-template-columns: 38px repeat(3, minmax(0, 1fr)); gap: 5px; align-items: center; margin-bottom: 7px; }
.offset-grid strong[b-ylr82s37xi] { color: #38dbe7; font-size: 11px; }
.offset-header[b-ylr82s37xi] { color: #91a5ac; text-align: center; font-size: 10px; }
.jog-title[b-ylr82s37xi] { margin-top: 22px !important; }
.jog-row[b-ylr82s37xi] { display: grid; grid-template-columns: 58px 1fr 34px 34px; gap: 6px; }
.icon-command[b-ylr82s37xi] { width: 34px; height: 30px; min-height: 30px; padding: 0; font-size: 18px; }

.control-dock[b-ylr82s37xi] { display: grid; grid-template-columns: minmax(620px, auto) minmax(210px, 1fr) minmax(180px, 280px); column-gap: 18px; row-gap: 8px; align-items: center; min-width: 0; padding: 9px 12px; border-top: 1px solid #2a3d44; background: #0d171b; }
.timeline-control[b-ylr82s37xi] { grid-column: 1 / -1; min-width: 0; display: grid; grid-template-columns: 142px minmax(280px, 1fr) 128px; gap: 12px; align-items: center; padding-bottom: 7px; border-bottom: 1px solid #263a42; }
.timeline-caption[b-ylr82s37xi] { display: flex; align-items: baseline; gap: 9px; min-width: 0; }
.timeline-caption strong[b-ylr82s37xi] { color: #dbe7e9; font-size: 11px; }
.timeline-caption span[b-ylr82s37xi] { color: #35dbe8; font: 10px Consolas, monospace; }
.timeline-control input[b-ylr82s37xi] { width: 100%; min-width: 0; height: 18px; accent-color: #35dbe8; cursor: ew-resize; }
.timeline-control input:disabled[b-ylr82s37xi] { cursor: default; opacity: .34; }
.timeline-control output[b-ylr82s37xi] { color: #a9bbc0; font: 11px Consolas, monospace; text-align: right; white-space: nowrap; }
.control-groups[b-ylr82s37xi] { display: grid; gap: 7px; }
.control-row[b-ylr82s37xi] { display: flex; gap: 7px; align-items: center; }
.control[b-ylr82s37xi] { min-width: 84px; min-height: 34px; padding: 6px 12px; }
.control.run[b-ylr82s37xi] { background: #1b743f; border-color: #279553; }
.control.pause[b-ylr82s37xi] { background: #8a681c; border-color: #ad8527; }
.control.continue[b-ylr82s37xi] { background: #166f7e; border-color: #2597a7; }
.control.stop[b-ylr82s37xi] { background: #8b3135; border-color: #b2464c; }
.control.compact[b-ylr82s37xi] { min-width: 68px; }
.control.secondary[b-ylr82s37xi] { min-width: 120px; color: #c8d6d9; background: #152227; }
.selected-line[b-ylr82s37xi] { color: #8fa2a8; font: 11px Consolas, monospace; }
.speed-control[b-ylr82s37xi] { min-width: 0; display: grid; grid-template-columns: auto minmax(80px, 1fr) 42px; gap: 9px; align-items: center; color: #9aadb3; font-size: 11px; }
.speed-control input[b-ylr82s37xi] { min-width: 80px; accent-color: #32d8e6; }
.speed-control strong[b-ylr82s37xi] { color: #34dbe8; font-size: 13px; }
.event-readout[b-ylr82s37xi] { overflow: hidden; color: #9eb0b5; font: 11px/1.35 Consolas, monospace; text-align: right; text-overflow: ellipsis; }

@media (max-width: 1050px) {
    body[b-ylr82s37xi] { overflow: auto; }
    .sim-app[b-ylr82s37xi] { height: auto; min-height: 100vh; grid-template-rows: auto auto auto; overflow: visible; }
    .app-header[b-ylr82s37xi] { flex-wrap: wrap; }
    .header-tools[b-ylr82s37xi] { order: 4; }
    .header-readout[b-ylr82s37xi] { order: 5; width: 100%; margin-left: 56px; }
    .workspace[b-ylr82s37xi] { grid-template-columns: minmax(280px, 38vw) minmax(540px, 1fr); grid-template-rows: 620px; overflow-x: auto; }
    .control-dock[b-ylr82s37xi] { grid-template-columns: 1fr; }
    .event-readout[b-ylr82s37xi] { text-align: left; }
}

@media (max-width: 720px) {
    .brand-copy[b-ylr82s37xi] { min-width: 0; flex: 1; }
    .brand-copy h1[b-ylr82s37xi] { font-size: 17px; }
    .header-tools[b-ylr82s37xi] { width: 100%; order: 3; }
    .header-tools .command[b-ylr82s37xi] { flex: 1; }
    .setup-menu[b-ylr82s37xi] { flex: 1; }
    .setup-menu > .command[b-ylr82s37xi] { width: 100%; }
    .setup-menu-panel[b-ylr82s37xi] { left: 50%; width: min(290px, calc(100vw - 24px)); transform: translateX(-50%); }
    .workspace[b-ylr82s37xi] { display: grid; grid-template-columns: 1fr; grid-template-rows: 420px 500px; overflow: visible; }
    .program-pane[b-ylr82s37xi], .machine-pane[b-ylr82s37xi] { grid-column: 1; }
    .program-pane[b-ylr82s37xi] { border-right: 0; }
    .machine-pane[b-ylr82s37xi] { overflow-x: auto; overflow-y: hidden; }
    .machine-canvas[b-ylr82s37xi] { width: 760px; min-width: 760px; }
    .status-band[b-ylr82s37xi] { grid-template-columns: repeat(3, 1fr); }
    .status-band div:nth-child(3)[b-ylr82s37xi] { border-right: 0; }
    .status-band div:nth-child(-n+3)[b-ylr82s37xi] { border-bottom: 1px solid #2c4149; }
    .machine-overlay.top-right[b-ylr82s37xi] { display: none; }
    .control-row[b-ylr82s37xi] { flex-wrap: wrap; }
    .control[b-ylr82s37xi] { flex: 1 1 88px; }
    .control.secondary[b-ylr82s37xi] { flex-basis: 130px; }
    .timeline-control[b-ylr82s37xi] { grid-template-columns: 1fr auto; }
    .timeline-control input[b-ylr82s37xi] { grid-column: 1 / -1; grid-row: 2; }
}
