.patcher-page{max-width:1240px;margin:2rem auto;font:16px system-ui,sans-serif;color:#e5e7eb;padding:0 1rem}.local-note{color:#a78bfa}.file-drop{border:2px dashed #34383f;border-radius:10px;padding:1rem;margin:1rem 0;min-height:100px;background:#202328}.file-drop strong{margin-right:1rem}.file-drop input{display:none}.file-drop button,.apply,.success button,.choose-patch{padding:.55rem .85rem;cursor:pointer;border:none;border-radius:8px;background:#7529f1;color:#fff;font-weight:600}.file-drop button:hover,.apply:not(:disabled):hover,.success button:hover,.choose-patch:hover{background:#8b3ff7}.file-drop p{color:#9ca3af}.apply{margin:1rem 0}.apply:disabled{cursor:not-allowed;opacity:.55}.error{border-left:4px solid #f87171;background:#2a1517;padding:1rem;color:#fca5a5;border-radius:8px}.success{margin-top:1rem;padding:1rem;background:#14231a;border:1px solid #2f7a4f;border-radius:8px}.compatible{margin:1rem 0;padding:1rem;border:1px solid #6d3fc9;background:#241a38;border-radius:8px}.compatible h2{margin-top:0;color:#e5e7eb}.compatible small{color:#9ca3af}.choose-patch{display:block;margin-top:.5rem;padding:.4rem .65rem;cursor:pointer;border:none;border-radius:8px;background:#7529f1;color:#fff;font-weight:600}.choose-patch:hover{background:#8b3ff7}.rom-signatures{margin:1rem 0;padding:1rem;background:#202328;border:1px solid #34383f;border-radius:8px}.rom-signatures h2{margin-top:0;color:#e5e7eb}.rom-signatures dl{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0}.rom-signatures dt{font-weight:700;color:#d1d5db}.rom-signatures dd{margin:0;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#e5e7eb}.patcher-layout{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:1.5rem;align-items:start}.patcher-left{padding-bottom:96px}.patcher-right{border:1px solid #34383f;border-radius:10px;padding:1rem;background:#202328;max-height:85vh;overflow-y:auto}.patcher-right h2{margin-top:0;color:#e5e7eb}.catalog-groups{display:flex;flex-direction:column;gap:1.25rem}.catalog-group h3{margin:0 0 .5rem;color:#f8fafc;border-bottom:1px solid #34383f;padding-bottom:.3rem}.catalog-card{border:1px solid #34383f;background:#24272c;border-radius:8px;padding:.7rem;margin-bottom:.6rem}.catalog-card.selected{border-color:#7529f1;box-shadow:0 0 0 1px #7529f1}.catalog-card.grayed{opacity:.55;background:#1f2227}.catalog-card.grayed img{filter:grayscale(1)}.catalog-card-head{display:flex;gap:.75rem}.catalog-card-head img{width:96px;height:72px;object-fit:cover;border:1px solid #34383f;border-radius:4px;background:#2a2d33;flex:0 0 auto}.catalog-no-image{width:96px;height:72px;border:1px dashed #6b7280;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.75rem;text-align:center}.catalog-card h4{margin:0 0 .2rem;font-size:.95rem;color:#f8fafc}.catalog-meta{margin:0;color:#9ca3af;font-size:.8rem}.catalog-desc{color:#d1d5db;font-size:.85rem;margin:.5rem 0 0;white-space:pre-line}.catalog-required{color:#fbbf24;font-size:.8rem;margin:.5rem 0 0;border-top:1px dashed #b45309;padding-top:.4rem}@media(max-width:900px){.patcher-layout{grid-template-columns:1fr}}.iso-progress-track{width:100%;height:10px;overflow:hidden;border-radius:999px;background:#111827;border:1px solid #4b5563}.xdelta-status{margin:10px 0 6px;color:#fbbf24;font-size:.92rem}.xdelta-status.ready{color:#86efac}.iso-progress-fill{height:100%;min-width:0;border-radius:inherit;background:linear-gradient(90deg,#f59e0b,#f97316,#a855f7);transition:width .18s ease-out}.iso-progress-fill.indeterminate{width:35%;animation:iso-progress-slide 1.1s ease-in-out infinite alternate}@keyframes iso-progress-slide{0%{transform:translate(-100%)}to{transform:translate(290%)}}.site-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:28px;padding:18px clamp(20px,4vw,56px);background:#111827;border-bottom:3px solid #7529F1;color:#f8fafc;font-family:system-ui,sans-serif}.site-brand{color:#f8fafc;text-decoration:none;font-weight:800;letter-spacing:.02em}.brand-name{font-size:1.3rem;color:#f8fafc}.brand-patch{color:#a78bfa}.site-header nav{display:flex;flex-wrap:wrap;gap:8px}.site-header nav a{padding:10px 15px;border-radius:8px;color:#e2e8f0;text-decoration:none}.site-header nav a:hover{background:#334155}.site-header nav a[aria-current=page]{color:#fff;background:#7529f1;font-weight:700}.lang-switch{display:inline-flex;border:1px solid #34383f;border-radius:8px;overflow:hidden}.lang-switch button{background:#1b1d21;color:#9ca3af;border:none;padding:7px 12px;cursor:pointer;font-weight:700;font-size:.85rem}.lang-switch button.active{background:#7529f1;color:#fff}.lang-switch button+button{border-left:1px solid #34383f}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.account-actions{display:flex;align-items:center;gap:12px;padding-left:18px;border-left:1px solid #34383f}.profile-link{color:#e5e7eb;text-decoration:none;font-weight:700;font-size:.88rem;display:inline-flex;align-items:center;gap:7px}.profile-link img{width:30px;height:30px;border-radius:50%}.admin-link{color:#fbbf24;text-decoration:none;font-weight:800;font-size:.86rem;padding:8px 10px;border-radius:8px;background:#fbbf241a;display:inline-flex;align-items:center;gap:7px}.admin-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-grid;place-items:center;background:#ef4444;color:#fff;font-size:.7rem;line-height:1}.account-actions button{color:#9ca3af;background:none;border:none;cursor:pointer;font-size:.82rem;padding:8px}.google-signin{display:inline-flex;align-items:center;gap:9px;padding:10px 15px;border:1px solid #596273;color:#f8fafc;text-decoration:none;border-radius:9px;font-weight:700;font-size:.86rem;white-space:nowrap}.google-signin span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;color:#4285f4;font-weight:900}.site-header a:focus-visible{outline:3px solid #facc15;outline-offset:3px}.site-skip{position:absolute;left:16px;top:-100px;padding:12px;background:#fff;color:#111827;z-index:10}.site-skip:focus{top:8px}@media(max-width:540px){.site-header{padding:16px 14px;gap:14px}.site-header nav{width:100%}.site-header nav a{padding:10px}.header-actions{width:100%;justify-content:space-between;gap:10px}.account-actions{padding-left:0;border-left:0}}:root{color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:#050509;color:#e5e7eb;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{background-image:radial-gradient(ellipse 52% 48% at -4% -8%,rgba(100,36,224,.46),transparent 72%),radial-gradient(ellipse 47% 48% at -8% 94%,rgba(91,25,214,.54),transparent 74%),radial-gradient(ellipse 54% 52% at 104% 96%,rgba(91,25,214,.48),transparent 74%),radial-gradient(ellipse 38% 45% at 98% 2%,rgba(45,12,111,.24),transparent 75%);background-attachment:fixed}#root{min-height:100vh;background:radial-gradient(ellipse 58% 42% at 50% 48%,rgba(0,0,0,.58),transparent 78%)}a{color:#a78bfa}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#2a2d33;padding:1px 5px;border-radius:4px}.chip{display:inline-block;background:#24272c;border:1px solid #34383f;border-radius:999px;padding:4px 12px;font-size:.8rem;color:#d1d5db}.kofi-button{display:inline-flex;align-items:center;padding:10px 18px;border-radius:8px;background:#7529f1;color:#fff;font-weight:700;text-decoration:none}.kofi-button:hover{background:#8b3ff7}label:has(input[multiple][accept*=".jpg"]):after{content:"Tip: select multiple files at once to upload several screenshots or GIFs.";display:block;margin-top:.35rem;color:#9ca3af;font-size:.8rem}form:has(input[name=romCrc32]) label:has(input[name=author]){display:none}form:has(input[name=romCrc32]) label:has(select[name=patchFormat]){display:none}.community-upload{max-width:920px;margin:0 auto;padding:2.25rem 1.25rem 3rem;color:#e5e7eb}.community-back{display:inline-block;margin-bottom:1.25rem}.community-upload-heading{margin-bottom:1.35rem}.community-upload-heading>span{color:#a78bfa;font-size:.75rem;font-weight:800;letter-spacing:.08em}.community-upload-heading h1{margin:.25rem 0 .35rem;font-size:clamp(1.75rem,4vw,2.35rem)}.community-upload-heading p,.community-help{color:#aab2c0;margin:0;line-height:1.55}.community-upload-form{display:grid;gap:16px}.community-upload-card{padding:20px;border:1px solid #383d46;border-radius:14px;background:linear-gradient(145deg,#22262c,#1d2025);box-shadow:0 14px 34px #00000029}.community-upload-card h2{margin:0 0 16px;font-size:1.15rem}.community-upload-card summary{cursor:pointer;font-weight:800;font-size:1.1rem}.community-upload-card summary small{margin-left:8px;color:#9ca3af;font-size:.8rem;font-weight:400}.community-upload-card label{display:grid;gap:6px;color:#e5e7eb;font-size:.9rem;font-weight:650}.community-upload-card label>small,.community-file-label small{color:#9ca3af;font-size:.78rem;font-weight:400}.community-upload-card input:not([type=file]),.community-upload-card textarea,.community-upload-card select{width:100%;box-sizing:border-box;padding:10px 12px;background:#14161a;color:#f8fafc;border:1px solid #414752;border-radius:8px;font:inherit}.community-upload-card textarea{resize:vertical;min-height:105px}.community-upload-card input:focus,.community-upload-card textarea:focus,.community-upload-card select:focus{outline:2px solid #8546f7;outline-offset:1px;border-color:transparent}.community-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}.community-upload-wide{grid-column:span 2}.community-local-rom{margin:14px 0;padding:12px;border-radius:9px;border:1px dashed #535b68;background:#191b20}.community-file-label{padding:13px;border:1px dashed #566071;border-radius:10px;background:#181a1f}.community-file-label+.community-file-label{margin-top:14px}.community-upload-status{margin:14px 0;padding:12px 14px;border-radius:9px;border-left:4px solid #64748b;background:#171b22;line-height:1.45}.community-upload-status.success{border-left-color:#34d399;background:#10251f;color:#bbf7d0}.community-upload-status.error{border-left-color:#fb7185;background:#30171c;color:#fecdd3;font-weight:700}.community-gallery-order{display:grid;gap:8px;margin-top:14px}.community-gallery-order>div{display:flex;gap:9px;align-items:center;padding:8px;border-radius:9px;background:#17191d;border:1px solid #343943}.community-gallery-order img{width:82px;height:56px;object-fit:cover;border-radius:5px}.community-gallery-order span{min-width:0;flex:1;display:grid;gap:3px}.community-gallery-order small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aab2c0}.community-gallery-order button{padding:5px 8px}.community-publish{width:100%;min-height:46px;font-size:1rem}.community-terms-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px;background:#000000bf}.community-terms-modal{width:min(580px,100%);padding:24px;border:1px solid #7040d5;border-radius:14px;background:#202328;box-shadow:0 25px 80px #000000a6;color:#e5e7eb}.community-terms-modal h2{margin-top:0}.community-terms-modal p{color:#cbd5e1;line-height:1.55}.community-terms-modal label{display:flex;gap:9px;align-items:flex-start;margin:18px 0;font-weight:700}.community-terms-modal label input{margin-top:3px}.community-terms-modal>div{display:flex;justify-content:flex-end;gap:10px}.community-terms-modal>div button{width:auto;min-height:42px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.community-terms-modal .apply{min-height:42px}.community-manage-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.community-manage-actions button{width:auto;height:42px;min-height:42px;margin:0;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;white-space:nowrap}.community-manage-actions .apply,.community-version-form .apply{width:auto;min-height:42px}.community-manage-actions .apply{margin:0}.community-danger{border:1px solid #dc2626;color:#fecaca;background:#45171a}.community-danger:hover{background:#651d22}.community-version-form{display:grid;gap:12px}.community-version-history{margin-top:20px;padding-top:14px;border-top:1px solid #343943}.community-version-history h3{margin:0 0 8px;font-size:1rem}.community-version-history p{margin:7px 0;color:#d1d5db}.community-maintainers{display:grid;gap:8px;margin-top:16px}.community-maintainers p{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:10px 12px;border:1px solid #343943;border-radius:8px;background:#17191d}@media(max-width:680px){.community-upload-grid{grid-template-columns:1fr}.community-upload-wide{grid-column:auto}.community-gallery-order>div{flex-wrap:wrap}}
