/* V53 Operations Dashboard enhancements */
.v53-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v53-kpi{background:#fff;border:1px solid #d7e2e5;border-radius:14px;padding:14px;cursor:pointer;box-shadow:0 4px 16px #16323a10}.v53-kpi b{display:block;font-size:28px;color:#082f49}.v53-kpi span{font-size:12px;color:#60757b}.v53-kpi.warn{border-color:#f5b041;background:#fffaf1}.v53-kpi.danger{border-color:#dc6a61;background:#fff5f4}.v53-kpi.ok{border-color:#5bbf89;background:#f4fff8}.v53-pipeline{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.v53-stage{border:1px solid #d9e5e8;border-radius:12px;padding:10px;text-align:center;background:#f8fbfb}.v53-stage strong{display:block;font-size:22px}.v53-alert{padding:10px 12px;border-radius:10px;background:#fff8e8;border:1px solid #f0cb73;margin:6px 0}.v53-alert.red{background:#fff1f0;border-color:#e19a94}.v53-search{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px}.v53-table{width:100%;border-collapse:collapse;font-size:12px}.v53-table th,.v53-table td{border:1px solid #dbe5e7;padding:7px;vertical-align:top}.v53-table th{background:#eff6f7;position:sticky;top:0}.v53-status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700}.st-awaiting_assignment{background:#fff3cd;color:#7a5a00}.st-needs_execution{background:#dff1ff;color:#0b5d8b}.st-returned_for_review{background:#e8e2ff;color:#4d3c91}.st-completed{background:#daf5e3;color:#17633a}.st-billing{background:#ffe9d8;color:#8c4612}.v53-notify{position:relative}.v53-notify .dot{position:absolute;right:-6px;top:-7px;background:#c0392b;color:white;border-radius:999px;min-width:18px;height:18px;line-height:18px;font-size:10px;text-align:center}.v53-panel{position:fixed;right:18px;top:78px;width:min(380px,90vw);max-height:70vh;overflow:auto;background:#fff;border:1px solid #ccdadd;border-radius:14px;box-shadow:0 16px 50px #0003;z-index:9999;padding:12px}.v53-panel.hidden{display:none}.v53-modal{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;z-index:10000;padding:15px}.v53-modal.hidden{display:none}.v53-modal-card{background:#fff;width:min(900px,96vw);max-height:90vh;overflow:auto;border-radius:16px;padding:16px}.v53-timeline{border-left:3px solid #0c6171;margin-left:10px;padding-left:15px}.v53-event{padding:8px 0;border-bottom:1px dashed #d7e2e5}.v53-event small{color:#71858b}.v53-offline{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;background:#713c10;color:#fff;padding:8px 14px;border-radius:999px;z-index:10001;font-size:12px}.v53-offline.hidden{display:none}@media(max-width:800px){.v53-grid{grid-template-columns:repeat(2,1fr)}.v53-pipeline{grid-template-columns:repeat(2,1fr)}.v53-search{grid-template-columns:1fr}.v53-table{font-size:11px}}
/* V54 performance + input polish */
input[type=number].no-spinner::-webkit-inner-spin-button,input[type=number].no-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
input[type=number].no-spinner{-moz-appearance:textfield}
#sLat[readonly],#sLng[readonly]{background:#f4f8f9;color:#244b5d;font-weight:700}
.v54-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#0d5b68;color:#fff;padding:11px 18px;border-radius:10px;z-index:99999;opacity:0;pointer-events:none;transition:.18s;box-shadow:0 8px 25px #0003;font-weight:700}.v54-toast.show{opacity:1;transform:translate(-50%,0)}
img.thumb{content-visibility:auto}

/* V59 field photo controls */
.v59-return-class-card #v57ReturnClassBox{margin-top:0!important}
.v59-photo-group{width:100%;margin:4px 0 8px}
.v59-photo-label{margin-bottom:5px}
.v59-photo-row{display:flex;flex-wrap:wrap;gap:9px;align-items:flex-start}
.v59-photo-wrap{position:relative;display:inline-block;border-radius:10px;overflow:visible}
.v59-photo-wrap .thumb{display:block;margin:0}
.v59-photo-delete{position:absolute;top:-8px;right:-8px;width:27px;height:27px;border:0;border-radius:50%;background:#c62828;color:white;font-size:20px;line-height:25px;font-weight:800;cursor:pointer;box-shadow:0 2px 8px #0004;z-index:4}
.v59-photo-delete:hover{transform:scale(1.08)}
.v59-photo-wrap.readonly{outline:1px solid #d7e3e8}
.v59-billing-btn:disabled{opacity:.6;cursor:not-allowed}

/* V67 mobile controls / language / map / survey lock */
#v67TopControls{position:fixed;top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));z-index:100020;display:none;gap:6px;direction:ltr}#v67TopControls.show{display:flex}#v67TopControls button{border:1px solid #cbd9df;border-radius:10px;background:#fff;color:#07325b;font-weight:900;padding:8px 10px;box-shadow:0 3px 12px rgba(0,0,0,.12)}#v67Logout{color:#bd3d16!important;background:#fff7f2!important}
.v67-lang{margin:8px 0 13px;padding:8px;border:1px solid #d7e2e6;border-radius:12px;background:#f7fafb;text-align:center}.v67-lang label{display:block;font-size:10px;font-weight:900;color:#5d7180;margin-bottom:6px}.v67-lang>div{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.v67-lang button{height:34px;border:1px solid #cbd9df;background:#fff;border-radius:8px;font-weight:800;color:#244a63}.v67-lang button.active{background:#0b7c80;color:#fff;border-color:#0b7c80}
.v67-front-photo{border:2px solid #f0a23a!important;background:#fff9ed!important}.v67-front-label{font-weight:900;color:#874d00;margin-bottom:5px}.v67-front-label b{color:#d92d20}.v67-disabled{opacity:.55;pointer-events:none}.v67-survey-locked{position:relative;opacity:.58}.v67-lockmsg{position:sticky;top:7px;z-index:20;padding:10px;margin-bottom:8px;border:2px solid #f0a23a;background:#fff7e8;border-radius:10px;color:#8a4b00;font-weight:900;text-align:center}.v67-newstation{width:100%;margin-top:8px!important;border:2px solid #0f8b8d!important;color:#0b7073!important;font-weight:900!important}
.v67-mapmodal{display:none;position:fixed;inset:0;z-index:100100;background:rgba(7,24,38,.68);padding:max(10px,env(safe-area-inset-top)) 10px 10px}.v67-mapmodal.open{display:flex;align-items:center;justify-content:center}.v67-mappanel{width:min(96vw,900px);height:min(90vh,760px);background:#fff;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.35)}.v67-maphead{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#07325b;color:#fff;gap:10px}.v67-maphead button{border:0;border-radius:8px;padding:7px 10px;background:#fff;color:#07325b;font-weight:900}.v67-mapmodal iframe{border:0;width:100%;flex:1;min-height:380px}.v67-mapmodal #v67MapMeta{display:flex;gap:8px;flex-wrap:wrap;padding:7px 10px;background:#eef7f7}.v67-mapmodal #v67MapMeta span{padding:4px 8px;border-radius:8px;background:#fff;border:1px solid #d4e2e5;font-weight:800;font-size:12px}
.v67-order-note{padding:10px;border-radius:10px;background:#eef7f7;color:#075a63;font-weight:900;margin-bottom:8px}.v67-manage-row{grid-template-columns:auto 1fr 100px auto!important}.v67-order{display:flex;align-items:center;gap:4px}.v67-order>span{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#0b7c80;color:#fff;font-weight:900}.v67-order button{width:30px;height:30px;border:1px solid #cad9df;border-radius:7px;background:#fff;color:#07325b;font-weight:900}.v67-order button:disabled{opacity:.3}
@media(max-width:700px){.workflow-nav{display:none!important}body.workflow-logged-in{padding-bottom:12px!important}.top{padding-top:54px!important}#v67TopControls.show{display:flex}.v67-manage-row{grid-template-columns:1fr!important}.v67-order{justify-content:flex-start}.v67-mappanel{width:100%;height:94vh;border-radius:12px}.v67-mapmodal{padding:6px}.v67-mapmodal iframe{min-height:65vh}}
/* V68 language selector */
#v68LanguagePicker{position:fixed;top:14px;left:14px;z-index:10050;background:#fff;border:1px solid #cbdde7;border-radius:10px;padding:5px;box-shadow:0 4px 18px rgba(0,0,0,.10)}
#v68LanguagePicker select{height:36px;min-width:115px;border:0;background:#fff;color:#073b63;font-weight:800;font-size:13px;outline:none;cursor:pointer}
body[data-lang="en"]{direction:ltr} body[data-lang="ar"],body[data-lang="ur"]{direction:rtl}
body[data-lang="en"] #v68LanguagePicker,body[data-lang="ar"] #v68LanguagePicker,body[data-lang="ur"] #v68LanguagePicker{direction:ltr}
@media(max-width:600px){#v68LanguagePicker{top:8px;left:8px;padding:3px}#v68LanguagePicker select{height:32px;min-width:100px;font-size:12px}}

/* V70: resizable in-app map controls */
.v67-maphead{flex-wrap:wrap}
.v70-map-controls{display:flex;gap:6px;align-items:center;margin-inline-start:auto}
.v70-map-controls button{min-width:38px;white-space:nowrap}
.v70-map-controls .v70-start{background:#0b8b87!important;color:#fff!important;padding-inline:15px!important}
.v70-running{background:#e8f7ef!important;color:#176b45!important;border-color:#b9e3cc!important}
.v67-mappanel{transition:width .18s ease,height .18s ease,max-width .18s ease,max-height .18s ease}
.v67-mappanel.v70-map-sm{width:min(72vw,620px)!important;height:min(62vh,500px)!important}
.v67-mappanel.v70-map-md{width:min(84vw,760px)!important;height:min(76vh,630px)!important}
.v67-mappanel.v70-map-lg{width:min(96vw,1050px)!important;height:min(92vh,820px)!important}
.v67-mappanel.v70-map-full{width:calc(100vw - 12px)!important;height:calc(100vh - 12px)!important;max-width:none!important;max-height:none!important;border-radius:8px!important}
@media(max-width:700px){
 .v70-map-controls{order:3;width:100%;justify-content:center;margin:0}
 .v70-map-controls button{font-size:13px;padding:7px 9px!important}
 .v67-mappanel.v70-map-sm{width:94vw!important;height:56vh!important}
 .v67-mappanel.v70-map-md{width:97vw!important;height:72vh!important}
 .v67-mappanel.v70-map-lg{width:100%!important;height:94vh!important}
 .v67-mappanel.v70-map-full{width:100%!important;height:100%!important;border-radius:0!important}
}
