/* CMG: one persistent financial navigation, operational density, no new theme. */
.finance-navigation{position:sticky;top:var(--finance-topbar-height,58px);z-index:6;background:var(--bg);padding:4px 0 10px;border-bottom:1px solid var(--line);margin-bottom:12px}
.finance-navigation .finance-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;border:0;overflow:visible}
.finance-navigation .finance-tabs button{white-space:normal;min-height:48px;padding:8px;color:var(--text);border:1px solid var(--line);background:var(--white,#fff);border-radius:4px;font-size:13px}
.finance-navigation .finance-tabs button.active{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:inset 0 -3px 0 var(--turquoise)}
.finance-subnav,.finance-quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.finance-subnav .button{min-height:44px;font-size:13px;padding:8px 12px}
.finance-quick-actions{margin-bottom:18px}
.finance-navigation button:focus-visible,.bank-advanced summary:focus-visible,.treasury-week-detail summary:focus-visible{outline:3px solid var(--blue-dark);outline-offset:3px}
.finance-view .finance-masthead{margin-bottom:16px;padding:0;background:none;border:0;border-radius:0;color:var(--text)}
.finance-view .finance-masthead h2{font-size:26px;margin:4px 0;color:var(--text)}
.finance-view .finance-masthead p{color:var(--muted);font-size:13px;margin:4px 0}
.finance-view .finance-masthead .eyebrow{display:none}
.finance-view .finance-boundary{display:grid;gap:3px;padding:8px 0;background:none;border:0;color:var(--muted);font-size:12px}
.finance-view .finance-boundary span{color:var(--blue-dark);font-size:11px}
.finance-view .finance-boundary small{color:var(--muted)}
.finance-view .finance-masthead::before{content:none}
.treasury-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.treasury-month{border:1px solid var(--line);border-top:3px solid var(--turquoise);padding:16px;min-width:0;background:var(--white,#fff)}
.treasury-month h4{margin:0 0 4px;font-size:16px}
.treasury-month small{display:block;color:var(--muted);font-size:12px}
.treasury-month dl{margin:14px 0 0}.treasury-month dl>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0}
.treasury-month dt{font-size:13px}.treasury-month dd{margin:0;font-size:14px;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.treasury-month-close{border-top:1px solid var(--line);margin-top:8px}
.treasury-week-detail{margin-top:18px}.treasury-week-detail summary,.bank-advanced summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:700}
.treasury-week-detail .treasury-timeline{margin-top:12px}
.bank-selector{display:grid;gap:6px;max-width:360px;margin:0 0 16px;font-size:13px;font-weight:700}
.bank-selector select{min-height:48px;padding:8px 12px;border:1px solid var(--line-control);border-radius:4px;background:#fff;color:var(--text);font:inherit;font-size:16px}
.bank-advanced{margin-top:24px;border-top:1px solid var(--line);font-size:13px}
.bank-connection .button{margin:4px 8px 4px 0}
.treasury-note .button{flex-shrink:0}
.finance-view [hidden]{display:none!important}
@media(max-width:720px){
  /* En móvil las pestañas no se quedan fijas ocupando media pantalla (2026-10-12): se van con el desplazamiento. */
  .finance-navigation{position:static;top:auto}
  .finance-navigation .finance-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .finance-navigation .finance-tabs button{font-size:12px;padding:6px}
  .finance-subnav{gap:6px}.finance-subnav .button{flex:1 1 auto;padding:8px;font-size:12px}
  .treasury-months{grid-template-columns:1fr}.treasury-month dl>div{padding:6px 0}
  .bank-selector{max-width:none}
  .treasury-note{flex-wrap:wrap}.treasury-note .button{width:100%}
}
@media(max-height:500px){.finance-navigation{position:relative;top:auto}}
/* Tarjetas mensuales (2026-09-20): etiqueta arriba e importe debajo, sin recortes. */
.treasury-month dl>div{display:grid;grid-template-columns:1fr;gap:2px;padding:8px 0;border-top:1px solid var(--line)}
.treasury-month dl>div:first-child{border-top:0}
.treasury-month dt{font-size:12px;color:var(--muted)}
.treasury-month dd{text-align:left;font-size:16px;white-space:normal}
.treasury-month dd small{margin-top:2px;font-size:11px}
/* A partir de 1200 px las pestañas de Financiero van en una sola fila; si no caben, se desplazan (2026-10-13). */
@media(min-width:1200px){.finance-navigation .finance-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.finance-navigation .finance-tabs button{flex:1 0 auto;min-width:104px;white-space:nowrap;padding:8px 12px}}
/* Auditoría 02/11/2026 (U01): en el móvil la cabecera de Financiero cabe en una línea; la explicación y el
   aviso de «no es contabilidad fiscal» van en la ayuda «?» y la primera cifra se ve sin desplazar. En PC no cambia. */
.finance-masthead-title{display:flex;align-items:center;gap:4px}
.finance-masthead .finance-masthead-help{display:none}
@media(max-width:720px){
  .finance-view .finance-masthead{margin-bottom:6px;gap:0}
  .finance-view .finance-masthead h2{font-size:22px;margin:0}
  .finance-view .finance-masthead .finance-masthead-intro,.finance-view .finance-masthead .finance-boundary{display:none}
  .finance-masthead .finance-masthead-help{display:inline-flex}
  .finance-navigation .finance-tabs button{min-height:44px;padding:4px 6px}
}
@media(min-width:360px) and (max-width:720px){.finance-navigation .finance-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Composición (F02): «Ver más» y el CSV con todos los hechos, debajo de la tabla. */
.finance-facts-more{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.finance-facts-search{display:grid;gap:6px;margin:0 0 12px}
.finance-facts-search input{width:100%;min-height:40px;padding:8px 12px;border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;font-size:14px}
.finance-facts-search small{color:var(--muted);font-size:12.5px;min-height:1em}
/* Dirección (F01): hora a la que se calculó cada bloque. */
.management-stamp{display:block;margin:2px 0 6px;color:var(--muted);font-size:12px}
.management-toolbar .management-stamp,.income-intro .management-stamp{display:inline;margin:0}

/* Composición: modal con cabecera, total, buscador y pie fijos; solo el cuerpo se desplaza (06/11/2026).
   Seis columnas sin barra horizontal: fecha, documento, línea, importe, de dónde sale y acciones. */
dialog.finance-facts-dialog.dialog--lg{width:min(1240px,calc(100vw - 32px))}
dialog.finance-facts-dialog.dialog--lg>.dialog-card{display:flex;flex-direction:column;overflow:hidden;max-height:min(90dvh,calc(100dvh - 32px));padding:0}
dialog.finance-facts-dialog>.dialog-card>.finance-facts-head{position:static;flex:none;margin:0;padding:18px 22px 12px;border-bottom:0}
dialog.finance-facts-dialog>.dialog-card>.finance-facts-total{flex:none;margin:0;padding:0 22px 10px}
dialog.finance-facts-dialog>.dialog-card>.finance-facts-search{flex:none;margin:0;padding:0 22px 12px}
dialog.finance-facts-dialog>.dialog-card>#finance-facts-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:0 22px 14px;border-top:1px solid var(--line)}
dialog.finance-facts-dialog>.dialog-card>.finance-facts-foot{flex:none;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:12px 22px;border-top:1px solid var(--line);background:var(--surface)}
.finance-facts-foot small{flex:1 1 320px;color:var(--muted);font-size:12px}
dialog.finance-facts-dialog .finance-table-wrap{overflow:visible;border:0;border-radius:0;background:transparent}
dialog.finance-facts-dialog .finance-facts-table{width:100%;table-layout:fixed}
dialog.finance-facts-dialog .finance-facts-table thead th{position:sticky;top:0;z-index:2;padding:10px 8px;background:var(--surface);border-bottom:1px solid var(--line);text-align:left}
dialog.finance-facts-dialog .finance-facts-table thead th.ff-amount{text-align:right}
dialog.finance-facts-dialog .finance-facts-table td{padding:10px 8px;vertical-align:top;text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:13px}
dialog.finance-facts-dialog .finance-facts-table td.ff-amount{text-align:right;white-space:nowrap;font-weight:700}
.finance-facts-table .ff-date{width:88px}
.finance-facts-table .ff-line{width:14%}
.finance-facts-table .ff-amount{width:124px}
.finance-facts-table .ff-src{width:28%}
.finance-facts-table .ff-act{width:136px}
.finance-facts-table .finance-fact-doc{display:block;font-size:13px;font-weight:800}
.finance-facts-table .finance-fact-who{display:block;font-size:12.5px}
.finance-facts-table .finance-fact-origin,.finance-facts-table .finance-fact-note{display:block;margin-top:2px;color:var(--muted);font-size:12px}
.finance-facts-table .finance-fact-changed{display:block;margin-top:4px;color:var(--amber);font-size:12px;font-weight:700}
.finance-facts-table .ff-amount small{display:block;color:var(--muted);font-size:12px;font-weight:400}
.finance-facts-table .ff-src>small,.finance-facts-table .ff-src>.finance-source,.finance-facts-table .ff-src>.finance-flag{display:block;width:fit-content;max-width:100%;margin-top:4px}
.finance-facts-table .ff-src>.finance-flag{white-space:normal;text-align:left}
.finance-facts-table .ff-src>.finance-fact-kind{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:0;color:var(--muted);font-size:12px}
.finance-facts-table .ff-src>small{color:var(--muted);font-size:12px}
.finance-facts-table .ff-act .button{display:block;width:100%;margin:0 0 6px;padding:0 8px;font-size:12.5px}
.finance-facts-table .finance-breakdown{min-width:0}
.finance-facts-table .finance-breakdown dl div{grid-template-columns:1fr}
@media(max-width:720px){
  dialog.finance-facts-dialog>.dialog-card{height:100%;max-height:none;border-radius:0}
  dialog.finance-facts-dialog>.dialog-card>.finance-facts-head{padding:14px 16px 10px}
  dialog.finance-facts-dialog>.dialog-card>.finance-facts-total,dialog.finance-facts-dialog>.dialog-card>.finance-facts-search{padding-left:16px;padding-right:16px}
  dialog.finance-facts-dialog>.dialog-card>#finance-facts-body{padding:0 16px 12px}
  dialog.finance-facts-dialog>.dialog-card>.finance-facts-foot{padding:10px 16px max(10px,env(safe-area-inset-bottom))}
  .finance-facts-foot .button{width:100%}
  dialog.finance-facts-dialog .finance-facts-table,dialog.finance-facts-dialog .finance-facts-table tbody{display:block}
  dialog.finance-facts-dialog .finance-facts-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  dialog.finance-facts-dialog .finance-facts-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px 0;border-top:1px solid var(--line-inner)}
  dialog.finance-facts-dialog .finance-facts-table td{display:block;width:auto;padding:0;border-top:0}
  .finance-facts-table .ff-doc{grid-column:1;grid-row:1}
  .finance-facts-table .ff-amount{grid-column:2;grid-row:1}
  .finance-facts-table .ff-date{grid-column:1;grid-row:2;color:var(--muted)}
  .finance-facts-table .ff-line{grid-column:1/-1;grid-row:3}
  .finance-facts-table .ff-src{grid-column:1/-1;grid-row:4}
  .finance-facts-table .ff-act{grid-column:1/-1;grid-row:5;display:flex;flex-wrap:wrap;gap:8px}
  .finance-facts-table .ff-act .button{width:auto;margin:0}
  .finance-facts-table .ff-src>.finance-fact-kind{display:block;-webkit-line-clamp:unset}
}
