
/* LA LAGUNA · V8 · contraste modo claro + guía compacta + Nómina */
:root{--laguna-blue:#1767c8;--laguna-blue-dark:#0b3f7a;--laguna-blue-soft:#eaf3ff;--laguna-ink:#101923;--laguna-muted:#5d6d7b}

/* GUÍA: menos invasiva, botones completos y azul Laguna */
body.guide-open .guide-shade{background:rgba(7,24,43,.24)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
body.guide-open .guide-focus{border-color:var(--laguna-blue)!important;border-width:2px!important;border-radius:16px!important;box-shadow:0 0 0 4px rgba(23,103,200,.14),0 12px 36px rgba(9,41,78,.16)!important}
body.guide-open .guide-card{width:var(--guide-width,min(380px,calc(100vw - 28px)))!important;max-width:min(380px,calc(100vw - 28px))!important;border-radius:18px!important;padding:20px 20px 0!important;box-shadow:0 24px 70px rgba(6,25,46,.30)!important;overflow:hidden!important}
.guide-card::before{background:linear-gradient(90deg,var(--laguna-blue) 0 var(--guide-progress,0%),rgba(96,116,135,.20) var(--guide-progress,0%) 100%)!important}
.guide-card>small{color:var(--laguna-blue)!important;font-size:9px!important;letter-spacing:.16em!important}
.guide-card h3{font-size:22px!important;line-height:1.12!important;margin:12px 0 8px!important}
.guide-card>p{font-size:13px!important;line-height:1.52!important;margin:0!important;max-height:16dvh!important}
.guide-example{margin-top:12px!important;padding:12px 13px!important;border-radius:12px!important}
.guide-example small{color:var(--laguna-blue)!important;font-size:9px!important}
.guide-example p{font-size:12px!important;line-height:1.45!important;margin-top:5px!important}
.guide-actions{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-areas:"pick pick" "close nav"!important;gap:8px 10px!important;margin:14px -20px 0!important;padding:12px 20px 16px!important;align-items:center!important}
.guide-actions>#guideClose{grid-area:close!important}
.guide-actions>.guide-pick{grid-area:pick!important;width:100%!important;text-align:left!important;min-height:36px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--laguna-blue)!important;white-space:normal!important}
.guide-actions>span{grid-area:nav!important;justify-self:end!important;display:flex!important;gap:7px!important}
.guide-actions button{min-height:38px!important;padding:0 12px!important;border-radius:10px!important;font-size:11px!important;white-space:nowrap!important}
.guide-actions .next{background:var(--laguna-blue)!important;border-color:var(--laguna-blue)!important;color:#fff!important}
.guide-card[data-placement="content-floating"]{right:auto!important;bottom:auto!important}

html[data-theme="light"] body.guide-open .guide-card{background:#ffffff!important;border:1px solid #b8c9dc!important;color:var(--laguna-ink)!important}
html[data-theme="light"] .guide-card h3{color:var(--laguna-ink)!important}
html[data-theme="light"] .guide-card>p{color:#465767!important}
html[data-theme="light"] .guide-example{background:#f4f8fd!important;border:1px solid #d7e2ee!important}
html[data-theme="light"] .guide-example p{color:#172332!important}
html[data-theme="light"] .guide-actions{background:#f8fafc!important;border-top:1px solid #d9e2eb!important}
html[data-theme="light"] .guide-actions button:not(.next):not(.guide-pick){background:#fff!important;color:#172332!important;border-color:#b7c4d1!important}

/* MODO CLARO: el bloque BASE OPERATIVA ya no conserva colores oscuros heredados */
html[data-theme="light"] .record-hub{background:#fff!important;border-color:#cfd9e2!important;color:var(--laguna-ink)!important}
html[data-theme="light"] .record-hub>header{background:linear-gradient(180deg,#fff,#f6f9fc)!important;border-left-color:var(--laguna-blue)!important;border-bottom-color:#d8e1ea!important}
html[data-theme="light"] .record-hub>header small{color:#587086!important}
html[data-theme="light"] .record-hub>header h3{color:#111b25!important}
html[data-theme="light"] .record-hub>header p{color:#556676!important}
html[data-theme="light"] .record-new{background:var(--laguna-blue)!important;border-color:var(--laguna-blue)!important;color:#fff!important}
html[data-theme="light"] .record-export,html[data-theme="light"] .module-file-jump{background:#fff!important;color:#172332!important;border:1px solid #b8c5d1!important}
html[data-theme="light"] .module-record-engine{background:#eef8f5!important;color:#236a55!important;border-color:#b6ded0!important}
html[data-theme="light"] .record-hub-strip{background:#f7f9fb!important;border-color:#d8e1ea!important}
html[data-theme="light"] .record-hub-strip article{border-color:#d8e1ea!important}
html[data-theme="light"] .record-hub-strip small,html[data-theme="light"] .record-hub-strip span{color:#62717e!important}
html[data-theme="light"] .record-hub-strip strong{color:#14202c!important}
html[data-theme="light"] .record37-history,html[data-theme="light"] .module-record-history{background:#fff!important;color:#172332!important}
html[data-theme="light"] .record37-history h4,html[data-theme="light"] .record37-history strong,html[data-theme="light"] .module-record-history h4{color:#172332!important}
html[data-theme="light"] .record37-history p,html[data-theme="light"] .record-empty{color:#637381!important}

/* Contraste general del tema claro en superficies que heredaban texto oscuro sobre fondo oscuro */
html[data-theme="light"] .module-hero h2,html[data-theme="light"] .module-hero p,html[data-theme="light"] .module-hero small{opacity:1!important}
html[data-theme="light"] .panel,html[data-theme="light"] .tool-card,html[data-theme="light"] .section{color:var(--laguna-ink)}
html[data-theme="light"] .panel-head h3,html[data-theme="light"] .panel-head strong{color:#111b25!important}
html[data-theme="light"] .panel-head small,html[data-theme="light"] .panel p,html[data-theme="light"] .tool-card p{color:#5c6d7b!important}
html[data-theme="light"] .button.secondary,html[data-theme="light"] .row-action{color:#17314e!important;background:#fff!important;border-color:#b9c7d4!important}
html[data-theme="light"] .button.primary{background:var(--laguna-blue)!important;color:#fff!important;border-color:var(--laguna-blue)!important}

/* NÓMINA */
.hr-payroll-link{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;padding:22px 24px!important;border:1px solid var(--v54-border)!important;border-left:4px solid var(--laguna-blue)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--laguna-blue) 8%,var(--v54-surface)),var(--v54-surface))!important;border-radius:12px!important}
.hr-payroll-link small{color:var(--laguna-blue)!important;font-size:10px!important;letter-spacing:.14em!important;font-weight:900!important}.hr-payroll-link h3{margin:5px 0!important;font-size:22px!important}.hr-payroll-link p{margin:0!important;color:var(--v54-muted)!important;max-width:880px!important}
.payroll-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:20px 22px!important;border:1px solid var(--v54-border)!important;background:var(--v54-surface)!important;border-radius:12px!important}.payroll-toolbar small{color:var(--laguna-blue)!important;font-size:10px!important;letter-spacing:.14em!important;font-weight:900!important}.payroll-toolbar h3{margin:5px 0!important;font-size:22px!important}.payroll-toolbar p{margin:0!important;color:var(--v54-muted)!important}
.payroll-filter{display:flex!important;gap:7px!important;flex-wrap:wrap!important}.payroll-filter button{appearance:none!important;border:1px solid var(--v54-border)!important;background:var(--v54-surface-2)!important;color:var(--v54-text)!important;border-radius:999px!important;min-height:38px!important;padding:0 14px!important;font-weight:850!important;cursor:pointer!important}.payroll-filter button.is-active{background:var(--laguna-blue)!important;color:#fff!important;border-color:var(--laguna-blue)!important}
.payroll-grid{align-items:start!important}.payroll-table{min-width:980px!important}.payroll-table td small{display:block!important;margin-top:3px!important;color:var(--v54-muted)!important}.payroll-positive{color:#18825f!important;font-weight:850!important}.payroll-negative{color:#b13b45!important;font-weight:850!important}.payroll-net{font-size:15px!important;color:var(--v54-text)!important}
.payroll-form{display:grid!important;gap:13px!important}.payroll-form header small{color:var(--laguna-blue)!important;font-size:10px!important;letter-spacing:.13em!important;font-weight:900!important}.payroll-form header h4{font-size:20px!important;margin:4px 0!important}.payroll-form header p{margin:0!important;color:var(--v54-muted)!important}.payroll-form label{display:grid!important;gap:6px!important}.payroll-form label>span{font-size:11px!important;font-weight:850!important;color:var(--v54-muted)!important}.payroll-form input,.payroll-form select,.payroll-form textarea{width:100%!important;min-height:43px!important;border:1px solid var(--v54-border)!important;background:var(--v54-surface-2)!important;color:var(--v54-text)!important;padding:9px 11px!important;border-radius:9px!important}.payroll-form textarea{min-height:82px!important;resize:vertical!important}.payroll-form-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}.payroll-form-note{display:block!important;color:var(--v54-muted)!important;line-height:1.5!important}
.payroll-rules{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.payroll-rules article{display:flex!important;gap:12px!important;padding:17px!important;border:1px solid var(--v54-border)!important;background:var(--v54-surface)!important;border-radius:12px!important}.payroll-rules article>span{width:32px;height:32px;display:grid;place-items:center;flex:none;border-radius:10px;background:var(--laguna-blue-soft);color:var(--laguna-blue);font-weight:900;font-size:11px}.payroll-rules b{display:block!important;color:var(--v54-text)!important}.payroll-rules p{margin:5px 0 0!important;color:var(--v54-muted)!important;font-size:12px!important;line-height:1.45!important}
.payroll-drawer-head{padding:18px;border-radius:12px;background:linear-gradient(135deg,var(--laguna-blue-dark),var(--laguna-blue));color:#fff;margin-bottom:14px}.payroll-drawer-head span{display:block;font-size:11px;opacity:.8}.payroll-drawer-head strong{display:block;font-size:34px;margin:6px 0}.payroll-drawer-head small{opacity:.8}.payroll-breakdown{display:grid;gap:7px;margin-bottom:14px}.payroll-breakdown>div{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--v54-border);background:var(--v54-surface-2);border-radius:9px}.payroll-breakdown .plus b{color:#18825f}.payroll-breakdown .minus b{color:#b13b45}.payroll-breakdown .total{background:color-mix(in srgb,var(--laguna-blue) 8%,var(--v54-surface));border-color:color-mix(in srgb,var(--laguna-blue) 30%,var(--v54-border))}.payroll-breakdown .total b{color:var(--laguna-blue);font-size:17px}
.payroll-detail-list{display:grid;gap:8px}.payroll-detail-move{display:flex;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--v54-border);border-radius:10px;background:var(--v54-surface)}.payroll-detail-move span,.payroll-detail-move small{display:block;color:var(--v54-muted);font-size:10px}.payroll-detail-move strong{display:block;margin:4px 0;color:var(--v54-text);font-size:12px}.payroll-detail-move.plus>b{color:#18825f}.payroll-detail-move.minus>b{color:#b13b45}.payroll-empty{padding:18px;color:var(--v54-muted);text-align:center}

@media(max-width:1100px){.payroll-grid{grid-template-columns:1fr!important}.payroll-rules{grid-template-columns:repeat(2,minmax(0,1fr))!important}.payroll-toolbar{align-items:flex-start!important;flex-direction:column!important}.hr-payroll-link{align-items:flex-start!important;flex-direction:column!important}}
@media(max-width:620px){.payroll-form-grid,.payroll-rules{grid-template-columns:1fr!important}.guide-actions{grid-template-areas:"pick pick" "close nav"!important}.guide-actions>span{gap:5px!important}.guide-actions button{padding:0 9px!important}.hr-payroll-link,.payroll-toolbar{padding:16px!important}}
