/* Pirela 1.0.114 · espacio de trabajo, campos con icono y movimiento discreto. */
@layer pirela-workspace {
body{--ws-canvas:#fff;--ws-rail:#f6f7fb;--ws-soft:#f5f6f8;--ws-ink:#323338;--ws-muted:#676879;--ws-line:#d5d8e2;--ws-control:#a6adc0;--ws-blue:#006fd6;--ws-blue-hover:#0059ad;--ws-selected:#dceeff;--ws-hover:#eef5ff;--ws-green:#007a49;--ws-amber:#ffcb66;--ws-red:#c83851;--ws-purple:#7554b7;--ws-slate:#697386;background:var(--ws-rail)!important}
body.dark-mode{--ws-canvas:#22252f;--ws-rail:#191c25;--ws-soft:#2c303d;--ws-ink:#f0f1f5;--ws-muted:#b6bdce;--ws-line:#485065;--ws-control:#747e96;--ws-blue:#006fd6;--ws-blue-hover:#0059ad;--ws-selected:#253b5a;--ws-hover:#2b3346}
#appView{
  --pg-primary:var(--ws-blue)!important;--pg-primary-hover:var(--ws-blue-hover)!important;--pg-primary-soft:var(--ws-selected)!important;
  --pg-accent:var(--ws-blue)!important;--pg-accent-hover:var(--ws-blue-hover)!important;--pg-accent-soft:var(--ws-selected)!important;
  --pg-bg:var(--ws-canvas)!important;--pg-surface:var(--ws-canvas)!important;--pg-surface-muted:var(--ws-soft)!important;
  --pg-border:var(--ws-line)!important;--pg-border-strong:var(--ws-control)!important;--pg-text:var(--ws-ink)!important;--pg-text-muted:var(--ws-muted)!important;
  --pg-success:var(--ws-green)!important;--pg-success-soft:#e4f4ec!important;--pg-danger:var(--ws-red)!important;--pg-danger-soft:#fff0f2!important;
  --pg-warning:#805000!important;--pg-warning-soft:#fff3d8!important;--pg-info:var(--ws-blue)!important;--pg-info-soft:var(--ws-selected)!important;
  --pg-sidebar-expanded:248px!important;--pg-sidebar-compact:64px!important;--pg-shell-bg:var(--ws-canvas)!important;
  --pg-nav-neutral:var(--ws-muted)!important;--pg-nav-icon-bg:transparent!important;--pg-nav-hover:var(--ws-hover)!important;--pg-nav-active:var(--ws-blue)!important;--pg-nav-active-bg:var(--ws-selected)!important;
  --project-ink:var(--ws-ink)!important;--project-muted:var(--ws-muted)!important;--project-line:var(--ws-line)!important;--project-blue:var(--ws-blue)!important;--project-blue-soft:var(--ws-selected)!important;
  --op-ink:var(--ws-ink)!important;--op-muted:var(--ws-muted)!important;--op-blue:var(--ws-blue)!important;--op-blue-soft:var(--ws-selected)!important;--op-green:var(--ws-green)!important;--op-green-soft:#e4f4ec!important;
  color:var(--ws-ink)!important;background:var(--ws-canvas)!important;font-family:Inter,"Segoe UI",system-ui,sans-serif!important;font-size:14px!important;line-height:1.45!important;
}
#appView *{box-sizing:border-box}
#appView :where(h1,h2,h3,h4,strong,b,p,span,small,label,i,em){color:inherit!important;text-shadow:none!important}
#appView :where(strong,b){font-weight:600!important}
#appView :where(h1,h2,h3,h4){text-transform:none!important;letter-spacing:-.025em!important}
#appView :where(h1,.page-title){font-size:28px!important;line-height:1.25!important;font-weight:650!important}
#appView :where(h2,.section-title){font-size:20px!important;line-height:1.35!important;font-weight:600!important}
#appView :where(h3,.card-title){font-size:16px!important;line-height:1.4!important;font-weight:600!important}
#appView :where(p,td,.table-cell){font-size:14px!important;line-height:1.5!important}
#appView :where(small,.eyebrow,.field-label,label>span){font-size:12px!important;line-height:1.45!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
#appView :where(a){color:var(--ws-blue)!important}
#appView :where(button,input,select,textarea){font-family:inherit!important;font-size:14px!important;font-weight:400!important}
#appView :where(button,a[class*="button"],.file-upload-button){min-height:36px!important;border:1px solid var(--ws-line)!important;border-radius:4px!important;color:var(--ws-ink)!important;background:var(--ws-canvas)!important;box-shadow:none!important;text-shadow:none!important;letter-spacing:0!important}
#appView :where(button,a[class*="button"]):hover{background:var(--ws-hover)!important;border-color:var(--ws-control)!important}
#appView :where(button,input,select,textarea,a,summary,[tabindex]):focus-visible{outline:2px solid var(--ws-blue)!important;outline-offset:2px!important}
#appView :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){min-height:38px!important;padding:8px 11px!important;border:1px solid var(--ws-control)!important;border-radius:4px!important;color:var(--ws-ink)!important;background:var(--ws-canvas)!important;box-shadow:none!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important}
#appView :where(input,textarea)::placeholder{color:var(--ws-muted)!important;opacity:1!important}
#appView :where(input[type="checkbox"],input[type="radio"]){accent-color:var(--ws-blue)!important}
#appView :where(button:disabled,input:disabled,select:disabled,textarea:disabled){opacity:.55!important;cursor:not-allowed!important}
#appView :where(.primary-button,.create-button,.success-button,button[type="submit"],.file-upload-button){color:#fff!important;background:var(--ws-blue)!important;border-color:var(--ws-blue)!important;font-weight:500!important}
#appView :where(.primary-button,.create-button,button[type="submit"]):hover{background:var(--ws-blue-hover)!important;border-color:var(--ws-blue-hover)!important}
#appView :where(.module-view){width:100%!important;max-width:none!important;margin:0!important;padding:0!important;color:var(--ws-ink)!important}
#appView>.workspace{width:100%!important;max-width:none!important;margin:0!important;padding:24px 28px 40px!important;background:var(--ws-canvas)!important}
#appView.crm-workspace-mode>.workspace{width:100%!important;max-width:none!important;min-height:100dvh!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important}
#appView :where(.workspace-heading,.page-heading){margin:0 0 20px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
#appView :where(.users-panel,.budgets-panel,.module-filter-panel,.module-toolbar,.project-toolbar,.projects-directory,.budget-approval-queue,.budget-detail-card,.client-quote-module,.project-form-section,.project-documents-panel,.team-directory,.company-team-panel,.report-card,.report-kpi,.home-kpi-card,.home-panel){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important;box-shadow:none!important;border-radius:6px!important}
#appView :where(.users-panel,.budgets-panel,.projects-directory,.team-directory){padding:0!important;border:0!important}
#appView :where([class*="heading"],[class*="header"],.module-filter-footer,.budget-header-grid,.form-grid){background:transparent!important;color:var(--ws-ink)!important;box-shadow:none!important;border-color:var(--ws-line)!important}
#appView :where(.module-toolbar,.module-filter-panel,.project-toolbar){padding:14px 0!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;border-radius:0!important;gap:12px!important}
#appView :where(.team-user-row,.company-directory-row,.provider-card){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-left:3px solid var(--ws-blue)!important;border-radius:4px!important;box-shadow:none!important}
#appView :where(.team-user-row strong,.provider-card strong){font-size:14px!important;font-weight:500!important}
#appView :where(.team-user-row small,.team-user-identity span,.team-user-meta){font-size:12px!important;color:var(--ws-muted)!important}
#appView :where(.module-filter-grid){gap:14px!important}
#appView :where(.module-search>span,.module-filter-grid label>span,.eyebrow,.form-helper){color:var(--ws-muted)!important}
#appView :where(.empty-state,.project-empty-state,.operational-project-empty,.home-empty,.team-empty-state){background:var(--ws-canvas)!important;color:var(--ws-muted)!important;border-color:var(--ws-line)!important;box-shadow:none!important;font-size:14px!important}
/* Navegación etiquetada y barra superior compacta. */
#appView #mainNav{background:var(--ws-rail)!important;color:var(--ws-ink)!important;border-right:1px solid var(--ws-line)!important;box-shadow:none!important;padding:16px 12px!important}
#appView #mainNav .sidebar-brand{background:transparent!important;border:0!important;padding:4px 6px 18px!important}
#appView #mainNav .sidebar-brand img{width:34px!important;height:34px!important;border-radius:7px!important}
#appView #mainNav .sidebar-brand strong{font-size:14px!important;font-weight:600!important}
#appView #mainNav .sidebar-brand>div{display:grid!important}
#appView #mainNav .sidebar-brand span{font-size:11px!important;color:var(--ws-muted)!important}
#appView #mainNav .sidebar-nav-group{margin:0 0 17px!important;padding:0!important;border:0!important;background:transparent!important}
#appView #mainNav .sidebar-nav-label{display:block!important;padding:0 8px!important;margin:0 0 7px!important;font-size:11px!important;line-height:1.4!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;color:var(--ws-muted)!important}
#appView #mainNav .nav-item{display:flex!important;align-items:center!important;gap:9px!important;min-height:35px!important;margin:2px 0!important;padding:7px 9px!important;border:0!important;border-radius:4px!important;background:transparent!important;color:var(--ws-ink)!important;font-size:13px!important;font-weight:400!important;box-shadow:none!important}
#appView #mainNav .nav-item i{width:21px!important;min-width:21px!important;height:21px!important;display:grid!important;place-items:center!important;padding:0!important;border-radius:0!important;background:transparent!important;color:var(--ws-muted)!important;font-size:17px!important}
#appView #mainNav .nav-item span{font-size:13px!important;font-weight:400!important}
#appView #mainNav .nav-item:hover{background:var(--ws-hover)!important}
#appView #mainNav .nav-item.active{background:var(--ws-selected)!important;color:var(--ws-ink)!important;box-shadow:none!important}
#appView #mainNav .nav-item.active i{color:var(--ws-blue)!important}
#appView.sidebar-collapsed #mainNav :where(.sidebar-nav-label,.sidebar-brand>div,.nav-item span){display:none!important}
#appView.sidebar-collapsed #mainNav .nav-item{justify-content:center!important;padding:7px!important}
#appView :where(.sidebar-toggle,.sidebar-edge-toggle){width:29px!important;height:29px!important;min-height:29px!important;background:var(--ws-canvas)!important;color:var(--ws-muted)!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;box-shadow:none!important}
#appView>.topbar{min-height:64px!important;background:var(--ws-rail)!important;border-bottom:1px solid var(--ws-line)!important;box-shadow:none!important}
#appView .topbar .global-search{background:var(--ws-soft)!important;border:1px solid transparent!important;border-radius:20px!important;box-shadow:none!important}
#appView .topbar .global-search input{min-height:36px!important;background:transparent!important;border:0!important;font-size:13px!important}
#appView .topbar .global-search kbd{font-size:10px!important;color:var(--ws-muted)!important;border:0!important;background:transparent!important}
#appView :where(.company-session-trigger,.topbar-tools>button){background:transparent!important;border:0!important;box-shadow:none!important;border-radius:5px!important}
#appView .company-session-copy strong{font-size:13px!important;font-weight:600!important}
#appView .company-session-copy small{font-size:10px!important;color:var(--ws-muted)!important}
#appView :where(.company-session-menu,.account-center-menu,.global-results,.dropdown-menu,.context-menu,.popover){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-radius:8px!important;box-shadow:0 8px 30px #1f243018!important}
#appView .account-menu-header{background:var(--ws-soft)!important;color:var(--ws-ink)!important;border:0!important;border-radius:6px!important}
#appView .account-menu-header::after{display:none!important}
#appView .account-center-menu button>i:first-child{background:transparent!important;color:var(--ws-muted)!important}
/* Tablas de trabajo: líneas finas y color limitado a estados. */
#appView :where(.budgets-table-shell,.resizable-grid-table,.purchase-table,.budget-table){background:var(--ws-canvas)!important;border-color:var(--ws-line)!important;border-radius:4px!important;box-shadow:none!important;overflow:auto}
#appView :where(.purchase-table-head,.budget-table-head,.budget-documents-head,thead){min-height:38px!important;background:var(--ws-canvas)!important;color:var(--ws-muted)!important;border-color:var(--ws-line)!important;font-weight:500!important}
#appView :where(th,.grid-th,.purchase-table-head>span,.budget-table-head>span){font-size:12px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;line-height:1.4!important}
#appView :where(.purchase-table-head>span,.budget-table-head>span){border-right:1px solid var(--ws-line)!important}
#appView :where(.sortable-column){border:0!important;background:transparent!important;padding:4px!important;min-height:28px!important;font-size:12px!important;font-weight:500!important}
#appView :where(.purchase-table-row,.budget-table-row,.project-list-card,.row-state-paid,.row-state-waiting,.row-state-approved,.row-state-rejected){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important;box-shadow:none!important}
#appView :where(.purchase-table-row,.budget-table-row){min-height:54px!important;border-bottom:1px solid var(--ws-line)!important}
#appView :where(.purchase-table-row>span,.budget-table-row>span){padding:10px 9px!important;font-size:13px!important;line-height:1.45!important;border-right:1px solid var(--ws-line)!important}
#appView :where(.is-clickable,.project-list-card,[data-payable-ledger-id]):hover{background:var(--ws-hover)!important}
#appView :where(.purchase-section){background:var(--ws-canvas)!important;border:0!important;border-radius:0!important;margin:24px 0!important;padding:0!important;box-shadow:none!important}
#appView .purchase-section>h2{display:flex!important;align-items:center!important;gap:10px!important;padding:9px 0!important;margin:0 0 7px!important;background:transparent!important;color:var(--ws-blue)!important;border:0!important;font-size:18px!important;font-weight:500!important}
#appView .purchase-section>h2::before{background:var(--ws-blue)!important;box-shadow:none!important}
#appView .purchase-section[data-payable-section$="-paid"]>h2{color:var(--ws-green)!important}
#appView .purchase-section[data-payable-section$="-paid"]>h2::before{background:var(--ws-green)!important}
#appView :where(.table-pagination){display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;padding:12px 0!important;border:0!important;background:var(--ws-canvas)!important;font-size:12px!important}
/* Formularios sin bloques anidados; las ventanas mantienen fondo opaco. */
#appView :where(.modal){background:rgba(20,25,40,.35)!important}
#appView :where(.modal-panel,dialog,.dialog-panel){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-radius:10px!important;box-shadow:0 18px 70px #17203333!important}
#appView dialog::backdrop{background:rgba(20,25,40,.35)!important}
#appView .modal-panel :where(.modal-heading,.modal-actions){background:var(--ws-canvas)!important;border-color:var(--ws-line)!important;box-shadow:none!important}
#appView .modal-panel :where(.team-form-section,.user-form-section){background:var(--ws-canvas)!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;border-radius:0!important;box-shadow:none!important}
#appView #presupuestoModule #budgetForm{background:var(--ws-canvas)!important;border:0!important;border-radius:0!important;box-shadow:none!important;gap:22px!important}
#appView #presupuestoModule :where(.project-form-section,.budget-costs-panel,.project-form-heading){background:var(--ws-canvas)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
#appView #presupuestoModule :where(.project-form-section-heading,.project-section-heading,.project-list-heading){background:transparent!important;color:var(--ws-ink)!important;border:0!important;box-shadow:none!important}
#appView #presupuestoModule .budget-approval-queue{border:0!important;border-left:4px solid var(--ws-blue)!important;border-radius:4px!important;padding:4px 0 4px 16px!important;margin:24px 0!important}
#appView #presupuestoModule .budget-approval-queue .project-list-heading{background:transparent!important;border:0!important;color:var(--ws-blue)!important;padding:8px 0!important}
#appView #presupuestoModule .project-list-card{border:1px solid var(--ws-line)!important;border-left:4px solid var(--ws-blue)!important;border-radius:4px!important;padding:12px!important;margin-bottom:8px!important}
#appView #presupuestoModule .project-list-card :where(small,span){font-size:12px!important}
#appView #presupuestoModule .project-list-card strong{font-size:15px!important;font-weight:600!important}
#appView #presupuestoModule #budgetForm>.modal-actions{background:var(--ws-canvas)!important;backdrop-filter:none!important;border-color:var(--ws-line)!important;box-shadow:none!important}
/* Inicio */
#appView #inicioModule.company-superadmin-home .home-command{align-content:start!important;min-height:calc(100dvh - 130px)!important}
#appView #inicioModule .home-business-units{padding:0!important}
#appView #inicioModule .workspace-home-heading{margin:0 0 24px!important;background:transparent!important}
#appView #inicioModule .workspace-home-heading p{margin:0 0 5px!important;color:var(--ws-muted)!important;font-size:12px!important}
#appView #inicioModule .workspace-home-heading h1{margin:0!important}
#appView #inicioModule .home-business-units-grid{gap:18px!important}
#appView #inicioModule .home-business-card{--unit-a:var(--ws-canvas)!important;--unit-b:var(--ws-canvas)!important;--unit-ink:var(--ws-ink)!important;min-height:225px!important;padding:24px!important;gap:24px!important;background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-top:4px solid var(--ws-blue)!important;border-radius:7px!important;box-shadow:none!important;transform:none!important;cursor:default!important}
#appView #inicioModule .home-business-card.is-media{border-top-color:var(--ws-purple)!important}
#appView #inicioModule .home-business-card.is-crm{border-top-color:var(--ws-green)!important;cursor:pointer!important}
#appView #inicioModule .home-business-card:hover{background:var(--ws-soft)!important;transform:none!important;box-shadow:none!important}
#appView #inicioModule .home-business-card :where(h2,h3,p,span,i){color:var(--ws-ink)!important;background:transparent!important}
#appView #inicioModule .home-business-card h3{font-size:22px!important;font-weight:600!important}
#appView #inicioModule .home-business-card p{font-size:13px!important;color:var(--ws-muted)!important;opacity:1!important}
#appView #inicioModule .home-business-card-icon{width:42px!important;height:42px!important;border:0!important;border-radius:8px!important;background:var(--ws-selected)!important;box-shadow:none!important;backdrop-filter:none!important}
#appView #inicioModule .home-business-card-icon i{color:var(--ws-blue)!important;font-size:22px!important}
#appView #inicioModule :where(.home-business-card-orbit,.home-business-card-accent){display:none!important}
#appView #inicioModule .home-business-card::before,#appView #inicioModule .home-business-card::after{display:none!important}
#appView #inicioModule .home-business-card-monogram{font-size:54px!important;opacity:.08!important;transform:none!important}
/* Proyectos: máximo tres tarjetas por fila. */
#appView #proyectosModule{max-width:1500px!important;margin:auto!important;padding-inline:24px!important}
#appView #proyectosModule .operational-projects-shell{padding:0!important;background:transparent!important}
#appView #proyectosModule .operational-projects-toolbar{display:flex!important;align-items:end!important;gap:16px!important;margin:22px 0!important;background:var(--ws-canvas)!important;border:1px solid var(--ws-line)!important;padding:20px!important;border-radius:6px!important}
#appView #proyectosModule .operational-projects-toolbar label{width:min(100%,560px)!important}
#appView #proyectosModule .operational-projects-toolbar button{margin-left:auto!important}
#appView #proyectosModule .operational-projects-summary{display:none!important}
#appView #proyectosModule .operational-projects-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
#appView #proyectosModule .operational-project-card{display:flex!important;flex-direction:column!important;padding:20px!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;cursor:pointer!important;transition:transform .16s,border-color .16s!important}
#appView #proyectosModule .operational-project-card:hover{border-color:#828282!important;transform:translateY(-2px)!important}
#appView #proyectosModule .operational-project-card>header{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;background:transparent!important}
#appView #proyectosModule .operational-project-card header small{font-size:12px!important;color:var(--ws-muted)!important;letter-spacing:0!important;text-transform:none!important}
#appView #proyectosModule .operational-project-card header h2{font-size:19px!important;line-height:1.4!important;margin-top:5px!important;overflow-wrap:anywhere!important}
#appView #proyectosModule .operational-project-card header p{font-size:12px!important;color:var(--ws-muted)!important;margin-top:8px!important}
#appView #proyectosModule .operational-project-meta{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:auto!important;padding:22px 0 18px!important}
#appView #proyectosModule .operational-project-meta small{font-size:12px!important;color:var(--ws-muted)!important;text-transform:none!important;letter-spacing:0!important}
#appView #proyectosModule .operational-project-meta strong{font-size:17px!important}
#appView #proyectosModule .operational-project-card footer{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;border-top:1px solid var(--ws-line)!important;padding-top:14px!important;font-size:13px!important}
#appView #proyectosModule .operational-project-status{font-size:12px!important}
#appView #proyectosModule .operational-project-empty{grid-column:1/-1!important}
/* Cuentas por pagar */
#appView #cuentasPagarModule{width:100%!important;max-width:1560px!important;margin:auto!important;padding:12px 24px 32px!important;color:var(--ws-ink)!important}
#appView #cuentasPagarModule .accounts-payable-workspace{padding:0!important;background:transparent!important;border:0!important}
#appView #cuentasPagarModule .workspace-heading{padding:12px 0 20px!important;background:transparent!important}
#appView #cuentasPagarModule .workspace-heading h1{margin:0!important;font-size:30px!important;letter-spacing:-.035em!important}
#appView #cuentasPagarModule .payables-overview{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin-bottom:22px!important;background:transparent!important}
#appView #cuentasPagarModule .payables-overview article{display:grid!important;gap:10px!important;padding:20px!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;background:var(--ws-canvas)!important}
#appView #cuentasPagarModule .payables-overview article:first-child{background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important}
#appView #cuentasPagarModule .payables-overview span{font-size:13px!important}
#appView #cuentasPagarModule .payables-overview strong{font-size:27px!important;font-variant-numeric:tabular-nums!important;line-height:1.2!important;letter-spacing:-.035em!important}
#appView #cuentasPagarModule .accounts-payable-toolbar{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:18px!important;padding:20px!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;background:var(--ws-canvas)!important}
#appView #cuentasPagarModule .module-search{flex:1!important;max-width:530px!important;margin:0!important}
#appView #cuentasPagarModule .module-search input{width:100%!important;font-size:14px!important;min-height:46px!important}
#appView #cuentasPagarModule .module-export-actions{display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important}
#appView #cuentasPagarModule :where(.payables-filters,.payables-expanded){margin:12px 0 18px!important;border:1px solid var(--ws-line)!important;border-radius:5px!important;background:var(--ws-canvas)!important}
#appView #cuentasPagarModule :where(.payables-filters,.payables-expanded)>summary{display:flex!important;align-items:center!important;gap:9px!important;padding:14px 18px!important;cursor:pointer!important;font-size:14px!important;font-weight:650!important;list-style:none!important}
#appView #cuentasPagarModule :where(.payables-filters,.payables-expanded)>summary::after{content:'+'!important;margin-left:auto!important;font-size:20px!important;color:var(--ws-muted)!important}
#appView #cuentasPagarModule :where(.payables-filters,.payables-expanded)[open]>summary::after{content:'−'!important}
#appView #cuentasPagarModule .accounts-payable-filter-panel{border:0!important;margin:0!important;padding:0 18px 15px!important}
#appView #cuentasPagarModule .module-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
#appView #cuentasPagarModule .payables-quick-filters{display:flex!important;gap:6px!important;flex-wrap:wrap!important;margin:18px 0 14px!important}
#appView #cuentasPagarModule .payables-quick-filters button{padding:8px 15px!important;border:1px solid var(--ws-line)!important;min-height:40px!important;font-weight:650!important;font-size:13px!important}
#appView #cuentasPagarModule .payables-quick-filters button[aria-pressed="true"]{background:var(--ws-ink)!important;color:var(--ws-canvas)!important;border-color:var(--ws-ink)!important}
#appView #cuentasPagarModule .payables-ledger{border:1px solid var(--ws-line)!important;border-radius:6px!important;background:var(--ws-canvas)!important;overflow:hidden!important}
#appView #cuentasPagarModule .payables-ledger .budgets-table-shell{margin:0!important;padding:0!important;overflow:auto!important;max-height:700px!important;border:0!important}
#appView #cuentasPagarModule .payables-ledger-table{width:100%!important;min-width:1040px!important;border-collapse:collapse!important;table-layout:fixed!important}
#appView #cuentasPagarModule .payables-ledger-table th{background:var(--ws-canvas)!important;padding:10px 13px!important;text-align:left!important;font-size:12px!important;font-weight:650!important;position:sticky!important;top:0!important;z-index:1!important;border-bottom:1px solid var(--ws-line)!important}
#appView #cuentasPagarModule .payables-ledger-table th:first-child{width:24%!important}
#appView #cuentasPagarModule .payables-ledger-table th:nth-child(2){width:13%!important}
#appView #cuentasPagarModule .payables-ledger-table th:nth-child(3){width:16%!important}
#appView #cuentasPagarModule .payables-ledger-table th:nth-child(4){width:13%!important}
#appView #cuentasPagarModule .payables-ledger-table th:nth-last-child(-n+4){text-align:right!important}
#appView #cuentasPagarModule .payables-ledger-table th button{border:0!important;padding:3px 0!important;background:transparent!important;min-height:32px!important;font-size:12px!important;font-weight:650!important;display:inline-flex!important;gap:7px!important;align-items:center!important;text-align:inherit!important}
#appView #cuentasPagarModule .payables-ledger-table td{padding:17px 13px!important;font-size:13px!important;line-height:1.45!important;border-bottom:1px solid var(--ws-line)!important;overflow-wrap:anywhere!important;vertical-align:middle!important;color:var(--ws-ink)!important}
#appView #cuentasPagarModule .payables-ledger-table td :where(strong,span,small){display:block!important}
#appView #cuentasPagarModule .payables-ledger-table td small{margin-top:5px!important;font-size:12px!important;color:var(--ws-muted)!important;line-height:1.5!important}
#appView #cuentasPagarModule .payables-ledger-table td>span{margin-top:4px!important}
#appView #cuentasPagarModule [data-payable-ledger-id]{cursor:pointer!important;background:var(--ws-canvas)!important}
#appView #cuentasPagarModule [data-payable-ledger-id]:hover{background:var(--ws-soft)!important}
#appView #cuentasPagarModule .payables-money{text-align:right!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important}
#appView #cuentasPagarModule .payable-state{display:inline-flex!important;align-items:center!important;gap:5px!important;background:var(--ws-soft)!important;color:var(--ws-ink)!important;padding:5px 8px!important;border-radius:6px!important;width:max-content!important;font-size:12px!important;font-weight:650!important;max-width:100%!important}
#appView #cuentasPagarModule .payable-overdue{font-weight:750!important;text-decoration:underline!important;text-underline-offset:3px!important}
#appView #cuentasPagarModule .payables-empty{text-align:center!important;padding:50px!important;color:var(--ws-muted)!important}
#appView #cuentasPagarModule .payables-empty i{display:block!important;font-size:28px!important;margin-bottom:12px!important}
#appView #cuentasPagarModule .payables-expanded{margin-top:25px!important}
#appView #cuentasPagarModule .payables-expanded .purchase-section{margin:0!important;padding:18px!important;background:var(--ws-canvas)!important;border-top:1px solid var(--ws-line)!important}
#appView #cuentasPagarModule .purchase-section>h2{background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-left:3px solid var(--ws-ink)!important;padding:13px!important;font-size:17px!important;border-radius:4px!important}
#appView #cuentasPagarModule .table-pagination{padding:12px 16px!important;margin:0!important;border-top:1px solid var(--ws-line)!important;background:var(--ws-canvas)!important;font-size:13px!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:14px!important}
#appView #cuentasPagarModule .payables-detail-hero{display:flex!important;align-items:start!important;justify-content:space-between!important;gap:18px!important;flex-wrap:wrap!important;padding:24px!important;margin:20px 0!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;background:var(--ws-canvas)!important}
#appView #cuentasPagarModule .payables-detail-hero>div:first-child{flex:1!important;min-width:200px!important}
#appView #cuentasPagarModule .payables-detail-hero h2{font-size:24px!important;margin:8px 0!important}
#appView #cuentasPagarModule .payables-detail-hero :where(p,div>span){font-size:13px!important;color:var(--ws-muted)!important;margin:0!important}
#appView #cuentasPagarModule .payables-detail-totals{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;flex-basis:100%!important;padding-top:20px!important;border-top:1px solid var(--ws-line)!important}
#appView #cuentasPagarModule .payables-detail-totals>div{display:grid!important;gap:9px!important}
#appView #cuentasPagarModule .payables-detail-totals strong{font-size:24px!important;font-variant-numeric:tabular-nums!important}
#appView #cuentasPagarModule .payables-detail-data{padding:0!important;border-radius:11px!important;margin-bottom:20px!important}
#appView #cuentasPagarModule .payables-detail-data>summary{cursor:pointer!important;font-weight:650!important;padding:17px!important;font-size:14px!important}
#appView #cuentasPagarModule .payables-detail-data .budget-detail-grid{padding:0 18px 18px!important;gap:15px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* CRM: misma navegación, paneles claros y celdas de estado de color. */
#pirelaCrmModule{--crm-ink:var(--ws-ink)!important;--crm-muted:var(--ws-muted)!important;--crm-line:var(--ws-line)!important;--crm-surface:var(--ws-canvas)!important;--crm-soft:var(--ws-soft)!important;--crm-blue:var(--ws-blue)!important;--crm-blue-dark:var(--ws-blue-hover)!important;--crm-blue-soft:var(--ws-selected)!important;--crm-green:var(--ws-green)!important;--crm-green-soft:#e4f4ec!important;--crm-amber:#805000!important;--crm-amber-soft:#fff3d8!important;--crm-red:var(--ws-red)!important;--crm-red-soft:#fff0f2!important;color:var(--ws-ink)!important;background:var(--ws-canvas)!important}
#appView.crm-workspace-mode,#pirelaCrmModule .crm-standalone-page{background:var(--ws-canvas)!important}
#pirelaCrmModule .crm-app-shell{grid-template-columns:248px minmax(0,1fr)!important}
#pirelaCrmModule .crm-app-main{padding:24px 28px 40px!important;min-width:0!important;background:var(--ws-canvas)!important}
#pirelaCrmModule .crm-sidebar{padding:18px 12px!important;background:var(--ws-rail)!important;border-right:1px solid var(--ws-line)!important;box-shadow:none!important}
#pirelaCrmModule .crm-sidebar-brand{padding:0 7px 16px!important;border:0!important;background:transparent!important}
#pirelaCrmModule .crm-sidebar-brand strong{font-size:15px!important;font-weight:600!important}
#pirelaCrmModule .crm-sidebar-brand small{font-size:10px!important;font-weight:500!important;letter-spacing:0!important}
#pirelaCrmModule .crm-sidebar>nav>section>header{font-size:11px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ws-muted)!important;background:transparent!important}
#pirelaCrmModule .crm-sidebar-link{min-height:48px!important;padding:7px 9px!important;border:0!important;border-radius:4px!important;background:transparent!important;color:var(--ws-ink)!important}
#pirelaCrmModule .crm-sidebar-link.is-active{background:var(--ws-selected)!important}
#pirelaCrmModule .crm-sidebar-link:hover{background:var(--ws-hover)!important}
#pirelaCrmModule .crm-sidebar-link strong{font-size:13px!important;font-weight:500!important}
#pirelaCrmModule .crm-sidebar-link small{font-size:11px!important;color:var(--ws-muted)!important}
#pirelaCrmModule .crm-sidebar-avatar{width:29px!important;height:29px!important;border-radius:5px!important;background:var(--ws-selected)!important;color:var(--ws-blue)!important;font-size:11px!important;font-weight:600!important}
#pirelaCrmModule .crm-sidebar>footer{border-color:var(--ws-line)!important}
#pirelaCrmModule .crm-sidebar>footer button{border:0!important;background:transparent!important;color:var(--ws-muted)!important;font-size:12px!important;font-weight:400!important}
#pirelaCrmModule .crm-standalone-header{max-width:none!important;padding:0 0 20px!important;border:0!important;background:transparent!important}
#pirelaCrmModule .crm-standalone-heading h1{font-size:28px!important;font-weight:650!important}
#pirelaCrmModule .crm-standalone-heading>span{font-size:12px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ws-muted)!important}
#pirelaCrmModule .crm-standalone-heading>small{font-size:12px!important;color:var(--ws-muted)!important}
#pirelaCrmModule .crm-current-source{border:0!important;background:transparent!important;font-size:12px!important;font-weight:400!important;color:var(--ws-muted)!important}
#pirelaCrmModule .crm-work-area{max-width:none!important;margin:0!important;overflow:visible!important;background:var(--ws-canvas)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
#pirelaCrmModule .crm-section-tabs{padding:0!important;min-height:44px!important;gap:5px!important;background:var(--ws-canvas)!important;border-bottom:1px solid var(--ws-line)!important}
#pirelaCrmModule .crm-section-tabs button{min-height:42px!important;padding:0 13px!important;background:transparent!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;color:var(--ws-muted)!important;font-size:14px!important;font-weight:400!important;box-shadow:none!important}
#pirelaCrmModule .crm-section-tabs button.is-active{color:var(--ws-ink)!important;border-bottom-color:var(--ws-blue)!important;background:transparent!important}
#pirelaCrmModule .crm-section-content{padding:22px 0!important;min-height:500px!important;background:var(--ws-canvas)!important}
#pirelaCrmModule :where(.crm-content-heading,.crm-panel-heading){background:transparent!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important}
#pirelaCrmModule .crm-content-heading h2{font-size:22px!important;font-weight:600!important}
#pirelaCrmModule :where(.crm-content-heading small,.crm-panel-heading small){font-size:11px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ws-muted)!important}
#pirelaCrmModule :where(.crm-panel,.crm-kpi,.crm-team-card,.crm-agenda-list-panel,.crm-detail-feed,.crm-dalvo-editor,.crm-dalvo-history,.crm-comment-history,.crm-record-page form[data-crm-opportunity-form]){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;box-shadow:none!important}
#pirelaCrmModule :where(.crm-commercial-filters,.crm-agenda-filters,.crm-followup-form){padding:14px 0!important;background:transparent!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;border-radius:0!important;box-shadow:none!important;gap:12px!important}
#pirelaCrmModule :where(.crm-commercial-filters label>span,.crm-agenda-filters label>span,.crm-period-control>span){font-size:12px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ws-muted)!important}
#pirelaCrmModule :where(.crm-filter-actions button[type="submit"],.crm-dalvo-editor button[type="submit"],.crm-comment-history button[type="submit"],.crm-record-page form>footer .is-primary,.crm-stage-dialog footer button[type="submit"]){background:var(--ws-blue)!important;border-color:var(--ws-blue)!important;color:#fff!important}
#pirelaCrmModule .crm-stage-summary{display:flex!important;gap:8px!important;margin:16px 0!important;padding-bottom:4px!important;overflow-x:auto!important;scrollbar-width:thin!important}
#pirelaCrmModule .crm-stage-summary button{flex:0 0 150px!important;padding:11px 12px!important;border:1px solid var(--ws-line)!important;border-radius:5px!important;background:var(--ws-canvas)!important;box-shadow:none!important;color:var(--ws-ink)!important}
#pirelaCrmModule .crm-stage-summary button.is-active{border-color:var(--ws-blue)!important;background:var(--ws-selected)!important;box-shadow:none!important}
#pirelaCrmModule .crm-stage-summary button>span{font-size:12px!important;font-weight:500!important}
#pirelaCrmModule .crm-stage-summary button>small{font-size:11px!important;color:var(--ws-muted)!important}
#pirelaCrmModule .crm-pipeline-list-panel{background:var(--ws-canvas)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
#pirelaCrmModule .crm-pipeline-list-panel>header{padding:12px 0!important;margin-top:20px!important;background:transparent!important;border:0!important;color:var(--ws-ink)!important}
#pirelaCrmModule .crm-pipeline-list-panel>header strong{font-size:18px!important;font-weight:500!important;color:var(--ws-blue)!important}
#pirelaCrmModule :where(.crm-status-table-wrap,.crm-pipeline-table-wrap){border:1px solid var(--ws-line)!important;border-left:4px solid var(--ws-blue)!important;border-radius:5px!important;background:var(--ws-canvas)!important;overflow-x:auto!important}
#pirelaCrmModule :where(.crm-status-table,.crm-pipeline-table){background:var(--ws-canvas)!important;border-collapse:collapse!important}
#pirelaCrmModule :where(.crm-status-table,.crm-pipeline-table) th{background:var(--ws-canvas)!important;color:var(--ws-muted)!important;font-size:12px!important;font-weight:400!important;padding:11px 10px!important;border:1px solid var(--ws-line)!important;text-transform:none!important}
#pirelaCrmModule :where(.crm-status-table,.crm-pipeline-table) td{background:var(--ws-canvas)!important;color:var(--ws-ink)!important;font-size:13px!important;line-height:1.5!important;padding:13px 10px!important;border:1px solid var(--ws-line)!important;box-shadow:none!important}
#pirelaCrmModule :where(.crm-status-table,.crm-pipeline-table) tr:hover>td{background:var(--ws-hover)!important}
#pirelaCrmModule :where(.crm-status-table,.crm-pipeline-table) td :where(strong){font-size:14px!important;font-weight:500!important}
#pirelaCrmModule :where(.crm-status-table,.crm-pipeline-table) td :where(small){font-size:12px!important;color:var(--ws-muted)!important;line-height:1.5!important}
#pirelaCrmModule .crm-status-table td:has(>.crm-inline-stage){padding:0!important}
#pirelaCrmModule .crm-status-table select.crm-inline-stage{width:100%!important;min-width:140px!important;min-height:48px!important;border:0!important;border-radius:0!important;padding:9px 8px!important;font-size:13px!important;text-align:center!important;cursor:pointer!important}
#pirelaCrmModule .crm-inline-stage option{background:var(--ws-canvas)!important;color:var(--ws-ink)!important}
#pirelaCrmModule .crm-pipeline-table td:nth-child(7){padding:0!important}
#pirelaCrmModule .crm-pipeline-table td:nth-child(7) .crm-status-chip{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:48px!important;border-radius:0!important;white-space:normal!important}
#pirelaCrmModule .crm-status-column{border:1px solid var(--ws-line)!important;border-top:4px solid var(--stage-color)!important;border-radius:5px!important;background:var(--ws-canvas)!important;box-shadow:none!important}
#pirelaCrmModule .crm-status-column.is-prospecto{--stage-color:var(--ws-slate)!important}
#pirelaCrmModule .crm-status-column.is-cotizandolo{--stage-color:var(--ws-purple)!important}
#pirelaCrmModule .crm-status-column.is-cotizacion_enviada{--stage-color:var(--ws-blue)!important}
#pirelaCrmModule .crm-status-column.is-negociacion{--stage-color:#bd8c25!important}
#pirelaCrmModule .crm-status-column.is-ganado{--stage-color:var(--ws-green)!important}
#pirelaCrmModule .crm-status-column.is-rechazado{--stage-color:var(--ws-red)!important}
#pirelaCrmModule .crm-status-column.is-vencida{--stage-color:#bd8c25!important}
#pirelaCrmModule .crm-status-column>header{background:var(--ws-canvas)!important;border-color:var(--ws-line)!important;padding:13px!important}
#pirelaCrmModule .crm-status-column>header h3{font-size:15px!important;font-weight:500!important}
#pirelaCrmModule .crm-status-column-cards{background:var(--ws-soft)!important;padding:9px!important;gap:9px!important}
#pirelaCrmModule .crm-journey-card{border:1px solid var(--ws-line)!important;border-radius:4px!important;background:var(--ws-canvas)!important;box-shadow:none!important}
#pirelaCrmModule .crm-status-columns .crm-journey-card h3{font-size:15px!important;font-weight:500!important}
#pirelaCrmModule .crm-status-columns .crm-journey-card>header strong{font-size:16px!important;font-weight:600!important}
#pirelaCrmModule .crm-agenda-row{background:var(--ws-canvas)!important;border:1px solid var(--ws-line)!important;border-left:4px solid var(--ws-blue)!important;border-radius:4px!important;box-shadow:none!important}
#pirelaCrmModule .crm-agenda-row.is-overdue{border-left-color:var(--ws-red)!important}
#pirelaCrmModule .crm-agenda-row strong{font-size:14px!important;font-weight:500!important}
#pirelaCrmModule .crm-dalvo-detail-header{background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;border-radius:0!important;box-shadow:none!important}
#pirelaCrmModule .crm-dalvo-detail-header h3{font-size:23px!important;font-weight:600!important}
#pirelaCrmModule :where(.crm-dalvo-editor>header,.crm-detail-feed>header,.crm-dalvo-history>header,.crm-comment-history>header){background:var(--ws-canvas)!important;border-color:var(--ws-line)!important;border-radius:0!important;box-shadow:none!important}
#pirelaCrmModule :where(.crm-record-back,.crm-detail-history-links button,.crm-view-switch button,.crm-table-nav button){color:var(--ws-muted)!important;background:var(--ws-canvas)!important;border:1px solid var(--ws-line)!important;border-radius:4px!important;font-size:12px!important;font-weight:400!important}
#pirelaCrmModule :where(.crm-stage-dialog,.crm-integration-dialog){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-radius:10px!important}
#pirelaCrmModule :where(.crm-stage-dialog form>header,.crm-stage-dialog form>footer,.crm-stage-transition){background:var(--ws-canvas)!important;border-color:var(--ws-line)!important}
#appView #cuentasPagarModule .payables-quick-filters button[aria-pressed="true"]{background:var(--ws-selected)!important;color:var(--ws-blue)!important;border-color:var(--ws-blue)!important}
#appView #cuentasPagarModule .payables-overview article{border-top:3px solid var(--ws-blue)!important}
#appView #cuentasPagarModule .payables-overview article:nth-child(2){border-top-color:var(--ws-green)!important}
#appView #cuentasPagarModule .payables-overview article:nth-child(3){border-top-color:#bd8c25!important}
#appView #cuentasPagarModule .payables-overview article:nth-child(4){border-top-color:var(--ws-red)!important}
/* Etiquetas y acciones: colores con contraste, nunca filas completas. */
#appView [data-workspace-tone="info"]{--ws-status-bg:var(--ws-blue);--ws-status-ink:#fff}
#appView [data-workspace-tone="success"]{--ws-status-bg:var(--ws-green);--ws-status-ink:#fff}
#appView [data-workspace-tone="warning"]{--ws-status-bg:var(--ws-amber);--ws-status-ink:#573b00}
#appView [data-workspace-tone="danger"]{--ws-status-bg:var(--ws-red);--ws-status-ink:#fff}
#appView [data-workspace-tone="neutral"]{--ws-status-bg:var(--ws-slate);--ws-status-ink:#fff}
#appView [data-workspace-tone]{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:6px 9px!important;min-height:28px!important;background:var(--ws-status-bg)!important;color:var(--ws-status-ink)!important;border:0!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important}
#appView [data-workspace-tone] :where(i,span,b,strong){color:inherit!important;background:transparent!important}
#appView :where(button,a).erp-action-danger{background:var(--ws-canvas)!important;color:var(--ws-red)!important;border-color:var(--ws-line)!important}
#appView :where(button,a).erp-action-danger:hover{background:#fff0f2!important;border-color:var(--ws-red)!important}
#appView :where(button,a).erp-action-success{background:var(--ws-green)!important;color:#fff!important;border-color:var(--ws-green)!important}
#appView :where(button,a).erp-action-success:hover{background:#00603a!important;border-color:#00603a!important}
#appView :where(button,a).erp-action-danger *,#appView :where(button,a).erp-action-success *{color:inherit!important;background:transparent!important}
/* Acceso: misma tipografía y controles, conservando la identidad de la marca. */
#loginView.pg-login .pg-submit{background:#006fd6!important;color:#fff!important;border-color:#006fd6!important;border-radius:5px!important;box-shadow:none!important;font-size:15px!important;min-height:45px!important}
#loginView.pg-login .pg-submit:hover{background:#0059ad!important}
#loginView.pg-login .pg-floating-label{color:#676879!important;font-weight:500!important}
#loginView.pg-login .pg-field-line{background:#006fd6!important;box-shadow:none!important}
#loginView.pg-login .pg-login-title{font-size:28px!important;font-weight:600!important;letter-spacing:-.025em!important}
/* El espacio del icono también se conserva al envolver campos con autocompletado. */
#appView :where(div,span):has(>i):has(>input,>select,>textarea,>.smart-autocomplete>input){position:relative!important}
#appView :where(div,span):has(>i):has(>input,>select,>textarea,>.smart-autocomplete>input)>i{position:absolute!important;left:14px!important;top:50%!important;width:18px!important;height:18px!important;line-height:18px!important;font-size:16px!important;text-align:center!important;color:var(--ws-muted)!important;transform:translateY(-50%)!important;pointer-events:none!important;z-index:2!important}
#appView :where(div,span):has(>i)>:is(input,select,textarea),#appView :where(div,span):has(>i)>.smart-autocomplete>input{padding-inline-start:44px!important}
#appView :where(div,span):has(>i):has(>textarea)>i{top:11px!important;transform:none!important}
#appView .topbar .global-search input{padding-inline-start:44px!important;padding-inline-end:76px!important}
#appView :where(.users-search,.providers-search,.launcher-search) input{height:42px!important;min-height:42px!important;padding-inline-start:44px!important}
#appView :where(.users-search,.providers-search)::before{left:14px!important;top:auto!important;bottom:12px!important;width:18px!important;height:18px!important;font-size:18px!important;line-height:18px!important;transform:none!important;color:var(--ws-muted)!important;pointer-events:none!important}
#appView :where(.global-search,.launcher-search)::before,#appView :where(.global-search,.launcher-search)::after{pointer-events:none!important}
#appView .launcher-search::after{top:calc(50% + 6px)!important}
/* Transiciones cortas, sin mover filas ni alterar la medida de los controles. */
#appView :where(button,a[class*="button"],input,select,textarea){transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease,box-shadow 140ms ease,transform 100ms ease!important}
#appView :where(button,a[class*="button"]):active:not(:disabled){transform:translateY(1px)!important}
#appView .module-view.active{animation:ws-view-in 180ms ease-out!important}
#pirelaCrmModule .crm-section-content>section{animation:ws-view-in 180ms ease-out!important}
#appView .modal:not(.hidden){animation:ws-fade-in 160ms ease-out!important}
#appView .modal:not(.hidden)>.modal-panel,#appView dialog[open]{animation:ws-dialog-in 220ms cubic-bezier(.2,.75,.25,1) both!important}
#appView dialog[open]::backdrop{animation:ws-fade-in 160ms ease-out!important}
#appView :where(.account-center-menu,.global-results,.smart-autocomplete-menu):not(.hidden){animation:ws-menu-in 150ms ease-out!important}
#appView #inicioModule .home-business-card,#appView #proyectosModule .operational-project-card{transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease!important}
#appView #inicioModule .home-business-card[data-home-module]:hover,#appView #proyectosModule .operational-project-card:hover{transform:translateY(-2px)!important;border-color:var(--ws-blue)!important;box-shadow:0 4px 14px #1720330c!important}
#pirelaCrmModule :where(.crm-section-tabs button,.crm-sidebar-link){transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease!important}
@keyframes ws-fade-in{from{opacity:0}to{opacity:1}}
@keyframes ws-view-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes ws-dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ws-menu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:1100px){
  #appView #proyectosModule .operational-projects-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #appView #cuentasPagarModule .module-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:820px){
  #appView>.workspace{padding:18px 14px 28px!important}
  #appView #mainNav .sidebar-nav-label{display:block!important}
  #appView.sidebar-collapsed #mainNav :where(.sidebar-nav-label,.sidebar-brand>div,.nav-item span){display:none!important}
  #pirelaCrmModule .crm-app-shell{display:block!important}
  #pirelaCrmModule .crm-sidebar{height:auto!important;position:relative!important;padding:12px!important;border-right:0!important;border-bottom:1px solid var(--ws-line)!important}
  #pirelaCrmModule .crm-sidebar>nav{display:flex!important;gap:16px!important;padding:10px 0!important;overflow-x:auto!important}
  #pirelaCrmModule .crm-sidebar>nav>section{min-width:180px!important;margin:0!important}
  #pirelaCrmModule .crm-sidebar>footer{display:flex!important;gap:10px!important;padding:5px 0!important;border:0!important}
  #pirelaCrmModule .crm-app-main{padding:18px 14px 30px!important}
  #pirelaCrmModule .crm-section-tabs{overflow-x:auto!important;white-space:nowrap!important}
  #pirelaCrmModule .crm-standalone-header{gap:10px!important}
}
@media(max-width:620px){
  #appView :where(button,input:not([type="checkbox"]):not([type="radio"]),select){min-height:42px!important}
  #appView #proyectosModule .operational-projects-list{grid-template-columns:minmax(0,1fr)!important}
  #appView #cuentasPagarModule .payables-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #appView #cuentasPagarModule .accounts-payable-toolbar{flex-direction:column!important;align-items:stretch!important}
  #appView #cuentasPagarModule .payables-detail-totals,#appView #cuentasPagarModule .payables-detail-data .budget-detail-grid{grid-template-columns:minmax(0,1fr)!important}
  #appView #inicioModule .home-business-units-grid{grid-template-columns:minmax(0,1fr)!important}
  #pirelaCrmModule .crm-current-source{display:none!important}
  #pirelaCrmModule .crm-stage-summary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important}
}
/* Operación comercial: ficha y directorio con la misma superficie de trabajo. */
#appView #presupuestoModule :where(.project-detail-card,.project-detail-hero,.project-detail-data-grid,.project-money-card,.project-payable-flow,.project-supplier-plan,.project-planning-summary,.project-decision-banner,.project-recurrence-banner,.client-quote-module,.budget-block-panel,.project-documents-panel){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;box-shadow:none!important;border-radius:6px!important}
#appView #presupuestoModule :where(.project-detail-hero,.project-detail-data-grid){border:0!important;border-radius:0!important;padding:20px!important}
#appView #presupuestoModule .project-detail-hero{border-bottom:1px solid var(--ws-line)!important;gap:14px!important}
#appView #presupuestoModule .project-detail-hero h2{font-size:24px!important;line-height:1.35!important;margin:5px 0!important}
#appView #presupuestoModule :where(.project-detail-hero-icon,.project-payable-flow-icon){width:38px!important;height:38px!important;min-width:38px!important;border:0!important;background:var(--ws-selected)!important;color:var(--ws-blue)!important;border-radius:6px!important}
#appView #presupuestoModule :where(.project-detail-hero p,.project-detail-hero small,.project-money-card small,.project-payable-flow p){color:var(--ws-muted)!important;font-size:13px!important;line-height:1.5!important}
#appView #presupuestoModule .project-detail-data-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important}
#appView #presupuestoModule .project-detail-data-grid label{margin:0!important;padding:0!important;background:transparent!important;grid-column:auto!important}
#appView #presupuestoModule .project-detail-data-grid label span{font-size:12px!important;color:var(--ws-muted)!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
#appView #presupuestoModule .project-detail-data-grid input[readonly]{padding:3px 0!important;min-height:26px!important;height:auto!important;border:0!important;background:transparent!important;font-size:14px!important;color:var(--ws-ink)!important;text-overflow:ellipsis!important}
#appView #presupuestoModule .project-money-overview{gap:12px!important;margin:20px 0!important}
#appView #presupuestoModule .project-money-card{padding:16px!important;border-top:2px solid var(--ws-line)!important}
#appView #presupuestoModule .project-money-card strong{font-size:23px!important;color:var(--ws-ink)!important;font-weight:600!important}
#appView #presupuestoModule :where(.project-money-card>span,.project-section-heading p){font-size:12px!important;color:var(--ws-muted)!important;letter-spacing:0!important;text-transform:none!important}
#appView #presupuestoModule :where(.project-payable-flow,.project-decision-banner,.project-recurrence-banner){padding:16px!important;border-left:3px solid var(--ws-blue)!important;margin:16px 0!important}
#appView #presupuestoModule :where(.project-detail-state,.project-decision-banner b,.project-recurrence-banner b){font-size:12px!important;font-weight:500!important;letter-spacing:0!important;border-radius:4px!important;padding:5px 9px!important}
#appView #presupuestoModule :where(.project-section-heading>span,.budget-documents-heading>span,.project-form-section-heading>span){background:var(--ws-selected)!important;color:var(--ws-blue)!important;border-radius:5px!important;box-shadow:none!important}
#appView #presupuestoModule :where(.budget-documents-heading,.client-quote-total-row,.project-planning-summary,.project-supplier-plan-heading){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important;box-shadow:none!important}
#appView #presupuestoModule .project-list-card{display:grid!important;grid-template-columns:minmax(230px,2fr) minmax(180px,1.3fr) minmax(160px,1fr) 120px 126px 30px!important;align-items:center!important;gap:16px!important;border-left:1px solid var(--ws-line)!important;padding:18px!important;border-radius:5px!important;position:relative!important;min-width:0!important}
#appView #presupuestoModule .project-list-main{display:flex!important;gap:12px!important;min-width:0!important}
#appView #presupuestoModule .project-list-main>div{min-width:0!important}
#appView #presupuestoModule .project-list-main strong{display:block!important;font-size:16px!important;font-weight:500!important;line-height:1.45!important;overflow-wrap:anywhere!important}
#appView #presupuestoModule .project-list-main small{display:block!important;margin-top:5px!important;font-size:13px!important;color:var(--ws-muted)!important}
#appView #presupuestoModule .project-list-avatar{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;background:var(--ws-soft)!important;color:var(--ws-blue)!important;font-size:16px!important;border-radius:6px!important}
#appView #presupuestoModule .project-list-meta{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;font-size:13px!important;min-width:0!important}
#appView #presupuestoModule .project-list-meta span{display:flex!important;align-items:start!important;gap:6px!important;font-size:13px!important;font-weight:400!important;overflow-wrap:anywhere!important}
#appView #presupuestoModule .project-list-meta i{color:var(--ws-muted)!important;flex:none!important}
#appView #presupuestoModule .project-list-status{display:flex!important;align-items:start!important;flex-direction:column!important;gap:6px!important}
#appView #presupuestoModule .project-list-status .status-pill{white-space:normal!important;font-size:12px!important;font-weight:500!important;line-height:1.4!important;padding:5px 8px!important;min-height:0!important}
#appView #presupuestoModule .project-list-amount{min-width:0!important;text-align:right!important}
#appView #presupuestoModule .project-list-amount>span{font-size:11px!important;color:var(--ws-muted)!important;font-weight:400!important}
#appView #presupuestoModule .project-list-amount>strong{font-size:16px!important;font-weight:600!important}
#appView #presupuestoModule .project-term-list-badge{display:inline-flex!important;gap:5px!important;font-size:11px!important;font-style:normal!important;font-weight:400!important;color:var(--ws-muted)!important;background:transparent!important;padding:4px 0!important}
#appView #presupuestoModule .project-list-card>.row-flag-cell{position:static!important;order:6!important;justify-self:end!important;margin:0!important}
#appView #presupuestoModule .budget-actions{display:flex!important;justify-content:end!important;gap:8px!important;margin:0!important}
#appView #presupuestoModule :where(.project-list-card)::before,#appView #presupuestoModule :where(.project-list-card)::after{display:none!important}
/* Ficha operativa independiente de la edición de cotizaciones. */
#appView #proyectosModule{padding-inline:0!important}
#appView :where(.operational-detail-toolbar,.operational-detail-toolbar>div){display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:wrap!important}
#appView .operational-detail-toolbar{margin-bottom:24px!important}
#appView .operational-detail-heading{display:flex!important;justify-content:space-between!important;align-items:start!important;gap:18px!important;padding:0 0 20px!important;border-bottom:1px solid var(--ws-line)!important}
#appView .operational-detail-heading p{color:var(--ws-blue)!important;font-size:13px!important;margin:0 0 5px!important}
#appView .operational-detail-heading h2{font-size:26px!important;line-height:1.35!important;margin:0 0 8px!important;overflow-wrap:anywhere!important}
#appView .operational-detail-heading span{font-size:14px!important;color:var(--ws-muted)!important}
#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid){display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:22px 0!important;background:var(--ws-canvas)!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;overflow:hidden!important}
#appView .operational-detail-totals{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article{padding:18px!important;background:var(--ws-canvas)!important;border:0!important;border-right:1px solid var(--ws-line)!important;border-radius:0!important;box-shadow:none!important;display:grid!important;gap:6px!important;min-width:0!important}
#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article:last-child{border-right:0!important}
#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article>span{font-size:12px!important;font-weight:400!important;color:var(--ws-muted)!important;text-transform:none!important;letter-spacing:0!important}
#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article>strong{font-size:24px!important;line-height:1.4!important;font-weight:600!important;color:var(--ws-ink)!important;overflow-wrap:anywhere!important}
#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article::before,#appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article::after{display:none!important}
#appView .operational-info-section{margin:26px 0!important;padding:0!important;background:var(--ws-canvas)!important}
#appView .operational-info-section h3{font-size:17px!important;font-weight:500!important;margin:0 0 14px!important}
#appView .operational-info-section h3 small{font-size:12px!important;color:var(--ws-muted)!important;margin-left:8px!important}
#appView .operational-info-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;margin:0!important;padding:20px!important;border:1px solid var(--ws-line)!important;border-radius:6px!important}
#appView .operational-info-grid dt{font-size:12px!important;color:var(--ws-muted)!important;margin-bottom:6px!important}
#appView .operational-info-grid dd{font-size:14px!important;margin:0!important;overflow-wrap:anywhere!important}
#appView .operational-document-list{display:grid!important;gap:8px!important}
#appView .operational-document-list>a{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid var(--ws-line)!important;padding:14px!important;border-radius:5px!important;color:var(--ws-blue)!important;font-size:14px!important;text-decoration:none!important}
#appView .operational-document-list>a span{flex:1!important;overflow-wrap:anywhere!important}
#appView .operational-periods{overflow:auto!important;border:1px solid var(--ws-line)!important;border-radius:5px!important}
#appView .operational-periods table{width:100%!important;border-collapse:collapse!important;min-width:500px!important}
#appView .operational-periods :where(th,td){padding:12px!important;border-bottom:1px solid var(--ws-line)!important;text-align:left!important;font-size:13px!important}
/* Cobranza: directorio legible, filtros y documentos sobre fondo continuo. */
#appView #cuentasCobrarModule :where(.accounts-receivable-directory,.receivable-account-card,.receivable-detail-header,.receivable-overview-card,.receivable-detail-grid,.receivable-detail-grid>div,.receivable-overview-values>article,.receivable-billing-card,.receivable-document-card,.receivable-files-empty,.accounts-receivable-billing,.receivable-files-panel,.accounts-receivable-payment-panel,.receivable-upload-panel){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important;border-radius:5px!important;box-shadow:none!important}
#appView #cuentasCobrarModule .module-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#appView #cuentasCobrarModule .module-filter-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding-top:14px!important;font-size:12px!important;color:var(--ws-muted)!important}
#appView #cuentasCobrarModule .accounts-receivable-directory{border:1px solid var(--ws-line)!important;overflow:hidden!important}
#appView #cuentasCobrarModule :where(.receivable-ledger-head,.receivable-account-card){display:grid!important;grid-template-columns:minmax(230px,2.1fr) minmax(145px,1fr) minmax(120px,.8fr) minmax(140px,1fr) 46px!important;gap:16px!important;align-items:center!important;padding:16px!important;margin:0!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;border-left:3px solid transparent!important;border-radius:0!important;min-width:0!important;min-height:78px!important}
#appView #cuentasCobrarModule .receivable-ledger-head{min-height:40px!important;padding-block:10px!important;color:var(--ws-muted)!important;font-size:12px!important;background:var(--ws-soft)!important}
#appView #cuentasCobrarModule .receivable-account-card.is-pending{border-left-color:var(--ws-blue)!important}
#appView #cuentasCobrarModule .receivable-account-card.is-collected{border-left-color:var(--ws-green)!important}
#appView #cuentasCobrarModule .receivable-account-card:hover{background:var(--ws-hover)!important;cursor:pointer!important}
#appView #cuentasCobrarModule .receivable-account-card::before,#appView #cuentasCobrarModule .receivable-account-card::after,#appView #cuentasCobrarModule .receivable-account-icon{display:none!important}
#appView #cuentasCobrarModule .receivable-account-identity{grid-column:auto!important;min-width:0!important}
#appView #cuentasCobrarModule .receivable-account-identity h3{font-size:15px!important;font-weight:500!important;line-height:1.4!important;margin:4px 0!important;white-space:normal!important;overflow-wrap:anywhere!important}
#appView #cuentasCobrarModule .receivable-account-identity>span{font-size:12px!important;color:var(--ws-muted)!important}
#appView #cuentasCobrarModule .receivable-account-identity b{font-size:11px!important;font-weight:400!important;background:transparent!important;border:0!important;padding:0!important;color:var(--ws-muted)!important}
#appView #cuentasCobrarModule :where(.receivable-account-state,.receivable-account-date,.receivable-account-money){display:grid!important;gap:6px!important;text-align:left!important;min-width:0!important}
#appView #cuentasCobrarModule .receivable-account-state>span{background:var(--ws-selected)!important;color:var(--ws-blue)!important;border:0!important;border-radius:4px!important;padding:5px 8px!important;font-size:12px!important;font-weight:500!important;width:fit-content!important;white-space:normal!important}
#appView #cuentasCobrarModule .receivable-account-state>span.is-collected{background:#dff5e9!important;color:#006b42!important}
#appView #cuentasCobrarModule :where(.receivable-account-state small,.receivable-account-date>span,.receivable-account-money>span,.receivable-account-money small){font-size:12px!important;color:var(--ws-muted)!important;line-height:1.45!important}
#appView #cuentasCobrarModule .receivable-account-date strong{font-size:13px!important;font-weight:400!important}
#appView #cuentasCobrarModule .receivable-account-money strong{font-size:16px!important;font-weight:600!important;color:var(--ws-ink)!important}
#appView #cuentasCobrarModule .receivable-account-money{text-align:right!important}
#appView #cuentasCobrarModule .receivable-account-actions{display:flex!important;justify-content:end!important;gap:6px!important}
#appView #cuentasCobrarModule .receivable-account-open{display:none!important}
#appView #cuentasCobrarModule .receivable-detail-header{padding:20px 0!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;gap:16px!important;flex-wrap:wrap!important}
#appView #cuentasCobrarModule .receivable-detail-identity h3{font-size:24px!important;line-height:1.4!important}
#appView #cuentasCobrarModule :where(.receivable-detail-identity>span,.receivable-document-icon){background:var(--ws-selected)!important;color:var(--ws-blue)!important;border-radius:6px!important;width:38px!important;height:38px!important}
#appView #cuentasCobrarModule .receivable-primary-action{background:var(--ws-blue)!important;color:#fff!important;border-color:var(--ws-blue)!important;padding:8px 14px!important}
#appView #cuentasCobrarModule .receivable-overview-card{border:1px solid var(--ws-line)!important;margin:20px 0!important;overflow:hidden!important}
#appView #cuentasCobrarModule .receivable-overview-values{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;border-bottom:1px solid var(--ws-line)!important;background:transparent!important}
#appView #cuentasCobrarModule .receivable-overview-values article{padding:18px!important;border:0!important;border-right:1px solid var(--ws-line)!important}
#appView #cuentasCobrarModule .receivable-overview-values article strong{font-size:24px!important;color:var(--ws-ink)!important;font-weight:600!important}
#appView #cuentasCobrarModule .receivable-overview-values article span{font-size:12px!important;letter-spacing:0!important;text-transform:none!important;color:var(--ws-muted)!important}
#appView #cuentasCobrarModule .receivable-detail-grid{padding:20px!important;gap:20px!important;border:0!important}
#appView #cuentasCobrarModule .receivable-detail-grid>div{padding:0!important;border:0!important}
#appView #cuentasCobrarModule .receivable-detail-grid span{font-size:12px!important;text-transform:none!important;letter-spacing:0!important;color:var(--ws-muted)!important}
#appView #cuentasCobrarModule .receivable-detail-grid strong{font-size:14px!important;font-weight:500!important}
#appView #cuentasCobrarModule :where(.client-quote-module,.receivable-section,.receivable-documents-panel){padding:20px!important;border:1px solid var(--ws-line)!important;border-radius:6px!important;box-shadow:none!important;background:var(--ws-canvas)!important;margin:20px 0!important}
#appView #cuentasCobrarModule :where(h3){font-size:17px!important;font-weight:500!important}
/* Préstamos: mismo lenguaje de tablas, sin tarjetas decorativas. */
#appView #cuentasCobrarModule{--cx-ink:var(--ws-ink)!important;--cx-muted:var(--ws-muted)!important;--cx-line:var(--ws-line)!important;--cx-forest:var(--ws-blue)!important;--cx-forest-dark:var(--ws-blue-hover)!important;--cx-sage:var(--ws-selected)!important;--cx-sage-strong:var(--ws-line)!important;--cx-cream:var(--ws-soft)!important;--cx-cream-strong:var(--ws-line)!important}
#appView #cuentasCobrarModule :where(.receivable-files-heading,.accounts-receivable-upload-form,.receivable-file-row,.accounts-receivable-partiality-form){background:var(--ws-canvas)!important;border-color:var(--ws-line)!important;border-radius:5px!important;box-shadow:none!important}
#appView #cuentasCobrarModule :where(.receivable-files-heading h3,.receivable-file-copy strong,.receivable-file-copy strong a){color:var(--ws-ink)!important;font-weight:500!important}
#appView #cuentasCobrarModule :where(.receivable-files-heading small,.receivable-files-heading>b,.receivable-file-copy span,.receivable-detail-status small){font-size:12px!important;color:var(--ws-muted)!important;letter-spacing:0!important;text-transform:none!important;background:transparent!important}
#appView #cuentasCobrarModule :where(.receivable-files-heading>div>span,.receivable-file-icon){width:34px!important;height:34px!important;background:var(--ws-selected)!important;color:var(--ws-blue)!important;border-radius:5px!important}
#appView #cuentasCobrarModule :where(.accounts-receivable-upload-form label>span,.accounts-receivable-partiality-form label>span){font-size:13px!important;letter-spacing:0!important;font-weight:500!important;text-transform:none!important;color:var(--ws-ink)!important}
#appView #cuentasCobrarModule .receivable-upload-button{color:#fff!important;background:var(--ws-blue)!important;border-color:var(--ws-blue)!important}
#appView #cuentasCobrarModule .receivable-detail-status{background:transparent!important;border-color:var(--ws-line)!important;box-shadow:none!important}
#appView #prestamosModule :where(.users-hero-heading,.credit-detail-panel,.credit-detail-section,.user-credits-ledger-panel,.credit-ledger-filters,.user-credits-table,.credit-detail-table){background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-color:var(--ws-line)!important;box-shadow:none!important;border-radius:5px!important}
#appView #prestamosModule .users-hero-heading p:not(.eyebrow){display:none!important}
#appView #prestamosModule .section-heading-inline{padding:12px 0!important;gap:12px!important;flex-wrap:wrap!important}
#appView #prestamosModule .section-heading-inline h2{font-size:18px!important;font-weight:500!important}
#appView #prestamosModule .section-heading-inline .eyebrow{display:none!important}
#appView #prestamosModule :where(.credit-ledger-filters){display:grid!important;grid-template-columns:minmax(180px,480px) 190px!important;gap:12px!important;padding:14px 0 20px!important;border:0!important}
#appView #prestamosModule :where(.user-credits-table,.credit-detail-table){overflow:auto!important;border:1px solid var(--ws-line)!important}
#appView #prestamosModule :where(.user-credits-table-head,.user-credits-table-row,.credit-detail-credit-head,.credit-detail-credit-row){display:grid!important;grid-template-columns:minmax(140px,1.2fr) minmax(190px,1.6fr) 110px 120px 120px 120px 170px!important;min-width:1030px!important;gap:0!important;padding:0!important;margin:0!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-canvas)!important;border-radius:0!important;align-items:stretch!important}
#appView #prestamosModule :where(.user-credits-table-head,.credit-detail-credit-head){background:var(--ws-soft)!important;color:var(--ws-muted)!important;font-size:12px!important}
#appView #prestamosModule :where(.user-credits-table-head,.user-credits-table-row,.credit-detail-credit-head,.credit-detail-credit-row)>span{padding:14px 12px!important;border-right:1px solid var(--ws-line)!important;font-size:13px!important;display:flex!important;align-items:center!important;line-height:1.5!important}
#appView #prestamosModule .user-credits-table-row:hover{background:var(--ws-hover)!important;cursor:pointer!important}
#appView #prestamosModule :where(.table-stacked-cell){flex-direction:column!important;align-items:start!important;justify-content:center!important;gap:4px!important;overflow-wrap:anywhere!important}
#appView #prestamosModule .table-stacked-cell strong{font-size:14px!important;font-weight:500!important}
#appView #prestamosModule .table-stacked-cell small{font-size:12px!important;color:var(--ws-muted)!important}
#appView #prestamosModule .credit-balance-value{font-size:14px!important;font-weight:600!important;color:var(--ws-ink)!important;background:transparent!important}
#appView #prestamosModule .credit-balance-value.paid{color:var(--ws-green)!important}
#appView #prestamosModule .user-credit-toolbar-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
#appView #prestamosModule .credit-detail-section{margin:24px 0!important;padding:0!important;border:0!important}
#appView #prestamosModule .credit-detail-section h3{font-size:17px!important;font-weight:500!important;margin-bottom:12px!important}
#appView #prestamosModule .credit-movements-table{overflow:auto!important;border:1px solid var(--ws-line)!important;border-radius:5px!important;background:var(--ws-canvas)!important}
#appView #prestamosModule :where(.credit-movements-head,.credit-movements-row){display:grid!important;grid-template-columns:120px minmax(190px,1.6fr) minmax(140px,1fr) 120px 120px 120px minmax(140px,1fr)!important;min-width:1030px!important;gap:0!important;padding:0!important;margin:0!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-canvas)!important;color:var(--ws-ink)!important;border-radius:0!important}
#appView #prestamosModule .credit-movements-head{background:var(--ws-soft)!important;color:var(--ws-muted)!important}
#appView #prestamosModule :where(.credit-movements-head,.credit-movements-row)>span{padding:14px 12px!important;border-right:1px solid var(--ws-line)!important;font-size:13px!important;line-height:1.5!important}
#appView :where(#userCreditForm,#userCreditPaymentForm)>.modal-actions{display:flex!important;justify-content:end!important;gap:10px!important;padding-top:18px!important;border-top:1px solid var(--ws-line)!important;background:var(--ws-canvas)!important;position:static!important;margin:0!important}
#appView :where(#userCreditForm,#userCreditPaymentForm)>.modal-actions button{flex:0 1 auto!important;width:auto!important;padding:9px 16px!important}
#appView :where(#userCreditForm,#userCreditPaymentForm){max-width:680px!important;padding:24px!important}
#appView :where(.user-credit-form-grid,.user-credit-payment-grid){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;padding:20px 0!important}
#appView :where(#userCreditForm,#userCreditPaymentForm) :where(label>span){font-size:13px!important;letter-spacing:0!important;text-transform:none!important;font-weight:500!important;color:var(--ws-ink)!important}
/* Alta de gastos: tres secciones claras y acciones independientes. */
#appView #fixedExpenseForm{width:min(880px,calc(100vw - 32px))!important;max-width:880px!important;padding:0!important;max-height:90dvh!important;overflow-y:auto!important}
#appView #fixedExpenseForm>.modal-heading{padding:22px 26px!important;border-bottom:1px solid var(--ws-line)!important;margin:0!important;position:sticky!important;top:0!important;z-index:4!important;background:var(--ws-canvas)!important}
#appView #fixedExpenseForm>.modal-heading h2{font-size:23px!important;margin:3px 0 0!important}
#appView #fixedExpenseForm>.modal-status:empty{display:none!important}
#appView #fixedExpenseForm>.modal-status{padding-inline:26px!important;font-size:13px!important}
#appView .workspace-form-section{padding:20px 26px!important;margin:0!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-canvas)!important}
#appView .workspace-form-section h3{display:flex!important;align-items:center!important;gap:9px!important;font-size:15px!important;font-weight:600!important;margin:0 0 18px!important;color:var(--ws-ink)!important}
#appView .workspace-form-section h3 i{font-size:18px!important;color:var(--ws-blue)!important}
#appView #fixedExpenseForm .fixed-expense-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 20px!important;margin:0!important;padding:0!important}
#appView #fixedExpenseForm .fixed-expense-form-grid label{display:grid!important;gap:7px!important;margin:0!important;min-width:0!important}
#appView #fixedExpenseForm .fixed-expense-form-grid label>span{font-size:13px!important;line-height:1.5!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ws-ink)!important}
#appView #fixedExpenseForm :where(.wide-field,.fixed-expense-toggle-field){grid-column:1/-1!important}
#appView #fixedExpenseForm .inline-checkbox{display:flex!important;align-items:center!important;gap:10px!important;min-height:42px!important;padding:10px 12px!important;background:var(--ws-soft)!important;border:1px solid var(--ws-line)!important;border-radius:5px!important}
#appView #fixedExpenseForm .inline-checkbox span{font-size:13px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
#appView #fixedExpenseForm .fixed-expense-budget-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;margin:20px 0 0!important;padding:0!important;border:1px solid var(--ws-line)!important;border-radius:5px!important;overflow:hidden!important}
#appView #fixedExpenseForm .fixed-expense-budget-summary article{display:grid!important;gap:5px!important;background:var(--ws-soft)!important;border:0!important;border-right:1px solid var(--ws-line)!important;border-radius:0!important;padding:14px!important;box-shadow:none!important}
#appView #fixedExpenseForm .fixed-expense-budget-summary article:last-child{border-right:0!important}
#appView #fixedExpenseForm .fixed-expense-budget-summary span{font-size:12px!important;font-weight:400!important;color:var(--ws-muted)!important;letter-spacing:0!important;text-transform:none!important}
#appView #fixedExpenseForm .fixed-expense-budget-summary strong{font-size:21px!important;font-weight:600!important;color:var(--ws-ink)!important;overflow-wrap:anywhere!important}
#appView #fixedExpenseForm>.modal-actions{display:flex!important;justify-content:end!important;gap:10px!important;margin:0!important;padding:18px 26px!important;position:sticky!important;bottom:0!important;z-index:4!important;background:var(--ws-canvas)!important;border-top:1px solid var(--ws-line)!important;box-shadow:none!important}
#appView #fixedExpenseForm>.modal-actions>button{flex:0 1 auto!important;width:auto!important;min-width:110px!important;padding:9px 16px!important}
@media(max-width:1280px){
  #appView #presupuestoModule .project-list-card{grid-template-columns:minmax(220px,2fr) minmax(170px,1.3fr) minmax(140px,1fr) 120px!important;padding-right:52px!important}
  #appView #presupuestoModule .project-list-card>.row-flag-cell{position:absolute!important;right:12px!important;top:12px!important}
  #appView #presupuestoModule .budget-actions{grid-column:4!important}
  #appView #cuentasCobrarModule :where(.receivable-ledger-head,.receivable-account-card){grid-template-columns:minmax(200px,2fr) minmax(130px,1fr) 115px minmax(130px,1fr) 36px!important;gap:10px!important}
}
@media(max-width:960px){
  #appView #presupuestoModule .project-list-card{grid-template-columns:minmax(180px,1.5fr) minmax(160px,1fr)!important}
  #appView #presupuestoModule .budget-actions{grid-column:auto!important}
  #appView #presupuestoModule .project-list-amount{text-align:left!important}
  #appView #presupuestoModule .project-detail-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #appView .operational-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #appView #cuentasCobrarModule .receivable-ledger-head{display:none!important}
  #appView #cuentasCobrarModule .receivable-account-card{grid-template-columns:minmax(180px,1.7fr) minmax(130px,1fr)!important;position:relative!important;padding-right:52px!important;gap:12px!important}
  #appView #cuentasCobrarModule .receivable-account-actions{position:absolute!important;right:12px!important;top:14px!important}
  #appView #cuentasCobrarModule .receivable-account-money{text-align:left!important}
  #appView #cuentasCobrarModule .module-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  #appView #presupuestoModule .project-list-card{grid-template-columns:minmax(0,1fr)!important}
  #appView #presupuestoModule .project-list-card .budget-actions{justify-content:start!important}
  #appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article{padding:14px!important;border-bottom:1px solid var(--ws-line)!important}
  #appView :where(.operational-detail-totals,.receivables-overview,.credit-summary-grid)>article>strong{font-size:21px!important}
  #appView :where(.operational-detail-heading,.operational-detail-toolbar){flex-direction:column!important;align-items:start!important}
  #appView .operational-info-grid{grid-template-columns:minmax(0,1fr)!important}
  #appView #cuentasCobrarModule .receivable-account-card{grid-template-columns:minmax(0,1fr)!important}
  #appView #cuentasCobrarModule .receivable-overview-values{grid-template-columns:minmax(0,1fr)!important}
  #appView #cuentasCobrarModule .receivable-overview-values article{border-bottom:1px solid var(--ws-line)!important}
  #appView #prestamosModule .credit-ledger-filters{grid-template-columns:minmax(0,1fr)!important}
  #appView #fixedExpenseForm .fixed-expense-form-grid,#appView :where(.user-credit-form-grid,.user-credit-payment-grid){grid-template-columns:minmax(0,1fr)!important}
  #appView #fixedExpenseForm .workspace-form-section{padding:18px!important}
  #appView #fixedExpenseForm>.modal-heading,#appView #fixedExpenseForm>.modal-actions{padding:18px!important}
  #appView #fixedExpenseForm .fixed-expense-budget-summary{grid-template-columns:minmax(0,1fr)!important}
  #appView #fixedExpenseForm .fixed-expense-budget-summary article{border-right:0!important;border-bottom:1px solid var(--ws-line)!important}
}
@media(prefers-reduced-motion:reduce){
  #appView#appView *,#appView#appView *::before,#appView#appView *::after,#appView#appView dialog::backdrop{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  #appView :where(button,a[class*="button"]):active,#appView #inicioModule .home-business-card[data-home-module]:hover,#appView #proyectosModule .operational-project-card:hover{transform:none!important}
}
#appView#appView#appView.hidden,#appView#appView#appView .hidden,#appView#appView#appView [hidden]{display:none!important}
}
