:root{--navy:#142c4d;--navy-deep:#10233e;--blue:#2868d7;--blue-soft:#eaf1fd;--orange:#ef783b;--ink:#202b38;--muted:#718093;--line:#e3e9ef;--paper:#fff;--canvas:#f5f7f9;--green:#16a275;--shadow:0 12px 32px rgba(22,43,69,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,"Segoe UI",Arial,"Microsoft YaHei",sans-serif;line-height:1.65}a{color:inherit}button,input,textarea,select{font:inherit}.wrap{width:min(1200px,92%);margin-inline:auto}
header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;letter-spacing:.04em;color:var(--navy)}.logo img{width:42px;height:48px;object-fit:contain}.nav nav{display:flex;align-items:center;gap:26px}.nav nav a{text-decoration:none;color:#536273;font-size:14px;font-weight:600}.nav nav a:hover{color:var(--blue)}.menu{display:none;border:1px solid var(--line);border-radius:8px;background:white;color:var(--navy);padding:5px 10px;font-size:22px}.language{border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);padding:8px 11px;cursor:pointer}
.hero{padding:68px 0 72px;background:linear-gradient(120deg,#f3f7fb,#edf2f7)}.hero-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:54px;align-items:center}.hero small,.section small{font-size:11px;letter-spacing:.14em;color:var(--blue);font-weight:800}.hero h1{font-size:clamp(38px,5vw,64px);line-height:1.08;letter-spacing:-.035em;color:var(--navy);margin:16px 0}.hero p{font-size:17px;line-height:1.8;color:#667487;max-width:560px}.hero-box{height:390px;position:relative;overflow:hidden;border-radius:10px;background:linear-gradient(145deg,#203d4b,#112337);box-shadow:var(--shadow);display:grid;place-items:center;color:white;text-align:center}.hero-box>img{width:100%;height:100%;object-fit:contain;background:linear-gradient(145deg,#eef2f4,#fff)}.hero-box>span{font-size:46px;font-weight:800;line-height:1.15}.hero-box i{position:absolute;left:22px;bottom:18px;padding:6px 10px;border-radius:4px;background:rgba(16,35,62,.8);color:#fff;font-size:10px;letter-spacing:.13em;font-style:normal}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 19px;border:0;border-radius:6px;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;cursor:pointer;box-shadow:0 6px 14px rgba(40,104,215,.18);transition:background .2s,transform .2s}.btn:hover{background:#1d56bc;transform:translateY(-1px)}.btn-secondary{background:white;color:var(--navy);border:1px solid var(--line);box-shadow:none}
.section{padding:70px 0}.section h2{font-size:32px;line-height:1.2;color:var(--navy);margin:8px 0 12px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:25px}.card{min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:16px;box-shadow:0 3px 12px rgba(30,50,75,.035)}.card img,.placeholder{width:100%;height:185px;object-fit:contain;background:#f8fafb;border-radius:6px;display:grid;place-items:center;color:#8896a6;font-weight:800}.card h3{font-size:15px;line-height:1.4;color:var(--navy);margin:14px 0 4px}.card p{font-size:13px;color:var(--muted);margin:4px 0 12px}.card a:not(.btn){font-size:13px;color:var(--blue);font-weight:700;text-decoration:none}.card a:hover{text-decoration:underline}
.dark{background:var(--navy);color:white}.dark small{color:#a9c8ff}.dark h2{color:white}.dark p{max-width:800px;color:#d2deec}.formgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.formgrid form{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:white;padding:24px;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.formgrid input,.formgrid textarea,.formgrid select{width:100%;min-width:0;font:inherit;padding:12px 13px;border:1px solid #d6dfe8;border-radius:6px;background:#fff;color:var(--ink)}.formgrid input:focus,.formgrid textarea:focus,.formgrid select:focus{outline:2px solid #c7dafb;border-color:var(--blue)}.formgrid textarea{grid-column:1/-1;min-height:125px;resize:vertical}.formgrid button{justify-self:start}.formgrid h2{font-size:36px}footer{padding:25px 0;background:var(--navy-deep);color:#dce7f4;font-size:13px}
.detail{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}.detail h1{font-size:clamp(30px,4vw,46px);color:var(--navy);line-height:1.15}.detail p{color:#5e6c7d}.gallery{height:500px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:9px;background:#fff;border:1px solid var(--line);padding:16px}.gallery .slide{display:none;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.gallery .slide.active{display:block}.thumbs{display:flex;gap:9px;overflow:auto;margin-top:12px;padding:2px}.thumbs img{flex:0 0 72px;width:72px;height:62px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:5px;cursor:pointer}.thumbs img.active{border:2px solid var(--blue)}.specs{margin:18px 0 24px;background:white;border:1px solid var(--line);border-radius:8px;padding:4px 14px}.specs div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:11px 0}.specs div:last-child{border-bottom:0}.specs span{color:var(--muted)}summary{cursor:pointer;font-weight:800;color:var(--navy);margin:20px 0}
.center{min-height:100vh;display:grid;place-items:center;text-align:center}.chat-widget{position:fixed;z-index:50;right:22px;bottom:22px}.chat-toggle{border:0;border-radius:999px;background:var(--green);color:white;padding:13px 19px;box-shadow:0 8px 24px rgba(22,162,117,.25);font:inherit;font-weight:700;cursor:pointer}.chat-toggle span{margin-left:6px}.chat-panel{position:absolute;right:0;bottom:68px;width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow:auto;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.chat-panel[hidden]{display:none}.chat-panel>header{position:static;background:var(--navy);color:white;padding:14px 17px;display:flex;justify-content:space-between;align-items:center}.chat-panel>header button{border:0;background:transparent;color:white;font-size:25px;cursor:pointer}.chat-body{padding:16px}.chat-bubble{margin:0 0 12px;background:#f2f6fa;border-radius:6px;padding:11px 13px;font-size:14px}.chat-answer{display:block;width:100%;margin:8px 0;padding:10px 12px;border:1px solid var(--line);background:white;border-radius:6px;text-align:left;cursor:pointer;color:var(--ink)}.chat-answer:hover{border-color:var(--blue);color:var(--blue)}.chat-reply{font-size:14px;color:#596879;padding-top:5px}.chat-contact{display:block;padding:13px 17px;background:var(--green);color:white;text-decoration:none;font-weight:700}.chat-contact:hover{background:#10855f}
.admin-body{background:#f3f6fa;min-height:100vh}.admin-shell{min-height:100vh}.admin-sidebar{position:fixed;z-index:40;inset:0 auto 0 0;width:232px;padding:18px 12px;background:var(--navy-deep);color:white;display:flex;flex-direction:column}.admin-brand{height:58px;display:flex;align-items:center;gap:9px;padding:0 11px 15px;color:white;text-decoration:none;font-weight:800;border-bottom:1px solid #ffffff20}.admin-brand img{width:36px;height:38px;object-fit:contain;background:white;border-radius:6px}.admin-sidebar nav{display:grid;gap:5px;padding-top:18px}.admin-sidebar nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;color:#c7d3e2;text-decoration:none;border-radius:6px;font-size:14px}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{background:var(--blue);color:white}.admin-sidebar .sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff20;padding-top:12px}.admin-content{margin-left:232px;min-height:100vh}.admin-topbar{height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 30px;background:white;border-bottom:1px solid var(--line);color:#637184;font-size:13px}.admin-topbar a{color:var(--blue);text-decoration:none}.admin-main{padding:30px;max-width:1500px;margin:auto}.admin-main h1{font-size:25px;color:var(--navy);margin:0 0 22px}.admin-main h1 .btn{margin-left:12px;font-size:14px}.admin-main h2{color:var(--navy)}.admin-main .section{padding:0}.admin-main .grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.admin-main .card{box-shadow:0 5px 20px rgba(22,43,69,.04)}.admin-main table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.admin-main th{background:#f1f5f9;color:#506176;text-align:left;font-size:12px}.admin-main th,.admin-main td{padding:11px 12px;border-bottom:1px solid var(--line)}.admin-main tr:last-child td{border-bottom:0}.admin-main input,.admin-main textarea,.admin-main select{max-width:100%;font:inherit;padding:11px 12px;border:1px solid #d6dfe8;border-radius:6px;background:white;color:var(--ink)}.admin-main textarea{min-height:100px}.admin-main form.card{max-width:820px}.admin-topbar .admin-menu{display:none}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{gap:30px}.admin-sidebar{width:210px}.admin-content{margin-left:210px}.admin-main{padding:22px}}
@media(max-width:700px){.nav{min-height:64px}.nav nav{display:none;position:absolute;left:0;right:0;top:64px;padding:16px 4%;background:white;align-items:stretch;flex-direction:column;gap:12px;border-bottom:1px solid var(--line)}.nav nav.open{display:flex}.menu{display:block}.hero{padding:44px 0}.hero-grid,.formgrid,.detail{grid-template-columns:1fr}.hero-box{height:270px}.section{padding:48px 0}.section h2{font-size:27px}.grid{grid-template-columns:1fr 1fr;gap:12px}.card{padding:11px}.card img,.placeholder{height:145px}.formgrid{gap:16px}.formgrid form{padding:16px;grid-template-columns:1fr}.formgrid textarea{grid-column:auto}.gallery{height:min(78vw,390px);min-height:280px;padding:10px}.detail{gap:26px}.chat-widget{right:15px;bottom:15px}.admin-sidebar{transform:translateX(-100%);transition:transform .2s}.admin-sidebar.open{transform:translateX(0)}.admin-content{margin-left:0}.admin-topbar{padding:0 16px}.admin-topbar .admin-menu{display:inline-flex;border:1px solid var(--line);border-radius:6px;background:white;padding:6px 10px;color:var(--navy);font-size:20px}.admin-main{padding:20px 14px}.admin-main .grid{grid-template-columns:1fr}.admin-sidebar-backdrop{display:none;position:fixed;inset:0;z-index:35;background:#07182d66}.admin-sidebar-backdrop.open{display:block}}

/* 首页产品图：完整显示，统一白底并去除边框 */
#products .card img,
.hero-box > img {
  display: block;
  width: 100%;
  object-fit: contain !important;
  background: #fff !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
#products .card img {
  height: 205px;
  padding: 6px;
  border-radius: 0;
}
.hero-box > img {
  height: 100%;
  padding: 18px;
}
/* 商品详情缩略图：用蓝色轻描边标出选中项 */
.thumbs img {
  border: 1px solid #e3e9ef !important;
  box-shadow: none !important;
}
.thumbs img.active {
  border: 2px solid #2868d7 !important;
}
/* 首页横向大图首屏 */
.hero{padding:34px 0 38px;background:#f3f6f9}
.hero-banner{position:relative;isolation:isolate;min-height:380px;display:flex;align-items:center;overflow:hidden;border-radius:9px;background:linear-gradient(125deg,#162d29,#315148 68%,#405c50);box-shadow:0 16px 36px rgba(17,35,57,.14)}
.hero-image{position:absolute;z-index:-2;right:0;bottom:0;width:70%;height:100%;object-fit:contain;object-position:right center}
.hero-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(13,29,26,.97) 0%,rgba(13,29,26,.88) 39%,rgba(13,29,26,.38) 65%,rgba(13,29,26,.08) 100%),linear-gradient(0deg,rgba(10,22,20,.20),transparent 50%)}
.hero-copy{width:min(57%,650px);padding:42px 48px;color:white}
.hero-copy small{color:#EF783B;font-size:11px;letter-spacing:.16em;font-weight:800}
.hero-copy h1{margin:15px 0 14px;color:#fff;font-size:clamp(34px,4.5vw,56px);font-weight:750;line-height:1.08;letter-spacing:-.025em}
.hero-copy p{max-width:530px;margin:0 0 22px;color:rgba(255,255,255,.82);font-size:15px;line-height:1.75}
.hero-copy .btn{background:#ef783b;color:white;border:0;border-radius:5px;box-shadow:none;padding:10px 18px}
.hero-copy .btn:hover{background:#d95e29}
@media(max-width:700px){.hero{padding:18px 0 28px}.hero-banner{min-height:470px;align-items:flex-start}.hero-image{width:100%;height:58%;object-position:center bottom}.hero-shade{background:linear-gradient(180deg,rgba(13,29,26,.98) 0%,rgba(13,29,26,.91) 44%,rgba(13,29,26,.18) 100%)}.hero-copy{width:100%;padding:28px 23px}.hero-copy h1{font-size:36px}.hero-copy p{font-size:14px;max-width:100%}}

/* Unified 贝莱设备 identity across the storefront and administration */
:root{--navy:#142c4d;--navy-deep:#10233e;--blue:#2868d7;--orange:#ef783b;--ink:#253346;--muted:#718093;--line:#e2e8ef;--canvas:#f4f7fa;--green:#159d73;--shadow:0 14px 36px rgba(16,35,62,.09)}
body,button,input,textarea,select{font-family:Inter,"Segoe UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC",Arial,sans-serif}
body{color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,strong,th{letter-spacing:-.015em}
.logo{gap:10px;color:var(--navy);letter-spacing:0}
.logo img{width:42px;height:42px;object-fit:contain}
.logo-words,.admin-brand-words,.login-brand>span{display:flex;flex-direction:column;line-height:1.15}
.logo-words strong,.admin-brand-words strong,.login-brand strong{font-size:17px;font-weight:800;color:var(--navy)}
.logo-words small,.admin-brand-words small,.login-brand small{margin-top:4px;font-size:8px;letter-spacing:.2em;font-weight:800;color:#8491a1}
.nav nav a{transition:color .18s ease}
.language:focus-visible,.nav a:focus-visible,.btn:focus-visible{outline:3px solid #9dbaf0;outline-offset:3px}
.hero{padding:34px 0 38px;background:#f3f6f9}
.hero-banner{min-height:430px;border-radius:12px;background:linear-gradient(90deg,#122f2a 0%,#1c3a34 46%,#405850 76%,#8d9b91 100%);box-shadow:0 18px 42px rgba(17,35,57,.15)}
.hero-image{right:0;width:68%;height:100%;object-fit:contain;object-position:right center}
.hero-shade{background:linear-gradient(90deg,rgba(13,31,28,.98) 0%,rgba(13,31,28,.91) 36%,rgba(13,31,28,.58) 57%,rgba(13,31,28,.08) 100%),linear-gradient(0deg,rgba(10,22,20,.18),transparent 55%)}
.hero-copy{width:min(58%,680px);padding:48px 52px}
.hero-copy h1{max-width:620px;font-size:clamp(36px,4.4vw,58px);letter-spacing:-.035em}
.hero-copy p{color:rgba(255,255,255,.86)}
.hero-copy .btn,.admin-main .btn,.login-card .btn{background:var(--orange);box-shadow:0 7px 16px rgba(239,120,59,.2)}
.hero-copy .btn:hover,.admin-main .btn:hover,.login-card .btn:hover{background:#dc632c}
.section:not(.dark){background:#fff}
.factory-strength{position:relative;isolation:isolate;overflow:hidden;min-height:330px;display:flex;align-items:center;background-color:#142d4d;background-image:linear-gradient(90deg,#142d4d 0%,rgba(20,45,77,.97) 29%,rgba(20,45,77,.76) 48%,rgba(20,45,77,.28) 100%),url('/assets/factory-line-tech.svg');background-repeat:no-repeat;background-position:center,right center;background-size:cover,auto 125%;}
.factory-strength:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(132,190,224,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(132,190,224,.18) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent 18%,#000 100%)}
.factory-strength .wrap{position:relative;z-index:1}
.factory-strength h2{max-width:650px;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.factory-strength p{max-width:680px;text-shadow:0 1px 10px rgba(0,0,0,.28)}
@media(max-width:700px){.factory-strength{min-height:300px;background-image:linear-gradient(90deg,rgba(20,45,77,.94),rgba(20,45,77,.78)),url('/assets/factory-line-tech.svg');background-size:cover,auto 100%;background-position:center,right center}.factory-strength:after{opacity:.12}.factory-strength h2{font-size:clamp(27px,8vw,38px)}}
.section h2,.detail h1,.admin-main h1,.admin-main h2{color:var(--navy)}
.card{border-radius:10px;transition:transform .2s ease,box-shadow .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(22,43,69,.09)}
.admin-body{background:#f3f6fa;color:var(--ink)}
.admin-sidebar{background:linear-gradient(180deg,#10233e 0%,#142c4d 100%)}
.admin-brand{height:68px;gap:10px;padding:0 10px 14px}
.admin-brand img{width:40px;height:40px;background:transparent;border-radius:0}
.admin-brand-words strong{color:#fff;font-size:16px}
.admin-brand-words small{color:#a8bad0;font-size:8px;letter-spacing:.12em}
.admin-sidebar nav a{transition:background .18s ease,color .18s ease}
.admin-sidebar nav a:hover{background:#ffffff16;color:#fff;box-shadow:none;border-left:3px solid transparent;padding-left:9px}.admin-sidebar nav a.active{background:var(--blue);box-shadow:none;border-left:3px solid #ffad76;padding-left:9px}
.admin-topbar{color:#627188}
.admin-topbar a{font-weight:700}
.admin-main h1{font-size:27px;font-weight:800}
.admin-main h2{font-size:19px}
.admin-main .card,.admin-main form.card{border:1px solid var(--line);border-radius:10px}
.admin-main table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-color:var(--line);border-radius:10px}
.admin-main th{background:#edf3fa;color:#42566f;font-weight:700}
.admin-main td{color:#344256;background:#fff}
.admin-main input:focus,.admin-main textarea:focus,.admin-main select:focus,.login-card input:focus{outline:2px solid #bfd2f3;border-color:var(--blue)}
.login-body{background:radial-gradient(ellipse at 15% 10%,#e8eff9 0,transparent 40%),linear-gradient(135deg,#f6f8fb,#eaf0f6)}
.login-card{width:min(440px,92%);display:grid;gap:14px;text-align:left;background:#fff;padding:34px;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 60px rgba(16,35,62,.13)}
.login-brand{display:flex;align-items:center;gap:11px;margin-bottom:8px;text-decoration:none}
.login-brand img{width:44px;height:44px}
.login-card h1{margin:0;color:var(--navy);font-size:29px}
.login-card label{display:grid;gap:6px;color:#53647a;font-weight:700;font-size:13px}
.login-card input{width:100%;padding:12px 13px;border:1px solid #d6dfe8;border-radius:7px;color:var(--ink);font:inherit}
.login-card .login-error{min-height:1em;margin:0;color:#c44737;font-size:13px}
.login-card .btn{justify-self:stretch;margin-top:4px}
.login-home{justify-self:center;color:#63748b;font-size:13px;text-decoration:none}
.login-home:hover{color:var(--blue)}
@media(max-width:700px){.hero{padding:18px 0 28px}.hero-banner{min-height:470px}.hero-image{height:58%;object-position:center bottom}.hero-copy{padding:28px 23px}.login-card{padding:26px 22px}}
.hero-image.hero-scene {
  z-index: -2;
  inset: 0 0 0 auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 70%;
  padding: 0;
  background: none;
}
.hero-banner-scene{background:#203c34}
.hero-banner-scene .hero-shade{background:linear-gradient(90deg,rgba(12,29,26,.94) 0%,rgba(12,29,26,.86) 30%,rgba(12,29,26,.52) 50%,rgba(12,29,26,.12) 100%),linear-gradient(0deg,rgba(10,22,20,.18),transparent 55%)}
@media(max-width:700px){.hero-image.hero-scene{width:100%;height:100%;object-position:60% center}.hero-banner-scene .hero-shade{background:linear-gradient(180deg,rgba(13,29,26,.94) 0%,rgba(13,29,26,.78) 42%,rgba(13,29,26,.15) 100%)}}
#factory h2{color:#EF783B}

/* Member area, gated product pricing, and company announcements */
.price-gate,.product-price-note{display:block;margin:9px 0 12px;color:#9b4d19;font-size:13px;font-weight:700;text-decoration:none}
.price-gate:hover{color:var(--orange);text-decoration:underline}
.product-price{display:block;margin:10px 0 14px;color:#c45820;font-size:20px;font-weight:800}
.product-detail-price{font-size:28px}
.price-gate-detail{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0;padding:16px;background:#fff8f1;border:1px solid #f2d5bf;border-radius:8px;color:#884518}
.price-gate-detail strong{flex-basis:100%}
.price-gate-detail>a:not(.btn){color:var(--blue);font-weight:700}
.favorite-form{margin:12px 0 18px}
.news-home{background:#f4f7fa!important}
.news-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}
.news-heading>a,.news-more,.news-back{color:var(--blue);font-weight:700;text-decoration:none}
.news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.news-home-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.news-card .news-card-image{display:block;width:100%;height:112px;object-fit:contain;background:#f8fafc;border-radius:8px;margin:0}.news-card-thumb{display:block;flex:0 0 168px;max-width:168px;overflow:hidden;border-radius:8px}.news-card,.member-panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px;box-shadow:0 4px 16px rgba(22,43,69,.04)}.news-card{display:flex;align-items:flex-start;gap:14px;min-width:0}.news-card-body{flex:1;min-width:0}.news-card-body h2{font-size:19px;line-height:1.4}.news-card-body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-card:not(:has(.news-card-thumb)){display:block}
.news-card time,.announcement-detail time{color:var(--muted);font-size:12px}
.news-card h2,.news-card h3{margin:8px 0;color:var(--navy)}
.news-card h2 a,.news-card h3 a{color:inherit;text-decoration:none}
.news-card h2 a:hover,.news-card h3 a:hover{color:var(--blue)}
.news-card p{margin:8px 0 14px;color:#68788b;white-space:pre-line}
.announcement-hero-image{display:block;width:min(100%,760px);max-height:360px;object-fit:contain;border-radius:12px;margin:20px 0 26px;box-shadow:0 12px 32px rgba(16,35,55,.10)}.announcement-detail{max-width:900px}
.announcement-detail h1{color:var(--navy);font-size:clamp(30px,4vw,44px);line-height:1.2}
.announcement-content{margin-top:26px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:10px;white-space:pre-wrap;line-height:1.9}
.member-card{width:min(600px,94%);max-height:94vh;overflow:auto}
.member-language-row{display:flex;align-items:center;gap:10px;color:#53647a;font-size:13px;font-weight:700}
.login-card .member-language-row{display:flex;grid-template-columns:auto 1fr;align-items:center}
.member-language-row select{padding:8px 10px;border:1px solid #d6dfe8;border-radius:7px;background:#fff;color:var(--ink);font:inherit}
.member-secondary{justify-self:center;background:none;border:0;cursor:pointer;font:inherit;color:var(--blue)}
.member-account-page .nav .member-language-row{display:inline-flex;margin:0}
.member-account-page .nav form{margin:0}
.member-account-page .nav select{max-width:135px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.products-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.products-heading h2{margin-bottom:0}.all-products-link{font-weight:700;color:var(--blue);text-decoration:none;white-space:nowrap}.all-products-link:hover{text-decoration:underline}
.product-carousel{overflow:hidden;position:relative;margin-top:25px;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}
.product-track{display:flex;width:max-content;will-change:transform}
.product-track.is-running{animation:product-loop 42s linear infinite}
.product-carousel:hover .product-track,.product-carousel:focus-within .product-track{animation-play-state:paused}
.product-group{display:flex;flex:0 0 auto;gap:18px;padding-right:18px;align-items:stretch}
.product-card{display:flex;flex:0 0 calc((min(1200px,92vw) - 54px) / 4);flex-direction:column}
.product-card a:last-child{margin-top:auto;padding-top:12px}
.products-empty{margin-top:25px}
.product-position{display:none}
.product-position-track{height:4px;overflow:hidden;border-radius:10px;background:#e1e7ee}
.product-position-progress{display:block;width:0;height:100%;border-radius:inherit;background:var(--orange);transition:width .1s linear}
@keyframes product-loop{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.news-announcement-list{margin-top:20px;border-top:1px solid var(--line)}
.news-announcement-row{display:grid;grid-template-columns:145px minmax(0,1fr);align-items:center;gap:18px;padding:14px 4px;border-bottom:1px solid var(--line)}
.news-announcement-row time{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}
.news-announcement-row a{color:var(--navy);font-size:15px;font-weight:700;text-decoration:none;line-height:1.55}
.news-announcement-row a:hover{color:var(--blue)}
@media(max-width:900px){.product-card{flex-basis:calc((92vw - 36px) / 2.2)}}
@media(max-width:700px){.product-carousel{margin-top:18px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;mask-image:none;-webkit-overflow-scrolling:touch;touch-action:auto}.product-carousel::-webkit-scrollbar{display:none}.product-track,.product-track.is-running{animation:none;transform:none;will-change:auto}.product-group{gap:12px;padding-right:12px}.product-group.desktop-duplicate{display:none}.product-card{flex:0 0 calc((92vw - 14px) / 1.25);min-width:0;scroll-snap-align:start}.product-position{display:none}.product-card .home-product-image{overflow:hidden}.product-card .home-product-image img{max-width:100%;max-height:100%;transform:none!important;filter:none!important;will-change:auto;transition:none!important}}
@media(max-width:760px){.news-list{grid-template-columns:1fr}.news-card .news-card-image{height:96px;object-fit:contain}.news-card-thumb{flex-basis:124px;max-width:124px}.news-card{padding:12px;gap:12px}.news-card-body h2{font-size:17px}}
@media(max-width:700px){.news-announcement-row{grid-template-columns:95px minmax(0,1fr);gap:10px;padding:12px 2px}.news-announcement-row time{font-size:11px}.news-announcement-row a{font-size:14px}}
@media(prefers-reduced-motion:reduce){.product-carousel:hover .product-track,.product-carousel:focus-within .product-track{animation-play-state:running}.product-track,.product-track.is-running{animation:none!important;transform:none}}
.catalog-hero{padding:58px 0;background:linear-gradient(120deg,#132c4b,#203f60);color:#fff}
.catalog-hero small{color:#f28a4d;font-size:12px;font-weight:800;letter-spacing:.16em}
.catalog-hero h1{margin:8px 0;font-size:clamp(32px,5vw,48px);line-height:1.15}
.catalog-hero p{margin:0;color:#d6e0eb}
.catalog-section{min-height:55vh}
.catalog-toolbar{display:grid;gap:16px;margin-bottom:24px}
.catalog-toolbar h2{margin:0;color:var(--navy);font-size:20px}
.catalog-toolbar p{margin:2px 0 0;color:var(--muted);font-size:13px}
.category-filters{display:flex;flex-wrap:wrap;gap:9px}
.category-pill{display:inline-flex;align-items:center;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#526276;text-decoration:none;font-size:13px;font-weight:700;transition:.18s ease}
.category-pill:hover,.category-pill.active{border-color:var(--orange);background:var(--orange);color:#fff}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:20px}
.catalog-card{padding:0;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.catalog-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(22,43,69,.1)}
.catalog-image{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-width:0;height:220px;padding:14px;overflow:hidden;background:#fff;text-decoration:none}
.catalog-image img{display:block;flex:none;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.catalog-image span{color:#8491a1;font-size:12px;font-weight:700;text-align:center}
.catalog-card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:16px;border-top:1px solid var(--line)}
.catalog-card-body>small{color:var(--orange);font-weight:800}
.catalog-card-body h3{margin:5px 0;color:var(--navy);font-size:17px}
.catalog-card-body p{margin:0 0 10px;color:var(--muted);font-size:13px}
.catalog-card-body .price-gate{margin:0 0 12px;color:#66768a;font-size:12px}
.catalog-details{margin-top:auto;padding-top:13px;color:var(--blue);font-size:13px;font-weight:800;text-decoration:none}
.catalog-details:hover{text-decoration:underline}
.catalog-empty{padding:28px;text-align:center}
@media(max-width:700px){.catalog-hero{padding:40px 0}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-image{height:155px;padding:9px}.catalog-card-body{padding:12px}.catalog-card-body h3{font-size:15px}.category-filters{gap:7px}.category-pill{padding:7px 11px;font-size:12px}}
.member-hint{margin:0;color:#68788b;font-size:14px}
.member-code{display:grid;gap:5px;min-width:min(320px,100%);padding:17px 20px;background:#fff8f1;border:1px solid #f2d5bf;border-radius:9px}
.member-code span,.member-code small{color:#76543d;font-size:12px}
.member-code strong{color:#be531c;font-size:25px;letter-spacing:.08em}
.member-welcome{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:12px}
.member-welcome h1{margin:5px 0;color:var(--navy);font-size:clamp(24px,4vw,34px)}
.member-welcome p{margin:0;color:var(--muted)}
.member-panel{margin-top:18px;padding:24px}
.member-panel h2{margin:0 0 10px;color:var(--navy)}
.member-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.member-table-wrap{overflow:auto}
.member-table-wrap table{width:100%;min-width:650px;border-collapse:collapse}
.member-table-wrap th,.member-table-wrap td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left}
.member-table-wrap th{background:#f1f5f9;color:#506176;font-size:12px}
.nav nav form{margin:0}
.nav-logout{border:0;background:none;padding:0;color:#536273;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.nav-logout:hover{color:var(--blue)}
@media(max-width:900px){.news-home-list{grid-template-columns:repeat(2,minmax(0,1fr))}.member-welcome{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.news-home-list{grid-template-columns:1fr}.news-heading{align-items:flex-start;flex-direction:column}.member-welcome,.member-panel{padding:18px}.member-code{min-width:100%}.nav nav form{padding:5px 0}.announcement-content{padding:18px}body.member-account-page .nav nav,body.news-page .nav nav,body.announcement-page .nav nav{display:flex;position:static;left:auto;right:auto;top:auto;padding:0;background:transparent;align-items:center;flex-direction:row;flex-wrap:wrap;gap:10px;border:0}}

.quote-login-gate{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;min-height:230px;padding:28px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.quote-login-gate p{margin:0;color:var(--muted)}

.product-price-comparison{display:flex;gap:0;align-items:flex-start;flex-wrap:nowrap;flex-direction:column;margin:6px 0 8px}.product-price-comparison>div{display:flex;flex-direction:row;align-items:baseline;gap:6px;width:100%;min-width:0}.product-price-comparison span{font-size:13px;color:#667085;line-height:1.35}.product-price-comparison del{color:#8a8f98;font-size:16px;line-height:1.25}.product-price-comparison strong{font-size:28px;line-height:1.2}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

.member-price-hidden{font-weight:800;letter-spacing:.04em}.catalog-price-comparison,.home-price-comparison{margin:3px 0 5px;gap:2px;align-items:flex-start;flex-direction:column}.catalog-price-comparison>div,.home-price-comparison>div{gap:5px;min-width:0;width:100%}.catalog-price-comparison span,.home-price-comparison span{font-size:12px;line-height:1.3}.catalog-price-comparison del,.home-price-comparison del{font-size:15px;line-height:1.2}.catalog-price-comparison strong,.home-price-comparison strong{font-size:18px;line-height:1.2}.product-price-comparison .member-price-hidden{font-size:18px;color:#c45820}.catalog-price-comparison>div,.home-price-comparison>div{white-space:nowrap;display:flex;flex-direction:row;align-items:baseline;gap:6px}@media(max-width:520px){.catalog-price-comparison,.home-price-comparison{gap:3px}.catalog-price-comparison>div,.home-price-comparison>div{width:100%;min-width:0}.catalog-price-comparison strong,.home-price-comparison strong,.product-price-comparison .member-price-hidden{font-size:17px}}

/* Product card visual balance */
.home-product-image{display:flex;align-items:center;justify-content:center;width:100%;height:230px;padding:10px;box-sizing:border-box;overflow:visible;background:#fff;border-radius:12px 12px 0 0;text-decoration:none;position:relative}
.home-product-image img{display:block;width:96%;height:96%;max-width:235px;max-height:215px;object-fit:contain;object-position:50% 50%;transition:transform .32s cubic-bezier(.2,.7,.2,1),filter .32s ease;transform-origin:50% 50%;will-change:transform;position:relative;z-index:1}
@media(min-width:701px){.home-product-image:hover img{transform:scale(1.32);filter:drop-shadow(0 16px 24px rgba(0,0,0,.22));z-index:10}.product-carousel:hover .product-track.is-running{animation-play-state:paused}}
.product-card h3{margin:8px 0 3px;line-height:1.25}
.product-card>p{margin:0 0 4px;line-height:1.15;color:var(--muted)}
.product-card .home-price-comparison{margin:1px 0 4px;gap:3px}
.product-card .home-price-comparison>div{gap:5px;margin:0;padding:0;line-height:1.08}
.product-card .home-price-comparison strong,.product-card .home-price-comparison del{line-height:1.08;margin:0;padding:0}
.catalog-card .catalog-image{height:210px}
.catalog-card-body{padding:14px}
.catalog-card-body h3{margin:3px 0 1px;line-height:1.25}
.catalog-card-body p{margin:0 0 6px;line-height:1.2}
.catalog-card .catalog-price-comparison{margin:2px 0 4px;gap:2px}
@media(max-width:700px){.home-product-image{height:175px;padding:8px}.catalog-card .catalog-image{height:165px}.catalog-card-body{padding:11px}.product-card .home-price-comparison,.catalog-card .catalog-price-comparison{gap:3px;margin:1px 0 4px}.product-card .home-price-comparison>div{line-height:1.05}.product-card .home-price-comparison strong,.product-card .home-price-comparison del{line-height:1.05}}

/* 2026-09-27 product price alignment */
.product-detail-page .product-price-comparison{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:10px 0 14px;width:100%;}
.product-detail-page .product-price-comparison>div{display:flex;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:8px;width:100%;}
.product-detail-page .product-price-comparison>div>span:first-child{display:inline-block;min-width:4.5em;text-align:left;}
.product-detail-page .product-price-comparison .product-price{margin:0;font-size:26px;line-height:1.15;}
.product-detail-page .product-price-comparison del{margin:0;font-size:18px;line-height:1.15;}


.quote-login-hint{margin:10px 0 0;color:var(--muted);font-size:15px;line-height:1.7}


/* V25: refined announcement pagination */
.announcement-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:32px auto 12px;padding:14px 16px;width:fit-content;max-width:100%;background:linear-gradient(135deg,#f8fafc,#eef4fb);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 24px rgba(15,35,60,.06)}
.announcement-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:0 14px;border:1px solid #d8e2ee;border-radius:11px;background:#fff;color:#29445f;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 2px 5px rgba(15,35,60,.04);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}
.announcement-pagination a:hover{transform:translateY(-2px);border-color:#3b82f6;color:#1d4ed8;box-shadow:0 6px 14px rgba(37,99,235,.13)}
.announcement-pagination a.current{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#2563eb;color:#fff;box-shadow:0 5px 12px rgba(37,99,235,.24)}
.announcement-pagination span{padding:0 8px;color:#64748b;font-size:13px;font-weight:600;white-space:nowrap}
@media(max-width:520px){.announcement-pagination{gap:6px;padding:10px;margin-top:24px;border-radius:13px}.announcement-pagination a{min-width:38px;min-height:38px;padding:0 10px;border-radius:9px;font-size:13px}.announcement-pagination span{width:100%;text-align:center;padding-top:3px}}

/* 2026-10 dashboard usability and consistent action sizing */
:root{--control-height:42px;--control-radius:8px}
.btn,.admin-main button,.admin-main input[type=submit],.admin-main input[type=button],.login-card button,.member-account-page button{min-height:var(--control-height);border-radius:var(--control-radius);font-weight:700;line-height:1.25}
.btn{padding:10px 16px;white-space:normal;text-align:center}
.admin-main .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:104px;padding:10px 14px;font-size:13px;box-shadow:none}
.admin-main .btn.secondary,.admin-main .btn.btn-secondary{background:#fff;color:#344a65;border:1px solid #d7e0eb}
.admin-main .btn.secondary:hover,.admin-main .btn.btn-secondary:hover{background:#f2f6fb;border-color:#b9c9dc;color:var(--navy)}
.admin-main form:not(.card){gap:8px}
.admin-main input,.admin-main textarea,.admin-main select{min-height:40px;border-radius:8px}
.admin-main table td .btn,.admin-main table td button{min-width:84px;min-height:36px;padding:8px 11px;font-size:12px}
.admin-sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff35 transparent}
.admin-sidebar nav{gap:4px;padding:16px 0 18px}
.admin-sidebar nav a{min-height:42px;padding:10px 12px;border-radius:8px;line-height:1.35}
.admin-sidebar .sidebar-bottom{position:sticky;bottom:0;background:linear-gradient(180deg,#142c4d 0%,#10233e 100%);padding:12px 0 4px}
.admin-sidebar .sidebar-bottom a,.admin-sidebar .sidebar-bottom button{min-height:42px!important;border-radius:8px!important;padding:11px 12px!important}
.admin-topbar{position:sticky;top:0;z-index:25;min-height:66px}
.admin-main{padding:28px clamp(16px,2.4vw,34px) 42px}
.admin-main h1{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;line-height:1.3}
.admin-main .overview-grid{gap:14px}
.admin-main .overview-link{min-height:138px;padding:20px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.admin-main .overview-link h3{margin:0 0 12px;color:#65758a;font-size:13px;font-weight:700}
.admin-main .overview-link h2{margin:0 0 8px;font-size:30px;line-height:1.15;font-variant-numeric:tabular-nums}
.admin-main .overview-link small{color:#728198}
.admin-main .expiring-head,.admin-main .member-overview-panel>.expiring-head{align-items:flex-start}
.admin-main .member-overview-links{justify-content:flex-end}
.admin-main .member-overview-table td{vertical-align:top}
.admin-main .member-overview-table td small{overflow-wrap:anywhere}
.admin-main .member-overview-table td:last-child{min-width:120px;line-height:2}
.admin-main .member-overview-table td:last-child a{display:inline-flex;align-items:center;min-height:30px;padding:3px 8px;border-radius:6px;text-decoration:none;font-size:12px;font-weight:700}
.admin-main .member-overview-table td:last-child a:hover{background:#edf4ff}
.member-account-page .member-page{padding:34px 0 54px;background:#f4f7fb}
.member-account-page .member-page>.wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.member-account-page .member-welcome{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;min-height:150px;padding:28px 32px;margin:0}
.member-account-page .member-welcome h1{margin:8px 0;font-size:clamp(24px,3vw,34px);line-height:1.25;overflow-wrap:anywhere}
.member-account-page .member-panel{min-width:0;margin:0;padding:22px 24px;border:1px solid #e0e8f1;border-radius:14px;background:#fff;box-shadow:0 4px 16px rgba(20,44,77,.035)}
.member-account-page .member-panel>h2{margin:0 0 10px;font-size:18px;line-height:1.4}
.member-account-page .member-panel>p{color:#69798d;font-size:14px;line-height:1.7}
.member-account-page .member-panel>.btn{margin-top:8px}
.member-account-page .member-panel:has(.member-table-wrap),.member-account-page .member-panel:has(.member-activation-form),.member-account-page .member-panel:has(.member-code-scroll),.member-account-page .member-panel:has(.member-grid){grid-column:1/-1}
.member-account-page .member-panel>div[style*="justify-content:space-between"]{align-items:center!important}
.member-account-page .member-table-wrap{max-width:100%;overflow:auto}
.member-account-page .member-table-wrap table{min-width:760px}
.member-account-page .member-activation-form{margin-top:16px;gap:14px}
.member-account-page .member-activation-form input,.member-account-page input,.member-account-page select,.member-account-page textarea{min-height:42px;border:1px solid #d6e0eb;border-radius:8px;padding:10px 12px}
.member-account-page .member-activation-form button{min-width:132px}
.member-account-page .member-panel .grid{margin-top:14px}
.member-account-page .row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}
.member-account-page .row-actions a,.member-account-page .row-actions button{min-height:36px}
@media(max-width:900px){.admin-main .overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-account-page .member-page>.wrap{gap:14px}.member-account-page .member-panel{padding:20px}}
@media(max-width:700px){.admin-main{padding:18px 12px 30px}.admin-main h1{font-size:23px;margin-bottom:18px}.admin-main .overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-main .overview-link{min-height:120px;padding:15px}.admin-main .overview-link h2{font-size:26px}.admin-main .member-overview-links{display:grid;grid-template-columns:1fr;width:100%}.admin-main .member-overview-links .btn{width:100%}.admin-main .expiring-item{padding:14px 4px}.admin-topbar{min-height:58px;height:auto;padding:10px 12px}.admin-topbar>span{flex:1}.member-account-page .member-page{padding:20px 0 36px}.member-account-page .member-page>.wrap{grid-template-columns:1fr;gap:12px}.member-account-page .member-welcome,.member-account-page .member-panel:has(.member-table-wrap),.member-account-page .member-panel:has(.member-activation-form),.member-account-page .member-panel:has(.member-code-scroll),.member-account-page .member-panel:has(.member-grid){grid-column:1}.member-account-page .member-welcome{min-height:unset;padding:22px 20px}.member-account-page .member-panel{padding:18px}.member-account-page .member-activation-form{grid-template-columns:1fr}.member-account-page .member-activation-form button{width:100%}.member-account-page .member-panel>div[style*="justify-content:space-between"]{align-items:flex-start!important}.member-account-page .member-panel>div[style*="justify-content:space-between"]>.btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* V66 mobile homepage scroll fix: allow vertical page gestures over product images. */
@media(max-width:700px){#productCarousel{touch-action:auto;overflow-x:auto;overflow-y:hidden;overscroll-behavior-y:auto}#productCarousel .home-product-image,#productCarousel .home-product-image img{touch-action:auto;will-change:auto;transition:none!important}}

/* Persian: keep overall layout LTR and right-align Persian text across the site */
html[lang="fa"] body {
    direction: ltr;
    text-align: initial;
}
html[lang="fa"] :is(h1,h2,h3,h4,p,blockquote,li,dt,dd,label,.text-fa) {
    direction: rtl;
    text-align: right;
}
/* Persian page structure stays LTR: do not mirror hero, catalog cards, or news-card layout. */
html[lang="fa"] :is(.hero-copy,.catalog-card-body,.news-card) {
    direction: ltr;
    text-align: initial;
}
html[lang="fa"] .catalog-card-body :is(.category,.product-category,.catalog-card-category) {
    direction: rtl;
    text-align: right;
}
html[lang="fa"] .catalog-card-body :is(h3,h4,p,.product-title,.product-description,.price-row,.catalog-price-comparison) {
    direction: rtl;
    text-align: right;
}
html[lang="fa"] :is(input,textarea,select) {
    direction: rtl;
    text-align: right;
}
html[lang="fa"] :is(header .nav, header nav, main, footer, .wrap, .container, .section,
    .products-heading, .news-heading, .product-carousel, .product-track, .product-group,
    .catalog-grid, .catalog-toolbar, .category-filters, .news-announcement-row, .grid,
    .row, .card-grid, .catalog-section) {
    direction: ltr;
}
html[lang="fa"] .chat-widget {
    right: 22px;
    left: auto;
}
html[lang="fa"] .chat-panel {
    right: 0;
    left: auto;
}
@media (max-width: 700px) {
    html[lang="fa"] .chat-widget {
        right: 15px;
        left: auto;
    }
}


/* Member backend Persian: preserve the LTR page structure, align Persian copy RTL. */
html[lang="fa"][dir="ltr"] body{direction:ltr}
html[lang="fa"][dir="ltr"] body :is(h1,h2,h3,h4,p,label,th,td,li,.member-hint,.login-error,.profile-hint,.as-help,.apply-hint,.warranty-note,.ref-tip){text-align:right}
html[lang="fa"][dir="ltr"] body :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select){direction:rtl;text-align:right}
html[lang="fa"][dir="ltr"] body :is(.nav,.member-header-row,.member-language-row,.apply-actions,.ref-brand){direction:ltr}


/* Persian display parity: render the entire Persian site like the Chinese LTR layout.
   Keep the page structure, headings, product cards, labels, form fields and text left-aligned. */
html[lang="fa"],
html[lang="fa"] body,
html[lang="fa"] body :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,label,li,dt,dd,th,td,a,button,input,textarea,select,option,summary,figcaption),
html[lang="fa"] body :is(.hero-copy,.catalog-card-body,.news-card,.products-heading,.news-heading,.product-carousel,.row,.card-grid,.catalog-section,.catalog-card-category,.product-title,.product-description,.price-row,.catalog-price-comparison) {
    direction: ltr !important;
    text-align: left !important;
}
html[lang="fa"] input,
html[lang="fa"] textarea,
html[lang="fa"] select {
    direction: ltr !important;
    text-align: left !important;
}

/* Global responsive pass: mobile-first spacing, overflow safety, readable controls. */
@media (max-width: 700px) {
  html { -webkit-text-size-adjust: 100%; }
  body { min-width: 0; overflow-x: hidden; overflow-wrap: anywhere; }
  img, video, iframe, canvas, svg { max-width: 100%; }
  .wrap, .container, .member-page, .profile-wrap, .guide-wrap { width: auto; max-width: 100%; margin-left: auto; margin-right: auto; }
  main, section, article, aside, .admin-main, .admin-content { min-width: 0; }
  h1 { font-size: clamp(24px, 6.2vw, 34px); line-height: 1.25; }
  h2 { font-size: clamp(20px, 5.2vw, 28px); line-height: 1.3; }
  p { overflow-wrap: anywhere; }
  input, select, textarea { max-width: 100%; min-width: 0; }
  input:not([type=checkbox]):not([type=radio]), select, textarea { font-size: 16px; }
  button, .btn, input[type=submit], input[type=button] { min-height: 42px; max-width: 100%; white-space: normal; }
  table { max-width: 100%; }
  :is(.table-wrap, .table-responsive, .table-scroll, .member-table-wrap, .overflow-auto, [style*="overflow-x:auto"]) { max-width: 100%; overflow-x: auto !important; -webkit-overflow-scrolling: touch; }
  .admin-main table { display: block; width: 100%; overflow-x: auto; white-space: normal; }
  .admin-main th, .admin-main td { padding: 9px 10px; }
  .admin-main form:not(.inline-form) { max-width: 100%; }
  .admin-main form.card { padding: 16px; }
  .admin-main form [style*="grid-template-columns"], .admin-main [style*="grid-template-columns"] { min-width: 0; }
  .nav { gap: 10px; }
  .logo { min-width: 0; max-width: calc(100% - 54px); }
  .logo img { flex: 0 0 auto; width: 36px; height: 42px; }
  .logo-words, .admin-brand-words { min-width: 0; }
  .logo-words strong { display: block; font-size: 14px; line-height: 1.35; }
  .logo-words small { display: block; font-size: 9px; line-height: 1.3; letter-spacing: .02em; overflow-wrap: anywhere; }
  .language { max-width: 100%; }
  .section { padding-top: 30px; padding-bottom: 30px; }
  .card, .profile-card, .guide-card, .guide-hero, .guide-detail { min-width: 0; }
  .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .formgrid form { min-width: 0; }
  .detail > *, .hero-grid > *, .formgrid > * { min-width: 0; }
  .chat-widget { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); }
  .chat-panel { max-height: calc(100dvh - 100px); }
  .admin-sidebar { width: min(300px, 86vw); max-width: 86vw; overflow-y: auto; padding-bottom: max(18px, env(safe-area-inset-bottom)); }
  .admin-main .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-main .overview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-main h1 .btn { margin: 8px 0 0; }
  .admin-topbar a { font-size: 12px; }
  .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .member-panel, .member-welcome, .profile-card { overflow-wrap: anywhere; }
}
@media (max-width: 380px) {
  .wrap { width: 94%; }
  .grid, .catalog-grid, .admin-main .grid, .admin-main .overview-grid { grid-template-columns: minmax(0, 1fr); }
  .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .nav { gap: 6px; }
  .logo-words strong { font-size: 12px; }
  .logo-words small { font-size: 8px; }
  .admin-main { padding-left: 10px; padding-right: 10px; }
}

/* Mobile homepage hero: reduce excessive vertical space without changing desktop layout. */
@media (max-width: 700px) {
  .hero {
    padding: 12px 0 18px;
  }

  .hero-banner {
    min-height: 340px;
    align-items: flex-start;
  }

  .hero-copy {
    width: 100%;
    padding: 22px 20px;
  }

  .hero-copy h1 {
    margin: 12px 0 10px;
    font-size: clamp(29px, 8vw, 32px);
    line-height: 1.08;
  }

  .hero-copy p {
    margin-bottom: 14px;
    font-size: 13px;
    line-height: 1.6;
  }

  .hero-image.hero-scene {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 60% center;
  }
}

@media (max-width: 380px) {
  .hero-banner {
    min-height: 310px;
  }

  .hero-copy {
    padding: 18px 16px;
  }

  .hero-copy h1 {
    font-size: 28px;
  }
}

/* Mobile: disable automatic product carousel movement; keep manual swipe scrolling. */
@media (max-width: 700px) {
  #productCarousel,
  .product-carousel {
    scroll-behavior: auto !important;
  }

  #productCarousel .product-track,
  #productCarousel .product-track.is-running,
  .product-carousel .product-track,
  .product-carousel .product-track.is-running {
    animation: none !important;
    animation-name: none !important;
    animation-play-state: paused !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}


/* Compact mobile hero: reclaim screen space and reveal more of the scene image. */
@media (max-width: 700px) {
  .hero {
    padding: 8px 0 12px !important;
  }

  .hero-banner,
  .hero-banner.hero-banner-scene {
    min-height: 0 !important;
    height: 270px !important;
    overflow: hidden;
    align-items: flex-start;
  }

  .hero-copy {
    width: 100%;
    padding: 15px 17px !important;
  }

  .hero-copy h1 {
    margin: 7px 0 8px !important;
    font-size: clamp(24px, 6.8vw, 29px) !important;
    line-height: 1.08 !important;
  }

  .hero-copy p {
    margin: 0 0 10px !important;
    max-width: 100%;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .hero-copy .btn {
    padding: 8px 13px;
    font-size: 12px;
  }

  .hero-image.hero-scene {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    /* A shorter banner crops less of the landscape photo on narrow screens. */
    object-position: 64% center !important;
  }

  .hero-banner-scene .hero-shade {
    background: linear-gradient(180deg,
      rgba(13, 29, 26, .91) 0%,
      rgba(13, 29, 26, .76) 43%,
      rgba(13, 29, 26, .20) 100%) !important;
  }
}

@media (max-width: 380px) {
  .hero-banner,
  .hero-banner.hero-banner-scene {
    height: 250px !important;
  }

  .hero-copy {
    padding: 12px 14px !important;
  }

  .hero-copy h1 {
    font-size: 24px !important;
    margin: 5px 0 7px !important;
  }

  .hero-copy p {
    font-size: 11px !important;
    line-height: 1.4 !important;
    margin-bottom: 8px !important;
  }
}

/* Landscape phones: keep the hero compact so it does not dominate the short viewport. */
@media (max-width: 900px) and (max-height: 500px) {
  .hero {
    padding: 6px 0 10px !important;
  }

  .hero-banner,
  .hero-banner.hero-banner-scene {
    height: 205px !important;
    min-height: 0 !important;
  }

  .hero-copy {
    padding: 9px 15px !important;
  }

  .hero-copy h1 {
    font-size: clamp(21px, 4vw, 26px) !important;
    margin: 4px 0 6px !important;
  }

  .hero-copy p {
    font-size: 11px !important;
    line-height: 1.35 !important;
    margin-bottom: 7px !important;
  }
}

/* Desktop hero: lighten the overlay so more of the background scene remains visible. */
@media (min-width: 701px) {
  .hero-banner-scene .hero-shade {
    background:
      linear-gradient(90deg,
        rgba(12, 29, 26, .78) 0%,
        rgba(12, 29, 26, .64) 28%,
        rgba(12, 29, 26, .30) 52%,
        rgba(12, 29, 26, .04) 100%),
      linear-gradient(0deg,
        rgba(10, 22, 20, .08),
        transparent 55%) !important;
  }
}

/* Fix product overlap on phones in landscape: use a single, swipeable product row. */
@media (max-width: 900px) and (max-height: 500px) and (orientation: landscape) {
  #productCarousel,
  .product-carousel {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y !important;
  }

  #productCarousel .product-track,
  #productCarousel .product-track.is-running,
  .product-carousel .product-track,
  .product-carousel .product-track.is-running {
    display: flex !important;
    width: max-content !important;
    max-width: none !important;
    animation: none !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }

  #productCarousel .product-group,
  .product-carousel .product-group {
    display: flex !important;
    flex: 0 0 auto !important;
    gap: 12px !important;
    padding-right: 12px !important;
  }

  #productCarousel .product-group.desktop-duplicate,
  .product-carousel .product-group.desktop-duplicate {
    display: none !important;
  }

  #productCarousel .product-card,
  .product-carousel .product-card {
    box-sizing: border-box !important;
    flex: 0 0 clamp(210px, 42vw, 300px) !important;
    width: clamp(210px, 42vw, 300px) !important;
    min-width: 0 !important;
    scroll-snap-align: start;
    overflow: hidden !important;
  }

  #productCarousel .home-product-image,
  .product-carousel .home-product-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  #productCarousel .home-product-image img,
  .product-carousel .home-product-image img {
    display: block !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}

/* 贝莱商城主页横幅压缩补丁：追加到 public/assets/css/style.css 文件末尾 */
.hero {
  padding-top: 24px !important;
  padding-bottom: 28px !important;
}
.hero-banner {
  min-height: 330px !important;
}
.hero-copy {
  padding-top: 34px !important;
  padding-bottom: 34px !important;
}
@media (max-width: 700px) {
  .hero {
    padding-top: 14px !important;
    padding-bottom: 20px !important;
  }
  .hero-banner {
    min-height: 360px !important;
  }
  .hero-copy {
    padding-top: 22px !important;
    padding-bottom: 22px !important;
  }
  .hero-copy h1 {
    font-size: clamp(28px, 7vw, 34px) !important;
  }
}


/* R9 member center navigation buttons: clearer hierarchy and action cues */
.member-account-page .member-panel a.btn,.member-account-page .member-panel button.btn,.member-account-page .member-header-row a.btn{
 display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:11px 17px;
 border-radius:12px;font-weight:750;letter-spacing:.01em;text-decoration:none;
 transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
 box-shadow:0 5px 14px rgba(24,83,139,.12)
}
.member-account-page .member-panel a.btn:hover,.member-account-page .member-panel button.btn:hover,.member-account-page .member-header-row a.btn:hover{
 transform:translateY(-2px);box-shadow:0 9px 20px rgba(24,83,139,.18);filter:saturate(1.08)
}
.member-account-page .member-panel a.btn:not(.btn-secondary),.member-account-page .member-header-row a.btn:not(.btn-secondary){
 background:linear-gradient(135deg,#155da0,#278bd4);border:1px solid #1769b0;color:#fff
}
.member-account-page .member-panel a.btn.btn-secondary,.member-account-page .member-panel button.btn.btn-secondary{
 background:linear-gradient(180deg,#fff,#f1f7ff);border:1px solid #cfe0f2;color:#185b91
}
.member-account-page .member-panel a.btn:focus-visible,.member-account-page .member-panel button.btn:focus-visible{
 outline:3px solid #91c6f5;outline-offset:3px
}
