:root{--bg: #0b0b0f;--surface: rgb(255 255 255 / .06);--surface-strong: rgb(255 255 255 / .12);--border: rgb(255 255 255 / .1);--text: #f5f2ea;--text-dim: rgb(245 242 234 / .66);--text-faint: rgb(245 242 234 / .42);--accent: var(--tg-theme-button-color, #e8b04a);--want: #2ee57f;--skip: #ff4d5e;--gold: #f5c518;--radius: 22px;--fly-ms: .32s;--ease-out: cubic-bezier(.2, .7, .3, 1);--spring: cubic-bezier(.3, 1.35, .5, 1);--safe-top: max( env(safe-area-inset-top, 0px), calc(var(--tg-safe-area-inset-top, 0px) + var(--tg-content-safe-area-inset-top, 0px)) );--safe-bottom: max( env(safe-area-inset-bottom, 0px), calc(var(--tg-safe-area-inset-bottom, 0px) + var(--tg-content-safe-area-inset-bottom, 0px)) );--dock-height: 44px;--dock-top: calc(var(--safe-top) + 10px);--header-space: calc(var(--dock-top) + var(--dock-height) + 10px);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}body:before,body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}body:before{background:radial-gradient(120% 80% at 50% 0%,rgb(255 190 110 / .07),transparent 60%),radial-gradient(140% 100% at 50% 50%,transparent 55%,rgb(0 0 0 / .65) 100%)}body:after{opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}#root{position:relative;z-index:1}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}button:focus-visible,.card-top:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{position:relative;height:100%}.content{height:100%;padding:var(--header-space) 16px 0}.content-feed{overflow:hidden}.content-watchlist{overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(24px + var(--safe-bottom))}.state{margin:40vh 24px 0;text-align:center;color:var(--text-dim)}.tabs-dock{position:fixed;top:var(--dock-top);left:0;right:0;z-index:20;display:flex;justify-content:center;padding:0 16px;pointer-events:none}.tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;width:min(100%,360px);height:var(--dock-height);padding:4px;border-radius:999px;background:#16161c9e;border:1px solid var(--border);box-shadow:0 10px 30px #00000073,inset 0 1px #ffffff0f;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);pointer-events:auto}.tabs-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:#ffffffeb;box-shadow:0 2px 10px #00000059;transition:transform .26s var(--spring)}.tabs[data-active=watchlist] .tabs-thumb{transform:translate(100%)}.tabs button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;border-radius:999px;font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--text-dim);transition:color .2s;white-space:nowrap}.tabs button.active{color:#111114}.badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--surface-strong);color:var(--text);font-size:11px;font-weight:700;line-height:20px;text-align:center;font-variant-numeric:tabular-nums}.tabs button.active .badge{background:#111114;color:#fff}.deck{position:relative;display:flex;flex-direction:column;height:100%}.ambient{position:fixed;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:-1;background-size:cover;background-position:center;filter:blur(60px) saturate(140%);opacity:.32;animation:fade-in .5s ease-out;pointer-events:none}.stack{position:relative;flex:1;min-height:0;width:100%;max-width:460px;margin:0 auto}.card{--tilt-origin: 50% 0%;position:absolute;top:22px;right:0;bottom:0;left:0;border-radius:var(--radius);background:#15151b;overflow:hidden;box-shadow:0 24px 50px #0000008c,0 0 0 1px #ffffff0f;transform-origin:50% 0%;transition:transform .3s var(--ease-out);touch-action:none;user-select:none;-webkit-user-select:none;will-change:transform}.card[data-depth="0"]{transform:translateZ(0) scale(1)}.card[data-depth="1"]{transform:translate3d(0,-12px,0) scale(.95)}.card[data-depth="2"]{transform:translate3d(0,-24px,0) scale(.9)}.card[data-depth="3"]{transform:translate3d(0,-36px,0) scale(.85);opacity:0}.card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#000;opacity:0;transition:opacity .3s;pointer-events:none}.card[data-depth="1"]:after{opacity:.35}.card[data-depth="2"]:after{opacity:.5}.card-flying{pointer-events:none}.card-body{position:relative;height:100%}.poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.poster-empty{display:grid;place-items:center;font-size:80px;background:linear-gradient(160deg,#23232c,#101015)}.card-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgb(0 0 0 / .35) 0%,transparent 18%,transparent 38%,rgb(8 8 11 / .55) 55%,rgb(8 8 11 / .92) 72%,#08080b 100%);pointer-events:none}.card-top-row{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:flex-start}.platform{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;background:#0a0a0e99;border:1px solid rgb(255 255 255 / .14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:13px;font-weight:700;letter-spacing:.01em;color:#fff}.platform-region{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-faint)}.card-caption{position:absolute;inset:auto 0 0 0;padding:0 18px 18px}.card-caption h2{margin:0;font-size:30px;line-height:1.05;font-weight:800;letter-spacing:-.025em;text-wrap:balance;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 2px 16px rgb(0 0 0 / .6)}.original{margin:4px 0 0;font-size:14px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta{display:flex;align-items:center;gap:10px;margin:10px 0 0;font-size:14px;font-weight:500;color:var(--text-dim)}.rating{display:inline-flex;align-items:center;gap:4px;color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums}.caption-row{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:12px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;min-width:0}.chip{padding:4px 10px;border-radius:999px;background:#ffffff1a;border:1px solid rgb(255 255 255 / .08);font-size:12px;font-weight:500;color:var(--text-dim);white-space:nowrap}.trailer-button{flex:none;height:34px;padding:0 14px;border-radius:999px;background:#fff;color:#0b0b0f;font-size:13px;font-weight:700;box-shadow:0 6px 18px #0006;transition:transform .12s}.trailer-button:active{transform:scale(.94)}.stamp{position:absolute;top:70px;z-index:2;padding:6px 14px 4px;border:4px solid currentColor;border-radius:12px;font-size:40px;font-weight:900;letter-spacing:.06em;line-height:1;opacity:0;pointer-events:none;background:#0000002e;text-shadow:0 2px 12px rgb(0 0 0 / .45)}.stamp-want{left:22px;color:var(--want);transform:rotate(-14deg)}.stamp-skip{right:22px;color:var(--skip);transform:rotate(14deg)}.deck-actions{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:16px 8px calc(14px + var(--safe-bottom))}.action-button{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#14141ad9;border:1.5px solid currentColor;box-shadow:0 10px 26px #00000080;transition:transform .16s var(--spring),background-color .16s}.action-button:active{transform:scale(.88)}.action-button.skip{justify-self:end;color:var(--skip)}.action-button.want{justify-self:start;width:76px;height:76px;border:0;background:linear-gradient(145deg,#39f08c,#16b85e);color:#06210f;box-shadow:0 10px 30px #2ee57f59}.remaining{min-width:96px;text-align:center;font-size:13px;font-weight:600;color:var(--text-faint);font-variant-numeric:tabular-nums}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;padding:0 32px 15vh;text-align:center}.empty-emoji{font-size:64px;margin-bottom:8px;filter:drop-shadow(0 10px 24px rgb(0 0 0 / .6))}.empty-emoji.pulse{animation:pulse 1.4s ease-in-out infinite}.empty-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em}.empty-text{margin:0;max-width:280px;font-size:15px;line-height:1.4;color:var(--text-dim)}.ghost-button{margin-top:12px;height:40px;padding:0 18px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:14px;font-weight:600;color:var(--text)}.ghost-button:active{background:var(--surface-strong)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;background:#0009;animation:fade-in .22s ease-out}.sheet{position:relative;width:100%;max-width:none;margin:0;padding:0;border:0;color:inherit;max-height:calc(100% - var(--safe-top) - 40px);overflow-y:auto;overscroll-behavior:contain;border-radius:26px 26px 0 0;background:#121217;box-shadow:0 -20px 60px #0009;animation:sheet-in .3s var(--ease-out)}.sheet-backdrop.closing{opacity:0;transition:opacity .2s}.sheet-backdrop.closing .sheet{transform:translate3d(0,100%,0);transition:transform .2s ease-in}.sheet-hero{position:relative;height:220px;overflow:hidden}.sheet-hero img{width:100%;height:100%;object-fit:cover;object-position:center 20%}.sheet-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#12121733,#12121780 50%,#121217)}.sheet-grabber{position:absolute;top:8px;left:50%;z-index:1;width:40px;height:5px;margin-left:-20px;border-radius:999px;background:#ffffff80}.sheet-close{position:absolute;top:14px;right:14px;z-index:1}.icon-button{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff}.sheet-body{position:relative;margin-top:-64px;padding:0 20px calc(28px + var(--safe-bottom))}.sheet-body h2{margin:12px 0 0;font-size:28px;line-height:1.1;font-weight:800;letter-spacing:-.025em}.sheet-body .chips{margin-top:14px}.overview{margin:16px 0 0;font-size:15px;line-height:1.5;color:#f5f2ead9}.overview.muted{color:var(--text-faint);font-style:italic}.trailer-tile{position:relative;display:block;width:100%;margin-top:18px;aspect-ratio:16 / 9;border-radius:16px;overflow:hidden;background:#000}.trailer-tile img{width:100%;height:100%;object-fit:cover;opacity:.75}.trailer-play{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:60px;height:60px;margin:-30px 0 0 -30px;padding-left:3px;border-radius:50%;background:#ffffffeb;color:#0b0b0f;box-shadow:0 8px 26px #00000080}.trailer-label{position:absolute;left:12px;top:12px;padding:5px 10px;border-radius:999px;background:#000000a6;font-size:13px;font-weight:700;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.pill-button{display:flex;align-items:center;justify-content:center;gap:8px;height:50px;border-radius:16px;font-size:16px;font-weight:700}.pill-button.skip{background:#ff4d5e24;color:var(--skip)}.pill-button.want{background:var(--want);color:#06210f}.shelf+.shelf{margin-top:28px}.shelf-title{margin:4px 2px 12px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.shelf-title span{margin-left:4px;color:var(--text-dim)}.poster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:22px 14px;margin:0;padding:0;list-style:none}.tile{position:relative;min-width:0}.tile-poster{position:relative;display:block;width:100%;aspect-ratio:2 / 3;border-radius:16px;overflow:hidden;background:#1a1a21;box-shadow:0 12px 26px #00000080,0 0 0 1px #ffffff0f;transition:transform .16s var(--ease-out),opacity .2s}.tile-poster:active{transform:scale(.97)}.tile-poster img{width:100%;height:100%;object-fit:cover}.tile-poster:after{content:"";position:absolute;top:55%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#000000bf);pointer-events:none}.tile-empty{display:grid;place-items:center;height:100%;font-size:44px}.tile-rating{position:absolute;top:8px;left:8px;z-index:1;padding:3px 7px;border-radius:8px;background:#0009;color:var(--gold);font-size:11px;font-weight:700;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.tile-media{position:relative}.tile .watched-toggle{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:999px;background:#0f0f14b8;border:1px solid rgb(255 255 255 / .16);color:#fff;font-size:12px;font-weight:600;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .16s var(--spring),background-color .16s}.tile .watched-toggle:active{transform:scale(.92)}.tile .watched-toggle.on{background:var(--want);border-color:transparent;color:#06210f}.tile.watched .tile-poster{opacity:.45}.tile-title{margin:10px 2px 0;font-size:14px;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tile-sub{margin:3px 2px 0;font-size:12px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile.watched .tile-title{color:var(--text-dim)}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-in{0%{transform:translate3d(0,100%,0)}}@keyframes pulse{50%{transform:scale(1.08);opacity:.7}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}.home-screen-btn{position:fixed;top:var(--dock-top);right:16px;z-index:21;width:var(--dock-height);height:var(--dock-height);display:grid;place-items:center;border:1px solid rgb(255 255 255 / .08);border-radius:999px;color:#f2f2f0;background:#16161cb8;backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 10px 30px #00000073}.home-screen-btn:active{transform:scale(.94)}.app:has(.home-screen-btn) .tabs-dock{padding:0 calc(16px + var(--dock-height) + 8px)}
