.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:#f1f7f4;border:1px solid #dce9e4;border-radius:11px}.map-toolbar strong,.map-toolbar small{display:block}.map-toolbar small{margin-top:3px}.map-status{padding:9px 12px;border-radius:9px;background:#e8f7f1;color:#087052;font-size:11px}.map-status.error{background:#fff4df;color:#956111}.map-loading,.map-error{height:100%;display:grid;place-items:center;color:#6c7c80;background:#eef3f1}.customer-map-marker-wrap{background:transparent!important;border:0!important}.customer-map-marker{position:relative;display:block;width:30px;height:30px;background:#dc3545;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 4px 12px rgba(132,20,31,.4)}.customer-map-marker i{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;left:8px;top:8px}.selfie-widget{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0}.selfie-upload-box{width:100%}.camera-panel{position:absolute;inset:0;z-index:5;padding:10px;background:#10252a;border-radius:13px;box-shadow:0 15px 35px rgba(0,0,0,.3)}.camera-panel[hidden]{display:none!important}.camera-panel video{display:block;width:100%;height:calc(100% - 42px);min-height:155px;object-fit:cover;border-radius:9px;background:#000}.camera-actions{display:flex;gap:7px;justify-content:center;margin-top:8px}.staff-pin-panel{background:#f4f8f6;border:1px solid #dfe7e5;border-radius:12px;padding:15px}.pin-view,.staff-pin-panel form{display:flex;gap:8px;align-items:center}.pin-view input,.staff-pin-panel form input{height:40px;border:1px solid #d5e0dd;border-radius:9px;padding:8px 11px;background:#fff;max-width:180px;font-weight:800;letter-spacing:.18em}.staff-pin-panel form{margin-top:10px}.staff-pin-panel small{margin-top:10px}.pin-message{font-size:11px;margin-top:8px}.pin-message.success{color:#087052}.pin-message.error{color:#b33535}
@media(max-width:680px){.map-toolbar{align-items:flex-start;flex-direction:column}.map-toolbar .btn{width:100%}.selfie-widget{grid-column:span 2}.staff-pin-panel form,.pin-view{align-items:stretch;flex-direction:column}.pin-view input,.staff-pin-panel form input{max-width:none;width:100%}}
.profile-edit-form{padding:0;max-width:1100px}.page-heading-row{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.page-heading-row h2{margin:4px 0}.page-heading-row p{margin:0;color:var(--muted)}.request-access-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:18px;align-items:start;margin-bottom:18px}.snapshot-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.snapshot-summary>div{background:var(--soft);border-radius:10px;padding:12px}.snapshot-summary span,.access-request-head>div>span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.snapshot-summary strong,.access-request-head strong{display:block;margin-top:4px;font-size:12px}.process-card ol{list-style:none;padding:0;margin:15px 0 0;counter-reset:flow}.process-card li{position:relative;padding:4px 0 18px 42px;counter-increment:flow}.process-card li:before{content:counter(flow);position:absolute;left:0;top:0;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--primary);font-weight:800;font-size:11px}.process-card li:not(:last-child):after{content:"";position:absolute;left:14px;top:31px;width:1px;height:18px;background:var(--line)}.process-card small{font-size:9px}.access-request-list{display:flex;flex-direction:column;gap:14px}.access-request-card{padding:0;overflow:hidden}.access-request-head{display:grid;grid-template-columns:minmax(210px,1.5fr) 1fr 1fr 1fr auto;gap:18px;align-items:center;padding:18px 20px}.access-request-head small{font-size:9px}.request-details{border-top:1px solid var(--line);background:#fbfdfc}.request-details summary{cursor:pointer;padding:13px 20px;font-size:11px;font-weight:800;color:var(--primary)}.request-details>div,.request-details>.alert{margin-left:20px;margin-right:20px}.snapshot-detail-grid{grid-template-columns:repeat(3,1fr);margin:4px 20px 16px!important}.snapshot-detail-grid>div:nth-child(10){grid-column:span 3}.document-placeholder{height:74px;display:grid!important;place-items:center;font-size:26px!important;background:#eef3f1;padding:0!important}.document-grid a>span:last-child small{font-size:8px}.access-review-actions{margin:0 20px 20px!important;display:grid;grid-template-columns:1fr 1fr;gap:12px}.access-review-actions form{align-items:end}.pending-access-card{margin-bottom:18px}.badge-used{background:#eee9fc;color:#6049af}
@media(max-width:980px){.request-access-grid{grid-template-columns:1fr}.access-request-head{grid-template-columns:1fr 1fr}.access-request-head .person-cell{grid-column:span 2}.snapshot-detail-grid{grid-template-columns:1fr 1fr}.snapshot-detail-grid>div:nth-child(10){grid-column:span 2}}
@media(max-width:680px){.snapshot-summary,.access-review-actions{grid-template-columns:1fr}.access-request-head{grid-template-columns:1fr}.access-request-head .person-cell{grid-column:auto}.snapshot-detail-grid{grid-template-columns:1fr}.snapshot-detail-grid>div:nth-child(10){grid-column:auto}}
.staff-access-create{margin-bottom:18px;padding:0}.staff-access-create>summary{cursor:pointer;padding:17px 20px;font-weight:800;color:var(--primary)}.staff-access-create>form{padding:0 20px 20px;align-items:end}.staff-access-submit{display:flex;align-items:end}.staff-access-submit .btn{width:100%}.badge-draft{background:#e7efff;color:#2d63bd}
.payment-entry-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;list-style:none;border-radius:var(--radius)}.payment-entry-panel>summary::-webkit-details-marker{display:none}.payment-entry-panel>summary:after{content:'Buka form ＋';padding:6px 10px;border-radius:8px;background:var(--mint);color:var(--primary);font-size:9px;white-space:nowrap}.payment-entry-panel[open]>summary{border-bottom:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0}.payment-entry-panel[open]>summary:after{content:'Tutup form −'}.payment-entry-heading{padding:20px 20px 0}.payment-entry-heading h3{margin:4px 0;font-size:18px}.payment-entry-heading p{margin:0;color:var(--muted);font-size:11px}.payment-entry-panel>.payment-entry-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:20px;align-items:end}.payment-entry-form .payment-field-wide{grid-column:1/-1}.payment-entry-form .payment-proof-field{grid-column:span 2}.payment-entry-form .payment-notes-field{grid-column:span 3}.payment-entry-form .payment-submit-field{display:flex;align-items:flex-end}.payment-entry-form .payment-submit-field .btn{width:100%}.payment-history-card{margin-bottom:18px}
@media(max-width:1000px){.payment-entry-panel>.payment-entry-form{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-entry-form .payment-proof-field,.payment-entry-form .payment-notes-field{grid-column:1/-1}}
@media(max-width:680px){.payment-entry-panel>.payment-entry-form{grid-template-columns:1fr;padding:16px}.payment-entry-heading{padding:16px 16px 0}.payment-entry-form .payment-proof-field,.payment-entry-form .payment-notes-field,.payment-entry-form .payment-field-wide{grid-column:auto}.payment-entry-panel>summary:after{font-size:8px}}
.quick-payment-modal{width:min(760px,calc(100vw - 24px));max-width:760px}.quick-payment-form{display:grid;gap:16px}.quick-payment-form [data-payment-loan-display]{background:var(--surface-soft);color:var(--text);font-weight:700;cursor:default}.quick-payment-values{margin:0}.quick-payment-modal .modal-body{max-height:calc(100vh - 120px);overflow:auto}.loan-note-cell{min-width:210px;vertical-align:top}.loan-note-editor{display:grid;gap:5px}.loan-note-editor textarea{width:100%;min-width:190px;min-height:58px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;resize:vertical;font:inherit;font-size:11px;line-height:1.4;background:#fff;color:var(--text)}.loan-note-editor textarea:focus{outline:2px solid rgba(15,137,111,.18);border-color:var(--primary)}.loan-note-editor small{color:var(--muted);font-size:9px}.loan-note-editor small.is-saving{color:#9a6b00}.loan-note-editor small.is-saved{color:var(--primary)}.loan-note-editor small.is-error{color:var(--danger)}
@media(max-width:680px){.quick-payment-modal{width:calc(100vw - 12px)}.quick-payment-form .form-grid.two{grid-template-columns:1fr}.loan-note-cell{min-width:175px}.loan-note-editor textarea{min-width:155px}}
.pin-reveal-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}
.upload-box{min-height:245px;justify-content:flex-end;padding:12px}
.upload-preview{width:100%;height:175px;border-radius:10px;margin-bottom:11px;background:#e9f3ef}
.upload-preview img{width:100%;height:100%;object-fit:contain;background:#fff}
.upload-box b,.upload-box small{position:relative;z-index:1}
@media(max-width:680px){.upload-box{min-height:205px}.upload-preview{height:135px}}
.profile-photo-upload{min-height:220px}.profile-photo{object-fit:cover}.profile-chip img.avatar{padding:0;border:0}
.customer-detail-hero{display:flex;align-items:center;gap:16px;padding:14px;margin-bottom:18px;border:1px solid var(--line);border-radius:13px;background:var(--soft)}.customer-detail-hero img,.customer-detail-avatar{width:92px;height:92px;border-radius:13px;object-fit:cover;flex:none}.customer-detail-hero>div>span{display:block;color:var(--muted);font-size:9px;letter-spacing:.08em}.customer-detail-hero>div>strong{display:block;font-size:18px;margin-top:4px}.customer-detail-hero small{font-size:10px}
.loan-customer-hero>div{flex:1;min-width:0}.loan-biodata-button{margin-left:auto;flex:none}.loan-biodata-modal{width:min(880px,calc(100% - 30px))}.loan-biodata-address{white-space:pre-line;overflow-wrap:anywhere}.loan-biodata-map{overflow-wrap:anywhere}.loan-marketing-value small{font-weight:600}
.customer-detail-map{width:100%;height:300px;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--soft);z-index:1}.customer-detail-map-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:9px 12px;border-radius:9px;background:#e8f7f1;color:#087052;font-size:10px}.customer-detail-map-meta a{font-weight:800;text-decoration:underline}.customer-detail-map-fallback{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:25px;text-align:center;color:var(--muted)}
.app-shell{display:flex;flex-direction:column}.content{width:100%;flex:1;margin:0 auto}.app-dashboard-footer{width:calc(100% - 68px);max-width:1612px;margin:0 auto;padding:18px 0 22px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--muted);font-size:10px;font-weight:600}.app-dashboard-footer span:last-child{white-space:nowrap}.app-dashboard-footer i{margin:0 5px;color:#a9b5b2;font-style:normal}
.employee-edit-panel{margin-top:22px;border:1px solid var(--line);border-radius:13px;background:#fbfdfc;overflow:hidden}.employee-edit-panel>summary{list-style:none;padding:14px 16px;color:var(--primary);font-weight:800;cursor:pointer}.employee-edit-panel>summary::-webkit-details-marker{display:none}.employee-edit-panel>summary:before{content:'✎';display:inline-block;margin-right:8px}.employee-edit-panel[open]>summary{border-bottom:1px solid var(--line);background:var(--soft)}.employee-edit-panel>.form-stack{padding:18px;margin:0}.employee-edit-panel .btn[type=submit]{align-self:flex-end}
.feature-strip p{white-space:pre-line}
.table-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.loan-filter-form{display:flex;align-items:center;gap:8px}.loan-filter-form>select{min-width:210px;height:38px;padding:6px 34px 6px 10px;border:1px solid var(--line);border-radius:9px;background-color:#fff;font-size:11px}.loan-filter-form .choices{width:245px;margin:0}.choices__inner{min-height:38px!important;padding:5px 10px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:#fff!important;font-size:11px!important}.choices__list--dropdown,.choices__list[aria-expanded]{z-index:20!important}.table-export-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.table-modal-tools{display:flex;justify-content:flex-end;margin:8px 0}.sortable-column{cursor:pointer;user-select:none}.sortable-column:hover{color:var(--primary)}.sortable-column[aria-sort="ascending"]:after{content:" ▲";color:var(--primary)}.sortable-column[aria-sort="descending"]:after{content:" ▼";color:var(--primary)}.row-number{width:48px;color:var(--muted);font-weight:700}.evidence-preview{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.evidence-preview[hidden]{display:none}.evidence-preview img{width:74px;height:58px;object-fit:contain;border-radius:7px;background:#fff}.evidence-preview span{font-size:10px;overflow-wrap:anywhere}.fixed-payment-total{font-weight:800;color:var(--primary)!important;background:#edf8f4!important}
.btn-whatsapp{border-color:#20a968!important;background:#20a968!important;color:#fff!important}.btn-whatsapp:hover{border-color:#188954!important;background:#188954!important;color:#fff!important}.row-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}.due-label{display:block;margin-top:4px;color:#9b6a13!important;font-weight:700}.due-label.urgent{color:#c43232!important}.whatsapp-dashboard-card{margin-bottom:18px}.whatsapp-info{border-left:3px solid #20a968}.whatsapp-modal .modal-body{min-width:min(560px,calc(100vw - 48px))}
.draft-notice{display:flex;align-items:center;justify-content:space-between;gap:18px}.draft-notice>div:first-child{flex:1}.draft-notice strong,.draft-notice span{display:block}.draft-notice span{font-size:11px;margin-top:4px;line-height:1.55}.draft-actions,.draft-edit-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.draft-actions form,.draft-edit-actions form{margin:0}.draft-edit-actions{justify-content:space-between;padding:0 25px 25px}.draft-edit-notice{margin:0}
.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--line);background:#fbfdfc;color:var(--muted);font-size:10px}.table-pagination>div{display:flex;align-items:center;gap:10px}.table-pagination strong{min-width:82px;text-align:center;color:var(--ink);font-size:10px}.access-request-modal{width:min(1050px,calc(100% - 30px))}.access-document-grid img{object-fit:contain;background:#fff}.access-review-actions{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.access-review-actions form{min-width:210px}
@media(max-width:680px){.table-header-tools{width:100%;justify-content:stretch}.loan-filter-form{width:100%;flex-direction:column;align-items:stretch}.loan-filter-form .choices,.loan-filter-form>select{width:100%;min-width:0}.table-export-actions{width:100%}.table-export-actions .btn{flex:1}.customer-detail-hero img,.customer-detail-avatar{width:72px;height:72px}.loan-customer-hero{align-items:flex-start;flex-wrap:wrap}.loan-biodata-button{width:100%;margin-left:0}.customer-detail-map{height:245px}.customer-detail-map-meta{align-items:flex-start;flex-direction:column}.app-dashboard-footer{width:calc(100% - 24px);padding:15px 0 18px;gap:10px;font-size:9px}.whatsapp-modal .modal-body{min-width:0}.draft-notice{align-items:stretch;flex-direction:column}.draft-actions,.draft-edit-actions{align-items:stretch;flex-direction:column}.draft-actions .btn,.draft-actions form,.draft-actions form .btn,.draft-edit-actions .btn,.draft-edit-actions form,.draft-edit-actions form .btn{width:100%}.table-pagination{align-items:stretch;flex-direction:column}.table-pagination>div{justify-content:space-between}.access-review-actions form{min-width:0}}

/* Tema gradasi biru untuk autentikasi, registrasi, dan navigasi aplikasi */
.auth-aside,.customer-auth .auth-aside{background:linear-gradient(145deg,#061944 0%,#07569b 58%,#0a8ec5 100%)}
.registration-intro{background:linear-gradient(155deg,#061944 0%,#07569b 62%,#0a8ec5 100%)}
.sidebar{background:linear-gradient(180deg,#061735 0%,#073b73 52%,#07639f 100%)}
.side-nav a{color:#d9edff}
.side-nav a:hover,.side-nav a.active{background:linear-gradient(110deg,rgba(47,168,255,.28),rgba(94,211,255,.13));color:#fff}
.side-nav a.active{box-shadow:inset 3px 0 #63d4ff}
.nav-label,.profile-chip span,.sidebar-brand-caption{color:#8fc9ee}
.auth-card .btn-primary,.registration-form .btn-primary{border-color:#087cc5;background:linear-gradient(135deg,#07569b,#0b94cf);box-shadow:0 10px 24px rgba(7,86,155,.24)}
.auth-card .btn-primary:hover,.registration-form .btn-primary:hover{border-color:#0a8ec5;background:linear-gradient(135deg,#064984,#087fba)}

/* Identitas visual Call Multi Finance */
.brand-logo{width:200px;height:60px;display:block;flex:none;object-fit:contain;padding:0;border:0;border-radius:0;background:transparent;color:transparent;letter-spacing:normal}
.sidebar-brand .brand-logo{width:196px;height:58px;padding:5px 9px;border-radius:11px;background:#fff}
.contract-logo .brand-logo{width:230px;height:76px}
.cmf-hero{position:relative;max-width:1320px;margin:0 auto;border-radius:30px;overflow:hidden;background:#063862;box-shadow:var(--shadow)}
.cmf-hero-image{display:block;width:100%;height:auto;aspect-ratio:2048/770;object-fit:cover}
.cmf-hero-overlay{position:absolute;inset:0;pointer-events:none}
.cmf-hero-actions{position:absolute;left:7.3%;bottom:5.5%;display:flex;align-items:center;gap:12px;pointer-events:auto}
.cmf-register-btn{border-color:#f4bf39;background:linear-gradient(135deg,#ffd968,#eeb42d);color:#082d50;box-shadow:0 10px 24px rgba(4,24,45,.3)}
.cmf-register-btn:hover,.cmf-register-btn:focus{border-color:#ffe18a;background:#ffe18a;color:#082d50}
.cmf-staff-btn {
    background: rgba(2, 37, 70, 0.05);
    color: #064984;

    box-shadow:
        0 10px 24px rgba(4, 24, 45, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.20);

    backdrop-filter: blur(12px) saturate(150%);
    -webkit-backdrop-filter: blur(12px) saturate(150%);
}.cmf-cmf-staff-btn-btn:hover {
    background: rgba(2, 37, 70, 0.45);
    border-color: rgba(255, 255, 255, 0.70);
    box-shadow:
        0 12px 28px rgba(4, 24, 45, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.30);
}
.cmf-login-btn {
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: rgba(2, 37, 70, 0.70);
    color: #fff;

    box-shadow:
        0 10px 24px rgba(4, 24, 45, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.20);

    backdrop-filter: blur(12px) saturate(150%);
    -webkit-backdrop-filter: blur(12px) saturate(150%);
}
.cmf-login-btn:hover {
    background: rgba(2, 37, 70, 0.45);
    border-color: rgba(255, 255, 255, 0.70);
    box-shadow:
        0 12px 28px rgba(4, 24, 45, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.30);
}
@media(max-width:1280px){.cmf-hero{margin:0 18px}}
@media(max-width:680px){.brand-logo{width:170px;height:52px}.sidebar-brand .brand-logo{width:175px;height:54px}.cmf-hero{margin:0 10px;border-radius:20px}.cmf-hero-image{aspect-ratio:auto;object-fit:contain}.cmf-hero-overlay{position:static;padding:14px;background:#052f57}.cmf-hero-actions{position:static;display:grid;grid-template-columns:1fr;gap:9px}.cmf-hero-actions .btn{width:100%;padding:12px 14px;font-size:13px}}

/* Pengaturan Komponen Web */
.sidebar-brand .brand{width:100%;flex-direction:column;align-items:center;gap:3px}
.sidebar-brand-caption{max-width:196px;color:#a9c3bd;font-size:9px;font-weight:700;line-height:1.35;text-align:center;letter-spacing:.05em}
.cmf-custom-heading{position:absolute;z-index:2;top:7%;left:7.3%;max-width:45%;margin:0;color:#fff;font-size:clamp(24px,3.2vw,48px);line-height:1.08;text-shadow:0 3px 14px rgba(0,20,40,.65)}
.cmf-custom-subheading{position:absolute;z-index:2;top:27%;left:7.3%;max-width:42%;margin:0;color:#eaf6ff;font-size:clamp(12px,1.2vw,17px);line-height:1.55;text-shadow:0 2px 10px rgba(0,20,40,.75)}
.component-settings-form{display:flex;flex-direction:column;gap:18px;padding-bottom:82px}
.component-card{padding:0;overflow:hidden}
.branding-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px}
.branding-upload-box{min-height:225px;background:#f8fbfa}
.branding-upload-box .upload-preview{height:140px;background:#fff}
.branding-upload-box .sidebar-preview{background:#10292e}
.branding-banner-upload{grid-column:span 2;min-height:340px}
.branding-banner-upload .upload-preview{height:255px}
.branding-policy-upload{grid-column:span 2;min-height:440px}.branding-policy-upload .upload-preview{width:min(100%,340px);height:350px;background:#fff}.branding-policy-upload .upload-preview img{object-fit:contain}
.component-form-grid{padding:22px}
.component-form-grid label,.feature-settings-grid label,.component-footer-field label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:800}
.component-form-grid input,.component-form-grid textarea,.feature-settings-grid input,.feature-settings-grid textarea,.component-footer-field input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfdfc;padding:11px 12px;color:var(--ink);outline:none}
.component-form-grid label>small{font-size:9px;font-weight:500}
.feature-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:22px 22px 12px}
.feature-settings-grid fieldset{display:flex;flex-direction:column;gap:13px;margin:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fbfa}
.feature-settings-grid legend{float:none;width:auto;margin:0;color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.05em}
.component-footer-field{padding:0 22px 22px}
.component-save-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid #cddbd7;border-radius:14px;background:#fff;box-shadow:0 12px 35px rgba(16,37,42,.12)}
.component-save-bar span{color:var(--muted);font-size:11px}
.operational-history-column{min-width:0}
.operational-report-filter .form-label{margin-bottom:6px;color:var(--muted);font-size:10px;font-weight:800}
.operational-report-filter .form-control,.operational-report-filter .form-select{min-height:42px;border-color:var(--line);background-color:#fbfdfc;color:var(--ink);font-size:12px}
.operational-report-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.local-searchable-select{position:relative;width:100%;font-weight:500}
.local-searchable-native{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;opacity:0!important;pointer-events:none}
.local-searchable-trigger{position:relative;width:100%;min-height:44px;padding:10px 38px 10px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfdfc;color:var(--ink);font-size:12px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.local-searchable-trigger:after{content:'⌄';position:absolute;right:13px;top:50%;transform:translateY(-55%);color:var(--muted);font-size:16px}
.local-searchable-trigger:hover,.local-searchable-trigger:focus{border-color:#5eaa94;box-shadow:0 0 0 3px rgba(13,118,93,.09);outline:0}
.local-searchable-trigger.is-placeholder{color:var(--muted)}
.local-searchable-trigger.is-invalid{border-color:var(--danger);box-shadow:0 0 0 3px rgba(214,66,66,.1)}
.local-searchable-panel{position:absolute;z-index:30;top:calc(100% + 5px);left:0;right:0;padding:8px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 16px 38px rgba(16,37,42,.18)}
.local-searchable-search{width:100%;height:40px!important;padding:9px 11px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:#fbfdfc!important;font-size:12px!important;box-shadow:none!important}
.local-searchable-search:focus{border-color:#5eaa94!important;box-shadow:0 0 0 3px rgba(13,118,93,.09)!important;outline:0}
.local-searchable-options{max-height:250px;margin-top:7px;overflow:auto}
.local-searchable-option{display:block;width:100%;padding:9px 10px;border:0;border-radius:7px;background:#fff;color:var(--ink);font-size:11px;text-align:left}
.local-searchable-option:hover,.local-searchable-option:focus,.local-searchable-option[aria-selected=true]{background:#e7f5f0;color:var(--primary);outline:0}
.local-searchable-empty{padding:15px 10px;color:var(--muted);font-size:11px;text-align:center}
.local-searchable-select.is-multiple .local-searchable-option{display:flex;align-items:center;gap:9px}
.local-searchable-check{width:18px;height:18px;display:inline-grid;place-items:center;flex:none;border:1px solid #b9c9c5;border-radius:5px;background:#fff;color:#fff;font-size:11px;font-weight:800}
.local-searchable-option.is-selected .local-searchable-check{border-color:var(--primary);background:var(--primary)}
.local-searchable-clear{width:100%;margin-top:7px;padding:8px 10px;border:0;border-radius:7px;background:var(--soft);color:var(--primary);font-size:10px;font-weight:800;text-align:left}
.local-searchable-clear:hover,.local-searchable-clear:focus{background:#e7f5f0;outline:0}
.loan-filter-form .local-searchable-select{width:280px;max-width:100%}
@media(max-width:900px){.feature-settings-grid{grid-template-columns:1fr}.branding-banner-upload{min-height:280px}.branding-banner-upload .upload-preview{height:195px}}
@media(max-width:1100px){.operational-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.cmf-custom-heading,.cmf-custom-subheading{position:static;max-width:none;margin:0 0 10px;color:#fff;text-shadow:none}.cmf-custom-heading{font-size:24px}.cmf-custom-subheading{font-size:12px}.branding-upload-grid{grid-template-columns:1fr;padding:16px}.branding-banner-upload{grid-column:auto;min-height:230px}.branding-banner-upload .upload-preview{height:145px}.component-form-grid{padding:16px}.feature-settings-grid{padding:16px 16px 10px}.component-footer-field{padding:0 16px 16px}.component-save-bar{align-items:stretch;flex-direction:column}.component-save-bar .btn{width:100%}.operational-report-metrics{grid-template-columns:1fr}.loan-filter-form .local-searchable-select{width:100%}}

.customer-notification-card{padding:0;margin-bottom:18px;overflow:hidden}.customer-notification-list{display:grid}.customer-notification{display:flex;align-items:center;gap:13px;padding:15px 20px;border-top:1px solid var(--line);transition:.2s}.customer-notification:hover{background:#f8fbfa}.customer-notification:first-child{border-top:0}.customer-notification>div{flex:1}.customer-notification strong{font-size:12px}.customer-notification p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.customer-notification>b{color:var(--muted)}.notification-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e4f5ee;color:#087052;font-weight:800;flex:none}.notification-warning .notification-icon{background:#fff1d9;color:#a86608}.notification-danger .notification-icon{background:#ffe8e8;color:#cc3535}.customer-loan-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.payment-obligation-card{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:20px;padding:16px;margin-bottom:18px;overflow:hidden;border-left:5px solid #2d6cdf}.payment-obligation-card.is-warning{border-left-color:#e6a21a;background:linear-gradient(100deg,#fff,#fffaf0)}.payment-obligation-card.is-danger{border-left-color:#d83f3f;background:linear-gradient(100deg,#fff,#fff4f4)}.payment-obligation-thumbnail{width:150px;height:104px;padding:0;border:0;border-radius:12px;overflow:hidden;background:#edf3f7;cursor:pointer}.payment-obligation-thumbnail img{width:100%;height:100%;display:block;object-fit:cover;object-position:top}.payment-obligation-content h3{margin:4px 0 6px;font-size:18px}.payment-obligation-content p{margin:0 0 12px;color:var(--muted);font-size:11px;line-height:1.6}.payment-obligation-status{align-self:start;padding:7px 10px;border-radius:99px;background:#e8efff;color:#2d63bd;font-size:9px;font-weight:800;text-transform:uppercase;white-space:nowrap}.is-warning .payment-obligation-status{background:#fff0d5;color:#9a610a}.is-danger .payment-obligation-status{background:#ffe7e7;color:#bd3434}.payment-obligation-modal{width:min(760px,calc(100% - 30px))}.payment-obligation-full{display:block;width:100%;max-width:620px;height:auto;margin:0 auto;border-radius:13px;border:1px solid var(--line)}.payment-obligation-note{max-width:620px;margin:16px auto 0}.payment-obligation-note strong{display:inline}

@media(max-width:1050px){.customer-loan-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.customer-notification{align-items:flex-start;padding:14px}.customer-loan-metrics{grid-template-columns:1fr}.payment-obligation-card{grid-template-columns:92px minmax(0,1fr);gap:13px;padding:13px}.payment-obligation-thumbnail{width:92px;height:118px}.payment-obligation-status{position:absolute;top:10px;right:10px;max-width:calc(100% - 124px);overflow:hidden;text-overflow:ellipsis}.payment-obligation-content{padding-top:26px}.payment-obligation-content h3{font-size:15px}.payment-obligation-content .btn{width:100%}}

/* Input tanggal lokal DD/MM/YYYY dengan datepicker native */
.local-date-picker{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 44px;width:100%}
.local-date-picker>[data-date-display]{width:100%;padding-right:12px;border-radius:10px 0 0 10px}
.date-picker-button{display:grid;place-items:center;min-width:44px;border:1px solid var(--line);border-left:0;border-radius:0 10px 10px 0;background:#f5f8ff;color:#087cc5;font-size:17px;cursor:pointer}
.date-picker-button:hover,.date-picker-button:focus{background:#e6f2ff;color:#065990;outline:0}
.local-date-picker>[data-date-native]{position:absolute;right:0;bottom:0;width:1px!important;height:1px!important;padding:0!important;border:0!important;opacity:0;pointer-events:none}

/* Foto nasabah dan kalkulasi draft pinjaman */
.loan-customer-preview{display:flex;align-items:center;gap:15px;padding:13px 15px;border:1px solid #cfe0eb;border-radius:13px;background:linear-gradient(110deg,#f7fbff,#eef7ff)}
.loan-customer-preview[hidden]{display:none!important}
.loan-customer-photo,.loan-customer-photo img,.loan-customer-photo>span{width:82px;height:82px;flex:none;border-radius:12px}
.loan-customer-photo{overflow:hidden;background:#dcecff}
.loan-customer-photo img{display:block;object-fit:cover}
.loan-customer-photo>span{display:grid;place-items:center;color:#07569b;font-size:24px;font-weight:800}
.loan-customer-preview small,.loan-customer-preview strong,.loan-customer-preview p{display:block}
.loan-customer-preview small{color:#087cc5;font-size:9px;font-weight:800;letter-spacing:.09em}
.loan-customer-preview strong{margin-top:4px;font-size:14px}
.loan-customer-preview p{margin:4px 0 0;color:var(--muted);font-size:10px}
.loan-document-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.loan-approval-actions{align-items:flex-end}
.loan-approval-actions form:first-of-type{display:grid;grid-template-columns:minmax(180px,1fr) minmax(200px,1fr) minmax(170px,1fr) auto;gap:10px;align-items:end;width:100%;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.loan-approval-actions form:first-of-type label{min-width:0}

@media(max-width:760px){.loan-customer-preview{align-items:flex-start}.loan-customer-photo,.loan-customer-photo img,.loan-customer-photo>span{width:68px;height:68px}.loan-approval-actions form:first-of-type{grid-template-columns:1fr}.loan-approval-actions form:first-of-type .btn{width:100%}}

/* Level Sales */
.metrics-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.badge-sales{background:#e4f6f8;color:#087386}
@media(max-width:1000px){.metrics-three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.metrics-three{grid-template-columns:1fr}}

/* Filter periode grafik dashboard */
.portfolio-chart-tools{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.portfolio-chart-filter{display:flex;align-items:flex-end;gap:8px}
.portfolio-chart-filter label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:9px;font-weight:800}
.portfolio-chart-filter select{min-width:125px;height:36px;padding:7px 32px 7px 10px;border:1px solid var(--line);border-radius:9px;background:#fbfdfc;color:var(--ink);font-size:11px;outline:0}
.portfolio-chart-filter select:focus{border-color:#5eaa94;box-shadow:0 0 0 3px rgba(13,118,93,.09)}
@media(max-width:760px){.portfolio-chart-tools{width:100%;align-items:stretch}.portfolio-chart-filter{display:grid;grid-template-columns:1fr 1fr}.portfolio-chart-filter .btn{grid-column:span 2}.portfolio-chart-filter select{width:100%;min-width:0}.portfolio-chart-legend{justify-content:flex-start}}

/* Surat keterangan pelunasan */
.settlement-letter-heading{text-align:center;margin:28px 0 30px}
.settlement-letter-heading h2{margin:0;text-decoration:underline;text-underline-offset:5px}
.settlement-letter-heading p{margin:4px 0 0;font-size:12px}
.settlement-letter-data{margin:20px 0}
.settlement-letter-data th{width:190px}
.settlement-letter-statement{margin:22px 0;padding:14px 17px;border:1px solid #b8c1bf;background:#f7f9f8}
.settlement-letter-statement p{margin:0}
.settlement-letter-statement p+p{margin-top:9px}
.settlement-signatures{break-inside:avoid;page-break-inside:avoid}
.settlement-signatures>div>small:last-child{margin-top:7px;font-size:9px}
@media(max-width:680px){.settlement-letter-data th{width:135px}.settlement-letter-heading{margin:22px 0}.settlement-letter-statement{padding:12px}}
@media print{.settlement-letter-heading,.settlement-letter-data,.settlement-letter-statement{break-inside:avoid;page-break-inside:avoid}.settlement-letter-statement{background:#fff}}

/* Pembatalan transaksi aktif dengan jejak audit */
.badge-voided{background:#f1e9e9;color:#873b3b}
.badge-superadmin{background:#fff0bf;color:#725100}
.loan-review-note{display:block;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}
.voided-loan-notice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;padding:16px;border:1px solid #e8c9c9;border-radius:12px;background:#fff7f7}
.voided-loan-notice>strong,.voided-loan-notice>small{grid-column:1/-1}
.voided-loan-notice>strong{color:#a52525;font-size:14px}
.voided-loan-notice>div{padding:10px;border-radius:9px;background:#fff}
.voided-loan-notice span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.voided-loan-notice b{display:block;margin-top:4px;font-size:11px;white-space:pre-wrap}
.loan-void-actions{display:grid;gap:12px;border:1px solid #f0cccc;background:#fff8f8}
.loan-void-actions>.alert{margin:0}
.loan-void-actions form{display:grid;grid-template-columns:minmax(170px,.65fr) minmax(260px,1.35fr) minmax(190px,.8fr) auto;gap:10px;align-items:end}
.loan-void-actions textarea{width:100%;margin-top:5px;padding:9px;border:1px solid var(--line);border-radius:8px;resize:vertical}
@media(max-width:900px){.loan-void-actions form{grid-template-columns:1fr 1fr}.loan-void-actions form label:nth-of-type(2){grid-column:1/-1}.loan-void-actions form .btn{align-self:end}}
@media(max-width:620px){.voided-loan-notice,.loan-void-actions form{grid-template-columns:1fr}.voided-loan-notice>strong,.voided-loan-notice>small,.loan-void-actions form label:nth-of-type(2){grid-column:auto}.loan-void-actions form .btn{width:100%}}
