/*
 * Bulabog POS reference palette
 *
 * This file is intentionally loaded last. It maps the approved palette onto
 * the existing design tokens and shared application surfaces without changing
 * page structure or behaviour.
 */
:root,
html[data-theme="light"]{
  --espresso:#2D211B;
  --service-orange:#E47B18;
  --service-orange-hover:#C96810;
  --service-orange-pressed:#A9510A;
  --service-orange-soft:#FCE8D5;
  --warm-canvas:#F7F3ED;
  --porcelain:#FFFDFB;
  --system-ink:#201712;
  --clay-gray:#7A685D;
  --ready-green:#279879;
  --status-success:var(--ready-green);
  --status-success-soft:#E4F3EE;
  --status-success-border:#B8DED1;
  --status-warning:var(--service-orange-pressed);
  --status-warning-soft:var(--service-orange-soft);
  --status-warning-border:#EECBA8;
  --status-danger:var(--attention-red);
  --status-danger-soft:#F8E2E7;
  --status-danger-border:#EDBDC8;
  --information-blue:#3979A9;
  --status-info:var(--information-blue);
  --status-info-soft:#E1ECF4;
  --status-info-border:#BDD0DF;
  --attention-red:#C83E52;
  --date-filter-selected:#2D211B;
  --date-filter-range:rgba(45,33,27,.12);
  --ink:var(--system-ink);
  --muted:var(--clay-gray);
  --orange:var(--service-orange);
  --orange-deep:var(--service-orange-pressed);
  --cream:var(--warm-canvas);
  --cream-2:#F1E7DB;
  --card:var(--porcelain);
  --line:#E3D7CD;
  --green:var(--ready-green);
  --green-soft:#E4F3EE;
  --danger:var(--attention-red);
  --sidebar:var(--espresso);
  --soft-coral:var(--service-orange-soft);
  --shadow:0 10px 30px rgba(45,33,27,.06);
  --bs-body-color:var(--system-ink);
  --bs-body-bg:var(--warm-canvas);
  --bs-border-color:var(--line);
  --bs-link-color:#A9510A;
  --bs-link-hover-color:#713506;
}
html[data-theme] input:is([type="date"],[type="datetime-local"],[type="month"],[type="week"]){accent-color:var(--date-filter-selected);border-color:var(--line);border-radius:9px}
html[data-theme] input:is([type="date"],[type="datetime-local"],[type="month"],[type="week"])::-webkit-calendar-picker-indicator{filter:brightness(0) saturate(100%) invert(11%) sepia(10%) saturate(1300%) hue-rotate(339deg) brightness(94%) contrast(88%)}
.shared-date-picker{position:relative;display:block;flex:1 1 0;width:100%;min-width:0}
.shared-date-picker-native{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;clip-path:inset(50%)!important;opacity:0!important;pointer-events:none!important}
.shared-date-picker-trigger{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;height:38px;min-height:38px;margin:0;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);font:inherit;font-size:12px;text-align:left;cursor:pointer}
.shared-date-picker-trigger:focus-visible{outline:2px solid var(--service-orange);outline-offset:2px}
.shared-date-picker-trigger.has-value .shared-date-picker-value{color:var(--ink)}
.shared-date-picker-trigger:not(.has-value) .shared-date-picker-value{color:var(--muted)}
.shared-date-picker-trigger>i{flex:0 0 auto;color:var(--date-filter-selected);font-size:14px}
.shared-date-picker-popover{position:fixed;z-index:2000;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);box-shadow:0 12px 32px rgba(45,33,27,.18)}
.shared-date-picker-popover[hidden]{display:none}
.shared-date-picker-header{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:8px}
.shared-date-picker-header strong{text-align:center;font-size:13px;font-weight:700}
.shared-date-picker-header button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--ink)}
.shared-date-picker-header button:hover,.shared-date-picker-header button:focus-visible{background:var(--cream-2);outline:0}
.shared-date-picker-weekdays,.shared-date-picker-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.shared-date-picker-weekdays{margin-bottom:4px;color:var(--muted);font-size:10px;font-weight:600}
.shared-date-picker-weekdays span{display:grid;place-items:center;height:28px}
.shared-date-picker-day{display:grid;place-items:center;aspect-ratio:1;min-width:0;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:12px;cursor:pointer}
.shared-date-picker-day.outside-month{color:var(--muted);opacity:.65}
.shared-date-picker-day.is-today:not(.is-selected){border-color:var(--date-filter-selected)}
.shared-date-picker-day.is-selected{background:var(--date-filter-selected);color:var(--porcelain)}
.shared-date-picker-day:not(:disabled):hover{border-color:var(--date-filter-selected)}
.shared-date-picker-day:focus-visible{outline:2px solid var(--service-orange);outline-offset:1px}
.shared-date-picker-day:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:600px){.shared-date-picker-trigger{font-size:16px}.shared-date-picker-popover{max-width:calc(100vw - 24px)}}

