/* Identity-specific layouts use the unchanged reference theme tokens. */
.identity-sidebar-foot{padding:16px;color:var(--nav-fg-dim);font-size:11px;border-top:1px solid var(--nav-hairline)}
.identity-form{max-width:760px;display:flex;flex-direction:column;gap:16px}
.identity-form .field label:has(input[type=checkbox]){display:flex;gap:8px;align-items:center;font-family:var(--font-body);font-size:13px;text-transform:none}
.identity-form input[type=checkbox]{width:auto;min-height:auto}
.field-checkbox>label{display:flex;align-items:center;gap:8px;min-height:32px;cursor:pointer}
.field-checkbox>label>input[type=checkbox]{flex:0 0 16px;width:16px;height:16px;min-height:0;margin:0;accent-color:var(--primary)}
.identity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:var(--gutter);align-items:start}
.identity-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.identity-qr svg{width:220px;max-width:100%;height:auto;background:white}
.recovery-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;padding:0}
.recovery-list .code{white-space:normal;overflow-wrap:anywhere}
.pagination{display:flex;gap:15px;align-items:center;padding:12px 0}
.mobile-menu{display:none}.detail-gap{margin-top:12px}.identity-error{max-width:550px;margin:40px auto}
@media(max-width:900px){.mobile-menu{display:inline-flex}.sidebar{display:none}.sidebar.identity-open{display:flex;position:fixed;top:56px;bottom:0;left:0;width:240px;height:calc(100vh - 56px);z-index:30}.topbar{gap:8px}.topbar>.label{display:none}.content{padding:16px}.recovery-list{grid-template-columns:1fr}}
@media print{.sidebar,.topbar{display:none}.app{display:block}.recovery-list{grid-template-columns:1fr 1fr}}

.settings-heading h1{margin:0}.settings-heading .sub{margin:6px 0 0}
.settings-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--outline-variant);padding-bottom:2px}
.settings-tabs a{display:block;flex-shrink:0;padding:7px 12px;text-decoration:none;color:inherit;border-bottom:3px solid transparent}
.settings-tabs a[aria-current=page]{border-bottom-color:currentColor;font-weight:600}
.settings-tabs a:hover{background:var(--surface)}
.identity-modal{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 48px);box-sizing:border-box;padding:24px;border:1px solid var(--outline-variant);border-radius:12px;background:var(--surface-lowest);color:var(--on-surface);overflow:auto}
.identity-modal::backdrop{background:rgba(0,20,16,.6)}
.identity-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}
.identity-modal-head h2{margin:0}.identity-modal-head .sub{margin-top:8px}
.identity-modal .identity-form{max-width:none}.identity-modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--outline-variant);padding-top:16px}
@media(max-width:600px){.identity-modal{padding:16px}.identity-modal-actions{position:sticky;bottom:-16px;background:var(--surface-lowest);padding:12px 0}}
.identity-modal [hidden]{display:none!important}

[hidden]{display:none!important}
.htmx-request{cursor:progress}.htmx-request button{opacity:.65}
#request-error:not([hidden]){position:fixed;bottom:16px;right:16px;max-width:420px;z-index:50}
/* Checkbox groups must grow with their options, never inherit input height. */
.identity-form .field > .choice-grid{height:auto;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;padding:0}
.identity-form .choice-grid > div{min-width:0}
.identity-form .choice-grid label:has(input[type=checkbox]){min-height:48px;height:100%;box-sizing:border-box;padding:12px;gap:12px;margin:0;border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-lowest);line-height:20px;align-items:flex-start;overflow-wrap:anywhere;cursor:pointer}
.identity-form .choice-grid label:has(input:checked){background:var(--primary-soft);border-color:var(--primary)}
.identity-form .choice-grid input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:1px 0 0;accent-color:var(--primary)}
.identity-form .choice-grid label:focus-within{outline:2px solid var(--primary);outline-offset:2px}
@media(max-width:600px){.identity-form .field > .choice-grid{grid-template-columns:1fr}.identity-modal-actions{position:static}}

