/* VIOS professional workspace: one shared visual language, September 2026. */
:root{--gold:#2563eb;--gold2:#1d4ed8;--gold-soft:#eff6ff;--acc:#2563eb;--acc-deep:#12365b;--accent:#2563eb;--border:#dbe5f1;--line:#dbe5f1;--ink:#142d4e;--muted:#5b6f89;--paper:#fff;--bg:#f5f8fc;}
body.professional-mode{--vios-professional-header:76px;background:#f5f8fc!important;color:#142d4e!important;font-family:Inter,Arial,sans-serif!important;font-size:16px;line-height:1.5;}
body.professional-mode *,body.professional-mode *::before,body.professional-mode *::after{box-sizing:border-box;}
body.professional-mode .wrap{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
body.professional-mode .topbar{position:sticky!important;top:0!important;z-index:150!important;min-height:76px!important;padding:10px 24px!important;background:#fff!important;border:0!important;border-bottom:1px solid #dbe5f1!important;border-radius:0!important;box-shadow:none!important;color:#142d4e!important;gap:16px;}
body.professional-mode .topbar .brand{gap:12px!important;}
body.professional-mode .topbar .logo.viosLogoAsset{width:80px!important;height:56px!important;filter:none!important;object-fit:contain;}
body.professional-mode .brand h1{font-family:inherit!important;font-size:17px!important;letter-spacing:.04em!important;color:#12365b!important;}
body.professional-mode #appSubtitle{font-size:13px!important;color:#5b6f89!important;letter-spacing:0!important;}
body.professional-mode .topbar>.row{gap:12px!important;margin:0!important;align-items:center;}
body.professional-mode #pillSession{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:7px 12px!important;border:1px solid #dbe5f1!important;background:#f8fbff!important;border-radius:8px!important;color:#142d4e!important;font-size:14px!important;}
body.professional-mode #pillSession small{font-size:12px;color:#5b6f89!important;}
body.professional-mode .grid{display:grid!important;grid-template-columns:244px minmax(0,1fr)!important;gap:0!important;margin:0!important;align-items:start;}
body.professional-mode .mayoSidebar{position:sticky!important;top:76px!important;height:calc(100dvh - 76px)!important;min-height:0!important;overflow:auto!important;margin:0!important;padding:22px 14px!important;border:0!important;border-right:1px solid #dbe5f1!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;}
body.professional-mode .mayoSidebarTop{display:block!important;margin:0 8px 18px!important;padding:0 0 18px!important;border-bottom:1px solid #e5edf7!important;}
body.professional-mode .mayoSidebarTop .publicBrandLogo{display:none!important;}
body.professional-mode .mayoSidebarTop h2{font-size:14px!important;font-family:inherit!important;font-weight:650!important;letter-spacing:0!important;color:#5b6f89!important;margin:0!important;}
body.professional-mode .mayoSidebarTop p,body.professional-mode #publicNavHint,body.professional-mode .mayoSidebar>.hr,body.professional-mode #publicNavTitle{display:none!important;}
body.professional-mode #publicNavBox{border:0!important;background:none!important;padding:0!important;}
body.professional-mode #publicNavList,body.professional-mode .publicNavSection,body.professional-mode #privatePanelActions{display:flex;flex-direction:column;gap:4px!important;padding:0!important;margin:0!important;}
body.professional-mode .publicNavSectionLabel{font-size:12px!important;font-weight:600!important;color:#74849a!important;margin:16px 12px 5px!important;}
body.professional-mode #privatePanelActions{margin-top:12px!important;}
body.professional-mode #privatePanelActions>.btn,body.professional-mode .publicNavBtn{width:100%!important;min-height:44px!important;display:flex;align-items:center;justify-content:flex-start!important;gap:10px;padding:11px 12px!important;background:transparent!important;color:#334b68!important;border:1px solid transparent!important;border-radius:8px!important;font-family:inherit!important;font-size:14px!important;font-weight:500!important;text-align:left!important;box-shadow:none!important;letter-spacing:0!important;line-height:1.4!important;white-space:normal!important;}
body.professional-mode #privatePanelActions>.btn:hover,body.professional-mode .publicNavBtn:hover{background:#f2f7ff!important;color:#1d4ed8!important;transform:none!important;}
body.professional-mode #privatePanelActions>.btn.active,body.professional-mode .publicNavBtn.active{background:#eaf2ff!important;color:#1d4ed8!important;font-weight:650!important;}
.pro-nav-icon{display:inline-flex;width:19px;flex:0 0 19px;align-items:center;justify-content:center;}.pro-nav-icon svg{width:19px;height:19px;}
body.professional-mode .rightCol{position:static!important;height:auto!important;overflow:visible!important;min-width:0;padding:0!important;background:#f5f8fc!important;}
body.professional-mode .rightCol>.card{min-height:calc(100dvh - 76px)!important;padding:30px clamp(18px,3vw,44px)!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#f5f8fc!important;}
body.professional-mode h2,body.professional-mode h3,body.professional-mode h4{font-family:inherit!important;letter-spacing:-.025em!important;color:#142d4e!important;line-height:1.25!important;}
body.professional-mode .rightCol h2{font-size:28px!important;font-weight:700!important;margin:0 0 24px!important;}
body.professional-mode .rightCol h3{font-size:18px!important;font-weight:650!important;margin:0 0 14px!important;}
body.professional-mode p,body.professional-mode .lead{font-family:inherit!important;color:#5b6f89;line-height:1.6;font-size:14px;}
body.professional-mode label{display:block;margin:0 0 6px!important;font-family:inherit!important;font-size:14px!important;font-weight:550!important;color:#334b68!important;letter-spacing:0!important;line-height:1.4;}
body.professional-mode input:not([type=checkbox]):not([type=radio]),body.professional-mode select,body.professional-mode textarea{font:400 14px/1.5 Inter,Arial,sans-serif!important;min-height:42px;padding:10px 12px!important;color:#142d4e!important;background:#fff!important;border:1px solid #cfdaea!important;border-radius:8px!important;box-shadow:none!important;max-width:100%;}
body.professional-mode input::placeholder,body.professional-mode textarea::placeholder{color:#7b8ba1!important;}
body.professional-mode :is(input,select,textarea,button,a,summary):focus-visible{outline:3px solid #93baff!important;outline-offset:2px;}
body.professional-mode input[type=checkbox],body.professional-mode input[type=radio]{accent-color:#2563eb;min-width:17px;min-height:17px;}
body.professional-mode .btn,body.professional-mode .native-dialog button,body.professional-mode .pro-button{min-height:40px!important;padding:9px 15px!important;border:1px solid #cfdaea!important;border-radius:8px!important;background:#fff!important;color:#244469!important;font:550 14px/1.4 Inter,Arial,sans-serif!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important;cursor:pointer;transition:background .15s,border-color .15s!important;transform:none!important;}
body.professional-mode .btn:hover,body.professional-mode .native-dialog button:hover{background:#eff6ff!important;border-color:#93baff!important;}
body.professional-mode .btn.primary,body.professional-mode .btn.good,body.professional-mode .pro-button.primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;}
body.professional-mode .btn.primary:hover,body.professional-mode .btn.good:hover{background:#1d4ed8!important;border-color:#1d4ed8!important;}
body.professional-mode .btn.bad{background:#fff!important;border-color:#efc2c2!important;color:#b42336!important;}
body.professional-mode .btn.bad:hover{background:#fff1f2!important;}
body.professional-mode .btn:disabled{opacity:.5!important;cursor:wait;}
body.professional-mode .actions{gap:10px!important;flex-wrap:wrap;}
body.professional-mode .row{gap:18px!important;margin-bottom:18px;}
body.professional-mode .rightCol :is(.card,.gridCard,.gridDetails,.collapsibleCard,.structPanel,.contribBox,.signupAdminCard,.kpiBox,.statCard){border:1px solid #dbe5f1!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;}
body.professional-mode :is(.structPanel,.contribBox,.signupAdminCard){padding:22px!important;}
body.professional-mode .structStack{gap:18px!important;}
body.professional-mode .collapsibleToggle{padding:20px 22px!important;border-radius:12px!important;background:#fff!important;color:#142d4e!important;}
body.professional-mode .collapsibleTitle{font-family:inherit!important;font-size:17px!important;font-weight:650!important;color:#142d4e!important;}
body.professional-mode .collapsibleMeta{font-size:14px!important;font-weight:400!important;color:#5b6f89!important;margin-top:5px;}
body.professional-mode .collapsibleBody{padding:0 20px 20px!important;}
body.professional-mode .collapsibleBody>.structPanel{border:0!important;padding:10px 0!important;}
body.professional-mode .hr{border-color:#dbe5f1!important;background:#dbe5f1!important;}
body.professional-mode .tableWrap{max-width:100%;overflow:auto;border:1px solid #dbe5f1!important;border-radius:10px!important;background:#fff!important;}
body.professional-mode table{font-family:inherit!important;font-size:14px!important;background:#fff!important;}
body.professional-mode th{font:600 13px/1.5 Inter,Arial,sans-serif!important;text-transform:none!important;letter-spacing:0!important;color:#526b8b!important;background:#f5f8fd!important;border-color:#dbe5f1!important;padding:12px!important;}
body.professional-mode td{font-size:14px!important;border-color:#e4ecf6!important;padding:11px!important;}
body.professional-mode tbody tr:hover td{background-color:#f7faff;}
body.professional-mode :is(.msg,.native-note,.native-demo,.native-status,.native-feedback){font:400 14px/1.6 Inter,Arial,sans-serif!important;border-radius:8px!important;}
body.professional-mode :is(.msg.warn,.msg.good,.native-note,.native-demo){background:#eff6ff!important;color:#234e80!important;border:1px solid #c9dcfa!important;padding:12px 16px!important;}
body.professional-mode .msg.bad{background:#fff1f2!important;color:#9f2033!important;border:1px solid #efc2c2!important;}
body.professional-mode :is(.hint,.subtle,.muted,.small,.note){font-size:13px!important;line-height:1.5!important;}
body.professional-mode .kpi{gap:12px!important;}
body.professional-mode .kpi>div{background:#fff!important;border:1px solid #dbe5f1!important;border-radius:10px!important;padding:14px 18px!important;box-shadow:none!important;color:#142d4e!important;}
body.professional-mode .kpi :is(b,strong){color:#1d4ed8!important;}
body.professional-mode :is(.wchip,.chip,.tag,.badge){border-color:#cfdef3!important;background:#f0f6ff!important;color:#285182!important;border-radius:6px!important;box-shadow:none!important;}
body.professional-mode .native-dialog{padding:24px!important;border:1px solid #dbe5f1!important;border-radius:14px!important;background:#fff!important;color:#142d4e!important;box-shadow:0 24px 80px #142d4e26!important;max-width:min(1050px,95vw);max-height:90dvh;}
body.professional-mode .native-dialog::backdrop{background:#10294a66;backdrop-filter:blur(3px);}
body.professional-mode .native-dialog h2{font:700 23px/1.3 Inter,Arial,sans-serif!important;}
body.professional-mode .native-toolbar{padding:14px 0;gap:8px!important;border-bottom:1px solid #dbe5f1;}
body.professional-mode .native-item{border-color:#dbe5f1!important;}
body.professional-mode :is(.viosActionScreen,.srModal,.modalCard,.structReportFullscreen){background:#fff!important;border:1px solid #dbe5f1!important;border-radius:12px!important;box-shadow:none!important;}
body.professional-mode :is(.viosActionHeader,.viosActionActions,.srModalRow,.modalTop){background:#f5f8ff!important;border-color:#dbe5f1!important;padding:20px 24px!important;}
body.professional-mode .viosActionHeader span{color:#2563eb!important;}
body.professional-mode .viosActionBody{padding:24px!important;}
body.professional-mode #professionalAccessBox.authWrap{background:transparent!important;padding:36px 0!important;}
body.professional-mode .proAccessCard{max-width:500px!important;padding:34px!important;border:1px solid #dbe5f1!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 35px #12365b06!important;}
body.professional-mode .proAccessCard h2{font-size:26px!important;margin-bottom:12px!important;}
body.professional-mode .proAccessCard .pinFieldWrap{max-width:none!important;margin:20px 0!important;}
body.professional-mode .proAccessCard input{width:100%!important;letter-spacing:0!important;text-align:left!important;}
body.professional-mode .proAccessCard .actions{margin-top:18px!important;}
body.professional-mode .proAccessCard #btnLogin{width:100%;}
.pro-auth-extra{margin-top:16px;}.pro-auth-extra>label{margin-top:14px!important;}.pro-auth-tabs{display:flex;gap:6px;margin:20px 0;}.pro-auth-tabs .btn{flex:1;}.pro-auth-tabs [aria-selected=true]{background:#eaf2ff!important;color:#1d4ed8!important;border-color:#93baff!important;}.pro-auth-help{font-size:13px!important;color:#5b6f89;margin:16px 0 0;}
body.professional-mode .signupSectionTitle{background:#eff6ff!important;color:#1d4ed8!important;border-color:#dbe5f1!important;font-family:inherit!important;font-size:14px!important;}
body.professional-mode #viewGrid .gridFilterBar{display:grid;grid-template-columns:230px repeat(3,minmax(145px,1fr)) auto;gap:14px;padding:18px!important;background:#fff!important;border:1px solid #dbe5f1!important;border-radius:12px!important;}
body.professional-mode #viewGrid .gridDateControl{grid-template-columns:32px minmax(125px,1fr) 32px;gap:4px;}
body.professional-mode #viewGrid .gridDateControl .btn{padding:5px!important;min-height:42px!important;}
body.professional-mode #viewGrid .gridFilterField :is(input,select){min-height:42px!important;width:100%;}
body.professional-mode #viewGrid .gridFilterAction{align-items:flex-end;gap:6px;}
body.professional-mode #viewGrid .gridFilterAction .btn{min-height:42px!important;}
.pro-calendar-head{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;}.pro-calendar-head h2{margin-bottom:0!important;}.pro-view-switch{display:flex;gap:2px;padding:3px;background:#fff;border:1px solid #dbe5f1;border-radius:9px;}.pro-view-switch .btn{border:0!important;min-height:36px!important;}.pro-view-switch .btn[aria-pressed=true]{background:#eaf2ff!important;color:#1d4ed8!important;}.pro-calendar-range{font-size:16px;font-weight:600;color:#244469;margin:18px 0 10px;}.pro-filter-summary{font-size:13px;color:#5b6f89;margin:10px 0;}.pro-calendar-empty{padding:32px;text-align:center;color:#5b6f89;}.pro-calendar-scroll{overflow:auto;border:1px solid #dbe5f1;border-radius:12px;background:#fff;}.pro-week{min-width:780px;display:grid;grid-template-columns:56px repeat(7,minmax(100px,1fr));}.pro-week-head{position:sticky;top:0;z-index:5;padding:14px 6px;text-align:center;border-bottom:1px solid #dbe5f1;background:#fff;font-size:13px;font-weight:650;}.pro-week-head.is-today{background:#eaf2ff;color:#1d4ed8;}.pro-week-times{position:relative;}.pro-week-time{height:64px;padding:0 5px;color:#6b7f99;font-size:12px;text-align:right;transform:translateY(-8px);}.pro-week-day{position:relative;border-left:1px solid #e4ecf6;background:repeating-linear-gradient(to bottom,transparent 0,transparent 63px,#e4ecf6 63px,#e4ecf6 64px);}.pro-week-day.is-today{background-color:#f7faff;}.pro-calendar-event{display:block;border:1px solid #a8caff;border-left:3px solid #2563eb;border-radius:5px;background:#e8f1ff;color:#153d71;padding:5px 7px;text-align:left;font:500 12px/1.35 Inter,Arial,sans-serif;cursor:pointer;overflow:hidden;}.pro-calendar-event strong{display:block;font-size:13px;}.pro-calendar-event small{display:block;font-size:12px;opacity:.9;}.pro-calendar-event[data-kind=CONSULTA]{background:#f1f7ff;border-left-color:#5a86b9;}.pro-calendar-event[data-kind=URG]{background:#e4edf7;border-left-color:#12365b;}.pro-calendar-event:hover{filter:brightness(.97);}.pro-calendar-event:focus-visible{outline:2px solid #2563eb;outline-offset:1px;z-index:6;}.pro-week-day .pro-calendar-event{position:absolute;}.pro-all-day{padding:6px;border-bottom:1px solid #dbe5f1;border-left:1px solid #e4ecf6;min-height:40px;}.pro-all-day .pro-calendar-event{margin-bottom:3px;font-size:12px;}.pro-month{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:780px;}.pro-month-cell{min-height:150px;border-top:1px solid #e4ecf6;border-right:1px solid #e4ecf6;padding:8px;}.pro-month-cell.is-outside{background:#f8fafd;}.pro-month-cell.is-today{background:#f0f6ff;}.pro-month-date{border:0;background:transparent;color:#334b68;border-radius:50%;width:28px;height:28px;cursor:pointer;margin-bottom:6px;font-weight:650;}.pro-month-cell.is-today .pro-month-date{background:#2563eb;color:#fff;}.pro-month-cell .pro-calendar-event{margin-bottom:4px;font-size:12px;padding:4px 5px;}.pro-month-more{background:transparent;border:0;color:#1d4ed8;font-size:12px;padding:4px;cursor:pointer;}.pro-calendar-detail{white-space:pre-line;color:#334b68;font-size:14px;line-height:1.8;}.pro-mobile-menu{display:none!important;}
body.professional-mode .hide,body.professional-mode [hidden]{display:none!important;}
@media(max-width:1200px){body.professional-mode .grid{grid-template-columns:218px minmax(0,1fr)!important;}body.professional-mode #viewGrid .gridFilterBar{grid-template-columns:repeat(2,minmax(0,1fr));}body.professional-mode .rightCol>.card{padding:24px!important;}body.professional-mode #pillSession small{display:none;}}
@media(max-width:800px){body.professional-mode .grid{grid-template-columns:1fr!important;}body.professional-mode .topbar{padding:8px 14px!important;min-height:70px!important;flex-wrap:wrap;}body.professional-mode .topbar>.row{gap:6px!important;}body.professional-mode #pillSession{font-size:12px!important;padding:5px 8px!important;}body.professional-mode #appSubtitle{display:none;}body.professional-mode .mayoSidebar{display:none!important;position:fixed!important;top:70px!important;bottom:0!important;left:0!important;width:min(300px,90vw)!important;height:auto!important;z-index:145!important;box-shadow:15px 0 35px #12365b20!important;}body.professional-mode.pro-menu-open .mayoSidebar{display:block!important;}body.professional-mode .pro-mobile-menu{display:inline-flex!important;}body.professional-mode .rightCol>.card{padding:22px 16px!important;min-height:calc(100dvh - 70px)!important;}body.professional-mode .rightCol h2{font-size:24px!important;}body.professional-mode .row{gap:12px!important;}body.professional-mode .row>div{min-width:0!important;}body.professional-mode .proAccessCard{padding:25px!important;}body.professional-mode .native-launch{font-size:12px!important;}body.professional-mode :is(.structPanel,.contribBox,.signupAdminCard){padding:16px!important;}body.professional-mode .collapsibleToggle{padding:16px!important;}body.professional-mode .collapsibleBody{padding:0 14px 16px!important;}body.professional-mode .srModalBody{grid-template-columns:1fr!important;}}
@media(max-width:480px){body.professional-mode #viewGrid .gridFilterBar{grid-template-columns:1fr!important;padding:14px!important;}body.professional-mode .topbar .brand h1{display:none;}body.professional-mode .topbar .logo.viosLogoAsset{width:65px!important;height:45px!important;}body.professional-mode .topbar>.row{flex:1;justify-content:flex-end;}body.professional-mode #pillSession{display:none;}body.professional-mode .pro-calendar-head{align-items:flex-start;}.pro-view-switch{width:100%;}.pro-view-switch .btn{flex:1;}body.professional-mode .proAccessCard{padding:22px!important;}body.professional-mode .signupGrid{grid-template-columns:1fr!important;}body.professional-mode .actions .btn{max-width:100%;white-space:normal;}}
@media print{body.professional-mode .mayoSidebar,body.professional-mode .topbar,body.professional-mode .pro-view-switch{display:none!important;}body.professional-mode .grid{display:block!important;}body.professional-mode .rightCol>.card{padding:0!important;background:#fff!important;}.pro-calendar-scroll{overflow:visible;}}

body.professional-mode #viewGrid .gridFilterBar{grid-template-columns:220px repeat(4,minmax(140px,1fr));}body.professional-mode #viewGrid .gridFilterAction{grid-column:1/-1;justify-content:flex-end;}body.professional-mode .native-launch{width:auto!important;margin:0!important;}
body.professional-mode :is(.billingMultiButton,.billingTableTool,.billingSortButton,.billingDocPerson,.billingDocPeriod){font:550 14px/1.4 Inter,Arial,sans-serif!important;border:1px solid #cfdaea!important;border-radius:8px!important;background:#fff!important;color:#244469!important;min-height:38px;box-shadow:none!important;}
body.professional-mode :is(.billingImportToolbar,.billingAnalysisToolbar,.billingDocumentStrip,.billingMiniPanel,.gridSummary,.gridCardHeader,.summaryKpi,.filterBar){background:#fff!important;color:#142d4e!important;border-color:#dbe5f1!important;box-shadow:none!important;border-radius:10px!important;}body.professional-mode :is(.gridSummary,.gridCardHeader){padding:16px 18px!important;}body.professional-mode :is(.gridCountPill,.summaryKpi){color:#24548d!important;background:#eff6ff!important;}body.professional-mode .gridInner{background:#fff!important;}body.professional-mode #viewReport .reportGrid :is(td,th){font-size:13px!important;}body.professional-mode .billingDocShell{border:1px solid #dbe5f1!important;border-radius:14px!important;background:#fff!important;}
@media(max-width:1200px){body.professional-mode #viewGrid .gridFilterBar{grid-template-columns:repeat(2,minmax(0,1fr));}}@media(max-width:480px){body.professional-mode #viewGrid .gridFilterBar{grid-template-columns:1fr!important;}body.professional-mode #viewGrid .gridFilterAction{flex-wrap:wrap;}.pro-week{min-width:1020px;}}

/* Final specificity layer for the retained operational modules. */
:root{--vios-gold:#2563eb;--vios-gold-soft:#eff6ff;--clinical-teal:#2563eb;}
body.professional-mode .rightCol>.card{background:#f5f8fc!important;border:0!important;border-radius:0!important;}
body.professional-mode #privatePanelActions{display:flex!important;flex-direction:column!important;}
body.professional-mode .pro-auth-tabs [aria-selected=true]{background:#eaf2ff!important;color:#1d4ed8!important;border-color:#93baff!important;}
body.professional-mode #viewGrid .gridFilterField :is(input,select){font:400 14px/1.5 Inter,Arial,sans-serif!important;padding:10px 12px!important;border-radius:8px!important;}
body.professional-mode #swapModal .modalCard,body.professional-mode #urgEditModal .modalCard,body.professional-mode #srModalBackdrop .srModal{background:#fff!important;border:1px solid #dbe5f1!important;border-radius:12px!important;box-shadow:none!important;}
body.professional-mode .structReportFullscreen{border:1px solid #dbe5f1!important;border-radius:12px!important;}
body.professional-mode .mayoSidebar>.native-launch{width:100%!important;min-height:44px!important;margin-top:20px!important;text-align:left!important;background:#eff6ff!important;border-color:#dbe5f1!important;color:#24548d!important;}

/* Flat workspaces: a single heading, task tabs, compact filters and data. */
body.professional-mode .rightCol h2{border:0!important;padding-bottom:0!important;}
body.professional-mode #viewReport{gap:0;}
body.professional-mode .pro-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;}
body.professional-mode .pro-section-head h2{margin:0 0 7px!important;}
body.professional-mode .pro-section-description{margin:0 0 22px;color:#64758c;font-size:14px;line-height:1.55;max-width:780px;}
body.professional-mode .pro-section-head .pro-section-description{margin:0;}
body.professional-mode .pro-head-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
body.professional-mode .pro-section-tabs{display:flex;gap:26px;overflow-x:auto;border-bottom:1px solid #d9e3ef;margin:0 0 24px;padding:0 2px;}
body.professional-mode .pro-section-tab{flex-shrink:0;min-height:46px;padding:12px 2px 14px;background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;color:#61738d;font:550 14px/1.4 Inter,Arial,sans-serif;cursor:pointer;}
body.professional-mode .pro-section-tab:hover{color:#174f94;}
body.professional-mode .pro-section-tab[aria-selected=true]{color:#185abd;border-bottom-color:#2563eb;font-weight:650;}
body.professional-mode .pro-tab-panel{min-width:0;outline-offset:4px;}
body.professional-mode .pro-report-filters{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(180px,1.3fr) minmax(145px,.9fr) minmax(150px,.9fr) auto;align-items:end;gap:14px;padding:18px 20px;background:#fff;border:1px solid #dbe5f1;border-radius:10px;margin-bottom:22px;}
body.professional-mode .pro-field{min-width:0;}
body.professional-mode .pro-field>select{width:100%;}
body.professional-mode .pro-multi-picker{position:relative;}
body.professional-mode .pro-filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;height:43px;padding:10px 12px;border:1px solid #cfdaea;border-radius:8px;background:#fff;color:#244469;font:400 14px/1.5 Inter,Arial,sans-serif;cursor:pointer;}
body.professional-mode .pro-filter-trigger>span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
body.professional-mode .pro-filter-trigger[aria-expanded=true]{border-color:#6495db;box-shadow:0 0 0 3px #edf4ff;}
body.professional-mode .pro-filter-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:100;width:max(100%,290px);max-width:calc(100vw - 50px);padding:12px;background:#fff;border:1px solid #d3dfef;border-radius:10px;box-shadow:0 12px 35px #173d6b1f;}
body.professional-mode .pro-filter-menu>input{width:100%;}
body.professional-mode .pro-filter-options{max-height:240px;overflow-y:auto;margin:8px -4px;}
body.professional-mode .pro-filter-option{display:flex;align-items:center;gap:10px;padding:9px 7px;margin:0!important;border-radius:6px;color:#334b68;font-weight:400!important;cursor:pointer;}
body.professional-mode .pro-filter-option input{flex:0 0 auto;margin:0;}
body.professional-mode .pro-filter-option:hover{background:#f1f6fe;}
body.professional-mode .pro-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #e3ebf4;padding-top:10px;}
body.professional-mode .pro-text-action{padding:11px 4px;min-height:42px;white-space:nowrap;border:0;background:transparent;color:#2462ae;font:550 13px/1.5 Inter,Arial,sans-serif;cursor:pointer;}
body.professional-mode .pro-text-action:hover{text-decoration:underline;}
body.professional-mode .pro-picker-help,body.professional-mode .pro-filter-empty{font-size:12px;margin:8px 0;color:#64758c;}
body.professional-mode .pro-report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
body.professional-mode .pro-report-metric{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px 22px;background:#fff;border:1px solid #dbe5f1;border-radius:10px;}
body.professional-mode .pro-report-metric>span{font-size:13px;color:#536a86;}
body.professional-mode .pro-report-metric>strong{font-size:30px;font-weight:650;line-height:1.2;letter-spacing:-.04em;color:#153d71;font-variant-numeric:tabular-nums;}
body.professional-mode .pro-report-metric>small{font-size:12px;color:#73849a;}
body.professional-mode .pro-analysis-note{font-size:12px;color:#697c94;margin:12px 0 24px;}
body.professional-mode .pro-report-columns{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:20px;align-items:start;}
body.professional-mode .pro-data-surface{background:#fff;border:1px solid #dbe5f1;border-radius:10px;overflow:hidden;}
body.professional-mode .pro-data-heading{padding:20px 22px 16px;}
body.professional-mode .pro-data-heading h3{font-size:16px!important;margin:0 0 5px!important;}
body.professional-mode .pro-data-heading p{margin:0;font-size:13px;color:#73849a;}
body.professional-mode .pro-data-scroll{overflow:auto;}
body.professional-mode .pro-occupancy-table{width:100%;border-collapse:collapse;min-width:320px;margin:0!important;}
body.professional-mode .pro-occupancy-table :is(th,td){padding:13px 20px!important;border:0!important;border-top:1px solid #e8edf5!important;font-size:13px!important;}
body.professional-mode .pro-occupancy-table tbody th{background:#fff!important;color:#314d70!important;text-align:left;font-weight:500!important;}
body.professional-mode .pro-occupancy-table td{min-width:100px;vertical-align:middle;}
body.professional-mode .pro-occupancy-value{display:block;font-size:12px;color:#3e5b80;font-variant-numeric:tabular-nums;margin-bottom:5px;}
body.professional-mode .pro-occupancy-track{display:block;height:4px;max-width:110px;border-radius:3px;background:#eaf0f8;overflow:hidden;}
body.professional-mode .pro-occupancy-track>span{display:block;height:100%;border-radius:3px;background:#5386d1;}
body.professional-mode .pro-panel-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:0 0 18px;}
body.professional-mode .pro-panel-toolbar h3{margin:0 0 6px!important;}
body.professional-mode .pro-panel-toolbar p{margin:0;font-size:13px;}
body.professional-mode .pro-form-surface{padding:24px;background:#fff;border:1px solid #dbe5f1;border-radius:10px;}
body.professional-mode .pro-form-surface>p{margin:0 0 24px;}
body.professional-mode .pro-report-delivery{max-width:760px;}
body.professional-mode .pro-form-surface>.row{gap:18px!important;align-items:flex-end;}
body.professional-mode .pro-form-surface>.row>div{min-width:0!important;flex:0 1 auto!important;width:auto!important;}
body.professional-mode .pro-form-surface :is(input:not([type=checkbox]):not([type=radio]),select){width:100%;}
body.professional-mode .pro-form-actions{border-top:1px solid #e3ebf4;padding-top:20px;margin-top:24px!important;}
body.professional-mode .pro-form-surface .filterBar{padding:0 0 18px!important;gap:14px!important;align-items:end;border:0!important;border-radius:0!important;}
body.professional-mode .pro-form-surface .filterBar .field{min-width:140px!important;flex:1;}
body.professional-mode .pro-inline-summary{margin:0 0 18px!important;padding:0!important;background:transparent!important;border:0!important;color:#5b6f89!important;font-size:13px!important;}
body.professional-mode #structList{margin-top:0!important;border-radius:8px!important;}
body.professional-mode .pro-empty-state{padding:44px 24px;border:1px dashed #c8d8ea;border-radius:10px;text-align:center;color:#667e9b;background:#fff;}
body.professional-mode .pro-help-details{margin-top:16px;padding-top:12px;border-top:1px solid #e3ebf4;}
body.professional-mode .pro-help-details>summary{font-size:13px;color:#37608d;cursor:pointer;}
body.professional-mode .pro-help-details>.hint{padding-top:12px;}

/* Weekly overview: stable day bands, two shifts, and a complete outline today. */
body.professional-mode #gridBox:has(.pro-calendar-scroll){overflow:visible;border:0!important;background:transparent!important;}
.pro-week-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 10px;flex-wrap:wrap;}
.pro-week-controls[hidden]{display:none;}
.pro-week-hint{margin:0;color:#486680;font-size:.875rem;}
body.professional-mode .pro-calendar-scroll:has(.pro-staff-week){max-height:72dvh;isolation:isolate;}
body.professional-mode .pro-staff-week{table-layout:fixed;width:100%;min-width:1120px;border-collapse:separate;border-spacing:0;}
body.professional-mode .pro-staff-week th,body.professional-mode .pro-staff-week td{padding:6px!important;border:0;border-bottom:1px solid #d6e2ed;font-size:.875rem!important;vertical-align:top;}
body.professional-mode .pro-staff-week .pro-day-band-0{--day-head:#d7e8f6;--day-am:#f7fbff;--day-pm:#eaf3fb;}
body.professional-mode .pro-staff-week .pro-day-band-1{--day-head:#bed7ec;--day-am:#eaf3fb;--day-pm:#dcebf7;}
body.professional-mode .pro-staff-week .pro-shift-morning{background:var(--day-am)!important;}
body.professional-mode .pro-staff-week .pro-shift-afternoon{background:var(--day-pm)!important;border-right:2px solid #000;}
body.professional-mode .pro-staff-week thead th{position:sticky;top:0;height:44px;vertical-align:middle;text-align:center;background:var(--day-head,#fff)!important;z-index:3;color:#173e60!important;}
body.professional-mode .pro-staff-week thead .pro-day-group{border-right:2px solid #000;}
body.professional-mode .pro-staff-week thead tr:nth-child(2) th{top:44px;height:34px;font-size:.875rem!important;font-weight:550!important;}
body.professional-mode .pro-staff-week .pro-staff-name{position:sticky;left:0;width:168px;min-width:168px;background:#fff!important;color:#234469!important;text-align:left;padding:12px 10px!important;z-index:2;box-shadow:1px 0 #c0d3e4;white-space:normal;overflow-wrap:anywhere;}
body.professional-mode .pro-staff-week thead .pro-staff-name{z-index:4;vertical-align:middle;}
body.professional-mode .pro-staff-week tbody .pro-staff-name{font-weight:550!important;line-height:1.4!important;}
body.professional-mode .pro-staff-avatar{float:left;display:inline-grid;place-items:center;width:28px;height:28px;margin:0 8px 2px 0;border-radius:8px;background:#edf4fe;color:#5378a7;font:500 .75rem/1 Inter,Arial,sans-serif;}
body.professional-mode .pro-staff-week tbody td{height:64px;}
body.professional-mode .pro-staff-week .pro-day-group.is-today{border-top:3px solid #126596;border-left:3px solid #126596;border-right:3px solid #126596;}
body.professional-mode .pro-staff-week .pro-shift-morning.is-today{border-left:3px solid #126596;}
body.professional-mode .pro-staff-week .pro-shift-afternoon.is-today{border-right:3px solid #126596;}
body.professional-mode .pro-staff-week tbody tr:last-child .is-today{border-bottom:3px solid #126596;}
body.professional-mode .pro-day-link{border:0;background:transparent;color:#163f62;font:650 .875rem/1.4 Inter,Arial,sans-serif;padding:4px 5px;cursor:pointer;border-radius:5px;}
body.professional-mode .pro-day-link:hover{background:#ffffff80;}
.pro-today-label{display:inline-block;background:#126596;color:white;border-radius:4px;padding:2px 5px;margin-left:3px;font-size:.75rem;font-weight:650;}
body.professional-mode .pro-shift-event{width:100%;padding:6px 5px;margin-bottom:5px;min-height:45px;border:1px solid #9dbfda;border-left:3px solid #3979ac;border-radius:5px;background:#fff;}
body.professional-mode .pro-shift-event strong{font-size:.8125rem;font-weight:650;white-space:normal;overflow-wrap:anywhere;}
body.professional-mode .pro-shift-event small{font-size:.75rem;margin-top:3px;overflow-wrap:anywhere;color:#395c7a;}
body.professional-mode .pro-shift-event:last-child{margin-bottom:0;}
body.professional-mode .pro-shift-empty{display:block;text-align:center;color:#809bb3;padding:16px 0;}
body.professional-mode .pro-resource-week .pro-staff-name strong{display:block;font-size:.875rem;}
body.professional-mode .pro-resource-week .pro-staff-name small{display:block;font-size:.75rem;font-weight:450;color:#58748c;margin-top:4px;}
body.professional-mode .pro-resource-week tbody td{height:56px;vertical-align:middle!important;}
body.professional-mode .pro-resource-week .pro-shift-event{display:block;min-height:32px;padding:6px 3px;margin:3px 0;overflow:hidden;max-width:100%;background:#1768ab;border-color:#1768ab;color:#fff;}
body.professional-mode .pro-resource-week .pro-shift-event:hover{background:#12558d;border-color:#12558d;}
body.professional-mode .pro-resource-week .pro-shift-event strong{display:block;color:#fff;font-size:.875rem;line-height:1.3;white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important;overflow:hidden;text-overflow:ellipsis;}
body.professional-mode .pro-resource-week .pro-fixed-event{background:#28577e;border-color:#28577e;}
body.professional-mode .pro-resource-week .pro-fixed-event strong{white-space:normal!important;font-size:.75rem;}
.pro-resource-free{border:1px dashed #83adb9;background:#fff;border-radius:5px;color:#236078;padding:5px 4px;margin-top:5px;line-height:1.35;}
.pro-resource-free:first-child{margin-top:0;}
.pro-resource-free strong{display:block;font-size:.875rem;font-weight:550;white-space:nowrap;}
.pro-resource-free span{display:block;font-size:.75rem;margin-top:2px;}
.pro-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
@media(max-width:600px){.pro-week-controls{align-items:stretch;}.pro-week-switch{width:100%;}.pro-week-switch .btn{flex:1;}.pro-week-hint{font-size:.8125rem;}body.professional-mode .pro-staff-week .pro-staff-name{width:148px;min-width:148px;}}
@media print{.pro-week-controls{display:none!important;}body.professional-mode .pro-calendar-scroll:has(.pro-staff-week){max-height:none;}}

/* Structural report uses the same restrained blue cards as the calendar. */
body.professional-mode #structVisualReport{display:block;margin:0;}
body.professional-mode .structReportScroll{border:1px solid #dbe5f1;border-radius:10px;background:#fff;overflow:auto;max-height:70dvh;}
body.professional-mode .structReportTable{min-width:1544px;width:100%;}
body.professional-mode .structReportTable .srDay{min-width:192px;}
body.professional-mode .structReportTable .srSess{width:96px;}
body.professional-mode .srDayKey{display:none;}
body.professional-mode .srCard{background:#edf4ff!important;border:1px solid #d0e0f5!important;border-left:2px solid #5b89ca!important;border-radius:5px!important;color:#244e82!important;box-shadow:none!important;padding:8px!important;font:500 12px/1.4 Inter,Arial,sans-serif!important;}
body.professional-mode .srCard .srLabel{color:inherit!important;font-size:12px!important;font-weight:500!important;}
body.professional-mode .srCard:hover{background:#deebfe!important;}
body.professional-mode .structReportTable .srLocCell{color:#244469!important;background:#fff!important;font-weight:550;}
body.professional-mode .structReportTable thead tr:nth-child(2) th{top:44px;}
body.professional-mode .structReportTable thead tr:first-child th{height:44px;}
body.professional-mode .structReportFullscreenOverlay{position:fixed!important;inset:0!important;z-index:500!important;width:100%!important;height:100dvh!important;margin:0!important;padding:20px!important;background:#16345a66!important;backdrop-filter:blur(3px)!important;}
body.professional-mode .structReportFullscreen{display:flex;flex-direction:column;height:100%!important;overflow:hidden;background:#fff!important;}
body.professional-mode .structReportFullscreenHeader{padding:18px 24px;border-bottom:1px solid #dbe5f1;background:#fff!important;}
body.professional-mode .structReportFullscreenHeader h3{margin:0 0 5px!important;}
body.professional-mode .structReportFullscreenBody{flex:1;min-height:0;overflow:auto;padding:16px;}
body.professional-mode .structReportFullscreen .structReportScroll{max-height:none;}
body.professional-mode #srModalBackdrop:not(.hide){position:fixed!important;inset:0!important;z-index:550!important;width:auto!important;margin:0!important;padding:24px!important;display:flex!important;align-items:center;justify-content:center;background:#16345a66!important;backdrop-filter:blur(3px)!important;}
body.professional-mode #srModalBackdrop .srModal{max-width:920px!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important;padding:24px!important;}

/* Shared density and forms across the remaining professional modules. */
body.professional-mode .pro-workspace>.card{padding:24px!important;}
body.professional-mode #viewBilling .billingImportToolbar{grid-template-columns:minmax(230px,1.3fr) repeat(2,minmax(150px,1fr));gap:16px;}
body.professional-mode #viewBilling .billingImportActions{grid-column:1/-1;justify-content:flex-start;}
body.professional-mode #viewBilling .billingDocumentControls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;}
body.professional-mode #viewBilling .billingCompactKpis{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;}
body.professional-mode #viewBilling .billingDocumentStrip{padding:20px;border:1px solid #dbe5f1;border-radius:10px;}
body.professional-mode #viewBilling .billingDocShell,body.professional-mode #viewBilling .billingMiniPanel{background:#fff!important;}
body.professional-mode .contribTotal.ok{background:#edf4ff!important;border-color:#cbddf5!important;color:#225493!important;}
body.professional-mode #viewTime .pill{border:1px solid #dbe5f1!important;border-radius:8px!important;background:#fff!important;color:#284b76!important;}
body.professional-mode .pro-time-record{margin-top:22px;}
body.professional-mode .pro-billing-analysis{margin-top:24px;}
body.professional-mode .pro-billing-panel{border:1px solid #dbe5f1;border-radius:10px;background:#fff;min-width:0;}
body.professional-mode .pro-billing-panel .pro-data-heading{border-bottom:1px solid #e5edf7;}
body.professional-mode .pro-billing-panel .collapsibleMeta{font-size:13px!important;}
body.professional-mode .pro-billing-panel>[id]{padding:16px;}
body.professional-mode .pro-billing-panel #billingNewOnlyExcelMeta{display:inline-block;color:#426797;font-size:13px;margin-top:6px;}
body.professional-mode .pro-workspace .row>div>input,body.professional-mode .pro-workspace .row>div>select{width:100%;}
@media(max-width:1250px){body.professional-mode .pro-report-filters{grid-template-columns:repeat(2,minmax(0,1fr));}body.professional-mode .pro-report-filters>.pro-text-action{justify-self:start;padding:0;min-height:24px;}body.professional-mode .pro-report-columns{grid-template-columns:1fr;}body.professional-mode .pro-section-head{align-items:flex-start;}body.professional-mode .pro-report-metric{padding:18px 16px;}body.professional-mode .pro-section-description{max-width:530px;}}
@media(max-width:800px){body.professional-mode .pro-section-head{flex-direction:column;gap:16px;}body.professional-mode .pro-section-tabs{gap:22px;margin-bottom:20px;}body.professional-mode .pro-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}body.professional-mode .pro-report-filters{padding:16px;}body.professional-mode .pro-form-surface{padding:18px;}body.professional-mode .pro-panel-toolbar{align-items:flex-start;flex-direction:column;gap:12px;}body.professional-mode .pro-workspace>.card{padding:18px!important;}body.professional-mode #viewBilling .billingImportToolbar{grid-template-columns:repeat(2,minmax(0,1fr));}body.professional-mode #viewBilling .billingImportToolbar>div:first-child{grid-column:1/-1;}body.professional-mode .pro-staff-week .pro-staff-name{width:155px;min-width:155px;}body.professional-mode .pro-staff-avatar{display:none;}}
@media(max-width:480px){body.professional-mode .pro-report-filters{grid-template-columns:1fr;}body.professional-mode .pro-head-actions{flex-wrap:wrap;}body.professional-mode .pro-report-metric>strong{font-size:26px;}body.professional-mode .pro-report-metric>small{font-size:11px;}body.professional-mode .pro-filter-menu{width:100%;max-width:none;}body.professional-mode #viewBilling .billingImportToolbar{grid-template-columns:1fr;}body.professional-mode .pro-data-heading{padding:18px;}body.professional-mode .pro-occupancy-table :is(th,td){padding:12px!important;}}
@media print{body.professional-mode .pro-section-tabs,body.professional-mode .pro-head-actions,body.professional-mode .pro-report-filters{display:none!important;}body.professional-mode .structReportFullscreenOverlay{position:static!important;padding:0!important;height:auto!important;}body.professional-mode .structReportFullscreenBody{overflow:visible;padding:0;}}

/* Compact professional forms. Keep readable type and size the field wrapper,
   so short controls neither stretch nor leave an empty full-width row. */
body.professional-mode.pro-density-compact .rightCol>.card{padding:24px!important;}
body.professional-mode.pro-density-compact .pro-compact-root .pro-compact-field{
  flex:0 0 auto!important;width:min(100%,var(--pro-field-width,17rem))!important;
  max-width:100%!important;min-width:0!important;margin:0!important;align-self:flex-end;
}
body.professional-mode.pro-density-compact .pro-compact-root .pro-sized-control{
  width:min(100%,var(--pro-field-width,17rem))!important;max-width:100%!important;
  min-width:0!important;min-height:38px!important;padding:7px 10px!important;
  margin-bottom:0!important;font-size:14px!important;line-height:1.5!important;
}
body.professional-mode.pro-density-compact .pro-compact-field>.pro-sized-control,
body.professional-mode.pro-density-compact .pro-compact-field>.row>.pro-sized-control,
body.professional-mode.pro-density-compact .pro-compact-field>.gridDateControl>.pro-sized-control{width:100%!important;}
body.professional-mode.pro-density-compact .pro-compact-root label{margin-bottom:4px!important;font-size:14px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;}
body.professional-mode.pro-density-compact .pro-compact-root .btn{min-height:38px!important;padding:7px 12px!important;}
body.professional-mode.pro-density-compact .pro-compact-root textarea.pro-sized-control{min-height:88px!important;resize:vertical;}
body.professional-mode.pro-density-compact .pro-compact-flow,
body.professional-mode.pro-density-compact .pro-compact-root .row{
  display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-start;
  gap:12px!important;margin-top:0;margin-bottom:12px;
}
body.professional-mode.pro-density-compact .pro-compact-flow:last-child,
body.professional-mode.pro-density-compact .pro-compact-root .row:last-child{margin-bottom:0;}
body.professional-mode.pro-density-compact .pro-compact-root .actions{
  flex:0 1 auto!important;width:auto!important;min-width:0!important;max-width:100%;
  align-items:center!important;gap:8px!important;margin-top:0!important;margin-bottom:0!important;
}
body.professional-mode.pro-density-compact .pro-compact-root .pro-compact-field>.row{flex-wrap:nowrap;gap:6px!important;margin:0!important;}
body.professional-mode.pro-density-compact .pro-compact-root :is(.pro-form-surface,.contribBox,.signupAdminCard){padding:16px!important;}
body.professional-mode.pro-density-compact .pro-compact-root>.card{padding:16px!important;}
body.professional-mode.pro-density-compact .pro-compact-root h2{font-size:26px!important;margin-bottom:18px!important;}
body.professional-mode.pro-density-compact .pro-compact-root h3{font-size:17px!important;margin-bottom:10px!important;}
body.professional-mode.pro-density-compact .pro-form-surface>p{margin-bottom:16px;font-size:14px;}
body.professional-mode.pro-density-compact .pro-section-head{margin-bottom:18px;gap:14px;}
body.professional-mode.pro-density-compact .pro-section-head h2{margin-bottom:5px!important;}
body.professional-mode.pro-density-compact .pro-section-description{margin-bottom:16px;}
body.professional-mode.pro-density-compact .pro-section-tabs{margin-bottom:16px;gap:24px;}
body.professional-mode.pro-density-compact .pro-section-tab{min-height:40px;padding:9px 2px 11px;}
body.professional-mode.pro-density-compact .pro-form-actions{padding-top:12px;margin-top:14px!important;}
body.professional-mode.pro-density-compact .pro-compact-root :is(.hint,.pro-analysis-note){margin-top:8px;}
body.professional-mode.pro-density-compact .pro-compact-root .hr{margin:12px 0!important;}
body.professional-mode.pro-density-compact .pro-compact-root .msg{padding:9px 12px!important;margin-top:10px;margin-bottom:12px;}
body.professional-mode.pro-density-compact .pro-compact-root .msg:empty{margin:0!important;padding:0!important;}

/* Time tracking is a short action bar plus two reports, not three tall cards. */
body.professional-mode.pro-density-compact .pro-punch-flow{align-items:center;gap:16px!important;margin:0;}
body.professional-mode.pro-density-compact .pro-punch-flow .pill{flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:100%;padding:8px 10px!important;display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:14px;}
body.professional-mode.pro-density-compact .pro-punch-flow .pill small{font-size:12px;}
body.professional-mode.pro-density-compact .pro-punch-flow .actions{align-self:flex-end;}
body.professional-mode.pro-density-compact .pro-time-records{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,36rem),1fr));gap:14px;align-items:start;margin-top:14px;}
body.professional-mode.pro-density-compact .pro-time-record{margin-top:0;min-width:0;}
body.professional-mode.pro-density-compact .pro-time-record .pro-compact-flow{margin-bottom:10px;}

/* All filter bars wrap at their natural sizes instead of expanding in fr columns. */
body.professional-mode.pro-density-compact #viewGrid .gridFilterBar,
body.professional-mode.pro-density-compact .pro-report-filters,
body.professional-mode.pro-density-compact .pro-form-surface .filterBar,
body.professional-mode.pro-density-compact #viewBilling .billingImportToolbar,
body.professional-mode.pro-density-compact #viewBilling .billingAnalysisToolbar,
body.professional-mode.pro-density-compact #viewBilling .billingDocumentControls{
  display:flex!important;flex-wrap:wrap!important;align-items:flex-end!important;
  justify-content:flex-start!important;gap:12px!important;grid-template-columns:none!important;
}
body.professional-mode.pro-density-compact #viewGrid .gridFilterBar,
body.professional-mode.pro-density-compact .pro-report-filters{padding:14px 16px!important;margin-bottom:16px;}
body.professional-mode.pro-density-compact #viewGrid .gridFilterAction{grid-column:auto;flex:0 1 auto;align-self:flex-end;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin:0;}
body.professional-mode.pro-density-compact #viewGrid .gridFilterAction .btn,
body.professional-mode.pro-density-compact #viewGrid .gridDateControl .btn{min-height:38px!important;}
body.professional-mode.pro-density-compact #viewGrid .gridFilterField :is(input,select){min-height:38px!important;padding:7px 10px!important;}
body.professional-mode.pro-density-compact #viewGrid .gridDateControl{grid-template-columns:30px minmax(0,1fr) 30px;gap:5px;}
body.professional-mode.pro-density-compact .pro-filter-trigger{height:38px;padding:7px 10px;font-size:14px;}
body.professional-mode.pro-density-compact .pro-report-filters>.pro-text-action{min-height:38px;padding:7px 2px;}
body.professional-mode.pro-density-compact .pro-report-metrics{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;max-width:1000px;}
body.professional-mode.pro-density-compact .pro-report-metric{padding:14px 16px;gap:5px;}
body.professional-mode.pro-density-compact .pro-report-metric>strong{font-size:26px;}
body.professional-mode.pro-density-compact .pro-analysis-note{margin-bottom:16px;max-width:1000px;}
body.professional-mode.pro-density-compact .pro-data-heading{padding:14px 16px 12px;}
body.professional-mode.pro-density-compact .pro-occupancy-table :is(th,td){padding:10px 14px!important;}
body.professional-mode.pro-density-compact .pro-report-columns{gap:14px;}
body.professional-mode.pro-density-compact .pro-report-delivery{max-width:fit-content;}
body.professional-mode.pro-density-compact .pro-panel-toolbar{margin-bottom:12px;}
body.professional-mode.pro-density-compact #viewBilling .billingImportActions{grid-column:auto!important;flex:0 1 auto;justify-content:flex-start;flex-wrap:wrap;gap:8px;}
body.professional-mode.pro-density-compact #viewBilling .billingProfessionalFilter{flex:0 0 auto!important;min-width:0!important;width:min(100%,18rem)!important;}
body.professional-mode.pro-density-compact #viewBilling .billingFilterField{flex-grow:0!important;}
body.professional-mode.pro-density-compact #viewBilling .billingFilterStatus{flex-basis:100%;margin-top:0;}
body.professional-mode.pro-density-compact #viewBilling .billingDocumentStrip{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:14px;padding:14px 16px;}
body.professional-mode.pro-density-compact #viewBilling .billingDocumentStrip>div:first-child{max-width:25rem;}
body.professional-mode.pro-density-compact .pro-billing-analysis{margin-top:16px;}
body.professional-mode.pro-density-compact .pro-billing-panel>[id]{padding:12px;}
body.professional-mode.pro-density-compact .billingTableToolbar{padding:8px 0;}

/* Signup, contributions, account and dialogs share the same field sizes. */
body.professional-mode.pro-density-compact #signupBox .signupGrid{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 14px;}
body.professional-mode.pro-density-compact #signupBox .signupSectionTitle{flex-basis:100%;padding:8px 0;margin:4px 0 0;background:transparent!important;border:0!important;border-bottom:1px solid #dbe5f1!important;}
body.professional-mode.pro-density-compact #signupBox .signupGrid .full.pro-compact-field{grid-column:auto;}
body.professional-mode.pro-density-compact #signupBox .actions{margin-top:16px!important;}
body.professional-mode.pro-density-compact #boxMonthWeeks{flex:0 1 auto!important;width:min(100%,24rem)!important;min-width:0!important;}
body.professional-mode.pro-density-compact #viewContribution .contribTotal{flex:0 0 auto;width:auto;padding:7px 10px;font-size:14px;border-radius:7px;}
body.professional-mode.pro-density-compact #viewContribution .contribBox>.row{justify-content:flex-start!important;gap:14px!important;}
body.professional-mode.pro-density-compact :is(.contribItem,.bioHistoryCard){padding:12px!important;}
body.professional-mode.pro-density-compact .contribItem .row{margin:0;}
body.professional-mode.pro-density-compact #viewBiologicos>.row{margin:0 0 12px!important;}
body.professional-mode.pro-density-compact #viewPin>.card,
body.professional-mode.pro-density-compact #viewRecover>.card{width:fit-content;max-width:min(100%,62rem)!important;}
body.professional-mode.pro-density-compact #proChangePassword>p{max-width:50rem;margin:10px 0 12px;}
body.professional-mode.pro-density-compact #professionalAccessBox.authWrap{padding:24px 0!important;}
body.professional-mode.pro-density-compact .proAccessCard{padding:24px!important;max-width:25rem!important;}
body.professional-mode.pro-density-compact .proAccessCard .pro-compact-field{width:100%!important;}
body.professional-mode.pro-density-compact .proAccessCard .pinFieldWrap{margin:12px 0!important;}
body.professional-mode.pro-density-compact .proAccessCard .pro-auth-extra{margin-top:12px;}
body.professional-mode.pro-density-compact .proAccessCard .pro-auth-extra .pro-compact-field{margin-bottom:10px!important;}
body.professional-mode.pro-density-compact .pro-auth-tabs{margin:16px 0;}
body.professional-mode.pro-density-compact #modalForm .formGrid,
body.professional-mode.pro-density-compact .viosActionFields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;max-width:100%;}
body.professional-mode.pro-density-compact .viosActionField.full{flex-basis:auto;}
body.professional-mode.pro-density-compact .viosActionField.check{width:auto;align-self:center;}
body.professional-mode.pro-density-compact :is(.viosActionHeader,.viosActionBody,.viosActionActions){padding:16px!important;}
body.professional-mode.pro-density-compact .viosActionScreen{margin:16px 0;}
body.professional-mode.pro-density-compact .srModalBody{gap:0 20px;margin-top:12px;}
body.professional-mode.pro-density-compact .srModalLine{padding:8px 0;}
body.professional-mode.pro-density-compact #srModalBackdrop .srModal{max-width:760px!important;padding:18px!important;}
body.professional-mode.pro-density-compact #swapModal .modalCard,
body.professional-mode.pro-density-compact #urgEditModal .modalCard{max-width:min(100%,52rem)!important;padding:18px!important;}
body.professional-mode.pro-density-compact #urgEditStep3:not(.hide){display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;}
body.professional-mode.pro-density-compact #urgEditStep3>h3{flex-basis:100%;}
body.professional-mode.pro-density-compact .native-dialog{padding:18px!important;}
body.professional-mode.pro-density-compact .native-dialog .native-toolbar{gap:8px!important;padding:10px 0;}
body.professional-mode.pro-density-compact .pro-time-records:not(:has(#masterTimeSection:not(.hide))){grid-template-columns:minmax(0,1fr);max-width:48rem;}
@media(max-width:800px){
  body.professional-mode.pro-density-compact .rightCol>.card{padding:18px 14px!important;}
  body.professional-mode.pro-density-compact .pro-time-records{grid-template-columns:1fr;}
  body.professional-mode.pro-density-compact .pro-punch-flow{align-items:flex-end;}
  body.professional-mode.pro-density-compact .pro-compact-root .pro-compact-field{max-width:100%!important;}
  body.professional-mode.pro-density-compact .pro-compact-root :is(input,select,button){min-height:42px!important;}
  body.professional-mode.pro-density-compact .pro-compact-root input:is([type=checkbox],[type=radio]){min-height:17px!important;}
  body.professional-mode.pro-density-compact .pro-filter-trigger{height:42px;}
  body.professional-mode.pro-density-compact #viewGrid .gridFilterBar,
  body.professional-mode.pro-density-compact .pro-report-filters{padding:12px!important;}
}
@media(max-width:480px){
  body.professional-mode.pro-density-compact .pro-compact-root :is(.pro-form-surface,.contribBox,.signupAdminCard){padding:14px!important;}
  body.professional-mode.pro-density-compact .pro-compact-flow,
  body.professional-mode.pro-density-compact .pro-compact-root .row{gap:10px!important;}
  body.professional-mode.pro-density-compact .pro-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  body.professional-mode.pro-density-compact .pro-report-metric{padding:12px;}
  body.professional-mode.pro-density-compact .pro-report-metric>small{font-size:12px;}
}

/* Separate controls preserve both assignments in a shared operating room. */
.grid-shared-doctor{display:block;width:100%;border:0;border-radius:4px;padding:6px 4px;margin:2px 0;background:rgba(255,255,255,.65);color:inherit;font:inherit;cursor:pointer;text-align:left;white-space:normal}
.grid-shared-doctor:focus-visible{outline:2px solid #07658b;outline-offset:1px}

/* Contribution entry: use a shared horizontal row, never size the whole card as a field. */
body.professional-mode.pro-density-compact #viewContribution .contrib-entry{width:100%!important;max-width:none!important;min-width:0;box-sizing:border-box;}
body.professional-mode #viewContribution .contrib-entry-fields{display:grid;grid-template-columns:minmax(200px,1fr) minmax(230px,1.4fr) 115px auto;gap:12px;align-items:end;}
body.professional-mode.pro-density-compact #viewContribution .contrib-entry-field{width:100%!important;min-width:0!important;max-width:none!important;}
body.professional-mode.pro-density-compact #viewContribution .contrib-entry-field .pro-sized-control{width:100%!important;}
body.professional-mode #viewContribution .contrib-entry-fields .btn{white-space:nowrap;}
body.professional-mode #viewContribution .episode-field .episode-camera-button{flex-basis:40px;min-height:38px!important;padding:7px!important;}
body.professional-mode #viewContribution #contribEpisodePhotoHint{margin-top:7px;font-size:12px;}
body.professional-mode #viewContribution .contribList{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:10px;margin:16px 0;}
body.professional-mode #viewContribution .contribList>.hint{grid-column:1/-1;padding:10px 12px;border-radius:8px;background:#f5f8fc;}
body.professional-mode #viewContribution .contribItem{margin:0;box-shadow:none;}
body.professional-mode #viewContribution .contribItem>.row{margin:0;align-items:center;}
body.professional-mode #viewContribution .contrib-entry-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e5edf7;padding-top:12px;}
body.professional-mode #viewContribution .contrib-entry-summary{display:flex;align-items:center;flex-wrap:wrap;gap:10px;}
body.professional-mode #viewContribution #msgContribution{margin-top:12px;}
@media(max-width:1150px){body.professional-mode #viewContribution .contrib-entry-fields{grid-template-columns:minmax(180px,1fr) minmax(220px,1fr);}body.professional-mode #viewContribution .contrib-entry-field:has(#contribPercent){max-width:150px!important;}body.professional-mode #viewContribution .contrib-entry-add{align-self:end;}}
@media(max-width:580px){body.professional-mode #viewContribution .contrib-entry-fields{grid-template-columns:minmax(0,1fr) 115px;}body.professional-mode #viewContribution .contrib-entry-field:first-child{grid-column:1/-1;}body.professional-mode #viewContribution .contrib-entry-add{grid-column:1/-1;}body.professional-mode #viewContribution .contrib-entry-footer{align-items:flex-start;}body.professional-mode #viewContribution .contrib-entry-summary .hint{font-size:12px;}}

/* Personal contribution history: one compact, labelled delete action per own row. */
body.professional-mode #myContributionList .contrib-delete-cell{width:52px;text-align:right;white-space:nowrap;}
body.professional-mode.pro-density-compact #myContributionList .contrib-delete{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;padding:0!important;color:#526986!important;background:#fff!important;border:1px solid #dbe5f1!important;box-shadow:none!important;}
body.professional-mode #myContributionList .contrib-delete span{font-size:24px;line-height:1;}
body.professional-mode #myContributionList .contrib-delete:hover:not(:disabled){color:#a72c3e!important;background:#fff3f4!important;border-color:#e8b9c0!important;}
body.professional-mode #myContributionList .contrib-delete:focus-visible{outline:3px solid #9cbfff;outline-offset:2px;}
body.professional-mode .viosActionScreen{scroll-margin-top:96px;}
