/* MLV V15 — shared Admin + Client dashboard language and operation feedback */
:root{
  --v15-surface:var(--ui-surface,var(--panel,#fff));
  --v15-surface-2:var(--ui-surface-soft,var(--panel-2,#f8f4ec));
  --v15-text:var(--ui-text,var(--ink,#1b1813));
  --v15-muted:var(--ui-muted,var(--muted,#6b645a));
  --v15-line:var(--ui-line,var(--line,rgba(27,24,19,.13)));
  --v15-accent:var(--ui-accent,var(--gold,#b88322));
  --v15-shadow:0 18px 52px rgba(23,18,10,.09);
  --v15-radius:22px;
}
.admin-page,.account-page{scroll-behavior:smooth}
/* V15.0.1 sharp-rendering hotfix: never animate/transform whole page canvases. Large transformed layers can stay rasterized in Safari and make all text look fuzzy. */
.admin-main,.account-main{animation:none!important;transform:none!important;filter:none!important}
.command-kpis,.client-command-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.command-kpis article,.client-command-kpis article,.department-card,.client-department-card,.admin-panel,.account-panel{
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease;
}
.command-kpis article:hover,.client-command-kpis article:hover,.department-card:hover,.client-department-card:hover{transform:translateY(-3px);box-shadow:var(--v15-shadow)}
[data-v15-live-count]{font-variant-numeric:tabular-nums;transition:opacity .18s ease,transform .18s ease}
[data-v15-live-count].is-updating{opacity:.45;transform:translateY(-2px)}
.v15-live-dot{display:inline-block;width:7px;height:7px;border-radius:999px;background:#4e9b64;box-shadow:0 0 0 5px rgba(78,155,100,.11);margin-right:7px;vertical-align:middle;animation:v15Pulse 2.3s ease-in-out infinite}
.mlv-notification-badge[data-notification-badge],.v15-nav-notification-badge{transition:transform .22s ease,opacity .22s ease}
/* V15.0.1 notification badge hotfix: legacy header rules used overflow:hidden on all buttons, clipping the floating unread count. */
.admin-header-actions .mlv-notification-trigger,.account-actions .mlv-notification-trigger{overflow:visible!important;max-width:none!important;isolation:isolate;flex:0 0 auto}
.admin-header-actions .mlv-notification-trigger .mlv-notification-badge,.account-actions .mlv-notification-trigger .mlv-notification-badge{right:-7px!important;top:-8px!important;transform:none!important;z-index:6;min-width:21px;height:21px;padding:0 6px;border-width:2px;line-height:1}
.admin-header-actions .mlv-notification-trigger .mlv-notification-badge.is-bumping,.account-actions .mlv-notification-trigger .mlv-notification-badge.is-bumping{animation:v15BadgeBump .45s ease!important}
.mlv-notification-badge[data-notification-badge].is-bumping,.v15-nav-notification-badge.is-bumping{animation:v15BadgeBump .45s ease}

/* Global operation progress */
.mlv-operation-layer{position:fixed;inset:0;z-index:10040;display:grid;place-items:center;padding:20px;background:rgba(16,14,11,.42);backdrop-filter:blur(12px) saturate(110%);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
.mlv-operation-layer.is-open{opacity:1;visibility:visible}
.mlv-operation-card{width:min(540px,calc(100vw - 30px));border:1px solid var(--v15-line);background:color-mix(in srgb,var(--v15-surface) 94%,transparent);color:var(--v15-text);border-radius:26px;box-shadow:0 30px 90px rgba(0,0,0,.24);overflow:hidden;transform:translateY(12px) scale(.985);transition:transform .28s ease;position:relative}
.mlv-operation-layer.is-open .mlv-operation-card{transform:none}
.mlv-operation-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--v15-accent),transparent);background-size:200% 100%;animation:v15Shimmer 1.4s linear infinite}
.mlv-operation-head{display:flex;gap:15px;align-items:center;padding:24px 24px 15px}.mlv-operation-orb{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:color-mix(in srgb,var(--v15-accent) 13%,var(--v15-surface));border:1px solid color-mix(in srgb,var(--v15-accent) 35%,transparent);position:relative}.mlv-operation-orb::before,.mlv-operation-orb::after{content:"";position:absolute;border-radius:999px;border:2px solid transparent}.mlv-operation-orb::before{width:24px;height:24px;border-top-color:var(--v15-accent);border-right-color:var(--v15-accent);animation:v15Spin .9s linear infinite}.mlv-operation-orb::after{width:13px;height:13px;background:var(--v15-accent);opacity:.18;animation:v15Pulse 1.5s ease infinite}.mlv-operation-copy{min-width:0;flex:1}.mlv-operation-copy small{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--v15-muted);font-weight:800;margin-bottom:5px}.mlv-operation-copy h2{font-size:22px;line-height:1.08;margin:0}.mlv-operation-copy p{margin:7px 0 0;color:var(--v15-muted);font-size:13px;line-height:1.45}.mlv-operation-progress{margin:0 24px;height:7px;border-radius:999px;background:color-mix(in srgb,var(--v15-text) 8%,transparent);overflow:hidden}.mlv-operation-progress>i{display:block;width:12%;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--v15-accent) 70%,white),var(--v15-accent));transition:width .42s cubic-bezier(.22,.8,.25,1)}
.mlv-operation-steps{padding:16px 24px 20px;display:grid;gap:8px}.mlv-operation-step{display:flex;align-items:center;gap:10px;color:var(--v15-muted);font-size:12px}.mlv-operation-step i{width:7px;height:7px;border-radius:999px;background:color-mix(in srgb,var(--v15-text) 18%,transparent)}.mlv-operation-step.is-active{color:var(--v15-text);font-weight:800}.mlv-operation-step.is-active i{background:var(--v15-accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--v15-accent) 12%,transparent)}.mlv-operation-step.is-done i{background:#4e9b64}.mlv-operation-foot{border-top:1px solid var(--v15-line);padding:13px 24px 17px;display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--v15-muted);font-size:11px}.mlv-operation-foot button{border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer}.mlv-operation-layer.is-success .mlv-operation-orb::before{animation:none;border:0;width:auto;height:auto;content:"✓";font-size:24px;color:#347b49}.mlv-operation-layer.is-success .mlv-operation-orb::after{display:none}.mlv-operation-layer.is-error .mlv-operation-orb::before{animation:none;border:0;width:auto;height:auto;content:"!";font-size:25px;color:#9a342a}.mlv-operation-layer.is-error .mlv-operation-orb::after{display:none}.mlv-operation-layer.is-error .mlv-operation-card::before{background:#9a342a;animation:none}.mlv-operation-layer.is-success .mlv-operation-card::before{background:#4e9b64;animation:none}

@keyframes v15Spin{to{transform:rotate(360deg)}}@keyframes v15Pulse{50%{transform:scale(.82);opacity:.55}}@keyframes v15Shimmer{to{background-position:-200% 0}}@keyframes v15PageIn{from{opacity:0}to{opacity:1}}@keyframes v15BadgeBump{40%{transform:scale(1.22)}75%{transform:scale(.94)}to{transform:scale(1)}}
@media(max-width:1150px){.command-kpis,.client-command-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.admin-main,.account-main{animation:none}.command-kpis,.client-command-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.command-kpis article,.client-command-kpis article{min-height:92px}.department-card,.client-department-card{border-radius:18px}.department-tools,.client-department-tools{grid-template-columns:1fr}.mlv-operation-layer{padding:12px;align-items:end}.mlv-operation-card{width:100%;border-radius:24px 24px 18px 18px}.mlv-operation-head{padding:21px 18px 14px}.mlv-operation-progress{margin:0 18px}.mlv-operation-steps{padding:15px 18px}.mlv-operation-foot{padding:12px 18px 16px}}
@media(prefers-reduced-motion:reduce){.admin-main,.account-main,.v15-live-dot,.mlv-operation-card::before,.mlv-operation-orb::before,.mlv-operation-orb::after{animation:none!important}.command-kpis article,.client-command-kpis article,.department-card,.client-department-card,.mlv-operation-layer,.mlv-operation-card,.mlv-operation-progress>i{transition:none!important}}

/* V15 financial safety + credit transfer surfaces */
.v15-danger-zone{border-color:color-mix(in srgb,#9a342a 30%,var(--v15-line))!important;background:color-mix(in srgb,#9a342a 3%,var(--v15-surface))!important}.v15-danger-zone>h3{color:color-mix(in srgb,#9a342a 82%,var(--v15-text))}.button-danger{background:#8d3028!important;color:#fff!important;border-color:#8d3028!important}.button-danger:hover{filter:brightness(.94)}
.v15-credit-transfer{border:1px solid var(--v15-line);border-radius:18px;padding:16px;background:var(--v15-surface-2);margin-top:14px}.v15-credit-transfer summary{cursor:pointer;font-weight:800;color:var(--v15-text)}.v15-credit-transfer form{margin-top:15px}.v15-credit-transfer-history{display:grid;gap:9px}.v15-credit-transfer-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--v15-line)}.v15-credit-transfer-row:last-child{border-bottom:0}
.mlv-operation-actions{display:inline-flex;gap:8px;align-items:center;margin-left:auto}.mlv-operation-actions button{border:1px solid var(--v15-line);border-radius:999px;padding:7px 11px;background:var(--v15-surface);text-decoration:none!important;font-weight:750}.mlv-operation-actions .mlv-operation-retry{background:var(--v15-text);color:var(--v15-surface);border-color:var(--v15-text)}
@media(max-width:760px){.v15-credit-transfer-row{align-items:flex-start;flex-direction:column}.mlv-operation-foot{flex-wrap:wrap}.mlv-operation-actions{width:100%;margin-left:0;justify-content:flex-end}}

/* V15 shared workspace system — applied to every Admin/Client page that uses the common shells */
.admin-title,.account-page-title,.travel-hub-heading{position:relative;isolation:isolate}
.admin-title h1,.account-page-title h1,.travel-hub-heading h1{letter-spacing:-.035em;text-wrap:balance}
.admin-title p,.account-page-title p,.travel-hub-heading p{max-width:78ch}
.admin-panel,.account-panel,.stat-grid>article,.v13-kpi,.system-status-grid>article,.diagnostic-summary>article{
  border-color:color-mix(in srgb,var(--v15-line) 92%,transparent)!important;
  box-shadow:0 10px 34px rgba(23,18,10,.045);
  animation:none!important;
  transform:none;
  filter:none;
}
.admin-panel:focus-within,.account-panel:focus-within{border-color:color-mix(in srgb,var(--v15-accent) 42%,var(--v15-line))!important;box-shadow:0 14px 42px rgba(23,18,10,.07)}
.admin-page :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]),.account-page :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]){
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease;
}
.admin-page :is(input,select,textarea):focus-visible,.account-page :is(input,select,textarea):focus-visible{
  outline:0;border-color:color-mix(in srgb,var(--v15-accent) 65%,var(--v15-line))!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--v15-accent) 12%,transparent)!important;
}
.admin-page :is(button,.button,.row-link),.account-page :is(button,.button,.account-button){transition:transform .17s ease,box-shadow .17s ease,filter .17s ease,background .17s ease,border-color .17s ease}
.admin-page :is(button,.button,.row-link):active,.account-page :is(button,.button,.account-button):active{transform:translateY(1px) scale(.99)}
.admin-page :is(button,.button,.row-link):focus-visible,.account-page :is(button,.button,.account-button):focus-visible{outline:2px solid color-mix(in srgb,var(--v15-accent) 75%,white);outline-offset:3px}
.admin-page .empty-state,.account-page .empty-state,.v13-empty{border:1px dashed color-mix(in srgb,var(--v15-line) 95%,transparent);border-radius:18px;padding:20px;background:color-mix(in srgb,var(--v15-surface-2) 65%,transparent);color:var(--v15-muted)}
.admin-table tbody tr,.account-table tbody tr,.configuration-list>div{transition:background .18s ease,transform .18s ease}
.admin-table tbody tr:hover,.account-table tbody tr:hover,.configuration-list>div:hover{background:color-mix(in srgb,var(--v15-accent) 5%,transparent)}
.admin-alert{animation:v15NoticeIn .3s ease both}
.v13-kpi strong,.stat-grid strong,.command-kpis strong,.client-command-kpis strong{font-variant-numeric:tabular-nums}
.v13-kpi-grid,.stat-grid,.system-status-grid,.diagnostic-summary{container-type:inline-size}

