        .auth-hero {
            border-radius: var(--radius-lg);
            background: var(--panel);
            border: 1px solid var(--panel-border);
            padding: clamp(24px, 4vw, 48px);
            display: grid;
            gap: 18px;
            box-shadow: 0 12px 32px rgba(10, 12, 20, 0.55);
        }

        .status-banner {
            margin-top: 8px;
            padding: 12px 16px;
            border-radius: var(--radius-sm);
            font-size: 0.9rem;
            border: 1px solid rgba(255, 255, 255, 0.08);
        }

        .status-banner.is-success {
            background: rgba(88, 212, 255, 0.12);
            border-color: rgba(88, 212, 255, 0.35);
        }

        .status-banner.is-warning {
            background: rgba(255, 143, 138, 0.12);
            border-color: rgba(255, 143, 138, 0.35);
        }

        .auth-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
            gap: 20px;
        }

        .auth-card {
            border-radius: var(--radius-md);
            border: 1px solid rgba(255, 255, 255, 0.04);
            padding: clamp(20px, 3vw, 32px);
            background: rgba(4, 7, 15, 0.85);
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
            display: grid;
            gap: 16px;
        }

        .muted-card {
            background: rgba(20, 23, 35, 0.85);
        }

        .auth-form {
            display: grid;
            gap: 14px;
        }

        .field-group {
            display: grid;
            gap: 6px;
        }

        .field-group label {
            font-size: 0.85rem;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--text-muted);
        }

        .auth-form input {
            width: 100%;
            padding: 10px 12px;
            border-radius: var(--radius-sm);
            border: 1px solid rgba(255, 255, 255, 0.12);
            background: rgba(255, 255, 255, 0.03);
            color: var(--text-primary);
        }

        .auth-form input[readonly] {
            cursor: not-allowed;
            opacity: 0.7;
        }

        .captcha-shell {
            border-radius: var(--radius-sm);
            border: 1px dashed rgba(255, 255, 255, 0.2);
            padding: 12px;
            background: rgba(255, 255, 255, 0.02);
            display: flex;
            justify-content: center;
            max-width: 100%;
            overflow: hidden;
        }

        .error-list {
            border-radius: var(--radius-sm);
            border: 1px solid rgba(255, 143, 138, 0.3);
            background: rgba(255, 143, 138, 0.08);
            padding: 12px 16px;
        }

        .error-list ul {
            list-style: none;
            display: grid;
            gap: 6px;
        }

        .action-row,
        .link-row {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
        }

        .link-row a,
        .link-list a {
            color: var(--accent-strong);
            font-weight: 600;
        }

        .link-list {
            display: grid;
            gap: 8px;
        }

        @media (max-width: 480px) {
            .auth-grid {
                grid-template-columns: 1fr;
                gap: 16px;
            }

            .auth-card {
                padding: 16px;
            }

            .auth-form input {
                width: 100%;
                min-width: 0;
            }

            .captcha-shell {
                padding: 8px;
            }

            .captcha-shell .g-recaptcha {
                transform: scale(0.88);
                transform-origin: center;
            }

            .btn.full-width {
                width: 100%;
            }
        }

