/* Canonical compact composition, shared by web and native WebView.
   Loaded last to replace legacy fixed sizes; print labels keep their physical layout. */
@media screen {
 :root{--text-h1:24px;--text-h2:18px;--text-h3:16px}
 body{font-size:var(--font-size-body);line-height:1.5}
 .workspace{gap:var(--section-gap)}
 .workspace-main{min-width:0}
 .workspace .work-heading{margin-bottom:var(--section-gap);gap:var(--space-2)}
 .workspace .work-heading h1,.workspace .admin-console h1{font-size:var(--work-h1);line-height:1.3;margin:0}
 .workspace :is(h2,.work-panel>h2,.panel>h2){font-size:var(--work-h2);line-height:1.4}
 .workspace h3{font-size:var(--work-h3);line-height:1.4}
 .workspace :is(.work-heading p,.panel>p,.work-panel>p){margin-block:4px 8px}
 .workspace :is(.work-panel,.panel,.account-welcome,.preparation-panel,.staff-member,.staff-choices){padding:var(--panel-padding)}
 .workspace :is(.button,button:not(.text-button)):not(.icon-button){font-size:13px;line-height:1.3;min-height:var(--control-height);padding:6px 12px;letter-spacing:normal;box-sizing:border-box;max-width:100%}
 .workspace :is(.button-row,.form-actions,.record-actions,.operation-tools,.cook-export-tools,.user-search-actions){display:flex;flex-wrap:wrap;align-items:center;gap:8px}
 .workspace :is(.button-row,.form-actions,.record-actions,.operation-tools)>:is(button,.button){margin:0;flex:0 1 auto;width:auto}
 .workspace :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){padding:6px 10px;min-height:var(--control-height);box-sizing:border-box}
 .workspace :is(textarea){font-size:14px;line-height:1.5;padding:8px 10px}
 .workspace :is(.field,.form-field){margin-block:0;gap:var(--label-gap)}
 .workspace :is(.work-panel,.panel)>:is(.operation-form,.form-columns){margin-top:12px}
 .workspace :is(.quick-grid,.admin-kpis,.admin-columns,.studio-dishes,.creator-management-grid){gap:var(--card-gap)}
 .workspace :is(.quick-grid>a,.quick-grid>.stat-card){padding:12px}
 .workspace .quick-grid strong{font-size:16px}
 .workspace :is(.stat-card strong,.prep-metrics strong){font-size:22px;line-height:1.3}
 .workspace-sidebar{padding:12px;font-size:14px}
 .workspace-sidebar :is(nav a,summary){padding-block:6px;min-height:36px;line-height:1.4}
 .workspace :is(.workspace-tabs,.cook-filters,.admin-queue-tools){gap:8px;margin-bottom:12px}
 .workspace :is(.admin-queue-tools,.cook-filters) .field{flex:1 1 150px;max-width:280px}
 .workspace :is(.record-table,.admin-table,.cook-table){font-size:13px;line-height:1.45}
 .workspace :is(.record-table,.admin-table,.cook-table) :is(td,th){padding:8px 10px}
 .workspace :is(.status-label,.badge){font-size:12px;line-height:1.4;word-break:normal;white-space:nowrap;padding:3px 6px}
 .workspace .admin-queue-row>summary{padding:8px 12px;gap:8px;min-height:44px}
 .workspace .queue-column-head{padding:8px 12px;gap:8px}
 .workspace :is(.user-facts,.record-facts){gap:8px 16px}
 .workspace :is(.staff-option,.staff-member summary){min-height:var(--control-height)}
 .workspace .staff-choices{gap:8px}
 .workspace .phone-number-fields{max-width:440px;grid-template-columns:100px minmax(0,1fr);gap:8px}
 .workspace [data-phone-form][data-phone-scope]{max-width:600px}
 .workspace input:is([type=tel],[name=postcode]){max-width:320px}
 /* Continuous driver records: two action groups share one responsive grid. */
 .driver-task-list{margin-top:8px}
 .driver-task-list>li{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 6px;padding-block:10px}
 .driver-task-list>li>:is(a,.driver-task-summary,p,details,form,[data-task-record]){grid-column:1/-1}
 .driver-task-list>li>:is(a,.driver-task-summary){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;min-height:0;padding:0}
 .driver-task-list>li>:is(a,.driver-task-summary) strong{font-size:14px;line-height:1.4}
 .driver-task-list>li>:is(a,.driver-task-summary) small{grid-column:1/-1;font-size:13px;line-height:1.45}
 .driver-task-list>li>:is(a,.driver-task-summary) span{font-size:12px;white-space:nowrap}
 .driver-task-list>li>.driver-task-actions{display:contents}
 .driver-task-list>li>.driver-task-actions>:is(button,a){display:flex;justify-content:center;align-items:center;flex:none;width:auto;min-width:0;min-height:36px!important;height:100%;padding:6px!important;font-size:13px;line-height:1.3;text-align:center;margin:0;overflow-wrap:normal}
 .driver-list-note{font-size:13px;line-height:1.45;margin:2px 0}
 .driver-flow .driver-destination{font-size:16px;margin-block:8px}
 .driver-flow .driver-actions{gap:8px;margin-block:8px}
 .driver-flow .driver-actions>*{min-height:var(--control-height)}
 .driver-task-list form :is(button,input,select){min-height:var(--control-height)!important}
 .driver-task-list :is([data-task-record],[data-task-note-form]){margin-top:4px;padding:8px}
 .driver-task-list :is([data-task-record],[data-task-note-form])[hidden]{display:none!important}
 .driver-task-list .driver-photo-grid:empty{display:none}
 .driver-task-list .driver-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .driver-task-list .driver-photo-grid img{height:72px}
 .driver-work-nav{gap:8px;padding:4px 12px calc(4px + env(safe-area-inset-bottom))}
 .driver-work-nav button{min-height:44px!important;font-size:14px}
 /* Storefront retains two columns and explicit quantity/add controls. */
 .food-card h3,.dish-card h3{font-size:16px;line-height:1.35}
 .food-card p,.dish-card p{font-size:13px;line-height:1.45}
 .customer-order-table td small{margin-top:2px}
}
@media screen and (max-width:768px){
 :root{--text-h1:22px;--text-h2:18px}
 .workspace :is(.button,button,input:not([type=checkbox]):not([type=radio]):not([type=file]),select){min-height:44px}
 .workspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}
 .workspace-sidebar :is(nav a,summary){min-height:44px}
 .workspace :is(.admin-queue-tools,.cook-filters) .field{flex:1 1 120px;max-width:none}
 .workspace .user-search{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .workspace .user-search>.field:first-child{grid-column:1/-1}
 .workspace .user-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .workspace .customer-order-table tr{padding:10px;gap:4px 8px;margin-bottom:8px}
 .workspace .customer-order-table td{padding:0}
 .workspace .customer-order-table td:first-child{grid-column:1}
 .workspace .customer-order-table td:nth-child(2){grid-column:2}
 .workspace .customer-order-table td:last-child{grid-column:1/-1}
 .workspace .record-actions{min-height:44px}
 .workspace .admin-queue-row>summary{padding:8px;gap:4px 8px}
 .driver-task-list>li{grid-template-columns:repeat(3,minmax(0,1fr));padding-block:8px}
 .driver-task-list>li>.driver-task-actions>:is(button,a){min-height:44px!important}
 .driver-task-list>li>:is(a,.driver-task-summary){grid-template-columns:minmax(0,1fr) auto}
 .driver-task-list .driver-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .workspace .staff-choices{padding:10px}
 .workspace .staff-option{min-height:44px;font-size:13px}
}
@media screen and (max-width:768px){
 /* Keep identity/menu/logout available without a full extra card-sized row. */
 .workspace .workspace-sidebar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:8px 0;margin-bottom:0}
 .workspace .workspace-sidebar .workspace-identity{padding:0;border:0;margin:0;min-height:44px}
 .workspace .workspace-sidebar .workspace-identity small{display:none}
 .workspace .workspace-sidebar .workspace-menu-toggle{min-height:44px;padding:6px 10px;font-size:13px}
 .workspace .workspace-sidebar .workspace-menu-content{grid-column:1/-1}
 .workspace .workspace-sidebar .account-signout{grid-column:2;margin:0;padding:0;border:0;justify-self:end}
 .workspace .workspace-sidebar .account-signout button{width:auto;padding:4px 8px;min-height:44px;font-size:13px}
 .workspace .workspace-sidebar:has(.workspace-menu-content:not(.is-open)) .account-signout{margin-top:0}
 .storefront-route .dish-title-row h3{font-size:14px}
 .storefront-route .dish-title-row .price{font-size:16px}
 .storefront-route .dish-card-copy{padding:8px 0}
 .storefront-route .dish-purchase-controls .save-dish-cart,.storefront-route .dish-purchase-controls .quantity button{min-height:44px;height:44px}
 .storefront-route .dish-shopping-actions{min-height:44px}
}
@media screen {
 .workspace :is(.button-row,.form-actions){margin-block:8px 0}
 .workspace .driver-task-list form{margin-block:8px 0}
 .workspace .driver-task-list form .button-row{margin:0}
 .workspace .driver-task-list [data-task-feedback]:empty{display:none}
 .workspace .work-panel{margin-bottom:var(--section-gap)}
 .workspace .purchase-card :is(header,footer,.purchase-body){padding:10px 12px}
 .workspace .purchase-card .purchase-item{padding-block:6px}
 .workspace .purchase-card footer .button-row{width:auto}
 .workspace .purchase-card{margin-block:8px;font-size:14px}
}
@media screen and (max-width:768px){
 .workspace .workspace-sidebar{grid-template-columns:minmax(0,1fr) auto auto}
 .workspace .workspace-sidebar .workspace-identity{grid-column:1;grid-row:1}
 .workspace .workspace-sidebar .workspace-menu-toggle{grid-column:2;grid-row:1}
 .workspace .workspace-sidebar .account-signout{grid-column:3;grid-row:1}
 .workspace .workspace-sidebar .workspace-menu-content{grid-row:2}
}
@media screen {
 /* Search already has visible labels; avoid a duplicate panel title above it. */
 .work-panel:has(>[data-managed-orders-search])>h2{display:none}
 .workspace [data-managed-orders-search]{grid-template-columns:minmax(0,2fr) minmax(120px,1fr) auto;gap:8px;align-items:end}
 .workspace [data-managed-orders-search]>.user-search-actions{grid-column:3;grid-row:1}
 .workspace [data-managed-orders-search]>.order-advanced-filters{grid-row:2;margin:0}
 .workspace [data-managed-orders-search]>.small-text{font-size:12px;margin:0}
 .workspace [data-managed-orders-search]>.managed-orders-search-error:empty{display:none}
}
@media screen and (max-width:768px){
 .workspace [data-managed-orders-search]{grid-template-columns:minmax(0,1fr) auto}
 .workspace [data-managed-orders-search]>.field:first-child{grid-column:1/-1}
 .workspace [data-managed-orders-search]>.user-search-actions{grid-column:2;grid-row:2}
 .workspace [data-managed-orders-search]>.order-advanced-filters{grid-row:3}
 .admin-site-header .header-inner{gap:4px 8px;padding-block:6px}
 .admin-site-header .header-inner>strong{font-size:12px}
 .admin-site-header .header-actions{gap:12px}
}
@media screen and (max-width:768px){
 .workspace>.workspace-main>.workspace-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:4px;padding-block:4px;margin-bottom:8px;max-width:100%;scrollbar-width:thin}
 .workspace>.workspace-main>.workspace-tabs>a{flex:0 0 auto;min-height:44px;padding:6px 10px;font-size:13px;white-space:nowrap;display:flex;align-items:center;gap:4px}
}
@media screen and (min-width:600px) and (max-width:768px){
 .driver-task-list>li{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media screen {
 .workspace .compact-export-help{font-size:12px;margin:4px 0 8px}
 .workspace .compact-export-help summary{cursor:pointer;min-height:36px;align-content:center;color:var(--muted)}
 .workspace [data-managed-orders-search]{grid-template-columns:minmax(0,1fr) auto}
 .workspace [data-managed-orders-search]>.field:first-child{grid-column:1}
 .workspace [data-managed-orders-search]>.user-search-actions{grid-column:2;grid-row:1}
}
@media screen and (max-width:768px){
 .workspace{margin-block:12px;padding-block:0}
 .workspace [data-managed-orders-search]>.field:first-child{grid-column:1/-1}
 .workspace [data-managed-orders-search]>.user-search-actions{grid-column:2;grid-row:2}
 .workspace [data-managed-orders-search]>.order-advanced-filters{grid-column:1;grid-row:2}
 .workspace [data-managed-orders-search]>.order-advanced-filters[open]{grid-column:1/-1;grid-row:3}
 .workspace .compact-export-help summary{min-height:44px}
 .workspace .order-management>.work-heading{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-start;gap:8px}
 .workspace .order-management>.work-heading h1{flex:1 1 100%}
 .workspace .order-management>.work-heading>.button{flex:0 1 auto}
}
/* Driver navigation mirrors the customer icon-over-label navigation. */
@media screen {
 .driver-work-nav{grid-template-columns:repeat(4,minmax(0,1fr));background:var(--header-bg);gap:4px;padding:8px 8px max(8px,env(safe-area-inset-bottom))}
 .workspace .driver-work-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;border-radius:0;background:transparent;color:var(--muted);min-height:48px!important;padding:0;font-size:12px;font-weight:400}
 .workspace .driver-work-nav button[aria-current=page]{color:var(--copper);background:transparent;font-weight:600}
 .driver-work-nav .icon{width:24px;height:24px}
 .driver-work-nav span{white-space:nowrap}
}

/* Role headers outrank links; override the legacy 12px !important heading shorthand. */
.workspace-sidebar .workspace-role-group{margin-block:0 12px;border-bottom:1px solid var(--line);padding-bottom:8px}
.workspace-sidebar .workspace-role-group>summary{min-height:44px;padding:6px 8px;gap:8px;border-radius:var(--radius-small);background:var(--surface-raised)}
.workspace-sidebar .workspace-role-group>summary>.admin-nav-group{font:700 18px/1.4 var(--font)!important;letter-spacing:0;color:var(--text);padding:0;margin:0;border:0}
.workspace-sidebar .workspace-role-links{display:grid;gap:4px;margin-left:12px;padding-left:8px;border-left:1px solid var(--line)}
.workspace-sidebar .workspace-role-links>a{font-size:14px;font-weight:500;min-height:36px;padding:8px 10px;margin:0;line-height:1.45}
.workspace-sidebar .workspace-role-links>a.active,.workspace-sidebar .workspace-role-links>a[aria-current=page]{font-weight:700;border-left:3px solid var(--copper);background:var(--surface-raised)}
.cook-related-dialog{width:min(680px,calc(100vw - 24px));max-height:85dvh;padding:16px;border-radius:var(--radius);margin:auto;overflow:auto}
.cook-related-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.cook-related-dialog h2{font-size:18px;margin:0}.cook-related-dialog>header button{min-width:44px;min-height:44px;padding:4px;font-size:22px}
.cook-related-meta{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:13px}.cook-related-lines{list-style:none;padding:0;margin:12px 0}.cook-related-lines>li{border-top:1px solid var(--line);padding:12px 0}.cook-related-line-heading{display:flex;justify-content:space-between;gap:12px}.cook-related-line-heading>strong{min-width:0;overflow-wrap:anywhere}.cook-related-line-heading>span{white-space:nowrap}.cook-related-lines small{font-size:12px;color:var(--muted)}.cook-related-lines p,.cook-related-note p{margin:4px 0;overflow-wrap:anywhere;white-space:pre-wrap}.cook-related-note{border-top:1px solid var(--line);padding-top:12px}
@media(max-width:768px){.workspace-sidebar .workspace-role-links>a{min-height:44px}.cook-related-dialog{padding:12px}.cook-related-dialog button{min-height:44px}}

.required-mark{color:var(--status-danger);font-weight:700}
.profile-phone-bind{display:flex;align-items:flex-end;gap:8px;min-width:0}
.profile-phone-bind>.field{flex:1;min-width:0;margin:0}
.profile-phone-bind>.button{flex-shrink:0;margin-bottom:0;white-space:nowrap}
.profile-phone-dialog{width:min(560px,calc(100vw - 24px));max-height:85dvh;box-sizing:border-box;overflow:auto;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}
.profile-phone-dialog::backdrop{background:#0006}
.profile-phone-dialog>header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.profile-phone-dialog>header h2{font-size:18px;margin:0}
.profile-phone-dialog>header button{min-width:44px;min-height:44px}
.profile-phone-dialog .phone-security{border:0;padding:0;margin-top:12px}
.profile-phone-dialog .phone-security>h2{display:none}
@media(max-width:768px){.profile-phone-bind button{min-height:44px}.profile-phone-dialog{padding:12px}.profile-phone-dialog input{font-size:16px}.profile-phone-dialog button{min-height:44px}}

.profile-phone-bind>.field input{width:100%;max-width:none}

/* Text-only navigation: stronger group headings and no empty icon spacing. */
.workspace-sidebar .workspace-role-group>summary{padding:10px 8px;min-height:48px}
.workspace-sidebar .workspace-role-links{padding-top:4px}
.workspace .driver-work-nav button,.mobile-bottom-nav a,.mobile-bottom-nav button{font-size:14px;gap:0}
.workspace .driver-work-nav button[aria-current=page]{font-weight:700;border-bottom:2px solid var(--copper)}
.workspace-menu-toggle{font-size:16px;font-weight:700}

.customer-delivery-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:480px;margin-top:8px}
.customer-delivery-photos button{border:0;background:transparent;padding:0;cursor:zoom-in;min-width:0}
.customer-delivery-photos img{display:block;width:100%;height:140px;object-fit:cover;border-radius:4px}
.inbox-item{border-bottom:1px solid var(--line);padding-bottom:12px}
.inbox-item .inbox-record{border:0}

.inbox-item .notification-body{white-space:pre-line}
.order-progress ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px;overflow:visible}.order-progress li{white-space:normal;min-width:0}@media(min-width:768px){.order-progress ol{grid-template-columns:repeat(6,minmax(0,1fr))}}

