#opening{--login-ink:#354b8a;color-scheme:only light;position:relative;isolation:isolate;display:block;width:min(100%,540px);min-height:100svh;margin:0 auto;padding:0;overflow:hidden;color:var(--login-ink);background:linear-gradient(180deg,#f5f8ff30,#f9fbff73 45%,#f5f9ff30),url(system/clubroom-bg.webp) center bottom/100% auto no-repeat,#f5f8ff}#opening:before{display:none}#opening .loginCrystal{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}#opening .openingInner{width:100%;max-width:none;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(60px,1.6fr) auto minmax(28px,.4fr) auto minmax(52px,1fr);padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}#opening .loginBrand{grid-row:2;justify-self:center;width:85%;max-width:430px;height:clamp(148px,43vw,210px);margin:0;opacity:1;transform:none;transition:height .28s ease,opacity .2s ease,transform .28s ease}#opening .loginBrand img{display:block;width:100%;height:100%;object-fit:contain}#opening .openingEntry{grid-row:4;width:76%;max-width:360px;justify-self:center;margin:0;animation:none;position:relative;z-index:1}#opening form{margin:0}#opening #openingCredentials{display:grid;gap:12px;margin:0}#opening .loginField{position:relative;display:flex;align-items:center;height:46px;border:1px solid #bdcbe4;border-radius:8px;background:#ffffffa8;box-shadow:0 1px 2px #51639306;transition:border-color .15s,box-shadow .15s}#opening .loginField:focus-within{border-color:#879ad6;box-shadow:0 0 0 3px #b9d6fa33}#opening .loginField>svg{width:21px;height:24px;flex:none;margin-left:15px;color:#4d6d9e}#opening svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#opening .loginField input{min-width:0;width:100%;height:100%;border:0!important;background:none!important;border-radius:8px;padding:0 12px;color:#344c82;font-size:16px;font-family:var(--font-text)!important;font-weight:400;box-shadow:none!important;outline:0!important}#opening .loginField input::placeholder{color:#8c9fbe;opacity:1;font-size:clamp(12px,3.45vw,15px)}#opening #openingPassword{padding-right:43px}#opening #openingPasswordToggle{position:absolute;right:1px;top:0;width:43px;height:44px;min-height:44px;display:grid;place-items:center;margin:0;padding:0;background:none;color:#5975a6;border:0;border-radius:7px;box-shadow:none}#opening #openingPasswordToggle svg{width:21px;height:21px}#opening #openingPasswordToggle.passwordVisible .eyeSlash{display:none}#opening button,#opening button>span{font-family:var(--font-text)!important;font-weight:500;letter-spacing:0;text-shadow:none}#opening #openingError{margin:0;color:#b4536d;font-size:12px;line-height:1.5}#opening #openingError:not(:empty){padding-top:9px}#opening #openingSignedIn{margin:0;padding:16px;text-align:center;color:#354b8a;border:1px solid #cad4e9;border-radius:8px;background:#fff9}#opening #openingPlay{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;width:calc(100% + 20px);min-height:57px;margin:24px -10px 0;padding:10px 44px;background:none!important;border:0;border-radius:0;box-shadow:none;color:#304da1!important;font-size:22px;font-style:normal;filter:none;line-height:1.3;transition:transform .14s,opacity .15s}#opening #openingPlay:before,#opening #openingPlay:after{content:"";position:absolute;inset:0;z-index:-1;transform:skew(-23deg);animation:none;opacity:1;filter:none;mix-blend-mode:normal;mask:none;-webkit-mask:none;border:1px solid #fff;border-top-color:#bbd7ff;border-bottom-color:#c6a7ee;background:linear-gradient(110deg,#9ce5eea6,#c7d7ffac 45%,#efd5f3bb 85%,#f3bfe4b0)}#opening #openingPlay:after{inset:3px;z-index:0;pointer-events:none;border:1px solid #fff8;background:linear-gradient(145deg,transparent 30%,#ffffff8c 30.3%,transparent 30.7%,transparent 75%,#fff9 75.3%,transparent 75.7%)}#opening #openingPlay>svg{position:absolute;right:18px;width:22px;height:22px;stroke-width:1.3}#opening #openingPlay .loginGleam{position:absolute;left:20px;top:23px;width:11px;height:11px;background:#fff;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)}#opening .loginSecondary{display:flex;gap:18px;margin-top:24px}#opening .loginSecondary button{display:flex;align-items:center;justify-content:center;gap:7px;position:relative;isolation:isolate;flex:1;min-width:0;min-height:44px;width:auto;margin:0;padding:7px 6px;border:0;background:none;color:#42649b;border-radius:0;box-shadow:none;font-size:clamp(11px,3.15vw,14px);white-space:nowrap;line-height:1.4;transition:transform .14s,opacity .15s}#opening .loginSecondary button:before{content:"";position:absolute;inset:0;z-index:-1;transform:skew(-23deg);border:1px solid #c7d3e9;border-radius:6px;background:#ffffff9e}#opening .loginSecondary button>svg{width:20px;height:20px;flex:none}#opening .loginSecondary .loginArrow{width:13px;height:13px;margin-left:2px}#opening button:disabled{opacity:.5}#opening button:enabled:active{transform:translateY(2px)}#opening button:focus-visible{outline:2px solid #6d88c8;outline-offset:5px}#opening .help{color:#6d7fa0;font-size:11px;line-height:1.5;margin:12px -12px 0;text-align:center}#opening #bootStatus:empty{display:none}#opening #bootRetry{font-size:13px;min-height:36px;margin:10px auto 0;padding:8px 14px;border:1px solid #bdcce4;background:#fff9;color:#42649b;border-radius:6px}#opening .loginOnlyLabel{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#opening.loginCompact{min-height:var(--login-viewport-height,100svh);overflow:visible;background-image:linear-gradient(#f8faffd9,#f8faffd9),url(system/clubroom-bg.webp)}#opening.loginCompact .openingInner{min-height:var(--login-viewport-height,100svh);grid-template-rows:16px auto 0 auto minmax(16px,1fr)}#opening.loginCompact .loginBrand{height:0;opacity:0;transform:translateY(-14px);pointer-events:none}#opening.loginCompact #openingPlay,#opening.loginCompact .loginSecondary{margin-top:18px}@media(max-width:350px){#opening .openingEntry{width:80%}#opening .loginSecondary{gap:14px}#opening .loginSecondary button{gap:5px}#opening .loginSecondary button>svg{width:18px;height:18px}}@media(max-height:560px){#opening .openingInner{grid-template-rows:minmax(20px,1fr) auto 20px auto minmax(24px,1fr)}#opening .loginBrand{height:110px}}@media(prefers-reduced-motion:reduce){#opening .loginBrand,#opening button{transition:none}}
