/* ==========================================================================
   Dixith.com Jeevana Sutra Support Suite - Master Stylesheet v3.1
   Description: Dynamic Alignments, Golden UX Box, Compact Flex Footer
   ========================================================================== */

:root {
    --dx-primary: #8C2111; 
    --dx-heading-bright: #9E1B1B; 
    --dx-dark: #3A1108;    
    --dx-gold: #D4AF37;    
    --dx-text-main: #2C1B18;
    --dx-text-muted: #5D4A46;
    --dx-border: #D8CCC9;
    --dx-border-light: #EBE5E4;
}

/* NUCLEAR RESET */
html body #dx-core-app#dx-core-app {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    width: 100% !important; max-width: 900px !important; margin: 0 auto !important; 
    color: var(--dx-text-main) !important; line-height: 1.7 !important;
    -webkit-font-smoothing: antialiased !important; box-sizing: border-box !important;
    background: #fff !important; border-radius: 8px !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
}
html body #dx-core-app#dx-core-app * { box-sizing: border-box !important; }

/* Font Protection & Normalisation */
html body #dx-core-app#dx-core-app p, html body #dx-core-app#dx-core-app ol, html body #dx-core-app#dx-core-app ul, 
html body #dx-core-app#dx-core-app li, html body #dx-core-app#dx-core-app details, html body #dx-core-app#dx-core-app summary, 
html body #dx-core-app#dx-core-app span, html body #dx-core-app#dx-core-app div, html body #dx-core-app#dx-core-app .dx-body-text {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

html body #dx-core-app#dx-core-app p { margin-top: 0 !important; margin-bottom: 16px !important; font-size: 16px !important; line-height: 1.6 !important; font-weight: 400 !important; }
html body #dx-core-app#dx-core-app ul { margin: 8px 0 16px 0 !important; padding-left: 20px !important; }
html body #dx-core-app#dx-core-app li { margin-bottom: 12px !important; font-size: 15.5px !important; line-height: 1.6 !important; font-weight: 400 !important; }

/* Headings (Merriweather) */
html body #dx-core-app#dx-core-app .dx-serif { font-family: 'Merriweather', Georgia, serif !important; }

html body #dx-core-app#dx-core-app .dx-heading-lg {
    font-family: 'Merriweather', Georgia, serif !important; font-size: 24px !important; font-weight: 900 !important;
    color: var(--dx-heading-bright) !important; margin: 32px 0 16px 0 !important; line-height: 1.3 !important;
}
/* Shastra Subheadings: Dark Grey, Reduced Size */
html body #dx-core-app#dx-core-app .dx-heading-md {
    font-family: 'Merriweather', Georgia, serif !important; font-size: 18px !important; font-weight: 700 !important;
    color: var(--dx-dark) !important; margin: 28px 0 10px 0 !important; line-height: 1.4 !important;
}
html body #dx-core-app#dx-core-app .dx-heading-sm {
    font-family: 'Merriweather', Georgia, serif !important; font-size: 17px !important; font-weight: 700 !important;
    color: var(--dx-dark) !important; margin: 0 0 6px 0 !important;
}

/* Header & Tabs */
html body #dx-core-app#dx-core-app .dx-header {
    background: linear-gradient(135deg, rgba(58, 17, 8, 0.92) 0%, rgba(140, 33, 17, 0.95) 100%), 
                url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23daa520' fill-opacity='0.15'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") !important;
    color: #fff !important; padding: 40px 25px !important; border-radius: 8px 8px 0 0 !important; text-align: center !important; border-bottom: 4px solid var(--dx-gold) !important;
}
html body #dx-core-app#dx-core-app .dx-title { font-family: 'Merriweather', Georgia, serif !important; margin: 0 0 6px 0 !important; font-size: 32px !important; font-weight: 900 !important; color: #ffffff !important; display: block !important; }
html body #dx-core-app#dx-core-app .dx-subtitle { font-size: 16px !important; color: var(--dx-gold) !important; font-weight: 400 !important; font-style: italic !important; }
html body #dx-core-app#dx-core-app .dx-body { padding: 32px !important; border: 1px solid var(--dx-border-light) !important; border-top: none !important; border-radius: 0 0 8px 8px !important; }
html body #dx-core-app#dx-core-app .dx-tabs { display: flex !important; background: #FAF8F5 !important; border-left: 1px solid var(--dx-border-light) !important; border-right: 1px solid var(--dx-border-light) !important; padding: 6px 6px 0 !important; gap: 3px !important; }
html body #dx-core-app#dx-core-app .dx-tab { padding: 12px 18px !important; font-size: 15px !important; font-weight: 600 !important; color: var(--dx-text-muted) !important; background: transparent !important; border: 1px solid transparent !important; border-bottom: none !important; border-radius: 6px 6px 0 0 !important; cursor: pointer !important; transition: all 0.2s !important; }
html body #dx-core-app#dx-core-app .dx-tab.active { color: var(--dx-primary) !important; background: #fff !important; border-color: var(--dx-border-light) !important; font-weight: 700 !important; }
html body #dx-core-app#dx-core-app .dx-panel { display: none !important; }
html body #dx-core-app#dx-core-app .dx-panel.active { display: block !important; animation: fadeIn 0.3s ease-in-out !important; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

