body {
    position: relative;
    background-color: #1a202c; /* Darker, more professional background */
}

body::before {
    content: '';
    position: absolute;
    top: -20%;
    left: -20%;
    width: 60%;
    height: 60%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(66, 153, 225, 0.2) 0%, rgba(66, 153, 225, 0) 60%); /* Muted blue */
    z-index: 0;
    animation: watercolor-bg 25s infinite alternate;
}

body::after {
    content: '';
    position: absolute;
    bottom: -20%;
    right: -20%;
    width: 60%;
    height: 60%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(128, 90, 213, 0.2) 0%, rgba(128, 90, 213, 0) 60%); /* Muted purple */
    z-index: 0;
    animation: watercolor-bg 35s infinite alternate-reverse;
}

@keyframes watercolor-bg {
    from {
        transform: translate(0, 0) rotate(0deg);
    }
    to {
        transform: translate(100px, 50px) rotate(15deg);
    }
}

#app {
    position: relative;
    z-index: 1;
}

/* Noise background - keeping it subtle */
body {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAUVBMVEWFhYWDg4N3d3dtbW17e3t1dXWBgYGHh4d5eXlzc3OLi4ubm5uVlZWPj4+NjY19fX2JiYl/f39ra2uRkZGZmZlpaWmXl5dvb29xcXGTk5NnZ2c8TV1mAAAAG3RSTlNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAvEOwtAAAFVklEQVR4XpWWB67c2BUFb3g557T/hRo9/WUMZHlgr4Bg8Z4qQgQJlHI4A8SzFVrapvmTF9O7dmYRFZ60YiBhJRCgh1FYhiLAmdvX0CzTOpNE77ME0Zty_nWWzchDtiqrmQDeuv3powQ5ta2eN0FY0InkqDD73lT9c9lEzwUNqgFHs9VQce3TVClFCQr+0FeRMKdGkä5FzVWVrUQFFE/x9gLSsvNIsSEr9/p_gpvqdK_KC9vGb FortniteadnCElBpkZrYGvtgEwq1EBjwXaU0K5IghC1EtHODxIFvrpvfkPir_i36_RhqPbiL3laKDak2hQHs_EfAXL0GAfSdxgS2IhfCS3_AAPgi1A97NnF0FYfwAZ7w10FDzRISzt3h245VwGgBeL2A8qAU3w/fjFE14wV2qZ_pveC__3wW_c_f663fSx2GrCDIBwBf_319_f3wUrQe3tr2+vXz1_VLcAgpQu8rSJMk1b_kdoA3Vv8Aj0Am8dF2s0oF11h8wG0d478wB7A1T_gMP3gP_ff_3_f31_3g1_sBnlhVj8e_p2Yj2_sAG1_f0P_d_Hr97__3z9_aHrHx4gJPAI_wH_f_v5_f_v+v__w8__wH_9_X0_U_3yI_gD_259_f3x+e_p9I_wedz4_f_D13_9_D0_QAo_aT_e_fIu_qP_xO59_v_f__u_f__3_f3z_wE_wH_v__f__f_v+__f__9__2_L3__9__9X_39__2__fn__9__+_f__7__9__f__79b_D3__ef__7__+vP___v__v__v9_f___3__v9___+_f__9__f___9___3___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v___v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v__v-');
    background-repeat: repeat;
    background-size: 50px;
    animation: noise-animation 1s infinite steps(2);
}

@keyframes noise-animation {
    0% { background-position: 0 0; }
    100% { background-position: 50px 50px; }
}

.font-['Gowun_Batang'] {
    font-family: 'Gowun Batang', serif;
}

.font-['Gowun_Dodum'] {
    font-family: 'Gowun Dodum', sans-serif;
}

/* Glassmorphism Card - more defined */
.glass-card {
    background: rgba(255, 255, 255, 0.1); /* Less opaque */
    backdrop-filter: blur(8px); /* Slightly less blur */
    border: 1px solid rgba(255, 255, 255, 0.15); /* More subtle border */
    border-radius: 0.75rem; /* Smoother corners */
}

/* Watercolor Button - more professional */
.watercolor-btn {
    background-image: linear-gradient(to right, #4299e1, #805ad5); /* Muted blue to purple */
    transition: all 0.3s ease;
    border: none; /* Remove border */
}

.watercolor-btn:hover {
    box-shadow: 0 0 20px rgba(66, 153, 225, 0.4), 0 0 20px rgba(128, 90, 213, 0.4); /* Stronger but still soft glow */
    transform: translateY(-2px); /* Slight lift */
}

.fade-in {
    animation: fadeIn 0.5s ease-in-out;
}

.float-up {
    animation: floatUp 0.5s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes floatUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

/* Chart container - ensuring proper scaling */
.chart-container {
    position: relative;
    height: 400px; /* Fixed height for consistency */
    width: 100%;
    margin-top: 2rem;
    margin-bottom: 2rem;
    background: rgba(255, 255, 255, 0.05); /* Very subtle chart background */
    border-radius: 0.75rem;
    padding: 1rem;
}

/* Text color for better contrast on dark background */
.text-gray-100 { color: #f7fafc; }
.text-gray-200 { color: #edf2f7; }
.text-gray-300 { color: #e2e8f0; }
.text-gray-400 { color: #cbd5e0; }
.text-gray-500 { color: #a0aec0; }
.text-gray-600 { color: #718096; }
.text-gray-700 { color: #4a5568; }
.text-gray-800 { color: #2d3748; }
.text-gray-900 { color: #1a202c; }

/* Adjust form-radio color for dark theme */
.form-radio.h-5.w-5.text-blue-400 {
    color: #4299e1; /* Tailwind blue-500 */
}
.form-radio:focus {
    --tw-ring-color: #63b3ed; /* Tailwind blue-300 */
    --tw-ring-offset-color: #1a202c; /* Background color */
}

/* Additional styles for professional look */
h1, h2, h3 {
    color: #f7fafc; /* Lighter headings for contrast */
}

label {
    color: #cbd5e0; /* Lighter labels */
}

input[type="text"] {
    background-color: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.1);
    color: #f7fafc;
}

input[type="text"]::placeholder {
    color: #a0aec0;
}

.text-blue-500 {
    color: #63b3ed; /* Adjusted blue for links */
}

.hover\:underline:hover {
    text-decoration-color: #63b3ed;
}

.persona-card {
    border-width: 2px !important; /* Make border more prominent */
    background-color: rgba(255, 255, 255, 0.05) !important; /* More subtle background */
}
