/* The Spanish Food Store POS — 2026 visual system */
:root{
  color-scheme:light;
  --bg:#f5f3ed;--bg-elevated:#fbfaf6;--panel:#fff;--panel-soft:#f8f7f2;--panel-strong:#eef2ec;
  --text:#17231d;--text-soft:#34483e;--muted:#758078;--line:#e3e5df;--line-strong:#d5d9d2;
  --primary:#1f5845;--primary-dark:#153f31;--primary-light:#e7f0eb;--primary-faint:#f0f6f2;
  --accent:#d6a33f;--accent-dark:#a87920;--accent-light:#fbf0d6;
  --success:#287a50;--success-light:#e7f5ed;--danger:#bd3b44;--danger-light:#fdebed;
  --warning:#b87418;--warning-light:#fff2d7;--info:#3c6e9f;--info-light:#eaf2fb;
  --shadow-sm:0 5px 18px rgba(25,47,36,.055);--shadow-md:0 18px 46px rgba(25,47,36,.09);--shadow-lg:0 30px 90px rgba(13,29,22,.17);
  --radius-xs:8px;--radius-sm:11px;--radius-md:16px;--radius-lg:22px;--radius-xl:28px;
  --sidebar-width:296px;--sidebar-collapsed:88px;--topbar-height:88px;
  --transition:160ms cubic-bezier(.2,.8,.2,1);
}
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#101612;--bg-elevated:#151d18;--panel:#19231d;--panel-soft:#141d18;--panel-strong:#213027;
  --text:#f0f5f1;--text-soft:#d6e1da;--muted:#94a49a;--line:#2b3a31;--line-strong:#3a4c41;
  --primary:#73bd94;--primary-dark:#55a77d;--primary-light:#20392d;--primary-faint:#182a22;
  --accent:#e2b55a;--accent-dark:#c99a3d;--accent-light:#3b3120;
  --success:#69bd8a;--success-light:#1d3829;--danger:#ed7a82;--danger-light:#3b2326;
  --warning:#edb258;--warning-light:#3c3020;--info:#8cb8e1;--info-light:#1c3143;
  --shadow-sm:0 5px 20px rgba(0,0,0,.18);--shadow-md:0 20px 50px rgba(0,0,0,.25);--shadow-lg:0 34px 100px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth}
body{margin:0;min-width:320px;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--primary);text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%}
svg{display:block}
::selection{background:var(--accent-light);color:var(--text)}

/* App shell */
.app-shell{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);padding:18px 14px 16px;background:linear-gradient(180deg,#173f32 0%,#102d24 100%);color:#f6faf7;display:flex;flex-direction:column;z-index:60;box-shadow:18px 0 45px rgba(11,35,27,.08);transition:width var(--transition),transform var(--transition)}
.brand-wrap{display:flex;align-items:center;gap:8px;padding:2px 4px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.brand{min-width:0;display:flex;align-items:center;gap:12px;color:#fff;flex:1}
.brand-mark{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;overflow:hidden;border-radius:16px;box-shadow:0 10px 28px rgba(0,0,0,.18)}
.brand-mark img{width:100%;height:100%;display:block;object-fit:contain}
.brand-mark.custom-logo{width:64px;height:52px;flex-basis:64px;padding:4px;border-radius:13px;background:rgba(255,255,255,.96)}
.brand-mark.custom-logo img{object-fit:contain}
.brand-copy{min-width:0;overflow:hidden;white-space:nowrap}
.brand-copy strong{display:block;font-size:.91rem;letter-spacing:-.01em}
.brand-copy small{display:block;margin-top:3px;color:#aac2b6;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.sidebar-collapse{width:34px;height:34px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#d6e7de;display:grid;place-items:center;transition:var(--transition)}
.sidebar-collapse:hover{background:rgba(255,255,255,.14);color:#fff}
.nav{display:flex;flex-direction:column;gap:6px;overflow:auto;padding:16px 6px 12px 2px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}
.nav-label{margin:14px 8px 6px;padding:7px 11px;border-radius:999px;background:rgba(229,185,83,.13);color:#f3d27b;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:visible;text-shadow:0 1px 0 rgba(0,0,0,.18)}
.nav a{position:relative;display:flex;align-items:center;gap:11px;min-height:46px;padding:11px 14px;border-radius:12px;color:#bfd1c8;font-size:.92rem;font-weight:700;white-space:nowrap;transition:var(--transition)}
.nav a:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateX(2px)}
.nav a.active{background:linear-gradient(90deg,rgba(238,197,105,.22),rgba(255,255,255,.08));color:#fff;box-shadow:inset 3px 0 #e5b953}
.nav a.nav-primary:not(.active){color:#efd58c}
.nav a span{display:block;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.nav a kbd{margin-left:8px;flex:0 0 auto;padding:2px 6px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:rgba(0,0,0,.12);color:#9fb8ac;font:600 .62rem/1.4 Inter,sans-serif}
.nav-icon{width:20px;height:20px;flex:0 0 20px}
.ui-icon{width:19px;height:19px}
.btn-icon{width:18px;height:18px}
.sidebar-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:13px 10px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.045)}
.user-avatar{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#e7c26e,#bd8426);color:#173f32;font-weight:900}
.user-copy{min-width:0;flex:1;white-space:nowrap;overflow:hidden}
.user-copy strong,.user-copy small{display:block;overflow:hidden;text-overflow:ellipsis}
.user-copy strong{font-size:.82rem}.user-copy small{margin-top:2px;color:#91ada0;font-size:.69rem}
.logout-link{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#c7dad0}.logout-link:hover{background:rgba(255,255,255,.08);color:#fff}
.main{min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left var(--transition);display:flex;flex-direction:column}
.topbar{min-height:var(--topbar-height);padding:15px 30px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg-elevated) 86%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent);backdrop-filter:blur(20px) saturate(1.3)}
.page-heading{min-width:0}
.eyebrow{margin-bottom:3px;color:var(--muted);font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar h1{margin:0;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.15;letter-spacing:-.035em}
.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.date-chip{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--muted);font-size:.78rem;font-weight:700;box-shadow:var(--shadow-sm)}
.content{width:100%;max-width:1680px;margin:0 auto;padding:28px 30px 48px;flex:1}
.app-footer{display:flex;justify-content:space-between;gap:12px;padding:18px 30px 24px;color:var(--muted);font-size:.72rem}
.sidebar-backdrop{display:none}

/* Collapsed navigation */
body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}
body.sidebar-collapsed .main{margin-left:var(--sidebar-collapsed)}
body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .nav a span,body.sidebar-collapsed .nav a kbd,body.sidebar-collapsed .nav-label,body.sidebar-collapsed .user-copy{display:none}
body.sidebar-collapsed .brand-wrap{justify-content:center;flex-direction:column}
body.sidebar-collapsed .brand{justify-content:center;flex:0 0 auto}
body.sidebar-collapsed .sidebar-collapse .ui-icon{transform:rotate(180deg)}
body.sidebar-collapsed .nav a{justify-content:center;padding-inline:10px}
body.sidebar-collapsed .nav a:hover{transform:none}
body.sidebar-collapsed .sidebar-user{justify-content:center;padding:9px 6px;flex-wrap:wrap}
.sidebar-collapsed-preload body .sidebar{width:var(--sidebar-collapsed)}
.sidebar-collapsed-preload body .main{margin-left:var(--sidebar-collapsed)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 15px;border:1px solid var(--line-strong);border-radius:11px;background:var(--panel);color:var(--text-soft);font-weight:750;font-size:.84rem;line-height:1;white-space:nowrap;box-shadow:0 1px 0 rgba(255,255,255,.35);transition:transform var(--transition),box-shadow var(--transition),background var(--transition),border-color var(--transition)}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}
.btn:active{transform:translateY(0)}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.btn-primary{background:linear-gradient(145deg,var(--primary),var(--primary-dark));border-color:transparent;color:#fff;box-shadow:0 9px 22px color-mix(in srgb,var(--primary-dark) 20%,transparent)}
.btn-primary:hover{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 86%,#fff),var(--primary-dark));border-color:transparent}
.btn-accent{background:linear-gradient(145deg,#e7bd5f,#bd8225);border-color:transparent;color:#183c31}
.btn-ghost{background:transparent;box-shadow:none}
.btn-danger{background:var(--danger-light);border-color:color-mix(in srgb,var(--danger) 30%,var(--line));color:var(--danger)}
.btn-small{min-height:34px;padding:7px 10px;border-radius:9px;font-size:.75rem}
.btn-large{min-height:54px;padding:12px 20px;border-radius:14px;font-size:.95rem}
.btn-block{width:100%}
.icon-btn{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text-soft);display:grid;place-items:center;box-shadow:var(--shadow-sm);transition:var(--transition)}
.icon-btn:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--line));color:var(--primary);transform:translateY(-1px)}
.icon-btn.danger{color:var(--danger);background:var(--danger-light)}
.mobile-menu{display:none}
.theme-toggle{position:relative}.theme-icon{display:none}.theme-icon-sun{display:block}html[data-theme="dark"] .theme-icon-sun{display:none}html[data-theme="dark"] .theme-icon-moon{display:block}

/* Panels and layout */
.panel{margin-bottom:22px;padding:21px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
.panel-elevated{box-shadow:var(--shadow-md)}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.panel h2,.panel-head h2{margin:0;color:var(--text);font-size:1rem;letter-spacing:-.02em}
.panel-head p,.panel-intro{margin:5px 0 0;color:var(--muted);font-size:.78rem}
.panel-head>a{font-size:.76rem;font-weight:800}
.grid-2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:22px}
.grid-3-1{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,1fr);gap:22px}
.narrow{max-width:1100px}

/* Dashboard */
.dashboard-welcome{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;margin-bottom:22px;padding:25px 27px;border-radius:var(--radius-lg);background:linear-gradient(120deg,#173f32 0%,#245e49 62%,#326e55 100%);color:#fff;box-shadow:0 22px 55px rgba(23,63,50,.19)}
.dashboard-welcome:after{content:"";position:absolute;width:240px;height:240px;right:-70px;top:-105px;border-radius:50%;border:42px solid rgba(231,191,99,.16)}
.dashboard-welcome h2{position:relative;margin:0 0 6px;font-size:1.35rem;letter-spacing:-.03em}.dashboard-welcome p{position:relative;margin:0;color:#c6d9cf;font-size:.84rem}
.quick-actions{position:relative;z-index:1;display:flex;gap:9px}.quick-actions .btn{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(8px)}.quick-actions .btn-primary{background:#edc568;color:#173f32}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}
.stat-card{position:relative;overflow:hidden;min-height:142px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-sm);transition:var(--transition)}
.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.stat-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.stat-card-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--primary-light);color:var(--primary)}
.stat-card-icon svg{width:21px;height:21px}.stat-card.warning .stat-card-icon{background:var(--warning-light);color:var(--warning)}.stat-card.danger .stat-card-icon{background:var(--danger-light);color:var(--danger)}.stat-card.accent .stat-card-icon{background:var(--accent-light);color:var(--accent-dark)}
.stat-card>span,.stat-card small,.stat-card-head>span{display:block;color:var(--muted);font-size:.74rem;font-weight:700}
.stat-card>strong,.stat-card .stat-value{display:block;margin:14px 0 5px;font-size:1.7rem;line-height:1;letter-spacing:-.04em}
.stat-card small{font-weight:500}
.stat-trend{padding:4px 7px;border-radius:999px;background:var(--success-light);color:var(--success)!important;font-size:.66rem!important}
.sales-chart{display:flex;align-items:flex-end;gap:10px;height:210px;padding:14px 4px 0;border-bottom:1px solid var(--line)}
.chart-column{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;min-width:34px}.chart-bar-wrap{width:min(42px,80%);height:160px;display:flex;align-items:flex-end}.chart-bar{width:100%;min-height:4px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,var(--accent),var(--primary));box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 14%,transparent);transition:height .45s ease}.chart-column:hover .chart-bar{filter:brightness(1.06)}.chart-column strong{font-size:.68rem}.chart-column span{color:var(--muted);font-size:.65rem}
.stock-list{display:flex;flex-direction:column}.stock-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid var(--line);color:var(--text);transition:var(--transition)}.stock-list a:last-child{border:0}.stock-list a:hover{padding-left:8px;color:var(--primary)}.stock-list strong,.stock-list span{display:block}.stock-list span{margin-top:3px;color:var(--muted);font-size:.72rem}.stock-list b{padding:5px 8px;border-radius:9px;background:var(--danger-light);color:var(--danger);font-size:.72rem}
.top-products{display:flex;flex-direction:column;gap:18px}.bar-row{display:grid;grid-template-columns:minmax(200px,280px) 1fr;align-items:center;gap:22px}.bar-row span{display:block;margin-top:3px;color:var(--muted);font-size:.72rem}.bar{height:9px;overflow:hidden;border-radius:999px;background:var(--panel-strong)}.bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent));box-shadow:0 3px 9px color-mix(in srgb,var(--primary) 18%,transparent)}

/* Tables */
.table-wrap{width:100%;overflow:auto;border-radius:12px}
table{width:100%;border-collapse:separate;border-spacing:0}
th{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);background:var(--panel-soft);color:var(--muted);font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.075em;white-space:nowrap}
th:first-child{border-radius:10px 0 0 0}th:last-child{border-radius:0 10px 0 0}
td{padding:13px 12px;border-bottom:1px solid var(--line);font-size:.82rem;vertical-align:middle}
tbody tr{transition:background var(--transition)}tbody tr:hover{background:var(--primary-faint)}tbody tr:last-child td{border-bottom:0}
td small,td strong{display:block}td small{margin-top:3px;color:var(--muted);font-size:.7rem}.empty{text-align:center!important;color:var(--muted);padding:34px!important}
.actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.actions form{margin:0}
.product-cell{display:flex;align-items:center;gap:11px;min-width:190px}.product-cell img,.product-placeholder{width:46px;height:46px;flex:0 0 46px;border-radius:12px;object-fit:contain;background:#fff;border:1px solid var(--line)}.product-placeholder{display:grid;place-items:center;background:var(--primary-light);color:var(--primary);font-weight:900}
.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--panel-strong);color:var(--text-soft);font-size:.67rem;font-weight:800;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge-success{background:var(--success-light);color:var(--success)}.badge-danger{background:var(--danger-light);color:var(--danger)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-muted{background:var(--panel-strong);color:var(--muted)}.text-danger{color:var(--danger)!important}.text-success{color:var(--success)!important}

/* Toolbars and forms */
.toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:18px}.search-form,.inline-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.search-form label,.inline-form label{margin:0}.search-form>input{min-width:240px}
label,.form-label{display:block;margin-bottom:15px;color:var(--text-soft);font-size:.78rem;font-weight:750}
input,select,textarea{width:100%;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:11px;outline:none;background:var(--panel);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}
select{cursor:pointer}textarea{min-height:96px;resize:vertical}
input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}
input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--line))}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 13%,transparent)}
label small{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;font-weight:500}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}.span-2{grid-column:span 2}.form-panel{padding:0;overflow:hidden}.form-section{display:grid;grid-template-columns:minmax(190px,245px) minmax(0,1fr);gap:34px;padding:28px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border-bottom:0}.form-section>div:first-child h2{margin:0 0 7px;font-size:.98rem}.form-section>div:first-child p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.55}.form-actions{position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;gap:9px;padding:16px 28px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 91%,transparent);backdrop-filter:blur(15px)}
.checkbox{display:flex;align-items:center;gap:9px;margin-top:20px}.checkbox input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--primary)}
.form-field>label{display:block;margin-bottom:6px;color:var(--text-soft);font-size:.78rem;font-weight:750}
.form-metric{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.form-metric span,.form-metric strong{display:block}.form-metric span{color:var(--muted);font-size:.68rem}.form-metric strong{margin-top:5px;font-size:1rem}
.alert{display:flex;align-items:center;gap:9px;margin-bottom:16px;padding:12px 14px;border:1px solid transparent;border-radius:12px;font-size:.8rem;font-weight:650;box-shadow:var(--shadow-sm);transition:.3s}.alert-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 8px}.alert-success{background:var(--success-light);color:var(--success);border-color:color-mix(in srgb,var(--success) 24%,transparent)}.alert-error{background:var(--danger-light);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 24%,transparent)}.alert-hide{opacity:0;transform:translateY(-6px)}

/* Products */
.catalog-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.catalog-summary-card{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-sm)}.catalog-summary-card i{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--primary-light);color:var(--primary);font-style:normal;font-weight:900}.catalog-summary-card strong,.catalog-summary-card span{display:block}.catalog-summary-card strong{font-size:1.15rem}.catalog-summary-card span{color:var(--muted);font-size:.69rem}
.product-photo-editor{display:grid;grid-template-columns:220px minmax(0,1fr);gap:25px;align-items:center}.product-photo-preview{width:220px;aspect-ratio:1;border:2px dashed var(--line-strong);border-radius:18px;background:var(--panel-soft);overflow:hidden;display:grid;place-items:center}.product-photo-preview img{width:100%;height:100%;object-fit:contain;background:#fff}.product-photo-preview>div{display:grid;place-items:center;gap:9px;color:var(--muted);text-align:center}.product-photo-preview>div strong{width:64px;height:64px;display:grid;place-items:center;border-radius:17px;background:var(--primary-light);color:var(--primary);font-size:1.2rem}.product-photo-preview>div span{font-size:.73rem}.product-photo-controls p{margin:8px 0;color:var(--muted);font-size:.73rem;line-height:1.5}.upload-button{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:44px;margin:0;padding:10px 16px;border-radius:11px;background:linear-gradient(145deg,var(--primary),var(--primary-dark));color:#fff;font-weight:800;cursor:pointer;box-shadow:0 8px 20px color-mix(in srgb,var(--primary-dark) 18%,transparent)}.upload-button:hover{filter:brightness(1.05)}.remove-photo{margin-top:15px;color:var(--danger)}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* SKU selector */
.sku-builder{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}.sku-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.sku-builder-head strong,.sku-builder-head span{display:block}.sku-builder-head strong{font-size:.84rem}.sku-builder-head span{margin-top:3px;color:var(--muted);font-size:.7rem}.sku-selector-grid{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(300px,1.4fr);gap:14px;align-items:end}.sku-selector-grid>label{margin:0}.sku-selector-grid select,.sku-selector input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:750;letter-spacing:.01em}.sku-output-row{display:grid;grid-template-columns:auto 1fr;align-items:stretch}.sku-output-prefix{display:grid;place-items:center;padding:0 13px;border:1px solid var(--line-strong);border-right:0;border-radius:11px 0 0 11px;background:var(--primary-light);color:var(--primary);font-size:.68rem;font-weight:900;letter-spacing:.08em}.sku-output-row input{margin:0;border-radius:0 11px 11px 0}.sku-help,.sku-status{margin:8px 0 0;font-size:.69rem;line-height:1.45}.sku-help{color:var(--muted)}.sku-status{font-weight:750}.sku-status[data-state="available"]{color:var(--success)}.sku-status[data-state="adjusted"]{color:var(--warning)}.sku-status[data-state="checking"],.sku-status[data-state="current"]{color:var(--muted)}.sku-status[data-state="warning"],.sku-status[data-state="empty"]{color:var(--danger)}

