/* Sepehr Sabz identity. Shared tokens are the final authority for theme colours. */
.pa-theme {
    --brand-blue:#0864dc; --brand-blue-hover:#064eaf; --brand-lime:#80c400;
    --brand-green:#337c10; --brand-green-soft:#f0f8e7; --brand-blue-soft:#edf4ff;
    --brand-on-blue:#fff; --brand-panel:#084998; --brand-panel-deep:#073166;
    --pa-primary:#163659; --pa-link:var(--brand-blue); --pa-accent:var(--brand-blue);
    --pa-background:#f4f7fc; --pa-surface:#fff; --pa-subtle:#f0f5fb;
    --pa-muted:#526881; --pa-border:#dce6f1; --pa-soft-accent:var(--brand-blue-soft);
    --pa-success:#e9f5dc; --pa-blue:#e2edff;
    --auth-ink:var(--pa-primary); --auth-accent:var(--brand-blue); --auth-paper:var(--pa-surface);
    background:var(--pa-background); color:var(--pa-primary); accent-color:var(--brand-blue);
}
.pa-theme:is(.pa-page-login,.pa-page-clientregister,.pa-page-password-reset-container),.pa-theme:has(.phm-otp-page) {
    --auth-ink:var(--pa-primary); --auth-accent:var(--brand-blue); --auth-paper:var(--pa-surface);
    background:var(--pa-background);
}
.pa-theme:is(.pa-auth,.pa-page-clientregister) #main-body,.pa-theme:has(.phm-otp-page) #main-body { background:var(--pa-background); }
.pa-theme.pa-auth.pa-page-login #main-body { background:var(--pa-background); }
.pa-theme :is(#header,.pa-sidebar,.pa-surface,.panel,.table-container,.dropdown-menu,.modal-content) { background-color:var(--pa-surface); border-color:var(--pa-border); }
.pa-theme :is(h1,h2,h3,h4,.panel-title) { color:var(--pa-primary); }
.pa-theme :is(.btn-primary,.btn-info,.phm-register-button,.phm-login-pane .btn-primary,.phm-otp-card .btn-primary,.phm-auth-frame .btn-primary),
.pa-theme #header .pa-account-nav>li>.pa-guest-login-button,
.pa-theme .phm-register-main #registration form>p[align=center] .btn {
    background:var(--brand-blue); color:var(--brand-on-blue); border-color:var(--brand-blue);
    box-shadow:0 5px 14px #0864dc16;
}
.pa-theme :is(.btn-primary,.btn-info,.phm-register-button,.phm-login-pane .btn-primary,.phm-otp-card .btn-primary,.phm-auth-frame .btn-primary):is(:hover,:focus-visible),
.pa-theme #header .pa-account-nav>li>.pa-guest-login-button:hover,
.pa-theme .phm-register-main #registration form>p[align=center] .btn:hover { background:var(--brand-blue-hover); border-color:var(--brand-blue-hover); color:#fff; }
.pa-theme .btn-success { background:var(--brand-green); border-color:var(--brand-green); color:#fff; }
.pa-theme .btn-success:hover { background:#28620c; border-color:#28620c; }
.pa-theme .btn-default { color:var(--pa-primary); background:var(--pa-subtle); border-color:var(--pa-border); }
.pa-theme .btn-default:hover { color:var(--pa-link); background:var(--brand-blue-soft); border-color:var(--pa-link); }
.pa-theme :is(.form-control,.field,.input-group-addon) { background-color:var(--pa-surface); border-color:var(--pa-border); color:var(--pa-primary); }
.pa-theme :is(.form-control,.field,input,select,textarea):focus { border-color:var(--brand-blue); outline:none; box-shadow:0 0 0 3px #0864dc20; }
.pa-theme :is(.phm-auth-frame,.phm-otp-card,.phm-login-pane,.phm-register-main) :is(input,select):focus { border-color:var(--brand-blue); box-shadow:0 0 0 3px #0864dc20; }
.pa-theme :focus-visible { outline:2px solid var(--brand-blue); outline-offset:3px; }
.pa-theme :is(input,textarea)::placeholder { color:var(--pa-muted); opacity:.85; }
.pa-theme #primary-nav>.navbar-nav>li:is(.active,.open)>a { color:var(--pa-link); background:var(--brand-blue-soft); box-shadow:inset -3px 0 0 var(--brand-lime); }
[dir=ltr] .pa-theme #primary-nav>.navbar-nav>li:is(.active,.open)>a { box-shadow:inset 3px 0 0 var(--brand-lime); }
.pa-theme #primary-nav>.navbar-nav>li>a:hover { color:var(--pa-link); background:var(--brand-blue-soft); }
.pa-theme #primary-nav>.navbar-nav>li>a>i,.pa-theme .pa-avatar { color:var(--brand-blue); background:var(--brand-blue-soft); }
.pa-theme #primary-nav .dropdown-menu>li>a>i { color:var(--brand-green); }
.pa-theme :is(.pagination>.active>a,.pagination>.active>span,.pa-service-filters .btn.active) { background:var(--brand-blue); border-color:var(--brand-blue); color:#fff; }
.pa-theme :is(.nav-tabs>li.active>a,.panel-sidebar .list-group-item.active) { background:var(--brand-blue-soft); color:var(--pa-link); border-color:var(--pa-border); }
.pa-theme .pa-dashboard-stats .tile .icon { background:var(--brand-blue); }
.pa-theme .pa-dashboard-stats .tile:nth-child(2n) .icon { background:var(--brand-green); }
.pa-theme .pa-dashboard-stats .tile:nth-child(3) .icon { background:#0082bd; }
.pa-theme .pa-dashboard-stats .tile:nth-child(4) .icon { background:var(--brand-green); }
.pa-theme :is(.status-active,.status-paid,.status-answered,.label-success,.alert-success) { color:var(--brand-green); background:var(--pa-success); }
.pa-theme .alert-info { color:var(--pa-primary); background:var(--brand-blue-soft); border-color:var(--pa-border); }
.pa-theme .ticket-reply.staff { background:var(--brand-green-soft); border:1px solid var(--pa-border); }
.pa-theme :is(.phm-login-shell,.phm-register-shell,.phm-auth-frame,.phm-otp-page) { background:var(--pa-surface); border-color:var(--pa-border); box-shadow:0 20px 60px #1636590c; }
.pa-theme :is(.phm-login-welcome,.phm-register-welcome,.phm-auth-story) { background:radial-gradient(ellipse at 100% 0%,#087eff80,transparent 65%),linear-gradient(155deg,var(--brand-panel),var(--brand-panel-deep)); }
.pa-theme :is(.phm-login-welcome,.phm-register-welcome)::before { border-color:#80c40038; }
.pa-theme .phm-login-welcome::after { border-color:#80c40050; }
.pa-theme :is(.phm-login-welcome h1,.phm-register-welcome h1,.phm-auth-story h2,.phm-auth-brand) { color:#fff; }
.pa-theme :is(.phm-benefit-icon,.phm-register-benefits>div>span,.phm-login-logo) { color:#c8ef87; background:#ffffff16; }
.pa-theme :is(.phm-auth-eyebrow,.phm-auth-story-footer) { color:#c8ef87; }
.pa-theme .phm-auth-story p { color:#d7e7ff; }
.pa-theme :is(.phm-auth-frame,.phm-otp-page) .phm-auth-story p { color:#d7e7ff; }
.pa-theme .phm-auth-orbit { color:#c8ef87; border-color:#80c40065; }
.pa-theme .phm-auth-orbit span { border-color:#80c40065; }
.pa-theme .phm-auth-orbit b { background:var(--brand-lime); border-color:var(--brand-panel); }
.pa-theme :is(.phm-login-options,.phm-register-main) { background:var(--pa-surface); }
.pa-theme :is(.phm-login-options h2,.phm-register-header h2,.phm-auth-frame h1,.phm-otp-card h1) { color:var(--pa-primary); }
.pa-theme :is(.phm-login-options>div>p,.phm-method-copy small,.phm-auth-frame p,.phm-otp-card p,.phm-register-header p) { color:var(--pa-muted); }
.pa-theme .phm-method { color:var(--pa-primary); background:var(--pa-surface); border-color:var(--pa-border); }
.pa-theme .phm-method:is(:hover,:focus) { color:var(--pa-link); background:var(--brand-blue-soft); border-color:var(--brand-blue); box-shadow:0 5px 18px #0864dc10; }
.pa-theme .phm-method .phm-method-icon { color:var(--brand-blue); background:var(--brand-blue-soft); }
.pa-theme .phm-method-phone .phm-method-icon { color:var(--brand-green); background:var(--brand-green-soft); }
.pa-theme .phm-method-forgot { background:var(--pa-subtle); }
.pa-theme .phm-login-register { border-color:var(--pa-border); }
.pa-theme .phm-login-register>span { color:var(--pa-muted); }
.pa-theme .phm-register-main :is(#containerNewUserSignup,#containerNewUserSecurity) { background:var(--pa-subtle); border-color:var(--pa-border); }
.pa-theme .phm-register-main #registration .field,.pa-theme :is(.phm-auth-frame,.phm-otp-card) .form-control { color:var(--pa-primary); background:var(--pa-surface); border-color:var(--pa-border); }
.pa-theme .phm-register-main #registration .sub-heading { border-inline-start-color:var(--brand-lime); }
.pa-theme .phm-register-main #registration .sub-heading span { color:var(--pa-primary); }
.pa-theme .phm-register-header { border-color:var(--pa-border); }
.pa-theme :is(.phm-group-card,.phm-featured-card,.phm-contact-details,.phm-quick-grid a) { border-color:var(--pa-border); }
.pa-theme .phm-group-icon { color:var(--phm-accent,var(--brand-blue)); background:color-mix(in srgb,var(--phm-accent,var(--brand-blue)) 12%,var(--pa-surface)); }
.pa-theme :is(.phm-featured-price,.phm-product-price,.phm-quick-grid i,.phm-contact-grid i,.phm-login-kicker,.phm-section-heading span) { color:var(--brand-blue); }
.pa-theme .phm-contact-details { background:linear-gradient(135deg,var(--brand-blue-soft),var(--pa-surface)); }
.pa-theme :is(.phm-featured-card,.phm-quick-grid a,.phm-contact-grid>*) { background:var(--pa-surface); color:var(--pa-primary); }
.pa-theme :is(.phm-product-description,.phm-group-card p) { color:var(--pa-muted); }
.pa-theme .phm-store-categories { background:var(--pa-surface); border-color:var(--pa-border); }
.pa-theme .phm-store-categories h2 { color:var(--pa-primary); }
/* Keep per-category/product/banner colours configured by the administrator. */
.pa-theme #order-standard_cart { --pc-navy:var(--pa-primary); --pc-link:var(--brand-blue); --pc-bg:var(--pa-background); --pc-subtle:var(--pa-subtle); --pc-border:var(--pa-border); --pc-green:var(--pa-success); }
.pa-theme #order-standard_cart :is(.btn-primary,.btn-info,.product .btn-order-now) { background:var(--brand-blue); border-color:var(--brand-blue); color:#fff; }
.pa-theme #order-standard_cart #products .product .btn-order-now { background:var(--brand-blue); border-color:var(--brand-blue); }
.pa-theme #order-standard_cart #products .product .btn-order-now:hover { background:var(--brand-blue-hover); border-color:var(--brand-blue-hover); }
.pa-theme #order-standard_cart :is(.btn-primary,.btn-info,.product .btn-order-now):hover { background:var(--brand-blue-hover); border-color:var(--brand-blue-hover); }
.pa-theme #order-standard_cart .btn-success { background:var(--brand-green); border-color:var(--brand-green); color:#fff; }
.pa-theme #order-standard_cart :is(.field,.form-control,.panel-sidebar,.product,.summary-container) { background-color:var(--pa-surface); border-color:var(--pa-border); color:var(--pa-primary); }
[data-pa-color-mode=dark] .pa-theme {
    --brand-blue:#246fdf; --brand-blue-hover:#1d5fc4; --brand-green:#a4df65;
    --brand-blue-soft:#192f4c; --brand-green-soft:#213721; --brand-panel:#103a70; --brand-panel-deep:#0a2348;
    --pa-primary:#e2edfc; --pa-link:#8bbcff; --pa-background:#0e1929; --pa-surface:#152337;
    --pa-subtle:#1b2d44; --pa-border:#304660; --pa-muted:#adbed3; --pa-success:#223b28;
    --pa-blue:#213d61; --pa-soft-accent:var(--brand-blue-soft); --pa-accent:var(--pa-link);
}
[data-pa-color-mode=dark] .pa-theme .btn-success,[data-pa-color-mode=dark] .pa-theme #order-standard_cart .btn-success { color:#142509; }
[data-pa-color-mode=dark] .pa-theme .pa-dashboard-stats .tile:nth-child(2n) .icon { background:#337c10; }
[data-pa-color-mode=dark] .pa-theme :is(.phm-group-card,.phm-store-category,.phm-store-category a) { background:var(--pa-surface); color:var(--pa-primary); }
