/* Requested page corrections; scoped ID wins over legacy styles. */
body#mcTypography.mc-or #opsPageOverlay{position:fixed!important;inset:0!important;padding:20px!important;overflow:hidden!important;align-items:center!important}
body#mcTypography.mc-or #opsPageOverlay .opsPageModal{display:flex!important;flex-direction:column!important;max-height:calc(100dvh - 40px)!important;height:auto!important;overflow:hidden!important;min-height:0!important;padding:0!important}
body#mcTypography.mc-or #opsPageOverlay :is(.opsPageHead,.opsPageActions){flex:0 0 auto!important}
body#mcTypography.mc-or #opsPageBody{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;touch-action:pan-y!important;scrollbar-gutter:stable;padding:20px!important}
/* Invoice uploader: a clear paper illustration, ample spacing and one primary action. */
body#mcTypography.suite-ocr #upload{width:min(740px,100%)!important;max-width:740px!important;margin:36px auto!important;padding:20px!important;border:1px solid #e1ebf1!important;border-radius:24px!important;background:#fff!important;box-shadow:0 12px 40px #173c6210!important}
body#mcTypography.suite-ocr :is(#upload .mc-upload-zone,#uploadModal .dropzone){display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;min-height:330px!important;padding:28px 24px!important;border:1.5px dashed #95cde4!important;border-radius:18px!important;background:linear-gradient(135deg,#f0f9ff,#fff 65%,#fff9e9)!important;text-align:center!important;box-shadow:none!important}
body#mcTypography.suite-ocr :is(#upload .mc-upload-symbol,#uploadModal .ui-upload-illustration){display:block!important;width:92px!important;height:92px!important;padding:0!important;margin:0 0 4px!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;color:#128ac3!important}
body#mcTypography.suite-ocr :is(#upload .mc-upload-symbol,#uploadModal .ui-upload-illustration)>svg{width:92px!important;height:92px!important;max-width:100%!important;fill:none!important;stroke:none!important}
body#mcTypography.suite-ocr :is(#upload .mc-upload-title,#uploadModal .dropzone>strong){font-size:23px!important;line-height:1.35!important;color:#23485e!important}
body#mcTypography.suite-ocr :is(#upload .mc-upload-hint,#uploadModal .dropzone>p){font-size:16px!important;line-height:1.55!important;color:#657f8f!important;margin:0!important}
body#mcTypography.suite-ocr .mc-invoice-picker{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-height:46px!important;width:auto!important;margin:4px 0!important;padding:11px 22px!important;border:0!important;border-radius:12px!important;background:#128ac3!important;color:white!important;font-size:16px!important;font-weight:700!important;box-shadow:0 4px 12px #128ac325!important}
body#mcTypography.suite-ocr .mc-invoice-picker svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body#mcTypography.suite-ocr #upload .mc-upload-formats{display:flex!important;gap:7px!important;margin:2px 0 0!important}
body#mcTypography.suite-ocr #upload .mc-upload-formats>span{font-size:12px!important;padding:3px 10px!important;border:1px solid #dce8ef!important;border-radius:6px!important;color:#69818e!important;background:#fff!important}
body#mcTypography.suite-ocr #upload .mc-upload-steps{margin:18px 0 0!important;padding:0!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:12px!important;font-size:14px!important;color:#6e8492!important}
body#mcTypography.suite-ocr #upload .mc-upload-zone.is-dragover,body#mcTypography.suite-ocr #uploadModal .dropzone.is-dragover{border-color:#128ac3!important;background:#eaf7ff!important}
/* Explicit send SVG avoids duplicate pseudo-icons and font glyph substitutions. */
body#mcTypography.suite-vlm #sendBtn{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;border-radius:13px!important;background:#128ac3!important;color:#fff!important;line-height:1!important;font-size:16px!important}
body#mcTypography.suite-vlm #sendBtn::before,body#mcTypography.suite-vlm #sendBtn::after{content:none!important;display:none!important}
body#mcTypography.suite-vlm #sendBtn svg{display:block!important;width:23px!important;height:23px!important;fill:none!important;stroke:none!important}
body#mcTypography.suite-vlm .rightPanel{overflow-y:auto!important;min-height:0!important}
body#mcTypography.suite-vlm .uploadedImagesBox{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;min-height:340px!important;margin:8px 12px 16px!important;border:1px solid #dfebf2!important;border-radius:14px!important;background:#f8fbfd!important;overflow:hidden!important}
body#mcTypography.suite-vlm .uploadedImagesBox .galleryTitle{flex:0 0 auto!important;padding:14px 14px 10px!important}
body#mcTypography.suite-vlm .uploadedImagesBox .gallery{flex:1 1 auto!important;height:290px!important;min-height:290px!important;max-height:440px!important;overflow-y:auto!important;padding:0 12px 12px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:128px!important;align-content:start!important;gap:10px!important}
body#mcTypography.suite-vlm .uploadedImagesBox .thumb{height:128px!important;min-width:0!important}
/* Postoperative results: give explanations and recommendations the wider column. */
body#mcTypography.suite-postop .resultLowerGrid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)!important;align-items:start!important;gap:18px!important}
body#mcTypography.suite-postop .postopReasonPanel{min-height:520px!important;height:auto!important;max-height:none!important}
body#mcTypography.suite-postop #reasonList{--mc-clinical-row-height:78px;--mc-clinical-row-gap:7px;max-height:none!important;min-height:0!important;height:auto!important;overflow:visible!important;padding:14px!important;gap:7px!important}
body#mcTypography.suite-postop #reasonList :is(.mc-clinical-row,.reasonCard){height:auto!important;min-height:78px!important;max-height:none!important;padding:8px 12px!important;gap:4px!important;grid-template-rows:auto auto 16px!important;align-content:center!important}
body#mcTypography.suite-postop #reasonList :is(.reasonText,.deltaText){margin-top:2px!important}
body#mcTypography.suite-postop .aiRiskSummaryBox{grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important}
body#mcTypography.suite-postop .combinedRiskBody{padding:16px!important}
@media(max-width:950px){body#mcTypography.suite-postop .resultLowerGrid{grid-template-columns:1fr!important}body#mcTypography.suite-postop .postopReasonPanel{min-height:0!important}}
@media(max-width:600px){body#mcTypography.suite-ocr #upload{padding:12px!important}body#mcTypography.suite-ocr :is(#upload .mc-upload-zone,#uploadModal .dropzone){padding:22px 14px!important;min-height:300px!important}body#mcTypography.mc-or #opsPageOverlay{padding:10px!important}body#mcTypography.mc-or #opsPageOverlay .opsPageModal{max-height:calc(100dvh - 20px)!important}}

/* Definite modal height gives the flex scroll body a real, finite viewport. */
body#mcTypography.mc-or #opsPageOverlay .opsPageModal.roomScheduleMode{height:min(780px,calc(100dvh - 40px))!important;max-height:calc(100dvh - 40px)!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
body#mcTypography.mc-or #opsPageOverlay .opsPageModal.roomScheduleMode #opsPageBody{display:block!important;flex:1 1 0!important;min-height:0!important;overflow-y:scroll!important;overflow-x:hidden!important;max-height:none!important;position:relative!important}
body#mcTypography.mc-or #odDoctorRows td:last-child{white-space:nowrap!important}
body#mcTypography.mc-or .od-assign-button{margin-left:8px!important}
body#mcTypography.mc-or .od-assign-form{display:grid;gap:10px}
body#mcTypography.mc-or .od-assign-form :is(input,select){width:100%;min-height:46px;border:1px solid #cbdde8;border-radius:10px;padding:10px 12px;background:#fff;font:inherit}
body#mcTypography.mc-or .od-assign-form label{font-weight:700;color:#274b61}
body#mcTypography.mc-or .od-assign-preview{padding:16px;border:1px solid #dceaf1;border-radius:12px;background:#f3f9fc}
body#mcTypography.mc-or #odAssignError{color:#ac3c3c;margin:0}
body#mcTypography.mc-or #odAssignSave:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:600px){body#mcTypography.mc-or #opsPageOverlay .opsPageModal.roomScheduleMode{height:calc(100dvh - 20px)!important;max-height:calc(100dvh - 20px)!important}}
