/* Final viewport contract, shared by public pages and staff tools.
   Each screen owns its safe area once; only its content region scrolls. */
:root{
  --ui-safe-top:max(env(safe-area-inset-top,0px),var(--ui-status-inset,0px));
  --ui-safe-bottom:env(safe-area-inset-bottom,0px);
  --ui-gutter:clamp(12px,4vw,18px);
  --ui-page-inset:max(var(--ui-gutter),calc((100vw - 900px)/2));
}
@media(display-mode:standalone){
  body,body[data-holiday-page="home"]{padding-top:var(--ui-safe-top)}
  body.lion-wife-owner .site-header{padding-top:0;min-height:80px;height:80px}
}

/* Insets size a fixed page to all four viewport edges, including PWA mode. */
.lm-feature-page,.lm-dialog.lm-dialog,.lm-navigation-page,.lm-albums-page,
.lion-favorites-dialog,.creator-portfolio-dialog{
  position:fixed;inset:0;margin:0;width:100%;height:auto;
  min-width:0;min-height:0;max-width:100%;max-height:none;
  max-inline-size:100%;box-sizing:border-box;border:0;border-radius:0;
  padding:0 var(--ui-page-inset);overflow:hidden;
}
.lm-feature-page{display:flex;flex-direction:column}
.lm-feature-page>.lm-feature-header,
.lm-navigation-page>.lm-feature-header,.lm-albums-page>.lm-feature-header,
.lm-form-dialog .lm-dialog-head,.lm-dialog>.lm-dialog-head,.lm-dialog.lm-customer-picker>.lm-feature-header,
.lm-dialog>.lm-ledger-detail-head{
  position:relative;top:auto;flex:none;min-height:0;margin:0;
  padding:calc(var(--ui-safe-top) + 6px) 0 8px;
  gap:10px;align-items:center;box-sizing:border-box;
  border-bottom:1px solid #39363c;
}
.lm-feature-header h2,.lm-form-dialog .lm-dialog-head h2,.lm-dialog>.lm-dialog-head h2{
  margin:0;min-width:0;font-size:clamp(20px,4.6vw,24px);line-height:1.3;
}
.lm-feature-header .lm-button{min-height:44px;padding:8px 10px}
.lm-feature-page #lm-admin-panel,
.lm-navigation-page>nav,.lm-albums-page>[data-albums-content],
.lm-customer-picker>.lm-picker-content,.lm-ai-viewer>.lm-ai-viewer-content{
  flex:1;min-height:0;min-width:0;max-width:100%;
  overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
  padding:12px 0 calc(var(--ui-safe-bottom) + 8px);
  scroll-padding-block:16px;-webkit-overflow-scrolling:touch;
}
.lm-navigation-page[open],.lm-albums-page[open],.lm-customer-picker[open],
.lm-ledger-detail-dialog[open],.lm-form-dialog[open],.lm-ai-viewer[open]{display:flex;flex-direction:column}
.lm-navigation-page>nav{display:block}
.lm-navigation-page nav section+section{margin-top:18px}
.lm-feature-page #lm-admin-panel>.lm-toolbar:first-child{margin-top:0}
.lm-feature-page .lm-panel{margin-bottom:14px}
.lm-feature-page .lm-branch-ledger-lists{margin-top:14px;gap:14px}