/* Live/async states shared by both roles */
.v15-live-refresh{position:relative}
.v15-live-refresh::after{content:"";position:absolute;inset:auto 12px 10px auto;width:6px;height:6px;border-radius:99px;background:#4e9b64;box-shadow:0 0 0 5px rgba(78,155,100,.1)}
[data-v15-loading="1"]{position:relative;pointer-events:none}
[data-v15-loading="1"]::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 28%,color-mix(in srgb,var(--v15-surface) 65%,transparent) 44%,transparent 60%);background-size:220% 100%;animation:v15Skeleton 1.25s linear infinite}

@keyframes v15SurfaceIn{from{opacity:0}to{opacity:1}}
@keyframes v15NoticeIn{from{opacity:0}to{opacity:1}}
@keyframes v15Skeleton{to{background-position:-220% 0}}

@media(max-width:760px){
  .admin-title,.account-page-title,.travel-hub-heading{gap:14px!important}
  .admin-panel,.account-panel{border-radius:18px!important;padding-left:clamp(14px,4vw,20px)!important;padding-right:clamp(14px,4vw,20px)!important}
  .admin-page :is(button,.button,.row-link),.account-page :is(button,.button,.account-button){min-height:44px}
  .admin-page :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]),.account-page :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]){font-size:16px}
  .admin-table,.account-table{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.admin-panel,.account-panel,.stat-grid>article,.v13-kpi,.system-status-grid>article,.diagnostic-summary>article,.admin-alert{animation:none!important}[data-v15-loading="1"]::after{animation:none!important}}

