:root{color-scheme:light;--bg:#f6f5fb;--surface:#fff;--ink:#171525;--muted:#6f6b7e;--line:#e7e3ef;--primary:#5748dc;--primary-2:#8c50d9;--soft:#eeebff;--green:#267446;--green-bg:#e3f8e9;--gold:#8a6500;--gold-bg:#fff1b8;--pink:#9a3767;--shadow:0 20px 55px #32275c14;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% -5%,#dcd7ff 0,transparent 30%),radial-gradient(circle at 95% 24%,#ffe0ef 0,transparent 25%),var(--bg);color:var(--ink)}body.drawer-open{overflow:hidden}button,input,select{font:inherit}.shell,.topbar{width:min(1180px,100%);margin:auto}.topbar{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:950;text-decoration:none}.logo{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;color:#fff;background:linear-gradient(140deg,var(--primary),#a64fbd);box-shadow:0 12px 28px #5748dc42}.header-tools{display:flex;align-items:center;gap:7px}.icon-button,.share-button,.update-button,select{min-height:44px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);padding:9px 12px;font-weight:850;cursor:pointer}.icon-button{min-width:44px;font-size:1.15rem}.share-button,.update-button{white-space:nowrap}.update-button.ready{background:var(--primary);color:#fff;border-color:var(--primary)}select{text-transform:uppercase}.shell{padding:0 18px 120px}.hero{padding:clamp(52px,9vw,100px) 0 44px;max-width:970px}.eyebrow,.section-kicker{color:var(--primary);font-weight:950;letter-spacing:.13em;text-transform:uppercase;font-size:.76rem}.hero h1{font-size:clamp(3.25rem,9.6vw,7.2rem);line-height:.87;letter-spacing:-.072em;margin:15px 0 26px}.hero h1 em{font-style:normal;color:transparent;background:linear-gradient(90deg,var(--primary),#bd4d8c);background-clip:text;-webkit-background-clip:text}.hero>p{font-size:clamp(1.05rem,2.3vw,1.35rem);line-height:1.65;color:var(--muted);max-width:770px}.trust{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.trust span{padding:9px 12px;border:1px solid #dcd7f2;border-radius:999px;background:#ffffffa8;color:#5f5a70;font-size:.84rem;font-weight:800}.discover{position:relative;z-index:6}.search-box{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:5px 9px 5px 17px;border:2px solid #d8d2eb;border-radius:20px;background:var(--surface);box-shadow:var(--shadow);transition:.18s}.search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 5px #5748dc16,var(--shadow)}.search-box>span{font-size:1.45rem;color:var(--primary)}.search-box input{min-height:58px;width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:clamp(1rem,2.4vw,1.2rem)}.clear-search{min-width:44px;height:44px;border:0;border-radius:13px;background:var(--soft);color:var(--muted);cursor:pointer}.filters{display:flex;gap:9px;overflow-x:auto;padding:14px 1px 4px;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filter-pill{flex:0 0 auto;min-height:44px;padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-weight:850;cursor:pointer}.filter-pill.active{background:var(--ink);border-color:var(--ink);color:#fff}.summary-line{display:flex;justify-content:space-between;gap:12px;margin:13px 1px 0;color:var(--muted);font-size:.84rem}.catalog-section{margin-top:55px}.catalog-section[hidden]{display:none}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px}.section-head h2{font-size:clamp(1.7rem,4vw,2.35rem);letter-spacing:-.035em;margin:6px 0 0}.section-head p{max-width:470px;color:var(--muted);line-height:1.5;margin:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cards.viral{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:25px;background:var(--surface);box-shadow:var(--shadow);transition:transform .2s,border-color .2s,box-shadow .2s}.catalog-card:hover{transform:translateY(-3px);border-color:#bfb6ee;box-shadow:0 24px 68px #40327622}.catalog-card.completed{border-color:#8bc69c}.card-media{position:relative;height:145px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 75% 16%,#fff4b0 0 8%,transparent 9%),linear-gradient(135deg,#4b3aa1,#ca6092);color:#fff;font-size:4.2rem}.card-media img{width:100%;height:100%;object-fit:cover}.cards.viral .card-media{height:180px}.category-chip{position:absolute;left:13px;top:13px;padding:7px 10px;border-radius:999px;background:#151327c9;color:#fff;font-size:.73rem;font-weight:900;backdrop-filter:blur(10px)}.card-body{display:flex;flex:1;flex-direction:column;padding:20px}.card-flags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.badge,.metric,.complete-mark{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:var(--soft);color:#5a4fc3;font-size:.75rem;font-weight:900}.badge.new{background:var(--green-bg);color:var(--green)}.badge.fun{background:var(--gold-bg);color:var(--gold)}.complete-mark{background:var(--green-bg);color:var(--green)}.catalog-card h3{font-size:1.3rem;line-height:1.2;letter-spacing:-.02em;margin:0 0 9px}.catalog-card p{color:var(--muted);line-height:1.53;margin:0;flex:1}.card-meta{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 14px}.metric{color:var(--muted);background:#f4f2f8}.rating{color:#755600;background:#fff0b2}.share-count{color:#8d3d68;background:#ffe9f3}.card-actions{display:flex;gap:8px;flex-wrap:wrap}.open-card,.retake-card,.show-more{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:0;border-radius:14px;padding:11px 15px;font-weight:900;text-decoration:none;cursor:pointer}.open-card{color:#fff;background:linear-gradient(135deg,var(--primary),#7567ee)}.retake-card,.show-more{color:var(--ink);border:1px solid var(--line);background:#f1eef8}.show-more{display:flex;margin:22px auto 0;min-width:180px}.empty{grid-column:1/-1;padding:55px 20px;border:1px dashed #cfc8dd;border-radius:24px;color:var(--muted);text-align:center}.foot{margin-top:72px;padding:30px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem;line-height:1.65}.loading-card{padding:40px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--muted);text-align:center}.loading-dot{letter-spacing:.2em;color:var(--muted)}.drawer-backdrop{position:fixed;z-index:30;inset:0;background:#15102080;backdrop-filter:blur(3px)}.drawer{position:fixed;z-index:31;top:0;right:0;width:min(380px,90vw);height:100%;padding:20px;background:var(--surface);box-shadow:-30px 0 80px #1e173a40;overflow:auto}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.drawer h2{font-size:1.6rem}.drawer-list{display:grid;gap:8px;margin-top:20px}.drawer-link{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:54px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#f7f5fb;color:var(--ink);font-weight:850;text-align:left;cursor:pointer}.drawer-link span:last-child{color:var(--muted);font-size:.83rem}.bottom-nav{position:fixed;z-index:20;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translateX(-50%);display:none;align-items:center;gap:4px;width:min(440px,calc(100% - 20px));padding:7px;border:1px solid #ded9e9;border-radius:20px;background:#ffffffed;box-shadow:0 18px 50px #281e4850;backdrop-filter:blur(18px)}.bottom-link{flex:1;display:grid;place-items:center;gap:2px;min-height:52px;border:0;border-radius:14px;background:transparent;color:var(--muted);font-size:.68rem;font-weight:850;text-decoration:none;cursor:pointer}.bottom-link b{font-size:1.15rem}.bottom-link.active{background:var(--soft);color:var(--primary)}#toast{position:fixed;z-index:50;left:50%;bottom:88px;transform:translate(-50%,120px);padding:12px 17px;border-radius:14px;background:var(--ink);color:#fff;font-weight:850;transition:.22s}#toast.show{transform:translate(-50%,0)}noscript{display:block;padding:18px;text-align:center;background:#2c2558;color:#fff}[hidden]{display:none!important}@media(max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cards.viral{grid-template-columns:1fr}.share-button{display:none}}@media(max-width:640px){.topbar{padding:10px 12px}.brand span:last-child{display:none}.update-button{display:none}.shell{padding:0 11px 112px}.hero{padding-top:45px}.hero h1{font-size:clamp(3.25rem,15vw,5.7rem)}.cards{grid-template-columns:1fr;gap:13px}.catalog-section{margin-top:42px}.section-head{display:block}.section-head p{margin-top:7px}.card-media,.cards.viral .card-media{height:150px}.card-body{padding:18px}.bottom-nav{display:flex}.summary-line span:last-child{display:none}}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#111019;--surface:#1c1a26;--ink:#f8f5ff;--muted:#b8b3c4;--line:#363241;--soft:#2d2940;--shadow:0 20px 55px #0003}.trust span{background:#242131;color:#c4bece;border-color:#3a3549}.filter-pill.active{background:#f4efff;color:#211c2c}.search-box,.bottom-nav{background:#1c1a26ed}.metric{background:#292632}.retake-card,.show-more,.drawer-link{background:#282430}.drawer-backdrop{background:#050308a6}.category-chip{background:#090812c9}}
.search-suggestions{position:absolute;z-index:8;top:76px;left:0;right:0;max-height:350px;overflow:auto;padding:7px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 22px 65px #21183c38}.search-suggestions button{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:9px;width:100%;min-height:58px;padding:9px;border:0;border-radius:13px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.search-suggestions button:hover,.search-suggestions button:focus{background:var(--soft)}.search-suggestions button>span:first-child{font-size:1.45rem}.search-suggestions small{display:block;margin-top:3px;color:var(--muted)}
.search-suggestions button.active{background:var(--soft)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Keep the hub consistently readable when Android forces a dark color scheme. */
:root{color-scheme:only light;--ink:#171525;--muted:#575264}
.hero>p,.section-head p,.catalog-card p{font-weight:500}
.pin-card{position:absolute;z-index:3;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ffffff66;border-radius:14px;background:#171329cc;color:#fff;font-size:1.35rem;cursor:pointer;backdrop-filter:blur(10px)}
.pin-card:hover,.pin-card:focus-visible{outline:3px solid #fff7;outline-offset:2px}.catalog-card.pinned{border-color:#9f8af0;box-shadow:0 20px 65px #5947c42c}.cards.pinned-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.cards.pinned-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.cards.pinned-grid{grid-template-columns:1fr}}
.trust span{color:#4f4a5c}
.search-box input::placeholder{color:#686274;opacity:1}
@media(prefers-color-scheme:dark){
  :root{color-scheme:only light;--bg:#f6f5fb;--surface:#fff;--ink:#171525;--muted:#575264;--line:#e7e3ef;--soft:#eeebff;--shadow:0 20px 55px #32275c14}
  .trust span{background:#ffffffd9;color:#4f4a5c;border-color:#dcd7f2}
  .filter-pill.active{background:#171525;color:#fff}
  .search-box,.bottom-nav{background:#ffffffed}
  .metric{background:#f4f2f8;color:#575264}
  .retake-card,.show-more,.drawer-link{background:#f1eef8;color:#171525}
  .drawer-backdrop{background:#15102080}
  .category-chip{background:#151327c9}
}
@media(max-width:640px){
  .header-tools{gap:5px}
  .update-button{display:inline-flex;align-items:center;justify-content:center;min-width:74px;padding:8px 9px}
}
.hero-languages{display:flex;gap:4px;padding:4px;border:1px solid #dcd7f2;border-radius:999px;background:#ffffffbf}
.hero-languages button{min-width:40px;min-height:34px;padding:6px 8px;border:0;border-radius:999px;background:transparent;color:#514b5e;font-size:.76rem;font-weight:850;cursor:pointer}
.hero-languages button.active{background:#5748dc;color:#fff;box-shadow:0 5px 14px #5748dc36}
.hero-languages button:focus-visible{outline:3px solid #5748dc35;outline-offset:2px}
@media(max-width:420px){.hero-languages{width:100%;justify-content:space-between}.hero-languages button{flex:1}}