/* POS */
.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;align-items:start}.pos-products{min-height:720px}.checkout-panel{position:sticky;top:calc(var(--topbar-height) + 18px);padding:22px}.checkout-panel>h2{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:var(--primary-light);color:var(--primary);font-size:.72rem}.scan-row{display:flex;gap:10px}.scan-input{flex:1;display:flex;align-items:center;min-height:50px;padding:0 13px;border:1.5px solid var(--primary);border-radius:14px;background:var(--panel);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 8%,transparent)}.scan-input svg{width:21px;height:21px;color:var(--primary)}.scan-input input{border:0;box-shadow:none!important;margin:0;padding:12px;background:transparent}.product-search{position:relative;margin:14px 0}.product-search>input{margin:0;padding-left:42px}.product-search:before{content:"";position:absolute;left:15px;top:14px;width:16px;height:16px;border:2px solid var(--muted);border-radius:50%;z-index:1;opacity:.7}.product-search:after{content:"";position:absolute;left:29px;top:29px;width:7px;height:2px;background:var(--muted);transform:rotate(45deg);opacity:.7}.search-results{display:none;position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;max-height:430px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-lg)}.search-results.open{display:block}.search-results button{width:100%;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:11px;padding:9px;border:0;border-radius:11px;background:transparent;color:var(--text);text-align:left}.search-results button:hover{background:var(--primary-faint)}.search-results img,.search-results i{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;object-fit:contain;background:#fff;color:var(--primary);font-style:normal;font-weight:900}.search-results small{display:block;margin-top:3px;color:var(--muted)}.search-results b{color:var(--primary)}
.pos-help{display:flex;align-items:flex-start;gap:9px;margin-bottom:17px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:11px;background:var(--accent-light);color:color-mix(in srgb,var(--accent-dark) 80%,var(--text));font-size:.73rem}.pos-help strong{white-space:nowrap}
.quick-products-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:22px 0 13px}.quick-products-head h3{margin:0;font-size:.92rem;letter-spacing:-.015em}.quick-products-head span{color:var(--muted);font-size:.7rem}.quick-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;margin-bottom:26px}.quick-product{position:relative;overflow:hidden;display:flex;flex-direction:column;min-width:0;min-height:286px;padding:0;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--text);text-align:left;box-shadow:0 5px 18px rgba(24,61,48,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.quick-product:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 42%,var(--line));box-shadow:0 14px 30px rgba(24,61,48,.12)}.quick-product:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:3px}.quick-product-photo{position:relative;overflow:hidden;flex:0 0 164px;height:164px;display:grid;place-items:center;padding:16px;border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent);background:#fff}.quick-product-photo:after{content:"";position:absolute;inset:auto 14% 7px;height:14px;border-radius:50%;background:rgba(31,77,58,.08);filter:blur(8px);pointer-events:none}.quick-product-photo img{position:relative;z-index:1;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}.quick-product-photo>span{position:relative;z-index:1;width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:var(--primary-light);color:var(--primary);font-weight:900}.quick-product-info{display:flex;flex:1;flex-direction:column;gap:5px;min-width:0;padding:14px 15px 15px}.quick-product-info strong{display:-webkit-box;overflow:hidden;min-height:2.55em;max-height:2.55em;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;text-overflow:ellipsis;font-size:.84rem;line-height:1.28;letter-spacing:-.012em}.quick-product-info small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:.66rem;letter-spacing:.01em}.quick-product-info b{display:block;margin-top:auto;padding-top:8px;color:var(--primary);font-size:1rem;line-height:1}.stock-pill{position:absolute;z-index:3;top:10px;right:10px;padding:5px 8px;border:1px solid rgba(31,77,58,.08);border-radius:999px;background:rgba(255,255,255,.94);color:#315143;font-size:.62rem;font-weight:850;box-shadow:0 5px 14px rgba(22,55,43,.08);backdrop-filter:blur(8px)}
.cart-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}.cart-table{min-width:700px}.cart-table th{background:var(--panel-soft)}.cart-product{display:flex;align-items:center;gap:10px;min-width:210px}.cart-product img,.cart-photo-placeholder{width:46px;height:46px;flex:0 0 46px;border:1px solid var(--line);border-radius:11px;object-fit:contain;background:#fff}.cart-photo-placeholder{display:grid;place-items:center;background:var(--primary-light);color:var(--primary);font-weight:900}.qty-control{display:flex;align-items:center}.qty-control button{width:31px;height:34px;border:1px solid var(--line);background:var(--panel-soft);color:var(--text)}.qty-control button:first-child{border-radius:9px 0 0 9px}.qty-control button:last-child{border-radius:0 9px 9px 0}.qty-control input{width:62px;height:34px;min-height:34px;margin:0;padding:4px;border-radius:0;text-align:center}.summary-lines{margin:10px 0 17px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.summary-lines>div,.discount-line,.change-line{display:flex;align-items:center;justify-content:space-between;margin:10px 0}.discount-line{font-weight:500}.discount-line input{width:120px;min-height:38px;margin:0;text-align:right}.summary-total{margin-top:14px!important;padding-top:14px;border-top:1px dashed var(--line);font-size:1.25rem}.summary-total strong{font-size:1.5rem;color:var(--primary)}.change-line{padding:10px 12px;border-radius:10px;background:var(--panel-soft)}

/* Modal and toasts */
.modal{display:none;position:fixed;inset:0;z-index:200;align-items:center;justify-content:center;padding:20px;background:rgba(7,17,13,.72);backdrop-filter:blur(7px)}.modal.open{display:flex}.modal-card{width:min(640px,100%);padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--shadow-lg)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between}.modal-head h2{margin:0}.modal-head p{margin:5px 0 15px;color:var(--muted)}.center{text-align:center}.muted{color:var(--muted)}#reader{overflow:hidden;border-radius:14px;background:#000}
.toast{position:fixed;right:22px;bottom:22px;z-index:300;max-width:380px;padding:13px 16px;border-radius:12px;background:#1a2b23;color:#fff;box-shadow:var(--shadow-lg);transform:translateY(22px);opacity:0;transition:.25s}.toast.show{transform:none;opacity:1}.toast-success{background:var(--success)}

/* Authentication and installer */
.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 10%,rgba(230,190,98,.25),transparent 30%),linear-gradient(135deg,#102d24,#1c5240 56%,#12372b);color:#fff}.auth-shell{width:min(1050px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.75fr);overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:rgba(255,255,255,.08);box-shadow:0 40px 110px rgba(0,0,0,.3);backdrop-filter:blur(16px)}.auth-visual{position:relative;min-height:620px;padding:45px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.auth-visual:after{content:"";position:absolute;width:420px;height:420px;right:-180px;bottom:-180px;border:70px solid rgba(230,190,98,.14);border-radius:50%}.auth-visual .brand-mark{width:58px;height:58px}.auth-visual .brand-mark img{width:100%;height:100%}.auth-visual .brand-mark.custom-logo{width:136px;height:96px;padding:8px 10px;border-radius:16px;background:rgba(255,255,255,.98)}.auth-visual .brand-mark.custom-logo img{width:100%;height:100%;display:block;object-fit:contain;object-position:center center}.auth-brand .brand-mark.custom-logo{width:82px;height:60px;flex-basis:82px;padding:5px}.auth-visual h2{max-width:520px;margin:0;font-size:clamp(2.2rem,4vw,4.2rem);line-height:.98;letter-spacing:-.065em}.auth-visual p{max-width:470px;color:#c8ddd2}.auth-feature-list{display:grid;gap:10px}.auth-feature-list span{display:flex;align-items:center;gap:9px;color:#dceae3;font-size:.82rem}.auth-feature-list span:before{content:"✓";width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:rgba(230,190,98,.18);color:#f0cc75;font-weight:900}.auth-card{width:100%;align-self:stretch;padding:44px;background:var(--panel);color:var(--text);display:flex;flex-direction:column;justify-content:center}.install-card{width:min(760px,100%);border-radius:24px;box-shadow:var(--shadow-lg)}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.auth-brand .brand-mark{display:grid;box-shadow:none}.auth-brand strong,.auth-brand span{display:block}.auth-brand span{margin-top:3px;color:var(--muted);font-size:.72rem}.auth-card h1{margin:0 0 7px;font-size:1.7rem;letter-spacing:-.04em}.auth-card>p{margin-top:0}.auth-card code{padding:2px 5px;border-radius:5px;background:var(--panel-strong)}

/* Receipt */
.receipt-body{padding:30px;background:#e9ece8}.receipt-actions{max-width:760px;margin:0 auto 15px;display:flex;justify-content:space-between}.receipt{position:relative;max-width:760px;margin:auto;padding:45px;background:#fff;color:#17231d;box-shadow:0 14px 45px rgba(0,0,0,.12)}.receipt header{text-align:center;padding-bottom:20px;border-bottom:2px solid #17231d}.receipt-logo{width:68px;height:68px;display:grid;place-items:center;overflow:hidden;margin:0 auto 10px;padding:5px;border-radius:17px;background:#173f32;color:#fff;font-weight:900}.receipt-logo img{width:100%;height:100%;display:block;object-fit:contain}.receipt-logo.custom-logo{width:130px;height:82px;padding:6px;background:#fff;border:1px solid #e0e5e1;border-radius:14px}.receipt header h1{margin:0 0 8px}.receipt header p{margin:3px;color:#66736c}.receipt-meta{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:22px 0}.receipt-meta span,.receipt-meta strong{display:block}.receipt-meta span{margin-bottom:3px;color:#758078;font-size:.68rem;text-transform:uppercase}.receipt-totals{width:min(330px,100%);margin-left:auto;padding-top:20px}.receipt-totals>div{display:flex;justify-content:space-between;padding:6px 0}.receipt-totals .grand{margin:7px 0;padding:10px 0;border-top:2px solid #17231d;border-bottom:2px solid #17231d;font-size:1.25rem}.receipt table td{padding:10px 12px}.receipt-item-name{font-weight:700;line-height:1.35}.receipt footer{text-align:center;margin-top:35px;padding-top:20px;border-top:1px dashed #d8ddd9}.receipt-status{position:absolute;right:30px;top:30px;padding:6px 12px;border:4px solid #bd3b44;color:#bd3b44;font-size:1.3rem;font-weight:900;transform:rotate(-8deg);opacity:.75}
hr{border:0;border-top:1px solid var(--line);margin:8px 0 20px}.report-actions{display:flex;gap:9px}.print-report-range{display:none}

/* Utilities */
.kpi-note{color:var(--muted);font-size:.7rem}.section-divider{height:1px;margin:18px 0;background:var(--line)}

/* Responsive */
@media(max-width:1250px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pos-layout{grid-template-columns:minmax(0,1fr) 350px}}
@media(max-width:1080px){.grid-2,.grid-3-1{grid-template-columns:1fr}.pos-layout{grid-template-columns:1fr}.checkout-panel{position:static}.form-section{grid-template-columns:1fr}.bar-row{grid-template-columns:220px 1fr}.dashboard-welcome{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.auth-card{min-height:560px}}
@media(max-width:800px){
  .sidebar{width:min(306px,88vw);transform:translateX(-105%);box-shadow:var(--shadow-lg)}.sidebar-open .sidebar{transform:none}.sidebar-collapse{display:none}.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:50;background:rgba(3,12,8,.55);backdrop-filter:blur(3px)}
  .main,body.sidebar-collapsed .main{margin-left:0}.mobile-menu{display:grid}.topbar{min-height:76px;padding:12px 15px}.topbar .eyebrow,.date-chip{display:none}.topbar-actions{gap:7px}.top-sale span{display:none}.top-sale{width:42px;padding:0}.content{padding:18px 14px 38px}.app-footer{padding:16px 15px 22px;flex-direction:column}
  .toolbar{align-items:stretch;flex-direction:column}.search-form,.inline-form{display:grid;grid-template-columns:1fr;width:100%}.search-form>input{min-width:0}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.form-section{padding:21px}.form-actions{padding:14px 21px}.scan-row{flex-direction:column}.pos-products{min-height:auto}.catalog-summary{grid-template-columns:1fr}.product-photo-editor{grid-template-columns:1fr}.product-photo-preview{width:min(100%,320px);margin:auto}.product-photo-controls{text-align:center}.remove-photo{justify-content:center}.sku-selector-grid{grid-template-columns:1fr}.receipt-body{padding:0}.receipt{padding:25px 18px;box-shadow:none}.receipt-actions{padding:12px}.receipt-meta{grid-template-columns:1fr}.bar-row{grid-template-columns:1fr}.top-products .bar{margin-top:-10px}.dashboard-welcome{padding:22px}.quick-actions{flex-wrap:wrap}
}
@media(max-width:520px){.stat-grid{grid-template-columns:1fr}.panel{padding:16px;border-radius:14px}.topbar h1{font-size:1.16rem}.theme-toggle{display:none}.quick-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-product{min-height:238px;border-radius:14px}.quick-product-photo{flex-basis:128px;height:128px;padding:10px}.quick-product-info{padding:11px}.quick-product-info strong{font-size:.74rem}.quick-product-info small{font-size:.59rem}.quick-product-info b{font-size:.9rem}.stock-pill{top:7px;right:7px;padding:4px 6px;font-size:.56rem}.auth-card{padding:28px}.auth-body{padding:14px}.install-card{border-radius:18px}.sales-chart{gap:5px}.chart-column strong{font-size:.6rem}.chart-column span{font-size:.58rem}}
@media(max-width:380px){.quick-product-grid{grid-template-columns:1fr}.quick-product{display:grid;grid-template-columns:118px 1fr;min-height:118px}.quick-product-photo{height:118px;min-height:118px;padding:9px;border-right:1px solid var(--line);border-bottom:0}.quick-product-info{padding:12px}.quick-product-info strong{min-height:auto;max-height:2.55em}.stock-pill{display:none}}

@media print{.no-print,.sidebar,.topbar,.sidebar-backdrop,.app-footer{display:none!important}.main{margin-left:0!important}.content{padding:0}.panel,.stat-card{box-shadow:none;break-inside:avoid}.print-report-range{display:block!important}.receipt-body{padding:0;background:#fff}.receipt{max-width:none;padding:20px;box-shadow:none}}

/* Custom Logo.png support */
body.sidebar-collapsed .brand-mark.custom-logo{width:52px;height:48px;flex-basis:52px;padding:3px}
@media(max-width:520px){.auth-brand .brand-mark.custom-logo{width:72px;height:54px;flex-basis:72px}.receipt-logo.custom-logo{width:112px;height:72px}}

/* User role management */
.user-role-form{display:flex;align-items:center;gap:8px;min-width:285px}.user-role-form select{width:155px;min-height:36px;margin:0;padding:7px 32px 7px 10px;border-radius:9px;font-size:.78rem;font-weight:750}.user-role-form .btn{min-height:36px}.user-role-current{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-role-current small{color:var(--muted);font-size:.68rem}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-heading h2{margin:0}.panel-heading p{margin:5px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}
@media(max-width:760px){.user-role-form{min-width:240px;flex-direction:column;align-items:stretch}.user-role-form select{width:100%}.user-role-form .btn{width:100%}}


/* Login activity log */
.activity-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}.activity-filters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.activity-filters label{min-width:145px;margin:0}.activity-filters label.activity-search{min-width:190px}.activity-filters input,.activity-filters select{margin:5px 0 0}.activity-user{display:flex;flex-direction:column;gap:3px}.activity-user strong{font-size:.8rem}.activity-user small{color:var(--muted);font-size:.67rem}.activity-device{max-width:220px}.activity-device strong,.activity-device small{display:block}.activity-device strong{font-size:.75rem}.activity-device small{overflow:hidden;max-width:220px;color:var(--muted);font-size:.62rem;white-space:nowrap;text-overflow:ellipsis}.ip-code{display:inline-flex;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--text-soft);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem}.activity-time{white-space:nowrap}.activity-time strong,.activity-time small{display:block}.activity-time small{margin-top:3px;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.pagination-links{display:flex;gap:7px}.security-note{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft);color:var(--muted);font-size:.72rem;line-height:1.5}.security-note strong{color:var(--text)}
@media(max-width:800px){.activity-toolbar,.activity-filters{align-items:stretch;flex-direction:column}.activity-filters label,.activity-filters label.activity-search{width:100%;min-width:0}.activity-filters .btn{width:100%}.pagination{align-items:stretch;flex-direction:column}.pagination-links .btn{flex:1}}

/* === Professional Security Edition 2.0 === */
.logout-form { margin: 0; display: contents; }
.logout-link { border: 0; background: transparent; cursor: pointer; color: inherit; display: grid; place-items: center; }
.privacy-curtain { position: fixed; inset: 0 0 0 var(--sidebar-width, 272px); z-index: 950; background: color-mix(in srgb, var(--bg, #f7f4ed) 94%, transparent); backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); display: grid; place-items: center; padding: 24px; }
.privacy-curtain[hidden] { display: none !important; }
.privacy-curtain > div { width: min(430px, 100%); text-align: center; padding: 34px; border: 1px solid var(--border); border-radius: 24px; background: var(--surface); box-shadow: var(--shadow-lg, 0 25px 70px rgba(0,0,0,.18)); }
.privacy-curtain h2 { margin: 14px 0 6px; }
.privacy-curtain p { margin: 0 0 22px; color: var(--muted); }
.privacy-icon { width: 48px; height: 48px; color: var(--primary); }
body.privacy-mode { overflow: hidden; }
.lock-body { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.lock-card { width: min(470px, 100%); margin: auto; padding: 34px; border-radius: 24px; background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-lg, 0 24px 70px rgba(0,0,0,.18)); text-align: center; }
.lock-card .brand-mark { margin: 0 auto 12px; }
.lock-card form { text-align: left; }
.lock-card .btn-block { margin-top: 10px; }
.lock-icon { display: inline-grid; place-items: center; width: 58px; height: 58px; margin: 10px auto; border-radius: 18px; background: var(--primary-soft, #e8f0eb); font-size: 28px; }
.lock-signout { margin-top: 12px; text-align: center !important; }
.otp-input { letter-spacing: .35em; text-align: center; font-size: 1.35rem; font-weight: 750; }
.security-caption { margin-top: 18px; color: var(--muted); font-size: .78rem; line-height: 1.5; text-align: center; }
.security-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 20px; margin-bottom: 20px; }
.security-score { display: inline-flex; align-items: center; padding: 7px 11px; border-radius: 999px; font-size: .8rem; font-weight: 750; }
.security-score.good { color: #17643e; background: #dcf6e8; }
.compact-form { margin-top: 20px; }
.recovery-box { padding: 18px; border: 1px solid #d7a63c; border-radius: 16px; background: color-mix(in srgb, #d7a63c 9%, var(--surface)); }
.recovery-box p { color: var(--muted); }
.recovery-codes { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin-top: 12px; }
.recovery-codes code { padding: 10px; border-radius: 9px; background: var(--surface-soft); border: 1px solid var(--border); font-weight: 750; letter-spacing: .06em; }
.mfa-setup { display: grid; gap: 12px; }
.mono-input { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .08em; }
.session-list { display: grid; gap: 10px; }
.session-card { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 16px; border: 1px solid var(--border); border-radius: 14px; background: var(--surface-soft); }
.session-card div { min-width: 0; }
.session-card strong, .session-card span { display: block; }
.session-card span { color: var(--muted); font-size: .82rem; margin-top: 4px; overflow-wrap: anywhere; }
.security-kpi-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 20px; }
.security-kpi { padding: 18px; border: 1px solid var(--border); border-radius: 16px; background: var(--surface); box-shadow: var(--shadow-sm); }
.security-kpi span { display: block; color: var(--muted); font-size: .82rem; }
.security-kpi strong { display: block; font-size: 1.7rem; margin-top: 7px; }
.security-checklist { display: grid; gap: 10px; }
.security-check { display: flex; align-items: flex-start; gap: 12px; padding: 14px; border: 1px solid var(--border); border-radius: 13px; }
.security-check i { display: grid; place-items: center; flex: 0 0 30px; height: 30px; border-radius: 50%; font-style: normal; font-weight: 800; }
.security-check.good i { background: #dcf6e8; color: #17643e; }
.security-check.warning i { background: #fff1d6; color: #8d5a00; }
.security-check strong, .security-check span { display: block; }
.security-check span { color: var(--muted); font-size: .84rem; margin-top: 3px; }
.btn-danger { background: #b93845; color: #fff; border-color: #b93845; }
.btn-danger:hover { background: #9e2d39; }
.audit-details { max-width: 420px; white-space: normal; overflow-wrap: anywhere; color: var(--muted); }
@media (max-width: 980px) {
  .privacy-curtain { inset-left: 0; inset: 0; }
  .security-grid { grid-template-columns: 1fr; }
  .security-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .security-kpi-grid, .recovery-codes { grid-template-columns: 1fr; }
  .session-card { align-items: flex-start; flex-direction: column; }
  .lock-card { padding: 24px 19px; }
}

/* === Food Inventory & Purchasing Edition 2.1 === */
.toolbar-actions,.table-actions,.purchase-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.table-actions form,.purchase-actions form{margin:0}.search-wide{min-width:240px}.purchase-line-form{grid-template-columns:minmax(260px,2fr) minmax(130px,.7fr) minmax(130px,.7fr) auto;align-items:end}.purchase-line-form label{margin:0}.receipt-items{display:grid;gap:14px}.receipt-item-card{padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft)}.receipt-item-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.receipt-item-title strong,.receipt-item-title span{display:block}.receipt-item-title span{margin-top:4px;color:var(--muted);font-size:.78rem}.receipt-item-fields{grid-template-columns:repeat(5,minmax(130px,1fr))}.detail-list{display:grid;gap:0;margin:0}.detail-list>div{display:grid;grid-template-columns:145px 1fr;gap:18px;padding:12px 0;border-bottom:1px solid var(--border)}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:var(--muted);font-size:.78rem}.detail-list dd{margin:0;font-weight:650;overflow-wrap:anywhere}.text-danger{color:var(--danger)!important}.badge-info{background:var(--primary-soft);color:var(--primary)}
@media(max-width:1100px){.receipt-item-fields{grid-template-columns:repeat(3,minmax(150px,1fr))}.purchase-line-form{grid-template-columns:1fr 1fr}.purchase-line-form .btn{width:100%}}
@media(max-width:720px){.receipt-item-fields,.purchase-line-form{grid-template-columns:1fr}.detail-list>div{grid-template-columns:1fr;gap:4px}.toolbar-actions{width:100%}.toolbar-actions .btn{flex:1}.search-wide{min-width:0}.table-actions{min-width:150px;align-items:stretch;flex-direction:column}.table-actions .btn,.table-actions form{width:100%}.table-actions form .btn{width:100%}}

/* v2.1.3 percentage discount control */
.discount-percent-control{display:inline-flex;align-items:center;width:120px;min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}
.discount-percent-control input{width:88px!important;min-height:36px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:right}
.discount-percent-control b{display:grid;place-items:center;width:32px;align-self:stretch;background:var(--panel-soft);border-left:1px solid var(--line);color:var(--text-muted);font-size:.9rem}
.discount-value{color:var(--text-muted);font-size:.88rem}
.discount-value strong{color:var(--danger)}

/* WooCommerce Sync v2.2.0 */
.action-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}
.action-grid form { margin: 0; }
.switch-line {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    font-weight: 700;
}
.switch-line input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: var(--primary);
}
.panel-grid.two-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}
@media (max-width: 960px) {
    .panel-grid.two-columns { grid-template-columns: 1fr; }
}


.alert-block{display:block;line-height:1.45}.alert-block strong{display:block;margin-bottom:6px}.compact-list{margin:6px 0 8px 18px;padding:0}.compact-list li{margin:2px 0}.alert-block small{display:block;font-weight:600;opacity:.9}

/* PayPal POS payment box */
.paypal-pos-box {
    border: 1px solid var(--border);
    background: var(--surface-soft);
    border-radius: var(--radius-md);
    padding: 14px;
    margin: 8px 0 12px;
}
.paypal-pos-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}
.paypal-pos-head span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 800;
    color: var(--text-muted);
    background: var(--surface);
    border: 1px solid var(--border);
}
.paypal-pos-head .status-paid {
    color: var(--success);
    background: rgba(47, 143, 91, 0.12);
    border-color: rgba(47, 143, 91, 0.28);
}
#paypal-button-container {
    margin-top: 12px;
    min-height: 44px;
}


/* Fullscreen POS cashier window — v2.3.3 */
.pos-window-mode {
  overflow: hidden;
  --pos-kiosk-header: 74px;
}
.pos-window-mode .sidebar,
.pos-window-mode .topbar,
.pos-window-mode .app-footer,
.pos-window-mode .sidebar-backdrop {
  display: none !important;
}
.pos-window-mode .main,
body.sidebar-collapsed.pos-window-mode .main {
  margin-left: 0 !important;
  min-height: 100vh;
}
.pos-window-mode .content {
  height: 100vh;
  overflow: hidden;
  padding: 0;
  background: linear-gradient(135deg, color-mix(in srgb, var(--bg) 92%, #000 8%), var(--bg));
}
.pos-kiosk-header {
  height: var(--pos-kiosk-header);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 18px;
  border-bottom: 1px solid color-mix(in srgb, var(--line) 88%, transparent);
  background: color-mix(in srgb, var(--panel) 92%, transparent);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.pos-kiosk-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.pos-kiosk-logo {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  overflow: hidden;
  flex: 0 0 50px;
  border-radius: 14px;
  background: #111;
  border: 1px solid color-mix(in srgb, var(--line) 78%, transparent);
}
.pos-kiosk-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.pos-kiosk-brand strong,
.pos-kiosk-brand small {
  display: block;
}
.pos-kiosk-brand strong {
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: -.02em;
}
.pos-kiosk-brand small {
  margin-top: 3px;
  color: var(--muted);
  font-size: .72rem;
}
.pos-kiosk-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.pos-layout-window {
  height: calc(100vh - var(--pos-kiosk-header));
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 12px;
  padding: 12px;
  overflow: hidden;
}
.pos-layout-window .panel {
  border-radius: 16px;
}
.pos-layout-window .pos-products,
.pos-layout-window .checkout-panel {
  height: 100%;
  min-height: 0;
  overflow: auto;
}
.pos-layout-window .checkout-panel {
  position: static;
  top: auto;
}
.pos-layout-window .panel-head {
  position: sticky;
  top: -22px;
  z-index: 5;
  margin: -4px -4px 14px;
  padding: 4px 4px 12px;
  background: color-mix(in srgb, var(--panel) 94%, transparent);
  backdrop-filter: blur(10px);
}
.pos-layout-window .scan-row {
  position: sticky;
  top: 56px;
  z-index: 4;
  padding: 8px 0 12px;
  background: color-mix(in srgb, var(--panel) 94%, transparent);
  backdrop-filter: blur(10px);
}
.pos-layout-window .scan-input input,
.pos-layout-window .product-search input,
.pos-layout-window select,
.pos-layout-window textarea,
.pos-layout-window input[type="number"] {
  min-height: 48px;
  font-size: 1rem;
}
.pos-layout-window .quick-product-grid {
  grid-template-columns: repeat(auto-fill, minmax(215px, 1fr));
  gap: 14px;
}
.pos-layout-window .quick-product {
  min-height: 312px;
  border-radius: 15px;
}
.pos-layout-window .quick-product-photo {
  flex-basis: 210px;
  height: 210px;
  padding: 8px;
}
.pos-layout-window .quick-product-photo img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain !important;
  object-position: center center !important;
}
.pos-layout-window .cart-table-wrap {
  max-height: 34vh;
  overflow: auto;
}
.pos-layout-window .cart-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--panel-soft);
}
.pos-layout-window .checkout-panel h2 {
  position: sticky;
  top: -22px;
  z-index: 5;
  margin: -4px -4px 12px;
  padding: 4px 4px 12px;
  background: color-mix(in srgb, var(--panel) 94%, transparent);
  backdrop-filter: blur(10px);
}
.pos-layout-window .btn-large {
  min-height: 56px;
  font-size: 1rem;
}
@media(max-width: 1100px) {
  .pos-window-mode { overflow: auto; }
  .pos-window-mode .content { height: auto; min-height: 100vh; overflow: visible; }
  .pos-layout-window { height: auto; overflow: visible; grid-template-columns: 1fr; }
  .pos-layout-window .pos-products,
  .pos-layout-window .checkout-panel { height: auto; overflow: visible; }
}
@media(max-width: 640px) {
  .pos-kiosk-header { height: auto; align-items: stretch; flex-direction: column; }
  .pos-kiosk-actions .btn { flex: 1; }
  .pos-layout-window { padding: 8px; }
  .pos-layout-window .quick-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* v2.3.5: clearer sidebar section headings */
.sidebar .nav-label{color:#f3d27b!important;background:rgba(229,185,83,.13)!important;}


/* v2.3.6: POS product images shown complete, not cropped */
.pos-product-card .product-photo,
.quick-product-card .product-photo,
.product-card .product-photo,
.quick-product-image,
.pos-product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 170px;
    background: #fff;
    overflow: hidden;
}

.pos-product-card .product-photo img,
.quick-product-card .product-photo img,
.product-card .product-photo img,
.quick-product-image img,
.pos-product-image img,
.product-tile img,
.quick-product img {
    width: 100%;
    height: 100%;
    max-height: 170px;
    object-fit: contain !important;
    object-position: center center !important;
    background: #fff;
}

@media (min-width: 1400px) {
    .pos-product-card .product-photo,
    .quick-product-card .product-photo,
    .product-card .product-photo,
    .quick-product-image,
    .pos-product-image {
        min-height: 190px;
    }

    .pos-product-card .product-photo img,
    .quick-product-card .product-photo img,
    .product-card .product-photo img,
    .quick-product-image img,
    .pos-product-image img,
    .product-tile img,
    .quick-product img {
        max-height: 190px;
    }
}

@media (max-width: 760px) {
    .pos-product-card .product-photo,
    .quick-product-card .product-photo,
    .product-card .product-photo,
    .quick-product-image,
    .pos-product-image {
        min-height: 145px;
    }

    .pos-product-card .product-photo img,
    .quick-product-card .product-photo img,
    .product-card .product-photo img,
    .quick-product-image img,
    .pos-product-image img,
    .product-tile img,
    .quick-product img {
        max-height: 145px;
    }
}


/* v2.3.7: larger complete product photos in POS fullscreen mode */
.pos-layout-window .quick-product-grid{
  grid-template-columns:repeat(auto-fill,minmax(215px,1fr)) !important;
  gap:14px !important;
}
.pos-layout-window .quick-product{
  min-height:312px !important;
}
.pos-layout-window .quick-product-photo{
  flex:0 0 210px !important;
  height:210px !important;
  padding:8px !important;
  background:#fff !important;
}
.pos-layout-window .quick-product-photo img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}

@media (max-width: 900px){
  .pos-layout-window .quick-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .pos-layout-window .quick-product{
    min-height:280px !important;
  }
  .pos-layout-window .quick-product-photo{
    flex-basis:180px !important;
    height:180px !important;
  }
}


/* v2.3.8: login left hero logo shown complete */
.auth-visual .brand-mark.custom-logo{
  width:136px !important;
  height:96px !important;
  padding:8px 10px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.98) !important;
}
.auth-visual .brand-mark.custom-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
}


/* v2.3.9: login left side shows only the full custom logo */
.auth-visual.logo-only{
  justify-content:center !important;
  align-items:center !important;
  padding:42px !important;
}
.auth-visual-logo-panel{
  width:min(100%, 420px);
  height:min(68vh, 520px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border-radius:28px;
  background:rgba(255,255,255,.08);
}
.auth-visual-full-logo{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain !important;
  object-position:center center !important;
}


/* v2.4.1: PayPal Hosted Button panel */
.paypal-hosted-button-panel{
  margin:14px 0;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--primary) 34%,var(--line));
  border-radius:14px;
  background:color-mix(in srgb,var(--primary-light) 46%,var(--panel));
}
.paypal-hosted-button-panel[hidden]{
  display:none!important;
}
.paypal-hosted-button-note{
  display:grid;
  gap:4px;
  margin-bottom:12px;
}
.paypal-hosted-button-note strong{
  color:var(--text);
  font-size:.9rem;
}
.paypal-hosted-button-note span{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.45;
}
#paypal-container-3NH8HZLTR3RXJ{
  min-height:46px;
}


/* v2.4.2: PayPal Hosted Button visibility/status */
.paypal-hosted-button-panel{
  margin:14px 0;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--primary) 34%,var(--line));
  border-radius:14px;
  background:color-mix(in srgb,var(--primary-light) 46%,var(--panel));
}
.paypal-hosted-button-panel[hidden]{
  display:none!important;
}
.paypal-hosted-button-note{
  display:grid;
  gap:4px;
  margin-bottom:12px;
}
.paypal-hosted-button-note strong{
  color:var(--text);
  font-size:.9rem;
}
.paypal-hosted-button-note span{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.45;
}
#paypal-container-3NH8HZLTR3RXJ{
  min-height:46px;
}
.paypal-hosted-button-status{
  margin-top:8px;
  color:var(--muted);
  font-size:.72rem;
}
.paypal-hosted-button-status.is-error{
  color:var(--danger);
  font-weight:800;
}


/* v2.4.3: force PayPal Hosted Button visibility under payment method */
.paypal-hosted-button-panel{
  display:block;
  margin:12px 0 14px;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--primary) 40%,var(--line));
  border-radius:14px;
  background:color-mix(in srgb,var(--primary-light) 46%,var(--panel));
}
.paypal-hosted-button-panel[hidden]{
  display:none!important;
}
.paypal-hosted-button-note{
  display:grid;
  gap:4px;
  margin-bottom:12px;
}
.paypal-hosted-button-note strong{
  color:var(--text);
  font-size:.9rem;
}
.paypal-hosted-button-note span{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.45;
}
#paypal-container-3NH8HZLTR3RXJ{
  min-height:46px;
}
.paypal-hosted-button-status{
  margin-top:8px;
  color:var(--muted);
  font-size:.72rem;
}
.paypal-hosted-button-status.is-error{
  color:var(--danger);
  font-weight:800;
}


/* v2.4.4: PayPal Hosted Button fixed panel */
.paypal-hosted-button-panel{
  margin:12px 0 14px !important;
  padding:14px !important;
  border:1px solid color-mix(in srgb,var(--primary) 42%,var(--line)) !important;
  border-radius:14px !important;
  background:color-mix(in srgb,var(--primary-light) 46%,var(--panel)) !important;
}
.paypal-hosted-button-panel[hidden]{
  display:none!important;
}
.paypal-hosted-button-note{
  display:grid;
  gap:4px;
  margin-bottom:12px;
}
.paypal-hosted-button-note strong{
  color:var(--text);
  font-size:.9rem;
}
.paypal-hosted-button-note span{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.45;
}
#paypal-container-3NH8HZLTR3RXJ{
  min-height:46px;
}
.paypal-hosted-button-status{
  margin-top:8px;
  color:var(--muted);
  font-size:.72rem;
}
.paypal-hosted-button-status.is-error{
  color:var(--danger);
  font-weight:800;
}


/* v2.4.5: PayPal hosted dynamic loader status */
.paypal-hosted-button-panel{
  margin:12px 0 14px !important;
  padding:14px !important;
  border:1px solid color-mix(in srgb,var(--primary) 42%,var(--line)) !important;
  border-radius:14px !important;
  background:color-mix(in srgb,var(--primary-light) 46%,var(--panel)) !important;
}
.paypal-hosted-button-panel[hidden]{
  display:none!important;
}
.paypal-hosted-button-note{
  display:grid;
  gap:4px;
  margin-bottom:12px;
}
.paypal-hosted-button-note strong{
  color:var(--text);
  font-size:.9rem;
}
.paypal-hosted-button-note span{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.45;
}
#paypal-container-3NH8HZLTR3RXJ{
  min-height:46px;
}
.paypal-hosted-button-status{
  margin-top:8px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.4;
}
.paypal-hosted-button-status.is-error{
  color:#ff9aa5;
  font-weight:800;
}


/* v2.4.6: PayPal Hosted Button direct fallback */
.paypal-hosted-direct-link{
  margin:10px 0 12px;
  min-height:48px;
  font-size:.92rem;
}
.paypal-hosted-separator{
  display:flex;
  align-items:center;
  gap:10px;
  margin:12px 0 10px;
  color:var(--muted);
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.paypal-hosted-separator:before,
.paypal-hosted-separator:after{
  content:"";
  height:1px;
  flex:1;
  background:color-mix(in srgb,var(--line) 85%,transparent);
}
.paypal-hosted-button-status{
  min-height:18px;
}
.paypal-hosted-button-status.is-error{
  color:#ff9aa5;
}


/* v2.4.7: PayPal card hosted payment method */
.paypal-card-button-panel{
  margin:12px 0 14px !important;
  padding:14px !important;
  border:1px solid color-mix(in srgb,var(--primary) 42%,var(--line)) !important;
  border-radius:14px !important;
  background:color-mix(in srgb,var(--primary-light) 46%,var(--panel)) !important;
}
.paypal-card-button-panel[hidden]{
  display:none!important;
}
.paypal-card-direct-button{
  width:100%;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:0;
  border-radius:9px;
  background:#2f3030;
  color:#fff;
  font-size:1rem;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 8px 20px rgba(0,0,0,.18);
  transition:transform .18s ease, filter .18s ease;
}
.paypal-card-direct-button:hover{
  transform:translateY(-1px);
  filter:brightness(1.07);
  color:#fff;
}
.paypal-card-icon{
  width:29px;
  height:21px;
  border:2px solid currentColor;
  border-radius:3px;
  position:relative;
  display:inline-block;
}
.paypal-card-icon:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:5px;
  height:2px;
  background:currentColor;
}


/* v2.4.8: clean payment method list */
.paypal-card-direct-button{
  text-transform:none;
}


/* v2.5.1: professional customer form */
.customer-profile-form .form-grid{
  gap:14px;
}
.customer-profile-form label small{
  margin-top:5px;
  color:var(--muted);
  line-height:1.35;
}
.actions-cell{
  white-space:nowrap;
}
.btn-small{
  min-height:34px;
  padding:7px 10px;
  border-radius:9px;
  font-size:.74rem;
}


/* v2.5.3: internal wholesale customer window */
.badge-warning{
  background:rgba(241,190,53,.18);
  color:#f3d27b;
  border-color:rgba(241,190,53,.3);
}


/* v2.5.4: wholesale sale POS */
.wholesale-pos-mode .pos-kiosk-header,
.wholesale-kiosk-header{
  border-bottom-color:rgba(241,190,53,.28);
  background:linear-gradient(135deg,rgba(30,64,50,.98),rgba(62,48,19,.95));
}
.wholesale-pos-layout .panel-head .badge-warning{
  background:rgba(241,190,53,.18);
  color:#f5d67a;
  border-color:rgba(241,190,53,.32);
}
.wholesale-help{
  background:rgba(241,190,53,.12);
  color:#f4d27b;
  border-color:rgba(241,190,53,.28);
}
.quick-product-info em{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.7rem;
  font-style:normal;
}
.wholesale-checkout-panel .summary-lines div:nth-child(2) strong{
  color:#f1be35;
}
.wholesale-invoice-box{
  display:grid;
  gap:4px;
  margin:12px 0 14px;
  padding:14px;
  border-radius:14px;
  border:1px solid rgba(241,190,53,.35);
  background:rgba(241,190,53,.12);
  color:var(--text);
}
.wholesale-invoice-box[hidden]{
  display:none!important;
}
.wholesale-invoice-box strong{
  color:#f3d27b;
}
.wholesale-invoice-box span{
  color:var(--muted);
  font-size:.76rem;
}
.badge-warning{
  background:rgba(241,190,53,.18);
  color:#f3d27b;
  border-color:rgba(241,190,53,.3);
}


/* v2.5.5: wholesale custom quantity selection */
.wholesale-help strong{
  color:#f3d27b;
}


/* v2.5.6: wholesale delivery notes and invoices */
.wholesale-doc-body .receipt{
  max-width:980px;
}
.wholesale-doc{
  padding:34px;
}
.doc-header{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:20px;
  align-items:start;
  text-align:left;
}
.doc-header h1{
  margin:0 0 8px;
}
.doc-header p{
  margin:4px 0;
}
.doc-title-block{
  min-width:220px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(241,190,53,.12);
  text-align:right;
}
.doc-title-block span{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.doc-title-block strong{
  display:block;
  margin-top:4px;
  color:#f3d27b;
  font-size:1.15rem;
}
.doc-meta{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.doc-address-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin:22px 0;
}
.doc-address-grid > div{
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.03);
}
.doc-address-grid h2{
  margin:0 0 10px;
  font-size:.78rem;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.08em;
}
.doc-address-grid p{
  margin:6px 0;
}
.signature-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:34px;
}
.signature-grid div{
  min-height:76px;
  padding:12px 0 0;
  border-top:1px solid var(--line);
}
.signature-grid span{
  display:block;
  margin-bottom:10px;
  color:var(--muted);
  font-size:.75rem;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:900;
}
.balance-due strong{
  color:#f1be35;
}
@media print{
  .wholesale-doc{
    box-shadow:none!important;
    border:none!important;
    background:#fff!important;
    color:#111!important;
  }
  .doc-title-block{
    background:#f6f1df!important;
  }
  .doc-title-block strong{
    color:#111!important;
  }
}
@media(max-width:760px){
  .doc-header,
  .doc-address-grid,
  .signature-grid{
    grid-template-columns:1fr;
  }
  .doc-title-block{
    text-align:left;
  }
  .doc-meta{
    grid-template-columns:1fr;
  }
}


/* v2.5.8: online-store product card format for New Sale and Wholesale */
.product-shop-grid{
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:18px;
  align-items:stretch;
}
.quick-product.product-shop-card{
  min-height:445px;
  border-radius:10px;
  border:1px solid color-mix(in srgb,var(--line) 88%,transparent);
  background:#fff;
  color:#111;
  box-shadow:0 3px 15px rgba(14,36,26,.06);
  cursor:pointer;
  overflow:hidden;
}
.quick-product.product-shop-card:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--accent) 58%,var(--line));
  box-shadow:0 15px 36px rgba(14,36,26,.12);
}
.product-shop-card .product-shop-photo{
  flex-basis:205px;
  height:205px;
  padding:20px 18px 12px;
  border-bottom:0;
  background:#fff;
}
.product-shop-card .product-shop-photo:after{
  display:none;
}
.product-shop-card .product-shop-photo img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.product-shop-card .product-stock-pill{
  top:10px;
  right:10px;
  background:rgba(255,255,255,.96);
  color:#687066;
  border:1px solid #edf0eb;
  font-size:.6rem;
}
.product-shop-info{
  gap:6px;
  padding:12px 13px 12px;
}
.product-shop-info .product-shop-title{
  min-height:2.8em;
  max-height:2.8em;
  color:#0645ad;
  font-size:.86rem;
  font-weight:650;
  line-height:1.35;
  letter-spacing:0;
}
.product-shop-info .product-shop-brand{
  color:#111;
  font-size:.66rem;
  font-weight:850;
  line-height:1.25;
  text-transform:uppercase;
  white-space:normal;
}
.product-price-row{
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
}
.product-current-price{
  display:inline-flex!important;
  margin:0!important;
  padding:0!important;
  color:#d00000!important;
  font-size:1.15rem!important;
  font-weight:950!important;
  line-height:1!important;
}
.product-old-price{
  color:#7b7b7b;
  font-size:.78rem;
  font-style:normal;
  text-decoration:line-through;
  white-space:nowrap;
}
.product-meta-row{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:24px;
}
.product-discount-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:3px 7px;
  border-radius:5px;
  background:#ffe38a;
  color:#594200;
  font-size:.7rem;
  font-weight:950;
}
.product-unit-note{
  color:#4c5960!important;
  font-size:.75rem!important;
  font-weight:600;
  white-space:nowrap;
}
.product-card-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
  padding-top:12px;
  border-top:1px dotted #d9d9d9;
}
.product-card-qty{
  display:inline-flex;
  align-items:center;
  height:34px;
  border:1px solid #cfcfcf;
  border-radius:5px;
  overflow:hidden;
  background:#fff;
}
.product-card-qty button{
  width:32px;
  height:34px;
  display:grid;
  place-items:center;
  border:0;
  background:#fff;
  color:#0b407a;
  font-size:1.3rem;
  font-weight:650;
  line-height:1;
  cursor:pointer;
}
.product-card-qty button:hover{
  background:#f3f6f8;
}
.product-card-qty .quick-card-qty{
  width:46px;
  height:34px;
  min-height:34px;
  margin:0;
  padding:3px 4px;
  border:0;
  border-inline:1px solid #d7d7d7;
  border-radius:0;
  background:#fff;
  color:#111;
  text-align:center;
  font-weight:850;
  box-shadow:none!important;
}
.product-add-cart{
  width:42px;
  height:38px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:8px;
  background:#fff3bd;
  color:#d9a400;
  font-size:1.55rem;
  line-height:1;
  cursor:pointer;
}
.product-add-cart:hover{
  background:#ffe58b;
}
html[data-theme="dark"] .quick-product.product-shop-card{
  background:#fff;
  color:#111;
}
html[data-theme="dark"] .product-shop-info .product-shop-title{
  color:#0645ad;
}
html[data-theme="dark"] .product-shop-info .product-shop-brand{
  color:#111;
}
html[data-theme="dark"] .product-card-qty .quick-card-qty,
html[data-theme="dark"] .product-card-qty button{
  background:#fff;
  color:#111;
}
html[data-theme="dark"] .product-card-qty button{
  color:#0b407a;
}
@media(max-width:720px){
  .product-shop-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
  .quick-product.product-shop-card{
    min-height:380px;
  }
  .product-shop-card .product-shop-photo{
    flex-basis:160px;
    height:160px;
    padding:14px 10px 8px;
  }
  .product-shop-info{
    padding:10px;
  }
  .product-card-actions{
    gap:6px;
  }
  .product-card-qty .quick-card-qty{
    width:38px;
  }
  .product-add-cart{
    width:38px;
  }
}


/* v2.5.9: wholesale tax fields */
.table-wrap td small strong{
  color:var(--primary);
}
.customer-profile-form input[name="ein_number"],
.customer-profile-form input[name="tax_id"]{
  letter-spacing:.02em;
}


/* v2.7.0: 5 decimal product cost */
.product-cost-5{
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}


/* v2.7.1: modern dynamic POS cart */
.dynamic-cart-titlebar{
  align-items:flex-end;
}
.dynamic-cart-titlebar>div{
  min-width:0;
}
.dynamic-cart-titlebar strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--panel)),var(--panel));
  color:var(--primary);
  font-size:.72rem;
  font-weight:850;
  white-space:nowrap;
}
.dynamic-cart-shell{
  position:relative;
  margin-top:10px;
  padding:12px;
  border:1px solid color-mix(in srgb,var(--primary) 15%,var(--line));
  border-radius:22px;
  background:
    radial-gradient(circle at top left,color-mix(in srgb,var(--primary) 10%,transparent),transparent 34%),
    linear-gradient(180deg,color-mix(in srgb,var(--panel) 88%,#fff),var(--panel));
  box-shadow:0 18px 45px rgba(15,23,42,.08);
}
.wholesale-cart-shell{
  border-color:color-mix(in srgb,var(--warning) 26%,var(--line));
  background:
    radial-gradient(circle at top left,color-mix(in srgb,var(--warning) 12%,transparent),transparent 35%),
    linear-gradient(180deg,color-mix(in srgb,var(--panel) 88%,#fff),var(--panel));
}
.dynamic-cart-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:560px;
  overflow:auto;
  padding:2px;
  scroll-behavior:smooth;
}
.dynamic-cart-list::-webkit-scrollbar{
  width:10px;
}
.dynamic-cart-list::-webkit-scrollbar-thumb{
  background:color-mix(in srgb,var(--primary) 28%,transparent);
  border-radius:999px;
  border:3px solid transparent;
  background-clip:content-box;
}
.dynamic-cart-empty{
  display:grid;
  place-items:center;
  min-height:190px;
  padding:28px 20px;
  border:1.5px dashed color-mix(in srgb,var(--primary) 22%,var(--line));
  border-radius:18px;
  background:color-mix(in srgb,var(--primary) 4%,var(--panel));
  text-align:center;
  color:var(--muted);
}
.dynamic-cart-empty-icon{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  margin-bottom:10px;
  border-radius:18px;
  background:var(--primary-faint);
  color:var(--primary);
  font-size:1.35rem;
}
.dynamic-cart-empty strong{
  display:block;
  margin-bottom:4px;
  color:var(--text);
  font-size:.98rem;
}
.dynamic-cart-empty small{
  font-size:.76rem;
}
.dynamic-cart-item{
  position:relative;
  display:grid;
  grid-template-columns:32px 72px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:13px;
  border:1px solid color-mix(in srgb,var(--line) 78%,transparent);
  border-radius:20px;
  background:color-mix(in srgb,var(--panel) 96%,#fff);
  box-shadow:0 12px 28px rgba(15,23,42,.07);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.dynamic-cart-item:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary) 34%,var(--line));
  box-shadow:0 18px 38px rgba(15,23,42,.11);
}
.wholesale-cart-item{
  border-color:color-mix(in srgb,var(--warning) 20%,var(--line));
}
.dynamic-cart-index{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:11px;
  background:var(--primary-faint);
  color:var(--primary);
  font-size:.72rem;
  font-weight:900;
}
.dynamic-cart-media{
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
}
.dynamic-cart-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:5px;
}
.dynamic-cart-media span{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:var(--primary);
  font-weight:900;
  letter-spacing:.08em;
  background:linear-gradient(135deg,var(--primary-faint),#fff);
}
.dynamic-cart-main{
  min-width:0;
}
.dynamic-cart-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.dynamic-cart-top strong{
  display:block;
  max-width:100%;
  overflow:hidden;
  color:var(--text);
  font-size:.9rem;
  line-height:1.25;
  text-overflow:ellipsis;
}
.dynamic-cart-top small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.69rem;
  line-height:1.35;
}
.cart-remove-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  padding:7px 9px;
  border:1px solid color-mix(in srgb,var(--danger) 22%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--danger) 6%,var(--panel));
  color:var(--danger);
  font-size:.69rem;
  font-weight:800;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}
