html{height:100%;height:100dvh;overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;background:#0d0f11;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;min-height:100%}#root,body{height:100%;min-height:100dvh;overflow:hidden}*,:after,:before{box-sizing:border-box}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-shell{background:radial-gradient(1200px 650px at 75% -15%,#b4c8e61f,#0000 65%),linear-gradient(165deg,#1a1f2e,#0f1219 45%,#151b26);color:#e8eaef;display:flex;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;height:100dvh;line-height:1.35;max-width:100vw;min-height:100vh;min-height:100dvh;overflow:hidden;width:100%}.app-main{overflow:hidden}.app-main,.app-main>main{display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0}.sidebar-backdrop{display:none}.mobile-menu-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(90deg,#1a2433,#243449 40%,#2a3d54);border:1px solid #b4c8e659;border-radius:.65rem;color:#e8eaef;cursor:pointer;display:none;flex-shrink:0;height:44px;justify-content:center;margin:0 0 .5rem;padding:0;width:44px}.mobile-menu-btn__icon{background:currentColor;border-radius:1px;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;display:block;height:2px;width:18px}.sidebar{align-self:stretch;background:linear-gradient(180deg,#161e2cf5,#0e1420fa);border-right:1px solid #b4c8e638;box-shadow:8px 0 24px #0003;box-sizing:border-box;flex-shrink:0;overflow:hidden;padding:1.3rem 1rem 1rem;width:260px}.sidebar,.sidebar-top{display:flex;flex-direction:column;min-height:0}.sidebar-top{-webkit-overflow-scrolling:touch;flex:1 1;gap:1rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.sidebar-brand-row{align-items:center;box-sizing:border-box;display:flex;flex-shrink:0;gap:.5rem;justify-content:space-between;padding-inline:3px;width:100%}.sidebar-brand-row .sidebar-brand{flex:1 1;min-width:0}.sidebar-brand{align-items:center;display:flex;gap:.7rem}.sidebar-close-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(90deg,#1a2433,#243449 40%,#2a3d54);border:1px solid #b4c8e659;border-radius:.65rem;color:#e8eaef;cursor:pointer;display:none;flex-shrink:0;font-size:1.35rem;font-weight:400;height:40px;justify-content:center;line-height:1;padding:0;width:40px}.sidebar-close-btn:hover{filter:brightness(1.06)}.brand-copy{display:flex;flex-direction:column;gap:.1rem;min-width:0}.brand-copy strong{color:#e8eaef;font-size:.88rem;font-weight:500;letter-spacing:.02em}.brand-copy span{color:#9aa3b2;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase}.brand-copy__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-copy__name.brand-copy__name--pending{background:#ffffff12;border-radius:.3rem;color:#0000;display:block;max-width:7rem;min-height:1.05em;min-width:5.5rem;text-shadow:none}.brand-copy__meta{color:#9aa3b2;font-size:.68rem;letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.profile-badge--guest{cursor:pointer}.profile-badge.profile-badge--pending{cursor:default;opacity:.78}.profile-badge{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(180deg,#3d4f62,#2a3544);border:1px solid #b4c8e666;border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff14,0 6px 14px #00000061;color:#e8eaef;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.92rem;font-weight:500;height:56px;justify-content:center;line-height:1;margin:0;min-height:56px;min-width:56px;padding:0;width:56px}.sidebar-secondary{display:flex;flex:0 0 auto;flex-direction:column;gap:.6rem;margin-top:.1rem;min-height:auto}.sidebar-section-heading{color:#e8eaef;font-size:.74rem;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.leaderboard-panel{align-items:stretch;background:#080c148c;border:1px solid #b4c8e633;border-radius:.7rem;display:flex;flex:0 0 auto;flex-direction:column;min-height:0;padding:.7rem .72rem .8rem}.leaderboard-panel__title{color:#e8eaef;font-size:.74rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.leaderboard-panel__empty{color:#9aa3b2;font-size:.72rem;line-height:1.35;margin:.45rem 0 0}.stats-panel{display:flex;flex-direction:column;gap:.45rem}.stats-panel__hint{color:#7a8090;font-size:.68rem;line-height:1.35;margin:0 0 .1rem}.stats-row{grid-gap:.5rem;align-items:baseline;color:#c8ccd6;display:grid;font-size:.76rem;gap:.5rem;grid-template-columns:1fr auto}.stats-row--pending{opacity:.68}.stats-row__label{color:#8a93a3;font-size:.71rem}.stats-row__value{font-feature-settings:"tnum";color:#e8eaef;font-variant-numeric:tabular-nums;text-align:right}.stats-row__value--muted{color:#6a7080}.leaderboard-list{display:flex;flex-direction:column;gap:.2rem;margin-top:.5rem}.leaderboard-row{grid-gap:.4rem;align-items:baseline;color:#d8dde6;display:grid;font-size:.75rem;gap:.4rem;grid-template-columns:2ch 1fr auto;margin:0}.leaderboard-row__rank{color:#9aa3b2}.leaderboard-row__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-row__score{font-feature-settings:"tnum";color:#e8eaef;font-variant-numeric:tabular-nums}.leaderboard-sep{border-top:1px solid #b4c8e638;margin:.26rem 0 .22rem}.leaderboard-row--you{font-weight:500}.sidebar-bottom{display:flex;flex-direction:column;flex-shrink:0;gap:.85rem;margin-top:auto;padding-top:.5rem}.sidebar-divider{background:linear-gradient(90deg,#b4c8e60a,#b4c8e642 50%,#b4c8e60a);height:1px;width:100%}.nav-item{background:#080c1480;border:1px solid #b4c8e638;border-radius:.65rem;box-sizing:border-box;color:#d8dde6;cursor:pointer;display:block;font-size:.82rem;font-weight:450;letter-spacing:.02em;padding:.58rem .76rem;text-align:left;text-decoration:none;transition:border-color .14s ease,filter .14s ease,background-color .14s ease}.nav-item:hover{border-color:#c8d7eb8c;filter:brightness(1.08)}.nav-item.is-active{background:linear-gradient(180deg,#3d4f62fa,#2a3544fa);border-color:#b4c8e673;box-shadow:inset 0 1px 0 #ffffff14,0 0 18px #b4c8e629;color:#e8eaef}.logout-btn{background:linear-gradient(#f8717129,#f8717129),#080c1480;border:1px solid #f87171e0;border-radius:.65rem;box-shadow:0 0 0 1px #f8717173,0 0 18px #f8717129;color:#ffd7d7;cursor:pointer;font-size:.8rem;font-weight:450;letter-spacing:.02em;padding:.58rem .76rem}.logout-btn:hover{border-color:#f87171f2;box-shadow:0 0 0 1px #f8717173,0 0 28px #f8717159,0 0 56px #dc26261f,inset 0 0 24px #f8717112;filter:brightness(1.06)}.logout-btn:focus-visible{outline:2px solid #fca5a5a6;outline-offset:2px}.page-view{min-width:0;overflow:hidden;padding:1.4rem 1.6rem max(1.4rem,env(safe-area-inset-bottom))}.hub-skeleton,.page-view{display:flex;flex:1 1;flex-direction:column;min-height:0}.hub-skeleton{-webkit-overflow-scrolling:touch;background:#080c148c;border:1px solid #b4c8e633;border-radius:.95rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:1rem}.hub-section{margin-top:.8rem}.hub-section--first{margin-top:0}.hub-section h2{color:#e8eaef;font-size:.72rem;font-weight:500;letter-spacing:.11em;margin:0 0 .75rem;text-transform:uppercase}.hub-grid{grid-gap:.75rem;align-items:start;display:grid;gap:.75rem}.hub-grid--featured{grid-template-columns:repeat(12,minmax(0,1fr))}.hub-grid--catalog{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.skeleton-block{background:linear-gradient(180deg,#243449c7,#182435d6);border:1px solid #b4c8e62e;border-radius:.8rem;overflow:hidden;position:relative}.skeleton-block:after{animation:shimmer 2.1s ease-in-out infinite;background:linear-gradient(100deg,#0000 20%,#ffffff0f 48%,#0000 70%);content:"";inset:0;position:absolute;transform:translateX(-100%)}.skeleton-card{aspect-ratio:1/1;min-height:0}.hub-game-card,.hub-grid--featured .skeleton-card,.skeleton-card.tall{grid-column:span 4}.hub-game-card{align-items:flex-start;aspect-ratio:1/1;background:linear-gradient(165deg,#344458f2,#1c283afa);border:1px solid #b4c8e652;border-radius:.8rem;box-shadow:0 10px 28px #00000047;color:#e8eaef;display:flex;flex-direction:column;gap:.35rem;justify-content:flex-end;min-height:0;padding:1rem;text-decoration:none;transition:border-color .14s ease,filter .14s ease,box-shadow .14s ease}.hub-game-card:hover{border-color:#c8d7eb80;box-shadow:0 12px 32px #00000057;filter:brightness(1.05)}.hub-game-card__title{font-size:1rem;font-weight:500;letter-spacing:.02em}.hub-game-card__hint{color:#9aa3b2;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.hub-game-card--catalog{grid-column:auto;min-height:0;padding:.85rem}.hub-game-card--catalog .hub-game-card__title{font-size:.92rem}.hub-game-card--catalog .hub-game-card__hint{font-size:.64rem;line-height:1.25}.hub-game-card:focus-visible{outline:2px solid #c8d7ebcc;outline-offset:2px}.page-view.game-frame-root{gap:0;padding:0}.game-frame-root{display:flex;flex-direction:column}.game-frame-embed,.game-frame-root{flex:1 1;min-height:0;overflow:hidden}.game-frame-embed{box-sizing:border-box;display:grid;grid-template:1fr/1fr;padding:0;position:relative}.game-frame-back-btn{-webkit-tap-highlight-color:transparent;align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:linear-gradient(90deg,#1a2433f0,#243449f0 50%,#2a3d54f0);border:1px solid #b4c8e666;border-radius:.55rem;box-shadow:0 4px 14px #00000059;color:#e8eaef;display:inline-flex;font-size:.78rem;font-weight:500;gap:.45rem;justify-content:center;left:max(.65rem,env(safe-area-inset-left,0px));letter-spacing:.04em;padding:.45rem .75rem;position:absolute;text-decoration:none;text-transform:uppercase;top:max(.65rem,env(safe-area-inset-top,0px));z-index:20}.game-frame-back-btn__icon{align-items:center;display:none;flex-shrink:0;justify-content:center}.game-frame-back-btn__arrow{display:block}.game-frame-back-btn:hover{border-color:#c8d7eb8c;color:#fff}.game-frame-back-btn:focus-visible{outline:2px solid #c8d7ebd9;outline-offset:2px}.game-frame-back-btn.game-frame-back-btn--disabled,.game-frame-back-btn.game-frame-back-btn--disabled:hover{border-color:#b4c8e61f;box-shadow:none;color:#6a7080;cursor:not-allowed;opacity:.42;pointer-events:none}.game-frame-mobile-menu-btn{left:max(.65rem,env(safe-area-inset-left,0px));margin:0;position:absolute;right:auto;top:max(.65rem,env(safe-area-inset-top,0px));z-index:21}.game-frame-buffer{background:linear-gradient(165deg,#1a1f2ef7,#0f1219fa 50%,#151b26f7);display:grid;inset:0;place-items:center;pointer-events:none;position:absolute;z-index:15}.game-frame-buffer__inner{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.game-frame-buffer__pulse{animation:game-frame-buffer-spin .85s linear infinite;border:2px solid #b4c8e640;border-radius:50%;border-top-color:#c8d7ebe6;height:40px;width:40px}.game-frame-buffer__label{color:#9aa3b2;font-size:.82rem;font-weight:500;letter-spacing:.08em;margin:0;text-transform:uppercase}@keyframes game-frame-buffer-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.game-frame-buffer__pulse{animation:none;border-top-color:#c8d7eb8c;opacity:.85}}.game-frame{background:#0a0e14;border:none;display:block;height:100%;margin:0;min-height:0;overflow:hidden;width:100%}.game-frame.game-frame--buffering{opacity:0;pointer-events:none}@media (max-width:860px){.page-view.game-frame-root{padding:0 max(0px,env(safe-area-inset-right,0px)) max(0px,env(safe-area-inset-bottom,0px)) max(0px,env(safe-area-inset-left,0px))}}.plain-page-placeholder{display:grid;flex:1 1;min-height:0;place-items:center}.plain-page-placeholder h2{color:#e8eaef;font-size:clamp(1.18rem,2.3vw,1.7rem);font-weight:500;letter-spacing:.05em;margin:0}.not-found{align-items:center;background:#080c148c;border:1px solid #b4c8e633;border-radius:.95rem;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:.65rem;justify-content:center;min-height:0;padding:.5rem .75rem 1.5rem;text-align:center}.not-found--game{align-self:stretch;justify-self:center;margin:.75rem;max-width:24rem;min-height:min(52dvh,22rem);width:calc(100% - 1.5rem)}.not-found__code{color:#8cb4dc47;font-size:clamp(2.6rem,12vw,3.6rem);font-weight:800;letter-spacing:-.05em;line-height:1;margin:0;text-shadow:0 2px 0 #00000059}.not-found__title{color:#f0f4fa;font-size:clamp(1.1rem,2.4vw,1.45rem);font-weight:600;letter-spacing:-.02em;margin:0}.not-found__lede{color:#94a3b8;font-size:.84rem;line-height:1.45;margin:0;max-width:22rem}.not-found__path{background:#00000047;border:1px solid #b4c8e61f;border-radius:.45rem;color:#b8c0d0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;margin:0;max-width:100%;padding:.4rem .65rem;word-break:break-all}.not-found__actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:.35rem}.not-found__btn{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(90deg,#1a2433,#243449 40%,#2a3d54);border:1px solid #b4c8e659;border-radius:.65rem;color:#e8eaef;display:inline-flex;font-size:.82rem;font-weight:500;justify-content:center;letter-spacing:.04em;padding:.55rem 1rem;text-decoration:none;text-transform:uppercase;transition:border-color .14s ease,filter .14s ease}.not-found__btn:hover{border-color:#c8d7eb80;filter:brightness(1.06)}.not-found__btn:focus-visible{outline:2px solid #c8d7ebd9;outline-offset:2px}.not-found__btn--primary{border-color:#78afe68c;box-shadow:0 0 0 1px #64a0dc1f}.auth-shell{align-items:center;background:radial-gradient(1200px 650px at 75% -15%,#b4c8e61f,#0000 65%),linear-gradient(165deg,#1a1f2e,#0f1219 45%,#151b26);box-sizing:border-box;color:#e8eaef;display:flex;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;height:100dvh;justify-content:center;line-height:1.35;min-height:100vh;min-height:100dvh;overflow:auto;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left))}.auth-page{align-items:stretch;display:flex;flex-direction:column;gap:1.25rem;max-width:400px;width:100%}.auth-card{background:#080c148c;border:1px solid #b4c8e638;border-radius:.95rem;box-shadow:0 18px 40px #00000059;padding:1.5rem 1.4rem 1.35rem}.auth-card__header{margin-bottom:1.35rem}.auth-card__eyebrow{color:#9aa3b2;font-size:.66rem;letter-spacing:.14em;margin:0 0 .35rem;text-transform:uppercase}.auth-card__title{color:#e8eaef;font-size:clamp(1.2rem,3vw,1.5rem);font-weight:500;letter-spacing:.02em;margin:0 0 .45rem}.auth-card__lede{color:#a0a6b2;font-size:.82rem;line-height:1.45;margin:0}.auth-form{gap:1rem}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:.35rem}.auth-field__label{color:#e8eaef;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.auth-field__input{background:linear-gradient(180deg,#162030e6,#0c121cf2);border:1px solid #b4c8e647;border-radius:.65rem;box-sizing:border-box;color:#e8eaef;font-size:.9rem;outline:none;padding:.62rem .75rem;transition:border-color .14s ease,box-shadow .14s ease;width:100%}.auth-field__input::placeholder{color:#e8eaef40}.auth-field__input:focus{border-color:#c8d7eb8c;box-shadow:0 0 0 1px #b4c8e633,0 0 20px #b4c8e61f}.auth-submit{background:linear-gradient(180deg,#3d4f62fa,#2a3544fa);border:1px solid #b4c8e673;border-radius:.65rem;box-shadow:inset 0 1px 0 #ffffff14,0 0 18px #b4c8e61f;color:#e8eaef;cursor:pointer;font-size:.88rem;font-weight:500;letter-spacing:.04em;margin-top:.35rem;padding:.72rem 1rem;transition:filter .14s ease,border-color .14s ease;width:100%}.auth-submit:hover{border-color:#c8d7eb8c;filter:brightness(1.06)}.auth-submit:focus-visible{outline:2px solid #c8d7ebbf;outline-offset:2px}.auth-google-btn{align-items:center;background:#fff;border:1px solid #b4c8e659;border-radius:.65rem;color:#1f1f1f;cursor:pointer;display:flex;font-size:.88rem;font-weight:600;gap:.65rem;justify-content:center;letter-spacing:.02em;padding:.62rem 1rem;transition:filter .14s ease,border-color .14s ease,box-shadow .14s ease;width:100%}.auth-google-btn:hover:not(:disabled){border-color:#b4c8e68c;box-shadow:0 2px 12px #0000001f;filter:brightness(1.02)}.auth-google-btn:focus-visible{outline:2px solid #6495edd9;outline-offset:2px}.auth-google-btn:disabled{cursor:not-allowed;opacity:.55}.auth-google-btn__icon{display:flex;flex-shrink:0}.auth-google-btn__label{line-height:1.2}.auth-divider{align-items:center;color:#8b939f;display:flex;font-size:.72rem;gap:.75rem;letter-spacing:.12em;margin:.35rem 0 .15rem;text-transform:uppercase}.auth-divider:after,.auth-divider:before{background:#b4c8e633;content:"";flex:1 1;height:1px}.auth-footer{color:#a0a6b2;font-size:.82rem;margin:1.25rem 0 0;text-align:center}.auth-link{border-bottom:1px solid #b4c8e659;color:#93c5fd;font-weight:500;text-decoration:none;transition:color .14s ease,border-color .14s ease}.auth-link:hover{border-bottom-color:#c8d7eb8c;color:#bae6fd}.auth-link:focus-visible{border-radius:2px;outline:2px solid #c8d7ebbf;outline-offset:2px}.auth-back{align-self:center;color:#9aa3b2;font-size:.78rem;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;transition:color .14s ease}.auth-back:hover{color:#e8eaef}.auth-back:focus-visible{border-radius:2px;outline:2px solid #c8d7ebbf;outline-offset:2px}.auth-modal-root{align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#080c14b8;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));position:fixed;z-index:200}.logout-confirm-overlay{z-index:250}.logout-confirm-card{max-width:340px;padding:1.25rem 1.3rem 1.2rem}.logout-confirm-title{color:#e8eaef;font-size:1.12rem;font-weight:500;letter-spacing:.02em;margin:0 0 .5rem}.logout-confirm-desc{color:#a0a6b2;font-size:.84rem;line-height:1.45;margin:0 0 1.1rem}.logout-confirm-actions{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}.logout-confirm-cancel{background:#080c1473;border:1px solid #b4c8e647;border-radius:.65rem;color:#d8dde6;cursor:pointer;font-size:.82rem;font-weight:500;letter-spacing:.02em;padding:.55rem .85rem;transition:border-color .14s ease,filter .14s ease}.logout-confirm-cancel:hover{border-color:#c8d7eb73;filter:brightness(1.06)}.logout-confirm-cancel:focus-visible{outline:2px solid #c8d7ebbf;outline-offset:2px}.logout-confirm-ok{margin:0;min-width:5.5rem;padding:.55rem .9rem;width:auto}.auth-modal-dialog{box-shadow:0 24px 56px #00000073;margin:.5rem;max-height:min(90dvh,640px);max-width:400px;overflow-y:auto;position:relative;width:100%}.auth-modal-close{-webkit-tap-highlight-color:transparent;background:linear-gradient(90deg,#1a2433,#243449 50%,#2a3d54);border:1px solid #b4c8e659;border-radius:.55rem;color:#e8eaef;cursor:pointer;font-size:1.35rem;font-weight:300;height:36px;line-height:1;padding:0;position:absolute;right:.65rem;top:.65rem;width:36px;z-index:1}.auth-modal-close:hover{border-color:#c8d7eb80;filter:brightness(1.08)}.auth-modal-close:focus-visible{outline:2px solid #c8d7ebbf;outline-offset:2px}.auth-modal-error{background:#f871711f;border:1px solid #f871718c;border-radius:.55rem;color:#ffd7d7;font-size:.82rem;line-height:1.35;margin:0 0 .85rem;padding:.55rem .65rem}.auth-modal-notice{background:#3b82f61a;border:1px solid #93c5fd73;border-radius:.55rem;color:#dbeafe;font-size:.82rem;line-height:1.45;margin:0 0 .85rem;padding:.65rem .75rem}.auth-modal-notice p{margin:0 0 .65rem}.auth-modal-notice p:last-child{margin-bottom:0}.auth-modal-notice__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.auth-modal-notice__actions .auth-submit{flex:1 1 auto;min-width:7rem}.auth-modal-notice__actions .auth-link--button{align-self:center}.auth-link--button{background:none;border:none;border-bottom:1px solid #b4c8e659;color:#93c5fd;cursor:pointer;display:inline;font:inherit;font-weight:500;margin:0;padding:0;text-decoration:none;transition:color .14s ease,border-color .14s ease}.auth-link--button:hover{border-bottom-color:#c8d7eb8c;color:#bae6fd}.sidebar-login-btn{background:linear-gradient(165deg,#2563eb73,#1d4ed88c 45%,#1e40af80);border:1px solid #60a5fad9;border-radius:.65rem;box-shadow:0 0 0 1px #93c5fd59,0 0 22px #3b82f659,inset 0 1px 0 #ffffff1f;color:#e0f2fe;cursor:pointer;font-size:.8rem;font-weight:550;letter-spacing:.04em;padding:.58rem .76rem;transition:filter .14s ease,border-color .14s ease,box-shadow .14s ease;width:100%}.sidebar-login-btn:hover{border-color:#93c5fdf2;box-shadow:0 0 0 1px #bae6fd73,0 0 28px #60a5fa73,inset 0 1px 0 #ffffff24;filter:brightness(1.08)}.sidebar-login-btn:focus-visible{outline:2px solid #93c5fdd9;outline-offset:2px}.sidebar-auth-btn-placeholder{background:#080c1473;border:1px solid #b4c8e61f;border-radius:.65rem;box-sizing:border-box;min-height:2.45rem;overflow:hidden;position:relative;width:100%}.sidebar-auth-btn-placeholder:after{animation:sidebar-auth-placeholder-shimmer 1.35s ease-in-out infinite;background:linear-gradient(100deg,#0000,#ffffff0a 45%,#0000 90%);content:"";inset:0;position:absolute}@keyframes sidebar-auth-placeholder-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.sidebar-auth-btn-placeholder:after{animation:none}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@media (max-width:860px){.app-shell{flex-direction:column;position:relative}.sidebar-backdrop{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background:#080c149e;border:none;cursor:pointer;display:block;inset:0;margin:0;opacity:0;padding:0;pointer-events:none;position:fixed;transition:opacity .2s ease;z-index:110}.app-shell--drawer-open .sidebar-backdrop{opacity:1;pointer-events:auto}.mobile-menu-btn{display:inline-flex}.mobile-menu-btn.game-frame-mobile-menu-btn{margin:0}.game-frame-back-btn{background:linear-gradient(90deg,#1a2433,#243449 40%,#2a3d54);border-color:#b4c8e659;border-radius:.65rem;gap:0;height:44px;padding:0;width:44px}.game-frame-back-btn__icon{display:inline-flex}.game-frame-back-btn__label{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sidebar{border-bottom:1px solid #b4c8e624;border-radius:.9rem;border-right:1px solid #b4c8e633;bottom:max(.65rem,env(safe-area-inset-bottom));box-shadow:10px 16px 34px #00000061;flex:none;left:max(.65rem,env(safe-area-inset-left));max-width:100%;padding:.9rem 1rem 1rem;pointer-events:none;position:fixed;top:max(.65rem,env(safe-area-inset-top));transform:translateX(calc(-100% - 1rem));transition:transform .22s ease;width:min(280px,calc(88vw - max(.65rem, env(safe-area-inset-left))));z-index:120}.sidebar.sidebar--open{pointer-events:auto;transform:translateX(0)}.sidebar-close-btn{display:inline-flex}.sidebar-top{gap:.75rem}.profile-badge,.sidebar-brand-row{min-height:44px}.profile-badge{flex-shrink:0;font-size:.85rem;height:44px;min-width:44px;width:44px}.brand-copy strong{font-size:.84rem}.sidebar-secondary{flex:0 1}.leaderboard-panel{min-height:96px}.sidebar-bottom{margin-top:auto;padding-top:.35rem}.logout-btn{-webkit-tap-highlight-color:transparent;min-height:44px;padding:.55rem .85rem;width:100%}.logout-confirm-actions .logout-confirm-ok{width:auto}.sidebar-login-btn{-webkit-tap-highlight-color:transparent;min-height:44px;padding:.55rem .85rem}.sidebar-auth-btn-placeholder{min-height:44px}.page-view{padding:max(.85rem,env(safe-area-inset-top)) max(.85rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(.85rem,env(safe-area-inset-left))}.hub-skeleton{border-radius:.75rem;min-height:0;padding:.75rem}.hub-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-grid--catalog{grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr))}.hub-game-card:not(.hub-game-card--catalog),.hub-grid--featured .skeleton-card,.skeleton-card.tall{grid-column:span 1}.plain-page-placeholder{min-height:min(70vh,28rem);padding:0 .25rem}.plain-page-placeholder h2{font-size:clamp(1.05rem,5vw,1.45rem);text-align:center}}@media (max-width:380px){.hub-grid--featured{grid-template-columns:1fr}}@media (max-width:860px) and (prefers-reduced-motion:reduce){.sidebar,.sidebar-backdrop{transition:none}}@media (prefers-reduced-motion:reduce){.skeleton-block:after{animation:none}}.shell-header{align-items:flex-start;box-sizing:border-box;display:flex;flex-shrink:0;gap:clamp(.75rem,2vw,1.1rem);margin:0 0 clamp(1rem,2.5vw,1.35rem);max-width:36rem;width:100%}.shell-header-accent{background:linear-gradient(180deg,#8cc8f5f2,#5a8cbea6 45%,#b4c8e68c);border-radius:2px;box-shadow:0 0 16px #78afe640,inset 0 0 0 1px #ffffff1f;flex-shrink:0;margin-top:.2rem;min-height:clamp(2.6rem,8vw,3.4rem);width:4px}.shell-header-copy{flex:1 1;min-width:0;text-align:left}.shell-header-eyebrow{color:#8fa3bc;font-size:.58rem;font-weight:700;letter-spacing:.2em;margin:0 0 .35rem;text-transform:uppercase}.shell-header-title{color:#f0f4fa;font-size:clamp(1.35rem,3.4vw,1.85rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;margin:0 0 .4rem;text-shadow:0 2px 0 #00000073,0 0 36px #78afe624}@supports ((-webkit-background-clip:text) or (background-clip:text)){.shell-header-title{background:linear-gradient(185deg,#fff,#c5ddf4 35%,#7eb8e8 58%,#d8dde6);-webkit-background-clip:text;background-clip:text;color:#0000;filter:drop-shadow(0 2px 1px rgba(0,0,0,.5)) drop-shadow(0 0 18px rgba(100,160,220,.15));text-shadow:none}}.shell-header-tagline{color:#94a3b8;font-size:clamp(.72rem,1.65vw,.84rem);font-weight:450;line-height:1.45;margin:0;max-width:32rem}@media (max-width:860px){.shell-header{margin-bottom:.95rem;max-width:none}.shell-header-accent{min-height:2.4rem}.shell-header-menu-btn{align-self:flex-start;flex-shrink:0;margin:.2rem .65rem 0 0}}
/*# sourceMappingURL=main.d6785039.css.map*/