:root{--font-sans:Inter, "SF Pro Text", Geist, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", "Berkeley Mono", "JetBrains Mono", ui-monospace, monospace;--color-canvas:#f6f6f4;--color-sidebar:#f2f2f0;--color-surface:#fafaf9;--color-surface-raised:#fff;--color-text-primary:#242422;--color-text-secondary:#676763;--color-text-muted:#999994;--color-border:#e3e3df;--color-border-strong:#c9c9c3;--color-divider:#ecece8;--color-hover:#eeeeec;--color-selected:#e5e5e2;--color-disabled-bg:#f0f0ed;--color-disabled-text:#979791;--color-accent:#1769aa;--color-accent-soft:#edf4f9;--color-success:#2f7d5a;--color-warning:#8a5b13;--color-danger:#b34a45;--color-danger-soft:#fbefee;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--shadow-popover:0 8px 24px #00000014;--shadow-dialog:0 16px 48px #0000001f;--transition-fast:.12s ease;--transition-standard:.16s ease;font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-canvas);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:13px;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{background:var(--color-canvas);min-width:320px}body{background:var(--color-canvas);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,select{letter-spacing:0}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{border-color:var(--color-accent);outline:0;box-shadow:0 0 0 3px #1769aa33}::selection{background:#1769aa2e}#root{min-height:100vh}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app{min-height:100vh}.app-header{z-index:30;border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface-raised) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.app-header-inner{align-items:center;gap:28px;width:min(100%,1504px);min-height:72px;margin:0 auto;padding:12px 32px;display:flex}.brand{align-items:center;gap:10px;min-width:206px;display:flex}.brand-mark,.empty-workspace-icon,.file-loader-icon{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:38px;height:38px;color:var(--color-text-primary);flex:none;place-items:center;display:grid}.brand-copy{gap:1px;min-width:0;display:grid}.brand h1{margin:0;font-size:15px;font-weight:600;line-height:1.3}.brand-version{border:1px solid var(--color-divider);border-radius:var(--radius-xs);color:var(--color-text-muted);font-size:10px;font-weight:500;font-family:var(--font-mono);vertical-align:middle;-webkit-user-select:none;user-select:none;margin-left:7px;padding:1px 5px}.brand-copy>span{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.35;overflow:hidden}.header-workflow{flex:1;justify-content:space-between;align-items:center;gap:18px;min-width:0;display:flex}.game-picker{min-width:146px;color:var(--color-text-muted);text-transform:uppercase;gap:3px;font-size:10px;font-weight:600;line-height:1;display:grid}.game-picker select{width:100%;min-width:0;height:34px}.toolbar{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.toolbar-divider{background:var(--color-divider);width:1px;height:22px;margin:0 3px}.button,.icon-button{border-radius:var(--radius-sm);height:32px;font:inherit;cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border:1px solid #0000;flex:none;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:500;display:inline-flex}.button{padding:0 12px}.icon-button{width:32px;height:32px;color:var(--color-text-secondary);background:0 0;padding:0}.button-primary{border-color:var(--color-text-primary);background:var(--color-text-primary);color:var(--color-surface-raised)}.button-primary:hover:not(:disabled){background:#383836;border-color:#383836}.button-secondary{border-color:var(--color-border);background:var(--color-surface-raised);color:var(--color-text-primary)}.button-secondary:hover:not(:disabled),.button-ghost:hover:not(:disabled),.icon-button:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-primary)}.button-ghost{color:var(--color-text-secondary);background:0 0}.button-danger{border-color:var(--color-danger);background:var(--color-danger);color:#fff}.button-danger:hover:not(:disabled){background:#9d3e3a}.button:disabled,.icon-button:disabled{border-color:var(--color-divider);background:var(--color-disabled-bg);color:var(--color-disabled-text);cursor:not-allowed}.library-toggle{display:none}.dirty-indicator{min-height:28px;color:var(--color-warning);white-space:nowrap;align-items:center;gap:6px;padding:0 4px;font-size:11px;font-weight:500;display:inline-flex}.dirty-indicator>span{background:currentColor;border-radius:50%;width:6px;height:6px}.app-main{width:min(100%,1504px);min-height:calc(100vh - 73px);margin:0 auto;padding:24px 32px 48px}.empty-workspace{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:min(100%,560px);min-height:calc(100vh - 150px);margin:0 auto;display:flex}.empty-workspace-icon{background:var(--color-surface-raised);width:52px;height:52px;margin-bottom:18px}.empty-workspace h2,.file-loader h2{margin:0;font-size:20px;font-weight:500;line-height:1.3}.empty-workspace>p,.file-loader>p{max-width:440px;color:var(--color-text-secondary);margin:8px 0 20px}.game-options{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);text-align:left;width:min(100%,420px);overflow:hidden}.game-options button{border:0;border-bottom:1px solid var(--color-divider);width:100%;min-height:52px;color:var(--color-text-primary);font:inherit;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;display:flex}.game-options button:last-child{border-bottom:0}.game-options button:hover{background:var(--color-hover)}.game-option-name{justify-items:start;gap:1px;min-width:0;display:grid}.game-option-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.game-option-name span,.game-option-action{color:var(--color-text-muted);font-size:12px}.game-option-action{flex:none}.workspace-layout{grid-template-columns:248px minmax(0,1fr);align-items:start;gap:24px;display:grid}.workspace-main,.editor-panel,.hex-panel{min-width:0}.saved-card-sidebar{min-width:0;position:sticky;top:97px}.mobile-pane-header,.library-scrim{display:none}.saved-card-list{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.saved-card-header{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;gap:8px;min-height:56px;padding:10px 10px 10px 13px;display:flex}.saved-card-header>div:first-child{gap:1px;display:grid}.saved-card-header h2{margin:0;font-size:13px;font-weight:500}.saved-card-count{color:var(--color-text-muted);font-size:11px}.saved-card-actions{gap:1px;display:flex}.saved-card-actions .icon-button{width:36px;height:36px}.saved-card-empty{min-height:148px;color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;margin:0;padding:24px 16px;display:flex}.saved-card-empty p{color:var(--color-text-secondary);margin:9px 0 3px;font-size:12px;font-weight:500}.saved-card-empty span{max-width:190px;font-size:11px;line-height:1.45}.saved-card-error{border:1px solid color-mix(in srgb, var(--color-danger) 48%, var(--color-border));border-radius:var(--radius-sm);background:var(--color-danger-soft);color:var(--color-danger);margin-top:10px;padding:10px 12px;font-size:12px}.saved-card-list ul{max-height:calc(100vh - 180px);margin:0;padding:0;list-style:none;overflow-y:auto}.saved-card-list li{border-bottom:1px solid var(--color-divider);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px;min-height:78px;padding:7px;display:grid}.saved-card-list li:last-child{border-bottom:0}.saved-card-list li.active{background:var(--color-selected)}.saved-card-main{border-radius:var(--radius-xs);min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:3px;display:flex}.saved-card-main:hover{background:var(--color-hover)}.saved-card-main img{aspect-ratio:540/856;border:1px solid var(--color-border);border-radius:var(--radius-xs);object-fit:cover;flex:none;width:42px}.saved-card-text{flex-direction:column;gap:2px;min-width:0;display:flex}.saved-card-name,.saved-card-profile{text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.saved-card-name{color:var(--color-text-primary);font-size:12px;font-weight:500}.saved-card-profile{color:var(--color-text-secondary);font-size:10px}.saved-card-meta{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:9px;line-height:1.35}.saved-card-delete{width:36px;height:36px}.saved-card-delete:hover{background:var(--color-danger-soft);color:var(--color-danger)}.card-preview-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:20px;overflow:visible}.card-preview-toolbar{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:flex-start;gap:16px;min-height:58px;padding:11px 12px 10px 16px;display:flex}.card-preview-toolbar h2{margin:0;font-size:14px;font-weight:500}.card-preview-toolbar p{max-width:520px;color:var(--color-text-muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:10px;line-height:1.3;overflow:hidden}.card-preview-controls{flex:none;justify-content:flex-end;gap:8px;display:flex}.card-preview-actions{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-canvas);grid-auto-columns:minmax(62px,auto);grid-auto-flow:column;padding:2px;display:inline-grid}.card-preview-actions button{border-radius:var(--radius-xs);height:36px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 9px;font-size:11px}.card-preview-actions button:hover{color:var(--color-text-primary)}.card-preview-actions button.active{background:var(--color-surface-raised);color:var(--color-text-primary);box-shadow:0 1px 2px #00000012}.card-preview-3d{border-bottom:1px solid var(--color-divider);touch-action:none;background:#e9eae7;width:100%;height:clamp(240px,27vw,340px);margin:0;overflow:hidden}.card-preview-vertical{height:clamp(350px,43vw,500px)}.card-preview-3d canvas{width:100%;height:100%;display:block}.card-preview-static{perspective:900px;justify-content:center;align-items:center;display:flex}.card-preview-static img{object-fit:contain;transform-origin:50%;border-radius:14px;max-width:min(72%,400px);max-height:calc(100% - 24px);display:block;transform:rotateX(5deg)rotateY(-7deg);box-shadow:0 16px 38px #23232033}.card-preview-static img.rotated{max-width:min(54%,300px);transform:rotate(90deg)rotateX(5deg)rotateY(-7deg)}.card-preview-loading{position:relative}.card-preview-loading:before{content:"";background:#dddeda;border:1px solid #c8c9c5;border-radius:12px;position:absolute;inset:24% 28%;transform:rotateX(6deg)rotateY(-8deg);box-shadow:0 12px 32px #2323201f}.card-profile{border-bottom:1px solid var(--color-divider);grid-template-columns:minmax(180px,1fr) auto;align-items:start;gap:10px 16px;padding:12px 16px;display:grid}.card-profile-heading{gap:2px;min-width:0;display:grid}.card-profile-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:1.3;overflow:hidden}.card-profile-heading span{color:var(--color-text-secondary);overflow-wrap:anywhere;font-size:11px}.card-profile-tags{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.card-profile-tags span{border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);color:var(--color-text-secondary);padding:2px 6px;font-size:10px}.card-profile dl{border-top:1px solid var(--color-divider);grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin:1px 0 0;display:grid}.card-profile dl div{min-width:0;padding:9px 9px 2px 0}.card-profile dt{color:var(--color-text-muted);margin-bottom:1px;font-size:10px}.card-profile dd{overflow-wrap:anywhere;margin:0;font-size:11px;line-height:1.35}.card-preview-footer{justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:8px 12px 8px 16px;display:flex}.card-preview-footer>span{color:var(--color-text-secondary);font-size:12px;font-weight:500}.cover-select{width:min(270px,100%);position:relative}.cover-select-trigger,.cover-select-menu button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;min-height:42px;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:4px 8px 4px 5px;display:grid}.cover-select-trigger:hover,.cover-select-trigger[aria-expanded=true],.cover-select-menu button:hover,.cover-select-menu button.selected{border-color:var(--color-border-strong);background:var(--color-hover)}.cover-select img{object-fit:cover;border-radius:3px;width:30px;height:34px}.cover-select span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;line-height:1.25;overflow:hidden}.cover-select-caret{color:var(--color-text-muted);transition:transform var(--transition-standard);justify-self:center}.cover-select-trigger[aria-expanded=true] .cover-select-caret{transform:rotate(180deg)}.cover-select-menu{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:min(290px,100vw - 32px);box-shadow:var(--shadow-popover);gap:4px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 6px);right:0}.cover-select-menu button{grid-template-columns:32px minmax(0,1fr) 16px}.file-loader{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);text-align:center;min-height:min(520px,100vh - 130px);transition:border-color var(--transition-standard), background-color var(--transition-standard);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.file-loader.dragging{border-color:var(--color-accent);background:var(--color-accent-soft)}.file-loader-icon{background:var(--color-surface-raised);width:50px;height:50px;margin-bottom:17px}.file-loader code{font-family:var(--font-mono);font-size:12px}.editor-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:start;gap:20px;display:grid}.hex-panel{position:sticky;top:97px}.section-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:12px;overflow:hidden}.section-header{width:100%;min-height:44px;color:var(--color-text-primary);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px 9px 14px;display:flex}.section-header:hover{background:var(--color-hover)}.section-header h3{margin:0;font-size:13px;font-weight:500}.section-toggle{color:var(--color-text-muted);transition:transform var(--transition-standard);transform:rotate(-90deg)}.section-header[aria-expanded=true] .section-toggle{transform:rotate(0)}.section-body{border-top:1px solid var(--color-divider);padding:12px 14px 14px}.field-editor{flex-direction:column;display:flex}.field-row{border-bottom:1px solid var(--color-divider);grid-template-columns:minmax(120px,160px) minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px;padding:5px 0;font-size:12px;display:grid}.field-row:last-child{border-bottom:0}.field-row label{min-width:0;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;overflow:hidden}.field-row input,.field-row select,.rf5-area-controls select,.rf5-level-controls select,.rf5-level-controls input,.rf5-ability-row select,.sd2-best-round-row input,.sr1-control select,.sr1-control input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;min-width:0;height:34px;color:var(--color-text-primary);font:inherit;padding:5px 9px;font-size:12px}.field-row input,.rf5-level-controls input,.sd2-best-round-row input,.sr1-control input{font-family:var(--font-mono)}.field-row input:disabled,.field-row select:disabled{background:var(--color-disabled-bg);color:var(--color-disabled-text);cursor:not-allowed}.field-hint{color:var(--color-text-muted);white-space:nowrap;font-size:10px}.new-card-flag{border-bottom:1px solid var(--color-divider);margin-bottom:7px;padding:8px 0}.new-card-flag label{color:var(--color-warning)}.validation-banner{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:auto minmax(0,1fr);gap:10px;margin-bottom:12px;padding:11px 13px;font-size:11px;display:grid}.validation-ok{border-color:color-mix(in srgb, var(--color-success) 38%, var(--color-border))}.validation-error{border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border));background:var(--color-danger-soft)}.validation-icon{color:var(--color-success);margin-top:1px}.validation-error .validation-icon{color:var(--color-danger)}.validation-content{min-width:0}.validation-content>strong{margin-bottom:4px;font-size:12px;font-weight:500;display:block}.validation-summary{color:var(--color-text-secondary);flex-wrap:wrap;gap:12px;display:flex}.validation-summary span+span{border-left:1px solid var(--color-divider);padding-left:12px}.validation-errors{color:var(--color-danger);margin:7px 0 0;padding-left:18px}.validation-info{color:var(--color-text-secondary);margin:6px 0 0}.security-info .field-row{grid-template-columns:140px 1fr}.security-info .field-row span,.secret-raw .field-row span,.sd2-readonly-row span{color:var(--color-text-secondary);font-family:var(--font-mono)}.area-b-note,.title-info,.sd2-best-round-note,.sr1-note{color:var(--color-text-secondary);font-size:11px;line-height:1.5}.sd1-note{color:var(--color-text-secondary);margin:6px 0;font-size:11px;line-height:1.5}.sd1-flag-group{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.sd1-flag{align-items:center;gap:6px;font-size:12px;display:flex}.sd1-car-spec{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.sd1-car-spec label{color:var(--color-text-secondary);flex-direction:column;gap:4px;font-size:11px;display:flex}.sd1-car-spec select{min-width:130px}.sd1-car-spec-value{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:11px}.sd1-slider{grid-template-columns:110px 1fr 56px;align-items:center;gap:10px;display:grid}.sd1-slider input[type=range]{width:100%}.sd1-slider-value{font-family:var(--font-mono);color:var(--color-text-secondary);text-align:right;font-size:11px}.sd1-copy-status{color:var(--color-text-secondary);margin:0;padding-left:18px;font-size:12px;line-height:1.8}.sd1-copy-status li::marker{color:var(--color-text-secondary)}.hex-viewer{max-height:calc(100vh - 180px);font-size:11px;overflow:auto}.hex-viewer pre{min-width:520px;font-family:var(--font-mono);margin:0;line-height:1.6}.hex-row{grid-template-columns:38px 316px auto;gap:8px;display:grid}.hex-offset{color:var(--color-text-muted)}.hex-bytes{color:var(--color-text-primary)}.hex-ascii{color:var(--color-text-secondary)}.hex-highlight{background:var(--color-accent-soft);color:var(--color-accent);border-radius:2px}.level-xp-display{border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-canvas);margin-bottom:12px;padding:10px 12px}.level-info{align-items:center;gap:10px;font-size:12px;display:flex}.xp-bar{background:var(--color-border);border-radius:3px;flex:1;height:6px;overflow:hidden}.xp-fill{background:var(--color-success);height:100%;transition:width var(--transition-standard);border-radius:3px;display:block}.level-warning{color:var(--color-warning);margin-top:6px;font-size:11px}.role-name-widget,.rf5-player-area-editor,.secret-section,.sd2-subsection{border-bottom:1px solid var(--color-divider);margin-bottom:12px;padding-bottom:12px}.role-name-widget .name-raw{color:var(--color-text-muted);font-family:var(--font-mono);margin-top:4px;font-size:10px}.name-display,.name-edit{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.name-value{color:var(--color-accent);font-family:var(--font-mono);font-size:15px}.name-display button,.name-edit button,.secret-songs h4 button,.sd2-best-round-toolbar button,.sd2-best-round-row button,.sr1-part-actions button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);min-height:36px;color:var(--color-text-secondary);font:inherit;cursor:pointer;padding:4px 9px;font-size:11px}.name-display button:hover,.name-edit button:hover,.secret-songs h4 button:hover,.sd2-best-round-row button:hover,.sr1-part-actions button:hover{border-color:var(--color-border-strong);background:var(--color-hover);color:var(--color-text-primary)}.name-slots{grid-template-columns:repeat(4,minmax(44px,1fr));gap:6px;width:min(260px,100%);display:grid}.name-edit .name-slot,.name-index-palette button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);min-height:40px;color:var(--color-text-secondary);font:inherit;cursor:pointer;padding:4px 6px}.name-edit .name-slot.active,.name-index-palette button.selected,.name-index-palette button:hover{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-text-primary)}.name-slot-char,.name-slot-index,.name-choice-char,.name-choice-index{line-height:1.15;display:block}.name-slot-char{color:var(--color-accent);font-size:14px}.name-slot-index,.name-choice-index{color:var(--color-text-muted);margin-top:2px;font-size:9px}.name-index-palette{grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:5px;margin-top:8px;display:grid}.name-choice-char{font-size:13px}.name-choice-char.blank{font-size:10px}.secret-songs h4{align-items:center;gap:10px;margin:8px 0;font-size:12px;font-weight:500;display:flex}.song-grid,.rf5-unlock-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2px 8px;max-height:320px;padding:2px;display:grid;overflow-y:auto}.song-check,.unlock-check{border-radius:var(--radius-xs);min-height:36px;color:var(--color-text-primary);cursor:pointer;align-items:center;gap:6px;padding:5px 6px;font-size:11px;display:flex}.song-check:hover,.unlock-check:hover{background:var(--color-hover)}.song-check input,.unlock-check input,.sd2-check input,.rf5-ability-active input{accent-color:var(--color-accent);margin:0}.song-check.untracked{color:var(--color-disabled-text);cursor:not-allowed}.song-idx{min-width:18px;color:var(--color-text-muted);font-family:var(--font-mono);text-align:right;font-size:9px}.song-names,.unlock-copy{flex:1;min-width:0;line-height:1.25;display:grid}.song-name-zh,.song-code-name,.unlock-title,.unlock-meta{overflow-wrap:anywhere}.song-code-name,.song-untracked,.unlock-meta{color:var(--color-text-muted);font-size:9px}.secret-raw{margin-top:8px}.secret-raw .field-row{grid-template-columns:100px 1fr}.rf5-name-slots{grid-template-columns:repeat(4,minmax(50px,1fr));width:min(320px,100%)}.rf5-level-xp,.rf5-ability-editor{gap:7px;display:grid}.rf5-ability-workspace{gap:14px;display:grid}.rf5-ability-radar{width:min(100%,430px);margin:0 auto}.rf5-ability-radar svg{width:100%;height:auto;display:block;overflow:visible}.rf5-radar-grid,.rf5-radar-axis{fill:none;stroke:var(--color-divider);stroke-width:1px}.rf5-radar-grid:last-of-type{stroke:var(--color-border-strong)}.rf5-radar-shape{fill:color-mix(in srgb, var(--color-accent) 18%, transparent);stroke:var(--color-accent);stroke-linejoin:round;stroke-width:2px}.rf5-radar-point{fill:var(--color-surface-raised);stroke:var(--color-accent);stroke-width:2px}.rf5-radar-point.active{fill:var(--color-accent);stroke:var(--color-surface-raised);stroke-width:2.5px}.rf5-radar-label{fill:var(--color-text-secondary);font-family:var(--font-sans);font-size:10px;font-weight:500}.rf5-radar-value{fill:var(--color-text-primary);font-family:var(--font-mono);font-size:10px;font-weight:400}.rf5-area-controls{grid-template-columns:minmax(140px,.8fr) minmax(170px,1fr) auto;align-items:center;gap:8px;width:100%;display:grid}.rf5-area-index,.rf5-ability-raw{color:var(--color-text-muted);font-family:var(--font-mono);white-space:nowrap;font-size:10px}.rf5-level-controls{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.rf5-level-controls label,.sr1-control{min-width:0;color:var(--color-text-secondary);gap:4px;font-size:10px;display:grid}.rf5-ability-row{grid-template-columns:minmax(150px,1fr) minmax(80px,120px) auto auto;align-items:center;gap:8px;min-height:38px;font-size:11px;display:grid}.rf5-ability-row>label:first-child{min-width:0;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rf5-ability-active{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.unlock-count{color:var(--color-text-muted);font-size:10px;font-weight:400}.unlock-check{align-items:flex-start}.sd2-editor,.editor-tabs,.pt-editor{gap:10px;display:grid}.pt-truck-switch{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-canvas);grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:3px;display:grid}.pt-truck-switch button{border-radius:var(--radius-xs);min-width:0;height:36px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:11px;display:flex}.pt-truck-switch button:hover{background:var(--color-hover);color:var(--color-text-primary)}.pt-truck-switch button.active{background:var(--color-surface-raised);color:var(--color-accent);font-weight:500;box-shadow:0 1px 2px #00000014}.pt-subsection-heading,.pt-bulk-actions,.pt-heading-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pt-subsection-heading{justify-content:space-between;margin-bottom:8px}.pt-subsection-heading h4{margin:0}.pt-bulk-actions{margin-bottom:12px}.pt-action{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);min-height:32px;color:var(--color-text-secondary);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:5px;padding:4px 8px;font-size:10px;display:inline-flex}.pt-action:hover{border-color:var(--color-border-strong);background:var(--color-hover);color:var(--color-text-primary)}.pt-project-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid}.pt-project-grid div{border:1px solid var(--color-divider);border-radius:var(--radius-xs);background:var(--color-canvas);align-content:center;gap:1px;min-width:0;min-height:42px;padding:5px 7px;display:grid}.pt-project-grid div.active{border-color:var(--color-accent);background:var(--color-accent-soft)}.pt-project-grid span{color:var(--color-text-muted);font-size:9px}.pt-project-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.pt-readonly-row>span{font-family:var(--font-mono);overflow-wrap:anywhere}.pt-record-pair+.pt-record-pair{margin-top:12px}.sd2-tablist,.editor-tablist{border-bottom:1px solid var(--color-border);scrollbar-width:thin;gap:0;display:flex;overflow-x:auto}.sd2-tablist button,.editor-tablist button{min-width:68px;height:38px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:0 11px;font-size:11px}.sd2-tablist button:hover,.editor-tablist button:hover{color:var(--color-text-primary)}.sd2-tablist button.active,.editor-tablist button.active{border-bottom-color:var(--color-accent);color:var(--color-text-primary);font-weight:500}.sd2-tab-panel,.editor-tab-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:12px 14px}.sd2-area-status{border-top:1px solid var(--color-divider);color:var(--color-text-secondary);flex-wrap:wrap;gap:16px;margin-top:10px;padding-top:10px;font-size:11px;display:flex}.sd2-area-status strong{color:var(--color-accent)}.sd2-subsection:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.sd2-subsection h4{margin:0 0 8px;font-size:12px;font-weight:500}.sd2-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:2px 14px;display:grid}.sd2-readonly-row{grid-template-columns:minmax(120px,160px) 1fr}.sd2-best-round-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.sd2-best-round-toolbar button{border-color:color-mix(in srgb, var(--color-danger) 34%, var(--color-border));color:var(--color-danger)}.sd2-best-round-toolbar button:disabled,.sd2-best-round-row button:disabled{color:var(--color-disabled-text);cursor:not-allowed}.sd2-best-round-groups{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:10px;display:grid}.sd2-best-round-group{border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-canvas);padding:10px}.sd2-best-round-group h5{margin:0 0 8px;font-size:11px;font-weight:500}.sd2-best-round-row{grid-template-columns:62px minmax(110px,1fr) 58px;align-items:center;gap:5px 8px;margin-bottom:8px;display:grid}.sd2-best-round-row:last-child{margin-bottom:0}.sd2-best-round-row label{color:var(--color-text-secondary);font-size:10px}.sd2-best-round-hint{color:var(--color-text-muted);grid-column:2/-1;font-size:9px}.sd2-best-round-row.has-error input{border-color:var(--color-danger)}.sd2-best-round-row.has-error .sd2-best-round-hint{color:var(--color-danger)}.sr1-logo-selector{margin-top:10px}.sr1-logo-grid{grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:6px;display:grid}.sr1-logo-grid button{aspect-ratio:1;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);cursor:pointer;place-items:center;min-width:0;padding:5px;display:grid;position:relative}.sr1-logo-grid button:hover,.sr1-logo-grid button.active{border-color:var(--color-accent);background:var(--color-accent-soft)}.sr1-logo-grid img{object-fit:contain;width:min(100%,46px);height:min(100%,46px)}.sr1-logo-grid span{color:var(--color-accent);font-size:9px;position:absolute;bottom:3px;right:4px}.sr1-note{border-left:2px solid var(--color-accent);background:var(--color-accent-soft);margin:0 0 10px;padding:8px 10px}.sr1-part-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.sr1-part-actions{flex:none;gap:4px;display:inline-flex}.sd2-owned-groups{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 14px;display:grid}.sd2-part-label{color:var(--color-text-secondary);margin-bottom:5px;font-size:11px;font-weight:500}.sd2-bit-grid{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:4px;display:grid}.sd2-check{border:1px solid var(--color-divider);border-radius:var(--radius-xs);background:var(--color-surface-raised);min-height:36px;color:var(--color-text-secondary);cursor:pointer;align-items:flex-start;gap:6px;padding:5px 6px;font-size:10px;display:flex}.sd2-check:hover{border-color:var(--color-border-strong);background:var(--color-hover);color:var(--color-text-primary)}.sd2-check span{overflow-wrap:anywhere;line-height:1.25}.valid{color:var(--color-success)}.invalid{color:var(--color-danger)}.app-dialog{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);width:min(440px,100vw - 32px);color:var(--color-text-primary);box-shadow:var(--shadow-dialog);padding:0;overflow:hidden}.app-dialog::backdrop{background:#1d1d1b61}.app-dialog form{margin:0}.dialog-header{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:flex-start;gap:14px;min-height:74px;padding:16px 16px 12px 18px;display:flex}.dialog-title{align-items:flex-start;gap:10px;min-width:0;display:flex}.dialog-title>svg{color:var(--color-accent);flex:none;margin-top:2px}.dialog-title-danger>svg{color:var(--color-danger)}.dialog-title h2{margin:0;font-size:15px;font-weight:500}.dialog-title p{color:var(--color-text-secondary);margin:3px 0 0;font-size:11px;line-height:1.45}.dialog-body{padding:16px 18px}.dialog-field{gap:6px;display:grid}.dialog-field>span{color:var(--color-text-secondary);font-size:11px;font-weight:500}.dialog-field input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;height:38px;color:var(--color-text-primary);font:inherit;padding:7px 10px}.dialog-object{border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-canvas);overflow-wrap:anywhere;align-items:center;gap:8px;margin:0;padding:10px 12px;font-size:12px;font-weight:500;display:flex}.dialog-actions{border-top:1px solid var(--color-divider);justify-content:flex-end;align-items:center;gap:8px;min-height:62px;padding:12px 18px;display:flex}.sd4-editor{gap:16px;width:min(100%,960px)}.sd4-editor .editor-tablist{border-bottom-color:var(--color-border);gap:4px;padding-bottom:8px}.sd4-editor .editor-tablist button{border-radius:var(--radius-sm);min-width:auto;height:32px;color:var(--color-text-secondary);background:0 0;border:1px solid #0000;padding:0 10px;font-size:13px;font-weight:400}.sd4-editor .editor-tablist button:hover{background:var(--color-hover);color:var(--color-text-primary)}.sd4-editor .editor-tablist button.active{border-color:var(--color-border);border-bottom-color:var(--color-border);background:var(--color-selected);color:var(--color-text-primary);font-weight:500}.sd4-editor .editor-tab-panel{background:0 0;border:0;border-radius:0;gap:32px;padding:0;display:grid}.sd4-section,.sd4-disclosure{border:1px solid var(--color-border);background:var(--color-surface-raised);margin:0;overflow:visible}.sd4-section{border-radius:var(--radius-lg);padding:0}.sd4-section>h4{border-bottom:1px solid var(--color-divider);min-height:42px;color:var(--color-text-primary);align-items:center;gap:8px;margin:0;padding:0 16px;font-size:13px;font-weight:500;display:flex}.sd4-section>.field-row{margin:0 16px}.sd4-section>.field-row:last-child{border-bottom:0}.sd4-editor .field-row{grid-template-columns:minmax(148px,180px) minmax(0,1fr) auto;gap:8px;min-height:44px;font-size:13px}.sd4-editor .field-row label{font-size:12px}.sd4-editor .field-row input:not([type=checkbox]):not([type=range]),.sd4-editor .field-row select,.sd4-editor .sd4-state-row select,.sd4-editor .sd4-array-select-row select,.sd4-editor .sd4-array-number-row input,.sd4-editor .sd4-crash-row>input,.sd4-editor .sd4-course-row input,.sd4-editor .sd4-time-row input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;min-width:0;height:34px;color:var(--color-text-primary);font:inherit;padding:7px 10px;font-size:13px}.sd4-editor :is(.field-row input[type=number],.sd4-array-number-row input,.sd4-crash-row>input,.sd4-course-row input,.sd4-time-row input){font-family:var(--font-mono)}.sd4-editor .field-row input[type=range]{height:20px;accent-color:var(--color-accent);background:0 0;border:0;border-radius:0;padding:0}.sd4-editor .field-hint{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.sd4-disclosure{border-radius:0}.sd4-disclosure-summary{background:var(--color-surface-raised);min-height:42px;color:var(--color-text-primary);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;list-style:none;display:flex}.sd4-disclosure-summary::-webkit-details-marker{display:none}.sd4-disclosure-summary:hover{background:var(--color-hover)}.sd4-disclosure-title{align-items:baseline;gap:6px;min-width:0;font-size:13px;font-weight:500;display:flex}.sd4-disclosure-title .field-hint{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sd4-disclosure-chevron{color:var(--color-text-muted);transition:transform var(--transition-fast);flex:none}.sd4-disclosure[open]>.sd4-disclosure-summary{border-bottom:1px solid var(--color-divider)}.sd4-disclosure[open] .sd4-disclosure-chevron{transform:rotate(180deg)}.sd4-disclosure-body{padding:12px 16px 16px}.sd4-field-list{padding-top:0;padding-bottom:0}.sd4-field-list>.sd4-disclosure{border:0;border-top:1px solid var(--color-divider);background:0 0;border-radius:0}.sd4-field-list>.sd4-disclosure>.sd4-disclosure-summary{background:0 0;border-radius:0;min-height:44px;padding:0}.sd4-field-list>.sd4-disclosure>.sd4-disclosure-body{padding-left:0;padding-right:0}.sd4-field-list .field-row:last-child{border-bottom:0}.sd4-editor .button,.sd4-editor .icon-button{height:32px;font-size:13px}.sd4-editor .icon-button{width:32px}.sd4-editor .sd4-quick-action,.sd4-editor .sd4-bulk-button{height:30px;padding:0 9px;font-size:12px}.sd4-array-toolbar,.sd4-card-actions,.sd4-bulk-actions,.sd4-pagination{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.sd4-array-toolbar,.sd4-bulk-actions{margin-bottom:12px}.sd4-toolbar-spacer{flex:1}.sd4-pagination{flex-wrap:nowrap}.sd4-array-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 12px;display:grid}.sd4-array-checkbox,.sd4-array-select-row,.sd4-array-number-row,.sd4-state-row,.sd4-course-row{min-width:0;color:var(--color-text-secondary);font-size:12px}.sd4-array-checkbox{border-radius:var(--radius-xs);align-items:center;gap:7px;min-height:32px;padding:4px 6px;display:flex}.sd4-array-checkbox input{accent-color:var(--color-accent);margin:0}.sd4-array-checkbox:hover{background:var(--color-hover)}.sd4-array-checkbox span,.sd4-array-select-row>span,.sd4-array-number-row>span,.sd4-state-row>span,.sd4-course-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sd4-array-select-row,.sd4-array-number-row,.sd4-state-row,.sd4-course-row{align-items:center;gap:8px;display:grid}.sd4-array-select-row{grid-template-columns:minmax(76px,1fr) minmax(100px,1.2fr)}.sd4-array-number-row,.sd4-course-row{grid-template-columns:minmax(92px,1fr) 82px}.sd4-state-row{grid-template-columns:minmax(104px,1fr) minmax(118px,1.1fr)}.sd4-state-grid .sd4-state-row{border-radius:var(--radius-xs);min-height:40px;padding:5px 8px}.sd4-state-grid .sd4-state-row:hover{background:var(--color-hover)}.sd4-section>.sd4-state-row{border-bottom:1px solid var(--color-divider);grid-template-columns:minmax(148px,180px) minmax(0,1fr);min-height:44px;margin:0 8px;padding:5px 8px}.sd4-section>.sd4-car-switch{margin:12px 16px 0}.sd4-section>.sd4-state-row:last-child{border-bottom:0}.sd4-editor .field-row.sd4-license-row{grid-template-columns:minmax(120px,1fr) 64px 64px 92px minmax(104px,auto)}.sd4-editor .field-row .sd4-license-number{width:92px}.sd4-license-preview{color:var(--color-text-primary);font-family:var(--font-mono);letter-spacing:0;white-space:nowrap;font-size:13px;font-weight:500}.sd4-tuning>h4{justify-content:space-between}.sd4-tuning-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;padding:12px 16px 16px;display:grid}.sd4-tuning-pair-heading{color:var(--color-text-primary);justify-content:space-between;align-items:center;margin-bottom:4px;font-size:12px;font-weight:500;display:flex}.sd4-tuning-pair-heading>span:last-child{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:12px;font-weight:400}.sd4-tuning-pair-heading>.is-invalid{color:var(--color-danger)}.sd4-editor .field-row.sd4-tuning-row{grid-template-columns:44px minmax(80px,1fr) 58px}.sd4-tuning-row label{color:var(--color-text-secondary)}.sd4-tuning-row input[type=number]{font-family:var(--font-mono)}.sd4-field-message{color:var(--color-text-secondary);margin:8px 0 0;font-size:12px}.sd4-field-message.is-warning{color:var(--color-warning)}.sd4-section-group{gap:16px;display:grid}.sd4-section-group>h4{color:var(--color-text-primary);margin:0;font-size:13px;font-weight:500}.sd4-record-grid,.sd4-crash-grid,.sd4-state-grid,.sd4-course-grid{gap:8px 16px;display:grid}.sd4-record-grid,.sd4-crash-grid,.sd4-state-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.sd4-course-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.sd4-time-row{grid-template-columns:minmax(116px,1fr) minmax(128px,1fr);gap:8px;min-height:44px;margin:0;display:grid}.sd4-time-row label{color:var(--color-text-secondary);font-size:12px}.sd4-time-row input{font-size:12px}.sd4-time-hint{min-height:15px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px}.sd4-time-row.has-error input{border-color:var(--color-danger)}.sd4-time-row.has-error .sd4-time-hint{color:var(--color-danger)}.sd4-time-control{gap:3px;min-width:0;display:grid}.sd4-crash-row{grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:8px;display:grid}.sd4-status{font-size:13px;font-weight:500}.sd4-status-ready{color:var(--color-success)}.sd4-status-sd3-migration,.sd4-status-new,.sd4-status-blocked{color:var(--color-warning)}.sd4-status-blocked{color:var(--color-danger)}.sd4-card-actions{padding:12px 16px 16px}.sd4-car-switch{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-canvas);grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;padding:3px;display:grid}.sd4-car-switch button{border-radius:var(--radius-xs);height:30px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px}.sd4-car-switch button:hover{background:var(--color-hover);color:var(--color-text-primary)}.sd4-car-switch button.active{background:var(--color-surface-raised);color:var(--color-text-primary);font-weight:500}.sd4-experience-display{border-bottom:1px solid var(--color-divider);padding:12px 16px}.sd4-experience-info{color:var(--color-text-secondary);font-family:var(--font-mono);grid-template-columns:auto minmax(96px,220px) auto;align-items:center;gap:10px;font-size:12px;display:grid}.sd4-xp-bar{border-radius:var(--radius-xs);background:var(--color-divider);height:6px;overflow:hidden}.sd4-xp-fill{background:var(--color-accent);height:100%;display:block}.sd4-boolean-control{min-height:34px;color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.sd4-boolean-control input{width:14px;height:14px;accent-color:var(--color-accent);margin:0;padding:0}.visual-select{z-index:0;min-width:0;position:relative}.visual-select.is-open{z-index:4}.visual-select-trigger{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;min-width:0;min-height:34px;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:3px 7px 3px 4px;font-size:13px;display:grid}.visual-select-trigger:hover,.visual-select-trigger[aria-expanded=true]{border-color:var(--color-border-strong);background:var(--color-hover)}.visual-select-chevron{color:var(--color-text-muted);transition:transform var(--transition-fast)}.visual-select-trigger[aria-expanded=true] .visual-select-chevron{transform:rotate(180deg)}.visual-select-value,.visual-select-option-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.visual-select-visual{place-items:center;min-width:0;min-height:0;display:grid}.visual-select-menu{z-index:20;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);width:min(440px,100vw - 32px);max-height:min(430px,100vh - 48px);box-shadow:var(--shadow-popover);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;display:grid;position:absolute;top:calc(100% + 5px);right:0;overflow:auto}.visual-select-menu.is-above{top:auto;bottom:calc(100% + 5px)}.visual-select-option{border:1px solid var(--color-divider);border-radius:var(--radius-xs);background:var(--color-canvas);min-width:0;min-height:76px;color:var(--color-text-secondary);font:inherit;cursor:pointer;grid-template-rows:minmax(0,1fr) auto;place-items:center;gap:4px;padding:5px;font-size:10px;display:grid;position:relative}.visual-select-option:hover{border-color:var(--color-border-strong);background:var(--color-hover);color:var(--color-text-primary)}.visual-select-option.is-selected{border-color:var(--color-border-strong);background:var(--color-selected);color:var(--color-text-primary)}.visual-select-check{color:var(--color-accent);position:absolute;top:4px;right:4px}.sd4-avatar-mark{background:var(--color-canvas);place-items:center;width:28px;height:30px;display:grid;overflow:hidden}.sd4-avatar-mark img{object-fit:contain;object-position:center top;width:100%;height:100%}.sd4-avatar-mark.is-unavailable{border:1px dashed var(--color-border);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px}.sd4-avatar-select-menu .visual-select-option{min-height:116px}.sd4-avatar-select-menu .sd4-avatar-mark{background:0 0;width:54px;height:76px}.sd4-team-logo-layout{grid-template-columns:154px minmax(0,1fr);gap:20px;padding:16px;display:grid}.sd4-team-logo-preview{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-canvas);place-items:center;width:154px;height:154px;display:grid}.sd4-team-logo-art{width:132px;height:132px;position:relative}.sd4-team-logo-mark{background-color:var(--color-text-secondary);flex:0 0 24px;width:24px;height:24px;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.sd4-team-logo-mark.is-empty{visibility:hidden}.sd4-team-logo-mark.is-preview{aspect-ratio:1;height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sd4-team-logo-fields{gap:12px;min-width:0;display:grid}.sd4-team-logo-layer{grid-template-columns:minmax(52px,auto) minmax(0,1fr);align-items:center;gap:6px 8px;display:grid}.sd4-team-logo-layer>strong,.sd4-team-logo-layer .sd4-team-logo-control{min-width:0;color:var(--color-text-secondary);font-size:12px;font-weight:400}.sd4-team-logo-layer>strong{grid-row:span 2}.sd4-team-logo-layer .sd4-team-logo-control{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.sd4-team-logo-layer .sd4-team-logo-pattern-control,.sd4-team-logo-layer .sd4-team-logo-color-control{grid-template-columns:auto minmax(0,1fr)}.sd4-team-logo-pattern-menu{grid-template-columns:repeat(6,minmax(0,1fr));width:min(470px,100vw - 32px)}.sd4-team-logo-pattern-menu .visual-select-option{min-height:66px}.sd4-team-logo-pattern-menu .sd4-team-logo-mark{flex-basis:34px;width:34px;height:34px}.sd4-team-logo-option-placeholder{border:1px dashed var(--color-border);width:34px;height:34px;color:var(--color-text-muted);place-items:center;font-size:9px;display:grid}.sd4-team-logo-color-menu{width:min(320px,100vw - 32px)}.sd4-team-logo-color-menu .visual-select-option{min-height:66px}.sd4-team-logo-color-menu .sd4-team-color-swatch{width:28px;height:28px}.sd4-team-color-swatch{border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);width:18px;height:18px}@media (width<=1199px){body:has(.saved-card-sidebar.is-open){overflow:hidden}.app-header-inner{padding-left:24px;padding-right:24px}.library-toggle{order:2;margin-left:auto;display:inline-flex}.header-workflow{order:3}.workspace-layout{display:block}.saved-card-sidebar{z-index:60;border-right:1px solid var(--color-border);background:var(--color-sidebar);width:min(340px,100vw - 40px);box-shadow:var(--shadow-dialog);transition:transform var(--transition-standard);padding:0;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%)}.saved-card-sidebar.is-open{transform:translate(0)}.mobile-pane-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:58px;padding:10px 12px 10px 16px;font-size:13px;font-weight:500;display:flex}.saved-card-list{margin:12px}.saved-card-error{margin:0 12px}.saved-card-list ul{max-height:none}.library-scrim{z-index:50;opacity:0;pointer-events:none;transition:opacity var(--transition-standard);background:#1d1d1b47;border:0;display:block;position:fixed;inset:0}.library-scrim.is-open{opacity:1;pointer-events:auto}}@media (width<=1040px){.app-header-inner{flex-wrap:wrap;align-items:flex-start;gap:10px 18px}.brand{min-height:38px}.header-workflow{flex-basis:100%;grid-template-columns:146px minmax(0,1fr);align-items:end;width:100%;display:grid}.toolbar{scrollbar-width:none;justify-content:flex-start;overflow-x:auto}.toolbar::-webkit-scrollbar{display:none}.app-main{min-height:calc(100vh - 130px)}.empty-workspace{min-height:calc(100vh - 190px)}}@media (width<=920px){.editor-layout{grid-template-columns:1fr}.hex-panel{position:static}.hex-viewer{max-height:480px}}@media (width<=799px){.app-header{-webkit-backdrop-filter:none;backdrop-filter:none;position:static}.button,.icon-button,.game-picker select,.field-row input,.field-row select,.rf5-area-controls select,.rf5-level-controls select,.rf5-level-controls input,.rf5-ability-row select,.sd2-best-round-row input,.sr1-control select,.sr1-control input,.card-preview-actions button,.sd2-tablist button,.editor-tablist button{height:44px}.cover-select-trigger,.cover-select-menu button,.section-header,.name-display button,.name-edit button,.secret-songs h4 button,.sd2-best-round-toolbar button,.sd2-best-round-row button,.sr1-part-actions button,.song-check,.unlock-check,.sd2-check{min-height:44px}.app-header-inner{padding:10px 16px 12px}.app-main{min-height:calc(100vh - 128px);padding:16px 16px 36px}.card-preview-toolbar{flex-direction:column;align-items:stretch}.card-preview-toolbar p{white-space:normal}.card-preview-controls{justify-content:flex-start}.card-preview-3d{height:260px}.card-preview-vertical{height:390px}.card-profile{grid-template-columns:1fr}.card-profile-tags{justify-content:flex-start}.card-preview-footer{flex-direction:column;align-items:stretch}.cover-select{width:100%;max-width:none}.file-loader{min-height:420px}}@media (width<=640px){.brand-mark{width:34px;height:34px}.header-workflow{grid-template-columns:1fr}.game-picker{width:100%}.toolbar{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.toolbar .button{width:100%;min-width:0;padding:0 8px;font-size:11px}.toolbar-divider{display:none}.dirty-indicator{grid-column:1/-1}.empty-workspace{justify-content:flex-start;padding-top:56px}.game-options button{min-height:48px}.pt-truck-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.pt-project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field-row,.security-info .field-row,.secret-raw .field-row,.sd2-readonly-row{grid-template-columns:1fr;gap:5px;padding:8px 0}.field-row label{white-space:normal}.field-hint{justify-self:start}.validation-summary{gap:3px;display:grid}.validation-summary span+span{border-left:0;padding-left:0}.rf5-area-controls{grid-template-columns:1fr}.rf5-area-index{white-space:normal}.rf5-ability-row{grid-template-columns:1fr minmax(78px,110px)}.rf5-ability-active,.rf5-ability-raw{grid-column:2}.sd2-grid,.sd2-best-round-groups{grid-template-columns:1fr}}@media (width<=799px){.sd4-editor .editor-tab-panel{gap:24px}.sd4-editor .editor-tablist button,.sd4-editor .button,.sd4-editor .icon-button,.sd4-editor .sd4-quick-action,.sd4-editor .sd4-bulk-button,.sd4-car-switch button,.sd4-editor .field-row input,.sd4-editor .field-row select,.sd4-editor .sd4-state-row select,.sd4-editor .sd4-array-select-row select,.sd4-editor .sd4-array-number-row input,.sd4-editor .sd4-crash-row>input,.sd4-editor .sd4-course-row input,.sd4-editor .sd4-time-row input{height:44px}.visual-select-trigger{min-height:44px}}@media (width<=640px){.sd4-section>h4{min-height:48px}.sd4-editor .field-row{grid-template-columns:1fr;gap:5px;padding:8px 0}.sd4-editor .field-row.sd4-license-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sd4-license-row>label,.sd4-license-preview{grid-column:1/-1}.sd4-editor .field-row .sd4-license-number{grid-column:1/-1;width:100%}.sd4-editor .field-row.sd4-tuning-row{grid-template-columns:44px minmax(0,1fr) 64px;min-height:52px}.sd4-tuning-grid{grid-template-columns:1fr;gap:20px}.sd4-car-switch{grid-template-columns:repeat(3,minmax(0,1fr))}.sd4-record-grid,.sd4-crash-grid,.sd4-state-grid,.sd4-course-grid{grid-template-columns:1fr}.sd4-array-toolbar,.sd4-card-actions,.sd4-bulk-actions{align-items:stretch}.sd4-card-actions>.button{width:100%}.sd4-time-row,.sd4-crash-row{grid-template-columns:1fr}.sd4-time-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.sd4-time-control .sd4-time-hint{grid-column:auto}.sd4-experience-info{grid-template-columns:auto minmax(76px,1fr) auto;gap:7px}.sd4-section>.sd4-state-row{grid-template-columns:1fr;margin:0 8px}.sd4-team-logo-layout{grid-template-columns:1fr}.sd4-team-logo-preview{width:132px;height:132px}.sd4-team-logo-art{width:112px;height:112px}.sd4-team-logo-layer{grid-template-columns:1fr;gap:5px}.sd4-team-logo-layer>strong{grid-row:auto}.sd4-team-logo-pattern-menu{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
