@import url('https://cdn.jsdelivr.net/gh/rastikerdar/vazirmatn@v33.003/Vazirmatn-font-face.css');

:root{
    --bg: #F4F8FF;
    --surface: #FFFFFF;
    --ink: #10203D;
    --muted: #5C6B85;
    --primary: #1450C7;
    --primary-light: #2E6DEE;
    --accent: #FFFFFF;
    --accent-ink: #1450C7;
    --danger: #D93A32;
    --line: #DCE6F7;
    --gold: #F0A93B;
    --radius: 14px;
    --shadow: 0 10px 30px -12px rgba(20,80,199,.22);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
    margin:0;
    font-family:'Vazirmatn', Tahoma, sans-serif;
    background:var(--bg);
    color:var(--ink);
    line-height:1.8;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{margin:0;padding:0;list-style:none;}
button{font-family:inherit;cursor:pointer;}
.container{max-width:1180px;margin:0 auto;padding:0 20px;}

/* ===== Buttons ===== */
.btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    padding:12px 26px;border-radius:999px;border:none;
    font-weight:700;font-size:15px;transition:.2s;
}
.btn-primary{background:var(--primary);color:#fff;}
.btn-primary:hover{background:var(--primary-light);}
.btn-accent{background:var(--accent);color:var(--accent-ink);box-shadow:0 4px 14px -4px rgba(0,0,0,.25);}
.btn-accent:hover{background:#EAF1FF;}
.btn-outline{background:transparent;border:1.5px solid var(--line);color:var(--ink);}
.btn-outline:hover{border-color:var(--primary);}
.btn-sm{padding:8px 16px;font-size:13px;border-radius:999px;}
.btn-danger{background:var(--danger);color:#fff;}
.btn-block{width:100%;}

/* ===== Header ===== */
.site-header{
    position:sticky;top:0;z-index:50;
    background:rgba(244,248,255,.9);backdrop-filter:blur(8px);
    border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;gap:16px;}
.logo{font-size:22px;font-weight:800;color:var(--primary);}
.logo span{color:var(--primary-light);}
.main-nav ul{display:flex;gap:26px;}
.main-nav a{font-weight:600;font-size:15px;color:var(--ink);}
.lang-switch-link{background:var(--bg);border:1px solid var(--line);padding:5px 12px;border-radius:999px;font-size:13px;}
.main-nav a:hover{color:var(--primary);}
.header-actions{display:flex;align-items:center;gap:12px;}
.icon-link{position:relative;font-size:20px;padding:6px;}
.badge-count{
    position:absolute;top:-4px;left:-6px;background:var(--danger);color:#fff;
    font-size:11px;min-width:18px;height:18px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
}
.mobile-toggle{display:none;background:none;border:none;font-size:24px;}

@media(max-width:860px){
    .main-nav{
        position:fixed;top:0;bottom:0;right:0;left:auto;width:78%;max-width:320px;height:100vh;
        background:var(--surface);z-index:200;overflow-y:auto;
        transform:translateX(100%);transition:.3s;padding:90px 24px 24px;box-shadow:var(--shadow);
    }
    html[dir="ltr"] .main-nav{right:auto;left:0;transform:translateX(-100%);}
    html[dir="ltr"] .main-nav.open{transform:translateX(0) !important;}
    .main-nav.open{transform:translateX(0);}
    .main-nav ul{flex-direction:column;gap:18px;align-items:flex-start;}
    .mobile-toggle{display:block;position:relative;z-index:210;}
    .nav-backdrop{display:none;position:fixed;inset:0;background:rgba(10,15,30,.4);z-index:150;}
    .nav-backdrop.open{display:block;}
}

/* ===== Hero / Slider ===== */
.hero-slider{position:relative;overflow:hidden;border-radius:0 0 28px 28px;}
.slide{
    position:relative;display:none;min-height:420px;
    background-size:cover;background-position:center;
    align-items:center;
}
.slide.active{display:flex;}
.slide::before{
    content:'';position:absolute;inset:0;
    background:linear-gradient(90deg, rgba(16,40,110,.85) 0%, rgba(20,80,199,.4) 55%, transparent 100%);
}
.slide-content{position:relative;z-index:2;padding:60px 20px;max-width:560px;color:#fff;}
.slide-icon{font-size:44px;margin-bottom:10px;line-height:1;}
.slide-content h1{font-size:38px;margin:0 0 14px;font-weight:800;}
.slide-content p{font-size:16px;opacity:.92;margin:0 0 26px;}
.slider-dots{position:absolute;bottom:18px;right:50%;transform:translateX(50%);display:flex;gap:8px;z-index:3;}
.slider-dots span{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;}
.slider-dots span.active{background:var(--accent);width:22px;border-radius:6px;}
.slider-arrow{
    position:absolute;top:50%;transform:translateY(-50%);z-index:3;
    background:rgba(255,255,255,.85);border:none;width:38px;height:38px;border-radius:50%;font-size:16px;
}
.slider-arrow.prev{right:16px;}
.slider-arrow.next{left:16px;}

/* signature: rotated bazaar-style price tag badge */
.tag-badge{
    position:relative;display:inline-flex;align-items:center;gap:6px;
    background:var(--primary);color:#fff;font-weight:800;font-size:12px;
    padding:5px 14px 5px 10px;border-radius:3px 10px 10px 3px;
    transform:rotate(-4deg);box-shadow:0 4px 10px -4px rgba(0,0,0,.35);
}
.tag-badge::before{
    content:'';position:absolute;right:5px;top:50%;transform:translateY(-50%);
    width:5px;height:5px;background:var(--bg);border-radius:50%;
}
.tag-badge.danger{background:var(--danger);color:#fff;}

/* ===== Sections ===== */
.section{padding:56px 0;}
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:26px;}
.section-head h2{font-size:24px;margin:0;font-weight:800;}
.section-head .eyebrow{display:block;color:var(--primary-light);font-weight:700;font-size:13px;margin-bottom:6px;}
.section-head a{font-size:14px;font-weight:700;color:var(--primary);}

.category-chips{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px;}
.category-chips a{
    background:var(--surface);border:1px solid var(--line);padding:9px 18px;border-radius:999px;
    font-weight:600;font-size:14px;
}
.category-chips a.active,.category-chips a:hover{background:var(--primary);color:#fff;border-color:var(--primary);}

/* ===== Features / USP boxes (homepage) ===== */
.features-section{padding-bottom:20px;}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media(max-width:820px){.features-grid{grid-template-columns:1fr;}}
.feature-box{
    background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
    padding:28px 24px;text-align:center;transition:.2s;
}
.feature-box:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.feature-icon{font-size:36px;margin-bottom:14px;}
.feature-box h3{font-size:16px;margin:0 0 8px;font-weight:800;}
.feature-box p{font-size:13px;color:var(--muted);margin:0;line-height:1.8;}

/* ===== Product Grid / Card ===== */
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px;}
.product-card{
    background:var(--surface);border-radius:var(--radius);overflow:hidden;
    border:1px solid var(--line);transition:.2s;position:relative;
}
.product-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.product-thumb{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f1efe9;}
.product-thumb img{width:100%;height:100%;object-fit:cover;}
.product-thumb .tag-badge{position:absolute;top:10px;right:10px;}
.product-body{padding:14px 16px 18px;}
.product-body h3{font-size:15px;margin:0 0 8px;font-weight:700;min-height:44px;}
.product-price{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.price-now{font-weight:800;color:var(--primary);font-size:16px;}
.price-old{font-size:13px;color:var(--muted);text-decoration:line-through;}

/* ===== Product Detail ===== */
.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:44px;}
@media(max-width:860px){.product-detail{grid-template-columns:1fr;}}
.gallery-main{border-radius:var(--radius);overflow:hidden;background:#f1efe9;aspect-ratio:1/1;margin-bottom:12px;}
.gallery-main img,.gallery-main video{width:100%;height:100%;object-fit:cover;}
.gallery-thumbs{display:flex;gap:10px;flex-wrap:wrap;}
.gallery-thumbs img{width:64px;height:64px;object-fit:cover;border-radius:8px;border:2px solid transparent;cursor:pointer;}
.gallery-thumbs img.active{border-color:var(--primary);}
.gallery-thumb-video{
    position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;cursor:pointer;
    border:2px solid transparent;background:#1a1a1a;flex-shrink:0;
}
.gallery-thumb-video img{width:100%;height:100%;object-fit:cover;opacity:.55;}
.gallery-thumb-video .play-icon{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:18px;text-shadow:0 1px 4px rgba(0,0,0,.6);
}
.gallery-thumb-video.active{border-color:var(--primary);}
.qty-box{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;width:fit-content;}
.qty-box button{width:36px;height:36px;background:none;border:none;font-size:18px;}
.qty-box input{width:46px;text-align:center;border:none;background:none;font-size:15px;}

/* ===== Forms ===== */
.form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:34px;max-width:440px;margin:0 auto;}
.form-group{margin-bottom:18px;}
.form-group label{display:block;font-weight:700;font-size:14px;margin-bottom:8px;}
.form-group input,.form-group select,.form-group textarea{
    width:100%;max-width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;
    font-family:inherit;font-size:14px;background:#fff;color:var(--ink);box-sizing:border-box;
}
.form-group textarea{resize:vertical;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);}
.form-note{text-align:center;margin-top:16px;font-size:14px;color:var(--muted);}

.payment-method-options{display:flex;flex-direction:column;gap:10px;}
.payment-method-option{
    display:flex;align-items:flex-start;gap:10px;padding:14px 16px;
    border:1.5px solid var(--line);border-radius:10px;cursor:pointer;transition:.15s;
}
.payment-method-option:has(input:checked),.payment-method-option.active{border-color:var(--primary);background:#EAF1FF;}
.payment-method-option input{width:auto;margin-top:4px;}
.payment-method-option strong{display:block;font-size:14px;margin-bottom:2px;}
.payment-method-option p{margin:0;font-size:12px;color:var(--muted);}

.alert{padding:12px 16px;border-radius:10px;font-size:14px;margin-bottom:18px;}
.alert-error{background:#FBEAE8;color:var(--danger);border:1px solid #F2C6C2;}
.alert-success{background:#E9F3EA;color:#2B7A38;border:1px solid #C7E4C9;}

/* ===== Footer ===== */
.site-footer{background:var(--primary);color:#EFEAE0;margin-top:60px;padding:48px 0 20px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px;margin-bottom:32px;}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr;}}
.footer-grid h4{font-size:15px;margin:0 0 14px;color:var(--accent);}
.footer-grid ul li{margin-bottom:10px;font-size:14px;opacity:.85;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:18px;text-align:center;font-size:13px;opacity:.7;}

/* ===== Tables (account/orders/tickets) ===== */
.table-wrap{overflow-x:auto;background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);}
table{width:100%;border-collapse:collapse;font-size:14px;}
table th,table td{padding:14px 16px;text-align:right;border-bottom:1px solid var(--line);}
table th{background:#F3EFE6;font-weight:700;}
.status-pill{padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;display:inline-block;}
.status-pending{background:#FCEFD9;color:#96650B;}
.status-processing{background:#DCEAF5;color:#1B5B8C;}
.status-shipped{background:#E4E0F8;color:#4B37A8;}
.status-delivered{background:#E1F2E3;color:#237A34;}
.status-cancelled{background:#FBE4E2;color:#B23327;}
.status-open{background:#FCEFD9;color:#96650B;}
.status-answered{background:#DCEAF5;color:#1B5B8C;}
.status-closed{background:#EDEBE6;color:#6b6b6b;}
.status-paid{background:#E1F2E3;color:#237A34;}
.status-unpaid{background:#FCEFD9;color:#96650B;}
.status-failed{background:#FBE4E2;color:#B23327;}
.priority-normal{background:#EDEBE6;color:#6b6b6b;}
.priority-high{background:#FCEFD9;color:#96650B;}
.priority-urgent{background:#FBE4E2;color:#B23327;font-weight:800;}
.category-pill{background:#EFEAE0;color:var(--primary);padding:4px 12px;border-radius:999px;font-size:12px;font-weight:700;display:inline-block;}
.unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--primary);margin-left:6px;vertical-align:middle;}

/* ===== Star Rating ===== */
.star-rating{color:var(--gold);letter-spacing:1px;}
.rating-line{display:flex;align-items:center;gap:6px;margin-bottom:6px;}
.rating-count{font-size:12px;color:var(--muted);}
.star-input{display:flex;flex-direction:row-reverse;gap:4px;font-size:26px;justify-content:flex-end;}
.star-input input{display:none;}
.star-input label{color:#DCE3F0;cursor:pointer;transition:.15s;}
.star-input input:checked ~ label,
.star-input label:hover,
.star-input label:hover ~ label{color:var(--gold);}
.review-card{border-bottom:1px solid var(--line);padding:16px 0;}
.review-card:last-child{border-bottom:none;}
.review-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
.review-author{font-weight:700;font-size:14px;}
.review-date{font-size:12px;color:var(--muted);}
.review-comment{font-size:14px;color:var(--ink);line-height:1.8;}
.pending-note{background:#FCEFD9;color:#96650B;font-size:12px;padding:8px 12px;border-radius:8px;margin-top:10px;}

.empty-state{text-align:center;padding:60px 20px;color:var(--muted);}
.empty-state .icon{font-size:40px;margin-bottom:12px;}

/* account sidebar */
.account-layout{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start;}
@media(max-width:760px){.account-layout{grid-template-columns:1fr;}}
.account-menu{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px;}
.account-menu a{display:block;padding:12px 14px;border-radius:10px;font-weight:600;font-size:14px;margin-bottom:4px;}
.account-menu a.active,.account-menu a:hover{background:var(--bg);color:var(--primary);}

/* chat bubble for tickets */
.chat-box{display:flex;flex-direction:column;gap:14px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-height:480px;overflow-y:auto;}
.msg{max-width:75%;padding:12px 16px;border-radius:14px;font-size:14px;line-height:1.7;}
.msg small{display:block;font-size:11px;opacity:.6;margin-top:6px;}
.msg.customer{align-self:flex-start;background:#F1EEE6;border-bottom-right-radius:2px;}
.msg.admin{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-left-radius:2px;}

.msg-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.msg-attach-img{width:90px;height:90px;border-radius:8px;overflow:hidden;display:block;}
.msg-attach-img img{width:100%;height:100%;object-fit:cover;}
.msg-attach-file{
    display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.06);
    padding:8px 12px;border-radius:8px;font-size:12px;text-decoration:underline;
}
.msg.admin .msg-attach-file{background:rgba(255,255,255,.18);color:#fff;}
.file-upload-hint{font-size:12px;color:var(--muted);margin-top:6px;}

.page-title{padding:36px 0 10px;}
.page-title h1{font-size:26px;margin:0;font-weight:800;}

.page-content{font-size:15px;line-height:2;color:var(--ink);}
.page-content h2,.page-content h3{margin:24px 0 12px;font-weight:800;color:var(--primary);}
.page-content p{margin:0 0 14px;}
.page-content a{color:var(--primary);text-decoration:underline;}
.page-content ul,.page-content ol{margin:0 0 14px;padding-right:22px;}

/* ===== Product highlight boxes ===== */
.highlight-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0;}
@media(max-width:700px){.highlight-boxes{grid-template-columns:1fr;}}
.highlight-box{
    background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
    padding:16px;text-align:center;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    min-height:92px;height:100%;box-sizing:border-box;overflow:hidden;
}
.highlight-label{font-size:13px;color:var(--muted);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.highlight-value{font-size:17px;font-weight:800;color:var(--primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}

.spec-desc-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
@media(max-width:820px){.spec-desc-grid{grid-template-columns:1fr;}}

.triple-col-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px;align-items:start;}
@media(max-width:900px){.triple-col-grid{grid-template-columns:1fr;}}

.pd-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;margin-bottom:24px;}
.pd-block-title{font-size:18px;margin:0 0 16px;font-weight:800;padding-bottom:12px;border-bottom:1px solid var(--line);}
.pd-block .table-wrap,.pd-block > .page-content{max-width:760px;}

/* ===== Gallery ===== */
.gallery-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:22px;}
.gallery-folder-card{
    background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
    overflow:hidden;transition:.2s;display:block;
}
.gallery-folder-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.gallery-folder-thumb{aspect-ratio:4/3;background:#EEF2FA;overflow:hidden;}
.gallery-folder-thumb img{width:100%;height:100%;object-fit:cover;}
.gallery-folder-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:40px;color:#c7d2e6;}
.gallery-folder-body{padding:14px 16px;}
.gallery-folder-body h3{font-size:15px;margin:0 0 6px;font-weight:700;}
.gallery-folder-count{font-size:12px;color:var(--muted);}

/* اسلایدر افقی نمایشگاه‌ها در صفحه اصلی */
.gallery-slider-wrap{position:relative;}
.gallery-slider{
    display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;
    padding-bottom:6px;scrollbar-width:none;-ms-overflow-style:none;
}
.gallery-slider::-webkit-scrollbar{display:none;}
.gallery-slider .gallery-folder-card{flex:0 0 240px;scroll-snap-align:start;}
.gallery-slider-btn{position:absolute;top:40%;transform:translateY(-50%);background:var(--surface);box-shadow:var(--shadow);}
.gallery-slider-btn.prev{right:-14px;}
.gallery-slider-btn.next{left:-14px;}
@media(max-width:700px){.gallery-slider-btn{display:none;}}

.gallery-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;}
.gallery-photo-item{aspect-ratio:1/1;border-radius:10px;overflow:hidden;cursor:pointer;background:#EEF2FA;}
.gallery-photo-item img{width:100%;height:100%;object-fit:cover;transition:.2s;}
.gallery-photo-item:hover img{transform:scale(1.05);}

.lightbox-overlay{
    display:none;position:fixed;inset:0;background:rgba(10,15,30,.92);z-index:200;
    align-items:center;justify-content:center;padding:30px;
}
.lightbox-overlay.open{display:flex;}
.lightbox-overlay img{max-width:100%;max-height:90vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.lightbox-close{position:absolute;top:20px;left:30px;color:#fff;font-size:36px;cursor:pointer;line-height:1;}
