/* Acceso SITCONV — Modelo O: Marfil Ejecutivo */
:root {
    --page-bg: #f2eee5;
    --surface: #fffdf8;
    --surface-soft: #f8f3e9;
    --line: #e5ded1;
    --line-soft: #d9d0c1;
    --text: #263b30;
    --text-soft: #65746b;
    --text-muted: #8a938c;
    --black: #244d39;
    --executive-green: #326c4c;
    --executive-gold: #ad8e55;
}

body {
    color: var(--text);
    background:
        radial-gradient(circle at 8% 10%, rgba(255,255,255,.94), transparent 28rem),
        radial-gradient(circle at 90% 85%, rgba(173,142,85,.13), transparent 24rem),
        linear-gradient(135deg, #f8f4ec, #eee8dc);
}

.auth-page { padding: 32px; }

.auth-shell {
    width: min(940px, 100%);
    min-height: 570px;
    border: 1px solid rgba(214,204,187,.9);
    border-radius: 22px;
    background: #fffdf8;
    box-shadow: 0 28px 80px rgba(67,54,34,.13);
}

.auth-form-panel { padding: 44px 44px 30px; background: #fffdf8; }
.brand-mark { margin-bottom: 52px; }
.brand-mark-dot {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: linear-gradient(145deg, #477b5e, #285b40);
    box-shadow: 0 9px 20px rgba(50,108,76,.17);
}
.brand-mark-dot::after { content: "SC"; color: #fff; font-family: Georgia, serif; font-size: .7rem; font-weight: 700; }
.brand-mark-text { color: #2a513d; font-family: Georgia, "Times New Roman", serif; font-size: 1rem; letter-spacing: .16em; }

.auth-header h1 { color: #233a2e; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.4rem,4vw,3.35rem); font-weight: 600; letter-spacing: -.045em; }
.auth-header p { color: var(--text-soft); }

.field-label { color: #385044; }
.field-control input {
    height: 52px;
    color: #263b30;
    border-color: var(--line-soft);
    border-radius: 12px;
    background: #fffefa;
}
.field-control input:focus { border-color: rgba(50,108,76,.58); box-shadow: 0 0 0 4px rgba(50,108,76,.09); }
.password-toggle { color: #718077; }
.password-toggle:hover { color: var(--executive-green); background: #edf3ee; }

.submit-btn {
    height: 52px;
    border-radius: 12px;
    color: #fff;
    background: linear-gradient(135deg, #3c7958, #285b40);
    box-shadow: 0 11px 25px rgba(43,96,68,.2);
}
.submit-btn:hover { opacity: 1; box-shadow: 0 14px 30px rgba(43,96,68,.24); }
.auth-footer-links a:hover { color: var(--executive-green); }

.auth-visual-panel {
    border-left: 1px solid #dfd6c6;
    background:
        radial-gradient(circle at 74% 20%, rgba(255,255,255,.64), transparent 12rem),
        linear-gradient(145deg, #e9dfca, #cab78f 52%, #657f6c 135%);
}

.visual-layer {
    background:
        linear-gradient(145deg, transparent 0 38%, rgba(255,255,255,.22) 38.2% 38.7%, transparent 39%),
        linear-gradient(35deg, transparent 0 61%, rgba(255,255,255,.18) 61.2% 61.7%, transparent 62%),
        radial-gradient(circle at 56% 36%, rgba(255,253,245,.66) 0 4%, transparent 4.3%),
        radial-gradient(circle at 56% 36%, transparent 0 18%, rgba(50,108,76,.13) 18.2% 18.8%, transparent 19%),
        radial-gradient(circle at 56% 36%, transparent 0 31%, rgba(173,142,85,.26) 31.2% 31.7%, transparent 32%),
        linear-gradient(150deg, #f1eadc 0%, #d9ccb3 50%, #9dac9f 100%);
    filter: none;
}
.visual-layer::before {
    background:
        radial-gradient(circle at 56% 36%, rgba(50,108,76,.75) 0 7px, transparent 8px),
        repeating-linear-gradient(90deg, transparent 0 34px, rgba(255,255,255,.12) 35px 36px);
    opacity: .72;
}
.visual-layer::after { background: linear-gradient(180deg, transparent 15%, rgba(31,63,46,.5) 100%); }
.visual-grain { opacity: .07; }
.visual-copy { color: #fffdf7; }
.visual-kicker { color: rgba(255,253,247,.78); }
.visual-copy h2 { font-family: Georgia, "Times New Roman", serif; font-weight: 500; letter-spacing: -.025em; }

.login-error { border-color: #ead0cf; background: #faeeee; color: #8a4548; }

@media (max-width: 720px) {
    .auth-page { padding: 16px; }
    .auth-form-panel { padding: 30px 24px 24px; }
    .brand-mark { margin-bottom: 34px; }
}