/* Operational record links remain readable in both themes. */
.operations-workspace a:not(.btn){color:var(--primary)}
.operations-workspace{display:flex;flex-direction:column;gap:10px;min-width:0}
.operations-workspace>.page-head{margin-bottom:0}

/* Order register filters use the same control sizes as modal forms. */
.orders-filters label{display:grid;gap:6px;flex:1;min-width:180px}
.orders-filters input,.orders-filters select{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--outline-variant);border-radius:6px;background:var(--surface-lowest);color:var(--on-surface);font:inherit}

.orders-workspace .btn{white-space:nowrap;flex-shrink:0}
.orders-workspace .btn-secondary{color:var(--primary);border-color:var(--outline-variant)}
.orders-workspace a:not(.btn){color:var(--primary)}
.orders-workspace .page-head{flex-wrap:wrap}
.orders-workspace .page-head>div{flex:1 1 260px}

/* Related short fields share a desktop row; narrow form containers stack. */
.identity-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;align-items:start}
.identity-fields>.field{min-width:0}
.identity-fields>.field:only-child,
.identity-fields>.field:not(.field-compact):has(textarea,select[multiple],input[type=checkbox],input[type=radio],input[type=file],.choice-grid){grid-column:1 / -1}
.identity-fields>.field :is(input,select,textarea){max-width:100%;box-sizing:border-box}
.identity-fields>.field :is(label,.help,.err){overflow-wrap:anywhere}
@media(max-width:600px){.identity-fields{grid-template-columns:minmax(0,1fr)}}

.breadcrumbs{margin:0;font-size:12px;line-height:1.5}
.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;list-style:none;padding:0;margin:0}
.breadcrumbs li{display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}
.breadcrumbs li+li::before{content:"/";color:var(--on-surface-variant);font-weight:400}
.breadcrumbs a{color:var(--on-surface-variant);text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline;color:var(--primary)}
.breadcrumbs [aria-current="page"]{color:var(--primary);background:var(--primary-soft);padding:2px 7px;border-radius:4px;font-weight:600}

.procurement-short-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.procurement-short-fields .procurement-confirm{padding-top:24px}
.procurement-short-fields .procurement-confirm label{display:flex;align-items:flex-start;gap:8px;margin:0}
.procurement-short-fields .procurement-confirm input{flex:0 0 auto;margin-top:3px}
@media(max-width:600px){.procurement-short-fields{grid-template-columns:minmax(0,1fr)}.procurement-short-fields .procurement-confirm{padding-top:0}}

.receipt-fields{display:grid;gap:12px}
.receipt-fields .receipt-quantities{grid-template-columns:1.4fr 1fr 1fr;gap:12px}
.receipt-confirmations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.receipt-confirmations label{display:flex;align-items:flex-start;gap:8px;margin:0}
.receipt-confirmations input{flex:0 0 auto;margin-top:3px}
@media(max-width:600px){.receipt-fields .receipt-quantities,.receipt-confirmations{grid-template-columns:minmax(0,1fr)}}

.status-neutral{color:var(--on-surface-variant);background:var(--surface-highest)}
.status-info{color:var(--primary);background:var(--primary-soft)}
.status-success{color:var(--ok);background:var(--ok-bg)}
.status-warning{color:var(--warn);background:var(--warn-bg)}
.status-danger{color:var(--critical);background:var(--critical-bg)}
.settings-tabs>span{padding:8px 12px;color:var(--on-surface-variant);font-size:12px}
.settings-tabs>span[aria-current="step"]{background:var(--primary-soft);color:var(--primary);border-bottom:2px solid var(--primary);font-weight:600}

.identity-modal:has(.receiving-bulk-wizard){width:min(1280px,calc(100vw - 32px));max-width:calc(100vw - 32px)}

