/* Pars Aray V10.3 — commerce stabilization, mobile app shell and AR visualizer */
:root{
  --ps103-gold:#d5ad67;
  --ps103-gold-2:#f0d5a1;
  --ps103-bg:#0b0d0b;
  --ps103-panel:#111411;
  --ps103-line:rgba(255,255,255,.105);
  --ps103-safe-bottom:env(safe-area-inset-bottom,0px);
}

/* --------------------------------------------------------------------------
   Font & icon stability
   -------------------------------------------------------------------------- */
@font-face{
  font-family:'fonticons';
  src:url('../icons/fonticons.woff2') format('woff2'),url('../icons/fonticons.woff') format('woff');
  font-style:normal;font-weight:400;font-display:block;
}
@font-face{
  font-family:'FontAwesome';
  src:url('../fonts/font-awesome/fonts/fontawesome-webfont.woff2') format('woff2'),url('../fonts/font-awesome/fonts/fontawesome-webfont.woff') format('woff');
  font-style:normal;font-weight:400;font-display:block;
}
body.parsaray-v10-shop,
body.parsaray-v10-product,
body.woocommerce-shop,
body.single-product,
body.tax-product_cat,
body.tax-product_tag{
  font-family:IRANSansX,IRANYekanPars,Tahoma,Arial,sans-serif!important;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.parsaray-v10-shop input,body.parsaray-v10-shop select,body.parsaray-v10-shop button,
body.parsaray-v10-product input,body.parsaray-v10-product select,body.parsaray-v10-product button{
  font-family:IRANSansX,IRANYekanPars,Tahoma,Arial,sans-serif!important;
}
[class^="icon-"]:before,[class*=" icon-"]:before{font-family:'fonticons'!important;font-style:normal!important;font-weight:400!important}
.fa,.fa:before,[class^="fa-"]:before,[class*=" fa-"]:before{font-family:'FontAwesome'!important;font-style:normal!important;font-weight:400!important}
/* Elementor menu arrows no longer depend on a late icon-font swap. */
.elementor-nav-menu .sub-arrow{display:inline-grid!important;place-items:center!important;width:18px!important;height:18px!important;margin-inline-start:4px!important;padding:0!important}
.elementor-nav-menu .sub-arrow i,.elementor-nav-menu .sub-arrow svg{display:none!important}
.elementor-nav-menu .sub-arrow:before{content:""!important;display:block!important;width:6px!important;height:6px!important;border-left:1.4px solid currentColor!important;border-bottom:1.4px solid currentColor!important;transform:rotate(-45deg)!important;margin-top:-3px!important}
.elementor-location-header a,.elementor-location-header button,
.elementor[data-elementor-type="header"] a,.elementor[data-elementor-type="header"] button{
  font-synthesis:none!important;
}

/* Product action: AR */
.psv103-product-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:10px}
.psv103-ar-product-button{
  min-height:50px;border:1px solid rgba(213,173,103,.34)!important;border-radius:14px!important;
  background:linear-gradient(135deg,rgba(213,173,103,.12),rgba(213,173,103,.04))!important;
  color:#f0d5a1!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  transition:transform .2s ease,border-color .2s ease,background .2s ease!important;
}
.psv103-ar-product-button:hover{transform:translateY(-1px);border-color:rgba(213,173,103,.7)!important;background:rgba(213,173,103,.13)!important}
.psv103-ar-product-button b{display:grid;place-items:center;min-width:30px;height:24px;padding:0 5px;border-radius:8px;background:#d5ad67;color:#17130d;font-size:9px;letter-spacing:.08em}

/* --------------------------------------------------------------------------
   Mobile app toolbar
   -------------------------------------------------------------------------- */
.psv103-mobile-toolbar{display:none}
@media(max-width:782px){
  body.parsaray-v10-shop,body.parsaray-v10-product,body.woocommerce-shop,body.single-product,body.tax-product_cat,body.tax-product_tag{
    padding-bottom:calc(86px + var(--ps103-safe-bottom))!important;
  }
  body.parsaray-v10-shop .back-to-top,body.parsaray-v10-product .back-to-top,
  body.parsaray-v10-shop .node,body.parsaray-v10-shop .cursor,
  body.parsaray-v10-product .node,body.parsaray-v10-product .cursor{display:none!important}

  .psv103-mobile-toolbar{
    position:fixed;z-index:999990;right:10px;left:10px;bottom:calc(8px + var(--ps103-safe-bottom));
    display:grid;grid-template-columns:1fr 1fr 72px 1fr 1fr;align-items:end;gap:2px;
    min-height:66px;padding:7px 7px 6px;border:1px solid rgba(255,255,255,.12);border-radius:23px;
    background:rgba(13,16,13,.94);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);
    box-shadow:0 18px 55px rgba(0,0,0,.48);direction:rtl;
  }
  .psv103-mobile-toolbar__item{
    appearance:none;border:0;background:transparent;color:#8f958d;text-decoration:none!important;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:52px;padding:4px 1px!important;
    font-family:IRANSansX,IRANYekanPars,Tahoma,sans-serif!important;font-size:9px!important;font-weight:700!important;line-height:1.2!important;cursor:pointer;
  }
  .psv103-mobile-toolbar__item.is-active{color:#f2d59d}
  .psv103-mobile-toolbar__item svg,.psv103-toolbar-cart-icon>svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
  .psv103-mobile-toolbar__main{
    position:relative;top:-15px;appearance:none;border:1px solid rgba(255,255,255,.17);border-radius:22px;background:linear-gradient(145deg,#d8b26c,#b78943);
    color:#18130d;box-shadow:0 11px 28px rgba(194,145,70,.28),0 0 0 5px #0e110e;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:66px;height:66px;padding:0!important;margin-inline:auto;
    font-family:IRANSansX,IRANYekanPars,Tahoma,sans-serif!important;cursor:pointer;
  }
  .psv103-mobile-toolbar__main svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
  .psv103-mobile-toolbar__main small{font-size:8px!important;font-weight:900;line-height:1.1}
  .psv103-mobile-toolbar__mainIcon{font-family:Arial,sans-serif!important;font-size:16px;font-weight:900;letter-spacing:-.03em}
  .psv103-toolbar-cart-icon{position:relative;display:grid;place-items:center}
  .psv103-toolbar-cart-icon b{position:absolute;top:-7px;right:-9px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border:2px solid #0e110e;border-radius:99px;background:#d7ad64;color:#17120b;font-size:8px;font-weight:900}
  .psv103-toolbar-cart-icon b.is-pulse{animation:ps103Pulse .5s ease}
  @keyframes ps103Pulse{50%{transform:scale(1.3)}}

  .psv10-shop{padding-bottom:36px!important}
  .psv10-shell{width:min(100% - 24px,1420px)!important}
  .psv10-shop-hero{padding:27px 20px!important;border-radius:21px!important;margin-top:10px!important}
  .psv10-shop-hero h1{font-size:31px!important;line-height:1.38!important;letter-spacing:-.02em!important}
  .psv10-shop-hero p{font-size:12px!important;line-height:2!important}
  .psv10-category-chip{min-height:42px!important;padding:0 14px!important}.psv10-category-chip span{font-size:11px!important}
  .psv10-products-toolbar{border-radius:14px!important}.psv10-products-toolbar strong{font-size:13px!important}
  .psv10-product-card h2{font-size:12px!important;line-height:1.8!important}
  .psv102-quote-trigger,.psv102-card-view{font-size:9px!important}

  .psv101-product{padding-bottom:35px!important}
  .psv101-product .psv10-shell{width:calc(100% - 20px)!important}
  .psv101-breadcrumb{padding-top:10px!important;font-size:9px!important;overflow:auto;white-space:nowrap;scrollbar-width:none}
  .psv101-product-hero{gap:12px!important}
  .psv101-gallery__stage{border-radius:22px!important;min-height:0!important}
  .psv101-gallery__main{min-height:0!important;max-height:58vh!important;object-fit:contain!important}
  .psv101-product-summary{padding:22px 18px!important;border-radius:22px!important}
  .psv101-product-summary h1{font-size:clamp(26px,8.1vw,35px)!important;line-height:1.5!important;letter-spacing:-.025em!important;margin:14px 0!important}
  .psv101-product-lead,.psv101-product-lead p{font-size:12px!important;line-height:2.05!important}
  .psv101-purchase-card{padding:16px!important;border-radius:18px!important}
  .psv101-price strong{font-size:19px!important}
  .psv101-primary-cta{min-height:50px!important;font-size:11px!important}
  .psv103-product-actions{grid-template-columns:1fr}
  .psv101-trust-grid{grid-template-columns:1fr 1fr 1fr!important;gap:6px!important}.psv101-trust-grid div{padding:11px 6px!important}.psv101-trust-grid span{font-size:8px!important}
  .psv101-product-details{padding-top:48px!important}.psv101-section-intro h2{font-size:27px!important;line-height:1.55!important}.psv101-section-intro p{font-size:12px!important}
  .psv101-richtext{font-size:13px!important;line-height:2.15!important}
  .psv101-project-cta{border-radius:22px!important;padding:25px 20px!important}.psv101-project-cta h2{font-size:25px!important;line-height:1.55!important}
  .psv101-related-products{margin-top:55px!important}.psv10-section-head h2{font-size:25px!important}
}

/* --------------------------------------------------------------------------
   AR visualizer
   -------------------------------------------------------------------------- */
body.psv103-ar-lock{overflow:hidden!important}
.psv103-ar-modal{position:fixed;z-index:1000020;inset:0;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease;direction:rtl;font-family:IRANSansX,IRANYekanPars,Tahoma,Arial,sans-serif!important}
.psv103-ar-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.psv103-ar-backdrop{position:absolute;inset:0;background:rgba(3,4,3,.84);backdrop-filter:blur(18px)}
.psv103-ar-dialog{position:relative;z-index:2;width:min(1180px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:#0d100d;color:#f5f2eb;box-shadow:0 40px 140px rgba(0,0,0,.62)}
.psv103-ar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 20px;border-bottom:1px solid rgba(255,255,255,.08)}
.psv103-ar-header span{display:block;margin-bottom:6px;color:#d7b06c;font-family:Arial,sans-serif!important;font-size:9px;font-weight:800;letter-spacing:.18em}
.psv103-ar-header h2{margin:0 0 5px!important;color:#fff!important;font-size:24px!important;line-height:1.5!important;font-weight:800!important}
.psv103-ar-header p{margin:0!important;color:#7f857d!important;font-size:10px!important;line-height:1.8!important}
.psv103-ar-header>button{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:#151915;color:#fff;font-size:24px;cursor:pointer}
.psv103-ar-layout{display:grid;grid-template-columns:minmax(0,1.55fr) 330px;min-height:560px}
.psv103-ar-stage{position:relative;isolation:isolate;overflow:hidden;min-height:560px;background:radial-gradient(circle at 50% 30%,#272923,#111311 55%,#090b09);touch-action:none}
.psv103-ar-stage video,.psv103-ar-stage>img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover}
.psv103-ar-empty{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:30px;text-align:center;background:linear-gradient(145deg,rgba(255,255,255,.02),transparent)}
.psv103-ar-empty>span{display:grid;place-items:center;width:76px;height:76px;border:1px solid rgba(213,173,103,.28);border-radius:24px;background:rgba(213,173,103,.07);color:#e5c58c;font-family:Arial,sans-serif!important;font-size:24px;font-weight:900}
.psv103-ar-empty strong{color:#e8e6df;font-size:16px}.psv103-ar-empty small{max-width:360px;color:#81867f;font-size:10px;line-height:1.9}
.psv103-ar-surface{
  --ar-scale:100;--ar-opacity:82;--ar-rotate:0;--ar-x:0;--ar-y:0;
  position:absolute;z-index:4;left:50%;top:50%;width:76%;height:64%;opacity:calc(var(--ar-opacity) / 100);
  background-repeat:repeat;background-size:calc(var(--ar-scale) * 2.4px) auto;background-position:center;
  mix-blend-mode:multiply;filter:saturate(1.08) contrast(1.06);cursor:grab;touch-action:none;
  transform:translate(calc(-50% + var(--ar-x) * 1%),calc(-50% + var(--ar-y) * 1%)) rotate(calc(var(--ar-rotate) * 1deg));
  box-shadow:inset 0 0 0 1px rgba(255,213,142,.45);transition:clip-path .28s ease,border-radius .28s ease,opacity .15s ease;
  display:none;
}
.psv103-ar-surface.is-visible{display:block}
.psv103-ar-surface.is-dragging{cursor:grabbing;transition:none}
.psv103-ar-surface.is-floor{top:62%;width:94%;height:70%;clip-path:polygon(25% 4%,75% 4%,100% 100%,0 100%);border-radius:3% 3% 0 0}
.psv103-ar-surface.is-wall{top:49%;width:72%;height:70%;clip-path:polygon(3% 3%,97% 3%,94% 97%,6% 97%);border-radius:3%}
.psv103-ar-badge{position:absolute;z-index:8;right:18px;bottom:16px;max-width:calc(100% - 36px);padding:8px 11px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(9,11,9,.68);backdrop-filter:blur(12px);color:#d8d7d0;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.psv103-ar-controls{padding:24px;background:#101310;border-right:1px solid rgba(255,255,255,.08)}
.psv103-ar-control-group>span,.psv103-ar-range label span{color:#a9aea6;font-size:10px;font-weight:700}
.psv103-ar-mode{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;padding:5px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#0a0d0a}
.psv103-ar-mode button{height:39px;border:0;border-radius:10px;background:transparent;color:#858b83;font:inherit;font-size:10px;font-weight:700;cursor:pointer}
.psv103-ar-mode button.is-active{background:#24251f;color:#f1d59f;box-shadow:0 5px 16px rgba(0,0,0,.25)}
.psv103-ar-actions{display:grid;gap:8px;margin:20px 0}
.psv103-ar-actions button,.psv103-ar-upload{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:#151815;color:#dddcd6;font:inherit;font-size:10px;font-weight:800;cursor:pointer}
.psv103-ar-actions button.is-primary{border-color:rgba(213,173,103,.34);background:linear-gradient(135deg,#d7b16d,#b78944);color:#17120c}
.psv103-ar-actions svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.psv103-ar-upload input{display:none}
.psv103-ar-range{margin:18px 0}.psv103-ar-range label{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.psv103-ar-range label b{color:#d7b978;font-family:Arial,sans-serif!important;font-size:9px}.psv103-ar-range input{width:100%;accent-color:#d5ad67}
.psv103-ar-hint{margin:20px 0 0!important;padding:13px;border:1px solid rgba(213,173,103,.13);border-radius:12px;background:rgba(213,173,103,.045);color:#7f867d!important;font-size:9px!important;line-height:1.9!important}
.psv103-ar-status{display:none;margin-top:12px;padding:10px 11px;border-radius:11px;font-size:9px;line-height:1.8}.psv103-ar-status.is-visible{display:block}.psv103-ar-status.is-success{background:rgba(92,141,95,.12);color:#b7dbb7}.psv103-ar-status.is-error{background:rgba(183,79,65,.12);color:#efb5ac}.psv103-ar-status.is-info{background:rgba(213,173,103,.08);color:#d9c29a}

@media(max-width:900px){
  .psv103-ar-modal{padding:0;align-items:end}.psv103-ar-dialog{width:100%;max-height:96vh;border-radius:26px 26px 0 0}.psv103-ar-layout{grid-template-columns:1fr;min-height:0}.psv103-ar-stage{min-height:min(56vh,520px)}.psv103-ar-controls{border-right:0;border-top:1px solid rgba(255,255,255,.08);padding:18px}.psv103-ar-header{padding:18px 18px 14px}.psv103-ar-header h2{font-size:20px!important}.psv103-ar-stage .psv103-ar-badge{bottom:12px}.psv103-ar-surface.is-wall{width:82%;height:68%}
}
@media(max-width:560px){
  .psv103-ar-stage{min-height:48vh}.psv103-ar-controls{padding-bottom:calc(22px + var(--ps103-safe-bottom))}.psv103-ar-header h2{font-size:18px!important}.psv103-ar-header p{max-width:260px}.psv103-ar-empty strong{font-size:14px}.psv103-ar-empty small{font-size:9px}.psv103-ar-surface.is-floor{width:105%;height:72%;top:65%}.psv103-ar-surface.is-wall{width:86%;height:72%}
}
