/* ===== Login Pro — Responsive, Professional, Non-destructive ===== */
:root{
  --brand-1:#6366f1; --brand-2:#06b6d4;
  --text:#0b1220; --muted:#475569;
  --link:#2563eb; --link-hover:#1d4ed8;
  --card:#ffffff; --input:#f8fafc; --border:#e5e7eb;
}

/* Card container (targets common wrappers without changing markup) */
.panel,.panel-default,.card,.loginbox,.login-box,#login.panel{
  width:min(420px,92vw) !important;
  margin:clamp(18px,5vh,36px) auto !important;
  padding:clamp(16px,4vw,26px) !important;
  background:var(--card) !important;
  color:var(--text) !important;
  border:1px solid var(--border) !important;
  border-radius:18px !important;
  box-shadow:0 12px 30px rgba(2,6,23,.18) !important;
  backdrop-filter:none !important;
}

/* Titles / branding line */
.panel h1,.panel h2,.panel h3,.card h1,.card h2,.card h3{
  font-size:clamp(18px,4.2vw,22px) !important;
  font-weight:800; letter-spacing:.4px;
  margin:6px 0 10px; color:var(--text) !important;
}
/* Subtitle / call line */
.call-text,.panel .sub,.card .sub{ color:#0f172a !important; font-weight:700; opacity:.95 }

/* Inputs */
.panel input[type="text"],.panel input[type="tel"],.panel input[type="password"],
.card input[type="text"],.card input[type="tel"],.card input[type="password"]{
  width:100% !important; height:46px !important; border-radius:12px !important;
  background:var(--input) !important; color:var(--text) !important;
  border:1px solid #cbd5e1 !important; outline:none;
}
.panel input::placeholder,.card input::placeholder{ color:#64748b !important }

/* Primary button */
.panel button,.panel .btn-primary,.card button,.card .btn-primary{
  width:100% !important; height:48px !important; border-radius:12px !important; border:0;
  color:#fff !important; font-weight:800; letter-spacing:.3px;
  background:linear-gradient(90deg,var(--brand-1),var(--brand-2)) !important;
  box-shadow:0 8px 24px rgba(79,70,229,.30) !important;
}

/* Links — Register / Support clearly visible */
.panel a[href*="register"],.card a[href*="register"],
.panel a[href*="support.php"],.card a[href*="support.php"]{
  color:var(--link) !important; font-weight:700; text-decoration:none;
}
.panel a[href*="register"]:hover,.card a[href*="register"]:hover,
.panel a[href*="support.php"]:hover,.card a[href*="support.php"]:hover{
  color:var(--link-hover) !important; text-decoration:underline !important;
}

/* Fine print */
.panel p,.panel small,.card p,.card small{ color:#1f2937 !important }

/* Mobile tweaks */
@media (max-width:480px){
  .panel,.card{ padding:18px !important; border-radius:14px !important; box-shadow:0 8px 20px rgba(2,6,23,.16)!important }
  .panel button,.card button{ height:46px !important; }
  .panel h1,.panel h2,.panel h3,.card h1,.card h2,.card h3{ font-size:18px !important }
}

/* Keep floating chat button off card bottom links (if present) */
#chat-launch,.chat-launch,[data-chat-launch]{ right:12px !important; bottom:14px !important }

/* === White links for Register & Support (underline on hover) === */
.login-pro-card a[href*="register"],
.login-pro-card a[href="support.php"],
.panel a[href*="register"], .panel a[href="support.php"],
.card  a[href*="register"], .card  a[href="support.php"],
.loginbox a[href*="register"], .loginbox a[href="support.php"],
.login-box a[href*="register"], .login-box a[href="support.php"]{
  color:#ffffff !important;
  font-weight:700;
  text-decoration:none;
  text-shadow:0 2px 10px rgba(0,0,0,.40);
}
.login-pro-card a[href*="register"]:hover,
.login-pro-card a[href="support.php"]:hover,
.panel a[href*="register"]:hover, .panel a[href="support.php"]:hover,
.card  a[href*="register"]:hover, .card  a[href="support.php"]:hover,
.loginbox a[href*="register"]:hover, .loginbox a[href="support.php"]:hover,
.login-box a[href*="register"]:hover, .login-box a[href="support.php"]:hover{
  color:#ffffff !important;
  text-decoration:underline !important;
}
