:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e5edf8;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% 0,#2dd4bf29,#0000 34%),radial-gradient(circle at 88% 8%,#3b82f621,#0000 30%),#07111f;min-height:100vh;margin:0}button,input,select{font:inherit}.app-shell{gap:18px;width:min(1340px,100% - 32px);margin:0 auto;padding:22px 0 48px;display:grid}.app-title-card{padding:10px 2px 2px}.app-title-card h1{letter-spacing:-.03em;margin:0 0 4px;font-size:clamp(1.55rem,2.6vw,2.3rem)}.app-title-card p:not(.section-kicker),.panel-header p,.settings-note,.calibration-action-card p:not(.section-kicker){color:#9fb0c4;margin:0;line-height:1.45}.top-panel-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:stretch;gap:18px;display:grid}.panel{background:#0f172ab8;border:1px solid #94a3b826;border-radius:28px;padding:22px;box-shadow:0 24px 70px #0000003d}.panel-header,.process-header,.compact-panel-header,.dpc-card-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}h1,h2,h3,p{margin-top:0}h2{margin-bottom:4px;font-size:1.24rem}h3{margin-bottom:8px}.section-kicker{color:#5eead4;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:850}.primary-button,.secondary-button,.danger-button{color:#fff;cursor:pointer;border:0;border-radius:14px;padding:11px 16px;font-weight:850}.primary-button{background:linear-gradient(135deg,#2563eb,#14b8a6)}.secondary-button{color:#e5edf8;background:#94a3b829}.danger-button{background:#f43f5ee6}.compact-button{padding:9px 12px}button:disabled{opacity:.45;cursor:not-allowed}.next-action{animation:1.15s infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #5eead480}50%{box-shadow:0 0 0 7px #5eead400}}@keyframes pulse-warning{0%,to{box-shadow:0 0 #fbbf248c}50%{box-shadow:0 0 0 7px #fbbf2400}}.secondary-button.next-action{animation-name:pulse-warning}.action-row{flex-wrap:wrap;gap:12px;margin:8px 0;display:flex}.connection-action-row{align-items:center}.connection-pill,.mini-status,.step-auto-status{white-space:nowrap;border:1px solid #94a3b826;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-weight:850;display:inline-flex}.step-auto-status{flex:none;width:auto;min-width:92px}.good{color:#a7f3d0;background:#14b8a633;border-color:#2dd4bf52}.warning{color:#fde68a;background:#fbbe2433;border-color:#fbbf2457}.bad{color:#fecdd3;background:#f43f5e33;border-color:#f43f5e57}.active{color:#bfdbfe;background:#3b82f624;border-color:#60a5fa52}.neutral{color:#cbd5e1;background:#94a3b81a}.active-port-card,.metric-card{background:#02061747;border:1px solid #94a3b81f;border-radius:18px;gap:4px;padding:12px;display:grid}.compact-active-port{min-width:180px;padding:8px 12px}.active-port-card span,.metric-card span,.setting-field span{color:#8a9bb3;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:850}.inline-probe-time{color:#9fb0c4;font-size:.92rem}.inline-probe-time strong{color:#e5edf8}.message-card{border:1px solid #94a3b81f;border-radius:18px;margin:10px 8px 2px 2px;padding:14px}.message-card p{margin:0}.settings-stack{gap:14px;display:grid}.settings-row{align-items:end;gap:14px;display:grid}.settings-row-2{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-row-4{grid-template-columns:repeat(4,minmax(0,1fr))}.setting-field{gap:6px;display:grid}input,select{color:#e5edf8;background:#0206178c;border:1px solid #94a3b82e;border-radius:14px;width:100%;padding:10px 12px}select:disabled{opacity:.55}.serial-display{background:#14b8a614;border:1px solid #2dd4bf2e;border-radius:16px;align-self:end;padding:11px 12px}.settings-note{margin-top:12px}.settings-header-actions,.reset-confirm-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.device-table,.config-table,.cal-data-table,.bootloader-inline-details{border:1px solid #94a3b821;border-radius:18px;width:100%;display:table;overflow:hidden}.device-row,.config-table-row,.cal-data-row,.bootloader-inline-row{display:table-row}.device-table .device-row>*,.config-table .config-table-row>*,.cal-data-table .cal-data-row>*,.bootloader-inline-details .bootloader-inline-row>*{overflow-wrap:anywhere;border:.5px solid #94a3b821;padding:10px 12px;display:table-cell}.empty-state{background:#02061742;border-radius:20px;padding:18px}.next-device-warning{margin:14px 0}.process-tabs{flex-wrap:wrap;gap:9px;margin:16px 0;display:flex}.process-tab{color:#fde68a;cursor:pointer;background:#fbbf241a;border:1px solid #fbbf2457;border-radius:999px;align-items:center;gap:8px;padding:8px 12px 8px 9px;display:inline-flex}.process-tab.active{box-shadow:inset 0 0 0 1px}.process-tab.active.not-run{border-color:#fbbf2470}.process-tab.active.complete{border-color:#2dd4bf6b}.process-tab.active.error{border-color:#f43f5e7a}.process-tab.complete{color:#a7f3d0;background:#14b8a624;border-color:#2dd4bf52}.process-tab.error{color:#fecdd3;background:#f43f5e24;border-color:#f43f5e66}.step-dot{border:1px solid;border-radius:999px;place-items:center;width:18px;height:18px;font-size:.72rem;font-weight:950;display:inline-grid}.step-dot.complete{color:#07111f;background:#5eead4;border-color:#5eead4}.step-dot.error{color:#07111f;background:#fb7185;border-color:#fb7185}.step-label{font-weight:850}.process-step-card{background:#02061738;border:1px solid #94a3b81f;border-radius:24px;padding:18px}.firmware-step-layout,.labels-step-layout{grid-template-columns:minmax(0,1fr) auto;gap:18px;width:100%;display:grid}.single-column-step{grid-template-columns:minmax(0,1fr)}.firmware-step-main,.config-step-main,.calibration-step-layout{gap:14px;display:grid}.step-title-row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.firmware-status-card,.blank-device-card,.firmware-flash-card,.dpc-connection-card,.calibration-action-card,.step-blocked-card{background:#02061747;border:1px solid #94a3b824;border-radius:20px;padding:14px}.firmware-status-card p,.blank-device-card p,.firmware-flash-card p,.step-blocked-card p{margin:6px 0 0;line-height:1.45}.firmware-mismatch-card{color:#fecdd3;background:#f43f5e24;border-color:#fb71856b}.blank-device-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.bootloader-inline-details{grid-column:1/-1}.firmware-progress-wrap{background:#0f172acc;border-radius:999px;height:10px;overflow:hidden}.firmware-progress-bar{background:linear-gradient(135deg,#93c5fd,#5eead4);height:100%}.config-status-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.config-table-row{grid-template-columns:minmax(140px,.8fr) minmax(220px,1.4fr) minmax(100px,.7fr) minmax(80px,.4fr)}code{background:#0206177a;border-radius:6px;padding:2px 4px}.step-blocked-card{background:#f43f5e24;border-color:#fb718566;justify-content:space-between;gap:18px;display:flex}.blocked-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.labels-step-layout{align-items:end}.label-preview{color:#000;transform-origin:0 0;background:#fff;border:1px solid #94a3b847;border-radius:8px;align-items:center;width:54mm;height:25mm;margin-bottom:12mm;display:flex;overflow:hidden;transform:scale(1.45)}.label-preview-qr{padding:4mm}.label-preview-qr img,.label-preview-qr-empty{width:15mm;height:15mm}.label-preview-info{padding:3mm 3mm 3mm 1mm;font-family:Consolas,Courier New,monospace;line-height:1.15}.label-preview-device{font-size:16px;font-weight:700}.label-preview-small{margin-top:1mm;font-size:8px}.label-actions{gap:10px;display:grid}.calibration-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.serial-log{background:#02061799;border:1px solid #94a3b824;border-radius:18px;gap:6px;max-height:360px;padding:10px;display:grid;overflow:auto}.serial-log-row{border-radius:12px;grid-template-columns:88px 42px minmax(0,1fr);gap:10px;padding:7px 9px;font:.82rem/1.45 SFMono-Regular,Consolas,monospace;display:grid}.serial-log-row.tx{background:#3b82f61c}.serial-log-row.rx{background:#14b8a617}.serial-log-row code{overflow-wrap:anywhere}@media (width<=980px){.top-panel-grid,.settings-row,.firmware-step-layout,.labels-step-layout,.config-status-row,.calibration-actions-grid{grid-template-columns:1fr}.label-actions{flex-wrap:wrap;display:flex}.step-blocked-card,.dpc-card-header,.blank-device-card,.step-title-row{display:grid}}.device-tabs{gap:0;margin-top:1rem;padding-left:.75rem;display:flex}.device-tab{background:var(--panel-bg);color:#cbd5e1;font:inherit;cursor:pointer;border:1px solid #94a3b847;border-bottom:none;border-radius:10px 10px 0 0;padding:.5rem .85rem;font-weight:600}.device-tab:hover{color:#f8fafc;background:#94a3b81f}.device-tab[aria-selected=true]{color:#fff;cursor:default;z-index:1;background:#3b82f629;position:relative;top:1px}
