:root{--bg:#fff;--fg:#111;--muted:#6b7280;--line:#e5e7eb;--card:#fff;--accent:#111;--chip:#f3f4f6;--thumb-bg:#f6f6f7;--shadow:0 1px 2px #0000000a;--ease-out:cubic-bezier(.215,.61,.355,1);--ease-out-quint:cubic-bezier(.23,1,.32,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0b0c;--fg:#f4f4f5;--muted:#9ca3af;--line:#26262a;--card:#141416;--accent:#f4f4f5;--chip:#1c1c20;--thumb-bg:#1a1a1d;--shadow:none}}:root[data-theme=dark]{--bg:#0b0b0c;--fg:#f4f4f5;--muted:#9ca3af;--line:#26262a;--card:#141416;--accent:#f4f4f5;--chip:#1c1c20;--thumb-bg:#1a1a1d;--shadow:none}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}button,.chip,.card,.brand-cell,.seg button,.set-toggle{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}html{overscroll-behavior-x:none}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;overscroll-behavior-x:none;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.wrap{padding:0 20px 80px;padding-top:var(--nav-h,98px);max-width:1200px;margin:0 auto}.nav{position:fixed;z-index:30;padding:26px 20px 18px;padding-top:calc(26px + env(safe-area-inset-top));padding-left:calc(20px + env(safe-area-inset-left));padding-right:calc(20px + env(safe-area-inset-right));display:flex;background:var(--bg);backface-visibility:hidden;border-bottom:1px solid var(--line);justify-content:space-between;align-items: center;gap:12px;max-width:1200px;margin:0 auto;top:0;left:0;right:0;transform:translateZ(0)}.nav-left{display:flex;flex-direction:column;align-items: flex-start;gap:3px;min-width:0}.nav .logo{display:inline-flex;cursor:pointer;background:0 0;border:none;align-items: center;padding:0}.nav .logo .logo-img{display:block;width:auto;height:36px;margin-left:-4px}.nav .logo .logo-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .nav .logo .logo-light{display:none}:root:not([data-theme=light]) .nav .logo .logo-dark{display:block}}:root[data-theme=dark] .nav .logo .logo-light{display:none}:root[data-theme=dark] .nav .logo .logo-dark,:root[data-theme=light] .nav .logo .logo-light{display:block}:root[data-theme=light] .nav .logo .logo-dark{display:none}.nav .logo:hover{opacity:.7}.nav .nav-sub{color:var(--muted);font-size:13px}.nav-right{display:flex;flex:none;align-self: center;align-items: center;gap:10px;margin-left:auto}.nav-fav{position:relative;border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer;display:inline-flex;transition:border-color .15s ease,transform .12s var(--ease-out),color .15s ease;border-radius:50%;flex:none;justify-content:center;align-items: center;width:40px;height:40px}.nav-fav:hover{border-color:var(--muted)}.nav-fav:active{transform:scale(.92)}.nav-fav.has{color:#ff4d5e}.nav-fav svg{display:block}.nav-fav-badge{position:absolute;color:#fff;text-align:center;box-shadow:0 0 0 2px var(--bg);background:#ff4d5e;border-radius:999px;min-width:17px;height:17px;padding:0 4px;font-size:10.5px;font-weight:700;line-height:17px;top:-3px;right:-3px}.nav .gear{border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer;display:inline-flex;transition:border-color .15s ease,transform .3s var(--ease-out),background-color .15s ease;border-radius:50%;flex:none;justify-content:center;align-self: center;align-items: center;width:40px;height:40px}.nav .gear:hover{border-color:var(--muted);transform:rotate(45deg)}.nav .gear:active{transform:rotate(45deg)scale(.92)}.nav .gear svg{display:block}.controls{position:sticky;top:var(--nav-h,98px);z-index:16;display:flex;background:var(--bg);border-bottom:1px solid var(--line);backface-visibility:hidden;flex-wrap:wrap;align-items: center;gap:10px;padding:14px 0 12px;transform:translateZ(0)}input[type=search],select{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);outline:none;border-radius:10px;padding:9px 12px}input[type=search]{flex:1;min-width:200px}select{cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;cursor:pointer;background-color:var(--muted);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'><line x1='5' y1='5' x2='19' y2='19'/><line x1='19' y1='5' x2='5' y2='19'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'><line x1='5' y1='5' x2='19' y2='19'/><line x1='19' y1='5' x2='5' y2='19'/></svg>") 50%/contain no-repeat;width:15px;height:15px}input[type=search]::-webkit-search-cancel-button:hover{background-color:var(--fg)}.random-btn{display:inline-flex;color:var(--fg);background:var(--card);border:1px solid var(--line);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .12s var(--ease-out);border-radius:10px;flex:none;justify-content:center;align-items: center;width:40px;height:40px}.random-btn:hover:not(:disabled){border-color:var(--fg)}.random-btn:active:not(:disabled){transform:scale(.94)}.random-btn:disabled{opacity:.5;cursor:default}.filter-btn{position:relative;display:inline-flex;color:var(--fg);background:var(--card);border:1px solid var(--line);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .12s var(--ease-out);border-radius:10px;flex:none;justify-content:center;align-items: center;width:40px;height:40px}.filter-btn:hover{border-color:var(--fg)}.filter-btn:active{transform:scale(.94)}.filter-badge{position:absolute;background:var(--accent);color:var(--bg);text-align:center;box-shadow:0 0 0 2px var(--bg);border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;top:-6px;right:-6px}.price-inputs{display:flex;align-items: center;gap:10px;margin-top:10px}.price-inputs input{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);outline:none;border-radius:10px;flex:1;min-width:0;padding:10px 12px;transition:border-color .15s}.price-inputs input:focus{border-color:var(--fg)}.price-dash{color:var(--muted);flex:none}.price-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.filter-actions{display:flex;border-top:1px solid var(--line);align-items: center;gap:10px;padding-top:16px}.filter-clear{font:inherit;border:1px solid var(--line);color:var(--fg);cursor:pointer;transition:border-color .15s ease,opacity .15s ease,transform .12s var(--ease-out);background:0 0;border-radius:12px;flex:none;padding:12px 18px;font-size:14px;font-weight:600}.filter-clear:hover:not(:disabled){border-color:var(--fg)}.filter-clear:active:not(:disabled){transform:scale(.97)}.filter-clear:disabled{opacity:.4;cursor:default}.filter-apply{font:inherit;background:var(--accent);color:var(--bg);cursor:pointer;transition:opacity .15s ease,transform .12s var(--ease-out);border:none;border-radius:12px;flex:1;padding:12px;font-size:14px;font-weight:600}.filter-apply:hover{opacity:.88}.filter-apply:active{transform:scale(.98)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 6px}.chip{border:1px solid var(--line);background:var(--chip);color:var(--fg);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .12s var(--ease-out);border-radius:999px;padding:6px 12px;font-size:13px}.chip:hover{border-color:var(--muted)}.chip:active,.see-all:active,.count .clear:active,select:active{transform:scale(.96)}.see-all{transition:border-color .15s ease,color .15s ease,transform .12s var(--ease-out)}.chip.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.chip.all-brands{display:inline-flex;color:var(--muted);background:0 0;border-style:dashed;align-items: center;gap:6px}.chip.all-brands:after{content:"";background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:50%;background-repeat:no-repeat;width:12px;height:12px}.promo-card{position:relative;display:flex;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:24px;flex-direction:column;align-items:stretch;gap:18px;margin:14px 0 6px;padding:16px;transition:border-color .15s,box-shadow .2s}.promo-card:hover{border-color:var(--muted)}.promo-close{position:absolute;z-index:5;display:grid;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer;transition:transform .16s var(--ease-out),background .16s ease;border-radius:50%;place-items: center;width:36px;height:36px;padding:0;top:12px;right:12px;box-shadow:0 2px 10px #0000002e}.promo-close:hover{background:var(--chip);transform:scale(1.06)}.promo-close:active{transform:scale(.94)}@media (max-width:699px){.promo-stage{--notch:52px;-webkit-mask:radial-gradient(circle var(--notch)at 100% 0,transparent 0 calc(var(--notch) - 1px),#000 var(--notch));mask:radial-gradient(circle var(--notch)at 100% 0,transparent 0 calc(var(--notch) - 1px),#000 var(--notch))}.promo-close{background:var(--card);color:var(--fg);box-shadow:none;border:0;border-radius:0 18px;width:52px;height:52px;top:16px;right:16px}.promo-close:hover,.promo-close:active{background:var(--card);color:var(--fg)}.promo-close svg{stroke-width:2.6;width:20px;height:20px}}@media (min-width:700px){.promo-card{flex-direction:row;justify-content:center;align-items: center;gap:48px;padding:30px 40px}}.promo-stage{position:relative;aspect-ratio:4/3;overflow:hidden;background:radial-gradient(120% 120% at 50% 30%,#fbfbfa 0%,#f1f0ee 55%,#e6e5e2 100%);border-radius:18px;flex-shrink:0;width:100%}@media (min-width:700px){.promo-stage{aspect-ratio:5/6;width:280px}}.promo-stage-viewer{position:absolute;opacity:0;pointer-events:none;background:0 0;border:0;width:100%;height:100%;transition:opacity .6s;inset:0}.promo-stage.is-ready .promo-stage-viewer{opacity:1}.promo-stage-spinner{position:absolute;z-index:1;animation:stage-spin .7s linear infinite;border:3px solid #0000001f;border-top-color:#00000073;border-radius:50%;width:30px;height:30px;margin:auto;inset:0}@media (prefers-reduced-motion:reduce){.promo-stage-spinner{animation-duration:1.6s}}.promo-body{display:flex;text-align:left;flex-direction:column;align-items: flex-start;gap:12px;min-width:0;padding:4px 6px 8px}@media (min-width:700px){.promo-body{max-width:380px;padding:0}}.promo-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:inline-flex;border:1px solid var(--line);border-radius:999px;align-items: center;padding:5px 11px 5px 9px;font-size:11px;font-weight:600}.promo-title{letter-spacing:-.02em;color:var(--fg);margin:0;font-size:24px;font-weight:700}@media (min-width:700px){.promo-title{font-size:30px}}.promo-desc{color:var(--muted);text-wrap:balance;max-width:40ch;margin:0;font-size:15px;line-height:1.5}@media (min-width:700px){.promo-desc{max-width:34ch;font-size:16px}}.promo-cta{display:inline-flex;background:var(--accent);color:var(--bg);text-decoration:none;white-space:nowrap;transition:transform .12s var(--ease-out),box-shadow .2s ease,filter .15s ease;border-radius:999px;justify-content:center;align-self: flex-start;align-items: center;gap:7px;min-height:46px;margin-top:10px;padding:12px 22px;font-size:15px;font-weight:600;box-shadow:0 1px 2px #0000001a,0 4px 14px #0000001f}.promo-cta .promo-cta-arrow{transition:transform .18s var(--ease-out)}.promo-cta:hover{opacity:.9;box-shadow:0 2px 4px #0000001f,0 6px 20px #0000002e}.promo-cta:hover .promo-cta-arrow{transform:translate(3px)}.promo-cta:active{transform:scale(.98)}.count{color:var(--muted);display:flex;align-items: center;gap:10px;margin:8px 0 2px;font-size:13px}.count .clear{font:inherit;color:var(--fg);background:var(--chip);border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:12px}.sentinel{height:1px}.brand-sec{margin-top:30px}.sec-head{position:sticky;top:calc(var(--nav-h,98px) + var(--controls-h,0px));z-index:15;display:flex;background:var(--bg);border-bottom:1px solid var(--line);backface-visibility:hidden;justify-content:space-between;align-items: center;gap:12px;margin-bottom:16px;padding:10px 0 12px;transform:translateZ(0)}.sec-head h2{letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0;margin:0;font-size:18px;font-weight:700}.sec-head.brand-title{margin-top:4px}.see-all{font:inherit;color:var(--muted);white-space:nowrap;cursor:pointer;white-space:nowrap;background:0 0;border:none;flex:none;font-size:13px}.see-all:hover{color:var(--fg)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:22px}.card{border:1px solid var(--line);overflow:hidden;background:var(--card);box-shadow:var(--shadow);text-decoration:none;color:inherit;display:flex;transition:transform .18s var(--ease-out),border-color .18s ease;font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;padding:0}.card:active{transform:scale(.985)}.card .thumb img{transition:transform .3s var(--ease-out)}.card:hover .thumb img{transform:scale(1.04)}.card:hover{border-color:var(--muted);transform:translateY(-3px)}.thumb{position:relative;aspect-ratio:1;background:var(--thumb-bg);overflow:hidden}.thumb .year{position:absolute;color:#fff;backdrop-filter:blur(2px);background:#0009;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:600;top:8px;left:8px}.thumb img{object-fit:cover;display:block;width:100%;height:100%}.fav{position:absolute;z-index:2;display:inline-flex;color:#fff;cursor:pointer;backdrop-filter:blur(3px);-webkit-tap-highlight-color:transparent;transition:transform .14s var(--ease-out),background-color .14s ease,color .14s ease;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items: center;width:32px;height:32px;top:8px;right:8px}.fav:hover{background:#0000009e}.fav:active{transform:scale(.86)}.fav.on{color:#ff4d5e;background:#00000080}.fav svg{display:block}.card .body{display:flex;flex-direction:column;flex:1;padding:12px 14px 14px}.body-id{display:flex;flex-direction:column;gap:2px}.body-meta{display:flex;flex-direction:column;margin-top:auto;padding-top:14px}.brand{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:700;line-height:1.2}.name{letter-spacing:-.01em;color:var(--fg);display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;font-size:15px;font-weight:600;line-height:1.25}.ref{letter-spacing:.01em;color:var(--muted);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;font-weight:500;line-height:1.2}.ref-k{opacity:.7;font-variant-numeric:normal;font-weight:600}.specs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.spec{display:inline-flex;background:var(--chip);border:1px solid var(--line);color:var(--fg);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;align-items: center;padding:4px 8px;font-size:11px;font-weight:600;line-height:1}.spec-size,.spec-material{color:var(--muted)}.spec-movement{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:700}.foot{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-top:11px}.price{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.price.req{color:var(--muted);letter-spacing:0;font-size:12.5px;font-weight:600}.empty{text-align:center;color:var(--muted);padding:80px 0}.empty.small{padding:30px 0}.panel{background:var(--bg);border:1px solid var(--line);display:flex;overflow:hidden;border-radius:16px;flex-direction:column;width:100%;max-width:460px;max-height:80vh}.panel-head{display:flex;border-bottom:1px solid var(--line);gap:10px;padding:16px}.panel-head input{flex:1}.close.static{position:static;flex:none}.brand-grid{overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content: start;gap:8px;padding:10px}.brand-cell{font:inherit;text-align:left;background:var(--chip);color:var(--fg);cursor:pointer;display:flex;transition:border-color .15s ease,transform .12s var(--ease-out);border:1px solid #0000;border-radius:12px;align-items: center;gap:10px;padding:10px}.brand-cell:active{transform:scale(.97)}.brand-cell:hover{border-color:var(--muted)}.brand-cell.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.brand-cell .bc-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;font-size:13.5px;font-weight:500}.brand-cell .bc-n{color:var(--muted);flex:none;font-size:12px}.brand-cell.all{grid-column:1/-1;border-color:var(--line);background:0 0;justify-content:center;font-weight:600}.welcome{background:var(--bg);border:1px solid var(--line);text-align:left;border-radius:18px;width:100%;max-width:420px;padding:28px}.welcome h2{letter-spacing:-.01em;margin:0 0 10px;font-size:26px;font-weight:800}.welcome p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.6}.welcome .w-divider{background:var(--line);height:1px;margin:20px 0}.welcome .w-steps{list-style:none;display:flex;flex-direction:column;gap:12px;margin:0 0 22px;padding:0}.welcome .w-steps li{text-indent:-26px;padding-left:26px;font-size:14.5px;line-height:1.4}.welcome .w-cta{font:inherit;background:var(--accent);color:var(--bg);cursor:pointer;transition:opacity .15s ease,transform .12s var(--ease-out);border:none;border-radius:12px;width:100%;padding:12px;font-weight:600}.welcome .w-cta:hover{opacity:.88}.welcome .w-cta:active{transform:scale(.98)}.settings{background:var(--bg);border:1px solid var(--line);overflow-y:auto;display:flex;border-radius:18px;flex-direction:column;gap:18px;width:100%;max-width:420px;max-height:min(88vh,760px);padding:22px}.settings .drag-handle{display:none}.favs{background:var(--bg);border:1px solid var(--line);overflow-y:auto;display:flex;animation:pop-in .24s var(--ease-out-quint);border-radius:18px;flex-direction:column;gap:16px;width:100%;max-width:920px;max-height:min(88vh,820px);padding:22px}.favs .drag-handle{display:none}.favs-count{display:inline-block;background:var(--chip);color:var(--muted);text-align:center;vertical-align:middle;border-radius:999px;min-width:22px;height:22px;margin-left:8px;padding:0 7px;font-size:13px;font-weight:700;line-height:22px}.favs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:0}.favs-empty{display:flex;text-align:center;color:var(--muted);flex-direction:column;align-items: center;gap:6px;padding:40px 20px 48px}.favs-empty svg{color:var(--line);margin-bottom:6px}.favs-empty p{color:var(--fg);margin:0;font-size:15px;font-weight:600}.favs-empty span{font-size:13px}@media (max-width:640px){.favs{max-height:90vh;padding:16px}.favs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}.settings-head{display:flex;border-bottom:1px solid var(--line);justify-content:space-between;align-items: center;padding-bottom:16px}.settings-head h2{margin:0;font-size:20px;font-weight:700}.set-row{display:flex;flex-direction:column}.set-row+.set-row,.set-row+.set-toggle,.set-toggle+.set-row,.set-toggle+.set-toggle{border-top:1px solid var(--line);padding-top:18px}.set-label{font-size:14.5px;font-weight:600}.set-desc{display:block;color:var(--muted);margin-top:3px;font-size:12.5px;font-weight:400}.set-row .seg{margin-top:10px}.seg{display:flex;background:var(--chip);border-radius:11px;gap:6px;padding:4px}.seg button{font:inherit;color:var(--muted);cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .12s var(--ease-out);background:0 0;border:none;border-radius:8px;flex:1;padding:8px 6px;font-size:13.5px}.seg button:active{transform:scale(.96)}.seg button.on{background:var(--bg);color:var(--fg);box-shadow:0 1px 3px #0000001f}.set-toggle{font:inherit;text-align:left;cursor:pointer;color:var(--fg);display:flex;background:0 0;border:none;align-items: center;gap:12px;padding:0}.set-toggle-text{display:flex;flex-direction:column;flex:1;min-width:0}.switch{background:var(--line);border-radius:999px;flex:none;width:46px;height:28px;padding:3px;transition:background-color .2s}.switch.on{background:#22c55e}.switch .knob{display:block;transition:transform .22s var(--ease-out-quint);background:#fff;border-radius:50%;width:22px;height:22px;box-shadow:0 1px 2px #0000004d}.switch.on .knob{transform:translate(18px)}.set-links{display:flex;flex-direction:column}.set-link{display:block;font:inherit;color:var(--muted);border:none;border-top:1px solid var(--line);cursor:pointer;text-align:left;text-decoration:none;background:0 0;width:100%;padding:14px 0;font-size:13.5px}.set-link:last-child{padding-bottom:2px}.set-link:hover{color:var(--fg)}@keyframes slide-up{0%{transform:translateY(100%)}}@keyframes slide-down{to{transform:translateY(100%)}}@keyframes fade-out{to{opacity:0}}footer{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin-top:60px;padding-top:24px;font-size:13px}footer a{color:inherit}footer a.fcat{color:inherit;text-decoration:underline;text-decoration-color:#e11d2a;text-decoration-thickness:1.5px;text-underline-offset:2px}.to-top{position:fixed;bottom:max(18px,env(safe-area-inset-bottom));z-index:40;border:1px solid var(--line);background:var(--card);color:var(--fg);display:flex;box-shadow:var(--shadow);cursor:pointer;opacity:0;pointer-events:none;transition:transform .16s var(--ease-out),opacity .16s ease,background-color .12s ease;border-radius:999px;justify-content:center;align-items: center;width:46px;height:46px;right:18px;transform:translateY(4px)}.to-top.on{opacity:1;pointer-events:auto;transform:translateY(0)}.to-top:hover{background:var(--chip);transform:translateY(-1px)}.to-top.on:hover{transform:translateY(-1px)}.to-top:active{transform:scale(.94)}@media (max-width:640px){.to-top{right:14px;bottom:max(14px,env(safe-area-inset-bottom));width:42px;height:42px}}.overlay{position:fixed;backdrop-filter:blur(4px);display:flex;z-index:100;animation:fade .2s var(--ease-out);background:#0000008c;justify-content:center;align-items: center;padding:20px;inset:0}@keyframes fade{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)scale(.97)}}.sheet,.panel,.welcome,.settings{animation:pop-in .24s var(--ease-out-quint)}.sheet{position:relative;background:var(--bg);border:1px solid var(--line);overflow:auto;display:grid;grid-template-columns:1.1fr 1fr;transition:transform .3s var(--ease-out-quint);border-radius:18px;width:100%;max-width:860px;max-height:90vh}.panel,.welcome,.settings,.favs{transition:transform .3s var(--ease-out-quint)}.sheet.dragging,.panel.dragging,.welcome.dragging,.settings.dragging,.favs.dragging{transition:none}.sheet-handle,.panel .drag-handle,.welcome .drag-handle{display:none}@media (max-width:640px){.sheet{grid-template-columns:1fr}}@media (min-width:641px){.sheet{overflow:hidden;grid-template-columns:1.05fr 1fr;height:min(88vh,625px)}.gallery{display:flex;background:var(--bg);border-right:1px solid var(--line);flex-direction:column;min-height:0;padding:18px}.stage{aspect-ratio:auto;background:0 0;flex:1;min-height:0}.stage img{object-fit:contain}.info{overflow:hidden;gap:10px;min-height:0}.info h2{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;-webkit-box-orient:vertical;flex:none}.info-scroll{overflow-y:auto;flex:auto;gap:10px;min-height:0}.d-specs{gap:10px;margin-top:20px;padding-top:20px}.d-spec{padding:13px 15px}.d-spec dt{font-size:11px}.d-spec dd{font-size:16px}}.close{position:absolute;z-index:5;display:grid;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer;transition:transform .16s var(--ease-out),background .16s ease;border-radius:50%;place-items: center;width:36px;height:36px;font-size:13px;line-height:1;top:12px;right:12px;box-shadow:0 2px 10px #0000002e}.close:hover{background:var(--chip);transform:scale(1.06)}.close:active{transform:scale(.94)}.gallery{position:relative;padding:20px}.stage{position:relative;aspect-ratio:1;background-color:var(--thumb-bg);overflow:hidden;background-position:50%;background-size:cover;border-radius:12px}.stage-zoom{display:block;cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0}.stage img{object-fit:cover;opacity:0;transition:opacity .25s var(--ease-out);width:100%;height:100%}.stage img.loaded{opacity:1}.stage-spinner{position:absolute;z-index:1;border:3px solid var(--line);border-top-color:var(--muted);opacity:0;animation:stage-spin .35s linear infinite,stage-spin-in .2s ease .18s forwards;border-radius:50%;width:34px;height:34px;margin:auto;inset:0}@keyframes stage-spin{to{transform:rotate(360deg)}}@keyframes stage-spin-in{to{opacity:1}}.lightbox{position:fixed;z-index:100;display:grid;cursor:zoom-out;animation:fade .18s ease;-webkit-user-select:none;user-select:none;background:#000000f0;place-items: center;inset:0}.lb-img{object-fit:contain;cursor:default;max-width:96vw;max-height:96vh}.lb-close{position:fixed;top:max(16px,env(safe-area-inset-top));display:grid;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;cursor:pointer;transition:background .16s ease,transform .16s var(--ease-out);background:#0009;border:1px solid #ffffff59;border-radius:50%;place-items: center;width:44px;height:44px;font-size:18px;line-height:1;right:16px;box-shadow:0 2px 10px #00000080}.lb-close:hover{background:#000c;transform:scale(1.06)}.lb-arrow{position:fixed;display:grid;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;cursor:pointer;transition:background .16s ease,transform .16s var(--ease-out);background:#0009;border:1px solid #ffffff59;border-radius:50%;place-items: center;width:52px;height:52px;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #00000080}.lb-arrow:hover{background:#000c}.lb-arrow.prev{left:16px}.lb-arrow.next{right:16px}.lb-arrow.prev:hover,.lb-arrow.next:hover{transform:translateY(-50%)scale(1.06)}.lb-counter{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));color:#fff;font-variant-numeric:tabular-nums;background:#ffffff24;border-radius:999px;padding:5px 12px;font-size:13px;left:50%;transform:translate(-50%)}@media (max-width:640px){.lb-arrow{width:44px;height:44px}.lb-arrow.prev{left:8px}.lb-arrow.next{right:8px}}.arrow{position:absolute;display:grid;border:1px solid var(--line);background:color-mix(in srgb,var(--bg)82%,transparent);backdrop-filter:blur(6px);color:var(--fg);cursor:pointer;opacity:.9;transition:transform .16s var(--ease-out),opacity .16s ease,background .16s ease;border-radius:50%;place-items: center;width:40px;height:40px;top:50%;transform:translateY(-50%)}.arrow.prev{left:10px}.arrow.next{right:10px}.arrow:hover{opacity:1;background:var(--bg);transform:translateY(-50%)scale(1.06)}.arrow:active{transform:translateY(-50%)scale(.94)}.counter{position:absolute;font-variant-numeric:tabular-nums;color:#fff;backdrop-filter:blur(2px);pointer-events:none;background:#0009;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;bottom:10px;left:50%;transform:translate(-50%)}.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.thumbs .t{overflow:hidden;border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:8px;width:54px;height:54px;padding:0}.thumbs .t.on{border-color:var(--accent)}.thumbs .t img{object-fit:cover;width:100%;height:100%}.info{display:flex;flex-direction:column;gap:8px;padding:44px 28px 28px}.info-scroll{display:flex;flex-direction:column;gap:8px}.info .brand{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;white-space:normal;overflow:visible;font-size:12px;font-weight:700}.info h2{letter-spacing:-.02em;margin:5px 0 0;font-size:27px;font-weight:700;line-height:1.15}.d-ref{color:var(--muted);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:500}.d-price{letter-spacing:-.01em;margin-top:6px;font-size:25px;font-weight:800}.d-specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));border-top:1px solid var(--line);gap:8px;margin:16px 0 0;padding-top:16px}@media (min-width:641px){.d-specs{grid-template-columns:repeat(2,minmax(0,1fr))}.d-specs[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}.d-spec{display:flex;background:var(--chip);border-radius:10px;flex-direction:column;gap:3px;min-width:0;padding:10px 12px}.d-spec dt{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:10.5px;font-weight:600}.d-spec dd{color:var(--fg);overflow-wrap:break-word;margin:0;font-size:15px;font-weight:700;line-height:1.2}.d-price.req{color:var(--muted);font-size:16px;font-weight:600}.desc{color:var(--muted);border-top:1px solid var(--line);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;flex:none;margin:10px 0 0;padding-top:14px;font-size:14px;line-height:1.55}.info-actions{display:flex;border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:auto;padding-top:18px}.info-actions-row{display:flex;align-items:stretch;gap:10px}.watch-nav{display:flex;gap:10px}.watch-nav-btn{display:inline-flex;border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s var(--ease-out);border-radius:12px;flex:1;justify-content:center;align-items: center;gap:6px;height:42px;padding:0 12px;font-size:13.5px;font-weight:600}.watch-nav-btn svg{color:var(--muted);width:16px;height:16px}.watch-nav-btn:hover:not(:disabled){border-color:var(--muted)}.watch-nav-btn:active:not(:disabled){transform:scale(.98)}.watch-nav-btn:disabled{opacity:.4;cursor:default}.source{display:inline-flex;background:var(--accent);color:var(--bg);text-decoration:none;transition:transform .16s var(--ease-out),opacity .16s ease;border-radius:12px;flex:1;justify-content:center;align-items: center;gap:8px;height:46px;padding:0 20px;font-size:14px;font-weight:600}.source svg{transition:transform .2s var(--ease-out)}.source:hover{opacity:.9}.source:hover svg{transform:translate(2px,-2px)}.source:active{transform:scale(.98)}.share-btn{position:relative;display:inline-flex;border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer;transition:transform .16s var(--ease-out),border-color .16s ease,color .16s ease;border-radius:12px;flex:none;justify-content:center;align-items: center;width:46px;height:46px;margin-left:auto}.share-btn:hover{border-color:var(--muted)}.share-btn:active{transform:scale(.94)}.share-btn.copied{color:#16a34a;border-color:#16a34a}.share-toast{position:absolute;white-space:nowrap;background:var(--fg);color:var(--bg);pointer-events:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;bottom:calc(100% + 8px);right:0}@media (max-width:1024px){.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}@media (max-width:640px){.nav{padding:22px 16px 14px;padding-top:calc(22px + env(safe-area-inset-top));padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right));gap:10px}.nav .logo{font-size:28px}.wrap{padding:0 16px 64px;padding-top:var(--nav-h,84px)}.controls{padding:8px 16px 12px;padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right));gap:8px;margin:0 -16px}.controls input[type=search]{flex:100%;min-width:0;margin-top:10px}.controls select{flex:1 1 0;min-width:0}.chips{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin:14px -16px 2px;padding:2px 16px}.chips::-webkit-scrollbar{display:none}.chips:after{content:"";flex:none;width:4px}.chip{flex:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.name{font-size:14px}.brand,.ref{font-size:10px}.specs{gap:5px;margin-bottom:10px}.spec{padding:3px 7px;font-size:10px}.card .body{padding:10px 11px 12px}.body-meta{padding-top:12px}.price{font-size:15px}.brand-sec{margin-top:24px}.sec-head h2{font-size:16px}.sec-head{top:calc(var(--nav-h,84px) + var(--controls-h,0px));padding:6px 16px 8px;padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right));margin-bottom:10px;margin-left:-16px;margin-right:-16px}.sec-head.brand-title{margin-top:0}.count{margin:6px 0 2px}.overlay{align-items: flex-end;padding:0}.sheet{--stage-h:max(140px,calc(96vh - var(--info-h,280px) - 39px));--stage-w:min(calc(100vw - 32px),calc(var(--stage-h)*var(--img-aspect,1)));display:flex;overflow:hidden;animation:slide-up .3s var(--ease-out-quint);touch-action:pan-y;border-bottom:none;border-radius:20px 20px 0 0;flex-direction:column;max-width:100%;height:auto;max-height:96vh}.desc,.thumbs{display:none}.sheet-handle{display:block;background:var(--line);border-radius:999px;flex:none;width:40px;height:5px;margin:8px auto 2px}.gallery{display:flex;flex-direction:column;flex:none;min-height:0;padding:16px 16px 8px}.stage{width:var(--stage-w);aspect-ratio:var(--img-aspect,1);background-color:var(--bg);--notch:46px;-webkit-mask:radial-gradient(circle var(--notch)at 100% 0,transparent 0 calc(var(--notch) - 1px),#000 var(--notch));mask:radial-gradient(circle var(--notch)at 100% 0,transparent 0 calc(var(--notch) - 1px),#000 var(--notch));border-radius:16px;flex:none;min-height:0;margin-inline-start:auto;margin-inline-end:auto}.close{top:22px;right:calc(8px + (100vw - 32px - var(--stage-w))/2);color:#fff;background:#0a0a0a;border-color:#0a0a0a;width:40px;height:40px;font-size:16px;font-weight:700;box-shadow:0 3px 12px #00000047}.close:hover,.close:active{background:#0a0a0a}.stage img{object-fit:contain}.info{padding:4px 20px calc(24px + env(safe-area-inset-bottom));flex:none}.info h2{font-size:22px}.d-specs[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.d-spec dd{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.d-price{font-size:21px}.info-actions{margin-top:18px}.arrow{width:36px;height:36px}.welcome{padding:10px 22px calc(24px + env(safe-area-inset-bottom));animation:slide-up .3s var(--ease-out-quint);border-bottom:none;border-radius:20px 20px 0 0;max-width:100%}.welcome .drag-handle{display:block;background:var(--line);border-radius:999px;width:40px;height:4px;margin:4px auto 14px}.panel{animation:slide-up .3s var(--ease-out-quint);border-bottom:none;border-radius:20px 20px 0 0;max-width:100%;max-height:88vh;padding-top:6px}.panel .drag-handle{display:block;background:var(--line);border-radius:999px;width:40px;height:4px;margin:4px auto}.settings-overlay{align-items: flex-end;padding:0}.settings{padding:10px 20px calc(24px + env(safe-area-inset-bottom));animation:slide-up .3s var(--ease-out-quint);border-bottom:none;border-radius:20px 20px 0 0;max-width:100%}.settings-overlay.closing{animation:fade-out .3s var(--ease-out-quint)forwards}.settings-overlay.closing .settings{animation:slide-down .3s var(--ease-out-quint)forwards}.settings .drag-handle{display:block;background:var(--line);border-radius:999px;width:40px;height:4px;margin:4px auto 8px}.favs{padding:10px 16px calc(24px + env(safe-area-inset-bottom));animation:slide-up .3s var(--ease-out-quint);border-bottom:none;border-radius:20px 20px 0 0;max-width:100%}.settings-overlay.closing .favs{animation:slide-down .3s var(--ease-out-quint)forwards}.favs .drag-handle{display:block;background:var(--line);border-radius:999px;width:40px;height:4px;margin:4px auto 8px}}@media (hover:none){.card:hover,.card:hover .thumb img{transform:none}.nav .logo:hover{opacity:1}}.skel-box,.skel-line{position:relative;display:block;background:var(--chip);overflow:hidden;border-radius:6px}.skel-box:after,.skel-line:after{content:"";position:absolute;animation:skel-shimmer 1.4s ease-in-out infinite;background:linear-gradient(90deg,#0000,#ffffff59,#0000);inset:0;transform:translate(-100%)}@media (prefers-color-scheme:dark){.skel-box:after,.skel-line:after{background:linear-gradient(90deg,#0000,#ffffff0f,#0000)}}:root[data-theme=dark] .skel-box:after,:root[data-theme=dark] .skel-line:after{background:linear-gradient(90deg,#0000,#ffffff0f,#0000)}:root[data-theme=light] .skel-box:after,:root[data-theme=light] .skel-line:after{background:linear-gradient(90deg,#0000,#ffffff59,#0000)}@keyframes skel-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skel-box:after,.skel-line:after{animation:none}}.skel-line{border-radius:999px;height:12px}.skel-line.w30{width:30%}.skel-line.w40{width:40%}.skel-line.w70{width:70%}.skel-logo{border-radius:8px;width:132px;height:30px}.skel-sub{width:170px;height:12px;margin-top:9px}.skel-circle{border-radius:50%;flex:none;width:40px;height:40px}.skel-input{border-radius:10px;flex:1;min-width:200px;height:40px}.skel-select{border-radius:10px;flex:none;width:150px;height:40px}.skel-ctrl-btn{border-radius:10px;flex:none;width:40px;height:40px}.skel-chip{border-radius:999px;flex:none;width:84px;height:34px}.skel-h2{width:160px;height:18px}.skel-seeall{width:80px;height:13px}.skel-card{pointer-events:none}.skel-card .thumb{border-radius:0}.skel-brand{width:42%;height:9px}.skel-name{width:82%;height:14px;margin-top:5px}.skel-name2{width:58%;height:14px}.skel-ref{width:34%;height:10px;margin-top:6px}.skel-specs{display:flex;gap:6px;margin-bottom:12px}.skel-spec{border-radius:999px;flex:none;height:20px}.skel-spec:first-child{width:62px}.skel-spec:nth-child(2){width:44px}.skel-spec:nth-child(3){width:52px}.skel-foot{border-top:1px solid var(--line);padding-top:11px}.skel-price{width:42%;height:16px}.skeleton .nav{position:static;background:0 0;border-bottom:none}.skeleton .wrap{padding-top:0}