/* V15.0.3 — global adaptive workspace pass.
   Shared Admin/Client components now size from available content width instead
   of rigid desktop assumptions. This layer is intentionally last in the cascade. */
.admin-page .admin-main,.account-page .account-main{min-width:0!important;width:auto;max-width:none!important;container-type:inline-size}
.admin-page :is(.admin-panel,.admin-subpanel,.growth-panel,.social-panel,.finance-panel,.legal-panel,.payment-setup,.editor-section,.agenda-day),
.account-page :is(.account-panel,.account-card,.account-detail>*,.v13-credit-balance){min-width:0;max-width:100%;overflow-wrap:anywhere}
.admin-page :is(.admin-title,.admin-title-actions,.title-actions,.payment-status-heading,.panel-heading,.submanager-heading,.compact-list>div,.configuration-list>div,.review-admin-list article>header,.inquiry-list header),
.account-page :is(.account-heading,.v15-credit-history-row){flex-wrap:wrap;min-width:0}
.admin-page :is(.admin-title,.payment-status-heading,.panel-heading,.submanager-heading)>*,
.account-page :is(.account-heading,.v15-credit-history-row)>*{min-width:0;max-width:100%}
.admin-title-actions,.title-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Fluid field systems. span/full fields keep semantic full-width behavior. */
.admin-page :is(.admin-form-grid,.editor-grid,.hero-editor-grid,.management-grid),
.account-page :is(.account-form-grid){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important;
  gap:clamp(12px,1.4vw,18px)!important;
  align-items:start;
}
.admin-page :is(.admin-form-grid,.editor-grid,.hero-editor-grid,.management-grid) :is(.span-2,.full),
.account-page .account-form-grid :is(.span-2,.full){grid-column:1/-1!important}
.admin-page :is(.admin-form-grid,.editor-grid,.hero-editor-grid,.management-grid)>*,
.account-page .account-form-grid>*{min-width:0;max-width:100%}
.admin-page :is(input,select,textarea),.account-page :is(input,select,textarea){max-width:100%;min-width:0}