.cart-remove-btn span{
  display:grid;
  place-items:center;
  width:16px;
  height:16px;
  border-radius:999px;
  background:color-mix(in srgb,var(--danger) 12%,transparent);
  line-height:1;
}
.cart-remove-btn:hover{
  background:color-mix(in srgb,var(--danger) 12%,var(--panel));
  transform:translateY(-1px);
}
.dynamic-cart-bottom{
  display:grid;
  grid-template-columns:minmax(110px,1fr) auto minmax(120px,auto);
  gap:10px;
  align-items:center;
}
.wholesale-cart-item .dynamic-cart-bottom{
  grid-template-columns:minmax(100px,1fr) auto minmax(92px,auto) minmax(120px,auto);
}
.cart-price-chip,.cart-retail-chip,.cart-line-total{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-height:54px;
  justify-content:center;
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:15px;
  background:color-mix(in srgb,var(--panel) 92%,#fff);
}
.cart-price-chip span,.cart-retail-chip span,.cart-line-total span{
  color:var(--muted);
  font-size:.62rem;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.cart-price-chip strong{
  color:var(--primary);
  font-size:.92rem;
}
.cart-retail-chip strong{
  color:var(--muted);
  font-size:.82rem;
}
.cart-line-total{
  border-color:color-mix(in srgb,var(--primary) 22%,var(--line));
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,var(--panel)),var(--panel));
  text-align:right;
}
.cart-line-total strong{
  color:var(--text);
  font-size:1rem;
}
.cart-line-total small{
  color:var(--success);
  font-size:.66rem;
  font-weight:800;
}
.cart-qty-control{
  min-width:142px;
  padding:4px;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));
  border-radius:999px;
  background:var(--panel);
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
.cart-qty-control button{
  width:34px;
  height:34px;
  border-radius:999px;
}
.cart-qty-control input{
  width:58px;
  height:34px;
  padding:0 4px;
  border:0;
  background:transparent;
  text-align:center;
  font-weight:850;
}
@media (max-width:1100px){
  .dynamic-cart-bottom,
  .wholesale-cart-item .dynamic-cart-bottom{
    grid-template-columns:1fr;
  }
  .cart-line-total{
    text-align:left;
  }
  .cart-qty-control{
    width:max-content;
  }
}
@media (max-width:720px){
  .dynamic-cart-titlebar{
    align-items:flex-start;
    flex-direction:column;
  }
  .dynamic-cart-titlebar strong{
    width:100%;
  }
  .dynamic-cart-item{
    grid-template-columns:28px 58px minmax(0,1fr);
    gap:9px;
    padding:10px;
  }
  .dynamic-cart-media{
    width:58px;
    height:58px;
    border-radius:15px;
  }
  .dynamic-cart-top{
    flex-direction:column;
    gap:8px;
  }
  .cart-remove-btn{
    width:100%;
    justify-content:center;
  }
}


/* v2.7.2: right-side live cart placement */
.side-cart-block{
  margin:16px 0 18px;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));
  border-radius:20px;
  background:
    radial-gradient(circle at top right,color-mix(in srgb,var(--primary) 9%,transparent),transparent 38%),
    color-mix(in srgb,var(--panel) 96%,#fff);
  box-shadow:0 14px 32px rgba(15,23,42,.08);
}
.wholesale-side-cart{
  border-color:color-mix(in srgb,var(--warning) 26%,var(--line));
  background:
    radial-gradient(circle at top right,color-mix(in srgb,var(--warning) 12%,transparent),transparent 38%),
    color-mix(in srgb,var(--panel) 96%,#fff);
}
.side-cart-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:11px;
}
.side-cart-head h3{
  margin:0;
  font-size:.9rem;
  letter-spacing:-.015em;
}
.side-cart-head span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.35;
}
.side-cart-head>strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:max-content;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));
  background:var(--primary-faint);
  color:var(--primary);
  font-size:.66rem;
  font-weight:900;
  white-space:nowrap;
}
.checkout-cart-shell{
  margin-top:0;
  padding:8px;
  border-radius:17px;
  box-shadow:none;
  background:color-mix(in srgb,var(--panel) 94%,#fff);
}
.checkout-cart-shell .dynamic-cart-list{
  max-height:300px;
  gap:9px;
}
.checkout-panel .dynamic-cart-empty{
  min-height:122px;
  padding:18px 12px;
  border-radius:15px;
}
.checkout-panel .dynamic-cart-empty-icon{
  width:42px;
  height:42px;
  margin-bottom:8px;
  border-radius:14px;
  font-size:1rem;
}
.checkout-panel .dynamic-cart-empty strong{
  font-size:.86rem;
}
.checkout-panel .dynamic-cart-empty small{
  font-size:.66rem;
}
.checkout-panel .dynamic-cart-item{
  grid-template-columns:22px 48px minmax(0,1fr);
  gap:8px;
  padding:9px;
  border-radius:16px;
  box-shadow:0 8px 20px rgba(15,23,42,.08);
}
.checkout-panel .dynamic-cart-index{
  width:22px;
  height:22px;
  border-radius:8px;
  font-size:.61rem;
}
.checkout-panel .dynamic-cart-media{
  width:48px;
  height:48px;
  border-radius:13px;
}
.checkout-panel .dynamic-cart-media img{
  padding:3px;
}
.checkout-panel .dynamic-cart-top{
  gap:7px;
  margin-bottom:8px;
}
.checkout-panel .dynamic-cart-top strong{
  font-size:.76rem;
  line-height:1.2;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
}
.checkout-panel .dynamic-cart-top small{
  font-size:.6rem;
  line-height:1.25;
}
.checkout-panel .cart-remove-btn{
  padding:5px 7px;
  gap:4px;
  font-size:.59rem;
}
.checkout-panel .cart-remove-btn span{
  width:13px;
  height:13px;
}
.checkout-panel .dynamic-cart-bottom,
.checkout-panel .wholesale-cart-item .dynamic-cart-bottom{
  grid-template-columns:1fr auto;
  gap:7px;
}
.checkout-panel .cart-price-chip,
.checkout-panel .cart-retail-chip{
  display:none;
}
.checkout-panel .cart-line-total{
  grid-column:1 / -1;
  min-height:40px;
  padding:7px 9px;
  border-radius:12px;
  text-align:left;
}
.checkout-panel .cart-line-total span{
  font-size:.56rem;
}
.checkout-panel .cart-line-total strong{
  font-size:.86rem;
}
.checkout-panel .cart-line-total small{
  font-size:.58rem;
}
.checkout-panel .cart-qty-control{
  min-width:118px;
  width:118px;
  padding:3px;
}
.checkout-panel .cart-qty-control button{
  width:28px;
  height:28px;
}
.checkout-panel .cart-qty-control input{
  width:46px;
  height:28px;
  font-size:.76rem;
}
@media (max-width:1100px){
  .checkout-cart-shell .dynamic-cart-list{
    max-height:none;
  }
}
@media (max-width:720px){
  .side-cart-head{
    flex-direction:column;
  }
  .side-cart-head>strong{
    width:100%;
  }
  .checkout-panel .dynamic-cart-item{
    grid-template-columns:22px 46px minmax(0,1fr);
  }
  .checkout-panel .dynamic-cart-bottom,
  .checkout-panel .wholesale-cart-item .dynamic-cart-bottom{
    grid-template-columns:1fr;
  }
  .checkout-panel .cart-qty-control{
    width:max-content;
  }
}


/* v2.7.3: amount received use total button */
.amount-received-label{
  display:block;
}
.amount-received-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:7px;
}
.amount-received-head>span{
  font-weight:800;
}
.amount-use-total-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));
  border-radius:999px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--panel)),var(--panel));
  color:var(--primary);
  font-size:.66rem;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.amount-use-total-btn:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary) 48%,var(--line));
  background:color-mix(in srgb,var(--primary) 10%,var(--panel));
}
.amount-use-total-btn:active{
  transform:translateY(0);
}
.amount-received-label small{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:.65rem;
}


/* v2.7.4: tax exempt customer notice */
.tax-exempt-notice{
  align-items:center;
  padding:10px 12px!important;
  border:1px solid color-mix(in srgb,var(--success) 32%,var(--line));
  border-radius:14px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--success) 12%,var(--panel)),var(--panel));
}
.tax-exempt-notice span{
  color:var(--success)!important;
  font-weight:900;
}
.tax-exempt-notice strong{
  color:var(--success)!important;
  font-size:.78rem;
  text-align:right;
}
.tax-exempt-line strong{
  color:var(--success)!important;
}


/* =========================================================
   v2.7.6 Premium UI Upgrade
   Ultra-modern premium layer for POS, dashboard, tables and forms.
   ========================================================= */
:root{
  --bg:#f1eee6;
  --bg-elevated:#faf7ef;
  --panel:#fffdf8;
  --panel-soft:#f7f2e8;
  --panel-strong:#efe6d6;
  --text:#171f1a;
  --text-soft:#33463d;
  --muted:#7d847c;
  --line:#e3dccf;
  --line-strong:#d4c8b7;
  --primary:#155d48;
  --primary-dark:#0e3c30;
  --primary-light:#dbeee6;
  --primary-faint:#eef7f2;
  --accent:#d7ad5c;
  --accent-dark:#ae7e29;
  --accent-light:#fff1d4;
  --success:#2d8a61;
  --success-light:#e2f5ec;
  --danger:#c54a52;
  --danger-light:#fdecee;
  --warning:#c4892f;
  --warning-light:#fff2d7;
  --info:#407eb2;
  --info-light:#eaf3fd;
  --shadow-sm:0 10px 24px rgba(30,42,35,.07);
  --shadow-md:0 22px 55px rgba(30,42,35,.12);
  --shadow-lg:0 35px 110px rgba(17,29,24,.22);
}
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#07100c;
  --bg-elevated:#0b1711;
  --panel:#0f1d16;
  --panel-soft:#0b1812;
  --panel-strong:#14291f;
  --text:#f6f1e7;
  --text-soft:#e6ddcd;
  --muted:#9dad9e;
  --line:#203a2d;
  --line-strong:#335645;
  --primary:#7ad2a2;
  --primary-dark:#59b884;
  --primary-light:#173c2b;
  --primary-faint:#10281e;
  --accent:#e7bd69;
  --accent-dark:#c89236;
  --accent-light:#3d2f18;
  --success:#70d19a;
  --success-light:#163826;
  --danger:#ff7d86;
  --danger-light:#3c1d22;
  --warning:#f0b95e;
  --warning-light:#3b2a16;
  --info:#95c7f0;
  --info-light:#142c41;
  --shadow-sm:0 10px 28px rgba(0,0,0,.28);
  --shadow-md:0 24px 62px rgba(0,0,0,.34);
  --shadow-lg:0 44px 140px rgba(0,0,0,.48);
}
.premium-ui{
  min-height:100vh;
  background:
    radial-gradient(circle at 13% -10%, color-mix(in srgb,var(--primary) 22%,transparent), transparent 34rem),
    radial-gradient(circle at 89% 1%, color-mix(in srgb,var(--accent) 18%,transparent), transparent 28rem),
    linear-gradient(135deg,var(--bg),color-mix(in srgb,var(--bg-elevated) 70%,var(--bg)) 58%,var(--bg));
}
html[data-theme="dark"] .premium-ui{
  background:
    radial-gradient(circle at 12% -8%, rgba(122,210,162,.18), transparent 32rem),
    radial-gradient(circle at 86% 0%, rgba(231,189,105,.14), transparent 30rem),
    radial-gradient(circle at 55% 112%, rgba(35,113,81,.16), transparent 34rem),
    linear-gradient(135deg,#06100b 0%,#08130f 46%,#0c1510 100%);
}
.premium-ui::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background-image:
    linear-gradient(color-mix(in srgb,var(--line) 36%,transparent) 1px, transparent 1px),
    linear-gradient(90deg,color-mix(in srgb,var(--line) 36%,transparent) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.38),transparent 72%);
}
html[data-theme="dark"] .premium-ui::before{
  opacity:.16;
}

/* Premium shell */
.premium-ui .sidebar{
  background:
    radial-gradient(circle at 16% 0%,rgba(231,189,105,.18),transparent 18rem),
    linear-gradient(180deg,#0d2d23 0%,#081711 56%,#060e0a 100%);
  border-right:1px solid rgba(231,189,105,.12);
  box-shadow:24px 0 70px rgba(0,0,0,.25);
}
.premium-ui .brand-wrap{
  border-bottom:1px solid rgba(231,189,105,.17);
}
.premium-ui .brand-mark{
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 18px 40px rgba(0,0,0,.28);
}
.premium-ui .brand-copy strong{
  letter-spacing:-.02em;
}
.premium-ui .brand-copy small{
  color:rgba(231,189,105,.9);
  font-weight:750;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.premium-ui .nav a{
  border:1px solid transparent;
  border-radius:16px;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.premium-ui .nav a:hover{
  transform:translateX(2px);
  background:rgba(255,255,255,.085);
  border-color:rgba(255,255,255,.11);
}
.premium-ui .nav a.active{
  background:linear-gradient(135deg,rgba(122,210,162,.22),rgba(231,189,105,.12));
  border-color:rgba(231,189,105,.22);
  box-shadow:0 16px 32px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.1);
}
.premium-ui .nav-primary{
  background:linear-gradient(135deg,rgba(122,210,162,.17),rgba(255,255,255,.05));
}
.premium-ui .nav-label{
  color:rgba(231,189,105,.85);
  letter-spacing:.11em;
}
.premium-ui .sidebar-user{
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  border-radius:20px;
}
.premium-ui .user-avatar{
  background:linear-gradient(135deg,var(--primary),var(--accent));
  color:#07100c;
  font-weight:950;
}

/* Topbar */
.premium-ui .main{
  backdrop-filter:saturate(140%);
}
.premium-ui .topbar{
  margin:18px 18px 0;
  padding:18px 20px;
  border:1px solid color-mix(in srgb,var(--line) 75%,transparent);
  border-radius:28px;
  background:color-mix(in srgb,var(--panel) 78%,transparent);
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(18px) saturate(155%);
}
html[data-theme="dark"] .premium-ui .topbar{
  background:linear-gradient(135deg,rgba(15,29,22,.82),rgba(11,23,17,.68));
  border-color:rgba(231,189,105,.12);
}
.premium-ui .page-heading .eyebrow{
  color:var(--accent);
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.premium-ui .page-heading h1{
  letter-spacing:-.045em;
  font-weight:900;
}
.premium-edition-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 12px;
  border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));
  border-radius:999px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%,transparent),color-mix(in srgb,var(--primary) 10%,transparent));
  color:var(--accent);
  font-size:.68rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  box-shadow:0 12px 26px color-mix(in srgb,var(--accent) 14%,transparent);
}
.premium-ui .date-chip,
.premium-ui .icon-btn{
  border:1px solid color-mix(in srgb,var(--line) 78%,transparent);
  background:color-mix(in srgb,var(--panel) 72%,transparent);
  box-shadow:0 10px 25px rgba(0,0,0,.08);
  backdrop-filter:blur(12px);
}
.premium-ui .icon-btn:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary) 34%,var(--line));
}

/* Content/cards/panels */
.premium-ui .content{
  padding-top:22px;
}
.premium-ui .panel,
.premium-ui .stat-card,
.premium-ui .catalog-summary-card,
.premium-ui .dashboard-card,
.premium-ui .security-card,
.premium-ui .settings-card{
  position:relative;
  border:1px solid color-mix(in srgb,var(--line) 76%,transparent);
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--panel) 90%,transparent),color-mix(in srgb,var(--panel-soft) 82%,transparent));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(16px) saturate(140%);
}
html[data-theme="dark"] .premium-ui .panel,
html[data-theme="dark"] .premium-ui .stat-card,
html[data-theme="dark"] .premium-ui .catalog-summary-card,
html[data-theme="dark"] .premium-ui .dashboard-card,
html[data-theme="dark"] .premium-ui .security-card,
html[data-theme="dark"] .premium-ui .settings-card{
  background:
    radial-gradient(circle at top left,rgba(122,210,162,.08),transparent 32%),
    linear-gradient(180deg,rgba(15,29,22,.92),rgba(9,19,14,.88));
  border-color:rgba(231,189,105,.1);
}
.premium-ui .panel::before,
.premium-ui .stat-card::before,
.premium-ui .catalog-summary-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.13),transparent 30%,rgba(231,189,105,.08));
  opacity:.58;
}
.premium-ui .panel-head h2,
.premium-ui .panel h2,
.premium-ui .checkout-panel h2{
  letter-spacing:-.035em;
  font-weight:900;
}

/* Dashboard polish */
.premium-ui .dashboard-grid,
.premium-ui .stats-grid,
.premium-ui .catalog-summary{
  gap:18px;
}
.premium-ui .stat-card{
  overflow:hidden;
  border-radius:26px;
}
.premium-ui .stat-card i,
.premium-ui .catalog-summary-card i{
  background:linear-gradient(135deg,var(--primary),var(--accent));
  color:#07100c;
  box-shadow:0 16px 34px color-mix(in srgb,var(--primary) 24%,transparent);
}
.premium-ui .stat-card strong,
.premium-ui .catalog-summary-card strong{
  letter-spacing:-.05em;
  font-weight:950;
}

/* Buttons */
.premium-ui .btn{
  border-radius:15px;
  font-weight:850;
  letter-spacing:-.01em;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.premium-ui .btn:hover{
  transform:translateY(-1px);
}
.premium-ui .btn-primary{
  border:1px solid color-mix(in srgb,var(--primary) 58%,#fff);
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--primary) 92%,#fff),color-mix(in srgb,var(--accent) 35%,var(--primary)));
  color:#06100b;
  box-shadow:0 20px 38px color-mix(in srgb,var(--primary) 26%,transparent);
}
.premium-ui .btn-primary:hover{
  box-shadow:0 26px 50px color-mix(in srgb,var(--primary) 34%,transparent);
}
.premium-ui .btn-secondary,
.premium-ui .btn-ghost,
.premium-ui .btn-small{
  border:1px solid color-mix(in srgb,var(--line) 88%,transparent);
  background:color-mix(in srgb,var(--panel) 72%,transparent);
}
.premium-ui .top-sale{
  padding-inline:16px;
}

/* Inputs/forms */
.premium-ui input,
.premium-ui select,
.premium-ui textarea{
  border:1px solid color-mix(in srgb,var(--line-strong) 72%,transparent);
  border-radius:16px;
  background:color-mix(in srgb,var(--panel) 84%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.premium-ui input:focus,
.premium-ui select:focus,
.premium-ui textarea:focus{
  border-color:color-mix(in srgb,var(--primary) 62%,var(--line));
  box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 15%,transparent);
}
.premium-ui label{
  font-weight:800;
}
.premium-ui label small,
.premium-ui .form-note,
.premium-ui .muted{
  color:var(--muted);
}

/* Tables */
.premium-ui .table-wrap{
  border-radius:22px;
  border:1px solid color-mix(in srgb,var(--line) 70%,transparent);
  background:color-mix(in srgb,var(--panel) 70%,transparent);
  box-shadow:var(--shadow-sm);
}
.premium-ui table{
  border-collapse:separate;
  border-spacing:0;
}
.premium-ui thead th{
  color:var(--accent);
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:color-mix(in srgb,var(--panel-strong) 55%,transparent);
}
.premium-ui tbody tr{
  transition:background .16s ease,transform .16s ease;
}
.premium-ui tbody tr:hover{
  background:color-mix(in srgb,var(--primary) 7%,transparent);
}

/* Badges/status */
.premium-ui .badge,
.premium-ui .status-badge{
  border-radius:999px;
  border:1px solid color-mix(in srgb,currentColor 26%,transparent);
  font-weight:900;
  letter-spacing:.01em;
}
.premium-ui .badge-success{
  background:color-mix(in srgb,var(--success) 16%,transparent);
  color:var(--success);
}
.premium-ui .badge-warning{
  background:color-mix(in srgb,var(--warning) 16%,transparent);
  color:var(--warning);
}
.premium-ui .badge-danger{
  background:color-mix(in srgb,var(--danger) 16%,transparent);
  color:var(--danger);
}

/* POS premium */
.premium-ui .pos-layout{
  gap:22px;
}
.premium-ui .pos-products,
.premium-ui .checkout-panel{
  border-radius:30px;
}
.premium-ui .pos-products{
  overflow:hidden;
}
.premium-ui .scan-input{
  border-radius:20px;
  border-color:color-mix(in srgb,var(--primary) 40%,var(--line));
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--panel)),color-mix(in srgb,var(--panel) 92%,transparent));
  box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 8%,transparent),var(--shadow-sm);
}
.premium-ui .product-search>input{
  min-height:54px;
}
.premium-ui .quick-product-grid{
  gap:16px;
}
.premium-ui .quick-product-card{
  border-radius:24px;
  border:1px solid color-mix(in srgb,var(--line) 74%,transparent);
  background:
    radial-gradient(circle at 84% 8%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 42%),
    linear-gradient(180deg,color-mix(in srgb,var(--panel) 94%,transparent),color-mix(in srgb,var(--panel-soft) 88%,transparent));
  box-shadow:0 18px 40px rgba(0,0,0,.09);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.premium-ui .quick-product-card:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--primary) 38%,var(--line));
  box-shadow:0 26px 62px rgba(0,0,0,.16);
}
.premium-ui .product-card-photo{
  border-radius:20px;
  background:#fff;
}
.premium-ui .product-current-price{
  color:var(--primary);
  font-weight:950;
}
.premium-ui .product-add-cart{
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--accent) 25%,var(--primary)));
  color:#06100b;
  box-shadow:0 14px 30px color-mix(in srgb,var(--primary) 24%,transparent);
}
.premium-ui .checkout-panel{
  background:
    radial-gradient(circle at 95% 0%,color-mix(in srgb,var(--primary) 15%,transparent),transparent 30%),
    linear-gradient(180deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--panel-soft) 86%,transparent));
}
html[data-theme="dark"] .premium-ui .checkout-panel{
  background:
    radial-gradient(circle at 90% 0%,rgba(122,210,162,.14),transparent 30%),
    linear-gradient(180deg,rgba(13,29,21,.94),rgba(8,18,13,.92));
}

/* Dynamic cart */
.premium-ui .side-cart-block,
.premium-ui .dynamic-cart-shell,
.premium-ui .dynamic-cart-item{
  border-color:color-mix(in srgb,var(--accent) 20%,var(--line));
}
.premium-ui .side-cart-head>strong,
.premium-ui .dynamic-cart-index{
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 22%,transparent),color-mix(in srgb,var(--accent) 12%,transparent));
  color:var(--primary);
}
.premium-ui .dynamic-cart-item{
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--panel) 94%,transparent),color-mix(in srgb,var(--panel-soft) 82%,transparent));
}
.premium-ui .cart-line-total{
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,transparent),color-mix(in srgb,var(--accent) 8%,transparent));
}
.premium-ui .cart-remove-btn{
  border-color:color-mix(in srgb,var(--danger) 28%,var(--line));
}

/* Checkout totals */
.premium-ui .summary-lines{
  border-radius:22px;
  padding:16px;
  background:color-mix(in srgb,var(--panel-soft) 58%,transparent);
  border:1px solid color-mix(in srgb,var(--line) 56%,transparent);
}
.premium-ui .summary-total strong,
.premium-ui #total{
  font-size:1.7rem;
  font-weight:950;
  color:var(--primary);
  letter-spacing:-.055em;
}
.premium-ui .change-line{
  border-radius:18px;
  background:color-mix(in srgb,var(--panel-soft) 70%,transparent);
  border:1px solid color-mix(in srgb,var(--line) 60%,transparent);
}

/* Search dropdowns */
.premium-ui .search-results{
  border-radius:20px;
  background:color-mix(in srgb,var(--panel) 94%,transparent);
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(18px) saturate(150%);
}
.premium-ui .search-results button{
  border-radius:15px;
}
.premium-ui .search-results button:hover{
  background:color-mix(in srgb,var(--primary) 9%,transparent);
}

/* Alerts/toasts */
.premium-ui .alert,
.premium-ui .toast{
  border-radius:18px;
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(14px);
}
.premium-ui .toast-success{
  background:linear-gradient(135deg,var(--success),color-mix(in srgb,var(--primary) 55%,var(--success)));
  color:#06100b;
}
.premium-ui .toast-error{
  background:linear-gradient(135deg,var(--danger),color-mix(in srgb,var(--danger) 78%,#111));
  color:#fff;
}

/* Premium scrollbar */
.premium-ui *{
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--primary) 42%,transparent) transparent;
}
.premium-ui *::-webkit-scrollbar{
  width:10px;
  height:10px;
}
.premium-ui *::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--accent) 35%,var(--primary)));
  border-radius:999px;
  border:3px solid transparent;
  background-clip:content-box;
}

/* Responsive polish */
@media (max-width:1180px){
  .premium-ui .topbar{
    margin:12px 12px 0;
    border-radius:22px;
  }
  .premium-edition-chip{
    display:none;
  }
}
@media (max-width:780px){
  .premium-ui .topbar{
    padding:14px;
  }
  .premium-ui .topbar-actions{
    gap:8px;
  }
  .premium-ui .date-chip{
    display:none;
  }
  .premium-ui .panel,
  .premium-ui .checkout-panel,
  .premium-ui .pos-products{
    border-radius:22px;
  }
  .premium-ui .summary-lines{
    padding:12px;
  }
}
@media (prefers-reduced-motion:no-preference){
  .premium-ui .panel,
  .premium-ui .stat-card,
  .premium-ui .quick-product-card,
  .premium-ui .dynamic-cart-item{
    animation:premiumFadeUp .28s ease both;
  }
  @keyframes premiumFadeUp{
    from{opacity:0;transform:translateY(7px)}
    to{opacity:1;transform:translateY(0)}
  }
}


/* =========================================================
   v2.7.7 Premium POS Sale Design
   Focused visual upgrade for New Sale / POS and Wholesale POS.
   ========================================================= */
.premium-ui .premium-pos-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:stretch;
  margin:0 0 22px;
  padding:24px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));
  border-radius:32px;
  background:
    radial-gradient(circle at 8% 12%,color-mix(in srgb,var(--primary) 23%,transparent),transparent 26rem),
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 24rem),
    linear-gradient(135deg,color-mix(in srgb,var(--panel) 84%,transparent),color-mix(in srgb,var(--panel-soft) 72%,transparent));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(18px) saturate(160%);
}
html[data-theme="dark"] .premium-ui .premium-pos-hero{
  background:
    radial-gradient(circle at 8% 10%,rgba(122,210,162,.2),transparent 27rem),
    radial-gradient(circle at 100% 0%,rgba(231,189,105,.17),transparent 25rem),
    linear-gradient(135deg,rgba(13,30,22,.92),rgba(7,16,12,.88));
  border-color:rgba(231,189,105,.14);
}
.premium-ui .premium-pos-hero::before{
  content:"";
  position:absolute;
  inset:-1px;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  transform:skewX(-18deg) translateX(-65%);
  animation:premiumHeroSweep 5.4s ease-in-out infinite;
}
@keyframes premiumHeroSweep{
  0%,45%{transform:skewX(-18deg) translateX(-70%);opacity:0}
  55%{opacity:.7}
  78%,100%{transform:skewX(-18deg) translateX(130%);opacity:0}
}
.premium-ui .premium-pos-hero-copy{
  position:relative;
  z-index:1;
}
.premium-ui .premium-pos-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
  padding:8px 11px;
  border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 12%,transparent);
  color:var(--accent);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.premium-ui .premium-pos-kicker::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--success);
  box-shadow:0 0 0 6px color-mix(in srgb,var(--success) 17%,transparent);
}
.premium-ui .premium-pos-hero h2{
  margin:0;
  max-width:760px;
  color:var(--text);
  font-size:clamp(1.9rem,3vw,3.2rem);
  line-height:.98;
  letter-spacing:-.07em;
  font-weight:950;
}
.premium-ui .premium-pos-hero p{
  max-width:720px;
  margin:12px 0 0;
  color:var(--text-soft);
  font-size:.96rem;
}
.premium-ui .premium-pos-hero-metrics{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(108px,1fr));
  gap:10px;
  min-width:390px;
}
.premium-ui .premium-pos-hero-metrics span{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:92px;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--line) 72%,transparent);
  border-radius:20px;
  background:color-mix(in srgb,var(--panel) 62%,transparent);
  box-shadow:0 15px 32px rgba(0,0,0,.11);
  backdrop-filter:blur(14px);
}
.premium-ui .premium-pos-hero-metrics small{
  color:var(--muted);
  font-size:.62rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.premium-ui .premium-pos-hero-metrics strong{
  margin-top:5px;
  color:var(--primary);
  font-size:1.22rem;
  font-weight:950;
  letter-spacing:-.04em;
}
.premium-ui .wholesale-sale-hero .premium-pos-hero-metrics strong{
  color:var(--accent);
}

/* Cashier workbench */
.premium-ui .premium-pos-workbench{
  grid-template-columns:minmax(0,1fr) 430px;
  align-items:start;
  gap:24px;
}
.premium-ui .premium-pos-products,
.premium-ui .premium-checkout-panel{
  overflow:hidden;
  border-radius:34px;
}
.premium-ui .premium-pos-products{
  padding:24px;
  min-height:780px;
}
.premium-ui .premium-checkout-panel{
  padding:22px;
}
.premium-ui .premium-pos-command-head{
  align-items:flex-start;
  padding:4px 4px 18px;
  margin-bottom:16px;
  border-bottom:1px solid color-mix(in srgb,var(--line) 58%,transparent);
}
.premium-ui .premium-pos-command-head h2{
  margin-top:6px;
  font-size:1.48rem;
}
.premium-ui .sale-step-pill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--accent);
  font-size:.63rem;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.premium-ui .sale-step-pill::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--accent);
  box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 13%,transparent);
}
.premium-ui .premium-status-badge{
  box-shadow:0 14px 28px color-mix(in srgb,currentColor 12%,transparent);
}

/* Premium scan/search command center */
.premium-ui .premium-scan-zone{
  position:relative;
  padding:16px;
  border:1px solid color-mix(in srgb,var(--primary) 15%,var(--line));
  border-radius:26px;
  background:
    radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 55%),
    color-mix(in srgb,var(--panel-soft) 62%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 35px rgba(0,0,0,.08);
}
.premium-ui .premium-scan-zone .scan-row{
  gap:12px;
}
.premium-ui .premium-scan-zone .scan-input{
  min-height:60px;
  border-radius:20px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--primary) 8%,transparent));
}
.premium-ui .premium-scan-zone .scan-input input{
  font-weight:850;
}
.premium-ui .premium-scan-zone .btn{
  min-height:60px;
  border-radius:20px;
}
.premium-ui .premium-product-search{
  margin:13px 0 0;
}
.premium-ui .premium-product-search>input{
  min-height:58px;
  border-radius:20px;
  font-weight:800;
}

/* Premium product area */
.premium-ui .premium-product-section-head{
  margin-top:26px;
  align-items:flex-end;
}
.premium-ui .premium-product-section-head h3{
  margin-top:5px;
  font-size:1.12rem;
  font-weight:950;
  letter-spacing:-.035em;
}
.premium-ui .premium-product-section-head>span{
  padding:9px 12px;
  border:1px solid color-mix(in srgb,var(--line) 72%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--panel) 56%,transparent);
  font-weight:850;
}
.premium-ui .product-shop-grid{
  grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
  gap:18px;
}
.premium-ui .product-shop-card{
  isolation:isolate;
  min-height:330px;
  padding:12px;
  border-radius:28px;
  transform:translateZ(0);
}
.premium-ui .product-shop-card::before{
  opacity:.75;
}
.premium-ui .product-shop-card::after{
  content:"";
  position:absolute;
  inset:auto 14px 14px 14px;
  height:38%;
  z-index:-1;
  border-radius:24px;
  background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--primary) 10%,transparent));
  opacity:.72;
  pointer-events:none;
}
.premium-ui .product-stock-pill{
  top:13px;
  right:13px;
  padding:7px 10px;
  border:1px solid color-mix(in srgb,var(--success) 28%,transparent);
  background:color-mix(in srgb,var(--success) 13%,var(--panel));
  color:var(--success);
  font-weight:950;
  backdrop-filter:blur(10px);
}
.premium-ui .product-shop-photo{
  height:150px;
  border-radius:24px;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,255,255,.96),rgba(255,255,255,.72) 56%,rgba(255,255,255,.45));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 18px 34px rgba(0,0,0,.12);
}
.premium-ui .product-shop-photo img{
  padding:8px;
  filter:drop-shadow(0 18px 22px rgba(0,0,0,.16));
}
.premium-ui .product-shop-info{
  padding:12px 2px 0;
}
.premium-ui .product-shop-title{
  min-height:42px;
  color:var(--text);
  font-size:.93rem;
  font-weight:950;
  letter-spacing:-.025em;
}
.premium-ui .product-shop-brand{
  margin-top:4px;
  font-size:.68rem;
  color:var(--accent);
  font-weight:850;
}
.premium-ui .product-price-row{
  margin-top:10px;
}
.premium-ui .product-current-price{
  font-size:1.25rem;
  letter-spacing:-.055em;
}
.premium-ui .product-unit-note{
  margin-top:2px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:850;
}
.premium-ui .product-card-actions{
  margin-top:12px;
  gap:9px;
}
.premium-ui .product-card-qty{
  height:42px;
  border-radius:999px;
  background:color-mix(in srgb,var(--panel) 72%,transparent);
  border:1px solid color-mix(in srgb,var(--line) 74%,transparent);
}
.premium-ui .product-card-qty button{
  width:36px;
  height:36px;
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 12%,transparent);
  color:var(--primary);
  font-weight:950;
}
.premium-ui .product-card-qty input{
  height:36px;
  font-weight:950;
}
.premium-ui .premium-add-cart{
  min-width:76px;
  height:42px;
  gap:6px;
  border-radius:999px;
  font-weight:950;
}
.premium-ui .premium-add-cart b{
  font-size:.72rem;
}
.premium-ui .premium-add-cart span{
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.18));
}

