@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/31a7f4f26a40641c-s.2j75_l12byk_u.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b615dfc46d0472ba-s.07wt1b-68kohk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6e7755c9813efd51-s.p.0pan85mumqyf3.woff2)format("woff2");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}@font-face{font-family:Anton Fallback;src:local(Arial);ascent-override:129.7%;descent-override:36.29%;line-gap-override:0.0%;size-adjust:90.69%}.y2aRga_className{font-family:Anton,Anton Fallback;font-style:normal;font-weight:400}.y2aRga_variable{--font-anton:"Anton", "Anton Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.02z5rrbg5nt92.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.2rixgazldzomk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.0wiir8udbzjvx.woff2)format("woff2");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}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.02z5rrbg5nt92.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.2rixgazldzomk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.0wiir8udbzjvx.woff2)format("woff2");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}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.02z5rrbg5nt92.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.2rixgazldzomk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.0wiir8udbzjvx.woff2)format("woff2");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}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.alFXMG_className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.alFXMG_variable{--font-plex:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/77b28ce38026b284-s.0fuxtgzazslqx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c442f25284480cdf-s.451yigaaz_4mg.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ab56636924653a94-s.p.3cik_s2si-ft-.woff2)format("woff2");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}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3382ae7d1c882f43-s.0we3rzhp_h228.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3084de8c06b4aa35-s.44izq0ia6orkf.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/34c58fc38e31639a-s.p.1s123piy9_v1m.woff2)format("woff2");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}@font-face{font-family:Space Mono Fallback;src:local(Arial);ascent-override:81.58%;descent-override:26.3%;line-gap-override:0.0%;size-adjust:137.28%}.KUJ_XW_className{font-family:Space Mono,Space Mono Fallback;font-style:normal}.KUJ_XW_variable{--font-space-mono:"Space Mono", "Space Mono Fallback"}
:root{--blue:#013afb;--blue-pixel:#013afb80;--white-pixel:#ffffff80;--tech:#00ff97;--together:#ff5f3a;--tomorrow:#ff1ef7;--drift:#f1f4f7;--ink:#181818;--ink-muted:#4b5563;--line:#d6dce5;--surface:#fff;--focus:var(--tomorrow);--font-title:var(--font-anton), Impact, "Arial Narrow", sans-serif;--font-body:var(--font-plex), system-ui, sans-serif;--font-code:var(--font-space-mono), ui-monospace, monospace;--radius:12px}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{font-family:var(--font-body);color:var(--ink);background-color:var(--drift);background-image:radial-gradient(circle,#013afb21 1px,#0000 1.5px);background-size:24px 24px;margin:0;font-size:1rem;line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-underline-offset:3px}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:16px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:20;background:var(--surface);color:var(--blue);padding:8px 12px;font-weight:600;position:absolute;top:-64px;left:16px}.skip-link:focus{top:8px}.title{font-family:var(--font-title);text-transform:uppercase;letter-spacing:.01em;color:var(--blue);overflow-wrap:anywhere;margin:0;font-weight:400;line-height:.95}.title:after{content:"_";color:var(--title-accent,currentColor)}.title-xl{font-size:clamp(2.75rem,8vw,6rem)}.title-lg{font-size:clamp(2.25rem,6vw,4rem)}.title-md{font-size:clamp(1.75rem,3vw,2.25rem)}.code-tag:before{content:"<";color:var(--tag-accent,var(--blue))}.code-tag:after{content:"/>";color:var(--tag-accent,var(--blue))}.btn{border:2px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn-ghost{color:var(--blue);background:0 0}.btn-link{color:var(--blue);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.site-header{background:var(--blue);color:#fff}.site-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;padding-block:18px;display:flex}.brand{color:#fff;align-items:center;gap:14px;text-decoration:none;display:flex}.brand-name{font-family:var(--font-title);letter-spacing:.02em;border-left:2px solid var(--white-pixel);padding-left:14px;font-size:1.5rem;line-height:1}.site-nav{flex-wrap:wrap;gap:8px 24px;display:flex}.site-nav a{color:#fff;font-weight:600;text-decoration:none}.site-nav a:hover{text-underline-offset:6px;text-decoration:underline}.pixels{--px:clamp(36px, 7vw, 104px);grid-template-columns:repeat(4, var(--px));grid-template-rows:repeat(3, var(--px));pointer-events:none;display:grid;position:absolute;bottom:0;right:0}.pixels i{background:var(--white-pixel)}@media (prefers-reduced-motion:no-preference){.pixels i{animation:.52s cubic-bezier(.2,.8,.2,1) both pixel-in;animation-delay:calc(var(--i) * 80ms + .12s)}}@keyframes pixel-in{0%{opacity:0;transform:scale(.4)}}.hero{background:var(--blue);color:#fff;padding-block:40px 72px;position:relative;overflow:hidden}.hero-inner{z-index:1;gap:20px;display:grid;position:relative}.hero .title{color:#fff;--title-accent:var(--tech);max-width:17ch}.hero-sub{--tag-accent:var(--tech);margin:0;font-size:1.125rem}.hero-search{max-width:640px;margin-top:8px}.hero-search input{border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);border:0;padding:16px 20px;font-size:1.125rem}.hero-search input::placeholder{color:var(--ink-muted)}.explorer{gap:32px;padding-block:40px;display:grid}@media (min-width:900px){.explorer{grid-template-columns:264px 1fr;align-items:start}.filters-aside{max-height:calc(100vh - 20px);margin:-6px 0 0 -6px;padding:6px 10px 6px 6px;position:sticky;top:10px;overflow-y:auto}.filters-open{display:none}}@media (max-width:899px){.filters-aside{display:none}}.filters{gap:20px;display:grid}.field{gap:6px;font-size:.9rem;font-weight:600;display:grid}.field input,.field select{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:10px 12px;font-size:1rem;font-weight:400}.check{cursor:pointer;align-items:center;gap:10px;font-size:.95rem;display:flex}.check input{width:18px;height:18px;accent-color:var(--blue);margin:0}.filter-group{border-bottom:1px solid var(--line);padding-bottom:12px}.filter-group summary{cursor:pointer;padding-block:4px;font-weight:600}.filter-group ul{gap:6px;max-height:260px;margin:0;padding:10px 0 0;list-style:none;display:grid;overflow-y:auto}.filter-group .count{color:var(--blue)}.filters-dialog{background:var(--drift);border:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0}.filters-dialog::backdrop{background:#18181880}.dialog-body{padding:24px 16px}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.dialog-actions{background:var(--drift);border-top:1px solid var(--line);padding:16px;position:sticky;bottom:0}.dialog-actions .btn{width:100%}.results-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px;display:flex}.results-tools{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.chips{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.chip{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.875rem;font-weight:600;display:inline-flex}.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-content:start;gap:12px;padding:12px 12px 16px;transition:border-color .15s;display:grid;position:relative}.card:hover{border-color:var(--blue)}.card h3{margin:0;font-size:1.05rem;font-weight:600;line-height:1.3}.card-link{color:inherit;text-decoration:none}.card-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.card:hover .card-link{color:var(--blue)}.card-link:focus-visible{outline:none}.card:has(.card-link:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.card-actions{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:relative}.fav-btn{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.875rem;font-weight:600}.fav-btn[aria-pressed=true]{border-color:var(--tomorrow);background:var(--tomorrow)}.site-header-inner{row-gap:12px}.account{align-items:center;gap:10px;display:flex}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:16ch;font-weight:600;overflow:hidden}.site-header .btn-link{color:#fff}.btn-light{color:var(--blue);background:#fff;border-color:#fff}.login-dialog{border-radius:var(--radius);border:0;width:min(420px,100% - 32px);padding:32px 24px}.login-dialog::backdrop{background:#18181880}.login-dialog p{margin:16px 0 24px}.login-providers{gap:12px;margin-bottom:20px;display:grid}.toast-region{z-index:1200;pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.toast{background:var(--together);color:var(--ink);pointer-events:auto;border-radius:10px;align-items:center;gap:16px;margin:0;padding:12px 16px;font-weight:600;display:flex}.toast .btn-link{color:var(--ink)}.mybox{border:2px solid var(--tomorrow);border-radius:var(--radius);background:var(--surface);gap:16px;margin-bottom:40px;padding:20px;display:grid}.mybox-actions{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.rank-badge{background:var(--tomorrow);font-family:var(--font-code);padding:4px 10px;font-weight:700}.mybox textarea{border:1px solid var(--line);font:inherit;resize:vertical;border-radius:8px;padding:10px 12px;font-weight:400}.hint{color:var(--ink-muted);margin:0;font-size:.875rem}.lead{max-width:60ch;margin:-16px 0 32px;font-size:1.05rem}.wishlist-layout{gap:40px;display:grid}@media (min-width:960px){.wishlist-layout{grid-template-columns:1fr 320px;align-items:start}}.warnings{gap:8px;margin:0 0 20px;padding:0;list-style:none;display:grid}.warnings li{background:var(--together);color:var(--ink);border-radius:8px;padding:10px 14px;font-weight:600}.slots{gap:10px;margin:0;padding:0;list-style:none;display:grid}.slot{border:1px dashed var(--line);border-radius:var(--radius);background:#fff9;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;min-height:72px;padding:10px 12px;display:grid}.slot.is-filled{background:var(--surface);cursor:grab;border-style:solid}.slot.is-over{border-color:var(--blue);outline:2px solid var(--blue)}.slot-rank{background:var(--blue);color:#fff;width:48px;height:48px;font-family:var(--font-title);place-items:center;font-size:1.6rem;display:grid}.slot:not(.is-filled) .slot-rank{background:var(--blue-pixel)}.slot-body{gap:2px;min-width:0;display:grid}.slot-name{color:var(--ink);font-weight:600;text-decoration:none}a.slot-name:hover{color:var(--blue)}.slot-meta{color:var(--ink-muted);font-size:.85rem}.slot-empty{color:var(--ink-muted)}.slot-actions{gap:4px;display:flex}.slot-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;width:36px;height:36px;font-size:1rem}.slot-actions button:disabled{opacity:.35;cursor:default}.wishlist-export{gap:12px;margin-top:20px;display:flex}.favorites-pane .title{margin-bottom:16px}.fav-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fav-list li{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:1fr auto;gap:2px 12px;padding:12px;display:grid}.fav-list a{color:var(--ink);font-weight:600;text-decoration:none}.fav-list .slot-meta{grid-column:1}.fav-list button{grid-area:1/2/span 2;align-self:center}.btn:disabled{opacity:.45;cursor:not-allowed}.match{background:var(--tech);color:var(--ink);font-family:var(--font-code);border-radius:6px;justify-self:start;margin:0;padding:3px 10px;font-size:.8rem;font-weight:700}.match.is-blocked{background:var(--together);font-family:var(--font-body);font-weight:600}.card-match{z-index:1;justify-items:start;gap:4px;display:grid;position:absolute;top:20px;left:20px;right:20px}.match-warning{background:var(--surface);color:#b42318;box-shadow:inset 0 0 0 1.5px var(--together);border-radius:6px;margin:0;padding:3px 10px;font-size:.8rem;font-weight:600}.profile-callout{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;margin:0 0 20px;padding:12px 16px;display:flex}.profile-callout p{margin:0}.mybox-match{gap:10px;display:grid}.losses{background:var(--drift);border-radius:10px;padding:10px 14px}.losses-title{margin:0 0 6px;font-size:.9rem;font-weight:700}.losses ul,ul.losses{gap:4px;margin:0;padding:0;font-size:.875rem;list-style:none;display:grid}.losses-pts{color:#b42318;min-width:4.2em;font-family:var(--font-code);font-weight:700;display:inline-block}ul.losses-compact{margin-top:4px;padding:8px 10px;font-size:.8rem}.english-req{background:var(--drift);border-radius:10px;padding:12px 16px}.english-req h3{margin:0 0 6px;font-size:.95rem}.english-req ul{gap:4px;margin:0;padding-left:18px;font-size:.9rem;display:grid}.criteria{flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.criteria .ko{color:#b42318}.criteria .ok span{color:#067647}.profile-layout{gap:40px;display:grid}@media (min-width:960px){.profile-layout{grid-template-columns:1fr 340px;align-items:start}.profile-result{position:sticky;top:16px}}.profile{gap:24px;display:grid}.profile-section{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:16px;padding:24px;display:grid}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px 16px;display:grid}.profile-grid .field{grid-row:span 3;grid-template-rows:subgrid;align-content:start}.field .hint{font-weight:400}.field-group{border:0;gap:8px;margin:0;padding:0;display:grid}.field-group legend{margin-bottom:4px;font-size:.9rem;font-weight:600}.chip-row{flex-wrap:wrap;gap:8px 16px;display:flex}.spec-chip{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:.85rem;font-weight:600}.spec-chip.is-nice{border-color:var(--blue);color:var(--blue)}.spec-chip.is-must{border-color:var(--blue);background:var(--blue);color:#fff}span.spec-chip{cursor:default}.chip-row:has(.spec-chip){gap:8px}.profile-footer{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.profile-result{border-radius:var(--radius);background:var(--blue);color:#fff;gap:16px;padding:24px;display:grid}.profile-result .title{color:#fff;--title-accent:var(--tech)}.profile-result .hint{color:#fffc}.result-count{margin:0;font-size:1.1rem}.result-count strong{font-family:var(--font-title);font-size:2.5rem;font-weight:400;line-height:1}.top-list{gap:10px;margin:0;padding-left:20px;display:grid}.top-list li{grid-template-columns:1fr auto;gap:0 12px;display:grid}.top-list a{color:#fff;font-weight:600}.top-list .slot-meta{color:#ffffffb3;grid-column:1}.top-list .match{grid-area:1/2/span 2;align-self:center}.profile-result .btn{color:var(--blue);background:#fff;border-color:#fff}.budget-layout{gap:32px;display:grid}@media (min-width:960px){.budget-layout{grid-template-columns:1fr 340px;align-items:start}.budget-total{position:sticky;top:16px}}.budget-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:20px;padding:24px;display:grid}.budget-months{max-width:240px}.uni-search{gap:6px;display:grid}.uni-search-results{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin:0;padding:4px;list-style:none;display:grid}.uni-search-results button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:baseline;gap:12px;width:100%;padding:8px 10px;font-weight:600;display:flex}.uni-search-results button:hover,.uni-search-results button:focus-visible{background:var(--drift)}.uni-search-results .hint{padding:8px 10px}.budget-uni{background:var(--drift);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;padding:12px 14px;display:flex}.budget-uni strong{font-size:1.1rem}.budget-group{border:0;gap:8px;margin:0;padding:0;display:grid}.budget-group legend{font-family:var(--font-title);text-transform:uppercase;color:var(--blue);margin-bottom:8px;font-size:1.3rem}.budget-line{border-bottom:1px solid var(--line);grid-template-columns:1fr 120px 70px;align-items:center;gap:12px;padding-block:6px;display:grid}.budget-line input{border:1px solid var(--line);width:100%;font-family:var(--font-code);text-align:right;border-radius:8px;padding:8px 10px}.budget-suffix{color:var(--ink-muted);font-size:.85rem}@media (max-width:480px){.budget-line{grid-template-columns:1fr 100px}.budget-suffix{display:none}}.budget-total{border-radius:var(--radius);background:var(--blue);color:#fff;gap:12px;padding:24px;display:grid}.budget-total-label{margin:0;font-weight:600}.budget-total-value{font-family:var(--font-title);margin:0;font-size:3rem;line-height:1}.budget-total dl{gap:6px;margin:0;display:grid}.budget-total dl div{border-bottom:1px solid #ffffff40;justify-content:space-between;gap:12px;padding-bottom:6px;display:flex}.budget-total dd{font-family:var(--font-code);margin:0;font-weight:700}.budget-actions{justify-items:start;gap:10px;display:grid}.budget-total .btn-link{color:#fff}.budget-total .btn-light:disabled{opacity:.7}.budget-status{background:var(--tech);color:var(--ink);border-radius:6px;margin:0;padding:6px 10px;font-weight:600}.budget-note{color:#ffffffbf;margin:0;font-size:.85rem}.simulations{margin-top:56px}.simulations .title{margin-bottom:16px}.sim-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.sim-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:1fr auto auto;align-items:center;gap:8px 20px;padding:14px 16px;display:grid}.sim-list li.is-open{border-color:var(--blue);outline:1px solid var(--blue)}@media (max-width:640px){.sim-list li{grid-template-columns:1fr auto}.sim-actions{grid-column:1/-1}}.sim-main{gap:2px;min-width:0;display:grid}.sim-name{font-weight:600}.sim-figures{justify-items:end;display:grid}.sim-figures strong{font-family:var(--font-code);font-size:1.1rem}.sim-actions{align-items:center;gap:12px;display:flex}.slot-budget{background:var(--drift);color:var(--ink);font-family:var(--font-code);border-radius:6px;justify-self:start;margin-top:4px;padding:2px 8px;font-size:.8rem;font-weight:700;text-decoration:none}.slot-budget.is-empty{color:var(--blue);font-family:var(--font-body);background:0 0;padding:0;font-weight:600;text-decoration:underline}@media print{.site-header,.site-footer,.drawer,.toast-region,.no-print,.skip-link{display:none!important}body{background:#fff}.slot{break-inside:avoid}}.compare-btn{border:1.5px solid var(--blue);color:var(--blue);cursor:pointer;background:0 0;border-radius:8px;padding:6px 12px;font-size:.875rem;font-weight:600}.compare-btn[aria-pressed=true]{border-color:var(--tomorrow);background:var(--tomorrow);color:var(--ink)}.compare-btn:disabled{opacity:.45;cursor:not-allowed}.uni-hero .compare-btn{color:#fff;border-color:#fff}.uni-hero .compare-btn[aria-pressed=true]{border-color:var(--tomorrow);color:var(--ink)}.drawer{z-index:1100;background:var(--ink);color:#fff;padding-block:12px;position:fixed;inset:auto 0 0}body:has(.drawer){padding-bottom:96px}.drawer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;display:flex}.drawer-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.drawer-list li{background:#ffffff1f;border-radius:999px;align-items:center;gap:4px;padding:4px 4px 4px 12px;font-size:.875rem;display:inline-flex}.drawer-list a{color:#fff;text-decoration:none}.drawer-remove{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:50%;width:28px;height:28px;font-size:1.1rem}.drawer-remove:hover{background:#ffffff26}.drawer-count{margin:0;font-weight:600}@media (min-width:900px){.drawer-count{display:none}}@media (max-width:899px){.drawer-list{display:none}body:has(.drawer){padding-bottom:120px}}.drawer-actions{align-items:center;gap:16px;display:flex}.drawer .btn-link{color:#fff}.drawer-hint{color:#ffffffb3;font-size:.875rem}.btn-tech{border-color:var(--tech);background:var(--tech);color:var(--ink)}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:3px;display:inline-flex}.segmented button{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 14px;font-weight:600}.segmented button[aria-pressed=true]{background:var(--blue);color:#fff}.map-wrap{gap:12px;display:grid}.map{z-index:0;border:1px solid var(--line);border-radius:var(--radius);background:#e8edf3;height:min(78vh,720px);position:relative;overflow:hidden}.map-loading{color:var(--ink-muted);place-items:center;display:grid}.map-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;display:flex}.map-legend{flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.map-legend li{align-items:center;gap:6px;display:inline-flex}.map-legend .uni-pin{width:18px;height:18px}.uni-pin{width:100%;height:100%;font-family:var(--font-code);place-items:center;font-size:.75rem;font-weight:700;line-height:1;display:grid}.uni-pin.is-other{background:var(--blue);outline:2px solid var(--white-pixel)}.uni-pin.is-fav{background:var(--surface);color:var(--tomorrow);outline:3px solid var(--tomorrow);outline-offset:-3px}.uni-pin.is-wish{background:var(--tomorrow);color:var(--ink);outline:2px solid #fff}.uni-pin.is-blocked{opacity:.7;background:#9aa3b2}.leaflet-popup-content-wrapper{border-radius:10px}.leaflet-popup-content{font-family:var(--font-body);margin:14px 16px}.map-popup{gap:6px;display:grid}.map-popup-name{color:var(--ink);font-size:1rem;font-weight:700;text-decoration:none}.map-popup-name:hover{color:var(--blue)}.map-popup-country{color:var(--ink-muted);font-size:.85rem}.map-popup .match,.map-popup .match-warning{justify-self:start;margin:2px 0 0}.map-popup-facts{font-family:var(--font-code);font-size:.78rem;margin:4px 0!important}.map-popup-actions{flex-wrap:wrap;gap:6px;display:flex}.map-popup-actions button{border:1.5px solid var(--blue);background:var(--surface);color:var(--blue);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:.8rem;font-weight:600}.map-popup-actions button[aria-pressed=true],.map-popup-actions [data-action=unwish]{border-color:var(--tomorrow);background:var(--tomorrow);color:var(--ink)}.map-popup-actions button:disabled{opacity:.45;cursor:not-allowed}.map-popup-link{font-size:.85rem;font-weight:600}.compare-legend{flex-wrap:wrap;gap:16px;margin:0 0 16px;font-size:.875rem;display:flex}.legend-best:before,.legend-common:before{content:"";vertical-align:-1px;width:12px;height:12px;margin-right:6px;display:inline-block}.legend-best:before{background:var(--tech)}.legend-common:before{border:1.5px solid var(--blue);background:var(--blue);border-radius:50%}.compare-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.compare{border-collapse:collapse;width:100%;min-width:640px}.compare th,.compare td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 14px}.compare thead th{width:22%;font-weight:600}.compare thead th .media{margin-bottom:8px}.compare thead th a{color:var(--ink);text-decoration:none;display:block}.compare thead th a:hover{color:var(--blue)}.compare .compare-remove{color:var(--ink-muted);margin-top:6px;font-size:.8rem;font-weight:400;text-decoration:underline}.compare tbody th{background:var(--surface);color:var(--ink-muted);white-space:nowrap;font-size:.875rem;font-weight:600;position:sticky;left:0}.compare tbody td{font-family:var(--font-code);font-size:.9rem}.compare td.is-best{background:var(--tech);font-weight:700}.compare .tags{font-family:var(--font-body);margin:0}.tags .tag-common{background:var(--blue);color:#fff}.country{color:var(--ink-muted);margin:0;font-size:.9rem}.media{border-radius:6px;position:relative;overflow:hidden}.media img,.img-fallback{aspect-ratio:16/10;object-fit:cover;width:100%;height:100%}.img-fallback{background:var(--blue)}.media:after{content:"";aspect-ratio:1;background:var(--blue-pixel);width:22%;position:absolute;top:0;right:0}.card:nth-child(2n) .media:after{inset:auto auto 0 0}.facts{font-family:var(--font-code);flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.facts li{background:var(--drift);border-radius:4px;padding:2px 8px}.facts .ok{background:var(--tech)}.facts .warn{background:var(--together)}.empty{border:2px dashed var(--line);border-radius:var(--radius);text-align:center;padding:48px 24px}.uni-hero{background:var(--blue);color:#fff;padding-block:24px 48px;position:relative;overflow:hidden}.uni-hero a{color:#fff}.uni-hero p{margin:0}.uni-hero .title{color:#fff;--title-accent:var(--tech);max-width:22ch}.uni-hero-inner{z-index:1;gap:16px;display:grid;position:relative}.subtitle{color:#fffc;font-size:1.05rem}.uni-hero .notice{background:var(--together);color:var(--ink);border-radius:6px;justify-self:start;padding:6px 12px;font-weight:600}.gallery{gap:12px;margin-top:16px;display:grid}@media (min-width:700px){.gallery[data-count="2"]{grid-template-columns:1fr 1fr}.gallery[data-count="3"]{grid-template-columns:2fr 1fr}.gallery[data-count="3"]>:first-child{grid-row:span 2}}.gallery[data-count="1"]{max-width:760px}.gallery .media:after{background:var(--white-pixel)}.gallery>:nth-child(2):after{inset:auto auto 0 0}.sheet{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:32px 0;display:grid;overflow:hidden}.sheet div{box-shadow:1px 1px 0 var(--line);padding:14px 16px}.sheet dt{color:var(--ink-muted);font-size:.85rem}.sheet dd{font-family:var(--font-code);margin:4px 0 0;font-weight:700}.tags{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.tags li{border:1.5px solid var(--blue);background:var(--surface);color:var(--blue);border-radius:999px;padding:4px 12px;font-size:.875rem;font-weight:600}.tablist{border-bottom:2px solid var(--line);flex-wrap:wrap;gap:4px 28px;margin:48px 0 24px;display:flex}.tab{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-2px;padding:10px 0;font-weight:600}.tab[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.updated{color:var(--ink-muted);margin-top:32px;font-size:.875rem}.prose{overflow-wrap:anywhere;max-width:72ch}.prose h1,.prose h2,.prose h3,.prose h4{margin:1.5em 0 .5em;font-size:1.1rem;font-weight:700;line-height:1.3}.prose p{margin:0 0 .9em}.prose table{border-collapse:collapse;max-width:100%;margin-block:1em;display:block;overflow-x:auto}.prose td,.prose th{border:1px solid var(--line);background:var(--surface);vertical-align:top;padding:6px 10px}.prose blockquote{background:var(--surface);border-radius:8px;margin:1em 0;padding:12px 16px}.prose img{border-radius:6px;margin-block:1em}.page{padding-block:48px 0}.page .title{margin-bottom:32px}.site-footer{background:var(--ink);color:#fff;margin-top:96px;padding-block:48px}.site-footer a{color:#fff}.baseline{font-family:var(--font-code);margin:0 0 40px;font-size:1.05rem;line-height:1.4}.baseline .brace{color:var(--tech);font-size:1.5em}.b-tech{color:var(--tech)}.b-together{color:var(--together)}.b-tomorrow{color:var(--tomorrow)}.contacts{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:32px;display:grid}.contacts h2{margin:0 0 12px;font-size:1rem}.contacts ul{gap:10px;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.contacts .role{color:#ffffffb3;display:block}.source{color:#ffffffb3;margin:40px 0 0;font-size:.85rem}