/* KPIs/cards fill available width automatically — no fixed card count. */
.admin-page :is(.v13-kpi-grid,.stat-grid,.system-status-grid,.diagnostic-summary,.command-kpis),
.account-page :is(.v13-kpi-grid,.stat-grid,.client-command-kpis){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr))!important;
  align-items:stretch;
}
.v15-fluid-kpis{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))!important}

/* Workspaces use the actual shell width (sidebar included), then stack before crowding. */
.admin-page .v13-workspace{grid-template-columns:minmax(min(100%,300px),.72fr) minmax(0,1.55fr)!important}
.account-page .account-columns{grid-template-columns:minmax(0,2fr) minmax(min(100%,280px),1fr)!important}
.admin-main[data-v15-layout="medium"] .v13-workspace,
.admin-main[data-v15-layout="compact"] .v13-workspace,
.account-main[data-v15-layout="medium"] .account-columns,
.account-main[data-v15-layout="compact"] .account-columns{grid-template-columns:1fr!important}
.admin-main[data-v15-layout="medium"] .v13-case-list,.admin-main[data-v15-layout="compact"] .v13-case-list{max-height:none!important}

/* Repeatable rows such as installments/last-minute rules stop colliding and reflow. */
.admin-page .installment-row{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(145px,1fr)) auto!important;
  gap:10px 12px!important;
  align-items:end!important;
  padding:12px!important;
  margin:8px 0!important;
  border:1px solid color-mix(in srgb,var(--v15-line) 92%,transparent);
  border-radius:14px;
  background:color-mix(in srgb,var(--v15-surface-2) 60%,transparent);
}
.admin-page .installment-row>label{display:grid!important;gap:6px;min-width:0}
.admin-page .installment-row>.button{align-self:end;white-space:nowrap}
.admin-main[data-v15-layout="medium"] .installment-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.admin-main[data-v15-layout="medium"] .installment-row>.button{width:100%}
.admin-main[data-v15-layout="compact"] .installment-row,.admin-page .installment-row.v15-is-cramped{grid-template-columns:1fr!important}
.admin-main[data-v15-layout="compact"] .installment-row>.button,.admin-page .installment-row.v15-is-cramped>.button{width:100%}

