/* ===== COLORES DEL SISTEMA (temas). Cada persona elige el suyo en Configuración → App. ===== */
:root{--b50:239 246 255;--b100:219 234 254;--b200:191 219 254;--b300:147 197 253;--b400:96 165 250;--b500:37 99 235;--b600:29 78 216;--b700:30 64 175;--b800:30 58 138;--b900:11 30 74;--sb:#0b2a6b}
html[data-color="esmeralda"]{--b50:236 253 245;--b100:209 250 229;--b200:167 243 208;--b300:110 231 183;--b400:52 211 153;--b500:5 150 105;--b600:4 120 87;--b700:6 95 70;--b800:6 78 59;--b900:2 44 34;--sb:#053b2c}
html[data-color="morado"]{--b50:245 243 255;--b100:237 233 254;--b200:221 214 254;--b300:196 181 253;--b400:167 139 250;--b500:124 58 237;--b600:109 40 217;--b700:91 33 182;--b800:76 29 149;--b900:46 16 101;--sb:#33137a}
html[data-color="rojo"]{--b50:254 242 242;--b100:254 226 226;--b200:254 202 202;--b300:252 165 165;--b400:248 113 113;--b500:220 38 38;--b600:185 28 28;--b700:153 27 27;--b800:127 29 29;--b900:69 10 10;--sb:#5c1010}
html[data-color="naranja"]{--b50:255 247 237;--b100:255 237 213;--b200:254 215 170;--b300:253 186 116;--b400:251 146 60;--b500:234 88 12;--b600:194 65 12;--b700:154 52 18;--b800:124 45 18;--b900:67 20 7;--sb:#5a1f0b}
html[data-color="rosa"]{--b50:253 242 248;--b100:252 231 243;--b200:251 207 232;--b300:249 168 212;--b400:244 114 182;--b500:219 39 119;--b600:190 24 93;--b700:157 23 77;--b800:131 24 67;--b900:80 7 36;--sb:#5e0f33}
html[data-color="turquesa"]{--b50:240 253 250;--b100:204 251 241;--b200:153 246 228;--b300:94 234 212;--b400:45 212 191;--b500:13 148 136;--b600:15 118 110;--b700:17 94 89;--b800:19 78 74;--b900:4 47 46;--sb:#083d3a}
html[data-color="grafito"]{--b50:248 250 252;--b100:241 245 249;--b200:226 232 240;--b300:203 213 225;--b400:148 163 184;--b500:71 85 105;--b600:51 65 85;--b700:30 41 59;--b800:15 23 42;--b900:2 6 23;--sb:#111827}
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');
body { font-family: 'Inter', sans-serif; }
.sidebar-transition { transition: transform 0.3s ease; }
.fade-in { animation: fadeIn 0.3s ease; }
@keyframes fadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
.pulse-dot { animation: pulse 2s infinite; }
@keyframes pulse { 0%,100% { opacity:1; } 50% { opacity:0.5; } }
::-webkit-scrollbar { width:8px; height:8px; }
::-webkit-scrollbar-track { background:#f1f5f9; }
::-webkit-scrollbar-thumb { background:#93a9d1; border-radius:4px; }
::-webkit-scrollbar-thumb:hover { background:#94a3b8; }

#evidencePortal { display: none; }
#evidencePortal.active { display: block; }
#printContainer { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: white; z-index: 99999; overflow-y: auto; padding: 20px; }
#printContainer.active { display: block; }
.preview-wrapper { max-width: 900px; margin: 20px auto; background: white; border: 2px dashed #cbd5e1; border-radius: 12px; padding: 20px; box-shadow: 0 10px 40px rgba(0,0,0,0.15); overflow-x: auto; }
.preview-wrapper.ticket-mode { max-width: 380px; }
.preview-wrapper.letter-mode { max-width: 850px; }

.ticket-thermal { width: 80mm; margin: 0 auto; padding: 3mm; font-family: 'Courier New', monospace; font-size: 11px; color: #000; line-height: 1.4; }
.ticket-thermal .t-header { text-align:center; border-bottom: 1px dashed #000; padding-bottom: 6px; margin-bottom: 6px; }
.ticket-thermal .t-header h2 { font-size: 15px; margin: 0; font-weight: bold; }
.ticket-thermal .t-header p { margin: 2px 0; font-size: 11px; }
.ticket-thermal .t-row { display:flex; justify-content:space-between; margin: 2px 0; gap: 8px; }
.ticket-thermal .t-divider { border-top: 1px dashed #000; margin: 6px 0; }
.ticket-thermal .t-total { font-size: 13px; font-weight: bold; margin-top: 4px; }
.ticket-thermal .t-footer { text-align:center; margin-top: 8px; font-size: 10px; white-space: pre-line; }
.ticket-thermal .t-section-title { font-weight: bold; margin: 6px 0 3px 0; font-size: 11px; text-transform: uppercase; }
.ticket-thermal .t-warranty { background: #f0f0f0; padding: 5px; border-radius: 3px; margin: 6px 0; }

.letter-double { width: 190mm; max-width: 190mm; margin: 0 auto; padding: 5mm; font-family: 'Inter', sans-serif; font-size: 11px; color: #000; display: block; }
.letter-half { border: 1px solid #000; padding: 10px; margin-bottom: 10px; position: relative; page-break-inside: avoid; }
.letter-half::after { content: "✂ CORTAR AQUÍ ✂"; position: absolute; bottom: -12px; left: 50%; transform: translateX(-50%); background: white; padding: 0 10px; font-weight: bold; font-size: 10px; }
.letter-header { text-align: center; border-bottom: 2px solid #000; padding-bottom: 10px; margin-bottom: 10px; }
.letter-header h2 { font-size: 20px; margin: 0; font-weight: 800; text-transform: uppercase; }
.letter-section { margin-bottom: 10px; }
.letter-section h3 { font-size: 12px; font-weight: bold; border-bottom: 1px solid #ccc; padding-bottom: 3px; margin-bottom: 5px; text-transform: uppercase; }
.letter-row { display: flex; justify-content: space-between; margin-bottom: 4px; }
.letter-footer { margin-top: 15px; padding-top: 10px; border-top: 1px solid #000; font-size: 10px; text-align: center; white-space: pre-line; }
.letter-sign { margin-top: 30px; display: flex; justify-content: space-between; }
.letter-sign div { width: 40%; border-top: 1px solid #000; text-align: center; padding-top: 5px; font-size: 11px; }

@media print {
  body * { visibility: hidden !important; }
  #printContainer, #printContainer * { visibility: visible !important; }
  #printContainer { display: block !important; position: absolute !important; top: 0; left: 0; width: 100%; padding: 0; background: white; }
  #printContainer .preview-wrapper { border: none; box-shadow: none; margin: 0; padding: 0; max-width: 100%; }
  #printContainer .no-print { display: none !important; }
  #printContainer.print-ticket @page { size: 80mm auto; margin: 0; }
  #printContainer.print-ticket { width: 80mm; }
  #printContainer.print-ticket .preview-wrapper { max-width: 80mm; }
  #printContainer.print-letter @page { size: letter portrait; margin: 10mm; }
  #printContainer.print-letter { width: 210mm; }
  #printContainer.print-letter .preview-wrapper { max-width: 210mm; }
  #printContainer.print-letter .letter-double { width: 100%; max-width: 190mm; padding: 0; margin: 0 auto; display: block; }
  #printContainer.print-letter .letter-half { border: 1px solid #000; padding: 8px; margin-bottom: 8px; page-break-inside: avoid; }
}

.modal-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 50; align-items: center; justify-content: center; padding: 16px; }
.modal-overlay.active { display: flex; }
.bar-chart { display: flex; align-items: flex-end; gap: 8px; height: 200px; padding: 10px 0; }
.bar-item { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 4px; }
.bar { width: 100%; max-width: 50px; border-radius: 6px 6px 0 0; transition: all 0.3s; position: relative; min-height: 4px; }
.bar:hover { opacity: 0.8; }
.bar-label { font-size: 10px; color: #64748b; text-align: center; }
.bar-value { font-size: 11px; font-weight: 600; color: #1e293b; }
.photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.photo-item { position: relative; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.photo-item img { width: 100%; height: 150px; object-fit: cover; cursor: pointer; }
.photo-item .delete-photo { position: absolute; top: 5px; right: 5px; background: rgba(239,68,68,0.9); color: white; border: none; border-radius: 50%; width: 28px; height: 28px; cursor: pointer; font-size: 16px; }
.photo-item .delete-photo:hover { background: rgba(220,38,38,1); }

/* ===== TEMA AZUL PROFUNDO ===== */
body{background:#f4f7fb;-webkit-font-smoothing:antialiased}
.modal-overlay{backdrop-filter:blur(4px);background:rgba(8,20,50,.55)}
.modal-overlay.active>div{animation:modalIn .28s cubic-bezier(.2,.8,.2,1)}
@keyframes modalIn{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
.toast-pro{animation:toastIn .35s cubic-bezier(.2,.8,.2,1)}
@keyframes toastIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.nav-btn{position:relative}
.nav-btn.bg-brand-50{font-weight:600}
.nav-btn.bg-brand-50::before{content:'';position:absolute;left:0;top:20%;bottom:20%;width:3px;border-radius:0 4px 4px 0;background:rgb(var(--b600))}
#sidebar{box-shadow:1px 0 0 #e2e8f0}
.rounded-2xl{transition:box-shadow .25s ease,transform .25s ease}
#dashboard .grid>.rounded-2xl:hover{transform:translateY(-3px);box-shadow:0 12px 28px -12px rgba(30,58,138,.35)}
button{transition:background-color .2s,transform .12s,box-shadow .2s,opacity .2s}
button:active{transform:scale(.97)}
.shadow-lg{box-shadow:0 10px 25px -10px rgba(30,58,138,.45)}
tbody tr{transition:background-color .15s}
input:focus,select:focus,textarea:focus{border-color:rgb(var(--b500))!important;box-shadow:0 0 0 3px rgb(var(--b500) / .18)!important}
.bar{background:linear-gradient(to top,rgb(var(--b800)),rgb(var(--b400)));transform-origin:bottom;animation:barGrow .8s cubic-bezier(.2,.8,.2,1) both}
.bar-item:nth-child(2) .bar{animation-delay:.05s}.bar-item:nth-child(3) .bar{animation-delay:.1s}
.bar-item:nth-child(4) .bar{animation-delay:.15s}.bar-item:nth-child(5) .bar{animation-delay:.2s}
.bar-item:nth-child(6) .bar{animation-delay:.25s}
@keyframes barGrow{from{transform:scaleY(0)}}
.section-content.fade-in>*{animation:rise .5s ease both}
.section-content.fade-in>*:nth-child(2){animation-delay:.06s}
.section-content.fade-in>*:nth-child(3){animation-delay:.12s}
.section-content.fade-in>*:nth-child(4){animation-delay:.18s}
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ===== SIDEBAR PRO ===== */
#sidebar{background:var(--sb)!important;border-right:0!important;box-shadow:none!important;backdrop-filter:none!important}
#sidebar .text-slate-800{color:#fff!important}
#sidebar .text-slate-600{color:#c7d6f5!important}
#sidebar .text-slate-500{color:#9db4e3!important}
#sidebar .text-slate-400{color:#7f9bd6!important}
#sidebar .border-slate-100{border-color:rgba(255,255,255,.12)!important}
#sidebar .hover\:bg-slate-50:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
#sidebar .text-red-600{color:#fca5a5!important}
#sidebar .hover\:bg-red-50:hover{background:rgba(239,68,68,.2)!important}
#sidebar .nav-btn.bg-brand-50{background:rgba(255,255,255,.15)!important;color:#fff!important}
#sidebar .nav-btn.bg-brand-50::before{background:rgb(var(--b400))!important}
#sidebar nav{overflow-x:hidden}
#sidebar .nav-btn,#sidebar nav p{white-space:nowrap}
#sbPin{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:9px;border:0;cursor:pointer;
  background:rgba(255,255,255,.12);color:#fff;font-size:15px;line-height:1;z-index:5;display:flex;align-items:center;justify-content:center}
#sbPin:hover{background:rgba(255,255,255,.25)}
#sidebar.pinned #sbPin{background:rgb(var(--b500))}
#sidebar>div:first-child{padding-top:54px!important}
@media (min-width:1024px){
  #sidebar{position:fixed!important;top:0;bottom:0;left:0;width:72px!important;transform:none!important;overflow:hidden;
    transition:width .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;z-index:45}
  #sidebar:hover,#sidebar.pinned{width:256px!important}
  #sidebar:hover:not(.pinned){box-shadow:8px 0 30px -10px rgba(8,20,50,.55)!important}
  #sidebarOverlay+div{margin-left:72px;transition:margin-left .3s cubic-bezier(.2,.8,.2,1)}
  body.sb-pinned #sidebarOverlay+div{margin-left:256px}
  #sidebar:not(:hover):not(.pinned) nav p,#sidebar:not(:hover):not(.pinned) .nav-btn span,
  #sidebar:not(:hover):not(.pinned) #sbPin{opacity:0;pointer-events:none}
  #sidebar nav p,#sidebar .nav-btn span,#sbPin{transition:opacity .2s}
  #sidebar>div:first-child{padding-left:16px!important;padding-right:16px!important}
}
@media (max-width:1023px){#sbPin{display:none}}

/* ===== SIDEBAR EMOJIS ===== */
#sidebar nav{padding-left:12px!important;padding-right:12px!important}
.nav-emoji{font-style:normal;font-size:20px;width:24px;text-align:center;line-height:1;flex-shrink:0}
.nav-label{overflow:hidden;white-space:nowrap}
#sidebar>div:first-child .gap-3>div:last-child,#sidebar>div.border-t .flex-1{transition:opacity .2s}
@media (min-width:1024px){
  #sidebar:not(:hover):not(.pinned) .nav-label{width:0;opacity:0}
  #sidebar:not(:hover):not(.pinned)>div:first-child .gap-3>div:last-child,
  #sidebar:not(:hover):not(.pinned)>div.border-t .flex-1{opacity:0}
}

/* ===== CALM UI ===== */
.tile-pro{transition:background-color .12s,color .12s!important;transform:none!important;box-shadow:none!important}
.btn-pro{box-shadow:none!important;transition:background-color .12s!important}
.tile-pro:active,.btn-pro:active{transform:none!important}
#editModal.active>div,#diagModal.active>div,#costsModal.active>div,#evidenceModal.active>div{animation:none}
/* ===== ESTADO EDITABLE ===== */
.status-select{appearance:none;-webkit-appearance:none;max-width:240px;background-repeat:no-repeat;background-position:right 10px center;background-size:10px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23475569'><path d='M5 7l5 6 5-6z'/></svg>");transition:box-shadow .15s}
.status-select:hover{box-shadow:0 0 0 2px rgb(var(--b500) / .25)}
.status-select:focus{box-shadow:0 0 0 3px rgb(var(--b500) / .28)}
/* ===== ORDEN CON PESTAÑAS ===== */
.no-sb{scrollbar-width:none}.no-sb::-webkit-scrollbar{display:none}
#detailModal>div>.sticky:first-child,#editModal>div>.sticky:first-child,#diagModal>div>.sticky:first-child,#costsModal>div>.sticky:first-child,#addPartModal>div>.sticky:first-child,#evidenceModal>div>.sticky:first-child{padding:12px 24px!important}
#detailModal h2,#editModal h2,#diagModal h2,#costsModal h2,#addPartModal h2,#evidenceModal h2{font-size:15px!important;font-weight:600!important}
#editModal h2 span,#diagModal h2 span,#costsModal h2 span{font-size:12px!important}
#detailModal.active>div,#addPartModal.active>div{animation:none}
.photo-grid.sm{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}
.photo-grid.sm .photo-item img{height:92px}
/* ===== ORDEN TAMAÑO FIJO (ESTILO-V7) ===== */
#detailModal>div,#editModal>div,#diagModal>div,#costsModal>div,#addPartModal>div,#evidenceModal>div{width:100%!important;max-width:820px!important;height:min(88vh,860px)!important;height:min(88dvh,860px)!important;max-height:none!important}
/* ===== RESUMEN-V8: menú de foto ===== */
details>summary{list-style:none}
details>summary::-webkit-details-marker{display:none}
/* ===== INFO-V9 ===== */
.status-select{width:160px!important;max-width:160px!important;padding-left:10px!important;padding-right:24px!important;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;background-position:right 8px center}
/* ===== FOLIO-V10 ===== */
.order-folio{display:inline-block;margin-left:10px;font-size:12px;font-weight:700;letter-spacing:.03em;color:rgb(var(--b700));background:rgb(var(--b50));border:1px solid rgb(var(--b100));border-radius:6px;padding:2px 8px;vertical-align:middle}
#editFolio,#diagFolio,#costsFolio{display:none!important}
/* ===== INFO-V11 ===== */
.info-row{display:block}
.info-row + .info-row{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px}
.info-lab{margin:0 0 4px 0;font-size:14px;line-height:20px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b}
.info-val{margin:0;font-size:13px;line-height:20px;font-weight:500;color:#0f172a;word-break:break-word}
@media (max-width:560px){.info-row{grid-template-columns:1fr;gap:2px}}
/* ===== ROLES: lo marcado admin-only solo lo ve el administrador ===== */
body:not(.is-admin) .admin-only{display:none!important}

/* ===== FINANZAS MINIMAL ===== */
.fin-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px}
.fin-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:16px 20px;border-bottom:1px solid #eef2f6}
.fin-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#0f172a}
.fin-title svg{width:18px;height:18px;color:#64748b}
.fin-sub{font-size:12px;color:#94a3b8;line-height:1.35}
.fin-stat{border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;background:#fff}
.fin-lab{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.fin-lab svg{width:16px;height:16px;color:currentColor;opacity:.8;flex-shrink:0}
.fin-val{margin-top:6px;font-size:22px;font-weight:600;color:#0f172a;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.fin-note{margin-top:2px;font-size:11px;color:#94a3b8}
.fin-method{border:1px solid #e2e8f0;border-radius:12px;padding:16px;background:#fff}
.fin-method-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.fin-ico{width:34px;height:34px;border:1px solid #e2e8f0;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#334155;flex-shrink:0}
.fin-ico svg{width:18px;height:18px}
.fin-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:5px 0;color:#475569;font-variant-numeric:tabular-nums}
.fin-row b{color:#0f172a;font-weight:600}
.fin-row>:last-child{white-space:nowrap;text-align:right}
.fin-row.total{border-top:1px solid #eef2f6;margin-top:4px;padding-top:9px;font-weight:600;color:#0f172a}
.fin-strip{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #eef2f6}
@media(min-width:768px){.fin-strip{grid-template-columns:repeat(4,1fr)}}
.fin-strip>div{padding:14px 20px;border-right:1px solid #eef2f6;border-bottom:1px solid #eef2f6}
.fin-strip>div:nth-child(2n){border-right:0}
@media(min-width:768px){.fin-strip>div{border-bottom:0}.fin-strip>div:nth-child(2n){border-right:1px solid #eef2f6}.fin-strip>div:last-child{border-right:0}}
.fin-expected{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}
.fin-input{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:10px;outline:none;background:#fff}
.fin-field>span{display:block;font-size:12px;font-weight:600;color:#475569;margin-bottom:6px}
.btn-dark{background:#0f172a;color:#fff}.btn-dark:hover{background:#1e293b}
.btn-line{background:#fff;color:#334155;border:1px solid #e2e8f0}.btn-line:hover{background:#f8fafc}
.tint-em .ico-chip{color:#047857;border-color:#a7f3d0}.tint-in .ico-chip{color:#4338ca;border-color:#c7d2fe}
.ico-chip{width:40px;height:40px;border:1px solid #e2e8f0;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#334155;background:#fff}
.pay-tile{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid #e2e8f0;border-radius:12px;padding:12px;font-size:13px;font-weight:500;color:#334155;background:#fff}
.pay-cj{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.pay-ad{background:#fff7ed;border-color:#fed7aa;color:#c2410c}
.pay-ef{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.pay-tr{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.pay-ta{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}
.peer:checked + .pay-tile{box-shadow:0 0 0 2px currentColor;font-weight:600}
.nav-ico{font-style:normal;width:24px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.nav-ico svg{width:20px;height:20px}
#sbPin svg{width:17px;height:17px}
/* ===== TINTES TENUES ===== */
.tint-em{background:#ecfdf5!important;border-color:#a7f3d0!important}.tint-em .fin-lab,.tint-em .fin-lab svg,.tint-em .fin-val,.tint-em .fin-ico{color:#047857!important}.tint-em .fin-ico{border-color:#a7f3d0!important;background:#fff!important}.tint-em .fin-row.total,.tint-em .fin-method-h p:first-child{color:#047857!important}.tint-em .fin-row.total,.tint-em .fin-row{border-color:#a7f3d0}
.tint-bl{background:#eff6ff!important;border-color:#bfdbfe!important}.tint-bl .fin-lab,.tint-bl .fin-lab svg,.tint-bl .fin-val,.tint-bl .fin-ico{color:#1d4ed8!important}.tint-bl .fin-ico{border-color:#bfdbfe!important;background:#fff!important}.tint-bl .fin-row.total,.tint-bl .fin-method-h p:first-child{color:#1d4ed8!important}.tint-bl .fin-row.total,.tint-bl .fin-row{border-color:#bfdbfe}
.tint-vi{background:#f5f3ff!important;border-color:#ddd6fe!important}.tint-vi .fin-lab,.tint-vi .fin-lab svg,.tint-vi .fin-val,.tint-vi .fin-ico{color:#6d28d9!important}.tint-vi .fin-ico{border-color:#ddd6fe!important;background:#fff!important}.tint-vi .fin-row.total,.tint-vi .fin-method-h p:first-child{color:#6d28d9!important}.tint-vi .fin-row.total,.tint-vi .fin-row{border-color:#ddd6fe}
.tint-am{background:#fffbeb!important;border-color:#fde68a!important}.tint-am .fin-lab,.tint-am .fin-lab svg,.tint-am .fin-val,.tint-am .fin-ico{color:#b45309!important}.tint-am .fin-ico{border-color:#fde68a!important;background:#fff!important}.tint-am .fin-row.total,.tint-am .fin-method-h p:first-child{color:#b45309!important}.tint-am .fin-row.total,.tint-am .fin-row{border-color:#fde68a}
.tint-ro{background:#fff1f2!important;border-color:#fecdd3!important}.tint-ro .fin-lab,.tint-ro .fin-lab svg,.tint-ro .fin-val,.tint-ro .fin-ico{color:#be123c!important}.tint-ro .fin-ico{border-color:#fecdd3!important;background:#fff!important}.tint-ro .fin-row.total,.tint-ro .fin-method-h p:first-child{color:#be123c!important}.tint-ro .fin-row.total,.tint-ro .fin-row{border-color:#fecdd3}
.tint-or{background:#fff7ed!important;border-color:#fed7aa!important}.tint-or .fin-lab,.tint-or .fin-lab svg,.tint-or .fin-val,.tint-or .fin-ico{color:#c2410c!important}.tint-or .fin-ico{border-color:#fed7aa!important;background:#fff!important}.tint-or .fin-row.total,.tint-or .fin-method-h p:first-child{color:#c2410c!important}.tint-or .fin-row.total,.tint-or .fin-row{border-color:#fed7aa}
.tint-sk{background:#f0f9ff!important;border-color:#bae6fd!important}.tint-sk .fin-lab,.tint-sk .fin-lab svg,.tint-sk .fin-val,.tint-sk .fin-ico{color:#0369a1!important}.tint-sk .fin-ico{border-color:#bae6fd!important;background:#fff!important}.tint-sk .fin-row.total,.tint-sk .fin-method-h p:first-child{color:#0369a1!important}.tint-sk .fin-row.total,.tint-sk .fin-row{border-color:#bae6fd}
.tint-in{background:#eef2ff!important;border-color:#c7d2fe!important}.tint-in .fin-lab,.tint-in .fin-lab svg,.tint-in .fin-val,.tint-in .fin-ico{color:#4338ca!important}.tint-in .fin-ico{border-color:#c7d2fe!important;background:#fff!important}.tint-in .fin-row.total,.tint-in .fin-method-h p:first-child{color:#4338ca!important}.tint-in .fin-row.total,.tint-in .fin-row{border-color:#c7d2fe}
.tint-em.fin-expected{border-color:#6ee7b7!important}
body.is-admin .emp-only{display:none!important}
.stat-btn{cursor:pointer;transition:box-shadow .2s,transform .12s}
.stat-btn:hover{box-shadow:0 8px 20px -10px rgba(180,83,9,.45)}
.pag{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px}
.pag-btns{display:flex;flex-wrap:wrap;gap:6px}
.pag-btns button{min-width:36px;height:36px;padding:0 10px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;font-size:13px;font-weight:500;color:#334155}
.pag-btns button:hover:not(:disabled){background:#f8fafc}
.pag-btns button.on{background:rgb(var(--b600));border-color:rgb(var(--b600));color:#fff}
.pag-btns button:disabled{opacity:.4;cursor:default}
.pag-btns span{display:flex;align-items:center;padding:0 4px;color:#94a3b8}
/* ===== PATRÓN TÁCTIL ===== */
.pattern-pad{width:100%;max-width:260px;margin:0 auto;aspect-ratio:1/1;background:#0f172a;border-radius:18px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 10px 30px rgba(15,23,42,.25);padding:6px}
.pattern-pad svg{width:100%;height:100%;display:block;touch-action:none;user-select:none;-webkit-user-select:none;cursor:crosshair}
.pattern-mini{display:block}

/* Pestañas de Finanzas */
.fin-tab { background: #fff; color: #475569; border-color: #e2e8f0; }
.fin-tab:hover { background: #f8fafc; }
.fin-tab.active { background: #0f172a; color: #fff; border-color: #0f172a; }

/* Íconos de línea dentro del texto (reemplazan a los emojis de color) */
.ico-inline{width:1.1em;height:1.1em;display:inline-block;vertical-align:-0.18em;flex-shrink:0}

/* Los textos que explican algo (debajo de cifras, títulos y casillas) siempre empiezan con mayúscula */
.fin-note::first-letter, .fin-sub::first-letter, [data-repnota]::first-letter, .fin-lab::first-letter { text-transform: uppercase; }
.fin-sub { display: inline-block; }

/* Sugerencias de clientes (en lugar de la lista del navegador) */
.cli-sug{position:absolute;left:0;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px -5px rgba(15,23,42,.12);z-index:60;overflow:hidden;max-height:260px;overflow-y:auto}
.cli-sug button{display:flex;width:100%;justify-content:space-between;gap:12px;padding:10px 14px;text-align:left;font-size:14px;color:#0f172a;background:#fff;border:0;border-bottom:1px solid #f1f5f9;cursor:pointer}
.cli-sug button:last-child{border-bottom:0}
.cli-sug button:hover,.cli-sug button.on{background:rgb(var(--b50))}
.cli-sug .tel{color:#64748b;font-size:13px;white-space:nowrap}

/* Fecha y hora debajo de cada foto de evidencia */
.photo-fecha{font-size:11px;color:#64748b;text-align:center;margin-top:4px}

/* ================= REGLA DE COLORES =================
   Azul: acción principal · Verde: dinero que entra / cobrar · Rojo: eliminar / dinero que sale
   Ámbar: avisos y pendientes · Blanco con borde: acciones secundarias */
.btn-dark{background:rgb(var(--b600));color:#fff}.btn-dark:hover{background:rgb(var(--b700))}
.btn-cobro{background:#059669;color:#fff}.btn-cobro:hover{background:#047857}
.fin-tab.active{background:rgb(var(--b600));color:#fff;border-color:rgb(var(--b600))}

/* ================= MODO OSCURO =================
   Se activa con la clase "dark" en <html> (botón en Configuración). Los tickets e impresiones siempre salen en claro. */
html.dark{color-scheme:dark}
html.dark body,html.dark .bg-surface-50,html.dark #bootScreen{background:#0b1220!important;color:#cbd5e1}
html.dark .bg-white,html.dark .fin-panel,html.dark .fin-stat,html.dark .fin-tab,html.dark .fin-input,html.dark .cli-sug,html.dark .cli-sug button,html.dark .pag-btns button{background-color:#111a2e!important}
html.dark .bg-slate-50,html.dark .bg-slate-100,html.dark .bg-gray-50,html.dark .hover\:bg-slate-50:hover,html.dark .hover\:bg-slate-100:hover,html.dark .hover\:bg-white:hover,html.dark .cli-sug button:hover,html.dark .cli-sug button.on,html.dark .pag-btns button:hover:not(:disabled){background-color:#16213a!important}
html.dark .bg-slate-50\/50,html.dark .bg-brand-50\/40,html.dark .bg-brand-50\/50{background-color:#16213a!important}
html.dark .border-slate-100,html.dark .border-slate-200,html.dark .border-slate-300,html.dark .border-gray-200,html.dark .fin-panel,html.dark .fin-stat,html.dark .fin-input,html.dark .fin-head,html.dark .fin-tab,html.dark .cli-sug,html.dark .cli-sug button,html.dark .pag-btns button,html.dark .border-b,html.dark .border-t,html.dark .border-r,html.dark .border-l{border-color:#24324d!important}
html.dark .divide-slate-100>*+*,html.dark .divide-slate-200>*+*,html.dark .divide-y>*+*{border-color:#24324d!important}
html.dark .text-slate-900,html.dark .text-slate-800,html.dark .fin-title,html.dark .fin-val,html.dark .text-gray-900,html.dark .text-gray-800{color:#f1f5f9!important}
html.dark .text-slate-700,html.dark .text-gray-700,html.dark .pag-btns button,html.dark .fin-field>span{color:#cbd5e1!important}
html.dark .text-slate-600,html.dark .text-slate-500,html.dark .fin-lab,html.dark .text-gray-600,html.dark .text-gray-500{color:#94a3b8!important}
html.dark .text-slate-400,html.dark .text-slate-300,html.dark .fin-note,html.dark .fin-sub,html.dark .photo-fecha{color:#64748b!important}
html.dark input:not([type=checkbox]):not([type=radio]):not([type=color]),html.dark select,html.dark textarea{background-color:#0b1220!important;color:#e2e8f0!important;border-color:#24324d!important}
html.dark input::placeholder,html.dark textarea::placeholder{color:#475569!important}
html.dark .shadow-sm,html.dark .shadow,html.dark .shadow-lg,html.dark .shadow-xl{box-shadow:0 1px 2px rgba(0,0,0,.4)!important}
/* Fondos de color suaves → versiones translúcidas */
html.dark .bg-emerald-50,html.dark .bg-green-50{background-color:rgba(16,185,129,.12)!important}
html.dark .bg-amber-50,html.dark .bg-yellow-50,html.dark .bg-amber-100{background-color:rgba(245,158,11,.13)!important}
html.dark .bg-red-50,html.dark .bg-red-100,html.dark .bg-rose-50{background-color:rgba(239,68,68,.13)!important}
html.dark .bg-sky-50,html.dark .bg-blue-50,html.dark .bg-sky-100{background-color:rgba(37,99,235,.15)!important}
html.dark .bg-brand-50,html.dark .bg-brand-100{background-color:rgb(var(--b500) / .15)!important}
html.dark .bg-violet-50,html.dark .bg-indigo-50{background-color:rgba(139,92,246,.14)!important}
html.dark .bg-orange-50{background-color:rgba(249,115,22,.13)!important}
html.dark .bg-emerald-100{background-color:rgba(16,185,129,.2)!important}
html.dark [class*="border-emerald-"],html.dark [class*="border-green-"]{border-color:rgba(16,185,129,.35)!important}
html.dark [class*="border-amber-"]{border-color:rgba(245,158,11,.35)!important}
html.dark [class*="border-red-"],html.dark [class*="border-rose-"]{border-color:rgba(239,68,68,.35)!important}
html.dark [class*="border-sky-"],html.dark [class*="border-blue-"]{border-color:rgba(59,130,246,.35)!important}
html.dark [class*="border-brand-1"],html.dark [class*="border-brand-2"]{border-color:rgb(var(--b400) / .35)!important}
html.dark [class*="border-violet-"]{border-color:rgba(139,92,246,.35)!important}
/* Textos de color: más claros para que se lean sobre fondo oscuro */
html.dark .text-emerald-600,html.dark .text-emerald-700,html.dark .text-emerald-800,html.dark .text-green-700{color:#34d399!important}
html.dark .text-amber-600,html.dark .text-amber-700,html.dark .text-amber-800{color:#fbbf24!important}
html.dark .text-red-600,html.dark .text-red-700,html.dark .text-rose-700{color:#f87171!important}
html.dark .text-sky-600,html.dark .text-sky-700,html.dark .text-blue-700{color:#60a5fa!important}
html.dark .text-brand-600,html.dark .text-brand-700{color:rgb(var(--b400))!important}
html.dark .text-violet-700,html.dark .text-violet-800{color:#a78bfa!important}
html.dark .text-orange-700{color:#fb923c!important}
/* Tarjetas de color (tint-*) */
html.dark [class*="tint-"]{background-color:#111a2e!important}
html.dark .tint-em{background-color:rgba(16,185,129,.10)!important;border-color:rgba(16,185,129,.3)!important}
html.dark .tint-am{background-color:rgba(245,158,11,.10)!important;border-color:rgba(245,158,11,.3)!important}
html.dark .tint-ro{background-color:rgba(244,63,94,.10)!important;border-color:rgba(244,63,94,.3)!important}
html.dark .tint-sk,html.dark .tint-bl{background-color:rgba(14,165,233,.10)!important;border-color:rgba(14,165,233,.3)!important}
html.dark .tint-in,html.dark .tint-vi{background-color:rgba(99,102,241,.12)!important;border-color:rgba(99,102,241,.32)!important}
html.dark .tint-or{background-color:rgba(249,115,22,.10)!important;border-color:rgba(249,115,22,.3)!important}
html.dark .tint-em .fin-lab,html.dark .tint-em .fin-val{color:#34d399!important}
html.dark .tint-am .fin-lab,html.dark .tint-am .fin-val{color:#fbbf24!important}
html.dark .tint-ro .fin-lab,html.dark .tint-ro .fin-val{color:#fb7185!important}
html.dark .tint-sk .fin-lab,html.dark .tint-sk .fin-val,html.dark .tint-bl .fin-lab,html.dark .tint-bl .fin-val{color:#38bdf8!important}
html.dark .tint-in .fin-lab,html.dark .tint-in .fin-val,html.dark .tint-vi .fin-lab,html.dark .tint-vi .fin-val{color:#a5b4fc!important}
html.dark .tint-or .fin-lab,html.dark .tint-or .fin-val{color:#fb923c!important}
html.dark .fin-ico{background:#0b1220!important}
html.dark .fin-tab.active{background:rgb(var(--b600))!important;color:#fff!important}
html.dark .modal-overlay{background:rgba(0,0,0,.65)}
html.dark .nav-btn.bg-brand-50{background-color:rgb(var(--b500) / .18)!important}
/* Interruptor del modo oscuro */
.tema-switch{width:44px;height:24px;border-radius:999px;background:#cbd5e1;position:relative;transition:background .2s;flex-shrink:0}
.tema-switch::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}
html.dark .tema-switch{background:rgb(var(--b500))}
html.dark .tema-switch::after{transform:translateX(20px)}

/* ================= TICKETS (nuevo diseño) =================
   Mismo estilo para todos: recepción, cobro, entrega, corte y etiquetas.
   Formatos: .fmt-t58 (térmica 58 mm), .fmt-t80 (térmica 80 mm), .fmt-letter (hoja carta, dos copias). */
#printContainer .ticket-thermal{width:72mm;margin:0 auto;padding:2mm 0;font-family:Arial,'Helvetica Neue',Helvetica,sans-serif;font-size:var(--tk-fs,12px);line-height:1.35;color:#000;background:#fff}
#printContainer.fmt-t58 .ticket-thermal{width:48mm;--tk-fs:10.5px}
#printContainer.fmt-t80 .ticket-thermal{width:72mm;--tk-fs:12px}
#printContainer.fmt-letter .ticket-thermal{width:auto;--tk-fs:12px}
#printContainer.tk-grande.fmt-t58 .ticket-thermal{--tk-fs:12px}
#printContainer.tk-grande.fmt-t80 .ticket-thermal,#printContainer.tk-grande.fmt-letter .ticket-thermal{--tk-fs:13.5px}
#printContainer .ticket-thermal *{color:#000!important;background:transparent!important;box-shadow:none!important}
#printContainer .t-header{text-align:center;border-bottom:1px dashed #000;padding-bottom:2mm;margin-bottom:2mm}
#printContainer .t-header img{filter:grayscale(1) contrast(1.6);max-height:16mm!important;margin:0 auto 1.5mm!important}
#printContainer.tk-sinlogo .t-header img{display:none}
#printContainer .t-header h2{font-size:1.35em;font-weight:800;text-transform:uppercase;letter-spacing:.4px;margin:0 0 .5mm;line-height:1.15}
#printContainer .t-header p{margin:.3mm 0;font-size:.85em}
#printContainer .t-header .t-doc{margin-top:1.5mm;font-weight:700;font-size:.9em;letter-spacing:1px}
#printContainer .t-folio{display:inline-block;font-size:1.7em!important;font-weight:800;border:1.5px solid #000;border-radius:2mm;padding:.5mm 3mm;margin-top:1mm!important;letter-spacing:1px}
#printContainer .t-row{display:flex;justify-content:space-between;gap:2mm;margin:.6mm 0}
#printContainer .t-row>span:first-child{flex-shrink:0;max-width:55%}
#printContainer .t-row>span:last-child{text-align:right;word-break:break-word}
#printContainer .t-divider{border-top:1px dashed #000;margin:2mm 0}
#printContainer .t-section-title{font-weight:800;font-size:.82em;text-transform:uppercase;letter-spacing:1px;margin:2mm 0 1mm;border-bottom:1px solid #000;padding-bottom:.5mm}
#printContainer .t-total{font-size:1.18em;font-weight:800;border-top:1.5px solid #000;padding-top:1mm;margin-top:1.5mm}
#printContainer .t-footer{text-align:center;margin-top:2mm;font-size:.85em;white-space:pre-line}
#printContainer .t-warranty{border:1px solid #000;border-radius:1.5mm;padding:1.5mm;margin:2mm 0}
#printContainer .tk-corte{text-align:center;font-size:9px;margin:5mm 0;break-after:page;page-break-after:always}
#printContainer .tk-carta{display:grid;grid-template-columns:1fr 1fr;gap:10mm}
#printContainer .tk-copia{border:1px dashed #000;border-radius:2mm;padding:4mm}
#printContainer .tk-copia-lbl{text-align:center;font-size:9px;font-weight:700;letter-spacing:2px;margin:0 0 2mm;font-family:Arial,sans-serif;color:#000}
#printContainer .preview-wrapper.ticket-mode{max-width:340px;border-radius:6px}
#printContainer.fmt-t58 .preview-wrapper.ticket-mode{max-width:260px}
@media print{
  #printContainer.fmt-t58{width:58mm!important}
  #printContainer.fmt-t80{width:80mm!important}
  #printContainer.fmt-letter{width:100%!important}
  #printContainer .tk-preview{padding:0!important;background:#fff!important;min-height:0!important}
  #printContainer .preview-wrapper{border:none!important;box-shadow:none!important;margin:0!important;padding:0!important;max-width:none!important}
}

/* Impresión: solo se imprime el ticket, sin el resto del sistema ni hojas en blanco de más */
@media print{
  body>*:not(#printContainer){display:none!important}
  html,body{width:auto!important;min-width:0!important;height:auto!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important}
  #printContainer{position:static!important;height:auto!important;overflow:visible!important;padding:0!important}
  #printContainer.fmt-t58 .ticket-thermal,#printContainer.fmt-t80 .ticket-thermal{margin:0 auto!important}
}

/* Ajuste fino de la térmica (por computadora): mover y angostar el ticket */
#printContainer.fmt-t58 .ticket-thermal{width:calc(48mm - var(--tk-menos,0mm));position:relative;left:var(--tk-mover,0mm)}
#printContainer.fmt-t80 .ticket-thermal{width:calc(72mm - var(--tk-menos,0mm));position:relative;left:var(--tk-mover,0mm)}

/* Hoja carta parada: copia arriba y copia abajo, con línea de corte a la mitad */
#printContainer .tk-hoja{width:195mm;margin:0 auto;background:#fff}
#printContainer .tk-mitad{height:124mm;overflow:hidden;padding:2mm 4mm;box-sizing:border-box}
#printContainer .tk-cortar{display:flex;align-items:center;gap:3mm;height:8mm;color:#94a3b8;font-family:Arial,sans-serif;font-size:10.5px;letter-spacing:1px}
#printContainer .tk-cortar::before,#printContainer .tk-cortar::after{content:"";flex:1;border-top:1px dashed #94a3b8}
#printContainer .tk-cortar span{white-space:nowrap}
#printContainer.fmt-letter .preview-wrapper.letter-mode{max-width:calc(195mm + 40px)}
/* Diseño propio para carta: aprovecha el ancho con dos columnas */
#printContainer.fmt-letter .tk-hoja .ticket-thermal{width:auto;--tk-fs:13px;column-count:2;column-gap:10mm;padding:0}
#printContainer.tk-grande.fmt-letter .tk-hoja .ticket-thermal{--tk-fs:14px}
#printContainer.fmt-letter .tk-hoja .t-header{column-span:all}
#printContainer.fmt-letter .tk-hoja .t-footer{column-span:all}
#printContainer.fmt-letter .tk-hoja .ticket-thermal>*{break-inside:avoid}
#printContainer.fmt-letter .tk-hoja .t-section-title{break-after:avoid}
@media print{
  #printContainer.fmt-letter .tk-hoja{width:100%}
  #printContainer .tk-cortar{color:#64748b}
  #printContainer .tk-cortar::before,#printContainer .tk-cortar::after{border-top-color:#64748b}
}

/* Textos que solo salen en un formato */
#printContainer .tk-solo-carta{display:none}
#printContainer.fmt-letter .tk-solo-carta{display:inline}
#printContainer.fmt-letter p.tk-solo-carta{display:block}
#printContainer.fmt-letter .tk-solo-termica{display:none}
/* Hoja carta: encabezado chico a la izquierda en todos los documentos */
#printContainer.fmt-letter .tk-hoja .t-header{text-align:left;border-bottom:none;padding-bottom:0;margin-bottom:1mm}
#printContainer.fmt-letter .tk-hoja .t-header img{max-height:12mm!important;max-width:40mm!important;margin:0 0 1mm!important}
#printContainer.fmt-letter .tk-hoja .t-header h2{font-size:1.1em}
#printContainer.fmt-letter .tk-hoja .t-folio{font-size:1.3em!important;padding:.3mm 2.5mm}
#printContainer.fmt-letter.tk-logocolor .t-header img{filter:none!important}
/* Hoja carta con acomodo: datos del taller a la izquierda, cliente y equipo a la derecha, costo abajo, términos en recuadro */
#printContainer.fmt-letter .tk-hoja .ticket-thermal.tk-layout{column-count:auto;display:grid;grid-template-columns:1fr 1.35fr;column-gap:14mm;row-gap:2mm;align-items:start}
#printContainer.fmt-letter .tk-hoja .tk-layout>*{grid-column:1/-1}
#printContainer.fmt-letter .tk-hoja .tk-layout>.tk-l-izq{grid-column:1}
#printContainer.fmt-letter .tk-hoja .tk-layout>.tk-l-der{grid-column:2}
#printContainer.fmt-letter .tk-hoja .tk-layout>.t-divider{display:none}
#printContainer.fmt-letter .tk-hoja .tk-l-der>.t-divider:first-child,#printContainer.fmt-letter .tk-hoja .tk-l-costo .t-divider:first-child,#printContainer.fmt-letter .tk-hoja .tk-l-costo>.t-divider:first-child{display:none}
#printContainer.fmt-letter .tk-hoja .tk-l-der .t-section-title:first-of-type{margin-top:0}
#printContainer.fmt-letter .tk-hoja .tk-l-costo{border-top:1.5px solid #000;padding-top:1mm}
#printContainer.fmt-letter .tk-hoja .tk-l-costo:has(.tk-l-c1){display:grid;grid-template-columns:1fr 1fr;column-gap:14mm;align-items:start}
#printContainer.fmt-letter .tk-hoja .tk-l-costo:has(.tk-l-c1)>.t-divider{display:none}
#printContainer.fmt-letter .tk-hoja .tk-l-c2 .t-section-title{margin-top:0}
#printContainer.fmt-letter .tk-hoja .tk-l-costo .t-section-title{border-bottom:none;margin-top:0}
#printContainer.fmt-letter .tk-hoja .tk-l-costo .t-total:first-of-type{border-top:none;margin-top:0;padding-top:0}
#printContainer.fmt-letter .tk-hoja .tk-l-costo .t-warranty{margin:1mm 0}
/* El contacto ya va arriba con el logo: en carta no se repite abajo */
#printContainer.fmt-letter .tk-hoja .tk-layout>.t-footer:not(:has(.tk-l-terms)){display:none}
#printContainer.fmt-letter .tk-hoja .tk-layout>.t-footer>p:last-child{display:none}
#printContainer.fmt-letter .tk-hoja .tk-layout>.t-footer{display:contents}
#printContainer.fmt-letter .tk-hoja .tk-layout>.t-footer>*{grid-column:1/-1}
#printContainer.fmt-letter .tk-hoja .tk-layout>.t-footer>.t-divider{display:none}
#printContainer.fmt-letter .tk-hoja .tk-l-terms{border:1px solid #000;border-radius:2mm;padding:1.5mm 3mm;text-align:left}
#printContainer.fmt-letter .tk-hoja .tk-l-terms .t-section-title{margin-top:0}
#printContainer.fmt-letter .tk-hoja .tk-l-terms p{font-size:.8em!important;margin:0}
#printContainer.fmt-letter .tk-hoja .tk-l-firmas{margin-top:6mm!important}

/* Encabezado del taller: en carta, nombre junto al logo y dirección a lo largo debajo */
#printContainer .tk-marca-txt h2{margin:0 0 .5mm}
#printContainer.fmt-letter .tk-hoja .tk-marca{display:flex;align-items:center;gap:3mm}
#printContainer.fmt-letter .tk-hoja .tk-marca img{margin:0!important;flex:none}
#printContainer.fmt-letter .tk-hoja .tk-marca-txt{min-width:0;text-align:left}
#printContainer.fmt-letter .tk-hoja .tk-dir{margin-top:1mm!important}

/* El admin elige su color en Configuración → Taller; el empleado en Configuración → App */
body.is-admin .solo-empleado{display:none!important}
