:root{--mist: #eef1ef;--shell: #ffffff;--basalt: #0f1513;--ink-2: #3f4a45;--muted: #56615c;--line: #d5dbd8;--hair: #e4e8e6;--accent: #0b6e7f;--accent-ink: #0a5966;--accent-tint: #e3f0f2;--ember: #c65a1e;--ember-ink: #7a3410;--ember-tint: #fbeee5;--wa: #187a42;--glass-light: rgba(255, 255, 255, .64);--glass-light-edge: rgba(255, 255, 255, .85);--glass-dark: rgba(20, 26, 24, .4);--glass-dark-edge: rgba(255, 255, 255, .25);--display: "Bricolage Grotesque", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--top: max(16px, env(safe-area-inset-top));--bottom: env(safe-area-inset-bottom);color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--mist);color:var(--basalt);font:16px/1.4 var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent);text-decoration:none}:focus-visible{outline:3px solid rgba(11,110,127,.55);outline-offset:2px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{position:relative;height:100dvh;max-width:520px;margin:0 auto;background:var(--mist);overflow:hidden}@media(min-width:560px){body{background:#dde3e0}.app{box-shadow:0 0 0 1px var(--line),0 30px 80px #0f15131f}}.scroll{height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.page{padding:calc(var(--top) + 8px) 20px calc(120px + var(--bottom));display:flex;flex-direction:column;gap:16px}.page.with-bar{padding-bottom:calc(190px + var(--bottom))}.page.white{background:var(--shell);min-height:100%}.glass{background:var(--glass-light);-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--glass-light-edge);box-shadow:inset 0 1px #ffffffe6,0 10px 30px #0f151329}.glass.dark{background:var(--glass-dark);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);border-color:var(--glass-dark-edge);box-shadow:inset 0 1px #ffffff59,0 10px 30px #0003;color:#fff}.glass.clear{background:#ffffff42;-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);border:1px solid rgba(255,255,255,.5);box-shadow:inset 0 1px #ffffffb3;color:#fff}@media(prefers-reduced-transparency:reduce){.glass{background:var(--shell);-webkit-backdrop-filter:none;backdrop-filter:none}.glass.dark,.glass.clear{background:#0f1513eb}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass{background:#fffffff5}.glass.dark,.glass.clear{background:#0f1513e0}}@media(prefers-contrast:more){.glass{background:var(--shell);border-color:var(--basalt)}.glass.dark,.glass.clear{background:var(--basalt);border-color:#fff}}.display{font-family:var(--display);font-weight:700;letter-spacing:-.02em;line-height:1.1}.title{font-family:var(--display);font-weight:700;font-size:34px;letter-spacing:-.02em;line-height:1.1}.eyebrow{font-size:13px;color:var(--muted)}.muted{color:var(--muted)}.num{font-variant-numeric:tabular-nums}.head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pill-btn{height:36px;padding:0 12px;border-radius:18px;border:1px solid var(--line);background:var(--shell);font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:6px}.seg{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;padding:4px;border-radius:16px;background:var(--shell)}.seg.grey{background:var(--mist)}.seg.wrap{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr))}.seg button{height:40px;border:0;border-radius:12px;background:transparent;color:var(--ink-2);font-size:15px}.seg button[aria-checked=true]{background:var(--basalt);color:#fff;font-weight:600}.seg.grey button[aria-checked=true]{background:var(--shell);color:var(--basalt);box-shadow:0 1px 3px #0f15131f}.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px}.chips::-webkit-scrollbar{display:none}.chip{flex:none;height:36px;padding:0 14px;border-radius:18px;border:1px solid var(--line);background:var(--shell);font-size:14px}.chip[aria-pressed=true]{background:var(--basalt);border-color:var(--basalt);color:#fff;font-weight:600}.hero{position:relative;height:300px;border-radius:32px;overflow:hidden;display:block;color:#fff;background:#26302c}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero .tag{position:absolute;top:14px;left:14px;padding:7px 12px;border-radius:16px;font-size:13px;font-weight:600}.hero .cap{position:absolute;left:10px;right:10px;bottom:10px;border-radius:22px;padding:14px 14px 14px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.hero .cap strong{font-family:var(--display);font-size:20px;display:block}.hero .cap small{font-size:13px;color:#ffffffdb}.price-chip{flex:none;height:40px;padding:0 14px;border-radius:20px;background:#fff;color:var(--basalt);font-size:15px;font-weight:600;display:inline-flex;align-items:center;font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.card{display:flex;flex-direction:column;gap:6px;color:var(--basalt);min-width:0}.card .ph{width:100%;aspect-ratio:1 / 1.05;border-radius:22px;object-fit:cover;background:var(--shell)}.card b{font-size:14px;font-weight:600;line-height:1.25}.card span{font-size:13px;color:var(--ink-2)}.tile{width:100%;aspect-ratio:1 / 1.05;border-radius:22px;background:var(--shell);display:grid;place-items:center;color:var(--accent)}.tile.small{width:52px;height:52px;aspect-ratio:auto;border-radius:14px;background:var(--mist);flex:none}.list{display:flex;flex-direction:column;background:var(--shell);border-radius:24px;padding:0 16px}.row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--hair);color:var(--basalt)}.row:last-child{border-bottom:0}.row .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.row .grow b{font-size:15px;font-weight:600}.row .grow span{font-size:13px;color:var(--muted)}.row img{width:52px;height:52px;border-radius:14px;object-fit:cover;flex:none}.warn{color:var(--ember-ink)!important}.dot{width:10px;height:10px;border-radius:5px;background:var(--accent);flex:none}.dot.warn{background:var(--ember)}.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.facts div{background:var(--mist);border-radius:16px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.facts b{font-family:var(--display);font-size:18px}.facts span{font-size:12px;color:var(--muted)}.detail{min-height:100%;background:var(--shell)}.photo-wrap{position:relative}.detail .photo{width:100%;height:400px;object-fit:cover;background:#26302c}.detail .sheet{position:relative;margin-top:-40px;background:var(--shell);border-radius:32px 32px 0 0;padding:22px 20px calc(120px + var(--bottom));display:flex;flex-direction:column;gap:14px}.float-top{position:absolute;top:var(--top);left:16px;right:16px;display:flex;justify-content:space-between;z-index:3}.round{width:44px;height:44px;border-radius:22px;display:grid;place-items:center;border:0}.round.wide{width:auto;padding:0 16px;font-weight:600;font-size:15px}.over-photo{position:absolute;bottom:56px;left:16px;padding:7px 12px;border-radius:16px;font-size:13px;font-weight:600}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{padding:6px 10px;border-radius:12px;background:var(--mist);color:var(--ink-2);font-size:13px}.tags span.on{background:var(--accent-tint);color:var(--accent-ink);font-weight:600}.notice{display:flex;gap:12px;align-items:flex-start;background:var(--ember-tint);border-radius:20px;padding:14px 16px;color:#5c3a26;font-size:14px}.notice b{display:block;color:var(--ember-ink);font-size:15px;margin-bottom:2px}.link-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:var(--shell);color:var(--basalt);text-align:left;width:100%}.link-row img{width:44px;height:44px;border-radius:12px;object-fit:cover;flex:none}.kit-face{width:52px;height:52px;border-radius:26px;object-fit:cover;flex:none}.link-row .grow{flex:1;display:flex;flex-direction:column;gap:1px}.link-row b{font-size:15px}.link-row span{font-size:13px;color:var(--muted)}.buybar{position:absolute;left:12px;right:12px;bottom:calc(18px + var(--bottom));min-height:72px;border-radius:36px;padding:10px 10px 10px 22px;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:5}.buybar .amount{font-family:var(--display);font-weight:700;font-size:24px;font-variant-numeric:tabular-nums}.buybar .sub{font-size:12px;color:var(--muted)}.btn{height:52px;padding:0 22px;border-radius:26px;border:0;background:var(--accent);color:#fff;font-size:17px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:inset 0 1px #ffffff4d;white-space:nowrap}.btn:disabled{background:#9aa6a0}.btn.wa{background:var(--wa);width:100%;height:56px;border-radius:28px}.btn.light{background:#fff;color:var(--basalt)}.btn.ghost{background:#0f15130f;color:var(--basalt);width:52px;padding:0;box-shadow:none}.tabs{position:absolute;left:16px;right:16px;bottom:calc(18px + var(--bottom));display:flex;gap:10px;align-items:center;z-index:6;transition:transform .28s ease;transform-origin:bottom center}.tabs nav{flex:1;height:64px;border-radius:32px;display:flex;align-items:center;justify-content:space-around;padding:0 4px;transition:height .28s ease}.tabs a{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;border-radius:24px;color:inherit;font-size:11px;min-width:56px}.tabs a[aria-current=page]{background:#0b6e7f1f;color:var(--accent);font-weight:600}.tabs.on-dark a[aria-current=page]{background:#ffffffeb;color:var(--accent)}.tabs.on-dark .search{color:#fff}.tabs .search{flex:none;width:64px;height:64px;border-radius:32px;display:grid;place-items:center;color:inherit;transition:width .28s ease,height .28s ease}.tabs .badge{position:absolute;top:0;right:8px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ember);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center}.tabs.small nav{height:52px}.tabs.small a{font-size:0;gap:0}.tabs.small .search{width:52px;height:52px}.brand-row{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.04em;color:var(--basalt)}.brand-row svg{width:32px;height:32px}.lede{margin-top:-6px;color:var(--ink-2);font-size:15px;line-height:1.4}.stack{display:flex;flex-direction:column;gap:10px}.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.stack .sec-head{margin-bottom:0}.sec-head h2{font-family:var(--display);font-size:20px;letter-spacing:-.01em}.sec-head a,.sec-head button{font-size:14px;font-weight:600;color:var(--accent);background:none;border:0;padding:0}.reel{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -20px;padding:0 20px}.reel::-webkit-scrollbar{display:none}.reel-tile{position:relative;flex:none;width:128px;aspect-ratio:9 / 16;border-radius:22px;overflow:hidden;background:#26302c;scroll-snap-align:start;color:#fff}.reel-tile>video,.reel-tile>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.reel-tile:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(to top,#0009,#0000)}.reel-tile span{position:absolute;left:10px;right:10px;bottom:10px;z-index:1;font-size:13px;font-weight:600;line-height:1.2;text-shadow:0 1px 6px rgba(0,0,0,.5)}.empty-note{display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:24px;background:var(--shell)}.empty-note b{font-family:var(--display);font-size:20px}.empty-note span{color:var(--ink-2);font-size:14px}.row-btns{display:flex;gap:8px;margin-top:6px}.btn.ghost.wide{width:auto;padding:0 18px}.clips{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;background:var(--basalt);scrollbar-width:none}.clips::-webkit-scrollbar{display:none}.clip{position:relative;height:100dvh;max-height:100%;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden;color:#fff}.clip>img,.clip>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}@media(prefers-reduced-motion:no-preference){.clip>img{animation:drift 14s ease-in-out infinite alternate}}@keyframes drift{0%{transform:scale(1.02) translate(0)}to{transform:scale(1.12) translate(-2%,-2%)}}.clip .shade{position:absolute;inset:auto 0 0;height:60%;background:linear-gradient(to top,#0000008c,#0000)}.clip .rail{position:absolute;right:12px;bottom:calc(300px + var(--bottom));display:flex;flex-direction:column;gap:12px}.clip .rail .round{width:52px;height:52px;border-radius:26px;font-size:12px;font-weight:700}.clip .text{position:absolute;left:16px;right:80px;bottom:calc(110px + var(--bottom) + var(--tags-h, 128px) + 14px);display:flex;flex-direction:column;gap:4px;text-shadow:0 1px 8px rgba(0,0,0,.5)}.clip .text strong{font-family:var(--display);font-size:22px}.clip .tagged{position:absolute;left:12px;right:12px;bottom:calc(100px + var(--bottom));display:flex;flex-direction:column;gap:8px}.clip .tagged a{height:60px;border-radius:22px;padding:0 8px 0 16px;display:flex;align-items:center;gap:10px;color:#fff}.clip .tagged a .grow{flex:1;min-width:0;display:flex;flex-direction:column}.clip .tagged a .grow b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clip .tagged a .grow span{font-size:12px;color:#ffffffdb}.clip-filters{position:absolute;top:var(--top);left:0;right:0;display:flex;justify-content:center;gap:6px;z-index:4}.clip-filters button{height:36px;padding:0 14px;border-radius:18px;font-size:14px}.clip-filters button[aria-checked=true]{background:#fffffff0;color:var(--basalt);font-weight:600;border-color:transparent}.bubble{align-self:flex-end;max-width:300px;background:#d9f7cf;border-radius:18px 18px 4px;padding:10px 14px;font-size:14px;line-height:1.45;white-space:pre-line}.stepper{display:inline-flex;align-items:center;gap:2px;background:var(--mist);border-radius:16px;padding:2px}.stepper button{width:32px;height:32px;border:0;border-radius:14px;background:transparent;font-size:18px;line-height:1}.stepper span{min-width:22px;text-align:center;font-size:14px;font-weight:600}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:600;color:var(--muted)}.field input{height:48px;border-radius:14px;border:1px solid var(--line);background:var(--shell);padding:0 14px;font-size:16px}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:60px 20px;color:var(--muted)}.empty b{color:var(--basalt);font-size:18px}.backdrop{position:absolute;inset:0;background:#0f151347;z-index:20;display:flex;align-items:flex-end}.sheet-panel{width:100%;margin:8px;margin-bottom:calc(8px + var(--bottom));border-radius:36px;padding:20px;display:flex;flex-direction:column;gap:14px;max-height:85%;overflow-y:auto}@media(prefers-reduced-motion:no-preference){.sheet-panel{animation:rise .28s cubic-bezier(.2,.9,.3,1.1)}}@keyframes rise{0%{transform:translateY(40px) scale(.96);opacity:0}to{transform:none;opacity:1}}.cur-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cur-list button{height:56px;border-radius:18px;border:1px solid var(--line);background:var(--shell);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 14px;text-align:left}.cur-list button b{font-size:15px}.cur-list button span{font-size:12px;color:var(--muted)}.cur-list button[aria-checked=true]{border:2px solid var(--accent)}.search-box{height:48px;border-radius:24px;border:1px solid var(--line);background:var(--shell);padding:0 16px;font-size:16px;width:100%}.toast{position:absolute;left:50%;top:calc(var(--top) + 8px);transform:translate(-50%);padding:10px 16px;border-radius:20px;font-size:14px;font-weight:600;z-index:30;white-space:nowrap}.install{display:flex;gap:12px;align-items:center;background:var(--shell);border-radius:20px;padding:12px 14px;font-size:14px}.install .grow{flex:1}.install button{border:0;background:transparent;color:var(--muted);width:32px;height:32px}
