/**
 * Tema público — visitantes (marketing, autenticação, erros)
 * Ativo com body.ipframe.ipframe--public
 */
body.ipframe.ipframe--public {
    --accent: #38bdf8;
    --accent-2: #a78bfa;
    --accent-muted: rgba(56, 189, 248, 0.12);
    --bg-page: #020617;
    --surface-1: rgba(15, 23, 42, 0.78);
    --surface-2: rgba(2, 6, 23, 0.32);
    --border-subtle: rgba(148, 163, 184, 0.18);

    background-color: var(--bg-page);
    background-image:
        radial-gradient(circle at top left, rgba(56, 189, 248, 0.18), transparent 32%),
        radial-gradient(circle at top right, rgba(167, 139, 250, 0.16), transparent 30%),
        linear-gradient(180deg, #0f172a 0%, #020617 100%);
}

body.ipframe.ipframe--public .auth-card {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: var(--radius-lg);
    background: rgba(15, 23, 42, 0.85);
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.25);
}

body.ipframe.ipframe--public .auth-card h1 {
    margin: 0 0 var(--space-5);
}

body.ipframe.ipframe--public .auth-card button[type="submit"] {
    width: 100%;
    margin-top: var(--space-2);
    padding: var(--space-3) var(--space-5);
    border: 0;
    border-radius: var(--radius-sm);
    background: linear-gradient(135deg, var(--accent), var(--accent-2));
    color: #0f172a;
    font-weight: 600;
}

body.ipframe.ipframe--public .auth-card button[type="submit"]:hover {
    filter: brightness(1.06);
}