/* Premium checkout */
.premium-ui .premium-checkout-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:18px;
  padding:4px 4px 16px;
  border-bottom:1px solid color-mix(in srgb,var(--line) 56%,transparent);
}
.premium-ui .premium-checkout-head h2{
  margin:6px 0 0;
  font-size:1.35rem;
  font-weight:950;
  letter-spacing:-.04em;
}
.premium-ui .premium-checkout-head p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.72rem;
}
.premium-ui .premium-cart-count{
  width:42px;
  height:42px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--accent) 25%,var(--primary)));
  color:#06100b;
  font-weight:950;
  box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 22%,transparent);
}
.premium-ui .premium-field-label{
  display:block;
  padding:12px;
  border:1px solid color-mix(in srgb,var(--line) 50%,transparent);
  border-radius:20px;
  background:color-mix(in srgb,var(--panel-soft) 43%,transparent);
}
.premium-ui .premium-field-label select,
.premium-ui .premium-field-label input,
.premium-ui .premium-field-label textarea{
  margin-top:7px;
}
.premium-ui .premium-payment-field{
  margin-top:16px;
}
.premium-ui .premium-checkout-panel .side-cart-block{
  margin-top:14px;
  border-radius:24px;
  background:
    radial-gradient(circle at top right,color-mix(in srgb,var(--primary) 12%,transparent),transparent 45%),
    color-mix(in srgb,var(--panel-soft) 58%,transparent);
}
.premium-ui .premium-checkout-panel .summary-lines{
  margin-top:16px;
  padding:18px;
  border-radius:24px;
}
.premium-ui .premium-checkout-panel .summary-lines>div,
.premium-ui .premium-checkout-panel .discount-line{
  padding:7px 0;
}
.premium-ui .premium-checkout-panel .summary-total{
  margin-top:8px;
  padding-top:15px!important;
  border-top:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));
}
.premium-ui .premium-checkout-panel #total{
  font-size:2rem;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.premium-ui .amount-received-label{
  margin-top:14px;
}
.premium-ui .premium-complete-sale-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:58px;
  margin-top:14px;
  border-radius:20px;
  font-size:.96rem;
}
.premium-ui .premium-complete-sale-btn strong{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.22);
  color:inherit;
}
.premium-ui .premium-complete-sale-btn:hover strong{
  transform:translateX(2px);
}
.premium-ui .paypal-card-button-panel,
.premium-ui .paypal-hosted-button-panel,
.premium-ui .wholesale-invoice-box{
  border-radius:20px;
  border-color:color-mix(in srgb,var(--accent) 24%,var(--line));
  background:color-mix(in srgb,var(--panel-soft) 58%,transparent);
}

/* POS window/kiosk mode polish */
.premium-ui.pos-window-mode .premium-pos-hero{
  margin-top:12px;
}
.premium-ui.pos-window-mode .premium-pos-workbench{
  grid-template-columns:minmax(0,1fr) 440px;
}
.premium-ui.pos-window-mode .topbar{
  display:none;
}

/* Responsive */
@media (max-width:1320px){
  .premium-ui .premium-pos-workbench{
    grid-template-columns:minmax(0,1fr) 400px;
  }
  .premium-ui .premium-pos-hero{
    grid-template-columns:1fr;
  }
  .premium-ui .premium-pos-hero-metrics{
    min-width:0;
  }
}
@media (max-width:1080px){
  .premium-ui .premium-pos-workbench{
    grid-template-columns:1fr;
  }
  .premium-ui .premium-checkout-panel{
    position:relative;
    top:auto;
  }
}
@media (max-width:760px){
  .premium-ui .premium-pos-hero{
    padding:18px;
    border-radius:24px;
  }
  .premium-ui .premium-pos-hero-metrics{
    grid-template-columns:1fr;
  }
  .premium-ui .premium-scan-zone .scan-row{
    flex-direction:column;
  }
  .premium-ui .product-shop-grid{
    grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
    gap:13px;
  }
  .premium-ui .product-shop-card{
    min-height:305px;
    border-radius:22px;
  }
  .premium-ui .product-shop-photo{
    height:124px;
  }
  .premium-ui .product-card-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .premium-ui .premium-add-cart{
    width:100%;
  }
  .premium-ui .premium-checkout-head{
    align-items:center;
  }
  .premium-ui .premium-checkout-panel #total{
    font-size:1.65rem;
  }
}


/* =========================================================
   v2.7.8 POS Product Scroll Fix
   Allows the product grid to scroll so all products remain visible.
   ========================================================= */
.premium-ui .premium-pos-workbench{
  align-items:start;
}
.premium-ui .premium-pos-products{
  display:flex;
  flex-direction:column;
  max-height:calc(100vh - 210px);
  min-height:0;
  overflow:hidden;
}
.premium-ui .premium-pos-products .premium-scan-zone,
.premium-ui .premium-pos-products .premium-pos-command-head,
.premium-ui .premium-pos-products .pos-help,
.premium-ui .premium-pos-products .premium-product-section-head{
  flex:0 0 auto;
}
.premium-ui .premium-pos-products .product-shop-grid{
  flex:1 1 auto;
  min-height:320px;
  max-height:none;
  overflow-y:auto;
  overflow-x:hidden;
  padding:4px 8px 18px 4px;
  margin-right:-6px;
  scroll-behavior:smooth;
  overscroll-behavior:contain;
}
.premium-ui .premium-pos-products .product-shop-grid::-webkit-scrollbar{
  width:12px;
}
.premium-ui .premium-pos-products .product-shop-grid::-webkit-scrollbar-track{
  background:color-mix(in srgb,var(--panel-soft) 70%,transparent);
  border-radius:999px;
}
.premium-ui .premium-pos-products .product-shop-grid::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--accent) 42%,var(--primary)));
  border-radius:999px;
  border:3px solid color-mix(in srgb,var(--panel-soft) 84%,transparent);
}
.premium-ui .premium-checkout-panel{
  max-height:calc(100vh - 210px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
.premium-ui.pos-window-mode .premium-pos-products,
.premium-ui.pos-window-mode .premium-checkout-panel{
  max-height:calc(100vh - 122px);
}
.premium-ui.pos-window-mode .premium-pos-hero{
  display:none;
}
.premium-ui.pos-window-mode .premium-pos-workbench{
  min-height:calc(100vh - 96px);
}
.premium-ui.pos-window-mode .premium-pos-products .product-shop-grid{
  min-height:420px;
}
@media (max-width:1080px){
  .premium-ui .premium-pos-products,
  .premium-ui .premium-checkout-panel,
  .premium-ui.pos-window-mode .premium-pos-products,
  .premium-ui.pos-window-mode .premium-checkout-panel{
    max-height:none;
    overflow:visible;
  }
  .premium-ui .premium-pos-products .product-shop-grid{
    max-height:none;
    overflow:visible;
    padding-right:0;
    margin-right:0;
  }
}


/* =========================================================
   v2.7.9 Tablet Touch POS Mode
   Larger touch targets and tablet-first POS/Wholesale POS layout.
   ========================================================= */
.premium-ui .premium-touch-toggle{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:12px 16px;
  border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));
  border-radius:18px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,var(--primary) 12%,transparent));
  color:var(--accent);
  font-weight:950;
  letter-spacing:-.01em;
  box-shadow:0 14px 30px color-mix(in srgb,var(--accent) 13%,transparent);
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.premium-ui .premium-touch-toggle:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--accent) 58%,var(--line));
}
.premium-ui .premium-touch-toggle.active,
.premium-ui [data-touch-pos-toggle].active{
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--accent) 35%,var(--primary)));
  color:#06100b;
  border-color:color-mix(in srgb,var(--primary) 54%,#fff);
}

/* Touch Mode can be enabled manually or automatically on coarse pointer devices. */
.premium-ui.touch-pos-mode .premium-pos-workbench,
@media (pointer:coarse){
  .premium-ui .premium-pos-workbench{
    grid-template-columns:minmax(0,1fr) minmax(390px,430px);
    gap:22px;
  }
}
.premium-ui.touch-pos-mode .premium-pos-products,
.premium-ui.touch-pos-mode .premium-checkout-panel{
  border-radius:34px;
}
.premium-ui.touch-pos-mode .premium-pos-products{
  padding:22px;
}
.premium-ui.touch-pos-mode .premium-scan-zone{
  padding:18px;
}
.premium-ui.touch-pos-mode .premium-scan-zone .scan-input,
.premium-ui.touch-pos-mode .premium-scan-zone .btn,
.premium-ui.touch-pos-mode .premium-product-search>input{
  min-height:68px;
  font-size:1.02rem;
}
.premium-ui.touch-pos-mode .scan-input svg{
  width:28px;
  height:28px;
}
.premium-ui.touch-pos-mode .product-shop-grid{
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:20px;
}
.premium-ui.touch-pos-mode .product-shop-card{
  min-height:365px;
  padding:14px;
  border-radius:30px;
}
.premium-ui.touch-pos-mode .product-shop-photo{
  height:166px;
}
.premium-ui.touch-pos-mode .product-shop-title{
  font-size:1rem;
  line-height:1.25;
  min-height:48px;
}
.premium-ui.touch-pos-mode .product-shop-brand,
.premium-ui.touch-pos-mode .product-unit-note{
  font-size:.74rem;
}
.premium-ui.touch-pos-mode .product-current-price{
  font-size:1.42rem;
}
.premium-ui.touch-pos-mode .product-stock-pill{
  min-height:38px;
  padding:9px 12px;
  font-size:.76rem;
}
.premium-ui.touch-pos-mode .product-card-actions{
  margin-top:14px;
}
.premium-ui.touch-pos-mode .product-card-qty{
  height:56px;
  min-width:146px;
}
.premium-ui.touch-pos-mode .product-card-qty button{
  width:52px;
  height:52px;
  font-size:1.35rem;
}
.premium-ui.touch-pos-mode .product-card-qty input{
  width:54px;
  height:52px;
  font-size:1.12rem;
}
.premium-ui.touch-pos-mode .premium-add-cart{
  min-width:108px;
  height:56px;
  font-size:1rem;
}
.premium-ui.touch-pos-mode .premium-add-cart b{
  font-size:.86rem;
}
.premium-ui.touch-pos-mode .premium-checkout-panel{
  padding:22px;
}
.premium-ui.touch-pos-mode .premium-checkout-head h2{
  font-size:1.55rem;
}
.premium-ui.touch-pos-mode .premium-cart-count{
  width:54px;
  height:54px;
  border-radius:18px;
  font-size:1rem;
}
.premium-ui.touch-pos-mode .premium-field-label{
  padding:15px;
  border-radius:22px;
  font-size:.98rem;
}
.premium-ui.touch-pos-mode .premium-field-label select,
.premium-ui.touch-pos-mode .premium-field-label input,
.premium-ui.touch-pos-mode .premium-field-label textarea,
.premium-ui.touch-pos-mode #amountPaid{
  min-height:56px;
  font-size:1rem;
}
.premium-ui.touch-pos-mode .summary-lines{
  padding:19px;
  border-radius:24px;
}
.premium-ui.touch-pos-mode .summary-lines>div,
.premium-ui.touch-pos-mode .discount-line{
  min-height:42px;
  font-size:.98rem;
}
.premium-ui.touch-pos-mode .discount-percent-control input{
  min-width:94px;
  min-height:48px;
  font-size:1rem;
}
.premium-ui.touch-pos-mode .premium-checkout-panel #total{
  font-size:2.25rem;
}
.premium-ui.touch-pos-mode .side-cart-block{
  border-radius:24px;
}
.premium-ui.touch-pos-mode .dynamic-cart-shell{
  max-height:330px;
}
.premium-ui.touch-pos-mode .dynamic-cart-item{
  padding:14px;
  border-radius:22px;
  gap:12px;
}
.premium-ui.touch-pos-mode .dynamic-cart-media{
  width:62px;
  height:62px;
  border-radius:18px;
}
.premium-ui.touch-pos-mode .cart-qty-btn,
.premium-ui.touch-pos-mode .cart-remove-btn{
  min-width:46px;
  min-height:46px;
}
.premium-ui.touch-pos-mode .cart-qty-input{
  min-width:74px;
  min-height:46px;
  font-size:1rem;
}
.premium-ui.touch-pos-mode .amount-use-total-btn{
  min-height:42px;
  padding-inline:14px;
  font-size:.78rem;
}
.premium-ui.touch-pos-mode .premium-complete-sale-btn{
  min-height:68px;
  border-radius:22px;
  font-size:1.08rem;
}
.premium-ui.touch-pos-mode #clearCartButton{
  min-height:54px;
}

/* Automatic touch-friendly behavior on tablets/phones even without manual toggle. */
@media (pointer:coarse){
  .premium-ui .premium-touch-toggle{
    min-height:52px;
  }
  .premium-ui .premium-scan-zone .scan-input,
  .premium-ui .premium-scan-zone .btn,
  .premium-ui .premium-product-search>input{
    min-height:66px;
    font-size:1rem;
  }
  .premium-ui .product-card-qty{
    height:54px;
  }
  .premium-ui .product-card-qty button{
    width:50px;
    height:50px;
    font-size:1.25rem;
  }
  .premium-ui .product-card-qty input{
    height:50px;
    font-size:1.05rem;
  }
  .premium-ui .premium-add-cart{
    height:54px;
    min-width:100px;
  }
  .premium-ui .premium-complete-sale-btn{
    min-height:66px;
  }
  .premium-ui .premium-field-label select,
  .premium-ui .premium-field-label input,
  .premium-ui .premium-field-label textarea{
    min-height:54px;
  }
  .premium-ui .cart-qty-btn,
  .premium-ui .cart-remove-btn{
    min-width:44px;
    min-height:44px;
  }
}

/* Tablet landscape: keep products and checkout side-by-side with better scroll. */
@media (min-width:900px) and (max-width:1180px){
  .premium-ui.touch-pos-mode .premium-pos-hero{
    padding:18px;
  }
  .premium-ui.touch-pos-mode .premium-pos-hero-metrics{
    grid-template-columns:repeat(2,minmax(120px,1fr));
  }
  .premium-ui.touch-pos-mode .premium-pos-workbench{
    grid-template-columns:minmax(0,1fr) 390px;
  }
  .premium-ui.touch-pos-mode .premium-pos-products,
  .premium-ui.touch-pos-mode .premium-checkout-panel{
    max-height:calc(100vh - 190px);
    overflow:hidden;
  }
  .premium-ui.touch-pos-mode .premium-checkout-panel{
    overflow-y:auto;
  }
  .premium-ui.touch-pos-mode .product-shop-grid{
    grid-template-columns:repeat(auto-fill,minmax(205px,1fr));
    overflow-y:auto;
  }
}

/* Tablet portrait and phones: single-column touch workflow. */
@media (max-width:899px){
  .premium-ui.touch-pos-mode .premium-pos-workbench,
  .premium-ui .premium-pos-workbench{
    grid-template-columns:1fr;
  }
  .premium-ui.touch-pos-mode .premium-pos-products,
  .premium-ui.touch-pos-mode .premium-checkout-panel{
    max-height:none;
    overflow:visible;
  }
  .premium-ui.touch-pos-mode .premium-pos-products .product-shop-grid{
    overflow:visible;
    grid-template-columns:repeat(auto-fill,minmax(170px,1fr));
  }
  .premium-ui.touch-pos-mode .premium-pos-hero-metrics{
    grid-template-columns:1fr;
  }
  .premium-ui.touch-pos-mode .premium-checkout-panel{
    position:relative;
    top:auto;
  }
}

/* Full screen kiosk touch mode: maximize product area for tablet counter use. */
.premium-ui.pos-window-mode.touch-pos-mode .premium-pos-products,
.premium-ui.pos-window-mode.touch-pos-mode .premium-checkout-panel{
  max-height:calc(100vh - 108px);
}
.premium-ui.pos-window-mode.touch-pos-mode .premium-pos-workbench{
  grid-template-columns:minmax(0,1fr) 430px;
  gap:18px;
}
.premium-ui.pos-window-mode.touch-pos-mode .product-shop-grid{
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
}
@media (max-width:1024px){
  .premium-ui.pos-window-mode.touch-pos-mode .premium-pos-workbench{
    grid-template-columns:1fr;
  }
  .premium-ui.pos-window-mode.touch-pos-mode .premium-pos-products,
  .premium-ui.pos-window-mode.touch-pos-mode .premium-checkout-panel{
    max-height:none;
    overflow:visible;
  }
}


/* =========================================================
   v2.8.0 Sale Documents Pack
   Document chooser, albarán, packing list and invoice polish.
   ========================================================= */
.sale-docs-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  gap:20px;
  align-items:stretch;
  margin-bottom:22px;
  padding:24px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));
  border-radius:32px;
  background:
    radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--primary) 22%,transparent),transparent 26rem),
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 24rem),
    linear-gradient(135deg,color-mix(in srgb,var(--panel) 84%,transparent),color-mix(in srgb,var(--panel-soft) 76%,transparent));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(18px) saturate(160%);
}
html[data-theme="dark"] .sale-docs-hero{
  background:
    radial-gradient(circle at 8% 0%,rgba(122,210,162,.18),transparent 27rem),
    radial-gradient(circle at 100% 0%,rgba(231,189,105,.15),transparent 25rem),
    linear-gradient(135deg,rgba(13,30,22,.92),rgba(7,16,12,.88));
}
.sale-docs-hero h2{
  margin:8px 0 0;
  font-size:clamp(1.7rem,3vw,3rem);
  line-height:1;
  letter-spacing:-.065em;
  font-weight:950;
}
.sale-docs-hero p{
  max-width:680px;
  margin:10px 0 0;
  color:var(--text-soft);
}
.sale-docs-summary{
  display:grid;
  gap:10px;
}
.sale-docs-summary span{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--line) 70%,transparent);
  border-radius:20px;
  background:color-mix(in srgb,var(--panel) 62%,transparent);
  box-shadow:var(--shadow-sm);
}
.sale-docs-summary small{
  color:var(--muted);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.sale-docs-summary strong{
  margin-top:4px;
  color:var(--primary);
  font-weight:950;
  letter-spacing:-.03em;
}
.sale-document-picker{
  border-radius:28px;
}
.sale-document-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.sale-document-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:190px;
  padding:20px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--line) 78%,transparent);
  border-radius:26px;
  background:
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--primary) 13%,transparent),transparent 58%),
    linear-gradient(180deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  box-shadow:var(--shadow-md);
  color:var(--text);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.sale-document-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-lg);
  border-color:color-mix(in srgb,var(--primary) 42%,var(--line));
}
.sale-document-card-success:hover{border-color:color-mix(in srgb,var(--success) 48%,var(--line))}
.sale-document-card-warning:hover{border-color:color-mix(in srgb,var(--warning) 48%,var(--line))}
.sale-document-card-info:hover{border-color:color-mix(in srgb,var(--info) 48%,var(--line))}
.sale-document-icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--accent) 28%,var(--primary)));
  box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 22%,transparent);
  font-size:1.55rem;
}
.sale-document-copy{
  display:block;
  margin-top:auto;
  padding-top:22px;
}
.sale-document-copy strong{
  display:block;
  font-size:1.05rem;
  font-weight:950;
  letter-spacing:-.035em;
}
.sale-document-copy small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  line-height:1.35;
}
.sale-document-arrow{
  position:absolute;
  top:18px;
  right:18px;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:999px;
  background:color-mix(in srgb,var(--panel) 68%,transparent);
  color:var(--primary);
  font-weight:950;
}

/* Printed documents */
.receipt-actions .btn{
  margin-right:6px;
  margin-bottom:6px;
}
.packing-summary{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:18px 0;
}
.packing-summary span{
  min-height:72px;
  padding:12px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#f8fafc;
}
.packing-summary small{
  display:block;
  color:#64748b;
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.packing-summary strong{
  display:block;
  margin-top:5px;
  font-size:1.25rem;
}
.pack-check{
  width:58px;
  text-align:center;
  font-size:1.15rem;
}
.doc-title-block span{
  white-space:nowrap;
}
@media (max-width:1050px){
  .sale-document-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sale-docs-hero{
    grid-template-columns:1fr;
  }
}
@media (max-width:620px){
  .sale-document-grid{
    grid-template-columns:1fr;
  }
  .sale-docs-hero{
    padding:18px;
    border-radius:24px;
  }
  .packing-summary{
    grid-template-columns:1fr;
  }
}
@media print{
  .sale-docs-hero,.sale-document-picker{
    display:none!important;
  }
  .receipt-actions{
    display:none!important;
  }
}


/* =========================================================
   v2.8.1 Products per Box field
   ========================================================= */
.products-per-box-badge{
  background:color-mix(in srgb,var(--accent) 15%,transparent);
  color:var(--accent);
  border-color:color-mix(in srgb,var(--accent) 34%,transparent);
  font-weight:950;
}
.product-packaging-note{
  color:var(--muted);
  font-size:.72rem;
}


/* =========================================================
   v2.8.3 Quotes / Cotizaciones + short document numbers
   ========================================================= */
.quote-form-panel .quote-items-table-wrap{
  width:100%;
  overflow:auto;
  border:1px solid color-mix(in srgb,var(--line) 70%,transparent);
  border-radius:22px;
  background:color-mix(in srgb,var(--panel) 72%,transparent);
  box-shadow:var(--shadow-sm);
}
.quote-items-table{
  min-width:880px;
}
.quote-items-table select,
.quote-items-table input{
  margin:0;
}
.quote-items-table [data-stock-display]{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 10%,transparent);
  color:var(--primary);
  font-weight:850;
}
.quote-total-section .form-metric strong{
  font-size:1.25rem;
}
.quote-doc .doc-title-block span{
  color:var(--accent);
}
.quote-doc-body .receipt-actions{
  gap:7px;
  flex-wrap:wrap;
}
.quote-doc-body .receipt-actions form{
  display:inline-flex;
  margin:0;
}
.badge-info{
  background:color-mix(in srgb,var(--info) 16%,transparent);
  color:var(--info);
  border-color:color-mix(in srgb,var(--info) 28%,transparent);
}
@media (max-width:760px){
  .quote-form-panel .quote-items-table-wrap{
    margin-inline:-4px;
  }
}


/* =========================================================
   v2.8.4 POS Natural Scroll + Products per Box display
   Find Product now scrolls with the product catalog instead of staying fixed.
   ========================================================= */
.premium-ui .premium-pos-workbench{
  align-items:start;
}
.premium-ui .premium-pos-products{
  display:block!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
}
.premium-ui .premium-pos-products .premium-pos-command-head,
.premium-ui .premium-pos-products .premium-scan-zone,
.premium-ui .premium-pos-products .pos-help,
.premium-ui .premium-pos-products .premium-product-section-head{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
}
.premium-ui .premium-pos-products .product-shop-grid,
.premium-ui.pos-window-mode .premium-pos-products .product-shop-grid,
.premium-ui.touch-pos-mode .premium-pos-products .product-shop-grid{
  display:grid!important;
  flex:none!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  overflow-y:visible!important;
  overflow-x:visible!important;
  padding:4px 0 18px!important;
  margin-right:0!important;
  overscroll-behavior:auto!important;
}
.premium-ui .premium-checkout-panel{
  position:sticky;
  top:22px;
  align-self:start;
  max-height:calc(100vh - 44px);
  overflow-y:auto;
}
.premium-ui.pos-window-mode{
  overflow-y:auto!important;
}
.premium-ui.pos-window-mode .content{
  height:auto!important;
  min-height:100vh!important;
  overflow:visible!important;
}
.premium-ui.pos-window-mode .premium-pos-workbench{
  min-height:auto!important;
}
.premium-ui.pos-window-mode .premium-pos-products,
.premium-ui.pos-window-mode .premium-checkout-panel{
  max-height:none!important;
}
.premium-ui.pos-window-mode .premium-checkout-panel{
  top:92px;
  max-height:calc(100vh - 112px)!important;
  overflow-y:auto!important;
}
.product-box-chip{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-top:8px;
  padding:7px 10px;
  border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);
  border-radius:999px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,transparent),color-mix(in srgb,var(--primary) 8%,transparent));
  color:var(--accent);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.02em;
  box-shadow:0 10px 22px color-mix(in srgb,var(--accent) 9%,transparent);
}
.product-box-chip::before{
  content:"📦";
  margin-right:5px;
  font-size:.78rem;
}
.premium-ui .product-shop-card{
  cursor:pointer;
}
.premium-ui .product-shop-card:hover .product-box-chip{
  border-color:color-mix(in srgb,var(--accent) 56%,transparent);
  transform:translateY(-1px);
}
.premium-ui .premium-scan-zone{
  margin-bottom:6px;
}
.premium-ui .premium-product-section-head{
  padding-top:2px;
  border-top:1px solid color-mix(in srgb,var(--line) 46%,transparent);
}
.premium-ui .premium-product-section-head>span::after{
  content:" · Scroll page to browse all";
  color:var(--muted);
  font-weight:700;
}
.search-results button small{
  line-height:1.35;
}
@media (max-width:1080px){
  .premium-ui .premium-checkout-panel,
  .premium-ui.pos-window-mode .premium-checkout-panel{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}
@media (max-width:760px){
  .premium-ui .premium-product-section-head>span::after{
    content:"";
  }
  .product-box-chip{
    font-size:.64rem;
    padding:6px 9px;
  }
}


/* =========================================================
   v2.8.5 Edit Sales Module
   ========================================================= */
.sale-edit-panel .sale-edit-table-wrap{
  width:100%;
  overflow:auto;
  border:1px solid color-mix(in srgb,var(--line) 70%,transparent);
  border-radius:22px;
  background:color-mix(in srgb,var(--panel) 72%,transparent);
  box-shadow:var(--shadow-sm);
}
.sale-edit-items-table{
  min-width:920px;
}
.sale-edit-items-table select,
.sale-edit-items-table input{
  margin:0;
}
.sale-edit-items-table [data-stock-display]{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 10%,transparent);
  color:var(--primary);
  font-weight:850;
}
.sale-edit-panel .form-metric strong{
  font-size:1.22rem;
}
.sale-edit-panel .alert-warning{
  margin-top:18px;
}
@media (max-width:760px){
  .sale-edit-panel .sale-edit-table-wrap{
    margin-inline:-4px;
  }
}


/* =========================================================
   v2.8.6 Modern Checkout Flow + Sales/Quotes actions
   POS uses product gallery first, then Checkout drawer.
   ========================================================= */
