:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173248;background:#eef4f2;font-size:16px}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button,.import{cursor:pointer}button:disabled{opacity:.45;cursor:default}.app-header{background:#10263a;color:white;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px max(16px,calc((100vw - 800px)/2));min-height:70px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand img{width:48px;height:48px;object-fit:contain;border-radius:11px}.brand strong{display:block;font-size:19px;letter-spacing:.03em}.brand small{display:block;font-size:12px;line-height:1.25;color:#c4d8e7}.net{font-size:12px;white-space:nowrap}main{width:min(100%,800px);margin:auto;padding:20px 16px 50px}.top,.stage,.tools,.zone-picker{background:white;border:1px solid #d9e5e5;border-radius:18px;box-shadow:0 5px 22px #1732480c}.top{padding:18px 20px;margin-bottom:14px}.eyebrow{color:#167a73;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.top h1{font-size:clamp(22px,5vw,30px);line-height:1.2;margin:7px 0 18px;overflow-wrap:anywhere}.progress-head{display:flex;justify-content:space-between;gap:10px;font-size:14px}.progress-head strong{color:#0a746b}.track{height:10px;border-radius:100px;overflow:hidden;background:#e5eeed;margin-top:8px}#progressBar{background:#19a08a;height:100%;width:0;transition:width .2s}.savebar{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:11px;color:#536e77;font-size:12px}.zone-picker{margin-bottom:14px;overflow:hidden}.zone-picker summary{padding:16px 20px;min-height:60px;cursor:pointer;font-size:16px;font-weight:700;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px}.zone-picker summary::-webkit-details-marker{display:none}.zone-picker summary:after{content:'⌄';font-size:25px;line-height:1;color:#147b70}.zone-picker[open] summary:after{content:'⌃'}.zone-picker summary span{font-size:13px;font-weight:500;color:#536e77;text-align:right}.zone-grid{padding:0 13px 14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.zone-grid button{border:1px solid #d3e2e1;background:#f7fbfa;border-radius:12px;min-height:65px;padding:11px;text-align:left;color:#173248;font-weight:700}.zone-grid button.active{border-color:#148b78;background:#e5f5f1}.zone-grid small{display:block;margin-top:4px;color:#536e77;font-size:12px;font-weight:500}.stage{padding:22px 22px 25px;scroll-margin-top:12px}.question-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.step-number{color:#647a83;font-size:13px;margin:5px 0 0}.question-state{background:#fff1dd;color:#815300;border-radius:8px;padding:8px 10px;text-align:center;font-size:12px;font-weight:700;flex-shrink:0;max-width:38%}.question-state.is-complete{background:#ddf4e9;color:#0b6857}.question-title{font-size:clamp(23px,5.6vw,32px);line-height:1.2;margin:23px 0 22px;overflow-wrap:anywhere}.stage-note,.hint{color:#536e77;line-height:1.45;font-size:15px}.stage-note{background:#f2f8f7;border-radius:10px;padding:12px 14px;margin:0 0 22px}.hint{margin:13px 0}.safety{padding:13px 15px;margin:0 0 20px;background:#fff3e4;border-left:4px solid #df8f28;border-radius:6px;color:#694720;line-height:1.45}.value-block,.form-section{margin:18px 0}.value-block label,.form-section label,.section-label{display:block;font-weight:700;font-size:16px;margin:0 0 9px}.value-with-unit{display:flex;align-items:stretch;gap:10px}.value-with-unit input{min-width:0;flex:1}.unit{display:flex;align-items:center;max-width:44%;color:#35616b;font-size:14px;line-height:1.25}input:not([type=file]),select,textarea{width:100%;min-height:58px;border:2px solid #b8cecd;border-radius:12px;background:white;color:#173248;padding:12px 15px;font-size:18px;line-height:1.35}textarea{min-height:114px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid #82cfbe;outline-offset:1px;border-color:#0a8a75}button:focus-visible,summary:focus-visible,.import:focus-within{outline:3px solid #82cfbe;outline-offset:3px}.status-block{margin:28px 0 17px}.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.status-grid button{min-height:65px;padding:10px 13px;border-radius:12px;border:2px solid #bacdcc;background:#f9fcfb;color:#173248;font-size:17px;font-weight:750;line-height:1.25}.status-grid button.selected{border-color:#0a806e;background:#e1f5ed;color:#07594d}.status-grid button.status-defect.selected{background:#ffe7e2;border-color:#ce5a45;color:#842d22}.status-grid button.status-nr.selected{background:#fff0d8;border-color:#cb8d29;color:#684306}.optional-details{border:1px solid #d6e4e2;border-radius:12px;margin:20px 0;padding:0 14px}.optional-details summary{min-height:58px;display:flex;align-items:center;cursor:pointer;color:#0b6b63;font-weight:700;line-height:1.3}.detail-fields{margin-top:16px}.photo-block{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.photo-button,.voice-button,.repeat-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border:1px solid #0b8273;border-radius:11px;background:#e7f5f0;color:#086b5e;padding:10px 16px;font-weight:700}.photo-button input,.import input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.photo-count{font-size:14px;color:#536e77}.photo-count.warn{color:#a33e2a;font-weight:700}.thumbs{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.thumb{position:relative}.thumb img{width:100px;height:100px;object-fit:cover;border-radius:9px}.thumb button{position:absolute;right:-6px;top:-6px;width:32px;height:32px;border:0;border-radius:50%;background:#a73227;color:white;font-size:24px;line-height:1}.repeat-actions{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0}.step-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #e3eceb;margin-top:30px;padding-top:22px}.step-bottom button,.toolgrid button,.import{min-height:58px;border-radius:12px;border:1px solid #aec9c7;background:#f8fbfa;color:#173248;padding:11px 16px;font-weight:750;font-size:17px;text-align:center}.step-bottom .primary,.toolgrid .primary{background:#0c7f71;border-color:#0c7f71;color:white}.tools{padding:23px;margin-top:18px}.tools h2{font-size:23px;margin:0 0 9px}.tools p{color:#536e77;line-height:1.45}.toolgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.import{display:flex;align-items:center;justify-content:center;position:relative}.note{font-size:13px}.tools #validation{color:#985417;font-weight:700;min-height:1.4em}footer{display:flex;justify-content:space-between;gap:12px;background:#10263a;color:#c4d8e7;font-size:12px;padding:18px max(16px,calc((100vw - 800px)/2))}@media(max-width:580px){main{padding:14px 12px 35px}.top{padding:17px}.stage{padding:20px 16px}.zone-picker summary{padding:14px 16px}.zone-grid,.toolgrid{grid-template-columns:1fr}.question-top{display:block}.question-state{display:inline-block;margin-top:12px;max-width:none}.question-title{margin-top:15px}.status-grid button{font-size:16px}.tools{padding:18px}.net{font-size:11px}.brand img{width:42px;height:42px}.brand strong{font-size:17px}.brand small{font-size:11px}}@media(max-width:370px){.status-grid{grid-template-columns:1fr}.step-bottom{grid-template-columns:1fr}.value-with-unit{flex-direction:column}.unit{max-width:none}}

