/* ========================================
   STRATEGIC FONT APPLICATION
   Stylish fonts for content, simple for UI
   ======================================== */

/* UI Elements - Use Clean Sans-Serif for Clarity */
button,
.btn,
input,
textarea,
select,
label,
.nav-title,
.nav-date,
.quiz-question-number,
.quiz-score,
.time-current,
.time-duration,
.bucket-checkbox,
.meter-label,
.mood-current,
.star-coordinates,
.weather-temp,
.bottle-number,
.quiz-progress,
.player-controls,
.control-btn,
.nav-toggle,
.modal-close,
.bottle-modal-close {
    font-family: var(--font-ui) !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px;
}

/* Headings & Titles - Elegant Serif */
h1, h2, h3, h4, h5, h6,
.section-title,
.az-card-title,
.journey-card-title,
.timeline-title,
.song-title,
.playlist-song-title,
.vision-card-title,
.weather-title,
.star-name,
.result-title,
.bottle-message-title,
.hug-message h3,
.wish-confirmation h3,
.preloader-title,
.password-label {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px;
}

/* Body Content - Readable Serif */
p,
.section-subtitle,
.az-card-content,
.journey-card-description,
.comfort-message,
.timeline-description,
.playlist-artist,
.song-artist,
.song-message,
.quiz-option,
.bucket-text,
.gratitude-note-text,
.playlist-why,
.vision-card-description,
.weather-conditions,
.weather-forecast,
.weather-note,
.star-dedication,
.mood-btn span,
.result-message,
.confession-number,
.reason-number {
    font-family: var(--font-body) !important;
    font-weight: 500 !important;
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
}

/* Romantic/Script Text - Beautiful Script Font */
.letter-text,
.memory-text,
.confession-text,
.reason-text,
.hug-message p,
.wish-input,
.bottle-message-text,
.gallery-caption,
.slide-caption,
.infinity-text,
.confirmation-stars + h3,
.wish-confirmation p {
    font-family: var(--font-script) !important;
    font-weight: 400 !important;
    font-size: 1.6rem !important;
    line-height: 1.9 !important;
    letter-spacing: 0.5px;
}

/* Section Subtitles - Body Font */
.section-subtitle {
    font-family: var(--font-body) !important;
    font-size: 1.3rem !important;
    font-weight: 500 !important;
}

/* Button Text - UI Font for Clarity */
button span,
.btn span,
.next-reason-btn span,
.show-confession-btn span,
.quiz-restart-btn span,
.wish-button span,
.star-zoom-btn span,
.meter-restart-btn span {
    font-family: var(--font-ui) !important;
    font-weight: 600 !important;
}

/* Navigation - UI Font */
.birthday-nav {
    font-family: var(--font-ui) !important;
}

.nav-title {
    font-size: 1.3rem !important;
    font-weight: 700 !important;
}

.nav-date {
    font-size: 1.1rem !important;
}

/* Quiz Text */
.quiz-question {
    font-family: var(--font-heading) !important;
    font-size: 2rem !important;
    font-weight: 600 !important;
}

.quiz-option {
    font-family: var(--font-body) !important;
    font-size: 1.2rem !important;
}

.quiz-feedback {
    font-family: var(--font-script) !important;
    font-size: 1.3rem !important;
}

/* Card Content Balance */
.az-card,
.journey-card,
.comfort-card {
    font-family: var(--font-body) !important;
}

/* Timeline */
.timeline-date {
    font-family: var(--font-ui) !important;
    font-weight: 700 !important;
}

.timeline-title {
    font-family: var(--font-heading) !important;
}

.timeline-description {
    font-family: var(--font-body) !important;
}

/* Music Player */
.song-title {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
}

.song-artist {
    font-family: var(--font-ui) !important;
}

.song-message {
    font-family: var(--font-body) !important;
}

/* Reason Counter */
.reason-number {
    font-family: var(--font-heading) !important;
    font-weight: 800 !important;
}

.reason-text {
    font-family: var(--font-script) !important;
}

/* Memory Jar */
.memory-text {
    font-family: var(--font-script) !important;
    font-size: 1.5rem !important;
}

/* Confession Booth */
.confession-text {
    font-family: var(--font-script) !important;
    font-size: 1.6rem !important;
}

/* Gratitude Wall */
.gratitude-note-text {
    font-family: var(--font-body) !important;
    font-size: 1.15rem !important;
}

/* Bucket List */
.bucket-text {
    font-family: var(--font-body) !important;
    font-size: 1.2rem !important;
}

/* Vision Board */
.vision-card-title {
    font-family: var(--font-heading) !important;
}

.vision-card-description {
    font-family: var(--font-body) !important;
}

/* Weather */
.weather-title {
    font-family: var(--font-heading) !important;
}

.weather-temp {
    font-family: var(--font-heading) !important;
    font-weight: 800 !important;
}

/* Star Section */
.star-name {
    font-family: var(--font-heading) !important;
}

.star-coordinates {
    font-family: var(--font-ui) !important;
}

.star-dedication {
    font-family: var(--font-script) !important;
    font-size: 1.4rem !important;
}

/* Bottles */
.bottle-message-title {
    font-family: var(--font-heading) !important;
}

.bottle-message-text {
    font-family: var(--font-script) !important;
    font-size: 1.5rem !important;
}

/* Ensure readability for all script text */
.font-script,
[class*="script"] {
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9), 0 0 20px rgba(0, 0, 0, 0.6) !important;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .letter-text,
    .memory-text,
    .confession-text,
    .reason-text,
    .bottle-message-text,
    .star-dedication {
        font-size: 1.3rem !important;
    }
    
    .quiz-question {
        font-size: 1.6rem !important;
    }
}

@media (max-width: 480px) {
    .letter-text,
    .memory-text,
    .confession-text,
    .reason-text,
    .bottle-message-text {
        font-size: 1.2rem !important;
    }
}
