@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#03040a;--ink:#eef1fb;--dim:#8e97b3;--faint:#5b647e;--gold:#ffd28a;--blue:#8fb4ff;--glass:#0a0d1a94;--line:#ffffff17;--font:"DM Sans Variable", system-ui, sans-serif}*{box-sizing:border-box;margin:0}html,body{background:var(--bg);height:100%;color:var(--ink);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased;overflow:hidden}#gl,#labels{width:100vw;height:100lvh;display:block;position:fixed;top:0;left:0}#gl{cursor:grab;outline:none}#gl:focus-visible{box-shadow:inset 0 0 0 2px #8fb4ff80}#labels{pointer-events:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:8px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body:after{content:"";pointer-events:none;background:radial-gradient(120% 90%,#0000 55%,#0000008c);position:fixed;inset:0}#app{pointer-events:none;z-index:2;position:fixed;inset:0}#app>*{pointer-events:auto}#app>.hero,#app>.tip,#app>.loading{pointer-events:none}.bar{pointer-events:none;opacity:0;justify-content:space-between;align-items:center;padding:18px 28px;transition:opacity 1.2s 1.4s;display:flex;position:absolute;inset:0 0 auto}.ready .bar{opacity:1}.bar>*{pointer-events:auto}.mark{color:var(--ink);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.mark img{flex:none;width:32px;height:32px;display:block}.bar-r{align-items:center;gap:10px;display:flex}.seg{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:999px;padding:3px;display:flex}.seg button{color:var(--dim);border-radius:999px;padding:6px 14px;font-size:13px;transition:all .25s}.seg button[aria-pressed=true]{color:var(--ink);background:#ffffff1c}.ico{background:var(--glass);border:1px solid var(--line);width:36px;height:36px;color:var(--dim);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:50%;place-items:center;display:grid}.ico:hover{color:var(--ink)}.creator{left:max(28px, env(safe-area-inset-left));bottom:max(20px, env(safe-area-inset-bottom));color:var(--dim);align-items:center;gap:7px;padding:4px 0;font-size:12px;line-height:20px;text-decoration:none;transition:color .2s;display:inline-flex;position:absolute}.creator:hover,.creator:focus-visible{color:var(--ink)}.creator svg{flex:none}.hero{transition:opacity .9s;position:absolute;inset:0}.hero p{letter-spacing:-.035em;white-space:nowrap;text-shadow:0 0 40px #7896ff40;font-size:clamp(38px,6.4vw,92px);font-weight:400;line-height:1;position:absolute;top:50%;translate:0 -50%}.hero .l{left:clamp(20px,2.6vw,40px)}.hero .r{right:clamp(20px,2.6vw,40px)}.hero span{opacity:0;filter:blur(14px);animation:rise 1.1s cubic-bezier(.2, .8, .2, 1) var(--d) forwards;display:inline-block;transform:translateY(18px)}@keyframes rise{to{opacity:1;filter:blur();transform:none}}@media (width<=760px){.hero p{font-size:clamp(34px,11vw,56px)}.hero .l{top:21%}.hero .r{top:65%}}.loading{color:var(--faint);letter-spacing:.3em;text-transform:uppercase;place-items:center;font-size:11px;transition:opacity .8s;display:grid;position:absolute;inset:0}.loading.done{opacity:0}.loading span{animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.dock{left:50%;bottom:calc(28px + var(--kb,0px));opacity:0;flex-direction:column;align-items:center;gap:12px;width:min(560px,100vw - 32px);transition:opacity 1s 1.6s,transform 1s 1.6s;display:flex;position:absolute;transform:translate(-50%,14px)}.ready .dock{opacity:1;transform:translate(-50%)}.search{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(22px)saturate(1.3);backdrop-filter:blur(22px)saturate(1.3);width:100%;height:54px;color:var(--dim);border-radius:999px;align-items:center;gap:10px;padding:0 16px;transition:box-shadow .4s,border-color .4s;display:flex;position:relative;box-shadow:0 10px 50px #00000080,0 0 #8fb4ff00}.typing .search,.search:hover{border-color:#8fb4ff66;box-shadow:0 10px 50px #00000080,0 0 40px #8fb4ff2e}.search input{min-width:0;height:100%;color:var(--ink);font:400 16px var(--font);background:0 0;border:0;outline:0;flex:1}.search input::placeholder{color:var(--dim)}.search input::-webkit-search-cancel-button{display:none}.search input:focus-visible{outline:none}kbd{font:12px var(--font);color:var(--faint);border:1px solid var(--line);border-radius:6px;padding:2px 7px}#results{max-height:var(--res-max,60vh);overscroll-behavior:contain;border:1px solid var(--line);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#090c18e0;border-radius:20px;padding:6px;list-style:none;position:absolute;bottom:calc(100% + 10px);left:0;right:0;overflow-y:auto;box-shadow:0 20px 60px #0009}#results li{cursor:pointer;color:var(--ink);border-radius:14px;align-items:center;gap:12px;padding:7px 10px;display:flex}#results li[aria-selected=true],#results li:hover{background:#8fb4ff21}#results img{object-fit:cover;background:#12162a;border-radius:6px;width:74px;height:28px}#results b{font-size:14px;font-weight:500;display:block}#results small{color:var(--dim);font-size:12px}.hint{color:var(--faint);text-align:center;flex-direction:column;align-items:center;gap:4px;font-size:12.5px;transition:opacity .6s;display:flex}.hint.off{opacity:0;height:0;margin:-6px;overflow:hidden}.hint button{color:var(--dim);border:1px solid var(--line);border-radius:999px;margin-left:10px;padding:3px 11px;font-size:12.5px;transition:all .2s}.hint button:hover{color:var(--ink);background:#8fb4ff1a;border-color:#8fb4ff80}.how{letter-spacing:.02em;opacity:.85;font-style:normal}.chips{flex-wrap:wrap;place-content:flex-start center;gap:8px;display:flex}.chip{min-width:0;max-width:100%;height:34px;color:var(--gold);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scroll-snap-align:start;background:#ffd28a1f;border:1px solid #ffd28a59;border-radius:999px;flex:none;align-items:center;animation:.5s cubic-bezier(.2,.8,.3,1) pop;display:inline-flex}.chip.neg{color:#ff9aa2;background:#ff6e781a;border-color:#ff6e7859}.chip .n{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:220px;padding:6px 4px 6px 14px;font-weight:500;line-height:20px;overflow:hidden}.chip .x{opacity:.6;flex:0 0 26px;width:26px;height:28px;font-size:16px}.chip .x:hover{opacity:1}.chip .x:last-child{padding-right:6px}@keyframes pop{0%{opacity:0;transform:scale(.7)}}.panel{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex-direction:column;gap:14px;width:min(380px,100vw - 40px);animation:.7s cubic-bezier(.2,.8,.2,1) slide;display:flex;position:absolute;top:72px;bottom:112px;right:20px;overflow:auto}@keyframes slide{0%{opacity:0;transform:translate(24px)}}.card,.recs{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(24px)saturate(1.3);backdrop-filter:blur(24px)saturate(1.3);border-radius:22px;box-shadow:0 20px 60px #00000073}.card{flex:none;padding-bottom:16px;position:relative;overflow:hidden}.card .close{z-index:1;background:#00000080;border-radius:50%;width:30px;height:30px;font-size:18px;position:absolute;top:10px;right:10px}.hdr{aspect-ratio:460/215;object-fit:cover;background:#10142a;width:100%;display:block;-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.card h2{letter-spacing:-.02em;margin-top:-16px;padding:0 18px;font-size:22px;font-weight:500;position:relative}.card .meta{color:var(--dim);padding:2px 18px 0;font-size:13px}.rate{color:var(--dim);padding:12px 18px 0;font-size:12.5px}.rate i{background:linear-gradient(90deg, #7fe3c0 var(--p), #ffffff1a var(--p));border-radius:3px;height:3px;margin-bottom:7px;display:block}.tags{flex-wrap:wrap;gap:6px;padding:12px 18px 0;display:flex}.tags span{color:#c3cbe2;background:#ffffff0f;border-radius:999px;padding:3px 10px;font-size:12px}.desc{color:#b3bbd2;padding:12px 18px 0;font-size:13.5px}.acts{flex-wrap:wrap;align-items:center;gap:8px;padding:16px 18px 0;display:flex}.acts button,.acts a{border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:8px 14px;font-size:13px;text-decoration:none;transition:all .2s}.acts button:hover,.acts a:hover{background:#ffffff14}.acts .pri{background:var(--gold);color:#2a1c05;border-color:#0000;font-weight:500}.acts .pri:hover{background:#ffe0ac}.recs{flex:none;padding:6px 6px 8px}.recs header{justify-content:space-between;align-items:center;padding:12px 14px 8px;display:flex}.recs h3{letter-spacing:.24em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:500}.tunebtn{color:var(--dim);border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:12.5px}.tunebtn:hover,.tunebtn[aria-expanded=true]{color:var(--ink);background:#ffffff12}.tune{gap:10px;padding:4px 14px 12px;display:grid}.tune label span{color:var(--dim);justify-content:space-between;font-size:12px;display:flex}.tune em{color:var(--ink);font-style:normal}input[type=range]{width:100%;accent-color:var(--blue);height:18px}.recs ol{padding:0;list-style:none}.rec{border-radius:14px;align-items:center;display:flex}.rec:hover,.rec.sel{background:#8fb4ff1a}.rec .row{text-align:left;flex:1;align-items:center;gap:11px;min-width:0;padding:6px 8px;display:flex}.rec img{object-fit:cover;background:#12162a;border-radius:6px;flex:none;width:78px;height:29px}.rec .t{flex:1;min-width:0}.rec b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:500;display:block;overflow:hidden}.rec small{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;display:block;overflow:hidden}.rec .aff{height:2px;width:calc(var(--w) * 100%);background:linear-gradient(90deg, var(--blue), transparent);border-radius:2px;margin-top:4px;display:block}.rec .add{border:1px solid var(--line);width:30px;height:30px;color:var(--dim);border-radius:50%;flex:none;margin-right:6px;font-size:17px}.rec .add:hover{color:#2a1c05;background:var(--gold);border-color:#0000}.tip{pointer-events:none;opacity:0;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:5;background:#080a14db;border-radius:12px;max-width:260px;padding:8px 12px;transition:opacity .15s;position:fixed;top:0;left:0}.tip.on{opacity:1}.tip b{font-weight:500;display:block}.tip span{color:var(--dim);font-size:12px}@media (width<=1360px){.panel,.drawer{bottom:calc(var(--dock-top,102px) + var(--kb,0px) + 10px)}}@media (width<=900px){.dock{bottom:calc(48px + env(safe-area-inset-bottom) + var(--kb,0px))}.creator{left:max(16px, env(safe-area-inset-left));bottom:max(8px, env(safe-area-inset-bottom))}}@media (width<=760px){.mark{gap:5px}.mark img{width:26px;height:26px}.bar{padding:12px 14px}.mark{font-size:13px}.seg button{padding:6px 10px;font-size:12px}.panel{width:auto;max-height:min(46vh, calc(var(--vvh,100vh) - var(--dock-top,150px) - 80px));gap:10px;top:auto;left:10px;right:10px}.how{display:none}.hdr{aspect-ratio:460/150}.card{padding-bottom:12px}.card h2{font-size:19px}.desc{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.kb-open .panel,.kb-open .chips,.kb-open .creator{visibility:hidden}.kb-open .dock{bottom:calc(8px + var(--kb,0px))}#results li{padding:9px 10px}}@media (prefers-reduced-motion:reduce){.hero span{opacity:1;filter:none;animation:none;transform:none}.bar,.dock{transition:opacity .3s}.panel,.chip,.loading span{animation:none}}[hidden]{display:none!important}.modal{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:6;background:#02030899;place-items:center;display:grid;position:absolute;inset:0}.modal form{border:1px solid var(--line);background:#0a0d1aeb;border-radius:22px;gap:12px;width:min(440px,100vw - 32px);padding:24px;display:grid;box-shadow:0 30px 80px #0009}.modal h2{letter-spacing:-.02em;font-size:20px;font-weight:500}.modal p{color:var(--dim);font-size:13.5px}.modal input{border:1px solid var(--line);height:44px;color:var(--ink);font:inherit;background:#ffffff0d;border-radius:12px;padding:0 14px}.modal .err{color:#ff9aa2;min-height:1.4em}.modal .acts{padding:0}#import{color:var(--dim);border:1px solid var(--line);border-radius:999px;margin:0 0 4px;padding:4px 14px;font-size:12.5px}#import:hover{color:var(--ink)}.pill{background:var(--glass);border:1px solid var(--line);height:36px;color:var(--dim);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-size:13px;transition:all .2s;display:inline-flex}.pill:hover,.pill[aria-expanded=true]{color:var(--ink);background:#ffffff17}.pill b{background:var(--gold);color:#2a1c05;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;display:grid}@media (width<=760px){.pill{padding:0 11px}.pill .lbl{display:none}.bar-r{gap:6px}}.rec small u{color:#a9c3ff;text-decoration:none}.rec .bm{color:var(--gold);margin-right:5px;font-weight:400}.rec .no{width:26px;height:26px;color:var(--faint);opacity:0;border-radius:50%;flex:none;margin-right:6px;font-size:16px;transition:all .15s}.rec:hover .no,.rec .no:focus-visible,.rec.sel .no{opacity:1}.rec .no:hover{color:#ff9aa2;background:#ff6e781f}@media (hover:none){.rec .no{opacity:.7}}.empty{color:var(--dim);padding:18px 14px;font-size:13.5px;list-style:none}.empty small{color:var(--faint);margin-top:6px;display:block}.lrow{flex-wrap:wrap;gap:6px;padding:10px 18px 0;display:flex}.lrow button{border:1px solid var(--line);color:var(--dim);border-radius:999px;padding:6px 12px;font-size:12.5px;transition:all .2s}.lrow button:hover{color:var(--ink);background:#ffffff0f}.lrow button[aria-pressed=true]{color:#2a1c05;background:var(--gold);border-color:#0000;font-weight:500}.lrow button[data-list=hide][aria-pressed=true]{background:#ff9aa2}.tunebtn b{background:var(--blue);color:#08112a;border-radius:8px;place-items:center;min-width:16px;height:16px;margin-left:4px;font-size:10.5px;display:inline-grid}.filt{border-top:1px solid var(--line);gap:12px;margin-top:4px;padding-top:6px;display:grid}.frow>span{color:var(--dim);justify-content:space-between;gap:8px;margin-bottom:7px;font-size:12px;display:flex}.frow em{color:var(--faint);font-size:11.5px;font-style:normal}.pills{flex-wrap:wrap;gap:6px;display:flex}.fp{border:1px solid var(--line);color:var(--dim);border-radius:999px;padding:4px 11px;font-size:12px;transition:all .15s}.fp:hover{color:var(--ink);background:#ffffff0f}.fp.on,.fp.need{color:#cfe0ff;background:#8fb4ff2e;border-color:#8fb4ff8c}.fp.avoid{color:#ffb3b9;background:#ff6e781f;border-color:#ff6e7873;-webkit-text-decoration:line-through #ff9aa299;text-decoration:line-through #ff9aa299}.addtag{border:1px solid var(--line);width:100%;height:34px;color:var(--ink);font:inherit;background:#ffffff0a;border-radius:10px;margin-top:8px;padding:0 12px;font-size:13px}.clear{color:var(--dim);text-underline-offset:3px;justify-self:start;font-size:12.5px;text-decoration:underline}.clear:hover{color:var(--ink)}.drawer{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(24px)saturate(1.3);backdrop-filter:blur(24px)saturate(1.3);border-radius:22px;flex-direction:column;width:min(360px,100vw - 40px);animation:.5s cubic-bezier(.2,.8,.2,1) slideL;display:flex;position:absolute;top:72px;bottom:112px;left:20px;overflow:hidden;box-shadow:0 20px 60px #00000080}@keyframes slideL{0%{opacity:0;transform:translate(-24px)}}.drawer header{justify-content:space-between;align-items:center;padding:14px 14px 6px 18px;display:flex}.drawer h3{letter-spacing:.24em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:500}.drawer .close{width:30px;height:30px;color:var(--dim);border-radius:50%;font-size:18px}.drawer .close:hover{background:#ffffff14}.tabs{gap:4px;padding:6px 12px;display:flex}.tabs button{color:var(--dim);border-radius:999px;padding:6px 12px;font-size:13px}.tabs b{color:var(--faint);margin-left:3px;font-weight:500}.tabs button[aria-selected=true]{color:var(--ink);background:#ffffff1a}.drawer ul{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;padding:4px 6px 10px;list-style:none;overflow:auto}.drawer li{border-radius:14px;align-items:center;display:flex}.drawer li:hover{background:#8fb4ff1a}.drawer .row{text-align:left;flex:1;align-items:center;gap:11px;min-width:0;padding:6px 8px;display:flex}.drawer img{object-fit:cover;background:#12162a;border-radius:6px;flex:none;width:78px;height:29px}.drawer .t{flex:1;min-width:0}.drawer b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:500;display:block;overflow:hidden}.drawer small{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;display:block;overflow:hidden}.drawer .add{border:1px solid var(--line);width:30px;height:30px;color:var(--dim);border-radius:50%;flex:none;margin-right:2px;font-size:17px}.drawer .add:hover{color:#2a1c05;background:var(--gold);border-color:#0000}.drawer .no{width:26px;height:26px;color:var(--faint);border-radius:50%;flex:none;margin-right:6px;font-size:16px}.drawer .no:hover{color:#ff9aa2}.drawer .empty small{white-space:normal}.drawer .tabs b{font-size:11px;display:inline}.listnote{color:var(--dim);padding:0 18px 6px;font-size:12px}@media (width<=760px){.drawer{width:auto;top:64px;left:10px;right:10px}}.toast{left:50%;bottom:calc(var(--dock-top,108px) + var(--kb,0px) + 10px);border:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:7;background:#090c18eb;border-radius:999px;align-items:center;gap:14px;max-width:calc(100vw - 32px);padding:10px 14px 10px 18px;font-size:13.5px;animation:.35s cubic-bezier(.2,1.2,.3,1) pop;display:flex;position:absolute;translate:-50%;box-shadow:0 14px 40px #00000080}.toast button{color:var(--gold);padding:2px 6px;font-weight:500}.rec small{white-space:normal;line-height:1.45}.rec small u{display:block}.rec .row{min-height:66px}.rec .no{opacity:.55}button:disabled{cursor:default;opacity:.45}.loading.failed{z-index:9;background:var(--bg);text-align:center;text-transform:none;letter-spacing:normal;font-size:16px;pointer-events:auto!important}.loading.failed div{justify-items:center;gap:16px;padding:24px;display:grid}.loading.failed small{color:var(--dim);font-size:13px}.loading.failed button{border:1px solid var(--line);border-radius:20px;padding:8px 18px}.chips{scrollbar-width:none;overscroll-behavior:contain;scroll-snap-type:y mandatory;flex-shrink:0;width:100%;min-width:0;max-height:126px;padding:4px;scroll-padding:4px;overflow:hidden auto}.chips::-webkit-scrollbar{display:none}.chips:empty{display:none}.drawer{z-index:3}@media (width<=760px){.bar-r{gap:4px}.pill{padding:0 9px}.seg button{padding:6px 8px}.rec .row{min-height:70px}.rec img{width:60px;height:25px}.toast{border-radius:16px;width:max-content;top:70px;bottom:auto}.frow>span{flex-wrap:wrap}.chips{scroll-snap-type:x proximity;flex-wrap:nowrap;justify-content:flex-start;max-height:42px;overflow:auto hidden}.tabs button{padding:6px 10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important}}@media (width<=380px){.bar{padding:12px 10px}.mark{gap:3px;font-size:12px}.mark img{width:22px;height:22px}.seg button{padding:6px;font-size:11px}.bar-r{gap:3px}.pill{gap:3px;padding:0 7px}.ico{width:30px}}@media (width<=760px){.seg,.ico,.pill,.search,.chip,.card,.recs,.drawer,.tip{-webkit-backdrop-filter:none;backdrop-filter:none}:root{--glass:#0a0d1ad6}#results{-webkit-backdrop-filter:none;backdrop-filter:none;background:#090c18f7}body:after{display:none}}
