/* KVK Module Test Workbench v5.7.12 / shared layer v3.9.241
   Canonical all-Trade surface ownership after user rejection of v5.7.11.
   The locked KVK watermark on html/body is not edited. Full-page wrappers above it
   are transparent. Only one main visual surface per branch gets controlled blue-green
   background alpha; nested layout wrappers stay transparent to prevent alpha stacking.
   Ordinary white buttons/controls/panels are themed. Bill, Receipt, Packing Slip,
   Print Preview, Ctrl+P/PDF and functional image/QR/barcode canvases stay opaque white. */
:root{
  --kvk-v39241-surface:rgba(190,222,228,.72);
  --kvk-v39241-surface-hover:rgba(184,217,224,.82);
  --kvk-v39241-surface-strong:rgba(207,231,235,.86);
  --kvk-v39241-surface-soft:rgba(205,231,235,.48);
  --kvk-v39241-header:rgba(190,220,227,.82);
  --kvk-v39241-control:rgba(205,231,235,.94);
  --kvk-v39241-control-hover:rgba(190,222,228,.98);
  --kvk-v39241-control-focus:rgba(220,240,242,.99);
  --kvk-v39241-modal:rgba(215,236,239,.94);
  --kvk-v39241-line:#78a8b4;
  --kvk-v39241-line-soft:#9bc0c8;
  --kvk-v39241-text:#143549;
  --kvk-v39241-muted:#456778;
}

/* WATERMARK VISIBILITY OWNER: these wrappers must never paint over the body watermark. */
html body[data-role] #app,
html body[data-role] main.container,
html body[data-role] .container,
html body[data-role] .mobile-shell,
html body[data-role] .owner-app-shell,
html body[data-role] .mobile-content,
html body[data-role] .delivery-container-v39119,
html body[data-role] .delivery-container-v39120{
  background-color:transparent!important;
  background-image:none!important;
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body[data-role] .mobile-shell{
  border-color:rgba(120,168,180,.58)!important;
}

/* One primary translucent visual layer. */
html body[data-role] :is(
  .card,.hero-card,.role-card,.stat,.order-card,.product-card,.health-card,
  .address-card,.cart-item,.order-type-box,.assign-boy-option,.empty,
  .auth-card,.store-auth-card,.camera-box,.notification-toast,.map-card,
  .delivered-history-card,.report-filter-card,.report-generator-section,
  .store-api-settings-card,.store-api-email-card,.store-api-sms-card,
  .delivery-id-card-v39119,.store-settings-card,.kvk-settings-root-v39232,
  .kvk-promo-panel-v39232,.promo-manager-toolbar-v39185,
  .customer-product-card-v39158,.customer-combo-card-v39225,
  .restaurant-product-card-v39171,.combo-customer-section-v39223,
  .assigned-order-card-v39195,.delivery-assignment-card-v39196,
  .store-id-permission-section-v39125,.id-boundation-panel-v39188,
  .siren-setting-card-v39207,.siren-setting-card-v39208,
  .token-card-v39181,.readonly-box,.report-output-box
){
  background-color:var(--kvk-v39241-surface)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line-soft)!important;
  color:var(--kvk-v39241-text);
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Prevent nested alpha stacking from hiding the watermark. Borders keep separation. */
html body[data-role] :is(.card,.hero-card,.role-card,.order-card,.product-card,.auth-card,.store-settings-card,.kvk-settings-root-v39232,.kvk-promo-panel-v39232)
  :is(.card,.hero-card,.role-card,.order-card,.product-card,.health-card,.address-card,.cart-item,.order-type-box,.assign-boy-option,.report-filter-card,.report-output-box,.store-settings-card,.kvk-settings-detail-v39232,.kvk-promo-panel-v39232){
  background-color:var(--kvk-v39241-surface-soft)!important;
  background-image:none!important;
}
html body[data-role] :is(.grid,.form-grid,.actions,.toolbar,.tabs,.card-title,.product-body,.mobile-content>section){
  background-color:transparent!important;
  background-image:none!important;
}

/* Strong/detail surfaces that need more readability without becoming pure white. */
html body[data-role] :is(
  .table-wrap,.delete-record-panel-v39199,.delete-record-grid-v39199>div,
  .delete-record-card-v39199,.dashboard-chart-panel-v39193,
  .dashboard-chart-panel-v39197,.dashboard-chart-panel-v39198,
  .business-chart-card-v39197,.business-chart-card-v39198,
  .professional-chart-v39200,.fy-growth-comparison-v39203,
  .growth-kpi-v39203,.growth-chart-v39203,.pg-panel-v39202,
  .pg-fields-v39202,.pg-method-check-v39202,.pg-row-v39202,
  .owner-popup-search-v39196,.owner-delivery-boy-v39196,
  .history-detail-grid-v39195>span,.report-total-box .mini-total,
  .store-detail-pill,.item-code,.notice.soft
){
  background-color:var(--kvk-v39241-surface-strong)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line-soft)!important;
  color:var(--kvk-v39241-text)!important;
  opacity:1!important;
}

