/* ارث‌بری کامل فونت قالب برای تمامی عناصر فرم */
.yekvisa-calculator-wrapper,
.yekvisa-calculator-wrapper * {
    font-family: inherit !important;
    box-sizing: border-box;
}

.yekvisa-calculator-wrapper .container { 
    max-width: 1300px; 
    margin: 40px auto; 
    background: #f5f5f7; 
    border-radius: 16px; 
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.08); 
    padding: 32px 24px; 
}

.yekvisa-calculator-wrapper h1 { 
    margin-top: 0; 
    font-size: 1.6rem; 
    text-align: center; 
    margin-bottom: 8px; 
}

.yekvisa-calculator-wrapper .subtitle { 
    text-align: center; 
    color: #555; 
    font-size: 0.95rem; 
    margin-bottom: 24px; 
}

.yekvisa-calculator-wrapper form { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); 
    gap: 16px 24px; 
}

.yekvisa-calculator-wrapper .form-group { 
    display: flex; 
    flex-direction: column; 
    gap: 4px; 
}

.yekvisa-calculator-wrapper label { 
    font-size: 0.9rem; 
    font-weight: 600; 
    color: #333; 
}

.yekvisa-calculator-wrapper input, 
.yekvisa-calculator-wrapper select { 
    padding: 8px 10px; 
    border-radius: 8px; 
    border: 1px solid #d0d0d5; 
    font-size: 0.9rem; 
    outline: none; 
    background: #fafafa; 
    transition: border-color 0.2s, box-shadow 0.2s, background 0.2s; 
}

/* هماهنگی فوکوس فیلدها با رنگ طلایی اصلی */
.yekvisa-calculator-wrapper input:focus, 
.yekvisa-calculator-wrapper select:focus { 
    border-color: #CBA86B; 
    box-shadow: 0 0 0 3px rgba(203, 168, 107, 0.25); 
    background: #fff; 
}

.yekvisa-calculator-wrapper .full-width { 
    grid-column: 1 / -1; 
}

.yekvisa-calculator-wrapper .btn-wrapper { 
    grid-column: 1 / -1; 
    text-align: center; 
    margin-top: 8px; 
}

/* رنگ اصلی دکمه */
.yekvisa-calculator-wrapper button[type="submit"] { 
    padding: 12px 24px; 
    font-size: 1rem; 
    border-radius: 999px; 
    border: none; 
    background: #CBA86B !important; 
    color: #fff !important; 
    cursor: pointer; 
    font-weight: 700; 
    min-width: 200px; 
    transition: transform 0.2s, box-shadow 0.2s, background 0.2s; 
}

.yekvisa-calculator-wrapper button[type="submit"]:hover { 
    background: #31363F !important; 
    box-shadow: 0 8px 18px rgba(49, 54, 63, 0.25); 
    transform: translateY(-2px); 
}

.yekvisa-calculator-wrapper button[type="submit"]:disabled { 
    background: #aaa !important; 
    cursor: not-allowed; 
    transform: none; 
    box-shadow: none; 
}

.yekvisa-calculator-wrapper .result-card { 
    margin-top: 24px; 
    padding: 16px 18px; 
    border-radius: 12px; 
    border: 1px solid #e0e0e6; 
    background: #f9fafb; 
    display: none; 
}

.yekvisa-calculator-wrapper .result-header { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    gap: 8px; 
    margin-bottom: 8px; 
    flex-wrap: wrap; 
}

.yekvisa-calculator-wrapper .result-title { 
    font-weight: 700; 
    font-size: 1rem; 
}

.yekvisa-calculator-wrapper .badge { 
    padding: 4px 10px; 
    border-radius: 999px; 
    font-size: 0.85rem; 
    font-weight: 600; 
    display: inline-block; 
}

.yekvisa-calculator-wrapper .badge-low { background: #fef2f2; color: #b91c1c; } 
.yekvisa-calculator-wrapper .badge-medium { background: #fffbeb; color: #92400e; } 
.yekvisa-calculator-wrapper .badge-high { background: #ecfdf3; color: #166534; }

.yekvisa-calculator-wrapper .score { 
    font-size: 0.9rem; 
    color: #444; 
    margin-bottom: 4px; 
}

.yekvisa-calculator-wrapper .result-text { 
    font-size: 0.9rem; 
    color: #333; 
    line-height: 1.7; 
}

.yekvisa-calculator-wrapper .result-list { 
    font-size: 0.85rem; 
    margin-top: 10px; 
    padding-right: 18px; 
    list-style-type: disc; 
}

.yekvisa-calculator-wrapper .disclaimer { 
    margin-top: 10px; 
    font-size: 0.78rem; 
    color: #777; 
}

.yekvisa-calculator-wrapper .error { 
    color: #b91c1c; 
    font-size: 0.8rem; 
    margin-top: 4px; 
    display: none; 
}

.yekvisa-calculator-wrapper #submissionStatus { 
    grid-column: 1 / -1; 
    text-align: center; 
    margin-top: 10px; 
    padding: 8px; 
    border-radius: 6px; 
    font-size: 0.9rem; 
    display: none; 
}

.yekvisa-calculator-wrapper #submissionStatus.success { 
    color: #155724; 
    background-color: #d4edda; 
}

.yekvisa-calculator-wrapper #submissionStatus.error { 
    color: #721c24; 
    background-color: #f8d7da; 
}