.receiving-bulk-wizard .receipt-date-row{display:flex;justify-content:flex-end;margin-bottom:12px}
.receiving-bulk-wizard .receipt-date-row>.field{width:240px;max-width:100%}
.receiving-bulk-wizard .receipt-date-row input{width:100%;box-sizing:border-box}

.identity-modal:has(.allocation-bulk){width:min(800px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.allocation-bulk input[type=number]{width:120px;max-width:100%;min-height:30px;padding:4px 6px;box-sizing:border-box;text-align:right;font-size:13px}

.allocation-bulk table.data{font-size:12px}
.allocation-bulk table.data th,.allocation-bulk table.data td{padding:6px 8px}
.allocation-bulk table.data th:last-child,.allocation-bulk table.data td:last-child{width:136px}
.allocation-bulk>p.muted{font-size:12px;margin:8px 0}

.allocation-bulk table.data{min-width:560px}
.allocation-bulk table.data th,.allocation-bulk table.data td{vertical-align:top}
.allocation-bulk table.data tbody th{font-weight:600;text-align:left}
.allocation-bulk table.data tbody+tbody tr:first-child>*{border-top:1px solid var(--outline-variant)}

.allocation-bulk .allocation-supplier-row{background:var(--primary-soft)}
.allocation-bulk table.data .allocation-farm-row td:first-child{padding-left:24px}
.allocation-bulk table.data tfoot th,.allocation-bulk table.data tfoot td{padding:10px 8px;border-top:1px solid var(--outline-variant);text-align:left}

.allocation-bulk .allocation-total-mismatch{color:var(--critical)}

.allocation-bulk .allocation-add-supplier{justify-content:flex-end;align-items:flex-end;gap:10px;margin-bottom:16px}
.allocation-bulk .allocation-add-supplier .field{margin-bottom:0}

.allocation-bulk table.data tfoot .allocation-balance-row th,.allocation-bulk table.data tfoot .allocation-balance-row td{text-align:right}

.identity-modal:has(.badge-editor){width:min(620px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.badge-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.badge-controls .field{margin:0}
.badge-opacity label{display:flex;justify-content:space-between;gap:8px}
.badge-opacity output{font-variant-numeric:tabular-nums;color:var(--on-surface-variant)}
.badge-editor input[type=range]{width:100%;min-height:32px;padding:0;accent-color:var(--primary);box-shadow:none;background:transparent;border:0}
.badge-colour-control{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.badge-colour-control>label:first-child{display:flex;align-items:center;gap:7px;margin:0;font-size:12px}
.badge-colour-control input[type=checkbox]{width:16px;height:16px;min-height:0;margin:0}
.badge-colour-control input[type=color]{width:48px;height:32px;min-height:32px;padding:3px;margin-left:auto;cursor:pointer}
.badge-swatch-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.badge-preview-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:12px;border-top:1px solid var(--outline-variant)}
.badge-preview-row p{margin:0;font-size:12px}
.badge-preview-row .btn{font-size:12px;padding:6px 10px}
@media(max-width:480px){.badge-controls{grid-template-columns:minmax(0,1fr)}}


.quality-workspace .identity-actions{margin:0}
.quality-batch th{text-align:left;padding:8px 12px;background:var(--surface-low)}
.quality-history th,.quality-history td{white-space:nowrap}

/* Compact shared page chrome: keep the working records near the top. */
.content{padding-top:14px;gap:10px}
.page-head{align-items:center;gap:10px;flex-wrap:wrap}
.page-head h1,.settings-heading h1{font-size:26px;line-height:32px}
.page-head .sub{margin:2px 0 0}
.settings-heading .sub{margin:2px 0 0}
@media(max-width:600px){.page-head h1,.settings-heading h1{font-size:24px;line-height:30px}}

.table-section{display:flex;flex-direction:column;gap:10px;min-width:0}
.table-section>header :is(h2,h3,p),.table-section>p{margin:0}
.table-section>header .sub{margin-top:4px}
