:root{
    --bg:#f5f7fa;
    --text:#1f2933;
    --card:#ffffff;
}
body.dark-mode{
    --bg:#0f172a;
    --text:#e5e7eb;
    --card:#111827;
}

body{
    background:var(--bg);
    color:var(--text);
    font-family:Segoe UI, sans-serif;
    margin:0;
    padding:2rem;
    transition:.3s;
}

.container{
    max-width:900px;
    margin:auto;
    background:var(--card);
    padding:2rem;
    border-radius:14px;
}

header{text-align:center;}

.input-group{margin-bottom:1rem;}
input{width:100%;padding:10px;border-radius:8px;border:1px solid #ccc;}

button{
    width:100%;
    padding:12px;
    border:none;
    border-radius:10px;
    background:#5f57ed;
    color:#fff;
    font-size:1.1rem;
    cursor:pointer;
}

.radio-group{display:flex;gap:15px;margin-bottom:15px;}

.result-section{
    display:flex;
    gap:1rem;
    margin:2rem 0;
    flex-wrap:wrap;
}

.result-card{
    flex:1;
    background:var(--card);
    padding:1rem;
    border-radius:12px;
    text-align:center;
}

.result-card small{
    font-size:1rem;
    opacity:1;
}

.green{background:#145f19;color:#ffffff;}
.blue{background:#002487;color:#ffffff;}

canvas{margin-top:30px;max-height:350px}

/* Toggle */
.switch-container{position:fixed;top:20px;right:20px;display:flex;gap:8px;}
.switch{width:50px;height:26px;position:relative;}
.switch input{display:none;}
.slider{
    position:absolute;inset:0;
    background:#ccc;border-radius:26px;
}
.slider:before{
    content:"";position:absolute;
    width:20px;height:20px;
    left:3px;bottom:3px;
    background:#fff;border-radius:50%;
    transition:.3s;
}
input:checked+.slider{background:#8b5cf6;}
input:checked+.slider:before{transform:translateX(24px);}


.nav-btn {
    display: inline-block;
    margin-top: 16px;
    text-decoration: none;
    background: #8e44ad;
    color: #fff;
    padding: 10px 18px;
    border-radius: 6px;
    font-size: 0.95rem;
}
.nav-btn:hover {
    opacity: 0.9;
}


/* Loan result text (amount in words) */
.result-card small {
    display: block;
    margin-top: 6px;
    font-size: 0.85rem;
    opacity: 0.8;
}




.nav-btn {
    display: inline-block;
    margin: 20px auto;
    padding: 12px 26px;
    background: linear-gradient(135deg, #6a11cb, #2575fc);
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 30px;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}

.nav-btn:hover {
    transform: translateY(-3px) scale(1.03);
    box-shadow: 0 12px 24px rgba(0,0,0,0.3);
}


/* ===== Floating Navigation Button ===== */
.nav-btn {
    position: fixed;
    right: 20px;
    bottom: 55px;
    z-index: 999;
    padding: 14px 28px;
    background: linear-gradient(135deg, #6a11cb, #2575fc);
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 50px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(0,0,0,0.25);
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

/* Hover animation */
.nav-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(0,0,0,0.35);
}

/* Animated arrow */
.nav-btn .arrow {
    display: inline-block;
    transition: transform 0.3s ease;
}

.nav-btn:hover .arrow {
    transform: translateX(6px);
}

/* ===== Mobile Bottom Button ===== */
@media (max-width: 768px) {
    .nav-btn {
        left: 50%;
        right: auto;
        bottom: 16px;
        transform: translateX(-50%);
        width: 90%;
        justify-content: center;
        border-radius: 14px;
        padding: 14px;
        font-size: 1.05rem;
    }
}

/* ===== Floating about Button ===== */
.about-btn {
    position: fixed;
    right: 24px;
    bottom: 20px;
    z-index: 999;
    padding: 14px 28px;
    background: linear-gradient(135deg, #6a11cb, #2575fc);
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 50px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(0,0,0,0.25);
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

/* Hover animation */
.nav-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(0,0,0,0.35);
}

/* Animated arrow */
.nav-btn .arrow {
    display: inline-block;
    transition: transform 0.3s ease;
}

.nav-btn:hover .arrow {
    transform: translateX(6px);
}

/* ===== Mobile Bottom Button ===== */
@media (max-width: 768px) {
    .nav-btn {
        left: 50%;
        right: auto;
        bottom: 16px;
        transform: translateX(-50%);
        width: 90%;
        justify-content: center;
        border-radius: 14px;
        padding: 14px;
        font-size: 1.05rem;
    }
}
