/* Semantic colors: brand palette and display mode are independent preferences. */
:root{
 --page:#f5f7f6;--surface:#ffffff;--raised:#eff4f1;--text:#172626;--muted:#506960;
 --green:#146b52;--on-primary:#ffffff;--border:#81968a;--line:#dce5e1;--selected:#e4f0e9;--focus:#146b52;
 --success-bg:#e8f4ed;--success-text:#12694e;--danger-bg:#ffebe4;--danger-text:#8f2b16;--danger-border:#bc5c43;
 --warning-bg:#fff0c2;--warning-text:#714400;--warning-border:#a57116;--overlay:#11261d66;
}
:root[data-palette="warm"]{--page:#f5f2eb;--surface:#fffdf8;--raised:#f0ece2;--text:#253d30;--muted:#596d5f;--green:#224d39;--border:#829383;--line:#dddccb;--selected:#e8eddf;--focus:#315f83;--accent:#315f83}
:root[data-appearance="dark"]{
 --page:#16181c;--surface:#202328;--raised:#2a2e34;--text:#edf0f3;--muted:#adb5bf;--green:#8bc7ad;--on-primary:#142b23;
 --border:#7c858f;--line:#3b4149;--selected:#293c35;--focus:#8bc7ad;
 --success-bg:#25382f;--success-text:#b0d9bf;--danger-bg:#3d2c2c;--danger-text:#f3b7b2;--danger-border:#bd817d;
 --warning-bg:#383225;--warning-text:#e9ce92;--warning-border:#ab9564;--overlay:#00000080;
}
:root[data-palette="warm"][data-appearance="dark"]{--green:#b3c9ad;--on-primary:#202b1d;--selected:#333c30;--focus:#a9c4e4;--accent:#a9c4e4}
html{background:var(--page);color:var(--text)}
#workspace{background:var(--page);color:var(--text)}
#workspace button,.side-panel button{background:var(--green);color:var(--on-primary)}
#workspace button.secondary,.side-panel button.secondary{background:var(--raised);color:var(--text)}
#workspace button.quiet,.side-panel button.quiet{background:transparent;color:var(--muted)}
#workspace input,#workspace select,#workspace textarea,.side-panel input,.side-panel select,.side-panel textarea{background:var(--surface);color:var(--text);border-color:var(--border);font-size:16px}
#workspace input::placeholder,.side-panel input::placeholder,.side-panel textarea::placeholder{color:var(--muted);opacity:1}
#workspace input:focus,#workspace select:focus,#workspace textarea:focus,.side-panel input:focus,.side-panel select:focus,.side-panel textarea:focus{outline:2px solid var(--focus);outline-offset:2px;border-color:var(--focus);box-shadow:none}
#workspace a:focus-visible,#workspace button:focus-visible,.side-panel button:focus-visible,.side-panel summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
#workspace .app-sidebar,#workspace .product-card,#workspace .cart-panel,#workspace .panel,#workspace .checkout,#workspace .confirm-bar,#workspace table,#workspace .node-card,#workspace .cash-metrics>div,#workspace .client-options,.side-panel,.side-panel-actions,.side-panel .panel,.side-panel table{background:var(--surface);color:var(--text);border-color:var(--line)}
#workspace button.product-card{background:var(--surface);color:var(--text)}
#workspace nav a,#workspace .brand span{color:var(--text)}
#workspace nav a.selected,#workspace nav button.selected{background:var(--selected);color:var(--green)}
#workspace .muted,#workspace .eyebrow,#workspace aside>p,#workspace th,#workspace .product-card .sku,#workspace .product-card small,#workspace .cart-item small,#workspace .product-code,#workspace .cash-metrics small,#workspace .node-meta,#workspace .nav-section-toggle,.side-panel .muted,.side-panel .eyebrow,.side-panel th,.side-panel .product-code{color:var(--muted)}
#workspace .product-card .sku,#workspace .cart-item small,#workspace .nav-section-toggle,#workspace .cart-heading span,#workspace th,#workspace .node-meta{font-size:12px}
#workspace .checkout label{font-size:13px}
#workspace .cart-item,#workspace td,#workspace th,.side-panel td,.side-panel th{border-color:var(--line)}
#workspace .icon-button,#workspace .sidebar-toggle,#workspace button.badge,#workspace .quantity button,#workspace .product-card-top .icon,.side-panel .icon-button{background:var(--raised);color:var(--text);border-color:var(--border)}
#workspace .cart-tools .icon-button:hover,#workspace .client-options button:hover,#workspace .client-options button.active{background:var(--selected);color:var(--text)}
#workspace .cart-product-detail{background:transparent;color:var(--text)}
#workspace .cart-product-detail>.icon{color:var(--muted)}
#workspace .client-options button{background:var(--surface);color:var(--text)}
#workspace .client-options button small,#workspace .client-options .option-label,#workspace .client-options .empty-option{color:var(--muted);font-size:12px}
#workspace .selected-client{background:var(--selected);border-color:var(--line)}
#workspace .selected-client small{color:var(--muted);font-size:12px}
#workspace .change-preview,#workspace #receipt,#workspace .node-status.ok{background:var(--success-bg);color:var(--success-text)}
#workspace .checkout-warning,#workspace #pending{background:var(--warning-bg);color:var(--warning-text);border-color:var(--warning-border)}
#workspace .compact-state summary{color:var(--warning-text)}
#workspace .checkout-warning button{background:var(--warning-text);color:var(--warning-bg)}
#workspace #cash-closed-alert,#workspace .panel-error,#workspace .node-status.fail,.side-panel .panel-error{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}
#workspace #cash-closed-alert button{background:var(--danger-text);color:var(--danger-bg)}
#workspace .node-status.loading{background:var(--raised);color:var(--muted)}
#workspace .audit-data,.side-panel .audit-data{background:var(--raised);color:var(--text)}
#workspace .cash-difference,.side-panel .cash-difference{color:var(--warning-text)}
.side-panel .cash-metrics>div{background:var(--surface);border-color:var(--line)}
.side-panel .cash-metrics small{color:var(--muted)}
.side-panel .side-panel-heading,.side-panel .side-panel-actions{border-color:var(--line)}
#panel-backdrop{background:var(--overlay)}
#notice{background:var(--text);color:var(--surface)}
.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
#workspace #appearance-button{width:44px;height:44px;padding:12px;display:grid;place-items:center}
.login .appearance-link{display:inline-flex;align-items:center;gap:7px;width:auto;min-height:44px;margin-left:10px;padding:8px 12px;background:transparent;color:inherit;font-size:12px;border:1px solid currentColor;border-radius:8px}
.login .appearance-link:focus-visible{outline-color:var(--focus)}
.appearance-popover{position:fixed;inset:auto;margin:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 12px 40px #0003;max-height:calc(100dvh - 24px);overflow:auto}
.appearance-popover::backdrop{background:transparent}
.appearance-options{display:grid;gap:14px}.appearance-options fieldset{margin:0;padding:0;border:0;min-width:0}.appearance-options legend{padding:0;margin-bottom:7px;font-size:12px;font-weight:600;color:var(--muted)}
.appearance-segments{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;background:var(--raised);padding:3px;border-radius:8px}
.appearance-choice{position:relative;display:grid;place-items:center;min-height:44px;margin:0;font-size:13px;border-radius:6px;cursor:pointer;color:var(--muted)}
.appearance-choice input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.appearance-choice:has(input:checked){background:var(--surface);color:var(--text);box-shadow:0 1px 4px #0002}
.appearance-choice:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:1px}
.appearance-status{font-size:12px;color:var(--muted);margin:12px 0 0;line-height:1.5}
.appearance-done{display:block;margin:8px 0 0 auto;min-height:36px;padding:6px 10px;font-size:12px;background:transparent;color:var(--text)}
@media(min-width:701px){
 #workspace .app-sidebar{width:204px;padding:20px 10px}
 #workspace main{margin-left:204px;width:calc(100% - 204px)}
 #workspace .app-sidebar>nav{padding:0;margin-top:12px}
 #workspace nav a{padding:10px 12px;gap:10px;min-height:44px}
 #workspace .nav-section-toggle{padding:10px 12px 5px;font-size:10px;letter-spacing:.6px}
 #workspace .sidebar-top,#workspace .app-sidebar>p,#workspace .aside-bottom{padding-left:6px;padding-right:6px}
 .sidebar-collapsed #workspace .app-sidebar{width:64px;padding:18px 9px}
 .sidebar-collapsed #workspace main{margin-left:64px;width:calc(100% - 64px)}
 .sidebar-collapsed #workspace nav a{width:44px;padding:12px;gap:0}
 .sidebar-collapsed #workspace .sidebar-top,.sidebar-collapsed #workspace .aside-bottom{padding:0}
 .sidebar-collapsed #workspace .nav-section-toggle{padding:0;height:8px;font-size:0}
}
:root[data-appearance="dark"] .login{background:var(--page);background-image:none;color:var(--text)}
:root[data-appearance="dark"] .login-shell,:root[data-appearance="dark"] .login-access{background:var(--surface);border-color:var(--line)}
:root[data-appearance="dark"] .login .login-access h2{color:var(--text)}
:root[data-appearance="dark"] .login-access .login-kicker,:root[data-appearance="dark"] .login .login-intro,:root[data-appearance="dark"] .login .login-small-note,:root[data-appearance="dark"] .login-small-note>span,:root[data-appearance="dark"] .login .login-access-footer,:root[data-appearance="dark"] .login .login-page-footer{color:var(--muted)}
:root[data-appearance="dark"] .login #login-form label{color:var(--text)}
:root[data-appearance="dark"] .login #login-form input{background:var(--raised);color:var(--text);border-color:var(--border)}
:root[data-appearance="dark"] .login #login-form input::placeholder{color:var(--muted)}
:root[data-appearance="dark"] .login #login-form input:focus,:root[data-appearance="dark"] .login button:focus-visible{outline-color:var(--focus);border-color:var(--focus);box-shadow:none}
:root[data-appearance="dark"] .login #login-password-toggle{color:var(--muted)}
:root[data-appearance="dark"] .login #login-password-toggle:hover{background:var(--selected);color:var(--text)}
:root[data-appearance="dark"] .login .login-submit{background:var(--green);color:var(--on-primary);box-shadow:0 3px 0 var(--line)}
:root[data-appearance="dark"] .login .login-submit:hover:not(:disabled){background:var(--green);filter:brightness(1.08)}
:root[data-appearance="dark"] .login-divider{background:var(--line)}
:root[data-appearance="dark"] .login-small-note>.icon{stroke:var(--muted)}
:root[data-appearance="dark"] .login .login-error{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}
@media(pointer:coarse){#workspace .quantity button{min-width:44px;min-height:44px}#workspace .cart-tools .icon-button,#workspace .selected-client .icon-button{width:44px;height:44px}#workspace .checkout input{min-height:44px}#workspace td button,.side-panel td button{min-height:44px}}
@media(max-width:700px){.header-actions{gap:7px}.login .appearance-link{margin:12px 0 0;display:inline-flex}}
@media print{html,body,#side-panel,#ticket-content,#ticket-content *{background:#fff!important;color:#000!important;color-scheme:light!important}#ticket-content table,#ticket-content td,#ticket-content th{border-color:#000!important}}
#workspace .nav-section-toggle{background:transparent}
.side-panel .cash-keypad-summary{background:var(--raised);color:var(--text);border-color:var(--line)}
#workspace #total:focus-visible{outline-color:var(--focus)}
#workspace .template-link,.side-panel .template-link{color:var(--green)}
#workspace .brand{gap:6px;min-width:0}
#workspace .brand-wordmark{display:block;width:112px;height:auto}
#workspace .brand-dark,#workspace .brand-symbol{display:none}
#workspace .brand-product{font-size:9px;letter-spacing:.8px;padding:4px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}
:root[data-appearance="dark"] #workspace .brand-light{display:none}
:root[data-appearance="dark"] #workspace .brand-dark{display:block}
.sidebar-collapsed #workspace .brand-wordmark{display:none}
.sidebar-collapsed #workspace .brand-symbol{display:block;width:34px;height:21px}
:root[data-appearance="dark"] .sidebar-collapsed #workspace .brand-symbol{filter:brightness(0) invert(1)}
.sidebar-collapsed #workspace .nav-section-toggle{font-size:0;opacity:1;pointer-events:none}
:root .sidebar-collapsed #workspace .brand-wordmark{display:none}

:root[data-palette="warm"] #workspace .eyebrow,:root[data-palette="warm"] #workspace .product-card-top .icon{color:var(--accent)}
.appearance-options fieldset:first-child .appearance-segments{grid-template-columns:repeat(2,1fr)}

.cash-expected-total{cursor:pointer;touch-action:manipulation;border-radius:4px}.cash-expected-total:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
/* Keep the operational branch visible without increasing the page header. */
.header-actions #branch-selector{width:auto;max-width:220px;min-width:120px;margin:0;padding:9px 30px 9px 10px;font-size:13px}
@media(max-width:700px){.header-actions #branch-selector{max-width:180px;min-width:100px}}
#transfer-receipt-form fieldset{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:1px solid var(--border);border-radius:8px;margin:12px 0;padding:12px}
#transfer-receipt-form legend{font-size:13px;font-weight:600;max-width:100%;overflow-wrap:anywhere}
#transfer-receipt-form fieldset label{margin:0;font-size:12px}
#transfer-receipt-form fieldset input{min-width:0;width:100%}
#inventory-stock[aria-busy=true],#inventory-transfers[aria-busy=true]{opacity:.55}

.inventory-head-actions,.inventory-activity-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inventory-activity-toolbar{margin:12px 0}.inventory-activity-toolbar label{font-size:12px;margin:0;min-width:130px}.inventory-activity-toolbar select{margin:4px 0 0}.inventory-activity-tabs{display:flex;gap:6px;flex-wrap:wrap}.inventory-activity-tabs [aria-selected=true]{background:var(--selected);border-color:var(--green);color:var(--green)}
#inventory-activity-list{display:grid;gap:10px;min-width:0}.inventory-activity-entry{border:1px solid var(--line);border-radius:10px;padding:12px;min-width:0}.inventory-activity-entry small{display:block;font-size:12px;overflow-wrap:anywhere}.inventory-activity-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.inventory-activity-heading strong{overflow-wrap:anywhere}.inventory-activity-heading small{margin-top:3px}.inventory-activity-quantity{font-size:20px;font-variant-numeric:tabular-nums}.inventory-activity-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0;font-size:12px}.inventory-activity-badge{padding:3px 7px;background:var(--raised);border-radius:5px}.inventory-activity-badge.pending{background:var(--warning-bg);color:var(--warning-text)}.inventory-activity-badge.confirmed{background:var(--success-bg);color:var(--success-text)}.inventory-activity-reference{display:flex;gap:8px;align-items:center;margin:7px 0 0}.inventory-activity-reference code{min-width:0;font-size:11px;overflow-wrap:anywhere}.inventory-activity-reference .icon-button{width:30px;height:30px;flex-shrink:0}.inventory-activity-entry>.secondary{margin-top:8px;font-size:12px}#inventory-activity-list+.secondary{margin-top:12px}
#view-inventory>.section-head{flex-wrap:wrap;gap:12px}.inventory-head-actions{max-width:100%}
