body{margin:0;background:#030406;color:#f7f7f8;font:15px Inter,Arial;min-height:100vh}.auth{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 80% 10%,#3d0b10,transparent 35%)}.box{width:min(440px,92vw);padding:38px;border:1px solid #252a35;background:rgba(12,15,22,.92);border-radius:26px;box-shadow:0 30px 100px #000}.logo{font-size:34px;font-weight:900;margin-bottom:25px}.logo span{color:#ef2029}.logo small{display:block;font-size:10px;letter-spacing:2px;color:#888}.eyebrow{color:#ff4750;text-transform:uppercase;letter-spacing:2px;font-weight:800;font-size:11px}h1{font-size:34px;margin:7px 0 12px}p{color:#9ba0b0}label{display:block;margin:18px 0 7px;color:#bbb;font-weight:700}input,select,textarea{width:100%;box-sizing:border-box;background:#07090e;color:#fff;border:1px solid #303641;padding:13px;border-radius:11px;outline:none}input:focus,select:focus,textarea:focus{border-color:#ef2029;box-shadow:0 0 0 3px #ef202922}.btn{display:inline-block;width:100%;box-sizing:border-box;text-align:center;margin-top:22px;background:#ef2029;color:#fff;border:0;padding:14px;border-radius:12px;font-weight:900;cursor:pointer}.links{display:flex;justify-content:space-between;margin-top:20px}.links a{color:#ff6970;text-decoration:none}.msg{padding:12px;border-radius:10px;background:#4b1217;margin:15px 0}.msg.success{background:#103a24}.legal-box{margin:14px 0;padding:12px 14px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025);font-size:12px;line-height:1.5}.legal-box a{color:#ff5962}.legal-box input{width:auto;margin-right:6px}

/* Ekran sukcesu po poprawnym 2FA */
.success-box{text-align:center}
.success-modal-content{padding:8px 0 4px}
.success-eyebrow{color:#43e58a}
.success-check{width:78px;height:78px;margin:4px auto 20px;border-radius:50%;display:grid;place-items:center;background:rgba(40,220,125,.12);border:2px solid #39db83;box-shadow:0 0 0 8px rgba(40,220,125,.04),0 0 35px rgba(40,220,125,.18);animation:successPop .45s ease-out both}
.success-check span{font-size:42px;font-weight:900;color:#45e88e;line-height:1}
.login-loader{width:44px;height:44px;margin:25px auto 4px;border:3px solid rgba(255,255,255,.12);border-top-color:#ef2029;border-radius:50%;animation:loginSpin .8s linear infinite;position:relative}
.login-loader span{display:none}
@keyframes loginSpin{to{transform:rotate(360deg)}}
@keyframes successPop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
/* AUTODIL v49 login branding */
.auth .box{text-align:center}
.auth .logo{display:block;width:max-content;max-width:100%;margin:0 auto 30px;text-align:center;letter-spacing:.5px}
.auth .logo small{margin-top:8px;letter-spacing:2.4px;text-align:center}
.auth .eyebrow,.auth h1,.auth p{text-align:center}
.auth form,.auth .legal-box{text-align:left}

.auth .logo .auto{color:#fff}.auth .logo .dil{color:#ef2029}.auth .logo small{color:#9aa3b1}.auth .links{justify-content:center;gap:24px;flex-wrap:wrap}.auth .logo{margin-left:auto!important;margin-right:auto!important;text-align:center!important}.auth .logo small{text-align:center!important}

/* AUTODIL V52 - unified logo */
.auth .logo .auto{color:#fff!important}.auth .logo .dil{color:#ef2029!important}

/* V62: trusted 2FA device */
.trust-device{display:flex!important;align-items:flex-start;gap:10px;margin:14px 0 4px;padding:12px 13px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.025);cursor:pointer;text-align:left}
.trust-device input{width:17px!important;height:17px!important;min-width:17px;margin:2px 0 0!important;accent-color:#ef2029}
.trust-device span{display:grid;gap:2px}.trust-device strong{font-size:12px;color:#fff}.trust-device small{font-size:10px;line-height:1.45;color:#8f99a8;font-weight:500}

/* V125: główne logo z logo/logoglowne.png */
.auth .logo .main-brand-logo{display:block;width:auto;height:58px;max-width:300px;object-fit:contain;object-position:center;margin:0 auto;filter:drop-shadow(0 0 18px rgba(239,32,41,.18))}
@media(max-width:520px){.auth .logo .main-brand-logo{height:50px;max-width:250px}}

/* AUTODIL V129 — czytelne ekrany logowania na telefonie */
@media(max-width:520px){
  .auth{padding:12px!important;align-items:start;padding-top:max(18px,env(safe-area-inset-top))!important}
  .box{width:100%!important;max-width:440px!important;padding:25px 18px!important;border-radius:20px!important}
  .auth .logo{margin-bottom:22px!important}
  .auth .logo .main-brand-logo{height:48px!important;max-width:230px!important}
  .auth h1{font-size:28px!important;line-height:1.08!important}
  .auth p{font-size:14px!important;line-height:1.55!important}
  .auth label{margin-top:15px!important;font-size:14px!important}
  .auth input,.auth select,.auth textarea{font-size:16px!important;min-height:46px!important}
  .auth .btn{min-height:47px!important;font-size:15px!important}
  .auth .links{gap:12px!important;font-size:13px!important}
}


/* AUTODIL V133 — kompaktowe logowanie i rejestracja na telefonie */
@media(max-width:520px){
  .auth .auth-compact-box{
    width:calc(100% - 28px)!important;
    max-width:372px!important;
    padding:19px 15px 18px!important;
    border-radius:17px!important;
    box-shadow:0 20px 58px rgba(0,0,0,.78)!important;
  }
  .auth .auth-compact-box .logo{margin-bottom:15px!important}
  .auth .auth-compact-box .logo .main-brand-logo{height:40px!important;max-width:200px!important}
  .auth .auth-compact-box .logo small{margin-top:5px!important;font-size:8.5px!important;letter-spacing:1.8px!important}
  .auth .auth-compact-box .eyebrow{font-size:9.5px!important;letter-spacing:1.55px!important}
  .auth .auth-compact-box h1{font-size:24px!important;line-height:1.05!important;margin:5px 0 8px!important}
  .auth .auth-compact-box p{font-size:12.5px!important;line-height:1.42!important;margin:7px 0 10px!important}
  .auth .auth-compact-box label{margin:11px 0 5px!important;font-size:12.5px!important;line-height:1.28!important}
  .auth .auth-compact-box input,
  .auth .auth-compact-box select,
  .auth .auth-compact-box textarea{
    min-height:42px!important;
    padding:10px 11px!important;
    border-radius:10px!important;
    font-size:16px!important;
  }
  .auth .auth-compact-box .btn{
    min-height:43px!important;
    margin-top:15px!important;
    padding:10px 12px!important;
    border-radius:10px!important;
    font-size:13.5px!important;
  }
  .auth .auth-compact-box .links{margin-top:14px!important;gap:10px!important;font-size:12px!important}
  .auth .auth-compact-box .msg{padding:9px 10px!important;margin:10px 0!important;border-radius:9px!important;font-size:12px!important;line-height:1.35!important}
  .auth .auth-register-box .legal-box{margin:10px 0!important;padding:9px 10px!important;border-radius:10px!important;font-size:10.5px!important;line-height:1.35!important}
  .auth .auth-register-box .legal-box label{margin:0!important;font-size:10.5px!important;line-height:1.35!important}
  .auth .auth-register-box .legal-box input{min-height:0!important;width:auto!important;padding:0!important}
  .auth .auth-login-box .trust-device{margin:10px 0 2px!important;padding:9px 10px!important;border-radius:10px!important;gap:8px!important}
  .auth .auth-login-box .trust-device input{min-height:0!important;width:16px!important;height:16px!important;min-width:16px!important;padding:0!important}
  .auth .auth-login-box .trust-device strong{font-size:11px!important}
  .auth .auth-login-box .trust-device small{font-size:9.5px!important;line-height:1.35!important}
  .auth .auth-login-box .success-check{width:62px!important;height:62px!important;margin:2px auto 14px!important}
  .auth .auth-login-box .success-check span{font-size:34px!important}
  .auth .auth-login-box .login-loader{width:36px!important;height:36px!important;margin:17px auto 2px!important}
}

@media(max-width:370px){
  .auth .auth-compact-box{width:calc(100% - 20px)!important;padding:16px 12px!important}
  .auth .auth-compact-box h1{font-size:22px!important}
  .auth .auth-compact-box .logo .main-brand-logo{height:37px!important;max-width:185px!important}
}
