/* Shared dialog contract. Only the middle pane may scroll. */
.mark-logo{background:url('mark-os-logo.svg') center/contain no-repeat!important;border-radius:0!important}
.mark-logo>*{display:none!important}
.mini-logo,.module-drawer-mark{object-fit:contain!important;border-radius:0!important}
.drawer-brand,.module-drawer-title{background:#0878ef;color:white!important;border-radius:12px;padding:8px}
.module-drawer,.markos-module-drawer{display:flex!important;flex-direction:column;overflow-y:auto}
.module-version{margin-top:auto;padding:18px 10px 6px;font-size:12px;color:#67738c}
.module-logout{color:#c32542!important;border-top:1px solid #dce8f5!important}
.standard-dialog.modal{box-sizing:border-box;width:min(720px,calc(100vw - 24px))!important;max-width:none!important;max-height:calc(100dvh - 24px)!important;padding:0!important;display:flex;flex-direction:column;overflow:hidden!important;border-radius:20px;color:#080c56;background:#fff;font-size:14px}
.standard-dialog[data-family=client],.standard-dialog[data-family=clinical],.standard-dialog[data-family=consent]{width:min(960px,calc(100vw - 24px))!important}
.standard-dialog[data-family=confirm]{width:min(480px,calc(100vw - 24px))!important}
.standard-header,.standard-footer{flex:none;padding:16px 22px;background:#fff;z-index:1}
.standard-header{border-bottom:1px solid #e5eff9}
.standard-header h2,.standard-header h3{margin:0!important;font-size:22px!important}
.standard-header .desk-info,.standard-header .cashier-info{margin:0;gap:8px}
.standard-header .desk-client-name,.standard-header .cashier-client-name{font-size:18px}
.standard-header .desk-contact-row,.standard-header .desk-date-row,.standard-header .cashier-date-row{font-size:14px}
.standard-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:12px 22px;scrollbar-gutter:stable}
.standard-body p{font-size:14px!important;line-height:1.45;margin:8px 0}
.standard-body h4{margin:10px 0}
.standard-dialog label{font-size:13px!important;margin:8px 0!important;gap:5px}
.standard-dialog input,.standard-dialog select{box-sizing:border-box;width:100%;height:40px!important;padding:8px 10px!important;font-size:14px;border:1px solid #c7dcf2;border-radius:9px}
.standard-dialog input[type=checkbox]{width:auto;height:auto!important}
.standard-dialog textarea{box-sizing:border-box;width:100%;min-height:60px!important;height:72px;padding:10px;border:1px solid #c7dcf2;border-radius:9px;font-size:14px}
.standard-dialog .note-editor{height:clamp(130px,29dvh,400px);line-height:1.5}
.standard-footer{border-top:1px solid #e5eff9;padding-top:10px;padding-bottom:12px}
.standard-footer .modal-actions{display:flex!important;flex-wrap:nowrap!important;gap:10px;margin:0!important;padding:0!important;position:static!important}
.standard-footer button{flex:1;min-height:42px;border:1px solid #c7dcf2;border-radius:10px;padding:9px 12px;font:inherit;font-weight:750;background:white;cursor:pointer}
.standard-footer .confirm,.standard-footer .save{background:#0878ef;color:#fff;border-color:#0878ef}
.standard-footer .desk-enter{margin-bottom:8px}
.standard-back{border:0;background:transparent;color:#0878ef;cursor:pointer;padding:0 0 8px;font:inherit}
.standard-body .cashier-summary{grid-template-columns:repeat(5,minmax(0,1fr));margin:2px 0 12px}
.standard-body .cashier-summary>div{text-align:left;padding:10px}
.standard-body .cashier-summary small{font-size:13px}.standard-body .cashier-summary strong{font-size:18px}
.standard-body .booking-desk-actions button{border:1px solid #c7dcf2;border-radius:9px;background:#f7fbff;color:#080c56;font:inherit;min-height:42px}
.standard-body .booking-desk-actions button:disabled{color:#8995a4;background:#f0f3f7}
.standard-body .profile-basic{grid-template-columns:repeat(2,minmax(0,1fr))}
.standard-dialog iframe{display:block;border:0;width:100%;height:min(680px,72dvh)}
.standard-dialog[data-family=client]:has(iframe) .standard-body{padding:0;overflow:hidden}
.shared-settings-frame{position:fixed;inset:0;z-index:100;border:0;width:100%;height:100dvh;background:rgba(0,20,54,.42)}
.settings-host,.settings-host body{background:transparent!important;overflow:hidden!important}
.settings-host body>*:not(#modalRoot):not(script):not(style){display:none!important}
.settings-host #modalRoot .modal-backdrop{background:rgba(0,20,54,.42)}
.shared-dark{background:#101a2b!important;color:#e8f0ff}
.shared-dark .panel,.shared-dark main>section,.shared-dark .standard-dialog,.shared-dark .standard-header,.shared-dark .standard-footer{background:#18263a!important;color:#e8f0ff}
.shared-dark .standard-body input,.shared-dark .standard-body select,.shared-dark .standard-body textarea{background:#223249;color:#e8f0ff}
.shared-top-actions{display:flex;align-items:center;gap:4px}.shared-top-actions button{background:transparent;border:0;color:white;width:36px;height:40px;font-size:24px;cursor:pointer}
@media(min-width:1024px) and (pointer:fine){
 html[data-markos-page=todays],html[data-markos-page=workstation]{height:100%;overflow:hidden}
 html:is([data-markos-page=todays],[data-markos-page=workstation]) body{height:100dvh;overflow:hidden}
 html:is([data-markos-page=todays],[data-markos-page=workstation]) .app-shell{width:100%!important;max-width:1600px;margin:auto;min-height:0;height:100dvh;padding:0 12px 62px;display:flex;flex-direction:column}
 html:is([data-markos-page=todays],[data-markos-page=workstation]) .topbar{min-height:64px;flex:none;padding:6px 12px;border-radius:0 0 16px 16px}
 html:is([data-markos-page=todays],[data-markos-page=workstation]) main{flex:1;min-height:0;padding:8px 0;gap:8px}
 html[data-markos-page=todays] main{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:minmax(168px,.85fr) minmax(195px,1fr) minmax(178px,1fr)}
 html[data-markos-page=todays] main>section{min-height:0;min-width:0;padding:8px 10px}
 html[data-markos-page=todays] .calendar-panel{display:flex;flex-direction:column}
 html[data-markos-page=todays] .calendar-grid{flex:1;min-height:0;max-height:none;grid-auto-rows:45px;overflow:auto}
 html[data-markos-page=todays] .calendar-grid .day{height:45px}
 html[data-markos-page=todays] .calendar-toolbar{flex:none}
 html[data-markos-page=todays] .appointments-panel{grid-column:1/-1;display:flex;flex-direction:column}
 html[data-markos-page=todays] .card-scroller{flex:1;min-height:0;overflow:auto;align-items:start}
 html[data-markos-page=todays] .records-panel,html[data-markos-page=todays] .closing-panel{display:flex;flex-direction:column}
 html[data-markos-page=todays] #recordList,html[data-markos-page=todays] #closingContent{min-height:0;overflow:auto;flex:1}
 html[data-markos-page=todays] .closing-metrics{grid-template-columns:repeat(5,minmax(0,1fr))!important;display:grid}
 html[data-markos-page=todays] .metric{padding:4px;min-width:0;border:0;border-right:1px solid #d4e6f5;border-radius:0}
 html[data-markos-page=todays] .metric strong{font-size:20px}
 html[data-markos-page=todays] .bottom-nav{height:56px;min-height:0;padding:4px 12px}
 html[data-markos-page=workstation] .app-shell{padding-bottom:80px}
 html[data-markos-page=workstation] .topbar{grid-template-columns:auto 1px minmax(0,1fr) auto}
 html[data-markos-page=workstation] main{grid-template-rows:110px 96px minmax(0,1fr)}
 html[data-markos-page=workstation] main>section{min-height:0;min-width:0}
 html[data-markos-page=workstation] .patient-card{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto auto;column-gap:7px;min-width:170px;text-align:left}
 html[data-markos-page=workstation] .patient-top{grid-column:1/-1}.patient-card .patient-avatar{grid-row:2/4}
 html[data-markos-page=workstation] .patient-pay{grid-column:1/-1}
 html[data-markos-page=workstation] .current-patient{padding:6px 12px}
 html[data-markos-page=workstation] .large-avatar{width:56px;height:56px;font-size:32px}
 html[data-markos-page=workstation] .clinical-panel{display:grid;grid-template-rows:42px minmax(0,1fr) auto auto;overflow:hidden}
 html[data-markos-page=workstation] .stage-tabs button{min-height:0;padding:6px}
 html[data-markos-page=workstation] .clinical-workspace{min-height:0;height:100%;grid-template-columns:65px minmax(0,1fr) 230px;overflow:hidden}
 html[data-markos-page=workstation] .tool-rail{overflow:auto;padding:4px}
 html[data-markos-page=workstation] .tool-rail button{min-height:44px;padding:3px;margin-bottom:4px}
 html[data-markos-page=workstation] .body-map-wrap{min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:4px}
 html[data-markos-page=workstation] .body-map{height:0;min-height:0;flex:1;width:100%;max-width:none}
 html[data-markos-page=workstation] .selection-panel{min-height:0;display:flex;flex-direction:column}
 html[data-markos-page=workstation] .selection-list{min-height:0;max-height:none;overflow:auto;flex:1}
 html[data-markos-page=workstation] .entry-panel{padding:5px 8px;max-height:145px;overflow:auto}
 html[data-markos-page=workstation] .stage-records{max-height:60px;overflow:auto;padding:3px 8px}
 html[data-markos-page=workstation] .timer-bar{height:76px;min-height:0;padding:5px 20px;grid-template-columns:auto 1fr auto}
 .standard-dialog[data-family=cashier] .standard-body{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
 .standard-dialog[data-family=cashier] .standard-body>.cashier-summary,.standard-dialog[data-family=cashier] .standard-body>p,.standard-dialog[data-family=cashier] .standard-body>details{grid-column:1/-1}
 .standard-dialog[data-family=cashier] .standard-body>details{max-height:110px;overflow:auto}
}
@media(max-width:600px){
 .standard-header,.standard-footer{padding:12px}.standard-body{padding:10px 12px}
 .standard-dialog{max-height:calc(100dvh - 12px)!important}
 .standard-header .desk-title-row,.standard-header .cashier-title-row{gap:8px;flex-wrap:wrap}
 .standard-header .desk-date-row,.standard-header .cashier-date-row{gap:6px;flex-wrap:wrap}
 .standard-body .cashier-summary>div{padding:7px 4px}.standard-body .cashier-summary small{font-size:10px}.standard-body .cashier-summary strong{font-size:14px}
 .standard-body .profile-basic{grid-template-columns:1fr}
 .standard-header h2,.standard-header h3{font-size:19px!important}
}