@media(max-width:580px){.top h1{height:2.4em;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.savebar{display:block;height:4.5em;overflow:hidden}.savebar #saveStatus{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.savebar #dateInfo{display:none}.question-state{min-height:40px;align-items:center}}
.question-state{background:#fde7e5;color:#a12f2b}.question-state.is-complete{background:#ddf4e9;color:#0b6857}.missing-info{min-height:2.7em;margin:14px 0 0;color:#a12f2b;font-weight:700;line-height:1.35}
[hidden]{display:none!important}.home-view{background:#fff;border:1px solid #d9e5e5;border-radius:18px;box-shadow:0 5px 22px #1732480c;padding:24px;margin-bottom:18px}.home-view h1{font-size:clamp(25px,6vw,34px);margin:10px 0}.home-view>p{color:#536e77;line-height:1.45}.home-view label{display:block;margin:22px 0 8px;font-size:16px;font-weight:700}.home-view textarea{min-height:86px}.home-location{margin-top:20px;border:1px solid #d6e4e2;border-radius:12px;padding:14px}.home-location p{color:#536e77;font-size:14px;line-height:1.4}.home-location button,.home-actions button,.top-actions button,.finish-actions button{min-height:56px;border:1px solid #0b8273;border-radius:12px;background:#e7f5f0;color:#086b5e;padding:10px 15px;font-weight:750;font-size:16px}.home-actions,.finish-actions{display:grid;gap:10px;margin-top:16px}.home-actions .primary,.finish-actions .primary{background:#0c7f71;color:white}.top-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.top-actions button{font-size:14px;min-height:50px}.top-actions #finishBtn{background:#0c7f71;color:white}@media(max-width:580px){.home-view{padding:20px 16px}.top-actions{grid-template-columns:1fr}.home-actions button{width:100%}}
.home-status{padding:11px 13px;border-radius:10px;background:#edf6f2;color:#175b50!important;font-weight:700;font-size:14px}.home-view input:disabled,.home-view textarea:disabled{background:#f2f5f5;color:#536e77}
.inspection-days{padding:11px 13px;border:1px solid #d8e5e1;border-radius:10px;background:#f7faf9;font-size:14px;line-height:1.4}
.chooser-new{display:block;width:100%;min-height:58px;margin:18px 0 8px;border:1px solid #0b8273;border-radius:12px;background:#0c7f71;color:#fff;padding:12px 16px;font-size:17px;font-weight:750}
.exit-inspection{min-height:44px;border:1px solid #bed5df;border-radius:10px;background:transparent;color:#fff;padding:8px 12px;font-size:14px;font-weight:700}
select{-webkit-appearance:none;appearance:none;min-height:58px;padding:12px 44px 12px 15px;background-image:linear-gradient(45deg,transparent 50%,#173248 50%),linear-gradient(135deg,#173248 50%,transparent 50%);background-position:calc(100% - 22px) calc(50% - 3px),calc(100% - 16px) calc(50% - 3px);background-size:6px 6px;background-repeat:no-repeat}
@media(max-width:580px){.app-header{flex-wrap:wrap}.exit-inspection{width:100%}}
.manager-inbox{margin:22px 0;padding:18px;border:1px solid #d5e6df;border-radius:13px;background:#f6faf8}.manager-inbox-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.manager-inbox-head h3{font-size:19px;margin:0}.manager-inbox-head button{min-height:44px;border:1px solid #0b8273;border-radius:9px;background:#e7f5f0;color:#086b5e;padding:8px 12px;font-weight:700}#managerInboxList{display:grid;gap:9px;margin-top:13px}#managerInboxList button{display:block;width:100%;text-align:left;min-height:66px;padding:12px;border:1px solid #b9d0c9;border-radius:10px;background:white;color:#173248}#managerInboxList button strong,#managerInboxList button small{display:block}#managerInboxList button small{font-size:13px;color:#536e77;margin-top:3px}
#reopenReviewBtn{width:100%;min-height:52px;border:1px solid #0b8273;border-radius:12px;background:#0c7f71;color:white;padding:10px 14px;font-weight:750;font-size:16px}

/* Acciones compactas en campo; cada objetivo táctil conserva al menos 48 px. */
@media(max-width:580px){
  .top{padding:14px 16px;margin-bottom:10px}
  .top h1{margin:4px 0 10px;font-size:22px}
  /* Reserve the same space while autosave changes its message under the iOS keyboard. */
  .savebar{height:4.5em;min-height:4.5em;margin-top:8px;overflow:auto;overflow-anchor:none}
  .top-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .top-actions{margin-top:8px}
  .top-actions button{min-height:48px;padding:8px 10px;font-size:14px;line-height:1.2}
  .zone-picker{margin-bottom:10px}
  .step-bottom{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px;padding-top:12px}
  .step-bottom button{min-height:48px;padding:8px 9px;font-size:15px;line-height:1.2}
  .home-actions .share-launch{min-height:48px;margin-top:0}
}
.flow-message{min-height:1.2em;margin:9px 0 0;color:#965018;font-size:14px;font-weight:700;line-height:1.35}.finish-message{color:#a12f2b!important;font-weight:700;line-height:1.4}
.report-download-link{display:block;min-height:48px;padding:12px 14px;border:2px solid #0c7f71;border-radius:12px;background:#e7f5f0;color:#086b5e;text-align:center;text-decoration:none;font-weight:750}.report-download-link[hidden]{display:none}
#homeBackupBtn{display:block;width:100%;min-height:56px;margin:16px 0 10px;padding:12px 16px;border:2px solid #0c7f71;border-radius:12px;background:#e7f5f0;color:#086b5e;font-size:17px;font-weight:750;text-align:center}#homeBackupBtn[hidden]{display:none}
.ac-reading{border:2px solid #d4e6e2;border-radius:14px;padding:16px;margin:16px 0;background:#f7fbfa}.ac-reading h3{margin:0 0 12px;font-size:19px}.ac-reading .form-section{margin:12px 0}.ac-reading .form-section label{display:block;font-weight:700}.ac-reading .form-section input,.ac-reading .form-section textarea,.ac-reading .form-section select{display:block;margin-top:8px}.ac-reading>button{min-height:48px;margin-top:14px;border:1px solid #a8c4bd;border-radius:10px;background:white;color:#175a50;padding:9px 14px;font-weight:700}
#photoRescuePanel{position:fixed;z-index:9999;left:10px;right:10px;bottom:10px;max-width:560px;max-height:45vh;overflow:auto;margin:auto;padding:16px;border:3px solid #a12f2b;border-radius:14px;background:#fff8f3;color:#58221f;box-shadow:0 8px 32px #0006}#photoRescuePanel strong{display:block;font-size:18px}#photoRescuePanel p{margin:8px 0 12px;line-height:1.35}#photoRescuePanel button{display:block;width:100%;min-height:52px;margin-top:8px;padding:10px;border:0;border-radius:10px;background:#a12f2b;color:white;font-weight:750;text-align:center}
.thumb.has-retire{padding-bottom:48px}.thumb [data-retire-photo]{top:auto;bottom:0;right:0;left:0;width:100%;height:42px;border-radius:8px;background:#8a392a;color:white;font-size:14px;font-weight:750;line-height:1.2}