html[data-theme="dark"]{
  --ink:var(--porcelain);
  --muted:#CDBFB5;
  --cream:var(--system-ink);
  --cream-2:var(--espresso);
  --card:#342720;
  --line:#59473D;
  --green-soft:#1F463B;
  --status-success:#A4D7A5;
  --status-success-soft:#2B3D2B;
  --status-success-border:#3C6640;
  --status-warning:#F1BF83;
  --status-warning-soft:#3A2F26;
  --status-warning-border:#654B34;
  --status-danger:#F1A699;
  --status-danger-soft:#3A2624;
  --status-danger-border:#65403D;
  --status-info:#70CDE2;
  --status-info-soft:#1A3B45;
  --status-info-border:#1B6173;
  --sidebar:#18110E;
  --soft-coral:#49301F;
  --shadow:0 12px 32px rgba(0,0,0,.22);
  --bs-body-color:var(--porcelain);
  --bs-body-bg:var(--system-ink);
  --bs-border-color:var(--line);
  --bs-link-color:#F0A35C;
  --bs-link-hover-color:#F6BF8A;
}

body,.app-content,.public-content{background:var(--cream);color:var(--ink)}
h1,h2,h3,h4,h5,h6,strong,.page-heading,.header-title{color:var(--ink)}
.text-secondary,.text-muted,small,.page-heading p{color:var(--muted)!important}

