*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f5f5f6;color:#191919}.wrap{width:min(1120px,calc(100% - 32px));margin:34px auto}.card{background:#fff;border:1px solid #e8e8ea;border-radius:18px;padding:24px;box-shadow:0 12px 35px rgba(0,0,0,.06)}.login-card{max-width:470px;margin:7vh auto}.brand{font-size:1.55rem;font-weight:900;letter-spacing:-.04em}.brand span{color:#f26722}.muted{color:#737373;line-height:1.5}.field{margin:12px 0}label{display:block;font-size:.82rem;font-weight:800;margin-bottom:7px}input,textarea,select{width:100%;padding:12px 13px;border:1px solid #d7d7db;border-radius:10px;font:inherit;background:#fff}select{min-height:44px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:12px 16px;background:#151515;color:#fff;font-weight:800;text-decoration:none;cursor:pointer}.btn.orange{background:#f26722}.btn.light{background:#ededf0;color:#222}.btn.full{width:100%}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.topnav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.toplinks{display:flex;gap:10px;flex-wrap:wrap}.alert{border-radius:10px;padding:11px 13px;margin:12px 0;background:#fff3ef;color:#9e2f11;border:1px solid #ffd7c8}.success{background:#effaf1;color:#176d2f;border-color:#ccebd4}.mini{font-size:.78rem;color:#777}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.stats.four{grid-template-columns:repeat(4,1fr)}.stats.five{grid-template-columns:repeat(5,1fr)}.stat{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:17px}.stat span{font-size:.78rem;color:#666}.stat strong{display:block;font-size:1.55rem;margin-top:5px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:11px;border-bottom:1px solid #ececef;font-size:.84rem;vertical-align:top}th{background:#222;color:#fff;white-space:nowrap}.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#f0f0f2;font-size:.72rem;font-weight:800}.badge.green{background:#e6f6ea;color:#1f7d38}.badge.red{background:#fff0ed;color:#a63a25}.footer-note{margin-top:22px;text-align:center;font-size:.74rem;color:#8b8b8b}.login-links{display:flex;justify-content:space-between;gap:12px;margin-top:16px;font-size:.84rem}.login-links a{color:#333}.code-input{font-size:1.35rem;letter-spacing:.18em;text-align:center;font-weight:800}.items-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:20px}.items-title h2{margin:0}.items-title p{margin:5px 0 0}.item-row{display:flex;gap:12px;align-items:flex-end;border:1px solid #ececef;border-radius:14px;padding:14px;margin:12px 0;background:#fafafa}.item-row .field{margin:0}.grow{flex:1}.qtyfield{width:140px}.remove-item{width:42px;height:42px;border:0;border-radius:10px;background:#eee;color:#555;font-size:1.5rem;cursor:pointer}.total-general{margin-top:18px;background:#151515;color:#fff;border-radius:14px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.total-general span{font-size:.8rem;font-weight:800;letter-spacing:.08em}.total-general strong{font-size:2rem}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.admin-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #e6e6e8;border-radius:16px;padding:22px;text-decoration:none;color:#1a1a1a}.admin-card strong{font-size:1.15rem}.admin-card span{color:#707070}.smtp-status{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:.78rem;font-weight:800}.smtp-status.ok{background:#e9f7ec;color:#1e7b37}.smtp-status.bad{background:#fff0ed;color:#a53c27}.inline-actions{display:flex;gap:6px;flex-wrap:wrap}.mini-btn{display:inline-flex;border:0;border-radius:8px;padding:7px 9px;background:#ececef;color:#222;text-decoration:none;font-size:.73rem;font-weight:800;cursor:pointer}.mini-btn.green{background:#e6f6ea;color:#1d7635}.mini-btn.danger{background:#fff0ed;color:#a33b28}.mini-btn:disabled{opacity:.45;cursor:not-allowed}.product-admin-list{display:grid;gap:12px;margin:18px 0}.product-admin-row{display:grid;grid-template-columns:1fr 190px 210px;gap:16px;align-items:center;border:1px solid #ececef;border-radius:14px;padding:16px}.product-admin-row .field{margin:0}.product-name{display:flex;flex-direction:column;gap:5px}.product-name span{font-size:.72rem;color:#888}.switch-line{display:flex;align-items:center;gap:9px;margin:0}.switch-line input{width:auto}.searchbar{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:16px}@media(max-width:800px){.grid,.stats,.stats.four,.admin-grid{grid-template-columns:1fr}.wrap{width:min(100% - 20px,1120px);margin:18px auto}.card{padding:17px}.topnav{align-items:flex-start;flex-direction:column}.actions .btn{flex:1}.item-row{align-items:stretch;flex-wrap:wrap}.qtyfield{width:110px}.grow{flex-basis:calc(100% - 170px)}.remove-item{align-self:flex-end}.total-general strong{font-size:1.55rem}.product-admin-row{grid-template-columns:1fr}.items-title{align-items:flex-start;flex-direction:column}.searchbar{grid-template-columns:1fr}}
.portal-version{display:inline-block;margin-bottom:10px;padding:4px 8px;border:1px solid #f0c3a8;border-radius:999px;background:#fff4ec;color:#d95500;font-size:11px;font-weight:900;letter-spacing:.08em}

/* V25 - Usuarios manuales, roles y privilegios */
.privilege-box{margin:14px 0 18px;padding:15px;border:1px solid #e8e8eb;border-radius:12px;background:#fafafa}
.privilege-box>strong{display:block;margin-bottom:5px}
.check-line{display:flex;align-items:center;gap:9px;margin:9px 0;font-size:.82rem;font-weight:700}
.check-line input{width:auto;margin:0}
.orange-badge{background:#fff0e6;color:#c84e00}
.user-actions-stack{display:flex;flex-direction:column;gap:8px;min-width:220px}
.access-details{border-top:1px solid #eee;padding-top:7px}
.access-details summary{cursor:pointer;font-size:.74rem;font-weight:800;color:#555}
.access-form{margin-top:9px;padding:10px;border-radius:10px;background:#fafafa}
.access-form label{margin-top:7px}
.permission-mini{margin:8px 0}
.permission-mini .check-line{font-size:.72rem;margin:6px 0}

/* ============================================================
   V26 - Hojas de servicio
   ============================================================ */
.service-wrap{max-width:1180px}.service-paper{border-radius:10px}.service-head{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #222;padding-bottom:14px;margin-bottom:10px}.service-head h1{font-size:1.65rem;letter-spacing:.03em;margin:0}.service-head img{width:150px;height:70px;object-fit:contain}.draft-status{display:flex;justify-content:space-between;gap:10px;padding:7px 10px;background:#f0f0f0;font-size:.73rem;font-weight:800;margin-bottom:8px}.service-band{background:#e7e7e7;padding:8px;margin:0 0 8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-date-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:8px}.service-band label{margin:0}.service-band input,.service-band select{background:#fff;border-radius:4px;padding:9px}.service-section{border:1px solid #cfcfcf;margin:10px 0;padding:12px}.service-section h2{background:#e1e1e1;margin:-12px -12px 12px;padding:7px 10px;font-size:.95rem}.check-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:9px}.equipment-grid{grid-template-columns:repeat(5,1fr)}.service-check{display:flex;align-items:center;gap:6px;font-size:.76rem;margin:0}.service-check input{width:auto}.location-box{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title-row h2{flex:1;margin:-12px 0 12px -12px}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.photo-card{border:1px solid #dedede;border-radius:10px;padding:8px;background:#fafafa}.photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px}.photo-card p{font-size:.72rem;line-height:1.35;min-height:2.7em}.signature-box{border:1px solid #cfcfcf;border-radius:8px;background:#fff;overflow:hidden}.signature-box canvas{display:block;width:100%;height:150px;touch-action:none}.signature-actions{display:flex;gap:7px;margin-top:7px;flex-wrap:wrap}.service-summary-bar{display:flex;align-items:center;gap:24px;background:#151515;color:#fff;padding:14px;border-radius:12px;position:sticky;bottom:8px;z-index:10}.service-summary-bar div{display:flex;flex-direction:column}.service-summary-bar span{font-size:.65rem;color:#bbb;text-transform:uppercase}.service-summary-bar strong{font-size:1.1rem}.service-summary-bar .btn{margin-left:auto}.photo-editor,.review-modal{position:fixed;inset:0;background:rgba(0,0,0,.86);display:none;z-index:1000}.photo-editor.open,.review-modal.open{display:flex}.photo-editor-inner{width:min(100%,980px);height:100%;margin:auto;background:#111;color:#fff;display:flex;flex-direction:column;padding:12px}.photo-editor-head{display:flex;justify-content:space-between;align-items:center;padding:4px 0 10px}.photo-editor-head button,.modal-close{border:0;background:transparent;color:inherit;font-size:2rem;cursor:pointer}.photo-canvas-wrap{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-canvas-wrap canvas{max-width:100%;max-height:100%;touch-action:none;background:#222}.photo-editor input{margin:10px 0;background:#fff}.photo-tools{display:flex;gap:8px;flex-wrap:wrap}.review-modal{align-items:center;justify-content:center;padding:14px}.review-card{width:min(620px,100%);background:#fff;border-radius:16px;padding:22px;position:relative}.review-card .modal-close{position:absolute;right:14px;top:8px;color:#222}.review-lines p{margin:8px 0}.drafts-card{margin-top:16px}.drafts-card a,.draft-list a{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eee;text-decoration:none;color:#222}.drafts-card span,.draft-list span{font-size:.74rem;color:#777}.result-card{text-align:center;max-width:680px;margin:30px auto}.success-big{width:70px;height:70px;border-radius:50%;background:#e7f7eb;color:#1c7c37;font-size:2.5rem;font-weight:900;display:grid;place-items:center;margin:0 auto}.drive-chip{display:inline-flex;padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:800}.drive-chip.ok{background:#e7f7eb;color:#1c7c37}.drive-chip.pending{background:#fff4df;color:#8a5c00}
@media(max-width:900px){.stats.five{grid-template-columns:1fr 1fr}.check-grid,.equipment-grid{grid-template-columns:repeat(2,1fr)}.photo-grid{grid-template-columns:repeat(2,1fr)}.service-date-row{grid-template-columns:1fr 1fr}.service-head img{width:110px;height:60px}.service-summary-bar{gap:12px}.service-summary-bar .btn{flex:1}.location-box{align-items:stretch;flex-direction:column}}
@media(max-width:600px){.service-paper{padding:12px}.grid2,.service-date-row{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}.service-head h1{font-size:1.25rem}.service-head img{width:92px}.draft-status{flex-direction:column}.service-summary-bar{bottom:4px}.service-summary-bar div{display:none}.photo-tools .btn{flex:1 1 45%}.signature-box canvas{height:130px}}

/* =========================================================
   V27 - Hojas de servicio avanzadas + Passkeys
   ========================================================= */
body.modal-open{overflow:hidden}
.biometric{background:#111;color:#fff;border-color:#111}.biometric:hover{background:#222}.login-separator{display:flex;align-items:center;gap:12px;color:#999;margin:15px 0}.login-separator:before,.login-separator:after{content:"";height:1px;background:#e5e5e5;flex:1}.login-separator span{font-size:.75rem;font-weight:800}
.device-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #eee}
.optional-label{display:inline-flex;font-size:.62rem;font-weight:800;background:#fff;border:1px solid #ccc;padding:3px 7px;border-radius:999px;margin-left:6px;color:#666;vertical-align:middle}
.xetux-row{display:grid;grid-template-columns:1fr 160px;gap:12px;align-items:end}.xetux-thumb{height:96px;border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff;display:grid;place-items:center}.xetux-thumb img{width:100%;height:100%;object-fit:cover}.xetux-thumb.empty{color:#999;font-size:.75rem}
.address-control{display:flex;gap:7px}.address-control input{flex:1;cursor:pointer}.map-button{min-width:46px;border:1px solid #d2d2d2;border-radius:7px;background:#fff;cursor:pointer;font-size:1.1rem}
.service-modal{position:fixed;inset:0;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;padding:14px;z-index:1200}.service-modal.open{display:flex}.modal-panel{width:min(760px,100%);max-height:94%;overflow:auto;background:#fff;border-radius:16px;padding:20px;position:relative}.modal-panel .modal-close{position:absolute;right:12px;top:8px;color:#222}.xetux-panel{max-width:680px}.xetux-preview{background:#111;border-radius:10px;min-height:180px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin:12px 0}.xetux-preview img{max-width:100%;max-height:420px;object-fit:contain}.xetux-panel #ocrStatus{margin:8px 0 12px}
.map-panel{width:min(900px,100%)}.map-search{display:grid;grid-template-columns:1fr auto auto;gap:8px;margin:10px 0}.service-map{height:430px;border-radius:12px;border:1px solid #ddd;overflow:hidden;background:#eee}.map-results{display:grid;gap:5px;margin:7px 0}.map-result{border:1px solid #ddd;background:#fff;padding:9px 10px;border-radius:8px;text-align:left;cursor:pointer;font-size:.78rem}.map-result:hover{background:#fafafa}#mapSelectedText{margin:8px 0}
.signature-cards{align-items:start}.signature-card{border:1px solid #ddd;border-radius:10px;padding:11px;background:#fafafa}.signature-preview{height:130px;border:1px solid #d3d3d3;border-radius:8px;background:#fff;display:grid;place-items:center;overflow:hidden;margin:8px 0}.signature-preview img{width:100%;height:100%;object-fit:contain}.signature-preview.empty{color:#999;font-size:.75rem}.signature-panel{width:min(980px,100%)}.signature-large{border:2px solid #bbb;border-radius:10px;background:#fff;overflow:hidden;margin:12px 0}.signature-large canvas{display:block;width:100%;height:min(48vw,420px);min-height:260px;touch-action:none;background:#fff}
.photo-editor{z-index:1300}.photo-editor-inner{width:min(100%,1100px)}.photo-toolbar{display:flex;gap:6px;flex-wrap:wrap;padding:6px 0}.photo-mode{border:1px solid #444;background:#222;color:#fff;border-radius:8px;padding:8px 10px;font-weight:800;cursor:pointer}.photo-mode.active{background:#ff6a00;border-color:#ff6a00}.icon-tray{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;max-height:210px;overflow:auto;background:#fff;padding:8px;border-radius:10px;margin-bottom:8px}.icon-option{border:1px solid #ddd;background:#fff;border-radius:8px;padding:5px;display:flex;flex-direction:column;gap:4px;align-items:center;cursor:pointer;min-width:0}.icon-option img{width:48px;height:48px;object-fit:contain}.icon-option span{font-size:.58rem;line-height:1.1;text-align:center;color:#333;word-break:break-word}.sticker-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:#262626;padding:7px 9px;border-radius:9px;margin-top:6px}.sticker-controls span{font-size:.72rem;color:#eee;margin-right:auto}.photo-canvas-wrap{min-height:300px}.photo-editor input{font-size:16px}

@media(max-width:760px){
  .xetux-row{grid-template-columns:1fr}.xetux-thumb{height:120px}.map-search{grid-template-columns:1fr 1fr}.map-search input{grid-column:1/-1}.service-map{height:360px}.modal-panel{padding:16px}.icon-tray{grid-template-columns:repeat(4,minmax(0,1fr));max-height:230px}.signature-large canvas{height:340px;min-height:300px}.device-row{align-items:flex-start}.photo-toolbar>*{flex:1 1 45%}
}
@media(max-width:420px){.icon-tray{grid-template-columns:repeat(3,minmax(0,1fr))}.service-map{height:310px}.signature-large canvas{height:300px}.map-search{grid-template-columns:1fr}.map-search input{grid-column:auto}}

/* V29 - Offline + Yummy + mapa ajustable */
.service-quickbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;flex-wrap:wrap}.yummy-main-btn{background:#8d35c9;color:#fff;border-color:#8d35c9;font-weight:900;min-width:105px}.network-state{font-size:.78rem;font-weight:800;padding:8px 11px;border-radius:999px;border:1px solid #dfe5e1}.network-state.online{background:#edf9f1;color:#14783a}.network-state.offline{background:#fff3e8;color:#a74b00;border-color:#f1c8a6}.network-state.syncing{background:#eef4ff;color:#275ea6}.yummy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.yummy-card{border:1px solid #e3e3e6;border-radius:12px;padding:12px;background:#fff;min-width:0}.yummy-card.pending,.photo-card.pending{border-style:dashed;border-color:#e39a57;background:#fffaf5}.yummy-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.yummy-card-top span{font-size:.68rem;background:#f0e6f7;color:#6f279c;padding:4px 7px;border-radius:999px}.yummy-card p{font-size:.78rem;margin:8px 0;overflow-wrap:anywhere}.yummy-meta{font-size:.75rem;color:#666}.pending-label{font-size:.66rem;font-weight:800;color:#a74b00;margin-top:7px}.yummy-preview{display:flex;justify-content:center;background:#f6f6f7;border-radius:12px;min-height:160px;max-height:310px;overflow:hidden;margin:10px 0}.yummy-preview img{max-width:100%;max-height:310px;object-fit:contain}.yummy-form{margin-top:12px}.yummy-report-filter{display:grid;grid-template-columns:1fr 170px 170px auto;gap:10px;align-items:end}.filter-actions{display:flex;gap:8px;flex-wrap:wrap}.service-summary-bar{grid-template-columns:repeat(4,minmax(0,1fr)) auto!important}.service-map .leaflet-marker-icon{cursor:grab}.service-map .leaflet-marker-dragging{cursor:grabbing}@media(max-width:760px){.yummy-grid{grid-template-columns:1fr}.yummy-report-filter{grid-template-columns:1fr}.service-summary-bar{grid-template-columns:repeat(3,minmax(0,1fr))!important}.service-summary-bar button{grid-column:1/-1}.service-quickbar{position:sticky;top:0;z-index:30;background:#f5f5f6;padding:7px 0}}

/* V30 - Control operativo de Hojas de Servicio */
.service-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:8px 0 12px}.service-progress span{padding:7px 8px;border:1px solid #ddd;border-radius:999px;text-align:center;font-size:.65rem;font-weight:800;color:#777;background:#fafafa}.service-progress span.done{background:#e9f8ee;color:#176d37;border-color:#bfe5ca}.primary-activity-label{display:block;max-width:520px;font-weight:900}.primary-activity-label select{margin-top:6px}.subsection-title{font-size:.82rem;margin:14px 0 7px}.yummy-route-actions{display:flex;gap:6px;flex-wrap:wrap}.photo-meta-row{display:grid;grid-template-columns:180px 1fr;gap:8px;align-items:center}.photo-meta-row select,.photo-meta-row input{margin:10px 0}.photo-card{position:relative}.photo-category-badge{display:inline-flex;position:absolute;left:14px;top:14px;z-index:2;background:rgba(17,17,17,.88);color:#fff;border-radius:999px;padding:4px 7px;font-size:.58rem;font-weight:900}.draft-list-select{display:grid;gap:4px}.draft-select-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;border-bottom:1px solid #eee;padding:7px 0}.draft-select-row input{width:auto}.draft-select-row a{display:flex;justify-content:space-between;gap:12px;text-decoration:none;color:#222}.select-all-row{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:800;margin-bottom:8px}.select-all-row input{width:auto}.danger-btn{background:#b42318;color:#fff;border-color:#b42318}.service-search-grid{display:grid;grid-template-columns:2fr 1fr 150px 150px auto;gap:8px;align-items:end;margin-bottom:14px}.service-search-grid label{margin:0}.service-search-grid .btn{margin-bottom:0}.service-head img{object-fit:contain}.service-quickbar .btn{white-space:nowrap}
@media(max-width:850px){.service-progress{grid-template-columns:repeat(3,1fr)}.service-search-grid{grid-template-columns:1fr 1fr}.service-search-grid>label:first-child{grid-column:1/-1}.photo-meta-row{grid-template-columns:1fr}.draft-select-row a{flex-direction:column;gap:2px}}
@media(max-width:520px){.service-progress{grid-template-columns:repeat(2,1fr)}.service-search-grid{grid-template-columns:1fr}.service-search-grid>label:first-child{grid-column:auto}.yummy-route-actions .btn{flex:1 1 100%}}


/* V31 - Instalaciones, ZIP y limpieza QA */
.internet-question{
  margin-top:14px;
  padding:14px;
  border:1px solid #e6e6e8;
  border-radius:12px;
  background:#fafafa;
}
.internet-question h3{margin:0 0 4px}
.internet-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.bulk-download-bar,.selection-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:16px 0;
}
.bulk-download-bar form{margin:0}
.selection-actions{justify-content:space-between;border-top:1px solid #eee;padding-top:12px}
.qa-cleanup-card{border:2px solid #e5b8b8}
.qa-warning{padding:12px;border-radius:10px;background:#fff1f1;color:#8f1616;font-size:.86rem;margin:12px 0 16px}
.qa-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qa-actions form{padding:12px;border:1px solid #eee;border-radius:12px;background:#fafafa}
.qa-danger-all{background:#980000!important;border-color:#980000!important}
@media(max-width:760px){
  .internet-options,.qa-actions{grid-template-columns:1fr}
  .bulk-download-bar,.selection-actions{align-items:stretch}
  .bulk-download-bar form,.bulk-download-bar button,.selection-actions button{width:100%}
}


/* V32 - mapa robusto, OCR y firma opcional */
.service-map{position:relative;touch-action:none;user-select:none;cursor:grab;background:linear-gradient(135deg,#eef1f2,#dfe5e8);isolation:isolate}.service-map:active{cursor:grabbing}.simple-map-tiles{position:absolute;inset:0;overflow:hidden}.simple-map-tile{position:absolute;width:256px;height:256px;max-width:none;pointer-events:none;user-select:none}.simple-map-marker{position:absolute;left:0;top:0;width:36px;height:40px;border:0;background:transparent;font-size:32px;line-height:36px;padding:0;z-index:8;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35));cursor:grab;touch-action:none}.simple-map-marker:active{cursor:grabbing}.simple-map-controls{position:absolute;top:10px;right:10px;z-index:10;display:grid;grid-template-columns:36px auto 36px;align-items:center;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.18)}.simple-map-controls button{height:36px;border:0;background:#fff;font-size:20px;font-weight:900}.simple-map-controls span{font-size:.65rem;font-weight:800;padding:0 7px;color:#444}.simple-map-attrib{position:absolute;right:5px;bottom:4px;z-index:9;background:rgba(255,255,255,.88);padding:2px 5px;border-radius:4px;font-size:9px;color:#555}.map-diagnostic{margin:7px 0 2px;padding:8px 10px;border-radius:8px;background:#eef8f1;color:#236b3d;font-size:.72rem}.map-diagnostic.warning{background:#fff3e8;color:#9b4b0b}.ocr-debug{margin:8px 0;border:1px solid #e3e3e6;border-radius:8px;padding:7px 9px;background:#fafafa}.ocr-debug summary{cursor:pointer;font-size:.72rem;font-weight:800}.ocr-debug pre{white-space:pre-wrap;word-break:break-word;max-height:150px;overflow:auto;font-size:.66rem;margin:7px 0 0;background:#fff;padding:8px;border-radius:6px}


/* V33 - OCR por posición, horas enteras y cantidad de equipos */
.service-date-row{grid-template-columns:1.15fr .9fr .9fr .85fr 1.1fr}
.equipment-quantity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}
.equipment-qty-item{display:grid;grid-template-columns:minmax(0,1fr) 112px;align-items:center;gap:9px;border:1px solid #e1e1e3;border-radius:10px;padding:9px;background:#fafafa}
.equipment-check{font-size:.82rem;font-weight:800}
.equipment-qty-control{display:flex;align-items:center;gap:6px;margin:0;opacity:.42;pointer-events:none}
.equipment-qty-control.active{opacity:1;pointer-events:auto}
.equipment-qty-control span{font-size:.62rem;font-weight:800;color:#666}
.equipment-qty-input{margin:0!important;padding:7px!important;text-align:center;min-width:58px}
@media(max-width:900px){.service-date-row{grid-template-columns:1fr 1fr}.equipment-quantity-grid{grid-template-columns:1fr}}
@media(max-width:600px){.service-date-row{grid-template-columns:1fr}.equipment-qty-item{grid-template-columns:minmax(0,1fr) 105px}}


/* V34 - búsqueda robusta de direcciones */
.map-results{display:grid;gap:7px;margin:8px 0 10px;max-height:230px;overflow:auto}
.map-result{display:flex;align-items:flex-start;gap:8px;width:100%;text-align:left;border:1px solid #dedee2;background:#fff;border-radius:10px;padding:10px 12px;font-size:.78rem;line-height:1.3;cursor:pointer}
.map-result:hover,.map-result:focus{border-color:#ff6a1a;background:#fff8f3;outline:none}
.map-result-pin{flex:0 0 auto}
.map-search-loading,.map-search-empty{font-size:.75rem;line-height:1.35;padding:10px 12px;border-radius:9px;background:#f5f5f7;color:#555}
.map-search-empty{background:#fff8ee;color:#70400f}
#mapSearchButton:disabled{opacity:.65;cursor:wait}
@media(max-width:650px){
  .map-search{grid-template-columns:1fr 1fr}
  .map-search input{grid-column:1/-1}
  .map-result{font-size:.74rem;padding:10px}
}


/* V36 - selector grande y visible de íconos técnicos */
.icon-picker-overlay[hidden],
.icon-no-results[hidden],
.icon-option[hidden],
.icon-tray-status[hidden]{display:none!important}

body.icon-picker-open{overflow:hidden}
.icon-tray-status{display:none!important}
.icon-picker-overlay{
  position:fixed;inset:0;z-index:1700;background:rgba(0,0,0,.84);
  display:flex;align-items:center;justify-content:center;padding:14px;
}
.icon-picker-card{
  width:min(980px,100%);max-height:min(90vh,860px);background:#fff;color:#1d1d1f;
  border-radius:18px;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 28px 80px rgba(0,0,0,.42);
}
.icon-picker-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:15px 18px 12px;border-bottom:1px solid #e7e7ea;
}
.icon-picker-head>div{display:flex;flex-direction:column;gap:2px}
.icon-picker-head strong{font-size:1.2rem}
.icon-picker-head span{font-size:.72rem;color:#737373}
.icon-picker-head button{
  width:42px;height:42px;border:0;border-radius:50%;background:#efeff1;color:#222;
  font-size:1.8rem;line-height:1;cursor:pointer;
}
.icon-picker-search{
  display:grid;grid-template-columns:1fr auto;gap:8px;padding:11px 18px;
  background:#fafafa;border-bottom:1px solid #ececef;
}
.icon-picker-search input{margin:0;font-size:16px}
.icon-picker-grid{
  padding:14px 18px 20px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;overflow:auto;-webkit-overflow-scrolling:touch;
}
.icon-picker-grid .icon-option{
  min-height:132px;border:2px solid #e1e1e5;background:#fff;border-radius:14px;
  padding:9px;display:flex;flex-direction:column;justify-content:center;align-items:center;
  gap:8px;cursor:pointer;color:#222;min-width:0;
}
.icon-picker-grid .icon-option:focus,
.icon-picker-grid .icon-option:active{
  outline:none;border-color:#f26722;background:#fff6f0;
}
.icon-preview-box{
  width:80px;height:80px;display:flex;align-items:center;justify-content:center;
  border:1px solid #f0f0f0;border-radius:10px;background:#fff;
}
.icon-preview-box img{display:block;width:74px;height:74px;object-fit:contain}
.icon-name{
  display:block;min-height:2.4em;font-size:.72rem;line-height:1.2;
  font-weight:800;text-align:center;color:#202020;overflow-wrap:anywhere;
}
.icon-option.icon-load-error{border-color:#e4aaa4!important;background:#fff1ef!important;opacity:.75}
.icon-option.icon-load-error .icon-name::after{content:" · no disponible";color:#a33a2d}
.icon-missing-warning,.icon-no-results{
  margin:18px;padding:16px;border-radius:12px;background:#fff2e8;color:#86400c;
  line-height:1.45;font-size:.82rem;
}

@media(max-width:760px){
  .icon-picker-overlay{padding:7px}
  .icon-picker-card{max-height:95vh;border-radius:15px}
  .icon-picker-head{padding:12px 13px 10px}
  .icon-picker-search{grid-template-columns:1fr;padding:9px 12px}
  .icon-picker-search .btn{width:100%;padding:9px}
  .icon-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 11px 16px}
  .icon-picker-grid .icon-option{min-height:122px;padding:7px}
  .icon-preview-box{width:68px;height:68px}
  .icon-preview-box img{width:64px;height:64px}
  .icon-name{font-size:.68rem}
}
@media(max-width:390px){
  .icon-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* V37 - Inspección dinámica + previsualización obligatoria */
.inspection-only-section[hidden],#standardEquipmentSection[hidden],.inspection-equipment-other-wrap[hidden],.inspection-empty[hidden]{display:none!important}
.inspection-only-section{border:2px solid #b9ddc6;background:#fbfffc}
.inspection-badge{background:#14853d;color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.06em;padding:6px 10px;border-radius:999px}
.inspection-subgroup{margin:13px 0;padding:13px;border:1px solid #e2e7e4;border-radius:12px;background:#fff}
.inspection-subgroup h3{margin:0 0 11px;color:#176c38;font-size:.92rem}
.inspection-equipment-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:15px 0 10px}
.inspection-equipment-list{display:grid;gap:9px}
.inspection-equipment-row{display:grid;grid-template-columns:minmax(180px,1.5fr) 100px minmax(155px,1fr) minmax(160px,1fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid #e1e4e2;border-radius:11px;background:#fafcfb}
.inspection-equipment-delete{margin-bottom:2px}
.inspection-empty{padding:13px;text-align:center;border:1px dashed #cfd6d1;border-radius:10px;color:#757b77;background:#fafafa}
.client-preview-btn{background:#202124!important;color:#fff!important;border-color:#202124!important;margin-bottom:8px}
.client-sign-button:disabled{opacity:.45;cursor:not-allowed}
#clientPreviewStatus.ok{color:#157537;font-weight:800}
.client-preview-panel{width:min(980px,96vw);max-height:94vh;overflow:auto;padding:0!important}
.client-preview-title{position:sticky;top:0;z-index:3;background:#fff;border-bottom:1px solid #e5e5e7;padding:16px 48px 13px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.client-preview-title h2{margin:0 0 4px}.client-preview-title p{margin:0;color:#6b6b6b;font-size:.78rem}.client-preview-title img{height:34px;max-width:125px}
.client-preview-content{padding:16px 20px}.client-preview-paper{border:1px solid #dfe1e4;border-radius:13px;overflow:hidden;background:#fff}.client-preview-band{padding:9px 14px;background:#333;color:#fff;font-weight:900;letter-spacing:.04em}
.client-preview-section{padding:14px 16px;border-bottom:1px solid #ededee}.client-preview-section:last-child{border-bottom:0}.client-preview-section h3{margin:0 0 10px;font-size:.95rem}.client-preview-section h4{margin:13px 0 7px;font-size:.85rem}
.client-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.client-preview-grid p{display:flex;flex-direction:column;gap:2px;margin:0;padding:8px 0;border-bottom:1px dashed #eee}.client-preview-grid p.wide{grid-column:1/-1}.client-preview-grid b{font-size:.68rem;color:#6e6e73;text-transform:uppercase}.client-preview-grid span{font-size:.84rem;font-weight:650}
.client-preview-table{border:1px solid #ececef;border-radius:9px;overflow:hidden}.client-preview-table>div{display:grid;grid-template-columns:1fr 90px 160px;gap:7px;padding:8px 10px;border-bottom:1px solid #eee;font-size:.78rem}.client-preview-table>div:last-child{border-bottom:0}.client-preview-table>div:first-child{background:#f5f5f6}
.client-preview-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-preview-photos figure{margin:0;border:1px solid #ececef;border-radius:9px;overflow:hidden;background:#fafafa}.client-preview-photos img{display:block;width:100%;height:190px;object-fit:contain;background:#111}.client-preview-photos figcaption{padding:8px;font-size:.72rem}
.client-preview-confirm{margin:0 20px 14px;padding:13px;border:2px solid #ff6600;border-radius:11px;background:#fff8f3;display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;font-weight:800}.client-preview-confirm input{margin:2px 0 0;transform:scale(1.2)}.client-preview-panel>.actions{padding:0 20px 18px}
@media(max-width:900px){.inspection-equipment-row{grid-template-columns:1fr 90px 1fr}.inspection-equipment-other-wrap{grid-column:1/-1}.inspection-equipment-delete{grid-column:1/-1;width:100%}}
@media(max-width:650px){.inspection-equipment-head{align-items:stretch;flex-direction:column}.inspection-equipment-head .btn{width:100%}.inspection-equipment-row{grid-template-columns:1fr 84px}.inspection-equipment-row label:nth-of-type(3),.inspection-equipment-other-wrap{grid-column:1/-1}.client-preview-grid{grid-template-columns:1fr}.client-preview-grid p.wide{grid-column:auto}.client-preview-table>div{grid-template-columns:1fr 65px 110px;font-size:.69rem}.client-preview-photos{grid-template-columns:1fr}.client-preview-photos img{height:220px}}


/* V38 - corrección de previsualización y firma de cliente */
.client-preview-confirm{
  width:auto!important;
  min-height:auto!important;
  overflow:hidden;
}
.client-preview-confirm input[type="checkbox"]{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  flex:0 0 22px!important;
  padding:0!important;
  margin:1px 0 0!important;
  accent-color:#f26722;
}
.client-preview-confirm span{
  display:block;
  flex:1 1 auto;
  min-width:0;
  width:auto!important;
  line-height:1.38;
  overflow-wrap:break-word;
  word-break:normal;
}
#clientSignatureStatus.ok{color:#157537;font-weight:800}
.client-preview-yummy{display:grid;gap:8px}
.client-preview-yummy-row{
  display:grid;
  grid-template-columns:minmax(100px,.7fr) minmax(120px,.9fr);
  gap:4px 10px;
  padding:10px 12px;
  border:1px solid #ececef;
  border-radius:10px;
  background:#fafafa;
}
.client-preview-yummy-row b{font-size:.78rem}
.client-preview-yummy-row>span{font-size:.72rem;color:#6f4a93;font-weight:800;text-align:right}
.client-preview-yummy-row p{grid-column:1/-1;margin:2px 0;font-size:.76rem;line-height:1.35}
.client-preview-yummy-row small{grid-column:1/-1;color:#666;font-size:.7rem}
@media(max-width:650px){
  .client-preview-panel{width:calc(100vw - 14px);max-height:96vh;border-radius:16px}
  .client-preview-title{padding:13px 48px 11px 13px;align-items:flex-start}
  .client-preview-title h2{font-size:1.45rem;line-height:1.05}
  .client-preview-title p{font-size:.72rem;line-height:1.35}
  .client-preview-title img{height:28px;max-width:105px}
  .client-preview-content{padding:10px}
  .client-preview-confirm{margin:0 10px 10px;padding:11px;font-size:.78rem}
  .client-preview-panel>.actions{padding:0 10px 12px}
  .client-preview-panel>.actions .btn{min-height:48px}
  .client-preview-yummy-row{grid-template-columns:1fr}
  .client-preview-yummy-row>span{text-align:left}
  .client-preview-yummy-row p,.client-preview-yummy-row small{grid-column:auto}
}


/* V40 - horas 0..12 y firma cliente opcional */
.optional-badge{
  display:inline-block;
  margin-left:6px;
  padding:2px 7px;
  border:1px solid #cfcfd3;
  border-radius:999px;
  font-size:.6rem;
  line-height:1.2;
  color:#686868;
  font-weight:800;
  vertical-align:middle;
}


/* ============================================================
   V41 - Inspección amigable / selección múltiple / correo Google
   ============================================================ */
#complementaryActivities[hidden],
.inspectionEquipmentPicker[hidden],
.inspection-equipment-picker[hidden],
.icon-equipment-choice[hidden]{display:none!important}

.service-email-row{margin:12px 0 4px}
.service-email-row label{max-width:520px}
.service-email-row .mini{margin:5px 0 0}

.inspection-equipment-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:12px 0 7px;padding:10px 0;
}
.inspection-equipment-summary{
  padding:8px 12px;border-radius:999px;background:#eef8f1;color:#176c38;
  font-size:.78rem;font-weight:750;white-space:nowrap
}
.inspection-equipment-list{display:grid;gap:10px}
.inspection-equipment-card{
  position:relative;display:grid;
  grid-template-columns:minmax(210px,1.4fr) auto minmax(210px,.8fr) 38px;
  align-items:center;gap:12px;padding:11px 12px;
  border:1px solid #dde2df;border-radius:13px;background:#fff
}
.inspection-equipment-identity{display:flex;align-items:center;gap:11px;min-width:0}
.inspection-equipment-identity img{width:52px;height:52px;object-fit:contain;flex:0 0 52px}
.inspection-equipment-identity>div{min-width:0}
.inspection-equipment-identity strong{display:block;font-size:.83rem;line-height:1.2}
.inspection-equipment-identity span{display:block;margin-top:3px;font-size:.65rem;color:#777}
.inspection-qty-stepper{display:flex;align-items:center;border:1px solid #d7d9dc;border-radius:10px;overflow:hidden;background:#fff}
.inspection-qty-stepper button{
  width:38px;height:38px;border:0;background:#f2f3f4;font-size:1.2rem;font-weight:850;cursor:pointer
}
.inspection-qty-stepper input{
  width:48px!important;min-width:48px!important;height:38px!important;padding:0!important;border:0!important;
  text-align:center;font-weight:850;background:#fff;appearance:textfield
}
.inspection-qty-stepper input::-webkit-inner-spin-button,.inspection-qty-stepper input::-webkit-outer-spin-button{appearance:none;margin:0}
.inspection-state-buttons{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.inspection-state-btn,.picker-state{
  min-height:38px;padding:6px 8px;border:1px solid #dadde0;border-radius:9px;
  background:#f7f7f8;font-size:.69rem;font-weight:800;cursor:pointer
}
.inspection-state-btn.active[data-state="Existente / Ya tiene"],.picker-state.active[data-state="Existente / Ya tiene"]{
  background:#edf8f0;border-color:#8bc89d;color:#176c38
}
.inspection-state-btn.active[data-state="Requerido / Nuevo"],.picker-state.active[data-state="Requerido / Nuevo"]{
  background:#fff5ed;border-color:#f4ad7d;color:#a84314
}
.inspection-equipment-delete{
  width:36px;height:36px;border:0;border-radius:50%;background:#fff0ef;color:#b3281e;
  font-size:1.25rem;font-weight:900;cursor:pointer
}
.inspection-equipment-other-wrap{grid-column:1/-2}
.inspection-equipment-other-wrap[hidden]{display:none!important}

/* catálogo múltiple */
.inspection-picker-panel{width:min(1030px,96vw);max-height:94vh;overflow:auto}
.inspection-picker-search{margin:8px 0}
.inspection-picker-search input{font-size:1rem}
.inspection-picker-categories{display:flex;gap:6px;overflow-x:auto;padding:4px 0 9px;-webkit-overflow-scrolling:touch}
.inspection-category-btn{
  flex:0 0 auto;border:1px solid #dadde1;background:#f7f7f8;border-radius:999px;
  padding:7px 12px;font-size:.69rem;font-weight:800;cursor:pointer
}
.inspection-category-btn.active{background:#242424;color:#fff;border-color:#242424}
.inspection-equipment-catalog{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:4px
}
.inspection-catalog-card{
  position:relative;min-height:128px;padding:10px 7px;border:2px solid #eceef0;border-radius:13px;
  background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  cursor:pointer;text-align:center
}
.inspection-catalog-card[hidden]{display:none!important}
.inspection-catalog-card img{width:58px;height:58px;object-fit:contain}
.inspection-catalog-card strong{font-size:.72rem;line-height:1.15}
.inspection-catalog-card small{font-size:.6rem;color:#777}
.inspection-catalog-check{
  display:none;position:absolute;right:7px;top:7px;width:22px;height:22px;border-radius:50%;
  align-items:center;justify-content:center;background:#198b43;color:#fff;font-size:.7rem;font-weight:900
}
.inspection-catalog-card.selected{border-color:#198b43;background:#f3fbf5}
.inspection-catalog-card.selected .inspection-catalog-check{display:flex}
.inspection-catalog-card.already-added{box-shadow:inset 0 0 0 1px #d6eedc}
.inspection-catalog-card.already-added:after{
  content:"Ya agregado";position:absolute;left:6px;top:6px;background:#e9f6ed;color:#176c38;
  border-radius:999px;padding:3px 6px;font-size:.5rem;font-weight:850
}
.inspection-picker-footer{
  position:sticky;bottom:-1px;display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin-top:12px;padding:10px;background:rgba(255,255,255,.96);border-top:1px solid #e8e8ea
}
.inspection-picker-quantity-list{display:grid;gap:9px}
.inspection-picker-qty-row{
  display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(210px,.75fr);gap:10px;
  align-items:center;padding:10px;border:1px solid #e5e6e8;border-radius:12px
}
.inspection-picker-qty-identity{display:flex;align-items:center;gap:9px;min-width:0}
.inspection-picker-qty-identity img{width:44px;height:44px;object-fit:contain}
.inspection-picker-qty-identity strong{font-size:.78rem}
.inspection-picker-qty-row .picker-other{grid-column:1/-1}

/* foto -> lista de equipos */
.icon-equipment-choice{
  margin:12px 4px 3px;padding:12px;border:2px solid #f0a56e;border-radius:12px;background:#fff8f2
}
.icon-equipment-choice>div:first-child{display:flex;flex-direction:column;gap:3px}
.icon-equipment-choice>div:first-child span{font-size:.7rem;color:#666}
.icon-equipment-choice-actions{display:flex;gap:8px;margin-top:9px}
.icon-equipment-choice-actions .btn{flex:1}
.icon-option .icon-preview-box img{object-fit:contain;background:transparent}

/* Google SMTP / envío de hojas */
.smtp-admin-card .section-title-row{align-items:flex-start}
.smtp-fixed-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.smtp-fixed-grid>div{padding:10px;border:1px solid #e3e4e6;border-radius:10px;background:#fafafa}
.smtp-fixed-grid span{display:block;font-size:.62rem;color:#777;text-transform:uppercase;font-weight:800}
.smtp-fixed-grid strong{display:block;margin-top:3px;font-size:.78rem;word-break:break-word}
.smtp-config-form{max-width:620px;margin-top:12px}
.smtp-test-form{margin-top:10px}
.service-email-card{margin-top:16px}
.service-email-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end}
.service-email-form label{margin:0}
.service-email-form .btn{min-height:44px}
.badge.green{background:#eaf7ee;color:#176c38}

@media(max-width:850px){
  .inspection-equipment-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}
  .inspection-equipment-card{grid-template-columns:minmax(180px,1fr) auto}
  .inspection-state-buttons{grid-column:1/-1}
  .inspection-equipment-delete{position:absolute;right:8px;top:8px}
  .inspection-equipment-identity{padding-right:34px}
  .inspection-equipment-other-wrap{grid-column:1/-1}
  .inspection-picker-qty-row{grid-template-columns:1fr auto}
  .inspection-picker-qty-row .inspection-state-buttons{grid-column:1/-1}
  .smtp-fixed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .inspection-equipment-toolbar{align-items:stretch;flex-direction:column}
  .inspection-equipment-toolbar .btn{width:100%}
  .inspection-equipment-summary{text-align:center}
  .inspection-equipment-card{grid-template-columns:1fr}
  .inspection-qty-stepper{width:max-content}
  .inspection-state-buttons{grid-column:auto}
  .inspection-equipment-delete{position:absolute}
  .inspection-equipment-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .inspection-catalog-card{min-height:112px;padding:8px 4px}
  .inspection-catalog-card img{width:48px;height:48px}
  .inspection-catalog-card strong{font-size:.65rem}
  .inspection-picker-panel{width:calc(100vw - 12px);max-height:96vh;padding:14px}
  .inspection-picker-footer{flex-direction:column;align-items:stretch}
  .inspection-picker-footer .btn{width:100%}
  .inspection-picker-qty-row{grid-template-columns:1fr}
  .inspection-picker-qty-row .inspection-qty-stepper{justify-self:start}
  .icon-equipment-choice-actions{flex-direction:column}
  .smtp-fixed-grid{grid-template-columns:1fr 1fr}
  .service-email-form{grid-template-columns:1fr}
  .service-email-form .btn{width:100%}
}

/* =====================================================
   V48 · Inspección, catálogo de equipos, GPS y contraste
   ===================================================== */
.xetux-actions{display:flex;gap:8px;flex-wrap:wrap}
#materialsSection[hidden]{display:none!important}
.inspection-equipment-card{
  position:relative;
  border:2px solid #9da3a0!important;
  background:#fff!important;
  box-shadow:0 2px 0 rgba(0,0,0,.04);
  padding:13px!important;
}
.inspection-equipment-card+.inspection-equipment-card{margin-top:2px}
.inspection-equipment-identity img{background:#fff;border:1px solid #c8ccc9;border-radius:10px;padding:4px}
.inspection-catalog-card{background:#fff!important;border:2px solid #b9bdba!important}
.inspection-catalog-card.selected{border-color:#198b43!important;background:#f0fbf4!important}
.inspection-dual-qty{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:210px}
.inspection-dual-qty label,.picker-dual label{font-size:.66rem;font-weight:900;color:#555;margin:0}
.inspection-dual-qty input,.picker-dual input{margin-top:4px!important;text-align:center;font-weight:900;font-size:1rem!important;padding:8px!important}
.inspection-required-toggle{min-width:210px}
.inspection-required-toggle>span,.picker-required>span{display:block;font-size:.66rem;font-weight:900;color:#555;margin-bottom:5px}
.inspection-required-toggle>div,.picker-required{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.inspection-required-btn,.picker-required button{border:1px solid #c5c8c6;background:#f5f5f5;border-radius:9px;padding:9px;font-weight:900;color:#333}
.inspection-required-btn.active[data-required="1"],.picker-required button.active[data-v="1"]{background:#fff3ea;border-color:#f26d21;color:#a23d0d}
.inspection-required-btn.active[data-required="0"],.picker-required button.active[data-v="0"]{background:#edf7ef;border-color:#8fc79d;color:#166d35}
.inspection-equipment-custom-wrap,.inspection-equipment-note-wrap{grid-column:1/-1;font-size:.7rem;font-weight:850}
.inspection-equipment-custom-wrap input,.inspection-equipment-note-wrap input{margin-top:4px!important}
.picker-dual{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.inspection-picker-qty-row{border:2px solid #bfc3c0!important;background:#fff!important}
.inspection-picker-qty-row .picker-custom,.inspection-picker-qty-row .picker-note{grid-column:1/-1}
.client-preview-table.v48>div{grid-template-columns:minmax(0,1fr) 78px 82px!important}
.client-preview-table.v48 small{display:block;margin-top:3px;color:#666;font-size:.62rem}
.icon-preview-box{background:#fff!important;border:1px solid #aeb3b0!important}
.icon-option{border:2px solid #b8bcb9!important;background:#fff!important}
.photo-card{border:2px solid #8f9591!important;background:#fff!important}
.account-passkey-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.account-main-btn{font-weight:900}
.tracking-main-btn{background:#178b48;color:#fff!important;border-color:#178b48!important}
.tracker-wrap{max-width:900px}
.tracking-card{margin-top:16px}
.tracking-status{display:inline-flex;align-items:center;padding:10px 13px;border-radius:999px;font-weight:900;margin:8px 0 14px}
.tracking-status.active{background:#e9f8ee;color:#15703a;border:1px solid #9ed2ad}
.tracking-status.idle{background:#f1f1f1;color:#555;border:1px solid #d0d0d0}
.tracking-detail{padding:14px;border:1px solid #d3d6d4;border-radius:12px;background:#fafafa;font-weight:700;line-height:1.5}
.tracking-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}
.tracking-admin-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr);gap:16px}
.tracking-tech-list{display:grid;gap:8px;align-content:start}
.tracking-tech-row{display:grid;gap:4px;text-decoration:none;color:inherit;border:2px solid #c8ccc9;border-radius:12px;padding:12px;background:#fff}
.tracking-tech-row.selected{border-color:#f26d21;background:#fff8f3}
.tracking-tech-row span{font-size:.72rem;font-weight:900}
.tracking-tech-row small{color:#666;word-break:break-word}
.online-dot{color:#168542}.offline-dot{color:#777}
.tracking-map-panel{min-width:0;border:1px solid #d4d6d5;border-radius:14px;padding:14px;background:#fafafa}
.tracking-map-frame{width:100%;height:420px;border:1px solid #aaa;border-radius:12px;background:#eee;margin:8px 0 12px}
@media(max-width:760px){
  .inspection-equipment-card{grid-template-columns:1fr!important}
  .inspection-dual-qty,.inspection-required-toggle{min-width:0;width:100%}
  .inspection-equipment-delete{position:absolute!important;right:8px!important;top:8px!important;width:38px!important}
  .tracking-admin-grid{grid-template-columns:1fr}
  .tracking-map-frame{height:330px}
  .account-passkey-actions>*{width:100%}
}


/* V48 - menú principal por permisos */
.portal-v48-wrap{max-width:980px}
.portal-v48-head{margin-bottom:14px}
.portal-v48-head h1{margin-bottom:5px}
.portal-v48-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.portal-v48-card{min-width:0;display:grid;grid-template-columns:54px minmax(0,1fr) 26px;gap:12px;align-items:center;text-decoration:none;color:#151515;background:#fff;border:2px solid #d7d7d7;border-radius:16px;padding:18px;transition:border-color .15s ease,transform .15s ease}
.portal-v48-card.orange{border-color:#f2a26d}.portal-v48-card.green{border-color:#8fc9a1}
.portal-v48-card:focus-visible{outline:3px solid #ef6c2f;outline-offset:2px}
.portal-v48-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:#f1f1f1;font-size:1.65rem}
.portal-v48-card strong{display:block;font-size:1.05rem}.portal-v48-card p{margin:5px 0 0;color:#696969;font-size:.86rem;line-height:1.35}.portal-v48-arrow{font-size:1.5rem;font-weight:900;text-align:right}
@media(hover:hover) and (pointer:fine){.portal-v48-card:hover{border-color:#ef6c2f;transform:translateY(-1px)}}
@media(max-width:680px){.portal-v48-grid{grid-template-columns:1fr}.portal-v48-card{grid-template-columns:48px minmax(0,1fr) 22px;padding:15px}.portal-v48-icon{width:46px;height:46px;font-size:1.4rem}}


/* V50 · recorrido en la misma hoja + hora final opcional */
.tracking-admin-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.tracking-admin-title-row h1{margin-bottom:6px}
.tracking-live-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:460px}
.tracking-live-status{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;font-size:.76rem;font-weight:900;border:1px solid transparent;white-space:nowrap}
.tracking-live-status.online{background:#e9f8ee;color:#15703a;border-color:#9ed2ad}
.tracking-live-status.offline{background:#fff0ed;color:#a33b28;border-color:#efb5a8}
.tracking-tech-row{font:inherit;text-align:left;width:100%;cursor:pointer}
.tracking-tech-row:hover{border-color:#aaa}
.tracking-tech-row:focus-visible{outline:3px solid rgba(242,103,34,.28);outline-offset:2px}
.tracking-empty,.tracking-empty-panel{margin:8px 0}
@media(max-width:800px){.tracking-admin-title-row{flex-direction:column}.tracking-live-tools{justify-content:flex-start;max-width:none;width:100%}.tracking-live-tools .btn{width:100%}}

/* V50 · control de recorrido dentro de la hoja */

.tracking-inline-state{display:inline-flex;align-items:center;padding:10px 13px;border-radius:999px;font-size:.78rem;font-weight:900;border:1px solid #d0d0d0;background:#f4f4f4;color:#555;white-space:nowrap}
.tracking-inline-state.active{background:#e9f8ee;color:#15703a;border-color:#9ed2ad}
.tracking-main-btn.active{background:#a83232!important;border-color:#a83232!important;color:#fff!important}
@media(max-width:700px){.tracking-inline-state{width:100%;justify-content:center}.service-quickbar .tracking-main-btn{width:100%}}

/* ============================================================
   V54 - Editor de fotos: texto y color de líneas
   ============================================================ */
.photo-annotation-panel{display:grid;gap:7px;padding:8px 0;color:#fff}
.photo-color-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#202020;border:1px solid #3b3b3b;border-radius:10px;padding:8px 10px}
.photo-color-row>strong{font-size:.74rem;white-space:nowrap}
.photo-color-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.photo-color-swatch{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.4);background:var(--swatch);padding:0;cursor:pointer;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
.photo-color-swatch.active{outline:3px solid #f26722;outline-offset:2px}
.photo-line-width-label{display:flex;align-items:center;gap:7px;margin:0 0 0 auto;color:#eee;font-size:.72rem}
.photo-line-width-label select{width:auto;min-width:92px;margin:0;padding:7px 9px;border-radius:8px}
.photo-text-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;background:#202020;border:1px solid #3b3b3b;border-radius:10px;padding:8px 10px}
.photo-text-row input[type="text"],.photo-text-row>input:not([type]){margin:0}
.photo-text-row>input{margin:0}
.photo-text-row label{display:flex;align-items:center;gap:7px;margin:0;color:#eee;font-size:.7rem;white-space:nowrap}
.photo-text-row input[type="color"]{width:48px;height:38px;padding:2px;margin:0;border-radius:8px;background:#fff}
.text-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:#262626;padding:7px 9px;border-radius:9px;margin-top:6px}
.text-controls span{font-size:.72rem;color:#eee;margin-right:auto;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){
  .photo-color-row{gap:8px}.photo-color-row>strong{width:100%}.photo-line-width-label{margin-left:0}.photo-text-row{grid-template-columns:1fr auto}.photo-text-row>input{grid-column:1/-1}.photo-text-row .mini-btn{min-height:40px}.photo-color-swatch{width:32px;height:32px}
}
@media(max-width:420px){.photo-text-row{grid-template-columns:1fr}.photo-text-row label{justify-content:space-between}.photo-text-row .mini-btn{width:100%}}


/* ============================================================
   V56 - Preferencias discretas y editor móvil corregido
   ============================================================ */
.ui-preference-dock{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:2100;display:flex;gap:7px;padding:6px;border:1px solid rgba(120,120,120,.3);border-radius:999px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 7px 24px rgba(0,0,0,.16)}
.ui-pref-btn{width:42px;height:42px;border:0;border-radius:50%;background:#ededf0;color:#111;font-size:1.05rem;display:grid;place-items:center;cursor:pointer}
body.ui-left .ui-preference-dock{left:12px;right:auto}
body.ui-left .topnav{flex-direction:row-reverse}
body.ui-left .toplinks{justify-content:flex-start}
body.ui-left .modal-panel .modal-close{left:12px;right:auto}
body.ui-left .service-summary-bar .btn{margin-left:0;margin-right:auto}
body.ui-left .simple-map-controls{left:10px;right:auto}
@media(max-width:800px){body.ui-left .topnav{flex-direction:column}body.ui-left .toplinks{align-self:flex-start}.ui-preference-dock{right:9px;bottom:calc(9px + env(safe-area-inset-bottom))}.ui-pref-btn{width:39px;height:39px}}

body.ui-dark{background:#111315;color:#e9e9ea;color-scheme:dark}
body.ui-dark .card,body.ui-dark .stat,body.ui-dark .admin-card,body.ui-dark .portal-v48-card,body.ui-dark .photo-card,body.ui-dark .yummy-card,body.ui-dark .inspection-subgroup,body.ui-dark .inspection-equipment-row,body.ui-dark .signature-card,body.ui-dark .modal-panel,body.ui-dark .review-card,body.ui-dark .access-form,body.ui-dark .privilege-box{background:#1b1d20;color:#f1f1f1;border-color:#35383d}
body.ui-dark input,body.ui-dark textarea,body.ui-dark select{background:#202328;color:#f5f5f5;border-color:#44484f}
body.ui-dark .btn.light,body.ui-dark .mini-btn,body.ui-dark .ui-pref-btn{background:#30343a;color:#f4f4f4}
body.ui-dark .muted,body.ui-dark .mini,body.ui-dark .admin-card span,body.ui-dark .portal-v48-card p,body.ui-dark .stat span{color:#aeb2b8}
body.ui-dark table{background:#1b1d20;color:#eee}body.ui-dark td{border-color:#32363b}body.ui-dark th{background:#08090a}
body.ui-dark .service-band,body.ui-dark .service-section h2,body.ui-dark .draft-status{background:#2b2e33;color:#f4f4f4}
body.ui-dark .service-section,body.ui-dark .inspection-only-section{border-color:#3e4349;background:#181a1d}
body.ui-dark .portal-v48-icon,body.ui-dark .icon-picker-head button{background:#2b2e33;color:#eee}
body.ui-dark .icon-picker-card,body.ui-dark .icon-picker-grid .icon-option,body.ui-dark .icon-preview-box{background:#1b1d20!important;color:#f3f3f3!important;border-color:#444!important}
body.ui-dark .icon-name{color:#f1f1f1}
body.ui-dark .ui-preference-dock{background:rgba(24,26,29,.95);border-color:#444}
body.ui-dark .network-state.online{background:#173321;color:#7de3a0}body.ui-dark .network-state.offline{background:#3b2718;color:#ffc07c}
body.ui-dark .tracking-inline-state{background:#25282c;color:#ddd;border-color:#444}
body.ui-dark a{color:inherit}

.photo-editor-inner{padding-bottom:calc(8px + env(safe-area-inset-bottom))}
.photo-editor-head-actions{display:flex;align-items:center;gap:6px}
.photo-tools-toggle{border:1px solid #454545;background:#232323;color:#fff;border-radius:8px;padding:7px 9px;font-size:.72rem;font-weight:900;cursor:pointer}
.photo-editor-tools{display:grid;gap:5px;min-height:0}
.photo-editor.compact-tools .photo-editor-tools{display:none}
.photo-toolbar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:3px 0 5px}
.photo-toolbar .photo-mode{flex:0 0 auto;padding:6px 8px;font-size:.7rem;min-height:34px;white-space:nowrap}
.photo-canvas-wrap{flex:1 1 auto;min-height:0!important;background:#050505;border-radius:10px;margin:4px 0;overflow:auto;overscroll-behavior:contain}
.photo-canvas-wrap canvas{max-width:100%;max-height:100%;object-fit:contain}
.photo-meta-row{flex:0 0 auto}.photo-tools{flex:0 0 auto;padding-bottom:2px}
@media(max-width:700px){
  .photo-editor-inner{padding:5px;height:100%;width:100%}
  .photo-editor-head{padding:1px 2px 4px}.photo-editor-head strong{font-size:.92rem}.photo-editor-head button#closePhotoEditor{font-size:1.7rem;line-height:1}
  .photo-editor-tools{max-height:170px;overflow:auto;padding-right:2px}
  .photo-annotation-panel{padding:3px 0;gap:4px}.photo-color-row,.photo-text-row{padding:5px 7px;border-radius:8px}
  .photo-color-swatch{width:25px!important;height:25px!important;border-width:2px}.photo-color-presets{gap:5px}
  .photo-line-width-label select{min-width:78px;padding:5px 7px}.photo-text-row .mini-btn{min-height:34px!important;padding:6px 8px}
  .photo-meta-row{grid-template-columns:115px minmax(0,1fr);gap:5px}.photo-meta-row select,.photo-meta-row input{margin:4px 0;padding:8px 9px}
  .photo-tools{gap:5px}.photo-tools .btn{padding:9px 8px;font-size:.74rem;flex:1 1 30%}
  .photo-canvas-wrap{min-height:48vh!important}
}
@media(max-width:430px){.photo-meta-row{grid-template-columns:1fr}.photo-tools .btn{flex:1 1 45%}}

/* V56 - Monitoreo de servidores */
.portal-v48-card.blue{border-color:#8cb7e8}
.server-monitor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.server-monitor-head h1{margin:0 0 5px}.server-monitor-live{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.server-monitor-search{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;margin:12px 0}.server-monitor-filters{display:flex;gap:7px;flex-wrap:wrap}.server-filter{border:1px solid #d5d8dc;background:#fff;color:#333;border-radius:999px;padding:8px 11px;font-size:.74rem;font-weight:900;cursor:pointer}.server-filter.active{background:#151515;color:#fff;border-color:#151515}
.server-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.server-card{border:2px solid #d9dcdf;border-radius:15px;background:#fff;padding:15px;min-width:0}.server-card.offline{border-color:#d5a7a1}.server-card.alerting{box-shadow:inset 4px 0 0 #e35c39}.server-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.server-card-title{min-width:0}.server-card-title strong{font-size:1.05rem;display:block;overflow-wrap:anywhere}.server-card-title span{font-size:.72rem;color:#71757a}.server-state{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.65rem;font-weight:900;white-space:nowrap}.server-state.online{background:#e7f7ec;color:#157239}.server-state.offline{background:#fff0ed;color:#a23c2b}.server-state.alert{background:#fff4dd;color:#8b5a00}.server-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0}.server-metric{background:#f5f6f7;border-radius:9px;padding:9px}.server-metric span{display:block;font-size:.61rem;color:#74787d;text-transform:uppercase;font-weight:800}.server-metric strong{display:block;font-size:1rem;margin-top:3px}.server-details{display:grid;gap:5px;font-size:.72rem;color:#5d6268}.server-details b{color:#222}.server-disks{display:grid;gap:6px;margin-top:10px}.server-disk{border:1px solid #e1e3e6;border-radius:8px;padding:8px}.server-disk-top{display:flex;justify-content:space-between;gap:8px;font-size:.7rem}.server-progress{height:6px;border-radius:999px;background:#e9ebed;overflow:hidden;margin-top:6px}.server-progress i{display:block;height:100%;background:#3a9d5d;width:var(--pct)}.server-disk.critical .server-progress i{background:#d14d3d}.server-alerts{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.server-alert-chip{font-size:.62rem;font-weight:900;padding:5px 7px;border-radius:999px;background:#fff1e9;color:#a84c20}.server-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.server-empty{grid-column:1/-1;padding:24px;text-align:center;border:1px dashed #bbb;border-radius:12px;color:#777}.server-manage-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #e4e4e7}.server-manage-form label{margin:0}.server-manage-form .wide{grid-column:1/-1}.server-manage-form .actions{grid-column:1/-1;margin:0}.server-history-table td{font-size:.72rem}
body.ui-dark .server-card,body.ui-dark .server-filter,body.ui-dark .server-metric,body.ui-dark .server-disk{background:#1b1d20;color:#eee;border-color:#3b3f44}body.ui-dark .server-card-title span,body.ui-dark .server-details,body.ui-dark .server-metric span{color:#aeb3b8}body.ui-dark .server-details b{color:#f2f2f2}body.ui-dark .server-filter.active{background:#f26722;border-color:#f26722}body.ui-dark .server-progress{background:#35393e}
@media(max-width:820px){.server-grid{grid-template-columns:1fr}.server-monitor-head{flex-direction:column}.server-monitor-search{grid-template-columns:1fr}.server-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.server-manage-form{grid-template-columns:1fr}.server-manage-form .wide,.server-manage-form .actions{grid-column:auto}}
@media(max-width:430px){.server-metrics{grid-template-columns:1fr 1fr}.server-monitor-filters{display:grid;grid-template-columns:1fr 1fr}.server-filter{width:100%}}


/* ============================================================
   V56 - Preferencias discretas y editor movil sin solapamientos
   ============================================================ */
.ui-preference-dock{display:none!important}
.ui-settings-button{position:fixed;right:12px;top:calc(12px + env(safe-area-inset-top));z-index:1250;width:38px;height:38px;border:1px solid #d7d9dc;border-radius:10px;background:#f0f0f2;color:#111;display:grid;place-items:center;font-size:1rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.10)}
.ui-settings-button.in-header{position:static;z-index:auto;box-shadow:none;flex:0 0 auto;min-width:42px;width:42px;height:42px;padding:0;margin:0}
.ui-settings-panel{position:fixed;right:14px;top:calc(62px + env(safe-area-inset-top));z-index:2200;width:min(330px,calc(100vw - 28px));background:#fff;color:#171717;border:1px solid #d9dbde;border-radius:14px;box-shadow:0 18px 55px rgba(0,0,0,.24);padding:9px}
.ui-settings-panel[hidden]{display:none!important}.ui-settings-head{display:flex;align-items:center;justify-content:space-between;padding:4px 5px 8px}.ui-settings-head strong{font-size:1rem}.ui-settings-close{border:0;background:#eeeef0;border-radius:8px;width:34px;height:34px;font-size:1.4rem;line-height:1;cursor:pointer}.ui-setting-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:0;border-top:1px solid #ececef;background:transparent;color:inherit;padding:12px 6px;cursor:pointer}.ui-setting-row span:first-child{display:grid;gap:2px}.ui-setting-row b{font-size:.86rem}.ui-setting-row small{font-size:.69rem;color:#73777d}.ui-setting-value{font-size:.69rem;font-weight:900;padding:5px 8px;border-radius:999px;background:#eceef0;white-space:nowrap}
body.ui-dark .ui-settings-button{background:#30343a;color:#f4f4f4;border-color:#454a51}body.ui-dark .ui-settings-panel{background:#1b1d20;color:#f1f1f1;border-color:#3d4147}body.ui-dark .ui-settings-close,body.ui-dark .ui-setting-value{background:#30343a;color:#f4f4f4}body.ui-dark .ui-setting-row{border-color:#33373c}body.ui-dark .ui-setting-row small{color:#aeb2b8}
body.ui-left .ui-settings-panel{left:14px;right:auto}
@media(max-width:800px){.ui-settings-button.in-header{width:40px;height:40px;min-width:40px}.ui-settings-panel{right:10px;top:calc(58px + env(safe-area-inset-top));width:min(320px,calc(100vw - 20px))}body.ui-left .ui-settings-panel{left:10px;right:auto}}

/* Editor: cabecera compacta, herramientas nunca montadas sobre la foto y scroll seguro en iPhone */
.photo-editor{overflow:hidden}.photo-editor-inner{box-sizing:border-box;max-height:100%;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:8px 8px calc(88px + env(safe-area-inset-bottom))!important}.photo-editor-head{position:sticky;top:0;z-index:7;background:#111;min-height:44px;padding:4px 2px!important;gap:8px}.photo-editor-head strong{white-space:nowrap}.photo-editor-head-actions{margin-left:auto;min-width:0}.photo-tools-toggle{font-size:.67rem!important;padding:6px 8px!important;min-height:34px;max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-editor-head button#closePhotoEditor{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto}.photo-editor-tools{position:relative;z-index:4;max-height:none!important;overflow:visible!important}.photo-canvas-wrap{flex:0 0 auto!important;min-height:0!important;height:auto!important;overflow:auto!important;display:block!important;text-align:center;padding:0}.photo-canvas-wrap canvas{display:block;margin:0 auto;max-width:100%!important;max-height:none!important;width:auto;height:auto;touch-action:none}.photo-tools{position:relative;z-index:4;background:#111;padding:6px 0 0!important;margin:0}.photo-meta-row,.sticker-controls,.text-controls{position:relative;z-index:4}
@media(max-width:700px){.photo-editor-inner{width:100%!important;height:100%!important;padding:5px 7px calc(96px + env(safe-area-inset-bottom))!important}.photo-editor-head strong{font-size:.82rem!important}.photo-tools-toggle{max-width:122px;font-size:.63rem!important}.photo-toolbar{display:flex!important;gap:4px!important;overflow-x:auto!important;padding:3px 0 4px!important}.photo-toolbar .photo-mode{font-size:.64rem!important;min-height:32px!important;padding:5px 7px!important}.photo-color-row{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important;overflow-x:auto!important;padding:5px!important}.photo-color-row>strong{flex:0 0 auto!important;width:auto!important}.photo-color-presets{flex-wrap:nowrap!important;flex:0 0 auto!important}.photo-color-swatch{width:23px!important;height:23px!important}.photo-line-width-label{flex:0 0 auto!important;margin-left:3px!important}.photo-line-width-label select{min-width:72px!important;padding:4px 6px!important}.photo-text-row{padding:5px!important}.photo-canvas-wrap{margin:5px 0!important;background:#050505!important;border-radius:9px}.photo-canvas-wrap canvas{width:100%!important;height:auto!important;max-width:100%!important}.photo-tools .btn{min-height:42px!important;padding:8px 6px!important;font-size:.69rem!important}.photo-editor.compact-tools .photo-canvas-wrap{margin-top:6px!important}}
@media(max-width:430px){.photo-editor-head-actions{gap:3px!important}.photo-tools-toggle{max-width:108px}.photo-editor-head button#closePhotoEditor{width:34px;height:34px}.photo-tools{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}.photo-tools .btn{width:100%!important;min-width:0!important}.photo-meta-row{grid-template-columns:105px minmax(0,1fr)!important}.photo-meta-row select,.photo-meta-row input{min-width:0!important}}

/* V57 - ServerMonitor tiempo real y eliminación de registros */
.server-sensor-source{display:block;margin-top:3px;font-size:.56rem;font-weight:800;color:#83878d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.server-manage-form .actions{gap:7px}.server-manage-form .actions .danger{background:#fff0ed!important;color:#9d2d1c!important;border-color:#efb5aa!important}body.ui-dark .server-sensor-source{color:#9ea3aa}body.ui-dark .server-manage-form .actions .danger{background:#3a211e!important;color:#ffb4a7!important;border-color:#70443d!important}


/* ============================================================
   V58 - Editor de fotos: herramientas por modo, sin solapamientos
   ============================================================ */
.photo-annotation-panel{display:block!important;min-width:0}
.photo-draw-panel[hidden],.photo-text-row[hidden]{display:none!important}
.photo-toolbar-primary,.photo-toolbar-secondary{min-width:0}
.photo-toolbar-secondary{padding-top:0!important}
.photo-draw-panel{min-width:0}
.photo-editor[data-tool-mode="sticker"] .photo-annotation-panel{display:none!important}
.photo-editor[data-tool-mode="draw"] .photo-text-row{display:none!important}
.photo-editor[data-tool-mode="text"] .photo-draw-panel{display:none!important}
@media(max-width:700px){
  .photo-editor-tools{display:block!important;max-height:none!important;overflow:visible!important}
  .photo-toolbar-primary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px!important;overflow:visible!important;padding:3px 0!important}
  .photo-toolbar-primary .photo-mode{min-width:0!important;width:100%!important;overflow:hidden;text-overflow:ellipsis;padding:6px 3px!important;font-size:.61rem!important}
  .photo-toolbar-secondary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px!important;overflow:visible!important;padding:0 0 4px!important}
  .photo-toolbar-secondary .photo-mode{min-width:0!important;width:100%!important;padding:5px 3px!important;font-size:.59rem!important}
  .photo-annotation-panel{margin:0!important}
  .photo-color-row{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:6px!important;overflow:visible!important;padding:6px!important}
  .photo-color-row>strong{align-self:center!important}
  .photo-color-presets{display:flex!important;gap:4px!important;overflow-x:auto!important;overscroll-behavior-x:contain;padding:3px 2px!important;min-width:0!important;scrollbar-width:none}
  .photo-color-presets::-webkit-scrollbar{display:none}
  .photo-color-swatch{width:25px!important;height:25px!important;flex:0 0 25px!important}
  .photo-line-width-label{display:flex!important;align-items:center!important;gap:4px!important;margin:0!important;font-size:.62rem!important}
  .photo-line-width-label select{min-width:68px!important;max-width:80px!important;font-size:.68rem!important;padding:4px!important}
  .photo-text-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:6px!important;padding:6px!important}
  .photo-text-row>input{grid-column:1/-1!important;width:100%!important;min-width:0!important}
  .photo-text-row label{min-width:0!important}
  .photo-text-row .mini-btn{white-space:nowrap!important;padding:7px 9px!important}
  .photo-canvas-wrap{margin-top:6px!important}
}
@media(max-width:430px){
  .photo-toolbar-primary .photo-mode{font-size:.57rem!important}
  .photo-toolbar-secondary .photo-mode{font-size:.55rem!important}
  .photo-color-row{grid-template-columns:1fr auto!important}
  .photo-color-row>strong{grid-column:1/-1;font-size:.65rem!important}
  .photo-color-presets{grid-column:1/2!important}
  .photo-line-width-label{grid-column:2/3!important}
}

/* =========================================================
   V59 · Instalación guiada
   ========================================================= */
.installation-material-entry{display:grid;grid-template-columns:minmax(220px,2fr) minmax(110px,.7fr) minmax(120px,.8fr) auto;gap:10px;align-items:end}
.installation-material-entry label{margin:0}
.installation-material-entry #installationMaterialOtherWrap{grid-column:1/-1}
.installation-material-list{display:grid;gap:8px;margin-top:12px}
.installation-material-empty{border:1px dashed #cfcfcf;border-radius:14px;padding:14px;color:#777;background:#fafafa}
.installation-material-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d6d6d6;border-radius:14px;padding:12px 14px;background:#fff}
.installation-material-row>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.installation-material-row strong{font-size:15px;line-height:1.2}
.installation-material-row span{font-size:13px;color:#666}
.installation-description-tools{border:1px solid #ddd;border-radius:18px;background:#fafafa;padding:16px;margin-bottom:14px}
.installation-description-tools .section-title-row{margin-bottom:12px}
.installation-description-grid{margin-bottom:12px}
.installation-tests{border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:12px 0;margin:12px 0}
.installation-description-tools .inline-actions{margin-top:12px}
body.dark-mode .installation-description-tools,body.dark .installation-description-tools{background:#181818;border-color:#3c3c3c}
body.dark-mode .installation-material-row,body.dark .installation-material-row{background:#151515;border-color:#3d3d3d}
body.dark-mode .installation-material-empty,body.dark .installation-material-empty{background:#151515;border-color:#444;color:#aaa}
@media(max-width:720px){
  .installation-material-entry{grid-template-columns:1fr 1fr}
  .installation-material-entry label:first-child{grid-column:1/-1}
  .installation-material-entry #installationMaterialOtherWrap{grid-column:1/-1}
  .installation-material-entry .btn{grid-column:1/-1;width:100%}
  .installation-description-tools{padding:12px;border-radius:15px}
  .installation-description-grid{grid-template-columns:1fr!important}
  .installation-tests .check-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .installation-material-entry{grid-template-columns:1fr}
  .installation-material-entry label,.installation-material-entry label:first-child,.installation-material-entry #installationMaterialOtherWrap,.installation-material-entry .btn{grid-column:1}
  .installation-material-row{align-items:flex-start}
  .installation-tests .check-grid{grid-template-columns:1fr}
}

/* =========================================================
   V60 · Inicio guiado, materiales visuales y Drive mensual
   ========================================================= */
.service-start-card{border:2px solid #f28a35;background:linear-gradient(180deg,#fffaf5,#fff);box-shadow:0 10px 28px rgba(0,0,0,.055)}
.service-start-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.service-start-heading h2{margin:0 0 3px;font-size:22px}
.service-start-heading p{margin:0;color:#6b6b6b}
.service-start-step{display:inline-flex;align-items:center;justify-content:center;min-width:66px;height:34px;border-radius:999px;background:#111;color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em}
.service-start-card .primary-activity-label select{font-size:17px;font-weight:800;border:2px solid #cfcfcf;background:#fff}
.service-details-after-type[hidden]{display:none!important}
.description-edit-hint{margin:0 0 8px;padding:9px 12px;border-radius:12px;background:#eef8f0;border:1px solid #b8dfc1;color:#24592f;font-size:13px;font-weight:700}

.material-title-row{gap:14px;align-items:center}
.dynamic-material-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.installation-material-empty{grid-column:1/-1;display:flex;flex-direction:column;gap:3px}
.installation-material-selected-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid #d7d7d7;border-radius:16px;padding:10px;background:#fff;min-width:0}
.installation-material-selected-card>img{width:54px;height:54px;object-fit:contain;border-radius:11px;background:#fafafa;padding:5px}
.installation-material-selected-main{min-width:0}
.installation-material-selected-main>strong{display:block;font-size:14px;line-height:1.2;margin-bottom:8px}
.installation-material-selected-controls{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(105px,1fr);gap:7px}
.installation-material-selected-controls label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#747474;margin:0}
.installation-material-selected-controls input,.installation-material-selected-controls select{margin-top:3px;min-height:38px;padding:7px 8px;font-size:15px}
.material-picker-panel{width:min(940px,96vw);max-width:940px}
.material-search-label{display:block;margin:10px 0 12px}
.installation-material-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:58vh;overflow:auto;padding:2px 3px 12px}
.installation-material-card{appearance:none;border:1px solid #d7d7d7;background:#fff;border-radius:16px;min-height:132px;padding:10px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#111;font:inherit;font-weight:800;line-height:1.15;text-align:center;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}
.installation-material-card img{width:70px;height:70px;object-fit:contain;pointer-events:none}
.installation-material-card span{font-size:12px;pointer-events:none}
.installation-material-card.just-added{border-color:#f28a35;background:#fff4e8;transform:scale(.97)}
.installation-custom-material{margin-top:12px;padding:12px;border:1px solid #e0e0e0;border-radius:15px;background:#fafafa;display:grid;grid-template-columns:minmax(0,2fr) 110px 150px auto;gap:9px;align-items:end}
.installation-custom-material[hidden]{display:none!important}
.installation-custom-material label{margin:0}
.material-modal-actions{margin-top:12px;justify-content:flex-end}

.drive-settings-card h1{margin-top:0}
.drive-folder-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.drive-folder-preview>div{border:1px solid #ddd;border-radius:15px;padding:14px;background:#fafafa;display:flex;flex-direction:column;gap:4px}
.drive-folder-preview span,.drive-folder-preview small{color:#666;font-size:12px}.drive-folder-preview strong{font-size:18px}
.drive-steps{line-height:1.7;padding-left:22px}.drive-steps li{margin:5px 0}

body.dark-mode .service-start-card,body.dark .service-start-card{background:#17120e;border-color:#f28a35}
body.dark-mode .service-start-heading p,body.dark .service-start-heading p{color:#aaa}
body.dark-mode .service-start-card .primary-activity-label select,body.dark .service-start-card .primary-activity-label select{background:#161616;border-color:#4a4a4a;color:#eee}
body.dark-mode .description-edit-hint,body.dark .description-edit-hint{background:#132016;border-color:#315c38;color:#a8dfb2}
body.dark-mode .installation-material-selected-card,body.dark .installation-material-selected-card,body.dark-mode .installation-material-card,body.dark .installation-material-card{background:#151515;border-color:#3c3c3c;color:#eee}
body.dark-mode .installation-material-selected-card>img,body.dark .installation-material-selected-card>img{background:#f5f5f5}
body.dark-mode .installation-custom-material,body.dark .installation-custom-material,body.dark-mode .drive-folder-preview>div,body.dark .drive-folder-preview>div{background:#161616;border-color:#3d3d3d}

@media(max-width:760px){
  .service-start-heading{align-items:flex-start}.service-start-heading h2{font-size:19px}.service-start-step{min-width:58px;height:30px;font-size:10px}
  .material-title-row{align-items:flex-start;flex-direction:column}.material-title-row .btn{width:100%}
  .dynamic-material-list{grid-template-columns:1fr}
  .installation-material-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:54vh}
  .installation-material-card{min-height:116px;padding:8px 6px}.installation-material-card img{width:58px;height:58px}.installation-material-card span{font-size:11px}
  .installation-custom-material{grid-template-columns:1fr 1fr}.installation-custom-material label:first-child{grid-column:1/-1}.installation-custom-material .btn{grid-column:1/-1;width:100%}
  .drive-folder-preview{grid-template-columns:1fr}
}
@media(max-width:430px){
  .installation-material-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}
  .installation-material-card{min-height:124px}.installation-material-card img{width:66px;height:66px}
  .installation-material-selected-card{grid-template-columns:48px minmax(0,1fr);align-items:start}.installation-material-selected-card>img{width:46px;height:46px}.installation-material-selected-card>.danger{grid-column:1/-1;width:100%}
  .installation-material-selected-controls{grid-template-columns:1fr 1fr}
  .installation-custom-material{grid-template-columns:1fr}.installation-custom-material label:first-child,.installation-custom-material .btn{grid-column:1}
}

/* ==========================================================
   V61 · Reportes, recepción/taller y condiciones mínimas
   ========================================================== */
.installation-minimum-section{border:1px solid #f2c27d;background:#fffaf3}
.minimum-condition-options{display:grid;gap:10px;margin:12px 0}.warning-check{border-color:#efb04f!important;background:#fff3db!important}.minimum-missing-grid{margin:10px 0}.installation-minimum-alert{margin-top:12px}.minimum-preview{border-left:5px solid #e39a23!important;background:#fff7e6!important}
.drive-manual-note{margin:14px 0;padding:12px;border-radius:12px;background:#f6f7f9;border:1px solid #e1e4e8}.inline-drive-confirm{display:inline-block;margin:0}
.report-filter,.archive-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.report-filter label,.archive-filter label{margin:0}.service-report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.service-report-kpis>div{background:#fff;border:1px solid #e4e5e7;border-radius:16px;padding:16px}.service-report-kpis span{display:block;font-size:13px;color:#666}.service-report-kpis strong{display:block;font-size:34px;margin-top:4px}.service-report-kpis small{color:#777}.service-report-kpis .total{border-color:#f58220;background:#fff8f2}
.archive-list{display:grid;gap:8px}.archive-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #e4e5e7;border-radius:12px;padding:10px 12px}.archive-row label{display:flex;align-items:center;gap:10px;min-width:0;margin:0}.archive-row label span{min-width:0}.archive-row strong,.archive-row small{display:block}.archive-row small{color:#707070;margin-top:3px}.archive-row>div{display:flex;gap:6px;flex-wrap:wrap}
.equipment-module .equipment-intro{margin-bottom:16px}.equipment-photo-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.equipment-photo-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin:12px 0}.equipment-photo-preview img{width:100%;height:110px;object-fit:cover;border-radius:10px;border:1px solid #ddd}.equipment-thumb{position:relative}.equipment-thumb button{position:absolute;right:5px;top:5px;width:30px;height:30px;border:0;border-radius:50%;background:#111;color:#fff;font-size:20px}.signature-card{padding:12px;border:1px solid #ddd;border-radius:12px;background:#fff;margin:12px 0}.signature-canvas{display:block;width:100%;height:150px;border:1px dashed #aaa;border-radius:10px;background:#fff;touch-action:none;margin:10px 0}.equipment-list{display:grid;gap:9px}.equipment-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;border:1px solid #e2e3e5;border-radius:13px;text-decoration:none;color:inherit;background:#fff}.equipment-row div{min-width:0}.equipment-row strong,.equipment-row span{display:block}.equipment-row span{color:#666;margin-top:4px}.equipment-row b{text-align:right;font-size:13px}.equipment-row.status-listo{border-color:#5bbd76;background:#f4fff7}.equipment-row.status-reparacion{border-left:6px solid #f58220}.equipment-row.status-pruebas{border-left:6px solid #3c86d8}.equipment-row.status-recibido,.equipment-row.status-revision{border-left:6px solid #df5d5d}.equipment-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.equipment-status-pill{display:inline-block;padding:8px 12px;border-radius:999px;background:#eceff2;font-size:13px;font-weight:700}.equipment-status-pill.status-listo{background:#dff6e5;color:#16632d}.equipment-status-pill.status-reparacion{background:#fff0e1;color:#894307}.equipment-status-pill.status-pruebas{background:#e7f1ff;color:#20558e}.equipment-timeline{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.equipment-timeline span{padding:7px 9px;background:#f0f1f3;color:#777;border-radius:999px;font-size:12px}.equipment-timeline span.done{background:#e7f6ea;color:#17602c;font-weight:700}
@media(max-width:760px){.report-filter,.archive-filter{grid-template-columns:1fr 1fr}.service-report-kpis{grid-template-columns:1fr 1fr}.archive-row,.equipment-row,.equipment-detail-head{align-items:flex-start;flex-direction:column}.archive-row>div{width:100%}.archive-row>div .btn{flex:1}.equipment-row b{text-align:left}.equipment-photo-preview{grid-template-columns:repeat(3,1fr)}}
@media(max-width:420px){.report-filter,.archive-filter,.service-report-kpis{grid-template-columns:1fr}.equipment-photo-preview{grid-template-columns:repeat(2,1fr)}}


/* V62 - Nota de equipos visual, firmas blancas y control de custodia */
.equipment-picker-head{display:flex;gap:12px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin:18px 0 10px}.equipment-picker-head h2{margin:0}.equipment-search{max-width:260px}.equipment-icon-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.equipment-icon-card{appearance:none;border:1px solid #dedfe2;background:#fff;border-radius:14px;padding:8px 6px 10px;min-height:116px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:800;color:#171717;cursor:pointer}.equipment-icon-card:active{transform:scale(.98)}.equipment-icon-card img{width:68px;height:68px;object-fit:contain}.equipment-icon-card span{font-size:12px;line-height:1.15;text-align:center}.selected-equipment{display:grid;gap:10px;margin:12px 0 18px}.empty-equipment{border:1px dashed #c9cbd0;border-radius:13px;padding:18px;color:#777;text-align:center}.selected-equipment-item{border:1px solid #dfe1e5;border-radius:14px;padding:12px;background:#fafafa}.selected-equipment-title{display:flex;align-items:center;gap:10px;margin-bottom:10px}.selected-equipment-title img{width:52px;height:52px}.selected-equipment-title div{min-width:0;flex:1}.selected-equipment-title strong,.selected-equipment-title span{display:block}.selected-equipment-title span{font-size:12px;color:#777}.equipment-remove{border:0;background:#202124;color:#fff;border-radius:50%;width:36px;height:36px;font-size:22px}.equipment-warning{border:1px solid #e2c28c;background:#fff9ee;border-radius:12px;padding:12px;margin:14px 0}.equipment-warning p{margin:6px 0 0;font-size:13px;line-height:1.45}.equipment-items-table{border:1px solid #e0e1e3;border-radius:12px;overflow:hidden;margin:14px 0}.equipment-items-head,.equipment-items-row{display:grid;grid-template-columns:2fr .45fr 1fr 1.35fr;gap:8px;align-items:center;padding:9px 10px}.equipment-items-head{background:#ededee;font-size:12px;font-weight:800}.equipment-items-row{border-top:1px solid #ededee;font-size:13px}.equipment-items-row small{display:block;color:#777;margin-top:2px}.equipment-date-cards,.delivery-summary,.equipment-report-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0}.equipment-date-cards>div,.delivery-summary>div,.equipment-report-stats>div{border:1px solid #dfe2e5;border-radius:13px;padding:12px;background:#fff}.equipment-date-cards span,.delivery-summary span,.equipment-report-stats span{display:block;font-size:12px;font-weight:800;color:#606368}.equipment-date-cards strong,.delivery-summary strong,.equipment-report-stats strong{display:block;margin-top:5px;font-size:18px}.equipment-date-cards small{display:block;margin-top:5px;color:#777}.equipment-date-cards .pending{background:#fafafa;color:#777}.delivery-summary{max-width:760px;margin-left:auto;margin-right:auto}.equipment-report-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.equipment-report-filter label{min-width:180px;flex:1}.equipment-report-stats{grid-template-columns:repeat(6,minmax(0,1fr));margin:18px 0}.equipment-report-stats strong{font-size:28px}.signature-preview img{display:block;max-width:100%;max-height:160px;margin:auto;background:#fff}.equipment-row small{display:block;color:#888;margin-top:4px}.signature-large canvas{background:#fff}
@media(max-width:800px){.equipment-icon-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.equipment-report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-date-cards,.delivery-summary{grid-template-columns:1fr}.equipment-items-head,.equipment-items-row{grid-template-columns:1.5fr .45fr 1fr}.equipment-items-head span:nth-child(4),.equipment-items-row span:nth-child(4){grid-column:1/-1}.equipment-search{max-width:none;width:100%}}
@media(max-width:430px){.equipment-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-icon-card{min-height:108px}.equipment-icon-card img{width:62px;height:62px}}

/* V62.4 */
.report-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.report-hub-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #dedee2;border-radius:18px;padding:22px;text-decoration:none;color:#171717;box-shadow:0 8px 24px rgba(0,0,0,.04)}.report-hub-card>span{font-size:2rem}.report-hub-card strong{font-size:1.25rem}.report-hub-card small{color:#707070;line-height:1.45}.budget-preview-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:16px}.budget-pdf-frame{width:100%;height:72vh;border:1px solid #ddd;border-radius:12px;background:#eee}.attachment-chip{margin:10px 0;padding:11px 12px;border-radius:10px;background:#f3f3f5;font-weight:800}.equipment-picker-tools{display:flex;gap:8px;margin:8px 0 12px}.warehouse-request-card{border:2px solid #ff7b33;background:#fff8f3}.status-almacen{border-color:#ff7b33!important}.report-card{border-color:#5f8fdc!important}@media(max-width:800px){.report-hub-grid,.budget-preview-grid{grid-template-columns:1fr}.budget-pdf-frame{height:58vh}}


/* V62.5 · Mantenimiento inteligente */
.maintenance-section[hidden],#maintenanceDiagnosticFields[hidden],#maintenanceSelected[hidden],#maintenanceEquipmentOtherWrap[hidden]{display:none!important}
.maintenance-badge{font-size:.68rem;font-weight:900;letter-spacing:.08em;padding:7px 10px;border-radius:999px;background:#fff2bd;color:#5b4800;border:1px solid #e6c84e}
.maintenance-equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:10px 0 12px}
.maintenance-equipment-card{border:1px solid #d9ddda;background:#fff;border-radius:13px;padding:9px;display:flex;align-items:center;gap:9px;text-align:left;min-height:67px;cursor:pointer;color:inherit}
.maintenance-equipment-card img{width:44px;height:44px;object-fit:contain;background:#fff;border:1px solid #e3e5e4;border-radius:9px;padding:3px;flex:0 0 44px}
.maintenance-equipment-card strong{display:block;font-size:.76rem;line-height:1.15}.maintenance-equipment-card small{display:block;font-size:.61rem;color:#777;margin-top:3px}
.maintenance-equipment-card.selected{border:2px solid #f28b1a;background:#fff8ef;padding:8px}.maintenance-equipment-card.selected strong{color:#a64c00}
.maintenance-selected{margin:8px 0 12px;padding:9px 11px;border-radius:10px;background:#f5f6f5;border:1px solid #dedfdf;font-size:.78rem}
.maintenance-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 0 12px}
.maintenance-option{display:block;position:relative}.maintenance-option input{position:absolute;opacity:0;pointer-events:none}.maintenance-option span{display:flex;align-items:center;min-height:43px;padding:8px 10px;border:1px solid #d9ddda;border-radius:10px;background:#fff;font-size:.72rem;font-weight:750;line-height:1.2;cursor:pointer}.maintenance-option input:checked+span{border-color:#f28b1a;background:#fff5e8;color:#8a4100;box-shadow:inset 0 0 0 1px #f28b1a}
.maintenance-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:14px}.maintenance-result-row .btn{margin-bottom:1px;white-space:nowrap}
.maintenance-preview p{margin:5px 0}
body.ui-dark .maintenance-equipment-card,body.ui-dark .maintenance-option span{background:#202226;border-color:#3b3e43;color:#f2f2f2}body.ui-dark .maintenance-equipment-card.selected,body.ui-dark .maintenance-option input:checked+span{background:#382817;border-color:#f28b1a;color:#ffd4a2}body.ui-dark .maintenance-selected{background:#202226;border-color:#3b3e43}
@media(max-width:760px){.maintenance-equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-option-grid{grid-template-columns:1fr}.maintenance-result-row{grid-template-columns:1fr}.maintenance-result-row .btn{width:100%}}
@media(max-width:380px){.maintenance-equipment-grid{grid-template-columns:1fr}}


/* V62.6 · Ícono estacional en TV */


/* V62.7 · Soporte remoto / Autoservicio / fotos desde galería */
.remote-support-section[hidden],.self-service-simple-section[hidden],#remoteNetworkOtherWrap[hidden]{display:none!important}
.remote-support-badge{font-size:.68rem;font-weight:900;letter-spacing:.07em;padding:7px 10px;border-radius:999px;background:#e9f2ff;color:#174f91;border:1px solid #a9c8ef}
.remote-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:9px 0 13px}
.remote-option{position:relative;display:block}.remote-option input{position:absolute;opacity:0;pointer-events:none}.remote-option span{display:flex;min-height:44px;align-items:center;padding:8px 10px;border:1px solid #d8dce2;border-radius:11px;background:#fff;font-size:.75rem;font-weight:750;line-height:1.2;cursor:pointer}.remote-option input:checked+span{border-color:#347fd0;background:#edf5ff;color:#164f8d;box-shadow:inset 0 0 0 1px #347fd0}.remote-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px}.self-service-simple-section{border-left:4px solid #e7b500}.self-service-grid{margin-bottom:8px}.photo-source-actions{display:flex;gap:8px;flex-wrap:wrap}.tv-test-status{margin-top:10px;font-weight:800}
@media(max-width:760px){.remote-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.remote-result-row{grid-template-columns:1fr}.remote-result-row .btn{width:100%}}
@media(max-width:430px){.remote-option-grid{grid-template-columns:1fr}.photo-source-actions{width:100%}.photo-source-actions .btn{flex:1}}

.tv-sound-test-card{margin:0}.tv-sound-test-card .btn{margin-top:8px;align-self:flex-start}.tv-sound-test-card input[type="hidden"]{display:none}

/* V68.2 · Firma rectangular 3:1, igual a la proporción del PDF */
.signature-large{aspect-ratio:3/1;max-width:100%;width:100%}
.signature-large canvas{
  width:100%!important;height:auto!important;min-height:0!important;
  aspect-ratio:3/1!important;display:block!important
}
.signature-preview{
  height:auto!important;min-height:110px;aspect-ratio:3/1!important
}
.signature-preview img{width:100%!important;height:100%!important;object-fit:contain!important}
@media(max-width:700px){
  .signature-large canvas{height:auto!important;min-height:0!important}
}

/* V68.3 · Inspección Inteligente */
.inspection-smart-card{margin:18px 0;padding:16px;border:2px solid #8fd3aa;background:#f5fff8;border-radius:18px}.inspection-smart-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.inspection-smart-title strong{font-size:1.05rem}.inspection-smart-title span{background:#147a42;color:#fff;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:1000}.inspection-network-profile{margin-top:14px;padding:14px;border-radius:14px;background:#edf5ff;border:1px solid #b8d5f1}.inspection-network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.inspection-network-grid span{background:#fff;border:1px solid #cfdeeb;border-radius:9px;padding:9px;font-size:.84rem}.inspection-cabling-note{margin-top:14px;padding:13px;border-radius:14px;background:#fff8e9;border:1px solid #e8c984}.inspection-cabling-note p{margin:6px 0 0;line-height:1.45}.inspection-smart-warnings{margin-top:12px;padding:12px 14px;border-radius:12px;background:#fff1f1;border:1px solid #f0b4b4;color:#8f2323}.inspection-smart-warnings ul{margin:8px 0 0;padding-left:20px}.inspection-smart-preview{margin-top:12px;padding:12px;border-radius:12px;background:#fff;border:1px solid #cfe5d7;line-height:1.5}.photo-requirements{display:flex;flex-direction:column;gap:5px;margin:8px 0;padding:9px;border-radius:9px;background:#eef8ff;border:1px solid #c8dff0;font-size:.75rem;line-height:1.35}.photo-requirements strong{color:#164f72}.photo-requirements span{display:block}@media(max-width:700px){.inspection-network-grid{grid-template-columns:1fr}.inspection-smart-title{flex-direction:column}}

/* V68.4 · Flujo guiado de Inspección */
.inspection-guided-flow{margin:14px 0 18px;padding:15px;border-radius:16px;background:#111820;color:#fff}
.inspection-guided-flow>strong{font-size:1.05rem}
.inspection-guided-flow p{margin:9px 0 0;color:#d5dde5;line-height:1.45}
.inspection-step-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.inspection-step-pills span{padding:6px 9px;border-radius:999px;background:#24303d;border:1px solid #3c4c5d;font-size:.72rem;font-weight:900}
.inspection-guided-step{border-left:4px solid #24a65a;padding-left:14px}
.inspection-network-smart{margin-top:12px}
.inspection-network-profile.ipower-profile{background:#f3f0ff;border-color:#cfc3f1}
.inspection-dynamic-addressing{margin:10px 0;padding:10px;border-radius:10px;background:#fff;border:1px solid #cbdbe7;line-height:1.45;font-weight:700}
.inspection-generate-block{margin:16px 0 4px;padding:15px;border:2px dashed #28a65c;border-radius:16px;background:#f5fff8}
.inspection-generate-block strong{display:block;margin-bottom:4px}
.inspection-equipment-connection-wrap{margin-top:10px}
.inspection-equipment-connection-wrap select{width:100%}
.inspection-connection-hint{display:block;margin-top:5px;color:#65717c;line-height:1.35}
.inspection-auto-dependency{margin-top:8px;padding:7px 9px;border-radius:9px;background:#fff3d7;border:1px solid #e7c268;color:#72500a;font-size:.75rem;font-weight:900}
@media(max-width:700px){.inspection-step-pills{display:grid;grid-template-columns:1fr 1fr}.inspection-guided-flow{padding:13px}}
\n/* V68.5 · Flujo foto primero */
.inspection-profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.inspection-profile-card{border:2px solid #d9dee5;background:#fff;border-radius:15px;padding:14px;min-height:106px;text-align:left;cursor:pointer;transition:.15s ease}
.inspection-profile-card:hover,.inspection-profile-card.active{border-color:#ff7623;box-shadow:0 0 0 3px rgba(255,118,35,.10)}
.inspection-profile-card strong{display:block;font-size:1rem;margin-bottom:5px}.inspection-profile-card span{display:block;color:#69717a;font-size:.78rem;line-height:1.35}
.icon-equipment-auto-note{margin:8px 0 12px;padding:10px 12px;border-radius:11px;background:#eff9f2;border:1px solid #badfc6;color:#235c35;font-size:.82rem;font-weight:750}
.service-final-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.service-final-actions .btn{min-height:44px}
@media(max-width:760px){.inspection-profile-grid{grid-template-columns:1fr 1fr}.service-final-actions .btn{flex:1 1 calc(50% - 8px)}}
@media(max-width:440px){.inspection-profile-grid{grid-template-columns:1fr}.service-final-actions .btn{flex:1 1 100%}}


/* V68.6 · Barra final compacta + acciones seguras */
.service-final-actions{
  display:grid!important;
  grid-template-columns:auto auto auto minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
}
.service-final-actions>.service-final-toolbar{
  grid-column:1/-1;
  display:grid!important;
  grid-template-columns:46px 46px minmax(118px,.9fr) minmax(105px,1fr);
  gap:7px;
  align-items:center;
  width:100%;
}
.service-final-actions>.service-final-toolbar .btn{
  margin:0!important;
  min-width:0;
  min-height:46px;
  height:46px;
  padding:0 9px;
  border-radius:12px;
  font-size:.78rem;
  white-space:nowrap;
}
.service-final-actions .service-icon-action{
  width:46px;
  padding:0!important;
  font-size:1.22rem!important;
  line-height:1;
}
.service-final-actions .service-icon-action.is-busy{font-size:1rem!important}
.service-final-actions .service-preview-action{gap:5px}
.service-final-actions .service-finalize-action{font-weight:1000}
@media(max-width:600px){
  .service-final-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .service-final-actions>.service-final-toolbar{
    display:grid!important;
    grid-template-columns:44px 44px minmax(106px,1fr) minmax(92px,.9fr)!important;
    gap:6px;
  }
  .service-final-actions>.service-final-toolbar .btn{
    min-height:44px;
    height:44px;
    padding:0 7px;
    font-size:.69rem;
  }
  .service-final-actions .service-icon-action{
    width:44px;
    font-size:1.14rem!important;
  }
}
@media(max-width:360px){
  .service-final-actions>.service-final-toolbar{
    grid-template-columns:42px 42px minmax(92px,1fr) minmax(82px,.85fr)!important;
    gap:5px;
  }
  .service-final-actions>.service-final-toolbar .btn{font-size:.63rem;padding:0 5px}
  .service-final-actions .service-preview-action span{font-size:.62rem}
}


/* V68.7 · Barra final única naranja */
.service-final-actions{
  background:transparent!important;
  color:inherit!important;
  padding:0!important;
  border-radius:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  position:sticky;
  bottom:6px;
}
.service-final-actions>.service-final-toolbar.service-orange-toolbar{
  grid-column:1/-1;
  width:100%;
  display:grid!important;
  grid-template-columns:48px 48px 48px minmax(120px,1fr)!important;
  gap:7px!important;
  align-items:center;
  background:#ff681f!important;
  border-radius:18px;
  padding:8px!important;
  box-shadow:0 8px 24px rgba(0,0,0,.22);
}
.service-orange-toolbar button{
  border:0;
  min-height:48px;
  height:48px;
  border-radius:12px;
  cursor:pointer;
  font-weight:1000;
}
.service-orange-icon{
  width:48px;
  padding:0;
  background:rgba(255,255,255,.18);
  color:#fff;
  border:1px solid rgba(255,255,255,.48)!important;
  font-size:1.25rem;
  display:grid;
  place-items:center;
}
.service-orange-icon:active{background:rgba(255,255,255,.30)}
.service-orange-icon:disabled{opacity:.55}
.service-orange-finalize{
  background:#fff;
  color:#cb4708;
  padding:0 15px;
  font-size:.9rem;
  letter-spacing:.01em;
}
body.ui-left .service-summary-bar .btn{margin:0}
@media(max-width:600px){
  .service-final-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .service-final-actions>.service-final-toolbar.service-orange-toolbar{
    grid-template-columns:45px 45px 45px minmax(105px,1fr)!important;
    gap:6px!important;
    padding:7px!important;
  }
  .service-orange-toolbar button{height:45px;min-height:45px}
  .service-orange-icon{width:45px;font-size:1.15rem}
  .service-orange-finalize{font-size:.78rem;padding:0 8px}
}
@media(max-width:360px){
  .service-final-actions>.service-final-toolbar.service-orange-toolbar{
    grid-template-columns:42px 42px 42px minmax(92px,1fr)!important;
    gap:5px!important;
  }
  .service-orange-toolbar button{height:42px;min-height:42px}
  .service-orange-icon{width:42px;font-size:1.08rem}
  .service-orange-finalize{font-size:.72rem}
}


/* =========================================================
   V68.9 · Editor de fotografía aprobado
   ========================================================= */
.photo-editor.photo-editor-v689{
  background:#f3f4f6!important;
  color:#17191c!important;
  overflow:hidden!important;
}
.photo-editor-v689 .photo-editor-inner{
  width:min(100%,980px)!important;
  height:100%!important;
  max-height:100%!important;
  margin:0 auto!important;
  padding:0!important;
  background:#f7f8fa!important;
  color:#17191c!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.photo-editor-v689 .photo-editor-head-clean{
  flex:0 0 auto!important;
  position:relative!important;
  top:auto!important;
  min-height:54px!important;
  height:54px!important;
  padding:max(6px,env(safe-area-inset-top)) 10px 6px!important;
  display:grid!important;
  grid-template-columns:minmax(76px,1fr) auto minmax(110px,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  background:rgba(255,255,255,.96)!important;
  color:#15171a!important;
  border-bottom:1px solid #e2e5e9!important;
  box-shadow:0 1px 8px rgba(0,0,0,.05)!important;
  z-index:20!important;
}
.photo-editor-v689 .photo-editor-head-clean>strong{
  font-size:.96rem!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.photo-editor-v689 .photo-head-back,
.photo-editor-v689 .photo-head-close,
.photo-editor-v689 .photo-head-icon{
  border:0!important;
  background:transparent!important;
  color:#17191c!important;
  min-height:38px!important;
  height:38px!important;
  border-radius:10px!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.photo-editor-v689 .photo-head-back{
  justify-self:start!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:2px!important;
  padding:0 7px 0 2px!important;
  font-size:.8rem!important;
}
.photo-editor-v689 .photo-head-back:first-letter{font-size:1.55rem}
.photo-editor-v689 .photo-head-actions-clean{
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
}
.photo-editor-v689 .photo-head-icon{
  width:34px!important;
  min-width:34px!important;
  padding:0!important;
  font-size:1.15rem!important;
}
.photo-editor-v689 .photo-head-close{
  width:36px!important;
  min-width:36px!important;
  padding:0!important;
  font-size:1.6rem!important;
}

.photo-editor-v689 .photo-editor-workspace{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  padding:8px 10px 10px!important;
  background:#f3f4f6!important;
}
.photo-editor-v689 .photo-toolbar-clean{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:6px!important;
  padding:0 0 7px!important;
  overflow:visible!important;
}
.photo-editor-v689 .photo-toolbar-clean .photo-mode{
  min-width:0!important;
  width:100%!important;
  min-height:45px!important;
  padding:5px 3px!important;
  border:1px solid #d9dde2!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#30343a!important;
  box-shadow:0 1px 2px rgba(0,0,0,.04)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  font-size:1rem!important;
}
.photo-editor-v689 .photo-toolbar-clean .photo-mode small{
  display:block!important;
  font-size:.58rem!important;
  line-height:1!important;
  font-weight:850!important;
  color:#555b63!important;
}
.photo-editor-v689 .photo-toolbar-clean .photo-mode.active{
  background:#fff3ec!important;
  color:#e6540b!important;
  border-color:#ff9c68!important;
  box-shadow:inset 0 0 0 1px #ff9c68!important;
}
.photo-editor-v689 .photo-context-panel{
  min-height:44px!important;
  margin-bottom:7px!important;
  padding:6px 8px!important;
  border:1px solid #e0e3e7!important;
  border-radius:12px!important;
  background:#fff!important;
}
.photo-editor-v689 .photo-color-row{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  padding:0!important;
}
.photo-editor-v689 .photo-color-row>strong{
  flex:0 0 auto!important;
  font-size:.68rem!important;
  color:#555b63!important;
}
.photo-editor-v689 .photo-color-presets{
  display:flex!important;
  gap:5px!important;
  flex:0 0 auto!important;
}
.photo-editor-v689 .photo-color-swatch{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  border:2px solid #fff!important;
  box-shadow:0 0 0 1px #c7cbd0!important;
}
.photo-editor-v689 .photo-color-swatch.active{
  box-shadow:0 0 0 2px #ff681f!important;
}
.photo-editor-v689 .photo-line-width-label{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin-left:auto!important;
  font-size:.62rem!important;
  color:#5d6269!important;
  flex:0 0 auto!important;
}
.photo-editor-v689 .photo-line-width-label select{
  min-width:74px!important;
  padding:5px 7px!important;
  min-height:32px!important;
  margin:0!important;
  border:1px solid #d7dbe0!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#262a30!important;
}
.photo-editor-v689 .photo-text-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:6px!important;
  align-items:center!important;
  padding:0!important;
}
.photo-editor-v689 .photo-text-row[hidden]{display:none!important}
.photo-editor-v689 .photo-text-row input[type="text"],
.photo-editor-v689 #photoTextInput{
  margin:0!important;
  min-height:38px!important;
  border:1px solid #d7dbe0!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#111!important;
}
.photo-editor-v689 .photo-text-color-label{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  font-size:.62rem!important;
}
.photo-editor-v689 #photoTextColor{
  width:34px!important;
  height:34px!important;
  padding:0!important;
  margin:0!important;
}

.photo-editor-v689 .photo-canvas-clean{
  width:100%!important;
  height:min(58vh,640px)!important;
  min-height:300px!important;
  margin:0!important;
  padding:8px!important;
  border:1px solid #d9dde2!important;
  border-radius:14px!important;
  background:#e9ebee!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:auto!important;
}
.photo-editor-v689 .photo-canvas-clean canvas{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:auto!important;
  background:#fff!important;
  border-radius:8px!important;
  box-shadow:0 3px 14px rgba(0,0,0,.10)!important;
}
.photo-editor-v689 .photo-selection-card{
  margin:7px 0 0!important;
  padding:7px 8px!important;
  background:#fff!important;
  color:#24282d!important;
  border:1px solid #dfe2e6!important;
  border-radius:10px!important;
  box-shadow:0 1px 3px rgba(0,0,0,.04)!important;
}
.photo-editor-v689 .photo-selection-card span{
  color:#444b52!important;
}
.photo-editor-v689 .icon-tray-status{
  color:#47505a!important;
  background:#fff!important;
  border:1px solid #dfe2e6!important;
  border-radius:9px!important;
  padding:6px 8px!important;
  margin-bottom:6px!important;
}

.photo-editor-v689 .photo-bottom-sheet{
  flex:0 0 auto!important;
  background:rgba(255,255,255,.98)!important;
  border-top:1px solid #dde1e5!important;
  padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;
  box-shadow:0 -5px 18px rgba(0,0,0,.08)!important;
  z-index:30!important;
}
.photo-editor-v689 .photo-meta-clean{
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr)!important;
  gap:8px!important;
  margin:0 0 8px!important;
}
.photo-editor-v689 .photo-meta-clean label{
  margin:0!important;
  font-size:.62rem!important;
  font-weight:850!important;
  color:#5a6068!important;
}
.photo-editor-v689 .photo-meta-clean select,
.photo-editor-v689 .photo-meta-clean input{
  width:100%!important;
  min-height:38px!important;
  margin:3px 0 0!important;
  padding:7px 9px!important;
  border:1px solid #d2d6db!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#15171a!important;
  font-size:16px!important;
}
.photo-editor-v689 .photo-actions-clean{
  display:grid!important;
  grid-template-columns:.72fr 1fr 1.25fr!important;
  gap:7px!important;
}
.photo-editor-v689 .photo-actions-clean button{
  min-height:42px!important;
  height:42px!important;
  border-radius:10px!important;
  border:1px solid #d4d8dd!important;
  padding:0 8px!important;
  font-size:.72rem!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.photo-editor-v689 .photo-action-delete{
  background:#fff!important;
  color:#d43a32!important;
}
.photo-editor-v689 .photo-action-save{
  background:#eef0f3!important;
  color:#282c31!important;
}
.photo-editor-v689 .photo-action-primary{
  background:#ff681f!important;
  color:#fff!important;
  border-color:#ff681f!important;
}
.photo-editor-v689 .photo-actions-clean button:disabled{
  opacity:.55!important;
}

/* =========================================================
   V68.9 · Barra naranja final realmente horizontal y mínima
   ========================================================= */
.service-summary-bar.service-final-actions{
  position:sticky!important;
  bottom:5px!important;
  z-index:50!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:0!important;
  padding:0!important;
  margin-top:10px!important;
  background:transparent!important;
  border-radius:0!important;
}
.service-summary-bar.service-final-actions>div:not(.service-final-toolbar){
  display:none!important;
}
.service-summary-bar.service-final-actions>.service-final-toolbar.service-orange-toolbar{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  padding:5px!important;
  margin:0!important;
  background:#ff681f!important;
  border-radius:13px!important;
  box-shadow:0 5px 16px rgba(0,0,0,.20)!important;
}
.service-summary-bar .service-orange-toolbar .service-orange-icon{
  flex:0 0 40px!important;
  width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.46)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:1rem!important;
}
.service-summary-bar .service-orange-toolbar .service-orange-finalize{
  flex:1 1 auto!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#d94c08!important;
  font-size:.78rem!important;
  font-weight:1000!important;
  white-space:nowrap!important;
}
@media(max-width:600px){
  .photo-editor-v689 .photo-editor-head-clean{
    min-height:50px!important;
    height:50px!important;
    padding:max(4px,env(safe-area-inset-top)) 7px 4px!important;
    grid-template-columns:82px auto 105px!important;
  }
  .photo-editor-v689 .photo-head-back span{font-size:.68rem!important}
  .photo-editor-v689 .photo-editor-workspace{padding:6px!important}
  .photo-editor-v689 .photo-toolbar-clean{gap:4px!important;padding-bottom:5px!important}
  .photo-editor-v689 .photo-toolbar-clean .photo-mode{
    min-height:40px!important;
    border-radius:9px!important;
    padding:4px 2px!important;
  }
  .photo-editor-v689 .photo-toolbar-clean .photo-mode small{font-size:.52rem!important}
  .photo-editor-v689 .photo-context-panel{padding:5px!important;margin-bottom:5px!important}
  .photo-editor-v689 .photo-canvas-clean{
    height:min(54vh,560px)!important;
    min-height:270px!important;
    padding:5px!important;
    border-radius:11px!important;
  }
  .photo-editor-v689 .photo-bottom-sheet{
    padding:6px 7px calc(6px + env(safe-area-inset-bottom))!important;
  }
  .photo-editor-v689 .photo-meta-clean{
    grid-template-columns:118px minmax(0,1fr)!important;
    gap:6px!important;
    margin-bottom:6px!important;
  }
  .photo-editor-v689 .photo-actions-clean{gap:5px!important}
  .photo-editor-v689 .photo-actions-clean button{
    min-height:40px!important;height:40px!important;
    padding:0 5px!important;font-size:.64rem!important;
  }

  .service-summary-bar.service-final-actions>.service-final-toolbar.service-orange-toolbar{
    height:46px!important;
    min-height:46px!important;
    padding:4px!important;
    border-radius:11px!important;
  }
  .service-summary-bar .service-orange-toolbar .service-orange-icon{
    flex-basis:38px!important;width:38px!important;height:38px!important;min-height:38px!important;
  }
  .service-summary-bar .service-orange-toolbar .service-orange-finalize{
    height:38px!important;min-height:38px!important;font-size:.72rem!important;
  }
}


/* =========================================================
   V69.0 · Instalación guiada simple
   ========================================================= */
.installation-flow-section{
  border:1px solid #e6e8eb!important;
  background:#f8f9fa!important;
  border-radius:20px!important;
  padding:16px!important;
}
.installation-flow-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:start;
  margin-bottom:14px;
}
.installation-flow-kicker{
  display:inline-block;
  margin-bottom:4px;
  font-size:.68rem;
  letter-spacing:.08em;
  font-weight:1000;
  color:#d64343;
}
.installation-flow-head h2{margin:0 0 5px;font-size:1.25rem}
.installation-flow-head p{margin:0;color:#687079;line-height:1.45}
.installation-flow-progress{
  display:flex;
  gap:5px;
  background:#fff;
  border:1px solid #e1e4e8;
  border-radius:999px;
  padding:4px;
  white-space:nowrap;
}
.installation-flow-progress span{
  display:flex;
  align-items:center;
  gap:4px;
  padding:6px 8px;
  border-radius:999px;
  font-size:.68rem;
  font-weight:850;
  color:#7a8188;
}
.installation-flow-progress span b{
  display:grid;place-items:center;
  width:20px;height:20px;border-radius:50%;
  background:#eef0f2;color:#737980;font-size:.62rem;
}
.installation-flow-progress span.active{background:#fff1f1;color:#b42d2d}
.installation-flow-progress span.active b{background:#d93636;color:#fff}

.installation-step-card{
  background:#fff;
  border:1px solid #e1e4e8;
  border-radius:16px;
  padding:14px;
  margin-top:10px;
  box-shadow:0 1px 4px rgba(0,0,0,.035);
}
.installation-step-card[hidden]{display:none!important}
.installation-step-title{
  display:flex;gap:10px;align-items:center;margin-bottom:12px;
}
.installation-step-title>span{
  flex:0 0 30px;width:30px;height:30px;border-radius:10px;
  display:grid;place-items:center;background:#d93636;color:#fff;font-weight:1000;
}
.installation-step-title>div{display:flex;flex-direction:column;gap:2px}
.installation-step-title strong{font-size:.98rem}
.installation-step-title small{font-size:.71rem;color:#717881;line-height:1.35}

.installation-ready-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.installation-ready-card{
  position:relative;
  min-height:92px;
  border:2px solid #e2e5e8;
  border-radius:15px;
  padding:12px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:10px;
  align-items:center;
  cursor:pointer;
  background:#fff;
}
.installation-ready-card input{
  position:absolute;opacity:0;pointer-events:none;
}
.installation-ready-card .installation-ready-icon{
  grid-row:1/3;
  width:38px;height:38px;border-radius:12px;
  display:grid;place-items:center;
  font-weight:1000;font-size:1.05rem;
  background:#f0f2f4;color:#646b72;
}
.installation-ready-card strong{font-size:.88rem}
.installation-ready-card small{font-size:.68rem;color:#70777e}
.installation-ready-card.yes:has(input:checked){border-color:#64b985;background:#f4fcf7}
.installation-ready-card.yes:has(input:checked) .installation-ready-icon{background:#178d4d;color:#fff}
.installation-ready-card.no:has(input:checked){border-color:#e06161;background:#fff5f5}
.installation-ready-card.no:has(input:checked) .installation-ready-icon{background:#d93636;color:#fff}

.installation-stop-panel,.installation-pending-panel{
  margin-top:12px;
  padding:12px;
  border-radius:14px;
  border:1px solid #f0c3c3;
  background:#fff8f8;
}
.installation-stop-panel[hidden],.installation-pending-panel[hidden]{display:none!important}
.installation-stop-alert{
  display:flex;flex-direction:column;gap:2px;
  padding:10px 12px;margin-bottom:12px;
  border-radius:11px;background:#d93636;color:#fff;
}
.installation-stop-alert strong{font-size:.86rem}
.installation-stop-alert span{font-size:.7rem;opacity:.94}
.installation-stop-panel h3,.installation-pending-panel h3{margin:4px 0 9px;font-size:.88rem}
.installation-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin:8px 0 10px;
}
.installation-choice-check{
  display:flex;align-items:flex-start;gap:7px;
  padding:9px 10px;border:1px solid #dfe3e7;border-radius:11px;
  background:#fff;font-size:.74rem;line-height:1.3;cursor:pointer;
}
.installation-choice-check input{margin-top:1px;accent-color:#d93636}
.installation-choice-check:has(input:checked){border-color:#e08181;background:#fff3f3;color:#8e2424}

.installation-sales-note{
  margin:10px 0 0;padding:10px 12px;border-radius:10px;
  background:#fff4df;border:1px solid #e8c682;
  color:#684912;font-size:.74rem;line-height:1.4;
}
.installation-evidence-guide{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  padding:10px 12px;border:1px solid #dce5ec;border-radius:12px;background:#f7fbff;
}
.installation-evidence-guide>div{display:flex;flex-direction:column;gap:2px}
.installation-evidence-guide b{font-size:.78rem}
.installation-evidence-guide span{font-size:.67rem;color:#68727c;line-height:1.35}
.installation-evidence-guide>strong{
  flex:0 0 auto;
  padding:6px 9px;border-radius:999px;background:#e8f3fb;color:#2e6386;font-size:.68rem
}
.installation-evidence-actions{display:flex;gap:7px;margin-top:9px;flex-wrap:wrap}
.installation-evidence-actions .btn{min-height:42px!important;padding:0 12px!important;font-size:.73rem!important}

.installation-tests-simple{
  margin-top:13px;padding-top:12px;border-top:1px solid #eceef0;
}
.installation-tests-simple>strong{font-size:.82rem}
.installation-result-options{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px
}
.installation-result-card{
  position:relative;
  min-height:76px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  border:2px solid #e0e3e6;border-radius:14px;background:#fff;cursor:pointer;
  text-align:center;
}
.installation-result-card input{position:absolute;opacity:0;pointer-events:none}
.installation-result-card span{
  width:30px;height:30px;border-radius:10px;display:grid;place-items:center;
  background:#eff1f3;color:#636a72;font-weight:1000
}
.installation-result-card strong{font-size:.76rem}
.installation-result-card:has(input:checked){border-color:#d93636;background:#fff5f5}
.installation-result-card:has(input:checked) span{background:#d93636;color:#fff}
.installation-result-card.completada:has(input:checked){border-color:#4faa74;background:#f4fbf7}
.installation-result-card.completada:has(input:checked) span{background:#178d4d}

#installationInternetSlot .internet-question{
  margin-top:12px!important;
  padding:11px!important;
  border:1px solid #dfe3e7!important;
  border-radius:12px!important;
  background:#fafbfc!important;
}
#installationInternetSlot .internet-question h3{margin:0 0 4px;font-size:.84rem}
#installationInternetSlot .internet-question .muted{font-size:.68rem;margin:0 0 8px}
#installationInternetSlot .internet-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}
#installationInternetSlot .service-check{margin:0!important;padding:9px!important;font-size:.72rem!important}

#descriptionSection #installationSummaryHint{max-width:680px}
#descriptionSection #refreshInstallationSummary{min-height:38px!important;padding:0 10px!important;font-size:.7rem!important}
#descriptionSection textarea{min-height:132px}

@media(max-width:700px){
  .installation-flow-section{padding:10px!important;border-radius:15px!important}
  .installation-flow-head{grid-template-columns:1fr;gap:8px}
  .installation-flow-progress{width:100%;justify-content:space-between}
  .installation-flow-progress span{flex:1;justify-content:center;padding:5px 4px;font-size:.59rem}
  .installation-ready-options{grid-template-columns:1fr 1fr;gap:6px}
  .installation-ready-card{min-height:82px;padding:9px;grid-template-columns:32px minmax(0,1fr);column-gap:7px}
  .installation-ready-card .installation-ready-icon{width:32px;height:32px;border-radius:9px}
  .installation-ready-card strong{font-size:.75rem}
  .installation-ready-card small{font-size:.6rem}
  .installation-step-card{padding:10px;border-radius:13px}
  .installation-choice-grid{grid-template-columns:1fr;gap:5px}
  .installation-choice-check{padding:8px;font-size:.69rem}
  .installation-result-options{gap:5px}
  .installation-result-card{min-height:68px;border-radius:11px}
  .installation-result-card strong{font-size:.65rem}
  .installation-evidence-guide{align-items:flex-start;padding:9px}
  .installation-evidence-guide>strong{font-size:.61rem}
  #installationInternetSlot .internet-options{grid-template-columns:1fr}
}

/* Instalación: materiales al final y con menos peso visual */
body:has(#primary_activity option:checked[value="Instalación"]) #materialsSection{
  border-style:dashed;
}

/* =========================================================
   V69.0 · Corrección final del editor de fotos en iPhone
   - Volver no invade Dibujar
   - interfaz clara aprobada
   ========================================================= */
.photo-editor.photo-editor-v689{
  background:#eef1f4!important;
}
.photo-editor-v689 .photo-editor-inner{
  background:#f5f7f9!important;
  color:#17191c!important;
}
.photo-editor-v689 .photo-editor-head-clean{
  box-sizing:border-box!important;
  height:calc(52px + env(safe-area-inset-top))!important;
  min-height:calc(52px + env(safe-area-inset-top))!important;
  padding:env(safe-area-inset-top) 8px 0!important;
  grid-template-columns:92px minmax(0,1fr) 104px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.photo-editor-v689 .photo-head-back{
  box-sizing:border-box!important;
  width:92px!important;
  min-width:92px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 4px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  font-size:.76rem!important;
}
.photo-editor-v689 .photo-head-back::first-letter{font-size:1.15rem!important}
.photo-editor-v689 .photo-head-back span{
  display:inline-block!important;
  white-space:nowrap!important;
  font-size:.76rem!important;
  line-height:1!important;
}
.photo-editor-v689 .photo-editor-head-clean>strong{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:.88rem!important;
}
.photo-editor-v689 .photo-head-actions-clean{
  height:42px!important;
  overflow:hidden!important;
}
.photo-editor-v689 .photo-editor-workspace{
  background:#f3f5f7!important;
  padding-top:7px!important;
}
.photo-editor-v689 .photo-toolbar-clean{
  position:relative!important;
  z-index:2!important;
  margin:0!important;
}
.photo-editor-v689 .photo-context-panel,
.photo-editor-v689 .photo-color-row,
.photo-editor-v689 .photo-text-row{
  background:#fff!important;
  color:#22272d!important;
  border-color:#dce1e6!important;
}
.photo-editor-v689 .photo-color-row{
  border:0!important;
  border-radius:0!important;
}
.photo-editor-v689 .photo-color-row>strong,
.photo-editor-v689 .photo-line-width-label,
.photo-editor-v689 .photo-text-color-label{
  color:#555d66!important;
}
.photo-editor-v689 .photo-canvas-clean{
  background:#e8ebee!important;
}
.photo-editor-v689 .photo-bottom-sheet{
  background:#fff!important;
  color:#1b1f24!important;
}
@media(max-width:600px){
  .photo-editor-v689 .photo-editor-head-clean{
    height:calc(48px + env(safe-area-inset-top))!important;
    min-height:calc(48px + env(safe-area-inset-top))!important;
    grid-template-columns:88px minmax(0,1fr) 100px!important;
    padding:env(safe-area-inset-top) 6px 0!important;
  }
  .photo-editor-v689 .photo-head-back{
    width:88px!important;
    min-width:88px!important;
    height:40px!important;
    min-height:40px!important;
  }
  .photo-editor-v689 .photo-head-actions-clean{height:40px!important}
  .photo-editor-v689 .photo-toolbar-clean{margin-top:0!important}
}


/* =========================================================
   V69.1 · Instalación - corrección de pruebas en móvil
   ========================================================= */
.installation-choice-check{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:10px!important;
  overflow:hidden!important;
}
.installation-choice-check input[type="checkbox"]{
  -webkit-appearance:checkbox!important;
  appearance:auto!important;
  flex:0 0 22px!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  padding:0!important;
  margin:0!important;
  border-radius:5px!important;
}
.installation-choice-check>span{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  max-width:100%!important;
  margin:1px 0 0!important;
  padding:0!important;
  position:static!important;
  transform:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.32!important;
}
@media(max-width:700px){
  .installation-choice-check{
    min-height:48px!important;
    padding:10px!important;
    font-size:.72rem!important;
  }
  .installation-tests-simple{
    padding-bottom:72px!important;
  }
  #installationExecutionStep{
    padding-bottom:18px!important;
  }
  .service-summary-bar.service-final-actions{
    bottom:max(5px,env(safe-area-inset-bottom))!important;
  }
}


/* V69.2 · Administración de correos de salida */
.mail-account-box{margin-top:12px;padding:14px;border:1px solid #d9dde2;border-radius:14px;background:#fafbfc}.mail-account-box h3{margin:0 0 4px}.mail-toggle{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;width:auto!important;font-weight:900!important}.mail-toggle input[type="checkbox"]{width:20px!important;min-width:20px!important;height:20px!important;margin:0!important}.mail-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 14px}.mail-route-grid label,.mail-account-box label{min-width:0}.mail-test-form{margin-top:12px;display:flex;align-items:end;gap:10px;flex-wrap:wrap}.mail-test-form label{min-width:min(300px,100%)}@media(max-width:700px){.mail-route-grid{grid-template-columns:1fr}.mail-test-form{display:grid;grid-template-columns:1fr}}

/* =====================================================
   V73.27 · Equipos de inspección compactos tipo checklist
   ===================================================== */
.inspection-equipment-list{gap:7px!important}
.inspection-equipment-card.inspection-equipment-compact{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) 76px 76px 92px 34px 32px!important;
  align-items:center!important;
  gap:7px!important;
  padding:8px 9px!important;
  border:1px solid #dfe4e8!important;
  border-radius:14px!important;
  box-shadow:0 1px 4px rgba(20,30,40,.05)!important;
  background:#fff!important;
  min-height:64px;
}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity{
  min-width:0;padding-right:0!important;display:grid;grid-template-columns:42px minmax(0,1fr) 28px;gap:8px;align-items:center
}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity img{
  width:42px!important;height:42px!important;flex:0 0 42px!important;padding:4px!important;border-radius:10px!important
}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-name{font-size:.8rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity span{font-size:.58rem!important;margin-top:2px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inspection-model-edit,.inspection-details-toggle{
  width:30px;height:30px;border:0;border-radius:9px;background:#f2f6fb;color:#25384b;font-size:.9rem;font-weight:900;display:grid;place-items:center;cursor:pointer;padding:0
}
.inspection-model-edit{font-size:.8rem}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty{
  display:contents!important;min-width:0!important
}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label{
  display:grid;gap:2px;margin:0!important;font-size:.53rem!important;color:#69727b!important;text-align:center;font-weight:850!important
}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label:first-child:before{content:'Existente';display:block}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label:nth-child(2):before{content:'Requerido';display:block}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label{font-size:0!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty input{
  height:38px!important;margin:0!important;padding:4px!important;border-radius:10px!important;font-size:.88rem!important;text-align:center;font-weight:900!important;background:#fff!important
}
.inspection-equipment-card.inspection-equipment-compact .inspection-required-toggle{min-width:0!important;margin:0!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-required-toggle>span{display:none!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-required-toggle>div{display:flex!important;gap:3px!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-required-btn{padding:6px 5px!important;min-width:34px;font-size:.57rem!important}
.inspection-status-badge{
  display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:999px;padding:5px 8px;font-size:.62rem;font-weight:900;white-space:nowrap
}
.inspection-status-badge[data-state="ok"]{background:#e5f8eb;color:#08783b}
.inspection-status-badge[data-state="missing"]{background:#ffe9e8;color:#c42626}
.inspection-status-badge[data-state="neutral"]{background:#eef1f4;color:#6d7680}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-delete{
  position:static!important;width:30px!important;height:30px!important;border-radius:9px!important;font-size:.95rem!important;background:#fff0ef!important
}
.inspection-equipment-details{
  grid-column:1/-1;display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px 4px 2px;border-top:1px solid #edf0f2
}
.inspection-equipment-card.details-open .inspection-equipment-details{display:grid}
.inspection-equipment-details>label,.inspection-equipment-details>.inspection-auto-dependency{grid-column:auto!important;font-size:.62rem!important;margin:0!important}
.inspection-equipment-details input,.inspection-equipment-details select{margin-top:3px!important;min-height:38px!important;padding:7px 9px!important;font-size:.7rem!important}
.inspection-profile-optional-actions{margin:7px 0 2px;display:flex;justify-content:flex-start}
.inspection-profile-optional-actions .mini-btn{background:#f2f4f6;border:1px solid #d8dde2;color:#4d5964}
.exit-draft-panel{max-width:520px}
.exit-draft-panel label{margin-top:12px}

@media(max-width:720px){
  .inspection-equipment-card.inspection-equipment-compact{
    grid-template-columns:minmax(130px,1fr) 58px 58px 72px 30px 28px!important;
    gap:4px!important;padding:7px!important;min-height:58px
  }
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity{grid-template-columns:36px minmax(0,1fr) 25px;gap:6px}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity img{width:36px!important;height:36px!important;flex-basis:36px!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-name{font-size:.68rem!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity span{display:none!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label:before{font-size:.44rem!important;line-height:1!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty input{height:34px!important;font-size:.75rem!important}
  .inspection-status-badge{min-height:32px;padding:4px 5px;font-size:.52rem}
  .inspection-model-edit,.inspection-details-toggle,.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-delete{width:27px!important;height:27px!important}
  .inspection-equipment-details{grid-template-columns:1fr!important}
}
@media(max-width:430px){
  .inspection-equipment-card.inspection-equipment-compact{
    grid-template-columns:minmax(108px,1fr) 48px 48px 62px 26px 25px!important;
    gap:3px!important
  }
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity{grid-template-columns:30px minmax(0,1fr) 22px}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity img{width:30px!important;height:30px!important;flex-basis:30px!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-name{font-size:.61rem!important}
  .inspection-status-badge{font-size:.47rem;padding:3px 4px}
}
.inspection-equipment-card.inspection-equipment-compact .inspection-required-toggle{grid-column:2/4}

/* =====================================================
   V73.28 · Selector de equipos simplificado + botones grandes
   ===================================================== */
/* Tipo principal: botones grandes y fáciles de tocar */
.primary-type-server-card{margin-top:12px}
.primary-type-server-title{font-size:1rem;font-weight:850;margin:0 0 10px}
.primary-type-server-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.primary-type-server-button{
  min-height:58px!important;
  padding:12px 14px!important;
  border:2px solid #d8dee5!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#18212b!important;
  font-size:.92rem!important;
  font-weight:850!important;
  line-height:1.2!important;
  text-align:left!important;
  cursor:pointer!important;
  box-shadow:0 1px 2px rgba(20,30,40,.03)!important;
}
.primary-type-server-button.selected{
  border-color:#ff7417!important;
  background:#fff7f1!important;
  color:#b94700!important;
  box-shadow:0 0 0 2px rgba(255,116,23,.10)!important;
}
.primary-type-server-button:active{transform:scale(.99)}
@media(max-width:560px){
  .primary-type-server-grid{grid-template-columns:1fr!important;gap:8px!important}
  .primary-type-server-button{min-height:54px!important;font-size:.9rem!important;padding:11px 13px!important}
}

/* Campos secundarios: hidden debe respetarse siempre */
.inspection-equipment-custom-wrap[hidden],
.inspection-equipment-note-wrap[hidden],
.inspection-equipment-connection-wrap[hidden],
.inspection-picker-group[hidden],
.inspection-catalog-row-v7328[hidden]{display:none!important}

/* Selector de equipos aprobado: sin iconos, checklist compacto */
.inspection-picker-panel.inspection-picker-v7328{
  width:min(1000px,96vw)!important;
  max-height:94vh!important;
  padding:18px 20px 0!important;
  overflow:auto!important;
  border-radius:22px!important;
  background:#fff!important;
}
.inspection-picker-head-v7328{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.inspection-picker-back-v7328{min-height:44px!important;padding:9px 14px!important;border-radius:12px!important;font-weight:850!important}
.inspection-picker-title-row-v7328{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.inspection-picker-title-row-v7328 h2{font-size:1.7rem!important;line-height:1.08;margin:0 0 4px!important}
.inspection-picker-title-row-v7328 .muted{margin:0;font-size:.83rem}
.inspection-picker-count-chip{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding:9px 12px;border-radius:12px;
  background:#f3f5f7;color:#2d3540;font-size:.75rem;font-weight:750;white-space:nowrap
}
.inspection-picker-search-v7328{
  display:grid!important;grid-template-columns:26px 1fr;align-items:center;gap:6px;
  border:1px solid #d7dde4;border-radius:12px;padding:0 12px;background:#fff;margin:10px 0 18px!important
}
.inspection-picker-search-v7328>span{font-size:1.3rem;color:#4f5a66;line-height:1}
.inspection-picker-search-v7328 input{
  border:0!important;box-shadow:none!important;margin:0!important;min-height:48px!important;padding:8px 0!important;
  font-size:.95rem!important;background:transparent!important
}
.inspection-picker-search-v7328 input:focus{outline:none!important}
.inspection-equipment-catalog.inspection-equipment-catalog-v7328{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 24px!important;margin:0!important
}
.inspection-picker-group{border:0;border-bottom:1px solid #e7eaee;padding:0 0 12px;margin:0 0 12px;min-width:0}
.inspection-picker-group summary{
  list-style:none;display:flex;align-items:center;gap:9px;cursor:pointer;font-size:.98rem;font-weight:900;
  color:#171d24;padding:4px 0 8px;user-select:none
}
.inspection-picker-group summary::-webkit-details-marker{display:none}
.inspection-picker-group summary:after{content:'⌃';margin-left:auto;color:#384451;font-size:.9rem}
.inspection-picker-group:not([open]) summary:after{content:'⌄'}
.inspection-picker-group-mark{width:6px;height:22px;border-radius:3px;background:#ff7417;flex:0 0 6px}
.inspection-picker-group:nth-child(2n) .inspection-picker-group-mark{background:#2d98e8}
.inspection-picker-group:nth-child(3n) .inspection-picker-group-mark{background:#34b95f}
.inspection-picker-group:nth-child(4n) .inspection-picker-group-mark{background:#a446d0}
.inspection-picker-group:nth-child(5n) .inspection-picker-group-mark{background:#f2b80f}
.inspection-picker-group-list{display:grid;gap:2px}
.inspection-catalog-card.inspection-catalog-row-v7328{
  min-height:0!important;height:auto!important;padding:5px 4px!important;border:0!important;border-radius:8px!important;
  background:transparent!important;display:grid!important;grid-template-columns:24px minmax(0,1fr) auto auto!important;
  align-items:center!important;justify-content:stretch!important;gap:7px!important;text-align:left!important;box-shadow:none!important;
  cursor:pointer!important;position:relative!important
}
.inspection-catalog-row-v7328:hover{background:#f7f9fb!important}
.inspection-catalog-row-v7328.selected{background:#f2f8ff!important}
.inspection-catalog-row-v7328 .inspection-catalog-checkbox{
  width:19px!important;height:19px!important;margin:0!important;accent-color:#ff7417;cursor:pointer
}
.inspection-catalog-row-name{font-size:.78rem;font-weight:650;line-height:1.25;color:#1b2128;min-width:0}
.inspection-catalog-row-v7328 small{font-size:.58rem!important;color:#79818a!important;white-space:nowrap}
.inspection-catalog-added{
  font-size:.54rem;font-weight:850;color:#17743a;background:#eaf7ee;border-radius:999px;padding:3px 6px;white-space:nowrap
}
.inspection-catalog-row-v7328.already-added{opacity:.65!important;cursor:default!important}
.inspection-picker-footer.inspection-picker-footer-v7328{
  position:sticky!important;bottom:0!important;z-index:5;display:grid!important;grid-template-columns:auto 1fr minmax(210px,auto)!important;
  align-items:center!important;gap:12px!important;margin:16px -20px 0!important;padding:14px 20px!important;
  border-top:1px solid #e4e7eb!important;background:rgba(255,255,255,.98)!important;backdrop-filter:blur(8px)
}
.inspection-picker-footer-v7328>span{text-align:center;font-size:.72rem;color:#6f7780}
.inspection-picker-footer-v7328 .btn{min-height:48px!important;border-radius:12px!important;font-weight:850!important;margin:0!important}
.inspection-picker-footer-v7328 .btn.orange{background:#ff681d!important}
@media(max-width:720px){
  .inspection-picker-panel.inspection-picker-v7328{width:96vw!important;padding:15px 14px 0!important;border-radius:19px!important}
  .inspection-picker-title-row-v7328 h2{font-size:1.45rem!important}
  .inspection-picker-title-row-v7328{align-items:center}
  .inspection-picker-count-chip{padding:7px 9px;font-size:.68rem}
  .inspection-equipment-catalog.inspection-equipment-catalog-v7328{grid-template-columns:1fr!important;gap:0!important}
  .inspection-catalog-row-v7328{padding:7px 4px!important}
  .inspection-catalog-row-name{font-size:.84rem!important}
  .inspection-picker-footer.inspection-picker-footer-v7328{
    margin:14px -14px 0!important;padding:11px 14px!important;grid-template-columns:1fr 1fr!important
  }
  .inspection-picker-footer-v7328>span{grid-column:1/-1;grid-row:1;text-align:center}
  .inspection-picker-footer-v7328 #inspectionPickerClear{grid-column:1;grid-row:2}
  .inspection-picker-footer-v7328 #inspectionPickerAdd{grid-column:2;grid-row:2}
}
@media(max-width:430px){
  .inspection-picker-title-row-v7328{display:grid;grid-template-columns:1fr auto}
  .inspection-picker-title-row-v7328 .muted{grid-column:1/-1}
  .inspection-picker-title-row-v7328 h2{font-size:1.3rem!important}
  .inspection-picker-footer.inspection-picker-footer-v7328{grid-template-columns:1fr!important}
  .inspection-picker-footer-v7328>span,.inspection-picker-footer-v7328 #inspectionPickerClear,.inspection-picker-footer-v7328 #inspectionPickerAdd{grid-column:1!important;grid-row:auto!important}
}

.inspection-catalog-row-v7328.already-added:after{display:none!important}


/* =====================================================
   V73.29 · Hoja de Inspección alineada al mockup aprobado
   ===================================================== */
:root{--b360-orange:#ff5f12;--b360-green:#118548;--b360-red:#d83232;--b360-ink:#151a20;--b360-soft:#f5f7f9;--b360-line:#e2e7ec}

/* PASO 1 · actividades: tarjetas táctiles 2 columnas como mockup */
.primary-type-server-card{border:0!important;background:transparent!important;padding:0!important}
.primary-type-server-title{font-size:.92rem!important;color:#5f6771!important;margin:0 0 10px!important}
.primary-type-server-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
.primary-type-server-button{
  min-height:72px!important;padding:11px 12px!important;border:1.5px solid #dfe4e9!important;border-radius:14px!important;
  background:#fff!important;color:#1d232a!important;font-size:.82rem!important;font-weight:850!important;line-height:1.18!important;
  display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:8px!important;text-align:left!important;
  box-shadow:0 1px 3px rgba(20,30,40,.035)!important
}
.primary-type-server-button .primary-type-icon{width:32px;height:32px;border-radius:9px;background:#f4f6f8;color:#111;display:grid;place-items:center;font-size:1.05rem;font-weight:900}
.primary-type-server-button.selected{border-color:var(--b360-orange)!important;background:#fff7f2!important;color:#dc4e00!important;box-shadow:0 0 0 2px rgba(255,95,18,.08)!important}
.primary-type-server-button.selected .primary-type-icon{background:#fff0e8;color:#e04d00}
.primary-activity-selection-state{border-radius:12px!important}

/* PASO 2 · perfiles de instalación: 3 + 2, opcional, compacto */
.inspection-profile-step{position:relative;padding-top:14px!important}
.inspection-profile-step>h3{display:flex!important;align-items:center!important;gap:9px!important;font-size:1.05rem!important;margin:0 0 3px!important;color:#1c242c}
.inspection-profile-step>h3:before{content:'2';display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--b360-orange);color:white;font-weight:900;flex:0 0 34px}
.inspection-profile-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:8px!important;margin:12px 0 9px!important}
.inspection-profile-card{min-height:56px!important;padding:10px 8px!important;border:1.5px solid #dfe4e9!important;border-radius:12px!important;background:#fff!important;text-align:center!important;box-shadow:none!important}
.inspection-profile-card:nth-child(1),.inspection-profile-card:nth-child(2),.inspection-profile-card:nth-child(3){grid-column:span 2}
.inspection-profile-card:nth-child(4),.inspection-profile-card:nth-child(5){grid-column:span 3}
.inspection-profile-card strong{font-size:.78rem!important;display:block!important;color:#1c232a!important}
.inspection-profile-card span{display:none!important}
.inspection-profile-card.active{border-color:var(--b360-orange)!important;background:#fff7f1!important;box-shadow:0 0 0 2px rgba(255,95,18,.08)!important}
.inspection-profile-card.active strong{color:#c64700!important}
.inspection-profile-optional-actions{margin:6px 0 0!important}
.inspection-profile-optional-actions .mini-btn{font-size:.7rem!important;padding:7px 9px!important}

/* PASO 3 · equipos */
.inspection-equipment-head{margin-top:18px!important}
.inspection-equipment-head strong{display:flex;align-items:center;gap:9px;font-size:1.05rem!important}
.inspection-equipment-head strong:before{content:'3';display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--b360-orange);color:#fff;font-weight:900;flex:0 0 34px}
.inspection-equipment-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin:10px 0!important}
#openInspectionEquipmentPicker{min-height:52px!important;border-radius:13px!important;background:#fff!important;color:#e55408!important;border:1.5px solid #ff8c51!important;font-size:.86rem!important;justify-content:flex-start!important;padding-left:16px!important}
.inspection-equipment-summary{justify-content:center!important;border:0!important;background:#eefaf2!important;color:#14783e!important;border-radius:999px!important;padding:8px 14px!important;font-size:.78rem!important}

/* Lista compacta: icono/nombre + existente + requerido + estado + flecha */
.inspection-equipment-list{display:grid!important;gap:7px!important;padding-bottom:90px!important}
.inspection-equipment-card.inspection-equipment-compact{
  display:grid!important;grid-template-columns:minmax(112px,1fr) 46px 46px 70px 30px!important;align-items:center!important;
  gap:5px!important;padding:8px!important;border:1px solid #e3e7eb!important;border-radius:13px!important;background:#fff!important;
  box-shadow:0 1px 3px rgba(20,30,40,.04)!important;min-height:60px!important;overflow:visible!important
}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity{display:grid!important;grid-template-columns:34px minmax(0,1fr) 22px!important;align-items:center!important;gap:6px!important;min-width:0!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity img{width:34px!important;height:34px!important;padding:4px!important;border-radius:9px!important;border:1px solid #e1e5e9!important;background:#fff!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity>div{min-width:0!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-name{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:.67rem!important;line-height:1.12!important;font-weight:900!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity span{display:block!important;font-size:.48rem!important;color:#7c848d!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;margin-top:2px!important}
.inspection-model-edit{width:22px!important;height:22px!important;border-radius:7px!important;background:#f3f6fa!important;font-size:.64rem!important;padding:0!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty{display:contents!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label{font-size:0!important;text-align:center!important;margin:0!important;display:grid!important;gap:2px!important;color:#7a838c!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty label:before{font-size:.44rem!important;font-weight:800!important;line-height:1!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty input{width:100%!important;height:34px!important;border:1px solid #dce2e7!important;border-radius:9px!important;padding:2px!important;font-size:.76rem!important;text-align:center!important;font-weight:900!important;background:#fff!important}
.inspection-status-badge{min-height:34px!important;padding:4px 6px!important;border-radius:999px!important;font-size:.51rem!important;font-weight:900!important}
.inspection-status-badge[data-state="ok"]{background:#e8f8ed!important;color:#0b8141!important}
.inspection-status-badge[data-state="missing"]{background:#ffeded!important;color:#cf2828!important}
.inspection-details-toggle{width:28px!important;height:28px!important;border-radius:9px!important;background:#f4f7fb!important;font-size:.72rem!important}
.inspection-equipment-card.inspection-equipment-compact .inspection-equipment-delete{display:none!important}
.inspection-equipment-details{grid-column:1/-1!important;display:none!important;grid-template-columns:1fr!important;gap:7px!important;margin-top:3px!important;padding:9px 2px 2px!important;border-top:1px solid #edf0f3!important}
.inspection-equipment-card.details-open .inspection-equipment-details{display:grid!important}
.inspection-equipment-card.details-open .inspection-equipment-delete{display:inline-flex!important;position:static!important;width:auto!important;height:34px!important;border-radius:9px!important;padding:0 12px!important;grid-column:1/-1!important;justify-self:start!important;background:#fff0ef!important;color:#bb2d25!important;font-size:.68rem!important}
.inspection-equipment-card.details-open .inspection-equipment-delete:after{content:'  Eliminar equipo';font-size:.68rem;font-weight:850}
.inspection-equipment-details label{font-size:.68rem!important;font-weight:800!important}
.inspection-equipment-details input,.inspection-equipment-details select{min-height:40px!important;font-size:.76rem!important}

/* Selector equipos tipo mockup aprobado */
.inspection-picker-panel.inspection-picker-v7328{width:min(560px,96vw)!important;max-height:92dvh!important;padding:16px 16px 0!important;border-radius:22px!important;background:#fff!important;overflow:auto!important}
.inspection-picker-head-v7328{margin-bottom:10px!important}
.inspection-picker-back-v7328{display:none!important}
.inspection-picker-title-row-v7328{display:grid!important;grid-template-columns:1fr auto!important;gap:7px 10px!important;align-items:start!important}
.inspection-picker-title-row-v7328 h2{font-size:1.42rem!important;line-height:1.08!important;margin:0!important}
.inspection-picker-title-row-v7328 .muted{grid-column:1/-1!important;font-size:.78rem!important;margin:0!important}
.inspection-picker-count-chip{font-size:.67rem!important;padding:8px 10px!important;border-radius:11px!important;background:#f3f5f7!important}
.inspection-picker-search-v7328{min-height:48px!important;margin:10px 0 15px!important;border-radius:12px!important;border:1px solid #d7dde4!important}
.inspection-equipment-catalog.inspection-equipment-catalog-v7328{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important}
.inspection-picker-group{margin:0 0 10px!important;padding:0 0 9px!important;border-bottom:1px solid #edf0f2!important}
.inspection-picker-group summary{font-size:.9rem!important;padding:5px 0 8px!important}
.inspection-picker-group-mark{width:5px!important;height:21px!important}
.inspection-picker-group-list{display:grid!important;gap:2px!important}
.inspection-catalog-card.inspection-catalog-row-v7329{display:block!important;padding:0!important;border:0!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
.inspection-catalog-row-v7329.selected{background:#fff8f4!important}
.inspection-picker-checkline{display:grid!important;grid-template-columns:25px minmax(0,1fr) auto auto!important;align-items:center!important;gap:7px!important;margin:0!important;padding:7px 5px!important;cursor:pointer!important}
.inspection-picker-checkline .inspection-catalog-checkbox{width:20px!important;height:20px!important;margin:0!important;accent-color:var(--b360-orange)!important}
.inspection-catalog-row-name{font-size:.79rem!important;font-weight:760!important;line-height:1.2!important}
.inspection-picker-checkline small{font-size:.55rem!important;color:#7f8790!important}
.inspection-catalog-added{font-size:.52rem!important;padding:3px 6px!important}
.inspection-picker-inline-qty{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:2px 5px 10px 32px!important}
.inspection-picker-inline-qty[hidden]{display:none!important}
.inspection-picker-qty-field>span{display:block;font-size:.59rem;color:#747d86;font-weight:800;margin:0 0 4px}
.inspection-picker-stepper{display:grid;grid-template-columns:34px 1fr 34px;border:1px solid #dce2e7;border-radius:10px;overflow:hidden;background:#fff;height:40px}
.inspection-picker-stepper button{border:0;background:#fff;color:#1a232b;font-size:1rem;font-weight:900;padding:0;cursor:pointer}
.inspection-picker-stepper input{border:0!important;border-left:1px solid #edf0f2!important;border-right:1px solid #edf0f2!important;border-radius:0!important;margin:0!important;padding:0!important;text-align:center!important;font-size:.82rem!important;font-weight:900!important;min-height:38px!important}
.inspection-picker-footer.inspection-picker-footer-v7328{position:sticky!important;bottom:0!important;z-index:7;display:grid!important;grid-template-columns:1fr 1.25fr!important;gap:9px!important;margin:12px -16px 0!important;padding:11px 16px max(11px,env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.98)!important;border-top:1px solid #e4e8ec!important}
.inspection-picker-footer-v7328>span{grid-column:1/-1!important;grid-row:1!important;text-align:center!important;font-size:.66rem!important;color:#707985!important}
.inspection-picker-footer-v7328 #inspectionPickerClear{grid-column:1!important;grid-row:2!important;min-height:48px!important;border-radius:12px!important}
.inspection-picker-footer-v7328 #inspectionPickerAdd{grid-column:2!important;grid-row:2!important;min-height:48px!important;border-radius:12px!important;background:var(--b360-orange)!important}

/* Salida de borrador con tercera opción explícita */
.exit-draft-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}
.exit-draft-actions .btn{min-height:46px!important}
.exit-draft-actions .btn.danger{grid-column:1/-1;background:#fff0ef!important;color:#b72d24!important;border:1px solid #efc3be!important}

@media(max-width:560px){
  .primary-type-server-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .primary-type-server-button{min-height:68px!important;padding:9px 10px!important;font-size:.75rem!important;grid-template-columns:30px minmax(0,1fr)!important}
  .primary-type-server-button .primary-type-icon{width:28px;height:28px;font-size:.9rem}
  .inspection-profile-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .inspection-profile-card{min-height:52px!important;padding:8px 5px!important}
  .inspection-profile-card strong{font-size:.7rem!important}
  .inspection-equipment-card.inspection-equipment-compact{grid-template-columns:minmax(108px,1fr) 43px 43px 64px 28px!important;gap:4px!important;padding:7px!important}
}
@media(max-width:390px){
  .inspection-equipment-card.inspection-equipment-compact{grid-template-columns:minmax(96px,1fr) 40px 40px 58px 26px!important;gap:3px!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity{grid-template-columns:30px minmax(0,1fr) 20px!important;gap:4px!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-identity img{width:30px!important;height:30px!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-equipment-name{font-size:.61rem!important}
  .inspection-status-badge{font-size:.46rem!important;padding:3px 4px!important}
  .inspection-equipment-card.inspection-equipment-compact .inspection-dual-qty input{font-size:.69rem!important;height:32px!important}
}


/* =====================================================
   V73.31 · Selector de equipos compacto en una sola línea
   Referencia visual: mockup aprobado 2026-09-08
   ===================================================== */
.inspection-picker-panel.inspection-picker-v7328{
  width:min(560px,96vw)!important;
  max-height:92dvh!important;
  overflow:auto!important;
  padding:16px 16px 0!important;
}
.inspection-picker-group{margin:0 0 10px!important;padding:0 0 10px!important}
.inspection-picker-group summary{padding:5px 0 9px!important}
.inspection-picker-group-list{display:grid!important;gap:6px!important}

/* Elimina el min-height heredado del catálogo antiguo que creaba grandes espacios en blanco. */
.inspection-catalog-card.inspection-catalog-row-v7329{
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  border:1px solid #e2e7ec!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:center!important;
  gap:0!important;
}
.inspection-catalog-card.inspection-catalog-row-v7329:hover{background:#fbfcfd!important}
.inspection-catalog-card.inspection-catalog-row-v7329.selected{
  grid-template-columns:minmax(0,1.15fr) minmax(166px,.85fr)!important;
  gap:7px!important;
  padding:5px 7px!important;
  border-color:#f0ddd2!important;
  background:#fff8f4!important;
}

/* La línea de identidad siempre es compacta. */
.inspection-picker-checkline{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
  min-height:54px!important;
  padding:7px 9px!important;
  margin:0!important;
}
.inspection-catalog-card.selected .inspection-picker-checkline{
  padding:4px 3px!important;
  min-height:58px!important;
}
.inspection-picker-checkline .inspection-catalog-checkbox{
  width:26px!important;height:26px!important;margin:0!important;
  accent-color:#ff5f12!important;
}
.inspection-catalog-row-name{
  min-width:0!important;
  font-size:.79rem!important;
  font-weight:850!important;
  line-height:1.15!important;
  white-space:normal!important;
}
.inspection-picker-checkline small{
  justify-self:end!important;
  font-size:.55rem!important;
  font-weight:800!important;
  color:#7c858e!important;
  white-space:nowrap!important;
}
.inspection-catalog-card.selected .inspection-picker-checkline small{
  grid-column:2!important;
  justify-self:start!important;
  margin-top:-7px!important;
}
.inspection-catalog-added{display:none!important}

/* EXISTE + REQUERIDO comparten la MISMA línea del nombre cuando el equipo está marcado. */
.inspection-picker-inline-qty{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:end!important;
  gap:7px!important;
  padding:0!important;
  margin:0!important;
  min-width:0!important;
}
.inspection-picker-inline-qty[hidden]{display:none!important}
.inspection-picker-qty-field{min-width:0!important}
.inspection-picker-qty-field>span{
  display:block!important;
  text-align:center!important;
  font-size:.52rem!important;
  line-height:1!important;
  color:#727c86!important;
  font-weight:850!important;
  margin:0 0 4px!important;
}
.inspection-picker-stepper{
  display:grid!important;
  grid-template-columns:27px minmax(25px,1fr) 27px!important;
  height:36px!important;
  min-width:0!important;
  border:1px solid #d8dfe5!important;
  border-radius:9px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.inspection-picker-stepper button{
  min-width:0!important;
  width:auto!important;
  height:34px!important;
  padding:0!important;
  border:0!important;
  background:#fff!important;
  color:#17212a!important;
  font-size:.92rem!important;
  font-weight:950!important;
}
.inspection-picker-stepper input{
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-left:1px solid #edf0f2!important;
  border-right:1px solid #edf0f2!important;
  border-radius:0!important;
  text-align:center!important;
  font-size:.75rem!important;
  font-weight:900!important;
  background:#fff!important;
}

/* Categorías cerradas no reservan espacio. */
.inspection-picker-group:not([open]){padding-bottom:8px!important;margin-bottom:8px!important}
.inspection-picker-group:not([open]) .inspection-picker-group-list{display:none!important}

@media(max-width:560px){
  .inspection-picker-panel.inspection-picker-v7328{width:96vw!important;padding:14px 13px 0!important}
  .inspection-catalog-card.inspection-catalog-row-v7329.selected{
    grid-template-columns:minmax(0,1.08fr) minmax(156px,.92fr)!important;
    gap:5px!important;
    padding:4px 6px!important;
  }
  .inspection-picker-checkline{grid-template-columns:31px minmax(0,1fr) auto!important;gap:6px!important;min-height:51px!important;padding:6px 7px!important}
  .inspection-catalog-card.selected .inspection-picker-checkline{min-height:56px!important;padding:3px 2px!important}
  .inspection-picker-checkline .inspection-catalog-checkbox{width:25px!important;height:25px!important}
  .inspection-catalog-row-name{font-size:.73rem!important}
  .inspection-picker-checkline small{font-size:.49rem!important}
  .inspection-picker-inline-qty{gap:5px!important}
  .inspection-picker-stepper{grid-template-columns:24px minmax(22px,1fr) 24px!important;height:34px!important}
  .inspection-picker-stepper button,.inspection-picker-stepper input{height:32px!important;min-height:32px!important}
  .inspection-picker-stepper button{font-size:.85rem!important}
  .inspection-picker-stepper input{font-size:.7rem!important}
  .inspection-picker-qty-field>span{font-size:.47rem!important;margin-bottom:3px!important}
}
@media(max-width:390px){
  .inspection-catalog-card.inspection-catalog-row-v7329.selected{
    grid-template-columns:minmax(0,1fr) 148px!important;
    gap:4px!important;
    padding:4px!important;
  }
  .inspection-picker-checkline{grid-template-columns:28px minmax(0,1fr) auto!important;gap:5px!important;padding:5px!important}
  .inspection-picker-checkline .inspection-catalog-checkbox{width:23px!important;height:23px!important}
  .inspection-catalog-row-name{font-size:.68rem!important}
  .inspection-picker-inline-qty{gap:4px!important}
  .inspection-picker-stepper{grid-template-columns:22px minmax(20px,1fr) 22px!important}
}

/* =========================================================
   V73.32 · Mi cuenta = perfil real + foto del técnico
   ========================================================= */
.account-page-v7332{max-width:980px;margin:0 auto;padding-bottom:42px}
.account-topnav{align-items:flex-start;gap:16px}
.account-profile-card,.account-security-card{overflow:hidden}
.account-profile-head{display:flex;align-items:center;gap:24px;margin-top:24px}
.account-avatar-wrap{position:relative;flex:0 0 auto;width:132px;height:132px}
.account-avatar{width:132px;height:132px;border-radius:50%;object-fit:cover;display:block;border:5px solid #fff;box-shadow:0 8px 28px rgba(20,24,30,.14);background:#f1f3f5}
.account-avatar-fallback{display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:900;color:#fff;background:linear-gradient(145deg,#ff7a1a,#e95500)}
.account-avatar-edit{position:absolute;right:-2px;bottom:4px;width:44px;height:44px;border:3px solid #fff;border-radius:50%;background:#111827;color:white;font-size:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.18);cursor:pointer}
.account-profile-main{min-width:0;flex:1}.account-profile-main h1{margin:0 0 8px;font-size:clamp(32px,5vw,54px);line-height:1.04}.account-profile-main p{margin:12px 0 0}
.account-role-pill{display:inline-flex;align-items:center;min-height:34px;padding:6px 13px;border-radius:999px;background:#eef7f0;color:#147a3b;font-weight:800;font-size:14px}
.account-photo-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 6px}.account-photo-actions .btn{min-width:160px}
.account-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
.account-info-item{padding:16px 18px;border:1px solid #e3e6ea;border-radius:16px;background:#fafbfc;min-width:0}.account-info-item span{display:block;color:#737982;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}.account-info-item strong{display:block;font-size:18px;overflow-wrap:anywhere}
.account-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.account-section-title h2{margin:2px 0 0;font-size:34px}.account-section-kicker{font-size:12px;font-weight:900;letter-spacing:.15em;color:#eb5c00}.account-security-icon{font-size:34px;width:58px;height:58px;border-radius:18px;background:#f4f5f7;display:flex;align-items:center;justify-content:center}
.account-wide-button{width:100%;margin-top:6px}.account-devices-title{margin-top:26px;font-size:25px}
.account-security-card .device-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid #eceef0}
@media(max-width:640px){
  .account-page-v7332{padding-left:0;padding-right:0}.account-topnav{flex-direction:column}.account-topnav .toplinks{width:100%;display:flex;gap:9px}.account-topnav .toplinks .btn{flex:1;text-align:center}
  .account-profile-head{align-items:flex-start;gap:16px}.account-avatar-wrap,.account-avatar{width:96px;height:96px}.account-avatar-fallback{font-size:30px}.account-avatar-edit{width:38px;height:38px;font-size:17px}
  .account-profile-main h1{font-size:32px}.account-info-grid{grid-template-columns:1fr}.account-photo-actions{display:grid;grid-template-columns:1fr 1fr}.account-photo-actions .btn{min-width:0;width:100%}
  .account-section-title h2{font-size:29px}.account-security-card .device-row{align-items:flex-start}
}


/* ============================================================
   V73.72 · Modo oscuro consolidado sobre V73.70 real
   ============================================================ */
body.ui-dark{
  --b360-bg:#0c1117;
  --b360-surface:#141a22;
  --b360-surface2:#1a222d;
  --b360-surface3:#222c38;
  --b360-line:#2d3947;
  --b360-line2:#3b4858;
  --b360-text:#f3f6fa;
  --b360-muted:#aab4c1;
  --b360-orange:#f26722;
  background:var(--b360-bg)!important;
  color:var(--b360-text)!important;
  color-scheme:dark;
}
body.ui-dark .wrap{color:var(--b360-text)}
body.ui-dark .card,
body.ui-dark .stat,
body.ui-dark .admin-card,
body.ui-dark .portal-v48-card,
body.ui-dark .report-hub-card,
body.ui-dark .tracking-card,
body.ui-dark .tracking-map-panel,
body.ui-dark .tracking-tech-row,
body.ui-dark .archive-row,
body.ui-dark .equipment-date-cards>div,
body.ui-dark .delivery-summary>div,
body.ui-dark .equipment-report-stats>div,
body.ui-dark .selected-equipment-item,
body.ui-dark .equipment-icon-card,
body.ui-dark .empty-equipment,
body.ui-dark .equipment-warning,
body.ui-dark .qa-actions form,
body.ui-dark .smtp-fixed-grid>div,
body.ui-dark .mail-account-box,
body.ui-dark .account-info-item,
body.ui-dark .drive-manual-note,
body.ui-dark .drive-folder-preview>div,
body.ui-dark .item-row,
body.ui-dark .product-admin-row,
body.ui-dark .map-result,
body.ui-dark .map-search-loading,
body.ui-dark .map-search-empty,
body.ui-dark .ocr-debug,
body.ui-dark .gc-check,
body.ui-dark .gc-event,
body.ui-dark .gc-preview,
body.ui-dark .gc-preview.off{
  background:linear-gradient(180deg,var(--b360-surface),var(--b360-surface2))!important;
  border-color:var(--b360-line)!important;
  color:var(--b360-text)!important;
  box-shadow:none!important;
}
body.ui-dark .qa-cleanup-card,
body.ui-dark .smtp-admin-card,
body.ui-dark .account-profile-card,
body.ui-dark .account-security-card{
  background:linear-gradient(180deg,#10161e,#131a23)!important;
  border-color:var(--b360-line)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.30)!important;
}
body.ui-dark h1,
body.ui-dark h2,
body.ui-dark h3,
body.ui-dark h4,
body.ui-dark strong,
body.ui-dark label,
body.ui-dark .brand,
body.ui-dark .admin-card strong,
body.ui-dark .portal-v48-card strong,
body.ui-dark .report-hub-card strong,
body.ui-dark .tracking-tech-row strong,
body.ui-dark .archive-row strong,
body.ui-dark .account-profile-main h1,
body.ui-dark .account-section-title h2,
body.ui-dark .account-devices-title{color:var(--b360-text)!important}
body.ui-dark .muted,
body.ui-dark .mini,
body.ui-dark .admin-card span,
body.ui-dark .portal-v48-card p,
body.ui-dark .report-hub-card small,
body.ui-dark .stat span,
body.ui-dark .archive-row small,
body.ui-dark .tracking-tech-row small,
body.ui-dark .equipment-date-cards span,
body.ui-dark .delivery-summary span,
body.ui-dark .equipment-report-stats span,
body.ui-dark .equipment-date-cards small,
body.ui-dark .equipment-row small,
body.ui-dark .smtp-fixed-grid span,
body.ui-dark .account-info-item span,
body.ui-dark .gc-kind,
body.ui-dark .product-name span{color:var(--b360-muted)!important}
body.ui-dark input,
body.ui-dark textarea,
body.ui-dark select{
  background:#0f151d!important;
  color:var(--b360-text)!important;
  border-color:var(--b360-line2)!important;
}
body.ui-dark input::placeholder,
body.ui-dark textarea::placeholder{color:#7f8b9a!important}
body.ui-dark input:focus,
body.ui-dark textarea:focus,
body.ui-dark select:focus{border-color:var(--b360-orange)!important;outline:none;box-shadow:0 0 0 3px rgba(242,103,34,.13)}
body.ui-dark .btn.light,
body.ui-dark .mini-btn,
body.ui-dark .ui-pref-btn,
body.ui-dark .remove-item{
  background:#252f3c!important;
  color:#f5f7fa!important;
  border-color:#394657!important;
}
body.ui-dark .mini-btn.green{background:#173824!important;color:#9ce3b2!important;border-color:#2b6240!important}
body.ui-dark .mini-btn.danger,
body.ui-dark .danger-btn,
body.ui-dark .qa-danger-all{background:#9e2929!important;color:#fff!important;border-color:#c34c4c!important}
body.ui-dark .btn.orange{box-shadow:0 8px 22px rgba(242,103,34,.20)}
body.ui-dark .alert{background:#341a10!important;border-color:#78422a!important;color:#ffd8c6!important}
body.ui-dark .alert.success{background:#142b1d!important;border-color:#2f6d46!important;color:#a6e3b7!important}
body.ui-dark .qa-warning{background:#3a171b!important;color:#ffd7dc!important;border:1px solid #79333a!important}
body.ui-dark .smtp-status.ok,
body.ui-dark .tracking-status.active,
body.ui-dark .tracking-live-status.online,
body.ui-dark .network-state.online{background:#153823!important;color:#9be7b1!important;border-color:#2d6943!important}
body.ui-dark .smtp-status.bad,
body.ui-dark .tracking-status.idle,
body.ui-dark .tracking-live-status.offline,
body.ui-dark .network-state.offline{background:#3a2517!important;color:#ffc58b!important;border-color:#744829!important}
body.ui-dark table{background:#10161d!important;color:#edf2f7!important}
body.ui-dark th{background:#090d12!important;color:#fff!important;border-color:#26313d!important}
body.ui-dark td{color:#e9eef4!important;border-color:#26313d!important}
body.ui-dark .tablewrap{border-radius:12px}

/* Hoja de servicio: corrige componentes que tenían blanco fijo o selectores antiguos body.dark */
body.ui-dark .service-quickbar{background:var(--b360-bg)!important}
body.ui-dark .service-progress span{background:#171e27!important;border-color:#34404f!important;color:#abb6c4!important}
body.ui-dark .service-progress span.done{background:#173724!important;border-color:#2d6842!important;color:#9ce4b1!important}
body.ui-dark .installation-description-tools,
body.ui-dark .installation-material-row,
body.ui-dark .installation-material-empty,
body.ui-dark .installation-material-selected-card,
body.ui-dark .installation-material-card,
body.ui-dark .installation-custom-material,
body.ui-dark .service-start-card,
body.ui-dark .description-edit-hint,
body.ui-dark .inspection-equipment-card,
body.ui-dark .inspection-catalog-card,
body.ui-dark .inspection-picker-qty-row,
body.ui-dark .photo-card,
body.ui-dark .yummy-card{
  background:var(--b360-surface)!important;
  border-color:var(--b360-line2)!important;
  color:var(--b360-text)!important;
}
body.ui-dark .inspection-catalog-card.selected{background:#173322!important;border-color:#2c8b52!important}
body.ui-dark .installation-material-selected-card>img,
body.ui-dark .inspection-equipment-identity img,
body.ui-dark .maintenance-equipment-card img{background:#f5f5f5!important}
body.ui-dark .inspection-dual-qty label,
body.ui-dark .picker-dual label,
body.ui-dark .inspection-required-toggle>span,
body.ui-dark .picker-required>span,
body.ui-dark .yummy-meta{color:var(--b360-muted)!important}
body.ui-dark .inspection-required-btn,
body.ui-dark .picker-required button{background:#202936!important;border-color:#394656!important;color:#e9eef4!important}
body.ui-dark .signature-box{background:#fff!important;border-color:#4c5968!important}
body.ui-dark .signature-box canvas{background:#fff!important}
body.ui-dark .service-summary-bar{background:#0d131a!important;border:1px solid #2a3542!important}
body.ui-dark .service-summary-bar span{color:#9faab8!important}

/* Presupuestos */
body.ui-dark .item-row{background:#151c25!important}
body.ui-dark .remove-item{font-size:1.45rem}
body.ui-dark .total-general{background:#090e14!important;border:1px solid #303b49!important}
body.ui-dark .items-title h2{color:#fff!important}

/* Técnicos en calle */
body.ui-dark .tracking-tech-row{background:#151c24!important;border-color:#33404f!important}
body.ui-dark .tracking-tech-row.selected{background:#241a14!important;border-color:var(--b360-orange)!important}
body.ui-dark .tracking-tech-row:hover{border-color:#f28a52!important}
body.ui-dark .tracking-map-panel{background:#121922!important}
body.ui-dark .tracking-map-frame{background:#0d131a!important;border-color:#3b4857!important}
body.ui-dark .online-dot{color:#72dfa0!important}
body.ui-dark .offline-dot{color:#9ca7b4!important}

/* Reporte de equipos */
body.ui-dark .equipment-report-stats>div{position:relative;overflow:hidden;background:#151c25!important}
body.ui-dark .equipment-report-stats>div:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:#607080}
body.ui-dark .equipment-report-stats>div:nth-child(1):before{background:#2f9bf2}
body.ui-dark .equipment-report-stats>div:nth-child(2):before{background:#8b99aa}
body.ui-dark .equipment-report-stats>div:nth-child(3):before{background:#f26722}
body.ui-dark .equipment-report-stats>div:nth-child(4):before{background:#b06de0}
body.ui-dark .equipment-report-stats>div:nth-child(5):before{background:#32b56b}
body.ui-dark .equipment-report-stats>div:nth-child(6):before{background:#d7a52a}
body.ui-dark .equipment-report-stats strong{color:#fff!important}

/* Descarga / archivo de hojas */
body.ui-dark .archive-row{background:#151c25!important}
body.ui-dark .archive-row label{min-width:0;flex:1 1 auto}
body.ui-dark .archive-row label>span{min-width:0;max-width:100%;flex:1 1 auto}
body.ui-dark .archive-row strong,
body.ui-dark .archive-row small{word-break:normal!important;overflow-wrap:anywhere!important}

/* Google Drive / Calendar */
body.ui-dark .drive-manual-note{background:#151d27!important;color:#edf2f7!important;border-color:#354151!important}
body.ui-dark .gc-check{background:#151c25!important}
body.ui-dark .gc-event{background:#151c25!important}
body.ui-dark .gc-preview{background:#153222!important;border-color:#2f744a!important}
body.ui-dark .gc-preview.off{background:#151c25!important;border-color:#33404f!important}

/* Administración QA / MySQL / correo */
body.ui-dark .qa-actions form,
body.ui-dark .smtp-fixed-grid>div,
body.ui-dark .mail-account-box{background:#151c25!important;border-color:#33404f!important}
body.ui-dark .smtp-fixed-grid strong{color:#f4f7fa!important}
body.ui-dark .smtp-config-form textarea{background:#0f151d!important}

/* Mi cuenta */
body.ui-dark .account-info-item{background:#151c25!important;border-color:#33404f!important}
body.ui-dark .account-role-pill{background:#153724!important;color:#9ce3b2!important}
body.ui-dark .account-avatar{background:#0f151d!important;border-color:#273240!important;box-shadow:0 10px 28px rgba(0,0,0,.28)!important}
body.ui-dark .account-security-icon{background:#222c38!important;color:#f4f7fa!important}
body.ui-dark .account-security-card .device-row{border-color:#2d3947!important}

/* Diagnóstico y Logs: los estilos internos de la página se cargan después de style.css */
body.ui-dark .dl-stat{background:#151c25!important;border-color:#33404f!important;color:#f3f6fa!important}
body.ui-dark .dl-stat span{color:#aab4c1!important}
body.ui-dark .dl-help{background:#151c25!important;color:#c0c9d4!important}
body.ui-dark .dl-row{background:#141b23!important;border-color:#33404f!important}
body.ui-dark .dl-code,
body.ui-dark .dl-repeat,
body.ui-dark .dl-box{background:#202936!important;color:#eef2f7!important}
body.ui-dark .dl-diagnosis,
body.ui-dark .dl-meta{color:#aeb9c7!important}
body.ui-dark .dl-details{border-color:#2f3b49!important}
body.ui-dark .dl-pill.error{background:#4a2022!important;color:#ffb0b4!important}
body.ui-dark .dl-pill.warning{background:#463719!important;color:#ffd878!important}
body.ui-dark .dl-pill.info{background:#183451!important;color:#9dcbff!important}
body.ui-dark .dl-pill.notice{background:#28313d!important;color:#c8d1db!important}

/* Modales / previews secundarios */
body.ui-dark .client-preview-title,
body.ui-dark .client-preview-paper,
body.ui-dark .client-preview-section,
body.ui-dark .client-preview-table,
body.ui-dark .client-preview-table>div,
body.ui-dark .client-preview-photos figure,
body.ui-dark .client-preview-yummy-row{
  background:#11171f!important;
  color:#f1f5f8!important;
  border-color:#2f3b49!important;
}
body.ui-dark .client-preview-title p,
body.ui-dark .client-preview-grid b,
body.ui-dark .client-preview-yummy-row>span{color:#aab4c1!important}
body.ui-dark .client-preview-band{background:#202936!important}

@media(max-width:800px){
  body.ui-dark .service-quickbar{padding:8px 0!important}
  body.ui-dark .equipment-report-filter{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  body.ui-dark .equipment-report-filter label{min-width:0!important;width:100%!important}
  body.ui-dark .equipment-report-filter .btn{width:100%!important}
}
@media(max-width:760px){
  body.ui-dark .archive-row{width:100%!important;align-items:stretch!important;gap:12px!important}
  body.ui-dark .archive-row label{width:100%!important;align-items:flex-start!important}
  body.ui-dark .archive-row>div{width:100%!important}
  body.ui-dark .archive-row>div .btn,
  body.ui-dark .archive-row>div .mini-btn{width:100%!important}
}