/* Golden UX Intro Box & Form Fields */
html body #dx-core-app#dx-core-app .dx-ux-intro { 
    background-color: #FFF9C4 !important; /* Soft golden yellow */
    border: 1px solid #FBC02D !important; /* Slightly darker gold border */
    border-radius: 8px !important; 
    padding: 16px 20px !important; 
    margin-bottom: 28px !important; 
    font-size: 15.5px !important; 
    color: var(--dx-dark) !important; 
    line-height: 1.6 !important;
}
html body #dx-core-app#dx-core-app .dx-field { margin-bottom: 26px !important; width: 100% !important; }
html body #dx-core-app#dx-core-app .dx-label { display: block !important; margin-bottom: 10px !important; font-weight: 500 !important; color: var(--dx-dark) !important; font-size: 16px !important; }
html body #dx-core-app#dx-core-app .dx-highlight { color: var(--dx-primary) !important; border-bottom: 2px solid var(--dx-gold) !important; padding-bottom: 1px !important; font-weight: 700 !important; }

html body #dx-core-app#dx-core-app .dx-select { 
    width: 100% !important; padding: 14px 40px 14px 16px !important; border: 1px solid #BCAAA4 !important; 
    border-radius: 6px !important; font-size: 15.5px !important; font-weight: 400 !important; 
    color: var(--dx-text-main) !important; background-color: #FAFAFA !important; transition: all 0.2s !important; cursor: pointer !important;
    appearance: none !important; -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233A1108' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 18px !important;
}
html body #dx-core-app#dx-core-app .dx-select:focus { outline: none !important; border-color: var(--dx-primary) !important; background-color: #fff !important; box-shadow: 0 0 0 3px rgba(158, 27, 27, 0.1) !important; }
html body #dx-core-app#dx-core-app .dx-btn-primary { padding: 18px 24px !important; border: none !important; border-radius: 6px !important; font-size: 18px !important; font-weight: 700 !important; cursor: pointer !important; color: #fff !important; display: block !important; width: 100% !important; text-align: center !important; background: linear-gradient(135deg, var(--dx-primary), var(--dx-dark)) !important; box-shadow: 0 4px 6px rgba(140, 33, 17, 0.2) !important; transition: transform 0.1s, box-shadow 0.2s !important; margin-top: 30px !important; }
html body #dx-core-app#dx-core-app .dx-btn-primary:hover { background: linear-gradient(135deg, var(--dx-heading-bright), var(--dx-primary)) !important;}

/* ==========================================================================
   COLOR THERAPY: DATA-ATTRIBUTE ARCHITECTURE
   ========================================================================== */
html body #dx-core-app#dx-core-app .dx-result-box { 
    padding: 35px !important; border-radius: 8px !important; margin-top: 35px !important; 
    box-shadow: 0 8px 30px rgba(0,0,0,0.06) !important; transition: all 0.5s ease !important; 
    background-color: #ffffff !important; border: 1px solid var(--dx-border-light) !important; border-top: 5px solid var(--dx-heading-bright) !important; 
}

html body #dx-core-app#dx-core-app [data-energy-theme="tamasic"] { background-color: #FFF9F2 !important; border-color: #FFE0B2 !important; border-top: 5px solid #E65100 !important; }
html body #dx-core-app#dx-core-app [data-energy-theme="rajasic"] { background-color: #F4FAFC !important; border-color: #B3E5FC !important; border-top: 5px solid #0277BD !important; }
html body #dx-core-app#dx-core-app [data-energy-theme="sattvic"] { background-color: #FAFAFF !important; border-color: #D1C4E9 !important; border-top: 5px solid #6A1B9A !important; }

html body #dx-core-app#dx-core-app .dx-dual-paths { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important; gap: 24px !important; margin-top: 24px !important; }
html body #dx-core-app#dx-core-app .dx-advice-box { padding: 24px !important; border-radius: 8px !important; box-shadow: 0 2px 12px rgba(0,0,0,0.04) !important; background: #ffffff !important; border: 1px solid var(--dx-border) !important; }

