/* Publiczne widoki /login i /rejestracja */
html.auth-page-active,body.auth-page-active{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
body.auth-page-active #auth-container{height:auto;min-height:100dvh;overflow:visible}
#auth-container{width:100%;max-width:100vw;min-height:100dvh;padding:0;display:grid;grid-template-columns:minmax(390px,.92fr) minmax(500px,1.08fr);overflow-x:hidden;overflow-y:auto;background:#090914;color:#f8fafc;color-scheme:dark;--text-color:#f8fafc;--secondary-text:#9da7bc;--border-color:rgba(255,255,255,.12);--input-bg:#17172a;--accent-color:#20d9e8;--accent-hover:#12bdcb;--accent-color-rgb:32,217,232}
.auth-showcase{position:relative;min-height:100dvh;overflow:hidden;padding:clamp(34px,5vw,70px);display:flex;flex-direction:column;background:radial-gradient(circle at 10% 15%,rgba(32,217,232,.16),transparent 25rem),radial-gradient(circle at 90% 85%,rgba(139,92,246,.3),transparent 30rem),#101022}
.auth-showcase::after{content:"";position:absolute;width:440px;height:440px;right:-230px;top:25%;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.018),0 0 0 140px rgba(255,255,255,.012)}
.auth-brand{position:relative;z-index:2;display:inline-flex;align-items:center;gap:11px;align-self:flex-start;color:#fff;font-size:1.18rem;font-weight:800;text-decoration:none;letter-spacing:-.03em}.auth-brand>span{width:38px;height:38px;padding:5px;border:1px solid rgba(255,255,255,.15);border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(139,92,246,.5),rgba(32,217,232,.18))}.auth-brand img{width:100%;height:100%;object-fit:contain}
.auth-showcase-copy{position:relative;z-index:2;max-width:610px;margin:auto 0;padding:70px 0 210px}.auth-showcase-copy>p:first-child,.auth-kicker{margin:0 0 17px;color:#67e8f9;font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.auth-showcase-copy h2{max-width:580px;margin:0;color:#fff;font-size:clamp(2.7rem,4.6vw,5rem);line-height:1;letter-spacing:-.06em}.auth-showcase-copy>p:nth-of-type(2){max-width:550px;margin:25px 0;color:#aab2c5;font-size:1.03rem;line-height:1.7}.auth-showcase-copy ul{margin:28px 0 0;padding:0;display:grid;gap:12px;color:#c8cfde;font-size:.87rem;list-style:none}.auth-showcase-copy li{display:flex;gap:10px}.auth-showcase-copy li::first-letter{color:#34d399}.auth-mascot{position:absolute;z-index:1;width:min(360px,45vw);max-height:390px;right:clamp(-30px,2vw,30px);bottom:-35px;object-fit:contain;filter:drop-shadow(0 25px 45px rgba(0,0,0,.35))}
.auth-panel{position:relative;min-height:100dvh;padding:80px clamp(34px,7vw,110px) 50px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 100% 0,rgba(139,92,246,.1),transparent 28rem),#090914}.auth-back-home{position:absolute;top:31px;right:clamp(28px,5vw,70px);display:inline-flex;align-items:center;gap:8px;color:#9099ad;font-size:.82rem;font-weight:650;text-decoration:none}.auth-back-home:hover{color:#fff}.auth-box{width:100%;max-width:520px;padding:0;border:0;background:transparent;box-shadow:none;color:#f8fafc}.auth-box .logo{margin:0;color:#fff;font-size:clamp(2rem,4vw,3rem);line-height:1.05;text-align:left;letter-spacing:-.045em}.auth-description{margin:12px 0 29px;color:#9da7bc;font-size:.94rem;line-height:1.55}
.auth-tabs{height:50px;margin-bottom:24px;padding:4px;border:1px solid rgba(255,255,255,.1);border-radius:14px;display:grid;grid-template-columns:1fr 1fr;background:rgba(255,255,255,.035)}.auth-tab{height:40px;margin:0;padding:0;border:0;border-radius:10px;background:transparent;color:#929caf;font-size:.86rem;font-weight:700;transition:color .18s,background .18s,box-shadow .18s}.auth-tab:hover{background:rgba(255,255,255,.04);color:#fff}.auth-tab.active{border:0;background:#202038;color:#fff;box-shadow:0 5px 16px rgba(0,0,0,.22)}.auth-tab:active,.auth-submit:active{transform:none}
.auth-box>.error-message{min-height:20px;margin:0 0 13px;color:#fb7185;text-align:left}.auth-box>.error-message:empty{min-height:0;margin:0}.auth-box>.error-message.success{padding:11px 13px;border:1px solid rgba(52,211,153,.2);border-radius:10px;background:rgba(52,211,153,.08);color:#6ee7b7}
.auth-form{display:flex;flex-direction:column;gap:0}.auth-form>label{margin:0 0 7px;color:#dbe1ec;font-size:.78rem;font-weight:700}.auth-form>input,.auth-form>select{height:48px;margin-bottom:17px;padding:0 14px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:#17172a;color:#f8fafc;font-size:.9rem}.auth-form>input::placeholder{color:#687187}.auth-form>input:focus,.auth-form>select:focus{border-color:#20d9e8;box-shadow:0 0 0 3px rgba(32,217,232,.14)}.auth-form>select{background-color:#17172a}.auth-form .remember-me-container{margin:0 0 20px;display:flex;align-items:center;gap:9px}.auth-form .remember-me-container input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:#20d9e8}.auth-form .remember-me-container label{margin:0;color:#9da7bc;font-size:.78rem}.auth-submit{width:100%;min-height:49px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#10cadb,#7658ec);font-size:.9rem;box-shadow:0 12px 28px rgba(32,170,210,.17);transition:box-shadow .18s}.auth-submit:hover{background:linear-gradient(135deg,#10cadb,#7658ec);box-shadow:0 15px 34px rgba(32,170,210,.3)}.forgot-links{margin-top:20px;display:flex;justify-content:center;gap:10px;color:#596277;font-size:.76rem}.forgot-links a{color:#8fdde5;text-decoration:none}.forgot-links a:hover{text-decoration:underline}.forgot-links .separator{margin:0;color:#596277}.register-note{margin:0 0 17px;color:#7f899e;font-size:.73rem;line-height:1.5}
.ban-appeal-panel{margin-top:24px;padding:18px;border:1px solid rgba(251,113,133,.28);border-radius:14px;background:rgba(251,113,133,.07)}.ban-appeal-panel h2{margin:0 0 8px;color:#fff;font-size:1rem}.ban-appeal-panel p{margin:0 0 15px;color:#cbd5e1;font-size:.78rem;line-height:1.5}.ban-appeal-panel label{display:block;margin:0 0 7px;color:#dbe1ec;font-size:.78rem;font-weight:700}.ban-appeal-panel textarea{width:100%;min-height:110px;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:12px;resize:vertical;background:#17172a;color:#f8fafc;font:inherit}.ban-appeal-panel textarea:focus{border-color:#20d9e8;box-shadow:0 0 0 3px rgba(32,217,232,.14)}
#auth-container[data-mode=register] .auth-showcase-copy{padding-bottom:150px}#auth-container[data-mode=register] .auth-panel{padding-top:75px;padding-bottom:35px}#auth-container[data-mode=register] .auth-box{max-width:560px}#auth-container[data-mode=register] .auth-form>input,#auth-container[data-mode=register] .auth-form>select{height:45px;margin-bottom:12px}#auth-container[data-mode=register] .auth-form>label{margin-bottom:5px}
@media(max-width:1000px){#auth-container{grid-template-columns:minmax(300px,.75fr) minmax(470px,1.25fr)}.auth-showcase{padding:35px}.auth-showcase-copy{padding-bottom:160px}.auth-showcase-copy h2{font-size:clamp(2.35rem,4.8vw,3.8rem)}.auth-showcase-copy ul{display:none}.auth-mascot{width:280px;right:-30px}.auth-panel{padding-inline:45px}}
@media(max-width:760px){#auth-container{display:block}.auth-showcase{min-height:auto;height:112px;padding:20px 22px;background:radial-gradient(circle at 20% 20%,rgba(32,217,232,.15),transparent 18rem),#101022}.auth-showcase::after,.auth-showcase-copy{display:none}.auth-mascot{width:130px;height:135px;right:5px;bottom:-31px;opacity:.82}.auth-panel{min-height:calc(100dvh - 112px);padding:62px 22px 42px;align-items:flex-start}.auth-back-home{top:21px;right:22px}.auth-box{max-width:520px}.auth-box .logo{font-size:2.25rem}}
@media(max-width:480px){.auth-showcase{height:94px;padding:17px 16px}.auth-brand{font-size:1.02rem}.auth-brand>span{width:34px;height:34px}.auth-mascot{width:105px;height:112px;right:-5px}.auth-panel{min-height:calc(100dvh - 94px);padding:58px 16px 34px}.auth-back-home{top:19px;right:16px}.auth-box .logo{font-size:2rem}.auth-description{margin-bottom:22px}.auth-tabs{margin-bottom:20px}.forgot-links{align-items:center;flex-direction:column;gap:6px}.forgot-links .separator{display:none}}
@media(prefers-reduced-motion:reduce){.auth-tab,.auth-submit{transition:none}}
#auth-container .auth-showcase,#auth-container .auth-panel,#auth-container .auth-box{min-width:0}
#auth-container .auth-form>select{padding-right:2.75rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23aab2c5' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1em}