.premium-ui .btn-danger,
.btn-danger{
  background:linear-gradient(135deg,var(--danger),color-mix(in srgb,var(--danger) 76%,#111));
  border-color:color-mix(in srgb,var(--danger) 72%,#fff);
  color:#fff;
  box-shadow:0 16px 34px color-mix(in srgb,var(--danger) 22%,transparent);
}
.premium-ui .btn-danger:hover,
.btn-danger:hover{
  transform:translateY(-1px);
  box-shadow:0 22px 48px color-mix(in srgb,var(--danger) 30%,transparent);
}
.premium-ui .pos-layout.premium-pos-workbench{
  grid-template-columns:1fr!important;
  padding-bottom:92px;
}
.premium-ui .premium-checkout-panel{
  position:fixed!important;
  inset:22px 22px 22px auto;
  width:min(560px,calc(100vw - 44px));
  max-height:calc(100vh - 44px)!important;
  overflow-y:auto!important;
  z-index:1200;
  transform:translateX(calc(100% + 34px));
  opacity:0;
  pointer-events:none;
  transition:transform .24s ease,opacity .2s ease,box-shadow .24s ease;
  box-shadow:0 40px 140px rgba(0,0,0,.36);
}
.premium-ui.checkout-panel-open .premium-checkout-panel{
  transform:translateX(0);
  opacity:1;
  pointer-events:auto;
}
.premium-ui.checkout-panel-open::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:1100;
  background:rgba(2,8,5,.46);
  backdrop-filter:blur(5px);
  pointer-events:auto;
}
.premium-ui.checkout-panel-open .premium-checkout-panel{
  z-index:1201;
}
.checkout-back-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 12px;
  border:1px solid color-mix(in srgb,var(--line) 72%,transparent);
  border-radius:14px;
  background:color-mix(in srgb,var(--panel) 72%,transparent);
  color:var(--text);
  font-weight:900;
  cursor:pointer;
  box-shadow:var(--shadow-sm);
}
.checkout-back-button:hover{
  border-color:color-mix(in srgb,var(--primary) 40%,var(--line));
  transform:translateY(-1px);
}
.pos-bottom-checkout-bar{
  position:fixed;
  left:calc(var(--sidebar-width, 280px) + 16px);
  right:16px;
  bottom:16px;
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 14px 14px 18px;
  border:1px solid color-mix(in srgb,var(--line) 72%,transparent);
  border-radius:26px;
  background:color-mix(in srgb,var(--panel) 84%,transparent);
  box-shadow:0 24px 80px rgba(0,0,0,.18);
  backdrop-filter:blur(18px) saturate(160%);
}
html[data-theme="dark"] .pos-bottom-checkout-bar{
  background:linear-gradient(135deg,rgba(15,29,22,.9),rgba(7,16,12,.82));
  border-color:rgba(231,189,105,.14);
}
.pos-bottom-checkout-bar>div{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.pos-bottom-checkout-bar small{
  color:var(--muted);
  font-weight:800;
}
.pos-bottom-checkout-bar strong{
  color:var(--text);
  font-size:1.55rem;
  font-weight:950;
  letter-spacing:-.05em;
}
.pos-bottom-checkout-btn{
  min-height:58px;
  min-width:190px;
  border-radius:18px!important;
  font-size:1rem;
}
.pos-bottom-checkout-btn span{
  display:inline-grid;
  place-items:center;
  min-width:28px;
  height:28px;
  margin-left:6px;
  border-radius:999px;
  background:rgba(255,255,255,.25);
  font-weight:950;
}
.sidebar-collapsed .pos-bottom-checkout-bar{
  left:92px;
}
.pos-window-mode .pos-bottom-checkout-bar{
  left:16px;
}
.premium-ui .premium-pos-products{
  padding-bottom:28px;
}
.premium-ui .product-shop-grid{
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;
  gap:16px!important;
}
.premium-ui .product-shop-card{
  min-height:258px!important;
  border-radius:20px!important;
}
.premium-ui .product-shop-photo{
  height:128px!important;
  border-radius:16px!important;
}
.premium-ui .product-shop-title{
  font-size:.84rem!important;
  min-height:38px!important;
}
.premium-ui .product-current-price{
  font-size:1.08rem!important;
}
.premium-ui .product-card-actions{
  margin-top:10px!important;
}
.premium-ui .premium-add-cart{
  min-width:78px!important;
}
.premium-ui .quick-product-grid .empty{
  grid-column:1/-1;
}
@media (max-width:1180px){
  .pos-bottom-checkout-bar{
    left:16px;
  }
}
@media (max-width:760px){
  .premium-ui .premium-checkout-panel{
    inset:10px;
    width:auto;
    max-height:calc(100vh - 20px)!important;
    border-radius:24px!important;
  }
  .pos-bottom-checkout-bar{
    left:10px;
    right:10px;
    bottom:10px;
    border-radius:20px;
    padding:12px;
  }
  .pos-bottom-checkout-bar strong{
    font-size:1.25rem;
  }
  .pos-bottom-checkout-btn{
    min-width:145px;
    min-height:54px;
  }
  .premium-ui .product-shop-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .premium-ui .product-shop-card{
    min-height:244px!important;
  }
  .premium-ui .product-shop-photo{
    height:116px!important;
  }
}
@media print{
  .pos-bottom-checkout-bar,
  .checkout-back-button{
    display:none!important;
  }
}


/* =========================================================
   v2.8.7 Checkout Separate Window
   Main POS shows product gallery only; checkout/cart opens in a new window.
   ========================================================= */
.checkout-separate-window .sidebar,
.checkout-separate-window .topbar,
.checkout-separate-window .pos-bottom-checkout-bar{
  display:none!important;
}
.checkout-separate-window .main,
.checkout-separate-window .content{
  margin-left:0!important;
  width:100%!important;
  max-width:none!important;
  padding:14px!important;
}
.checkout-separate-window.checkout-panel-open::after{
  display:none!important;
}
.checkout-separate-window .checkout-window-shell{
  width:min(760px,100%);
  margin:0 auto;
}
.checkout-separate-window .premium-checkout-panel{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:760px!important;
  max-height:none!important;
  overflow:visible!important;
  transform:none!important;
  opacity:1!important;
  pointer-events:auto!important;
  margin:0 auto!important;
  border-radius:30px!important;
  box-shadow:var(--shadow-lg)!important;
}
.checkout-separate-window .premium-checkout-head{
  position:sticky;
  top:0;
  z-index:5;
  background:color-mix(in srgb,var(--panel) 88%,transparent);
  backdrop-filter:blur(16px);
  border-radius:24px 24px 18px 18px;
  padding-top:8px;
}
.checkout-separate-window .checkout-back-button{
  display:inline-flex!important;
}
.premium-ui:not(.checkout-separate-window) .checkout-back-button{
  display:none!important;
}
.premium-ui:not(.checkout-separate-window) .premium-checkout-panel{
  display:none!important;
}
.premium-ui:not(.checkout-separate-window).checkout-panel-open::after{
  display:none!important;
}
.premium-ui:not(.checkout-separate-window).checkout-panel-open .premium-checkout-panel{
  display:none!important;
}
.premium-ui .pos-bottom-checkout-bar{
  display:flex;
}
.checkout-separate-window .dynamic-cart-shell{
  max-height:none!important;
}
.checkout-separate-window .premium-complete-sale-btn{
  position:sticky;
  bottom:12px;
  z-index:4;
}
@media (max-width:760px){
  .checkout-separate-window .content{
    padding:8px!important;
  }
  .checkout-separate-window .premium-checkout-panel{
    border-radius:22px!important;
  }
}


/* =========================================================
   v2.8.8 True Checkout Window Fix
   Absolute safeguard: cart/checkout cannot render in main POS window.
   ========================================================= */
body.premium-ui:not(.checkout-separate-window) .checkout-window-shell,
body.premium-ui:not(.checkout-separate-window) .premium-checkout-panel,
body.premium-ui:not(.checkout-separate-window) .side-cart-block,
body.premium-ui:not(.checkout-separate-window) .dynamic-cart-shell{
  display:none!important;
}
body.checkout-separate-window .premium-checkout-panel,
body.checkout-separate-window .side-cart-block,
body.checkout-separate-window .dynamic-cart-shell{
  display:block!important;
}
body.checkout-separate-window .dynamic-cart-list{
  display:flex!important;
}
body.premium-ui:not(.checkout-separate-window) .pos-layout.premium-pos-workbench{
  grid-template-columns:1fr!important;
}
body.premium-ui:not(.checkout-separate-window) .premium-pos-products{
  width:100%!important;
}
body.checkout-separate-window .pos-bottom-checkout-bar{
  display:none!important;
}
body.premium-ui:not(.checkout-separate-window) .pos-bottom-checkout-bar{
  display:flex!important;
}
body.checkout-separate-window .premium-checkout-panel{
  transform:none!important;
  opacity:1!important;
  pointer-events:auto!important;
}
body.checkout-separate-window .checkout-back-button{
  display:inline-flex!important;
}


/* =========================================================
   v2.8.9 Show All Products in POS
   Displays all active products, including out-of-stock products.
   ========================================================= */
.product-stock-pill.out-of-stock-pill{
  background:color-mix(in srgb,var(--danger) 15%,var(--panel));
  color:var(--danger);
  border-color:color-mix(in srgb,var(--danger) 36%,transparent);
}
.premium-ui .product-shop-card:has(.out-of-stock-pill){
  opacity:.82;
}
.premium-ui .product-shop-card:has(.out-of-stock-pill) .premium-add-cart{
  background:linear-gradient(135deg,color-mix(in srgb,var(--muted) 58%,var(--panel)),color-mix(in srgb,var(--muted) 34%,var(--panel)));
  color:var(--text-soft);
  box-shadow:none;
}
.premium-ui .premium-product-section-head>span::after{
  content:" · all active products";
  color:var(--muted);
  font-weight:750;
}
.search-results button small{
  white-space:normal;
}


/* =========================================================
   v2.9.0 Sales Window Product Scroll Fix
   The POS/Sales product window must scroll vertically and show all products.
   ========================================================= */
html,
body{
  min-height:100%;
}
body.premium-ui:not(.checkout-separate-window){
  overflow-x:hidden!important;
  overflow-y:auto!important;
  height:auto!important;
  min-height:100vh!important;
}
body.premium-ui:not(.checkout-separate-window) .app-shell,
body.premium-ui:not(.checkout-separate-window) .main,
body.premium-ui:not(.checkout-separate-window) .content{
  height:auto!important;
  min-height:100vh!important;
  overflow:visible!important;
}
body.premium-ui:not(.checkout-separate-window).pos-window-mode{
  overflow-y:auto!important;
  height:auto!important;
}
body.premium-ui:not(.checkout-separate-window).pos-window-mode .app-shell,
body.premium-ui:not(.checkout-separate-window).pos-window-mode .main,
body.premium-ui:not(.checkout-separate-window).pos-window-mode .content{
  height:auto!important;
  min-height:100vh!important;
  overflow:visible!important;
}
body.premium-ui:not(.checkout-separate-window) .pos-layout,
body.premium-ui:not(.checkout-separate-window) .pos-layout-window,
body.premium-ui:not(.checkout-separate-window) .premium-pos-workbench{
  display:block!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  padding-bottom:120px!important;
}
body.premium-ui:not(.checkout-separate-window) .pos-products,
body.premium-ui:not(.checkout-separate-window) .premium-pos-products,
body.premium-ui:not(.checkout-separate-window) .pos-layout-window .pos-products{
  display:block!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  padding-bottom:130px!important;
}
body.premium-ui:not(.checkout-separate-window) .quick-product-grid,
body.premium-ui:not(.checkout-separate-window) .product-shop-grid,
body.premium-ui:not(.checkout-separate-window) .premium-pos-products .product-shop-grid,
body.premium-ui:not(.checkout-separate-window).pos-window-mode .premium-pos-products .product-shop-grid{
  display:grid!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  overflow-y:visible!important;
  overflow-x:visible!important;
  padding-bottom:140px!important;
  margin-right:0!important;
  overscroll-behavior:auto!important;
}
body.premium-ui:not(.checkout-separate-window) .premium-pos-command-head,
body.premium-ui:not(.checkout-separate-window) .premium-scan-zone,
body.premium-ui:not(.checkout-separate-window) .premium-product-section-head,
body.premium-ui:not(.checkout-separate-window) .panel-head,
body.premium-ui:not(.checkout-separate-window) .scan-row{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
}
body.premium-ui:not(.checkout-separate-window) .premium-pos-hero{
  position:relative!important;
  top:auto!important;
}
body.premium-ui:not(.checkout-separate-window) .pos-bottom-checkout-bar{
  position:fixed!important;
  z-index:2000!important;
}
body.premium-ui:not(.checkout-separate-window).pos-window-mode .pos-bottom-checkout-bar{
  left:16px!important;
  right:16px!important;
  bottom:16px!important;
}
body.premium-ui:not(.checkout-separate-window) .quick-product.product-shop-card{
  transform:translateZ(0);
}
body.premium-ui:not(.checkout-separate-window) .quick-products-head,
body.premium-ui:not(.checkout-separate-window) .premium-product-section-head{
  scroll-margin-top:20px;
}
@media (max-width:760px){
  body.premium-ui:not(.checkout-separate-window) .pos-layout,
  body.premium-ui:not(.checkout-separate-window) .pos-layout-window,
  body.premium-ui:not(.checkout-separate-window) .premium-pos-workbench,
  body.premium-ui:not(.checkout-separate-window) .pos-products,
  body.premium-ui:not(.checkout-separate-window) .premium-pos-products,
  body.premium-ui:not(.checkout-separate-window) .quick-product-grid,
  body.premium-ui:not(.checkout-separate-window) .product-shop-grid{
    padding-bottom:150px!important;
  }
}


/* =========================================================
   v2.9.2 Global SFS Logo Update
   New uploaded logo is used across app, POS, receipts, invoices and quotes.
   ========================================================= */
.brand-mark.custom-logo{
  width:86px!important;
  height:54px!important;
  flex:0 0 86px!important;
  padding:3px!important;
  border-radius:14px!important;
  background:#000!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.28)!important;
}
.brand-mark.custom-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.sidebar-collapsed .brand-mark.custom-logo{
  width:52px!important;
  height:42px!important;
  flex-basis:52px!important;
}
.auth-brand .brand-mark.custom-logo{
  width:150px!important;
  height:62px!important;
  flex-basis:150px!important;
  border-radius:16px!important;
  background:#000!important;
}
.pos-kiosk-logo{
  width:92px!important;
  height:50px!important;
  flex-basis:92px!important;
  border-radius:14px!important;
  background:#000!important;
  padding:3px!important;
}
.pos-kiosk-logo img{
  object-fit:contain!important;
  background:#000!important;
}
.receipt-logo.custom-logo{
  width:172px!important;
  height:72px!important;
  padding:5px!important;
  background:#000!important;
  border:1px solid #111!important;
  border-radius:14px!important;
  box-shadow:0 10px 26px rgba(0,0,0,.12)!important;
}
.receipt-logo.custom-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.doc-header .receipt-logo.custom-logo{
  width:188px!important;
  height:76px!important;
  margin:0!important;
}
.login-logo,
.lock-logo,
.mfa-logo{
  background:#000!important;
}
@media print{
  .receipt-logo.custom-logo,
  .doc-header .receipt-logo.custom-logo{
    background:#000!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
}
@media(max-width:760px){
  .brand-mark.custom-logo{
    width:74px!important;
    height:48px!important;
    flex-basis:74px!important;
  }
  .doc-header .receipt-logo.custom-logo{
    width:160px!important;
    height:68px!important;
  }
}


/* =========================================================
   v2.9.3 Final Vertical Logo + Invoice Payment Instructions
   Uses the complete vertical logo and keeps it fully visible in invoices/quotes.
   ========================================================= */
.brand-mark.custom-logo{
  width:74px!important;
  height:86px!important;
  flex:0 0 74px!important;
  padding:4px!important;
  border-radius:16px!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.26)!important;
}
.brand-mark.custom-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.sidebar-collapsed .brand-mark.custom-logo{
  width:52px!important;
  height:62px!important;
  flex-basis:52px!important;
}
.auth-brand .brand-mark.custom-logo{
  width:122px!important;
  height:150px!important;
  flex-basis:122px!important;
  background:#fff!important;
}
.pos-kiosk-logo{
  width:66px!important;
  height:82px!important;
  flex-basis:66px!important;
  border-radius:16px!important;
  background:#fff!important;
  padding:4px!important;
}
.pos-kiosk-logo img{
  object-fit:contain!important;
}
.receipt-logo.custom-logo{
  width:176px!important;
  height:220px!important;
  padding:8px!important;
  background:#fff!important;
  border:1px solid #e0e5e1!important;
  border-radius:16px!important;
  overflow:hidden!important;
  box-shadow:0 10px 26px rgba(0,0,0,.08)!important;
}
.receipt-logo.custom-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.doc-header .receipt-logo.custom-logo{
  width:180px!important;
  height:230px!important;
  margin:0!important;
  align-self:start!important;
}
.quote-doc .doc-header .receipt-logo.custom-logo{
  width:180px!important;
  height:230px!important;
}
.doc-header{
  align-items:start!important;
}
.payment-instructions-box{
  clear:both;
  margin:28px 0 20px;
  padding:18px 20px;
  border:1px solid #d9e1dc;
  border-radius:16px;
  background:#f8faf8;
  color:#17231d;
  page-break-inside:avoid;
}
.payment-instructions-box h2{
  margin:0 0 8px;
  color:#17231d;
  font-size:.94rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.payment-instructions-box p{
  margin:7px 0;
  color:#4f5d56;
  line-height:1.45;
}
.payment-instructions-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 14px;
  margin:14px 0;
}
.payment-instructions-grid div{
  padding:10px 12px;
  border:1px solid #e3e9e5;
  border-radius:12px;
  background:#fff;
}
.payment-instructions-grid span{
  display:block;
  margin-bottom:3px;
  color:#6a756e;
  font-size:.66rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.payment-instructions-grid strong{
  display:block;
  color:#17231d;
  font-size:.86rem;
  word-break:break-word;
}
.payment-instructions-note{
  font-weight:700;
}
@media print{
  .receipt-logo.custom-logo,
  .doc-header .receipt-logo.custom-logo,
  .payment-instructions-box,
  .payment-instructions-grid div{
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
}
@media(max-width:760px){
  .doc-header .receipt-logo.custom-logo,
  .quote-doc .doc-header .receipt-logo.custom-logo{
    width:150px!important;
    height:194px!important;
  }
  .payment-instructions-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   v2.9.4 Invoices Sidebar Module
   ========================================================= */
.invoices-panel .panel-head{
  align-items:center;
}
.invoices-panel table td small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.72rem;
}
.balance-warning{
  color:var(--warning, #f1be35);
}
.invoices-panel .actions{
  gap:6px;
}
.invoices-panel .actions form{
  display:inline-flex;
  margin:0;
}


/* =========================================================
   v2.9.5 Professional PDF Print Format
   Cleaner invoice/quote/receipt PDF layout with official full logo.
   ========================================================= */
.receipt-body{
  background:#eef1ee;
}
.receipt-actions{
  max-width:920px;
  gap:10px;
  flex-wrap:wrap;
}
.receipt{
  max-width:920px;
  border:1px solid #e1e6e2;
  border-radius:22px;
  overflow:hidden;
}
.receipt.wholesale-doc,
.receipt.quote-doc,
.wholesale-doc{
  max-width:920px;
}
.receipt.wholesale-doc,
.quote-doc{
  padding:38px 42px;
}
.receipt.wholesale-doc header.doc-header,
.quote-doc header.doc-header,
.doc-header{
  display:grid!important;
  grid-template-columns:138px minmax(260px,1fr) minmax(170px,220px)!important;
  align-items:start!important;
  gap:22px!important;
  text-align:left!important;
  padding:0 0 22px!important;
  margin:0 0 22px!important;
  border-bottom:2px solid #111!important;
}
.doc-header .receipt-logo.custom-logo,
.quote-doc .doc-header .receipt-logo.custom-logo{
  width:126px!important;
  height:164px!important;
  margin:0!important;
  padding:4px!important;
  border:1px solid #d9e1dc!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.doc-header .receipt-logo.custom-logo img,
.quote-doc .doc-header .receipt-logo.custom-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
}
.doc-header h1{
  margin:2px 0 8px!important;
  color:#111!important;
  font-size:1.48rem!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}
.doc-header p{
  margin:4px 0!important;
  color:#4e5a54!important;
  font-size:.82rem!important;
  line-height:1.45!important;
}
.doc-title-block{
  align-self:start!important;
  min-height:0!important;
  padding:16px 18px!important;
  border:1px solid #e1d4a9!important;
  border-radius:16px!important;
  background:#fbf4df!important;
  text-align:right!important;
}
.doc-title-block span{
  display:block!important;
  margin-bottom:7px!important;
  color:#8b6a00!important;
  font-size:.68rem!important;
  font-weight:950!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.doc-title-block strong{
  display:block!important;
  color:#111!important;
  font-size:1.18rem!important;
  line-height:1.2!important;
  word-break:break-word!important;
}
.doc-info-grid,
.doc-address-grid,
.doc-meta,
.receipt-meta{
  gap:14px!important;
  margin:0 0 18px!important;
  padding:0!important;
}
.doc-info-grid>div,
.doc-address-grid>div,
.doc-meta>div,
.receipt-meta>div{
  padding:14px 16px!important;
  border:1px solid #e0e6e1!important;
  border-radius:14px!important;
  background:#fafbf9!important;
}
.doc-info-grid span,
.doc-address-grid h2,
.doc-meta span,
.receipt-meta span{
  display:block!important;
  margin:0 0 6px!important;
  color:#6c766f!important;
  font-size:.66rem!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.doc-info-grid strong,
.doc-address-grid strong,
.doc-meta strong,
.receipt-meta strong{
  color:#111!important;
  font-size:.92rem!important;
}
.doc-info-grid p,
.doc-address-grid p,
.doc-meta p,
.receipt-meta p{
  margin:4px 0!important;
  color:#4f5b55!important;
  font-size:.78rem!important;
  line-height:1.42!important;
}
.receipt table,
.wholesale-doc table,
.quote-doc table{
  width:100%!important;
  margin-top:10px!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border:1px solid #dfe5e0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  font-size:.82rem!important;
}
.receipt table thead th,
.wholesale-doc table thead th,
.quote-doc table thead th{
  padding:11px 12px!important;
  background:#08366f!important;
  color:#fff!important;
  border:0!important;
  font-size:.68rem!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}
.receipt table td,
.wholesale-doc table td,
.quote-doc table td{
  padding:10px 12px!important;
  border-bottom:1px solid #edf1ee!important;
  color:#17231d!important;
  vertical-align:top!important;
}
.receipt table tbody tr:nth-child(even) td,
.wholesale-doc table tbody tr:nth-child(even) td,
.quote-doc table tbody tr:nth-child(even) td{
  background:#fafbf9!important;
}
.receipt table tbody tr:last-child td,
.wholesale-doc table tbody tr:last-child td,
.quote-doc table tbody tr:last-child td{
  border-bottom:0!important;
}
.receipt-item-name{
  color:#111!important;
  font-weight:850!important;
}
.receipt-totals{
  width:min(350px,100%)!important;
  margin:18px 0 0 auto!important;
  padding:14px 16px!important;
  border:1px solid #dfe5e0!important;
  border-radius:16px!important;
  background:#fbfcfb!important;
}
.receipt-totals>div{
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:7px 0!important;
  color:#46534d!important;
  border-bottom:1px solid #edf1ee!important;
}
.receipt-totals>div:last-child{
  border-bottom:0!important;
}
.receipt-totals .grand{
  margin:5px 0!important;
  padding:10px 0!important;
  border-top:2px solid #111!important;
  border-bottom:2px solid #111!important;
  color:#111!important;
  font-size:1.06rem!important;
}
.receipt-totals .grand strong{
  color:#111!important;
  font-size:1.08rem!important;
}
.balance-due strong,
.receipt-totals .balance-due strong{
  color:#b77900!important;
}
.payment-instructions-box{
  margin:22px 0 16px!important;
  padding:16px 18px!important;
  border:1px solid #d8e0db!important;
  border-radius:16px!important;
  background:#fbfcfb!important;
}
.payment-instructions-box h2{
  color:#111!important;
  font-size:.78rem!important;
}
.payment-instructions-grid{
  gap:8px 12px!important;
  margin:12px 0!important;
}
.payment-instructions-grid div{
  padding:9px 11px!important;
  border-radius:10px!important;
}
.receipt footer{
  margin-top:22px!important;
  padding-top:16px!important;
  color:#5c6861!important;
  font-size:.8rem!important;
}
.signature-grid{
  page-break-inside:avoid;
}
@media print{
  @page{
    size:Letter;
    margin:.38in;
  }
  *{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  html,
  body{
    width:auto!important;
    height:auto!important;
    overflow:visible!important;
    background:#fff!important;
  }
  .no-print,
  .receipt-actions,
  .sidebar,
  .topbar,
  .sidebar-backdrop,
  .app-footer{
    display:none!important;
  }
  .main{
    margin-left:0!important;
  }
  .content{
    padding:0!important;
  }
  .receipt-body{
    padding:0!important;
    margin:0!important;
    background:#fff!important;
  }
  .receipt,
  .receipt.wholesale-doc,
  .receipt.quote-doc,
  .wholesale-doc,
  .quote-doc{
    width:100%!important;
    max-width:none!important;
    min-height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#111!important;
    overflow:visible!important;
  }
  .receipt.wholesale-doc header.doc-header,
  .quote-doc header.doc-header,
  .doc-header{
    grid-template-columns:1.15in 1fr 1.65in!important;
    gap:.18in!important;
    padding:0 0 .16in!important;
    margin:0 0 .16in!important;
    border-bottom:2px solid #111!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  .doc-header .receipt-logo.custom-logo,
  .quote-doc .doc-header .receipt-logo.custom-logo{
    width:1.05in!important;
    height:1.38in!important;
    padding:.03in!important;
    border:1px solid #ddd!important;
    border-radius:.08in!important;
    background:#fff!important;
  }
  .doc-header h1{
    font-size:14pt!important;
    line-height:1.08!important;
    margin:0 0 5pt!important;
  }
  .doc-header p{
    font-size:8pt!important;
    line-height:1.32!important;
    margin:2pt 0!important;
  }
  .doc-title-block{
    padding:8pt 9pt!important;
    border-radius:8pt!important;
  }
  .doc-title-block span{
    font-size:6.2pt!important;
    margin-bottom:4pt!important;
  }
  .doc-title-block strong{
    font-size:11pt!important;
  }
  .doc-info-grid,
  .doc-address-grid,
  .doc-meta,
  .receipt-meta{
    gap:8pt!important;
    margin:0 0 10pt!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  .doc-info-grid>div,
  .doc-address-grid>div,
  .doc-meta>div,
  .receipt-meta>div{
    padding:8pt!important;
    border-radius:8pt!important;
  }
  .receipt table,
  .wholesale-doc table,
  .quote-doc table{
    margin-top:6pt!important;
    border-radius:8pt!important;
    font-size:8pt!important;
    page-break-inside:auto!important;
  }
  .receipt table thead{
    display:table-header-group!important;
  }
  .receipt table thead th,
  .wholesale-doc table thead th,
  .quote-doc table thead th{
    padding:6pt 7pt!important;
    font-size:6.2pt!important;
  }
  .receipt table td,
  .wholesale-doc table td,
  .quote-doc table td{
    padding:6pt 7pt!important;
    font-size:7.5pt!important;
    line-height:1.25!important;
  }
  .receipt table tr,
  .wholesale-doc table tr,
  .quote-doc table tr{
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }
  .receipt-totals{
    width:2.8in!important;
    margin:10pt 0 0 auto!important;
    padding:8pt 10pt!important;
    border-radius:9pt!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }
  .receipt-totals>div{
    padding:4pt 0!important;
    font-size:7.8pt!important;
  }
  .receipt-totals .grand{
    padding:6pt 0!important;
    font-size:9pt!important;
  }
  .payment-instructions-box{
    margin:12pt 0 8pt!important;
    padding:9pt 10pt!important;
    border-radius:9pt!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }
  .payment-instructions-box h2{
    font-size:7pt!important;
    margin-bottom:4pt!important;
  }
  .payment-instructions-box p{
    font-size:7.2pt!important;
    line-height:1.28!important;
    margin:4pt 0!important;
  }
  .payment-instructions-grid{
    display:grid!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:5pt!important;
    margin:6pt 0!important;
  }
  .payment-instructions-grid div{
    padding:5pt 6pt!important;
    border-radius:6pt!important;
  }
  .payment-instructions-grid span{
    font-size:5.6pt!important;
  }
  .payment-instructions-grid strong{
    font-size:7.2pt!important;
  }
  .receipt footer{
    margin-top:10pt!important;
    padding-top:8pt!important;
    font-size:7.5pt!important;
  }
  .receipt-status{
    right:.18in!important;
    top:.18in!important;
    font-size:14pt!important;
  }
}
@media(max-width:760px){
  .receipt.wholesale-doc header.doc-header,
  .quote-doc header.doc-header,
  .doc-header{
    grid-template-columns:1fr!important;
  }
  .doc-title-block{
    text-align:left!important;
  }
}


/* =========================================================
   v2.9.7 Forced Professional PDF Layout
   FINAL override: must stay at end of CSS to beat responsive/mobile print rules.
   ========================================================= */
@media print {
  @page {
    size: Letter;
    margin: 0.35in;
  }

  html,
  body {
    width: 8.5in !important;
    min-width: 8.5in !important;
    max-width: 8.5in !important;
    height: auto !important;
    min-height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
    color: #111 !important;
  }

  body.receipt-body,
  .receipt-body {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  .no-print,
  .receipt-actions,
  .sidebar,
  .topbar,
  .sidebar-backdrop,
  .app-footer,
  .mobile-menu,
  .theme-toggle {
    display: none !important;
  }

  .main,
  body.sidebar-collapsed .main {
    margin-left: 0 !important;
    width: 100% !important;
  }

  .content {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .receipt,
  .receipt.wholesale-doc,
  .receipt.quote-doc,
  .wholesale-doc,
  .quote-doc,
  .packing-list-doc {
    display: block !important;
    width: 7.8in !important;
    max-width: 7.8in !important;
    min-width: 7.8in !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
    color: #111 !important;
    overflow: visible !important;
    font-family: Arial, Helvetica, sans-serif !important;
  }

  .receipt.wholesale-doc header.doc-header,
  .quote-doc header.doc-header,
  header.doc-header,
  .doc-header {
    display: grid !important;
    grid-template-columns: 1.22in 1fr 2.05in !important;
    grid-template-rows: auto !important;
    column-gap: 0.22in !important;
    row-gap: 0 !important;
    align-items: start !important;
    text-align: left !important;
    width: 100% !important;
    margin: 0 0 0.20in 0 !important;
    padding: 0 0 0.17in 0 !important;
    border-bottom: 2px solid #111 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .doc-header > div {
    min-width: 0 !important;
  }

  .doc-header .receipt-logo.custom-logo,
  .quote-doc .doc-header .receipt-logo.custom-logo,
  .receipt-logo.custom-logo {
    display: grid !important;
    place-items: center !important;
    width: 1.10in !important;
    height: 1.50in !important;
    margin: 0 !important;
    padding: 0.04in !important;
    border: 1px solid #d5ddd8 !important;
    border-radius: 0.08in !important;
    background: #fff !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .doc-header .receipt-logo.custom-logo img,
  .quote-doc .doc-header .receipt-logo.custom-logo img,
  .receipt-logo.custom-logo img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .doc-header h1 {
    margin: 0 0 0.06in 0 !important;
    padding: 0 !important;
    color: #111 !important;
    font-size: 16pt !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.03em !important;
  }

  .doc-header p {
    margin: 0.025in 0 !important;
    padding: 0 !important;
    color: #33453c !important;
    font-size: 8.2pt !important;
    line-height: 1.35 !important;
  }

  .doc-title-block {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    align-self: start !important;
    margin: 0 !important;
    padding: 0.14in 0.16in !important;
    border: 1px solid #dfc76d !important;
    border-radius: 0.13in !important;
    background: #fff5d9 !important;
    text-align: center !important;
    color: #111 !important;
  }

  .doc-title-block span {
    display: block !important;
    margin: 0 0 0.06in 0 !important;
    color: #8a6900 !important;
    font-size: 6.4pt !important;
    font-weight: 950 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
  }

  .doc-title-block strong {
    display: block !important;
    color: #111 !important;
    font-size: 12pt !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    word-break: break-word !important;
  }

  .receipt-meta.doc-meta,
  .doc-meta,
  .receipt-meta {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 0.11in !important;
    width: 100% !important;
    margin: 0 0 0.16in 0 !important;
    padding: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .doc-info-grid,
  .doc-address-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.14in !important;
    width: 100% !important;
    margin: 0 0 0.16in 0 !important;
    padding: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .receipt-meta.doc-meta > div,
  .doc-meta > div,
  .receipt-meta > div,
  .doc-info-grid > div,
  .doc-address-grid > div {
    display: block !important;
    min-height: 0.48in !important;
    padding: 0.11in 0.13in !important;
    border: 1px solid #dce4df !important;
    border-radius: 0.10in !important;
    background: #fbfcfb !important;
    color: #111 !important;
    overflow: hidden !important;
  }

  .receipt-meta.doc-meta span,
  .doc-meta span,
  .receipt-meta span,
  .doc-info-grid span,
  .doc-address-grid h2,
  .doc-address-grid span {
    display: block !important;
    margin: 0 0 0.045in 0 !important;
    color: #66766d !important;
    font-size: 6.1pt !important;
    font-weight: 950 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    line-height: 1.1 !important;
  }

  .receipt-meta.doc-meta strong,
  .doc-meta strong,
  .receipt-meta strong,
  .doc-info-grid strong,
  .doc-address-grid strong {
    display: block !important;
    color: #111 !important;
    font-size: 8.7pt !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
    word-break: break-word !important;
  }

  .doc-info-grid p,
  .doc-address-grid p,
  .receipt-meta p,
  .doc-meta p {
    margin: 0.035in 0 !important;
    color: #3e5147 !important;
    font-size: 7.4pt !important;
    line-height: 1.30 !important;
  }

  .receipt table,
  .wholesale-doc table,
  .quote-doc table,
  .packing-list-doc table {
    width: 100% !important;
    table-layout: fixed !important;
    margin: 0.08in 0 0 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid #dce4df !important;
    border-radius: 0.10in !important;
    overflow: hidden !important;
    background: #fff !important;
    font-size: 7.8pt !important;
    page-break-inside: auto !important;
  }

  .receipt table thead,
  .wholesale-doc table thead,
  .quote-doc table thead,
  .packing-list-doc table thead {
    display: table-header-group !important;
  }

  .receipt table th,
  .wholesale-doc table th,
  .quote-doc table th,
  .packing-list-doc table th {
    padding: 0.075in 0.085in !important;
    border: 0 !important;
    background: #08366f !important;
    color: #fff !important;
    font-size: 6.5pt !important;
    font-weight: 950 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    line-height: 1.1 !important;
    white-space: normal !important;
  }

  .receipt table td,
  .wholesale-doc table td,
  .quote-doc table td,
  .packing-list-doc table td {
    padding: 0.075in 0.085in !important;
    border-bottom: 1px solid #e8eee9 !important;
    color: #111 !important;
    font-size: 7.6pt !important;
    line-height: 1.30 !important;
    vertical-align: top !important;
    word-break: break-word !important;
  }

  .receipt table tr,
  .wholesale-doc table tr,
  .quote-doc table tr,
  .packing-list-doc table tr {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .receipt table tbody tr:nth-child(even) td,
  .wholesale-doc table tbody tr:nth-child(even) td,
  .quote-doc table tbody tr:nth-child(even) td,
  .packing-list-doc table tbody tr:nth-child(even) td {
    background: #fbfcfb !important;
  }

  .receipt table tbody tr:last-child td,
  .wholesale-doc table tbody tr:last-child td,
  .quote-doc table tbody tr:last-child td,
  .packing-list-doc table tbody tr:last-child td {
    border-bottom: 0 !important;
  }

  .receipt-item-name {
    color: #111 !important;
    font-weight: 850 !important;
  }

  .receipt-totals {
    display: block !important;
    width: 2.85in !important;
    max-width: 2.85in !important;
    margin: 0.16in 0 0 auto !important;
    padding: 0.10in 0.13in !important;
    border: 1px solid #dce4df !important;
    border-radius: 0.12in !important;
    background: #fbfcfb !important;
    color: #111 !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .receipt-totals > div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 0.18in !important;
    padding: 0.045in 0 !important;
    border-bottom: 1px solid #e8eee9 !important;
    color: #46534d !important;
    font-size: 7.6pt !important;
    line-height: 1.2 !important;
  }

  .receipt-totals > div:last-child {
    border-bottom: 0 !important;
  }

  .receipt-totals span {
    font-weight: 500 !important;
  }

  .receipt-totals strong {
    color: #111 !important;
    font-weight: 900 !important;
  }

  .receipt-totals .grand {
    margin: 0.04in 0 !important;
    padding: 0.07in 0 !important;
    border-top: 2px solid #111 !important;
    border-bottom: 2px solid #111 !important;
    color: #111 !important;
    font-size: 9.5pt !important;
  }

  .receipt-totals .grand strong {
    font-size: 9.8pt !important;
  }

  .payment-instructions-box {
    display: block !important;
    margin: 0.16in 0 0.10in 0 !important;
    padding: 0.12in 0.14in !important;
    border: 1px solid #dce4df !important;
    border-radius: 0.12in !important;
    background: #fbfcfb !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .payment-instructions-box h2 {
    margin: 0 0 0.055in 0 !important;
    color: #111 !important;
    font-size: 7.2pt !important;
    font-weight: 950 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  .payment-instructions-box p {
    margin: 0.035in 0 !important;
    color: #3e5147 !important;
    font-size: 7.3pt !important;
    line-height: 1.28 !important;
  }

  .payment-instructions-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.06in !important;
    margin: 0.08in 0 !important;
  }

  .payment-instructions-grid div {
    display: block !important;
    padding: 0.06in 0.075in !important;
    border: 1px solid #e1e8e3 !important;
    border-radius: 0.07in !important;
    background: #fff !important;
  }

  .payment-instructions-grid span {
    display: block !important;
    margin: 0 0 0.025in 0 !important;
    color: #66766d !important;
    font-size: 5.8pt !important;
    font-weight: 950 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  .payment-instructions-grid strong {
    display: block !important;
    color: #111 !important;
    font-size: 7.2pt !important;
    font-weight: 850 !important;
    word-break: break-word !important;
  }

  .packing-summary,
  .signature-grid {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .receipt footer {
    margin-top: 0.12in !important;
    padding-top: 0.09in !important;
    border-top: 1px dashed #d2dad5 !important;
    color: #5a685f !important;
    font-size: 7.2pt !important;
    text-align: center !important;
  }

  .receipt-status {
    right: 0.18in !important;
    top: 0.18in !important;
    font-size: 13pt !important;
    z-index: 5 !important;
  }

  .tax-exempt-line strong {
    color: #0f5132 !important;
  }
}


/* =========================================================
   v2.9.8 Invoice One Page Payment Layout
   Moves bank payment instructions beside totals to use the blank left area.
   Must stay after v2.9.7 print overrides.
   ========================================================= */
.invoice-payment-total-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,350px);
  gap:18px;
  align-items:start;
  margin:18px 0 10px;
  page-break-inside:avoid;
  break-inside:avoid;
}
.invoice-payment-total-row .payment-instructions-box{
  margin:0!important;
  height:100%;
}
.invoice-payment-total-row .receipt-totals{
  margin:0 0 0 auto!important;
}
.invoice-payment-col,
.invoice-totals-col{
  min-width:0;
}
@media print{
  .invoice-payment-total-row{
    display:grid!important;
    grid-template-columns:1fr 2.85in!important;
    gap:.16in!important;
    align-items:start!important;
    width:100%!important;
    margin:.14in 0 .06in!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }
  .invoice-payment-col,
  .invoice-totals-col{
    min-width:0!important;
    width:auto!important;
  }
  .invoice-payment-total-row .payment-instructions-box{
    margin:0!important;
    padding:.09in .10in!important;
    min-height:auto!important;
    height:auto!important;
  }
  .invoice-payment-total-row .payment-instructions-box h2{
    font-size:6.7pt!important;
    margin-bottom:.035in!important;
  }
  .invoice-payment-total-row .payment-instructions-box p{
    font-size:6.7pt!important;
    line-height:1.22!important;
    margin:.025in 0!important;
  }
  .invoice-payment-total-row .payment-instructions-grid{
    display:grid!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:.045in!important;
    margin:.055in 0!important;
  }
  .invoice-payment-total-row .payment-instructions-grid div{
    padding:.045in .055in!important;
    border-radius:.055in!important;
  }
  .invoice-payment-total-row .payment-instructions-grid span{
    font-size:5.1pt!important;
    margin-bottom:.015in!important;
  }
  .invoice-payment-total-row .payment-instructions-grid strong{
    font-size:6.5pt!important;
    line-height:1.18!important;
  }
  .invoice-payment-total-row .payment-instructions-note{
    font-size:6.5pt!important;
    line-height:1.22!important;
  }
  .invoice-payment-total-row .receipt-totals{
    width:2.85in!important;
    max-width:2.85in!important;
    margin:0!important;
    padding:.085in .11in!important;
  }
  .invoice-payment-total-row .receipt-totals>div{
    padding:.035in 0!important;
    font-size:7.2pt!important;
  }
  .invoice-payment-total-row .receipt-totals .grand{
    padding:.055in 0!important;
    font-size:8.8pt!important;
  }
  .invoice-payment-total-row + footer{
    margin-top:.06in!important;
    padding-top:.06in!important;
  }
}
@media(max-width:760px){
  .invoice-payment-total-row{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   v2.9.9 Blue UI + PWA Tablet Ready
   Replaces green environment with a professional blue visual system.
   ========================================================= */
:root{
  --bg:#f4f8ff!important;
  --bg-elevated:#f8fbff!important;
  --panel:#ffffff!important;
  --panel-soft:#f5f9ff!important;
  --panel-strong:#e7f0ff!important;
  --text:#102033!important;
  --text-soft:#263b56!important;
  --muted:#6b7b91!important;
  --line:#dbe6f4!important;
  --line-strong:#c7d7eb!important;
  --primary:#0b4ea2!important;
  --primary-dark:#08366f!important;
  --primary-light:#e5f0ff!important;
  --primary-faint:#f0f6ff!important;
  --accent:#f2b705!important;
  --accent-dark:#b88400!important;
  --accent-light:#fff4cc!important;
  --success:#16794e!important;
  --success-light:#e6f6ee!important;
  --danger:#c8233a!important;
  --danger-light:#fdecef!important;
  --warning:#b66d00!important;
  --warning-light:#fff2d8!important;
  --info:#1769c2!important;
  --info-light:#e8f3ff!important;
  --shadow-sm:0 5px 18px rgba(9,58,118,.055)!important;
  --shadow-md:0 18px 46px rgba(9,58,118,.10)!important;
  --shadow-lg:0 30px 90px rgba(5,38,78,.18)!important;
}
html[data-theme="dark"]{
  --bg:#071223!important;
  --bg-elevated:#0a1b33!important;
  --panel:#0d2341!important;
  --panel-soft:#0a1b33!important;
  --panel-strong:#12355f!important;
  --text:#f2f7ff!important;
  --text-soft:#d8e8ff!important;
  --muted:#9db4cf!important;
  --line:#203d61!important;
  --line-strong:#2b507b!important;
  --primary:#64a8ff!important;
  --primary-dark:#2f7ee8!important;
  --primary-light:#11345b!important;
  --primary-faint:#0d2848!important;
  --accent:#ffd45c!important;
  --accent-dark:#e6b330!important;
  --accent-light:#3a3014!important;
  --success:#72d59b!important;
  --success-light:#143b29!important;
  --danger:#ff7d8d!important;
  --danger-light:#3c1d26!important;
  --warning:#ffc56d!important;
  --warning-light:#3e2b13!important;
  --info:#8ec4ff!important;
  --info-light:#132f52!important;
  --shadow-sm:0 5px 20px rgba(0,0,0,.20)!important;
  --shadow-md:0 20px 50px rgba(0,0,0,.28)!important;
  --shadow-lg:0 34px 100px rgba(0,0,0,.38)!important;
}
.sidebar{
  background:linear-gradient(180deg,#071d3b 0%,#0b4ea2 58%,#08366f 100%)!important;
}
.sidebar a.active,
.sidebar a:hover{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.20)!important;
}
.topbar,
.panel,
.stat-card,
.form-panel{
  border-color:var(--line)!important;
}
.btn-primary,
.premium-complete-sale-btn,
.pos-bottom-checkout-btn,
.premium-add-cart{
  background:linear-gradient(135deg,#0b4ea2,#1769c2)!important;
  border-color:#1769c2!important;
  color:#fff!important;
  box-shadow:0 18px 40px rgba(11,78,162,.22)!important;
}
.btn-primary:hover,
.premium-complete-sale-btn:hover,
.pos-bottom-checkout-btn:hover,
.premium-add-cart:hover{
  box-shadow:0 24px 60px rgba(11,78,162,.32)!important;
}
.badge-info,
.stock-pill,
.product-box-chip{
  background:color-mix(in srgb,var(--primary) 12%,transparent)!important;
  color:var(--primary)!important;
  border-color:color-mix(in srgb,var(--primary) 28%,transparent)!important;
}
.product-shop-card.is-selected,
.product-shop-card:hover{
  border-color:color-mix(in srgb,var(--primary) 52%,var(--line))!important;
  box-shadow:0 22px 60px rgba(11,78,162,.18)!important;
}
.product-current-price,
.cart-total,
.dynamic-cart-total,
.amount-strong{
  color:var(--primary)!important;
}
.pwa-install-button{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:linear-gradient(135deg,#0b4ea2,#1769c2);
  color:#fff;
  border:0;
}
.pwa-install-button::before{
  content:"📲";
}
.pwa-install-button[hidden]{
  display:none!important;
}
@media (display-mode:standalone){
  body::before{
    content:"";
    display:block;
    height:env(safe-area-inset-top);
    background:#0b4ea2;
  }
  .topbar{
    top:env(safe-area-inset-top);
  }
}
@media (pointer:coarse){
  .btn,
  button,
  input,
  select,
  textarea{
    min-height:44px;
  }
  .sidebar a{
    min-height:48px;
  }
}

/* Blue document print accents */
@media print{
  .receipt table th,
  .wholesale-doc table th,
  .quote-doc table th,
  .packing-list-doc table th{
    background:#08366f!important;
  }
  .doc-title-block{
    border-color:#b9d2f2!important;
    background:#eaf3ff!important;
  }
  .doc-title-block span{
    color:#0b4ea2!important;
  }
}


/* =========================================================
   v3.0.0 Email Invoice Button
   ========================================================= */
.email-invoice-panel .invoice-email-preview{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}
.invoice-email-preview>div{
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--panel-soft);
}
.invoice-email-preview span{
  display:block;
  margin-bottom:5px;
  color:var(--muted);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.invoice-email-preview strong,
.invoice-email-preview a{
  color:var(--text);
  font-weight:850;
  word-break:break-word;
}
@media(max-width:760px){
  .email-invoice-panel .invoice-email-preview{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   v3.0.1 SMTP Email Settings
   ========================================================= */
.smtp-test-panel .smtp-debug-box{
  margin-top:18px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--panel-soft);
}
.smtp-test-panel .smtp-debug-box h3{
  margin:0 0 10px;
}
.smtp-test-panel .smtp-debug-box pre{
  max-height:320px;
  overflow:auto;
  padding:14px;
  border-radius:12px;
  background:rgba(0,0,0,.06);
  color:var(--text);
  white-space:pre-wrap;
  word-break:break-word;
}
html[data-theme="dark"] .smtp-test-panel .smtp-debug-box pre{
  background:rgba(0,0,0,.28);
}
.check-card{
  display:flex!important;
  align-items:flex-start;
  gap:12px;
}
.check-card input[type="checkbox"]{
  width:20px;
  min-width:20px;
  height:20px;
  margin-top:3px;
}
.check-card span{
  display:block;
}
.check-card strong{
  display:block;
}
.check-card small{
  display:block;
  margin-top:4px;
}


/* =========================================================
   v3.0.6 Email Quotes
   ========================================================= */
.email-quote-panel .invoice-email-preview,
.email-invoice-panel .invoice-email-preview{
  align-items:stretch;
}


/* =========================================================
   v3.0.7 Ultra Premium Modern UI
   High-end visual layer for dashboard, POS, quotes, invoices and PWA tablet.
   Screen only. Print/PDF document formatting remains protected.
   ========================================================= */
@media screen{
  :root{
    --bg:#eef4ff!important;
    --bg-elevated:#f7fbff!important;
    --panel:#ffffff!important;
    --panel-soft:#f4f8ff!important;
    --panel-strong:#e6efff!important;
    --text:#07162b!important;
    --text-soft:#243653!important;
    --muted:#6b7a90!important;
    --line:#d7e3f2!important;
    --line-strong:#bed0e8!important;
    --primary:#0a4da3!important;
    --primary-dark:#062a5d!important;
    --primary-light:#dcecff!important;
    --primary-faint:#eef6ff!important;
    --accent:#d8a934!important;
    --accent-dark:#9b720d!important;
    --accent-light:#fff2c8!important;
    --shadow-sm:0 8px 24px rgba(3,24,62,.08)!important;
    --shadow-md:0 22px 60px rgba(3,24,62,.13)!important;
    --shadow-lg:0 36px 110px rgba(3,24,62,.22)!important;
    --luxury-navy:#06142b;
    --luxury-blue:#0a4da3;
    --luxury-electric:#2b82ff;
    --luxury-gold:#d8a934;
    --luxury-ice:#eef6ff;
    --glass-bg:rgba(255,255,255,.72);
    --glass-line:rgba(190,208,232,.78);
  }

  html[data-theme="dark"]{
    --bg:#030917!important;
    --bg-elevated:#07101f!important;
    --panel:#09182d!important;
    --panel-soft:#071427!important;
    --panel-strong:#0f2a4d!important;
    --text:#f5f9ff!important;
    --text-soft:#dce9ff!important;
    --muted:#9fb2cc!important;
    --line:#1d3b63!important;
    --line-strong:#2c5688!important;
    --primary:#69adff!important;
    --primary-dark:#2c79e8!important;
    --primary-light:#123761!important;
    --primary-faint:#0b2544!important;
    --accent:#ffd76b!important;
    --accent-dark:#d6a935!important;
    --accent-light:#362a0e!important;
    --glass-bg:rgba(8,24,45,.74);
    --glass-line:rgba(80,126,184,.36);
    --shadow-sm:0 8px 26px rgba(0,0,0,.24)!important;
    --shadow-md:0 24px 70px rgba(0,0,0,.34)!important;
    --shadow-lg:0 42px 120px rgba(0,0,0,.48)!important;
  }

  body.premium-ui{
    background:
      radial-gradient(circle at 10% -10%, color-mix(in srgb,var(--primary) 22%,transparent) 0, transparent 35rem),
      radial-gradient(circle at 80% 0%, color-mix(in srgb,var(--accent) 19%,transparent) 0, transparent 28rem),
      linear-gradient(135deg,var(--bg) 0%,var(--bg-elevated) 48%,color-mix(in srgb,var(--primary-faint) 72%,var(--bg)) 100%)!important;
    background-attachment:fixed;
  }

  body.premium-ui::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background:
      linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
      linear-gradient(0deg,rgba(255,255,255,.028) 1px,transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.70),transparent 72%);
    z-index:-1;
  }

  .app-shell{
    isolation:isolate;
  }

  .main{
    background:
      radial-gradient(circle at 92% 4%, color-mix(in srgb,var(--primary) 14%,transparent), transparent 25rem),
      radial-gradient(circle at 12% 92%, color-mix(in srgb,var(--accent) 11%,transparent), transparent 24rem)!important;
  }

  .content{
    max-width:1740px!important;
    padding:28px!important;
  }

  .sidebar{
    background:
      linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 18%),
      radial-gradient(circle at 50% 0%,rgba(216,169,52,.20),transparent 18rem),
      linear-gradient(180deg,#020b19 0%,#06142b 46%,#082a56 100%)!important;
    border-right:1px solid rgba(255,255,255,.10)!important;
    box-shadow:26px 0 70px rgba(0,0,0,.32)!important;
  }

  .brand-wrap{
    padding-top:22px!important;
  }

  .brand{
    border:1px solid rgba(255,255,255,.12)!important;
    background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 20px 50px rgba(0,0,0,.24)!important;
    backdrop-filter:blur(18px);
  }

  .brand-mark{
    background:linear-gradient(145deg,#fff,#dcecff)!important;
    border:1px solid rgba(255,255,255,.55)!important;
    box-shadow:0 18px 45px rgba(0,0,0,.24),0 0 0 6px rgba(255,255,255,.07)!important;
  }

  .brand-copy strong{
    letter-spacing:.015em!important;
  }

  .brand-copy small,
  .nav-label{
    color:rgba(255,255,255,.58)!important;
  }

  .nav a{
    position:relative;
    border:1px solid transparent!important;
    border-radius:18px!important;
    color:rgba(244,248,255,.86)!important;
    transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
  }

  .nav a::before{
    content:"";
    position:absolute;
    inset:8px auto 8px 0;
    width:3px;
    border-radius:99px;
    background:linear-gradient(180deg,var(--luxury-gold),var(--luxury-electric));
    opacity:0;
    transform:scaleY(.55);
    transition:opacity .18s ease,transform .18s ease;
  }

  .nav a:hover{
    transform:translateX(3px);
    background:rgba(255,255,255,.10)!important;
    border-color:rgba(255,255,255,.13)!important;
    box-shadow:0 14px 35px rgba(0,0,0,.18)!important;
  }

  .nav a.active{
    background:linear-gradient(135deg,rgba(43,130,255,.28),rgba(216,169,52,.14))!important;
    border-color:rgba(255,255,255,.20)!important;
    box-shadow:0 20px 50px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.10)!important;
  }

  .nav a.active::before{
    opacity:1;
    transform:scaleY(1);
  }

  .nav-primary{
    background:linear-gradient(135deg,rgba(216,169,52,.25),rgba(43,130,255,.26))!important;
    border-color:rgba(255,255,255,.18)!important;
  }

  .sidebar-user{
    margin:16px!important;
    border:1px solid rgba(255,255,255,.13)!important;
    border-radius:22px!important;
    background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.04))!important;
    box-shadow:0 18px 48px rgba(0,0,0,.22)!important;
    backdrop-filter:blur(16px);
  }

  .user-avatar{
    background:linear-gradient(135deg,var(--luxury-gold),#ffe59b)!important;
    color:#07162b!important;
    box-shadow:0 10px 28px rgba(216,169,52,.35)!important;
  }

  .topbar{
    margin:18px 24px 0!important;
    border:1px solid var(--glass-line)!important;
    border-radius:28px!important;
    background:
      linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,255,255,.48)),
      radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--primary) 11%,transparent),transparent 18rem)!important;
    box-shadow:var(--shadow-md)!important;
    backdrop-filter:blur(24px) saturate(1.35);
  }

  html[data-theme="dark"] .topbar{
    background:
      linear-gradient(135deg,rgba(8,24,45,.82),rgba(6,17,34,.64)),
      radial-gradient(circle at 100% 0%,rgba(105,173,255,.18),transparent 18rem)!important;
  }

  .page-heading .eyebrow{
    color:var(--accent)!important;
    font-weight:950!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
  }

  .page-heading h1{
    letter-spacing:-.045em!important;
    font-weight:950!important;
    text-wrap:balance;
  }

  .premium-edition-chip{
    background:linear-gradient(135deg,var(--luxury-gold),#ffe49a)!important;
    color:#06142b!important;
    border:0!important;
    box-shadow:0 14px 32px rgba(216,169,52,.28)!important;
    font-weight:950!important;
  }

  .date-chip,
  .icon-btn,
  .pwa-install-button{
    border:1px solid var(--glass-line)!important;
    background:var(--glass-bg)!important;
    box-shadow:var(--shadow-sm)!important;
    backdrop-filter:blur(16px);
  }

  .icon-btn:hover,
  .pwa-install-button:hover{
    transform:translateY(-2px);
    box-shadow:var(--shadow-md)!important;
  }

  .btn{
    border-radius:15px!important;
    font-weight:900!important;
    letter-spacing:.005em;
    transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
  }

  .btn:hover{
    transform:translateY(-2px);
  }

  .btn-primary,
  .top-sale,
  .premium-complete-sale-btn,
  .pos-bottom-checkout-btn,
  .premium-add-cart,
  .paypal-card-direct-button{
    background:
      linear-gradient(135deg,#0a4da3 0%,#2b82ff 54%,#65b3ff 100%)!important;
    border:0!important;
    color:#fff!important;
    box-shadow:0 18px 44px rgba(43,130,255,.32), inset 0 1px 0 rgba(255,255,255,.20)!important;
  }

  .btn-primary:hover,
  .top-sale:hover,
  .premium-complete-sale-btn:hover,
  .pos-bottom-checkout-btn:hover,
  .premium-add-cart:hover,
  .paypal-card-direct-button:hover{
    box-shadow:0 26px 70px rgba(43,130,255,.42), inset 0 1px 0 rgba(255,255,255,.22)!important;
  }

  .btn-danger{
    background:linear-gradient(135deg,#b4233c,#f05a70)!important;
    border:0!important;
    color:#fff!important;
  }

  .panel,
  .stat-card,
  .form-panel,
  .table-wrap,
  .cart-panel,
  .pos-cart,
  .premium-checkout-card,
  .smtp-test-panel,
  .email-invoice-panel{
    border:1px solid var(--glass-line)!important;
    background:
      linear-gradient(145deg,var(--glass-bg),color-mix(in srgb,var(--panel-soft) 78%,transparent))!important;
    box-shadow:var(--shadow-md)!important;
    backdrop-filter:blur(22px) saturate(1.18);
  }

  .panel,
  .form-panel{
    border-radius:28px!important;
  }

  .panel-head{
    border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)!important;
  }

  .panel-head h2,
  .stat-card strong{
    letter-spacing:-.035em!important;
    font-weight:950!important;
  }

  .stat-grid{
    gap:18px!important;
  }

  .stat-card{
    position:relative;
    overflow:hidden;
    border-radius:26px!important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
  }

  .stat-card::after{
    content:"";
    position:absolute;
    inset:-40% -20% auto auto;
    width:150px;
    height:150px;
    border-radius:50%;
    background:radial-gradient(circle,color-mix(in srgb,var(--primary) 22%,transparent),transparent 68%);
    pointer-events:none;
  }

  .stat-card:hover{
    transform:translateY(-4px);
    border-color:color-mix(in srgb,var(--primary) 34%,var(--line))!important;
    box-shadow:var(--shadow-lg)!important;
  }

  .stat-card span,
  .form-section h2 + p,
  .panel-head p{
    color:var(--muted)!important;
  }

  .toolbar{
    border:1px solid var(--glass-line)!important;
    border-radius:26px!important;
    padding:14px!important;
    background:linear-gradient(145deg,var(--glass-bg),color-mix(in srgb,var(--panel-soft) 75%,transparent))!important;
    box-shadow:var(--shadow-sm)!important;
    backdrop-filter:blur(18px);
  }

  input,
  select,
  textarea{
    border:1px solid color-mix(in srgb,var(--line-strong) 88%,transparent)!important;
    border-radius:15px!important;
    background:color-mix(in srgb,var(--panel) 86%,transparent)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18)!important;
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
  }

  input:focus,
  select:focus,
  textarea:focus{
    border-color:color-mix(in srgb,var(--primary) 72%,var(--line))!important;
    box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 14%,transparent), inset 0 1px 0 rgba(255,255,255,.22)!important;
  }

  table{
    border-collapse:separate!important;
    border-spacing:0!important;
  }

  thead th{
    background:
      linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--panel-soft)),color-mix(in srgb,var(--primary) 6%,var(--panel)))!important;
    color:var(--text-soft)!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    border-bottom:1px solid var(--line)!important;
  }

  tbody tr{
    transition:background .14s ease,transform .14s ease,box-shadow .14s ease!important;
  }

  tbody tr:hover{
    background:color-mix(in srgb,var(--primary) 7%,transparent)!important;
  }

  .badge{
    border-radius:999px!important;
    font-weight:950!important;
    letter-spacing:.03em!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
  }

  .alert{
    border-radius:20px!important;
    border:1px solid var(--glass-line)!important;
    box-shadow:var(--shadow-sm)!important;
    backdrop-filter:blur(18px);
  }

  .premium-pos-workbench,
  .pos-layout{
    gap:22px!important;
  }

  .premium-pos-products,
  .pos-products{
    border-radius:30px!important;
    overflow:hidden;
  }

  .premium-scan-zone,
  .product-search,
  .pos-help,
  .quick-products-head{
    border-color:var(--glass-line)!important;
    background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 78%,transparent),color-mix(in srgb,var(--panel-soft) 86%,transparent))!important;
    box-shadow:var(--shadow-sm)!important;
    backdrop-filter:blur(18px);
  }

  .scan-input{
    border-radius:20px!important;
    background:linear-gradient(145deg,var(--panel),var(--panel-soft))!important;
    border:1px solid var(--line)!important;
  }

  .product-shop-grid{
    gap:18px!important;
  }

  .product-shop-card{
    position:relative;
    border-radius:26px!important;
    border:1px solid var(--glass-line)!important;
    background:
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 82%,transparent))!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
  }

  .product-shop-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      radial-gradient(circle at 75% 0%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 42%),
      linear-gradient(180deg,rgba(255,255,255,.08),transparent 45%);
    opacity:0;
    transition:opacity .18s ease;
    pointer-events:none;
  }

  .product-shop-card:hover,
  .product-shop-card:focus-visible,
  .product-shop-card.is-selected{
    transform:translateY(-5px);
    border-color:color-mix(in srgb,var(--primary) 54%,var(--line))!important;
    box-shadow:0 26px 74px color-mix(in srgb,var(--primary) 20%,transparent)!important;
  }

  .product-shop-card:hover::before,
  .product-shop-card:focus-visible::before,
  .product-shop-card.is-selected::before{
    opacity:1;
  }

  .product-shop-photo{
    border-radius:22px!important;
    background:
      linear-gradient(145deg,#fff,var(--primary-faint))!important;
    border:1px solid color-mix(in srgb,var(--line) 80%,transparent)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  }

  html[data-theme="dark"] .product-shop-photo{
    background:linear-gradient(145deg,#132f52,#09182d)!important;
  }

  .product-shop-title{
    font-weight:950!important;
    letter-spacing:-.015em!important;
  }

  .product-current-price{
    font-size:1.22rem!important;
    font-weight:950!important;
    color:var(--primary)!important;
  }

  .product-box-chip,
  .stock-pill{
    border-radius:999px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
  }

  .out-of-stock-pill{
    background:color-mix(in srgb,var(--danger) 12%,transparent)!important;
    color:var(--danger)!important;
    border-color:color-mix(in srgb,var(--danger) 28%,transparent)!important;
  }

  .product-card-qty{
    border-radius:999px!important;
    background:color-mix(in srgb,var(--panel-soft) 86%,transparent)!important;
    border:1px solid var(--line)!important;
  }

  .product-card-qty button{
    border-radius:999px!important;
  }

  .pos-bottom-checkout-bar{
    border-top:1px solid var(--glass-line)!important;
    background:linear-gradient(145deg,var(--glass-bg),color-mix(in srgb,var(--panel-soft) 76%,transparent))!important;
    box-shadow:0 -22px 70px rgba(3,24,62,.12)!important;
    backdrop-filter:blur(24px);
  }

  .premium-complete-sale-btn{
    min-height:58px!important;
    font-size:1.03rem!important;
  }

  .receipt-actions.no-print{
    border-radius:24px!important;
    background:var(--glass-bg)!important;
    border:1px solid var(--glass-line)!important;
    box-shadow:var(--shadow-md)!important;
    backdrop-filter:blur(22px);
  }

  .invoice-email-preview>div{
    border-radius:20px!important;
    background:
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 82%,transparent),color-mix(in srgb,var(--panel-soft) 88%,transparent))!important;
    box-shadow:var(--shadow-sm)!important;
  }

  .login-shell,
  .lock-shell,
  .mfa-shell{
    background:
      radial-gradient(circle at 18% 18%,rgba(216,169,52,.20),transparent 25rem),
      radial-gradient(circle at 82% 0%,rgba(43,130,255,.24),transparent 28rem),
      linear-gradient(135deg,#020b19,#06142b 55%,#082a56)!important;
  }

  .login-card,
  .lock-card,
  .mfa-card{
    border:1px solid rgba(255,255,255,.14)!important;
    background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(244,248,255,.76))!important;
    box-shadow:0 36px 110px rgba(0,0,0,.34)!important;
    backdrop-filter:blur(24px) saturate(1.25);
  }

  html[data-theme="dark"] .login-card,
  html[data-theme="dark"] .lock-card,
  html[data-theme="dark"] .mfa-card{
    background:linear-gradient(145deg,rgba(9,24,45,.90),rgba(7,16,31,.78))!important;
  }

  @media(max-width:980px){
    .content{
      padding:18px!important;
    }
    .topbar{
      margin:12px 12px 0!important;
      border-radius:22px!important;
    }
  }

  @media(max-width:760px){
    .topbar{
      align-items:flex-start!important;
      gap:12px!important;
    }
    .topbar-actions{
      width:100%;
      justify-content:flex-start!important;
      flex-wrap:wrap!important;
    }
    .stat-card,
    .panel,
    .form-panel{
      border-radius:22px!important;
    }
  }
}


/* =========================================================
   v3.0.9 Professional Core Structure + System Status
   ========================================================= */
@media screen{
  .system-status-summary .stat-card strong{
    font-size:2.15rem;
  }

  .system-status-panel{
    overflow:hidden;
  }

  .system-status-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:16px;
    padding:18px;
  }

  .system-check-card{
    position:relative;
    overflow:hidden;
    border:1px solid var(--glass-line,var(--line));
    border-radius:24px;
    padding:18px;
    background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 84%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
    box-shadow:var(--shadow-sm);
  }

  .system-check-card:after{
    content:"";
    position:absolute;
    inset:-60px -50px auto auto;
    width:150px;
    height:150px;
    border-radius:50%;
    background:radial-gradient(circle,color-mix(in srgb,var(--primary) 18%,transparent),transparent 68%);
    pointer-events:none;
  }

  .system-check-head{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:12px;
  }

  .system-check-head strong{
    flex:1;
    font-weight:950;
    letter-spacing:-.015em;
  }

  .system-check-head em{
    font-size:.65rem;
    font-style:normal;
    font-weight:950;
    letter-spacing:.12em;
    color:var(--muted);
  }

  .system-check-dot{
    width:12px;
    height:12px;
    border-radius:999px;
    background:var(--info);
    box-shadow:0 0 0 5px color-mix(in srgb,var(--info) 16%,transparent);
  }

  .system-check-card.status-ok .system-check-dot{
    background:var(--success);
    box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 16%,transparent);
  }

  .system-check-card.status-warning .system-check-dot{
    background:var(--warning);
    box-shadow:0 0 0 5px color-mix(in srgb,var(--warning) 16%,transparent);
  }

  .system-check-card.status-danger .system-check-dot{
    background:var(--danger);
    box-shadow:0 0 0 5px color-mix(in srgb,var(--danger) 16%,transparent);
  }

  .system-check-value{
    font-size:1.12rem;
    font-weight:950;
    color:var(--text);
    word-break:break-word;
  }

  .system-check-card p{
    margin:8px 0 0;
    color:var(--muted);
    font-size:.88rem;
    line-height:1.45;
    word-break:break-word;
  }

  .module-map-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:14px;
    padding:18px;
  }

  .module-map-card{
    border:1px solid var(--line);
    border-radius:20px;
    padding:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .module-map-card span{
    display:block;
    color:var(--primary);
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .module-map-card p{
    margin:0;
    color:var(--text-soft);
    line-height:1.45;
  }

  .extension-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:12px;
    padding:18px;
  }

  .extension-pill{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    border:1px solid var(--line);
    border-radius:999px;
    padding:12px 14px;
    background:var(--panel-soft);
  }

  .extension-pill strong{
    font-size:.9rem;
  }

  .extension-pill span{
    font-size:.72rem;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.08em;
  }

  .extension-pill.is-loaded span{
    color:var(--success);
  }

  .extension-pill.is-missing span{
    color:var(--danger);
  }
}


/* =========================================================
   v3.1.0 Advanced System Status + Health Check
   ========================================================= */
@media screen{
  .health-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .health-score-card{
    display:grid;
    grid-template-columns:220px 1fr;
    gap:26px;
    align-items:center;
    padding:28px;
    background:
      radial-gradient(circle at 8% 18%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .health-score-ring{
    --angle:calc(var(--score) * 3.6deg);
    width:190px;
    height:190px;
    border-radius:999px;
    display:grid;
    place-items:center;
    text-align:center;
    background:
      radial-gradient(circle closest-side,var(--panel) 71%,transparent 72% 100%),
      conic-gradient(var(--success) var(--angle),color-mix(in srgb,var(--line) 70%,transparent) 0);
    box-shadow:var(--shadow-md);
    border:1px solid var(--line);
  }

  .health-score-warning .health-score-ring{
    background:
      radial-gradient(circle closest-side,var(--panel) 71%,transparent 72% 100%),
      conic-gradient(var(--warning) var(--angle),color-mix(in srgb,var(--line) 70%,transparent) 0);
  }

  .health-score-danger .health-score-ring{
    background:
      radial-gradient(circle closest-side,var(--panel) 71%,transparent 72% 100%),
      conic-gradient(var(--danger) var(--angle),color-mix(in srgb,var(--line) 70%,transparent) 0);
  }

  .health-score-ring strong{
    display:block;
    font-size:2.45rem;
    font-weight:950;
    letter-spacing:-.06em;
  }

  .health-score-ring span{
    display:block;
    margin-top:-54px;
    color:var(--muted);
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
  }

  .health-score-copy h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .health-score-copy p{
    max-width:760px;
    color:var(--text-soft);
    line-height:1.65;
    margin:0;
  }

  .health-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:18px;
  }

  .recommendation-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .recommendation-item{
    display:flex;
    align-items:flex-start;
    gap:12px;
    border:1px solid var(--line);
    border-radius:18px;
    padding:13px 15px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .recommendation-item span{
    flex:0 0 28px;
    width:28px;
    height:28px;
    border-radius:999px;
    display:grid;
    place-items:center;
    color:#fff;
    background:linear-gradient(135deg,var(--primary),var(--info));
    font-weight:950;
  }

  .recommendation-item p{
    margin:3px 0 0;
    color:var(--text-soft);
    line-height:1.45;
  }

  .environment-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
    gap:14px;
    padding:18px;
  }

  .environment-card{
    border:1px solid var(--line);
    border-radius:20px;
    padding:15px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .environment-card span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .environment-card strong{
    display:block;
    color:var(--text);
    font-size:.94rem;
    word-break:break-word;
    line-height:1.35;
  }

  @media(max-width:840px){
    .health-score-card{
      grid-template-columns:1fr;
      justify-items:start;
    }
    .health-score-ring{
      width:160px;
      height:160px;
    }
    .health-score-ring span{
      margin-top:-42px;
    }
  }
}


/* =========================================================
   v3.1.1 Backup & Restore Center
   ========================================================= */
@media screen{
  .backup-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .backup-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:22px;
    padding:28px;
    background:
      radial-gradient(circle at 8% 20%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 22rem),
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .backup-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .backup-hero p{
    max-width:760px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .backup-hero-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(130px,1fr));
    gap:12px;
    min-width:320px;
  }

  .backup-hero-stats div{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-sm);
  }

  .backup-hero-stats span{
    display:block;
    color:var(--muted);
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .backup-hero-stats strong{
    display:block;
    font-size:1.7rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .backup-action-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-bottom:18px;
  }

  .backup-action-form{
    padding:18px;
  }

  .backup-table-wrap table td{
    vertical-align:top;
  }

  .backup-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    min-width:260px;
  }

  .backup-danger-details{
    position:relative;
  }

  .backup-danger-details summary{
    list-style:none;
    cursor:pointer;
  }

  .backup-danger-details summary::-webkit-details-marker{
    display:none;
  }

  .backup-danger-details[open]{
    width:100%;
  }

  .backup-danger-details form{
    margin-top:8px;
    padding:12px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
    min-width:250px;
  }

  .backup-danger-details label{
    display:block;
    font-weight:850;
    color:var(--text-soft);
    margin-bottom:8px;
  }

  .backup-danger-details input{
    margin-top:6px;
    width:100%;
  }

  .backup-notes{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:14px;
    padding:18px;
  }

  .backup-notes div{
    border:1px solid var(--line);
    border-radius:20px;
    padding:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .backup-notes strong{
    display:block;
    margin-bottom:8px;
    color:var(--text);
    font-weight:950;
  }

  .backup-notes p{
    margin:0;
    color:var(--muted);
    line-height:1.5;
  }

  @media(max-width:940px){
    .backup-hero{
      flex-direction:column;
    }
    .backup-hero-stats{
      min-width:0;
    }
    .backup-action-grid{
      grid-template-columns:1fr;
    }
  }
}


/* =========================================================
   v3.1.2 Email Queue / Background Sending
   ========================================================= */
@media screen{
  .email-queue-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .email-queue-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:22px;
    padding:28px;
    background:
      radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--primary) 17%,transparent),transparent 24rem),
      radial-gradient(circle at 86% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .email-queue-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .email-queue-hero p{
    max-width:780px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .email-queue-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(118px,1fr));
    gap:12px;
    min-width:330px;
  }

  .email-queue-stats div{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-sm);
  }

  .email-queue-stats span{
    display:block;
    color:var(--muted);
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .email-queue-stats strong{
    display:block;
    font-size:1.7rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .email-queue-action-grid{
    display:grid;
    grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr);
    gap:18px;
    margin-bottom:18px;
  }

  .email-queue-action-form,
  .email-queue-cron-box{
    padding:18px;
  }

  .email-queue-action-form label{
    display:block;
    margin-bottom:12px;
    font-weight:850;
  }

  .email-queue-cron-box code{
    display:block;
    white-space:normal;
    word-break:break-all;
    border:1px solid var(--line);
    border-radius:16px;
    padding:14px;
    background:var(--panel-soft);
  }

  .email-queue-cron-box small{
    display:block;
    margin-top:10px;
    color:var(--muted);
    line-height:1.5;
    word-break:break-word;
  }

  .email-queue-table-wrap table td{
    vertical-align:top;
  }

  .email-queue-danger-details{
    position:relative;
  }

  .email-queue-danger-details summary{
    list-style:none;
    cursor:pointer;
  }

  .email-queue-danger-details summary::-webkit-details-marker{
    display:none;
  }

  .email-queue-danger-details[open]{
    width:100%;
  }

  .email-queue-danger-details form{
    margin-top:8px;
    padding:12px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
    min-width:250px;
  }

  .email-queue-danger-details label{
    display:block;
    font-weight:850;
    color:var(--text-soft);
    margin-bottom:8px;
  }

  .email-queue-danger-details input{
    margin-top:6px;
    width:100%;
  }

  .email-queue-notes{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:14px;
    padding:18px;
  }

  .email-queue-notes div{
    border:1px solid var(--line);
    border-radius:20px;
    padding:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .email-queue-notes strong{
    display:block;
    margin-bottom:8px;
    color:var(--text);
    font-weight:950;
  }

  .email-queue-notes p{
    margin:0;
    color:var(--muted);
    line-height:1.5;
  }

  @media(max-width:940px){
    .email-queue-hero{
      flex-direction:column;
    }
    .email-queue-stats{
      min-width:0;
    }
    .email-queue-action-grid{
      grid-template-columns:1fr;
    }
  }
}


/* =========================================================
   v3.1.3 Customer Activity Timeline
   ========================================================= */
@media screen{
  .customer-timeline-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .customer-timeline-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:22px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .customer-timeline-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .customer-timeline-hero p{
    max-width:780px;
    margin:0 0 8px;
    color:var(--text-soft);
    line-height:1.62;
  }

  .customer-timeline-hero small{
    display:block;
    color:var(--muted);
    line-height:1.5;
  }

  .customer-timeline-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
  }

  .customer-timeline-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(140px,1fr));
    gap:12px;
    min-width:360px;
  }

  .customer-timeline-stats div{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-sm);
  }

  .customer-timeline-stats span,
  .customer-snapshot-list span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .customer-timeline-stats strong{
    display:block;
    font-size:1.45rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .customer-timeline-filterbar{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    padding:16px;
  }

  .timeline-filter{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    border:1px solid var(--line);
    border-radius:999px;
    padding:10px 14px;
    color:var(--text-soft);
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
    font-weight:900;
  }

  .timeline-filter strong{
    display:inline-grid;
    place-items:center;
    min-width:28px;
    height:28px;
    padding:0 8px;
    border-radius:999px;
    background:color-mix(in srgb,var(--primary) 12%,transparent);
    color:var(--primary);
  }

  .timeline-filter.active{
    background:linear-gradient(135deg,var(--primary),var(--info));
    color:#fff;
    border-color:transparent;
  }

  .timeline-filter.active strong{
    background:rgba(255,255,255,.20);
    color:#fff;
  }

  .customer-timeline-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 330px;
    gap:18px;
  }

  .customer-timeline-list{
    position:relative;
    padding:18px;
  }

  .customer-timeline-list:before{
    content:"";
    position:absolute;
    top:30px;
    bottom:30px;
    left:43px;
    width:2px;
    background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 45%,transparent),color-mix(in srgb,var(--line) 75%,transparent));
  }

  .customer-timeline-item{
    position:relative;
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:14px;
    margin-bottom:16px;
  }

  .timeline-icon{
    position:relative;
    z-index:2;
    width:52px;
    height:52px;
    border-radius:18px;
    display:grid;
    place-items:center;
    border:1px solid var(--line);
    background:var(--panel);
    box-shadow:var(--shadow-sm);
    font-size:1.25rem;
  }

  .timeline-body{
    border:1px solid var(--line);
    border-radius:24px;
    padding:16px;
    background:linear-gradient(145deg,var(--panel),var(--panel-soft));
    box-shadow:var(--shadow-sm);
  }

  .timeline-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
  }

  .timeline-head span{
    display:block;
    color:var(--muted);
    font-size:.74rem;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.10em;
    margin-bottom:4px;
  }

  .timeline-head h3{
    margin:0;
    color:var(--text);
    font-size:1.08rem;
    letter-spacing:-.02em;
  }

  .timeline-meta{
    text-align:right;
    min-width:120px;
  }

  .timeline-meta strong{
    display:block;
    color:var(--primary);
    font-size:1.08rem;
    font-weight:950;
  }

  .timeline-meta em{
    display:inline-block;
    margin-top:6px;
    font-style:normal;
    font-size:.68rem;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
    border:1px solid var(--line);
    border-radius:999px;
    padding:5px 8px;
    color:var(--text-soft);
    background:var(--panel-soft);
  }

  .timeline-body p{
    margin:8px 0 0;
    color:var(--text-soft);
  }

  .timeline-body small{
    display:block;
    margin-top:8px;
    color:var(--muted);
    line-height:1.45;
    word-break:break-word;
  }

  .timeline-actions{
    margin-top:12px;
  }

  .timeline-type-invoice .timeline-icon{
    background:color-mix(in srgb,var(--accent) 14%,var(--panel));
  }

  .timeline-type-email .timeline-icon{
    background:color-mix(in srgb,var(--info) 14%,var(--panel));
  }

  .timeline-type-quote .timeline-icon{
    background:color-mix(in srgb,var(--primary) 13%,var(--panel));
  }

  .timeline-type-audit .timeline-icon{
    background:color-mix(in srgb,var(--muted) 13%,var(--panel));
  }

  .customer-timeline-empty{
    border:1px dashed var(--line);
    border-radius:22px;
    padding:24px;
    background:var(--panel-soft);
    text-align:center;
  }

  .customer-timeline-empty strong{
    display:block;
    font-size:1.1rem;
    margin-bottom:6px;
  }

  .customer-timeline-empty p{
    color:var(--muted);
    margin:0;
  }

  .customer-snapshot-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .customer-snapshot-list div{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .customer-snapshot-list strong{
    display:block;
    color:var(--text);
    font-size:1.08rem;
    font-weight:950;
    word-break:break-word;
  }

  @media(max-width:1040px){
    .customer-timeline-hero{
      flex-direction:column;
    }
    .customer-timeline-stats{
      min-width:0;
    }
    .customer-timeline-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:680px){
    .customer-timeline-stats{
      grid-template-columns:1fr;
    }
    .customer-timeline-item{
      grid-template-columns:42px minmax(0,1fr);
    }
    .timeline-icon{
      width:42px;
      height:42px;
      border-radius:14px;
      font-size:1rem;
    }
    .customer-timeline-list:before{
      left:38px;
    }
    .timeline-head{
      flex-direction:column;
    }
    .timeline-meta{
      text-align:left;
      min-width:0;
    }
  }
}


