:root{--font-body: "Public Sans", "Segoe UI Variable", "Microsoft YaHei UI", "Segoe UI", sans-serif;--font-mono: "Cascadia Mono", "SFMono-Regular", "Consolas", monospace;--app-bg-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==);--color-bg: #fcfdfe;--color-bg-deep: #f4f7f9;--color-surface: #fdfeff;--color-surface-strong: #ffffff;--color-surface-muted: #f4f6f8;--color-border: #e2e7ed;--color-border-strong: #cbd5e1;--color-text: #0a1121;--color-muted: #667085;--color-accent: #192237;--color-accent-strong: #0f172a;--color-accent-soft: #eef5fb;--color-danger: #c0362c;--color-danger-soft: #fff0ee;--color-warning: #98630c;--color-warning-soft: #fff7df;--color-success: #087443;--color-success-soft: #eaf8ef;--color-info: #2d7fae;--color-info-soft: #eaf6fc;--color-on-accent: #ffffff;--color-control: #ffffff;--color-control-hover: #f7fafc;--color-select-popup: #ffffff;--color-select-option-hover: #eef5fb;--color-select-option-checked: #192237;--color-code-bg: #111827;--color-code-text: #d8e3ed;--color-overlay: rgba(15, 23, 42, .48);--ring-color: rgba(64, 163, 216, .26);--live-input-active-fill: rgba(242, 94, 14, .9);--live-input-active-stroke: rgba(255, 179, 125, .92);--live-input-active-glow: rgba(255, 133, 62, .48);--live-input-active-bg: color-mix(in srgb, #f25e0e 20%, var(--color-surface));--live-input-active-border: color-mix(in srgb, #f25e0e 62%, var(--color-border));--live-input-active-text: color-mix(in srgb, #f25e0e 76%, #8a2f05);--live-input-active-ring: rgba(242, 94, 14, .18);--live-input-active-shadow: rgba(242, 94, 14, .24);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: .5rem;--radius-md: .625rem;--radius-lg: .875rem;--glass-blur: 0;--glass-saturate: 100%;--shadow-panel: 0 12px 28px rgba(15, 23, 42, .06);--shadow-soft: 0 8px 18px rgba(15, 23, 42, .05);--transition-fast: .16s ease;--transition-base: .24s ease}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark;--color-bg: #1c2029;--color-bg-deep: #151922;--color-surface: #242830;--color-surface-strong: #292e37;--color-surface-muted: #2b2f37;--color-border: #3e424c;--color-border-strong: #59606d;--color-text: #d1d8e1;--color-muted: #98a2b3;--color-accent: #198754;--color-accent-strong: #8fe2b7;--color-accent-soft: #21372d;--color-danger: #ff8b7f;--color-danger-soft: #3b2729;--color-warning: #ffd36a;--color-warning-soft: #3a3020;--color-success: #70e0a8;--color-success-soft: #20382b;--color-info: #8fe2b7;--color-info-soft: #243746;--color-on-accent: #07111a;--color-control: #1f232b;--color-control-hover: #2f333b;--color-select-popup: #242830;--color-select-option-hover: #21372d;--color-select-option-checked: #198754;--color-code-bg: #10141c;--color-code-text: #e3eaf2;--color-overlay: rgba(6, 9, 14, .64);--ring-color: rgba(25, 135, 84, .28);--live-input-active-fill: rgba(25, 135, 84, .88);--live-input-active-stroke: rgba(143, 226, 183, .92);--live-input-active-glow: rgba(112, 224, 168, .5);--live-input-active-bg: color-mix(in srgb, #198754 26%, #2b3038);--live-input-active-border: rgba(143, 226, 183, .82);--live-input-active-text: #dcf8e8;--live-input-active-ring: rgba(25, 135, 84, .24);--live-input-active-shadow: rgba(25, 135, 84, .22);--shadow-panel: 0 14px 30px rgba(0, 0, 0, .18);--shadow-soft: 0 8px 18px rgba(0, 0, 0, .14)}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);transition:background var(--transition-base),color var(--transition-base)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px);background-size:40px 40px;opacity:.28;z-index:0}body:after{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0,color-mix(in srgb,var(--color-bg) 78%,transparent) 88%);z-index:0}button,input,select{font:inherit}button,input,select,option,optgroup{color-scheme:light}html[data-theme=dark] button,html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] option,html[data-theme=dark] optgroup{color-scheme:dark}code{font-family:var(--font-mono);font-size:.92em}.app-shell{--app-shell-max-width: 86rem;position:relative;z-index:1;width:min(var(--app-shell-max-width),calc(100% - var(--space-5)));margin:0 auto;padding:var(--space-4) 0 var(--space-7);opacity:1;transition:opacity .22s ease}.app-layout{--live-sidebar-column: 0px;display:grid;grid-template-columns:minmax(0,1fr) var(--live-sidebar-column);gap:var(--space-4);align-items:start}body.bg-loading .app-shell{opacity:0;pointer-events:none}.hero,.status-strip,.panel,.footer-note{position:relative;z-index:1}.hero{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.hero-copy,.hero-card,.panel,.status-strip,.footer-note{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel)}.hero-copy,.hero-card,.panel,.footer-note{border-radius:var(--radius-md)}.app-topbar{position:sticky;top:0;z-index:20;min-height:4.5rem;padding:var(--space-2) 0;background:color-mix(in srgb,var(--color-bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.hero-copy{display:flex;align-items:center;flex:1 1 auto;gap:var(--space-3);padding:0;border:0;background:transparent;box-shadow:none}.brand-logo{width:3.2rem;height:3.2rem;border:1px solid var(--color-border);border-radius:var(--radius-md);object-fit:cover;background:var(--color-surface-strong);box-shadow:var(--shadow-soft)}.hero-card{padding:var(--space-5);background:var(--color-surface)}.eyebrow,.kicker{margin:0 0 .15rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-strong)}.topbar-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-2)}h1,h2,h3,p{margin:0}h1{max-width:14ch;font-size:clamp(2.3rem,5vw,4.2rem);line-height:.95;letter-spacing:0}.brand-title{max-width:none;font-size:clamp(1.55rem,4vw,2.25rem);line-height:1;letter-spacing:0}h2{font-size:1.35rem;line-height:1.05}.lead{max-width:44rem;margin-top:var(--space-4);color:var(--color-muted);font-size:1.03rem;line-height:1.7}.steps{margin:var(--space-4) 0 0;padding-left:1.2rem;color:var(--color-muted);display:grid;gap:var(--space-3)}.steps code{padding:.14rem .35rem;border-radius:999px;background:var(--color-accent-soft);color:var(--color-accent-strong)}.theme-switch{display:inline-flex;align-items:center;flex:0 0 auto;gap:.25rem;padding:.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft)}.theme-switch-label{padding:0 .65rem 0 .55rem;color:var(--color-muted);font-size:.78rem;font-weight:700}.theme-option{position:relative;display:inline-flex}.theme-option input{position:absolute;opacity:0;pointer-events:none}.theme-option span{display:inline-flex;align-items:center;justify-content:center;min-height:2.05rem;padding:.35rem .78rem;border-radius:calc(var(--radius-md) - .25rem);color:var(--color-muted);font-size:.82rem;font-weight:700;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.theme-option input:checked+span{background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-soft)}.theme-option input:focus-visible+span{box-shadow:0 0 0 .2rem var(--ring-color)}.status-strip{display:flex;gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.status-strip p{flex:1 1 auto;min-width:0}.temperature-pill{margin-left:auto;gap:.4rem;min-width:6.4rem;border:1px solid color-mix(in srgb,var(--color-info) 24%,var(--color-border));background:color-mix(in srgb,var(--color-info-soft) 82%,var(--color-surface));color:color-mix(in srgb,var(--color-info) 78%,var(--color-text));letter-spacing:0}.temperature-pill.is-live{border-color:color-mix(in srgb,var(--color-success) 28%,var(--color-border));background:color-mix(in srgb,var(--color-success-soft) 76%,var(--color-surface));color:var(--color-success)}.temperature-pill.is-error{border-color:color-mix(in srgb,var(--color-warning) 32%,var(--color-border));background:color-mix(in srgb,var(--color-warning-soft) 78%,var(--color-surface));color:var(--color-warning)}.pill{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.3rem .75rem;border-radius:999px;font-size:.82rem;font-weight:700;letter-spacing:.04em;white-space:nowrap}.pill-neutral{background:var(--color-surface-muted);color:var(--color-muted)}.pill-info{background:var(--color-accent-soft);color:var(--color-accent-strong)}.pill-success{background:var(--color-success-soft);color:var(--color-success)}.pill-error{background:var(--color-danger-soft);color:var(--color-danger)}.pill-warning{background:var(--color-warning-soft);color:var(--color-warning)}.connection-status-chip{display:inline-flex;align-items:center;gap:.55rem;width:fit-content;padding:.42rem .75rem;border-radius:999px;background:var(--color-surface-muted);color:var(--color-muted);font-size:.84rem;font-weight:700;letter-spacing:.04em;box-shadow:var(--shadow-soft)}.connection-status-dot{width:.72rem;height:.72rem;border-radius:999px;background:#d64d4d;box-shadow:0 0 0 .18rem color-mix(in srgb,#d64d4d 18%,transparent);transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.connection-status-chip.is-connected{color:var(--color-success)}.connection-status-chip.is-connected .connection-status-dot{background:#2fa66a;box-shadow:0 0 0 .18rem color-mix(in srgb,#2fa66a 18%,transparent)}.connection-status-chip.is-disconnected{color:var(--color-danger)}.connection-status-chip.is-disconnected .connection-status-dot{background:#d64d4d;box-shadow:0 0 0 .18rem color-mix(in srgb,#d64d4d 18%,transparent)}.dashboard{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-5)}.global-live-sidebar{--live-sidebar-top: 12.75rem;--live-sidebar-right: .5rem;--live-sidebar-width: 13.5rem;position:sticky;top:var(--live-sidebar-top);right:auto;width:100%;max-width:none;align-self:start;justify-self:end;min-width:0;z-index:6;pointer-events:none;opacity:.98;transition:top var(--transition-base),width var(--transition-base),opacity var(--transition-base)}.global-live-sidebar.is-inline{position:relative;top:auto;right:auto;grid-column:1 / -1;justify-self:center;width:min(100%,24rem);max-width:none;margin:0 auto var(--space-4)}.dashboard-toolbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.page-switcher{display:flex;flex:1 1 auto;gap:.25rem;flex-wrap:wrap;padding:.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft)}.toolbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.page-switch-button{min-height:2.58rem;border:1px solid transparent;border-radius:calc(var(--radius-md) - .25rem);padding:.56rem 1.08rem;font-size:1.1rem;background:transparent;color:var(--color-muted);font-weight:700;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.page-switch-button.is-active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-soft)}.page-switch-button:hover{background:var(--color-control-hover);color:var(--color-text)}.page-switch-button.is-active:hover{background:var(--color-accent);color:var(--color-on-accent)}.page-switch-button:disabled{opacity:.42;cursor:not-allowed}.page-switch-button:disabled:hover{background:transparent;color:var(--color-muted)}.page-switch-button:focus-visible{outline:none;box-shadow:0 0 0 .22rem var(--ring-color)}.dashboard-toolbar .toolbar-actions .button{min-height:2.92rem;padding:.72rem 1.08rem;font-size:1.1rem}.panel{padding:var(--space-4)}.panel-connection,.panel-actions,.panel-diagnostics{grid-column:span 4}.panel-settings,.panel-live{grid-column:span 8}.panel-mapping,.panel-gyro,.panel-firmware,.panel-gamepad-test{grid-column:1 / -1}.dashboard.is-basic-connect-gate .toolbar-actions,.dashboard.is-firmware-connect-gate .toolbar-actions,.connect-help-text,.firmware-entry-hint{display:none}.panel-connection.is-awaiting-device{grid-column:1 / -1;min-height:clamp(18rem,42vh,30rem);display:grid;place-items:center}.panel-connection.is-awaiting-device .panel-heading{width:min(100%,20rem);justify-content:center}.panel-connection.is-awaiting-device .panel-heading-copy,.panel-connection.is-awaiting-device .meta-grid,.panel-connection.is-awaiting-device #reconnectButton,.panel-connection.is-awaiting-device #disconnectButton,.panel-connection.is-awaiting-device #sleepButton,.panel-settings.is-connect-gated{display:none}.panel-connection.is-awaiting-device .panel-actions{width:100%;display:grid;gap:var(--space-3);justify-items:center;justify-content:center}.panel-connection.is-awaiting-device .connect-help-text{display:block;max-width:24rem;color:var(--color-muted);font-size:.92rem;line-height:1.7;text-align:center}.panel-connection:not(.is-awaiting-device) #connectButton,.panel-connection:not(.is-awaiting-device) #reconnectButton{display:none}.panel-connection.is-awaiting-device #connectButton,.panel-firmware.is-awaiting-device #firmwareConnectButton{min-width:min(100%,12rem)}.panel-firmware.is-awaiting-device{min-height:clamp(18rem,42vh,30rem);display:grid;place-items:center}.panel-firmware.is-awaiting-device .panel-heading{width:min(100%,30rem);flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:0;padding-bottom:0;border-bottom:0;text-align:center}.panel-firmware.is-awaiting-device .firmware-layout,.panel-firmware.is-awaiting-device #firmwareRebootAppButton,.panel-firmware.is-awaiting-device #firmwareEraseConfigButton,.panel-firmware.is-awaiting-device #firmwareReconnectButton,.panel-firmware.is-awaiting-device #firmwareDisconnectButton{display:none}.panel-firmware.is-awaiting-device .panel-actions{width:100%;display:flex;flex-wrap:wrap;justify-content:center}.panel-firmware.is-awaiting-device .firmware-entry-hint{display:block;flex:0 0 100%;max-width:30rem;margin:0;line-height:1.7}.firmware-layout{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.firmware-card{display:grid;align-content:start;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft)}.firmware-section-head{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.firmware-overview-card{grid-column:1 / -1;padding-top:var(--space-3);padding-bottom:var(--space-3)}.firmware-overview-grid{display:grid;grid-template-columns:minmax(0,1.1fr) repeat(2,minmax(0,.95fr));gap:var(--space-4);align-items:center}.firmware-overview-item{display:grid;gap:var(--space-1);min-width:0}.firmware-overview-status{align-content:start}.firmware-overview-status .pill{width:fit-content}.firmware-local-panel{width:100%;min-width:0}.firmware-section-head strong{font-size:1.02rem}.firmware-channel-tabs{display:inline-grid;grid-template-columns:repeat(2,minmax(4.5rem,1fr));gap:.18rem;margin-top:var(--space-3);padding:.18rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.firmware-channel-tab{min-height:2rem;padding:0 var(--space-3);border:0;border-radius:calc(var(--radius-sm) - 2px);background:transparent;color:var(--color-muted);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.firmware-channel-tab:hover:not(:disabled){color:var(--color-text);background:color-mix(in srgb,var(--color-surface) 78%,transparent)}.firmware-channel-tab.is-active{color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-soft)}.firmware-channel-tab:focus-visible{outline:none;box-shadow:0 0 0 .22rem var(--ring-color)}.firmware-channel-tab:disabled{cursor:not-allowed;opacity:.62}.firmware-mode-indicator{display:inline-flex;align-items:center;gap:.55rem}.firmware-mode-indicator:before{content:"";width:.72rem;height:.72rem;border-radius:999px;background:#d64d4d;box-shadow:0 0 0 .18rem color-mix(in srgb,#d64d4d 18%,transparent)}.firmware-mode-indicator.is-ready:before{background:#2fa66a;box-shadow:0 0 0 .18rem color-mix(in srgb,#2fa66a 18%,transparent)}.firmware-mode-indicator.is-reading:before{background:#d5a129;box-shadow:0 0 0 .18rem color-mix(in srgb,#d5a129 18%,transparent)}.firmware-file-field{width:100%}.firmware-file-input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0}.firmware-file-picker-button{display:inline-flex;align-items:center;justify-content:center;pointer-events:none;width:auto}.firmware-file-picker-text{color:var(--color-text);overflow-wrap:anywhere;line-height:1.5}.firmware-local-item{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-3)}.firmware-local-picker{display:inline-flex;width:fit-content;align-self:start}.firmware-local-main{display:grid;grid-template-rows:auto auto auto;gap:var(--space-2);min-width:0}.firmware-local-file-name,.firmware-local-file-size{min-width:0}.firmware-local-file-name{line-height:1.35;overflow-wrap:anywhere}.firmware-local-file-size{line-height:1.4;overflow-wrap:anywhere}.firmware-local-item .firmware-release-action{justify-self:end;align-self:center;min-width:6.2rem}.firmware-file-input:focus-visible+.firmware-file-picker-button{box-shadow:0 0 0 .22rem var(--ring-color)}.firmware-file-input:disabled+.firmware-file-picker-button{opacity:.58;cursor:not-allowed}.firmware-release-toolbar{align-items:center}.firmware-release-list{display:grid;gap:var(--space-3)}.firmware-local-list{gap:0}.firmware-release-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:start;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.firmware-release-item.is-latest{border-color:color-mix(in srgb,var(--color-accent-strong) 34%,var(--color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent-strong) 18%,transparent)}.firmware-release-main{display:grid;gap:var(--space-2);min-width:0}.firmware-release-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.firmware-release-version{font-size:1.05rem}.firmware-release-meta{color:var(--color-muted);font-size:.88rem;overflow-wrap:anywhere}.firmware-release-notes{margin:0;padding-left:1.1rem;color:var(--color-text);display:grid;gap:.22rem}.firmware-release-empty{padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);background:color-mix(in srgb,var(--color-surface-muted) 72%,transparent)}.firmware-release-action{min-width:6.2rem}.firmware-release-item .pill{white-space:nowrap}.firmware-update-badge{display:inline-flex;margin-top:.35rem;vertical-align:middle}.firmware-update-modal-card{width:min(34rem,calc(100vw - 2rem));display:grid;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-lg);padding:var(--space-5)}.firmware-update-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.firmware-update-modal-head h3{margin:0 0 .35rem;font-size:1.2rem}.firmware-update-close-button{flex:0 0 auto}.firmware-update-version-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.firmware-update-version-chip{display:inline-flex;align-items:center;min-height:2.05rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);padding:.35rem .7rem;font-size:.84rem;font-weight:800}.firmware-update-version-chip.is-latest{border-color:var(--color-warning);background:color-mix(in srgb,var(--color-warning) 14%,var(--color-control));color:var(--color-text)}.firmware-update-notes-block{display:grid;gap:var(--space-2)}.firmware-update-notes{margin:0;padding-left:1.2rem;color:var(--color-muted);line-height:1.55}.firmware-update-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.diagnostics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.diagnostics-grid strong{display:block;margin-top:var(--space-1);font-size:1.04rem}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.panel-heading-copy{display:grid;gap:var(--space-2);justify-items:start}.panel-actions,.compact-row,.field-row,.action-stack{display:flex;gap:var(--space-3)}.compact-row{flex-wrap:wrap;justify-content:flex-end}.panel-note,.meta-label,.field-label,.mapping-subtitle,.live-detail{color:var(--color-muted)}.panel-note{line-height:1.6}.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.meta-grid>div{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.meta-grid strong{display:block;margin-top:var(--space-1);font-size:1.04rem}#inputTimingStats{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.meta-label,.field-label{display:block;font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.field-hint{display:block;margin-top:.12rem;font-size:.76rem;line-height:1.4;color:var(--color-muted)}.field-row{margin-bottom:var(--space-4)}.field{display:grid;gap:var(--space-2)}.field-inline{width:min(16rem,100%)}input[type=number],select{width:100%;min-height:2.65rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-text);padding:.58rem .75rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}select{background-color:var(--color-control);accent-color:var(--color-accent)}select option,select optgroup{background-color:var(--color-select-popup);color:var(--color-text);font:inherit}select option{min-height:2rem;padding:.45rem .75rem}select option:checked{background-color:var(--color-select-option-checked);color:var(--color-on-accent)}select option:hover,select option:focus{background-color:var(--color-select-option-hover);color:var(--color-text)}.appearance-select{position:relative;display:block;width:100%}.appearance-select-native{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}.appearance-select-button{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;min-height:2.65rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-text);padding:.58rem .75rem;font-weight:500;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.appearance-select-button:hover:not(:disabled),.appearance-select.is-open .appearance-select-button{border-color:var(--color-accent);background:var(--color-control-hover)}.appearance-select-button:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 .22rem var(--ring-color)}.appearance-select-button:disabled{background:var(--color-surface-muted);color:var(--color-muted);cursor:not-allowed}.appearance-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appearance-select-chevron{width:.55rem;height:.55rem;flex:0 0 auto;border-right:2px solid currentColor;border-bottom:2px solid currentColor;color:var(--color-muted);transform:translateY(-.12rem) rotate(45deg);transition:transform var(--transition-fast),color var(--transition-fast)}.appearance-select.is-open .appearance-select-chevron{color:var(--color-accent-strong);transform:translateY(.12rem) rotate(225deg)}.appearance-select-menu{position:absolute;z-index:60;left:0;right:0;top:calc(100% + .35rem);display:none;max-height:min(18rem,48vh);overflow:auto;padding:.35rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-select-popup);box-shadow:var(--shadow-panel)}.appearance-select.is-open .appearance-select-menu{display:grid;gap:.2rem}.appearance-select-option{width:100%;min-height:2.15rem;border:0;border-radius:calc(var(--radius-sm) - .15rem);background:transparent;color:var(--color-text);padding:.48rem .62rem;font-weight:600;text-align:left;cursor:pointer}.appearance-select-option:hover,.appearance-select-option:focus-visible{outline:none;background:var(--color-select-option-hover)}.appearance-select-option.is-selected{background:var(--color-select-option-checked);color:var(--color-on-accent)}.appearance-select-option:disabled{color:var(--color-muted);opacity:.55;cursor:not-allowed}input[type=number]:focus,select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 .22rem var(--ring-color)}input[type=number]:disabled,select:disabled{background:var(--color-surface-muted);color:var(--color-muted);border-color:var(--color-border);cursor:not-allowed}input[type=checkbox]{width:1rem;height:1rem}.button{min-height:2.65rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.62rem .95rem;font-weight:700;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.button-primary:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.button-primary.danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.button-primary.danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger) 86%,#000);border-color:color-mix(in srgb,var(--color-danger) 86%,#000)}.button-secondary{background:var(--color-accent-soft);border-color:var(--color-border);color:var(--color-accent-strong)}.button-ghost{background:var(--color-control);border-color:var(--color-border);color:var(--color-text)}.button-ghost.danger{background:var(--color-danger-soft);border-color:color-mix(in srgb,var(--color-danger) 28%,var(--color-border));color:var(--color-danger)}.table-wrap{overflow-x:auto}.table-section-gap{margin-top:var(--space-4)}.data-table{width:100%;border-collapse:collapse;font-size:.95rem}.data-table th,.data-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border);text-align:left}.data-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.axis-name{font-weight:700}.axis-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.axis-cards-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.axis-card-compact{padding:var(--space-2) var(--space-3);display:grid;gap:.45rem}.axis-card-compact .axis-card-head{gap:var(--space-2)}.axis-card-compact .live-value{font-size:.9rem}.axis-card-compact .axis-meter{height:.42rem;margin-top:0}.live-controller-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:var(--space-4);display:grid;gap:var(--space-4);min-height:100%}.live-controller-card-global{min-height:min(100vh - 8rem,54rem);background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 92%,transparent),color-mix(in srgb,var(--color-surface) 98%,transparent)),var(--color-surface)}.live-controller-stage{position:relative;overflow:visible;isolation:isolate}.live-controller-stage-ps4{display:grid;gap:.55rem;min-height:auto;background:none}.live-controller-stage:before,.live-controller-stage:after{display:none}.live-ps4-viewer{display:grid;gap:.7rem}.live-ps4-stage{position:relative;aspect-ratio:1313 / 1037;width:100%;min-height:0;filter:drop-shadow(0 1.2rem 2rem color-mix(in srgb,var(--color-bg-deep) 18%,transparent))}.live-ps4-stage:before{display:none}.live-ps4-shell-image,.live-ps4-overlay-svg{position:absolute;inset:0;width:100%;height:100%;display:block}.live-ps4-shell-image{z-index:1;object-fit:contain}html[data-theme=dark] .live-ps4-shell-image{filter:drop-shadow(0 0 .3rem rgba(226,232,240,.2)) drop-shadow(0 .75rem 1.4rem rgba(0,0,0,.28))}.live-ps4-overlay-svg{z-index:2;overflow:visible}.live-ps4-hit-area{fill:#f25e0e00;stroke:#ff853e00;stroke-width:14px;paint-order:stroke fill;transition:fill var(--transition-fast),stroke var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast)}.live-ps4-hit-area.is-active{fill:var(--live-input-active-fill);stroke:var(--live-input-active-stroke);filter:drop-shadow(0 0 .45rem var(--live-input-active-glow))}.live-button-node,.live-button-strip,.live-button-pill{display:inline-flex;align-items:center;justify-content:center;text-align:center;user-select:none;z-index:1;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.live-button-node{width:3.1rem;height:3.1rem;border-radius:999px;border:1px solid var(--color-border);background:color-mix(in srgb,#f9fbfd 86%,var(--color-surface));color:var(--color-text);box-shadow:0 .5rem 1rem color-mix(in srgb,var(--color-bg-deep) 10%,transparent),inset 0 1px color-mix(in srgb,#ffffff 42%,transparent);font-weight:800;font-size:.82rem;letter-spacing:.01em}.live-button-node.is-wide{width:4.3rem;border-radius:999px}.live-button-node.is-rect{width:3.8rem;border-radius:.9rem}.live-button-node.is-small{width:2.45rem;height:2.45rem;font-size:.7rem}.live-button-node.is-stick{width:3.7rem;height:3.7rem;border-radius:999px;background:radial-gradient(circle at 35% 35%,color-mix(in srgb,#ffffff 16%,transparent),transparent 42%),color-mix(in srgb,#3b4654 88%,var(--color-surface-strong));color:#eef3f8}.live-button-node.is-dpad{width:2.55rem;height:2.55rem;border-radius:.9rem}.live-button-node.is-system{width:3rem;height:2rem;border-radius:999px;font-size:.72rem}.live-button-node.is-touch{width:6.2rem;height:2.5rem;border-radius:1.15rem;font-size:.72rem;background:linear-gradient(180deg,color-mix(in srgb,#1f2b39 88%,transparent),color-mix(in srgb,#121a23 88%,transparent));color:#f5f8fc}.live-button-node.is-active,.live-button-strip.is-active,.live-button-pill.is-active{background:var(--live-input-active-bg);border-color:var(--live-input-active-border);color:var(--live-input-active-text);box-shadow:0 0 0 .22rem var(--live-input-active-ring),0 .8rem 1.6rem var(--live-input-active-shadow);transform:translateY(-1px) scale(1.03)}.live-k-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.42rem}.live-button-pill{position:relative;min-height:1.95rem;border-radius:.8rem;border:1px solid color-mix(in srgb,var(--color-border) 90%,transparent);background:color-mix(in srgb,var(--color-surface-strong) 94%,transparent);padding:.2rem .35rem;font-weight:800;font-size:.72rem;box-shadow:0 .45rem .95rem color-mix(in srgb,var(--color-bg-deep) 8%,transparent),inset 0 1px color-mix(in srgb,#ffffff 30%,transparent)}.live-button-pill-label{position:relative;z-index:1}.live-button-node:after,.live-button-strip:after,.live-button-pill:after{content:attr(data-index-label);position:absolute;left:50%;bottom:-1.1rem;transform:translate(-50%);font-family:var(--font-mono);font-size:.64rem;line-height:1;color:var(--color-muted);opacity:.9;pointer-events:none}.live-button-pill:after{left:auto;right:.45rem;bottom:.3rem;transform:none;font-size:.58rem}.live-button-node.is-active:after,.live-button-strip.is-active:after,.live-button-pill.is-active:after{color:var(--color-accent-strong)}.live-ps4-stage .live-button-node:after,.live-ps4-stage .live-button-strip:after,.live-k-strip .live-button-pill:after{display:none}.live-k-strip .live-button-pill{min-height:1.95rem;transform:none}.live-k-strip .live-button-pill.is-active{background:var(--live-input-active-bg);border-color:var(--live-input-active-border);color:var(--live-input-active-text);box-shadow:0 .45rem .95rem color-mix(in srgb,var(--color-bg-deep) 8%,transparent),inset 0 1px color-mix(in srgb,#ffffff 20%,transparent);transform:none}html[data-theme=dark] .live-button-pill{border-color:color-mix(in srgb,#7f8a98 38%,var(--color-border));background:color-mix(in srgb,#2b3038 92%,var(--color-surface));color:#edf2f7;box-shadow:0 .55rem 1.05rem #0000003d,inset 0 1px #ffffff0d}.axis-card,.mapping-group,.live-group{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft)}.axis-card{padding:var(--space-4)}.axis-card-head,.mapping-row,.live-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.axis-card-head strong,.mapping-label strong,.live-label strong{font-size:1rem}.axis-meter{margin-top:var(--space-3);border-radius:999px;overflow:hidden;background:var(--color-surface-muted);height:.62rem}.axis-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width var(--transition-base)}.axis-card-compact .axis-fill{transition:none;will-change:width}.live-groups,.mapping-groups{display:grid;gap:var(--space-4)}.gamepad-test-toolbar{display:grid;grid-template-columns:minmax(14rem,25rem);gap:var(--space-3);align-items:end;margin-bottom:var(--space-4)}.gamepad-joystick-test{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.gamepad-joystick-circle-card,.gamepad-buttons-section{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft)}.gamepad-joystick-coord{color:var(--color-text);font-family:var(--font-mono);font-size:1rem;font-weight:700;text-align:center}.gamepad-joystick-viewport{position:relative;width:min(100%,22rem);aspect-ratio:1;justify-self:center;overflow:hidden;contain:paint;border:1px solid color-mix(in srgb,var(--color-border) 72%,transparent);border-radius:var(--radius-md);background:#f8fbff}.gamepad-joystick-svg{width:100%;height:100%;transform-origin:center}.gamepad-joystick-axis,.gamepad-joystick-axis-line{fill:none;stroke:#05336133;stroke-width:1}.gamepad-joystick-vector{stroke:#053361;stroke-width:1}.gamepad-joystick-dot{fill:#053361}.gamepad-circularity-sector{opacity:.5}.gamepad-joystick-error-label,.gamepad-joystick-error-value{fill:#fff;font-weight:800;text-anchor:middle;dominant-baseline:middle}.gamepad-joystick-error-value{font-size:24px}.gamepad-error-actions{display:grid;justify-items:center;gap:var(--space-2);margin-top:var(--space-4)}.gamepad-error-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:3.4rem;min-width:min(100%,19rem);padding:0 var(--space-5);border:2px solid color-mix(in srgb,var(--color-accent) 26%,var(--color-border));border-radius:var(--radius-md);background:var(--color-control);color:var(--color-text);font-size:1.05rem;font-weight:800;cursor:pointer;user-select:none;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.gamepad-error-toggle input{position:absolute;opacity:0;pointer-events:none}.gamepad-error-check{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.45rem;height:1.45rem;border:2px solid var(--color-accent);border-radius:.38rem;background:var(--color-surface);box-shadow:inset 0 0 0 .12rem color-mix(in srgb,var(--color-accent-soft) 72%,transparent);transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.gamepad-error-check:after{content:"";width:.42rem;height:.78rem;border:solid var(--color-on-accent);border-width:0 .16rem .16rem 0;opacity:0;transform:translateY(-.08rem) rotate(45deg) scale(.6);transition:opacity var(--transition-fast),transform var(--transition-fast)}.gamepad-error-toggle:hover{transform:translateY(-1px)}.gamepad-error-toggle input:focus-visible+.gamepad-error-check{box-shadow:0 0 0 .22rem var(--ring-color)}.gamepad-error-toggle:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.gamepad-error-toggle input:checked+.gamepad-error-check{border-color:var(--color-accent);background:var(--color-accent);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--color-accent) 16%,transparent)}.gamepad-error-toggle input:checked+.gamepad-error-check:after{opacity:1;transform:translateY(-.08rem) rotate(45deg) scale(1)}.gamepad-error-reset-button{min-width:9rem}.gamepad-joystick-scale{display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--color-muted);font-size:.9rem;font-weight:700}.gamepad-joystick-scale button,.gamepad-joystick-scale input{min-width:2.1rem;min-height:2.1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-text)}.gamepad-joystick-scale button{cursor:pointer}.gamepad-joystick-scale input{width:4.4rem;text-align:center}.gamepad-buttons-section{margin-top:var(--space-4)}.gamepad-button-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(4.8rem,1fr));gap:var(--space-2)}.gamepad-button-tile{min-height:2.6rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);font-size:.84rem;font-weight:800;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.gamepad-button-tile.is-active{border-color:var(--live-input-active-border);background:var(--live-input-active-bg);color:var(--live-input-active-text);box-shadow:0 0 0 .18rem var(--live-input-active-ring)}.panel-mapping .live-groups{margin-bottom:var(--space-4)}.mapping-group,.live-group{padding:var(--space-4)}.panel-settings>.mapping-group+.mapping-group,.panel-settings>.mapping-group+.field-row,.panel-settings>.field-row+.mapping-group{margin-top:var(--space-5)}.panel-settings>.mapping-group>.field-row:last-child,.panel-settings>.field-row:last-child{margin-bottom:0}.status-led-settings-group{position:relative;margin-top:var(--space-4);padding-top:var(--space-3)}.status-led-settings-group:before{content:"";position:absolute;top:calc(var(--space-2) * -1);left:var(--space-4);right:var(--space-4);height:1px;background:var(--color-border)}.status-led-settings-summary{margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0}.status-led-settings-summary::-webkit-details-marker{display:none}.trigger-output-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.trigger-output-field{min-width:0}.trigger-output-control{display:grid;grid-template-columns:minmax(8rem,1fr) 5.2rem;align-items:center;gap:var(--space-3)}.trigger-output-control input[type=range]{width:100%;accent-color:var(--color-accent)}.trigger-output-number{text-align:right}.status-led-settings-group[open] .mapping-category-chevron{color:var(--color-accent-strong);transform:translateY(.12rem) rotate(225deg)}.mapping-group-head,.live-group-head{display:flex;justify-content:space-between;gap:var(--space-3);align-items:baseline;margin-bottom:var(--space-3)}.mode-shortcut-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.mode-shortcut-card{display:grid;min-width:0;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:linear-gradient(135deg,color-mix(in srgb,var(--mode-shortcut-accent) 10%,transparent),transparent 56%),var(--color-surface-muted);box-shadow:inset 0 1px color-mix(in srgb,#fff 45%,transparent)}.mode-shortcut-card-config{--mode-shortcut-accent: #2f80ed}.mode-shortcut-card-xbox{--mode-shortcut-accent: #2ca85f}.mode-shortcut-card-ps4{--mode-shortcut-accent: #d08b2e}.mode-shortcut-card-ds4-host{--mode-shortcut-accent: #d4526e}.mode-shortcut-card-ns{--mode-shortcut-accent: #3aa8a4}.mode-shortcut-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.mode-shortcut-card-head strong{min-width:0;overflow:hidden;color:var(--color-text);font-size:.95rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.mode-shortcut-hold{flex:0 0 auto;padding:.18rem .42rem;border:1px solid color-mix(in srgb,var(--mode-shortcut-accent) 34%,var(--color-border));border-radius:var(--radius-xs);background:color-mix(in srgb,var(--mode-shortcut-accent) 12%,var(--color-surface));color:color-mix(in srgb,var(--mode-shortcut-accent) 82%,var(--color-text));font-size:.72rem;font-weight:800;line-height:1}.mode-shortcut-keys{display:flex;align-items:center;gap:.38rem;flex-wrap:wrap}.mode-shortcut-keys span{display:inline-flex;align-items:center;justify-content:center;min-width:2.05rem;min-height:1.8rem;padding:0 .48rem;border:1px solid color-mix(in srgb,var(--mode-shortcut-accent) 24%,var(--color-border));border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-text);font-size:.86rem;font-weight:800;box-shadow:0 .12rem color-mix(in srgb,var(--mode-shortcut-accent) 18%,var(--color-border))}.mode-shortcut-card p{margin:0;color:var(--color-muted);font-size:.82rem;line-height:1.45}.mapping-list,.live-list{display:grid;gap:var(--space-3)}.status-led-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:var(--space-3);margin-top:var(--space-3)}.status-led-mode-switch{display:inline-flex;align-items:center;justify-content:flex-end;gap:.75rem;grid-column:1 / -1;margin-left:auto;flex-wrap:nowrap}.status-led-switch-label{margin:0;font-size:.88rem;white-space:nowrap}.status-led-pill-toggle{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;align-items:center;width:4.4rem;padding:.25rem;border:1px solid var(--color-border);border-radius:999px;background:color-mix(in srgb,var(--color-surface-muted) 86%,transparent);box-shadow:inset 0 1px 2px #0000000a}.status-led-pill-option{min-height:1.9rem;min-width:0;padding:0;border:0;border-radius:999px;background:transparent;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.status-led-pill-option.is-active{background:var(--color-control);box-shadow:0 .35rem .8rem #0000001a}.status-led-pill-option:disabled{opacity:.45;cursor:not-allowed}@media(max-width:720px){.status-led-mode-switch{width:100%;justify-content:flex-start;margin-left:0;margin-top:var(--space-2)}}.status-led-mode-panel{display:grid;grid-template-columns:1fr;align-items:stretch;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(180deg,color-mix(in srgb,var(--color-control) 36%,transparent),transparent 58%),var(--color-surface-muted);box-shadow:0 .55rem 1.25rem #0f172a0f}.status-led-config-grid.is-disabled{opacity:.55}.status-led-mode-title{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.92rem;font-weight:800;color:var(--color-text)}.status-led-mode-title:before{content:"";width:.55rem;height:.55rem;border-radius:999px;background:var(--color-accent);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--color-accent) 18%,transparent)}.status-led-field-grid{display:grid;grid-template-columns:minmax(6.2rem,1.18fr) minmax(4.5rem,.74fr) minmax(3.8rem,.55fr) minmax(4.8rem,.76fr);gap:var(--space-2)}.status-led-field-grid .field-inline{width:100%;grid-template-columns:1fr;gap:.32rem}.status-led-field-grid .field-label{font-size:.74rem;line-height:1.1;letter-spacing:.04em}.status-led-field-grid select,.status-led-field-grid input[type=number],.status-led-field-grid input[type=color]{min-height:2.2rem;padding:.38rem .56rem;border-color:color-mix(in srgb,var(--color-border) 82%,var(--color-accent))}.status-led-field-grid input[type=color]{width:100%;min-width:3rem;padding:.16rem;overflow:hidden;cursor:pointer}@media(max-width:980px){.status-led-mode-panel{grid-template-columns:1fr}}@media(max-width:560px){.status-led-config-grid{grid-template-columns:1fr}.status-led-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.status-led-config-grid,.status-led-field-grid{grid-template-columns:1fr}}.mapping-row,.live-row{padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-muted);transition:background var(--transition-fast),transform var(--transition-fast)}.mapping-row.is-active,.live-row.is-active{background:var(--color-accent-soft);border-color:var(--color-accent);transform:none}.mapping-row.is-reserved{background:color-mix(in srgb,var(--color-warning-soft) 68%,var(--color-surface-muted));border-color:color-mix(in srgb,var(--color-warning) 38%,var(--color-border))}.mapping-row.is-reserved.is-active{background:color-mix(in srgb,var(--color-warning-soft) 76%,var(--color-accent-soft))}.mapping-label,.live-label{display:flex;align-items:center;gap:var(--space-3);min-width:12rem}.mapping-editor{flex:1;display:grid;gap:var(--space-3)}.mapping-summary{font-size:.9rem;color:var(--color-muted)}.mapping-reserved{display:block;margin-top:.18rem;color:var(--color-warning);font-size:.78rem;font-weight:700}.mapping-summary-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.mapping-summary-actions{display:inline-flex;align-items:center;gap:.45rem}.mapping-turbo-control{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-muted);font-size:.78rem;font-weight:800;white-space:nowrap}.mapping-turbo-select{min-height:2.02rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-text);padding:.28rem 1.9rem .28rem .62rem;font-size:.8rem;font-weight:700}.mapping-turbo-select:disabled{opacity:.45;cursor:not-allowed}.mapping-turbo-control .appearance-select{width:7.5rem}.mapping-turbo-control .appearance-select-button{min-height:2.02rem;padding:.28rem .58rem;font-size:.8rem;font-weight:700}.mapping-turbo-control .appearance-select-menu{min-width:8rem}.mapping-clear{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);padding:.35rem .7rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.mapping-clear:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.mapping-clear:disabled{opacity:.45;cursor:not-allowed}.mapping-keyboard-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);padding:.35rem .7rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.mapping-keyboard-button:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.mapping-keyboard-button:disabled{opacity:.45;cursor:not-allowed}.combo-group{display:grid;gap:var(--space-2)}.combo-group-title{font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.combo-chip-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.combo-chip{position:relative;display:inline-flex}.combo-chip input{position:absolute;opacity:0;pointer-events:none}.combo-chip span{display:inline-flex;align-items:center;justify-content:center;min-height:2.2rem;padding:.45rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);font-size:.84rem;font-weight:700;letter-spacing:.01em;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.combo-chip input:checked+span{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent-strong)}.combo-chip input:focus-visible+span{box-shadow:0 0 0 .22rem var(--ring-color)}.combo-chip input:disabled+span{opacity:.45}.combo-chip:hover span{transform:translateY(-1px)}.combo-chip input:disabled+span,.mapping-row.is-reserved .mapping-keyboard-button,.mapping-row.is-reserved .mapping-clear,.mapping-row.is-reserved .mapping-turbo-select{cursor:not-allowed}.gyro-layout{display:grid;gap:var(--space-4);grid-template-columns:minmax(28rem,.86fr) minmax(26rem,1.14fr);align-items:start}.gyro-section{padding:var(--space-4);min-width:0}.gyro-section.is-disabled{opacity:.58}.gyro-section .field-row{display:grid;grid-template-columns:repeat(2,minmax(13rem,1fr));align-items:end;gap:var(--space-3);margin-bottom:0}.gyro-section .gyro-output-row{grid-template-columns:repeat(2,minmax(12rem,1fr))}.gyro-stick-config{display:grid;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.gyro-stick-config.is-disabled{opacity:.56}.gyro-subhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2)}.gyro-subhead span{color:var(--color-text-muted);font-size:.84rem}.gyro-section .gyro-mapping-row{grid-template-columns:repeat(4,minmax(9.5rem,1fr))}.gyro-toggle-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.gyro-fixed-field select{color:var(--color-text-muted)}.gyro-section .field-inline{width:100%;min-width:0}.gyro-section .mapping-group-head{align-items:flex-start}.gyro-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.gyro-info-grid,.gyro-status-grid,.gyro-sample-grid{display:grid;gap:var(--space-3)}.gyro-info-grid{grid-column:1 / -1;grid-template-columns:minmax(0,1fr);align-items:stretch}.gyro-status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gyro-status-grid>div,.gyro-sample-group{min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.gyro-status-grid strong{display:block;margin-top:var(--space-1);overflow-wrap:anywhere}.gyro-sample-section{grid-column:1 / -1}.gyro-axis-map-summary{justify-self:end;max-width:100%;padding:.32rem .7rem;border:1px solid color-mix(in srgb,var(--color-accent) 26%,var(--color-border));border-radius:999px;background:var(--color-accent-soft);color:var(--color-text);font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.gyro-sample-note{margin:var(--space-2) 0 var(--space-3)}.gyro-sample-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.gyro-axis-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-2)}.gyro-axis-values span{min-width:0;display:grid;gap:.2rem}.gyro-axis-values em{color:var(--color-text-muted);font-style:normal;font-size:.72rem;font-weight:800}.gyro-axis-values strong,.gyro-sample-compact strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.gyro-sample-compact strong{display:block;margin-top:var(--space-2)}.mapping-groups-compact{gap:var(--space-3)}.mapping-groups-compact .mapping-group{padding:1rem 1.1rem}.mapping-category{padding:.45rem .55rem}.mapping-category[open]{padding-bottom:1rem}.mapping-category-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);list-style:none;cursor:pointer;padding:.5rem .55rem;border-radius:calc(var(--radius-sm) + .1rem);transition:background var(--transition-fast),box-shadow var(--transition-fast)}.mapping-category-summary::-webkit-details-marker{display:none}.mapping-category-summary:hover{background:color-mix(in srgb,var(--color-accent-soft) 52%,transparent)}.mapping-category-summary:focus-visible{outline:none;box-shadow:0 0 0 .22rem var(--ring-color)}.mapping-category-title-wrap,.mapping-category-summary-side{display:flex;align-items:center;gap:.7rem}.mapping-category-title-wrap{min-width:0;flex:1}.mapping-category-copy{display:grid;gap:.12rem;min-width:0}.mapping-category-copy strong{font-size:.95rem}.mapping-category-meta{font-size:.74rem;color:var(--color-muted);line-height:1.4}.mapping-category-chevron{width:.55rem;height:.55rem;flex:0 0 auto;border-right:2px solid currentColor;border-bottom:2px solid currentColor;color:var(--color-muted);transform:translateY(-.12rem) rotate(45deg);transition:transform var(--transition-fast),color var(--transition-fast)}.mapping-category[open] .mapping-category-chevron{color:var(--color-accent-strong);transform:translateY(.12rem) rotate(225deg)}.mapping-category-body{margin-top:.75rem}.mapping-category-dot{width:.62rem;height:.62rem}.mapping-category.has-active{border-color:color-mix(in srgb,var(--color-accent) 52%,var(--color-border))}.mapping-category.has-active .mapping-category-summary{background:color-mix(in srgb,var(--color-accent-soft) 44%,transparent)}.mapping-groups-compact .mapping-group-head{margin-bottom:.8rem}.mapping-groups-compact .mapping-list{gap:.65rem}.mapping-groups-compact .mapping-row{align-items:flex-start;padding:.8rem .9rem;gap:.8rem}.mapping-groups-compact .mapping-label{min-width:10.5rem;gap:.7rem}.mapping-groups-compact .mapping-label strong{font-size:.95rem}.mapping-groups-compact .mapping-subtitle{font-size:.78rem}.mapping-groups-compact .mapping-editor{min-width:0;gap:.55rem}.mapping-groups-compact .mapping-summary-row{flex-wrap:wrap;gap:.55rem}.mapping-groups-compact .mapping-summary{font-size:.82rem;line-height:1.45}.mapping-groups-compact .mapping-category{padding:.42rem .52rem}.mapping-groups-compact .mapping-category[open]{padding-bottom:.92rem}.mapping-groups-compact .mapping-category-summary{padding:.44rem .5rem}.mapping-groups-compact .mapping-category-meta{font-size:.72rem}.mapping-groups-compact .mapping-clear,.mapping-groups-compact .mapping-keyboard-button{min-height:1.9rem;padding:.24rem .62rem;font-size:.74rem}.mapping-groups-compact .mapping-turbo-control{gap:.28rem;font-size:.72rem}.mapping-groups-compact .mapping-turbo-select{min-height:1.9rem;padding-top:.2rem;padding-bottom:.2rem;font-size:.74rem}.mapping-groups-compact .mapping-turbo-control .appearance-select{width:6.8rem}.mapping-groups-compact .mapping-turbo-control .appearance-select-button{min-height:1.9rem;padding:.2rem .5rem;font-size:.74rem}.combo-chip-list-compact{gap:.35rem}.combo-chip-compact span{min-height:1.9rem;padding:.32rem .62rem;font-size:.76rem}.indicator-dot{width:.7rem;height:.7rem;border-radius:999px;background:var(--color-border-strong);box-shadow:none}.indicator-dot.active{background:var(--color-accent);box-shadow:0 0 0 .28rem var(--ring-color)}.live-value{font-family:var(--font-mono);font-size:.95rem;color:var(--color-muted)}.action-stack{flex-direction:column}.calibration-action-stack{margin-bottom:var(--space-4)}.calibration-edge-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.footer-note{margin-top:var(--space-5);padding:var(--space-4) var(--space-5);line-height:1.6;color:var(--color-muted)}.fade-in{animation:fade-up .42s ease both}@keyframes fade-up{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:72rem){.panel-connection,.panel-actions,.panel-diagnostics,.panel-settings,.panel-live{grid-column:span 6}}@media(max-width:58rem){.app-shell{width:min(100% - var(--space-4),100%);padding-top:var(--space-4)}.app-topbar{position:relative;flex-wrap:wrap;align-items:flex-start}.hero-copy{flex:1 1 12rem}.topbar-controls{margin-left:auto}.hero,.dashboard,.app-layout{grid-template-columns:1fr}.global-live-sidebar{position:relative;top:auto;order:-1;left:auto;width:min(100%,24rem);margin:0 auto var(--space-4)}.panel,.panel-connection,.panel-actions,.panel-diagnostics,.panel-settings,.panel-live,.panel-mapping,.panel-gyro,.panel-firmware,.panel-gamepad-test{grid-column:auto}.status-strip,.dashboard-toolbar,.panel-heading,.mapping-row,.live-row,.axis-card-head{flex-direction:column;align-items:stretch}.temperature-pill{margin-left:0;justify-content:center}.meta-grid,.firmware-layout,.diagnostics-grid,.axis-cards,.gamepad-test-toolbar,.gamepad-joystick-test{grid-template-columns:1fr}.firmware-overview-grid{grid-template-columns:1fr;gap:var(--space-3)}.firmware-release-item,.firmware-local-item{grid-template-columns:1fr}.firmware-release-action{width:100%}.firmware-section-head{grid-template-columns:1fr;display:grid}.gyro-info-grid,.gyro-status-grid,.gyro-section .gyro-output-row,.gyro-section .gyro-mapping-row,.gyro-sample-grid,.trigger-output-grid{grid-template-columns:1fr}.firmware-card{padding:var(--space-4)}.mapping-row select,.field-inline{width:100%}.jitter-boundary-control{grid-template-columns:minmax(0,1fr)}.jitter-boundary-number{text-align:left}.mapping-summary-row{align-items:stretch}.mapping-category-summary{align-items:flex-start}.mapping-category-summary-side{align-self:center}.compact-row,.toolbar-actions{justify-content:stretch}.toolbar-actions .button,.compact-row .button,.action-stack .button{width:100%}}@media(max-width:30rem){.brand-logo{width:2.8rem;height:2.8rem}.brand-title{font-size:1.7rem}.topbar-controls{width:100%;justify-content:stretch}.theme-switch{width:100%;justify-content:space-between}.theme-option{flex:1 1 auto}.theme-option span{width:100%}}.panel-live,.panel-stick-calibration,.panel-stick-curve,.panel-stick-jitter,.panel-diagnostics{grid-column:1 / -1}.field-row{flex-wrap:wrap;align-items:flex-start}.field{min-width:0}.field-inline{flex:1 1 12rem;width:auto}.field-action-button{align-self:flex-end;min-width:9.6rem}.stick-blocks{margin-bottom:var(--space-4)}.center-point-hidden-fields{display:none}.center-tune-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.center-tune-actions .button{min-height:2.75rem}.center-tune-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.center-tune-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:var(--space-3);display:grid;gap:var(--space-3)}.center-tune-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.center-tune-panel{display:grid;gap:var(--space-3)}.center-tune-zoom-row{display:flex;align-items:flex-end;gap:var(--space-3)}.center-tune-zoom-row .field-inline{flex:1 1 auto}.center-tune-zoom-row input[type=range]{width:100%;accent-color:var(--color-accent)}.center-tune-zoom-value{min-width:3.2rem;text-align:right;font-family:var(--font-mono);color:var(--color-muted);font-size:.9rem;font-weight:700}.center-tune-pad{display:grid;grid-template-columns:2.4rem minmax(0,1fr) 2.4rem;grid-template-rows:2.4rem minmax(10rem,1fr) 2.4rem;gap:.4rem;align-items:center;justify-items:center}.center-tune-canvas-wrap{grid-column:2;grid-row:2;width:min(100%,17rem);aspect-ratio:1 / 1;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px),var(--color-surface-muted);background-size:1rem 1rem;overflow:hidden}.center-tune-canvas{width:100%;height:100%;display:block}.center-tune-axis-line{stroke:var(--color-border-strong);stroke-width:1.2}.center-tune-radius-circle{fill:var(--color-info-soft);stroke:var(--color-accent);stroke-width:1.8}.center-tune-vector-line{stroke:var(--color-info);stroke-width:1.4;stroke-dasharray:4 3}.center-tune-center-dot{fill:var(--color-accent)}.center-tune-raw-dot{fill:var(--color-danger)}.center-tune-axis-button{min-height:2.2rem;min-width:2.2rem;padding:0;border-radius:var(--radius-sm);font-size:1.1rem;line-height:1;font-weight:800;touch-action:none;user-select:none;-webkit-user-select:none}.center-tune-axis-top{grid-column:2;grid-row:1}.center-tune-axis-left{grid-column:1;grid-row:2}.center-tune-axis-right{grid-column:3;grid-row:2}.center-tune-axis-bottom{grid-column:2;grid-row:3}.center-tune-meta{margin:0;font-family:var(--font-mono);font-size:.82rem;color:var(--color-muted)}.center-tune-input-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.center-tune-input-row .field-inline{width:100%}.center-tune-modal-card{width:min(48rem,calc(100vw - var(--space-5) * 2));max-height:min(90vh,52rem);overflow:auto;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-4)}.center-tune-modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.center-tune-modal-head h3{margin:0;font-size:1.25rem}.center-tune-close-button{flex:0 0 auto}.center-tune-grid-modal{grid-template-columns:minmax(0,1fr)}.center-tune-grid-modal .center-tune-card{box-shadow:none}.stick-curve-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;margin-bottom:var(--space-4)}.curve-slot-switch{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem;margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.curve-slot-button{min-height:2.15rem;min-width:5.6rem;border:1px solid transparent;border-radius:calc(var(--radius-sm) - .18rem);background:transparent;color:var(--color-muted);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.curve-slot-button:hover:not(:disabled){color:var(--color-text);background:var(--color-control-hover)}.curve-slot-button.is-active{color:var(--color-accent-strong);background:var(--color-control);border-color:var(--color-border-strong);box-shadow:var(--shadow-soft)}.curve-slot-button:disabled{opacity:.55;cursor:not-allowed}.curve-slot-trigger-list{display:grid;gap:.65rem;margin:0 0 .35rem}.curve-slot-config-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:start;padding:.72rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff80}.curve-slot-default-field,.curve-slot-trigger-config{display:grid;gap:.42rem;min-width:0}.curve-slot-default-field{flex:0 0 min(12rem,100%)}.curve-slot-trigger-config{flex:1 1 32rem}.curve-slot-config-label{color:var(--color-muted);font-size:.76rem;font-weight:800}.curve-slot-default-field select,.curve-slot-default-field .appearance-select-button{min-height:2.1rem;padding:.38rem .58rem;font-size:.84rem;font-weight:800}.curve-slot-trigger-select-list{display:flex;align-items:flex-start;gap:.58rem;flex-wrap:wrap}.curve-slot-trigger-select-item{display:grid;align-content:start;gap:.36rem;flex:1 1 15rem;min-width:0;padding:.52rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-surface-strong) 78%,transparent)}.curve-slot-trigger-select-item .curve-slot-trigger-name{white-space:normal;font-size:.82rem;font-weight:900;line-height:1.3;color:var(--color-text)}.curve-slot-trigger-select-item select{min-height:2.1rem;padding:.35rem .5rem;font-size:.8rem;font-weight:800}.curve-slot-trigger-select-item.is-default{color:var(--color-muted);background:var(--color-surface-muted)}.curve-slot-trigger-select-item.is-default select{border-color:color-mix(in srgb,var(--color-border-strong) 68%,var(--color-border));background:var(--color-surface-muted);color:var(--color-muted)}.curve-slot-trigger-chip-list{gap:.28rem}.curve-slot-trigger-chip span{min-height:1.58rem;padding:.24rem .46rem;font-size:.72rem;font-weight:800}.curve-slot-trigger-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.curve-slot-trigger-tab{display:grid;gap:.08rem;min-height:2.32rem;min-width:0;padding:.28rem .48rem;border:1px solid var(--color-border);border-radius:calc(var(--radius-sm) - .12rem);background:var(--color-control);color:var(--color-muted);font:inherit;cursor:pointer;text-align:left;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.curve-slot-trigger-tab span{font-size:.82rem;font-weight:900}.curve-slot-trigger-tab small{min-width:0;overflow:hidden;color:var(--color-muted);font-size:.68rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.curve-slot-trigger-tab:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-control-hover);color:var(--color-text)}.curve-slot-trigger-tab.is-selected{border-color:color-mix(in srgb,var(--color-accent) 42%,var(--color-border));background:color-mix(in srgb,var(--color-accent-soft) 72%,var(--color-surface));color:var(--color-accent-strong);box-shadow:var(--shadow-soft)}.curve-slot-trigger-tab.is-default{border-color:color-mix(in srgb,var(--color-border-strong) 72%,var(--color-border));background:color-mix(in srgb,var(--color-surface-muted) 88%,var(--color-surface));color:var(--color-muted);box-shadow:none}.curve-slot-trigger-tab.is-default small{color:var(--color-muted)}.curve-slot-trigger-tab:disabled{opacity:.58;cursor:not-allowed}.curve-slot-trigger-panel{min-height:2.1rem}.curve-slot-trigger-always{display:inline-flex;align-items:center;justify-content:center;min-height:2.1rem;padding:0 .78rem;border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-muted);font-size:.82rem;font-weight:900}.curve-slot-trigger-panel .combo-chip-list{justify-content:flex-start}.curve-slot-trigger-row{display:grid;grid-template-columns:minmax(12rem,.55fr) minmax(9rem,.65fr) minmax(0,2fr);gap:var(--space-3);align-items:center;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff80}.curve-slot-trigger-row.is-active{background:var(--color-accent-soft);border-color:#0f766e47}.curve-slot-trigger-main{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;min-width:0}.curve-slot-trigger-name{font-size:.9rem;font-weight:800;color:var(--color-text)}.curve-slot-default-button{min-height:1.95rem;padding:0 .65rem;font-size:.78rem;font-weight:800;white-space:nowrap}.curve-slot-default-button.is-active{color:var(--color-accent-strong);border-color:color-mix(in srgb,var(--color-accent) 34%,var(--color-border));background:color-mix(in srgb,var(--color-accent-soft) 75%,var(--color-surface))}.curve-slot-trigger-text{color:var(--color-muted);font-size:.86rem;font-weight:700}html[data-theme=dark] .curve-slot-trigger-row,html[data-theme=dark] .curve-slot-config-row{background:color-mix(in srgb,var(--color-surface-strong) 92%,transparent);border-color:color-mix(in srgb,#7f8a98 34%,var(--color-border))}html[data-theme=dark] .curve-slot-trigger-tab.is-default,html[data-theme=dark] .curve-slot-trigger-always{background:color-mix(in srgb,var(--color-surface-muted) 82%,var(--color-surface))}html[data-theme=dark] .curve-slot-trigger-row.is-active{background:color-mix(in srgb,var(--color-accent-soft) 88%,var(--color-surface));border-color:color-mix(in srgb,var(--color-accent) 40%,var(--color-border))}html[data-theme=dark] .curve-slot-trigger-text{color:color-mix(in srgb,var(--color-text) 72%,var(--color-muted))}.curve-slot-trigger-row .combo-chip-list{justify-content:flex-start}.stick-curve-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:var(--space-3);display:grid;align-content:start;gap:var(--space-2)}.curve-mode-switch{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;padding:.28rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);align-self:start}.curve-mode-button{min-height:2.2rem;padding:.42rem .72rem;border:1px solid transparent;border-radius:calc(var(--radius-sm) - .18rem);background:transparent;color:var(--color-muted);font-size:.82rem;font-weight:700;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.curve-mode-button:hover:not(:disabled){background:var(--color-control-hover);color:var(--color-text)}.curve-mode-button.is-active{background:var(--color-control);border-color:var(--color-border-strong);color:var(--color-accent-strong);box-shadow:var(--shadow-soft)}.curve-mode-button:disabled{opacity:.58;cursor:not-allowed}.ps4-feel-field{width:min(18rem,100%)}.ps4-feel-switch{display:inline-grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;width:100%;padding:.28rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-muted)}.ps4-feel-button{min-height:2.1rem;min-width:0;padding:.34rem .62rem;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--color-muted);font-size:.82rem;font-weight:800;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.ps4-feel-button:hover:not(:disabled){background:var(--color-control-hover);color:var(--color-text)}.ps4-feel-button.is-active{background:var(--color-control);border-color:var(--color-border-strong);color:var(--color-accent-strong);box-shadow:var(--shadow-soft)}.ps4-feel-button:disabled{opacity:.52;cursor:not-allowed}.stick-curve-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.stick-curve-actions{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.stick-curve-head-main{display:grid;gap:.15rem}.stick-curve-summary{font-size:.8rem;color:var(--color-muted);font-family:var(--font-mono)}.curve-add-point-button{min-height:2.2rem;padding:.4rem .78rem;font-size:.78rem}.curve-point-count-badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.65rem;min-width:3.15rem;padding:0 .42rem;border:1px solid color-mix(in srgb,var(--color-accent) 24%,var(--color-border));border-radius:999px;background:color-mix(in srgb,var(--color-accent-soft) 78%,var(--color-surface));color:var(--color-accent-strong);font-family:var(--font-mono);font-size:.72rem;font-weight:900;white-space:nowrap}.stick-curve-editor{display:grid;grid-template-columns:minmax(12rem,1.18fr) minmax(8.4rem,.82fr);gap:.55rem;align-items:start}.stick-curve-editor.is-professional{grid-template-columns:minmax(12rem,1.18fr) minmax(8.4rem,.82fr)}.curve-point-inputs{display:grid;gap:.18rem;align-content:start}.curve-point-row{display:grid;grid-template-columns:2.18rem minmax(2.45rem,.7fr) minmax(2.45rem,.7fr) 1.72rem;gap:.16rem;align-items:center}.curve-point-label{display:inline-flex;align-items:center;justify-content:center;min-height:1.42rem;border:1px solid color-mix(in srgb,var(--color-accent) 28%,var(--color-border));border-radius:999px;background:var(--color-accent-soft);font-family:var(--font-mono);font-size:.78rem;font-weight:900;color:var(--color-accent-strong)}.curve-point-field{display:grid;min-width:0}.curve-point-field span{display:none;font-size:.68rem;color:var(--color-muted);letter-spacing:.04em;text-transform:uppercase}.curve-point-row.is-endpoint{align-items:end}.curve-point-row.is-endpoint .curve-point-label{margin-bottom:.05rem}.curve-point-row.is-endpoint .curve-point-field{gap:.1rem}.curve-point-row.is-endpoint .curve-point-field span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.curve-point-field input[type=number]{min-height:1.42rem;padding:.18rem .22rem;font-size:.74rem}.curve-point-field select{min-height:1.42rem;padding:.18rem .28rem;font-size:.74rem;width:100%}.curve-point-remove{min-height:2.1rem;padding:.35rem .68rem;font-size:.78rem}.curve-point-row .curve-point-remove{min-height:1.42rem;padding:.12rem .24rem;font-size:.7rem}.curve-side-toggle-row{align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:.1rem}.curve-pill-toggle{display:inline-flex;align-items:center;gap:.55rem;min-width:0;margin-left:auto;cursor:pointer;user-select:none}.curve-pill-toggle input{position:absolute;opacity:0;pointer-events:none}.curve-pill-toggle-track{position:relative;display:inline-flex;align-items:center;width:2.85rem;min-width:2.85rem;height:1.6rem;padding:.16rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-muted);transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.curve-pill-toggle-knob{display:block;width:1.18rem;height:1.18rem;border-radius:999px;background:var(--color-surface-strong);box-shadow:0 .2rem .5rem color-mix(in srgb,var(--color-bg-deep) 12%,transparent),inset 0 1px color-mix(in srgb,#ffffff 50%,transparent);transition:transform var(--transition-fast),background var(--transition-fast)}.curve-pill-toggle-label{font-size:.84rem;font-weight:700;color:var(--color-muted);white-space:nowrap}.curve-pill-toggle input:checked+.curve-pill-toggle-track{background:color-mix(in srgb,var(--color-accent) 18%,var(--color-surface));border-color:color-mix(in srgb,var(--color-accent) 48%,var(--color-border));box-shadow:0 0 0 .18rem color-mix(in srgb,var(--color-accent-soft) 55%,transparent)}.curve-pill-toggle input:checked+.curve-pill-toggle-track .curve-pill-toggle-knob{transform:translate(1.23rem);background:var(--color-accent)}.curve-pill-toggle input:checked~.curve-pill-toggle-label{color:var(--color-text)}.curve-pill-toggle input:focus-visible+.curve-pill-toggle-track{outline:none;box-shadow:0 0 0 .22rem var(--ring-color)}.curve-pill-toggle input:disabled+.curve-pill-toggle-track,.curve-pill-toggle input:disabled~.curve-pill-toggle-label{opacity:.55;cursor:not-allowed}.enable-capsule-toggle{margin-left:0}.enable-capsule-toggle .curve-pill-toggle-track{background:color-mix(in srgb,var(--color-danger-soft) 82%,var(--color-surface));border-color:color-mix(in srgb,var(--color-danger) 64%,var(--color-border));box-shadow:0 0 0 .16rem color-mix(in srgb,var(--color-danger) 12%,transparent)}.enable-capsule-toggle .curve-pill-toggle-knob{background:var(--color-danger)}.enable-capsule-toggle .curve-pill-toggle-label{color:var(--color-danger);font-weight:800}.enable-capsule-toggle input:checked+.curve-pill-toggle-track{background:color-mix(in srgb,var(--color-success-soft) 82%,var(--color-surface));border-color:color-mix(in srgb,var(--color-success) 68%,var(--color-border));box-shadow:0 0 0 .18rem color-mix(in srgb,var(--color-success) 16%,transparent)}.enable-capsule-toggle input:checked+.curve-pill-toggle-track .curve-pill-toggle-knob{background:var(--color-success)}.enable-capsule-toggle input:checked~.curve-pill-toggle-label{color:var(--color-success)}.curve-prof-panel{display:grid}.curve-prof-grid{display:grid;gap:.42rem}.curve-prof-section{display:grid;gap:.36rem;padding:.48rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-surface-muted) 78%,transparent)}.curve-prof-title,.curve-trigger-panel-head strong{font-size:.82rem;font-weight:800;color:var(--color-text)}.curve-prof-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.34rem}.curve-prof-panel .field-inline{width:100%;gap:.16rem}.curve-prof-panel .field-label{font-size:.62rem;letter-spacing:.03em}.curve-prof-panel input[type=number]{min-height:1.52rem;padding:.18rem .28rem;font-size:.72rem}.curve-trigger-panel{display:grid;gap:.42rem;padding-top:.12rem}.curve-trigger-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.curve-trigger-list{display:grid;gap:.3rem}.curve-trigger-row{display:grid;grid-template-columns:1.72rem minmax(3rem,.62fr) minmax(4.8rem,1fr) minmax(4.2rem,.82fr) 1.9rem;gap:.24rem;align-items:center;padding:.34rem .42rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-surface-strong) 82%,transparent)}.curve-trigger-index{font-family:var(--font-mono);font-size:.72rem;font-weight:900;color:var(--color-accent-strong);text-align:center}.curve-trigger-field{display:grid;gap:.08rem;min-width:0}.curve-trigger-field span{font-size:.62rem;color:var(--color-muted);text-transform:uppercase}.curve-trigger-field input[type=number],.curve-trigger-field select{min-height:1.62rem;width:100%;padding:.18rem .3rem;font-size:.72rem}.curve-trigger-row .curve-trigger-field select[data-curve-trigger-field]{appearance:none;-webkit-appearance:none;height:1.34rem;min-height:1.34rem;max-height:1.34rem;padding:.02rem 1rem .02rem .28rem;line-height:1;background:linear-gradient(45deg,transparent 50%,var(--color-muted) 50%) calc(100% - .62rem) 50% / .28rem .28rem no-repeat,linear-gradient(135deg,var(--color-muted) 50%,transparent 50%) calc(100% - .44rem) 50% / .28rem .28rem no-repeat,var(--color-control)}.curve-trigger-row .curve-trigger-field select[data-curve-trigger-field]::-ms-expand{display:none}.curve-trigger-row .curve-point-select-field .appearance-select-button{box-sizing:border-box;height:1.62rem;min-height:1.62rem;padding:.14rem .42rem;font-size:.72rem;line-height:1}.curve-trigger-row .curve-point-select-field .appearance-select-value{line-height:1.05}.curve-trigger-row .curve-point-select-field .appearance-select-chevron{width:.42rem;height:.42rem;border-width:1.5px}.curve-trigger-row .curve-point-select-field .appearance-select-menu{top:calc(100% + .18rem);padding:.18rem}.curve-trigger-row .curve-point-select-field .appearance-select.is-open .appearance-select-menu{gap:.12rem}.curve-trigger-row .curve-point-select-field .appearance-select-option{min-height:1.5rem;padding:.22rem .42rem;font-size:.72rem;line-height:1.05}.curve-trigger-row .curve-point-remove{min-height:1.62rem;padding:.12rem .24rem;font-size:.7rem}.stick-curve-control-line{stroke:color-mix(in srgb,var(--color-accent) 52%,var(--color-border));stroke-width:.55;stroke-dasharray:1.6 1.2}html[data-theme=dark] .curve-prof-section,html[data-theme=dark] .curve-trigger-row{background:color-mix(in srgb,var(--color-surface-strong) 90%,transparent)}.rc-config-row{align-items:end}.rc-config-row .field-inline{flex:1 1 14rem}.jitter-boundary-field{flex:1.4 1 20rem}.jitter-extra-params-group .jitter-boundary-field{width:100%}.jitter-boundary-control{display:grid;grid-template-columns:minmax(9rem,1fr) 5.2rem;align-items:center;gap:var(--space-3)}.jitter-boundary-control input[type=range]{width:100%;accent-color:var(--color-accent)}.jitter-boundary-number{text-align:right}.jitter-main-group{display:grid;gap:var(--space-4)}.rc-vector-panel{gap:var(--space-4)}.rc-vector-overview{display:grid;gap:var(--space-3);padding:var(--space-3);border-color:color-mix(in srgb,var(--color-accent) 24%,var(--color-border));background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 8%,transparent),transparent 42%),var(--color-surface)}.rc-vector-overview .field-inline{align-items:center}.rc-vector-side-toggles{display:grid;grid-template-columns:repeat(4,minmax(8.5rem,1fr));gap:var(--space-2)}.rc-vector-side-toggles .curve-pill-toggle{min-width:0}.rc-vector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:0}.rc-vector-control-group,.rc-vector-advanced{display:grid;gap:var(--space-3);padding:var(--space-3)}.rc-vector-field{display:grid;grid-template-columns:7.5rem minmax(9rem,1fr) 5.4rem;align-items:center;gap:var(--space-2);min-width:0}.rc-vector-field span{color:var(--color-text-muted);font-size:.86rem}.rc-vector-field input[type=range]{width:100%;accent-color:var(--color-accent)}.rc-vector-field input[type=number]{min-height:2rem;padding:.36rem .5rem;text-align:right}.rc-vector-advanced-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.rc-vector-advanced-field{display:grid;grid-template-columns:minmax(5.5rem,1fr) 5.2rem;align-items:center;gap:var(--space-2);min-width:0}.rc-vector-advanced-field span{overflow:hidden;color:var(--color-text-muted);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.rc-vector-advanced-field input{min-height:1.95rem;padding:.32rem .46rem;text-align:right}.rc-vector-panel input:disabled,.rc-vector-panel button:disabled,.rc-vector-panel select:disabled{opacity:.55;cursor:not-allowed}.rc-segment-grid,.rc-curve-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:0}.jitter-watchdog-group{margin-top:0}.rc-segment-group,.rc-curve-group{padding:var(--space-3)}.rc-segment-head{align-items:center}.rc-curve-rows{display:grid;gap:var(--space-3)}.rc-curve-rows.is-disabled{opacity:.62}.rc-curve-block{display:grid;gap:var(--space-3)}.rc-curve-block-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.rc-curve-block-head>div:first-child{display:grid;gap:.1rem}.rc-curve-block-head strong{font-size:.92rem}.rc-curve-block-head span{color:var(--color-text-muted);font-size:.78rem}.rc-param-list{display:grid;gap:.42rem}.rc-param-row{display:grid;grid-template-columns:3.3rem minmax(7rem,1fr) 4.8rem;align-items:center;gap:var(--space-2)}.rc-param-radius{color:var(--color-text-muted);font-size:.82rem;line-height:1}.rc-param-range{width:100%;accent-color:var(--color-accent)}.rc-param-number{min-height:2rem;padding:.36rem .5rem;text-align:right}.rc-coordinate-editor{display:grid;grid-template-columns:minmax(10rem,.92fr) minmax(12rem,1fr);align-items:start;gap:var(--space-3)}.rc-curve-svg{min-height:12rem;background:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px),color-mix(in srgb,var(--color-surface-muted) 78%,var(--color-control));background-size:1rem 1rem}.rc-curve-handle{cursor:grab}.rc-curve-handle.is-endpoint{fill:color-mix(in srgb,var(--color-accent) 74%,var(--color-text))}.rc-curve-handle-label{pointer-events:none}.rc-point-list{display:grid;gap:.45rem;max-height:17.5rem;overflow:auto;padding-right:.18rem}.rc-point-row{display:grid;grid-template-columns:1.8rem minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:.45rem}.rc-point-row .curve-point-field{min-width:0}.rc-point-row .curve-point-field input{min-height:2.02rem;padding:.34rem .48rem}.rc-point-row .curve-point-remove{min-height:2.02rem;padding:.34rem .62rem}.rc-segment-rows{display:grid;gap:var(--space-2)}.rc-segment-empty{margin:0;padding:var(--space-2) 0}.rc-segment-row{display:grid;grid-template-columns:4.2rem 4.2rem minmax(5.8rem,1fr) minmax(7.2rem,1.15fr) auto;gap:var(--space-2);align-items:end}.rc-segment-field{display:grid;gap:.2rem}.rc-segment-field input[type=number]{min-height:2.15rem;padding:.42rem .54rem}.rc-segment-field-compact input[type=number]{padding-left:.42rem;padding-right:.42rem}.rc-segment-remove{min-height:2.15rem;padding-left:.8rem;padding-right:.8rem}.stick-curve-svg{width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px),var(--color-surface-muted);background-size:1.25rem 1.25rem;touch-action:none;cursor:crosshair}.stick-curve-svg.is-disabled{opacity:.55;cursor:not-allowed}.stick-curve-grid-line{stroke:var(--color-border-strong);stroke-width:.35}.stick-curve-axis{stroke:var(--color-accent);stroke-width:.6}.stick-curve-path{fill:none;stroke:var(--color-accent);stroke-width:1.5}.stick-curve-endpoint{fill:var(--color-info-soft);stroke:var(--color-accent);stroke-width:.45}.stick-curve-handle{fill:var(--color-surface-strong);stroke:var(--color-accent-strong);stroke-width:.7;cursor:grab}.stick-curve-handle.is-active{fill:var(--color-accent-soft);stroke-width:.95}.stick-curve-handle-label{fill:var(--color-accent-strong);font-size:3.2px;font-weight:700;text-anchor:middle;pointer-events:none}.mapping-table{min-width:62rem}.mapping-table th:not(:first-child),.mapping-table td:not(:first-child){text-align:center}.mapping-table th:first-child,.mapping-table td:first-child{position:sticky;left:0;z-index:1;min-width:9rem;background:var(--color-surface)}.button-bits{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-code-bg);font-family:var(--font-mono);font-size:1rem;color:var(--color-code-text);overflow-wrap:anywhere}.log{min-height:18rem;max-height:28rem;overflow:auto;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-code-bg);color:var(--color-code-text);font-family:var(--font-mono);font-size:.9rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}.hidden{display:none!important}.capture-modal{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:color-mix(in srgb,var(--color-overlay) 78%,transparent);backdrop-filter:blur(12px)}.capture-modal-card{width:min(64rem,calc(100% - var(--space-5)));max-height:min(88vh,44rem);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-3)}.capture-modal-card-minimal{width:min(48rem,calc(100vw - var(--space-6) * 2));max-height:none;padding:clamp(1.4rem,2vw,2rem);border-radius:1.5rem;border-color:color-mix(in srgb,var(--color-accent) 20%,var(--color-border));background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 92%,white 8%),var(--color-surface)),var(--color-surface);box-shadow:0 1.5rem 4rem color-mix(in srgb,var(--color-accent) 14%,transparent),var(--shadow-panel)}.capture-modal-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.78fr);gap:var(--space-5);min-height:0}.capture-modal-layout.is-dual{grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr)}.capture-modal-layout-minimal{grid-template-columns:minmax(0,1fr);gap:0}.capture-modal-layout-stacked{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:1.2rem}.capture-modal-layout-stacked.is-dual{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto}.capture-modal-main{display:grid;align-content:start;gap:var(--space-3);min-width:0}.capture-modal-main-minimal{gap:1rem;text-align:center}.capture-modal-head{justify-items:center}.capture-modal-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.capture-modal-actions-minimal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;width:100%}.capture-modal-card h3{font-size:1.45rem}.capture-modal-main-minimal h3{margin:0;font-size:clamp(1.15rem,1.8vw,1.45rem);letter-spacing:.08em}.capture-progress-track{height:.9rem;border-radius:999px;overflow:hidden;background:var(--color-accent-soft)}.capture-progress-track-minimal{width:min(100%,38rem);height:1.05rem;margin:0 auto;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 8%,transparent),color-mix(in srgb,var(--color-accent) 22%,transparent)),color-mix(in srgb,var(--color-surface-muted) 88%,var(--color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 12%,var(--color-border))}.capture-progress-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width var(--transition-fast)}#transferProgressBar{transition:none}.capture-modal-meta{font-family:var(--font-mono);font-size:.9rem;color:var(--color-accent-strong)}.capture-modal-meta-minimal{margin:0;font-size:clamp(1rem,2vw,1.15rem);font-weight:700;letter-spacing:.08em;color:var(--color-text)}.capture-missing-panels{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);min-width:0;min-height:0}.capture-missing-panels.is-dual,.capture-missing-panels-stacked.is-dual{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-missing-panels-stacked{grid-template-columns:minmax(0,1fr);align-items:start}.capture-missing-panel{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.9rem;min-width:0;min-height:15.25rem;padding:1rem 1rem 1.15rem;border:1px solid var(--color-border);border-radius:1.2rem;background:color-mix(in srgb,var(--color-surface-muted) 92%,white 8%)}.capture-missing-panel.is-complete{border-color:var(--color-success);background:var(--color-success-soft)}.capture-missing-head{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.capture-missing-head h4{margin:0;font-size:1.02rem}.capture-ring-shell{display:grid;place-items:center;min-height:12rem}.capture-ring{width:min(100%,12.75rem);aspect-ratio:1;border-radius:50%;background:conic-gradient(#d64d4d 0deg 360deg);position:relative;box-shadow:inset 0 0 0 1px var(--color-border)}.capture-modal-foot{display:grid;gap:1rem;padding-top:.35rem}.capture-progress-block{display:grid;gap:.55rem;justify-items:center}.capture-action-button{min-height:2.9rem;border-radius:.95rem;padding:.65rem 1rem;font-weight:700;letter-spacing:.04em}.capture-ring-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;border-radius:50%;pointer-events:none;z-index:0}.capture-ring:before{content:"";position:absolute;inset:19%;border-radius:50%;background:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-border);z-index:1}.capture-ring-angle{position:absolute;z-index:2;font-family:var(--font-mono);font-size:.7rem;font-weight:700;color:var(--color-muted);line-height:1;pointer-events:none}.capture-ring-angle-top{top:-.85rem;left:50%;transform:translate(-50%)}.capture-ring-angle-right{right:-1.45rem;top:50%;transform:translateY(-50%)}.capture-ring-angle-bottom{bottom:-.85rem;left:50%;transform:translate(-50%)}.capture-ring-angle-left{left:-1.8rem;top:50%;transform:translateY(-50%)}.capture-missing-summary{margin:0;font-family:var(--font-mono);font-size:.82rem;color:var(--color-accent-strong);overflow-wrap:anywhere}.capture-axis-block{display:grid;gap:var(--space-2)}.capture-missing-label{font-size:.76rem;font-weight:700;letter-spacing:0;color:var(--color-muted)}.capture-axis-row,.capture-missing-list{display:flex;flex-wrap:wrap;gap:.45rem;min-width:0}.capture-missing-list{align-content:start;overflow:auto;padding-right:.1rem}.capture-axis-chip,.capture-missing-chip,.capture-missing-more,.capture-missing-empty{display:inline-flex;align-items:center;min-height:1.75rem;max-width:100%;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.75rem;line-height:1.2;overflow-wrap:anywhere}.capture-axis-chip{justify-content:center;min-width:3.2rem;padding:.25rem .55rem;border:1px solid color-mix(in srgb,var(--color-danger) 28%,var(--color-border));background:var(--color-danger-soft);color:var(--color-danger);font-weight:700}.capture-axis-chip.is-hit{border-color:color-mix(in srgb,var(--color-success) 30%,var(--color-border));background:var(--color-success-soft);color:var(--color-success)}.capture-missing-chip,.capture-missing-more,.capture-missing-empty{padding:.3rem .55rem}.capture-missing-chip{border:1px solid color-mix(in srgb,var(--color-warning) 30%,var(--color-border));background:var(--color-warning-soft);color:var(--color-warning)}.capture-missing-more{border:1px dashed var(--color-border-strong);background:var(--color-surface-muted);color:var(--color-muted)}.capture-missing-empty{border:1px solid color-mix(in srgb,var(--color-success) 30%,var(--color-border));background:var(--color-success-soft);color:var(--color-success);font-weight:700}.sample-time-modal-card{width:min(58rem,calc(100% - var(--space-5)));border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-3)}.keyboard-picker-modal-card{width:min(76rem,calc(100% - var(--space-5)));max-height:min(88vh,56rem);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-3)}.center-guide-modal-card{width:min(31rem,calc(100% - var(--space-5)));border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-4)}.center-guide-head h3{margin-top:.15rem;font-size:1.35rem}.center-guide-body{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted)}.center-guide-target{position:relative;width:4.25rem;aspect-ratio:1;border-radius:50%;border:1px solid var(--color-border-strong);background:linear-gradient(var(--color-border) 1px,transparent 1px) 50% 50% / 100% 50% no-repeat,linear-gradient(90deg,var(--color-border) 1px,transparent 1px) 50% 50% / 50% 100% no-repeat,var(--color-surface);box-shadow:inset 0 0 0 .55rem var(--color-accent-soft)}.center-guide-target span{position:absolute;inset:calc(50% - .42rem);border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 .35rem color-mix(in srgb,var(--color-accent) 18%,transparent);transform:translate(0);transition:transform var(--transition-base)}.center-guide-target.is-up span{transform:translateY(-1.08rem)}.center-guide-target.is-down span{transform:translateY(1.08rem)}.center-guide-target.is-left span{transform:translate(-1.08rem)}.center-guide-target.is-right span{transform:translate(1.08rem)}.center-guide-hint{margin:0 0 var(--space-2);color:var(--color-text);line-height:1.65}.center-guide-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.gyro-axis-calibration-modal-card{width:min(35rem,calc(100% - var(--space-5)));border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border));background:radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--color-accent) 12%,transparent),transparent 35%),var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-4)}.gyro-axis-guide-head{display:grid;gap:var(--space-2)}.gyro-axis-guide-head h3{margin:0;font-size:1.4rem}.gyro-axis-guide-step{justify-self:start;padding:.28rem .65rem;border-radius:999px;background:var(--color-accent-soft);color:var(--color-accent-strong);font-family:var(--font-mono);font-weight:700;letter-spacing:.08em}.gyro-axis-guide-body{display:grid;grid-template-columns:8rem minmax(0,1fr);align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-muted)}.gyro-axis-guide-pose{position:relative;display:grid;place-items:center;width:7rem;height:6.2rem}.gyro-axis-guide-pad{display:block;width:5.6rem;height:2.85rem;border-radius:1rem 1rem 1.5rem 1.5rem;border:2px solid var(--color-accent-strong);background:radial-gradient(circle at 24% 48%,var(--color-accent) 0 .3rem,transparent .34rem),radial-gradient(circle at 75% 48%,var(--color-accent) 0 .3rem,transparent .34rem),var(--color-surface);box-shadow:0 .5rem 1.2rem color-mix(in srgb,var(--color-accent) 13%,transparent);transition:transform var(--transition-base)}.gyro-axis-guide-pose.is-flat .gyro-axis-guide-pad{transform:perspective(11rem) rotateX(52deg)}.gyro-axis-guide-pose.is-stand .gyro-axis-guide-pad{transform:rotateX(0) rotate(0)}.gyro-axis-guide-pose.is-side .gyro-axis-guide-pad{transform:rotate(-90deg)}.gyro-axis-guide-gravity{position:absolute;right:.35rem;top:.2rem;display:grid;place-items:center;width:1.55rem;height:2.45rem;color:var(--color-warning);font-family:var(--font-mono);font-size:.78rem;font-weight:700}.gyro-axis-guide-gravity:after{content:"";position:absolute;bottom:0;width:.1rem;height:1rem;background:var(--color-warning);box-shadow:0 .85rem 0 -.02rem var(--color-warning)}.gyro-axis-guide-copy{display:grid;gap:var(--space-2)}.gyro-axis-guide-pose-text{margin:0;color:var(--color-text);font-size:1.08rem;font-weight:700}.gyro-axis-guide-copy .capture-modal-meta{margin:0;color:var(--color-text-muted);font-family:inherit;font-size:.9rem;line-height:1.6}.gyro-axis-guide-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.keyboard-picker-grid{display:grid;gap:.45rem;overflow:auto;padding:.35rem .1rem .35rem 0}.keyboard-picker-row{display:flex;flex-wrap:nowrap;gap:.35rem}.keyboard-picker-key{flex:var(--key-grow, 1) 1 0;min-width:0;min-height:2.25rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);font-weight:700;font-size:.74rem;padding:.28rem .35rem;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.keyboard-picker-key:hover:not(:disabled){transform:translateY(-1px)}.keyboard-picker-key.is-active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.keyboard-picker-key:disabled{opacity:.45;cursor:not-allowed}.keyboard-picker-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.keyboard-picker-actions-right{display:inline-flex;gap:var(--space-2)}.reboot-mode-modal-card{width:min(30rem,calc(100% - var(--space-5)));border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-3)}.reboot-mode-modal-card h3{font-size:1.3rem}.sleep-confirm-modal-card,.firmware-erase-confirm-modal-card{width:min(30rem,calc(100% - var(--space-5)));border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-3)}.sleep-confirm-modal-card h3,.firmware-erase-confirm-modal-card h3{font-size:1.3rem}.sleep-confirm-note{border:1px solid color-mix(in srgb,var(--color-danger) 45%,var(--color-border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,var(--color-surface));color:var(--color-danger);padding:.75rem .85rem;font-size:.9rem;font-weight:800;line-height:1.5}.sleep-confirm-footer{display:flex;justify-content:flex-end;gap:var(--space-2)}.transfer-progress-modal-card{width:min(28rem,calc(100% - var(--space-5)));border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:var(--space-5);display:grid;gap:var(--space-3)}.transfer-progress-modal-card h3{font-size:1.3rem}.reboot-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.reboot-mode-footer{display:flex;justify-content:flex-end}.sample-time-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.sample-time-modal-actions{display:flex;align-items:center;gap:var(--space-2)}.sample-time-modal-head h3{font-size:1.35rem}.sample-time-limits-note{margin:var(--space-2) 0 0}.sample-time-modal-close{min-height:2.4rem}@media(max-width:36rem){.reboot-mode-options,.rc-segment-row{grid-template-columns:1fr}}@media(max-width:72rem){.panel-live,.panel-stick-calibration,.panel-stick-curve,.panel-stick-jitter,.panel-diagnostics,.panel-mapping{grid-column:1 / -1}}@media(max-width:58rem){.live-controller-stage{min-height:29rem}.live-button-cluster{position:relative;left:auto;bottom:auto;width:auto;max-width:none;transform:none;margin:17rem 1rem 1rem}.capture-modal{padding:var(--space-3)}.capture-modal-card{width:min(100%,calc(100vw - var(--space-3) * 2));max-height:calc(100vh - var(--space-3) * 2);overflow:auto}.capture-modal-layout,.capture-modal-layout.is-dual,.capture-modal-actions-minimal{grid-template-columns:1fr}.compact-row,.field-row{flex-direction:column}.field-inline{width:100%}.mode-shortcut-grid,.axis-cards-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.center-tune-actions,.stick-curve-grid{grid-template-columns:1fr}.curve-slot-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.curve-slot-button{min-width:0}.curve-slot-config-row{grid-template-columns:1fr;gap:.6rem}.curve-slot-trigger-select-list,.curve-slot-trigger-tabs{grid-template-columns:1fr}.curve-slot-trigger-row{grid-template-columns:1fr;gap:.55rem}.center-tune-grid,.center-tune-input-row{grid-template-columns:1fr}.curve-point-row{grid-template-columns:2.4rem minmax(0,1fr) minmax(0,1fr)}.curve-point-remove{justify-self:end}.stick-curve-editor,.stick-curve-editor.is-professional{grid-template-columns:1fr}.stick-curve-editor .curve-point-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.stick-curve-editor .curve-point-row{grid-template-columns:2.18rem minmax(2.45rem,.7fr) minmax(2.45rem,.7fr) 1.72rem}.curve-mode-switch,.ps4-feel-switch{width:100%}.curve-side-toggle-row{align-items:flex-start}.curve-pill-toggle{margin-left:0}.curve-prof-field-grid,.curve-trigger-row{grid-template-columns:1fr}.rc-vector-side-toggles{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-vector-grid,.rc-segment-grid,.rc-curve-grid{grid-template-columns:1fr}.rc-vector-field{grid-template-columns:minmax(6.5rem,.75fr) minmax(7rem,1fr) 5rem}.rc-coordinate-editor{grid-template-columns:minmax(10rem,.74fr) minmax(13rem,1fr)}.keyboard-picker-modal-card,.center-guide-modal-card,.center-tune-modal-card{width:min(100% - var(--space-4),100%);padding:var(--space-4)}.center-tune-modal-head{align-items:flex-start;flex-direction:column}.gyro-axis-calibration-modal-card{width:min(100% - var(--space-4),100%);padding:var(--space-4)}.center-guide-body,.gyro-axis-guide-body{grid-template-columns:1fr;justify-items:center;text-align:center}.gyro-head-actions{justify-content:flex-start}.keyboard-picker-row{flex-wrap:wrap}.keyboard-picker-key{flex:1 1 4.4rem}.keyboard-picker-actions{flex-direction:column;align-items:stretch}.keyboard-picker-actions-right{justify-content:flex-end;flex-wrap:wrap}}@media(max-width:36rem){.mode-shortcut-grid,.stick-curve-editor .curve-point-inputs,.rc-coordinate-editor{grid-template-columns:1fr}.rc-point-row{grid-template-columns:1.8rem minmax(0,1fr) minmax(0,1fr) auto}.rc-param-row{grid-template-columns:3rem minmax(0,1fr) 4.4rem}.rc-vector-side-toggles,.rc-vector-advanced-fields,.rc-vector-field{grid-template-columns:1fr}.rc-vector-field input[type=number]{text-align:left}}.toggle-row{align-items:center}.stick-invert-row{gap:var(--space-5)}.stick-invert-group{display:flex;flex-wrap:wrap;gap:var(--space-3)}.stick-invert-group .toggle-chip span{min-width:8.75rem}.toggle-chip{position:relative;display:inline-flex}.toggle-chip input{position:absolute;opacity:0;pointer-events:none}.toggle-chip span{display:inline-flex;align-items:center;justify-content:center;min-height:2.4rem;padding:.5rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-control);color:var(--color-muted);font-size:.84rem;font-weight:700;letter-spacing:.01em;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.toggle-chip input:checked+span{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent-strong)}.toggle-chip input:focus-visible+span{box-shadow:0 0 0 .22rem var(--ring-color)}.toggle-chip:hover span{transform:translateY(-1px)}.keyboard-picker-modal-card{width:min(100rem,calc(100% - var(--space-5)))}.keyboard-picker-grid{--keyboard-unit: 2.7rem;--keyboard-gap: .42rem;grid-template-columns:repeat(16,var(--keyboard-unit)) 1rem repeat(3,var(--keyboard-unit)) 1.2rem repeat(4,var(--keyboard-unit));grid-auto-rows:var(--keyboard-unit);grid-auto-flow:row;gap:var(--keyboard-gap);align-items:stretch;width:max-content;min-width:0;max-width:100%;padding:.5rem .2rem .7rem 0}.keyboard-picker-row{display:contents}.keyboard-picker-key{grid-column:var(--keyboard-col) / span var(--keyboard-span, 1);grid-row:var(--keyboard-row) / span var(--keyboard-row-span, 1);height:100%;min-width:0;min-height:0;aspect-ratio:auto;justify-content:center;align-items:center;line-height:1.1;box-shadow:inset 0 -1px color-mix(in srgb,var(--color-border) 76%,transparent)}.keyboard-picker-key[data-keyboard-key-id="57"],.keyboard-picker-key[data-keyboard-key-id="90"]{white-space:normal;word-break:keep-all}.keyboard-picker-key[data-keyboard-key-id="33"],.keyboard-picker-key[data-keyboard-key-id="34"],.keyboard-picker-key[data-keyboard-key-id="35"],.keyboard-picker-key[data-keyboard-key-id="36"],.keyboard-picker-key[data-keyboard-key-id="54"],.keyboard-picker-key[data-keyboard-key-id="55"],.keyboard-picker-key[data-keyboard-key-id="56"],.keyboard-picker-key[data-keyboard-key-id="57"],.keyboard-picker-key[data-keyboard-key-id="71"],.keyboard-picker-key[data-keyboard-key-id="72"],.keyboard-picker-key[data-keyboard-key-id="73"],.keyboard-picker-key[data-keyboard-key-id="87"],.keyboard-picker-key[data-keyboard-key-id="88"],.keyboard-picker-key[data-keyboard-key-id="89"],.keyboard-picker-key[data-keyboard-key-id="90"],.keyboard-picker-key[data-keyboard-key-id="102"],.keyboard-picker-key[data-keyboard-key-id="103"]{font-size:.68rem}.keyboard-picker-key[data-keyboard-key-id="0"]{--keyboard-col: 1;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="1"]{--keyboard-col: 3;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="2"]{--keyboard-col: 4;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="3"]{--keyboard-col: 5;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="4"]{--keyboard-col: 6;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="5"]{--keyboard-col: 8;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="6"]{--keyboard-col: 9;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="7"]{--keyboard-col: 10;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="8"]{--keyboard-col: 11;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="9"]{--keyboard-col: 13;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="10"]{--keyboard-col: 14;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="11"]{--keyboard-col: 15;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="12"]{--keyboard-col: 16;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="13"]{--keyboard-col: 18;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="14"]{--keyboard-col: 19;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="15"]{--keyboard-col: 20;--keyboard-row: 1}.keyboard-picker-key[data-keyboard-key-id="16"]{--keyboard-col: 1;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="17"]{--keyboard-col: 2;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="18"]{--keyboard-col: 3;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="19"]{--keyboard-col: 4;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="20"]{--keyboard-col: 5;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="21"]{--keyboard-col: 6;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="22"]{--keyboard-col: 7;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="23"]{--keyboard-col: 8;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="24"]{--keyboard-col: 9;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="25"]{--keyboard-col: 10;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="26"]{--keyboard-col: 11;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="27"]{--keyboard-col: 12;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="28"]{--keyboard-col: 13;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="29"]{--keyboard-col: 14;--keyboard-row: 2;--keyboard-span: 3}.keyboard-picker-key[data-keyboard-key-id="30"]{--keyboard-col: 18;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="31"]{--keyboard-col: 19;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="32"]{--keyboard-col: 20;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="33"]{--keyboard-col: 22;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="34"]{--keyboard-col: 23;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="35"]{--keyboard-col: 24;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="36"]{--keyboard-col: 25;--keyboard-row: 2}.keyboard-picker-key[data-keyboard-key-id="37"]{--keyboard-col: 1;--keyboard-row: 3;--keyboard-span: 2}.keyboard-picker-key[data-keyboard-key-id="38"]{--keyboard-col: 3;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="39"]{--keyboard-col: 4;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="40"]{--keyboard-col: 5;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="41"]{--keyboard-col: 6;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="42"]{--keyboard-col: 7;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="43"]{--keyboard-col: 8;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="44"]{--keyboard-col: 9;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="45"]{--keyboard-col: 10;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="46"]{--keyboard-col: 11;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="47"]{--keyboard-col: 12;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="48"]{--keyboard-col: 13;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="49"]{--keyboard-col: 14;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="50"]{--keyboard-col: 15;--keyboard-row: 3;--keyboard-span: 2}.keyboard-picker-key[data-keyboard-key-id="51"]{--keyboard-col: 18;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="52"]{--keyboard-col: 19;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="53"]{--keyboard-col: 20;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="54"]{--keyboard-col: 22;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="55"]{--keyboard-col: 23;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="56"]{--keyboard-col: 24;--keyboard-row: 3}.keyboard-picker-key[data-keyboard-key-id="57"]{--keyboard-col: 25;--keyboard-row: 3;--keyboard-row-span: 2}.keyboard-picker-key[data-keyboard-key-id="58"]{--keyboard-col: 1;--keyboard-row: 4;--keyboard-span: 2}.keyboard-picker-key[data-keyboard-key-id="59"]{--keyboard-col: 3;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="60"]{--keyboard-col: 4;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="61"]{--keyboard-col: 5;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="62"]{--keyboard-col: 6;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="63"]{--keyboard-col: 7;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="64"]{--keyboard-col: 8;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="65"]{--keyboard-col: 9;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="66"]{--keyboard-col: 10;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="67"]{--keyboard-col: 11;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="68"]{--keyboard-col: 12;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="69"]{--keyboard-col: 13;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="70"]{--keyboard-col: 14;--keyboard-row: 4;--keyboard-span: 3}.keyboard-picker-key[data-keyboard-key-id="71"]{--keyboard-col: 22;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="72"]{--keyboard-col: 23;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="73"]{--keyboard-col: 24;--keyboard-row: 4}.keyboard-picker-key[data-keyboard-key-id="74"]{--keyboard-col: 1;--keyboard-row: 5;--keyboard-span: 3}.keyboard-picker-key[data-keyboard-key-id="75"]{--keyboard-col: 4;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="76"]{--keyboard-col: 5;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="77"]{--keyboard-col: 6;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="78"]{--keyboard-col: 7;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="79"]{--keyboard-col: 8;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="80"]{--keyboard-col: 9;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="81"]{--keyboard-col: 10;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="82"]{--keyboard-col: 11;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="83"]{--keyboard-col: 12;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="84"]{--keyboard-col: 13;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="85"]{--keyboard-col: 14;--keyboard-row: 5;--keyboard-span: 3}.keyboard-picker-key[data-keyboard-key-id="86"]{--keyboard-col: 19;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="87"]{--keyboard-col: 22;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="88"]{--keyboard-col: 23;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="89"]{--keyboard-col: 24;--keyboard-row: 5}.keyboard-picker-key[data-keyboard-key-id="90"]{--keyboard-col: 25;--keyboard-row: 5;--keyboard-row-span: 2}.keyboard-picker-key[data-keyboard-key-id="91"]{--keyboard-col: 1;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="92"]{--keyboard-col: 2;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="93"]{--keyboard-col: 3;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="94"]{--keyboard-col: 4;--keyboard-row: 6;--keyboard-span: 7}.keyboard-picker-key[data-keyboard-key-id="95"]{--keyboard-col: 11;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="96"]{--keyboard-col: 12;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="97"]{--keyboard-col: 13;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="98"]{--keyboard-col: 14;--keyboard-row: 6;--keyboard-span: 3}.keyboard-picker-key[data-keyboard-key-id="99"]{--keyboard-col: 18;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="100"]{--keyboard-col: 19;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="101"]{--keyboard-col: 20;--keyboard-row: 6}.keyboard-picker-key[data-keyboard-key-id="102"]{--keyboard-col: 22;--keyboard-row: 6;--keyboard-span: 2}.keyboard-picker-key[data-keyboard-key-id="103"]{--keyboard-col: 24;--keyboard-row: 6}@media(max-width:58rem){.keyboard-picker-grid{max-width:none;grid-template-columns:repeat(16,var(--keyboard-unit)) 1rem repeat(3,var(--keyboard-unit)) 1.2rem repeat(4,var(--keyboard-unit))}.keyboard-picker-row{display:contents}.keyboard-picker-key{flex:initial}}
