/* BOTBB sign-in (shared by templates/signin.html and templates/owner_login.html).
   t_23744152: consolidated single-definition stylesheet; replaces the previous stacked
   override layers. Centered dark rectangular card, emblem slot at top, responsive.
   t_42fad8d9: standalone BOTBB label removed (emblem carries the brand); spacing compacted. */
*{box-sizing:border-box}
html{color-scheme:dark}
body{margin:0;background:#111;color:#eee;font-family:"Noto Sans",Arial,Helvetica,sans-serif}

.login-page{min-height:100vh;min-height:100svh;padding:32px 16px;display:flex;justify-content:center;align-items:center}
.login-wrap{width:100%;max-width:560px;padding:28px 36px 22px;background:radial-gradient(ellipse at 50% 5%,rgba(25,110,158,.22),transparent 32%),linear-gradient(160deg,rgba(33,33,33,.96),rgba(28,28,28,.9));border:1px solid rgba(255,255,255,.08);border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.45),0 1px 3px 1px rgba(0,0,0,.2)}

/* Emblem slot: natural aspect ratio, no crop/mask/radius/blend. Asset is the Boss-approved
   transparent RGBA botbb-emblem.png (1312x1199, t_7842a7ab). */
.brand{text-align:center;margin-bottom:14px}
.brand-logo{width:min(300px,100%);margin:0 auto 10px}
.brand-logo img{display:block;width:100%;max-width:100%;height:auto}
.brand-subtitle{font-size:12px;font-weight:500;line-height:16px;letter-spacing:2px;color:#9e9e9e}

.login-title{margin:0 0 20px;text-align:center;color:#ececec;font-size:18px;font-weight:700;line-height:24px;letter-spacing:1.5px}

.login-alert{margin:0 0 18px;padding:10px 12px;border:1px solid #e05260;border-radius:5px;background:#5a1720;color:#ffd9dd;text-align:center;font-size:13px;font-weight:700;line-height:20px}

.field{position:relative;margin:0 0 20px}
.field label{position:absolute;z-index:1;left:12px;top:-8px;background:#202020;padding:0 5px;color:#bfc1c5;font-size:12px}
.input-wrap{display:flex;height:42px;border:1px solid #747474;border-radius:4px;overflow:hidden}
.input-wrap:focus-within{border-color:#9cb6d2;box-shadow:0 0 0 3px #9cb6d21a}
.input-wrap input{min-width:0;width:100%;border:0;background:rgba(70,90,126,.4);color:#f5f5f5;font-family:inherit;font-size:16px;line-height:24px;padding:8px 6px;outline:none}
input::placeholder{color:#939ba7}
.field-icon{width:36px;flex-shrink:0;display:grid;place-items:center;color:#aaa}
.field-icon svg{width:21px;height:21px;fill:currentColor;stroke:currentColor;stroke-width:1.5}
.field-icon svg path{fill:none}
.password-toggle{width:40px;flex-shrink:0;border:0;background:transparent;color:#aaa;cursor:pointer;display:grid;place-items:center}
.password-toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2}
.eye-closed{display:none}

.signin-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:42px;border:1px solid #df3547;border-radius:4px;background:#dc3545;color:#fff;font-family:inherit;font-size:14px;font-weight:700;letter-spacing:1px;cursor:pointer;box-shadow:0 3px 6px #0003}
.signin-button:hover{background:#c72d3e}
.signin-button:disabled{opacity:.75;cursor:progress}
.signin-button-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}

.forgot-password{display:block;width:max-content;margin:14px auto 0;color:#b8b8b8;font-size:12px;text-decoration:none}
.forgot-password:hover{text-decoration:underline}

.language-heading{display:flex;align-items:center;gap:16px;margin:20px 0 12px;color:#b3b3b3;font-size:12px;font-weight:500;letter-spacing:.5px}
.language-heading:before,.language-heading:after{content:"";height:1px;background:#ffffff1f;flex:1}
.languages{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px}
.language{display:grid;place-items:center;line-height:0;border:1px solid transparent;background:transparent;padding:6px;border-radius:8px;cursor:pointer}
.language img{display:block;width:25px;height:18px;object-fit:cover}
.language.active{border-color:#af8e35;background:#b99c2222}

.responsible-gaming{margin-top:16px;text-align:center;font-size:12px;line-height:18px;color:#a3a3a3}
.responsible-gaming p{margin:6px 0}
footer{border-top:1px solid #343434;padding-top:12px;margin-top:14px;text-align:center;font-size:11px;color:#969696}
button:focus-visible,a:focus-visible{outline:2px solid #9cb6d2;outline-offset:4px}

/* Tablet landscape / small laptop */
@media (max-width:1024px){
  .login-wrap{max-width:540px}
  .brand-logo{width:min(270px,100%)}
}
/* Tablet portrait */
@media (max-width:768px){
  .login-page{padding:28px 20px}
  .login-wrap{max-width:520px;padding:26px 30px 20px}
  .brand-logo{width:min(250px,100%)}
}
/* Mobile */
@media (max-width:480px){
  .login-page{padding:16px 12px;align-items:flex-start}
  .login-wrap{padding:20px 18px 16px;border-radius:12px}
  .brand-logo{width:min(210px,100%)}
  .login-title{font-size:16px;margin-bottom:18px}
  .input-wrap,.signin-button{height:44px}
}
/* Narrow mobile */
@media (max-width:360px){
  .login-page{padding:10px 8px}
  .login-wrap{padding:18px 14px 14px}
  .brand-logo{width:min(200px,100%)}
  .login-title{font-size:15px;letter-spacing:1px}
}