/* Lists become content-aware instead of forcing left/right content onto one line. */
.admin-page .configuration-list>div,.admin-page .compact-list>div{
  display:flex;align-items:center;justify-content:space-between;gap:12px 18px;flex-wrap:wrap!important;
}
.admin-page .configuration-list>div>span,.admin-page .compact-list>div>span{flex:1 1 280px;min-width:0}
.admin-page .configuration-list>div>form,.admin-page .compact-list>div>form{flex:0 1 auto;min-width:min(100%,220px);max-width:100%}
.admin-page .configuration-list>div.v15-is-cramped>*,.admin-main[data-v15-layout="compact"] .configuration-list>div>*{flex-basis:100%}
.v15-inline-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.v15-inline-form label{min-width:min(100%,170px)}

/* Credit ledger: issued / spent / remaining are always visible and responsive. */
.v15-credit-ledger-summary{display:grid!important;gap:7px}.v15-credit-metrics{display:flex;gap:7px;flex-wrap:wrap;margin:3px 0}
.v15-credit-metrics b{display:inline-flex;padding:6px 9px;border:1px solid var(--v15-line);border-radius:999px;background:color-mix(in srgb,var(--v15-surface-2) 72%,transparent);font-size:10px;line-height:1.2;white-space:nowrap}
.v15-credit-mini-ledger{display:grid;gap:5px;padding:11px 0;border-bottom:1px solid var(--v15-line)}
.v15-credit-history-row{display:flex;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--ui-line,var(--line))}

/* Headings/actions and tab rails adapt without overlap. */
.admin-page .editor-tabs{max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;overscroll-behavior-inline:contain}
.admin-page :is(.admin-title-actions,.title-actions,.payment-status-heading) :is(.button,button,a),
.account-page .account-heading :is(.account-button,button,a){max-width:100%}
.admin-main[data-v15-layout="compact"] :is(.admin-title,.payment-status-heading,.panel-heading,.submanager-heading),
.account-main[data-v15-layout="compact"] .account-heading{display:grid!important;grid-template-columns:1fr!important;align-items:start!important}
.admin-main[data-v15-layout="compact"] :is(.admin-title-actions,.title-actions){width:100%}
.admin-main[data-v15-layout="compact"] :is(.admin-title-actions,.title-actions)>.button{flex:1 1 180px}

/* Every data surface remains usable rather than pushing the application sideways. */
.admin-page :is(.table-wrap,.account-table-wrap,.calendar-panel,.invoice-item-editor),.account-page :is(.table-wrap,.account-table-wrap){max-width:100%;overflow:auto;overscroll-behavior-inline:contain}
.admin-page table,.account-page table{max-width:100%}
.admin-page img,.account-page img{max-width:100%;height:auto}
.admin-page :is(.item-cards article,.assignment-list label){min-width:0}
.admin-page .item-cards article{grid-template-columns:minmax(34px,45px) minmax(0,1fr) auto}
.admin-main[data-v15-layout="compact"] .item-cards article{grid-template-columns:1fr!important}
.admin-main[data-v15-layout="compact"] .item-cards article>div:last-child{align-items:stretch!important}

/* Keep motion small and vector-sharp; large layout surfaces never transform. */
.admin-page :is(.admin-panel,.admin-subpanel,.v13-workspace,.v13-kpi-grid,.stat-grid,.configuration-list),
.account-page :is(.account-panel,.account-columns,.v13-kpi-grid,.account-list){transform:none!important;filter:none!important}
.admin-page :is(.button,button),.account-page :is(.account-button,button){will-change:auto}

@media(max-width:760px){
  .v15-credit-history-row{display:grid;grid-template-columns:1fr}
  .v15-credit-metrics b{white-space:normal}
  .admin-page .configuration-list>div>form,.admin-page .compact-list>div>form{width:100%}
  .v15-inline-form{display:grid;grid-template-columns:1fr}.v15-inline-form>*{width:100%;max-width:none}
}

