        body {
            margin: 0;
            min-height: 100vh;
            display: flex;
            background: var(--color-warm-bg);
            font-family: var(--font-body-land);
        }

        /* Layout split */
        .auth-split {
            display: grid;
            grid-template-columns: 1fr 1fr;
            min-height: 100vh;
            width: 100%;
        }

        /* Pannello sinistro — brand */
        .auth-brand {
            background: linear-gradient(160deg, #1c2026 0%, #2c3a47 60%, #1c2026 100%);
            color: #fff;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            padding: 3rem;
            position: relative;
            overflow: hidden;
        }
        .auth-brand::before {
            content: '';
            position: absolute;
            top: -100px; right: -100px;
            width: 400px; height: 400px;
            background: radial-gradient(circle, rgba(224,92,26,.25) 0%, transparent 65%);
            pointer-events: none;
        }
        .auth-brand__logo {
            font-size: 1.3rem;
            font-weight: 800;
            color: #fff;
            text-decoration: none;
            display: flex;
            align-items: center;
            gap: .5rem;
            position: relative;
            z-index: 1;
        }
        .auth-brand__logo-img {
            width: 2.2rem;
            height: 2.2rem;
            object-fit: contain;
            border-radius: .8rem;
            background: rgba(255,255,255,.08);
            padding: .08rem;
            flex-shrink: 0;
        }
        .auth-brand__logo strong { color: var(--color-accent); }

        .auth-brand__content {
            position: relative;
            z-index: 1;
        }
        .auth-brand__tagline {
            font-family: var(--font-display);
            font-size: clamp(1.5rem, 3vw, 2.2rem);
            font-weight: 900;
            line-height: 1.2;
            margin-bottom: 1.5rem;
            color: #fff;
        }
        .auth-brand__tagline span { color: var(--color-orange-lt); }
        .auth-brand__desc {
            color: rgba(255,255,255,.65);
            font-size: .95rem;
            line-height: 1.7;
            margin-bottom: 2.5rem;
        }

        .auth-benefits { list-style: none; }
        .auth-benefits li {
            display: flex;
            align-items: center;
            gap: .85rem;
            padding: .65rem 0;
            color: rgba(255,255,255,.8);
            font-size: .9rem;
            border-bottom: 1px solid rgba(255,255,255,.07);
        }
        .auth-benefits li:last-child { border-bottom: none; }
        .auth-benefits li span:first-child { font-size: 1.25rem; flex-shrink: 0; }
        .auth-benefits strong { color: #fff; }

        .auth-brand__proof {
            display: flex;
            align-items: center;
            gap: .75rem;
            background: rgba(255,255,255,.07);
            border-radius: var(--radius-md);
            padding: 1rem 1.25rem;
            position: relative;
            z-index: 1;
        }
        .auth-brand__proof cite {
            font-style: normal;
            font-size: .85rem;
            color: rgba(255,255,255,.75);
        }
        .auth-brand__proof strong { color: #fff; display: block; }
        .proof-avatar { font-size: 2rem; }

        /* Pannello destro — form */
        .auth-form-panel {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 3rem 2rem;
            background: #fff;
        }

        .auth-form-card {
            width: 100%;
            max-width: 420px;
        }

        .auth-form-card__title {
            font-family: var(--font-display);
            font-size: 1.8rem;
            font-weight: 900;
            color: var(--color-chalk);
            margin-bottom: .5rem;
        }
        .auth-form-card__subtitle {
            color: var(--color-text-muted);
            font-size: .95rem;
            margin-bottom: 2rem;
        }

        .auth-back {
            display: inline-flex;
            align-items: center;
            gap: .4rem;
            color: var(--color-text-muted);
            font-size: .85rem;
            text-decoration: none;
            margin-bottom: 2rem;
            transition: color .2s;
        }
        .auth-back:hover { color: var(--color-chalk); }

        .divider {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin: 1.5rem 0;
            color: var(--color-text-muted);
            font-size: .8rem;
        }
        .divider::before, .divider::after {
            content: '';
            flex: 1;
            height: 1px;
            background: var(--color-border);
        }
        .login-forgot-link {
            font-weight: 400;
            font-size: .8rem;
            float: right;
            color: var(--color-primary);
        }
        .login-submit { margin-top: .5rem; }
        .login-register-copy {
            text-align: center;
            font-size: .9rem;
            color: var(--color-text-muted);
        }
        .login-register-link { margin-top: .5rem; }
        .login-terms {
            text-align: center;
            margin-top: 1.5rem;
            font-size: .75rem;
            color: var(--color-text-muted);
        }

        @media (max-width: 768px) {
            .auth-split { grid-template-columns: 1fr; }
            .auth-brand  { display: none; }
            .auth-form-panel { padding: 2rem 1.5rem; }
        }