/* Headers/navigation are translucent, but not stacked over an opaque shell. */
html body[data-role] :is(
  .topbar,.topbar-inner,.mobile-header,.mobile-role-tabs,.bottom-bar,
  .owner-app-header-v3965,.delivery-header-v39119,.delivery-header-v39120,
  .store-web-header-v3956,.modal-head
){
  background-color:var(--kvk-v39241-header)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line-soft)!important;
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Dialogs, dropdowns and popup bodies. */
html body[data-role] :is(
  .modal,.modal-content,.modal-body,.kvk-dialog-v39151,
  .kvk-dialog-body-v39151,.kvk-dialog-input-v39151,
  .kvk-combobox-menu-v39151,.kvk-combobox-option-v39151,
  .quick-switch-modal-v39128,.restaurant-portion-modal-v39171,
  .admin-request-popup-v3981,.admin-request-popup-body-v3981,
  .delivery-id-modal-v39120,.kvk-native-modal-v39180,
  .graph-fy-menu-v39198,.kvk-promo-date-panel-v39239,
  .kvk-theme-surface-v39241
){
  background-color:var(--kvk-v39241-modal)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line)!important;
  color:var(--kvk-v39241-text)!important;
  opacity:1!important;
}
html body[data-role] :is(.kvk-dialog-head-v39151,.admin-request-popup-head-v3981){
  background-color:var(--kvk-v39241-header)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line-soft)!important;
}

/* Form fields and calendar controls: themed, readable and not translucent enough to lose text. */
html body[data-role] input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="file"]):not([type="hidden"]),
html body[data-role] select,
html body[data-role] textarea,
html body[data-role] .graph-fy-button-v39198,
html body[data-role] .professional-date-button-v39200,
html body[data-role] .promo-date-button-v39239{
  background-color:var(--kvk-v39241-control)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line)!important;
  color:var(--kvk-v39241-text)!important;
  opacity:1!important;
}
html body[data-role] :is(input,select,textarea):focus{
  background-color:var(--kvk-v39241-control-focus)!important;
  border-color:#277d96!important;
}
html body[data-role] :is(input,textarea)::placeholder{
  color:var(--kvk-v39241-muted)!important;
  opacity:1!important;
}

