@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}.filter-form{display:flex;align-items:flex-end;gap:16px;margin-bottom:8px}.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}.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}.file-links{margin-right:10px;white-space:nowrap}.file-links .sig{color:var(--muted);font-size:12px;margin-left:4px}.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}.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{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{gap:14px;padding:8px 10px;border:1px dashed var(--border);border-radius:4px}.os-select,.os-select label{display:inline-flex;align-items:center}.os-select label{font-size:14px;gap:5px;white-space:nowrap}.os-select .grp-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.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}.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}}