/* V15.0.3 broad component coverage discovered by the full Admin/Client layout scan. */
.admin-page :is(.command-card-grid,.integration-grid,.gallery-admin-grid,.homepage-copy-grid,.logo-upload-grid,.about-editor-media,.social-form-grid,.social-channel-grid,.social-card-grid,.social-calendar-grid),
.account-page :is(.client-department-grid,.account-grid,.account-favorite-grid){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important;
  gap:clamp(10px,1.3vw,18px)!important;
  align-items:stretch;
}
.admin-page .command-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr))!important}
.admin-page .gallery-admin-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}
.admin-page .admin-attention{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))!important;gap:14px!important}

.admin-page :is(.admin-split,.agenda-layout,.seo-media-grid,.branding-manager),
.account-page :is(.account-detail,.account-split-forms){min-width:0;max-width:100%}
.admin-page .admin-split{grid-template-columns:minmax(0,2fr) minmax(min(100%,280px),1fr)!important}
.admin-page .agenda-layout{grid-template-columns:minmax(0,1fr) minmax(min(100%,320px),360px)!important}
.admin-page .seo-media-grid{grid-template-columns:minmax(min(100%,280px),.75fr) minmax(0,1.25fr)!important}
.admin-page .branding-manager{grid-template-columns:minmax(min(100%,220px),240px) minmax(0,1fr)!important}
.account-page .account-detail{grid-template-columns:minmax(0,2fr) minmax(min(100%,280px),1fr)!important}
.account-page .account-split-forms{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important}
.admin-main[data-v15-layout="medium"] :is(.admin-split,.agenda-layout,.seo-media-grid,.branding-manager),
.admin-main[data-v15-layout="compact"] :is(.admin-split,.agenda-layout,.seo-media-grid,.branding-manager),
.account-main[data-v15-layout="medium"] :is(.account-detail,.account-split-forms),
.account-main[data-v15-layout="compact"] :is(.account-detail,.account-split-forms){grid-template-columns:1fr!important}

/* Forms/toolbars that historically used rigid desktop widths. */
.admin-page :is(.filters,.agenda-toolbar,.payment-test-form){max-width:100%;min-width:0;flex-wrap:wrap}
.admin-page .filters>*{min-width:min(100%,150px);flex:1 1 180px;max-width:100%}
.admin-page :is(.agenda-toolbar,.payment-test-form)>*{min-width:0;max-width:100%}
.admin-page .agenda-toolbar form{min-width:0;max-width:100%;flex-wrap:wrap}
.admin-main[data-v15-layout="compact"] .agenda-toolbar form{display:grid!important;grid-template-columns:1fr!important;width:100%}

/* Fixed editorial grids become content-driven while preserving intentional calendar/table structures. */
.admin-page .color-editor{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))!important}
.admin-page .assignment-list label{grid-template-columns:auto minmax(0,1fr) auto!important}
.admin-main[data-v15-layout="compact"] .assignment-list label{grid-template-columns:auto minmax(0,1fr)!important}.admin-main[data-v15-layout="compact"] .assignment-list label>b{grid-column:2}
.admin-main[data-v15-layout="compact"] .category-admin-list article{grid-template-columns:minmax(72px,90px) minmax(0,1fr)!important}.admin-main[data-v15-layout="compact"] .category-admin-list article>a{grid-column:1/-1;padding:0 12px 12px}

/* Dynamic width rather than magic max-width values for readable/narrow modules. */
.admin-page .admin-narrow{width:min(100%,72rem);max-width:none!important}
.admin-page .invoice-totals{width:min(100%,430px);max-width:none!important}
.admin-page .manual-reader{grid-template-columns:minmax(min(100%,210px),230px) minmax(0,850px)!important;max-width:100%}
.admin-main[data-v15-layout="medium"] .manual-reader,.admin-main[data-v15-layout="compact"] .manual-reader{grid-template-columns:1fr!important}

/* Runtime overflow safety net: legacy page-specific rows are changed only when
   ResizeObserver detects that they physically no longer fit their container. */
.admin-page .v15-auto-stack[data-v15-display="flex"],.account-page .v15-auto-stack[data-v15-display="flex"]{flex-wrap:wrap!important;max-width:100%!important}
.admin-page .v15-auto-stack[data-v15-display="flex"]>*,.account-page .v15-auto-stack[data-v15-display="flex"]>*{min-width:0;max-width:100%}
.admin-page .v15-auto-stack[data-v15-display="grid"],.account-page .v15-auto-stack[data-v15-display="grid"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important;max-width:100%!important}
