:root {
    --tc-primary: #f72f2f;
    --tc-primary-dark: #d42222;
    --tc-auth-bg: #f4f6f8;
    --bs-primary: #f72f2f;
    --bs-primary-rgb: 247, 47, 47;
}

body.auth-body {
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    background:
        radial-gradient(ellipse at top left, rgba(247, 47, 47, 0.08), transparent 50%),
        radial-gradient(ellipse at bottom right, rgba(247, 47, 47, 0.06), transparent 45%),
        var(--tc-auth-bg);
    font-size: 0.9375rem;
    color: #1a2332;
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
}

.auth-wrapper {
    position: relative;
}

.auth-card {
    max-width: 420px;
    border-radius: 1rem;
    box-shadow: 0 8px 30px rgba(26, 35, 50, 0.08) !important;
}

.auth-body .form-control {
    font-size: 16px; /* prevent iOS zoom on focus */
}

.auth-brand-logo {
    height: 56px;
    width: auto;
    max-width: 240px;
    object-fit: contain;
    border-radius: 0.5rem;
}

.btn-primary {
    --bs-btn-bg: var(--tc-primary);
    --bs-btn-border-color: var(--tc-primary);
    --bs-btn-hover-bg: var(--tc-primary-dark);
    --bs-btn-hover-border-color: var(--tc-primary-dark);
    --bs-btn-active-bg: var(--tc-primary-dark);
    --bs-btn-active-border-color: var(--tc-primary-dark);
    background: var(--tc-primary);
    border-color: var(--tc-primary);
}

.btn-primary:hover,
.btn-primary:focus {
    background: var(--tc-primary-dark);
    border-color: var(--tc-primary-dark);
}

.form-control:focus,
.form-check-input:focus {
    border-color: #f5a3ab;
    box-shadow: 0 0 0 0.2rem rgba(247, 47, 47, 0.15);
}

.form-check-input:checked {
    background-color: var(--tc-primary);
    border-color: var(--tc-primary);
}

.input-group-text {
    border-right: 0;
}

.input-group .form-control {
    border-left: 0;
}

.input-group .form-control:focus {
    box-shadow: none;
}

.input-group:focus-within {
    box-shadow: 0 0 0 0.2rem rgba(247, 47, 47, 0.15);
    border-radius: 0.375rem;
}

.input-group:focus-within .input-group-text,
.input-group:focus-within .form-control,
.input-group:focus-within .btn {
    border-color: #f5a3ab;
}
