/* ÁREA PRIVADA DE DEMOSTRACIÓN; no afecta index.html ni páginas legales */
:root{--demo-pearl:#fffaf3;--demo-forest:#183b2e;--demo-orange:#ec742b;--demo-green:#27735a;--demo-grey:#687970}
body.demo-sindicato-page{background:#fffaf5;color:#1a2b25;font-size:15px}body.demo-sindicato-page .site-header{background:rgba(255,250,243,.97)}
body.demo-sindicato-page .container{max-width:1220px}body.demo-sindicato-page .spm-mini-footer{margin-top:0}
.demo-main h1,.demo-main h2,.demo-main h3{font-family:Manrope,'DM Sans',sans-serif}.demo-main h1 em,.demo-main .demo-login-copy em{font-style:normal;color:var(--demo-orange)}.demo-main button:focus-visible,.demo-main a:focus-visible{outline:3px solid var(--demo-green);outline-offset:2px}
.demo-pill{display:inline-flex;align-items:center;gap:7px;color:#2e805d;background:#e8f5ed;border:1px solid #d8ecdf;padding:5px 11px;border-radius:100px;font-size:.67rem;letter-spacing:.085em;font-weight:850}.demo-pill-light{background:#f0fff8;color:#1b573d;border-color:rgba(255,255,255,.25)}.demo-eyebrow{display:block;font-size:.66rem;letter-spacing:.13em;color:#287656;font-weight:850;margin-bottom:7px}.demo-lead{background:linear-gradient(115deg,#fffaf4,#fff2e6);padding:25px 0 22px}.demo-breadcrumb{font-size:.8rem;color:#78847b;margin:0 0 15px;display:flex;gap:10px}.demo-breadcrumb a{color:#287656;text-decoration:none;font-weight:800}.demo-head{display:flex;gap:20px;justify-content:space-between;align-items:center}.demo-head h1{font-size:clamp(1.85rem,3vw,2.8rem);margin:8px 0 7px}.demo-head p{font-size:.92rem;color:var(--demo-grey);max-width:720px;line-height:1.6}.demo-lead-side{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.55);border:1px solid rgba(241,227,213,.8);border-radius:20px;padding:10px 18px;flex:0 0 auto}.demo-lead-side img{width:54px;height:54px;object-fit:contain}.demo-lead-side span{font-size:.78rem;color:#6a786d}.demo-lead-side strong{color:var(--demo-green)}.demo-section{padding:25px 0 60px}.demo-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.75fr);align-items:start;gap:23px}.demo-card{background:#fff;border:1px solid #e9e6df;border-radius:23px;box-shadow:0 18px 45px rgba(31,47,35,.055)}.register-card{padding:24px 27px}.wizard-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.wizard-top>div{display:flex;flex-direction:column}.wizard-top strong{font-size:1rem}.wizard-top span{color:#8a938c;font-size:.74rem}.wizard-top small{color:#287656;font-weight:800}.wizard-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:21px}.wizard-tab{padding:8px 5px;border-radius:10px;background:#f5f6f2;color:#9aa49b;font-size:.68rem;text-align:center;font-weight:800;white-space:nowrap}.wizard-tab span{color:inherit;margin-right:3px}.wizard-tab.current{background:#fdf0e3;color:#dc6522}.wizard-tab.done{background:#e7f4eb;color:#27735a}.step-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:15px}.step-heading h2{font-size:1.35rem;margin:0}.demo-text-button{background:none;border:0;padding:2px 0;color:#23805d;font-weight:800;font-size:.81rem;cursor:pointer;text-decoration:none}.demo-text-button:hover{text-decoration:underline;color:#e16d21}.demo-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 13px}.demo-form-grid label,.demo-login-card form>label,.filter-fields label{display:flex;flex-direction:column;gap:5px;font-size:.76rem;font-weight:800;color:#425348}.demo-form-grid .full-width,.full-width{grid-column:1/-1}.demo-main input:not([type=checkbox]):not([type=file]),.demo-main select{width:100%;min-width:0;border:1px solid #dce4dc;border-radius:10px;background:#fffefa;min-height:40px;padding:9px 12px;font-family:'DM Sans',sans-serif;font-size:.86rem;color:#273c30}.demo-main input:focus,.demo-main select:focus{outline:2px solid #a8d4b9;outline-offset:0}.demo-main input:disabled,.demo-main select:disabled{background:#f7f7f4;color:#89938b}.demo-helper,.tiny-note{font-size:.75rem;color:#87948a;line-height:1.65}.demo-helper{margin:12px 0 0}.demo-step-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.demo-btn{border-radius:10px;display:inline-flex;justify-content:center;align-items:center;gap:7px;border:1px solid transparent;text-decoration:none;font-weight:850;font-size:.83rem;white-space:nowrap;padding:11px 16px;cursor:pointer;transition:transform .2s,border-color .2s,background .2s}.demo-btn.primary{background:#ee7429;color:#fff;box-shadow:0 8px 18px rgba(236,116,41,.15)}.demo-btn.primary:hover{background:#d96322;color:#fff;transform:translateY(-2px)}.demo-btn.secondary{background:#fff;border-color:#e1e5de;color:#2c4433}.demo-btn.secondary:hover{background:#f1f9f3;color:#26714e}.demo-btn.full{width:100%}.demo-btn:disabled{opacity:.48;cursor:default}.demo-side-panel{position:relative;background:linear-gradient(155deg,#173e2f,#205542);border-radius:24px;padding:29px;color:#fff;overflow:hidden}.demo-side-panel:after{content:'';width:230px;height:230px;border-radius:50%;border:1px solid rgba(255,255,255,.10);position:absolute;right:-120px;bottom:-100px}.demo-side-top{display:flex;align-items:center;justify-content:space-between}.demo-side-top img{height:80px;width:80px;object-fit:contain}.demo-side-panel h3{font-size:1.8rem;color:#fff;margin:22px 0 12px}.demo-side-panel>p{color:#d4e3d7;font-size:.91rem;margin-bottom:26px}.demo-side-feature{display:flex;gap:13px;align-items:start;margin-top:16px;position:relative;z-index:1}.demo-side-feature>span{background:rgba(255,255,255,.14);width:35px;height:35px;display:grid;place-items:center;flex-shrink:0;border-radius:11px;color:#ffb47d;font-weight:900;font-size:.8rem}.demo-side-feature strong{display:block;color:#fff;font-size:.87rem}.demo-side-feature small{font-size:.77rem;color:#d6e8df}.demo-soft-note{margin-top:12px;background:#fff;border:1px solid #ebe7df;border-radius:17px;padding:17px 20px}.demo-soft-note strong{font-size:.8rem;color:#286f51}.demo-soft-note p{font-size:.77rem;color:#7b8b7d}.evidence-grid{display:grid;grid-template-columns:190px minmax(0,1fr);gap:23px}.evidence-upload{display:flex;flex-direction:column;gap:12px}.photo-box{height:190px;border:1px dashed #d4ded4;border-radius:16px;background:#fcfcf8;display:grid;place-items:center;overflow:hidden}.photo-box img{width:100%;height:100%;object-fit:cover}.photo-box>span{font-size:2.5rem;text-align:center}.photo-box small{display:block;font-size:.75rem;color:#87918b}.demo-upload-label{cursor:pointer;text-align:center;background:#edf8ef;border-radius:10px;padding:10px 12px;color:#257354;font-weight:800;font-size:.77rem}.signature-group label{display:block;font-size:.8rem;font-weight:850;margin-bottom:8px}.signature-group canvas{width:100%;height:168px;background:#fff;border:1px solid #dce3da;border-radius:13px;touch-action:none;cursor:crosshair}.signature-group .demo-text-button{margin-top:5px}.check-row{display:flex;gap:11px;align-items:flex-start;padding:12px;border:1px solid #e7e9e4;border-radius:12px;margin-top:10px;font-size:.83rem;color:#586b5b}.check-row input{margin-top:4px;accent-color:#268059}.check-row a{color:#2a835f;font-weight:800}.demo-review{display:flex;gap:15px;background:#eaf7ee;padding:16px;border-radius:15px;margin:17px 0}.demo-review .demo-icon{display:grid;place-items:center;min-width:40px;height:40px;background:#1c8259;color:#fff;font-weight:900;border-radius:50%}.demo-review strong{display:block}.demo-review p{font-size:.83rem;color:#64786a}.demo-success{text-align:center}.success-icon{width:56px;height:56px;margin:auto auto 15px;display:grid;place-items:center;background:#d9f5e3;color:#217752;border-radius:50%;font-size:1.8rem}.demo-success h2{margin:12px 0 8px;font-size:1.6rem}.demo-success>p{color:#7a887d}.credentials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:23px}.credentials-grid>div{border:1px solid #e5eadf;border-radius:14px;background:#fafaf7;padding:15px 8px}.credentials-grid small{display:block;color:#7f9184;font-size:.68rem;margin-bottom:6px}.credentials-grid strong{color:#e66b25;font-size:.9rem;word-break:break-word}
/* Login */
.demo-login-page .demo-section{background:linear-gradient(116deg,#fffaf4,#fff2e6);padding:42px 0 58px}.demo-login-layout{display:grid;grid-template-columns:1fr 470px;gap:55px;align-items:center;max-width:1080px;margin:auto}.login-emblem{height:95px;width:95px;border:1px solid #efede4;background:#fff;border-radius:24px;margin:25px 0 18px;display:grid;place-items:center;box-shadow:0 15px 42px rgba(37,58,43,.07)}.login-emblem img{width:76px;height:76px;object-fit:contain}.demo-login-copy h1{font-size:clamp(2.2rem,4vw,3.65rem);line-height:1.15;max-width:500px}.demo-login-copy p{max-width:500px;color:#728178;font-size:1rem;margin-top:17px}.login-points{display:flex;gap:9px;flex-wrap:wrap;margin-top:32px}.login-points span{padding:9px 13px;background:#fff;border:1px solid #e8eadf;border-radius:100px;color:#34785a;font-size:.76rem;font-weight:850}.demo-login-card{padding:27px}.demo-login-header h2{font-size:1.8rem;margin:10px 0 3px}.demo-login-header p{font-size:.9rem;color:#768679;margin-bottom:16px}.role-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#f2f5f1;padding:5px;border-radius:12px;margin-bottom:18px}.role-tab{background:transparent;border:0;border-radius:9px;padding:10px 12px;color:#7c8a7e;font-weight:850;font-size:.84rem}.role-tab.active{background:#fff;color:#e46b29;box-shadow:0 4px 14px rgba(25,46,31,.07)}.demo-login-card form{display:grid;gap:13px}.demo-login-card input{margin-top:4px}.login-meta{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;color:#788b79}.demo-error{color:#a52f39;background:#fff2f3;padding:10px;border-radius:10px;font-size:.8rem}.demo-login-credentials{margin-top:18px;padding:14px;background:#f5faf5;border-radius:15px}.demo-login-credentials strong{font-size:.83rem}.demo-login-credentials p{margin:5px 0;color:#647f6e;font-size:.77rem}.demo-login-credentials b{color:#213f2e}.demo-login-credentials .demo-text-button{font-size:.75rem}
/* Worker */
.workspace-top{background:linear-gradient(115deg,#fff9f1,#fff2e5);padding:28px 0 25px}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:22px}.workspace-header h1{font-size:clamp(2rem,3vw,2.7rem);margin:10px 0 5px}.workspace-header p{color:#718077;font-size:.94rem}.workspace-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.demo-status{font-size:.77rem;color:#2c8059;font-weight:800}.green-dot{display:inline-block;width:8px;height:8px;border-radius:100%;background:#2fa674;margin-right:8px;box-shadow:0 0 0 5px #def6e7}.workspace-body{background:#fafaf7}.worker-grid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;align-items:start}.worker-hello{padding:21px;display:flex;gap:12px}.hello-icon{background:#fff2e6;display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:13px;font-size:1.5rem;color:#ef7429}.worker-hello h2{font-size:1.35rem;margin:0 0 7px}.worker-hello p{font-size:.8rem;color:#7a877c}.worker-menu{display:grid;gap:8px;margin-top:12px}.worker-nav{display:flex;gap:12px;align-items:center;border:1px solid #e4e9e2;background:#fff;border-radius:13px;padding:14px 15px;text-align:left;font-weight:850;color:#456050;font-size:.89rem}.worker-nav.active{border-color:#c8e0d1;background:#e9f6ed;color:#1f7c50}.worker-nav span{flex:1}.pane-card{padding:26px}.pane-heading{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:23px}.pane-heading h2,.worker-pane h2{font-size:1.5rem;margin:0 0 6px}.pane-heading p{color:#7a897e;font-size:.81rem}.credential-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(220px,.75fr);gap:25px;align-items:center}.credential-card{min-height:260px;max-width:510px;border-radius:21px;padding:23px;background:linear-gradient(138deg,#184533,#245d46);color:#fff;box-shadow:0 20px 40px rgba(21,56,43,.19);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.credential-card:after{content:'';position:absolute;width:250px;height:250px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-160px;bottom:-120px}.credential-top{display:flex;gap:12px;align-items:center}.credential-top img{width:51px;height:51px;object-fit:contain}.credential-top span,.credential-middle span{display:block;font-size:.59rem;letter-spacing:.12em;color:#c5dacb;font-weight:800}.credential-top strong{font-size:1rem}.credential-middle{display:flex;gap:14px;align-items:center;margin:16px 0}.credential-photo{display:grid;place-items:center;flex:0 0 78px;width:78px;height:94px;background:#eff3ea;color:#59816c;border:3px solid rgba(255,255,255,.7);border-radius:13px;overflow:hidden;font-size:2rem}.credential-photo img{width:100%;height:100%;object-fit:cover}.credential-middle strong{font-size:1.05rem;display:block;line-height:1.25;margin:4px 0}.credential-middle small{font-size:.73rem;color:#d1e0d4;display:block;margin-bottom:13px}.credential-middle b{font-size:1.06rem;color:#ffb178}.credential-bottom{display:flex;justify-content:space-between;align-items:center;font-size:.58rem;letter-spacing:.07em;color:#c9e4d0}.credential-help h3{font-size:1.25rem}.credential-help p{font-size:.89rem;color:#718478}.document-mini{display:flex;gap:10px;align-items:center;background:#f4faf4;border-radius:13px;padding:12px;margin:15px 0}.document-mini>span{color:#2d8a5d}.document-mini strong{display:block;font-size:.85rem}.document-mini small{font-size:.74rem;color:#7c8d80}.worker-data-grid,.record-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.worker-data-grid>div,.record-details>div{background:#fafaf7;border:1px solid #ebeee7;border-radius:13px;padding:14px;min-width:0}.worker-data-grid small,.record-details small{display:block;color:#809084;font-size:.7rem;letter-spacing:.02em}.worker-data-grid strong,.record-details strong{display:block;color:#284130;font-size:.84rem;overflow-wrap:anywhere;margin-top:4px}.status-large{display:flex;gap:16px;align-items:center;margin:20px 0 26px;padding:18px;background:#e9f7ed;border-radius:14px}.status-large>span{background:#2c8a62;color:#fff;border-radius:50%;width:43px;height:43px;display:grid;place-items:center}.status-large strong{font-size:1.12rem;color:#286b4a}.status-large p{color:#6d8473;font-size:.82rem}.worker-benefits{display:grid;gap:12px}.worker-benefits a{display:flex;gap:15px;align-items:center;color:#1f4832;border:1px solid #e7ebe6;padding:15px;border-radius:14px;text-decoration:none}.worker-benefits a>span{font-size:1.5rem;color:#eb762d;background:#fff2e5;padding:8px;border-radius:12px}.worker-benefits a>div{flex:1}.worker-benefits strong{display:block}.worker-benefits small{display:block;color:#758578}.expediente-sign img{width:200px;height:auto;border-bottom:1px solid #dde9df}.success-note{color:#2e8e5e;font-size:.82rem}
/* Admin */
.admin-content{background:#fafaf7}.demo-admin-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:.8rem;font-weight:800;color:#2c7856}.demo-admin-toolbar small{color:#839186;font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.metric-card{background:#fff;border:1px solid #e9ebe5;border-radius:17px;padding:19px 20px;box-shadow:0 12px 30px rgba(30,48,37,.04);position:relative;overflow:hidden}.metric-card:after{content:'';position:absolute;width:7px;right:0;top:0;bottom:0;background:linear-gradient(#ffb17a,#f17c36)}.metric-card>div{font-size:.67rem;letter-spacing:.13em;color:#749080;font-weight:850}.metric-card strong{display:block;font-size:2.1rem;color:#173d2d;letter-spacing:-.055em;line-height:1.15;margin:11px 0 3px}.metric-card small{color:#839184;font-size:.75rem}.demo-admin-filters{margin-top:19px;background:#fff;border:1px solid #e8ece7;border-radius:20px;padding:23px}.filters-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:15px}.filters-title h2{font-size:1.25rem;margin:0}.filter-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.filter-fields label{font-size:.73rem}.filter-summary{text-align:right;color:#7b8a7e;font-size:.8rem;margin-top:15px}.filter-summary strong{color:#e66d25}.admin-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.admin-chart{padding:23px;min-height:286px}.admin-chart.wide{grid-column:1/-1;min-height:320px}.chart-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:16px}.chart-heading h3{font-size:1.16rem;margin:0}.small-muted{font-size:.77rem;color:#8b968d}.admin-chart svg{display:block;width:100%;height:240px}.bar-list{display:grid;gap:12px}.bar-row{min-width:0}.bar-meta{display:flex;justify-content:space-between;gap:12px;color:#52695b;font-size:.77rem;margin-bottom:5px}.bar-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-meta strong{color:#1a4931;flex:0 0 auto}.bar-track{width:100%;height:9px;border-radius:20px;background:#edf1ec;overflow:hidden}.bar-fill{background:linear-gradient(90deg,#efaa6d,#ed7126);height:100%;border-radius:20px;transition:width .45s ease}.demo-admin-table{margin-top:19px;padding:22px}.table-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.table-top h2{font-size:1.3rem;margin-bottom:4px}.table-top p{font-size:.8rem;color:#7b8e80}.table-scroll{overflow-x:auto}.demo-table{font-size:.79rem;margin-bottom:0}.demo-table th{color:#6c8474;background:#f4f8f3;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;border-color:#edf0eb;white-space:nowrap;padding:13px 11px}.demo-table td{vertical-align:middle;border-color:#edf0eb;padding:14px 11px;color:#486353;min-width:80px}.demo-table td:first-child{white-space:nowrap}.demo-table td strong{display:block;color:#2b4433}.demo-table td small{display:block;color:#91a093;margin-top:4px}.mono-data{font-family:monospace;font-size:.78rem;color:#227b55!important}.table-pager{display:flex;align-items:center;justify-content:space-between;margin-top:14px;color:#829085;font-size:.76rem}.table-pager>div{display:flex;gap:7px}.small-btn{padding:8px 13px;font-size:.75rem}.demo-admin-help{background:#1a4b37;border-radius:23px;color:#fff;padding:27px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.demo-admin-help h2{color:#fff;font-size:1.55rem;margin:11px 0}.demo-admin-help p{color:#d2e2d7;font-size:.89rem;max-width:710px}.demo-admin-help img{width:85px;height:85px;object-fit:contain}.demo-record-modal{border-radius:20px!important;overflow:hidden}.demo-record-modal .modal-header,.demo-record-modal .modal-body,.demo-record-modal .modal-footer{padding:21px 24px}.demo-record-modal h2{font-size:1.4rem}.demo-record-modal .modal-footer{border:0}.demo-record-modal .record-details>div{padding:12px}
/* Documento PDF nativo del navegador */
.document-page{background:#f2f3f0;padding:40px 0 70px}.document-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.document-sheet{background:#fff;max-width:850px;min-height:950px;margin:auto;padding:52px;border:1px solid #e5e7e2;box-shadow:0 25px 60px rgba(25,45,31,.09)}.document-heading{display:flex;gap:20px;border-bottom:3px solid #e9823b;padding-bottom:22px;align-items:center}.document-heading img{height:86px;width:86px;object-fit:contain}.document-heading span{color:#2b7d58;font-size:.78rem;font-weight:800;letter-spacing:.15em}.document-heading h1{font-size:2rem;margin:4px 0}.document-heading p{font-size:.9rem;color:#819084}.document-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px}.document-grid>div{border-bottom:1px solid #e8ede8;padding-bottom:11px}.document-grid small{display:block;color:#839388;font-size:.75rem}.document-grid strong{display:block;font-size:1rem;overflow-wrap:anywhere}.document-sign{margin-top:45px;border-bottom:1px solid #bac8bc;width:220px;height:90px;color:#899990;text-align:center;display:flex;align-items:end;justify-content:center}.document-sign img{width:100%;height:80px;object-fit:contain}.document-bottom{display:flex;justify-content:space-between;gap:15px;border-top:2px solid #e7eae4;margin-top:55px;padding-top:18px;color:#718676;font-size:.75rem}.print-id{display:flex;align-items:center;gap:28px;background:#1c4d38;border-radius:22px;padding:30px;margin-top:50px;color:#fff}.print-photo{width:160px;height:180px;background:#fff;display:grid;place-items:center;font-size:3rem;color:#3e8b60;overflow:hidden;border-radius:15px}.print-photo img{width:100%;height:100%;object-fit:cover}.print-id h2{color:#fff;font-size:1.6rem}.print-id p{color:#d4e5d9}.print-id span{display:block;font-size:.75rem;letter-spacing:.14em;color:#bddfc4;margin-top:24px}.print-id strong{font-size:1.4rem;color:#ffb67d}
@media(max-width:991px){.demo-layout{grid-template-columns:1fr}.demo-secondary{display:none}.demo-login-layout{grid-template-columns:1fr;gap:26px}.demo-login-copy{max-width:670px}.login-emblem{display:none}.demo-login-copy h1{font-size:2rem;margin:12px 0}.login-points{margin-top:12px}.demo-login-card{max-width:600px;width:100%;margin:auto}.worker-grid{grid-template-columns:1fr}.worker-menu{display:grid;grid-template-columns:repeat(3,1fr)}.filter-fields{grid-template-columns:repeat(3,1fr)}.credential-layout{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.demo-head .demo-lead-side{display:none}.demo-head h1{font-size:1.92rem}.demo-section{padding:17px 0 38px}.register-card,.pane-card,.demo-login-card{padding:19px}.demo-form-grid{grid-template-columns:1fr 1fr}.wizard-tab{font-size:.60rem;padding:8px 3px}.wizard-tab span{display:block}.demo-login-page .demo-section{padding:25px 0 40px}.workspace-header{align-items:start;flex-direction:column;gap:15px}.worker-menu{grid-template-columns:1fr 1fr}.credential-layout{grid-template-columns:1fr}.credential-card{max-width:100%}.filter-fields{grid-template-columns:1fr 1fr}.metric-grid{grid-template-columns:1fr 1fr}.admin-chart-grid{grid-template-columns:1fr}.admin-chart.wide{grid-column:auto}.demo-admin-table{padding:16px}.table-top{flex-direction:column;align-items:start}.demo-admin-help{padding:20px}.demo-admin-help img{display:none}.document-sheet{padding:22px;min-height:700px}.document-grid{grid-template-columns:1fr 1fr}.print-id{flex-direction:column;text-align:center}}
@media(max-width:500px){.demo-form-grid,.worker-data-grid,.record-details,.filter-fields,.credentials-grid{grid-template-columns:1fr}.demo-step-actions>.demo-btn{flex:1 1 auto}.evidence-grid{grid-template-columns:1fr}.photo-box{width:180px}.wizard-tab{white-space:normal}.worker-menu{grid-template-columns:1fr}.metric-grid{gap:9px}.metric-card{padding:14px}.metric-card strong{font-size:1.65rem}.table-pager{align-items:start;gap:12px;flex-direction:column}.demo-login-copy h1{font-size:1.8rem}.login-points{gap:5px}.login-points span{font-size:.67rem}.demo-admin-toolbar{align-items:start;flex-direction:column}.document-grid{grid-template-columns:1fr}.document-heading h1{font-size:1.5rem}}
@media print{@page{size:A4;margin:10mm}body{background:#fff!important;padding:0!important}.site-header,.spm-mini-footer,.cookie-panel,.back-to-top,.document-actions,.no-print{display:none!important}.document-page{padding:0;background:#fff}.document-sheet{min-height:0;max-width:none;border:0;box-shadow:none;padding:15mm 10mm}.document-bottom{page-break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.demo-btn,.bar-fill{transition:none}}
/* Asistente de orientación DEMO SINDICATO (solo pantallas de demostración) */
.assistant-widget{position:fixed;left:20px;bottom:21px;z-index:1045;font-family:'DM Sans',sans-serif}.assistant-toggle{background:#1b533c;color:#fff;border:1px solid rgba(255,255,255,.3);box-shadow:0 13px 35px rgba(17,51,35,.2);border-radius:50px;padding:12px 18px;font-size:.78rem;font-weight:850}.assistant-toggle:hover{background:#256c4f}.assistant-box{position:absolute;left:0;bottom:57px;width:min(360px,calc(100vw - 36px));background:#fff;border:1px solid #e4ebe4;border-radius:20px;box-shadow:0 20px 50px rgba(17,41,27,.2);overflow:hidden}.assistant-box header{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;color:#fff;background:#1b533c}.assistant-box header strong{display:block;font-size:.91rem}.assistant-box header small{color:#cfe8d8;font-size:.67rem}.assistant-box header button{color:#fff;border:0;background:none;font-size:1.6rem}.assistant-messages{max-height:205px;overflow-y:auto;padding:15px;display:flex;flex-direction:column;gap:8px}.assistant-message{font-size:.78rem;line-height:1.6;padding:9px 12px;max-width:94%;border-radius:14px}.assistant-message.bot{background:#f0f5f0;color:#45604b;align-self:flex-start}.assistant-message.me{background:#fff0e4;color:#7e461f;align-self:flex-end}.assistant-chips{display:flex;gap:5px;padding:0 12px 12px}.assistant-chips button{background:#fff;border:1px solid #dce9dc;color:#287957;font-weight:800;font-size:.7rem;border-radius:20px;padding:6px 8px}.assistant-box form{display:flex;border-top:1px solid #e4eae4;padding:10px;gap:7px}.assistant-box form input{flex:1;min-width:0!important;border:1px solid #e4ebe5;border-radius:10px;padding:10px;font-size:.77rem}.assistant-box form button{background:#ed752b;color:white;border:0;border-radius:10px;padding:8px 14px}.assistant-box[hidden]{display:none!important}
@media(max-width:500px){.assistant-widget{left:12px;bottom:14px}.assistant-toggle{padding:10px 12px;font-size:.72rem}}
@media print{.assistant-widget{display:none!important}}
.custom-town-row{display:flex;gap:8px;flex-direction:column}.custom-town-row label{width:100%}.custom-town-row label[hidden]{display:none}.custom-town-row .demo-text-button{align-self:start}.demo-upload-label{display:block}
.chart-time-switch{display:flex;align-items:center;gap:8px;color:#7c8c80;font-size:.73rem;white-space:nowrap}.chart-time-switch select{width:auto!important;min-height:30px!important;padding:3px 8px!important;font-size:.74rem!important}.filter-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:767px){.filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.filter-fields{grid-template-columns:1fr}}

/* DEMO SINDICATO · Explorador territorial — exclusivo del panel administrativo */
.demo-admin .demo-territory{margin-top:20px;padding:27px 27px 29px;border:1px solid #e8e9e2;border-radius:22px;box-shadow:0 14px 40px rgba(26,55,36,.045);background:#fff}
.demo-admin .demo-territory-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}
.demo-admin .demo-territory-heading h2{margin:7px 0 6px;font-size:clamp(1.35rem,2.5vw,1.76rem);letter-spacing:-.04em}
.demo-admin .demo-territory-heading p{color:#728277;line-height:1.6;font-size:.83rem}
.demo-admin .territory-legend{white-space:nowrap;align-self:flex-start;background:#f8f6f1;border-radius:25px;padding:8px 12px;font-size:.68rem;font-weight:750;color:#6f8173}
.demo-admin .territory-legend span{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#ee8339}
.demo-admin .territory-layout{display:grid;grid-template-columns:minmax(260px,.79fr) minmax(0,1.45fr);gap:24px;align-items:start}
.demo-admin .territory-directory{border:1px solid #e8ebe5;border-radius:17px;background:#fcfdfb;padding:15px;min-width:0}
.demo-admin .territory-directory-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:2px 1px 13px;border-bottom:1px solid #e7ebe5}
.demo-admin .territory-directory-head strong{color:#263e30;font-size:.87rem;letter-spacing:-.016em}
.demo-admin #territoryStatesWithRecords{font-size:.68rem;font-weight:800;color:#27805d;background:#eaf5ed;border-radius:999px;padding:5px 8px;white-space:nowrap}
.demo-admin .territory-search-label{display:block;margin:13px 0 10px;color:#6c8171;font-size:.7rem;font-weight:700}
.demo-admin .territory-search-label span{display:block;margin-bottom:5px}
.demo-admin .territory-search-label input,.demo-admin .territory-muni-controls input[type="search"]{display:block;width:100%;border:1px solid #e0e7de;background:#fff;border-radius:11px;padding:10px 12px;min-height:40px;color:#344a3c;font-size:.81rem;outline-offset:2px}
.demo-admin .territory-search-label input:focus,.demo-admin .territory-muni-controls input[type="search"]:focus{border-color:#e98d55;box-shadow:0 0 0 3px rgba(239,117,46,.10)}
.demo-admin .territory-state-list{max-height:415px;overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:1fr;gap:4px;padding:2px 4px 2px 0;scrollbar-color:#cfd9d1 transparent;scrollbar-width:thin}
.demo-admin .territory-state-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;background:transparent;border:1px solid transparent;border-radius:11px;padding:8px 9px;color:#455b4e;transition:background .18s,border-color .18s,color .18s}
.demo-admin .territory-state-btn:hover{background:#f2f6f1;border-color:#e6eee5}
.demo-admin .territory-state-btn.is-selected{background:#fff1e6;border-color:#f0c6a8;color:#bd5b1e}
.demo-admin .territory-state-name{font-size:.79rem;font-weight:700;line-height:1.3;min-width:0}
.demo-admin .territory-state-badge{display:inline-flex;min-width:34px;justify-content:center;border-radius:10px;background:#eff1ed;color:#8a9a8e;padding:4px 7px;font-size:.69rem;font-weight:900;flex-shrink:0}
.demo-admin .territory-state-badge.has-records{background:#e7f5eb;color:#217654}
.demo-admin .territory-state-btn.is-selected .territory-state-badge{background:#e8712c;color:#fff}
.demo-admin .territory-all-states{border:0;background:#f1f7f2;width:100%;margin-top:12px;color:#247753;border-radius:11px;padding:10px 12px;font-size:.77rem;font-weight:850;cursor:pointer}
.demo-admin .territory-all-states:disabled{cursor:default;opacity:.47}
.demo-admin .territory-all-states:not(:disabled):hover{background:#e3f2e6}
.demo-admin .territory-detail{min-width:0}
.demo-admin .territory-detail-head{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:16px}
.demo-admin .territory-detail-head h3{font-size:1.5rem;margin:6px 0 5px;letter-spacing:-.04em}
.demo-admin .territory-detail-head p{font-size:.79rem;line-height:1.6;color:#7c8b7d;max-width:470px}
.demo-admin .territory-state-count{background:#f2f5f1;white-space:nowrap;padding:7px 11px;border-radius:10px;color:#68806e;font-size:.68rem;font-weight:800}
.demo-admin .territory-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:18px}
.demo-admin .territory-stats article{border:1px solid #e9eee6;border-radius:14px;background:#fbfdf9;padding:12px 13px;min-width:0}
.demo-admin .territory-stats small{display:block;color:#7b8a7c;font-size:.68rem;font-weight:700;line-height:1.4;min-height:2.8em}
.demo-admin .territory-stats strong{display:block;color:#244b37;font-family:Manrope,sans-serif;font-size:1.32rem;line-height:1.25;letter-spacing:-.045em;margin-top:7px;overflow-wrap:anywhere}
.demo-admin #territoryTopTown{font-size:.86rem;letter-spacing:0;margin-top:10px}
.demo-admin .territory-chart-area{padding:16px;border:1px solid #e8ebe5;border-radius:16px;background:linear-gradient(135deg,#fff,#fffdf9)}
.demo-admin .territory-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.demo-admin .territory-chart-head strong{display:block;color:#273f30;font-size:.91rem}
.demo-admin .territory-chart-head small{display:block;color:#8b978c;font-size:.71rem;margin-top:2px}
.demo-admin .territory-chart-head>span{font-size:.69rem;color:#9aa59b}
.demo-admin .territory-bars{display:grid;gap:8px;min-height:110px}
.demo-admin .territory-chart-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#526559;font-size:.74rem;margin-bottom:4px}
.demo-admin .territory-chart-caption span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.demo-admin .territory-chart-caption em{font-style:normal;color:#c99b76;margin-right:6px;font-size:.65rem}
.demo-admin .territory-chart-caption strong{flex-shrink:0;color:#305a3d}
.demo-admin .territory-chart-track{height:9px;background:#f0f2ed;border-radius:20px;overflow:hidden}
.demo-admin .territory-chart-fill{height:100%;border-radius:20px;background:linear-gradient(90deg,#f1ad74,#ed792e);transition:width .32s ease}
.demo-admin .territory-municipality-head{margin:21px 0 12px}
.demo-admin .territory-municipality-head strong{font-size:.91rem;display:block;color:#273f30}
.demo-admin .territory-municipality-head small{font-size:.72rem;color:#839183}
.demo-admin .territory-muni-controls{display:flex;align-items:end;gap:14px;margin-bottom:10px}
.demo-admin .territory-muni-controls>label:first-child{flex:1;min-width:0;font-size:.71rem;color:#728175;font-weight:700}
.demo-admin .territory-muni-controls input[type="search"]{margin-top:6px}
.demo-admin .territory-only-label{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:.72rem;color:#496b56;font-weight:750;cursor:pointer;padding-bottom:10px}
.demo-admin .territory-only-label input{accent-color:#277b53;width:16px;height:16px}
.demo-admin .territory-municipality-list{border:1px solid #e9eee7;background:#fff;border-radius:13px;max-height:265px;overflow:auto;scrollbar-color:#cddad0 transparent;scrollbar-width:thin}
.demo-admin .territory-muni-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;text-align:left;color:#43634d;border:0;background:#fff;border-bottom:1px solid #f0f2ef;transition:background .16s}
.demo-admin .territory-muni-btn:last-child{border-bottom:none}
.demo-admin .territory-muni-btn:hover,.demo-admin .territory-muni-btn.is-active{background:#f2f9f2}
.demo-admin .territory-muni-btn.is-active{box-shadow:inset 3px 0 #e8792b}
.demo-admin .territory-town-name{flex:1;min-width:0}
.demo-admin .territory-town-name strong{display:block;font-size:.77rem;overflow-wrap:anywhere}
.demo-admin .territory-town-name small{display:block;color:#98a199;font-size:.68rem}
.demo-admin .territory-town-count{flex-shrink:0;font-size:.71rem;color:#84958a;background:#f5f6f2;border-radius:9px;padding:4px 9px}
.demo-admin .territory-town-count.registered{background:#eaf7eb;color:#2b7650;font-weight:800}
.demo-admin .territory-town-arrow{font-size:.83rem;color:#d7834e;flex-shrink:0}
.demo-admin .territory-help{margin-top:12px;color:#89958c;font-size:.7rem;line-height:1.55}
.demo-admin .territory-empty-list{font-size:.78rem;color:#879589;padding:17px 13px;text-align:center}
.demo-admin .territory-no-data{text-align:center;display:grid;place-items:center;padding:14px;gap:5px;color:#758677}
.demo-admin .territory-no-data span{color:#ed8c4c;font-size:1.7rem}
.demo-admin .territory-no-data strong{color:#43684e;font-size:.86rem}
.demo-admin .territory-no-data p{font-size:.75rem}
@media(max-width:1050px){.demo-admin .territory-layout{grid-template-columns:minmax(220px,.7fr) minmax(0,1fr);gap:16px}.demo-admin .demo-territory{padding:20px}.demo-admin .territory-muni-controls{align-items:stretch;flex-wrap:wrap}.demo-admin .territory-only-label{padding-bottom:0}}
@media(max-width:767px){.demo-admin .territory-layout{grid-template-columns:1fr}.demo-admin .demo-territory-heading{align-items:flex-start;gap:10px}.demo-admin .territory-directory{padding:13px}.demo-admin .territory-state-list{max-height:220px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.demo-admin .territory-state-btn{padding:8px}.demo-admin .territory-state-name{font-size:.71rem}.demo-admin .territory-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-admin .territory-municipality-list{max-height:310px}}
@media(max-width:520px){.demo-admin .demo-territory{padding:17px 12px}.demo-admin .demo-territory-heading{display:block}.demo-admin .territory-legend{display:inline-block;margin-top:9px}.demo-admin .territory-detail-head{display:block}.demo-admin .territory-state-count{display:inline-block;margin-top:9px}.demo-admin .territory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-admin .territory-stats article:last-child{grid-column:1/-1}.demo-admin .territory-chart-caption span{font-size:.7rem}.demo-admin .territory-muni-controls{display:block}.demo-admin .territory-only-label{margin:12px 0 8px}}
@media(prefers-reduced-motion:reduce){.demo-admin .territory-chart-fill{transition:none}}

/* 2026-10-21 | Ajuste final solicitado: más color guinda en las vistas demo, manteniendo el naranja como base. */
:root{--demo-guinda:#87394d;--demo-guinda-soft:#f7edf1;--demo-guinda-line:#e7d4db}
.demo-pill{background:var(--demo-guinda-soft);border-color:var(--demo-guinda-line);color:var(--demo-guinda)}
.demo-pill-light{background:rgba(135,57,77,.16);color:#f5dbe2;border-color:rgba(255,255,255,.2)}
.demo-eyebrow,.wizard-top small,.demo-breadcrumb a,.demo-text-button,.credential-top span,.credential-bottom span{color:var(--demo-guinda)}
.demo-text-button:hover{color:#db6a22}
.demo-btn.secondary{border-color:#dbc8ce;color:var(--demo-guinda)}
.demo-btn.secondary:hover{background:var(--demo-guinda-soft);color:#6e2a3c}
.wizard-tab.current,.role-tab.active{background:var(--demo-guinda-soft);color:var(--demo-guinda)}
.check-row a,.demo-status,.document-mini>span,.success-note{color:var(--demo-guinda)}
.green-dot{background:var(--demo-guinda);box-shadow:0 0 0 5px #f1e0e6}
.worker-nav.active{border-color:#e2cfd6;background:#f8eef2;color:var(--demo-guinda)}
.metric-card:after{background:linear-gradient(#ffb17a,#ee7327 55%,#87394d 100%)}
.bar-fill{background:linear-gradient(90deg,#efaa6d 0%,#ed7126 68%,#87394d 100%)}
.demo-admin-toolbar,.filter-summary strong{color:var(--demo-guinda)}
.hello-icon,.worker-benefits a>span{background:var(--demo-guinda-soft);color:var(--demo-guinda)}
.demo-side-panel{background:linear-gradient(155deg,#173e2f 0%,#205542 72%,#6e2a3c 100%)}
.demo-side-feature>span{color:#ffd0b4}
.workspace-top,.demo-login-page .demo-section,.demo-lead{background:linear-gradient(115deg,#fff9f1 0%,#fff3ea 58%,#fbf0f4 100%)}

/* 2026-10-21 | Reajuste solicitado: acentos guinda por separado en módulos demo. */
.demo-lead,
.workspace-top,
.demo-login-page .demo-section{
  background:#fbf2f5 !important;
}
.demo-pill,
.demo-btn.secondary,
.worker-nav.active,
.role-tab.active,
.wizard-tab.current{
  background:var(--demo-guinda-soft) !important;
  color:var(--demo-guinda) !important;
  border-color:var(--demo-guinda-line) !important;
}
.metric-card:after,
.credential-card::before{
  background:var(--demo-guinda) !important;
}
.bar-fill{
  background:var(--orange) !important;
}
.demo-side-panel{
  background:linear-gradient(155deg,#173e2f 0%,#205542 100%) !important;
}
.demo-admin-toolbar,
.filter-summary strong,
.demo-eyebrow,
.demo-status,
.check-row a,
.document-mini > span{
  color:var(--demo-guinda) !important;
}
.green-dot{background:var(--demo-guinda) !important;box-shadow:0 0 0 5px #f1e0e6 !important}
