/* Shared portal sizing. WordPress navigation and unrelated plugin pages stay untouched. */
.mm-portal-admin #wpbody-content,.mm-portal-admin .wrap{min-width:0}
.mm-portal-admin .wrap,.mm-portal-admin .postbox .inside{overflow-wrap:anywhere}
.mm-portal-admin :is(.mm-review,.mm-workbench,.mmcp-over,.mmcp-penalties,.mm-onboarding,#mm-record){max-width:100%;min-width:0;box-sizing:border-box}
.mm-portal-admin :is(.mm-review-table,.mm-record-table,.mm-workbench-table,.mm-ops-table,.mm-cpd-table-wrap,.mm-ops-grid-scroll,.mo-table-wrap){max-width:100%;min-width:0;overscroll-behavior-x:contain;scrollbar-gutter:stable}
.mm-portal-admin [data-mm-scroll]:focus-visible{outline:2px solid #2271b1;outline-offset:2px}
.mm-portal-admin :is(.mm-review-filters,.mm-workbench-filter,.mm-ops-period) label{min-width:0;max-width:100%}
.mm-portal-admin :is(.mm-review-filters,.mm-workbench-filter,.mm-ops-period) :is(input,select){box-sizing:border-box;max-width:100%;min-width:0}
.mm-portal-admin .mm-review .nav-tab-wrapper{display:flex;flex-wrap:wrap;gap:6px}
.mm-portal-admin .mm-review .nav-tab{margin-left:0;white-space:normal;max-width:100%;box-sizing:border-box}
.mm-portal-admin .mmcp-penalties :is(.company-head,.penalty-item,.meta-grid)>*{min-width:0;overflow-wrap:anywhere}
.mm-portal-admin .mmcp-penalties .company-head{flex-wrap:wrap}
.mm-portal-admin .mmcp-penalties .meta-grid{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}
.mm-portal-admin .mmcp-penalties .summary-box{box-sizing:border-box;min-width:0;max-width:100%;flex:1 1 190px}
.mm-portal-admin .mmcp-penalties .actions .button{height:auto;white-space:normal;line-height:1.5;padding:8px 12px}
.mm-portal-admin #post :is(input[type=text],input[type=url],input[type=email],input[type=date],input[type=file],select,textarea){min-width:0!important;max-width:100%;box-sizing:border-box}
.mm-portal-admin #post .button{max-width:100%;height:auto;white-space:normal;line-height:1.5;padding-top:7px;padding-bottom:7px}
.mm-portal-admin #post .mmcp-ct-row{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}
.mm-portal-admin #post .mmcp-company-wrap{overflow-x:auto}
.mm-portal-admin .mm-record-planning{max-width:100%;overflow-x:auto}
.mm-portal-admin #post .mmcp-taskcell .hint-inline em{white-space:normal;display:block;margin:4px 0 0}
.mm-portal-admin #post .mmcp-cur li{grid-template-columns:minmax(0,1fr) auto}
.mm-portal-admin #post .mmcp-cur li>*{min-width:0}
.mm-cp,.mm-cp *{box-sizing:border-box}
.mm-cp :is(.mm-col-main,.mm-col-aside,.mm-task,.mm-head,.mm-head-title){min-width:0;max-width:100%;overflow-wrap:anywhere}
.mm-cp :is(input[type=file],input[type=text],input[type=date],select,textarea){max-width:100%;min-width:0}
.mm-cp :is(button,.ff-btn,.mm-ddd-download){max-width:100%;white-space:normal;overflow-wrap:anywhere;height:auto}
.mm-cp .mm-money-row{flex-wrap:wrap}
.mm-cp .mm-money-row>div{min-width:0}
.mm-cp .mm-head-title h1{font-size:24px}
.mm-cp .mm-head-sub{font-size:14px}
.mm-cp .mm-task h3{font-size:20px}
.mm-cp :is(.mm-moneybox,.mm-donebox) h2{font-size:18px}
.mm-onboarding .mo-field-label,.mm-onboarding .mo-heading{flex-wrap:wrap}
.mm-onboarding .mo-header>div,.mm-onboarding .mo-heading>*{min-width:0;overflow-wrap:anywhere}
.mm-onboarding .mo-checks label{min-width:0}
.mm-onboarding .mo-document h4 small{display:block;margin:6px 0 0}
body:has(.mm-cp) #mm-tuev-siegel{position:static;inset:auto;margin:24px auto 16px;transform:none;max-width:100%}
@media(min-width:601px){body.admin-bar:has(.mm-cp) #brx-header>.header{top:32px}}
@media(min-width:601px) and (max-width:782px){body.admin-bar:has(.mm-cp) #brx-header>.header{top:46px}}
@media(max-width:980px){.mm-cp .mm-col-aside{order:1}}

/* Mobile records keep every value and action visible, not a clipped desktop table. */
@media(max-width:782px){
  .mm-portal-admin .mmcp-over table,.mm-portal-admin .mm-workbench table{min-width:0;width:100%;border:0;background:transparent}
  .mm-portal-admin :is(.mmcp-over,.mm-workbench) table>thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .mm-portal-admin :is(.mmcp-over,.mm-workbench) table :is(tbody,tr,td){display:block;width:100%;box-sizing:border-box}
  .mm-portal-admin :is(.mmcp-over,.mm-workbench) tbody>tr{margin:0 0 16px;border:1px solid #dcdcde;border-radius:8px;background:#fff;box-shadow:0 1px 4px #00000008}
  .mm-portal-admin :is(.mmcp-over,.mm-workbench) table td{padding:12px 14px!important;border:0;border-bottom:1px solid #eef0f2;overflow-wrap:anywhere}
  .mm-portal-admin :is(.mmcp-over,.mm-workbench) table td:last-child{border-bottom:0}
  .mm-portal-admin :is(.mmcp-over,.mm-workbench) td[data-mm-label]::before{content:attr(data-mm-label);display:block;color:#646970;font-size:12px;font-weight:500;margin-bottom:6px}
  .mm-portal-admin .mm-workbench :is(th:nth-child(2),th:nth-child(3)){width:auto}
  .mm-portal-admin :is(.mm-review-filters,.mm-workbench-filter,.mm-ops-period){gap:12px}
  .mm-portal-admin :is(.mm-review-filters,.mm-workbench-filter,.mm-ops-period) label{flex:1 1 200px}
  .mm-portal-admin :is(.mm-review-filters,.mm-workbench-filter,.mm-ops-period) :is(input:not([type=hidden]),select){width:100%;min-height:44px}
  .mm-portal-admin :is(.mm-review,.mm-workbench,.mmcp-over,.mmcp-penalties,.mm-onboarding) .button,.mm-portal-admin .mm-review button{min-height:44px}
  .mm-portal-admin #post .mmcp-company :is(thead){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .mm-portal-admin #post .mmcp-company :is(tbody){display:block}
  .mm-portal-admin #post .mmcp-company tr{display:grid;grid-template-columns:40px minmax(0,1fr);padding:14px 10px;border-bottom:1px solid #dcdcde}
  .mm-portal-admin #post .mmcp-company td{display:block;width:auto!important;padding:4px;overflow-wrap:anywhere}
  .mm-portal-admin #post .mmcp-company td:last-child{grid-column:2}
  .mm-portal-admin #post .mmcp-company td:last-child::before{content:'Ablauf / Fälligkeit';display:block;font-size:12px;color:#646970;margin:8px 0 6px}
  .mm-portal-admin #post .mmcp-company .mm-date-editor{max-width:100%}
  .mm-portal-admin #post .mmcp-company :is(.mm-date-calendar,input[type=text]){min-height:40px}
  .mm-portal-admin #post .mmcp-company .mmcp-taskcell{padding-top:3px}
  .mm-portal-admin .mm-ops-toolbar>label{flex-wrap:wrap;max-width:100%}
  .mm-portal-admin .mm-ops-toolbar .mm-date-editor{max-width:100%}
}
@media(max-width:600px){
  /* The fixed theme header and seal must not cover portal actions on phones. */
  body:has(.mm-cp) #brx-header>.header{position:relative;top:auto;height:auto;min-height:0;padding:12px 16px}
  body:has(.mm-cp) #brx-header .header>.brxe-container{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-end;gap:10px;width:100%;min-width:0;height:auto}
  body:has(.mm-cp) #brx-header .brxe-container>div{width:auto;min-width:0;flex:0 1 auto;margin:0}
  body:has(.mm-cp) #brx-header .brxe-container>div:has(.logo){display:none}
  body:has(.mm-cp) #brx-header .brxe-button{max-width:100%;min-height:44px;white-space:normal;font-size:14px;padding:10px 12px;margin:0}
  body:has(.mm-cp) #brx-content .brxe-container:has(.mm-cp){margin-top:16px}
  .mm-portal-admin #post table.mm-ops-grid .mmcp-col-name{position:static}
  .mm-portal-admin .mm-review-item{padding:16px}
  .mm-portal-admin .mm-review-metrics{gap:16px 24px;padding:18px 0}
  .mm-portal-admin .mm-review-metrics strong{font-size:24px}
  .mm-portal-admin .mmcp-penalties .penalty-item{padding:14px 12px}
  .mm-portal-admin .mmcp-penalties .company-head{padding:14px 12px}
  .mm-portal-admin .mmcp-penalties .actions{max-width:none}
  .mm-portal-admin #post .mmcp-cur li{grid-template-columns:minmax(0,1fr)}
  .mm-cp .mm-layout{grid-template-columns:minmax(0,1fr)}
  .mm-cp .mm-col-aside{order:1}
  .mm-cp .mm-task,.mm-cp .mm-task[data-key="company:onboarding"]{padding:16px}
  .mm-cp .mm-head-title h1{font-size:22px}
  .mm-cp .mm-task h3{font-size:18px}
  .mm-cp :is(.mm-task button,.mm-task .ff-btn){min-height:44px}
  .mm-cp .mm-onboarding .mo-help button{min-height:24px}
  .mm-cp .mm-ddd-download{display:block;text-align:center}
  .mm-onboarding .mo-tabs button{min-height:44px}
  .mm-onboarding .mo-empty{padding:18px 12px}
}
@media(prefers-reduced-motion:reduce){.mm-cp .mm-progress-bar{transition:none}}
