/* SMKNUM Finance Mobile UI v5 */
:root{
    --fm-bg:#f8fafc;
    --fm-card:#ffffff;
    --fm-border:#e2e8f0;
    --fm-text:#0f172a;
    --fm-muted:#64748b;
    --fm-primary:#0b57d0;
    --fm-primary-dark:#1e3a8a;
    --fm-success:#059669;
    --fm-radius:20px;
    --fm-shadow:0 4px 16px rgba(15,23,42,.05);
}
html,body{width:100%;max-width:100%;overflow-x:hidden}
body.finance-mobile-ready{min-height:100vh;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.finance-mobile-ready *,body.finance-mobile-ready *::before,body.finance-mobile-ready *::after{box-sizing:border-box}
body.finance-mobile-ready main,
body.finance-mobile-ready header,
body.finance-mobile-ready section,
body.finance-mobile-ready article,
body.finance-mobile-ready aside,
body.finance-mobile-ready form,
body.finance-mobile-ready div{min-width:0}
body.finance-mobile-ready img,
body.finance-mobile-ready video,
body.finance-mobile-ready canvas,
body.finance-mobile-ready svg{max-width:100%;height:auto}
body.finance-mobile-ready input,
body.finance-mobile-ready select,
body.finance-mobile-ready textarea,
body.finance-mobile-ready button{max-width:100%;font:inherit}
body.finance-mobile-ready a,
body.finance-mobile-ready button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.finance-mobile-ready .finance-page-title{overflow-wrap:anywhere}
body.finance-mobile-ready .finance-scroll-hint{display:none}
body.finance-mobile-ready .finance-responsive-table td{overflow-wrap:anywhere;word-break:break-word}

@media (max-width:767px){
    body.finance-mobile-ready{padding-bottom:max(12px,env(safe-area-inset-bottom));background-attachment:fixed}
    body.finance-mobile-ready main{width:100%!important;max-width:100%!important;padding-left:.75rem!important;padding-right:.75rem!important;padding-top:1rem!important}
    body.finance-mobile-ready header>div{width:100%!important;max-width:100%!important;padding-left:.8rem!important;padding-right:.8rem!important;flex-wrap:wrap!important}
    body.finance-mobile-ready header h1{font-size:1rem!important;line-height:1.3!important;overflow-wrap:anywhere}
    body.finance-mobile-ready header p{font-size:.68rem!important;line-height:1.35!important;overflow-wrap:anywhere}
    body.finance-mobile-ready header img{flex:0 0 auto}
    body.finance-mobile-ready header .flex{min-width:0}
    body.finance-mobile-ready header .flex.gap-2,
    body.finance-mobile-ready header .flex.gap-3{flex-wrap:wrap}

    body.finance-mobile-ready input:not([type="checkbox"]):not([type="radio"]),
    body.finance-mobile-ready select,
    body.finance-mobile-ready textarea{width:100%!important;min-width:0!important;min-height:46px!important;border-radius:14px!important;font-size:16px!important}
    body.finance-mobile-ready textarea{min-height:96px!important;resize:vertical}
    body.finance-mobile-ready input[type="file"]{font-size:.78rem!important;padding:.6rem!important}
    body.finance-mobile-ready button,
    body.finance-mobile-ready a[class*="rounded"]{min-height:44px}
    body.finance-mobile-ready button{white-space:normal;line-height:1.25}

    body.finance-mobile-ready .card,
    body.finance-mobile-ready .glass,
    body.finance-mobile-ready section[class*="rounded-3xl"],
    body.finance-mobile-ready article[class*="rounded-3xl"],
    body.finance-mobile-ready form[class*="rounded-3xl"]{border-radius:20px!important}

    body.finance-mobile-ready .grid{min-width:0}
    body.finance-mobile-ready .grid.grid-cols-2{gap:.65rem!important}
    body.finance-mobile-ready [class*="xl:grid-cols-"],
    body.finance-mobile-ready [class*="lg:grid-cols-"]{min-width:0}
    body.finance-mobile-ready .overflow-x-auto{overflow-x:visible!important;max-width:100%!important}

    body.finance-mobile-ready table.finance-responsive-table{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        border-collapse:separate!important;
        border-spacing:0!important;
    }
    body.finance-mobile-ready table.finance-responsive-table thead{display:none!important}
    body.finance-mobile-ready table.finance-responsive-table tbody{display:block!important;width:100%!important;padding:.35rem .5rem .75rem}
    body.finance-mobile-ready table.finance-responsive-table tr{
        display:block!important;
        width:100%!important;
        margin:.75rem 0!important;
        overflow:hidden!important;
        border:1px solid var(--fm-border)!important;
        border-radius:17px!important;
        background:#fff!important;
        box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
    }
    body.finance-mobile-ready table.finance-responsive-table td{
        display:grid!important;
        grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;
        align-items:start!important;
        gap:.65rem!important;
        width:100%!important;
        min-width:0!important;
        padding:.7rem .8rem!important;
        border:0!important;
        border-bottom:1px dashed #e2e8f0!important;
        text-align:left!important;
        white-space:normal!important;
        font-size:.78rem!important;
    }
    body.finance-mobile-ready table.finance-responsive-table td:last-child{border-bottom:0!important}
    body.finance-mobile-ready table.finance-responsive-table td::before{
        content:attr(data-label);
        color:var(--fm-muted);
        font-size:.63rem;
        line-height:1.05rem;
        font-weight:500;
        text-transform:uppercase;
        letter-spacing:.045em;
    }
    body.finance-mobile-ready table.finance-responsive-table td[colspan]{display:block!important;text-align:center!important;padding:1.4rem!important}
    body.finance-mobile-ready table.finance-responsive-table td[colspan]::before{display:none!important}
    body.finance-mobile-ready table.finance-responsive-table td .flex{justify-content:flex-start!important;flex-wrap:wrap!important}
    body.finance-mobile-ready table.finance-responsive-table td.text-center,
    body.finance-mobile-ready table.finance-responsive-table td.text-right{text-align:left!important}

    body.finance-mobile-ready .finance-mobile-actions{display:flex!important;flex-wrap:wrap!important;gap:.55rem!important;width:100%!important}
    body.finance-mobile-ready .finance-mobile-actions>*{flex:1 1 125px!important;display:flex;align-items:center;justify-content:center;text-align:center}

    body.finance-mobile-ready .no-print{width:100%!important;max-width:100%!important;padding-left:.65rem!important;padding-right:.65rem!important;justify-content:stretch!important}
    body.finance-mobile-ready .no-print>form{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:.5rem!important}
    body.finance-mobile-ready .no-print>form select,
    body.finance-mobile-ready .no-print>form input,
    body.finance-mobile-ready .no-print>form button{width:100%!important}
    body.finance-mobile-ready .no-print>a,
    body.finance-mobile-ready .no-print>button{flex:1 1 130px!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important}

    body.finance-mobile-ready .sheet{
        width:calc(100% - 12px)!important;
        max-width:100%!important;
        margin:6px auto!important;
        padding:14px!important;
        box-shadow:none!important;
        border-radius:14px!important;
    }
    body.finance-mobile-ready .sheet header>.flex{flex-direction:column!important;text-align:center!important;gap:.5rem!important}
    body.finance-mobile-ready .sheet header img{width:72px!important;height:72px!important;margin:auto!important}
    body.finance-mobile-ready .sheet header [class*="text-[38px]"]{font-size:1.23rem!important;line-height:1.25!important}
    body.finance-mobile-ready .sheet header [class*="text-[20px]"]{font-size:.82rem!important;line-height:1.25!important}
    body.finance-mobile-ready .sheet header [class*="text-[18px]"]{font-size:.75rem!important;line-height:1.3!important}
    body.finance-mobile-ready .sheet header [class*="text-[15px]"],
    body.finance-mobile-ready .sheet header [class*="text-[14px]"]{font-size:.67rem!important;line-height:1.35!important}
    body.finance-mobile-ready .sheet section[class*="grid-cols-3"]{grid-template-columns:1fr!important;gap:1.5rem!important}
    body.finance-mobile-ready .sheet section[class*="grid-cols-["]{grid-template-columns:105px minmax(0,1fr)!important;font-size:.78rem!important}
    body.finance-mobile-ready .sheet h1,body.finance-mobile-ready .sheet h2{overflow-wrap:anywhere}

    body.finance-mobile-ready .finance-desktop-only{display:none!important}
    body.finance-mobile-ready .finance-mobile-only{display:block!important}
}

@media (max-width:390px){
    body.finance-mobile-ready main{padding-left:.55rem!important;padding-right:.55rem!important}
    body.finance-mobile-ready table.finance-responsive-table td{grid-template-columns:82px minmax(0,1fr)!important;padding:.62rem .68rem!important}
    body.finance-mobile-ready .sheet{padding:10px!important}
    body.finance-mobile-ready .sheet header [class*="text-[38px]"]{font-size:1.05rem!important}
}

@media print{
    body.finance-mobile-ready{overflow:visible!important;background:#fff!important}
    body.finance-mobile-ready table.finance-responsive-table{display:table!important;width:100%!important;border-collapse:collapse!important}
    body.finance-mobile-ready table.finance-responsive-table thead{display:table-header-group!important}
    body.finance-mobile-ready table.finance-responsive-table tbody{display:table-row-group!important;padding:0!important}
    body.finance-mobile-ready table.finance-responsive-table tr{display:table-row!important;margin:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
    body.finance-mobile-ready table.finance-responsive-table td{display:table-cell!important;width:auto!important;padding:.5rem!important;border:1px solid #cbd5e1!important;text-align:inherit!important;font-size:inherit!important}
    body.finance-mobile-ready table.finance-responsive-table td::before{display:none!important}
    body.finance-mobile-ready .sheet{width:100%!important;max-width:none!important;margin:0!important;padding:24px!important;border-radius:0!important}
    body.finance-mobile-ready .sheet header>.flex{flex-direction:row!important}
    body.finance-mobile-ready .sheet header img{width:96px!important;height:96px!important}
    body.finance-mobile-ready .sheet header [class*="text-[38px]"]{font-size:38px!important}
    body.finance-mobile-ready .sheet header [class*="text-[20px]"]{font-size:20px!important}
    body.finance-mobile-ready .sheet header [class*="text-[18px]"]{font-size:18px!important}
    body.finance-mobile-ready .sheet header [class*="text-[15px]"]{font-size:15px!important}
    body.finance-mobile-ready .sheet header [class*="text-[14px]"]{font-size:14px!important}
    body.finance-mobile-ready .sheet section[class*="grid-cols-3"]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Penyempurnaan mobile V6: tampilan sederhana tanpa geser horizontal */
html,body{max-width:100%;overflow-x:hidden}
body.finance-mobile-ready summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.finance-mobile-ready nav{max-width:100vw}
body.finance-mobile-ready nav>div{-webkit-overflow-scrolling:touch;scrollbar-width:none}
body.finance-mobile-ready nav>div::-webkit-scrollbar{display:none}
body.finance-mobile-ready .bill-item{min-width:0}
body.finance-mobile-ready .bill-item input,
body.finance-mobile-ready .bill-item select,
body.finance-mobile-ready .bill-item textarea{min-width:0}

@media (max-width:767px){
    body.finance-mobile-ready main{padding-bottom:1.25rem!important}
    body.finance-mobile-ready .card{box-shadow:0 5px 18px rgba(15,23,42,.05)!important}
    body.finance-mobile-ready details>summary{min-height:54px}
    body.finance-mobile-ready .grid.grid-cols-3{gap:.45rem!important}
    body.finance-mobile-ready .grid.grid-cols-3>article{min-width:0;padding:.7rem!important}
    body.finance-mobile-ready .grid.grid-cols-3>article p{overflow-wrap:anywhere}
    body.finance-mobile-ready a,body.finance-mobile-ready button{min-width:0}
    body.finance-mobile-ready .max-h-\[620px\]{max-height:none!important}
}

/* Font menu tidak ditebalkan */
nav a, .nav a, .site-nav a, .sidebar-nav a, .mobile-nav a, .nav-link, .side-link { font-weight: 400 !important; }

/* Clean Blue-Green & Calm Typography */
.font-black, .font-extrabold { font-weight: 600 !important; }
.font-bold { font-weight: 500 !important; }
