.context-menu{background:var(--bg-dialog);border:1px solid var(--border);min-width:160px;box-shadow:0 4px 12px var(--shadow-color);z-index:1000;border-radius:6px;padding:4px 0;position:fixed}.context-menu-item{cursor:pointer;color:var(--text-primary);align-items:center;padding:6px 16px;display:flex}.context-menu-item.disabled{color:var(--text-muted);cursor:default}.context-menu-item:hover{background:var(--bg-hover)}.context-menu-item.disabled:hover{background:0 0}.context-menu-item.danger{color:var(--danger)}.context-submenu{position:fixed}.context-menu-item .submenu-arrow{margin-left:auto;padding-left:12px;font-size:12px}.context-menu-item .item-icon{margin-right:4px}.context-menu-separator{background:var(--border);height:1px;margin:4px 0}dialog{background:var(--bg-dialog);color:var(--text-primary);border:1px solid var(--border);width:-moz-fit-content;width:fit-content;box-shadow:0 8px 24px var(--shadow-color);border-radius:8px;padding:20px}dialog.dialog-popup{z-index:1000;max-width:min(420px,100vw - 16px);max-height:calc(100vh - 16px);margin:0;position:fixed;overflow:auto}dialog.dialog-centered{top:50%;left:50%;transform:translate(-50%,-50%)}dialog::backdrop{background:var(--backdrop-color)}dialog h3{font-size:var(--font-size-lg);white-space:pre-line;margin-bottom:12px;font-style:italic;font-weight:400}dialog h3:not(:first-child){border-top:1px solid var(--border);margin-top:12px;padding-top:12px}dialog .dialog-body{white-space:pre-line;margin-bottom:12px;font-style:normal}dialog .progress-bar{-webkit-appearance:none;appearance:none;background:var(--bg-primary);border:none;border-radius:3px;width:100%;height:6px}dialog .progress-bar::-webkit-progress-bar{background:var(--bg-primary);border-radius:3px}dialog .progress-bar::-webkit-progress-value{background:var(--accent);border-radius:3px}dialog .progress-text{font-size:var(--font-size-sm);color:var(--text-muted);margin-top:4px}dialog input[type=text]{background:var(--bg-primary);width:100%;color:var(--text-primary);border:1px solid var(--border);font-size:var(--font-size-base);border-radius:4px;outline:none;padding:6px 10px}dialog input[type=text]:focus{border-color:var(--accent)}.dialog-input-row{align-items:center;gap:2px;display:flex}.dialog-input-row input{flex:1;min-width:0}.dialog-suffix{color:var(--text-muted);font-size:var(--font-size-base);white-space:nowrap}.dialog-warn{min-height:1.2em;font-size:var(--font-size-sm);color:var(--danger);margin-top:4px;display:block}dialog .dialog-buttons{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}dialog button{border:1px solid var(--border);background:var(--bg-hover);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-base);border-radius:4px;padding:6px 16px}dialog button:disabled{opacity:.15;cursor:default}dialog button.primary{background:var(--accent);color:var(--bg-toolbar);border-color:var(--accent)}.select-list{max-height:300px;margin:8px 0;overflow-y:auto}.select-item{cursor:pointer;color:var(--text-primary);border-radius:4px;padding:6px 12px}.select-item:hover{background:var(--bg-hover)}.dialog-separator{border:0;border-top:1px solid var(--border);margin:14px 0}.dialog-radio-group{flex-direction:column;display:flex}.dialog-subheading{color:var(--text-muted);font-size:var(--font-size-sm,.85em);text-transform:uppercase;letter-spacing:.04em;margin:6px 0 2px;font-weight:500}.dialog-radio-option{color:var(--text-primary);font-size:var(--font-size-base);cursor:pointer;align-items:center;gap:8px;padding:4px 0;display:flex}.dialog-radio-option input[type=radio]{margin:0}.dialog-radio-option:has(input:disabled){color:var(--text-muted)}.about-dialog{min-width:min(840px,100vw - 24px);max-width:min(840px,100vw - 24px);max-height:calc(100vh - 24px);overflow:auto}.about-dialog .dialog-buttons{margin-top:0;padding-top:12px;position:sticky;bottom:0}.about-header{align-items:center;gap:16px;margin-bottom:16px;display:flex}.about-logo{object-fit:contain;flex:none;width:72px;height:72px}.about-summary h2{font-size:var(--font-size-xl);margin:0 0 6px;font-style:italic;font-weight:400}.about-summary p{color:var(--text-secondary);margin:0}.about-meta{gap:8px;margin-bottom:16px;display:grid}.about-meta-row{grid-template-columns:8em 1fr;align-items:start;gap:12px;display:grid}.about-meta-label{color:var(--text-muted)}.about-licenses{grid-template-columns:220px minmax(0,1fr);gap:16px;display:grid}.about-trademark{color:var(--text-muted);margin:16px 0 0;font-size:.85em;line-height:1.5}.about-license-list h3{margin:0 0 10px;font-style:italic;font-weight:400}.about-license-buttons{flex-direction:column;gap:8px;display:flex}.about-license-button{text-align:left;background:var(--bg-dialog);flex-direction:column;align-items:flex-start;gap:2px;width:100%;display:flex}.about-license-button.active{border-color:var(--accent);background:var(--bg-active)}.about-license-button-label{color:var(--text-primary)}.about-license-button-caption{font-size:var(--font-size-sm);color:var(--text-muted)}.about-license-viewer{flex-direction:column;gap:10px;min-width:0;min-height:0;display:flex}.about-license-title{color:var(--text-secondary);opacity:0}.about-license-text{background:var(--bg-dialog);border:1px solid var(--border);min-height:0;color:var(--text-primary);font-family:var(--font-code);font-size:var(--font-size-sm);white-space:pre-wrap;border-radius:6px;flex:none;margin:0;padding:12px;line-height:1.45;overflow:auto}@media (max-width:720px){.about-dialog{min-width:min(520px,100vw - 16px);max-width:min(520px,100vw - 16px)}.about-licenses{grid-template-columns:1fr;min-height:0}.about-license-viewer{min-height:280px}}.brand-menu{min-width:160px;padding:4px 0}.brand-menu-list{flex-direction:column;display:flex}.brand-menu-item{color:var(--text-primary);font-size:var(--font-size-base);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:6px 16px;display:flex}.brand-menu-item:hover{background:var(--bg-hover)}.brand-menu-item .codicon{color:inherit}.overflow-menu{min-width:180px;padding:4px 0}.overflow-menu-list{flex-direction:column;display:flex}.overflow-menu-section{font-size:var(--font-size-sm);color:var(--text-muted);-webkit-user-select:none;user-select:none;padding:6px 16px 2px}.overflow-menu-check{font-size:var(--font-size-base);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:6px 16px;display:flex}.overflow-menu-check:hover{background:var(--bg-hover)}.overflow-menu-check input[type=checkbox]{accent-color:var(--accent);margin:0}.reset-project-message{color:var(--text-secondary);font-size:var(--font-size-base);margin:0 0 4px;line-height:1.5}dialog button.backup-btn{justify-content:center;align-items:center;gap:6px;display:flex}dialog button.danger-btn{background:var(--danger);color:#fff;border-color:var(--danger)}.rom-info-pre{font-family:var(--font-code);font-size:var(--font-size-sm);color:var(--text-secondary);white-space:pre;margin:0 0 4px;line-height:1.6;overflow-x:auto}.patch-save-dialog{min-width:320px}.patch-save-dialog .dialog-input-row select{border:1px solid var(--border);background:var(--bg-input,var(--bg-primary));color:var(--text-primary);font-size:var(--font-size-base);border-radius:4px;padding:6px 8px}.share-dialog{min-width:min(620px,100vw - 24px);max-width:min(620px,100vw - 24px)}.share-terms{border:1px solid var(--border);background:var(--bg-primary);border-radius:4px;margin-bottom:12px;padding:10px 12px}.share-terms-heading{font-size:var(--font-size-base);color:var(--text-primary);margin-bottom:6px}.share-terms-text{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.8}.share-terms-text strong{padding-left:2rem}.share-terms-text:last-of-type{margin-bottom:8px}.share-terms-accept{cursor:pointer;font-size:var(--font-size-base);color:var(--text-primary);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:6px;display:flex}.share-terms-accept input{accent-color:var(--accent);margin:0}.share-file-list{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.share-file-row{cursor:pointer;font-size:var(--font-size-base);border-radius:4px;align-items:center;gap:8px;padding:4px 6px;display:flex}.share-file-row:hover{background:var(--bg-hover)}.share-file-row input[type=checkbox]{flex-shrink:0;margin:0}.share-file-row .codicon{color:inherit;flex-shrink:0}.share-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.share-file-size{color:var(--text-muted);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;flex-shrink:0}.share-optional-row{border-top:1px solid var(--border);margin-top:4px;padding-top:8px}.share-size-bar{align-items:center;gap:8px;margin:12px 0 8px;display:flex}.share-size-bar progress{-webkit-appearance:none;appearance:none;background:var(--bg-primary);border:none;border-radius:3px;flex:1;height:6px}.share-size-bar progress::-webkit-progress-bar{background:var(--bg-primary);border-radius:3px}.share-size-bar progress::-webkit-progress-value{background:var(--accent);border-radius:3px}.share-size-text{font-size:var(--font-size-sm);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.share-size-over{color:var(--danger)}.share-message{color:var(--text-secondary);font-size:var(--font-size-base);margin:8px 0 0}.share-error{color:var(--danger);font-size:var(--font-size-sm);word-break:break-all}.share-url-row{margin-bottom:12px}.share-url-row label{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:4px;display:block}.share-url-input-row{gap:4px;display:flex}.share-url-input-row input[type=text]{min-width:0;font-size:var(--font-size-sm);font-family:var(--font-code);flex:1}.share-url-input-row button{flex-shrink:0}.share-hint{font-size:var(--font-size-sm);color:var(--text-muted);margin:4px 0 0}.delete-page{color:var(--text-primary);background:var(--bg-primary);flex-direction:column;grid-area:1/1/-1/-1;justify-content:center;align-items:center;padding:24px;display:flex}.delete-card{background:var(--bg-dialog);border:1px solid var(--border);width:100%;max-width:420px;box-shadow:0 8px 24px var(--shadow-color);border-radius:8px;padding:24px}.delete-card h2{font-size:var(--font-size-xl);margin:0 0 16px;font-style:italic;font-weight:400}.delete-card label{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:4px;display:block}.delete-card input[type=text]{background:var(--bg-primary);width:100%;color:var(--text-primary);border:1px solid var(--border);font-size:var(--font-size-base);font-family:var(--font-code);box-sizing:border-box;border-radius:4px;outline:none;margin-bottom:12px;padding:6px 10px}.delete-card input[type=text]:focus{border-color:var(--accent)}.delete-card .delete-status{font-size:var(--font-size-sm);min-height:1.2em;margin-top:8px}.delete-card .delete-status.success{color:var(--success)}.delete-card .delete-status.error{color:var(--danger)}.delete-action-btn{border:1px solid var(--danger);background:var(--danger);color:#fff;cursor:pointer;width:100%;font-size:var(--font-size-base);border-radius:4px;padding:8px 16px}.delete-action-btn:disabled{opacity:.4;cursor:default}
