/* =====================================================================
   CONTROL POS — "PREMIUM SHISHA" KO'RINISH ANDOZASI (theme-glass)  v2.0 — token arxitekturasi (qorong'i + yorug')
   =====================================================================
   Faqat tashqi ko'rinish: ranglar, fon, shisha panellar, shriftlar,
   radius va soyalar. HTML strukturasi, JS, backend, API o'zgarmaydi.

   ULASH:   <link rel="stylesheet" href="/styles/theme-glass.css">  (oxirgi CSS)
            <body class="... theme-glass">
   O'CHIRISH: shu ikkisini olib tashlash kifoya — dastur avvalgi
   ko'rinishiga qaytadi.

   Qoidalar:
   - Barcha qoidalar @media screen ichida (chek/hisobot chop etish o'zgarmaydi).
   - Blur faqat KATTA panellarda (sidebar, topbar, modal, dock, sheet).
     Ro'yxat qatorlari va kartalar blur'siz shisha (gradient + chegara).
   - backdrop-filter ishlamasa yoki prefers-reduced-transparency yoqilgan
     bo'lsa panellar to'q va shaffofmas: rgba(22,28,52,.92).
   - Shriftlar lokal (fonts/*.woff2): Onest (matn), Unbounded (sarlavha/raqam).
   - Kontrast >= 4.5:1.
   ===================================================================== */

/* ------------------ LOKAL SHRIFTLAR (variable, OFL 1.1) ------------------
   @font-face @media ichiga yozilmaydi; fayllar faqat ishlatilganda yuklanadi.
   Chop etishda ushbu font-family'lar qo'llanmaydi, shuning uchun print'ga
   ta'sir yo'q. */
