/* Facturas recibidas: administración web, diseño compacto coherente con Gastos. */
.fast547 .ri-panel{display:grid;gap:14px;min-width:0}
.fast547 .ri-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.fast547 .ri-heading h3{font-size:20px;margin:4px 0}
.fast547 .ri-heading p{color:#687e91;font-size:13px;margin:3px 0}
.fast547 .ri-tag{background:#edf4fb;color:#285477;font-weight:600;padding:5px 10px;font-size:12px;border-radius:15px}
.fast547 .ri-import{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px;border-radius:12px;background:var(--surface-secondary,#f4f7fb)}
.fast547 .ri-picker{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:13px;font-weight:600;min-width:0}
.fast547 .ri-picker input{font-size:13px;max-width:100%;width:250px}
.fast547 #riStatus{flex-basis:100%;font-size:12px;margin:1px 0}
.fast547 .ri-error{color:#aa372c}
.fast547 .ri-ok{color:#347750}
.fast547 .ri-info{display:grid;gap:3px;padding:11px 13px;background:#f1f6fc;border-left:3px solid #88b5dd;border-radius:6px}
.fast547 .ri-info b{font-size:13px;color:#2c5d82}
.fast547 .ri-info span{font-size:12px;color:#59758e}
.fast547 .ri-counts{display:flex;flex-wrap:wrap;gap:18px;color:#506679;font-size:13px;padding:8px 3px}
.fast547 .ri-counts b{font-size:17px;margin-right:3px;color:#253c54}
.fast547 .ri-list{border-top:1px solid #e4ebf3}
.fast547 .ri-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,.7fr) auto;gap:12px;align-items:center;border-bottom:1px solid #e4ebf3;padding:11px 4px}
.fast547 .ri-meta,.fast547 .ri-amount{display:grid;gap:3px;min-width:0}
.fast547 .ri-meta b{font-size:13px}
.fast547 .ri-meta small,.fast547 .ri-amount small{color:#748598;font-size:11px;overflow-wrap:anywhere}
.fast547 .ri-code{font-family:monospace;font-size:10px!important}
.fast547 .ri-amount b{font-size:14px}
.fast547 .ri-state{background:#f4efe4;color:#946b29;border-radius:9px;padding:5px 8px;font-size:11px;font-weight:600}
.fast547 .ri-actions{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:5px;grid-column:1/-1}
.fast547 .ri-actions button{font-size:12px;padding:7px 9px}
.fast547 .ri-empty{padding:24px 8px;color:#718295;font-size:14px;text-align:center}
.fast547 .ri-foot{font-size:12px;color:#687d8e;margin:0}
@media(max-width:720px){.fast547 .ri-row{grid-template-columns:minmax(0,1fr) auto}.fast547 .ri-state{grid-column:1/-1;justify-self:start}.fast547 .ri-amount{text-align:right}.fast547 .ri-picker input{width:100%}}

.fast547 .f-controls[hidden],.fast547 .f-export[hidden]{display:none!important}
.fast547 .f-toolbar .f-view:has([data-tab="received"]){flex-wrap:wrap;gap:5px}

.fast547 .ri-mailbox{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.fast547 .ri-mailbox[hidden]{display:none!important}
.fast547 .ri-mailbox code{overflow-wrap:anywhere;font-size:12px;color:#164a75}
.fast547 .ri-info small{font-size:11px;color:#607b90}

/* Gmail reenviado, interfaz independiente por empresa */
.fast547 .ri-gmail-setup{display:grid;gap:7px;margin-top:10px;border-top:1px solid #dbe6f2;padding-top:10px}
.fast547 .ri-gmail-setup p{margin:2px 0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.fast547 .ri-gmail-setup button{justify-self:start}
.fast547 .ri-gmail-setup a{font-weight:650;font-size:13px}
.fast547 #riGmailSteps{display:grid;gap:8px;margin-top:8px;border-radius:9px;padding:12px;background:rgba(255,255,255,.8)}
.fast547 #riGmailSteps[hidden],.fast547 #riGmailVerification[hidden],.fast547 #riMailboxActivate[hidden]{display:none!important}
.fast547 #riGmailVerification{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#246b56;font-size:13px}
.fast547 #riGmailCode{font-family:monospace;font-size:18px;letter-spacing:1px}

/* Consulta por receptor y rango, solo sobre XML de la empresa actual. */
.fast547 .ri-reconcile{border:1px solid #dfe8f3;border-radius:12px;padding:12px;background:#f8fbff;display:grid;gap:10px;min-width:0}
.fast547 .ri-reconcile-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.fast547 .ri-reconcile-head strong{font-size:14px;color:#234969}
.fast547 .ri-reconcile-head a{font-size:12px;font-weight:650;color:#0877be}
.fast547 .ri-reconcile-fields{display:flex;flex-wrap:wrap;align-items:end;gap:9px}
.fast547 .ri-reconcile-fields label{display:grid;gap:3px;font-size:12px;color:#536d84;min-width:130px;flex:1 1 130px}
.fast547 .ri-reconcile-fields input{width:100%;height:38px;box-sizing:border-box;border:1px solid #d9e4f0;border-radius:8px;padding:5px 9px;font:inherit;background:white;color:#253c52}
.fast547 .ri-reconcile-fields button{height:38px}
.fast547 .ri-disclaimer{margin:0;font-size:11px;color:#60778e;line-height:1.5}


/* v12.8.945 — lectura y configuración independientes, sin modificar el backend fiscal. */
.fast547 .ri-panel{gap:12px}
.fast547 .ri-tabs{display:flex;align-items:stretch;gap:16px;border-bottom:1px solid #dfe8f2;overflow-x:auto}
.fast547 .ri-tabs .ri-tab{appearance:none;border:0;border-bottom:3px solid transparent;background:transparent;color:#60758a;font:inherit;font-size:13px;font-weight:700;padding:11px 5px 9px;cursor:pointer;white-space:nowrap;border-radius:0}
.fast547 .ri-tabs .ri-tab.active{color:#057cbc;border-color:#087fc5}
.fast547 .ri-tabs .ri-tab:focus-visible,.fast547 .ri-setup-options button:focus-visible{outline:2px solid #087fc5;outline-offset:2px}
.fast547 .ri-screen:not([hidden]){display:grid;gap:12px;min-width:0}
.fast547 .ri-screen[hidden],.fast547 .ri-setup-view[hidden]{display:none!important}
.fast547 #riStatus{margin:0;font-size:12px;line-height:1.5}
.fast547 #riStatus:empty{display:none}
.fast547 .ri-settings-head{display:grid;gap:4px}
.fast547 .ri-settings-head strong{font-size:15px;color:#253c54}
.fast547 .ri-settings-head p{color:#657b8f;font-size:12px;margin:0}
.fast547 .ri-mailbox-title{display:grid;gap:4px}
.fast547 .ri-mailbox-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}
.fast547 .ri-setup-options{display:flex;flex-wrap:wrap;gap:7px;background:#f1f5f9;padding:4px;border-radius:11px;width:fit-content;max-width:100%}
.fast547 .ri-setup-options .ri-choice{border:0;border-radius:8px;background:transparent;color:#5c7288;padding:9px 14px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.fast547 .ri-setup-options .ri-choice.active{background:#087fc5;color:#fff}
.fast547 .ri-setup-view:not([hidden]){display:grid;gap:8px;background:#f8fbff;border:1px solid #e1ebf4;border-radius:10px;padding:13px}
.fast547 .ri-setup-view>b{font-size:13px;color:#234969}
.fast547 .ri-setup-view>p{margin:0;color:#5f7386;font-size:12px;line-height:1.5}
.fast547 .ri-setup-view .ri-gmail-setup{border:0;margin:0;padding:0}
.fast547 .ri-setup-view .ri-gmail-setup button{justify-self:start}
.fast547 .ri-setup-note{background:#edf4fa;border-radius:8px;padding:10px}
@media(max-width:720px){.fast547 .ri-tabs{gap:12px}.fast547 .ri-settings-head{padding-top:4px}.fast547 .ri-setup-options{width:100%}.fast547 .ri-setup-options button{flex:1}}

/* v12.8.946: remove repeated tab, keep setup beside eyebrow, make filters the primary toolbar. */
.fast547 .ri-heading{align-items:flex-start}
.fast547 .ri-heading .ri-heading-copy{min-width:0;width:100%}
.fast547 .ri-heading-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fast547 .ri-heading-top .eyebrow{margin:0}
.fast547 .ri-heading .ri-settings-toggle{border:1px solid #d6e4f0;border-radius:8px;padding:6px 10px;background:#f4f8fc;color:#1f6797;cursor:pointer;font:inherit;font-size:12px;font-weight:700;line-height:1.2}
.fast547 .ri-heading .ri-settings-toggle.active{background:#087fc5;border-color:#087fc5;color:white}
.fast547 .ri-heading .ri-settings-toggle:focus-visible,.fast547 .ri-reconcile-actions button:focus-visible{outline:2px solid #087fc5;outline-offset:2px}
.fast547 .ri-reconcile{gap:10px;padding:12px 14px}
.fast547 .ri-reconcile-head{gap:10px}
.fast547 .ri-reconcile-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}
.fast547 .ri-reconcile-actions button{min-height:34px;font:inherit;font-size:12px;font-weight:650;padding:7px 11px;border-radius:8px;cursor:pointer}
.fast547 .ri-reconcile-actions .ri-add-file{background:#087fc5;color:#fff;border:1px solid #087fc5}
.fast547 .ri-reconcile-actions .ri-add-file:hover{background:#066ba7}
.fast547 .ri-reconcile-actions .ri-file-input[hidden]{display:none!important}
.fast547 .ri-reconcile-actions a{font-size:12px;font-weight:600;color:#4e718b}
.fast547 .ri-reconcile-fields input,.fast547 .ri-reconcile-fields select{width:100%;height:38px;box-sizing:border-box;border:1px solid #d9e4f0;border-radius:8px;padding:5px 9px;font:inherit;background:white;color:#253c52}
@media(max-width:780px){
 .fast547 .ri-reconcile-head{align-items:stretch}
 .fast547 .ri-reconcile-actions{justify-content:flex-start}
 .fast547 .ri-reconcile-actions .ri-add-file{flex:1 1 180px}
 .fast547 .ri-reconcile-actions a{flex:1 1 100%;text-align:left}
}

/* v12.8.947: One-line heading: category, XML description, then settings. */
.fast547 .ri-heading-top{display:flex;align-items:center;column-gap:12px;row-gap:7px;flex-wrap:wrap}
.fast547 .ri-heading-description{color:#687e91;font-size:12px;font-weight:500;line-height:1.35}
.fast547 .ri-heading-top .ri-settings-toggle{flex:0 0 auto}
@media (max-width:720px){.fast547 .ri-heading-top{column-gap:9px}.fast547 .ri-heading-description{font-size:11px}}

/* v12.8.952 — filtros primero, recepción y acciones en una fila inferior. */
.fast547 .ri-reconcile[hidden],.fast547 .ri-heading-actions button[hidden]{display:none!important}
.fast547 .ri-filter-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.fast547 .ri-filter-tools .soft{min-height:33px;padding:6px 10px;font-size:12px}
.fast547 .ri-heading{margin:0;padding:3px 2px}
.fast547 .ri-heading .ri-heading-top{display:flex;align-items:center;flex-wrap:wrap;width:100%;gap:8px 12px}
.fast547 .ri-heading .ri-heading-top .eyebrow{flex:0 0 auto;white-space:nowrap}
.fast547 .ri-heading .ri-heading-description{flex:1 1 190px;min-width:0;font-size:12px;line-height:1.35}
.fast547 .ri-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 1 auto;margin-left:auto;min-width:0}
.fast547 .ri-heading-actions .ri-add-file{background:#087fc5;color:#fff;border:1px solid #087fc5;border-radius:8px;padding:8px 12px;white-space:nowrap;min-height:34px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.fast547 .ri-heading-actions .ri-add-file:hover{background:#066ba7}
.fast547 .ri-heading-actions .ri-settings-toggle{white-space:nowrap;min-height:34px;box-sizing:border-box}
.fast547 .ri-heading-actions .ri-file-input[hidden]{display:none!important}
@media(max-width:1050px){
 .fast547 .ri-heading .ri-heading-description{flex-basis:210px}
 .fast547 .ri-heading-actions{margin-left:0}
}
@media(max-width:720px){
 .fast547 .ri-reconcile-head{align-items:flex-start}
 .fast547 .ri-filter-tools{justify-content:flex-start}
 .fast547 .ri-heading .ri-heading-top{align-items:flex-start;gap:8px}
 .fast547 .ri-heading .ri-heading-description{flex:1 1 180px}
 .fast547 .ri-heading-actions{flex:1 1 100%;justify-content:flex-start}
 .fast547 .ri-heading-actions .ri-add-file{white-space:normal}
}


/* v12.8.953: cabecera única para filtrar, recepción contable y acciones XML. */
.fast547 .ri-reconcile{gap:11px}
.fast547 .ri-reconcile-head{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px 13px;min-width:0}
.fast547 .ri-reconcile-head > strong{flex:0 0 auto;white-space:nowrap;font-size:14px}
.fast547 .ri-header-meta{display:flex;align-items:center;flex:1 1 280px;min-width:0;gap:8px 10px;flex-wrap:wrap}
.fast547 .ri-header-meta .eyebrow{flex:0 0 auto;margin:0;color:#496d89;font-size:10px;font-weight:750;letter-spacing:.07em;white-space:nowrap}
.fast547 .ri-header-meta .ri-heading-description{min-width:0;font-size:11px;color:#60788d;line-height:1.35}
.fast547 .ri-reconcile-head .ri-heading-actions{margin-left:auto;flex:0 0 auto;display:flex;gap:8px;align-items:center}
.fast547 .ri-reconcile-head .ri-settings-toggle{border:1px solid #d6e4f0;border-radius:8px;padding:7px 11px;background:#f4f8fc;color:#1f6797;cursor:pointer;font:inherit;font-size:12px;font-weight:700;min-height:34px;white-space:nowrap}
.fast547 .ri-reconcile-head .ri-settings-toggle.active{background:#087fc5;border-color:#087fc5;color:#fff}
.fast547 .ri-reconcile-head .ri-settings-toggle:focus-visible,.fast547 .ri-reconcile-head .ri-add-file:focus-visible{outline:2px solid #087fc5;outline-offset:2px}
.fast547 .ri-reconcile-fields{gap:8px}
.fast547 .ri-reconcile-fields[hidden]{display:none!important}
.fast547 .ri-reconcile-fields .ri-filter-tools{display:flex;align-items:center;gap:8px;flex:0 1 auto;min-height:38px;flex-wrap:wrap}
.fast547 .ri-reconcile-fields .ri-filter-tools .soft{min-height:35px}
.fast547 .ri-reconcile-fields .ri-filter-tools a{white-space:nowrap}
@media(max-width:1100px){
 .fast547 .ri-reconcile-head .ri-header-meta{flex-basis:250px}
 .fast547 .ri-reconcile-head .ri-heading-actions{margin-left:0}
}
@media(max-width:720px){
 .fast547 .ri-reconcile-head{align-items:flex-start;gap:10px}
 .fast547 .ri-header-meta{flex-basis:100%}
 .fast547 .ri-reconcile-head .ri-heading-actions{flex:1 1 100%;justify-content:flex-start}
 .fast547 .ri-reconcile-head .ri-add-file{white-space:normal}
 .fast547 .ri-reconcile-fields .ri-filter-tools{flex:1 1 100%}
}

/* Estado revisado en verde, pendiente sin cambios. */
.fast547 .ri-state.ri-state-reviewed{background:#e7f6ec;color:#176b39;border:1px solid #a8dfb8}