/* =========================================================
   v3.1.4 Advanced Reports Dashboard
   ========================================================= */
@media screen{
  .advanced-report-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .advanced-report-hero{
    display:flex;
    align-items:stretch;
    justify-content:space-between;
    gap:22px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .advanced-report-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .advanced-report-hero p{
    max-width:760px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .advanced-report-filter{
    min-width:420px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    align-content:center;
  }

  .advanced-report-filter .btn{
    justify-content:center;
  }

  .advanced-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px;
  }

  .advanced-kpi-card{
    border:1px solid var(--glass-line,var(--line));
    border-radius:24px;
    padding:18px;
    background:
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 9rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
    box-shadow:var(--shadow-md);
    overflow:hidden;
  }

  .advanced-kpi-card span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .advanced-kpi-card strong{
    display:block;
    font-size:clamp(1.3rem,2vw,2rem);
    font-weight:950;
    letter-spacing:-.055em;
  }

  .advanced-kpi-card small{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:10px;
    color:var(--muted);
    line-height:1.4;
  }

  .report-change{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:5px 8px;
    font-size:.72rem;
    font-weight:950;
    letter-spacing:.04em;
  }

  .report-change-up{
    color:var(--success);
    background:color-mix(in srgb,var(--success) 13%,transparent);
  }

  .report-change-down{
    color:var(--danger);
    background:color-mix(in srgb,var(--danger) 13%,transparent);
  }

  .report-change-neutral{
    color:var(--info);
    background:color-mix(in srgb,var(--info) 13%,transparent);
  }

  .advanced-report-layout{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-bottom:18px;
  }

  .advanced-bars{
    display:grid;
    gap:12px;
    padding:18px;
  }

  .advanced-bar-row{
    display:grid;
    grid-template-columns:120px minmax(0,1fr) 110px;
    gap:12px;
    align-items:center;
  }

  .advanced-bar-row>span{
    color:var(--text-soft);
    font-weight:850;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .advanced-bar-row>strong{
    text-align:right;
    font-weight:950;
  }

  .advanced-bar-track{
    height:12px;
    border-radius:999px;
    overflow:hidden;
    background:color-mix(in srgb,var(--line) 60%,transparent);
  }

  .advanced-bar-fill{
    height:100%;
    min-width:8px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--primary),var(--info));
    box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 24%,transparent);
  }

  .advanced-bar-fill.gold{
    background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 45%,var(--primary)));
  }

  .advanced-table-bar{
    width:100%;
    min-width:110px;
    height:10px;
    border-radius:999px;
    background:color-mix(in srgb,var(--line) 60%,transparent);
    overflow:hidden;
  }

  .advanced-table-bar span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,var(--primary),var(--accent));
  }

  .quote-report-grid,
  .operation-snapshot-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:18px;
  }

  .quote-report-grid div,
  .operation-snapshot-grid div{
    border:1px solid var(--line);
    border-radius:20px;
    padding:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .quote-report-grid span,
  .operation-snapshot-grid span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .quote-report-grid strong,
  .operation-snapshot-grid strong{
    display:block;
    font-size:1.25rem;
    font-weight:950;
    letter-spacing:-.035em;
  }

  .advanced-mini-list{
    display:grid;
    gap:8px;
    padding:0 18px 18px;
  }

  .advanced-mini-list div{
    display:flex;
    justify-content:space-between;
    gap:12px;
    border:1px solid var(--line);
    border-radius:16px;
    padding:11px 12px;
    background:var(--panel);
  }

  .advanced-mini-list span{
    color:var(--text-soft);
    font-weight:850;
  }

  .advanced-mini-list strong{
    font-weight:950;
  }

  @media(max-width:1280px){
    .advanced-kpi-grid{
      grid-template-columns:repeat(3,minmax(0,1fr));
    }
  }

  @media(max-width:980px){
    .advanced-report-hero{
      flex-direction:column;
    }
    .advanced-report-filter{
      min-width:0;
    }
    .advanced-report-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:720px){
    .advanced-kpi-grid{
      grid-template-columns:1fr;
    }
    .advanced-report-filter{
      grid-template-columns:1fr;
    }
    .advanced-bar-row{
      grid-template-columns:1fr;
      gap:6px;
    }
    .advanced-bar-row>strong{
      text-align:left;
    }
    .quote-report-grid,
    .operation-snapshot-grid{
      grid-template-columns:1fr;
    }
  }
}


