/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 16 2026 | 09:19:59 */
:root {
    --nikan-brand: #0056b3;
    --nikan-dark: #112337;
    --nikan-bg: #f8f9fa;
    --nikan-border: #dfe6ed;
    --sidebar-width: 320px;
    --sticky-top-offset: 140px; /* فاصله از بالا برای جلوگیری از تداخل با هدر */
}

/* رفع باگ استیکی */
.nikan-calc-wrapper, .nikan-calc-wrapper * { overflow: visible !important; }

.nikan-calc-wrapper {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.05);
    border: 1px solid var(--nikan-border);
    max-width: 1250px;
    margin: 30px auto;
    font-family: inherit;
    direction: rtl;
    position: relative;
}

.nikan-layout-container { display: flex; gap: 30px; align-items: flex-start; }
.nikan-content-col { flex: 1; min-width: 0; }

/* سایدبار چسبان (اصلاح شده) */
.nikan-sidebar-col {
    width: var(--sidebar-width);
    flex-shrink: 0;
    position: -webkit-sticky;
    position: sticky;
    top: var(--sticky-top-offset);
    z-index: 5; /* اولویت پایین برای نرفتن روی هدر */
    align-self: flex-start;
}

.nikan-sticky-bar {
    background: #2c3e50; color: #fff; padding: 25px; border-radius: 12px; box-shadow: 0 5px 20px rgba(44, 62, 80, 0.2);
}
.bill-header { margin: 0 0 20px 0; color: #fff; font-size: 18px; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 15px; font-weight: bold; }
.bill-row { display: flex; justify-content: space-between; font-size: 14px; color: #ecf0f1; margin-bottom: 12px; align-items: center; }
.vat-row { color: #bdc3c7; font-size: 13px; }
.bill-divider { height: 1px; background: rgba(255,255,255,0.2); margin: 15px 0; }
.total-row { font-size: 16px; font-weight: bold; color: #fff; align-items: center; margin-bottom: 0; }
.total-row span:last-child { color: #f1c40f; font-size: 22px; display: block; margin-top: 5px; }

/* دکمه‌ها و کنترل‌ها */
.nikan-calc-header { text-align: center; margin-bottom: 30px; }
.nikan-calc-header h3 { color: var(--nikan-brand); font-weight: 800; margin-bottom: 10px; }
.nikan-controls { background: #f0f4f8; padding: 20px; border-radius: 12px; margin-bottom: 30px; }
.nikan-package-selector { width: 100%; text-align: center; margin-bottom: 20px; }
.package-header-label { display: block; font-weight: bold; color: #2c3e50; margin-bottom: 12px; }
.package-buttons { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; }
.package-btn { border: 1px solid #cbd5e0; background: #fff; padding: 8px 14px; border-radius: 8px; transition: all 0.2s; font-size: 13px; color: #555; display: flex; align-items: center; gap: 6px; cursor: pointer; }
.package-btn:hover { border-color: var(--nikan-brand); background: #f1f8fe; color: var(--nikan-brand); }
.package-btn.active { background: var(--nikan-brand); color: #fff; border-color: var(--nikan-brand); box-shadow: 0 4px 12px rgba(0, 86, 179, 0.2); font-weight: bold; transform: translateY(-2px); }
.controls-divider { height: 1px; background: #dce2e8; margin: 15px auto; width: 95%; }
.controls-row { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; }
.nikan-toggle-group { display: flex; align-items: center; gap: 12px; }
.toggle-label { font-weight: bold; color: var(--nikan-dark); font-size: 14px; }
.toggle-buttons { display: flex; background: #fff; border-radius: 8px; padding: 4px; border: 1px solid #cbd5e0; }
.nikan-btn { border: none; background: transparent; padding: 8px 16px; border-radius: 6px; cursor: pointer; font-family: inherit; font-size: 13px; transition: all 0.3s; color: #64748b; }
.nikan-btn.active { background: var(--nikan-brand); color: white; font-weight: bold; }

/* کارت‌ها */
.nikan-calc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 15px; margin-bottom: 25px; }
.nikan-sec-title { margin-bottom: 20px; font-size: 16px; color: var(--nikan-dark); border-bottom: 1px solid #eee; padding-bottom: 10px; display: flex; align-items: center; }
.nikan-sec-title span { background: var(--nikan-brand); color: white; border-radius: 50%; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; margin-left: 10px; font-size: 14px; }
.nikan-item { position: relative; cursor: pointer; }
.nikan-input { position: absolute; opacity: 0; }
.item-inner { border: 1px solid var(--nikan-border); border-radius: 10px; padding: 15px; transition: all 0.2s; height: 100%; display: flex; flex-direction: column; justify-content: center; text-align: center; background: #fff; min-height: 100px; }
.nikan-item:hover .item-inner { border-color: var(--nikan-brand); transform: translateY(-3px); box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
.nikan-input:checked + .item-inner { border-color: var(--nikan-brand); background: #e3f2fd; box-shadow: 0 0 0 1px var(--nikan-brand); }
.nikan-input:checked + .item-inner::before { content: '✔'; position: absolute; top: -8px; right: -8px; background: #28a745; color: white; width: 22px; height: 22px; border-radius: 50%; font-size: 13px; display: flex; align-items: center; justify-content: center; z-index: 2; box-shadow: 0 2px 5px rgba(0,0,0,0.1); }
.item-name { font-weight: 600; font-size: 13px; margin-bottom: 8px; color: var(--nikan-dark); }
.item-price { font-size: 12px; color: #64748b; background: #f1f5f9; padding: 4px 8px; border-radius: 4px; display: inline-block; }
.qty-wrapper { margin-top: 10px; width: 100%; }
.nikan-input-qty { width: 70%; padding: 6px; border: 1px solid #cbd5e0; border-radius: 6px; text-align: center; font-size: 14px; background: #f8f9fa; margin: 0 auto; display: block; }
.quantity-item .item-inner.has-value { border-color: var(--nikan-brand); background: #f0f9ff; }
.platform-section { display: none; animation: fadeIn 0.4s; }
.platform-section.active { display: block; }
.nikan-alert { background: #fff3cd; color: #856404; padding: 12px; border-radius: 8px; margin-bottom: 20px; font-size: 13px; border: 1px solid #ffeeba; text-align: center; }

/* باکس CTA برای وب */
.nikan-call-to-action-box { background: linear-gradient(135deg, #f0f9ff 0%, #e1f2ff 100%); border: 1px solid #bde0fe; border-radius: 12px; padding: 40px; text-align: center; max-width: 600px; margin: 50px auto; }
.cta-icon { font-size: 50px; margin-bottom: 20px; }
.nikan-call-to-action-box h3 { color: #0056b3; font-size: 24px; margin-bottom: 15px; }
.nikan-call-to-action-box p { color: #555; font-size: 16px; line-height: 1.6; margin-bottom: 30px; }
.cta-buttons { display: flex; justify-content: center; gap: 15px; flex-wrap: wrap; }
.nikan-btn-cta { padding: 12px 25px; border-radius: 50px; font-size: 16px; font-weight: bold; text-decoration: none; transition: all 0.3s; border: none; cursor: pointer; }
.call-btn { background: #0056b3; color: #fff; box-shadow: 0 5px 15px rgba(0, 86, 179, 0.3); }
.call-btn:hover { background: #004494; transform: translateY(-3px); }

/* --- استایل فرم گرویتی --- */
#gform_wrapper_8 { background-color: #f9fbff; border: 2px solid #e1e8ed; border-radius: 12px; padding: 25px; margin-top: 30px; }
#gform_wrapper_8 input[type="text"], #gform_wrapper_8 input[type="tel"], #gform_wrapper_8 input[type="email"], #gform_wrapper_8 select, #gform_wrapper_8 textarea { background-color: #fff !important; border: 1px solid #d1d9e6 !important; border-radius: 8px !important; padding: 12px 15px !important; font-size: 14px !important; color: #333 !important; transition: all 0.3s ease; width: 100%; min-height: 45px; }
#gform_wrapper_8 input:focus { border-color: var(--nikan-brand) !important; box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.1) !important; }
#gform_wrapper_8 .gfield_label { font-weight: 700 !important; color: var(--nikan-dark) !important; margin-bottom: 8px !important; font-size: 13px !important; }
#gform_wrapper_8 .gform_footer input[type="submit"] { background: var(--nikan-brand) !important; color: #fff !important; border: none !important; border-radius: 8px !important; padding: 12px 40px !important; font-size: 16px !important; font-weight: bold !important; cursor: pointer; transition: all 0.3s ease; width: 100%; margin-top: 10px; box-shadow: 0 4px 15px rgba(0, 86, 179, 0.2); }
#gform_wrapper_8 .gform_footer input[type="submit"]:hover { background: #004494 !important; transform: translateY(-2px); }
.gfield_visibility_hidden, #gform_wrapper_8 .gform_required_legend { display: none !important; }
#gform_wrapper_8 .gfield { margin-bottom: 20px !important; }

/* موبایل */
@media (max-width: 991px) {
    .nikan-layout-container { flex-direction: column; }
    .nikan-sidebar-col { width: 100%; position: static; margin-top: 30px; }
    .nikan-sticky-bar { padding: 20px; }
}