/* Persistent desktop navigation uses Espresso as its defining surface. */
.app-sidebar{
  background:var(--espresso)!important;
  border-right:1px solid #49372D;
  box-shadow:6px 0 24px rgba(45,33,27,.08);
}
.app-sidebar .sidebar-brand{color:var(--porcelain)}
.app-sidebar .sidebar-brand:hover{color:var(--porcelain)}
.app-sidebar .sidebar-brand-copy strong{color:var(--porcelain)}
.app-sidebar .sidebar-brand-copy small{color:#FFFDFB}
.app-sidebar .side-nav:before{color:#AA978A}
.app-sidebar .side-nav a{
  color:#D9CBC1!important;
  background:transparent;
}
.app-sidebar .side-nav a:hover,
.app-sidebar .side-nav a:focus-visible{
  color:var(--porcelain)!important;
  background:#3A2B24!important;
}
.app-sidebar .side-nav a.active{
  color:var(--porcelain)!important;
  background:#553725!important;
  box-shadow:inset 3px 0 var(--service-orange);
}
.app-sidebar .side-nav a.active:before{background:var(--service-orange)}
.app-sidebar .side-nav a b{background:var(--attention-red);color:var(--porcelain)}

/* Shared header and mobile app bar retain their existing layout. */
.app-header,.mobile-header{
  background:var(--porcelain)!important;
  color:var(--system-ink)!important;
  border-color:var(--line)!important;
}
.app-header .header-title,.app-header .header-title strong,
.mobile-header [data-mobile-page-title]{color:var(--system-ink)!important}
.header-profile,.header-profile strong,.live-datetime{color:var(--system-ink)}
.header-profile small,.live-datetime small{color:var(--clay-gray)!important}
.header-avatar,.phone-nav-avatar{background:var(--service-orange)!important;color:var(--porcelain)!important}
.live-datetime>i{background:var(--service-orange-soft);color:var(--service-orange)}
.notification-trigger,.theme-trigger,.sync-trigger,.sidebar-toggle,.header-back-button{
  border-color:var(--line)!important;
  background:var(--porcelain)!important;
  color:var(--system-ink)!important;
}
.notification-trigger:hover,.theme-trigger:hover,.sync-trigger:hover,
.sidebar-toggle:hover,.header-back-button:hover{background:#F2E7D9!important}

/* Mobile navigation is the sidebar equivalent on smaller devices. */
#mobileNav.phone-navigation{
  background:var(--espresso)!important;
  color:var(--porcelain)!important;
  border-right-color:#49372D!important;
}
.phone-navigation .phone-nav-header,
.phone-navigation .drawer-account-footer{border-color:#59443A!important;background:var(--espresso)}
.phone-navigation .phone-nav-brand,
.phone-navigation .phone-nav-brand span,
.phone-navigation .phone-nav-brand small,
.phone-navigation .phone-nav-close,
.phone-navigation .drawer-tools-heading,
.phone-navigation .drawer-tools-heading small,
.phone-navigation .phone-nav-section,
.phone-navigation .phone-nav-account,
.phone-navigation .phone-nav-account strong,
.phone-navigation .drawer-clock{color:var(--porcelain)!important}
.phone-navigation .phone-nav-account small,
.phone-navigation .drawer-clock span{color:#CDBFB5!important}
.phone-navigation nav a{color:#D9CBC1!important}
.phone-navigation nav a>i{color:#AA978A!important}
.phone-navigation nav a:hover{background:#3A2B24!important;color:var(--porcelain)!important}
.phone-navigation nav a.active{
  background:#553725!important;
  color:var(--porcelain)!important;
  box-shadow:inset 3px 0 var(--service-orange)!important;
}
.phone-navigation nav a.active>i{color:#FFFDFB!important}
.phone-navigation .drawer-back,
.phone-navigation .drawer-tools-grid>button{
  border-color:#59443A!important;
  background:#352720!important;
  color:var(--porcelain)!important;
}
.phone-navigation .drawer-back:hover,
.phone-navigation .drawer-tools-grid>button:hover{background:#49342A!important;border-color:#8A5733!important}

/* Application surfaces and controls. */
.panel,.card,.kpi,.list-card,.settings-card,.user-row,.product-card,
.order-panel,.order-panel h4,.order-totals,.payment-pills,.dropdown-menu,
.notification-pop-row,.offcanvas:not(#mobileNav){
  background:var(--card)!important;
  color:var(--ink);
  border-color:var(--line)!important;
}
.table{--bs-table-color:var(--ink);--bs-table-bg:transparent;--bs-table-border-color:var(--line);color:var(--ink)}
.table thead th{color:var(--muted);background:var(--cream)}
.table tbody tr:hover{background:#FCF7F1}
.form-control,.form-select,.pos-search,.date-filter-trigger{
  background-color:var(--card)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
.form-control:focus,.form-select:focus{
  border-color:var(--service-orange)!important;
  box-shadow:0 0 0 3px rgba(228,123,24,.14)!important;
}
.form-control::placeholder,.pos-search input::placeholder{color:var(--muted);opacity:.78}

/* Primary and destructive actions use only approved semantic colors. */
.btn-brand,.primary-pill,.add-floating-action,.logout-button,
html .modal :is(.btn-brand,.protected-primary,.secure-modal-primary){
  border-color:var(--service-orange)!important;
  background:var(--service-orange)!important;
  background-image:none!important;
  color:var(--porcelain)!important;
  box-shadow:0 7px 17px rgba(249,115,22,.18)!important;
}
.btn-brand :is(i,svg),.primary-pill :is(i,svg),.add-floating-action :is(i,svg),
.logout-button :is(i,svg),html .modal :is(.btn-brand,.protected-primary,.secure-modal-primary) :is(i,svg){color:currentColor!important;fill:currentColor}
.btn-brand:hover,.primary-pill:hover,.add-floating-action:hover,.logout-button:hover,
html .modal :is(.btn-brand,.protected-primary,.secure-modal-primary):hover{
  background:var(--service-orange-hover)!important;
  background-image:none!important;
  color:var(--porcelain)!important;
}
.btn-brand:active,.primary-pill:active,.add-floating-action:active,.logout-button:active,
html .modal :is(.btn-brand,.protected-primary,.secure-modal-primary):active{background:var(--service-orange-pressed)!important;background-image:none!important;color:var(--porcelain)!important}
.btn-brand:focus-visible,.primary-pill:focus-visible,.add-floating-action:focus-visible,.logout-button:focus-visible,
html .modal :is(.btn-brand,.protected-primary,.secure-modal-primary):focus-visible{outline:3px solid var(--information-blue);outline-offset:2px}
.btn-outline-secondary,.secondary-pill{background:var(--card);border-color:var(--line);color:var(--ink)}
.btn-outline-danger,.expense-delete,.inventory-row-actions .btn-outline-danger,
.menu-row-actions .btn-outline-danger{border-color:var(--attention-red)!important;background:var(--attention-red)!important;color:var(--porcelain)!important}
.progress{background:#E9DED3}.progress-bar{background:var(--ready-green)!important}

/* Meaning is carried by the chip fill; Ink remains the shared chip text. */
html :is(.badge,.stock-status,.status-badge,.forecast-status){color:var(--system-ink)!important}
html :is(.availability-available,.stock-status.healthy,.text-bg-success){background:var(--status-success-soft)!important;color:var(--system-ink)!important}
html :is(.availability-unavailable,.stock-status.critical,.text-bg-danger){background:var(--status-danger-soft)!important;color:var(--system-ink)!important}
html :is(.stock-status.warning,.text-bg-warning){background:var(--status-warning-soft)!important;color:var(--system-ink)!important}
html :is(.text-bg-info,.forecast-status){background:var(--status-info-soft)!important;color:var(--system-ink)!important}
.alert-success{--bs-alert-color:var(--system-ink);--bs-alert-bg:var(--status-success-soft);--bs-alert-border-color:var(--status-success-border)}
.alert-danger{--bs-alert-color:var(--system-ink);--bs-alert-bg:var(--status-danger-soft);--bs-alert-border-color:var(--status-danger-border)}
.alert-warning{--bs-alert-color:var(--system-ink);--bs-alert-bg:var(--status-warning-soft);--bs-alert-border-color:var(--status-warning-border)}
.system-status{border-color:var(--status-success-border);background:var(--status-success-soft);color:var(--system-ink)}
.system-status small{color:var(--clay-gray)}

/* Dialogs use Porcelain in light mode and a palette-derived Espresso surface in dark mode. */
html[data-theme="light"] .modal{
  --dialog-bg:var(--porcelain);
  --dialog-field:#FFFEFC;
  --dialog-ink:var(--system-ink);
  --dialog-muted:var(--clay-gray);
  --dialog-border:var(--line);
  --dialog-soft:var(--warm-canvas);
}
html[data-theme="dark"] .modal{
  --dialog-bg:#342720;
  --dialog-field:#2D211B;
  --dialog-ink:var(--porcelain);
  --dialog-muted:#CDBFB5;
  --dialog-border:#59473D;
  --dialog-soft:#3C2D25;
}
.profile-edit-icon,.secure-modal-icon,.protected-icon{color:var(--service-orange)!important;border-color:rgba(228,123,24,.45)!important}
.secure-modal-check .form-check-input:checked{background-color:var(--service-orange);border-color:var(--service-orange)}

/* Authentication and POS accents follow the same system palette. */
.auth-page,.pin-auth-page{background:var(--warm-canvas)!important}
.pin-slider{background:#F1E7DB;border-color:var(--line)}
.slider-art,.auth-logo.large{background:var(--service-orange);background-image:none;color:var(--porcelain);box-shadow:0 18px 45px rgba(249,115,22,.2)}
.category-pills button.active,.payment-pills input:checked+span{background:var(--service-orange);background-image:none;border-color:var(--service-orange);color:var(--porcelain)}
.product-icon{background:var(--service-orange-soft)!important;background-image:none!important;color:var(--espresso)!important}
.product-icon :is(i,svg){color:currentColor!important;fill:currentColor}
.avatar,.profile-avatar{background:var(--service-orange)!important;background-image:none!important;color:var(--porcelain)!important}
.product-card b,.history-button,.text-link{color:var(--service-orange)!important}
.pos-products .product-card .product-icon{width:100%;height:56px;flex:0 0 56px;border-radius:10px;background:var(--service-orange-soft)!important;color:var(--espresso)!important}
.pos-products .product-card .product-icon .category-food-icon{width:36px;height:36px}
.pos-products .product-card>strong{margin-top:3px;font-size:15px;font-weight:700;line-height:1.35}
.pos-products .product-card>small{font-size:10px;line-height:1.3}
.pos-products .product-card>b{font-size:16px;font-weight:750;color:var(--espresso)!important}
.cart-body{background:var(--cream);color:var(--ink)}

/* Button backgrounds are intentionally solid throughout the application. */
:is(button,.btn,.primary-pill,.secondary-pill,.floating-action,.add-floating-action,.logout-button,.protected-primary,.secure-modal-primary){background-image:none!important}

/* Every selected/primary orange surface uses the same Porcelain foreground. */
:is(.btn-brand,.primary-pill,.add-floating-action,.logout-button,.management-add,
  .toolbar-apply,.toolbar-primary,.toolbar-export,.records-pagination b,
  .category-pills button.active,.service-options input:checked+span,
  .payment-pills input:checked+span,.chart-options button[aria-pressed="true"],
  .dashboard-segmented button.active,.dashboard-segmented button[aria-pressed="true"],
  .phone-nav-count,#offlinePrimary){
  background-color:var(--service-orange)!important;
  background-image:none!important;
  border-color:var(--service-orange)!important;
  color:var(--porcelain)!important;
}
:is(.btn-brand,.primary-pill,.add-floating-action,.logout-button,.management-add,
  .toolbar-apply,.toolbar-primary,.toolbar-export,.category-pills button.active,
  .service-options input:checked+span,.payment-pills input:checked+span,
  .chart-options button[aria-pressed="true"],#offlinePrimary) :is(i,svg){color:currentColor!important;fill:currentColor}

html[data-theme="dark"] .app-header,
html[data-theme="dark"] .mobile-header{background:var(--espresso)!important;color:var(--porcelain)!important}
html[data-theme="dark"] .app-header .header-title,
html[data-theme="dark"] .app-header .header-title strong,
html[data-theme="dark"] .mobile-header [data-mobile-page-title],
html[data-theme="dark"] .header-profile,
html[data-theme="dark"] .header-profile strong,
html[data-theme="dark"] .live-datetime{color:var(--porcelain)!important}
html[data-theme="dark"] .notification-trigger,
html[data-theme="dark"] .theme-trigger,
html[data-theme="dark"] .sync-trigger,
html[data-theme="dark"] .sidebar-toggle,
html[data-theme="dark"] .header-back-button{background:#342720!important;color:var(--porcelain)!important;border-color:#59473D!important}
html[data-theme="dark"] .table tbody tr:hover{background:#3C2D25}

@media print{
  :root{--ink:#000;--muted:#333;--cream:#fff;--card:#fff;--line:#bbb}
}

/* Page styles load before this file so shared status and sync surfaces stay aligned. */
html[data-theme] .dashboard-palette .dashboard-view-tabs a[aria-current]{
  background:transparent!important;
  color:var(--ink)!important;
}
html[data-theme] .dashboard-palette .dashboard-tabs button.active{
  background:var(--service-orange)!important;
  color:var(--porcelain)!important;
}
html[data-theme] .records-redesign .kpi-orange,
html[data-theme] .records-redesign .kpi-amber{background:var(--service-orange-soft);color:var(--service-orange)}
html[data-theme] .records-redesign .kpi-green{background:var(--status-success-soft);color:var(--status-success)}
html[data-theme] .records-redesign .kpi-blue{background:var(--status-info-soft);color:var(--status-info)}
html[data-theme] .records-redesign :is(.status-active,.status-completed,.event-success){background:var(--status-success-soft)}
html[data-theme] .records-redesign :is(.status-active i,.status-completed i,.event-success>i){color:var(--status-success)}
html[data-theme] .records-redesign :is(.status-missing,.event-warning){background:var(--status-warning-soft)}
html[data-theme] .records-redesign :is(.status-missing i,.event-warning>i){color:var(--status-warning)}
html[data-theme] .records-redesign .expense-type-chip,
html[data-theme] .records-redesign .recent-event-icon{background:var(--service-orange-soft)}
html[data-theme] .records-redesign .recent-event-icon{color:var(--service-orange)}
html[data-theme] .connectivity-banner{
  border-color:var(--status-warning-border);
  background:var(--status-warning-soft);
  color:var(--ink);
}
html[data-theme] .connectivity-banner-icon{background:var(--service-orange-soft);color:var(--service-orange)}
html[data-theme] .connectivity-banner-links a{color:var(--orange-deep)}
html[data-theme] .local-summary-banner{
  border-color:var(--status-info-border);
  background:var(--status-info-soft);
  color:var(--ink);
}
html[data-theme] .local-summary-banner>i{border-color:var(--status-info-border);color:var(--status-info)}
html[data-theme] .sync-status-modal .modal-content{border-color:var(--line);background:var(--card);color:var(--ink)}
html[data-theme] .sync-status-modal .sync-status-heading h2{color:var(--ink)}
html[data-theme] .sync-status-modal .sync-status-heading p,
html[data-theme] .sync-status-modal .sync-popup-guidance p,
html[data-theme] .sync-status-modal .sync-status-footer>span{color:var(--muted)}
html[data-theme] .sync-status-modal .sync-status-close{color:var(--muted)}
html[data-theme] .sync-status-modal .sync-status-close:hover{background:var(--cream-2)}
html[data-theme] .sync-status-modal .sync-status-emblem{border-color:color-mix(in srgb,var(--offline-sync-accent) 38%,var(--line));color:var(--offline-sync-accent)}
html[data-theme] .sync-status-modal .sync-status-details{border-color:var(--line);background:var(--card)}
html[data-theme] .sync-status-modal .sync-status-details>div,
html[data-theme] .sync-status-modal .sync-status-footer{border-color:var(--line)}
html[data-theme] .sync-status-modal .sync-status-details dt{color:var(--muted)}
html[data-theme] .sync-status-modal .sync-status-details dt i{color:var(--service-orange)}
html[data-theme] .sync-status-modal .sync-status-details dd,
html[data-theme] .sync-status-modal .sync-status-footer>button{color:var(--ink)}
html[data-theme] .sync-status-modal .sync-connection-region[data-connection=online],
html[data-theme] .sync-status-modal .sync-authorization-region[data-sync-state=synced]{
  border-color:var(--status-success-border);
  background:var(--status-success-soft);
  color:var(--status-success);
}
html[data-theme] .sync-status-modal .sync-connection-region:is([data-connection=offline],[data-connection=database],[data-connection=server],[data-connection=device-network],[data-connection=backend],[data-connection=authentication],[data-connection=authorization]),
html[data-theme] .sync-status-modal .sync-authorization-region:is([data-sync-state=waiting],[data-sync-state=recovery]){
  border-color:var(--status-warning-border);
  background:var(--status-warning-soft);
  color:var(--status-warning);
}
html[data-theme] .sync-status-modal .sync-connection-divider{background:var(--line)}
html[data-theme] .sync-status-modal .sync-owner-warning{
  background:var(--status-warning-soft);
  color:var(--status-warning);
}
html[data-theme] .sync-status-modal .sync-owner-icon{border-color:var(--status-warning-border);color:var(--status-warning)}
html[data-theme] .sync-status-modal .sync-owner-warning p{color:var(--muted)}
html[data-theme] .sync-status-modal .modal-footer>.btn{background:var(--service-orange);color:var(--porcelain)}
html[data-theme] .sync-status-modal .modal-footer>.btn:hover{background:var(--service-orange-hover)}
html[data-theme] .sync-status-modal button:focus-visible{outline-color:var(--service-orange)}
html[data-theme] .printer-settings-modal :is(.printer-device-picker,#printerTransport):focus-visible,
html[data-theme] .receipt-preview-scroll:focus-visible{outline-color:var(--service-orange)}
html[data-theme] .printer-settings-modal .printer-list-icon,
html[data-theme] .printer-settings-modal .printer-paper input,
html[data-theme] .receipt-option-icon,
html[data-theme] .receipt-summary-total :is(i,strong),
html[data-theme] .receipt-preview-header .receipt-preview-icon,
html[data-theme] .offline-receipt-header .receipt-preview-icon,
html[data-theme] .receipt-preview-modal .receipt-preview-icon{color:var(--service-orange)}
html[data-theme] .printer-settings-modal .printer-paper label:has(input:checked){
  border-color:var(--service-orange);
  background:var(--service-orange-soft);
  color:var(--ink);
}
html[data-theme] .printer-settings-modal .printer-connection-error{
  border-color:var(--status-danger-border);
  background:var(--status-danger-soft);
  color:var(--status-danger);
}
html[data-theme] .printer-settings-modal .printer-test-button{
  background:var(--status-success);
  color:var(--porcelain);
}
html[data-theme] .printer-settings-modal .printer-disconnect-button{
  background:var(--status-danger);
  color:var(--porcelain);
}
html[data-theme] .receipt-preview-modal .receipt-print-state[data-state=connected]{
  background:var(--status-success-soft);
  color:var(--status-success);
}
html[data-theme] .receipt-summary-total{background:var(--service-orange-soft);color:var(--ink)}
html[data-theme] .offline-receipt-dialog{
  --dialog-bg:var(--card);
  --dialog-soft:var(--cream);
  --dialog-ink:var(--ink);
  --dialog-muted:var(--muted);
  --dialog-border:var(--line);
}