@font-face{font-family:'Onest';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/fonts/onest-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Onest';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/fonts/onest-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Onest';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/fonts/onest-cyrillic.woff2') format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/fonts/onest-cyrillic-ext.woff2') format('woff2');
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/fonts/unbounded-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/fonts/unbounded-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/fonts/unbounded-cyrillic.woff2') format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/fonts/unbounded-cyrillic-ext.woff2') format('woff2');
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@media screen {

/* =====================================================================
   1) TEMA TOKENLARI — QORONG'I (standart)
   Barcha komponentlar faqat shu --g-* tokenlaridan rang oladi. Yorug' rejim
   (2-bo'lim) faqat tokenlarni almashtiradi — komponent qoidalari bitta.
   Eski qatlamlar (premium-reference, teal-glass) tokenlari ham shu yerdan
   xaritalanadi (!important — ularning body.dark !important'larini yengadi).
   ===================================================================== */
body.theme-glass{
  --g-bg:#070B18;
  --g-bg-image:
    radial-gradient(circle at 10% 5%, rgba(45,212,191,.35), transparent 40%),
    radial-gradient(circle at 95% 45%, rgba(139,92,246,.40), transparent 40%),
    radial-gradient(circle at 15% 95%, rgba(245,158,11,.28), transparent 40%);
  --g-text:#F5F7FC;
  --g-muted:#CDD3E4;
  --g-faint:rgba(205,211,228,.62);
  --g-accent:#7CE7D4;              /* to'ldiruvchi aksent (tugmalar) */
  --g-accent-text:#7CE7D4;         /* sirt ustidagi aksent matn */
  --g-accent-soft:rgba(124,231,212,.16);
  --g-accent-line:rgba(124,231,212,.45);
  --g-on-accent:#07121A;
  --g-warn:#F5B84B; --g-danger:#FF7A85; --g-progress:#B8A6FF;
  --g-warn-soft:rgba(245,184,75,.14); --g-danger-soft:rgba(255,122,133,.13); --g-progress-soft:rgba(184,166,255,.16);
  --g-primary-grad:linear-gradient(180deg,#AFF7E8 0%,#7CE7D4 52%,#5BD8C1 100%);
  --g-primary-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 5px rgba(4,44,37,.30),0 2px 6px rgba(0,0,0,.25),0 12px 28px rgba(124,231,212,.32);
  --g-danger-grad:linear-gradient(180deg,#FFA6AD 0%,#FF7A85 55%,#F2606C 100%);

  --g-panel:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,0) 26%),linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.04)),rgba(11,15,32,.44);
  --g-panel-solid:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 26%),#121834;
  --g-panel-border:rgba(255,255,255,.26) rgba(255,255,255,.14) rgba(255,255,255,.09);
  --g-panel-shadow:inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(0,0,0,.30),0 2px 6px rgba(0,0,0,.26),0 18px 44px rgba(0,0,0,.36),0 44px 96px rgba(3,6,18,.34);
  --g-card:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,0) 30%),linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.03)),rgba(11,15,32,.44);
  --g-card-border:rgba(255,255,255,.22) rgba(255,255,255,.12) rgba(255,255,255,.08);
  --g-card-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.26),0 1px 3px rgba(0,0,0,.26),0 12px 28px rgba(0,0,0,.30);
  --g-card-hover-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -1px 0 rgba(0,0,0,.26),0 6px 14px rgba(0,0,0,.30),0 22px 48px rgba(0,0,0,.38),0 0 26px rgba(124,231,212,.10);
  --g-control:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 40%),linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  --g-control-border:rgba(255,255,255,.16);
  --g-control-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 4px 12px rgba(0,0,0,.22);
  --g-input:rgba(255,255,255,.06);
  --g-input-border:rgba(255,255,255,.16);
  --g-media:radial-gradient(120% 90% at 50% 12%,rgba(255,255,255,.16),rgba(255,255,255,.02) 60%),rgba(255,255,255,.03);
  --g-sep:rgba(255,255,255,.08);
  --g-thead:rgba(255,255,255,.04);
  --g-hover:rgba(255,255,255,.045);
  --g-overlay:rgba(4,7,16,.62);
  --g-option:#101528;
  --g-fallback:rgba(22,28,52,.92);
  --g-scroll:rgba(160,190,220,.26);
  --g-ambient:.30;
  --g-text-shadow:0 1px 2px rgba(0,0,0,.35);
  --g-lock-bg:#070B18;
  --blur:22px;

  /* Eski tizim tokenlari → andoza */
  --bg:#070B18 !important; --text:#F5F7FC !important; --muted:#CDD3E4 !important;
  --accent:#7CE7D4 !important; --on-accent:#07121A !important;
  --warn:#F5B84B !important; --danger:#FF7A85 !important; --progress:#B8A6FF !important;
  --panel:rgba(13,18,38,.55) !important; --panel2:rgba(20,26,50,.50) !important; --card:rgba(13,18,38,.55) !important;
  --sidebar:transparent !important; --line:rgba(255,255,255,.10) !important; --border:rgba(255,255,255,.16) !important;
  --success:#7CE7D4 !important; --blue:#B8A6FF !important; --purple:#B8A6FF !important;
  --orange:#F5B84B !important; --orange-soft:rgba(245,184,75,.14) !important;
  --shadow:0 12px 32px rgba(0,0,0,.28) !important; --focus-color:#7CE7D4 !important;
  --cp-bg:#070B18 !important; --cp-shell:#0B1022 !important;
  --cp-surface-1:rgba(13,18,38,.55) !important; --cp-surface-2:rgba(20,26,50,.50) !important;
  --cp-surface-3:rgba(26,33,60,.50) !important; --cp-surface-4:rgba(32,40,70,.50) !important;
  --cp-line:rgba(255,255,255,.14) !important; --cp-text-1:#F5F7FC !important; --cp-text-2:#CDD3E4 !important;
  --cp-accent:#7CE7D4 !important; --ios-accent:#7CE7D4 !important; --fix10-accent:#7CE7D4 !important; --accent-color:#7CE7D4 !important;
  --radius-xs:10px !important; --radius-sm:14px !important; --radius-control:14px !important;
  --radius-medium:22px !important; --radius-card:22px !important; --radius-large:28px !important; --glass-blur:22px !important;

  background:var(--g-bg-image),var(--g-bg) !important;
  background-attachment:fixed;
  color:var(--g-text) !important;
  font-family:'Onest','Inter','Segoe UI',system-ui,-apple-system,sans-serif;
}
html:has(> body.theme-glass){background:var(--g-html-bg,#070B18);color-scheme:dark}

/* =====================================================================
   2) TEMA TOKENLARI — YORUG'
   Yoqilishi: html[data-cp-theme="light"] (admin: shell-runtime/fix72,
   POS: index.html skripti + App) yoki POS body.cp-light. Qorong'i
   hardcode ranglar (#070B18, rgba(11,15,32,…)) bu yerda qolmaydi.
   ===================================================================== */
html[data-cp-theme="light"] body.theme-glass,
body.theme-glass.cp-light{
  --g-bg:#EEF3FA;
  --g-bg-image:
    radial-gradient(circle at 10% 5%, rgba(45,212,191,.22), transparent 42%),
    radial-gradient(circle at 95% 45%, rgba(139,92,246,.16), transparent 42%),
    radial-gradient(circle at 15% 95%, rgba(245,158,11,.15), transparent 42%);
  --g-text:#0F1B33;
  --g-muted:#46546F;
  --g-faint:rgba(70,84,111,.72);
  --g-accent:#2CC7B0;
  --g-accent-text:#0A7466;
  --g-accent-soft:rgba(20,184,166,.13);
  --g-accent-line:rgba(13,148,136,.45);
  --g-on-accent:#04201B;
  --g-warn:#9A5A05; --g-danger:#C22E3E; --g-progress:#5641C4;
  --g-warn-soft:rgba(245,158,11,.14); --g-danger-soft:rgba(225,29,72,.10); --g-progress-soft:rgba(109,85,217,.12);
  --g-primary-grad:linear-gradient(180deg,#9FF3E3 0%,#5EDCC6 55%,#34C9B1 100%);
  --g-primary-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -2px 5px rgba(4,60,52,.18),0 1px 2px rgba(15,27,51,.10),0 10px 24px rgba(20,160,140,.28);
  --g-danger-grad:linear-gradient(180deg,#FF9AA3 0%,#F4606E 60%,#E24A58 100%);

  --g-panel:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.62) 34%),rgba(255,255,255,.60);
  --g-panel-solid:linear-gradient(180deg,#FFFFFF,#F7FAFE);
  --g-panel-border:rgba(255,255,255,.95) rgba(15,27,51,.10) rgba(15,27,51,.15);
  --g-panel-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(15,27,51,.05),0 1px 2px rgba(15,27,51,.06),0 14px 34px rgba(30,50,90,.12),0 34px 80px rgba(30,50,90,.10);
  --g-card:linear-gradient(180deg,#FFFFFF,rgba(255,255,255,.78)),rgba(255,255,255,.72);
  --g-card-border:rgba(255,255,255,.95) rgba(15,27,51,.09) rgba(15,27,51,.14);
  --g-card-shadow:inset 0 1px 0 #FFFFFF,0 1px 2px rgba(15,27,51,.07),0 8px 22px rgba(30,50,90,.10);
  --g-card-hover-shadow:inset 0 1px 0 #FFFFFF,0 4px 10px rgba(15,27,51,.08),0 18px 40px rgba(30,50,90,.16),0 0 0 1px rgba(13,148,136,.18);
  --g-control:linear-gradient(180deg,#FFFFFF,#F2F6FC);
  --g-control-border:rgba(15,27,51,.14);
  --g-control-shadow:inset 0 1px 0 #FFFFFF,0 1px 2px rgba(15,27,51,.08),0 4px 10px rgba(30,50,90,.08);
  --g-input:#FFFFFF;
  --g-input-border:rgba(15,27,51,.18);
  --g-media:radial-gradient(120% 90% at 50% 12%,rgba(255,255,255,1),rgba(226,234,246,.9) 70%),#E9EFF8;
  --g-sep:rgba(15,27,51,.09);
  --g-thead:rgba(15,27,51,.035);
  --g-hover:rgba(15,27,51,.04);
  --g-overlay:rgba(15,27,51,.30);
  --g-option:#FFFFFF;
  --g-fallback:rgba(250,252,255,.97);
  --g-scroll:rgba(15,27,51,.22);
  --g-ambient:.14;
  --g-text-shadow:none;
  --g-lock-bg:#EEF3FA;

  --bg:#EEF3FA !important; --text:#0F1B33 !important; --muted:#46546F !important;
  --accent:#0FAE98 !important; --on-accent:#04201B !important;
  --warn:#9A5A05 !important; --danger:#C22E3E !important; --progress:#5641C4 !important;
  --panel:rgba(255,255,255,.82) !important; --panel2:#F2F6FC !important; --card:#FFFFFF !important;
  --sidebar:transparent !important; --line:rgba(15,27,51,.10) !important; --border:rgba(15,27,51,.14) !important;
  --success:#0FAE98 !important; --blue:#5641C4 !important; --purple:#5641C4 !important;
  --orange:#9A5A05 !important; --orange-soft:rgba(245,158,11,.14) !important;
  --shadow:0 12px 32px rgba(30,50,90,.14) !important; --focus-color:#0FAE98 !important;
  --cp-bg:#EEF3FA !important; --cp-shell:#F6F9FD !important;
  --cp-surface-1:rgba(255,255,255,.82) !important; --cp-surface-2:#F4F7FC !important;
  --cp-surface-3:#EDF2F9 !important; --cp-surface-4:#E6ECF5 !important;
  --cp-line:rgba(15,27,51,.12) !important; --cp-text-1:#0F1B33 !important; --cp-text-2:#46546F !important;
  --cp-accent:#0FAE98 !important; --ios-accent:#0FAE98 !important; --fix10-accent:#0FAE98 !important; --accent-color:#0FAE98 !important;
}
html[data-cp-theme="light"]:has(> body.theme-glass),
html:has(> body.theme-glass.cp-light){background:#EEF3FA;color-scheme:light}

/* Tema almashishida oq/qora "flash" yo'q: ranglar qisqa va nazoratli o'tadi */
html.cp-theme-switching body.theme-glass,
html.cp-theme-switching body.theme-glass *{
  transition:background-color .26s ease,color .26s ease,border-color .26s ease,box-shadow .26s ease,fill .26s ease !important;
}

/* =====================================================================
   3) UMUMIY KOMPONENTLAR (admin + POS)
   ===================================================================== */
.theme-glass :is(h1,h2,.page-title h1,#pageTitle,.topbar-brand-row h1,
  .kpi-value,.fc-alert-title,.wh-result-card b,.wh-cost-box b,#whEdCost,
  .warehouse-qty,.esv2-chat-title,.screen-title,.cp-lock-clock){
  font-family:'Unbounded','Onest',system-ui,sans-serif;
  font-weight:600;
  letter-spacing:-.01em;
}
.theme-glass :is(h3,h4){font-family:'Onest',system-ui,sans-serif;font-weight:800}
.theme-glass ::selection{background:var(--g-accent-soft)}
@media (pointer:fine){
  .theme-glass ::-webkit-scrollbar{width:10px;height:10px}
  .theme-glass ::-webkit-scrollbar-thumb{background:var(--g-scroll);border-radius:8px;border:2px solid transparent;background-clip:content-box}
  .theme-glass ::-webkit-scrollbar-track{background:transparent}
}

/* Input / select / textarea */
.theme-glass :is(input,select,textarea){
  background:var(--g-input);
  color:var(--g-text);
  border:1px solid var(--g-input-border);
  border-radius:var(--radius-sm,14px);
}
.theme-glass :is(input,select,textarea)::placeholder{color:var(--g-faint)}
.theme-glass :is(input,select,textarea):focus{
  border-color:var(--g-accent-line) !important;
  box-shadow:0 0 0 3px var(--g-accent-soft),inset 0 1px 2px rgba(0,0,0,.10) !important;
  outline:none;
}
.theme-glass select option{background:var(--g-option);color:var(--g-text)}

/* Asosiy / ikkilamchi / xavfli tugmalar */
.theme-glass .btn,
.theme-glass :is(.wh-menu-add,.wh-count-submit,.wh-ed-save,.fc-alert-ok,
  .wh-disc-actions button.primary,.wh-confirm-actions button.primary,.wh-hub-done),
.theme-glass .warehouse-tab.active,
body.theme-glass :is(.auth-submit-btn,.save-pin-btn,.save-secret-btn,.primary-action,
  .platform-pair-primary,.cp-pos-auth-primary){
  background:var(--g-primary-grad) !important;
  color:var(--g-on-accent) !important;
  border-color:transparent !important;
  box-shadow:var(--g-primary-shadow) !important;
  font-weight:800;
}
.theme-glass .btn{border-radius:var(--radius-sm,14px)}
.theme-glass :is(.btn.secondary,.warehouse-tab,.wh-back-btn,.wh-view-toggle,
  .wh-disc-filters button,.wh-disc-actions button,.wh-confirm-actions button,
  .notif-bell-btn,.esv19-account-btn,.wh-sheet-close,.wh-add-ing),
body.theme-glass :is(.auth-cancel-btn,.cancel-order-btn,.cp-pos-auth-secondary,.cp-pos-auth-ghost,.cp-pos-auth-launcher){
  background:var(--g-control) !important;
  color:var(--g-text) !important;
  border:1px solid var(--g-control-border) !important;
  box-shadow:var(--g-control-shadow) !important;
  text-shadow:none;
}
.theme-glass :is(.btn.danger,.wh-confirm-actions button.danger){
  background:var(--g-danger-grad) !important;
  color:#2A070B !important;
  border-color:transparent !important;
}
.theme-glass .warehouse-tab{border-radius:var(--radius-sm,14px)}
.theme-glass .wh-disc-filters button.active{background:var(--g-accent-soft) !important;border-color:var(--g-accent-line) !important;color:var(--g-accent-text) !important}
.theme-glass{
  --action-add-1:#7CE7D4; --action-add-2:#57D9C2;
  --action-save-1:#7CE7D4; --action-save-2:#4FD4BC;
  --action-edit-1:#B8A6FF; --action-edit-2:#9E86F5;
  --action-delete-1:#FF7A85; --action-delete-2:#F25D6A;
  --action-cancel:var(--g-hover);
}
.theme-glass :is(.action-add,.action-save,.btn.action-add,.btn.action-save){color:var(--g-on-accent) !important}
.theme-glass :is(.action-edit,.btn.action-edit){color:#141031 !important}
.theme-glass :is(.action-delete,.btn.action-delete){color:#2A070B !important}
.theme-glass :is(.action-cancel,.btn.action-cancel){color:var(--g-text) !important;border:1px solid var(--g-control-border) !important}

/* Holat ranglari */
.theme-glass .status-ok{background:var(--g-accent-soft);color:var(--g-accent-text)}
.theme-glass .status-bad{background:var(--g-danger-soft);color:var(--g-danger)}
.theme-glass .status-wait{background:var(--g-progress-soft);color:var(--g-progress)}
.theme-glass .wh-chip.ok{color:var(--g-accent-text);background:var(--g-accent-soft)}
.theme-glass .wh-chip.warn{color:var(--g-warn);background:var(--g-warn-soft)}
.theme-glass .wh-chip.bad{color:var(--g-danger);background:var(--g-danger-soft)}
.theme-glass .wh-chip.muted{color:var(--g-muted);background:var(--g-hover)}
.theme-glass :is(.status-pill,.badge,.wh-chip){box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 1px 2px rgba(0,0,0,.14)}
.theme-glass .difference-pos,.theme-glass .wh-disc-nums .pos{color:var(--g-warn)}
.theme-glass .difference-neg,.theme-glass .wh-disc-nums .neg{color:var(--g-danger)}
.theme-glass .wh-count-result.ok{background:var(--g-accent-soft);color:var(--g-accent-text)}
.theme-glass .wh-count-result.bad{background:var(--g-danger-soft);color:var(--g-danger)}
.theme-glass .wh-count-result.warn{background:var(--g-warn-soft);color:var(--g-warn)}
.theme-glass .wh-money-line{border-color:color-mix(in srgb,var(--g-danger) 35%,transparent);background:var(--g-danger-soft)}
.theme-glass .wh-offline-banner{border-color:color-mix(in srgb,var(--g-danger) 45%,transparent);background:var(--g-danger-soft);color:var(--g-danger)}
.theme-glass .wh-pending-box{border-color:color-mix(in srgb,var(--g-warn) 40%,transparent);background:var(--g-warn-soft)}
.theme-glass .notif-bell-badge,.theme-glass .wh-hub-badge{background:var(--g-danger);color:#fff}
.theme-glass .wh-hub-badge.warn{background:var(--g-warn);color:#fff}
.theme-glass .cp-connection[data-state="online"]{color:var(--g-accent-text)}
.theme-glass .notif-item.unread{background:var(--g-accent-soft)}
.theme-glass .wh-count-bar i{background:var(--g-progress)}
.theme-glass .wh-count-row input.wh-actual.done{border-color:var(--g-accent-line)}
.theme-glass .muted-line{color:var(--g-muted)}

/* =====================================================================
   4) CONTROL POS (admin) — POS'ga sizib o'tmaydi (:not(.pos-app))
   Avval .topbar/.card/.sidebar qoidalari POS'dagi bir xil nomli
   elementlarga ham tushib, to'rtburchak "chiziq" panel va ikki chegara
   hosil qilardi — endi faqat admin ilovasiga tegishli.
   ===================================================================== */
body.theme-glass:not(.pos-app) :is(.sidebar,.topbar,.modal-box,.fc-alert-box,.notif-panel,
  .wh-editor,.wh-sheet,.wh-count-footer,.wh-sec-head,
  #fix2041AdminMobileDock,.esv19-mobile-dock,.cpt-card,.dashboard-drawer){
  background:var(--g-panel) !important;
  border:1px solid;
  border-color:var(--g-panel-border) !important;
  backdrop-filter:blur(var(--blur)) saturate(160%);
  -webkit-backdrop-filter:blur(var(--blur)) saturate(160%);
  box-shadow:var(--g-panel-shadow) !important;
  color:var(--g-text);
}
body.theme-glass:not(.pos-app) .sidebar{border-top:0;border-bottom:0;border-left:0}
/* Desktop'da topbar suzuvchi karta — burchaklar yumaloq (kesilgan to'rtburchak emas);
   mobil tartibda to'liq enli bo'lgani uchun faqat pastki chegara */
body.theme-glass:not(.pos-app) .topbar{border-radius:var(--radius-card)}
html.cp-layout-mobile body.theme-glass:not(.pos-app) .topbar{border-top:0;border-left:0;border-right:0;border-radius:0}
body.theme-glass:not(.pos-app) :is(.modal-box,.fc-alert-box){border-radius:var(--radius-large) !important}
body.theme-glass:not(.pos-app) :is(.wh-editor,.wh-sheet){border-radius:var(--radius-large) var(--radius-large) 0 0}
@media(min-width:760px){body.theme-glass:not(.pos-app) .wh-sheet{border-radius:var(--radius-large)}}
body.theme-glass:not(.pos-app) :is(#fix2041AdminMobileDock,.esv19-mobile-dock){
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(0,0,0,.28),0 -4px 14px rgba(0,0,0,.20),0 -18px 44px rgba(3,6,18,.30) !important;
}
body.theme-glass:not(.pos-app) .modal{background:var(--g-overlay)}
body.theme-glass:not(.pos-app) :is(.notif-panel-backdrop,.wh-editor-overlay,.wh-sheet-overlay){background:var(--g-overlay)}

body.theme-glass:not(.pos-app) :is(.card,.wh-hub-card,.product-stat,.recipe-row,.ostatka-actions>div,
  .wh-count-row,.wh-disc-row,.wh-menu-list,.wh-result-card,.wh-pending-box,
  .esv19-widget,.esv19-file-chip,.perm18-group,.fix7-card,.kpi-card,
  .dashboard-block,.wh-card,.wh-cost-box,.stock-workspace){
  background:var(--g-card);
  border:1px solid;
  border-color:var(--g-card-border);
  box-shadow:var(--g-card-shadow);
  color:var(--g-text);
}
body.theme-glass:not(.pos-app) :is(.card,.dashboard-block,.wh-hub-card){border-radius:var(--radius-card)}
body.theme-glass:not(.pos-app) :is(.recipe-row,.wh-count-row,.wh-disc-row,.product-stat){border-radius:var(--radius-sm)}
body.theme-glass:not(.pos-app) :is(.warehouse-thumb,.wh-menu-thumb,.product-card-image){background:var(--g-hover);border-color:var(--g-sep)}
body.theme-glass:not(.pos-app) .wh-menu-row{border-bottom:1px solid var(--g-sep)}
body.theme-glass:not(.pos-app) .wh-menu-row:active{background:var(--g-hover)}
body.theme-glass:not(.pos-app) .menu-item{color:var(--g-text);border-radius:var(--radius-sm)}
body.theme-glass:not(.pos-app) .menu-item:hover{background:var(--g-hover)}
body.theme-glass:not(.pos-app) .menu-item.active{background:var(--g-accent-soft);color:var(--g-accent-text);box-shadow:inset 0 0 0 1px var(--g-accent-line)}
body.theme-glass:not(.pos-app) .cp-nav-indicator{background:var(--g-accent-soft);box-shadow:inset 0 0 0 1px var(--g-accent-line)}
body.theme-glass:not(.pos-app) .table-wrap table{border-color:var(--g-sep)}
body.theme-glass:not(.pos-app) .table-wrap th{color:var(--g-muted);border-bottom:1px solid var(--g-sep);background:var(--g-thead)}
body.theme-glass:not(.pos-app) .table-wrap td{border-bottom:1px solid var(--g-sep)}
body.theme-glass:not(.pos-app) .table-wrap tr:hover td,body.theme-glass:not(.pos-app) tbody tr:hover{background:var(--g-hover)}
body.theme-glass:not(.pos-app) .category-row{border-color:var(--g-sep)}
body.theme-glass:not(.pos-app) .ios-brand-mark{background:var(--g-primary-grad);color:var(--g-on-accent);border-radius:14px}
body.theme-glass:not(.pos-app) .wh-ed-photo .ph{border-color:var(--g-control-border);background:var(--g-hover)}
body.theme-glass:not(.pos-app) .wh-switch input:checked+i{background:var(--g-accent)}
body.theme-glass:not(.pos-app) .wh-switch input:checked+i::after{background:var(--g-on-accent)}
body.theme-glass:not(.pos-app) .wh-recipe-head{color:var(--g-muted)}
body.theme-glass:not(.pos-app) :is(.wh-ing-row){border-top:1px solid var(--g-sep)}
body.theme-glass:not(.pos-app) :is(.wh-ing-pick,.wh-reason-opt){border-bottom:1px solid var(--g-sep)}
body.theme-glass:not(.pos-app) .wh-hub-icon{background:color-mix(in srgb,var(--wh-accent,#7CE7D4) 16%,transparent)}
body.theme-glass:not(.pos-app) .wh-search{background:var(--g-input);border-color:var(--g-input-border)}
body.theme-glass:not(.pos-app) #whSectionHost{background:var(--g-bg-image),var(--g-bg)}

/* Interaktiv ko'tarilish / botish (faqat kursorli qurilmalarda ko'tarilish) */
body.theme-glass:not(.pos-app) :is(.btn,.warehouse-tab,.wh-hub-card,.warehouse-item-card,.wh-menu-row,.wh-menu-card,.receipt-history-card,.wh-back-btn,.wh-menu-add,.notif-bell-btn){
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease,border-color .16s ease;
}
@media (hover:hover) and (pointer:fine){
  body.theme-glass:not(.pos-app) :is(.wh-hub-card,.warehouse-item-card,.wh-menu-card,.receipt-history-card):hover{
    transform:translateY(-2px);box-shadow:var(--g-card-hover-shadow);
  }
  body.theme-glass:not(.pos-app) :is(.btn,.warehouse-tab,.wh-menu-add,.wh-back-btn):hover{transform:translateY(-1px);filter:brightness(1.05)}
}
body.theme-glass:not(.pos-app) :is(.btn,.warehouse-tab,.wh-hub-card,.wh-menu-add):active{transform:translateY(1px) scale(.995);filter:brightness(.97)}

/* =====================================================================
   5) POS ILOVASI — bitta komponentlar, ikki tema (tokenlar orqali)
   ===================================================================== */
body.theme-glass.pos-app,
body.theme-glass.pos-app #root{background:var(--g-bg-image),var(--g-bg) !important;color:var(--g-text) !important}
body.theme-glass.pos-app .app-shell,
body.theme-glass.pos-app .platform-pair-shell{background:transparent !important;color:var(--g-text)}
body.theme-glass.pos-app .ambient{opacity:var(--g-ambient)}
body.theme-glass.pos-app .a1{background:#2DD4BF}
body.theme-glass.pos-app .a2{background:#8B5CF6}
body.theme-glass.pos-app .a3{background:#F59E0B}

/* 5.1 Katta shisha panellar (blur faqat shularda) */
body.theme-glass.pos-app :is(.glass,.catalog,.cart,.sections-modal,.history-window,.product-picker,
  .cashier-dropdown,.branch-dropdown,.grid-config-pop,.cp-lock-card,.platform-pair-card,.toast){
  background:var(--g-panel) !important;
  border:1px solid !important;
  border-color:var(--g-panel-border) !important;
  box-shadow:var(--g-panel-shadow) !important;
  color:var(--g-text) !important;
}
body.theme-glass.pos-app :is(.cart,.catalog,.sections-modal,.history-window,.product-picker,.cp-lock-card,.platform-pair-card,.cashier-dropdown,.branch-dropdown,.grid-config-pop){
  backdrop-filter:blur(var(--blur,22px)) saturate(160%) !important;
  -webkit-backdrop-filter:blur(var(--blur,22px)) saturate(160%) !important;
}
/* Modal / dropdown / popover — o'qilishi uchun zich (deyarli shaffofmas) shisha */
body.theme-glass.pos-app :is(.secure-auth-modal,.sections-modal,.history-window,.product-picker,.cashier-dropdown,.branch-dropdown,.grid-config-pop,.toast){
  background:var(--g-panel-solid) !important;
  border:1px solid !important;border-color:var(--g-panel-border) !important;
  box-shadow:var(--g-panel-shadow) !important;color:var(--g-text) !important;
}

/* 5.2 Kartalar (blur'siz) */
body.theme-glass.pos-app :is(.info-card,.cashier-card,.sales-home-card,.section-switch-panel,.multi-order-panel,
  .current-order-frame,.cart-item,.section-tile,.settings-card,.control-architecture-note,.control-management-head,
  .history-order-card,.history-top-card,.history-list-panel,.history-detail-panel,.linked-table,.integration-hero,
  .master-empty-state,.pos-master-empty,.access-lock-screen,.security-inner-lock,.stat-card,.picker-product-card,.zoom-panel,
  .integration-setting-card,.remote-branch-card,.branch-source-card,.pos-binding-status,.pos-device-connection-card,
  .employee-linked-card,.warehouse-card,.audit-summary-box,.printer-mode-card,.rd-paper-stage,.date-time-card,.editor-item){
  background:var(--g-card) !important;
  border:1px solid !important;
  border-color:var(--g-card-border) !important;
  box-shadow:var(--g-card-shadow) !important;
  color:var(--g-text) !important;
  backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
/* POS topbar — konteyner, panel EMAS (avval to'rtburchak shisha chiziq bo'lib ko'rinardi) */
body.theme-glass.pos-app .topbar{background:transparent !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important}

/* 5.3 Matn ierarxiyasi */
body.theme-glass.pos-app :is(.screen-title,.cart-title h2,.settings-pane-title h3,.linked-section-head h2,.info-card strong,
  .cashier-card strong,.history-title-wrap h2,.order-id-line h3,.product-card h3,.section-meta strong,.setting-row strong,
  .settings-subhead strong,.pin-setting-copy strong,.totals .grand,.cart-name strong,.settings-head h2,.control-management-brand strong,
  .rd-field-head strong,.printer-mode-copy strong,h1,h2,h3){color:var(--g-text) !important;text-shadow:var(--g-text-shadow)}
body.theme-glass.pos-app :is(small,.screen-sub,.setting-row span,.settings-pane-title p,.settings-subhead span,.info-card small,
  .cashier-card small,.cashier-card span,.section-meta span,.cart-name small,.totals > div:not(.grand),.pin-setting-copy span,
  .settings-head p,.rd-field-head span,.printer-mode-copy span,.printer-mode-copy small,.linked-section-head p,.history-order-meta){color:var(--g-muted) !important;text-shadow:none}

/* 5.4 Boshqaruv elementlari (chip, tugma, keypad, segment) */
body.theme-glass.pos-app :is(.chip,.zoom-panel button,.grid-config-wrap > button,.settings-nav button,.mini-action,.setting-action-btn,
  .settings-reset-btn,.order-basket-tab,.new-order-basket,.cart-editor-toggle,.receipt-action-btn,.segmented button,
  .system-keypad button,.qty button,.basket-close,.history-close,.sections-head button,.cashier-sync-retry,.editor-add-product,
  .pin-remove-btn,.search-row,.catalog-head .search,.cart-scale-buttons button){
  background:var(--g-control) !important;
  border:1px solid var(--g-control-border) !important;
  box-shadow:var(--g-control-shadow) !important;
  color:var(--g-text) !important;
}
body.theme-glass.pos-app :is(.chip-label,.drag-handle){color:inherit}
body.theme-glass.pos-app .drag-handle{border-right-color:var(--g-sep)}
body.theme-glass.pos-app :is(.chip.selected,.settings-nav button.active,.segmented button.active,.order-basket-tab.active){
  background:var(--g-primary-grad) !important;
  border-color:transparent !important;
  color:var(--g-on-accent) !important;
  box-shadow:var(--g-primary-shadow) !important;
}
body.theme-glass.pos-app :is(.chip.selected,.settings-nav button.active) :is(.chip-label,.drag-handle,svg,span){color:var(--g-on-accent) !important}
body.theme-glass.pos-app .chip.selected .drag-handle{border-right-color:rgba(7,18,26,.18);opacity:.7}
body.theme-glass.pos-app .setting-switch{background:var(--g-hover) !important;border:1px solid var(--g-control-border) !important}
body.theme-glass.pos-app .setting-switch.on{background:var(--g-accent) !important;border-color:transparent !important}
body.theme-glass.pos-app .setting-switch span{background:#fff !important;box-shadow:0 1px 3px rgba(0,0,0,.25)}

/* 5.5 Taom kartasi */
body.theme-glass.pos-app .product-card{
  background:var(--g-card) !important;
  border:1px solid !important;border-color:var(--g-card-border) !important;
  box-shadow:var(--g-card-shadow) !important;
}
body.theme-glass.pos-app .product-media{background:var(--g-media) !important;box-shadow:inset 0 0 0 1px var(--g-sep),inset 0 -16px 26px rgba(0,0,0,.10)}
body.theme-glass.pos-app .food-emoji{filter:drop-shadow(0 12px 14px rgba(0,0,0,.30)) drop-shadow(0 2px 4px rgba(0,0,0,.25)) !important}
body.theme-glass.pos-app .product-price{color:var(--g-accent-text) !important;font-variant-numeric:tabular-nums;text-shadow:var(--g-text-shadow)}
@media (hover:hover) and (pointer:fine){
  body.theme-glass.pos-app .product-card:hover{box-shadow:var(--g-card-hover-shadow) !important;transform:translateY(-2px)}
}
body.theme-glass.pos-app :is(.product-card,.chip,.pay,.pay-main,.order-basket-tab):active{transform:translateY(1px) scale(.995)}

/* 5.6 To'lov paneli — asosiy CTA ikkala temada yashil; usullar temaga moslashadi */
body.theme-glass.pos-app .pay{border:1px solid var(--g-control-border) !important;color:var(--g-text) !important;box-shadow:var(--g-control-shadow)}
body.theme-glass.pos-app .pay.green{background:linear-gradient(135deg,rgba(16,185,129,.22),rgba(16,185,129,.08)),var(--g-control) !important}
body.theme-glass.pos-app .pay.blue{background:linear-gradient(135deg,rgba(59,130,246,.22),rgba(59,130,246,.08)),var(--g-control) !important}
body.theme-glass.pos-app .pay.purple{background:linear-gradient(135deg,rgba(168,85,247,.22),rgba(168,85,247,.08)),var(--g-control) !important}
body.theme-glass.pos-app .pay.gray{background:linear-gradient(135deg,rgba(148,163,184,.20),rgba(148,163,184,.06)),var(--g-control) !important}
body.theme-glass.pos-app .pay.picked{
  color:#fff !important;border-color:transparent !important;
  box-shadow:0 0 0 2px var(--g-accent-line),inset 0 1px 0 rgba(255,255,255,.22),0 8px 20px rgba(0,0,0,.20) !important;
}
body.theme-glass.pos-app .pay.green.picked{background:linear-gradient(135deg,#0E9F8F,#22C55E) !important}
body.theme-glass.pos-app .pay.blue.picked{background:linear-gradient(135deg,#2563EB,#3B82F6) !important}
body.theme-glass.pos-app .pay.purple.picked{background:linear-gradient(135deg,#7C3AED,#A855F7) !important}
body.theme-glass.pos-app .pay.gray.picked{background:linear-gradient(135deg,#475569,#64748B) !important}
body.theme-glass.pos-app .pay-main{
  color:#F4FFFA !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.40),inset 0 -3px 7px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.18),0 14px 32px rgba(16,185,129,.30) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.18);
}
body.theme-glass.pos-app .pay-main :is(span,strong,svg){color:inherit !important}
body.theme-glass.pos-app .totals{border-top-color:var(--g-sep) !important}
body.theme-glass.pos-app .linked-badge{background:var(--g-accent-soft) !important;color:var(--g-accent-text) !important;border-color:var(--g-accent-line) !important}
body.theme-glass.pos-app :is(.control-master-stats span,.control-master-stats small,.control-architecture-note p,.zoom-readout,.integration-note,.master-empty-state p,.pos-master-empty p){color:var(--g-muted) !important}
body.theme-glass.pos-app :is(.control-master-stats b,.control-master-stats strong,.zoom-readout b){color:var(--g-text) !important}
body.theme-glass.pos-app .totals .grand strong{color:var(--g-text) !important}

/* 5.7 Overlay fonlari */
body.theme-glass.pos-app :is(.sections-overlay,.history-overlay,.product-picker-layer,.secure-auth-overlay,.cp-cart-backdrop){background:var(--g-overlay) !important}

/* Sozlama qatorlari kartaning o'zi ustida — alohida rangli "band" emas */
body.theme-glass.pos-app .setting-row{background:transparent !important;border-color:var(--g-sep) !important}

/* 5.8 Kiritish maydonlari */
body.theme-glass.pos-app :is(input,select,textarea,.setting-input){
  background:var(--g-input) !important;color:var(--g-text) !important;border-color:var(--g-input-border) !important;
}

/* =====================================================================
   6) ZAXIRA — backdrop-filter yo'q yoki shaffoflik kamaytirilgan
   ===================================================================== */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){
  body.theme-glass:not(.pos-app) :is(.sidebar,.topbar,.modal-box,.fc-alert-box,.notif-panel,
    .wh-editor,.wh-sheet,.wh-count-footer,.wh-sec-head,
    #fix2041AdminMobileDock,.esv19-mobile-dock,.cpt-card,.dashboard-drawer),
  body.theme-glass.pos-app :is(.glass,.cart,.catalog,.sections-modal,.history-window,.product-picker,.cp-lock-card,.platform-pair-card){
    background:var(--g-fallback) !important;
  }
}
@media (prefers-reduced-transparency: reduce){
  body.theme-glass:not(.pos-app) :is(.sidebar,.topbar,.modal-box,.fc-alert-box,.notif-panel,
    .wh-editor,.wh-sheet,.wh-count-footer,.wh-sec-head,
    #fix2041AdminMobileDock,.esv19-mobile-dock,.cpt-card,.dashboard-drawer,
    .card,.wh-hub-card,.dashboard-block),
  body.theme-glass.pos-app :is(.glass,.cart,.catalog,.sections-modal,.history-window,.product-picker,.cp-lock-card,.platform-pair-card){
    background:var(--g-fallback) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  body.theme-glass{background:var(--g-bg) !important;background-attachment:scroll !important}
}
@media (max-width:700px){
  body.theme-glass{background-attachment:scroll !important}
}
@media (prefers-reduced-motion:reduce){
  body.theme-glass *{transition-duration:.01ms !important}
  body.theme-glass :is(.btn,.warehouse-tab,.wh-hub-card,.warehouse-item-card,.wh-menu-row,.wh-menu-card,.product-card,.chip,.pay,.pay-main,.order-basket-tab):is(:hover,:active){transform:none}
}

} /* @media screen tugadi */
