:root{--bg:#FFFFFF;--surface:#F6F6F7;--deep:#ECECEF;--border:#E4E4E7;--text:#131316;--text-body:#3F3F46;--text-sec:#5F5F68;--muted:#8A8A93;--footer-bg:#FAFAFA;--header-bg:rgba(255,255,255,.86);--accent:#C6FF3D;--accent-text:#5E9104;--accent-text-hover:#4A7303;--accent-line:#93C21F;--accent-rgb:120,170,15}
body[data-theme="dark"]{--bg:#0E0E10;--surface:#1A1B1E;--deep:#141416;--border:#2A2B2F;--text:#F4F4F5;--text-body:#D4D4D8;--text-sec:#A1A1AA;--muted:#71717A;--footer-bg:#0B0B0D;--header-bg:rgba(14,14,16,.86);--accent-text:#C6FF3D;--accent-text-hover:#DAFF7A;--accent-line:#C6FF3D;--accent-rgb:198,255,61}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent-text);text-decoration:none}
a:hover{color:var(--accent-text-hover)}
img{max-width:100%}
h1,h2,h3,h4,h5,h6{font-family:Unbounded,sans-serif}
.pz-header a.pz-nav:hover{color:var(--accent-text)!important}
.pz-btn-accent{background:#C6FF3D;color:#0E0E10;font-weight:700;transition:all .2s}
.pz-btn-accent:hover{box-shadow:0 0 26px rgba(var(--accent-rgb),.45);transform:translateY(-1px);color:#0E0E10}
.pz-flink:hover{color:var(--accent-text)!important}

/* ===== BASE LAYER — theme-aware defaults so every page (incl. standard OpenCart pages) is readable in dark ===== */
body,p,li,ul,ol,dl,dd,dt,td,th,span,label,small,strong,em,b,i,blockquote,figcaption,address,summary,caption,legend{color:var(--text-body)}
h1,h2,h3,h4,h5,h6{color:var(--text)}
p{line-height:1.6}
hr{border:0;border-top:1px solid var(--border)}
/* Links inside content keep accent, but plain nav/util text stays readable */
a{color:var(--accent-text)}
a:hover{color:var(--accent-text-hover)}
/* Breadcrumbs */
.breadcrumb{background:transparent;color:var(--muted)}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--accent-text)}
/* Tables */
table{color:var(--text-body);border-color:var(--border)}
.table,.table td,.table th{border-color:var(--border)!important;color:var(--text-body)}
.table thead th,.table>thead>tr>th{background:var(--deep);color:var(--text);border-color:var(--border)}
.table-bordered{border-color:var(--border)}
/* Form controls — critical for dark: default white inputs look broken, black text can vanish */
input,select,textarea,.form-control{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px}
.form-control{box-shadow:none}
input::placeholder,textarea::placeholder,.form-control::placeholder{color:var(--muted);opacity:1}
input:focus,select:focus,textarea:focus,.form-control:focus{border-color:var(--accent-line);outline:none;box-shadow:0 0 0 2px rgba(var(--accent-rgb),.15)}
label,.control-label{color:var(--text)}
/* Panels / wells / cards from bootstrap-based pages */
.panel,.well,.card,.list-group-item,.thumbnail{background:var(--surface);border-color:var(--border);color:var(--text-body)}
.panel-heading,.panel-footer{background:var(--deep);border-color:var(--border);color:var(--text)}
.panel-title{color:var(--text)}
/* Alerts stay legible */
.alert{border-color:var(--border)}
/* Buttons: standard bootstrap buttons -> readable, primary -> accent */
.btn{border-radius:8px}
.btn-default{background:var(--surface);color:var(--text);border-color:var(--border)}
.btn-default:hover{background:var(--deep);color:var(--text)}
.btn-primary,.btn-info,.btn-success{background:#C6FF3D;color:#0E0E10;border-color:#C6FF3D;font-weight:700}
.btn-primary:hover,.btn-info:hover,.btn-success:hover{background:#b4ee2c;color:#0E0E10;border-color:#b4ee2c}
/* Dropdowns / menus */
.dropdown-menu{background:var(--surface);border-color:var(--border)}
.dropdown-menu>li>a{color:var(--text-body)}
.dropdown-menu>li>a:hover{background:var(--deep);color:var(--text)}
/* Pagination */
.pagination>li>a,.pagination>li>span{background:var(--surface);color:var(--text);border-color:var(--border)}
.pagination>.active>a,.pagination>.active>span{background:var(--accent-line);color:#0E0E10;border-color:var(--accent-line)}
/* Product/category standard blocks */
.price{color:var(--text)}
.price-new{color:var(--accent-text)}
.price-old{color:var(--muted);text-decoration:line-through}
.rating .fa-star{color:var(--accent-line)}
/* Inputs group / addons */
.input-group-addon{background:var(--deep);color:var(--text);border-color:var(--border)}
/* Muted helper text */
.text-muted,.help-block{color:var(--muted)}
/* Ensure code/pre readable */
pre,code{background:var(--deep);color:var(--text-body);border-color:var(--border)}

/* ===== Text selection — brand green (from mockup) ===== */
::selection{background:#C6FF3D;color:#0E0E10}
::-moz-selection{background:#C6FF3D;color:#0E0E10}
/* ===== Soft focus — no harsh box/outline on click; laconic ===== */
a,button,summary,[tabindex],.btn,.blog-chip,.post-card,.page-link{outline:none;-webkit-tap-highlight-color:transparent}
a:focus,button:focus,summary:focus,.btn:focus,.blog-chip:focus,.post-card:focus,.page-link:focus,a:active,button:active{outline:none;box-shadow:none}
/* keyboard users still get a subtle ring for accessibility */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}

/* ===== Native pagination styling ===== */
.pagination{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}
.pagination>li{margin:0}
.pagination>li>a,.pagination>li>span{display:block;min-width:42px;text-align:center;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-decoration:none;font-weight:600;font-size:14px}
.pagination>.active>span,.pagination>.active>a{background:var(--accent-line);color:#0E0E10;border-color:var(--accent-line)}
.pagination>li>a:hover{border-color:var(--accent-line);color:var(--accent-text)}

/* ===== Pagination: centered, square buttons ===== */
.pagination{justify-content:center!important;align-items:center}
.pagination>li>a,.pagination>li>span{min-width:46px;height:46px;display:flex;align-items:center;justify-content:center;padding:0 12px;box-sizing:border-box}