/* =========================================================
   v3.1.5 Barcode Label Printing
   ========================================================= */
@media screen{
  .barcode-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .barcode-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:22px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .barcode-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .barcode-hero p{
    max-width:760px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .barcode-hero-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(140px,1fr));
    gap:12px;
    min-width:330px;
  }

  .barcode-hero-stats div{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-sm);
  }

  .barcode-hero-stats span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .barcode-hero-stats strong{
    display:block;
    font-size:1.75rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .barcode-label-form{
    padding:18px;
  }

  .barcode-controls{
    display:grid;
    grid-template-columns:2fr 1.4fr .8fr repeat(3,minmax(170px,1fr));
    gap:12px;
    align-items:end;
    margin-bottom:18px;
  }

  .barcode-product-picker{
    border:1px solid var(--line);
    border-radius:24px;
    overflow:hidden;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .barcode-picker-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    border-bottom:1px solid var(--line);
    background:color-mix(in srgb,var(--primary) 7%,transparent);
  }

  .barcode-picker-head strong{
    font-size:1.05rem;
    font-weight:950;
  }

  .barcode-product-grid{
    max-height:440px;
    overflow:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:12px;
    padding:14px;
  }

  .barcode-product-card{
    display:flex;
    gap:12px;
    align-items:flex-start;
    border:1px solid var(--line);
    border-radius:18px;
    padding:13px;
    background:var(--panel);
    box-shadow:var(--shadow-sm);
    cursor:pointer;
  }

  .barcode-product-card input{
    width:18px;
    height:18px;
    margin-top:3px;
  }

  .barcode-product-card strong{
    display:block;
    font-weight:950;
    color:var(--text);
    line-height:1.25;
  }

  .barcode-product-card small{
    display:block;
    color:var(--muted);
    line-height:1.35;
    margin-top:4px;
  }

  .barcode-product-card em{
    display:inline-block;
    margin-top:8px;
    font-style:normal;
    color:var(--primary);
    font-weight:950;
  }

  .barcode-preview-panel{
    margin-top:18px;
  }

  .barcode-empty{
    text-align:center;
    padding:28px;
  }

  .barcode-empty strong{
    display:block;
    font-size:1.1rem;
    margin-bottom:6px;
  }

  .barcode-empty p{
    margin:0;
    color:var(--muted);
  }

  .barcode-print-sheet{
    display:grid;
    gap:.08in;
    justify-content:center;
    background:#fff;
    padding:.25in;
    margin:18px auto;
    border:1px solid var(--line);
    border-radius:18px;
    box-shadow:var(--shadow-md);
    width:max-content;
    max-width:100%;
    overflow:auto;
  }

  .barcode-print-sheet.label-layout-5160{
    grid-template-columns:repeat(3,2.625in);
  }

  .barcode-print-sheet.label-layout-2x1{
    grid-template-columns:repeat(4,2in);
  }

  .barcode-print-sheet.label-layout-3x1{
    grid-template-columns:repeat(2,3in);
  }

  .barcode-label{
    width:2.625in;
    height:1in;
    padding:.07in .10in;
    border:1px dashed #d6d6d6;
    background:#fff;
    color:#000;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:.025in;
    overflow:hidden;
    page-break-inside:avoid;
  }

  .label-layout-2x1 .barcode-label{
    width:2in;
  }

  .label-layout-3x1 .barcode-label{
    width:3in;
  }

  .barcode-label-name{
    font-family:Arial,sans-serif;
    font-size:8.5pt;
    line-height:1.05;
    font-weight:700;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    color:#000;
  }

  .barcode-label-svg{
    height:.48in;
    width:100%;
  }

  .barcode-svg{
    display:block;
    width:100%;
    height:100%;
  }

  .barcode-label-footer{
    display:flex;
    justify-content:space-between;
    gap:.06in;
    font-family:Arial,sans-serif;
    color:#000;
    align-items:center;
    line-height:1;
  }

  .barcode-label-footer span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:7pt;
    font-weight:700;
  }

  .barcode-label-footer strong{
    font-size:8.5pt;
    font-weight:900;
    color:#000;
  }

  @media(max-width:1180px){
    .barcode-controls{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
  }

  @media(max-width:860px){
    .barcode-hero{
      flex-direction:column;
    }
    .barcode-hero-stats{
      min-width:0;
    }
    .barcode-controls{
      grid-template-columns:1fr;
    }
  }
}

@media print{
  body{
    background:#fff!important;
  }

  body *{
    visibility:hidden!important;
  }

  .barcode-print-sheet,
  .barcode-print-sheet *{
    visibility:visible!important;
  }

  .barcode-print-sheet{
    position:absolute!important;
    left:0!important;
    top:0!important;
    margin:0!important;
    padding:.25in!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    background:#fff!important;
    overflow:visible!important;
    width:auto!important;
    max-width:none!important;
    gap:.08in!important;
  }

  .barcode-print-sheet.label-layout-5160{
    grid-template-columns:repeat(3,2.625in)!important;
  }

  .barcode-print-sheet.label-layout-2x1{
    grid-template-columns:repeat(4,2in)!important;
  }

  .barcode-print-sheet.label-layout-3x1{
    grid-template-columns:repeat(2,3in)!important;
  }

  .barcode-label{
    border:0!important;
    box-shadow:none!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  .barcode-label-name,
  .barcode-label-footer,
  .barcode-label-footer strong,
  .barcode-label-footer span{
    color:#000!important;
  }

  @page{
    size:letter;
    margin:.25in;
  }
}


/* =========================================================
   v3.1.6 WooCommerce Sync Monitor
   ========================================================= */
@media screen{
  .woo-monitor-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .woo-monitor-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:24px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .woo-monitor-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .woo-monitor-hero p{
    max-width:780px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .woo-monitor-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
  }

  .woo-monitor-actions form{
    display:inline-flex;
  }

  .woo-health-card{
    min-width:210px;
    border:1px solid var(--line);
    border-radius:28px;
    padding:22px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-md);
    display:grid;
    place-items:center;
    text-align:center;
  }

  .woo-health-score{
    width:126px;
    height:126px;
    border-radius:999px;
    display:grid;
    place-items:center;
    font-size:2rem;
    font-weight:950;
    letter-spacing:-.06em;
    color:var(--text);
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--success) calc(var(--score, 100) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
    box-shadow:var(--shadow-sm);
    border:1px solid var(--line);
  }

  .woo-health-card span{
    display:block;
    margin-top:12px;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
  }

  .woo-health-card strong{
    display:block;
    margin-top:5px;
    font-weight:950;
  }

  .woo-health-warning .woo-health-score{
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--warning) calc(var(--score, 70) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
  }

  .woo-health-critical .woo-health-score{
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--danger) calc(var(--score, 40) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
  }

  .woo-monitor-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px;
  }

  .woo-monitor-kpi-grid article{
    border:1px solid var(--glass-line,var(--line));
    border-radius:24px;
    padding:18px;
    background:
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 9rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
    box-shadow:var(--shadow-md);
  }

  .woo-monitor-kpi-grid span,
  .woo-config-grid span,
  .woo-queue-control span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .woo-monitor-kpi-grid strong{
    display:block;
    font-size:clamp(1.15rem,1.8vw,1.7rem);
    font-weight:950;
    letter-spacing:-.04em;
    word-break:break-word;
  }

  .woo-monitor-kpi-grid small{
    display:block;
    margin-top:8px;
    color:var(--muted);
    line-height:1.35;
  }

  .woo-recommendation-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .woo-recommendation-list div{
    display:flex;
    align-items:flex-start;
    gap:12px;
    border:1px solid var(--line);
    border-radius:18px;
    padding:13px 15px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .woo-recommendation-list span{
    flex:0 0 28px;
    width:28px;
    height:28px;
    border-radius:999px;
    display:grid;
    place-items:center;
    color:#fff;
    background:linear-gradient(135deg,var(--primary),var(--info));
    font-weight:950;
  }

  .woo-recommendation-list p{
    margin:3px 0 0;
    color:var(--text-soft);
    line-height:1.45;
  }

  .woo-monitor-layout{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-bottom:18px;
  }

  .woo-config-grid,
  .woo-queue-control{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:18px;
  }

  .woo-config-grid div,
  .woo-queue-control div{
    border:1px solid var(--line);
    border-radius:20px;
    padding:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .woo-config-grid strong,
  .woo-queue-control strong{
    display:block;
    font-size:1.1rem;
    font-weight:950;
    letter-spacing:-.025em;
    word-break:break-word;
  }

  .woo-process-form{
    padding:0 18px 18px;
  }

  @media(max-width:1280px){
    .woo-monitor-kpi-grid{
      grid-template-columns:repeat(3,minmax(0,1fr));
    }
  }

  @media(max-width:980px){
    .woo-monitor-hero{
      flex-direction:column;
    }
    .woo-health-card{
      min-width:0;
    }
    .woo-monitor-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:720px){
    .woo-monitor-kpi-grid,
    .woo-config-grid,
    .woo-queue-control{
      grid-template-columns:1fr;
    }
  }
}


/* =========================================================
   v3.2.0 Laravel Migration Ready Structure
   ========================================================= */
@media screen{
  .laravel-migration-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .laravel-migration-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:24px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .laravel-migration-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .laravel-migration-hero p{
    max-width:790px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .laravel-migration-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
  }

  .laravel-migration-actions form{
    display:inline-flex;
  }

  .laravel-readiness-card{
    min-width:230px;
    border:1px solid var(--line);
    border-radius:28px;
    padding:22px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-md);
    display:grid;
    place-items:center;
    text-align:center;
  }

  .laravel-readiness-score{
    width:132px;
    height:132px;
    border-radius:999px;
    display:grid;
    place-items:center;
    font-size:2.1rem;
    font-weight:950;
    letter-spacing:-.06em;
    color:var(--text);
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--success) calc(var(--score, 100) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
    box-shadow:var(--shadow-sm);
    border:1px solid var(--line);
  }

  .laravel-readiness-card span{
    display:block;
    margin-top:12px;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
  }

  .laravel-readiness-card strong{
    display:block;
    margin-top:5px;
    font-weight:950;
  }

  .laravel-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px;
  }

  .laravel-kpi-grid article{
    border:1px solid var(--glass-line,var(--line));
    border-radius:24px;
    padding:18px;
    background:
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 9rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
    box-shadow:var(--shadow-md);
  }

  .laravel-kpi-grid span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .laravel-kpi-grid strong{
    display:block;
    font-size:1.8rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .laravel-kpi-grid small{
    display:block;
    margin-top:8px;
    color:var(--muted);
    line-height:1.35;
  }

  .laravel-check-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:12px;
    padding:18px;
  }

  .laravel-check-card{
    display:grid;
    grid-template-columns:38px 1fr;
    gap:10px;
    border:1px solid var(--line);
    border-radius:20px;
    padding:14px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .laravel-check-card span{
    grid-row:span 2;
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:14px;
    font-weight:950;
    color:#fff;
    background:var(--danger);
  }

  .laravel-check-card.is-ok span{
    background:var(--success);
  }

  .laravel-check-card strong{
    color:var(--text);
    font-weight:950;
    line-height:1.2;
  }

  .laravel-check-card small{
    color:var(--muted);
    word-break:break-word;
  }

  .laravel-phase-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:14px;
    padding:18px;
  }

  .laravel-phase-card{
    border:1px solid var(--line);
    border-radius:22px;
    padding:17px;
    background:linear-gradient(145deg,var(--panel),var(--panel-soft));
    box-shadow:var(--shadow-sm);
  }

  .laravel-phase-card span{
    display:inline-flex;
    color:var(--primary);
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .laravel-phase-card h3{
    margin:0 0 10px;
    letter-spacing:-.03em;
  }

  .laravel-phase-card ul{
    margin:0;
    padding-left:18px;
    color:var(--text-soft);
    line-height:1.55;
  }

  .laravel-layout{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
    gap:18px;
    margin-bottom:18px;
  }

  .laravel-tool-list{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    padding:18px;
  }

  .laravel-tool-list span{
    display:inline-flex;
    border:1px solid var(--line);
    border-radius:999px;
    padding:9px 12px;
    background:var(--panel-soft);
    color:var(--text-soft);
    font-weight:900;
  }

  .laravel-notes{
    display:grid;
    gap:8px;
    padding:0 18px 18px;
  }

  .laravel-notes div{
    display:flex;
    gap:10px;
    border:1px solid var(--line);
    border-radius:16px;
    padding:11px 12px;
    background:var(--panel-soft);
  }

  .laravel-notes strong{
    color:var(--primary);
  }

  .laravel-notes p{
    margin:0;
    color:var(--text-soft);
    line-height:1.45;
  }

  .laravel-module-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:14px;
    padding:18px;
  }

  .laravel-module-grid article{
    border:1px solid var(--line);
    border-radius:20px;
    padding:16px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .laravel-module-grid span{
    display:block;
    color:var(--primary);
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:10px;
  }

  .laravel-module-grid code{
    display:block;
    margin:6px 0;
    padding:7px 9px;
    border-radius:10px;
    background:color-mix(in srgb,var(--line) 28%,transparent);
    color:var(--text-soft);
    word-break:break-word;
  }

  .laravel-safety-note{
    padding:18px;
    border:1px solid var(--line);
    border-radius:20px;
    margin:18px;
    background:color-mix(in srgb,var(--warning) 10%,transparent);
  }

  .laravel-safety-note strong{
    display:block;
    color:var(--warning);
    font-weight:950;
    margin-bottom:8px;
  }

  .laravel-safety-note p{
    margin:0;
    color:var(--text-soft);
    line-height:1.55;
  }

  @media(max-width:1180px){
    .laravel-kpi-grid{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .laravel-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:860px){
    .laravel-migration-hero{
      flex-direction:column;
    }
  }

  @media(max-width:640px){
    .laravel-kpi-grid{
      grid-template-columns:1fr;
    }
  }
}


/* =========================================================
   v3.2.1 Production QA + Stability Pack
   ========================================================= */
@media screen{
  .production-qa-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .production-qa-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:24px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .production-qa-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .production-qa-hero p{
    max-width:820px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .production-qa-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
  }

  .production-qa-actions form{
    display:inline-flex;
  }

  .production-score-card{
    min-width:230px;
    border:1px solid var(--line);
    border-radius:28px;
    padding:22px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-md);
    display:grid;
    place-items:center;
    text-align:center;
  }

  .production-score-ring{
    width:132px;
    height:132px;
    border-radius:999px;
    display:grid;
    place-items:center;
    font-size:2.1rem;
    font-weight:950;
    letter-spacing:-.06em;
    color:var(--text);
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--success) calc(var(--score, 100) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
    box-shadow:var(--shadow-sm);
    border:1px solid var(--line);
  }

  .production-score-warning .production-score-ring{
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--warning) calc(var(--score, 80) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
  }

  .production-score-danger .production-score-ring{
    background:
      radial-gradient(circle closest-side,var(--panel) 70%,transparent 71%),
      conic-gradient(var(--danger) calc(var(--score, 45) * 1%),color-mix(in srgb,var(--line) 70%,transparent) 0);
  }

  .production-score-card span{
    display:block;
    margin-top:12px;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
  }

  .production-score-card strong{
    display:block;
    margin-top:5px;
    font-weight:950;
  }

  .production-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px;
  }

  .production-kpi-grid article{
    border:1px solid var(--glass-line,var(--line));
    border-radius:24px;
    padding:18px;
    background:
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 9rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
    box-shadow:var(--shadow-md);
  }

  .production-kpi-grid span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .production-kpi-grid strong{
    display:block;
    font-size:1.8rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .production-kpi-grid small{
    display:block;
    margin-top:8px;
    color:var(--muted);
  }

  .production-recommendation-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .production-recommendation-list div{
    display:flex;
    align-items:flex-start;
    gap:12px;
    border:1px solid var(--line);
    border-radius:18px;
    padding:13px 15px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .production-recommendation-list span{
    flex:0 0 28px;
    width:28px;
    height:28px;
    border-radius:999px;
    display:grid;
    place-items:center;
    color:#fff;
    background:linear-gradient(135deg,var(--primary),var(--info));
    font-weight:950;
  }

  .production-recommendation-list p{
    margin:3px 0 0;
    color:var(--text-soft);
    line-height:1.45;
  }

  .production-filterbar{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    padding:16px;
  }

  .production-filter{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    border:1px solid var(--line);
    border-radius:999px;
    padding:10px 14px;
    color:var(--text-soft);
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
    font-weight:900;
  }

  .production-filter strong{
    display:inline-grid;
    place-items:center;
    min-width:28px;
    height:28px;
    padding:0 8px;
    border-radius:999px;
    background:color-mix(in srgb,var(--primary) 12%,transparent);
    color:var(--primary);
  }

  .production-filter.active{
    background:linear-gradient(135deg,var(--primary),var(--info));
    color:#fff;
    border-color:transparent;
  }

  .production-filter.active strong{
    background:rgba(255,255,255,.20);
    color:#fff;
  }

  .production-check-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:14px;
    padding:18px;
  }

  .production-check-card{
    border:1px solid var(--line);
    border-radius:22px;
    padding:16px;
    background:linear-gradient(145deg,var(--panel),var(--panel-soft));
    box-shadow:var(--shadow-sm);
  }

  .production-check-head{
    display:flex;
    gap:12px;
    align-items:flex-start;
    margin-bottom:12px;
  }

  .production-check-head>span{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:var(--warning);
    font-weight:950;
  }

  .production-check-card.status-ok .production-check-head>span{
    background:var(--success);
  }

  .production-check-head div{
    flex:1;
    min-width:0;
  }

  .production-check-head strong{
    display:block;
    color:var(--text);
    font-weight:950;
    line-height:1.2;
  }

  .production-check-head small{
    display:block;
    color:var(--muted);
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.10em;
    font-weight:900;
    margin-top:4px;
  }

  .production-check-head em{
    font-style:normal;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
  }

  .production-check-value{
    font-weight:950;
    color:var(--primary);
    word-break:break-word;
  }

  .production-check-card p{
    margin:8px 0 0;
    color:var(--muted);
    line-height:1.45;
  }

  .production-layout{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
    gap:18px;
    margin-bottom:18px;
  }

  .production-action-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .production-action-list .btn{
    justify-content:center;
  }

  .production-deployment-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .production-deployment-list div{
    display:flex;
    align-items:flex-start;
    gap:12px;
    border:1px solid var(--line);
    border-radius:18px;
    padding:13px 15px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .production-deployment-list span{
    flex:0 0 32px;
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    border-radius:999px;
    background:linear-gradient(135deg,var(--primary),var(--accent));
    color:#fff;
    font-weight:950;
  }

  .production-deployment-list p{
    margin:5px 0 0;
    color:var(--text-soft);
    line-height:1.45;
  }

  @media(max-width:1180px){
    .production-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:920px){
    .production-qa-hero{
      flex-direction:column;
    }
    .production-kpi-grid{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
  }

  @media(max-width:640px){
    .production-kpi-grid{
      grid-template-columns:1fr;
    }
  }
}


/* =========================================================
   v3.2.2 Cron Jobs Center
   ========================================================= */
@media screen{
  .cron-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .cron-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:24px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .cron-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .cron-hero p{
    max-width:820px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .cron-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
  }

  .cron-hero-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(135px,1fr));
    gap:12px;
    min-width:320px;
  }

  .cron-hero-stats div{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-sm);
  }

  .cron-hero-stats span,
  .cron-job-meta span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .cron-hero-stats strong{
    display:block;
    font-size:1.75rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .cron-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);
    gap:18px;
    margin-bottom:18px;
  }

  .cron-settings-form,
  .cron-danger-form{
    display:grid;
    gap:14px;
    padding:18px;
  }

  .cron-note{
    margin:0 18px 18px;
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:var(--panel-soft);
    color:var(--text-soft);
  }

  .cron-note strong{
    display:block;
    color:var(--primary);
    margin-bottom:5px;
  }

  .cron-note p{
    margin:0;
    line-height:1.45;
  }

  .cron-job-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
    gap:16px;
    padding:18px;
  }

  .cron-job-card{
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:
      radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 9rem),
      linear-gradient(145deg,var(--panel),var(--panel-soft));
    box-shadow:var(--shadow-md);
  }

  .cron-job-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:12px;
    margin-bottom:10px;
  }

  .cron-job-head span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:6px;
  }

  .cron-job-head h3{
    margin:0;
    color:var(--text);
    font-size:1.2rem;
    letter-spacing:-.03em;
  }

  .cron-job-head em{
    font-style:normal;
    border:1px solid var(--line);
    border-radius:999px;
    padding:6px 9px;
    font-size:.65rem;
    text-transform:uppercase;
    letter-spacing:.10em;
    color:var(--text-soft);
    background:var(--panel-soft);
    font-weight:950;
  }

  .cron-risk-high .cron-job-head em{
    color:var(--danger);
    background:color-mix(in srgb,var(--danger) 10%,transparent);
  }

  .cron-risk-medium .cron-job-head em{
    color:var(--warning);
    background:color-mix(in srgb,var(--warning) 10%,transparent);
  }

  .cron-job-card p{
    color:var(--text-soft);
    line-height:1.5;
    margin:0 0 14px;
  }

  .cron-job-meta{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-bottom:14px;
  }

  .cron-job-meta div{
    border:1px solid var(--line);
    border-radius:16px;
    padding:11px;
    background:var(--panel-soft);
  }

  .cron-job-meta strong{
    display:block;
    font-size:.95rem;
    font-weight:950;
    word-break:break-word;
  }

  .cron-job-card label{
    display:block;
    margin-top:10px;
    font-weight:850;
    color:var(--text-soft);
  }

  .cron-job-card input,
  .cron-job-card textarea,
  .cron-settings-form input,
  .cron-danger-form input{
    margin-top:6px;
    width:100%;
  }

  .cron-job-card textarea{
    min-height:58px;
    resize:vertical;
    font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
    font-size:.82rem;
  }

  .cron-job-card>small{
    display:block;
    margin-top:10px;
    color:var(--muted);
    line-height:1.4;
    word-break:break-word;
  }

  .cron-run-form{
    display:flex;
    gap:10px;
    align-items:end;
    margin-top:14px;
  }

  .cron-run-form input{
    max-width:95px;
    margin-top:0;
  }

  @media(max-width:980px){
    .cron-hero{
      flex-direction:column;
    }
    .cron-hero-stats{
      min-width:0;
    }
    .cron-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:700px){
    .cron-hero-stats,
    .cron-job-meta{
      grid-template-columns:1fr;
    }
    .cron-job-grid{
      grid-template-columns:1fr;
    }
    .cron-run-form{
      flex-direction:column;
      align-items:stretch;
    }
    .cron-run-form input{
      max-width:none;
    }
  }
}


/* =========================================================
   v3.2.3 Advanced Roles & Permissions
   ========================================================= */
