@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--tg-bg: #0a0a0a;--tg-bg-elev: #141414;--tg-bg-subtle: #1a1a1a;--tg-fg: #fafafa;--tg-fg-muted: #a3a3a3;--tg-fg-subtle: #6b6b6b;--tg-line: #262626;--tg-line-strong: #3f3f3f;--tg-code-bg: #141414;--tg-code-fg: #fafafa;--tg-accent: #ef4444;--tg-accent-hover: #f87171;--tg-accent-fg: #0a0a0a;--tg-accent-soft: #2a0a0a;--tg-accent-text: #fca5a5;--tg-grad-from: #fafafa;--tg-grad-mid: #ef4444;--tg-grad-to: #dc2626;--tg-ink-blue: #3b82f6;--tg-ink-blue-deep: #2563eb;--tg-ink-red: #ff3b3b;--tg-ink-red-deep: #dc2626;--tg-success: #16a34a;--tg-warn: #ea580c;--tg-danger: #dc2626;--tg-s-1: 4px;--tg-s-2: 8px;--tg-s-3: 12px;--tg-s-4: 16px;--tg-s-5: 24px;--tg-s-6: 32px;--tg-s-7: 48px;--tg-s-8: 64px;--tg-s-9: 96px;--tg-s-10: 128px;--tg-font-body: "Bricolage Grotesque Variable", "Bricolage Grotesque", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Segoe UI", Roboto, sans-serif;--tg-font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--tg-font-display: var(--tg-font-body);--tg-fs-xs: .78rem;--tg-fs-sm: .88rem;--tg-fs-base: 1rem;--tg-fs-lg: 1.13rem;--tg-fs-xl: 1.31rem;--tg-fs-2xl: 1.6rem;--tg-fs-3xl: 2rem;--tg-fs-4xl: 2.6rem;--tg-fs-5xl: 3.4rem;--tg-fs-6xl: clamp(2.8rem, 6vw, 5rem);--tg-lh-tight: 1.15;--tg-lh-snug: 1.35;--tg-lh-body: 1.7;--tg-shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--tg-shadow-md: 0 4px 14px rgba(0, 0, 0, .55);--tg-shadow-lg: 0 16px 48px rgba(0, 0, 0, .65);--tg-r-sm: 6px;--tg-r-md: 10px;--tg-r-lg: 16px;--tg-r-xl: 24px;--tg-r-full: 999px;--tg-container: 1120px;--tg-nav-h: 64px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--tg-bg);color:var(--tg-fg);font-family:var(--tg-font-body);font-size:var(--tg-fs-base);line-height:var(--tg-lh-snug);font-feature-settings:"ss01","ss02";-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em}button{font-family:inherit}.muted{color:var(--tg-fg-muted)}.mono{font-family:var(--tg-font-mono);font-size:.92em}.container{width:100%;max-width:var(--tg-container);margin:0 auto;padding:0 var(--tg-s-5)}.container-narrow{max-width:760px}.app{min-height:100dvh;display:flex;flex-direction:column}.page{flex:1;padding:var(--tg-s-6) 0 var(--tg-s-9)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--tg-s-2);padding:10px 18px;border:1px solid transparent;border-radius:var(--tg-r-md);font-size:var(--tg-fs-sm);font-weight:650;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease,transform .1s ease,color .15s ease}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--tg-accent);color:var(--tg-accent-fg);border-color:var(--tg-accent);font-weight:700}.btn-primary:hover:not(:disabled){background:var(--tg-accent-hover);border-color:var(--tg-accent-hover)}.btn-secondary{background:var(--tg-bg-subtle);color:var(--tg-fg);border-color:var(--tg-line-strong)}.btn-secondary:hover:not(:disabled){background:var(--tg-bg-elev);border-color:var(--tg-accent)}.btn-ghost{background:transparent;color:var(--tg-fg-muted)}.btn-ghost:hover:not(:disabled){background:var(--tg-bg-subtle);color:var(--tg-fg)}.btn-sm{padding:7px 12px;font-size:var(--tg-fs-xs)}.btn-lg{padding:13px 26px;font-size:var(--tg-fs-base)}.linklike{background:none;border:0;padding:0;color:var(--tg-accent-text);font:inherit;cursor:pointer;text-decoration:none}.linklike:hover{text-decoration:underline}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--tg-accent);outline-offset:2px;border-radius:var(--tg-r-sm)}.topbar{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--tg-bg) 86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--tg-line)}.topbar-inner{max-width:var(--tg-container);margin:0 auto;min-height:var(--tg-nav-h);padding:var(--tg-s-2) var(--tg-s-5);display:flex;align-items:center;gap:var(--tg-s-4)}.brand{display:inline-flex;align-items:center;gap:var(--tg-s-2);flex:none}.brand-mark{display:block;border-radius:6px}.brand-name{font-weight:750;font-size:var(--tg-fs-lg);letter-spacing:-.02em}.topbar-search{position:relative;flex:1 1 220px;min-width:0;max-width:540px;display:flex;align-items:center}.topbar-search-icon{position:absolute;left:14px;color:var(--tg-fg-subtle);pointer-events:none}.topbar-search input{width:100%;height:42px;padding:0 16px 0 42px;border:1px solid var(--tg-line-strong);border-radius:var(--tg-r-full);background:var(--tg-bg-subtle);color:var(--tg-fg);font:inherit;font-size:var(--tg-fs-sm)}.topbar-search input::placeholder{color:var(--tg-fg-subtle)}.topbar-search input:focus-visible{outline:none;border-color:var(--tg-accent)}.topbar-actions{display:flex;align-items:center;gap:var(--tg-s-2);flex:none}.locale-toggle{display:inline-flex;border:1px solid var(--tg-line-strong);border-radius:var(--tg-r-full);overflow:hidden}.locale-toggle button{background:transparent;border:0;color:var(--tg-fg-muted);padding:6px 11px;font-size:var(--tg-fs-xs);font-weight:700;cursor:pointer}.locale-toggle button.active{background:var(--tg-accent);color:var(--tg-accent-fg)}.filterbar{display:flex;align-items:center;justify-content:space-between;gap:var(--tg-s-4);flex-wrap:wrap;margin-bottom:var(--tg-s-5)}.filterbar-right{display:flex;align-items:center;gap:var(--tg-s-3);flex-wrap:wrap}.chips{display:flex;flex-wrap:wrap;gap:var(--tg-s-2)}.chip{border:1px solid var(--tg-line);background:var(--tg-bg-subtle);color:var(--tg-fg-muted);border-radius:var(--tg-r-full);padding:6px 14px;font-size:var(--tg-fs-sm);font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.chip:hover{color:var(--tg-fg);border-color:var(--tg-line-strong)}.chip.active{background:var(--tg-accent);color:var(--tg-accent-fg);border-color:var(--tg-accent)}.chip-outline{background:transparent}.chip-outline.active{background:transparent;color:var(--tg-accent-text);border-color:var(--tg-accent)}.chip-mini{display:inline-block;border:1px solid var(--tg-line);border-radius:var(--tg-r-full);padding:1px 8px;margin-left:var(--tg-s-2);font-size:var(--tg-fs-xs);color:var(--tg-fg-muted)}.chip-solid{background:var(--tg-accent-soft);border:1px solid color-mix(in srgb,var(--tg-accent) 40%,var(--tg-line));color:var(--tg-accent-text);border-radius:var(--tg-r-full);padding:4px 12px;font-size:var(--tg-fs-sm);font-weight:650}.sort{height:36px;padding:0 var(--tg-s-3);border:1px solid var(--tg-line-strong);border-radius:var(--tg-r-md);background:var(--tg-bg-subtle);color:var(--tg-fg);font:inherit;font-size:var(--tg-fs-sm)}.results-head{margin:0 0 var(--tg-s-5);font-size:var(--tg-fs-lg);color:var(--tg-fg-muted)}.results-q{color:var(--tg-fg);font-weight:700}.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:var(--tg-s-3)}.app-card{display:flex;align-items:center;gap:var(--tg-s-4);padding:var(--tg-s-4);border:1px solid var(--tg-line);border-radius:var(--tg-r-lg);background:var(--tg-bg-elev);color:inherit;transition:border-color .15s ease,transform .12s ease,box-shadow .15s ease}.app-card:hover{border-color:var(--tg-line-strong);transform:translateY(-2px);box-shadow:var(--tg-shadow-md)}.app-card-text{min-width:0;display:flex;flex-direction:column;gap:3px}.app-card-name{font-weight:700;font-size:var(--tg-fs-base);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-card-sub{font-size:var(--tg-fs-xs);color:var(--tg-fg-subtle);font-weight:600}.app-card-desc{margin-top:2px;font-size:var(--tg-fs-sm);color:var(--tg-fg-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.shelf{margin-bottom:var(--tg-s-6)}.shelf-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--tg-s-3)}.shelf-title{font-size:var(--tg-fs-xl)}.shelf-seeall{background:none;border:0;color:var(--tg-accent-text);font:inherit;font-weight:600;cursor:pointer}.shelf-row{display:flex;gap:var(--tg-s-3);overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:var(--tg-s-2);scrollbar-width:thin}.shelf-row .app-card{scroll-snap-align:start}.app-card-compact{flex:0 0 240px;width:240px}.icon-tile{flex:none;border-radius:24%;object-fit:cover;background:var(--tg-bg-subtle)}.icon-tile-generated{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-family:var(--tg-font-display);text-shadow:0 1px 2px rgba(0,0,0,.28);box-shadow:inset 0 1.5px #ffffff5c,inset 0 -10px 18px #0003,var(--tg-shadow-sm);-webkit-user-select:none;user-select:none}.loadmore{display:flex;justify-content:center;margin-top:var(--tg-s-6)}.state{text-align:center;padding:var(--tg-s-9) var(--tg-s-4);display:flex;flex-direction:column;align-items:center;gap:var(--tg-s-3)}.state-glyph{font-size:40px;opacity:.85}.state-title{margin:0;font-size:var(--tg-fs-lg);font-weight:700}.state-message{margin:0;color:var(--tg-fg-muted);max-width:42ch}.skel{display:block;border-radius:var(--tg-r-sm);background:linear-gradient(90deg,var(--tg-bg-subtle) 25%,var(--tg-line) 37%,var(--tg-bg-subtle) 63%);background-size:400% 100%;animation:skel-shimmer 1.4s ease infinite}.skel-line{height:11px;margin:4px 0}.skel-icon{width:60px;height:60px;border-radius:24%;flex:none}.skel-icon-lg{width:88px;height:88px;border-radius:24%}.skeleton-card{pointer-events:none}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.back-link{display:inline-block;margin-bottom:var(--tg-s-5);color:var(--tg-fg-muted);font-weight:600}.back-link:hover{color:var(--tg-fg)}.detail-hero{display:flex;align-items:center;gap:var(--tg-s-5);margin-bottom:var(--tg-s-5)}.detail-hero-text{min-width:0}.detail-title{font-size:var(--tg-fs-3xl);line-height:1.1}.detail-developer{margin:var(--tg-s-2) 0 0;color:var(--tg-fg-muted);font-size:var(--tg-fs-sm);font-family:var(--tg-font-mono)}.detail-id-sep{margin:0 5px;color:var(--tg-fg-subtle)}.scope-head{margin-bottom:var(--tg-s-5)}.scope-name{font-size:var(--tg-fs-2xl);font-family:var(--tg-font-mono);letter-spacing:-.01em}.detail-chips{display:flex;flex-wrap:wrap;gap:var(--tg-s-2);margin-top:var(--tg-s-3)}.install-panel{margin:var(--tg-s-5) 0;padding:var(--tg-s-5);border:1px solid var(--tg-line);border-radius:var(--tg-r-lg);background:var(--tg-bg-elev)}.install-actions{display:flex;flex-wrap:wrap;gap:var(--tg-s-3)}.install-hint{margin:var(--tg-s-3) 0 0;color:var(--tg-fg-muted);font-size:var(--tg-fs-sm);line-height:1.5}.install-origin label{display:block;margin-bottom:var(--tg-s-2);font-weight:650;font-size:var(--tg-fs-sm)}.install-origin-row{display:flex;gap:var(--tg-s-2)}.install-origin-row input{flex:1;min-width:0}.detail-section{margin-top:var(--tg-s-6)}.detail-section h2{font-size:var(--tg-fs-lg);margin-bottom:var(--tg-s-3)}.detail-desc{margin:0;color:var(--tg-fg);line-height:var(--tg-lh-body);white-space:pre-wrap}.kv{display:grid;grid-template-columns:64px 1fr;gap:var(--tg-s-2) var(--tg-s-3);margin:0 0 var(--tg-s-3)}.kv dt{color:var(--tg-fg-subtle);font-size:var(--tg-fs-sm)}.kv dd{margin:0;word-break:break-all}.bare{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--tg-s-2)}.page-title{font-size:var(--tg-fs-2xl);margin-bottom:var(--tg-s-5)}.notice{padding:var(--tg-s-5);border:1px solid var(--tg-line);border-radius:var(--tg-r-lg);background:var(--tg-bg-elev)}.form{display:flex;flex-direction:column;gap:var(--tg-s-4)}.field{display:flex;flex-direction:column;gap:6px;font-size:var(--tg-fs-sm);font-weight:600}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--tg-s-4)}.field input,.field select,.field textarea,.install-origin input{height:42px;padding:0 var(--tg-s-3);border:1px solid var(--tg-line-strong);border-radius:var(--tg-r-md);background:var(--tg-bg-subtle);color:var(--tg-fg);font:inherit;font-weight:500}.field textarea{height:auto;padding:var(--tg-s-2) var(--tg-s-3);resize:vertical}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.install-origin input:focus-visible{outline:none;border-color:var(--tg-accent)}.slug-row{display:flex;align-items:center;gap:var(--tg-s-2)}.slug-row input{flex:1;min-width:0}.slug-scope{font-family:var(--tg-font-mono);font-size:var(--tg-fs-sm);color:var(--tg-fg-muted);white-space:nowrap}.slug-sep{color:var(--tg-fg-subtle)}.field-hint{font-weight:400;font-size:var(--tg-fs-xs);color:var(--tg-fg-subtle)}.tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:42px;padding:5px var(--tg-s-2);border:1px solid var(--tg-line-strong);border-radius:var(--tg-r-md);background:var(--tg-bg-subtle)}.tag-input:focus-within{border-color:var(--tg-accent)}.tag-chip{display:inline-flex;align-items:center;gap:2px;padding:3px 4px 3px 10px;border-radius:var(--tg-r-full);background:var(--tg-accent-soft);color:var(--tg-accent-text);font-size:var(--tg-fs-xs);font-weight:600;font-family:var(--tg-font-mono)}.tag-x{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--tg-r-full);background:transparent;color:inherit;font-size:15px;line-height:1;cursor:pointer}.tag-x:hover{background:color-mix(in srgb,var(--tg-accent) 24%,transparent)}.field .tag-input input.tag-entry{flex:1;min-width:90px;height:30px;padding:0 4px;border:none;background:transparent}.field .tag-input input.tag-entry:focus-visible{outline:none}.adv{border:1px solid var(--tg-line);border-radius:var(--tg-r-md);padding:var(--tg-s-3) var(--tg-s-4);background:var(--tg-bg-elev)}.adv>summary{cursor:pointer;font-weight:650;font-size:var(--tg-fs-sm);color:var(--tg-fg-muted)}.adv[open]>summary{margin-bottom:var(--tg-s-4);color:var(--tg-fg)}.adv>.field,.adv>.field-row{margin-top:var(--tg-s-3)}.field-error{margin:0;color:var(--tg-accent-text);font-size:var(--tg-fs-sm)}.form-errors{margin:0;padding:var(--tg-s-3) var(--tg-s-4);list-style:disc inside;border:1px solid color-mix(in srgb,var(--tg-danger) 50%,var(--tg-line));border-radius:var(--tg-r-md);background:var(--tg-accent-soft);color:var(--tg-accent-text);font-size:var(--tg-fs-sm)}.footer{border-top:1px solid var(--tg-line);padding:var(--tg-s-6) 0;color:var(--tg-fg-muted);font-size:var(--tg-fs-sm)}.footer .container{display:flex;align-items:center;gap:var(--tg-s-2);flex-wrap:wrap}.footer-sep{color:var(--tg-fg-subtle)}@media(max-width:720px){.topbar-inner{flex-wrap:wrap;padding:var(--tg-s-2) var(--tg-s-4)}.topbar-search{order:3;flex-basis:100%;max-width:none}.container{padding:0 var(--tg-s-4)}.app-grid,.field-row{grid-template-columns:1fr}.detail-hero{gap:var(--tg-s-4)}.detail-title{font-size:var(--tg-fs-2xl)}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
