:root{
  --primary-green:#059669;
  --surface:#ffffff;
  --border-color:#dbeee3;
  --text-muted:#6b7280;
}

/* Base container used across pages */
.container{max-width:1100px;margin:0 auto;padding:0 16px;}

/* Auth / card layouts */
.auth-container{max-width:420px;margin:28px auto;}
.auth-card{background:var(--surface);padding:20px;border-radius:12px;box-shadow:0 8px 30px rgba(2,6,23,0.08);}
.auth-title{margin-top:0;color:#074f46;font-size:1.4rem;margin-bottom:6px}
.auth-form{display:flex;flex-direction:column;gap:12px}
.form-row label{display:block;font-weight:700;color:#374151;margin-bottom:6px}

/* Inputs and selects */
input[type="text"],input[type="email"],input[type="password"],textarea,select,.search-input{padding:10px;border-radius:8px;border:2px solid var(--border-color);width:100%;box-sizing:border-box}

/* CTA buttons */
.cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;font-weight:700;cursor:pointer;text-decoration:none;border:1px solid transparent}
.cta-primary{background:var(--primary-green);color:white;border:none}
.cta-secondary{background:white;color:var(--primary-green);border:1px solid var(--border-color)}

/* Small utilities */
.row{display:flex;gap:10px}
.small-muted{color:var(--text-muted);font-size:0.9rem}

@media (max-width:480px){
  .auth-container{margin:18px 12px}
  .auth-card{padding:16px}
}