@media screen{
  .roles-hero-panel{
    overflow:hidden;
    padding:0!important;
  }

  .roles-hero{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:24px;
    padding:28px;
    background:
      radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 24rem),
      radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 22rem),
      linear-gradient(145deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-soft) 78%,transparent));
  }

  .roles-hero h2{
    margin:12px 0 8px;
    font-size:clamp(1.8rem,3vw,3rem);
    letter-spacing:-.055em;
  }

  .roles-hero p{
    max-width:820px;
    margin:0;
    color:var(--text-soft);
    line-height:1.62;
  }

  .roles-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
  }

  .roles-hero-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(135px,1fr));
    gap:12px;
    min-width:320px;
  }

  .roles-hero-stats div{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--glass-bg,var(--panel));
    box-shadow:var(--shadow-sm);
  }

  .roles-hero-stats span{
    display:block;
    color:var(--muted);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
    margin-bottom:8px;
  }

  .roles-hero-stats strong{
    display:block;
    font-size:1.75rem;
    font-weight:950;
    letter-spacing:-.04em;
  }

  .roles-layout{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:18px;
    margin-bottom:18px;
  }

  .role-selector-list{
    display:grid;
    gap:12px;
    padding:18px;
  }

  .role-selector-card{
    display:grid;
    gap:5px;
    text-decoration:none;
    border:1px solid var(--line);
    border-radius:20px;
    padding:15px;
    color:var(--text);
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .role-selector-card span{
    color:var(--muted);
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:950;
  }

  .role-selector-card strong{
    font-size:1.15rem;
    font-weight:950;
  }

  .role-selector-card small{
    color:var(--muted);
  }

  .role-selector-card.active{
    background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 92%,#000),color-mix(in srgb,var(--info) 85%,#000));
    color:#fff;
    border-color:transparent;
  }

  .role-selector-card.active span,
  .role-selector-card.active small{
    color:rgba(255,255,255,.78);
  }

  .role-template-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
    gap:12px;
    padding:18px;
  }

  .role-template-grid form{
    display:grid;
    gap:9px;
    border:1px solid var(--line);
    border-radius:20px;
    padding:15px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .role-template-grid strong{
    color:var(--text);
    font-weight:950;
  }

  .role-template-grid small{
    color:var(--muted);
    line-height:1.42;
  }

  .permission-matrix-form{
    padding:18px;
  }

  .permission-group-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:16px;
  }

  .permission-group-card{
    border:1px solid var(--line);
    border-radius:24px;
    padding:16px;
    background:linear-gradient(145deg,var(--panel),var(--panel-soft));
    box-shadow:var(--shadow-sm);
  }

  .permission-group-card h3{
    margin:0 0 12px;
    color:var(--text);
    letter-spacing:-.03em;
  }

  .permission-check-list{
    display:grid;
    gap:10px;
  }

  .permission-check-list label{
    display:flex;
    gap:12px;
    align-items:flex-start;
    border:1px solid var(--line);
    border-radius:16px;
    padding:12px;
    background:var(--panel-soft);
    cursor:pointer;
  }

  .permission-check-list input{
    margin-top:4px;
    width:18px;
    height:18px;
  }

  .permission-check-list strong{
    display:block;
    color:var(--text);
    font-weight:950;
    line-height:1.2;
  }

  .permission-check-list small{
    display:block;
    margin-top:4px;
    color:var(--muted);
    line-height:1.35;
  }

  .role-user-list{
    display:grid;
    gap:10px;
    padding:18px;
  }

  .role-user-list div{
    display:flex;
    gap:12px;
    align-items:center;
    border:1px solid var(--line);
    border-radius:18px;
    padding:12px;
    background:var(--panel-soft);
    box-shadow:var(--shadow-sm);
  }

  .role-user-list p{
    margin:0;
  }

  .role-user-list strong{
    display:block;
    color:var(--text);
    font-weight:950;
  }

  .role-user-list small{
    display:block;
    color:var(--muted);
    margin-top:3px;
  }

  .role-reset-form{
    display:grid;
    gap:14px;
    padding:18px;
  }

  .role-reset-form input{
    margin-top:6px;
    width:100%;
  }

  .permission-group-card input:disabled,
  .role-template-grid button:disabled,
  .role-reset-form input:disabled,
  .role-reset-form button:disabled{
    opacity:.55;
    cursor:not-allowed;
  }

  @media(max-width:1100px){
    .roles-layout{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:900px){
    .roles-hero{
      flex-direction:column;
    }
    .roles-hero-stats{
      min-width:0;
    }
  }

  @media(max-width:640px){
    .roles-hero-stats{
      grid-template-columns:1fr;
    }
    .permission-group-grid{
      grid-template-columns:1fr;
    }
  }
}

/* =========================================================
   SFS_PRODUCT_FORM_OVERLAY_FIX_V1
   Remove the decorative premium overlay only from Add/Edit Product.
   This intentionally leaves all other premium panel effects untouched.
   ========================================================= */
@media screen {
  body.premium-ui form.panel.form-panel::before {
    content: none !important;
    display: none !important;
    background: none !important;
    opacity: 0 !important;
  }
}

/* =========================================================
   SFS_SIDEBAR_DROPDOWN_CATEGORIES_V1
   Compact accordion sidebar: Dashboard, New Sale,
   Wholesale Sale, Catalog, Management and Account.
   ========================================================= */
@media screen {
  .nav.nav-accordion {
    gap: 8px;
    padding-top: 18px;
  }

  .nav-accordion > .nav-root-link,
  .nav-accordion > .nav-group > .nav-group-toggle {
    min-height: 48px;
  }

  .nav-group {
    display: grid;
    gap: 5px;
    min-width: 0;
  }

  .nav-group-toggle {
    position: relative;
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 11px 14px;
    border: 1px solid transparent;
    border-radius: 18px;
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    color: rgba(244,248,255,.86);
    font: inherit;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
    cursor: pointer;
    white-space: nowrap;
    transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
  }

  .nav-group-toggle::before {
    content: "";
    position: absolute;
    inset: 8px auto 8px 0;
    width: 3px;
    border-radius: 99px;
    background: linear-gradient(180deg, var(--luxury-gold, #d8a934), var(--luxury-electric, #2b82ff));
    opacity: 0;
    transform: scaleY(.55);
    transition: opacity .18s ease, transform .18s ease;
  }

  .nav-group-toggle:hover {
    transform: translateX(3px);
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.13);
    box-shadow: 0 14px 35px rgba(0,0,0,.18);
  }

  .nav-group-toggle.active,
  .nav-group.open > .nav-group-toggle {
    background: linear-gradient(135deg,rgba(43,130,255,.24),rgba(216,169,52,.13));
    border-color: rgba(255,255,255,.18);
    color: #fff;
    box-shadow: 0 16px 38px rgba(0,0,0,.19), inset 0 1px 0 rgba(255,255,255,.08);
  }

  .nav-group-toggle.active::before,
  .nav-group.open > .nav-group-toggle::before {
    opacity: 1;
    transform: scaleY(1);
  }

  .nav-group-toggle > span {
    display: block;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .nav-group-chevron {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    opacity: .72;
    transition: transform .22s ease, opacity .18s ease;
  }

  .nav-group.open > .nav-group-toggle .nav-group-chevron {
    transform: rotate(180deg);
    opacity: 1;
  }

  .nav-group-menu {
    display: grid;
    gap: 4px;
    margin: 0 0 4px 13px;
    padding: 6px 0 6px 12px;
    border-left: 1px solid rgba(255,255,255,.12);
    animation: sfs-nav-group-in .16s ease-out;
  }

  .nav-group-menu[hidden] {
    display: none !important;
  }

  .nav-group-menu a {
    min-height: 42px;
    padding: 9px 12px !important;
    border-radius: 14px !important;
    font-size: .86rem !important;
    color: rgba(238,244,252,.77) !important;
    background: rgba(255,255,255,.025);
  }

  .nav-group-menu a .nav-icon {
    width: 18px;
    height: 18px;
    flex-basis: 18px;
    opacity: .88;
  }

  .nav-group-menu a:hover {
    background: rgba(255,255,255,.08) !important;
  }

  .nav-group-menu a.active {
    color: #fff !important;
    background: linear-gradient(135deg,rgba(43,130,255,.22),rgba(216,169,52,.10)) !important;
  }

  @keyframes sfs-nav-group-in {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
  }

  body.sidebar-collapsed .nav-group-toggle {
    justify-content: center;
    padding-inline: 10px;
  }

  body.sidebar-collapsed .nav-group-toggle > span,
  body.sidebar-collapsed .nav-group-chevron,
  body.sidebar-collapsed .nav-group-menu {
    display: none !important;
  }

  body.sidebar-collapsed .nav-group-toggle:hover {
    transform: none;
  }

  @media (max-width: 800px) {
    .nav-group-menu {
      margin-left: 11px;
      padding-left: 10px;
    }
    .nav-group-menu a {
      min-height: 46px;
    }
  }
}


/* ======================================================================
   v3.2.4 — MODERN POS SALES UI
   Fast 3-zone selling workspace: Categories / Products / Live Cart
   Scoped to the retail POS only. Existing modules and print styles remain.
   ====================================================================== */
@media screen {
  .premium-ui.pos-modern-v324 {
    --pos324-ink: #202622;
    --pos324-muted: #6e766f;
    --pos324-line: rgba(72, 82, 74, .14);
    --pos324-soft: #f5f5f1;
    --pos324-panel: rgba(255,255,255,.97);
    --pos324-olive: #56624c;
    --pos324-olive-dark: #414a3b;
    --pos324-gold: #b08d57;
    --pos324-blue: #315f88;
    --pos324-danger: #a14949;
    --pos324-success: #3d7854;
  }

  .premium-ui.pos-modern-v324 .content {
    padding: 16px 18px 96px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-commandbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0 0 14px;
    padding: 15px 18px;
    border: 1px solid var(--pos324-line);
    border-radius: 20px;
    background: linear-gradient(135deg,rgba(255,255,255,.98),rgba(246,245,239,.96));
    box-shadow: 0 10px 28px rgba(36,43,37,.08);
  }

  .premium-ui.pos-modern-v324 .pos-v324-title {
    min-width: 0;
  }

  .premium-ui.pos-modern-v324 .pos-v324-kicker {
    display: block;
    margin-bottom: 3px;
    color: var(--pos324-gold);
    font-size: .66rem;
    font-weight: 950;
    letter-spacing: .14em;
    text-transform: uppercase;
  }

  .premium-ui.pos-modern-v324 .pos-v324-title h2 {
    margin: 0;
    color: var(--pos324-ink);
    font-size: clamp(1.05rem,1.6vw,1.45rem);
    line-height: 1.15;
    letter-spacing: -.035em;
  }

  .premium-ui.pos-modern-v324 .pos-v324-title p {
    margin: 4px 0 0;
    color: var(--pos324-muted);
    font-size: .78rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-statuses {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    flex: 0 0 auto;
  }

  .premium-ui.pos-modern-v324 .pos-v324-status,
  .premium-ui.pos-modern-v324 .pos-v324-stat {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 40px;
    padding: 7px 11px;
    border: 1px solid var(--pos324-line);
    border-radius: 13px;
    background: rgba(255,255,255,.82);
  }

  .premium-ui.pos-modern-v324 .pos-v324-status i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #4b9b64;
    box-shadow: 0 0 0 4px rgba(75,155,100,.12);
  }

  .premium-ui.pos-modern-v324 .pos-v324-status b {
    font-size: .72rem;
    color: #48624f;
  }

  .premium-ui.pos-modern-v324 .pos-v324-stat {
    display: grid;
    grid-template-columns: auto auto;
    column-gap: 7px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-stat small {
    color: var(--pos324-muted);
    font-size: .65rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-stat strong {
    color: var(--pos324-ink);
    font-size: .86rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-shell {
    display: grid;
    grid-template-columns: 174px minmax(420px,1fr) minmax(310px,360px);
    gap: 14px;
    align-items: start;
    min-width: 0;
  }

  .premium-ui.pos-modern-v324 .pos-v324-categories,
  .premium-ui.pos-modern-v324 .pos-v324-products,
  .premium-ui.pos-modern-v324 .pos-v324-cart-panel {
    margin: 0;
    border: 1px solid var(--pos324-line);
    border-radius: 20px;
    background: var(--pos324-panel);
    box-shadow: 0 12px 32px rgba(36,43,37,.075);
    overflow: hidden;
  }

  /* Prevent the decorative premium panel overlay from covering POS controls. */
  .premium-ui.pos-modern-v324 .pos-v324-categories::before,
  .premium-ui.pos-modern-v324 .pos-v324-products::before,
  .premium-ui.pos-modern-v324 .pos-v324-cart-panel::before {
    content: none !important;
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-categories,
  .premium-ui.pos-modern-v324 .pos-v324-cart-panel {
    position: sticky;
    top: 92px;
  }

  .premium-ui.pos-window-mode.pos-modern-v324 .pos-v324-categories,
  .premium-ui.pos-window-mode.pos-modern-v324 .pos-v324-cart-panel {
    top: 14px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-categories {
    padding: 12px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-side-head {
    padding: 4px 7px 10px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-side-head span {
    display: block;
    color: var(--pos324-gold);
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
  }

  .premium-ui.pos-modern-v324 .pos-v324-side-head strong {
    display: block;
    margin-top: 2px;
    color: var(--pos324-ink);
    font-size: .92rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-category-list {
    display: grid;
    gap: 5px;
    max-height: calc(100vh - 250px);
    overflow: auto;
    scrollbar-width: thin;
  }

  .premium-ui.pos-modern-v324 .pos-v324-category {
    display: grid;
    grid-template-columns: 23px minmax(0,1fr) auto;
    align-items: center;
    gap: 6px;
    width: 100%;
    min-height: 42px;
    padding: 7px 8px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    color: #525a54;
    text-align: left;
    font: inherit;
    cursor: pointer;
    transition: .16s ease;
  }

  .premium-ui.pos-modern-v324 .pos-v324-category:hover {
    background: #f5f5f0;
    color: var(--pos324-ink);
  }

  .premium-ui.pos-modern-v324 .pos-v324-category.active {
    border-color: rgba(86,98,76,.16);
    background: linear-gradient(135deg,rgba(86,98,76,.13),rgba(176,141,87,.10));
    color: var(--pos324-olive-dark);
    box-shadow: inset 3px 0 0 var(--pos324-olive);
  }

  .premium-ui.pos-modern-v324 .pos-v324-category-icon {
    display: grid;
    place-items: center;
    width: 23px;
    height: 23px;
    border-radius: 8px;
    background: rgba(86,98,76,.08);
    color: var(--pos324-olive);
    font-size: .76rem;
    font-weight: 900;
  }

  .premium-ui.pos-modern-v324 .pos-v324-category > span:nth-child(2) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .75rem;
    font-weight: 800;
  }

  .premium-ui.pos-modern-v324 .pos-v324-category b {
    display: grid;
    place-items: center;
    min-width: 23px;
    height: 22px;
    padding: 0 5px;
    border-radius: 999px;
    background: rgba(32,38,34,.055);
    color: #6b716c;
    font-size: .62rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-favorites-filter .pos-v324-category-icon {
    color: #9a743c;
    background: #f7edda;
  }

  .premium-ui.pos-modern-v324 .pos-v324-side-note {
    margin: 10px 5px 1px;
    color: #8b918c;
    font-size: .62rem;
    line-height: 1.45;
  }

  .premium-ui.pos-modern-v324 .pos-v324-products {
    min-width: 0;
    padding: 12px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-search-zone {
    display: grid;
    grid-template-columns: minmax(220px,1fr) minmax(150px,210px) auto;
    gap: 8px;
    position: sticky;
    top: 82px;
    z-index: 20;
    margin: -12px -12px 10px;
    padding: 12px;
    border-bottom: 1px solid var(--pos324-line);
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(16px);
  }

  .premium-ui.pos-window-mode.pos-modern-v324 .pos-v324-search-zone {
    top: 0;
  }

  .premium-ui.pos-modern-v324 .pos-v324-search-main,
  .premium-ui.pos-modern-v324 .pos-v324-barcode-main {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 46px;
    border: 1px solid #d9ddd8;
    border-radius: 13px;
    background: #fbfcfa;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
  }

  .premium-ui.pos-modern-v324 .pos-v324-search-main:focus-within,
  .premium-ui.pos-modern-v324 .pos-v324-barcode-main:focus-within {
    border-color: rgba(86,98,76,.55);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(86,98,76,.09);
  }

  .premium-ui.pos-modern-v324 .pos-v324-search-icon,
  .premium-ui.pos-modern-v324 .pos-v324-barcode-main > span {
    display: grid;
    place-items: center;
    width: 38px;
    flex: 0 0 38px;
    color: #778078;
    font-size: 1rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-search-main input,
  .premium-ui.pos-modern-v324 .pos-v324-barcode-main input {
    width: 100%;
    min-width: 0;
    height: 44px;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--pos324-ink) !important;
    box-shadow: none !important;
    font-size: .8rem;
    font-weight: 700;
  }

  .premium-ui.pos-modern-v324 .pos-v324-search-clear {
    display: grid;
    place-items: center;
    width: 29px;
    height: 29px;
    margin-right: 7px;
    border: 0;
    border-radius: 50%;
    background: #eef0ed;
    color: #626a63;
    cursor: pointer;
    font-size: 1rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-camera {
    min-height: 46px;
    padding-inline: 13px;
    border-radius: 13px;
    white-space: nowrap;
  }

  .premium-ui.pos-modern-v324 .pos-v324-products-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 2px 2px 10px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-products-head > div:first-child {
    display: flex;
    align-items: baseline;
    gap: 8px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-products-head strong {
    color: var(--pos324-ink);
    font-size: .88rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-products-head span,
  .premium-ui.pos-modern-v324 .pos-v324-tip {
    color: #838a84;
    font-size: .66rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill,minmax(155px,1fr)) !important;
    gap: 9px !important;
    align-content: start;
    max-height: calc(100vh - 250px);
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1px 3px 16px 1px !important;
    scrollbar-width: thin;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-card {
    position: relative;
    display: flex !important;
    flex-direction: column;
    min-width: 0;
    min-height: 246px !important;
    padding: 7px !important;
    border: 1px solid #e0e3df !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: 0 5px 14px rgba(28,35,29,.05) !important;
    overflow: hidden;
    cursor: pointer;
    transform: none !important;
    transition: border-color .14s ease, box-shadow .14s ease, transform .14s ease !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-card::before,
  .premium-ui.pos-modern-v324 .pos-v324-product-card::after {
    content: none !important;
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-card:hover,
  .premium-ui.pos-modern-v324 .pos-v324-product-card:focus-visible {
    border-color: rgba(86,98,76,.42) !important;
    box-shadow: 0 10px 24px rgba(54,65,56,.11) !important;
    transform: translateY(-2px) !important;
    outline: 0;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-card.is-favorite {
    border-color: rgba(176,141,87,.32) !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-card.is-out {
    cursor: not-allowed;
    opacity: .64;
    background: #fafafa !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-card[hidden] {
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-favorite {
    position: absolute;
    z-index: 4;
    top: 7px;
    right: 7px;
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 1px solid rgba(90,96,91,.12);
    border-radius: 10px;
    background: rgba(255,255,255,.94);
    color: #8a908b;
    box-shadow: 0 3px 10px rgba(30,36,31,.08);
    cursor: pointer;
    font-size: 1rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-favorite.active {
    color: #9a743c;
    background: #fff5df;
    border-color: #ead4a9;
  }

  .premium-ui.pos-modern-v324 .pos-v324-stock {
    position: absolute;
    z-index: 3;
    top: 8px;
    left: 8px;
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    max-width: calc(100% - 50px);
    padding: 3px 7px;
    border-radius: 8px;
    font-size: .58rem;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(31,38,32,.07);
  }

  .premium-ui.pos-modern-v324 .pos-v324-stock.is-good {
    background: #edf7ef;
    color: #39704b;
  }

  .premium-ui.pos-modern-v324 .pos-v324-stock.is-low {
    background: #fff3dc;
    color: #8a632e;
  }

  .premium-ui.pos-modern-v324 .pos-v324-stock.is-out {
    background: #f7e8e8;
    color: #914646;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-photo {
    display: grid !important;
    place-items: center;
    width: 100% !important;
    height: 104px !important;
    min-height: 104px !important;
    margin: 0 0 6px !important;
    border-radius: 11px !important;
    background: linear-gradient(145deg,#f7f7f3,#efefe9) !important;
    overflow: hidden;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    padding: 4px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-info {
    display: flex !important;
    flex-direction: column;
    min-width: 0;
    flex: 1;
    padding: 1px 2px 2px !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-category {
    overflow: hidden;
    margin-bottom: 2px;
    color: #9a7e52;
    font-size: .55rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-info .product-shop-title {
    display: -webkit-box;
    min-height: 32px;
    margin: 0 !important;
    overflow: hidden;
    color: #262d28 !important;
    font-size: .73rem !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .premium-ui.pos-modern-v324 .pos-v324-product-meta {
    overflow: hidden;
    margin-top: 2px;
    color: #8a908b;
    font-size: .58rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .premium-ui.pos-modern-v324 .pos-v324-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    margin-top: auto;
    padding-top: 6px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-price-row b {
    color: var(--pos324-olive-dark);
    font-size: .95rem;
    letter-spacing: -.02em;
  }

  .premium-ui.pos-modern-v324 .pos-v324-price-row small {
    padding: 3px 5px;
    border-radius: 7px;
    background: #f1f2ef;
    color: #747b75;
    font-size: .53rem;
    font-weight: 800;
  }

  .premium-ui.pos-modern-v324 .pos-v324-card-actions {
    display: grid !important;
    grid-template-columns: 1fr auto;
    gap: 5px;
    margin-top: 6px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-card-qty {
    display: grid !important;
    grid-template-columns: 27px 1fr 27px;
    min-width: 0;
    height: 32px;
    border: 1px solid #dde0dc;
    border-radius: 9px;
    overflow: hidden;
    background: #fafbf9;
  }

  .premium-ui.pos-modern-v324 .pos-v324-card-qty button,
  .premium-ui.pos-modern-v324 .pos-v324-card-qty input {
    width: 100% !important;
    min-width: 0 !important;
    height: 30px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #475048 !important;
    box-shadow: none !important;
    text-align: center;
    font-size: .7rem !important;
    font-weight: 850;
  }

  .premium-ui.pos-modern-v324 .pos-v324-card-qty button:hover {
    background: #eef0ec !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-add {
    min-width: 50px !important;
    min-height: 32px !important;
    height: 32px !important;
    padding: 0 8px !important;
    border-radius: 9px !important;
    background: var(--pos324-olive) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: .65rem !important;
    font-weight: 900 !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-no-results {
    display: grid;
    place-items: center;
    min-height: 180px;
    padding: 25px;
    color: #777f79;
    text-align: center;
  }

  .premium-ui.pos-modern-v324 .pos-v324-no-results[hidden] {
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-no-results strong {
    color: var(--pos324-ink);
    font-size: .95rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-no-results span {
    margin-top: 4px;
    font-size: .7rem;
  }

  /* Live cart */
  .premium-ui.pos-modern-v324 .pos-v324-cart-panel {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 112px);
    min-height: 510px;
    padding: 12px;
  }

  .premium-ui.pos-window-mode.pos-modern-v324 .pos-v324-cart-panel {
    max-height: calc(100vh - 28px);
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 2px 2px 9px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-head span:first-child {
    display: block;
    color: var(--pos324-gold);
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-head strong {
    display: block;
    color: var(--pos324-ink);
    font-size: 1rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-count {
    display: grid;
    place-items: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border-radius: 12px;
    background: #edf0ea;
    color: var(--pos324-olive-dark);
    font-size: .8rem;
    font-weight: 950;
  }

  .premium-ui.pos-modern-v324 .pos-v324-customer-label {
    display: grid;
    gap: 4px;
    margin-bottom: 8px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-customer-label > span {
    color: #737a74;
    font-size: .6rem;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .06em;
  }

  .premium-ui.pos-modern-v324 .pos-v324-customer-label select {
    min-height: 40px !important;
    height: 40px;
    padding: 0 34px 0 10px !important;
    border: 1px solid #dce0dc !important;
    border-radius: 11px !important;
    background-color: #fafbf9 !important;
    color: #394139 !important;
    font-size: .72rem !important;
    font-weight: 750;
  }

  .premium-ui.pos-modern-v324 .pos-v324-tax-notice {
    margin: 0 0 7px;
    padding: 7px 9px;
    border-radius: 9px;
    font-size: .62rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-scroll {
    flex: 1 1 auto;
    min-height: 130px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 2px;
    scrollbar-width: thin;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-list {
    display: grid;
    gap: 6px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-empty {
    display: grid;
    place-items: center;
    min-height: 170px;
    padding: 20px 10px;
    border: 1px dashed #d8ddd7;
    border-radius: 13px;
    background: #fafbf9;
    text-align: center;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-empty-icon {
    font-size: 1.45rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-empty strong {
    margin-top: 5px;
    color: #465047;
    font-size: .78rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-empty small {
    color: #8a918b;
    font-size: .62rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-item {
    display: grid !important;
    grid-template-columns: 40px minmax(0,1fr) !important;
    gap: 7px !important;
    position: relative;
    padding: 8px !important;
    border: 1px solid #e2e5e1 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-index {
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-media {
    width: 40px !important;
    height: 40px !important;
    border-radius: 9px !important;
    background: #f4f5f1 !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-media img {
    object-fit: contain !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-main {
    min-width: 0;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-top {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 5px;
    align-items: start;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-top strong {
    display: block;
    overflow: hidden;
    color: #303731 !important;
    font-size: .68rem !important;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-top small {
    display: block;
    max-width: 220px;
    margin-top: 2px;
    overflow: hidden;
    color: #90968f !important;
    font-size: .52rem !important;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-remove-btn {
    min-height: 24px !important;
    padding: 3px 5px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: #f8eeee !important;
    color: #995555 !important;
    font-size: 0 !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-remove-btn span {
    font-size: .85rem !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-bottom {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    gap: 5px !important;
    align-items: end !important;
    margin-top: 6px !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-price-chip {
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-qty-control {
    display: grid !important;
    grid-template-columns: 25px minmax(36px,1fr) 25px !important;
    width: 108px !important;
    height: 29px;
    border: 1px solid #dde1dc;
    border-radius: 8px;
    overflow: hidden;
    background: #fafbf9;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-qty-control button,
  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-qty-control input {
    width: 100% !important;
    min-width: 0 !important;
    height: 27px !important;
    min-height: 27px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #4d554e !important;
    box-shadow: none !important;
    text-align: center;
    font-size: .62rem !important;
    font-weight: 850;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-line-total {
    display: block !important;
    min-width: 70px;
    text-align: right;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-line-total span,
  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-line-total small {
    display: none !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-line-total strong {
    color: var(--pos324-olive-dark) !important;
    font-size: .72rem !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-summary {
    display: grid;
    gap: 4px;
    flex: 0 0 auto;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--pos324-line);
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-summary > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #737a74;
    font-size: .68rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-summary strong {
    color: #3c443d;
    font-size: .72rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-discount-preview {
    opacity: .72;
  }

  .premium-ui.pos-modern-v324 .pos-v324-total {
    margin-top: 3px;
    padding-top: 7px;
    border-top: 1px solid #e1e4e0;
  }

  .premium-ui.pos-modern-v324 .pos-v324-total span {
    color: #343b35;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .05em;
  }

  .premium-ui.pos-modern-v324 .pos-v324-total strong {
    color: var(--pos324-olive-dark) !important;
    font-size: 1.25rem !important;
    letter-spacing: -.04em;
  }

  .premium-ui.pos-modern-v324 .pos-v324-cart-actions {
    display: grid;
    gap: 5px;
    flex: 0 0 auto;
    margin-top: 9px;
  }

  .premium-ui.pos-modern-v324 .pos-v324-checkout {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    min-height: 50px !important;
    padding: 10px 13px !important;
    border-radius: 13px !important;
    background: linear-gradient(135deg,var(--pos324-olive),var(--pos324-olive-dark)) !important;
    box-shadow: 0 10px 22px rgba(65,74,59,.22) !important;
    font-size: .78rem !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-checkout strong {
    font-size: .9rem;
  }

  .premium-ui.pos-modern-v324 .pos-v324-clear-cart {
    min-height: 34px !important;
    padding: 5px !important;
    color: #8a6767 !important;
    font-size: .62rem !important;
  }

  .premium-ui.pos-modern-v324 .pos-v324-mobile-checkout {
    display: none !important;
  }

  html[data-theme="dark"] .premium-ui.pos-modern-v324 {
    --pos324-ink: #eef3ef;
    --pos324-muted: #aeb7b0;
    --pos324-line: rgba(255,255,255,.10);
    --pos324-panel: rgba(24,30,27,.97);
  }

  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-commandbar,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-categories,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-products,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-cart-panel,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-search-zone {
    background: rgba(25,31,28,.97) !important;
    border-color: rgba(255,255,255,.10) !important;
  }

  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-product-card,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-cart-panel .dynamic-cart-item {
    background: #202722 !important;
    border-color: rgba(255,255,255,.10) !important;
  }

  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-search-main,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-barcode-main,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-customer-label select,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-card-qty,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-cart-panel .cart-qty-control {
    background: #1b211d !important;
    border-color: rgba(255,255,255,.12) !important;
  }

  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-product-info .product-shop-title,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-product-card input,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-search-main input,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-barcode-main input,
  html[data-theme="dark"] .premium-ui.pos-modern-v324 .pos-v324-customer-label select {
    color: #edf2ee !important;
  }

  @media (max-width: 1220px) {
    .premium-ui.pos-modern-v324 .pos-v324-shell {
      grid-template-columns: 150px minmax(360px,1fr) 315px;
      gap: 10px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-product-grid {
      grid-template-columns: repeat(auto-fill,minmax(145px,1fr)) !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-category > span:nth-child(2) {
      font-size: .69rem;
    }
  }

  @media (max-width: 1000px) {
    .premium-ui.pos-modern-v324 .pos-v324-shell {
      grid-template-columns: 1fr 300px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-categories {
      position: relative;
      top: auto;
      grid-column: 1 / -1;
      padding: 8px;
      overflow: visible;
    }
    .premium-ui.pos-modern-v324 .pos-v324-side-head,
    .premium-ui.pos-modern-v324 .pos-v324-side-note {
      display: none;
    }
    .premium-ui.pos-modern-v324 .pos-v324-category-list {
      display: flex;
      max-height: none;
      overflow-x: auto;
      overflow-y: hidden;
      padding-bottom: 2px;
      scrollbar-width: thin;
    }
    .premium-ui.pos-modern-v324 .pos-v324-category {
      display: inline-flex;
      width: auto;
      min-width: max-content;
      min-height: 38px;
      padding: 6px 9px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-category-icon {
      width: 21px;
      height: 21px;
    }
  }

  @media (max-width: 760px) {
    .premium-ui.pos-modern-v324 .content {
      padding: 10px 10px 88px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-commandbar {
      margin-bottom: 9px;
      padding: 11px 12px;
      border-radius: 16px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-title p,
    .premium-ui.pos-modern-v324 .pos-v324-stat,
    .premium-ui.pos-modern-v324 .pos-v324-status,
    .premium-ui.pos-modern-v324 .pos-v324-commandbar .premium-touch-toggle {
      display: none;
    }
    .premium-ui.pos-modern-v324 .pos-v324-shell {
      display: block;
    }
    .premium-ui.pos-modern-v324 .pos-v324-categories {
      margin-bottom: 8px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-products {
      padding: 8px;
      border-radius: 16px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-search-zone {
      grid-template-columns: 1fr auto;
      top: 62px;
      margin: -8px -8px 8px;
      padding: 8px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-barcode-main {
      grid-column: 1 / -1;
      grid-row: 2;
    }
    .premium-ui.pos-modern-v324 .pos-v324-camera {
      grid-column: 2;
      grid-row: 1;
      min-width: 46px;
      padding-inline: 10px;
    }
    .premium-ui.pos-modern-v324 .pos-v324-camera span {
      display: none;
    }
    .premium-ui.pos-modern-v324 .pos-v324-tip {
      display: none;
    }
    .premium-ui.pos-modern-v324 .pos-v324-product-grid {
      grid-template-columns: repeat(2,minmax(0,1fr)) !important;
      gap: 7px !important;
      max-height: none;
      overflow: visible !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-product-card {
      min-height: 226px !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-product-photo {
      height: 92px !important;
      min-height: 92px !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-cart-panel {
      display: none !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-mobile-checkout {
      display: flex !important;
    }
  }

  @media (max-width: 420px) {
    .premium-ui.pos-modern-v324 .pos-v324-product-grid {
      grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-product-card {
      min-height: 216px !important;
      padding: 6px !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-product-photo {
      height: 82px !important;
      min-height: 82px !important;
    }
    .premium-ui.pos-modern-v324 .pos-v324-card-actions {
      grid-template-columns: 1fr;
    }
    .premium-ui.pos-modern-v324 .pos-v324-add {
      width: 100% !important;
    }
  }
}


/* =========================================================
   SFS MODERN WHOLESALE POS v3.2.4 EXTENSION
   Uses the retail v3.2.4 three-zone workbench while preserving
   wholesale minimums, pricing, tax-exempt accounts and Net terms.
   ========================================================= */
@media screen {
  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-commandbar {
    background: linear-gradient(135deg,rgba(255,255,255,.98),rgba(247,244,236,.97));
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-product-card {
    min-height: 258px !important;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-discount {
    position: absolute;
    z-index: 5;
    top: 38px;
    left: 8px;
    display: inline-flex;
    align-items: center;
    min-height: 21px;
    padding: 2px 6px;
    border-radius: 7px;
    background: #5b684f;
    color: #fff;
    box-shadow: 0 3px 9px rgba(65,74,59,.16);
    font-size: .54rem;
    font-weight: 950;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-price-row small {
    max-width: 86px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-savings strong {
    color: #397356 !important;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-cart-panel .dynamic-cart-bottom {
    grid-template-columns: auto 1fr auto !important;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-cart-panel .cart-retail-chip {
    display: none !important;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-cart-panel .dynamic-cart-top small {
    max-width: 200px;
  }

  .premium-ui.pos-modern-v324.wholesale-modern-v324 .pos-v324-customer-label select:invalid,
  .premium-ui.pos-modern-v324.wholesale-modern-v324 .pos-v324-customer-label select[value=""] {
    border-color: #d9c6a5 !important;
  }

  @media (max-width: 760px) {
    .premium-ui.pos-modern-v324.wholesale-modern-v324 .wholesale-v324-product-card {
      min-height: 238px !important;
    }
  }
}