.customer-refund-dialog{width:min(900px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:16px;border:1px solid var(--line);border-radius:8px}.customer-refund-dialog::backdrop{background:#0006}.customer-refund-dialog header{display:flex;justify-content:space-between;align-items:center;gap:12px}.refund-dialog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.refund-policy details{padding:8px 0;border-bottom:1px solid var(--line)}.refund-policy p{font-size:13px}.customer-refund-dialog .operation-form{margin:0}@media(max-width:600px){.refund-dialog-layout{grid-template-columns:1fr}.customer-refund-dialog{padding:12px}}
.customer-refund-dialog .feedback-upload input[type=file]{position:absolute;width:1px;min-width:0;height:1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden}.customer-refund-dialog .feedback-upload label{position:relative}.customer-refund-dialog .feedback-upload label:focus-within{outline:2px solid var(--copper);outline-offset:2px}
.customer-refund-dialog h2{font-size:18px;line-height:1.5;margin:0}.customer-refund-dialog header{margin-bottom:12px}.customer-refund-dialog .operation-form{gap:12px}.customer-refund-dialog .feedback-upload{padding:0;border:0;background:none}.customer-refund-dialog .feedback-upload p:empty,.customer-refund-dialog [data-feedback-images]:empty{display:none}.customer-refund-dialog .button-row{margin:0;gap:8px}.customer-refund-dialog .field{margin:0}.customer-refund-dialog .form-actions{margin-top:4px}

.driver-task-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:12px}.driver-task-heading h2{margin:0}.driver-task-heading [data-driver-task-count]{font-size:13px;white-space:nowrap;color:var(--muted)}

/* Stable viewport bar: active underline must never change row height. */
.workspace .driver-work-nav{box-sizing:border-box;height:calc(65px + max(0px,env(safe-area-inset-bottom) - 8px));grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;margin:0;top:auto;bottom:0;}
.workspace .driver-work-nav button{box-sizing:border-box;height:48px;min-width:0;margin:0;border-bottom:2px solid transparent;line-height:20px;}
.driver-contact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.driver-contact-row a{min-height:44px;display:inline-flex;align-items:center;}

/* Keep every label in the same line box; no native button or SVG baseline differences. */
.workspace .driver-work-nav{display:flex!important;align-items:center;overflow:hidden;}
.workspace .driver-work-nav>button{flex:1 1 0;width:0;display:flex;flex-direction:row;align-items:center;justify-content:center;appearance:none;-webkit-appearance:none;padding:0!important;vertical-align:middle;}
.workspace .driver-work-nav>button>span{display:block;margin:0;padding:0;line-height:20px;}
html:has(.driver-flow),body:has(.driver-flow){overscroll-behavior-y:none;}
.driver-history-order>summary{display:block;min-height:44px;line-height:1.5;padding:8px 0;cursor:pointer;overflow-wrap:anywhere;}
.driver-history-order>summary::after{content:'＋';float:right;margin-left:8px;}
.driver-history-order[open]>summary::after{content:'−';}
.driver-history-order>summary::-webkit-details-marker{display:none;}

/* The iPhone safe area belongs to the page; keep content above the home indicator.
   Driver panes scroll independently, so route-map height cannot move the shared bar. */
body{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
@media(max-width:768px){
 html:has(.driver-flow),body:has(.driver-flow){height:100%;overflow:hidden;}
 .workspace .driver-flow{position:fixed;inset:calc(var(--driver-header-height,72px) + env(safe-area-inset-top)) 0 0;display:flex;flex-direction:column;padding:0;background:var(--header-bg);overflow:hidden;}
 .driver-flow>.work-heading{flex:none;margin:0;padding:12px;}
 .driver-flow>[data-driver-pane]{flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 12px 12px;scroll-padding-block:12px;}
 .driver-flow>.driver-sync-panel{flex:none;}
 .workspace .driver-work-nav{position:relative;inset:auto;flex:none;width:100%;height:calc(65px + var(--driver-bottom-inset,env(safe-area-inset-bottom)));padding:8px 8px calc(8px + var(--driver-bottom-inset,env(safe-area-inset-bottom)));background:var(--header-bg);}
}
body:has(.driver-flow) .support-launcher{bottom:calc(81px + env(safe-area-inset-bottom));}
body:has(.driver-flow) .support-chat{bottom:calc(137px + env(safe-area-inset-bottom));max-height:calc(100dvh - 160px - env(safe-area-inset-bottom));}

/* Customer and driver navigation share one component treatment, separate from content. */
.app-tab-bar,.workspace .driver-work-nav.app-tab-bar{background:#fff;border-top:1px solid var(--control-border);box-shadow:0 -3px 12px #49312612;gap:4px;}
.app-tab-bar>:is(a,button),.workspace .driver-work-nav.app-tab-bar>button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-height:48px;height:48px;border:0;border-radius:8px;text-decoration:none;line-height:20px;font-size:14px;color:var(--muted);background:transparent;font-weight:400;}
.app-tab-bar>[aria-current=page],.workspace .driver-work-nav.app-tab-bar>button[aria-current=page]{background:#f4e9df;color:var(--copper);border:0;font-weight:700;}

/* One creation entry shares the existing card heading; quota is enforced on submit. */
.identity-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.identity-heading h2{margin:0}
.identity-add{width:44px;height:44px;min-width:44px;padding:0;font-size:24px;line-height:1;flex:none}
#dialog [data-create-identity]{display:grid;gap:12px}
#dialog [data-create-identity] .dialog-actions{grid-column:1/-1}

/* Low-frequency account creation stays with its list, revealed on demand. */
.driver-create>summary{font-weight:600;cursor:pointer;min-height:var(--control-height);display:flex;align-items:center;padding-block:var(--space-2)}
.driver-create>summary::after{content:'+';margin-left:auto;font-size:18px}
.driver-create[open]>summary::after{content:'−'}
.driver-create>summary:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}
.driver-create:not([open]){padding-bottom:0}

/* Profile sections use semantic legends and spacing instead of stacked boxes. */
.profile-form .profile-form-section{border:0;border-top:1px solid var(--line);padding:var(--space-3) 0 0;margin:0 0 var(--section-gap);min-width:0}
.profile-form .profile-form-section legend{font-size:var(--work-h3);font-weight:600;padding:0 var(--space-2) 0 0}

.work-panel>.creator-identities,.creator-identities{margin-bottom:var(--space-3)}
.identity-form{display:grid;gap:var(--space-3)}
.identity-form .profile-form-section{margin:0}
.identity-form label{display:block}
.identity-form .profile-form-section{border-radius:0}
.identity-form .profile-form-section>label,.identity-form .profile-field{margin:0 0 var(--field-gap)}
.identity-form label>input{display:block;margin-top:var(--label-gap)}
.identity-form .profile-field label{margin-bottom:var(--label-gap)}
.identity-form .field-hint{margin:var(--label-gap) 0 var(--space-2);line-height:1.5}
.identity-form .required-mark{color:var(--danger,#a32929)}

/* One ledger surface: paid-order earnings, not an extra container per fee. */
.earnings-ledger{font-size:14px;line-height:1.5;min-width:0;margin-block:12px 24px}
.earnings-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.earnings-metric{padding:12px;background:var(--cream,#f6f0e8);border-radius:8px;display:flex;flex-direction:column;gap:4px;min-width:0}
.earnings-metric strong{font-size:22px;line-height:1.3;overflow-wrap:anywhere}.earnings-metric small{font-size:12px;color:var(--muted,#75675c)}
.earnings-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-block:16px 12px}.earnings-toolbar h2{font-size:18px;margin:0;font-family:inherit}
.earnings-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:12px}.earnings-filters label{display:grid;gap:4px;font-size:13px;flex:0 1 180px;min-width:0}.earnings-filters label[hidden]{display:none}.earnings-filters input,.earnings-filters select{width:100%;height:36px;min-width:0;padding:4px 8px;font-size:14px}.earnings-filters .button{min-height:36px}
.earnings-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--border,#e3d9cf);padding-bottom:8px}.earnings-tabs button{font:inherit;background:transparent;border:0;border-radius:4px;padding:8px 12px;min-height:36px}.earnings-tabs button[aria-pressed=true]{background:#ede0d0;color:#633b20;font-weight:700}.earnings-tabs small{font-size:12px}
.earnings-ledger-head,.earnings-entry>summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.5fr) minmax(100px,.4fr);gap:12px;align-items:center}.earnings-ledger-head{padding:8px 12px;font-size:12px;color:var(--muted,#75675c)}.earnings-ledger-head>span:last-child{text-align:right}
.earnings-entry{border:0;border-bottom:1px solid var(--border,#e3d9cf);padding:0;margin:0;background:transparent}.earnings-entry>summary{list-style:none;padding:10px 12px;cursor:pointer;min-height:64px}.earnings-entry>summary::-webkit-details-marker{display:none}.earnings-entry>summary:focus-visible{outline:2px solid #8e552e;outline-offset:-2px}.earnings-entry[open]>summary{background:#f8f2eb}.earnings-order{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.earnings-order small{font-size:12px;color:var(--muted,#75675c)}.earnings-status{font-size:12px;overflow-wrap:normal;word-break:normal}.earnings-amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.earnings-detail{padding:12px;max-width:640px}.earnings-detail dl{margin:0 0 8px}.earnings-detail dl>div{display:flex;justify-content:space-between;gap:16px;padding:4px 0}.earnings-detail dt{font-size:13px}.earnings-detail dd{margin:0;white-space:nowrap}.earnings-detail dl>div:last-child{border-top:1px solid var(--border,#e3d9cf);margin-top:4px;padding-top:8px}.earnings-pagination{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;font-size:12px}.earnings-basis,.earnings-advanced{margin-block:16px;font-size:13px}.earnings-basis>summary,.earnings-advanced>summary{cursor:pointer;min-height:44px;padding-block:10px;font-weight:600}.earnings-empty{padding:16px 12px}.earnings-platform{font-size:13px;margin-block:12px}
@media(max-width:767px){.earnings-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.earnings-metric{padding:12px}.earnings-metric strong{font-size:20px}.earnings-filters label{flex:1 1 120px}.earnings-filters input,.earnings-filters select{font-size:16px;height:44px}.earnings-ledger .button,.earnings-tabs button{min-height:44px}.earnings-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.earnings-tabs button{padding:4px;font-size:13px}.earnings-tabs small{display:block}.earnings-entry>summary{grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:10px 4px}.earnings-order{grid-row:span 2}.earnings-status{text-align:right;font-size:12px;max-width:145px}.earnings-amount{font-size:14px}.earnings-ledger-head{display:none}.earnings-pagination .button{padding-inline:8px}.earnings-detail{padding:12px 4px}}

.earnings-reveal{font-size:12px;font-weight:400;color:var(--copper,#8a552d);margin-inline-start:8px;text-decoration:underline;text-underline-offset:2px}

/* Profile is a list filter, never a second business in the workspace sidebar. */
.studio-menu-tools .field{margin:0;min-width:140px;max-width:220px;gap:4px;font-size:13px}.studio-menu-tools select{height:36px;font-size:14px;max-width:100%;padding:4px 8px}.menu-profile-name{display:block;font-size:12px;margin-block:4px;color:var(--muted)}
@media(max-width:767px){.studio-menu-tools .field{flex:1 1 140px;max-width:none}.studio-menu-tools select{height:44px;font-size:16px}}
.account-menu-list .studio-dish{grid-template-columns:80px minmax(0,1fr) minmax(260px,360px);gap:12px;padding-block:12px;align-items:center}.account-menu-list .studio-dish>.food-photo{width:80px;aspect-ratio:1}.account-menu-list .studio-dish h2{font:600 16px/1.5 var(--font);margin-block:0 4px}.account-menu-list .studio-dish .status-label{white-space:normal;margin-top:4px;font-size:12px}.account-menu-list .studio-dish-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;width:100%;align-items:stretch}.account-menu-list .studio-dish-actions>a,.account-menu-list .studio-dish-actions>button{display:flex;align-items:center;justify-content:center;text-align:center;min-height:36px;margin:0;padding:6px 8px;font-size:13px;line-height:1.4;white-space:normal}
@media(max-width:1023px){.account-menu-list .studio-dish{grid-template-columns:68px minmax(0,1fr);gap:12px}.account-menu-list .studio-dish>.food-photo{width:68px}.account-menu-list .studio-dish-actions{grid-column:1/-1}}
@media(max-width:767px){.account-menu-list .studio-dish-actions>a,.account-menu-list .studio-dish-actions>button{min-height:44px}}
