@font-face{font-family:__Press_Start_2P_6d0c14;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dbbdd2d89d2ef0ef-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Press_Start_2P_6d0c14;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a06229eb79a83cfc-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Press_Start_2P_6d0c14;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c9e224327ce7933e-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Press_Start_2P_6d0c14;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d85064eaed4b8683-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Press_Start_2P_6d0c14;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/db234bd00cda6a96-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Press_Start_2P_Fallback_6d0c14;src:local("Arial");ascent-override:44.58%;descent-override:0.00%;line-gap-override:0.00%;size-adjust:224.32%}.__className_6d0c14{font-family:__Press_Start_2P_6d0c14,__Press_Start_2P_Fallback_6d0c14;font-weight:400;font-style:normal}.__variable_6d0c14{--font-pixel:"__Press_Start_2P_6d0c14","__Press_Start_2P_Fallback_6d0c14"}:root{--accent:#cb3837;--link:#0b6e75;--text:#1f2933;--muted:#6b7280;--border:#e6e6e6;--bg-soft:#fafafa;--chip:#f0f3f4}*{box-sizing:border-box}body,html{margin:0;padding:0;color:var(--text);background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.mono,code{font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.site-header{border-bottom:1px solid var(--border)}.header-inner{max-width:1024px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:12px 24px}@font-face{font-family:ZX Spectrum;src:url(/fonts/zx-spectrum.woff2) format("woff2");font-display:swap}.brand{display:inline-flex;align-items:center;gap:11px;white-space:nowrap}.brand:hover{text-decoration:none}.brand-word{font-family:"ZX Spectrum",var(--font-pixel),ui-monospace,monospace;font-size:14px;color:var(--muted);letter-spacing:1px;display:inline-block;width:92px;white-space:nowrap;overflow:hidden}.brand-word b{color:var(--text);font-weight:400}.zx-flash{display:inline-flex;gap:0;transform:skewX(-14deg)}.zx-flash i{display:block;width:9px;height:26px}.zx-flash i:first-child{background:red}.zx-flash i:nth-child(2){background:#ff0}.zx-flash i:nth-child(3){background:#0f0}.zx-flash i:nth-child(4){background:#00f}.search{display:flex;flex:1 1;max-width:720px}.search input{flex:1 1;padding:9px 12px;border:1px solid var(--border);border-right:none;border-radius:4px 0 0 4px;font-size:15px}.search button{padding:9px 16px;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:0 4px 4px 0;cursor:pointer}.nav-link{white-space:nowrap;font-weight:600}.container{max-width:1024px;margin:0 auto;padding:24px}.prose{max-width:760px;line-height:1.65}.prose h1{font-size:26px}.prose h2{font-size:18px;margin-top:28px}.prose code{background:#eef0f1;padding:1px 5px;border-radius:3px;font-size:.9em}.prose ol,.prose ul{padding-left:22px}.faq dt{font-weight:600;margin-top:14px}.faq dd{margin:4px 0 0;color:#333}.wizard{max-width:820px}.submit-box{border:1px solid var(--border);border-radius:6px;padding:16px;margin:16px 0 28px;background:var(--bg-soft)}.submit-box h2{margin-top:0}.submit-box .admin-form{margin-bottom:0}.wizard-errors{background:#fdeeee;border:1px solid #e3b3b3;border-radius:6px;padding:12px 16px;margin:16px 0;color:var(--accent)}.wizard-errors ul{margin:6px 0 0;padding-left:20px}.wizard-out{margin-top:24px}.wizard-out-head{display:flex;align-items:baseline;justify-content:space-between}.wizard-out-actions{display:inline-flex;gap:12px;align-items:center}.copy-btn{padding:5px 12px;border:1px solid var(--border);background:var(--bg-soft);border-radius:4px;cursor:pointer;font-size:13px}.wizard-out pre{background:#1f2933;color:#e6edf3;padding:16px;border-radius:6px;overflow-x:auto;font-size:13px}.wizard-help{background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;padding:12px 16px;margin-top:12px;font-size:14px}.wizard-help ul{margin:8px 0;padding-left:20px}.wizard-help li{margin:4px 0}.wizard-help code{background:#eef0f1;padding:1px 5px;border-radius:3px}.pkg-list mark{background:color-mix(in srgb,var(--accent) 26%,transparent);color:inherit;border-radius:3px;padding:0 2px;font-weight:600}.setup-picker{margin:4px 0 14px}.setup-q{margin:0 0 8px;font-size:15px;font-weight:600}.setup-opts{display:flex;flex-wrap:wrap;gap:8px}.setup-opt{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid var(--border);border-radius:999px;background:var(--bg);font-size:14px;text-decoration:none;color:inherit}.setup-opt.on,a.setup-opt:hover{border-color:var(--accent)}.setup-opt.on{background:color-mix(in srgb,var(--accent) 14%,transparent);font-weight:600}.setup-opt.all{color:var(--muted);cursor:default}.setup-count{font-size:12px;color:var(--muted)}.setup-opt.on .setup-count{color:inherit}.setup-x{font-size:15px;line-height:1;opacity:.65}.more-filters{margin-bottom:10px}.more-filters>summary{cursor:pointer;font-size:13px;color:var(--muted);padding:4px 0;width:max-content}.more-filters>summary:hover{color:var(--accent)}.filter-form,.more-filters[open]>summary{margin-bottom:8px}.filter-row{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}.filter-form label{display:flex;flex-direction:column;font-size:13px;color:var(--muted);gap:4px}.filter-form select{padding:6px 8px}.filter-form button,.filter-form select{border:1px solid var(--border);border-radius:4px}.filter-form button{padding:7px 14px;background:var(--bg-soft);cursor:pointer}.filter-clear{font-size:13px;color:var(--muted);align-self:center}.hw-filter{margin:12px 0 0;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-soft)}.hw-filter legend{font-size:13px;font-weight:600;padding:0 6px}.hw-hint{margin:0 0 8px;font-size:12px;color:var(--muted);max-width:62ch}.hw-opts{display:flex;flex-wrap:wrap;gap:6px}.hw-opt{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--bg);font-size:13px;color:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hw-opt.on,.hw-opt:hover{border-color:var(--accent)}.hw-opt.on{background:color-mix(in srgb,var(--accent) 12%,transparent);font-weight:600}.hw-count{font-size:11px;color:var(--muted)}.home-intro{font-size:15px;color:#333;margin:4px 0 16px;max-width:760px}.results-heading{font-size:18px;margin:16px 0;font-weight:600}.results-heading .count{color:var(--muted);font-weight:400;font-size:14px}.pkg-list{list-style:none;margin:0;padding:0}.pkg-card{padding:16px 0;border-bottom:1px solid var(--border)}.pkg-name{font-size:18px;font-weight:600}.pkg-version{color:var(--muted);font-size:13px;margin-left:8px}.pkg-desc{margin:6px 0;color:#333}.pkg-author{color:var(--muted);font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip{background:var(--chip);border-radius:12px;padding:2px 10px;font-size:12px;color:#2b3a3a}.chip-os{background:#e7f2f3}.chip-need{background:#fbeee7}.chip-type{background:#ece7fb;color:#41338a;font-weight:600}.empty{color:var(--muted)}.pkg-page{display:grid;grid-template-columns:1fr 300px;grid-gap:40px;gap:40px}.pkg-head{display:flex;align-items:baseline;gap:12px}.pkg-head h1{margin:0;font-size:28px}.pkg-lead{color:#333;font-size:17px}.install-box{margin:20px 0;background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;padding:14px 16px}.install-label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.install-box code{font-size:15px}.versions{width:100%;border-collapse:collapse;margin-top:8px}.versions td,.versions th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);font-size:14px;vertical-align:top}.versions th{color:var(--muted);font-weight:500}.tag-latest{background:#def7e5;color:#1a7f37;border-radius:10px;padding:1px 8px;font-size:11px;margin-left:8px}.version-files{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.file-links{white-space:nowrap}.file-links .file-compat,.file-links .sig{color:var(--muted);font-size:12px;margin-left:4px}.artifact-row{border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-top:10px}.artifact-row>p{margin:0 0 6px}.artifact-actions{display:flex;gap:12px;align-items:center}.pkg-side section{padding:14px 0;border-top:1px solid var(--border)}.pkg-side section:first-child{border-top:none}.pkg-side h3{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 6px}.pkg-side p{margin:0;word-break:break-word}.side-install{display:block;background:var(--bg-soft);border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:13px}.crc-list{list-style:none;margin:0;padding:0;font-size:13px}.crc-list li{margin-bottom:4px}.muted{color:var(--muted);font-size:13px}.admin-top{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.admin-nav{display:flex;gap:16px;flex:1 1}.admin-nav a{font-size:14px}.admin-stats{color:var(--muted);font-size:13px;margin:2px 0 14px}.admin-tabs{display:flex;gap:6px;margin:18px 0 0;border-bottom:2px solid var(--border)}.admin-tabs a{padding:7px 16px;font-size:14px;border:1px solid var(--border);border-bottom:none;border-radius:6px 6px 0 0;color:var(--link);background:var(--bg-soft)}.admin-tabs a.active{background:var(--accent);border-color:var(--accent);color:#fff}.pkg-admin-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.pkg-admin-head h2{margin:0}.pkg-admin-badges{display:inline-flex;gap:6px}.linkish{background:none;border:none;color:var(--link);cursor:pointer;font-size:14px;padding:0}.admin-login{max-width:360px}.admin-form{display:flex;gap:8px;margin:12px 0 24px;flex-wrap:wrap}.admin-form input,.admin-form select,.admin-form textarea{padding:8px 10px;border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:14px}.admin-form textarea{resize:vertical}.admin-grid .grid-full,.admin-grid .os-select{grid-column:1/-1}.admin-form input[name=repo_url],.admin-form input[name=url]{flex:1 1;min-width:320px}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.admin-grid button,.admin-grid input[name=repo_url]{grid-column:1/-1}.admin-form button{padding:8px 16px;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:4px;cursor:pointer}.admin h2{font-size:16px;margin-top:24px}.os-select{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:8px 10px;border:1px dashed var(--border);border-radius:4px}.os-select label{font-size:14px;display:inline-flex;gap:5px;align-items:center;white-space:nowrap}.os-select .grp-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.override-edit{margin:8px 0 24px;padding:12px 14px;border:1px solid var(--accent);border-radius:6px;background:var(--bg-soft)}.lock-status{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.lock-status form{margin:0}.badge-ov{margin-left:6px;padding:1px 6px;font-size:10px;border-radius:3px;background:var(--accent);color:#fff}.badge-bin{background:#1a7f37;color:#fff}.badge-bin,.badge-meta{padding:1px 7px;font-size:11px;border-radius:3px}.badge-meta{background:var(--bg-soft);color:var(--muted);border:1px solid var(--border)}.badge-hidden{background:#b45309}.badge-hidden,.badge-removed{padding:1px 7px;font-size:11px;border-radius:3px;color:#fff}.badge-removed{background:#b91c1c}.admin-bulk{display:flex;align-items:center;gap:10px;margin:4px 0 12px}.admin-bulk form,.inline-form{display:inline;margin:0}.install-box-meta{display:flex;flex-direction:column;gap:4px;opacity:.95}.install-box-meta code{background:none;padding:0}.readme-edit{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.pkg-readme{margin:8px 0 24px;line-height:1.6}.pkg-readme h1,.pkg-readme h2,.pkg-readme h3{margin:18px 0 8px;line-height:1.25}.pkg-readme h1{font-size:22px}.pkg-readme h2{font-size:18px}.pkg-readme h3{font-size:16px}.pkg-readme p{margin:8px 0}.pkg-readme ol,.pkg-readme ul{margin:8px 0;padding-left:22px}.pkg-readme img{max-width:100%;height:auto;border-radius:4px;margin:8px 0;display:block}.pkg-readme pre{background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;padding:12px;overflow-x:auto}.pkg-readme code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.pkg-readme pre code{font-size:13px}.pkg-readme a{color:var(--accent)}.author-bio table,.pkg-readme table{display:block;overflow-x:auto;border-collapse:collapse;margin:12px 0;max-width:100%}.author-bio td,.author-bio th,.pkg-readme td,.pkg-readme th{text-align:left;padding:6px 12px 6px 0;border-bottom:1px solid var(--border);font-size:14px;vertical-align:top}.author-bio th,.pkg-readme th{font-weight:600;white-space:nowrap}.author-profile{display:flex;gap:20px;align-items:flex-start;margin:8px 0 24px;flex-wrap:wrap}.author-photo{margin:0;flex:0 0 auto;width:140px}.author-photo img{width:140px;height:140px;object-fit:cover;border-radius:8px;border:1px solid var(--border);display:block;background:var(--bg-soft)}.author-photo figcaption{margin-top:6px;font-size:11px;color:var(--muted);line-height:1.35}.author-intro{flex:1 1 320px;min-width:0}.author-intro h1{margin:0 0 8px;font-size:26px}.author-bio{line-height:1.6}.author-bio h1,.author-bio h2,.author-bio h3{margin:14px 0 6px;font-size:17px}.author-bio p{margin:8px 0}.author-bio ol,.author-bio ul{margin:8px 0;padding-left:22px}.author-bio a{color:var(--accent)}.author-links{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0 0;padding:0;font-size:14px}.author-links a{color:var(--accent)}.version-date{white-space:nowrap}.ok{color:#1a7f37}.repos{width:100%;border-collapse:collapse}.repos td,.repos th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);font-size:13px;vertical-align:top}.repos .err{color:var(--accent)}.row-actions{display:flex;gap:8px;align-items:center}.row-actions form{margin:0;display:inline}.row-actions button{padding:4px 10px;font-size:13px;border:1px solid var(--border);background:var(--bg-soft);border-radius:4px;cursor:pointer;color:var(--text)}.btn-danger{border-color:#e3b3b3;background:#fdeeee}.btn-danger,.btn-danger-link{color:var(--accent)}.confirm{border:1px solid #e3b3b3;background:#fdeeee;border-radius:6px;padding:14px 16px;margin:16px 0;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.confirm p{margin:0;flex:1 1;min-width:240px}.confirm form{margin:0}.confirm .btn-danger{padding:8px 16px;cursor:pointer}.confirm .cancel{color:var(--muted)}.admin-bar{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:8px 12px;background:var(--bg-soft);border:1px dashed var(--border);border-radius:6px;font-size:14px}.admin-bar>span{color:var(--muted);text-transform:uppercase;font-size:12px;letter-spacing:.5px}.admin-bar>span.badge-bin,.admin-bar>span.badge-hidden,.admin-bar>span.badge-meta,.admin-bar>span.badge-ov,.admin-bar>span.badge-removed{text-transform:none;letter-spacing:0;font-size:11px}.admin-bar>span.badge-bin,.admin-bar>span.badge-hidden,.admin-bar>span.badge-ov,.admin-bar>span.badge-removed{color:#fff}.pager{display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;margin:24px 0 8px}.pager a,.pager span{padding:6px 11px;border:1px solid var(--border);border-radius:4px;font-size:14px;min-width:20px;text-align:center}.pager a{color:var(--link);background:#fff}.pager a:hover{background:var(--bg-soft)}.pager .current{background:var(--accent);border-color:var(--accent);color:#fff}.pager .disabled{color:var(--muted);opacity:.5}.pager .gap{border:none;padding:6px 2px;color:var(--muted)}.site-footer{max-width:1024px;margin:40px auto 24px;padding:16px 24px 0;border-top:1px solid var(--border);color:var(--muted);font-size:13px}@media (max-width:800px){.pkg-page{grid-template-columns:1fr}.search{max-width:none}}