:root {
    --primary-blue: #2a6592;
    --secondary-blue: #51a2d9;
    --light-blue: #b9e5f3;
    --bg-gray: #f4f7f9;
    --tooltip-bg: #333;
}

#num-conv-app * { box-sizing: border-box !important; }

#num-conv-app .main-wrapper {
    max-width: 800px;
    width: 100%;
    margin: 20px auto;
    border: 1px solid var(--secondary-blue);
    background-color: var(--bg-gray);
    font-family: 'Segoe UI', Tahoma, sans-serif;
	font-size:19px;
	font-weight:600;
	color: #296592;
}

#num-conv-app .header-section {
    background-color: #dee3e9;
    padding: 12px;
    text-align: center;
    border-bottom: 1px solid var(--secondary-blue);
}

#num-conv-app .input-row { display: flex; flex-direction: column; align-items: center; gap: 10px; }
#num-conv-app .main-input-group { display: flex; gap: 5px; }
#num-conv-app .support-text { padding-top:8px;font-size:15px;}

#num-conv-app .boxed {
    background-color: var(--light-blue);
    width: 95%;
    margin: 15px auto;
    border: 1px solid var(--secondary-blue);
    padding: 12px;
    border-radius: 2px;
}

#num-conv-app .box-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; flex-wrap: wrap; }
#num-conv-app .header-input-group { display: flex; align-items: center; gap: 5px; }

#num-conv-app .inputText { height: 35px; padding: 5px 10px; border: 1px solid #ccc; border-radius: 2px; }
#num-conv-app .main-input { flex-grow: 1; font-size: 18px; font-weight: bold; }
#num-conv-app .small-input { width: 160px; background: #eee; font-weight: 400; }

#num-conv-app .inputTextarea {
    width: 100%;
    height: 90px;
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 2px;
    resize: vertical;
    margin-bottom: 10px;
    display: block;
}

#num-conv-app .btn-group { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; margin-bottom:0px; }
#num-conv-app .btn {
    padding: 6px 12px;
    border: none;
    border-radius: 2px;
    cursor: pointer;
    background-color: var(--primary-blue);
    color: white;
    font-size: 15px;
    font-weight: 500;
    text-transform: capitalize;
    display: flex;
    align-items: center;
    justify-content: center;
}

#num-conv-app .btn-success { background-color: #28a745; }
#num-conv-app .btn-primary { background-color: #007bff; }
#num-conv-app .btn-warning { background-color: #fd7e14; }
#num-conv-app .btn i { display: none !important; } /* Icons force hidden */

/* Currency Grid Fix */
#num-conv-app .currency-grid { display: grid; grid-template-columns: 1fr auto 1fr; gap: 14px; align-items: center; }
#num-conv-app .input-group { display: flex; border: 1px solid #ccc; background: white; border-radius: 2px; overflow: hidden; flex-wrap: nowrap;font-size:14px;}
#num-conv-app .input-group-label { background: #007bff; color: white; padding: 5px 8px; font-weight: bold; font-size: 11px; min-width: 50px; display: flex; align-items: center; justify-content: center; }
#num-conv-app .cur-select, #num-conv-app .cur-display { border: none; padding: 6px; font-weight: bold; width: 100%; outline: none; }

/* Tooltip Base */
#num-conv-app [data-title] { position: relative; }
#num-conv-app [data-title]::after, #num-conv-app [data-title]::before {
    position: absolute;
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s ease-in-out;
    z-index: 1000;
    pointer-events: none;
}

#num-conv-app [data-title]::after {
    content: attr(data-title);
    bottom: 125%;
    background: var(--tooltip-bg);
    color: #fff;
    padding: 6px 10px;
    border-radius: 2px;
    font-size: 12px;
    white-space: nowrap;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

#num-conv-app [data-title]::before {
    content: '';
    bottom: 110%;
    border: 6px solid transparent;
    border-top-color: var(--tooltip-bg);
}

/* --- Responsive & Mobile Behaviour --- */
@media (hover: hover) {
    #num-conv-app [data-title]:hover::after,
    #num-conv-app [data-title]:hover::before {
        opacity: 1;
        visibility: visible;
        transform: translateX(-50%) translateY(0);
    }
}

@media (max-width: 600px) {
    #num-conv-app .btn { 
        flex-grow: 1; 
        padding: 7.5px 5px; 
        font-size: 13px; 
    }
	#num-conv-app .btn-swap {
		max-width:50px;
    }
	#num-conv-app .small-input { width: 130px; background: #eee; font-weight: 400; }
    #num-conv-app .currency-grid { text-align: center; }
    
    #num-conv-app [data-title]::after, 
    #num-conv-app [data-title]::before { display: none !important; }
	#num-conv-app .currency-grid { display: grid; gap: 14px; align-items: center; }
}