html body #dx-core-app#dx-core-app [data-energy-theme="tamasic"] .dx-advice-philo { border-color: #FFCC80 !important; background-color: #FFFDFB !important;}
html body #dx-core-app#dx-core-app [data-energy-theme="tamasic"] .dx-advice-pragmatic { border-color: #EF9A9A !important; background-color: #FFFBFC !important;}
html body #dx-core-app#dx-core-app [data-energy-theme="rajasic"] .dx-advice-philo { border-color: #81D4FA !important; background-color: #FAFDFF !important;}
html body #dx-core-app#dx-core-app [data-energy-theme="rajasic"] .dx-advice-pragmatic { border-color: #A5D6A7 !important; background-color: #FAFCFA !important;}
html body #dx-core-app#dx-core-app [data-energy-theme="sattvic"] .dx-advice-philo { border-color: #B39DDB !important; background-color: #FDFBFF !important;}
html body #dx-core-app#dx-core-app [data-energy-theme="sattvic"] .dx-advice-pragmatic { border-color: #FFF59D !important; background-color: #FFFFFA !important;}

/* Exact Shloka Formatting (Flush Left Alignment) */
html body #dx-core-app#dx-core-app .dx-shloka-container { margin: 6px 0 16px 0 !important; padding: 0 !important; }
html body #dx-core-app#dx-core-app .dx-devanagari { font-size: 19px !important; color: var(--dx-text-main) !important; margin-bottom: 4px !important; font-weight: 400 !important; }
html body #dx-core-app#dx-core-app .dx-transliteration { font-family: 'Merriweather', Georgia, serif !important; font-size: 16px !important; font-style: italic !important; color: var(--dx-text-main) !important; margin-bottom: 4px !important; font-weight: 400 !important; line-height: 1.5 !important;}
html body #dx-core-app#dx-core-app .dx-shloka-ref { font-size: 14px !important; color: var(--dx-text-muted) !important; font-style: italic !important; font-weight: 400 !important; margin-bottom: 12px !important; display: block !important;}

/* Tab 2 Source Lists - Forcing Normal Weight on Descriptions */
html body #dx-core-app#dx-core-app .dx-source-list { list-style-type: none !important; padding: 0 !important; margin: 0 !important; }
html body #dx-core-app#dx-core-app .dx-source-list li { margin-bottom: 24px !important; padding-bottom: 20px !important; border-bottom: 1px solid var(--dx-border-light) !important; }
html body #dx-core-app#dx-core-app .dx-source-list li:last-child { border-bottom: none !important; margin-bottom: 0 !important; padding-bottom: 0 !important;}
html body #dx-core-app#dx-core-app .dx-source-desc { font-weight: 400 !important; font-size: 15.5px !important; color: var(--dx-text-main) !important; display: block !important; margin-top: 6px !important;}

/* Compact Flex Footer */
html body #dx-core-app#dx-core-app .dx-fixed-box { background: var(--dx-bg-card) !important; border-top: 1px solid var(--dx-border-light) !important; padding: 18px !important; font-size: 14px !important; color: var(--dx-text-muted) !important; line-height: 1.6 !important; margin-top: 20px !important; border-radius: 6px !important; }
html body #dx-core-app#dx-core-app .dx-copyright-box { 
    background: #FAF8F5 !important; border: 1px solid var(--dx-border-light) !important; 
    margin-top: 10px !important; padding: 16px 20px !important; border-radius: 6px !important; 
    display: flex !important; justify-content: space-between !important; align-items: flex-end !important; flex-wrap: wrap !important; gap: 16px !important;
}
html body #dx-core-app#dx-core-app .dx-c-left { display: flex !important; align-items: flex-start !important; gap: 16px !important; flex: 1 !important; }
html body #dx-core-app#dx-core-app .dx-c-icon { background: var(--dx-primary) !important; color: var(--dx-gold) !important; min-width: 36px !important; height: 36px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 18px !important; font-weight: bold !important; margin-top: 2px !important; }
html body #dx-core-app#dx-core-app .dx-c-text { flex: 1 !important; }
html body #dx-core-app#dx-core-app .dx-c-text p { margin: 0 !important; } /* Strips all internal margins */
html body #dx-core-app#dx-core-app .dx-c-title { color: var(--dx-dark) !important; font-weight: 700 !important; font-size: 16px !important; margin-bottom: 2px !important; }

html body #dx-core-app#dx-core-app .dx-bookmark-btn { 
    display: inline-block !important; background: #fff !important; border: 1px solid var(--dx-border) !important;
    padding: 8px 16px !important; border-radius: 4px !important; font-size: 13px !important; font-weight: 600 !important; 
    color: var(--dx-primary) !important; text-decoration: none !important; transition: all 0.2s !important; white-space: nowrap !important;
}
html body #dx-core-app#dx-core-app .dx-bookmark-btn:hover { border-color: var(--dx-primary) !important; background: #FFF9F9 !important; }

@media(max-width: 640px) {
    html body #dx-core-app#dx-core-app .dx-header { padding: 24px 16px !important; }
    html body #dx-core-app#dx-core-app .dx-body { padding: 24px 16px !important; }
    html body #dx-core-app#dx-core-app .dx-result-box { padding: 24px 16px !important; }
    html body #dx-core-app#dx-core-app .dx-copyright-box { flex-direction: column !important; align-items: flex-start !important; }
}