:root{--accent:#f6a;--accent-strong:#f04f98;--accent-light:#ff8fc3;--accent-muted:#ff66aa7a;--accent-soft:#ff66aa29;--bg:#07070a;--border:#ffffff14;--border-strong:#ff66aa38;--danger:#ff6f9f;--heading:#fbf7fa;--input:#111116;--muted:#9d96a0;--muted-soft:#67606a;--panel:#0d0d12;--panel-solid:#0b0b10;--row:#101017;--row-hover:#15121a;--surface:#15151d;--surface-strong:#1d1b24;--text:#ece7eb;--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow:0 18px 70px #00000057;color:var(--text);background:var(--bg);font:16px/1.5 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}h1,h2,p{margin:0}h1,h2{color:var(--heading);line-height:1.05}h1{letter-spacing:-.06em;max-width:760px;margin-bottom:12px;font-size:clamp(34px,6vw,68px)}h2{letter-spacing:-.04em;font-size:clamp(24px,3vw,34px)}a{color:inherit}.app-shell{width:100%;padding:0 100px 32px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.control-panel{z-index:10;border:1px solid var(--border-strong);background:var(--panel-solid);border-top:0;border-radius:0 0 18px 18px;gap:10px;margin-bottom:12px;padding:12px;display:grid;position:sticky;top:0;box-shadow:0 12px 28px #0000002e}.primary-controls,.advanced-filters{gap:10px;display:grid}.primary-controls{grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(118px,.8fr)) minmax(118px,.7fr) 72px auto;align-items:end}.form-actions{gap:10px;display:flex}.advanced-filters{border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(170px,1fr)) auto;align-items:stretch;padding-top:10px}.field,.range-field,.slider-field{gap:7px;display:grid}.field span,.range-field>span,.slider-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.range-field{grid-template-columns:1fr 1fr}.range-field>span{grid-column:1/-1}input,select{border:1px solid var(--border);background:var(--input);width:100%;min-height:40px;color:var(--text);font:inherit;border-radius:12px;outline:none;padding:9px 11px}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=range]{min-height:18px;accent-color:var(--accent);pointer-events:none;background:0 0;border:0;padding:0}input[type=range]:focus{box-shadow:none}input::placeholder{color:var(--muted-soft)}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.check-field{min-height:40px;color:var(--text);white-space:nowrap;align-items:center;gap:9px;font-size:13px;font-weight:700;display:flex}.check-field input{width:16px;min-height:16px;accent-color:var(--accent)}button,.row-actions a{cursor:pointer;font:inherit;border:0;border-radius:12px;font-weight:800;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.5}.primary-button,.ghost-button{place-items:center;width:42px;min-height:40px;padding:9px;display:grid}.primary-button svg,.ghost-button svg{fill:currentColor;width:18px;height:18px}.primary-button{background:var(--accent);color:#f5eef3}.primary-button:not(:disabled):hover{background:var(--accent-strong)}.ghost-button{border:1px solid var(--border);background:var(--surface);color:var(--text)}.ghost-button:hover{border-color:var(--accent-muted);color:var(--accent-light)}.spinner-icon{animation:.85s linear infinite spin}@keyframes spin{to{rotate:360deg}}.advanced-toggle{border:1px solid var(--border);background:var(--surface);width:32px;min-height:22px;color:var(--accent-light);border-radius:999px;justify-content:center;justify-self:center;align-items:center;padding:0;display:grid}.advanced-toggle:hover{border-color:var(--accent-muted);background:var(--surface-strong)}.advanced-toggle svg{fill:currentColor;width:16px;height:16px}.slider-field{border:1px solid var(--border);background:var(--surface);border-radius:14px;grid-template-columns:auto auto minmax(76px,1fr) auto;align-items:center;gap:8px;padding:9px 10px}.slider-field strong{color:var(--text);white-space:nowrap;font-size:12px;font-weight:850}.dual-slider{align-items:center;height:28px;display:grid;position:relative}.dual-slider:before,.dual-slider:after{content:"";border-radius:999px;height:4px;position:absolute;left:0;right:0}.dual-slider:before{background:var(--input)}.dual-slider:after{right:var(--range-right);left:var(--range-left);background:var(--accent)}.dual-slider input{z-index:1;position:absolute}.dual-slider input::-webkit-slider-thumb{z-index:2;border:2px solid var(--heading);appearance:none;background:var(--accent);cursor:pointer;pointer-events:auto;border-radius:50%;width:16px;height:16px;position:relative}.dual-slider input::-webkit-slider-runnable-track{background:0 0;height:4px}.dual-slider input::-moz-range-thumb{z-index:2;border:2px solid var(--heading);background:var(--accent);cursor:pointer;pointer-events:auto;border-radius:50%;width:14px;height:14px;position:relative}.dual-slider input::-moz-range-track{background:0 0;border:0;height:4px}.turnstile-hidden{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.results-panel{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);border-radius:18px;padding:12px}.error-text{color:var(--danger);background:#ff4a8617;border:1px solid #ff4a8652;border-radius:14px;margin:0 8px 14px;padding:12px 14px;font-weight:700}.source-card{border:1px solid var(--border);background:var(--surface);border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px;padding:14px;display:flex}.source-main{gap:6px;min-width:0;display:grid}.source-main span,.source-card small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.source-card>strong{border:1px solid var(--accent-muted);background:var(--accent);color:#f5eef3;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:28px;padding:6px 10px;font-size:11px;font-weight:900;display:inline-flex}.source-card a{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:850;text-decoration:none;overflow:hidden}.source-card a:hover,.map-title:hover,.match-line a:hover{color:var(--accent-light)}.result-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.beatmap-row{border:1px solid var(--border);background:var(--row);border-radius:20px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;min-height:92px;padding:10px;display:grid;position:relative;overflow:hidden}.beatmap-row:hover,.beatmap-row:focus-within{border-color:var(--accent-muted);background:var(--row-hover)}.cover-link{background:var(--surface);border-radius:14px;height:96px;display:block;overflow:hidden}.cover-link img,.cover-placeholder{width:100%;height:100%;display:block}.cover-link img{object-fit:cover}.cover-placeholder{color:var(--accent-light);place-items:center;font-size:20px;font-weight:900;display:grid}.map-content{grid-template-columns:minmax(0,.76fr) minmax(198px,.86fr);align-items:center;gap:12px;min-width:0;display:grid}.map-main{min-width:0;min-height:78px;padding:2px 0;position:relative}.title-line{align-items:center;gap:9px;min-width:0;display:flex}.map-title{min-width:0;color:var(--heading);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:17px;font-weight:850;text-decoration:none;overflow:hidden}.artist-line{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13px;font-weight:750;overflow:hidden}.version-line{color:var(--muted-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;font-weight:700;overflow:hidden}.version-line span:first-child{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.match-pill{color:#f5eef3;white-space:nowrap;background:#d65c94c7;border:1px solid #ffffff24;border-radius:999px;justify-content:center;justify-self:start;align-items:center;min-width:46px;padding:3px 7px;font-size:11px;font-weight:800;display:inline-flex}.match-line{color:var(--muted-soft);flex-wrap:nowrap;align-items:center;gap:6px 10px;margin-top:8px;font-size:11px;font-weight:650;display:flex;overflow:hidden}.match-line a,.match-line>span:last-child{min-width:0;color:var(--muted-soft);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.status-label{color:#f5eef3;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#5f5b64;border:1px solid #ffffff1f;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:20px;padding:3px 7px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.status-ranked{background:#a3873d}.status-loved{background:#8361c9}.stat-strip{justify-content:flex-end;align-items:center;gap:14px;min-width:198px;display:flex}.stat-row{align-items:center;gap:12px;display:flex}.stat-row-main{gap:6px}.stat-row-sub{flex-direction:column;align-items:stretch;gap:7px}.stat-side{align-items:center;gap:12px;display:flex}.row-actions{flex-direction:column;align-items:center;gap:5px;display:flex}.stat-row-sub .stat-item{text-align:left;grid-template-columns:auto auto;justify-content:start;align-items:baseline;gap:5px;min-width:0}.stat-item{text-align:center;align-content:center;justify-items:center;gap:1px;min-width:34px;display:grid}.stat-item span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:850}.stat-item strong{color:var(--text);font-size:13px;line-height:1}.featured-stat{min-width:50px}.featured-stat strong{color:var(--heading);letter-spacing:-.03em;font-size:17px;font-weight:900}.row-actions button,.row-actions a{border:1px solid var(--border);background:var(--surface-strong);width:28px;min-height:28px;color:var(--text);opacity:0;pointer-events:none;text-align:center;place-items:center;padding:6px;line-height:1;transition:opacity .12s,border-color .12s,background .12s,color .12s;display:grid}.beatmap-row:hover .row-actions button,.beatmap-row:hover .row-actions a,.beatmap-row:focus-within .row-actions button,.beatmap-row:focus-within .row-actions a{opacity:1;pointer-events:auto}.row-actions svg{fill:currentColor;width:15px;height:15px}.row-actions button:hover,.row-actions a:hover{border-color:var(--accent-muted);background:var(--accent);color:#f5eef3}@media (width<=1180px){.primary-controls{grid-template-columns:repeat(4,minmax(130px,1fr))}.advanced-filters{grid-template-columns:repeat(2,minmax(170px,1fr))}.beatmap-field{grid-column:span 2}.beatmap-row{grid-template-columns:96px minmax(0,1fr)}}@media (width<=1080px){.result-list{grid-template-columns:1fr}}@media (width<=760px){.app-shell{padding:0 12px 24px}.control-panel{border-radius:0 0 16px 16px}.results-panel{border-radius:16px}.primary-controls,.advanced-filters{grid-template-columns:1fr 1fr}.beatmap-field,.status-field{grid-column:1/-1}.primary-button,.ghost-button{width:100%}.form-actions{grid-template-columns:1fr 1fr;display:grid}.beatmap-row{grid-template-columns:86px minmax(0,1fr);gap:12px;padding:10px}.map-content{grid-template-columns:minmax(0,1fr);gap:12px}.cover-link{height:86px}.stat-strip{min-width:0}.featured-stat{min-width:44px}}@media (width<=680px){.result-list{grid-template-columns:1fr}}@media (width<=480px){.primary-controls,.advanced-filters,.beatmap-row{grid-template-columns:1fr}.beatmap-field,.status-field{grid-column:auto}.cover-link{height:92px}.map-content{grid-template-columns:1fr}.map-main{min-height:0}.source-card{flex-direction:column;align-items:flex-start}.source-card>strong{align-self:flex-end}.stat-row{justify-content:space-between}.stat-strip{justify-content:space-between;min-width:0}.stat-row-main{flex:auto}.stat-row-sub{flex:none}}
