.player-shell{z-index:9999;-webkit-backdrop-filter:blur(10px);background:#000000d1;justify-content:center;align-items:center;padding:clamp(1rem,3vw,2rem);display:flex;position:fixed;inset:0}.player-window{background:#0c0c0e;flex-direction:column;transition:width .35s cubic-bezier(.16,1,.3,1),height .35s cubic-bezier(.16,1,.3,1),max-width .35s cubic-bezier(.16,1,.3,1),max-height .35s cubic-bezier(.16,1,.3,1),border-radius .35s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 28px 80px #000000a6}.player-window.is-framed{border-radius:1rem;width:min(56rem,92vw);max-height:min(82vh,52rem)}.player-window.is-maximized{border-radius:.35rem;width:100%;max-width:100%;height:100%;max-height:100dvh}.player-window:fullscreen{border-radius:0;width:100%;max-width:none;height:100%;max-height:none}.player-window.is-floating{z-index:10001;margin:0;position:fixed;box-shadow:0 0 0 1px #ffffff1a,0 32px 96px #000000bf}.player-window.is-dragging{cursor:grabbing;transition:none}.player-window.is-resizing{-webkit-user-select:none;user-select:none;transition:none}.player-window.is-custom-size .player-window-body{aspect-ratio:auto;flex:auto}.player-resize-handle{z-index:12;touch-action:none;position:absolute}.player-resize-handle--n,.player-resize-handle--s{cursor:ns-resize;height:8px;left:12px;right:12px}.player-resize-handle--n{top:-4px}.player-resize-handle--s{bottom:-4px}.player-resize-handle--e,.player-resize-handle--w{cursor:ew-resize;width:8px;top:12px;bottom:12px}.player-resize-handle--e{right:-4px}.player-resize-handle--w{left:-4px}.player-resize-handle--nw,.player-resize-handle--ne,.player-resize-handle--sw,.player-resize-handle--se{width:14px;height:14px}.player-resize-handle--nw{cursor:nwse-resize;top:-4px;left:-4px}.player-resize-handle--ne{cursor:nesw-resize;top:-4px;right:-4px}.player-resize-handle--sw{cursor:nesw-resize;bottom:-4px;left:-4px}.player-resize-handle--se{cursor:nwse-resize;bottom:-4px;right:-4px}.player-shell--window-resizing .player-window{transition:none}@media (max-width:768px){.player-resize-handle{display:none}}.player-shell--window-floating .player-layout-main{flex:none;width:0;min-height:0;overflow:visible}.player-window-bar{background:linear-gradient(#ffffff0a,#0000);border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:stretch;gap:.5rem;padding:0;display:flex}.player-window-drag-zone{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:1;align-items:center;gap:.5rem;min-width:0;padding:.55rem .5rem .55rem .75rem;display:flex}.player-window-drag-zone:active,.player-window.is-dragging .player-window-drag-zone{cursor:grabbing}.player-window-drag-grip{color:#ffffff47;flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;transition:color .15s;display:flex}.player-window-bar:hover .player-window-drag-grip{color:#ffffff80}.player-window-meta{pointer-events:none;flex:1;min-width:0}.player-window-title{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;font-weight:700;overflow:hidden}.player-window-sub{color:#ffffff73;margin:.1rem 0 0;font-size:.7rem}.player-party-live{color:#4ade80;font-weight:600}.player-party-syncing{color:#fbbf24;font-weight:600}.player-party-offline{color:#f87171;font-weight:600}.player-layout{justify-content:center;align-items:stretch;gap:clamp(.75rem,2vw,1.25rem);width:100%;max-width:min(96vw,78rem);max-height:100%;display:flex;position:relative}.player-layout-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.player-layout--camera .player-layout-main{flex-direction:row;align-items:stretch;gap:.75rem}.player-layout--camera .player-window.is-framed{flex:58%;width:auto;min-width:0}.player-shell--camera{padding:clamp(.65rem,2vw,1.25rem)}.player-shell--camera.player-shell--party-open .player-layout{max-width:min(99vw,96rem)}.player-shell--party-open .player-layout{max-width:min(98vw,90rem)}.player-party-panel{z-index:10002;background:linear-gradient(165deg,#121216fa,#08080afa);border:1px solid #ffffff1a;border-radius:1rem;flex-direction:column;flex-shrink:0;width:min(22rem,92vw);min-height:0;max-height:min(82vh,52rem);animation:.35s cubic-bezier(.16,1,.3,1) player-party-slide-in;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff0a,0 20px 60px #0000008c}@keyframes player-party-slide-in{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:translate(0)}}.player-shortcuts-dropdown{position:relative}.player-shortcuts-menu{z-index:20;-webkit-backdrop-filter:blur(12px);background:linear-gradient(#101014fa,#08080afa);border:1px solid #ffffff1f;border-radius:.85rem;width:min(18.5rem,85vw);max-height:min(70vh,28rem);padding:.65rem 0;position:absolute;top:calc(100% + .5rem);right:0;overflow-y:auto;box-shadow:0 0 0 1px #ffffff0a,0 16px 40px #0000008c}.player-shortcuts-menu-head{letter-spacing:.02em;color:#fff;text-transform:uppercase;justify-content:space-between;align-items:center;padding:.35rem .85rem .5rem;font-size:.75rem;font-weight:700;display:flex}.player-shortcuts-menu-badge{color:#ffffffb3;background:#ffffff1a;border-radius:.35rem;padding:.1rem .45rem;font-size:.65rem;font-weight:600}.player-shortcuts-menu-note{color:#ffffff6b;border-bottom:1px solid #ffffff0f;margin:0;padding:0 .85rem .55rem;font-size:.68rem;line-height:1.45}.player-shortcuts-group{padding:.45rem .5rem .15rem}.player-shortcuts-group-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff59;margin:0 0 .25rem;padding:0 .35rem;font-size:.62rem;font-weight:700}.player-shortcuts-group ul{margin:0;padding:0;list-style:none}.player-shortcuts-menu-row{color:#ffffffe0;border-radius:.5rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.4rem .35rem;font-size:.75rem;display:flex}.player-shortcuts-menu-row:hover{background:#ffffff0a}.player-window-actions{cursor:default;touch-action:manipulation;-webkit-user-select:auto;user-select:auto;flex-shrink:0;align-items:center;gap:.25rem;padding:.45rem .65rem .45rem 0;display:flex}.player-window-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;width:2rem;height:2rem;transition:background .15s,color .15s;display:inline-flex}.player-window-btn:hover{color:#fff;background:#ffffff1a}.player-window-btn.is-active{color:#fecaca;background:#ef444433}.player-window-btn--close:hover{color:#fecaca;background:#ef444440}.player-window-body{aspect-ratio:16/9;background:#000;flex:1;min-height:0;position:relative}.player-window.is-maximized .player-window-body{aspect-ratio:auto}.player-frame{background:#000;position:absolute;inset:0}.player-iframe{background:#000;border:0;width:100%;height:100%;position:absolute;inset:0}.player-iframe--hidden{opacity:0;pointer-events:none}.player-overlay{z-index:2;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex;position:absolute;inset:0}.player-overlay--loading{background:#000000eb}.player-overlay--error{background:#000000f0}.player-overlay-title{color:#fff;font-size:1.1rem;font-weight:700}.player-overlay-sub{color:#ffffff8c;max-width:22rem;font-size:.875rem}.player-overlay-sub kbd{color:#fff;background:#ffffff1f;border:1px solid #ffffff26;border-radius:.35rem;padding:.1rem .4rem;font-size:.75rem;font-weight:600;display:inline-block}.player-spinner{border:3px solid #ffffff1f;border-top-color:#ef4444;border-radius:50%;width:3rem;height:3rem;animation:.9s linear infinite player-spin}@keyframes player-spin{to{transform:rotate(360deg)}}.player-retry-btn{color:#fff;cursor:pointer;background:#ef444433;border:1px solid #ffffff26;border-radius:.75rem;align-items:center;gap:.5rem;margin-top:.5rem;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600;transition:background .2s;display:inline-flex}.player-retry-btn:hover{background:#ef444459}.player-hint{z-index:3;color:#ffffff8c;pointer-events:none;white-space:nowrap;background:#0000008c;border:1px solid #ffffff14;border-radius:9999px;margin:0;padding:.35rem .75rem;font-size:.68rem;animation:10s forwards player-hint-fade;position:absolute;bottom:.65rem;left:50%;transform:translate(-50%)}@keyframes player-hint-fade{0%,75%{opacity:1}to{opacity:0}}.player-shortcuts-modal{z-index:10001;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.player-shortcuts-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#000c;border:none;position:absolute;inset:0}.player-shortcuts-panel{background:#0a0a0a;border:1px solid #ffffff1a;border-radius:1rem;width:100%;max-width:26rem;position:relative;overflow:hidden;box-shadow:0 24px 48px #0009}.player-shortcuts-head{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.player-shortcuts-close{color:#ffffff80;cursor:pointer;background:0 0;border:none;border-radius:.5rem;padding:.35rem}.player-shortcuts-close:hover{color:#fff;background:#ffffff14}.player-shortcuts-note{color:#ffffff73;padding:.65rem 1rem 0;font-size:.75rem;line-height:1.4}.player-shortcuts-list{max-height:55vh;margin:0;padding:.5rem;list-style:none;overflow-y:auto}.player-shortcuts-row{color:#ffffffd9;border-radius:.6rem;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem .65rem;font-size:.8125rem;display:flex}.player-shortcuts-row:hover{background:#ffffff0a}.player-shortcuts-keys{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;display:flex}.player-shortcuts-keys kbd{color:#fff;text-align:center;background:#ffffff1a;border:1px solid #ffffff1f;border-radius:.35rem;min-width:1.5rem;padding:.15rem .4rem;font-size:.65rem;font-weight:600}.party-camera-grid{background:linear-gradient(165deg,#140c1cf5,#0a080efa);border:1px solid #ffffff1f;border-radius:1rem;flex-direction:column;flex-shrink:0;gap:.55rem;width:min(16rem,32vw);max-height:min(85vh,56rem);padding:.5rem;display:flex;box-shadow:0 0 0 1px #a855f714,0 12px 40px #00000073}.party-camera-grid-label{letter-spacing:.08em;text-transform:uppercase;color:#d8b4febf;margin:0;padding:.2rem .35rem;font-size:.65rem;font-weight:800}.party-camera-grid-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:.35rem;display:flex}.party-camera-layout-picker{gap:.2rem;display:flex}.party-camera-layout-btn{color:#ffffff8c;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:.4rem;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.party-camera-layout-btn.is-active{color:#e9d5ff;background:#a855f740;border-color:#a855f773}.player-window-btn--leave{color:#fecaca}.player-window-btn--leave:hover{color:#fff;background:#ef444438}.player-window-btn-group{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:.5rem;align-items:center;gap:.125rem;padding:.125rem;display:inline-flex}.player-window-lang{letter-spacing:.04em;color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.25rem;height:1.5rem;padding:0 .5rem;font-size:.65rem;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.player-window-lang:hover{color:#fff;background:#ffffff14}.player-window-lang.is-active{color:#fecaca;background:#ef444433;box-shadow:inset 0 0 0 1px #ef444459}.player-window-lang-flag{font-size:.85rem;line-height:1}.player-window-lang-code{letter-spacing:.05em}@media (max-width:480px){.player-window-lang-code{display:none}}.player-window-cc-btn{letter-spacing:.04em;background:#ffffff0a;border:1px solid #ffffff1a;width:auto;min-width:2rem;padding:0 .5rem;font-weight:800}.player-window-cc-btn:hover{background:#ffffff1a}.player-window-cc-btn.is-active{color:#fecaca;background:#ef44442e;border-color:#ef444480}.player-window-cc-text{letter-spacing:.05em;font-size:.7rem;font-weight:800;line-height:1}.player-shell--party-open .player-window.is-framed{width:min(54rem,76vw)}.player-shell--boost-1.player-shell--party-open .player-party-panel,.player-shell--boost-2 .party-camera-grid,.player-shell--boost-3 .party-camera-grid,.player-shell--boost-3.player-shell--party-open .player-party-panel{display:none}.player-window.is-framed.player-window--boost-1{width:min(60rem,94vw)!important;max-height:min(84vh,54rem)!important}.player-shell--party-open .player-window.is-framed.player-window--boost-1{width:min(58rem,84vw)!important}.player-layout--camera .player-window.is-framed.player-window--boost-1{flex:72%!important}.player-window.is-framed.player-window--boost-2{width:min(64rem,96vw)!important;max-height:min(86vh,56rem)!important}.player-shell--party-open .player-window.is-framed.player-window--boost-2,.player-shell--boost-2 .player-layout--camera .player-window.is-framed{flex:100%!important;width:min(62rem,90vw)!important;max-width:100%!important}.player-shell--boost-2 .player-layout--camera .player-layout-main{flex-direction:column}.player-window.is-framed.player-window--boost-3{width:min(68rem,98vw)!important;max-height:min(88vh,58rem)!important}.player-shell--boost-3 .player-window.is-framed,.player-shell--boost-3.player-shell--party-open .player-window.is-framed{flex:auto!important;width:min(66rem,96vw)!important;max-width:96vw!important}.player-shell--boost-3 .player-layout{max-width:98vw}.player-shell--boost-3 .player-layout--camera .player-layout-main{flex-direction:column;width:100%}.player-layout--cam-bottom .player-layout--camera .player-layout-main{flex-direction:column}.player-layout--cam-bottom .party-camera-grid{order:2;width:100%;max-height:12rem}.player-layout--cam-bottom .party-camera-grid-scroll{flex-direction:row;overflow:auto hidden}.player-layout--cam-bottom .party-camera-tile{aspect-ratio:16/10;flex:none;min-width:5.5rem}.player-layout--cam-grid .party-camera-grid-scroll{grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.45rem;display:grid;overflow-y:auto}.player-layout--cam-grid .party-camera-tile{aspect-ratio:16/10;min-width:0}.player-shell--cam-hidden .party-camera-grid{display:none}.player-shell--cam-hidden.player-layout--camera .player-layout-main{flex-direction:column}.player-shell--cam-hidden .player-layout--camera .player-window.is-framed{flex:auto;width:100%}.party-camera-hint{color:#ffffff59;text-align:center;margin:0;padding:.25rem .35rem 0;font-size:.58rem;line-height:1.35}.party-camera-grid-scroll{flex-direction:column;flex:1;gap:.5rem;min-height:0;display:flex;overflow-y:auto}.party-camera-tile{aspect-ratio:16/10;background:linear-gradient(145deg,#1a1028,#0d0d12);border:1px solid #ffffff1a;border-radius:.65rem;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.party-camera-tile.is-local{border-color:#ef444459}.party-camera-tile.is-speaking{border-color:#4ade80a6;box-shadow:0 0 20px #4ade8033}.party-camera-video{-o-object-fit:cover;object-fit:cover;image-rendering:auto;backface-visibility:hidden;width:100%;height:100%;transform:scaleX(-1)}.party-camera-avatar{color:#fff;background:linear-gradient(135deg,#ef444459,#a855f759);justify-content:center;align-items:center;width:100%;height:100%;font-size:1.25rem;font-weight:700;display:flex;overflow:hidden}.party-camera-avatar-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.party-camera-tile-bar{color:#fff;background:linear-gradient(#0000,#000000bf);justify-content:space-between;align-items:center;gap:.25rem;padding:.2rem .35rem;font-size:.58rem;display:flex;position:absolute;bottom:0;left:0;right:0}.party-camera-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.party-camera-speaking-ring{border-radius:inherit;pointer-events:none;animation:1.2s ease-in-out infinite party-speak-pulse;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #4ade8073}@keyframes party-speak-pulse{0%,to{opacity:.35}50%{opacity:1}}.party-media-controls{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.party-media-btn{color:#ffffffbf;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:.6rem;align-items:center;gap:.35rem;min-height:2.75rem;padding:.45rem .65rem;font-size:.68rem;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.party-media-btn:hover{color:#fff;background:#ffffff1a}.party-media-btn.is-on{color:#bbf7d0;background:#4ade801f;border-color:#4ade8059}.party-media-btn.is-speaking{border-color:#4ade808c;box-shadow:0 0 12px #4ade8033}.party-media-hint{color:#ffffff61;width:100%;font-size:.62rem}.party-media-error{color:#fca5a5;width:100%;margin:0;font-size:.62rem}.party-media-controls--compact{gap:.35rem}.party-media-controls--compact .party-media-btn span{display:none}.party-media-controls--compact .party-media-btn{justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:.5rem}.party-invite-dialog{z-index:10003;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.party-invite-dialog-backdrop{-webkit-backdrop-filter:blur(10px);background:#000000d9;position:absolute;inset:0}.party-invite-dialog-panel{background:#09090b;border:1px solid #ffffff1a;border-radius:1.5rem;width:100%;max-width:28rem;max-height:min(92dvh,40rem);animation:.35s cubic-bezier(.16,1,.3,1) player-party-slide-up;position:relative;overflow-y:auto;box-shadow:0 0 80px #ef444433}.party-invite-dialog-footer{padding:.75rem 1.25rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom));border-top:1px solid #ffffff0d}.party-invite-dialog-note{color:#fff6;justify-content:center;align-items:center;gap:.35rem;margin:0;font-size:.625rem;display:flex}.party-camera-pip{right:.75rem;bottom:calc(3.5rem + env(safe-area-inset-bottom));z-index:10001;pointer-events:none;width:5.5rem;position:fixed}.party-camera-pip .party-camera-tile{aspect-ratio:3/4;min-width:0;box-shadow:0 8px 28px #0000008c}.party-camera-pip .party-camera-tile-bar{padding:.2rem .35rem;font-size:.55rem}.party-camera-pip-stack{display:none}.party-camera-pip--expanded{bottom:calc(min(45vh,20rem) + .75rem + env(safe-area-inset-bottom));width:6.5rem}.player-party-fab{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));z-index:10001;color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444,#a855f7);border:none;border-radius:999px;justify-content:center;align-items:center;width:3.25rem;height:3.25rem;display:inline-flex;position:fixed;box-shadow:0 8px 28px #ef444466}.player-party-fab-badge{background:#4ade80;border:2px solid #09090b;border-radius:999px;width:.55rem;height:.55rem;position:absolute;top:.35rem;right:.35rem}.player-party-drag-handle{flex-shrink:0;justify-content:center;padding:.5rem 0 .15rem;display:flex}.player-party-drag-handle span{background:#fff3;border-radius:999px;width:2.5rem;height:.25rem}.player-party-header{border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.player-party-header--mobile{padding:.5rem .75rem}.player-party-icon-btn{cursor:pointer;background:0 0;border:none;border-radius:.6rem;justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;transition:background .15s;display:inline-flex}.player-party-icon-btn:hover{background:#ffffff14}.player-party-icon-btn--danger{color:#fecaca}.player-party-tabs{border-bottom:1px solid #ffffff1a;flex-shrink:0;display:flex}.player-party-minibar{padding:.5rem .75rem;padding-bottom:max(.5rem,env(safe-area-inset-bottom));border-top:1px solid #ffffff14}.party-members-panel{flex-direction:column;gap:.4rem;display:flex}.party-members-label{letter-spacing:.06em;text-transform:uppercase;color:#ffffff6b;align-items:center;gap:.35rem;margin:0;font-size:.62rem;font-weight:700;display:flex}.party-members-list{flex-direction:column;gap:.35rem;max-height:10rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.party-member-row{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:.55rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .45rem;display:flex}.party-member-info{align-items:center;gap:.45rem;min-width:0;display:flex}.party-member-avatar{-o-object-fit:cover;object-fit:cover;border-radius:.45rem;flex-shrink:0;width:1.65rem;height:1.65rem}.party-member-avatar--fallback{color:#fff;background:linear-gradient(135deg,#ef444466,#a855f759);justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:flex}.party-member-text{min-width:0}.party-member-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:600;display:block;overflow:hidden}.party-member-you{color:#ffffff73;font-weight:500}.party-member-role{color:#ffffff61;font-size:.58rem;display:block}.party-member-actions{flex-shrink:0;gap:.2rem;display:flex}.party-member-action{color:#ffffffa6;cursor:pointer;background:#ffffff0f;border:none;border-radius:.4rem;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;transition:background .15s,color .15s;display:inline-flex}.party-member-action:hover{color:#fff;background:#ffffff1f}.party-member-action.is-active{color:#fecaca;background:#ef444433}.party-member-action--kick:hover{color:#fecaca;background:#ef444447}.party-voice-volume{width:100%;padding:.35rem 0}.party-voice-volume-head{color:#ffffff8c;align-items:center;gap:.35rem;margin-bottom:.35rem;font-size:.65rem;display:flex}.party-voice-volume-pct{color:#ffffffbf;margin-left:auto;font-weight:700}.party-voice-volume-slider{accent-color:#4ade80;cursor:pointer;width:100%;height:.35rem}@media (max-width:768px){.player-shell{padding:.5rem;padding-bottom:max(.5rem,env(safe-area-inset-bottom));align-items:stretch}.player-shell--mobile .player-layout{flex-direction:column;flex:1;align-items:stretch;gap:0;max-width:100%;min-height:0}.player-shell--mobile .player-layout-main{flex-direction:column;flex:1;min-height:0;display:flex}.player-shell--mobile .player-window.is-framed{border-radius:.75rem;flex:1;width:100%;max-width:100%;min-height:55vh;max-height:none}.player-shell--mobile.player-shell--party-expanded .player-window.is-framed{min-height:55vh;max-height:calc(100dvh - min(45vh,20rem) - 1rem)}.player-shell--mobile.player-shell--party-minimized .player-window.is-framed{min-height:calc(100dvh - 4.5rem - env(safe-area-inset-bottom));max-height:calc(100dvh - 4.5rem - env(safe-area-inset-bottom))}.player-shell--mobile:not(.player-shell--party-open) .player-window.is-framed{min-height:calc(100dvh - 2rem - env(safe-area-inset-bottom));max-height:calc(100dvh - 2rem - env(safe-area-inset-bottom))}.player-layout--camera .player-layout-main{flex-direction:column;gap:.5rem}.player-layout--camera .player-window.is-framed{flex:1;width:100%}.player-party-panel--mobile{z-index:10002;width:100%;padding-bottom:env(safe-area-inset-bottom);border-bottom:none;border-radius:1rem 1rem 0 0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 40px #0000008c}.player-party-panel--mobile.player-party-panel--expanded{max-height:min(45vh,20rem);animation:.35s cubic-bezier(.16,1,.3,1) player-party-slide-up}@keyframes player-party-slide-up{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}.player-party-panel--mobile.player-party-panel--minimized{border-radius:.85rem .85rem 0 0;max-height:3.75rem}.party-invite-dialog{align-items:stretch;padding:0}.party-invite-dialog-panel{border:none;border-radius:0;max-width:none;height:100dvh;max-height:none}.party-camera-grid,.party-camera-hint,.party-media-hint--desktop{display:none}.player-party-panel .party-media-btn,.player-party-panel button,.player-party-icon-btn{min-width:2.75rem;min-height:2.75rem}}@media (max-width:640px){.player-shell--mobile .player-window-bar{padding:.45rem .5rem .45rem .75rem}.player-window-btn{width:2.75rem;height:2.75rem}.player-hint{white-space:normal;text-align:center;max-width:calc(100% - 1.5rem)}.party-camera-pip{width:5rem}.party-camera-pip--expanded{width:5.75rem}}@media (prefers-reduced-motion:reduce){.player-spinner,.player-hint{animation:none}}.player-shell--guest-splash .player-window.is-framed{opacity:0;pointer-events:none}.party-guest-splash{z-index:10050;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(#140a1ef7 0%,#000000fc 70%);justify-content:center;align-items:center;animation:.35s ease-out party-splash-in;display:flex;position:fixed;inset:0}@keyframes party-splash-in{0%{opacity:0}to{opacity:1}}.party-guest-splash-card{text-align:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:1.25rem;flex-direction:column;align-items:center;gap:.75rem;max-width:min(22rem,100vw - 2rem);padding:2rem 2.5rem;display:flex;box-shadow:0 24px 64px #0000008c}.party-guest-splash-icon{background:linear-gradient(135deg,#a855f7,#ec4899);border-radius:1rem;place-items:center;width:3.5rem;height:3.5rem;display:grid;box-shadow:0 8px 24px #a855f759}.party-guest-splash-title{color:#fff;margin:0;font-size:1.125rem;font-weight:600}.party-guest-splash-status{color:#ffffffa6;margin:0;font-size:.875rem}.party-guest-splash-bar{background:#ffffff1a;border-radius:999px;width:100%;height:4px;margin-top:.25rem;overflow:hidden}.party-guest-splash-bar-fill{background:linear-gradient(90deg,#ef4444,#a855f7);border-radius:999px;height:100%;transition:width .5s ease-out}.party-guest-splash-drift{color:#ffffff80;margin:0;font-size:.75rem}.party-guest-splash-spinner{margin-top:.25rem;animation:1s linear infinite spin}@media (prefers-reduced-motion:reduce){.party-guest-splash{animation:none}.party-guest-splash-bar-fill{transition:none}.party-guest-splash-spinner{animation:none}.player-window{transition:none}}.guest-join-overlay{z-index:10060;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(#0f081cfa 0%,#000000fc 72%);justify-content:center;align-items:center;animation:.3s ease-out party-splash-in;display:flex;position:fixed;inset:0}.guest-join-overlay-card{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:1.25rem;flex-direction:column;align-items:center;gap:.65rem;max-width:min(22rem,100vw - 2rem);padding:2rem 2.5rem;display:flex;box-shadow:0 28px 72px #0009}.guest-join-overlay-icon{background:linear-gradient(135deg,#7c3aed,#db2777);border-radius:1rem;place-items:center;width:3.5rem;height:3.5rem;display:grid;box-shadow:0 8px 28px #7c3aed66}.guest-join-overlay-title{color:#fff;margin:0;font-size:1.125rem;font-weight:600}.guest-join-overlay-host{color:#ffffff8c;margin:0;font-size:.8rem}.guest-join-overlay-status{color:#ffffffb3;margin:0;font-size:.875rem}.guest-join-overlay-bar{background:#ffffff1a;border-radius:999px;width:100%;height:4px;margin-top:.15rem;overflow:hidden}.guest-join-overlay-bar-fill{background:linear-gradient(90deg,#ef4444,#8b5cf6,#ec4899);border-radius:999px;height:100%;transition:width .45s cubic-bezier(.4,0,.2,1)}.guest-join-overlay-spinner{margin-top:.2rem;animation:1s linear infinite spin}.party-guest-splash--exit{animation:.45s ease-in forwards party-splash-out}@keyframes party-splash-out{to{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}}.party-guest-splash-steps{gap:.35rem;margin-bottom:.25rem;display:flex}.party-guest-splash-step{background:#ffffff26;border-radius:999px;width:1.75rem;height:3px;transition:background .3s,transform .3s}.party-guest-splash-step.is-active{background:linear-gradient(90deg,#ef4444,#a855f7);transform:scaleY(1.2)}.party-guest-splash-step.is-done{background:#34d399d9}.party-guest-splash-host{color:#ffffff8c;margin:0;font-size:.8rem}.player-shell .player-window.is-framed{transition:opacity .5s cubic-bezier(.4,0,.2,1)}.player-ambient-glow{z-index:0;pointer-events:none;filter:blur(120px);position:absolute;inset:-18%;overflow:hidden}.player-layout>.player-layout-main,.player-layout>.player-party-sidebar,.player-layout>aside{z-index:1;position:relative}.player-overlay-bar{z-index:4;pointer-events:none;opacity:0;background:linear-gradient(#0000,#00000059);padding:.5rem .75rem .55rem;transition:opacity .35s;position:absolute;bottom:0;left:0;right:0}.player-overlay-bar.is-cursor-idle{opacity:1;pointer-events:auto}.player-overlay-bar.is-cursor-active{opacity:0;pointer-events:none}.player-overlay-bar.is-cursor-active .video-scrubber{pointer-events:none}.video-scrubber-row{align-items:center;gap:.5rem;display:flex}.video-scrubber{cursor:pointer;outline:none;flex:1;height:1.35rem;position:relative}.video-scrubber-track{background:#ffffff24;border-radius:999px;height:3px;position:absolute;top:50%;left:0;right:0;overflow:hidden;transform:translateY(-50%)}.video-scrubber-buffered{background:#ffffff38;position:absolute;inset:0 auto 0 0}.video-scrubber-fill{background:#ffffff8c;position:absolute;inset:0 auto 0 0}.video-scrubber-hover{background:#ffffff47;position:absolute;inset:0 auto 0 0}.video-scrubber-playhead{pointer-events:none;opacity:.9;background:#ffffffe6;border-radius:50%;width:8px;height:8px;margin-left:-4px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 0 0 2px #ffffff2e}.video-scrubber-tooltip{color:#fff;pointer-events:none;white-space:nowrap;background:#000000d9;border-radius:.35rem;padding:.2rem .4rem;font-size:.68rem;position:absolute;bottom:calc(100% + 6px);transform:translate(-50%)}.video-marker{z-index:2;opacity:.85;background:#fbbf24d9;border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;top:50%;transform:translateY(-50%)}.video-marker-count-mid{background:#fb923c}.video-marker-count-high{background:#ef4444}.video-marker.is-active{box-shadow:0 0 0 3px #fbbf2466}.video-add-comment{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:.5rem;justify-content:center;align-items:center;gap:0;width:2rem;height:2rem;display:inline-flex}.video-add-comment:hover{background:#ef444459}.player-upnext-overlay{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}
