/* Actualización incremental del sistema institucional: conserva Bootstrap, tamaños y tipografía. */
.spm-updates-section{--update-orange:#ee7327;--update-green:#287357;--update-wine:#81394b;--update-gold:#bb925d}
.spm-updates-section .section-title{max-width:830px}
.spm-updates-section .section-intro{max-width:760px}
.spm-info-banner{display:grid;grid-template-columns:1.25fr .75fr;gap:32px;align-items:center;padding:31px 35px;background:linear-gradient(115deg,#fff6ec,#fffaf3);border:1px solid #f1e0d0;border-radius:25px;box-shadow:0 14px 35px rgba(36,58,40,.045)}
.spm-info-banner .section-title{font-size:clamp(1.8rem,3vw,2.65rem);margin-bottom:14px}.spm-info-banner p{color:var(--ink-light);line-height:1.8}
.spm-info-banner img{border-radius:20px;max-height:225px;width:100%;object-fit:cover}
.spm-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.spm-service-grid.spm-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.spm-service-tile{padding:25px 22px 23px;background:#fff;border-radius:21px;border:1px solid #ece8e0;box-shadow:0 10px 25px rgba(20,46,30,.045);display:flex;flex-direction:column;min-height:220px}
.bg-white .spm-service-tile{background:#fffdfa}.spm-service-tile::before{content:'';height:3px;width:43px;background:#ee7327;border-radius:5px;display:block;margin-bottom:16px}
.spm-service-tile h3{font-size:1.09rem;margin:10px 0}.spm-service-tile p{color:#5a6860;font-size:.92rem;line-height:1.7;flex:1}
.spm-service-tile .text-link{font-size:.86rem;margin-top:15px}
.spm-card-symbol{font-size:1.35rem;font-weight:800;color:#db782e;line-height:1.3}
.spm-card-muted{background:#f8f7f4!important;border-style:dashed}
.spm-inline-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:21px 24px;background:#fff8f0;border:1px solid #efdfd1;border-radius:18px;margin-top:23px}
.spm-inline-cta strong{color:#1d3027;font-weight:800}.spm-inline-cta p{max-width:650px;color:#68766e;font-size:.88rem;margin-top:5px}
.spm-training-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.spm-training-list div{border:1px solid #e7e9df;background:#fff;border-radius:14px;padding:16px;font-weight:750;font-size:.88rem;color:#2f694e}
.spm-sector-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.spm-sector-chips span{padding:11px 17px;border:1px solid #e6e6dd;border-radius:100px;background:#fff9f0;color:#365847;font-size:.87rem;font-weight:750}
/* WhatsApp placeholder stays off Sofía's bottom-right button and never guesses a telephone number. */
.spm-whatsapp-float{position:fixed;right:23px;bottom:165px;z-index:944;width:51px;height:51px;border:0;border-radius:17px;display:grid;place-items:center;color:white;background:#27965b;box-shadow:0 8px 25px rgba(26,82,49,.19);cursor:pointer}
.spm-whatsapp-float svg{width:26px;height:26px}.spm-whatsapp-float:hover{transform:translateY(-3px);background:#217a4d}
.spm-whatsapp-dialog{position:fixed;z-index:1075;bottom:170px;right:23px;max-width:min(340px,calc(100vw - 30px));background:#fff;border:1px solid #e7e5dc;border-radius:20px;padding:23px;box-shadow:0 25px 65px rgba(12,37,25,.19)}
.spm-whatsapp-dialog[hidden]{display:none}.spm-whatsapp-dialog h2{font-size:1.1rem}.spm-whatsapp-dialog p{font-size:.87rem;color:#657269;margin:12px 0 16px}
.spm-whatsapp-dialog-close{position:absolute;top:10px;right:12px;border:0;background:none;font-size:1.5rem;color:#5a695f}
/* Report demo */
.spm-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.spm-report-grid .full{grid-column:1/-1}.spm-report-grid label{font-weight:750;font-size:.81rem;color:#315040;display:block}
.spm-report-grid input,.spm-report-grid textarea,.spm-report-grid select{display:block;width:100%;margin-top:7px;min-height:43px;padding:10px 13px;background:#fffefa;border:1px solid #d6ded5;border-radius:11px;font:inherit;font-size:.9rem}
.spm-report-grid textarea{min-height:105px;resize:vertical}.spm-report-grid input:focus-visible,.spm-report-grid select:focus-visible,.spm-report-grid textarea:focus-visible{outline:2px solid #f3b181;outline-offset:1px}
.spm-report-disclaimer{padding:13px 17px;border-left:3px solid #ed7329;background:#fff4e9;font-size:.86rem;line-height:1.65;color:#6e5745;border-radius:9px;margin-bottom:19px}
.spm-report-results{background:#f1f7f2;border:1px solid #cfe5d8;padding:20px;border-radius:17px;margin-top:20px;color:#234b35}
.spm-report-results[hidden]{display:none}
.spm-admin-sector{padding:26px;margin-top:23px;background:#fff;border:1px solid #e5e9e3;border-radius:23px}
.spm-admin-sector h2{font-size:1.4rem;margin:5px 0 10px}.spm-admin-sector p{color:#647469;font-size:.85rem}
.spm-admin-sector label{font-size:.83rem;font-weight:700;color:#43604f;display:block}.spm-admin-sector select{width:100%;border:1px solid #d6e0d8;border-radius:9px;padding:8px;background:#fff}
.spm-admin-chart{display:grid;gap:10px;margin-top:18px}.spm-admin-chart-row{display:grid;grid-template-columns:minmax(120px,170px) 1fr 48px;gap:10px;align-items:center;font-size:.84rem}.spm-admin-chart-track{height:12px;border-radius:100px;background:#f2eee8;overflow:hidden}.spm-admin-chart-track span{display:block;height:100%;background:linear-gradient(90deg,#ed792b,#ce984f);border-radius:100px}
.spm-demo-report-table{width:100%;border-collapse:collapse;font-size:.83rem}.spm-demo-report-table th,.spm-demo-report-table td{padding:10px;border-bottom:1px solid #e8ebe6;text-align:left;vertical-align:top}.spm-demo-report-table th{color:#56675c}
@media(max-width:991px){.spm-service-grid.spm-grid-four,.spm-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spm-info-banner{grid-template-columns:1fr}.spm-info-banner img{display:none}}
@media(max-width:600px){.spm-service-grid.spm-grid-four,.spm-service-grid,.spm-training-list,.spm-report-grid{grid-template-columns:1fr}.spm-info-banner{padding:25px 20px}.spm-inline-cta{padding:18px}.spm-admin-chart-row{grid-template-columns:105px 1fr 35px}.spm-whatsapp-float{right:15px;left:auto;bottom:155px;width:45px;height:45px;border-radius:14px}.spm-whatsapp-dialog{left:auto;right:12px;bottom:214px}.spm-report-grid .full{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.spm-whatsapp-float{transition:none}}


/* AJUSTES FINALES IDENTIDAD SINDICAL 2026: detalles discretos, sin rediseñar secciones. */
:root{--spm-guinda:#87394d;--spm-guinda-claro:#f7edef;--spm-gold-soft:#c39a69}
.spm-updates-section .spm-service-tile:nth-child(3n+2)::before{background:var(--spm-guinda)}
.spm-updates-section .spm-service-tile:nth-child(3n+2) .spm-card-symbol{color:var(--spm-guinda)}
.spm-updates-section .spm-service-tile .text-link:hover,
.spm-updates-section .spm-inline-cta .btn-outline-dark:hover{color:var(--spm-guinda)}
.spm-updates-section .spm-sector-chips span:nth-child(3n){border-color:#dcc4cb;color:#6b3c4c}
.spm-updates-section .spm-training-list div:nth-child(2n){border-color:#e5d5d8}
.spm-updates-section .spm-insurance-partner{border-color:#dfc7cd;background:linear-gradient(180deg,#fffdfb,#fffafa)}
.spm-updates-section .spm-insurance-partner::before{background:var(--spm-guinda)}
.spm-updates-section .spm-insurance-partner .spm-card-symbol{color:var(--spm-guinda)}
.spm-updates-section .spm-insurance-pending{border-color:#ddcbb6;background:#fcfaf7!important}
.spm-insurance-tag{display:inline-flex;align-self:flex-start;width:fit-content;margin:0 0 5px;border:1px solid #e7cfd5;border-radius:100px;padding:4px 9px;color:#78374c;background:#fcf4f6;font-weight:800;font-size:.67rem;letter-spacing:.035em}
.spm-insurance-pending .spm-insurance-tag{background:#f8f4eb;border-color:#e7dfce;color:#756043}
/* Credencial interactiva: marfil/blanco + verde + guinda + naranja, compatible con la fotografía actual. */
.credential-card{background:linear-gradient(150deg,#fffdfa 0%,#ffffff 63%,#f6f9f5 100%);color:#20392e;border:1px solid #e9e0d9;box-shadow:0 20px 40px rgba(35,57,40,.13);padding-top:29px;isolation:isolate}
.credential-card::before{content:'';position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#ee7327 0% 50%,#87394d 50% 74%,#2c7759 74% 100%)}
.credential-card::after{border-color:rgba(195,154,105,.17);z-index:-1}
.credential-top{padding-bottom:12px;border-bottom:1px solid #ecede7}
.credential-top span{color:#87394d}
.credential-top strong{color:#1b4735}
.credential-middle span{color:#62796c}
.credential-middle strong{color:#21372e}
.credential-middle small{color:#647469}
.credential-middle b{color:#db671d}
.credential-photo{color:#286c50;background:#f5f4ee;border:2px solid #e6be9d}
.credential-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:10px;border-top:1px solid #f0e8e3;color:#6c4a53}
.credential-bottom span{color:#87394d}
.credential-state{display:inline-flex!important;align-items:center;gap:5px;color:#24674d!important;border:1px solid #cae2d4;border-radius:100px;background:#edf6ef;padding:4px 9px;font-size:.58rem;letter-spacing:.02em}
/* La versión impresa de la credencial utiliza la misma identidad y NO afecta hojas de afiliación. */
#printCredential .print-id{position:relative;display:flex;align-items:center;gap:25px;flex-wrap:wrap;border-radius:19px;background:linear-gradient(135deg,#fffdfa,#fff 70%,#f6f8f4);color:#213b2c;border:1px solid #e4e2d9;padding:51px 24px 23px;overflow:hidden;box-shadow:0 12px 27px rgba(35,57,40,.08)}
#printCredential .print-id::before{content:'';height:6px;position:absolute;top:0;left:0;right:0;background:linear-gradient(90deg,#ee7327 0 50%,#87394d 50% 74%,#2c7759 74% 100%)}
#printCredential .print-id-header{display:flex;align-items:center;gap:10px;position:absolute;top:12px;left:24px;color:#87394d;font-size:.7rem;letter-spacing:.05em;font-weight:800}
#printCredential .print-id-header img{width:25px;height:25px;object-fit:contain}
#printCredential .print-photo{width:135px;height:162px;background:#f8f8f3;border:2px solid #edc5aa;color:#437c5c}
#printCredential .print-id h2{color:#1d392b}
#printCredential .print-id p{color:#63776a}
#printCredential .print-id span{color:#87394d}
#printCredential .print-id strong{color:#e26a22}
#printCredential .print-id .print-demo-state{display:block;margin-top:8px;color:#317050;font-size:.78rem;letter-spacing:0;font-weight:750}
@media(max-width:600px){.credential-card{padding:27px 17px 17px}.credential-top strong{font-size:.88rem}.credential-bottom{align-items:flex-start}}
@media print{#printCredential .print-id{background:#fffdfa!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}#printCredential .print-id::before{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