/* All known neutral white buttons. Semantic primary/success/warning/danger colours remain untouched. */
html body[data-role] :is(
  .btn.secondary,.pill:not(.active),.tab:not(.active),
  .bottom-bar button:not(.active),.mobile-role-tabs .pill:not(.active),
  .qty-row button,.product-qty-controls button,.login-tabs button:not(.active),
  .kvk-dialog-btn-v39151:not(.primary):not(.danger),
  .kvk-combobox-option-v39151,.health-card,
  .store-setting-btn:not([data-kvk-active-v39233="true"]),
  .promo-manager-tab-v39185:not([data-kvk-active-v39233="true"]),
  .settings-tab-v39228:not([data-kvk-active-v39233="true"]),
  .kvk-shared-tab-v39229:not(.kvk-shared-tab-active-v39229),
  .history-pill-v39195,.kvk-theme-neutral-v39241
){
  background-color:var(--kvk-v39241-control)!important;
  background-image:none!important;
  border-color:var(--kvk-v39241-line)!important;
  color:var(--kvk-v39241-text)!important;
  opacity:1!important;
}
html body[data-role] :is(
  .btn.secondary,.pill:not(.active),.tab:not(.active),
  .bottom-bar button:not(.active),.mobile-role-tabs .pill:not(.active),
  .qty-row button,.product-qty-controls button,.login-tabs button:not(.active),
  .kvk-dialog-btn-v39151:not(.primary):not(.danger),
  .kvk-combobox-option-v39151,.store-setting-btn:not([data-kvk-active-v39233="true"]),
  .promo-manager-tab-v39185:not([data-kvk-active-v39233="true"]),
  .settings-tab-v39228:not([data-kvk-active-v39233="true"]),
  .kvk-shared-tab-v39229:not(.kvk-shared-tab-active-v39229),
  .kvk-theme-neutral-v39241
):hover{
  background-color:var(--kvk-v39241-control-hover)!important;
}

/* Tables do not add another opaque white layer. */
html body[data-role] table :is(th,td){background-color:transparent!important}
html body[data-role] table thead th{
  background-color:rgba(181,216,224,.82)!important;
  color:#294f61!important;
}

/* Final protected white allowlist. This must win over every normal theme selector. */
html body :is(
  .print-area,.print-only,.print-window,.print-controls,
  .packing-slip-v39181,#packingSlipDocumentV39181,
  .packing-preview-shell-v39181 .packing-slip-v39181,
  .packing-table-wrap-v39181,
  .canonical-bill-format-v39217,.bill-pdf-exact-preview-v39217,
  [class*="bill-document"],[class*="receipt-document"],[data-print-document],
  .bill-table-wrap-v39210,.receipt-table-wrap-v39210,
  .customer-product-image-v39158,.product-img,.product-photo,
  .item-thumb,.photo-preview,.store-logo-preview,.logo.store-logo-img,
  .app-logo.store-logo-img,.kvk-store-header-logo-v3956 img,
  .pg-customer-qr-v39202,.pg-customer-qr-v39202 img,.html5-qr-reader,
  .print-area canvas,.print-only canvas,.print-window canvas,
  .packing-slip-v39181 canvas,.canonical-bill-format-v39217 canvas,
  [data-print-document] canvas,[class*="bill-document"] canvas,[class*="receipt-document"] canvas,
  [class*="qr-canvas"],[class*="barcode"],[data-qr-canvas],[data-barcode]
){
  background-color:#fff!important;
  background-image:none!important;
  opacity:1!important;
}

/* Do not flatten semantic colours. */
html body[data-role] :is(
  .btn:not(.secondary),.danger,.error,.warning,.success,
  .notice.success,.notice.warn,.notice.info,
  [data-status="error"],[data-status="warning"],[data-status="success"],
  .badge.green,.badge.red,.badge.orange,.badge.blue,.badge.dark
){opacity:1!important}

@media(max-width:680px){
  html body[data-role] :is(.card,.order-card,.product-card,.role-card){
    background-color:rgba(190,222,228,.76)!important;
  }
}

@media print{
  html,body,body[data-role],body[data-role] #app,
  body[data-role] .container,body[data-role] .mobile-shell,
  body[data-role] .mobile-content,.card,.hero-card,.role-card,
  .order-card,.product-card,.table-wrap,.modal,.modal-content,.modal-body,
  .print-area,.print-only,.print-window,.packing-slip-v39181,
  [class*="bill-document"],[class*="receipt-document"],[data-print-document]{
    background:#fff!important;
    background-image:none!important;
    color:#000!important;
    opacity:1!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}
