/* Hooshamoozan V2.0.0 — reversible presentation layer only.
   Independent visual identity. Does not modify forms, transactions, or data. */
:root{
 --bg-body:#0b1420;--bg-surface:#111e2b;--bg-surface-hover:#172837;
 --bg-elevated:#192b3a;--bg-header:rgba(11,20,32,.88);
 --border:rgba(174,211,218,.13);--border-hover:rgba(109,215,187,.38);
 --text-primary:#edf7f5;--text-secondary:#afc4c8;--text-tertiary:#849ba7;
 --accent:#45c5a5;--accent-hover:#2baa8c;--accent-text:#78e0c3;
 --accent-muted:rgba(69,197,165,.12);
 --radius-xs:10px;--radius-sm:13px;--radius-md:17px;--radius-lg:22px;--radius-xl:30px;
 --shadow-sm:0 4px 18px rgba(0,9,15,.07);--shadow-md:0 14px 36px rgba(0,10,20,.16);--shadow-lg:0 24px 75px rgba(0,8,20,.27);
 --font:'Vazirmatn',Tahoma,Arial,sans-serif;
 --ha-v2-outline:rgba(89,209,179,.28);--ha-v2-panel:rgba(255,255,255,.035);
 --ha-v2-soft:rgba(100,166,190,.08);
}
html[data-theme=light],:root[data-theme=light]{
 --bg-body:#f7faf9;--bg-surface:#fff;--bg-surface-hover:#f2f8f6;
 --bg-elevated:#eaf3f0;--bg-header:rgba(255,255,255,.9);
 --border:#e1eae8;--border-hover:#a0d8ca;
 --text-primary:#192c34;--text-secondary:#526b72;--text-tertiary:#728a90;
 --accent:#137f69;--accent-hover:#096753;--accent-text:#0e8068;
 --accent-muted:rgba(19,127,105,.09);
 --shadow-sm:0 5px 20px rgba(20,70,65,.025);--shadow-md:0 15px 35px rgba(20,70,65,.055);--shadow-lg:0 24px 55px rgba(13,60,67,.09);
 --ha-v2-outline:rgba(18,130,109,.18);--ha-v2-panel:rgba(255,255,255,.85);--ha-v2-soft:rgba(25,110,91,.055);
}
html{scroll-padding-top:90px;scroll-behavior:smooth}body{font-family:var(--font)!important;line-height:1.9;background:var(--bg-body);color:var(--text-primary);font-feature-settings:'ss01' on}
body,button,input,select,textarea{font-family:var(--font)!important}a,button{ -webkit-tap-highlight-color:transparent }
:focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px}
::selection{background:var(--accent-muted);color:var(--text-primary)}
.container{max-width:1260px;padding-inline:clamp(18px,3vw,44px)}
#liquid-bg{opacity:.1!important;pointer-events:none}
/* Navigation; preserve actual server-side routes, buttons and modal handlers. */
.site-header{border-bottom:1px solid var(--border)!important;box-shadow:0 6px 30px rgba(2,23,29,.035)!important;background:var(--bg-header)!important;backdrop-filter:blur(22px) saturate(1.35);-webkit-backdrop-filter:blur(22px) saturate(1.35)}
.site-header .header-inner{min-height:75px;height:auto;gap:clamp(8px,2vw,24px);padding-block:10px}
.site-header .brand-logo{font-weight:850!important;font-size:1.04rem;letter-spacing:-.03em;gap:10px}
.site-header .brand-logo img{width:43px;height:43px;object-fit:contain;border-radius:13px}
.site-header .nav-menu{display:flex;align-items:center;gap:3px;background:var(--ha-v2-panel);border:1px solid var(--border);border-radius:17px;padding:5px}
.site-header .nav-link{border-radius:12px;min-height:41px;padding:7px 12px;font-weight:650;font-size:.86rem;transition:background .2s ease,color .2s ease}
.site-header .nav-link svg{width:16px;height:16px;stroke-width:1.8}
.site-header .nav-link.active{background:var(--accent-muted);color:var(--accent-text);font-weight:800}
.site-header .header-actions{gap:8px}
.site-header .header-actions .icon-btn{width:43px;height:43px;min-width:43px;min-height:43px;border-radius:13px;border:1px solid var(--border);background:var(--bg-surface)}
.site-header .header-actions .btn{min-height:43px;border-radius:13px;padding:10px 16px!important}
.site-header .cart-badge-count{box-shadow:0 0 0 2px var(--bg-surface)}
/* Typography and shared components. */
h1,h2,h3,h4{letter-spacing:-.035em;text-wrap:pretty}h1{line-height:1.53}p{line-height:1.95}
.btn,button:not(.icon-btn):not(.theme-toggle):not(.search-toggle){transition:background .18s ease,transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.btn{border-radius:14px;min-height:44px;padding:11px 19px;font-weight:750}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#072920!important}
.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff!important;box-shadow:0 9px 23px rgba(28,156,127,.18)}
.btn-outline,.btn-secondary{border-color:var(--border);background:var(--bg-surface);color:var(--text-primary)}
.btn-outline:hover,.btn-secondary:hover{background:var(--bg-surface-hover);border-color:var(--border-hover)}
.card,.tool-card,.product-card,.video-card,.article-card,.course-card,.shop-product-card{
 border:1px solid var(--border)!important;border-radius:var(--radius-lg)!important;background:var(--bg-surface)!important;
 box-shadow:var(--shadow-sm)!important;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
@media(hover:hover){.card:hover,.tool-card:hover,.product-card:hover,.video-card:hover,.article-card:hover,.course-card:hover,.shop-product-card:hover{transform:translateY(-3px);border-color:var(--border-hover)!important;box-shadow:var(--shadow-md)!important}}
.section{padding-block:clamp(52px,6.5vw,96px)}.section-header{margin-bottom:24px;align-items:end;gap:18px}
.section-title h2{font-size:clamp(1.32rem,2.25vw,1.9rem);font-weight:850;line-height:1.6}
.section-title h2 svg{color:var(--accent-text);height:22px;width:22px}
.section-title p{color:var(--text-secondary);font-size:.91rem;line-height:1.95}
.section-link{border:1px solid var(--border);border-radius:12px;padding:9px 15px;background:var(--bg-surface);font-size:.84rem}
.section-link:hover{background:var(--bg-surface-hover);border-color:var(--border-hover)}
.badge{border:1px solid var(--border);border-radius:99px;font-weight:700}
/* Homepage: editorial copy on right, bespoke graphic on left. */
body.page-home>.hero,body.page-home .hero:first-of-type{isolation:isolate}
body.page-home .hero{position:relative;padding:clamp(57px,7.5vw,100px) 0 clamp(49px,5vw,78px);overflow:hidden;background:radial-gradient(ellipse at 90% 10%,rgba(48,166,137,.12),transparent 46%),radial-gradient(ellipse at 6% 65%,rgba(81,132,201,.11),transparent 50%)}
body.page-home .hero .container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.98fr);gap:clamp(32px,5vw,75px);align-items:center;position:relative;z-index:2}
body.page-home .hero-content{text-align:right;max-width:700px;margin:0;position:relative;z-index:2}
body.page-home .hero-label{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--ha-v2-outline);background:var(--accent-muted);color:var(--accent-text);padding:8px 13px;border-radius:999px;font-size:.79rem;margin-bottom:22px}
body.page-home .hero h1{font-size:clamp(2.1rem,4.1vw,3.9rem);font-weight:900;line-height:1.45;margin-bottom:18px;max-width:800px}
body.page-home .hero h1 .text-gradient{background:linear-gradient(110deg,#3fc49f,#a2e9d2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
[data-theme=light] body.page-home .hero h1 .text-gradient{background:linear-gradient(110deg,#0a806b,#2498a9);-webkit-background-clip:text;background-clip:text}
body.page-home .hero p{max-width:600px;color:var(--text-secondary);font-size:clamp(.95rem,1.3vw,1.08rem);line-height:2.05;margin:0 0 28px}
body.page-home .hero-actions{display:flex;justify-content:flex-start;align-items:center;gap:11px;flex-wrap:wrap}
body.page-home .hero-actions .btn{min-height:50px;padding:12px 20px}
.ha-v2-hero-art{position:relative;min-height:385px;border-radius:32px;overflow:hidden;border:1px solid var(--ha-v2-outline);background:#081725;box-shadow:var(--shadow-lg);display:flex;align-items:stretch}
.ha-v2-hero-art img{width:100%;height:100%;min-height:385px;object-fit:cover;object-position:50% 50%;display:block}
.ha-v2-hero-art:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(4,19,26,.30),transparent 46%)}
.ha-v2-art-mark{position:absolute;top:17px;right:18px;color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.015em;border:1px solid #ffffff34;background:#08192381;backdrop-filter:blur(13px);border-radius:99px;padding:6px 11px;z-index:1}
.ha-v2-art-note{position:absolute;bottom:17px;left:17px;right:17px;z-index:1;display:flex;justify-content:space-between;gap:8px;color:#e8fff7;align-items:center;font-size:.78rem;font-weight:750}
.ha-v2-art-note span{background:#0b2638a8;border:1px solid #ffffff22;padding:7px 10px;border-radius:10px;backdrop-filter:blur(8px)}
.ha-v2-pillar-strip{padding:0 0 clamp(24px,4vw,40px);background:var(--bg-body)}
.ha-v2-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.ha-v2-pillar{display:flex;align-items:center;gap:14px;position:relative;padding:20px 18px;border:1px solid var(--border);border-radius:20px;background:var(--bg-surface);min-width:0;transition:transform .2s,border-color .2s,background .2s}
.ha-v2-pillar:hover{background:var(--bg-surface-hover);border-color:var(--border-hover);transform:translateY(-2px)}
.ha-v2-pillar-icon{width:48px;height:48px;flex:none;display:grid;place-items:center;border:1px solid var(--ha-v2-outline);background:var(--accent-muted);border-radius:15px;color:var(--accent-text)}
.ha-v2-pillar-icon svg{width:23px;height:23px}.ha-v2-pillar-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.ha-v2-pillar-copy strong{font-size:.96rem;color:var(--text-primary)}.ha-v2-pillar-copy small{font-size:.75rem;line-height:1.8;color:var(--text-secondary)}
.ha-v2-pillar-arrow{margin-right:auto;flex:none;color:var(--text-tertiary)}.ha-v2-pillar-arrow svg{width:18px;height:18px}
.ha-v2-pillar:focus-visible{outline:2px solid var(--accent)}
/* Shop: distinguish product identity / price / CTA without breaking form markup. */
.shop-hero{padding:clamp(56px,6vw,90px) 0 46px!important;background:radial-gradient(ellipse at 86% 8%,rgba(69,197,165,.14),transparent 53%)}
.shop-hero .hero-label{background:var(--accent-muted);border:1px solid var(--ha-v2-outline);color:var(--accent-text);border-radius:99px}
.shop-hero h1{font-size:clamp(2rem,3.9vw,3.1rem);line-height:1.5;font-weight:900}
.shop-hero p{color:var(--text-secondary)}
.products-grid,.shop-products-grid{gap:clamp(14px,2vw,24px)}
.product-card,.shop-product-card{overflow:hidden;isolation:isolate}
.product-card .product-body,.shop-product-card .product-body{padding:clamp(14px,1.6vw,21px)}
.product-card .product-footer,.shop-product-card .product-footer{border-top:1px solid var(--border);padding-top:13px;margin-top:14px}
.product-card img,.shop-product-card img{border-radius:15px;object-fit:cover}
.product-card .btn,.shop-product-card .btn{border-radius:12px}
.shop-catalog .section-header{margin-bottom:30px}
/* Academy + lesson screens */
.courses-page,.courses-catalog{color:var(--text-primary)}
.courses-hero{background:radial-gradient(ellipse at 85% 10%,rgba(66,186,159,.13),transparent 58%)}
.courses-hero-card,.course-card{border-radius:23px!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-sm);overflow:hidden;background:var(--bg-surface)}
.courses-grid{gap:20px}.course-card-body{padding:20px}.course-card-footer{border-top:1px solid var(--border)}
.course-meta-chips>*{border-radius:99px}.course-card h3{font-size:1.08rem;line-height:1.65}
.course-price{color:var(--accent-text)}
.course-academy-layout,.academy-lesson-layout{gap:20px}
.course-academy-sidebar,.academy-lesson-sidebar,.academy-lesson-content,.course-intro-card{border-radius:21px!important;border:1px solid var(--border)}
/* Articles + blog with intentional reading rhythm */
.mag-editorial-hero{background:radial-gradient(ellipse at 15% 15%,rgba(72,175,163,.11),transparent 47%)}
.mag-editorial-grid{gap:22px}.mag-editorial-grid article{border-radius:23px;overflow:hidden}
.article-v22-page,.article-v23-page,.article-detail-page{line-height:2}
.article-v22-reading-column,.article-v23-shell,.article-v22-rail>*{border-radius:21px}
.article-v22-reading-column p,.article-v23-shell p,.article-body p{line-height:2.2}
.article-v22-reading-column h2,.article-v23-shell h2{margin-block:26px 12px;line-height:1.6}
/* Shared forms / checkout / panels: no changes to inputs or order semantics */
input:not([type=checkbox]):not([type=radio]),textarea,select{border-radius:12px;border-color:var(--border);background:var(--bg-surface);color:var(--text-primary)}
input:focus,textarea:focus,select:focus{border-color:var(--accent);outline:2px solid var(--accent-muted);outline-offset:0}
.product-purchase-card,.detail-content-card,.product-description-card,.product-terms-card,.product-reviews-panel{border-radius:23px!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-sm)}
.product-sticky-bar,.checkout-summary,.order-summary{box-shadow:var(--shadow-md)}
body .dashboard-sidebar,body .dashboard-card,body .dashboard-panel{border-radius:18px}
/* Home magazine, video and tools */
.home-videos-grid,.videos-grid,.articles-grid,.tools-grid{gap:20px}
.video-card,.tool-card,.article-card{overflow:hidden}
.video-card-preview,.article-thumb{overflow:hidden;border-radius:17px}
.video-card-preview img,.article-thumb img{transition:transform .4s cubic-bezier(.2,.75,.3,1)}
@media(hover:hover){.video-card:hover img,.article-card:hover img{transform:scale(1.025)}}
.video-card-body,.article-body{padding:17px}
.tool-card{padding:19px}
/* Footer */
.site-footer{margin-top:auto;border-top:1px solid var(--border);background:var(--bg-surface);padding-top:clamp(44px,6vw,70px)}
.footer-grid{gap:clamp(26px,4vw,55px)}.footer-col h3,.footer-col h4{font-size:.98rem;margin-bottom:14px;font-weight:850}
.footer-col p,.footer-col a{color:var(--text-secondary);line-height:2}.footer-col a:hover{color:var(--accent-text)}
.footer-col .brand-logo{font-size:1.05rem;font-weight:850}.footer-social .icon-btn{border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated)}
.footer-bottom{border-top:1px solid var(--border);padding-block:20px;color:var(--text-tertiary)}
/* Motion kept deliberately soft, progressive, accessible. */
.ha-v2-enter{animation:ha-v2-rise .55s cubic-bezier(.16,1,.3,1) both}
@keyframes ha-v2-rise{from{opacity:.5;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1080px){.site-header .nav-menu{gap:0}.site-header .nav-link{padding:7px 9px}}
@media(max-width:900px){
 body.page-home .hero .container{grid-template-columns:minmax(0,1fr);gap:24px}
 body.page-home .hero{padding:42px 0 38px}
 .ha-v2-hero-art{min-height:255px;max-height:380px;order:2;border-radius:23px}
 .ha-v2-hero-art img{min-height:255px;max-height:380px;object-position:center}
 .ha-v2-pillars{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
 .ha-v2-pillar{padding:14px 12px;gap:9px;flex-wrap:wrap}.ha-v2-pillar-icon{height:40px;width:40px;border-radius:12px}.ha-v2-pillar-icon svg{height:21px;width:21px}
 .ha-v2-pillar-arrow{display:none}
 .site-header .nav-menu{border:0;background:transparent}
}
@media(max-width:640px){
 body.page-home .hero{padding:35px 0 28px}
 body.page-home .hero h1{font-size:clamp(1.92rem,8.4vw,2.65rem);line-height:1.55}
 body.page-home .hero p{font-size:.92rem;margin-bottom:20px}
 body.page-home .hero-actions{gap:9px}
 body.page-home .hero-actions .btn{min-height:46px;padding:10px 13px;font-size:.81rem}
 .ha-v2-hero-art{min-height:220px;max-height:300px;border-radius:19px}.ha-v2-hero-art img{min-height:220px;max-height:300px}
 .ha-v2-art-mark{font-size:.67rem;top:11px;right:11px}.ha-v2-art-note{bottom:11px;left:11px;right:11px;font-size:.64rem}.ha-v2-art-note span{padding:6px}
 .ha-v2-pillars{grid-template-columns:1fr;gap:9px}
 .ha-v2-pillar{min-height:69px;display:flex;flex-wrap:nowrap;padding:12px 13px}.ha-v2-pillar-arrow{display:block}
 .ha-v2-pillar-copy small{font-size:.74rem}
 .section{padding-block:43px}.section-header{align-items:flex-start;flex-wrap:wrap;gap:10px}
 .container{padding-inline:17px}.footer-grid{gap:24px}
 .products-grid,.shop-products-grid,.home-videos-grid,.articles-grid,.courses-grid{gap:12px}
 .card,.product-card,.shop-product-card,.course-card,.video-card,.article-card{border-radius:17px!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ha-v2-enter{animation:none!important}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}

/* Contextual mobile dock on the four discovery pages, never on checkout/payment. */
.ha-v2-bottom-nav{display:none}
@media(max-width:650px){
 body.ha-v2-has-bottom-nav{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
 .ha-v2-bottom-nav{position:fixed;z-index:1000;bottom:calc(10px + env(safe-area-inset-bottom));right:12px;left:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;align-items:center;padding:7px;border:1px solid var(--border);background:var(--bg-header);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:19px;box-shadow:0 13px 40px #001e2440}
 .ha-v2-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.69rem;font-weight:700;min-height:54px;color:var(--text-secondary);border-radius:12px}
 .ha-v2-bottom-nav a.current{background:var(--accent-muted);color:var(--accent-text)}
 .ha-v2-bottom-nav svg{height:19px;width:19px}
}
