/* ============================================================
   NOVISTIC PHASE 40 — PROFESSIONAL UI / UX OVERHAUL
   External stylesheet only. Keeps Phase 34/35 strict CSP intact.
   ============================================================ */
:root{
  --v40-bg:#070a12;
  --v40-bg-soft:#0a0f1b;
  --v40-surface:#0e1524;
  --v40-surface-2:#121c2f;
  --v40-surface-3:#172238;
  --v40-border:rgba(148,163,184,.14);
  --v40-border-strong:rgba(148,163,184,.24);
  --v40-text:#f7f9fc;
  --v40-text-2:#d6deeb;
  --v40-muted:#93a2ba;
  --v40-muted-2:#6f7f99;
  --v40-brand:#7c5cff;
  --v40-brand-2:#5d7cff;
  --v40-cyan:#38c8ff;
  --v40-green:#32d6a0;
  --v40-amber:#f3b85b;
  --v40-red:#ff6b82;
  --v40-radius:16px;
  --v40-radius-sm:11px;
  --v40-shadow:0 18px 46px rgba(0,0,0,.24);
  --v40-shadow-soft:0 10px 26px rgba(0,0,0,.16);
  --v40-focus:0 0 0 3px rgba(124,92,255,.18);
}

html,body,#root{background:var(--v40-bg)!important}
body{
  color:var(--v40-text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  background:
    radial-gradient(circle at 22% -15%,rgba(98,82,255,.16),transparent 29%),
    radial-gradient(circle at 92% 4%,rgba(56,200,255,.09),transparent 24%),
    linear-gradient(145deg,#070a12,#080d18 46%,#091120)!important;
}
body:before{
  opacity:.09!important;
  background-size:88px 88px!important;
}
::selection{background:rgba(124,92,255,.34);color:#fff}
:focus-visible{outline:none!important;box-shadow:var(--v40-focus)!important}

/* ---------- App shell ---------- */
.p40-ui.app.p10-app{
  grid-template-columns:260px minmax(0,1fr)!important;
  min-height:100dvh;
  color:var(--v40-text);
}
.p40-ui .p10-sidebar{
  width:260px;
  padding:18px 14px 16px!important;
  background:
    linear-gradient(180deg,rgba(13,20,34,.98),rgba(9,14,25,.99))!important;
  border-right:1px solid var(--v40-border)!important;
  box-shadow:20px 0 45px rgba(0,0,0,.12);
}
.p40-ui .p10-brand{
  min-height:78px!important;
  padding:12px 13px!important;
  border:1px solid var(--v40-border)!important;
  border-radius:15px!important;
  background:linear-gradient(145deg,rgba(21,31,52,.88),rgba(13,20,36,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),var(--v40-shadow-soft)!important;
}
.p40-ui .p10-brand img{width:48px!important;height:48px!important}
.p40-ui .p10-brand-name{font-size:13px!important;letter-spacing:3.5px!important}
.p40-ui .p10-brand-sub{font-size:9px!important;letter-spacing:3.2px!important;color:#8fa2d9!important}
.p40-ui .p10-menu{margin-top:17px!important;padding:0 2px 8px 0!important}
.p40-ui .p10-group-label{
  font-size:10px!important;
  letter-spacing:.13em!important;
  color:#657590!important;
  padding:15px 12px 6px!important;
}
.p40-ui .p10-nav{
  min-height:46px!important;
  height:auto!important;
  padding:11px 12px!important;
  margin:3px 0!important;
  border-radius:11px!important;
  color:#aab6ca!important;
  font-size:13px!important;
  font-weight:650!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
.p40-ui .p10-nav:hover{
  color:#f5f7fb!important;
  background:rgba(124,92,255,.09)!important;
  border-color:rgba(124,92,255,.16)!important;
  transform:translateX(2px);
}
.p40-ui .p10-nav.active{
  color:#fff!important;
  background:linear-gradient(100deg,rgba(124,92,255,.95),rgba(87,100,235,.92))!important;
  border-color:rgba(151,132,255,.56)!important;
  box-shadow:0 10px 26px rgba(77,66,196,.22),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.p40-ui .p10-nav svg{width:19px!important;height:19px!important;stroke-width:1.8!important}
.p40-ui .p10-plan-card{
  border:1px solid var(--v40-border)!important;
  border-radius:14px!important;
  padding:14px!important;
  background:linear-gradient(155deg,rgba(21,31,52,.94),rgba(13,20,36,.96))!important;
  box-shadow:var(--v40-shadow-soft)!important;
}
.p40-ui .p10-plan-label{font-size:11px!important;color:var(--v40-muted)!important}
.p40-ui .p10-plan-name{font-size:15px!important;color:#74dcff!important;margin:5px 0!important}
.p40-ui .p10-plan-meta{font-size:11px!important;color:#7f8da5!important}
.p40-ui .p10-plan-btn{
  height:38px!important;
  border-radius:10px!important;
  background:linear-gradient(100deg,#6952e8,#7657ff)!important;
  border:1px solid rgba(164,146,255,.55)!important;
  font-size:12px!important;
}

.p40-ui .p10-main{
  padding:20px 24px 36px!important;
  min-width:0;
  max-width:1800px;
  width:100%;
  margin:0 auto;
}
.p40-ui .p10-topbar{
  min-height:72px!important;
  height:auto!important;
  grid-template-columns:240px minmax(260px,520px) minmax(320px,1fr)!important;
  gap:14px!important;
  padding:10px 12px!important;
  margin:0 0 22px!important;
  border:1px solid var(--v40-border)!important;
  border-radius:16px!important;
  background:rgba(13,20,34,.78)!important;
  backdrop-filter:blur(16px);
  box-shadow:var(--v40-shadow-soft)!important;
  position:sticky!important;
  top:10px!important;
  z-index:30!important;
}
.p40-ui .p10-branch-wrap{min-width:0}
.p40-ui .p10-branch{
  height:46px!important;
  border-radius:11px!important;
  border:1px solid var(--v40-border-strong)!important;
  background:#101827!important;
  color:var(--v40-text-2)!important;
  font-size:12.5px!important;
  padding-left:42px!important;
}
.p40-ui .p10-branch:hover,.p40-ui .p10-branch:focus{border-color:rgba(124,92,255,.58)!important}
.p40-ui .p10-branch-icon{top:13px!important;color:#9b83ff!important}
.p40-ui .p10-search input{
  height:46px!important;
  border-radius:11px!important;
  border:1px solid var(--v40-border)!important;
  background:#0d1524!important;
  color:#f5f7fb!important;
  font-size:13px!important;
  padding-left:42px!important;
  padding-right:58px!important;
}
.p40-ui .p10-search input::placeholder{color:#6f7e95!important}
.p40-ui .p10-search input:focus{border-color:rgba(124,92,255,.66)!important;box-shadow:var(--v40-focus)!important}
.p40-ui .p10-search svg{top:14px!important;color:#7f90ad!important}
.p40-ui .p10-search-kbd{top:10px!important;background:#111a2a!important;border-color:var(--v40-border)!important;color:#74849d!important}
.p40-ui .p10-top-actions{gap:8px!important;min-width:0}
.p40-ui .p10-icon-btn,
.p40-ui .phase32-top-btn{
  min-width:42px!important;
  height:42px!important;
  border-radius:11px!important;
  border:1px solid var(--v40-border)!important;
  background:#101827!important;
  color:#aab6ca!important;
}
.p40-ui .p10-icon-btn:hover,.p40-ui .phase32-top-btn:hover{border-color:rgba(124,92,255,.46)!important;background:#141e31!important;color:#fff!important}
.p40-ui .p10-online{
  min-height:42px!important;
  border-radius:11px!important;
  padding:0 12px!important;
  font-size:11px!important;
  background:#101827!important;
  border-color:var(--v40-border)!important;
}
.p40-ui .p10-profile{
  min-height:46px!important;
  border-radius:12px!important;
  padding:6px 9px!important;
  border:1px solid var(--v40-border)!important;
  background:#101827!important;
  min-width:172px;
}
.p40-ui .p10-profile:hover{border-color:rgba(124,92,255,.44)!important;background:#141e31!important}
.p40-ui .p10-avatar{width:34px!important;height:34px!important;background:linear-gradient(135deg,#765cff,#3aa7d7)!important}
.p40-ui .p10-profile b{font-size:12px!important;color:#eef2f8!important}
.p40-ui .p10-profile small{font-size:10px!important;color:#8190a8!important}

/* ---------- Page hierarchy ---------- */
.p40-ui .p10-page-head{
  margin:4px 0 20px!important;
  align-items:center!important;
}
.p40-ui .p10-page-head h1{
  font-size:28px!important;
  line-height:1.15!important;
  letter-spacing:-.75px!important;
  color:#f9fbff!important;
  font-weight:780!important;
}
.p40-ui .p10-page-head p{font-size:13px!important;color:var(--v40-muted)!important;margin-top:6px!important}
.p40-ui .p10-date{
  min-height:40px!important;
  border:1px solid var(--v40-border)!important;
  border-radius:10px!important;
  background:#101827!important;
  color:#a8b4c8!important;
  font-size:12px!important;
  padding:0 12px!important;
}

/* ---------- Dashboard ---------- */
.p40-ui .p10-layout{grid-template-columns:minmax(0,1fr) 310px!important;gap:18px!important}
.p40-ui .p10-right{gap:16px!important}
.p40-ui .p10-kpis{gap:14px!important;margin-bottom:16px!important}
.p40-ui .p10-kpi{
  min-height:118px!important;
  padding:17px!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  gap:13px!important;
  border:1px solid var(--v40-border)!important;
  border-radius:15px!important;
  background:linear-gradient(150deg,#111a2b,#0d1524)!important;
  box-shadow:var(--v40-shadow-soft)!important;
  position:relative;
  overflow:hidden;
}
.p40-ui .p10-kpi:after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(124,92,255,.55),transparent);opacity:.62
}
.p40-ui .p10-kpi-icon{
  width:48px!important;height:48px!important;border-radius:12px!important;
  background:rgba(255,255,255,.025)!important;border-color:currentColor!important
}
.p40-ui .p10-kpi-label{font-size:10px!important;letter-spacing:.08em!important;color:#8391a8!important}
.p40-ui .p10-kpi-value{font-size:25px!important;margin:6px 0 4px!important;letter-spacing:-.6px!important}
.p40-ui .p10-kpi-foot{font-size:10.5px!important;color:#728199!important}
.p40-ui .p10-dashboard-grid{gap:14px!important;margin-bottom:14px!important}
.p40-ui .p10-card{
  border:1px solid var(--v40-border)!important;
  border-radius:15px!important;
  background:linear-gradient(150deg,#0f1829,#0b1321)!important;
  box-shadow:var(--v40-shadow-soft)!important;
  overflow:hidden;
}
.p40-ui .p10-card:hover{border-color:rgba(148,163,184,.23)!important}
.p40-ui .p10-card-head{padding:17px 18px 0!important}
.p40-ui .p10-card-head h3{font-size:14px!important;color:#f1f5fb!important;font-weight:720!important}
.p40-ui .p10-card-head .meta{font-size:11px!important;color:#77869e!important}
.p40-ui .p10-card-head select{min-height:34px!important;font-size:11.5px!important;border-radius:9px!important}
.p40-ui .p10-sales-total{font-size:25px!important;padding:8px 18px 0!important}
.p40-ui .p10-donut-body{padding:18px!important;gap:18px!important;min-height:236px!important}
.p40-ui .p10-donut{width:142px!important;height:142px!important}
.p40-ui .p10-donut-center{font-size:10px!important}
.p40-ui .p10-donut-center b{font-size:15px!important}
.p40-ui .p10-legend{gap:11px!important}
.p40-ui .p10-legend-row{font-size:11px!important;grid-template-columns:9px 1fr auto!important}
.p40-ui .p10-legend-row b{font-size:11.5px!important}
.p40-ui .p10-table{font-size:11.5px!important}
.p40-ui .p10-table th{font-size:9.5px!important;padding:13px 16px!important;color:#7f8da4!important;background:#101827!important}
.p40-ui .p10-table td{padding:13px 16px!important;color:#c4cede!important}
.p40-ui .p10-status{font-size:9.5px!important;border-radius:999px!important;padding:4px 9px!important}
.p40-ui .p10-side-card{padding:16px!important}
.p40-ui .p10-side-card h3{font-size:14px!important;margin-bottom:15px!important}
.p40-ui .p10-quick-grid{gap:10px!important}
.p40-ui .p10-quick{
  min-height:82px!important;border-radius:12px!important;border-color:var(--v40-border)!important;
  background:#111a2b!important;font-size:11.5px!important;color:#dce4ef!important
}
.p40-ui .p10-quick:hover{border-color:rgba(124,92,255,.48)!important;background:#162035!important;transform:translateY(-1px)}
.p40-ui .p10-quick.primary{background:linear-gradient(145deg,#5b3fc4,#7049e5)!important;border-color:#826aff!important}
.p40-ui .p10-terminal{height:45px!important;border-radius:11px!important;font-size:11.5px!important;background:linear-gradient(100deg,#29216d,#3c2b8e)!important}
.p40-ui .p10-alert-item{grid-template-columns:42px 1fr auto!important;gap:11px!important}
.p40-ui .p10-product-thumb{width:42px!important;height:42px!important;border-radius:10px!important}
.p40-ui .p10-alert-item b{font-size:11px!important}.p40-ui .p10-alert-item small{font-size:9px!important}
.p40-ui .p10-stock-pill{font-size:9px!important;padding:5px 8px!important;border-radius:999px!important}
.p40-ui .p10-branch-row b{font-size:11px!important}.p40-ui .p10-branch-row span{font-size:10px!important}
.p40-ui .p10-branch-meter{height:6px!important}

/* ---------- Shared modules ---------- */
.p40-ui .panel,.p40-ui .card,.p40-ui .chart-card,.p40-ui .reminder-card,.p40-ui .calendar-day,
.modal-card{
  background:linear-gradient(150deg,#0f1829,#0b1321)!important;
  border:1px solid var(--v40-border)!important;
  border-radius:15px!important;
  color:var(--v40-text-2)!important;
  box-shadow:var(--v40-shadow-soft)!important;
}
.p40-ui .panel{padding:19px!important;margin-bottom:18px!important}
.p40-ui .panel h3{font-size:16px!important;color:#f3f6fb!important;line-height:1.35!important}
.p40-ui .sub{color:var(--v40-muted)!important;font-size:12.5px!important;line-height:1.55!important}
.p40-ui .toolbar{gap:12px!important;margin-bottom:15px!important}
.p40-ui label,.modal-card label{font-size:12px!important;color:#aeb9ca!important;font-weight:650!important;margin-bottom:7px!important}
.p40-ui input,.p40-ui select,.p40-ui textarea,.modal-card input,.modal-card select,.modal-card textarea{
  min-height:43px;
  background:#101827!important;
  border:1px solid var(--v40-border-strong)!important;
  color:#eef2f7!important;
  border-radius:10px!important;
  padding:10px 12px!important;
  font-size:12.5px!important;
  box-shadow:none!important;
}
.p40-ui textarea,.modal-card textarea{min-height:84px!important}
.p40-ui input::placeholder,.p40-ui textarea::placeholder,.modal-card input::placeholder{color:#62718a!important}
.p40-ui input:hover,.p40-ui select:hover,.p40-ui textarea:hover{border-color:rgba(148,163,184,.34)!important}
.p40-ui input:focus,.p40-ui select:focus,.p40-ui textarea:focus,.modal-card input:focus,.modal-card select:focus,.modal-card textarea:focus{
  border-color:rgba(124,92,255,.76)!important;
  box-shadow:var(--v40-focus)!important;
}
.p40-ui .btn,.modal-card .btn{
  min-height:39px!important;
  padding:9px 13px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:720!important;
  background:linear-gradient(100deg,#6850e7,#7c5cff)!important;
  border:1px solid rgba(157,139,255,.32)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(80,63,189,.16)!important;
}
.p40-ui .btn:hover,.modal-card .btn:hover{filter:brightness(1.08)!important;transform:translateY(-1px)!important}
.p40-ui .btn.secondary,.modal-card .btn.secondary{
  background:#121c2f!important;border-color:var(--v40-border-strong)!important;color:#d5deeb!important;box-shadow:none!important
}
.p40-ui .btn.ghost,.modal-card .btn.ghost{background:transparent!important;border-color:var(--v40-border)!important;color:#a9b5c7!important;box-shadow:none!important}
.p40-ui .btn.success,.modal-card .btn.success{background:linear-gradient(100deg,#1e9d78,#28ba8c)!important;border-color:rgba(71,214,166,.35)!important}
.p40-ui .btn.warning,.modal-card .btn.warning{background:linear-gradient(100deg,#b37a28,#d2963d)!important;border-color:rgba(240,183,91,.35)!important}
.p40-ui .btn.danger,.modal-card .btn.danger{background:linear-gradient(100deg,#c74961,#dc5970)!important;border-color:rgba(255,107,130,.35)!important}
.p40-ui .btn.small,.modal-card .btn.small{min-height:32px!important;padding:6px 10px!important;font-size:11px!important;border-radius:8px!important}
.p40-ui .table-wrap{
  border:1px solid var(--v40-border)!important;
  border-radius:12px!important;
  background:#0c1422!important;
  box-shadow:none!important;
}
.p40-ui table{font-size:12px!important}
.p40-ui th{
  padding:12px 13px!important;
  background:#111a2a!important;
  color:#8493a9!important;
  border-color:var(--v40-border)!important;
  font-size:10.5px!important;
  letter-spacing:.045em!important;
}
.p40-ui td{padding:12px 13px!important;color:#c7d1df!important;border-color:rgba(148,163,184,.09)!important}
.p40-ui tbody tr:nth-child(even) td{background:#0e1625!important}
.p40-ui tbody tr:hover td{background:#141f33!important}
.p40-ui .badge{border-radius:999px!important;padding:5px 9px!important;font-size:10px!important}
.p40-ui .alert{border-radius:11px!important;font-size:12px!important;line-height:1.5!important}
.p40-ui .alert.info{background:rgba(43,145,203,.10)!important;color:#75d9ff!important;border-color:rgba(56,200,255,.24)!important}
.p40-ui .alert.warn{background:rgba(179,122,40,.12)!important;color:#f4c982!important;border-color:rgba(243,184,91,.24)!important}
.p40-ui .alert.danger{background:rgba(199,73,97,.12)!important;color:#ff9bad!important;border-color:rgba(255,107,130,.25)!important}
.p40-ui .alert.success{background:rgba(30,157,120,.12)!important;color:#78e4bd!important;border-color:rgba(50,214,160,.24)!important}

/* ---------- Charts ---------- */
.p40-ui .chart-card,.p40-ui .nv-chart{border-radius:13px!important}
.p40-ui .chart-svg{background:#0c1422!important;border-color:var(--v40-border)!important}
.p40-ui .chart-grid{stroke:rgba(148,163,184,.13)!important}
.p40-ui .chart-axis{stroke:rgba(148,163,184,.28)!important}
.p40-ui .chart-label{fill:#8290a7!important;color:#8290a7!important;font-size:11px!important}
.p40-ui .chart-value{fill:#d8e1ed!important;color:#d8e1ed!important}
.p40-ui .chart-legend{color:#8795aa!important;font-size:11px!important}

/* ---------- POS terminal ---------- */
.p40-ui .p11-pos-tabs{gap:9px!important;margin-bottom:14px!important}
.p40-ui .p11-pos-tab{
  min-height:40px!important;padding:9px 15px!important;border-radius:10px!important;
  border-color:var(--v40-border)!important;background:#101827!important;color:#92a0b5!important;font-size:12px!important
}
.p40-ui .p11-pos-tab.active{background:linear-gradient(100deg,#6850e7,#765cff)!important;border-color:#8975ff!important;color:#fff!important}
.p40-ui .p11-pos-shell{grid-template-columns:minmax(0,1.55fr) minmax(390px,.75fr)!important;gap:18px!important}
.p40-ui .p11-pos-right{top:102px!important}
.p40-ui .p11-pos-card{
  border:1px solid var(--v40-border)!important;
  border-radius:15px!important;
  background:linear-gradient(150deg,#0f1829,#0b1321)!important;
  box-shadow:var(--v40-shadow-soft)!important;
}
.p40-ui .p11-pos-head{padding:18px!important;border-color:rgba(148,163,184,.10)!important}
.p40-ui .p11-pos-head h2{font-size:20px!important;letter-spacing:-.25px!important}
.p40-ui .p11-pos-head h3{font-size:15px!important}
.p40-ui .p11-pos-head p{font-size:11px!important;color:#8190a8!important}
.p40-ui .p11-branch-chip{height:34px!important;border-radius:9px!important;background:#111a2a!important;border-color:var(--v40-border)!important;color:#a9b5c7!important;font-size:10px!important}
.p40-ui .p11-scan-zone{padding:16px 18px!important;border-color:rgba(148,163,184,.10)!important}
.p40-ui .p11-scan-row{grid-template-columns:minmax(0,1fr) 86px 112px 126px!important;gap:9px!important}
.p40-ui .p11-input-icon input{height:46px!important;padding-left:40px!important}
.p40-ui .p11-scan-row .btn{height:46px!important}
.p40-ui .p11-scan-msg{font-size:10px!important;color:#718198!important}
.p40-ui .p11-product-tools{padding:15px 18px 11px!important;gap:9px!important;grid-template-columns:minmax(0,1fr) minmax(190px,.62fr) 82px 136px auto!important}
.p40-ui .p11-product-tools input,.p40-ui .p11-product-tools select,.p40-ui .p11-product-tools .btn{height:43px!important}
.p40-ui .p11-meter-info{padding:0 18px 9px!important;font-size:10px!important}
.p40-ui .p11-product-strip{padding:8px 18px 17px!important;border-color:rgba(148,163,184,.10)!important}
.p40-ui .p11-product-strip-head b{font-size:11.5px!important}.p40-ui .p11-product-strip-head span{font-size:10px!important}
.p40-ui .p11-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;max-height:265px!important}
.p40-ui .p11-product-tile{
  min-height:102px!important;border-radius:12px!important;border-color:var(--v40-border)!important;
  background:linear-gradient(150deg,#131d30,#0f1727)!important;padding:12px!important
}
.p40-ui .p11-product-tile:hover{transform:translateY(-2px)!important;border-color:rgba(124,92,255,.58)!important;background:#172238!important;box-shadow:0 12px 22px rgba(0,0,0,.16)}
.p40-ui .p11-product-tile:before{width:3px!important;background:linear-gradient(#876dff,#38c8ff)!important}
.p40-ui .p11-product-tile b{font-size:11.5px!important;line-height:1.35!important;margin-bottom:7px!important}
.p40-ui .p11-product-tile .p11-price{font-size:14px!important}.p40-ui .p11-product-tile small{font-size:9px!important}
.p40-ui .p11-product-tile .p11-stock{font-size:8px!important;padding:4px 6px!important;border-radius:999px!important}
.p40-ui .p11-cart-section{padding:15px 18px 18px!important}
.p40-ui .p11-cart-title h3{font-size:13px!important}.p40-ui .p11-cart-title span{font-size:10px!important}
.p40-ui .p11-cart-badge{min-width:22px!important;height:22px!important;font-size:9px!important;background:#7058e6!important}
.p40-ui .p11-empty-cart{padding:38px 15px!important;border-radius:12px!important;background:#0d1524!important;border-color:var(--v40-border)!important}
.p40-ui .p11-empty-cart b{font-size:12px!important}.p40-ui .p11-empty-cart span{font-size:10px!important}
.p40-ui .p11-cart-list{gap:9px!important}
.p40-ui .p11-cart-row{
  grid-template-columns:minmax(0,1fr) 88px 98px 34px!important;
  gap:10px!important;border-radius:11px!important;border-color:var(--v40-border)!important;background:#101827!important;padding:11px 11px 11px 13px!important
}
.p40-ui .p11-cart-product b{font-size:11.5px!important}.p40-ui .p11-cart-product small,.p40-ui .p11-cart-product .p11-cart-meta{font-size:9px!important}
.p40-ui .p11-cart-row input{height:36px!important;border-radius:8px!important;background:#121c2f!important}
.p40-ui .p11-line-total b{font-size:12px!important}.p40-ui .p11-line-total small{font-size:8px!important}
.p40-ui .p11-remove{width:32px!important;height:32px!important;border-radius:8px!important;background:#261621!important}
.p40-ui .p11-right-body{padding:17px!important}
.p40-ui .p11-order-no{padding:11px 12px!important;border-radius:10px!important;border-color:var(--v40-border)!important;background:#101827!important}
.p40-ui .p11-order-no span{font-size:9px!important}.p40-ui .p11-order-no b{font-size:11px!important}
.p40-ui .p11-section-label{font-size:10px!important;color:#8492a8!important;margin:15px 0 8px!important}
.p40-ui .p11-field label{font-size:9.5px!important;margin-bottom:6px!important}
.p40-ui .p11-field input,.p40-ui .p11-field select,.p40-ui .p11-customer-inline .btn{height:41px!important}
.p40-ui .p11-pay-choice{height:40px!important;border-radius:9px!important;background:#111a2a!important;border-color:var(--v40-border)!important;font-size:10px!important}
.p40-ui .p11-pay-choice.active{background:linear-gradient(100deg,#634ad5,#795bf1)!important;border-color:#8e77ff!important}
.p40-ui .p11-pay-help{font-size:9px!important;line-height:1.5!important}
.p40-ui .p11-change{padding:9px 10px!important;border-radius:9px!important;font-size:10px!important}
.p40-ui .p11-change b{font-size:13px!important}
.p40-ui .p11-summary{margin-top:15px!important;border-radius:12px!important;border-color:var(--v40-border)!important;background:#101827!important;padding:13px!important}
.p40-ui .p11-total-line{font-size:10px!important;margin:6px 0!important}.p40-ui .p11-total-line b{font-size:11px!important}
.p40-ui .p11-total-line.grand{font-size:13px!important}.p40-ui .p11-total-line.grand b{font-size:21px!important}
.p40-ui .p11-complete{height:54px!important;border-radius:11px!important;font-size:13px!important;background:linear-gradient(100deg,#6047d6,#7a50e8 58%,#2f98ce)!important;box-shadow:0 12px 26px rgba(87,68,198,.22)!important}
.p40-ui .p11-clear{height:39px!important;border-radius:9px!important;font-size:10px!important;background:#111a2a!important;border-color:var(--v40-border)!important}
.p40-ui .p11-secure{font-size:9px!important;color:#6d7c94!important}

/* ---------- Modal refinement ---------- */
.modal-backdrop{
  background:rgba(2,5,11,.74)!important;
  backdrop-filter:blur(7px);
}
.modal-card{
  border-radius:17px!important;
  border-color:var(--v40-border-strong)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.48)!important;
}
.modal-card h3{font-size:18px!important;color:#f7f9fc!important}

/* ---------- Authentication polish ---------- */
.nv-cloud-auth{
  background:
    radial-gradient(circle at 18% 18%,rgba(124,92,255,.16),transparent 27%),
    radial-gradient(circle at 70% 55%,rgba(56,200,255,.08),transparent 28%),
    linear-gradient(135deg,#070a12,#090d19 48%,#091220)!important;
}
.nv-auth-brand{padding-left:clamp(44px,7vw,130px)!important;padding-right:clamp(44px,7vw,130px)!important}
.nv-auth-logo{width:98px!important;height:98px!important}
.nv-auth-brandname{font-size:31px!important;letter-spacing:9px!important}
.nv-auth-subbrand{font-size:14px!important;letter-spacing:8px!important}
.nv-auth-title{font-size:clamp(40px,4vw,62px)!important;letter-spacing:-1.8px!important}
.nv-auth-copy{font-size:16px!important;color:#99a7bd!important}
.nv-feature-icon{width:48px!important;height:48px!important;border-radius:12px!important;border-color:var(--v40-border)!important;background:#101827!important}
.nv-feature b{font-size:15px!important}.nv-feature span{font-size:12.5px!important}
.nv-auth-card{
  width:min(100%,560px)!important;
  padding:45px 46px 42px!important;
  border:1px solid var(--v40-border-strong)!important;
  border-radius:22px!important;
  background:linear-gradient(155deg,rgba(16,24,40,.98),rgba(9,14,25,.99))!important;
  box-shadow:0 36px 90px rgba(0,0,0,.38)!important
}
.nv-auth-card h1{font-size:35px!important}.nv-auth-card .lead{font-size:14.5px!important;margin-bottom:31px!important}
.nv-field{margin-bottom:19px!important}.nv-field label{font-size:13px!important}
.nv-input-wrap input{height:52px!important;border-radius:11px!important;border-color:var(--v40-border-strong)!important;background:#101827!important}
.nv-btn{height:52px!important;border-radius:11px!important;font-size:14.5px!important;background:linear-gradient(100deg,#6550e6,#7c5cff 55%,#399dd0)!important}

/* ---------- Accessibility / motion ---------- */
.p40-ui button,.p40-ui input,.p40-ui select,.p40-ui textarea{touch-action:manipulation}
.p40-ui button:disabled{opacity:.56!important;filter:saturate(.6)!important;cursor:not-allowed!important;transform:none!important}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* ---------- Responsive ---------- */
@media(max-width:1380px){
  .p40-ui.app.p10-app{grid-template-columns:236px minmax(0,1fr)!important}
  .p40-ui .p10-sidebar{width:236px!important}
  .p40-ui .p10-main{padding:18px!important}
  .p40-ui .p10-layout{grid-template-columns:minmax(0,1fr) 286px!important}
  .p40-ui .p10-topbar{grid-template-columns:210px minmax(230px,1fr) auto!important}
  .p40-ui .p10-profile{min-width:148px!important}
}
@media(max-width:1180px){
  .p40-ui .p10-layout{grid-template-columns:1fr!important}
  .p40-ui .p10-right{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .p40-ui .p11-pos-shell{grid-template-columns:1fr!important}
  .p40-ui .p11-pos-right{position:static!important}
  .p40-ui .p11-product-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:980px){
  .p40-ui.app.p10-app{grid-template-columns:78px minmax(0,1fr)!important}
  .p40-ui .p10-sidebar{width:78px!important;padding:12px 8px!important}
  .p40-ui .p10-brand{padding:9px!important;justify-content:center!important;min-height:64px!important}
  .p40-ui .p10-brand img{width:43px!important;height:43px!important}
  .p40-ui .p10-brand-name,.p40-ui .p10-brand-sub{display:none!important}
  .p40-ui .p10-nav{justify-content:center!important;padding:11px 0!important;font-size:0!important}
  .p40-ui .p10-nav svg{width:21px!important;height:21px!important}
  .p40-ui .p10-group-label,.p40-ui .p10-plan-card{display:none!important}
  .p40-ui .p10-main{padding:15px!important}
  .p40-ui .p10-topbar{grid-template-columns:180px minmax(190px,1fr) auto!important;gap:9px!important;top:7px!important}
  .p40-ui .p10-profile{min-width:46px!important;width:46px!important;grid-template-columns:34px!important;padding:5px!important}
  .p40-ui .p10-profile>div:nth-child(2),.p40-ui .p10-profile>svg{display:none!important}
  .p40-ui .p10-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .p40-ui .p10-dashboard-grid{grid-template-columns:1fr!important}
  .p40-ui .p10-right{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .p40-ui .p11-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:720px){
  .p40-ui.app.p10-app{display:block!important}
  .p40-ui .p10-sidebar{
    width:100%!important;height:auto!important;position:sticky!important;top:0!important;
    display:block!important;padding:7px 8px!important;border-right:0!important;border-bottom:1px solid var(--v40-border)!important;
    z-index:60!important;background:rgba(9,14,25,.96)!important;backdrop-filter:blur(16px)
  }
  .p40-ui .p10-brand,.p40-ui .p10-group-label,.p40-ui .p10-plan-card{display:none!important}
  .p40-ui .p10-menu{display:flex!important;overflow-x:auto!important;gap:4px!important;margin:0!important;padding:0!important;scrollbar-width:none}
  .p40-ui .p10-menu::-webkit-scrollbar{display:none}
  .p40-ui .p10-nav{min-width:52px!important;height:46px!important;margin:0!important;border-radius:10px!important}
  .p40-ui .p10-main{padding:10px!important}
  .p40-ui .p10-topbar{
    position:relative!important;top:0!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;padding:8px!important;margin-bottom:15px!important;border-radius:13px!important
  }
  .p40-ui .p10-branch-wrap{min-width:0}
  .p40-ui .p10-branch{height:43px!important}
  .p40-ui .p10-search{grid-column:1/-1!important;grid-row:2!important}
  .p40-ui .p10-search input{height:43px!important}
  .p40-ui .p10-top-actions{gap:6px!important}
  .p40-ui .p10-online,.p40-ui .p10-icon-btn,.p40-ui .phase32-top-btn{display:none!important}
  .p40-ui .p10-profile{width:44px!important;min-width:44px!important}
  .p40-ui .p10-page-head{align-items:flex-start!important;margin-bottom:15px!important}
  .p40-ui .p10-page-head h1{font-size:24px!important}
  .p40-ui .p10-date{display:none!important}
  .p40-ui .p10-kpis{grid-template-columns:1fr!important;gap:10px!important}
  .p40-ui .p10-kpi{min-height:100px!important}
  .p40-ui .p10-layout{display:block!important}
  .p40-ui .p10-right{grid-template-columns:1fr!important;margin-top:12px!important}
  .p40-ui .p10-dashboard-grid{grid-template-columns:1fr!important}
  .p40-ui .p10-donut-body{grid-template-columns:132px 1fr!important;padding:14px!important}
  .p40-ui .panel{padding:14px!important}
  .p40-ui .toolbar{align-items:stretch!important}
  .p40-ui .toolbar .left,.p40-ui .toolbar .right{width:100%!important}
  .p40-ui .table-wrap{margin-left:-2px;margin-right:-2px}
  .p40-ui .p11-pos-shell{display:block!important}
  .p40-ui .p11-pos-right{margin-top:12px!important}
  .p40-ui .p11-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .p40-ui .p11-product-tools{grid-template-columns:1fr 78px!important}
  .p40-ui .p11-product-tools #posProduct,.p40-ui .p11-product-tools #posProductSearch{grid-column:1/-1!important}
  .p40-ui .p11-scan-row{grid-template-columns:1fr 78px!important}
  .p40-ui .p11-scan-row .btn{min-width:0!important}
  .p40-ui .p11-scan-row .p11-camera-btn{grid-column:1/-1!important}
  .p40-ui .p11-cart-row{grid-template-columns:minmax(0,1fr) 76px 34px!important}
  .p40-ui .p11-line-total{grid-column:1/3!important;text-align:left!important}
}
@media(max-width:460px){
  .p40-ui .p10-main{padding:8px!important}
  .p40-ui .p10-topbar{padding:7px!important}
  .p40-ui .p10-page-head h1{font-size:22px!important}
  .p40-ui .p10-page-head p{font-size:12px!important}
  .p40-ui .p10-kpi-value{font-size:23px!important}
  .p40-ui .p10-donut-body{grid-template-columns:1fr!important}
  .p40-ui .p10-legend{padding:0 8px 4px}
  .p40-ui .p11-product-grid{grid-template-columns:1fr 1fr!important}
  .p40-ui .p11-product-tile{min-height:94px!important}
  .p40-ui .p11-payment-grid{grid-template-columns:1fr!important}
  .p40-ui .p11-payment-grid .full{grid-column:auto!important}
  .nv-auth-side{padding:12px!important}.nv-auth-card{padding:28px 22px!important;border-radius:17px!important}.nv-auth-card h1{font-size:30px!important}
}

/* ---------- Urdu / RTL refinement ---------- */
.p40-ui.urdu-mode .p10-nav{text-align:right}
.p40-ui.urdu-mode .p10-page-head h1,.p40-ui.urdu-mode .p10-page-head p{text-align:right}
.p40-ui.urdu-mode .p10-card-head,.p40-ui.urdu-mode .p11-pos-head,.p40-ui.urdu-mode .p11-cart-title{direction:rtl}
.p40-ui.urdu-mode .p10-search input{padding-right:42px!important;padding-left:58px!important}
.p40-ui.urdu-mode .p10-search svg{right:15px!important;left:auto!important}
.p40-ui.urdu-mode .p10-search-kbd{left:12px!important;right:auto!important}
.p40-ui.urdu-mode .p10-branch{padding-right:42px!important;padding-left:34px!important}
.p40-ui.urdu-mode .p10-branch-icon{right:13px!important;left:auto!important}