/* The form stays intact for validation and submission, with one scroll owner. */
.lm-form-dialog>.lm-form{flex:1;display:flex;flex-direction:column;height:auto;min-height:0;margin:0}
.lm-form-dialog .lm-dialog-content{
  flex:1;min-height:0;min-width:0;padding:12px 0;
  overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
  scroll-padding-block:16px;-webkit-overflow-scrolling:touch;
}
.lm-form-dialog .lm-dialog-actions,.lm-dialog.lm-customer-picker .lm-picker-footer{
  position:relative;bottom:auto;flex:none;margin:0;
  padding:8px 0 calc(var(--ui-safe-bottom) + 6px);gap:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.lm-customer-picker>.lm-picker-content{padding-bottom:12px}
.lm-form-dialog .lm-field,.lm-form-dialog .lm-ledger-customer{scroll-margin-block:12px}
.lm-form-dialog .lm-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lm-form-dialog .lm-field textarea{min-height:84px}
.lm-form-dialog .lm-personal-frame{padding:14px;margin-bottom:14px;border-radius:18px}
.lm-form-dialog .lm-frame-heading{margin-bottom:12px}
.lm-form-dialog .lm-dialog-description{margin-bottom:14px}
.lm-form-dialog .lm-close,.lm-feature-header .lm-close,.lm-dialog>.lm-dialog-head .lm-close{width:40px;height:40px}
.lm-dialog .lm-ledger-detail-list{flex:1;min-height:0;max-height:none;overflow-y:auto;padding-bottom:calc(var(--ui-safe-bottom) + 8px)}
.lm-dialog .lm-ledger-detail-actions{flex:none;margin:10px 0}
.lm-dialog.lm-ledger-calendar-dialog{overflow-y:auto;padding-bottom:calc(var(--ui-safe-bottom) + 8px)}
.lm-ledger-calendar-dialog>.lm-ledger-detail-head{position:sticky;top:0;z-index:5}

/* Public collection pages formerly applied safe-area padding twice. */
.lion-favorites-dialog,.creator-portfolio-dialog{padding:0;background:#111012}
.lion-favorites-dialog[open],.creator-portfolio-dialog[open]{display:flex}
.lion-favorites-shell,.creator-portfolio-shell{
  flex:1;display:flex;flex-direction:column;height:auto;min-height:0;width:100%;max-width:900px;
  margin:0 auto;padding:0 var(--ui-gutter);overflow:hidden;box-sizing:border-box;
}
.lion-favorites-heading,.creator-portfolio-dialog header{
  position:relative;top:auto;flex:none;margin:0;
  padding:calc(var(--ui-safe-top) + 6px) 0 10px;
  gap:12px;align-items:center;
}
.lion-favorites-heading>div,.creator-portfolio-dialog header>div{min-width:0}
.lion-favorites-heading h2,.creator-portfolio-dialog header h2{font-size:23px;line-height:1.3;margin:2px 0}
.lion-favorites-grid,.creator-portfolio-grid{
  flex:1;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;
  grid-auto-rows:var(--collection-row-height,max-content);
  align-content:start;padding:10px 0 calc(var(--ui-safe-bottom) + 8px);
  overscroll-behavior:contain;
}
/* These rules belong after the viewport contract: auto rows in a bounded
   scroll area must not divide its remaining height by the number of albums. */
.lion-favorites-work,.creator-portfolio-work{
  height:var(--collection-row-height,auto);min-height:var(--collection-row-height,0px);
  box-sizing:border-box;
}
/* Intrinsic fallback while a dialog is hidden or before its first measurement. */
.lion-favorites-work::before,.creator-portfolio-work::before{
  content:"";display:block;padding-top:133.333333%;
}
.lion-favorites-close,.creator-portfolio-close{min-height:40px;flex:none}

/* Let long names, prices and controls fit their allocated columns. */
.page :is(section,article,header,form),
.lm-feature-page :is(section,article,form),
.lm-dialog :is(section,article,form,.lm-fields,.lm-field){min-width:0;max-width:100%}
.lm-feature-header>*,.lm-dialog-head>*,.lm-section-head>*,.lm-toolbar>*,
.package-actions>*,.portfolio-subtitle-row>*,.creator-meta>*{min-width:0}
.page :is(h1,h2,h3,h4,p,dd),.lm-dialog :is(h2,h3,h4,p,dd){overflow-wrap:anywhere}
.lm-dialog :is(input,select,textarea),.lm :is(input,select,textarea){max-width:100%;box-sizing:border-box}
.lm-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.lm-order-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
.lm-section-head,.lm-toolbar,.package-actions,.portfolio-subtitle-row{flex-wrap:wrap}
.lm-toolbar>.lm-row-actions{margin-top:0}
.package-row{grid-template-columns:minmax(0,1fr) minmax(0,auto) 16px}
.package-row span{white-space:normal;text-align:right;overflow-wrap:anywhere}
.creator-meta{flex-wrap:wrap;justify-content:flex-start}
.creator-fee,.lm-team-fee{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.lm-ledger-detail-row{flex-wrap:wrap}
.lm-ledger-detail-row>div{flex:1 1 140px}
.lm-ledger-detail-row>b{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.lm-auto-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.lm-work-cell>div{min-width:0}
.lm-branch-ledger-row b,.lm-branch-ledger-sum strong{white-space:normal;overflow-wrap:anywhere}

@media(max-width:760px){
  .content-page{padding-inline:var(--ui-gutter)}
  .page-title,.portfolio-page .page-title{padding-block:18px}
  .page{padding-bottom:calc(88px + var(--ui-safe-bottom))}
  .lion-staff-workspace .profile-page{padding:0 var(--ui-gutter) calc(88px + var(--ui-safe-bottom))}
  .bottom-nav{bottom:calc(6px + var(--ui-safe-bottom))}
  .lm-feature-page .lm-panel,.lm-branch-ledger-section{padding:14px}
  .lm-feature-page .lm-toolbar{margin-block:12px}
  .lm-ledger .lm-section-head{margin-bottom:10px}
  .lm-ledger-branches{margin-block:12px}
  .lm-ledger-totals{margin-top:12px;gap:8px}
  .lm-ledger-total{min-height:78px;padding:11px 12px}
  .lm-form-dialog .lm-fields{grid-template-columns:minmax(0,1fr);gap:11px}
  .lm-fields{grid-template-columns:minmax(0,1fr)}
  .lm-order-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lm-personal-dialog .lm-fields,.lm-form-dialog .lm-order-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lm-personal-dialog .lm-field.lm-wide,.lm-form-dialog .lm-order-fields .lm-wide{grid-column:1/-1}
  .lm-form-dialog .lm-field :is(input,select,textarea){font-size:16px}
  .lm-customer-search-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .lm-customer-search-row>.lm-button{padding-inline:10px;max-width:104px;white-space:normal}
  .lm-order-fields .lm-field-notes textarea{min-height:100px}
  .lm-tabs{flex-wrap:wrap;overflow-x:hidden}
  .lm-tabs .lm-button{flex:1 1 auto;white-space:normal}
  .lm-table-wrap,.lm-analytics-table-wrap{overflow-x:hidden}
  .lm-work-table,.lm-analytics-table{display:block;width:100%;min-width:0}
  .lm-work-table thead,.lm-analytics-table thead{display:none}
  .lm-work-table tbody,.lm-analytics-table tbody{display:grid;gap:10px}
  .lm-work-table tr,.lm-analytics-table tr{display:grid;gap:8px;padding:12px;border-bottom:1px solid #454149}
  .lm-work-table td,.lm-analytics-table td{display:block;width:100%;min-width:0;padding:2px 0;text-align:left!important;border:0}
  .lm-sheet-payments .lm-payment-slot{grid-template-columns:54px minmax(0,1fr) minmax(0,1fr);gap:8px}
  .lm-sheet-payments .lm-payment-slot>strong{white-space:normal;overflow-wrap:anywhere}
  .lm-sort-grid>:nth-child(3n+1) .lm-card-menu>div{left:0;right:auto}
  .package-notes{margin-top:28px}
  .brochure{padding:24px 16px}
  .brochure header{padding-bottom:20px}
  .brochure-logo span{margin-bottom:22px}
}
@media(max-width:360px){
  .lm-personal-dialog .lm-fields,.lm-form-dialog .lm-order-fields{grid-template-columns:minmax(0,1fr)}
  .lm-team-private-facts{grid-template-columns:minmax(0,1fr)}
  .lm-customer-result{flex-wrap:wrap}
  .lm-customer-result strong,.lm-customer-result small{overflow-wrap:anywhere}
}

/* Major menu groups carry the brand outline; child actions stay compact. */
.lm-navigation-page nav section{
  grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;
  border:1px solid #ff92b9;border-radius:20px;padding:12px;
}
.lm-navigation-page nav h3{margin:0 0 2px;color:#f2b3cb}
.lm-navigation-page .lm-menu-item{
  min-width:0;min-height:44px;padding:8px 5px;border:0;
  border-radius:12px;background:#262529;color:#f5f5f7;
  font-size:13px;line-height:1.4;overflow-wrap:anywhere;
}
.lm-navigation-page .lm-menu-item[aria-pressed=true]{background:#444047;color:#fff}
.lm-navigation-page .lm-menu-item:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* Customer overview and statement use the same compact, complete payment data. */
.lm-customer-selected-nav{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px}
.lm-customer-selected-nav .lm-button{margin:0;min-height:44px;padding:8px 10px;font-size:13px}
.lm-customer-selected-nav [data-action="customer-statement"]{border:1px solid #f397bd;color:#f397bd;background:transparent}
.lm-customer-overview{width:100%;max-width:720px;margin:0 auto;color:#f7f4f7;font-size:14px;line-height:1.45}
.lm-customer-overview *{box-sizing:border-box;min-width:0}
.lm-customer-overview :is(h3,h4,p){margin:0;overflow-wrap:anywhere}
.lm-customer-overview .lm-compact-identity{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:14px}
.lm-compact-avatar{width:56px;height:64px;display:grid;place-items:center;overflow:hidden;border:1px solid #453d49;border-radius:14px;background:#2a252e;color:#e2dce4;font-size:28px}
.lm-compact-avatar img{width:100%;height:100%;object-fit:cover}
.lm-customer-overview .lm-compact-identity h3{font-size:21px;line-height:1.35}
.lm-customer-overview .lm-compact-identity p{margin-top:3px;color:#bbb4be;font-size:14px}
.lm-compact-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0;margin-bottom:12px;border:1px solid #363239;border-radius:16px;background:#19181c}
.lm-compact-totals>div{padding:0 5px;text-align:center}
.lm-compact-totals>div+div{border-left:1px solid #363239}
.lm-compact-totals span{display:block;color:#bbb4be;font-size:12px;margin-bottom:4px}
.lm-compact-totals strong{display:block;font-size:clamp(17px,4.7vw,22px);line-height:1.3;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.lm-compact-totals>div:last-child strong{color:#f397bd}
.lm-compact-orders{display:grid;gap:10px}
.lm-compact-order{padding:13px;border:1px solid #363239;border-radius:16px;background:#19181c}
.lm-compact-order>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.lm-compact-order>header h4{flex:1 1 110px;font-size:17px;line-height:1.4}
.lm-compact-order>header strong{font-size:16px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.lm-customer-overview .lm-compact-meta,.lm-customer-info-dialog .lm-compact-meta{color:#bbb4be;font-size:12px;margin:4px 0 12px}
.lm-customer-overview .lm-compact-order-balance{margin:0 0 10px;color:#f2bdcf;font-size:12px}
.lm-compact-payments{border-top:1px solid #363239;padding-top:10px}
.lm-customer-overview .lm-compact-payments h4{font-size:14px;margin:0 0 8px}
.lm-compact-payment-labels,.lm-compact-payment{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.7fr) minmax(0,1fr);align-items:center;gap:6px;width:100%;text-align:left}
.lm-compact-payment-labels{padding:0 0 5px;color:#bbb4be;font-size:12px}
.lm-customer-overview .lm-compact-payment{min-height:42px;margin:0;padding:8px 0;border:0;border-top:1px solid #302c34;border-radius:0;background:transparent;color:#f7f4f7;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;box-shadow:none}
.lm-compact-payment-labels>:last-child,.lm-compact-payment>:last-child{text-align:right;overflow-wrap:anywhere}
.lm-compact-payment strong{font-size:15px}
.lm-compact-payment.is-refund strong{color:#f2bdcf}
button.lm-compact-payment{cursor:pointer}
button.lm-compact-payment:focus-visible{outline:2px solid #f397bd;outline-offset:2px}
.lm-customer-overview .lm-compact-empty{padding:6px 0;color:#bbb4be;font-size:13px}
.lm-compact-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}
.lm-compact-actions .lm-button,.lm-compact-limit{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 4px;margin:0;border:1px solid #403846;border-radius:12px;background:#27232b;color:#f7f4f7;font-size:12px;text-align:center;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
.lm-compact-actions .lm-primary{background:#f397bd;color:#100e11;border-color:#f397bd}
.lm-compact-limit{color:#bbb4be;border-color:transparent;background:transparent}
.lm-compact-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 8px;margin-top:10px;color:#bbb4be;font-size:11px}
.lm-compact-pending{margin-top:10px;padding:12px;border:1px solid #876273;border-radius:14px;background:#21191e}
.lm-compact-pending h4{font-size:14px}
.lm-customer-overview .lm-compact-pending>p{font-size:12px;color:#d9b3c4;margin-top:4px}
.lm-compact-pending-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid #4a3741;padding:8px 0;margin-top:8px;font-size:12px}
.lm-compact-pending-row>div{flex:1 1 135px}
.lm-compact-pending-row small{display:block;color:#bbb4be}
.lm-compact-pending-row strong{font-variant-numeric:tabular-nums}
.lm-compact-pending-row .lm-button{min-height:40px;padding:7px 10px}
.lm-customer-tool-section{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid #363239}
.lm-customer-info-dialog .lm-dialog-actions[hidden]{display:none}
.lm-statement-dialog[open]{display:flex;flex-direction:column;background:#0c0b0d;color:#f7f4f7}
.lm-statement-dialog>.lm-feature-header{display:flex;justify-content:space-between;align-items:center;flex:none;margin:0;padding:calc(var(--ui-safe-top) + 6px) 0 8px;border-bottom:1px solid #363239;gap:8px}
.lm-statement-dialog>.lm-feature-header h2{font-size:18px;letter-spacing:0;line-height:1.3}
.lm-statement-content{flex:1;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:12px 0 calc(var(--ui-safe-bottom) + 8px)}
.lm-team-roster-hint{margin:0 0 10px;font-size:12px;color:#bbb4be}
/* The owner's pink account theme must not reduce contrast on receipt cards. */
body.lion-wife-owner :is(.lm,.lm-dialog) .lm-customer-overview :is(h3,h4,strong){color:#f7f4f7}
body.lion-wife-owner :is(.lm,.lm-dialog) .lm-customer-overview :is(p,small){color:#bbb4be}
body.lion-wife-owner :is(.lm,.lm-dialog) .lm-customer-overview .lm-compact-totals>div:last-child strong{color:#f397bd}
body.lion-wife-owner .lm-dialog.lm-statement-dialog{background:#0c0b0d;color:#f7f4f7}
body.lion-wife-owner .lm-statement-dialog>.lm-feature-header h2{color:#f7f4f7}

/* Customer management shares one page; only the selected editor expands. */
.lm-customer-selected-nav{align-items:flex-start;justify-content:space-between;gap:10px;margin:0 0 12px}
.lm-customer-header-actions{display:grid;gap:6px;justify-items:stretch;min-width:0}
.lm-customer-header-actions .lm-button{margin:0;min-height:40px;padding:7px 13px}
.lm-customer-update{font-size:12px;color:#f2bdcf;overflow-wrap:anywhere}
.lm-customer-update p:empty{display:none}
.lm-customer-update [hidden]{display:none!important}
.lm-customer-update p:not(:empty){margin:0 0 10px}
.lm-customer-update .lm-button{margin:0 0 10px}
.lm-customer-orders-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;flex-wrap:wrap}
.lm-customer-orders-head h4{margin:0;font-size:14px}
.lm-customer-orders-head .lm-button{margin:0;min-height:40px;padding:7px 12px;background:#f397bd;color:#100e11;border-color:#f397bd}
.lm-order-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.lm-order-actions [aria-expanded="true"]{border-color:#f397bd;color:#f397bd}
.lm-inline-order-editor{margin-top:12px;padding-top:12px;border-top:1px solid #454047;min-width:0;max-width:100%}
.lm-inline-order-editor[hidden]{display:none}
.lm-inline-order-form .lm-order-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lm-inline-order-form .lm-field{margin:0;scroll-margin-block:12px}
.lm-inline-order-form .lm-field label{font-size:12px;line-height:1.5;margin-bottom:6px;color:#dad4de}
.lm-inline-order-form :is(input,select,textarea){width:100%;min-width:0;max-width:100%;font-size:16px;padding:10px;min-height:44px;box-sizing:border-box}
.lm-inline-order-form .lm-consumption-editor{padding-top:12px}
.lm-inline-order-form .lm-section-head{margin:0 0 8px}
.lm-inline-order-form .lm-consumption-editor h3{font-size:14px;margin:0 0 8px}
.lm-inline-order-form .lm-consumption-grand{margin-top:12px;padding-top:10px}
.lm-inline-order-form .lm-manual-section{padding:12px;margin:12px 0 0}
.lm-inline-order-form .lm-manual-item{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lm-inline-order-form .lm-manual-choices .lm-button{min-width:0;font-size:13px;padding:9px 5px}
.lm-inline-order-form .lm-manual-choices small{font-size:11px}
.lm-inline-order-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}
.lm-inline-order-actions .lm-button{flex:1 1 100px;min-width:0;min-height:44px;margin:0;padding:8px 10px;font-size:13px}
.lm-inline-order-actions .lm-primary{background:#f397bd;color:#100e11;border-color:#f397bd}
.lm-inline-order-actions .lm-danger{flex:0 1 auto;color:#ffb9b9}
.lm-customer-record-tools{margin-top:12px;padding-top:10px;border-top:1px solid #363239;font-size:12px;color:#bbb4be}
.lm-customer-record-tools>summary{padding:8px 0;cursor:pointer}
.lm-customer-record-tools p{margin:8px 0;overflow-wrap:anywhere}
.lm-customer-record-tools .lm-button{margin-top:10px}
body.lion-wife-owner .lm-inline-order-form .lm-field label{color:#dad4de}
@media(max-width:600px){
 .lm-inline-order-form .lm-order-fields .lm-field-package_choice{grid-column:1/-1}
 .lm-inline-order-form .lm-consumption-pill-row{grid-template-columns:minmax(0,1fr) auto auto 24px;gap:4px}
 .lm-inline-order-form .lm-consumption-name{padding:7px;font-size:11px}
 .lm-inline-order-form .lm-consumption-price{padding:7px;font-size:11px}
}
@media(max-width:350px){
 .lm-inline-order-form .lm-order-fields{grid-template-columns:minmax(0,1fr);gap:10px}
 .lm-inline-order-form .lm-manual-item{grid-template-columns:minmax(0,1fr)}
 .lm-inline-order-form .lm-consumption-pill-row{grid-template-columns:minmax(0,1fr) auto 24px}
 .lm-inline-order-form .lm-consumption-name{grid-column:1/-1}
}
body.lion-wife-owner .lm-statement-dialog .lm-close{background:#27232b;color:#f7f4f7;border-color:#403846}

/* Mobile standalone screenshots can report a zero inset despite the iOS status bar. */
@supports (-webkit-touch-callout:none){@media(display-mode:standalone){:root{--ui-status-inset:44px}}}
@media(display-mode:browser){body.lion-staff-workspace .profile-page>.page-title{padding-top:calc(var(--ui-safe-top) + 22px)}}
.lm-style-options{display:block}
.lm-style-group{margin:0 0 16px}
.lm-style-group h4{font-size:13px;color:#f2b3cb;margin:0 0 8px}
.lm-style-group>div{display:flex;flex-wrap:wrap;gap:8px}
.lm-ledger-files{margin-top:18px;padding-top:16px;border-top:1px solid #454047}
.lm-ledger-files>label{display:grid;gap:10px}
.lm-ledger-files article{display:flex;align-items:center;gap:8px;margin:10px 0;flex-wrap:wrap}
.lm-ledger-files article>span{flex:1;min-width:90px;overflow-wrap:anywhere}
.lm-ledger-files article>img{width:54px;height:68px;object-fit:contain;background:#27232b}
.lm-ledger-file-original{display:block;width:100%;height:auto;object-fit:contain}
.lm-ai-progress-bar{max-height:min(170px,35dvh);overflow-y:auto;box-sizing:border-box}
.lm-ai-progress-dismiss{flex-shrink:0;align-self:flex-start;min-width:44px;min-height:44px}

/* Final customer rules: this stylesheet follows membership.css. */
.lm-customer-search-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:8px;align-items:end}
.lm-customer-search-row .lm-search{min-width:0;margin:0}
.lm-customer-search-row .lm-search input,.lm-customer-search-row>.lm-button{min-height:44px;height:44px;border-radius:999px}
.lm-customer-search-row>.lm-button{max-width:none;width:100%;padding:8px 5px;font-size:12px;background:#f397bd;color:#100e11;border-color:#f397bd}
.lm-customer-profile-head{display:block}
.lm-customer-overview .lm-compact-identity{grid-template-columns:48px minmax(0,1fr);gap:9px;margin-bottom:10px}
.lm-customer-overview .lm-compact-avatar{width:48px;height:56px}
.lm-customer-identity-copy{min-width:0}
.lm-customer-name-row{display:flex;align-items:center;gap:6px;min-width:0}
.lm-customer-overview .lm-customer-name-row h3{display:flex;align-items:center;gap:2px;flex:1;min-width:0;margin:0;font-size:18px;overflow-wrap:anywhere}
.lm-customer-overview .lm-button.lm-customer-pencil{flex:none;min-width:30px;min-height:36px;padding:3px;font-size:24px;border:0;background:transparent;color:#f397bd}
.lm-customer-name-row .lm-customer-info-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:0 0 142px;gap:5px;margin:0}
.lm-customer-name-row .lm-customer-info-actions>.lm-button{width:100%;min-width:0;min-height:34px;padding:6px 4px;font-size:11px;line-height:1.2;border-radius:999px;white-space:nowrap}
.lm-customer-overview .lm-order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.lm-customer-overview .lm-order-actions>.lm-button{min-width:0;min-height:44px;border-radius:999px;background:#101011;color:#f397bd;border:1px solid #f397bd;font-size:12px}
.lm-customer-overview .lm-order-actions>.lm-order-expand{grid-column:1/-1;width:100%;font-size:12px;color:#f397bd}
.lm-inline-order-form .lm-inline-order-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(16px,.6fr) repeat(2,minmax(0,1fr));gap:5px;align-items:center}
.lm-inline-order-form .lm-inline-order-actions>.lm-button{grid-column:auto;flex:none;width:100%;min-width:0;height:44px;min-height:44px;padding:7px 3px;margin:0;font-size:12px;line-height:1.2;white-space:nowrap;border-radius:999px}
.lm-inline-order-form .lm-inline-order-actions>.lm-order-action-gap{display:block;min-width:16px}
.lm-inline-order-form .lm-inline-order-actions>.lm-danger{grid-column:1}
.lm-inline-order-form .lm-inline-order-actions>[data-action="customer-order-discard"]{grid-column:3}
.lm-inline-order-form .lm-inline-order-actions>[type="submit"]{grid-column:4;background:#f397bd;color:#100e11;border-color:#f397bd}
.lm-record-history-entry.lm-audit-compact{padding:4px 0;margin:0}
.lm-record-history-entry.lm-audit-compact>summary{display:block;padding:0;margin:0;font-size:10px;line-height:1.5;color:#bdb7c2;overflow-wrap:anywhere;list-style:none}
.lm-record-history-entry.lm-audit-compact>summary::-webkit-details-marker{display:none}
.lm-audit-compact .lm-audit-changes{margin:4px 0;padding:0;font-size:10px}
.lm-customer-member-dialog .lm-inspection-payment{padding:9px 0}
.lm-payment-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.lm-inspection-payment .lm-payment-heading h4{min-width:0;margin:0;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.lm-inspection-payment .lm-payment-heading strong{flex:none;font-size:14px;line-height:1.4;font-variant-numeric:tabular-nums}
.lm-customer-member-dialog .lm-inspection-payment>p{font-size:11px;line-height:1.5;margin:4px 0 0}
.lm-customer-member-dialog .lm-inspection-payment>.lm-stamp{font-size:10px;line-height:1.4;margin-top:4px}
.lm-customer-member-dialog .lm-member-package{margin:6px 0 0}
.lm-new-customer-workspace .lm-dialog-content{overflow-y:auto;min-height:0}
.lm-new-customer-fields{margin:8px 0 14px}
.lm-new-customer-fields>summary{font-size:12px;color:#bdb7c2;margin:8px 0;cursor:pointer}
.lm-new-customer-workspace .lm-order-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.lm-new-customer-workspace .lm-payment-slot-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.lm-new-customer-workspace .lm-order-payments{margin-top:12px;padding-top:12px}
.lm-new-customer-workspace .lm-payment-edit{min-height:0;margin-top:8px;padding:10px}
.lm-new-customer-workspace .lm-dialog-actions>[type="submit"]{background:#f397bd;border-color:#f397bd;color:#100e11}
@media(max-width:350px){
 .lm-customer-overview .lm-compact-identity{grid-template-columns:40px minmax(0,1fr);gap:6px}
 .lm-customer-overview .lm-compact-avatar{width:40px;height:50px}
 .lm-customer-overview .lm-customer-name-row h3{font-size:16px}
 .lm-customer-name-row .lm-customer-info-actions{flex-basis:128px;gap:4px}
 .lm-customer-name-row .lm-customer-info-actions>.lm-button{font-size:10px;padding:5px 2px}
 .lm-new-customer-workspace .lm-fields{grid-template-columns:minmax(0,1fr)}
}
@media(min-width:600px){.lm-inline-order-form .lm-inline-order-actions{grid-template-columns:minmax(0,1fr) minmax(24px,1.5fr) repeat(2,minmax(0,1fr))}.lm-customer-name-row .lm-customer-info-actions{flex-basis:170px}}

/* Photo-first album layout; controls live inside the phone safe areas. */
#lightbox{inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:0;overflow:hidden;background:#080808}
#lightbox .work-page{padding:0;height:100%;width:100%;overflow:hidden}
#lightbox .lightbox-stage{position:absolute;inset:0;width:100%;height:100%;max-width:none;min-height:0;aspect-ratio:auto;margin:0;padding:0;overflow:hidden}
#lightbox .album-scroller{position:absolute;inset:0;width:100%;height:100%}
#lightbox .is-width-fit .pswp__img{object-fit:contain;object-position:center;max-width:none;max-height:none}
#lightbox .is-width-fit .pswp__img--placeholder{height:auto!important;object-fit:contain}
#lightbox .lightbox-header{position:absolute;z-index:4;top:0;left:0;right:0;width:100%;max-width:none;min-height:0;height:auto;margin:0;padding:calc(var(--ui-safe-top) + 14px) calc(max(14px,env(safe-area-inset-right)) + 108px) 38px max(14px,env(safe-area-inset-left));background:linear-gradient(to bottom,#0009,#0005 55%,transparent);pointer-events:none;display:block;color:#fff;text-shadow:0 1px 4px #0008}
#lightbox .lightbox-header .eyebrow{font-size:11px;line-height:1.4;letter-spacing:.08em;color:#e5e5e5}
#lightbox .lightbox-header h2{font-size:19px;line-height:1.3;margin:4px 0 0;color:#fff;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#lightbox :is(.lightbox-close,.lightbox-favorite){position:absolute;z-index:10;top:calc(var(--ui-safe-top) + 12px);width:44px;height:44px;border:1px solid #ffffff50;border-radius:50%;background:#17171966;backdrop-filter:blur(8px);color:#fff;opacity:1;transform:none;display:grid;place-items:center}
#lightbox .lightbox-close{right:max(14px,env(safe-area-inset-right))}
#lightbox .lightbox-favorite{right:calc(max(14px,env(safe-area-inset-right)) + 54px)}
#lightbox .lightbox-close svg{width:23px;height:23px}
#lightbox .lightbox-favorite svg{width:25px;height:25px}
#lightbox .lightbox-favorite[aria-pressed=true]{color:#ff92b9;border-color:#ff92b9}
#lightbox .lightbox-copy{position:absolute;z-index:4;left:0;right:0;bottom:0;max-width:none;width:100%;margin:0;display:block;padding:24px max(16px,env(safe-area-inset-right)) calc(var(--ui-safe-bottom) + 44px) max(16px,env(safe-area-inset-left));background:linear-gradient(to top,#000b,#0006 65%,transparent);color:#fff;text-shadow:0 1px 4px #0008;pointer-events:none}
#lightbox .work-views{display:block;font-size:12px;line-height:1.5;margin:0 0 5px;color:#eee;font-variant-numeric:tabular-nums}
#lightbox #lightbox-description{font-size:14px;line-height:1.5;margin:0;padding:0;max-width:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;color:#fff;pointer-events:auto}
#lightbox #lightbox-description-toggle{pointer-events:auto;min-height:28px;padding:2px 0;border:0;background:transparent;color:#f3c2d4;font-size:12px}
#lightbox.album-description-expanded #lightbox-description{display:block;max-height:min(40dvh,260px);overflow:auto;overscroll-behavior:contain;touch-action:pan-y}
#lightbox .vertical-swipe-hint{display:none}
#lightbox .album-controls{position:absolute;z-index:6;bottom:calc(var(--ui-safe-bottom) + 6px)!important;left:0;right:0;transform:none;width:100%;max-width:none;min-height:32px;margin:0;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:center;gap:12px;background:transparent}
#lightbox #lightbox-photo-count{font-size:12px;color:#fff;text-shadow:0 1px 3px #000;font-variant-numeric:tabular-nums}
#lightbox #lightbox-dots{margin:0;max-width:75px}
#lightbox #lightbox-dots button{height:32px}
#lightbox.album-info-hidden :is(.lightbox-header,.lightbox-copy){visibility:hidden;pointer-events:none}
#lightbox.album-is-zoomed .lightbox-copy{visibility:hidden;pointer-events:none}

/* Compact management filters and scroll-loader status. */
.lm-work-filters{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;max-width:100%;padding:2px 0 5px;margin:0;touch-action:pan-x}
.lm-work-filters::-webkit-scrollbar{display:none}
.lm-work-filters button{flex:0 0 auto;min-height:42px;border:1px solid #454047;border-radius:999px;background:#252329;color:#ddd;padding:8px 14px;font:inherit;font-size:13px;white-space:nowrap}
.lm-work-filters button[aria-pressed=true]{background:#f397bd;border-color:#f397bd;color:#120d10}
.lm-work-filter-count{font-size:12px;color:#bbb4be;margin:3px 0 12px}
.lion-auto-more{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 0;color:#bbb4be;font-size:12px}
.lion-auto-more.is-loading::before{content:'';width:15px;height:15px;border:2px solid #f397bd40;border-top-color:#f397bd;border-radius:50%;animation:lion-auto-spin .7s linear infinite}
.lion-auto-more button{min-height:40px;padding:6px 13px;border:1px solid #514550;border-radius:999px;background:#242027;color:#f5e9f0}
.lion-auto-more button[hidden]{display:none}
@keyframes lion-auto-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.lion-auto-more.is-loading::before{animation:none}}
.lion-upload-draft-entry{margin:0 0 10px;font-size:13px}
.lion-upload-draft-entry summary{display:inline-flex;align-items:center;min-height:40px;padding:6px 12px;border:1px solid #413b45;border-radius:999px;color:#d6cdd9;cursor:pointer}
.lion-upload-issues{padding:0;margin:0 0 12px}
.lion-upload-issues .lion-upload-row{border:1px solid #735461;border-radius:14px;padding:10px 12px;font-size:13px;margin:5px 0}
.lion-upload-issues .lion-upload-row p{font-size:12px;color:#e7bccd;margin:3px 0 0}
.lion-upload-draft-entry .lion-upload-row{padding:8px 0;font-size:13px}
.lion-upload-status{display:flex;flex-direction:column;gap:5px;font-size:12px;padding:8px 12px;max-width:calc(100vw - 24px)}
.lion-upload-status progress{appearance:none;-webkit-appearance:none;width:100%;height:3px;border:0;border-radius:999px;overflow:hidden;background:#50404b}
.lion-upload-status progress::-webkit-progress-bar{background:#50404b}
.lion-upload-status progress::-webkit-progress-value{background:#f397bd}
.lion-upload-status progress::-moz-progress-bar{background:#f397bd}

.lm-work-review{inset:0;margin:0;padding:0;border:0;border-radius:0;width:100%;height:100dvh;max-width:none;max-height:none}
.lm-review-shell{position:relative;height:100%;overflow:hidden}
.lm-review-shell .lm-review-stage{position:absolute;inset:0;width:100%;height:100%}
.lm-review-shell header{position:absolute;z-index:4;top:0;left:0;right:0;padding:calc(var(--ui-safe-top) + 12px) max(14px,env(safe-area-inset-right)) 36px max(14px,env(safe-area-inset-left));align-items:flex-start;background:linear-gradient(#000a,transparent);pointer-events:none}
.lm-review-shell header>div{padding-right:50px}
.lm-review-shell h2{font-size:18px;line-height:1.3;color:#fff}
.lm-review-shell .lm-review-close{width:44px;height:44px;pointer-events:auto}
.lm-review-shell .lm-review-count{font-size:12px;color:#eee}
.lm-review-shell footer{position:absolute;z-index:4;bottom:0;left:0;right:0;padding:36px 12px calc(var(--ui-safe-bottom) + 12px);background:linear-gradient(transparent,#000a)}
.lm-review-shell .lm-review-error:not(:empty){position:absolute;z-index:5;bottom:calc(var(--ui-safe-bottom) + 65px);background:#331c28;padding:8px 14px;width:100%}
.lm-review-viewer.is-width-fit .pswp__img{object-fit:contain}
.lm-review-viewer.is-width-fit .pswp__img--placeholder{height:auto!important;object-fit:contain}
