/* Wadi UI 2026 — shared, responsive presentation, independent of business rules. */
:root{--navy:#214e3b;--navy-light:#32644e;--navy-dark:#153626;--cream:#f7f8f5;--cream-dark:#edf1ea;--border:#dce3dc;--text:#25372e;--text-muted:#617067;--gold:#c8a15a}
body{background:#f4f6f2;font-size:14px;line-height:1.5}
button,input,select,textarea{font:inherit}button{touch-action:manipulation}
:focus-visible{outline:3px solid #518ab2;outline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
header{padding:14px 28px;box-shadow:none;gap:16px}header h1{font-size:20px;letter-spacing:-.3px}.subtitle{color:#d2e0d8}
nav.tabs{padding:0 24px;border-bottom:1px solid var(--border);z-index:100;box-shadow:none;min-height:52px}.tab-btn{padding:14px 18px;font-size:14px}.tab-btn.active{background:#edf3eb;border-bottom-color:#214e3b;color:#214e3b}
main{padding:24px 28px 64px;max-width:none;width:100%}.section-head h2,.list-heading h2{font-size:25px;font-weight:700;letter-spacing:-.6px;color:var(--text)}
.list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:750;color:var(--text-muted);margin-bottom:3px}.heading-actions{display:flex;align-items:center;gap:10px}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.list-toolbar .busqueda-inline{flex:1;min-width:260px;max-width:560px;margin:0}.busqueda-inline>span{display:none}.busqueda-input,#doc-busqueda{width:100%;min-width:0!important;border:1px solid #ced8ce;border-radius:8px;padding:10px 14px;font-size:14px;height:42px;background:#fff;color:var(--text);font-weight:400}
.view-controls{display:flex;align-items:center;gap:8px;margin-left:auto}.btn{font-size:13px;line-height:1.3;padding:10px 14px;min-height:38px;border-radius:7px;font-weight:650}.btn-icon{padding:7px 10px}.btn-secondary{border-color:#d2dcd2;color:#365441;background:#fff}.btn-primary{background:#214e3b;color:white}.btn-danger{border-color:#e7d2ce;color:#9c4034}.btn:disabled{cursor:not-allowed}.btn-link{border:0;background:none;color:var(--navy);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.btn:hover{box-shadow:0 1px 3px #214e3b12}
.filter-slot{margin:0 0 4px}.filter-bar{position:static;top:auto;z-index:auto;padding:12px 14px;border:1px solid var(--border);border-radius:9px;box-shadow:none;gap:12px 20px;background:#edf1ea}.filter-group{gap:7px}.filter-label{font-size:11px;letter-spacing:.35px}.filter-select{min-height:36px;padding:6px 28px 6px 10px;color:#344d3e;font-size:13px;font-weight:500;border-color:#cfd9cf;max-width:260px}.filter-toggle{display:none}.extra-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0 4px}.extra-filters label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.extra-filters input{border:1px solid var(--border);border-radius:6px;background:white;padding:7px 9px;min-height:36px;max-width:160px;font-size:13px;color:var(--text)}.extra-filters input[type=number]{width:72px}
.list-meta{display:flex;align-items:center;gap:12px;min-height:40px;flex-wrap:wrap;font-size:12px;padding:4px 0 12px;color:var(--text-muted)}.result-count{white-space:nowrap;font-weight:600}.active-filter-chips{display:flex;gap:6px;flex-wrap:wrap}.filter-chip{border:1px solid #d2ded1;background:#e9efe5;color:#355b40;border-radius:20px;padding:3px 9px;font-size:11px;cursor:pointer}.clear-filters{margin-left:auto;font-size:12px}
.column-picker{position:relative}.column-picker>summary{list-style:none;cursor:pointer;user-select:none}.column-picker>summary::-webkit-details-marker{display:none}.column-picker[open]>summary{background:#edf3eb}.column-options{position:absolute;right:0;top:calc(100% + 8px);width:260px;background:#fff;padding:14px;box-shadow:0 8px 30px #16372225;border:1px solid var(--border);border-radius:10px;z-index:150;max-height:65vh;overflow:auto}.column-options label{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:13px}.column-options input{width:16px;height:16px;accent-color:#214e3b}.column-options .btn{margin-top:8px;width:100%;justify-content:center}
.subtabs{margin-bottom:20px;overflow:auto;white-space:nowrap;gap:8px}.subtab-btn{padding:9px 14px;font-size:13px;flex-shrink:0}.subtab-btn.active{background:#e7eee3;border-radius:7px 7px 0 0;border-color:#214e3b}.card{border:1px solid var(--border);box-shadow:0 1px 2px #263b2710;border-radius:10px}.record-table-wrap.card{max-height:calc(100dvh - 250px);min-height:120px;scrollbar-gutter:auto;overscroll-behavior:auto;isolation:isolate}
table.data{font-size:14px;border-collapse:separate;border-spacing:0}table.data th,table.data td{padding:12px 14px;border-bottom:1px solid #e7ece5;line-height:1.45}table.data th{font-size:12px;text-transform:none;letter-spacing:0;color:#5c6d60;background:#edf2e9;font-weight:650}table.data thead th{top:0;z-index:4;box-shadow:0 1px 0 var(--border)}table.data td{background:#fff}table.data tr:hover td{background:#f5f8f2}tr.fila-completada td:not(.actions){opacity:1!important}
table.data.record-table td{font-size:14px!important;line-height:1.45!important;padding:12px 14px!important;vertical-align:middle;max-width:280px;white-space:normal;overflow-wrap:anywhere;min-width:125px}table.record-table td.col-wrap{min-width:210px;max-width:320px}table.record-table td.identity-column{min-width:220px;max-width:340px;font-weight:650}table.record-table .identity-column{position:sticky;left:0;z-index:2;background:#fff;border-right:1px solid #e5ebe2}table.record-table thead .identity-column{z-index:6;background:#edf2e9}
table.record-table td.actions{min-width:170px;max-width:230px;width:180px;white-space:normal;text-align:right}table.record-table td.actions button{margin:2px 0 2px 5px;font-size:12px;min-height:32px;padding:6px 9px}.row-delete{font-size:20px!important;padding:2px 9px!important}.detail-button{font-weight:700}.column-hidden{display:none!important}.column-header{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0}.column-header-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.column-filter-trigger{display:inline-flex;align-items:center;justify-content:center;flex:0 0 23px;width:23px;height:23px;padding:0;border:1px solid transparent;border-radius:5px;background:transparent;color:#6e7e72;font:inherit;font-size:11px;cursor:pointer}.column-filter-trigger:hover,.column-filter-trigger:focus-visible{background:#fff;border-color:#becbbe;color:#214e3b}.column-filter-trigger.active{background:#dce9d7;border-color:#8fa98e;color:#174a35}.column-filter-popover{position:fixed;z-index:10000;padding:12px;background:#fff;color:#25372e;border:1px solid #bdcabb;border-radius:9px;box-shadow:0 14px 36px rgba(21,54,38,.24);font-size:13px}.column-filter-title{font-weight:750;margin-bottom:9px;color:#214e3b}.column-filter-search{width:100%;min-height:38px;border:1px solid #cbd6cc;border-radius:6px;padding:7px 10px;background:#fff;color:#25372e}.column-filter-all,.column-filter-option{display:flex;align-items:center;gap:8px;padding:7px 4px;cursor:pointer}.column-filter-all{border-bottom:1px solid #e3e9e2;font-weight:650}.column-filter-all input,.column-filter-option input{width:16px;height:16px;accent-color:#214e3b}.column-filter-values{max-height:230px;overflow:auto;padding:4px 0}.column-filter-option:hover{background:#f1f5ef}.column-filter-option span{min-width:0;overflow-wrap:anywhere}.column-filter-empty{padding:16px 4px;text-align:center}.column-filter-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #e3e9e2;padding-top:10px;margin-top:6px}.column-filter-actions .btn{min-height:34px;padding:7px 11px}.numeric-column{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap!important;font-weight:650}.cell-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;overflow-wrap:anywhere;max-height:3em;font-weight:400}.identity-title{font-weight:650!important}.cell-secondary{display:block;font-size:12px!important;color:#68766b;line-height:1.4;margin-top:4px;font-weight:400}.cell-secondary.cell-preview{max-height:1.4em;-webkit-line-clamp:1}
.badge, #tabla-Clientes .badge,#tabla-Proveedores .badge{font-size:12px;padding:3px 8px;border-radius:5px;font-weight:650}.badge-neutral{background:#eef0e9;color:#546344}.aging-cell{font-size:13px;line-height:1.4}.aging-cell .aging-days{font-size:12px}.celda-dropdown{cursor:pointer}.celda-editable:focus{outline:2px solid #518ab2;outline-offset:-2px}.record-table td input,.record-table td select,.record-table td textarea{max-width:100%;font-size:14px;padding:8px;border:1px solid #789b75;border-radius:6px;background:#fff}.record-table td:has(input),.record-table td:has(select),.record-table td:has(textarea){overflow:visible}.record-table .notas-conversacion{font-size:13px}
.summary-strip{display:flex!important;gap:8px!important;flex-wrap:wrap;margin-bottom:14px!important}.summary-strip .card{display:flex;align-items:center;gap:9px;padding:7px 12px!important;border:1px solid var(--border)!important;box-shadow:none;font-size:12px!important;border-radius:7px;min-height:38px}.summary-strip .card>div:first-child{font-size:17px!important;line-height:1.3}.summary-strip .resumen-label{font-size:12px;white-space:nowrap}.summary-strip .resumen-label::after{content:none}.resumen-click.resumen-seleccionado{background:#e5eddf;outline:1px solid #7d9b74;box-shadow:none}.annual-summary{border:1px solid var(--border);border-radius:8px;background:#fff}.annual-summary>summary{padding:12px 15px;cursor:pointer;font-weight:650;font-size:13px}.annual-summary>.card{border:0;box-shadow:none;max-height:380px;overflow:auto}.annual-summary table{max-width:680px}.annual-summary td:first-child{white-space:normal;width:70%}.annual-summary .muted{font-weight:400}.empty-state{padding:45px 24px}.empty-state strong{display:block;color:#47603e;font-size:17px;margin-bottom:5px}
.attachment-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.attachment{display:inline-flex;align-items:center;gap:6px;font-size:12px;text-decoration:none}.attachment img{width:42px;height:42px;border-radius:6px;object-fit:cover;border:1px solid #dbe3d5}.record-table .attachment:has(img)>span{display:none}.attachment-unavailable{color:#865137;font-size:12px;background:#fff2e4;border-radius:5px;padding:4px 7px}.drawer-body .attachment img{width:110px;height:90px}.drawer-body .attachment{flex-direction:column}.link-archivo{color:#295844;text-underline-offset:3px}.attachment-download-all{white-space:nowrap}.log-photos-editor>.attachment-download-all{margin:0 0 10px auto;display:block}
.modal{max-width:860px;max-height:90dvh;border-radius:14px}.modal-head{background:#214e3b;padding:18px 24px}.modal-head h3{font-size:18px}.modal-body{padding:22px 28px}.modal-foot{background:#f7f9f4}.modal-open,.drawer-open{overflow:hidden}.form-help{font-size:12px;color:var(--text-muted);margin-bottom:22px}.form-section{border:0;margin:0 0 24px;padding:0}.form-section legend{width:100%;padding:0 0 10px;border-bottom:1px solid var(--border);margin-bottom:16px;font-size:15px;font-weight:700;color:#214e3b}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.field label{font-size:12px;letter-spacing:0;text-transform:none;color:#50634f}.field input,.field select,.field textarea{border-radius:7px;min-height:42px}.field .hint{font-size:12px}.field textarea{line-height:1.55}.form-section .contactos-editor{background:#f7f9f4;border-radius:8px}.upload-picker{padding:18px!important;border:1px dashed #8fa98b;border-radius:8px;background:#f6f9f2;cursor:pointer;font-size:14px!important;color:#214e3b!important;text-align:center}.accessible-file-input{height:1px!important;min-height:1px!important;width:1px!important;padding:0!important;position:absolute;opacity:0}.upload-picker:has(+input:focus-visible){outline:3px solid #518ab2}.upload-previews{display:flex;gap:10px;flex-wrap:wrap}.upload-preview{max-width:170px;font-size:12px;overflow-wrap:anywhere}.upload-preview img{width:110px;height:85px;object-fit:cover;border-radius:7px;display:block;margin-bottom:5px}
.drawer-backdrop{position:fixed;inset:0;z-index:450;background:#11261b55;display:flex;justify-content:flex-end}.record-drawer{height:100dvh;width:min(720px,95vw);display:flex;flex-direction:column;background:#fff;box-shadow:-10px 0 40px #173b2320}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px;border-bottom:1px solid var(--border);background:#f6f8f2}.drawer-head h2{font-size:21px;line-height:1.35;overflow-wrap:anywhere;max-height:5.5em;overflow:auto}.drawer-close{font-size:23px;flex-shrink:0}.drawer-body{overflow:auto;flex:1;padding:24px;overscroll-behavior:contain}.drawer-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--border);padding:16px 24px;background:#f7f9f4}.detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}.detail-field{min-width:0}.detail-field.full{grid-column:1/-1}.detail-field dt{font-size:12px;font-weight:650;color:#617259;margin-bottom:6px}.detail-field dd{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.edit-note{margin-top:12px}.detail-field .notas-conversacion{max-height:none}
.detail-actions{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--border)}
.admin-list-search{max-width:520px;margin-bottom:14px}
.summary-strip .resumen-click.resumen-seleccionado .resumen-label::after{content:none}
.detail-button{white-space:nowrap}
.calendar-event-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-height:4.2em}
.card.record-table-wrap:has(>table.data){max-height:calc(100dvh - 250px)}
@media(max-width:640px){.view-controls .column-picker{display:none}}
@media(max-width:640px){
  .card.record-table-wrap:has(>table.data){max-height:none;overflow:visible}
  table.data.record-table td{padding:0!important;min-width:0!important;max-width:none!important}
  table.data.record-table td.actions{padding-top:10px!important}
  .card:has(>table.documents-table){max-height:none;overflow:visible;padding:0;background:transparent;border:0;box-shadow:none}
  .documents-table,.documents-table tbody{display:block}.documents-table thead{display:none}
  .documents-table tr{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;padding:14px;background:#fff;border:1px solid var(--border);border-radius:9px;margin-bottom:12px}
  .documents-table td{display:block;min-width:0!important;max-width:none!important;width:auto;padding:0;border:0;white-space:normal}
  .documents-table td:nth-child(2){display:none}.documents-table td:nth-child(3){font-size:15px;grid-column:2}.documents-table td:nth-child(4),.documents-table td:nth-child(5),.documents-table td.actions{grid-column:2}
  .documents-table td:nth-child(5)::before{content:'Visible para: ';color:var(--text-muted);font-size:12px}.documents-table .actions .btn{min-height:40px}
}
table.record-table td.actions{min-width:110px;width:110px;max-width:130px}table.record-table td.actions button:not(.detail-button){display:none}
.inicio-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:14px!important}.inicio-card{color:#214e3b!important;background:#fff!important;border:1px solid #d3dfce!important;padding:20px!important;min-height:150px}.inicio-card>div:first-child{font-size:20px!important}.inicio-card>div:nth-child(2){font-size:32px!important;margin:4px 0!important;letter-spacing:-1px}.inicio-card.zero-count{background:#eff2ec!important;min-height:100px;opacity:1;color:#697564!important}.inicio-card.zero-count>div:first-child{display:none}.inicio-card.zero-count>div:nth-child(2){font-size:23px!important}.last-updated{font-size:12px;color:var(--text-muted)}.home-section .section-head{margin-bottom:18px}.home-section .section-head p{margin:4px 0 10px}.home-section .section-head h2{margin-bottom:3px}
.calendar-view{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}.calendar-heading{display:flex;align-items:center;gap:12px;padding:16px;flex-wrap:wrap}.calendar-heading h3{text-transform:capitalize;font-size:17px;margin-right:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekday{padding:9px;text-align:center;font-size:12px;font-weight:650;background:#eff3e9}.calendar-day,.calendar-blank{min-height:115px;padding:7px;border-top:1px solid var(--border);border-right:1px solid var(--border);font-size:12px}.calendar-blank{background:#fafbf7}.calendar-day.today{background:#f3f8ea}.calendar-day.today>span{background:#214e3b;color:white;border-radius:20px;padding:3px 6px}.calendar-event{display:block;width:100%;padding:6px;text-align:left;border:0;border-left:3px solid #739564;border-radius:3px;background:#edf3e5;margin-top:7px;cursor:pointer;font-size:11px;overflow-wrap:anywhere}.calendar-event small{display:block;color:#65785e;margin-top:3px}.calendar-undated{padding:15px;border-top:1px solid var(--border)}.calendar-undated h3{font-size:14px;margin-bottom:8px}.calendar-undated button{margin:4px;max-width:360px;text-align:left}
.document-upload-hint{font-size:12px;color:#65745f;margin-top:12px}.document-count{font-size:12px;color:var(--text-muted);margin:0 0 8px}.documents-table td:nth-child(3){max-width:400px;white-space:normal!important;overflow-wrap:anywhere}.documents-table td:nth-child(3) button{font-size:14px!important}.document-description summary{font-size:13px;cursor:pointer}.document-description p{white-space:pre-wrap;margin-top:12px}.document-description[open]{max-height:300px;overflow:auto}.documents-table td:nth-child(5){max-width:240px;white-space:normal}.documents-table td:nth-child(5) .badge{white-space:normal}
.admin-role-select{display:flex;align-items:center;gap:12px;margin-bottom:20px}.role-permissions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.permission-module{border:1px solid var(--border);border-radius:8px;padding:16px}.permission-module h4{font-size:14px;margin-bottom:12px;color:#214e3b}.permission-module .admin-permission-cell{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.permission-module input{width:16px;height:16px;accent-color:#214e3b}.permission-module label{font-size:13px}.admin-role-select select{min-width:220px}
@media(min-width:1800px){main{padding-left:36px;padding-right:36px}table.record-table td.identity-column{min-width:300px;max-width:420px}table.record-table td.col-wrap{max-width:420px}.record-table-wrap.card{max-height:calc(100dvh - 250px)}}
@media(max-width:900px){header{padding:12px 18px}nav.tabs{padding:0 10px}.tab-btn{padding:13px 12px;font-size:13px}main{padding:20px 18px 40px}.list-heading h2{font-size:23px}.record-table-wrap.card{max-height:calc(100dvh - 260px)}}
@media(max-width:640px){
  header{padding:12px 14px;align-items:flex-start}header h1{font-size:17px;gap:8px}.brand-logo{width:34px;height:34px}.subtitle{font-size:10px;max-width:180px}.header-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.header-user{display:none}.header-user-tools{gap:5px}.header-btn{padding:7px;font-size:11px;min-height:36px}.header-settings{width:36px;height:36px}.header-actions>#btn-cambiar-password{display:none}
  nav.tabs{min-height:48px;top:0;padding:0 6px}.tab-btn{padding:13px 12px;font-size:13px}main{padding:18px 12px 40px}.subtabs{margin-bottom:16px;gap:0}.subtab-btn{padding:9px 11px}.list-heading{align-items:center;margin-bottom:15px;gap:10px}.list-heading h2{font-size:22px}.eyebrow{font-size:9px}.heading-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.heading-actions .btn{font-size:12px;padding:9px 11px}.list-toolbar{gap:10px}.list-toolbar .busqueda-inline{flex-basis:100%;max-width:none}.view-controls{margin:0;width:100%;justify-content:flex-start;gap:7px}.filter-toggle{display:inline-flex}.view-controls .btn,.view-controls .filter-select{font-size:12px;min-height:38px}.column-options{left:0;right:auto;max-width:calc(100vw - 28px)}.filter-slot:not(.mobile-filters-open){display:none}.filter-bar{padding:12px;gap:12px;position:static;flex-direction:row}.filter-group{flex:1 1 135px;display:flex;flex-direction:column;align-items:stretch;gap:4px}.filter-select{max-width:100%;width:100%}.filter-label{font-size:11px}.extra-filters{background:#edf1ea;border-radius:8px;padding:12px;margin-top:8px}.extra-filters input{max-width:137px}.list-meta{gap:7px;padding-bottom:10px;min-height:35px}.active-filter-chips{order:3;width:100%}.clear-filters{font-size:12px}.filter-chip{font-size:11px}.summary-strip{flex-wrap:nowrap;overflow-x:auto;padding:2px 1px 6px;gap:6px!important}.summary-strip .card{flex-shrink:0;padding:5px 10px!important;min-height:34px}.summary-strip .card>div:first-child{font-size:15px!important}
  .record-table-wrap.card{background:none;border:0;overflow:visible;max-height:none;min-height:0;box-shadow:none;border-radius:0}.record-table{display:block;width:100%;border:0}.record-table thead{display:none}.record-table tbody{display:flex;flex-direction:column;gap:12px}.record-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--border);border-radius:10px;background:#fff;padding:12px;gap:10px 14px}.record-table td{display:none!important;position:static!important;min-width:0!important;max-width:none!important;border:0!important;background:transparent!important;width:auto!important;padding:0!important;vertical-align:top}.record-table td.mobile-priority:not(.column-hidden),.record-table td.identity-column,.record-table td.actions{display:block!important}.record-table td.identity-column{grid-column:1/-1;font-size:16px!important;font-weight:700}.record-table td.mobile-priority:not(.identity-column)::before{content:attr(data-label);display:block;font-size:11px;font-weight:500;color:#68785f;margin-bottom:3px}.record-table td.actions{grid-column:1/-1;border-top:1px solid #e5ece1!important;padding-top:9px!important;text-align:right}.record-table td.actions .btn{min-height:38px;font-size:12px}.record-table td.actions .detail-button{float:left;margin-left:0}.record-table td:has(.empty-state){display:block!important;grid-column:1/-1}.record-table td.numeric-column{text-align:left!important}.record-table .cell-preview{-webkit-line-clamp:2;max-height:3em}.record-table tr:hover td{background:none}.record-table .cell-secondary{font-size:12px!important}.record-table .badge{font-size:12px}
  .annual-summary .muted{display:none}.annual-summary>.card{padding:10px;max-height:320px}.annual-summary table.data td{padding:10px 8px;font-size:13px}.form-grid{grid-template-columns:1fr}.modal-bg{padding:8px}.modal{max-height:96dvh;max-width:100%;border-radius:10px}.modal-head{padding:15px 18px}.modal-body{padding:18px}.modal-foot{padding:12px 18px}.field input,.field select,.field textarea{font-size:16px;min-height:44px}.modal-close{width:38px;height:38px}.form-section{margin-bottom:20px}.drawer-backdrop{background:#12281c80}.record-drawer{width:100vw}.drawer-head{padding:18px}.drawer-head h2{font-size:20px}.drawer-body{padding:20px 18px}.drawer-foot{padding:12px 18px}.detail-fields{grid-template-columns:1fr;gap:20px}.detail-field{grid-column:1/-1}.detail-field dd{font-size:15px}
  .inicio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.inicio-card{min-height:140px;padding:14px!important;font-size:12px}.inicio-card.zero-count{min-height:94px}.inicio-card>div:nth-child(2){font-size:28px!important}.section-head h2{font-size:23px}.calendar-heading{padding:12px;gap:8px}.calendar-heading h3{font-size:15px}.calendar-heading .muted{width:100%;font-size:12px}.calendar-weekday{padding:7px 1px;font-size:10px}.calendar-day,.calendar-blank{padding:4px 2px;min-height:90px}.calendar-event{font-size:10px;padding:4px 2px;border-left-width:2px;line-height:1.35;max-height:90px;overflow:auto}.calendar-event small{font-size:9px}.calendar-undated button{max-width:100%}.documents-table td{font-size:13px;min-width:100px}.documents-table td:first-child{min-width:34px}.documents-table td:nth-child(2){display:none}.documents-table td:nth-child(3){min-width:180px}.documents-table td:nth-child(4){min-width:200px}.documents-table .actions{min-width:140px}.document-upload-hint{font-size:12px}.admin-role-select{align-items:flex-start;flex-direction:column}.role-permissions{grid-template-columns:1fr}.permission-module label{min-height:30px}.header-btn{white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Documents: a folder browser with one consistent table density. */
.documents-workspace{display:grid;grid-template-columns:248px minmax(0,1fr);gap:24px;align-items:start}
.doc-sidebar{border:1px solid var(--border);border-radius:12px;background:#fff;position:sticky;top:72px;min-width:0}
.doc-sidebar>summary{padding:16px;font-size:14px;font-weight:700;cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}
.doc-sidebar>summary::-webkit-details-marker{display:none}.doc-sidebar>summary::after{content:'▾';margin-left:auto}.doc-sidebar:not([open])>summary::after{content:'▸'}
.doc-sidebar-count{font-size:12px;background:#edf1ea;border-radius:12px;padding:1px 7px;color:var(--text-muted)}
.doc-sidebar nav{padding:0 8px 12px;max-height:calc(100dvh - 210px);overflow:auto}.doc-sidebar ul{list-style:none;padding:0;margin:0}.doc-sidebar li>div>ul{padding-left:14px;border-left:1px solid #e4eae3;margin-left:13px}.doc-tree-row{display:flex;align-items:flex-start;gap:2px}
.doc-folder-link{background:none;border:0;padding:10px 8px;color:#4d6154;text-align:left;font-size:14px;border-radius:6px;cursor:pointer;width:100%;min-width:0;display:flex;gap:8px;align-items:baseline;line-height:1.4}.doc-folder-link span:last-child{overflow-wrap:anywhere}.doc-folder-link:hover{background:#f1f5ef}.doc-folder-link[aria-current]{background:#e5eee2;color:#214e3b;font-weight:700}.doc-root-link{margin-bottom:6px}
.doc-tree-toggle{background:none;border:0;cursor:pointer;color:#647666;padding:7px 0;min-height:38px;flex:0 0 22px;font-size:18px}.doc-tree-spacer{flex:0 0 22px}.doc-sidebar-empty{padding:12px;color:var(--text-muted);font-size:14px}
.doc-main{min-width:0}.doc-location{display:flex;gap:12px;align-items:center;margin-bottom:18px}.doc-location>.btn{flex-shrink:0;min-width:38px;padding:8px}.doc-breadcrumbs{min-width:0}.doc-breadcrumbs ol{list-style:none;display:flex;align-items:center;flex-wrap:wrap;padding:0;margin:0;gap:6px}.doc-breadcrumbs li{display:flex;gap:6px;align-items:baseline;min-width:0}.doc-breadcrumbs li>span{color:#819081}.doc-breadcrumbs button{font:inherit;font-size:14px;color:#57705e;background:none;border:0;padding:5px 3px;cursor:pointer;overflow-wrap:anywhere;text-align:left}.doc-breadcrumbs button:hover{text-decoration:underline}.doc-breadcrumbs button[aria-current]{font-weight:700;color:#25372e}
.doc-search-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;background:#edf1ea;border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:22px}.doc-search{flex:1 1 280px;min-width:0}.doc-filter{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:14px}.doc-filter>span{color:#586a5e;font-size:13px}.doc-filter select{font-size:14px;min-height:42px;max-width:100%}.doc-search-tools>.btn-link{min-height:42px}.doc-content-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.doc-content-head h3{font-size:20px;line-height:1.35;margin:0;overflow-wrap:anywhere}.doc-result-count{font-size:13px;color:var(--text-muted);margin:4px 0 0}.doc-create-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.doc-create-actions .btn{font-size:14px;white-space:nowrap}
.doc-list-tools{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.doc-list-tools>.doc-filter{flex-direction:row;align-items:center;gap:8px;margin-left:auto}.doc-selection-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.doc-selection-tools>span{font-size:13px;font-weight:600}.doc-selection-tools>span:empty{display:none}.doc-load-error{padding:12px 16px;border:1px solid #e1b9b0;background:#fff1eb;border-radius:8px;margin-bottom:12px;color:#873e32;font-size:14px}
.doc-table-wrap{background:#fff;border:1px solid var(--border);border-radius:10px}.doc-files-table{width:100%;table-layout:fixed}.doc-files-table th{font-size:13px;color:#5b6f60;background:#f0f4ed;text-align:left;padding:12px;border-bottom:1px solid var(--border)}.doc-files-table th:first-child{border-top-left-radius:10px}.doc-files-table th:last-child{border-top-right-radius:10px;width:118px}.doc-files-table th:nth-child(3){width:140px}.doc-files-table th:nth-child(4){width:18%}.doc-files-table td{font-size:14px;padding:15px 12px;vertical-align:top;white-space:normal!important;border-bottom:1px solid #e8eee5;overflow-wrap:anywhere}.doc-files-table tr:last-child td{border-bottom:0}.doc-files-table tr:hover td{background:#f8faf5}.doc-files-table .doc-selected td{background:#edf4e8}.doc-files-table .doc-select-cell{width:42px;padding-right:0}.doc-select-cell input{height:17px;width:17px;accent-color:#214e3b;cursor:pointer;margin-top:4px}.doc-file-name{display:flex;gap:12px;align-items:flex-start}.doc-file-name>div{min-width:0;flex:1}.doc-file-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;min-height:38px;border-radius:8px;background:#f0f4ea;font-size:21px}
.doc-name{padding:0;background:none;border:0;color:#214e3b;font-size:15px;font-weight:650;line-height:1.5;cursor:pointer;text-align:left;text-decoration:none;overflow-wrap:anywhere}.doc-name:hover{text-decoration:underline;text-underline-offset:3px}span.doc-name{cursor:default}.doc-external{color:#71846c}.doc-file-name .cell-secondary{font-size:12px!important;margin-top:6px}.doc-description-short,.doc-description{margin:6px 0 0;font-size:13px;color:#5f7064;line-height:1.5;overflow-wrap:anywhere}.doc-description-short{white-space:pre-wrap}.doc-description summary{cursor:pointer}.doc-description summary span{color:#214e3b;text-decoration:underline;white-space:nowrap}.doc-description p{white-space:pre-wrap;margin:8px 0 0;max-height:300px;overflow:auto}.doc-location-link{display:block;border:0;padding:4px 0;background:none;color:#537451;text-decoration:underline;text-underline-offset:2px;text-align:left;cursor:pointer;font-size:13px;overflow-wrap:anywhere}.doc-access .badge{white-space:normal;font-size:12px}.doc-mobile-label{display:none}
.doc-actions{text-align:right}.doc-action-menu{position:relative;display:inline-block;text-align:left}.doc-action-menu summary{list-style:none;cursor:pointer;white-space:nowrap;font-size:13px}.doc-action-menu summary::-webkit-details-marker{display:none}.doc-action-menu summary::after{content:' ▾'}.doc-action-menu>div{position:absolute;right:0;top:calc(100% + 5px);min-width:180px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #18372020;padding:5px;z-index:40}.doc-action-menu button{background:none;border:0;border-radius:5px;text-align:left;width:100%;padding:10px 12px;font-size:14px;cursor:pointer;color:#365441}.doc-action-menu button:hover{background:#f0f4ed}.doc-action-menu button.doc-delete{color:#a1372d}.doc-empty{padding:50px 20px;text-align:center}.doc-empty strong{font-size:17px;color:#405747}.doc-empty p{font-size:14px;font-weight:400;margin:8px 0 0}.document-upload-hint{font-size:13px;margin:14px 0;color:var(--text-muted)}
@media(min-width:1800px){.documents-workspace{grid-template-columns:280px minmax(0,1fr);gap:28px}.doc-files-table th:nth-child(3){width:180px}.doc-files-table th:nth-child(4){width:22%}}
@media(max-width:1000px){.documents-workspace{grid-template-columns:210px minmax(0,1fr);gap:16px}.doc-search{flex-basis:100%}.doc-filter{flex:1}.doc-content-head{align-items:flex-start;flex-wrap:wrap}.doc-create-actions{justify-content:flex-start}.doc-files-table th:nth-child(3){width:100px}.doc-files-table th:nth-child(4){width:110px}.doc-file-icon{display:none}.doc-list-tools>.doc-filter{flex:0 1 auto}}
@media(max-width:760px){.documents-workspace{display:block}.doc-sidebar{position:static;margin-bottom:18px}.doc-sidebar nav{max-height:220px}.doc-main{width:100%}.doc-location{gap:6px}.doc-content-head h3{font-size:19px}.doc-search-tools{padding:12px}.doc-filter select{font-size:14px;min-width:0}.doc-search-tools>.doc-filter{flex:1 1 160px}.doc-search-tools .doc-search{flex-basis:100%}.doc-files-table,.doc-files-table tbody{display:block;width:100%}.doc-table-wrap{border:0;background:none}.doc-files-table thead{display:none}.doc-files-table tbody{display:flex;flex-direction:column;gap:10px}.doc-files-table tr{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px 10px;background:white;border:1px solid var(--border);border-radius:10px;padding:14px}.doc-files-table td{padding:0!important;border:0!important;min-width:0!important;max-width:none!important;width:auto!important;display:block;background:none!important}.doc-files-table .doc-select-cell{grid-column:1;grid-row:1;align-self:start}.doc-identity{grid-column:2/-1}.doc-files-table .doc-file-type{grid-column:2;color:var(--text-muted);font-size:13px}.doc-files-table .doc-access{grid-column:2/-1;font-size:13px}.doc-files-table .doc-actions{grid-column:2/-1;border-top:1px solid var(--border)!important;padding-top:10px!important}.doc-files-table td[colspan]{grid-column:1/-1}.doc-mobile-label{display:inline;color:var(--text-muted)}.doc-files-table .doc-selected{background:#edf4e8}.doc-action-menu summary{min-height:40px}.doc-empty{padding:26px 12px}.doc-list-tools .doc-filter select{min-height:40px}.doc-name{font-size:16px}.doc-action-menu>div{z-index:50}}
.column-defaults{margin-top:24px;padding-top:24px;border-top:1px solid var(--border,#ddd)}
.column-default-card{border:1px solid var(--border,#d5dfd8);border-radius:10px;margin:10px 0;background:#fff}
.column-default-card>summary{padding:14px;cursor:pointer;font-weight:600;color:var(--navy,#214e3b)}
.column-default-card>summary>span{margin-left:12px;font-size:11px;font-weight:400;color:#68766e}
.column-default-card form{padding:0 14px 14px}
.column-default-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px;padding:12px 0 18px}
.column-default-options label{display:flex;gap:8px;align-items:center;font-size:13px}
.column-default-actions{display:flex;flex-wrap:wrap;gap:8px}
.column-sync-status{max-width:240px;white-space:normal;padding:4px;font-size:11px;line-height:1.4}

/* Saved file controls remain usable on small screens. */
.saved-attachments-editor{display:grid;gap:8px;margin-top:12px}
.saved-attachment-row{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 12px;border:1px solid var(--border,#ccd5cf);border-radius:8px;min-width:0}
.saved-attachment-row>a,.saved-attachment-row>span:first-child{overflow-wrap:anywhere;min-width:0}
.attachment-owner-action{flex-shrink:0}
.saved-attachment-row .attachment-remove{color:var(--danger,#ad3434);min-height:36px}
.saved-attachment-row.pending-removal{border-style:dashed;background:rgba(173,52,52,.07)}
.saved-attachment-row.pending-removal>a,.saved-attachment-row.pending-removal>span:first-child{text-decoration:line-through;opacity:.65}

.saved-attachment-photo{display:block;width:120px;height:90px;object-fit:cover;border-radius:6px;margin-bottom:6px}

/* Customer web orders */
.customer-access-section,.customer-web-orders{margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}
.customer-access-section h3,.customer-web-orders h3{margin:0 0 14px;color:#214e3b;font-size:17px}
.customer-access-form{display:flex;align-items:end;flex-wrap:wrap;gap:10px}
.customer-access-form label,.web-order-form label{display:grid;gap:6px;color:#50634f;font-size:12px;font-weight:700}
.customer-access-form input,.web-order-form :is(input,select,textarea){width:100%;min-height:42px;padding:9px 10px;border:1px solid var(--border);border-radius:7px;background:var(--white,#fff);color:var(--ink,#17241e);font:inherit;font-size:14px}
.customer-access-form [role=status],.web-order-actions [role=status]{color:#50634f;font-size:12px}
.web-orders-list{display:grid;gap:14px}.web-orders-empty{color:var(--text-muted)}
.web-order-card{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--white,#fff)}
.web-order-card h4{margin:0 0 12px;color:#214e3b;font-size:16px}
.web-order-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.web-order-facts span{min-width:0;overflow-wrap:anywhere;font-size:14px}.web-order-facts b{display:block;margin-bottom:3px;color:#617259;font-size:11px}
.web-order-details{margin-top:14px;padding:10px 0;border-top:1px solid var(--border)}.web-order-details summary{color:#245b45;font-weight:700;cursor:pointer}
.web-order-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.web-order-detail-grid h4{margin:14px 0 8px;font-size:13px}.web-order-detail-grid ul{margin:0;padding-left:20px}.web-order-detail-grid li{margin-bottom:7px;overflow-wrap:anywhere}.web-order-detail-grid dl{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;margin:0}.web-order-detail-grid dt{color:#617259;font-size:12px}.web-order-detail-grid dd{margin:0;overflow-wrap:anywhere}
.web-order-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;padding-top:14px;border-top:1px solid var(--border)}.web-order-form .wide,.web-order-actions{grid-column:1/-1}.web-order-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.web-order-form textarea{resize:vertical}
@media(max-width:600px){.web-order-facts,.web-order-detail-grid,.web-order-form{grid-template-columns:1fr}.customer-access-form label{width:100%}}
