:root{--primary:#06B094;--primary-dark:#048a73;--secondary:#E73D5E;--secondary-dark:#be123c;--bg-body:#f8fafc;--bg-card:#ffffff;--border-light:#f1f5f9;--border-main:#e2e8f0;--border-strong:#cbd5e1;--text-dark:#0f172a;--text-main:#1e293b;--text-muted:#64748b;--pure-white:#ffffff;--pure-black:#000000;--wa-color:#25D366;--bg-danger:#fff1f2;--border-danger:#fecdd3;--text-danger:#e11d48;--bg-warning:#fffbeb;--border-warning:#fde68a;--text-warning:#d97706;--bg-success:#f0fdf4;--border-success:#bbf7d0;--text-success:#15803d;--bg-info:#eff6ff;--border-info:#bfdbfe;--text-info:#3b82f6;--text-purple:#8b5cf6;--text-pink:#ec4899;--grad-omzet:linear-gradient(135deg, #2563eb, #1d4ed8);--grad-masuk:linear-gradient(135deg, #10b981, #059669);--grad-piutang:linear-gradient(135deg, #f59e0b, #d97706);--font-primary:'Plus Jakarta Sans', sans-serif}body.dark-mode{--bg-body:#0f172a;--bg-card:#1e293b;--border-light:#334155;--border-main:#475569;--border-strong:#64748b;--text-dark:#f8fafc;--text-main:#e2e8f0;--text-muted:#94a3b8;--bg-danger:rgba(225, 29, 72, 0.1);--border-danger:rgba(225, 29, 72, 0.5);--text-danger:#fb7185;--bg-warning:rgba(245, 158, 11, 0.1);--border-warning:rgba(245, 158, 11, 0.5);--text-warning:#fbbf24;--bg-success:rgba(52, 211, 153, 0.1);--border-success:rgba(52, 211, 153, 0.5);--text-success:#34d399;--bg-info:rgba(59, 130, 246, 0.1);--border-info:rgba(59, 130, 246, 0.5);--text-info:#60a5fa;--text-purple:#a78bfa;--text-pink:#f472b6;--wa-color:rgba(37, 211, 102, 0.15);--text-wa:#4ade80;color-scheme:dark}.grid-keuangan-bisnis{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.card-bisnis-proyeksi,.card-bisnis-masuk,.card-bisnis-piutang{border-radius:12px;padding:20px;position:relative;overflow:hidden;box-shadow:0 4px 6px rgb(0 0 0 / .05);transition:all 0.3s ease}.card-bisnis-title{font-size:14px;opacity:.9;margin-bottom:5px}.card-bisnis-val{font-size:24px;font-weight:800}.card-bisnis-icon{position:absolute;right:-10px;bottom:-15px;font-size:90px;opacity:.15}.card-bisnis-proyeksi{background-color:#3b82f6;color:var(--pure-white)}.card-bisnis-masuk{background-color:#10b981;color:var(--pure-white)}.card-bisnis-piutang{background-color:#f59e0b;color:var(--pure-white)}body.dark-mode .card-bisnis-proyeksi{background-color:rgb(59 130 246 / .15);color:#60a5fa;border:1.5px solid rgb(59 130 246 / .4);box-shadow:none}body.dark-mode .card-bisnis-masuk{background-color:rgb(16 185 129 / .15);color:#34d399;border:1.5px solid rgb(16 185 129 / .4);box-shadow:none}body.dark-mode .card-bisnis-piutang{background-color:rgb(245 158 11 / .15);color:#fbbf24;border:1.5px solid rgb(245 158 11 / .4);box-shadow:none}*{margin:0;padding:0;box-sizing:border-box;font-family:var(--font-primary);transition:background-color 0.3s ease,border-color 0.3s ease,color 0.3s ease,box-shadow 0.3s ease}body{background-color:var(--bg-body);color:var(--text-main);padding-bottom:80px}.alert-box{padding:15px;border-radius:12px;margin-bottom:20px;display:flex;align-items:flex-start;gap:12px;width:100%;box-sizing:border-box}.alert-danger{background-color:var(--bg-danger);border:1px solid var(--border-danger);border-left:5px solid var(--text-danger);color:var(--text-danger);box-shadow:0 4px 15px var(--bg-danger)}.alert-warning{background-color:var(--bg-warning);border:1px solid var(--border-warning);border-left:5px solid var(--text-warning);color:var(--text-warning);box-shadow:0 4px 15px var(--bg-warning)}.header{background-color:var(--primary);color:var(--pure-white);padding:16px 20px;height:61px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100;box-shadow:0 4px 15px rgb(6 176 148 / .2)}.header{background-color:var(--primary)!important;box-shadow:0 4px 15px rgb(92 92 92 / .3)!important}body.dark-mode .header{background-color:var(--bg-card)!important;border-bottom:1.5px dashed var(--text-muted)!important;box-shadow:none!important}body.dark-mode .header-title,body.dark-mode .header a{color:var(--pure-white)!important}.header a{color:var(--pure-white)}.header-title{font-size:18px;font-weight:800;letter-spacing:.5px}.header-actions{display:flex;gap:15px;align-items:center;position:relative}.header-actions>a{color:var(--pure-white)!important;text-decoration:none;display:flex;align-items:center}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;background-color:var(--bg-card);box-shadow:0 -5px 20px rgb(0 0 0 / .05);display:flex;justify-content:space-around;align-items:center;padding:10px 0 15px 0;z-index:1000;border-top:1px solid var(--border-light)}.nav-item{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--text-muted);font-size:10px;font-weight:700;gap:4px;flex:1}.nav-icon{font-size:24px;transition:0.2s}.nav-item.active{color:var(--primary)}.nav-item.active .nav-icon{transform:translateY(-3px)}.nav-fab-wrapper{flex:1;display:flex;justify-content:center;position:relative}.nav-fab{position:absolute;top:-30px;background-color:var(--secondary);color:var(--pure-white);width:55px;height:55px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:30px;text-decoration:none;box-shadow:0 10px 20px rgb(231 61 94 / .3);border:5px solid var(--bg-body);transition:0.2s}.nav-badge{position:absolute;top:-2px;right:18px;background-color:var(--secondary);color:var(--pure-white);font-size:9px;font-weight:800;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--pure-white)}.header .dropdown-menu{position:absolute!important;top:50px!important;right:0!important;background-color:var(--bg-card)!important;border-radius:16px!important;box-shadow:0 10px 30px rgb(0 0 0 / .15)!important;width:250px!important;display:flex!important;flex-direction:column!important;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all 0.3s cubic-bezier(.16,1,.3,1);z-index:200!important;border:1px solid var(--border-light)!important}.header .dropdown-menu.show{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}.header .dropdown-item{padding:14px 20px!important;color:var(--text-main)!important;text-decoration:none!important;font-size:13px!important;font-weight:700!important;display:flex!important;align-items:center!important;gap:12px!important;border-bottom:1px solid var(--border-light)!important}.header .dropdown-item:last-child{border-bottom:none!important}.header .dropdown-item i{font-size:20px!important;color:var(--primary)!important;background-color:var(--bg-body)!important;padding:6px!important;border-radius:8px!important}.header .dropdown-item:hover{background-color:var(--bg-body)!important;color:var(--primary)!important}.container{padding:34px 15px 0 15px;max-width:550px;margin:0 auto}.container-dashboard{padding:34px 15px 25px 15px;max-width:550px;margin:0 auto}.top-section{background-color:var(--bg-card);padding:25px 20px;border-radius:20px;border:1px solid var(--border-light);box-shadow:0 10px 25px -5px rgb(0 0 0 / .03);margin-bottom:20px}.search-row{margin-bottom:22px}.search-row input,.date-filter{border:none;border-bottom:2px solid var(--border-main);font-family:inherit;font-size:14px;background-color:#fff0;color:var(--text-main);transition:0.3s;outline:none;padding-top:8px;padding-bottom:10px}.search-row input:focus,.date-filter:focus{border-bottom-color:var(--primary)}.quick-filter{display:flex;gap:10px;overflow-x:auto;padding-bottom:15px;scrollbar-width:none}.quick-filter::-webkit-scrollbar{display:none}.q-btn{padding:10px 16px;background-color:var(--bg-card);border-radius:12px;font-size:11px;text-decoration:none;color:var(--text-muted);font-weight:800;white-space:nowrap;border:1px solid var(--border-main);transition:all 0.2s}.q-btn.active{background-color:var(--primary);color:var(--pure-white);border-color:var(--primary);box-shadow:0 4px 10px rgb(6 176 148 / .2)}.filter-bayar .q-btn.active[href*="Belum"],.filter-status .q-btn.active[href*="Batal"]{background-color:var(--bg-danger);border-color:var(--border-danger);color:var(--text-danger);box-shadow:0 4px 10px var(--bg-danger)}.filter-bayar .q-btn.active[href*="DP"],.filter-status .q-btn.active[href*="Pending"]{background-color:var(--bg-warning);border-color:var(--border-warning);color:var(--text-warning);box-shadow:0 4px 10px var(--bg-warning)}.filter-bayar .q-btn.active[href*="Lunas"],.filter-status .q-btn.active[href*="Selesai"]{background-color:var(--bg-success);border-color:var(--border-success);color:var(--text-success);box-shadow:0 4px 10px var(--bg-success)}.booking-card{background-color:var(--bg-card);padding:20px;border-radius:20px;margin-bottom:15px;border:1.5px dashed var(--border-main);box-shadow:0 4px 12px rgb(0 0 0 / .02);transition:0.3s;display:block}.card-top{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--border-light);margin-bottom:12px}.client-name{font-size:15px;font-weight:800;color:var(--primary);margin:0}.info-row{font-size:13px;color:var(--text-main);margin-bottom:12px}.aksi-group{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding-top:15px;border-top:1px dashed var(--border-main)}.btn-mini{padding:8px 5px;border-radius:8px;font-size:10px;font-weight:800;text-transform:uppercase;border:none;cursor:pointer;font-family:inherit;display:flex;justify-content:center;align-items:center;text-decoration:none}.btn-wa{background-color:var(--wa-color);color:var(--pure-white);display:inline-flex;align-items:center;justify-content:center;gap:6px}body.dark-mode .btn-wa{color:var(--text-wa);border:1.5px solid rgb(37 211 102 / 60%);background-color:#fff0}.btn-st.pending,.btn-byr.dp{background-color:var(--bg-warning);color:var(--text-warning);border:1px solid var(--border-warning)}.btn-st.selesai,.btn-byr.lunas{background-color:var(--bg-success);color:var(--text-success);border:1px solid var(--border-success)}.btn-st.batal,.btn-byr.belum-bayar{background-color:var(--bg-danger);color:var(--text-danger);border:1px solid var(--border-danger)}.badge{font-size:10px;font-weight:800;padding:4px 10px;border-radius:8px;text-transform:uppercase}.today-badge{background-color:var(--bg-success);color:var(--text-success);border:1px solid var(--border-success)}.card-today{border:2px solid var(--primary)!important;box-shadow:0 4px 15px rgb(6 176 148 / .15)!important}.h1-badge{background-color:var(--bg-danger);color:var(--text-danger);border:1px solid var(--border-danger)}.card-tomorrow{border:2px solid var(--text-danger)!important;animation:pulse-danger 1.5s infinite}.expired-badge{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}body.dark-mode .expired-badge{background:rgb(148 163 184 / .1);color:#94a3b8;border:1px solid rgb(148 163 184 / .3)}.booking-card.card-expired{background:#f8fafc;border:1.5px dashed #cbd5e1;box-shadow:none;opacity:.45;transition:all 0.3s ease-in-out}.booking-card.card-expired:hover{background:#fff;border:1.5px dashed #94a3b8;opacity:.9;transform:translateY(-2px);box-shadow:0 4px 15px rgb(0 0 0 / .03)}body.dark-mode .booking-card.card-expired{background:rgb(30 41 59 / .1);border:1.5px dashed rgb(148 163 184 / .2);box-shadow:none;opacity:.45}body.dark-mode .booking-card.card-expired:hover{background:rgb(30 41 59 / .3);border:1.5px dashed rgb(148 163 184 / .5);opacity:.9;transform:translateY(-2px);box-shadow:0 4px 20px rgb(0 0 0 / .2)}.card-expired .btn-mini{opacity:.7}.card-expired:hover .btn-mini{opacity:1}.pagination{display:flex;justify-content:space-between;margin-top:25px;gap:10px}.pg-btn{flex:1;text-align:center;padding:12px;background-color:var(--bg-card);border:1px solid var(--border-main);border-radius:12px;text-decoration:none;color:var(--text-main);font-weight:800;font-size:12px}.pg-empty{flex:1}@keyframes pulse-danger{0%{box-shadow:0 0 0 0 rgb(225 29 72 / .5)}70%{box-shadow:0 0 0 10px #fff0}100%{box-shadow:0 0 0 0 #fff0}}.container-kalender{padding:0 0 25px 0;max-width:550px;margin:0 auto}.filter-mode{display:flex;gap:10px;align-items:center;padding:15px 20px}.filter-select{flex:1;padding:12px 16px;border:1.5px solid var(--border-main);border-radius:12px;background-color:var(--bg-body);color:var(--text-main);font-weight:700;outline:none;appearance:none;cursor:pointer;transition:0.3s}.filter-select:focus{border-color:var(--primary);background-color:var(--bg-card)}.filter-btn{background-color:var(--primary);color:var(--pure-white);border:none;width:45px;height:45px;border-radius:12px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgb(6 176 148 / .2);transition:0.2s}.filter-btn:active{transform:scale(.9)}.promo-banner{background-color:var(--bg-success);border:1.5px dashed var(--primary);border-radius:16px;padding:16px;text-align:center;margin:0 auto 20px auto;max-width:550px}.promo-banner p{color:var(--text-main);font-size:12px;font-weight:800;margin-bottom:12px}.promo-banner .small-note{font-size:10.5px;font-weight:600;color:var(--text-muted);font-style:italic;margin-top:12px}.promo-btn-group{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.promo-btn-group a,.btn-wa{text-decoration:none!important;font-weight:800}.btn-outline-primary{flex:1;min-width:130px;background-color:var(--bg-card);color:var(--primary);border:1.5px solid var(--primary);padding:12px 10px;border-radius:12px;font-weight:800;font-size:12px;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:6px;transition:0.3s}.btn-outline-primary:hover{background-color:var(--primary);color:var(--pure-white)}.calendar-card{background-color:var(--bg-card);padding:25px;border-radius:20px;box-shadow:0 10px 25px -5px rgb(0 0 0 / .05);border:1px solid var(--border-light);margin-bottom:20px;overflow:hidden;position:relative}.calendar-card::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--primary),var(--secondary))}.cal-header{text-align:center;margin-bottom:25px;line-height:normal}.title-name{font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:4px}.brand-name{font-size:22px;font-weight:900;color:var(--primary);margin-bottom:4px}.month-name{font-weight:800;font-size:14px;color:var(--text-dark);display:block}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day-label{text-align:center;font-size:12px;font-weight:800;color:var(--text-muted);padding-bottom:10px}.day-box{aspect-ratio:1/1;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:14px;font-weight:800;cursor:pointer;transition:0.2s;border:1.5px solid var(--border-strong);background-color:var(--bg-card);color:var(--text-main);line-height:1;position:relative}body.dark-mode .day-box{border-color:var(--border-main);background-color:var(--bg-body)}.day-box.status-available{background-color:var(--bg-card)}.day-box.status-booked{background-color:var(--bg-danger);border-color:var(--text-danger);color:var(--text-danger);box-shadow:0 4px 10px var(--bg-danger)}.day-box.status-past{background-color:var(--bg-body);border-color:var(--border-main);color:var(--text-muted);cursor:not-allowed;opacity:.6}.day-box.is-today{background-color:var(--bg-success);border-color:var(--primary);color:var(--text-success);box-shadow:0 0 0 1px var(--primary)}.booking-count{font-size:9px;font-weight:900;margin-top:2px;background-color:var(--secondary);color:var(--pure-white);border-radius:6px;padding:3px 7px;line-height:1}.kalender-footer{text-align:center;padding-top:20px;margin-top:20px;border-top:1px dashed var(--border-main)}.wa-info-v2{color:var(--primary);font-weight:800;font-size:13px;display:block;margin:5px 0 15px 0}.img-copyright-v2{font-size:11px;color:var(--text-muted);display:block}.sys-desc{font-size:10px;color:var(--text-muted);opacity:.7}.last-update-v2{display:block;font-size:9px;color:var(--text-muted);margin-top:10px;font-style:italic}.btn-download{width:100%;background-color:var(--text-main);color:var(--bg-card);border:none;padding:14px;border-radius:12px;font-weight:800;font-size:14px;cursor:pointer;box-shadow:0 4px 10px rgb(0 0 0 / .1);transition:0.3s}.btn-download:hover{opacity:.8;transform:translateY(-2px)}.modal-overlay{display:none;position:fixed;inset:0;background:rgb(15 23 42 / .6);backdrop-filter:blur(4px);z-index:9999;justify-content:center;align-items:center;padding:20px}.modal-content{background-color:var(--bg-card);width:100%;max-width:380px;border-radius:24px;overflow:hidden;animation:popInModal 0.3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 20px 40px rgb(0 0 0 / .2)}.modal-header{background-color:var(--primary);color:var(--pure-white);padding:16px 20px;font-weight:800;display:flex;justify-content:space-between;align-items:center}.modal-body{padding:10px 0;max-height:350px;overflow-y:auto}.booking-item{padding:15px 20px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:var(--text-main);transition:0.2s}.booking-item:hover{background-color:var(--bg-body)}.b-name{font-weight:800;font-size:14px;display:block}.b-service{font-size:12px;color:var(--text-muted)}.alert-dashed{margin-top:20px;padding:15px;border:1.5px dashed var(--primary);border-radius:12px;background-color:var(--bg-success);display:flex;gap:12px;align-items:flex-start;text-align:left}.alert-dashed i{font-size:24px;color:var(--primary);margin-top:2px}.alert-dashed b{font-size:13px;color:var(--primary);display:block;margin-bottom:4px}.alert-dashed span{font-size:11px;color:var(--text-main);line-height:1.5;display:block}body.dark-mode .modal-header{background-color:rgb(6 176 148 / .15);color:var(--primary);border-bottom:1.5px solid rgb(6 176 148 / .3)}body.dark-mode .modal-content{background-color:var(--bg-card);border:1px solid var(--border-main);box-shadow:0 20px 50px rgb(0 0 0 / .5)}body.dark-mode .booking-item{border-bottom:1px solid var(--border-main);color:var(--text-main)}body.dark-mode .booking-item:hover{background-color:var(--bg-body)}body.dark-mode .booking-item .b-name{color:var(--text-main)}body.dark-mode .booking-item .b-service{color:var(--text-muted)}.booking-item,body.dark-mode .booking-item{border-bottom:none!important}body.dark-mode .btn-download{background-color:#fff0;color:var(--primary);border:1.5px solid var(--primary);box-shadow:none}body.dark-mode .btn-download:hover{background-color:var(--primary);color:var(--pure-white)}.container-laporan{padding:34px 15px 5px 15px;max-width:550px;margin:0 auto}.btn-download-pdf{display:flex;align-items:center;justify-content:center;gap:8px;background-color:var(--secondary);color:var(--pure-white)!important;padding:14px 20px;border-radius:12px;font-weight:800;font-size:14px;text-decoration:none;width:100%;margin-bottom:25px;box-shadow:0 6px 15px rgb(231 61 94 / .3);transition:0.3s}.btn-download-pdf:hover{transform:translateY(-2px);background-color:var(--secondary-dark)}.stats-grid-new{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:30px}.stat-card-main{grid-column:span 2;background-color:var(--primary);color:var(--pure-white);border-radius:16px;padding:25px 20px;text-align:center;box-shadow:0 10px 20px rgb(6 176 148 / .2)}.stat-card-main i{font-size:32px;margin-bottom:10px;display:inline-block}.stat-card-main .s-val{font-size:32px;font-weight:900;line-height:1;margin-bottom:8px}.stat-card-main .s-lbl{font-size:10px;font-weight:800;text-transform:uppercase;opacity:.9;letter-spacing:1px}.stat-card-mini{background-color:var(--bg-card);padding:15px;border-radius:16px;text-align:center;border:1.5px solid var(--border-light);box-shadow:0 4px 10px rgb(0 0 0 / .02)}.stat-card-mini .s-val{font-size:24px;font-weight:900;line-height:1;margin-bottom:8px}.stat-card-mini .s-lbl{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase}.card-white{background-color:var(--bg-card);padding:20px;border-radius:20px;border:1.5px solid var(--border-light);margin-bottom:20px;box-shadow:0 4px 15px rgb(0 0 0 / .02)}.card-title{font-size:15px;font-weight:800;color:var(--text-dark);margin-bottom:20px;display:flex;align-items:center;gap:8px}.service-item{margin-bottom:15px}.service-info{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-bottom:6px;color:var(--text-main)}.service-bar-bg{background-color:var(--border-light);height:8px;border-radius:10px;overflow:hidden}.service-bar-fill{height:100%;border-radius:10px;transition:width 1s ease-in-out}.loyal-item{display:flex;align-items:center;gap:12px;padding:15px;background:var(--bg-body);border-radius:16px;margin-bottom:12px;border:1.5px solid var(--border-light);text-decoration:none;transition:0.2s;color:var(--text-main)}.loyal-item.rank-1{background:var(--bg-warning);border-color:var(--border-warning)}.loyal-ava{width:45px;height:45px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800}.ava-1{background:var(--bg-warning);color:var(--text-warning)}.ava-2{background:var(--bg-success);color:var(--text-success)}.ava-3{background:var(--bg-info);color:var(--text-info)}.ava-other{background:var(--bg-body);color:var(--text-muted);border:1.5px solid var(--border-main)}.loyal-info{flex:1}.loyal-name{font-size:14px;font-weight:800;color:var(--text-dark);margin-bottom:2px;display:block}.loyal-rank{font-size:11px;font-weight:700;color:var(--text-muted)}.txt-rank1{color:var(--text-warning)}.txt-rank2{color:var(--text-success)}.txt-rank3{color:var(--text-info)}.loyal-badge{padding:6px 12px;border-radius:20px;font-size:11px;font-weight:800}.bg-orange{background-color:#f59e0b;color:var(--pure-white);border:1px solid #f59e0b}.bg-green{background-color:#10b981;color:var(--pure-white);border:1px solid #10b981}.bg-blue{background-color:#3b82f6;color:var(--pure-white);border:1px solid #3b82f6}.bg-other{background-color:var(--bg-body);color:var(--text-muted);border:1.5px solid var(--border-main)}body.dark-mode .bg-orange{background-color:var(--bg-warning);color:var(--text-warning);border-color:var(--border-warning)}body.dark-mode .bg-green{background-color:var(--bg-success);color:var(--text-success);border-color:var(--border-success)}body.dark-mode .bg-blue{background-color:var(--bg-info);color:var(--text-info);border-color:var(--border-info)}body.dark-mode .bg-other{background-color:var(--bg-body);color:var(--text-muted);border-color:var(--border-main)}body.dark-mode .filter-btn{background-color:var(--bg-success);color:var(--text-success);border:1px solid var(--border-success);box-shadow:none}body.dark-mode .filter-btn:hover{background-color:var(--text-success);color:var(--bg-card)}body.dark-mode .btn-download-pdf{background-color:var(--bg-danger);color:var(--text-danger)!important;border:1px solid var(--border-danger);box-shadow:none}body.dark-mode .btn-download-pdf:hover{background-color:var(--text-danger);color:var(--bg-card)!important}.btn-download-pdf.locked{background-color:var(--bg-body)!important;color:var(--text-muted)!important;border:1.5px dashed var(--border-strong)!important;cursor:not-allowed!important;box-shadow:none!important}body.dark-mode .btn-download-pdf.locked{background-color:rgb(15 23 42 / .3)!important;border-color:var(--border-main)!important;color:var(--text-muted)!important}body.dark-mode .stat-card-main{background-color:var(--bg-success);color:var(--text-success);border:1.5px solid var(--border-success);box-shadow:none}.yearly-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.yearly-box{background:var(--bg-card);padding:12px 5px;border-radius:12px;text-align:center;border:1.5px solid var(--border-light)}.y-name{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase}.y-value{font-size:18px;font-weight:800;margin-top:4px}.container-sampah{padding:34px 15px 0 15px;max-width:550px;margin:0 auto}.btn-clear-all{width:100%;background-color:var(--bg-danger);color:var(--text-danger);border:1.5px dashed var(--text-danger);padding:14px;border-radius:12px;font-weight:800;font-size:14px;cursor:pointer;transition:0.3s;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:8px}.btn-clear-all:hover{background-color:var(--text-danger);color:var(--pure-white)}.btn-clear-all.disabled{opacity:.6;cursor:not-allowed}.btn-clear-all.disabled:hover{background-color:var(--bg-danger);color:var(--text-danger)}.trash-card{background-color:var(--bg-card);padding:20px;border-radius:20px;margin-bottom:15px;border:1.5px dashed var(--border-main);opacity:.8;transition:0.3s}.trash-card:hover{opacity:1;border-color:var(--text-danger)}.trash-card .client-name{font-size:15px;font-weight:800;color:var(--text-muted);margin:0;display:flex;gap:6px}.trash-card .info-row{font-size:13px;color:var(--text-main);margin-bottom:12px;margin-top:5px}.aksi-group.grid-2{grid-template-columns:1fr 1fr}.btn-kembalikan{background-color:var(--primary);color:var(--pure-white)}.btn-musnahkan{background-color:var(--text-danger);color:var(--pure-white)}.btn-mati{background-color:var(--bg-body);color:var(--text-muted);cursor:not-allowed}.modal-hapus-overlay{display:none;position:fixed;inset:0;background:rgb(15 23 42 / .6);backdrop-filter:blur(4px);z-index:9999;justify-content:center;align-items:center;padding:20px}.modal-hapus-box{background-color:var(--bg-card);width:100%;max-width:340px;border-radius:24px;padding:25px 20px;text-align:center;box-shadow:0 20px 40px rgb(0 0 0 / .2);animation:popInModal 0.3s cubic-bezier(.175,.885,.32,1.275)}.modal-hapus-box .icon-alert{font-size:50px;margin-bottom:10px}.modal-hapus-box h3{color:var(--text-dark);font-size:18px;font-weight:800;margin-bottom:8px}.modal-hapus-box p{color:var(--text-main);font-size:13px;margin-bottom:20px;line-height:1.5}.modal-btn-group{display:flex;gap:10px}.btn-hapus-cancel{flex:1;padding:12px;border-radius:12px;font-weight:800;font-size:13px;cursor:pointer;border:none;background-color:var(--bg-body);color:var(--text-muted);transition:0.2s}.btn-hapus-cancel:hover{background-color:var(--border-light)}.btn-hapus-confirm{flex:1;padding:12px;border-radius:12px;font-weight:800;font-size:13px;cursor:pointer;border:none;background-color:var(--text-danger);color:var(--pure-white);text-decoration:none;transition:0.2s;display:flex;align-items:center;justify-content:center}.btn-hapus-confirm:hover{background-color:var(--secondary-dark)}body.dark-mode .q-btn.active{background-color:rgb(6 176 148 / .15);color:var(--primary);border-color:var(--primary);box-shadow:none}body.dark-mode .filter-bayar .q-btn.active[href*="Belum"],body.dark-mode .filter-status .q-btn.active[href*="Batal"]{background-color:var(--bg-danger);border-color:var(--border-danger);color:var(--text-danger);box-shadow:none}body.dark-mode .filter-bayar .q-btn.active[href*="DP"],body.dark-mode .filter-status .q-btn.active[href*="Pending"]{background-color:var(--bg-warning);border-color:var(--border-warning);color:var(--text-warning);box-shadow:none}body.dark-mode .filter-bayar .q-btn.active[href*="Lunas"],body.dark-mode .filter-status .q-btn.active[href*="Selesai"]{background-color:var(--bg-success);border-color:var(--border-success);color:var(--text-success);box-shadow:none}body.dark-mode .btn-kembalikan{background-color:rgb(6 176 148 / .15);color:var(--primary);border:1px solid var(--primary)}body.dark-mode .btn-musnahkan{background-color:var(--bg-danger);color:var(--text-danger);border:1px solid var(--text-danger)}body.dark-mode .btn-kembalikan:hover{background-color:var(--primary);color:var(--pure-white)}body.dark-mode .btn-musnahkan:hover{background-color:var(--text-danger);color:var(--pure-white)}.container-profil{padding:34px 15px 35px 15px;max-width:550px;margin:0 auto}.status-vip-card{display:flex;justify-content:space-between;align-items:center;background-color:#1e293b;padding:25px 20px;border-radius:20px;margin-bottom:20px;box-shadow:0 15px 30px rgb(0 0 0 / .15)}.vip-left{flex:1}.badge-pro-outline{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:10px;font-weight:800;border:1px solid var(--primary);color:var(--primary);text-transform:uppercase;margin-bottom:12px}.badge-pro-outline .pulse-dot{width:6px;height:6px;border-radius:50%;background-color:var(--primary);box-shadow:0 0 8px var(--primary)}.badge-danger-outline{border-color:var(--text-danger);color:var(--text-danger)}.badge-danger-outline .pulse-dot{background-color:var(--text-danger);box-shadow:0 0 8px var(--text-danger)}.vip-left h4{font-size:10px;color:#94a3b8;margin-bottom:2px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.vip-left h2{font-size:22px;font-weight:900;color:#fff;margin:0 0 10px 0}.badge-feature{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:8px;font-size:10px;font-weight:800;border:1px solid var(--primary);color:var(--primary);text-transform:uppercase}.badge-feature.locked{border-color:var(--text-danger);color:var(--text-danger)}.vip-right-box{background:rgb(255 255 255 / .05);border:1px solid rgb(255 255 255 / .1);border-radius:16px;width:100px;height:100px;display:flex;flex-direction:column;justify-content:center;align-items:center}.vip-right-box h1{font-size:38px;font-weight:900;line-height:1;margin:0;color:var(--primary);text-shadow:0 0 15px rgb(6 176 148 / .5)}.vip-right-box.expired h1{color:var(--text-danger);text-shadow:0 0 15px rgb(225 29 72 / .5)}.vip-right-box p{font-size:10px;font-weight:800;color:#94a3b8;margin-top:4px;text-transform:uppercase}.ref-card-premium{background-color:var(--primary);color:#fff;padding:25px 20px;border-radius:20px;margin-bottom:25px;box-shadow:0 15px 30px rgb(6 176 148 / .2);position:relative;overflow:hidden}.ref-head h4{font-size:16px;font-weight:800;margin-bottom:6px;display:flex;align-items:center;gap:8px;color:#fff}.ref-head p{font-size:12px;opacity:.9;line-height:1.5;margin-bottom:20px;color:#fff}.ref-code-box{background:#fff0;border-radius:12px;padding:15px;border:1px dashed rgb(255 255 255 / .4);display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.ref-code-lbl{font-size:10px;font-weight:800;color:rgb(255 255 255 / .8);text-transform:uppercase;margin-bottom:2px}.ref-code-val{font-size:20px;font-weight:900;color:#fff;letter-spacing:2px}.btn-salin-yellow{background:#fef08a;color:#854d0e;border:none;padding:8px 16px;border-radius:8px;font-weight:800;font-size:12px;cursor:pointer;transition:0.2s;display:flex;align-items:center;gap:5px}.ref-stats-grid{display:flex;gap:12px;margin-bottom:20px}.ref-stat-item{flex:1;background:rgb(255 255 255 / .1);border:1px solid rgb(255 255 255 / .2);padding:15px;border-radius:12px;text-align:center}.ref-stat-item h3{font-size:22px;font-weight:900;margin-bottom:2px;color:#fff}.ref-stat-item p{font-size:10px;font-weight:800;color:rgb(255 255 255 / .8);text-transform:uppercase}.btn-share-white{display:flex;align-items:center;justify-content:center;gap:8px;background-color:#fff;color:var(--primary);text-decoration:none;padding:14px;border-radius:12px;font-weight:800;font-size:14px;transition:0.3s}.btn-share-white:hover{opacity:.9;transform:translateY(-2px)}.profil-form-group{margin-bottom:20px}.profil-form-group label{display:block;font-size:12px;font-weight:800;color:var(--text-dark);margin-bottom:8px}.profil-form-group input,.profil-form-group textarea,.profil-form-group select{width:100%;padding:12px 15px;border-radius:12px;border:1.5px solid var(--border-main);background-color:var(--bg-body);color:var(--text-main);font-family:inherit;font-size:14px;outline:none;transition:0.3s}.profil-form-group input:focus,.profil-form-group textarea:focus{border-color:var(--primary);background-color:var(--bg-card)}.profil-form-group .note{display:block;font-size:10.5px;color:var(--text-muted);margin-top:5px;line-height:1.4}.logo-preview-container{margin-bottom:15px;text-align:center}.logo-wrapper{width:100%;max-width:200px;margin:0 auto 10px;border-radius:12px;overflow:hidden;border:1px solid var(--border-main);padding:10px;background:#fff}.logo-wrapper img{width:100%;height:auto;display:block}.btn-hapus-logo{display:inline-flex;align-items:center;gap:5px;color:var(--text-danger);font-size:11px;font-weight:800;text-decoration:none}.reminder-box{background-color:var(--bg-card);border-radius:16px;padding:20px;margin-bottom:25px;border:2px solid #fff0}.reminder-box.owner{border-color:var(--text-warning)}.reminder-box.client{border-color:var(--text-success)}.reminder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.reminder-header h4{font-size:14px;font-weight:800;display:flex;align-items:center;gap:8px;margin-bottom:2px}.reminder-box.owner .reminder-header h4{color:var(--text-warning)}.reminder-box.client .reminder-header h4{color:var(--text-success)}.reminder-desc{font-size:11px;color:var(--text-muted);margin:0}.reminder-box label.title{display:block;font-size:11px;font-weight:800;margin-bottom:6px}.reminder-box.owner label.title{color:var(--text-warning)}.reminder-box.client label.title{color:var(--text-success)}.reminder-box input,.reminder-box select,.reminder-box textarea{width:100%;padding:10px 12px;border-radius:8px;background-color:var(--bg-card);color:var(--text-main);font-family:inherit;font-size:13px;outline:none;box-sizing:border-box}.reminder-box.owner input,.reminder-box.owner select,.reminder-box.owner textarea{border:1.5px solid var(--border-warning)}.reminder-box.client input,.reminder-box.client select,.reminder-box.client textarea{border:1.5px solid var(--border-success)}.reminder-info{font-size:11px;margin-top:10px;line-height:1.5;padding:10px;border-radius:8px;background:#fff0}.reminder-box.owner .reminder-info{border:1px dashed var(--border-warning);color:var(--text-warning)}.reminder-box.client .reminder-info{border:1px dashed var(--border-success);color:var(--text-success)}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-strong);transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}.reminder-box.owner input:checked+.slider{background-color:var(--text-warning)}.reminder-box.client input:checked+.slider{background-color:var(--text-success)}input:checked+.slider:before{transform:translateX(20px)}.btn-profil-simpan{width:100%;background-color:var(--primary);color:var(--pure-white);border:none;padding:14px;border-radius:12px;font-weight:800;font-size:14px;cursor:pointer;transition:0.3s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-profil-simpan:hover{opacity:.9;transform:translateY(-2px)}body.dark-mode .btn-profil-simpan{border:1.5px solid var(--primary)}.btn-keluar-outline{display:flex;align-items:center;justify-content:center;gap:8px;background-color:var(--bg-danger);color:var(--text-danger);border:1.5px dashed var(--border-danger);padding:14px;border-radius:12px;font-weight:800;font-size:13px;text-decoration:none;margin-top:30px;margin-bottom:30px;transition:0.3s}.btn-keluar-outline:hover{background-color:var(--text-danger);color:var(--pure-white)}body.dark-mode .btn-keluar-outline{background-color:#fff0;border-color:var(--pure-white);color:var(--pure-white)}body.dark-mode .btn-keluar-outline:hover{background-color:var(--pure-white);color:var(--bg-body)}.btn-danger-trigger{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted);background:none!important;padding:10px 20px;border-radius:10px;text-decoration:none;transition:0.3s;margin-top:30px}.btn-danger-trigger.active{background:var(--bg-card);border-color:var(--border-light);color:var(--text-muted)}.danger-zone-box{background-color:#1e293b;border:2px solid var(--bg-card);padding:25px 20px;border-radius:16px;margin-top:15px;text-align:center;box-shadow:0 10px 30px rgb(0 0 0 / .1)}.danger-zone-box h4{color:var(--pure-white);font-size:14px;font-weight:800;margin-bottom:5px;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:8px}.danger-zone-box p{color:#94a3b8;font-size:11px;margin-bottom:20px;line-height:1.5}.btn-hapus-akun-solid{width:100%;background-color:var(--text-danger);color:#fff;border:1.5px solid #fff0;padding:14px;border-radius:12px;font-weight:800;font-size:13px;cursor:pointer;transition:0.3s;display:flex;align-items:center;justify-content:center;gap:6px}.btn-hapus-akun-solid:hover{background-color:#be123c}body.dark-mode .btn-danger-trigger{background:#fff0;border-color:var(--text-danger);color:var(--text-danger)}body.dark-mode .btn-danger-trigger.active{background:var(--bg-body);border-color:var(--border-main);color:var(--text-muted)}body.dark-mode .danger-zone-box{background-color:var(--bg-body);border:1.5px dashed var(--text-danger)}body.dark-mode .danger-zone-box h4{color:var(--text-danger)}body.dark-mode .btn-hapus-akun-solid{background-color:#fff0;color:var(--text-danger);border-color:var(--text-danger)}body.dark-mode .btn-hapus-akun-solid:hover{background-color:var(--text-danger);color:var(--pure-white)}.detoska-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgb(15 23 42 / .6);backdrop-filter:blur(4px);z-index:9999;display:none;justify-content:center;align-items:center;padding:20px;opacity:0;animation:fadeInModal 0.3s forwards}.detoska-modal-content{background:var(--bg-card);width:100%;max-width:360px;border-radius:24px;padding:30px 25px;text-align:center;box-shadow:0 20px 40px rgb(0 0 0 / .1);border:1px solid var(--border-light);transform:scale(.9);animation:popUpModal 0.4s cubic-bezier(.175,.885,.32,1.275) forwards}.detoska-icon-alert{font-size:50px;margin-bottom:15px;display:inline-block;animation:shakeAlert 0.5s ease-in-out 0.3s}.detoska-btn-group{display:flex;gap:12px;margin-top:25px}.detoska-btn-modal{flex:1;padding:14px;border-radius:14px;font-weight:800;font-size:13px;cursor:pointer;transition:all 0.3s ease;border:none;text-decoration:none;font-family:inherit;display:block}.detoska-btn-cancel{background:var(--bg-body);color:var(--text-muted);border:1.5px solid var(--border-main)}.detoska-btn-cancel:hover{background:var(--border-main);color:var(--text-main);transform:translateY(-2px)}.detoska-btn-confirm{background:var(--text-danger);color:#fff;border:1.5px solid #fff0}.detoska-btn-confirm:hover{background:#be123c;transform:translateY(-2px);box-shadow:0 8px 15px rgb(225 29 72 / .3)}@keyframes fadeInModal{to{opacity:1}}@keyframes popUpModal{to{transform:scale(1)}}@keyframes shakeAlert{0%,100%{transform:rotate(0deg)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}body.dark-mode .detoska-modal-overlay{background:rgb(0 0 0 / .8)}body.dark-mode .detoska-modal-content{box-shadow:0 20px 50px rgb(0 0 0 / .5);border:1px solid var(--border-main)}body.dark-mode .detoska-btn-cancel{background:rgb(255 255 255 / .05);border-color:var(--border-main);color:var(--text-muted)}body.dark-mode .detoska-btn-cancel:hover{background:rgb(255 255 255 / .1);color:var(--pure-white)}body.dark-mode .detoska-btn-confirm{background:rgb(225 29 72 / .15);color:#fb7185;border:1px solid rgb(225 29 72 / .5)}body.dark-mode .detoska-btn-confirm:hover{background:var(--text-danger);color:#fff;box-shadow:0 8px 20px rgb(225 29 72 / .4)}body.dark-mode .ref-card-premium{background-color:var(--bg-card);border:1.5px solid var(--primary);box-shadow:none}body.dark-mode .ref-head h4{color:var(--primary)}body.dark-mode .ref-head p{color:var(--text-muted)}body.dark-mode .ref-code-box{background-color:var(--bg-body);border:1.5px dashed var(--primary)}body.dark-mode .ref-code-lbl{color:var(--text-muted)}body.dark-mode .ref-code-val{color:var(--primary)}body.dark-mode .btn-salin-yellow{background-color:rgb(253 224 71 / .15);color:#fde047;border:1px solid #fde047}body.dark-mode .btn-salin-yellow:hover{color:#fde047}body.dark-mode .ref-stat-item{background-color:var(--bg-body);border:1px solid var(--border-main)}body.dark-mode .ref-stat-item h3{color:var(--primary)}body.dark-mode .ref-stat-item p{color:var(--text-muted)}body.dark-mode .btn-share-white{background-color:transparent!important;color:var(--text-wa)!important;border:1.5px solid var(--wa-color)!important}body.dark-mode .btn-share-white:hover{background-color:var(--text-wa)!important;color:var(--pure-white)!important}body.dark-mode .btn-profil-simpan{background-color:#fff0;color:var(--primary)!important;border:1.5px solid var(--primary);box-shadow:none}body.dark-mode .btn-profil-simpan:hover{background-color:var(--primary);color:var(--pure-white)!important}.container-tambah{padding:34px 15px 0 15px;max-width:550px;margin:0 auto}.form-card{background-color:var(--bg-card);padding:25px 20px;border-radius:20px;border:1.5px solid var(--border-light);margin-bottom:35px;box-shadow:0 10px 25px -5px rgb(0 0 0 / .02)}.form-item{margin-bottom:20px}.form-item:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.form-item .label{display:block;font-size:11px;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.form-item input[type="text"],.form-item input[type="number"],.form-item textarea{width:100%;border:none;border-bottom:2px solid var(--border-main);background-color:#fff0;color:var(--text-main);font-family:inherit;font-size:15px;font-weight:600;padding:10px 0;outline:none;transition:0.3s}.form-item input:focus,.form-item textarea:focus{border-bottom-color:var(--primary)}.form-item textarea{resize:vertical;min-height:80px;line-height:1.5}.item-row{display:flex;gap:8px;margin-bottom:12px;align-items:center}.item-input{padding:12px 15px;border:1.5px solid var(--border-main);border-radius:12px;background-color:var(--bg-body);color:var(--text-main);font-family:inherit;font-size:13px;font-weight:600;outline:none;transition:0.3s}.item-input:focus{border-color:var(--primary);background-color:var(--bg-card)}.input-nama-item{flex:2;min-width:80px}.input-qty-item{width:60px;text-align:center;padding:12px 5px}.input-harga-item{flex:1.5;min-width:80px}.btn-hapus-item{background:#fff0;color:var(--text-danger);border:none;font-size:24px;padding:5px;margin-left:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:0.2s;opacity:.8}.btn-hapus-item:hover{opacity:1;transform:scale(1.1)}.btn-tambah-item{background:rgb(6 176 148 / .1);color:var(--primary);border:1.5px dashed var(--primary);padding:12px;width:100%;border-radius:12px;cursor:pointer;font-family:inherit;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:20px;transition:0.3s;display:flex;align-items:center;justify-content:center;gap:5px}.btn-tambah-item:hover{background:var(--primary);color:var(--pure-white)}.total-box{background:var(--bg-card);padding:15px 20px;border-radius:16px;border:1.5px solid var(--border-main);box-shadow:0 4px 12px rgb(0 0 0 / .02);display:flex;justify-content:space-between;align-items:center}.total-label{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:800}.total-value{color:var(--primary);font-size:20px;font-weight:900;white-space:nowrap}.btn-form-action{width:100%;background-color:var(--primary);color:var(--pure-white);border:none;padding:16px;border-radius:14px;font-weight:800;font-size:14px;cursor:pointer;transition:0.3s;box-shadow:0 8px 20px rgb(6 176 148 / .2);margin-top:25px}.btn-form-action:hover{opacity:.9;transform:translateY(-2px)}body.dark-mode .item-input{border-color:var(--border-light)}body.dark-mode .item-input:focus{border-color:var(--primary)}body.dark-mode .btn-tambah-item{background:#fff0}body.dark-mode .btn-tambah-item:hover{background:var(--primary)}body.dark-mode .total-box{background:var(--bg-body);border-color:var(--border-light)}body.dark-mode .btn-form-action{border:1.5px solid var(--primary);background:#fff0;box-shadow:none;color:var(--primary)}body.dark-mode .btn-form-action:hover{background:var(--primary);color:var(--pure-white)}.detail-card{background-color:var(--bg-card);padding:25px 20px;border-radius:20px;border:1.5px solid var(--border-light);margin-bottom:35px;box-shadow:0 10px 25px -5px rgb(0 0 0 / .02)}.detail-item{margin-bottom:16px;border-bottom:1.5px dashed var(--border-main);padding-bottom:16px}.detail-item:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.detail-label{font-size:11px;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.detail-value{font-size:14px;font-weight:700;color:var(--text-main);line-height:1.5;word-wrap:break-word}.detail-value.highlight{color:var(--primary);font-size:16px;font-weight:900;text-transform:uppercase}.map-box{border-radius:12px;overflow:hidden;border:1.5px solid var(--border-main);margin-top:10px;background:var(--bg-body)}.btn-map-link{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--bg-body);color:var(--text-main);padding:12px;border-radius:12px;text-decoration:none;font-size:13px;font-weight:800;margin-top:10px;border:1.5px solid var(--border-main);transition:0.3s}.btn-map-link:hover{border-color:var(--primary);color:var(--primary);background:var(--bg-card)}.alert-map-empty{font-size:12px;color:#94a3b8;margin-top:15px;text-align:center;padding:15px;background:#f8fafc;border-radius:12px;border:1px dashed #e2e8f0;line-height:1.5}.alert-map-error{font-size:12px;color:#ef4444;margin-top:15px;text-align:center;padding:15px;background:#fef2f2;border-radius:12px;border:1px dashed #fecaca;line-height:1.5}body.dark-mode .alert-map-empty{background:#fff0;border-color:var(--border-light);color:var(--text-muted)}body.dark-mode .alert-map-error{background:rgb(225 29 72 / .05);border-color:var(--text-danger);color:var(--text-danger)}.rincian-box{background:var(--bg-body);border:1.5px solid var(--border-main);border-radius:16px;padding:15px;margin-top:10px}.rincian-table{width:100%;border-collapse:collapse;font-size:13px;font-family:inherit}.rincian-table th{text-align:left;padding-bottom:10px;font-weight:800;color:var(--text-muted);text-transform:uppercase;font-size:10px;border-bottom:1.5px dashed var(--border-main)}.rincian-table td{padding:12px 0;color:var(--text-main);font-weight:700;border-bottom:1px solid var(--border-light)}.rincian-table tr:last-child td{border-bottom:none}.detail-aksi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px;padding-top:20px;border-top:1.5px dashed var(--border-light)}.detail-aksi-grid .btn-full{grid-column:span 2}.btn-action{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px;border-radius:12px;font-weight:800;font-size:13px;text-decoration:none;border:none;cursor:pointer;transition:0.3s;font-family:inherit}.btn-action.dark{background:var(--text-dark);color:var(--pure-white)}.btn-action.primary{background:var(--primary);color:var(--pure-white)}.btn-action.wa{background:var(--wa-color);color:var(--pure-white)}.btn-action.danger{background:#fff0;color:var(--text-danger);border:1.5px dashed var(--text-danger)}.btn-action.dark:hover,.btn-action.primary:hover,.btn-action.wa:hover{opacity:.9;transform:translateY(-2px)}.btn-action.danger:hover{background:var(--text-danger);color:var(--pure-white)}.btn-action.assist{background:#0ea5e9;color:var(--pure-white);border:1.5px solid #fff0}.btn-action.assist:hover{opacity:.9;transform:translateY(-2px)}.btn-action.assist{background-color:#0ea5e9!important;color:#ffffff!important;border:1.5px solid transparent!important}.btn-action.assist:hover{opacity:0.9!important;transform:translateY(-2px)!important}body.dark-mode .rincian-box,body.dark-mode .btn-map-link{background:#fff0;border-color:var(--border-light)}body.dark-mode .btn-action.dark{background:#fff0;color:var(--text-muted);border:1.5px solid var(--border-strong)}body.dark-mode .btn-action.dark:hover{background:var(--bg-body);color:var(--pure-white)}body.dark-mode .btn-action.primary{background:rgb(6 176 148 / .1);color:var(--primary);border:1.5px solid var(--primary)}body.dark-mode .btn-action.primary:hover{background:var(--primary);color:var(--pure-white)}body.dark-mode .btn-action.wa{background:rgb(34 197 94 / .1);color:#22c55e;border:1.5px solid #22c55e}body.dark-mode .btn-action.wa:hover{background:#22c55e;color:#fff}body.dark-mode .btn-action.danger{background:rgb(225 29 72 / .05);color:var(--text-danger);border:1.5px dashed var(--text-danger)}body.dark-mode .btn-action.danger:hover{background:var(--text-danger);color:#fff}body.dark-mode .btn-action.assist{background:rgb(14 165 233 / .1)!important;color:#38bdf8!important;border:1.5px solid #0ea5e9!important}body.dark-mode .btn-action.assist:hover{background:#0ea5e9!important;color:#ffffff!important}.atm-card{background:#1e293b;padding:24px;border-radius:20px;color:#fff;margin-bottom:20px;box-shadow:0 10px 25px rgb(30 41 59 / .15)}.atm-label{font-size:11px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.atm-balance{font-size:32px;font-weight:800;margin-bottom:20px;letter-spacing:-.5px}.atm-stats-title{font-size:10px;color:#94a3b8;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;padding-top:15px;border-top:1px solid rgb(255 255 255 / .1)}.atm-stats{display:flex;gap:40px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-item span{font-size:10px;color:#94a3b8;text-transform:uppercase;font-weight:700;letter-spacing:.5px}.stat-item b{font-size:14px;font-weight:800;display:flex;align-items:center;gap:4px}.stat-item b.text-in{color:#10b981}.stat-item b.text-out{color:#e11d48}.dompet-action-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:25px}.btn-dompet-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px 10px;border-radius:16px;font-weight:800;font-size:13px;background:var(--bg-card);cursor:pointer;transition:0.3s;font-family:inherit;box-shadow:0 4px 15px rgb(0 0 0 / .02)}.btn-dompet-action i{font-size:24px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%}.btn-dompet-in{color:#10b981;border:1.5px solid rgb(16 185 129 / .4)}.btn-dompet-in i{background:rgb(16 185 129 / .1)}.btn-dompet-in:hover{border-color:#10b981;transform:translateY(-3px);box-shadow:0 6px 20px rgb(16 185 129 / .1)}.btn-dompet-out{color:#e11d48;border:1.5px solid rgb(225 29 72 / .4)}.btn-dompet-out i{background:rgb(225 29 72 / .1)}.btn-dompet-out:hover{border-color:#e11d48;transform:translateY(-3px);box-shadow:0 6px 20px rgb(225 29 72 / .1)}.history-title{font-size:16px;font-weight:800;color:var(--text-main);margin-bottom:15px;display:flex;justify-content:space-between;align-items:center}.filter-mode{background:var(--bg-card);padding:15px;border-radius:16px;box-shadow:0 4px 15px rgb(0 0 0 / .02);border:1.5px solid var(--border-light);display:flex;gap:10px;margin-bottom:20px}.filter-select{flex:1;padding:12px 15px;border-radius:12px;border:1.5px solid var(--border-main);background:#fff0;color:var(--text-main);font-family:inherit;font-size:13px;font-weight:700;outline:none}.filter-select:focus{border-color:#10b981}.filter-btn{background:var(--primary);color:#fff;border:none;border-radius:12px;width:50px;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;transition:0.2s}.filter-btn:active{transform:scale(.9)}.timeline-card{background:var(--bg-card);border:1.5px solid var(--border-light);border-radius:20px;padding:5px 20px;box-shadow:0 4px 15px rgb(0 0 0 / .02)}.trx-item{display:flex;align-items:flex-start;gap:15px;padding:20px 0;border-bottom:1.5px dashed var(--border-main)}.trx-item:last-child{border-bottom:none}.trx-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;margin-top:2px}.trx-icon.icon-in{background:rgb(16 185 129 / .1);color:#10b981}.trx-icon.icon-out{background:rgb(225 29 72 / .1);color:#e11d48}.trx-info{flex:1;overflow:hidden}.trx-kategori{font-size:14px;font-weight:800;color:var(--text-main);margin:0 0 4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trx-date{font-size:11px;color:var(--text-muted);font-weight:600;display:flex;align-items:center;gap:6px}.badge-auto{background:var(--border-main);color:var(--text-muted);padding:2px 6px;border-radius:4px;font-size:9px;font-weight:800;text-transform:uppercase}.trx-amount{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.amount-val{font-size:14px;font-weight:800;white-space:nowrap}.val-in{color:#10b981}.val-out{color:#e11d48}.trx-actions{display:flex;gap:8px;margin-top:8px}.btn-edit-mutasi,.btn-delete-mutasi{padding:4px 10px;border-radius:6px;font-size:10px;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:4px;font-family:inherit;transition:0.2s;border:1.5px solid;background:#fff0;text-transform:uppercase}.btn-edit-mutasi{color:#0ea5e9;border-color:rgb(14 165 233 / .3)}.btn-delete-mutasi{color:#64748b;border-color:rgb(100 116 139 / .3)}.btn-edit-mutasi:hover{background:rgb(14 165 233 / .1)}.btn-delete-mutasi:hover{background:rgb(100 116 139 / .1);color:#e11d48;border-color:rgb(225 29 72 / .3)}body.dark-mode .atm-card{background:#0f172a;border:1px solid var(--border-main);box-shadow:none}body.dark-mode .btn-dompet-action{background:#fff0}body.dark-mode .filter-mode{background:#fff0;box-shadow:none}.sheet-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgb(0 0 0 / .6);z-index:1000;opacity:0;visibility:hidden;transition:0.3s;display:flex;align-items:flex-end;justify-content:center;backdrop-filter:blur(2px)}.sheet-content{background:var(--bg-card);width:100%;max-width:550px;border-radius:24px 24px 0 0;padding:25px 20px 35px;transform:translateY(100%);transition:0.4s cubic-bezier(.175,.885,.32,1.1);max-height:90vh;overflow-y:auto;border-top:1px solid var(--border-light)}.sheet-overlay.show{opacity:1;visibility:visible}.sheet-overlay.show .sheet-content{transform:translateY(0)}.drag-handle{width:45px;height:5px;background:var(--border-strong);border-radius:5px;margin:0 auto 25px}.btn-close-sheet{position:absolute;top:20px;right:20px;width:32px;height:32px;background:var(--bg-body);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);text-decoration:none;font-size:22px;border:1.5px solid var(--border-main);transition:0.2s}.btn-close-sheet:hover{color:var(--text-danger);border-color:var(--text-danger)}.sheet-title{font-size:18px;font-weight:800;color:var(--text-main);margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:11px;font-weight:800;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group select{width:100%;padding:14px 15px;border-radius:14px;border:1.5px solid var(--border-main);background:var(--bg-body);color:var(--text-main);font-family:inherit;font-size:14px;font-weight:700;outline:none;transition:0.3s}.form-group input:focus,.form-group select:focus{border-color:var(--primary)}.btn-submit{width:100%;padding:16px;border-radius:14px;font-weight:800;font-size:14px;color:#fff;border:none;cursor:pointer;transition:0.3s;font-family:inherit;margin-top:10px}.btn-submit.masuk{background:var(--primary)}.btn-submit.masuk:hover{box-shadow:0 4px 15px rgb(16 185 129 / .3);transform:translateY(-2px)}.btn-submit.keluar{background:#e11d48}.btn-submit.keluar:hover{box-shadow:0 4px 15px rgb(225 29 72 / .3);transform:translateY(-2px)}.btn-cetak-pdf{background:#e11d48;color:#fff;border:1.5px solid #fff0;padding:8px 14px;border-radius:10px;font-size:11px;font-weight:800;cursor:pointer;text-decoration:none;display:flex;align-items:center;gap:4px;transition:0.3s}.btn-cetak-pdf:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 4px 10px rgb(225 29 72 / .3)}.btn-cetak-expired{background:var(--bg-body);color:var(--text-muted);border:1.5px solid var(--border-main);padding:8px 14px;border-radius:10px;font-size:11px;font-weight:800;cursor:not-allowed;display:flex;align-items:center;gap:4px}body.dark-mode .btn-cetak-pdf{background:rgb(225 29 72 / .1);color:#e11d48;border-color:rgb(225 29 72 / .3)}body.dark-mode .btn-cetak-pdf:hover{background:#e11d48;color:#fff}body.dark-mode .btn-cetak-expired{background:#fff0;border-color:var(--border-strong)}.tiket-header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;padding-bottom:12px}.chat-room{background:var(--bg-body);border:1px solid var(--border-light);border-radius:12px;padding:15px;margin:15px;max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:15px}.chat-bubble{max-width:85%;padding:12px 15px;border-radius:16px;position:relative;font-size:13px;line-height:1.5}.sender-name{display:block;font-size:11px;font-weight:800;margin-bottom:5px;opacity:.8}.chat-time{display:block;font-size:10px;margin-top:8px;opacity:.6;text-align:right}.chat-user{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-main);align-self:flex-start;border-bottom-left-radius:4px}.chat-admin{background:var(--primary);color:var(--pure-white);align-self:flex-end;border-bottom-right-radius:4px}body.dark-mode .chat-admin{background:var(--primary-dark)}.menu-badge-wrapper{margin-left:auto;display:flex;align-items:center}.badge-notif-merah{background:var(--text-danger);color:#fff;font-size:10px;font-weight:800;min-width:18px;height:18px;border-radius:50px;display:flex;justify-content:center;align-items:center;padding:0 5px;box-shadow:0 2px 5px rgb(225 29 72 / .3)}.badge-baru-keren{background:linear-gradient(135deg,var(--primary),#059669);color:#fff;font-size:9px;font-weight:800;padding:3px 8px;border-radius:6px;text-transform:uppercase;box-shadow:0 2px 5px rgb(6 176 148 / .3);animation:pulseGlowBadge 2s infinite}@keyframes pulseGlowBadge{0%{box-shadow:0 0 0 0 rgb(6 176 148 / .4)}70%{box-shadow:0 0 0 6px #fff0}100%{box-shadow:0 0 0 0 #fff0}}.container-changelog{padding:30px 15px 20px 15px;max-width:550px;margin:0 auto}.header-section{text-align:center;margin-bottom:40px}.header-section h1{font-size:22px;font-weight:800;color:var(--text-main);margin-bottom:10px;margin-top:0}.header-section p{font-size:13px;color:var(--text-muted);margin:0}.timeline{position:relative;padding-left:25px}.timeline::before{content:'';position:absolute;top:10px;bottom:0;left:6px;width:2px;background:var(--border-strong);border-radius:2px}.version-card{background:var(--bg-card);border:1px solid var(--border-main);border-radius:16px;padding:20px;margin-bottom:30px;position:relative;box-shadow:0 4px 15px rgb(0 0 0 / .02);transition:0.3s}.version-card:hover{border-color:var(--primary);transform:translateY(-3px)}.version-card::before{content:'';position:absolute;left:-26px;top:22px;width:14px;height:14px;background:var(--primary);border-radius:50%;box-shadow:0 0 0 4px var(--bg-body);z-index:2;transition:0.3s}.version-card:hover::before{transform:scale(1.3)}.v-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed var(--border-light);padding-bottom:15px;margin-bottom:15px}.v-title{font-size:16px;font-weight:800;color:var(--text-main);display:flex;align-items:center;gap:6px}.v-date{font-size:11px;color:var(--text-muted);font-weight:600;background:var(--bg-body);padding:4px 8px;border-radius:6px;border:1px solid var(--border-main)}.v-list{list-style:none;padding:0;margin:0}.v-list li{margin-bottom:15px;display:flex;align-items:flex-start;gap:12px}.v-list li:last-child{margin-bottom:0}.v-badge{font-size:9px;font-weight:800;text-transform:uppercase;padding:4px 8px;border-radius:6px;letter-spacing:.5px;min-width:65px;text-align:center;margin-top:2px;flex:0 0 75px;text-align:center;margin-top:2px}.b-added{background:rgb(6 176 148 / .15);color:var(--primary);border:1px solid rgb(6 176 148 / .3)}.b-launch{background:rgb(239 68 68 / .15);color:#ef4444;border:1px solid rgb(239 68 68 / .3)}.v-desc{font-size:13px;color:var(--text-muted);flex:1;text-align:justify;text-justify:inter-word}.v-desc b{color:var(--text-main);font-weight:700;display:block;margin-bottom:2px}body.dark-mode .timeline::before{background:var(--border-main)}body.dark-mode .version-card{box-shadow:none}body.dark-mode .version-card::before{box-shadow:0 0 0 4px var(--bg-body)}body.dark-mode .b-added{background:rgb(6 176 148 / .2)}body.dark-mode .b-launch{background:rgb(239 68 68 / .2)}.header-admin{background-color:var(--primary);color:var(--pure-white);justify-content:flex-start;gap:15px;position:sticky;top:0;z-index:100;height:61px}.header-admin a,.header-admin button{color:var(--pure-white)}.container-admin-bantuan{padding:34px 15px 10px 15px;max-width:550px;margin:0 auto}body.dark-mode .header-admin{background-color:var(--bg-card);border-bottom:1px solid var(--border-main);color:var(--text-main)}body.dark-mode .header-admin a{color:var(--text-main)}body.dark-mode #themeToggle{color:var(--text-warning)!important}.admin-search-wrapper{background:var(--bg-card);border:1.5px solid var(--border-main);border-radius:16px;display:flex;align-items:center;padding:12px 18px;width:100%;margin-bottom:25px;box-shadow:0 4px 15px rgb(0 0 0 / .02);transition:0.3s}.admin-search-wrapper:focus-within{border-color:var(--primary);box-shadow:0 4px 15px rgb(6 176 148 / .15)}.admin-search-input{width:100%;border:none;outline:none;background:#fff0;color:var(--text-main);font-family:inherit;font-size:14px;margin-left:12px}.tiket-card{margin-bottom:25px!important}.tiket-header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;padding-bottom:12px}.chat-room{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:15px;margin:15px 0;max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:15px}.chat-bubble{max-width:85%;padding:12px 15px;border-radius:16px;position:relative;font-size:13px;line-height:1.5}.sender-name{display:block;font-size:11px;font-weight:800;margin-bottom:5px;opacity:.8}.chat-time{display:block;font-size:10px;margin-top:8px;opacity:.6;text-align:right}.chat-user{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-main);align-self:flex-start;border-bottom-left-radius:4px}.chat-admin{background:var(--primary);color:var(--pure-white);align-self:flex-end;border-bottom-right-radius:4px;box-shadow:0 4px 10px rgb(6 176 148 / .2)}.btn-ambil-alih{background:var(--primary);color:var(--pure-white);border:1px solid var(--primary);padding:12px 20px;border-radius:8px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-family:inherit;transition:0.3s}body.dark-mode .chat-admin,body.dark-mode .btn-ambil-alih{background:rgb(6 176 148 / .15);color:var(--primary);border:1px solid rgb(6 176 148 / .4);box-shadow:none}body.dark-mode .btn-ambil-alih:hover{background:var(--primary);color:var(--pure-white)}.action-box-custom{padding:15px;background:var(--bg-body);border:1px dashed var(--border-main);border-radius:12px;margin-top:15px}body.dark-mode .action-box-custom{background:rgb(15 23 42 / .4);border-color:var(--border-main)}.reply-action-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.reply-action-row select{flex:1 1 100%;margin-bottom:5px}.reply-action-row .btn-st{flex:1;justify-content:center}@media (min-width:600px){.reply-action-row select{flex:2;margin-bottom:0}.reply-action-row .btn-st{flex:1}}.header-bantuan{background-color:var(--primary);color:var(--pure-white);justify-content:flex-start;gap:15px;position:sticky;top:0;z-index:100;height:61px}.header-bantuan a,.header-bantuan button{color:var(--pure-white)}.container-bantuan{padding:34px 15px 10px 15px;max-width:550px;margin:0 auto}body.dark-mode .header-bantuan{background-color:var(--bg-card);border-bottom:1px solid var(--border-main);color:var(--text-main)}body.dark-mode .header-bantuan a{color:var(--text-main)}body.dark-mode #iconTema{color:var(--text-warning)!important}.form-card{background:var(--bg-card);border:1.5px solid var(--border-main);border-radius:16px;padding:20px 18px;margin-bottom:30px;box-shadow:0 4px 15px rgb(0 0 0 / .02);transition:0.3s}.form-card:focus-within{border-color:var(--primary);box-shadow:0 4px 15px rgb(6 176 148 / .15)}.form-group input,.form-group textarea{width:100%;padding:12px 16px;border-radius:12px;margin-bottom:8px;border:1px solid var(--border-main);background:var(--bg-body);color:var(--text-main);font-family:inherit;font-size:13px;outline:none;resize:vertical;transition:0.3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary)}.action-box-custom{padding:15px;background:var(--bg-body);border:1px solid var(--border-main)!important;border-radius:16px;margin-top:15px}body.dark-mode .action-box-custom{background:rgb(15 23 42 / .4);border:1px solid var(--border-main)!important}.btn-submit,.btn-kirim-chat{background:var(--primary);color:#fff;border:1px solid var(--primary);transition:0.3s;cursor:pointer;display:flex;justify-content:center;align-items:center}.btn-submit{width:100%;padding:14px;border-radius:12px;font-weight:800;gap:8px;font-size:14px}.btn-kirim-chat{width:45px;height:45px;border-radius:12px;font-size:20px}.btn-submit:hover,.btn-kirim-chat:hover{transform:translateY(-2px);box-shadow:0 4px 10px rgb(6 176 148 / .2)}body.dark-mode .btn-submit,body.dark-mode .btn-kirim-chat{background:rgb(6 176 148 / .15);color:var(--primary);border:1px solid rgb(6 176 148 / .4);box-shadow:none}body.dark-mode .btn-submit:hover,body.dark-mode .btn-kirim-chat:hover{background:var(--primary);color:#fff}.tiket-card{margin-bottom:25px!important;border-radius:16px;overflow:hidden}.tiket-header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;padding-bottom:12px}.chat-room{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:15px;margin:15px 0;max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:15px}.chat-bubble{max-width:85%;padding:12px 15px;border-radius:16px;position:relative;font-size:13px;line-height:1.5}.sender-name{display:block;font-size:11px;font-weight:800;margin-bottom:5px;opacity:.8}.chat-time{display:block;font-size:10px;margin-top:8px;opacity:.6;text-align:right}.chat-user{background:var(--primary);color:var(--pure-white);align-self:flex-end;border-bottom-right-radius:4px;box-shadow:0 4px 10px rgb(6 176 148 / .2)}.chat-admin{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-main);align-self:flex-start;border-bottom-left-radius:4px;box-shadow:0 4px 10px rgb(0 0 0 / .02)}body.dark-mode .chat-user{background:rgb(6 176 148 / .15);color:var(--primary);border:1px solid rgb(6 176 148 / .4);box-shadow:none}body.dark-mode .chat-admin{background:rgb(15 23 42 / .6);color:var(--text-main);border-color:var(--border-main)}.reply-box{display:flex;gap:10px;align-items:center}.reply-box textarea{flex:1;padding:12px 15px;border-radius:12px;border:1.5px solid var(--border-strong);background:var(--bg-card);color:var(--text-main);font-family:inherit;font-size:13px;resize:none;outline:none;max-height:100px}.reply-box textarea:focus{border-color:var(--primary)}.body-auth{background-color:var(--bg-body);display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;margin:0}.auth-box{background:var(--bg-card);border:1px solid var(--border-main);border-radius:24px;padding:40px 30px;width:100%;max-width:550px;box-shadow:0 10px 25px rgb(0 0 0 / .05);text-align:center}.auth-icon-box{width:70px;height:70px;background:rgb(6 176 148 / .1);color:var(--primary);font-size:32px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.auth-box h1{font-size:24px;font-weight:900;color:var(--text-main);letter-spacing:2px;margin-bottom:8px}.auth-box p{font-size:13px;color:var(--text-muted);margin-bottom:30px;line-height:1.5}.auth-error-msg{background:rgb(239 68 68 / .1);color:#ef4444;padding:12px;border-radius:12px;font-size:12px;font-weight:700;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgb(239 68 68 / .2)}.auth-input-group{text-align:left;margin-bottom:18px}.auth-input-group label{display:block;font-size:12px;font-weight:800;color:var(--text-main);margin-bottom:8px;margin-left:4px}.auth-input-wrapper{position:relative;display:flex;align-items:center}.auth-input-wrapper i.left-icon{position:absolute;left:15px;color:var(--text-muted);font-size:18px}.auth-input-wrapper i.right-icon{position:absolute;right:15px;color:var(--text-muted);font-size:18px;cursor:pointer;transition:0.3s}.auth-input-wrapper input{width:100%;padding:14px 15px 14px 45px;border-radius:14px;border:1px solid var(--border-main);background:var(--bg-body);color:var(--text-main);font-family:inherit;font-size:14px;outline:none;transition:0.3s}.auth-input-wrapper input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgb(6 176 148 / .1)}.btn-auth{width:100%;background:var(--primary);color:#fff;border:none;padding:15px;border-radius:14px;font-weight:800;font-size:15px;cursor:pointer;margin-top:10px;transition:0.3s}.btn-auth:hover{background:#059669;transform:translateY(-2px);box-shadow:0 5px 15px rgb(6 176 148 / .3)}.auth-copyright{margin-top:40px;font-size:11px;color:var(--text-muted)}body.dark-mode .auth-icon-box{background:rgb(6 176 148 / .2)}body.dark-mode .auth-input-wrapper input{border-color:var(--border-main)}.auth-alert-sukses{background:rgb(16 185 129 / .1);color:#10b981;padding:12px;border-radius:12px;font-size:12px;font-weight:700;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgb(16 185 129 / .2)}.vip-box{font-size:11.5px;color:var(--text-muted);margin-top:8px;margin-bottom:20px;display:flex;align-items:flex-start;gap:6px;line-height:1.5;background:var(--bg-body);padding:10px 12px;border-radius:10px;border:1px dashed var(--border-strong)}body.dark-mode .vip-box{background:rgb(15 23 42 / .4);border-color:var(--border-main)}.vip-box b{color:var(--text-main)}.input-ref-valid{background:rgb(34 197 94 / .1)!important;border-color:#22c55e!important;color:#15803d!important;font-weight:800}body.dark-mode .input-ref-valid{color:#4ade80!important}.auth-link-bawah{margin-top:30px;font-size:13px;font-weight:600;color:var(--text-muted);text-align:center}.auth-link-bawah a{color:var(--primary);text-decoration:none;font-weight:800;display:inline-block;border-bottom:2px solid rgb(6 176 148 / .2);margin-left:5px}.auth-otp-input{width:100%;padding:15px;border-radius:14px;border:2px dashed var(--primary);background:rgb(6 176 148 / .05);color:var(--primary);font-family:inherit;font-size:24px;font-weight:800;text-align:center;letter-spacing:15px;outline:none;transition:0.3s}.auth-otp-input:focus{border-style:solid;box-shadow:0 0 0 4px rgb(6 176 148 / .15)}body.dark-mode .auth-otp-input{border-color:var(--primary);background:rgb(15 23 42 / .4)}.btn-auth-batal{width:100%;background:#fff0;color:var(--text-muted);border:1px solid var(--border-strong);padding:15px;border-radius:14px;font-weight:700;font-size:14px;cursor:pointer;margin-top:10px;transition:0.3s}.btn-auth-batal:hover{background:var(--bg-body);color:var(--text-main);border-color:var(--text-muted)}.invoice-body{background-color:var(--bg-body);padding-bottom:50px}.action-bar{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:15px;max-width:800px;margin:0 auto 20px}.btn-kembali-invoice,.btn-wa-invoice,.print-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:10px;font-size:13px;font-weight:700;text-decoration:none;transition:0.3s;cursor:pointer;border:none;font-family:inherit}.btn-kembali-invoice{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-main)}.btn-wa-invoice{background:#16a34a;color:#fff}.print-btn{background:var(--primary);color:#fff}.btn-kembali-invoice:hover{background:var(--border-light);transform:translateY(-2px)}.btn-wa-invoice:hover{background:#15803d;transform:translateY(-2px);box-shadow:0 4px 10px rgb(22 163 74 / .2)}.print-btn:hover{background:#0f766e;transform:translateY(-2px);box-shadow:0 4px 10px rgb(6 176 148 / .2)}.invoice-paper{background:#fff;color:#1e293b;max-width:800px;margin:0 auto;padding:40px;border-radius:16px;box-shadow:0 10px 30px rgb(0 0 0 / .05)}body.dark-mode .invoice-paper{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-main)}.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px dashed #e2e8f0;padding-bottom:20px;margin-bottom:25px}body.dark-mode .invoice-header{border-bottom-color:var(--border-main)}.kop-kiri img{max-height:60px;object-fit:contain;margin-bottom:10px}.status-badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.status-lunas{background:#d1fae5;color:#059669;border:1px solid #a7f3d0}.status-dp{background:#fef08a;color:#b45309;border:1px solid #fde047}.status-belum{background:#ffe4e6;color:#e11d48;border:1px solid #fecdd3}body.dark-mode .status-lunas{background:rgb(16 185 129 / .1);border-color:rgb(16 185 129 / .2);color:#34d399}body.dark-mode .status-dp{background:rgb(245 158 11 / .1);color:#fbbf24;border-color:rgb(245 158 11 / .2)}body.dark-mode .status-belum{background:rgb(225 29 72 / .1);border-color:rgb(225 29 72 / .2);color:#fb7185}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.info-box{background:#f8fafc;padding:15px;border-radius:12px;border:1px dashed #cbd5e1}body.dark-mode .info-box{background:rgb(15 23 42 / .4);border-color:var(--border-main)}.info-box h3{margin:0 0 10px 0;font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.info-box p{margin:0 0 5px 0;font-size:13px;font-weight:600}.client-name{font-size:16px!important;font-weight:800!important;color:var(--primary)!important;margin-bottom:8px!important}.invoice-table th{background:#f8fafc;color:#64748b;border-bottom:2px solid #e2e8f0}body.dark-mode .invoice-table th{background:rgb(15 23 42 / .6);color:var(--text-muted);border-bottom-color:var(--border-main)}body.dark-mode .invoice-table tr{border-bottom:1px solid var(--border-main)!important}body.dark-mode .invoice-table td{color:var(--text-main)!important}.bottom-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;margin-bottom:30px}.notes-section{font-size:12px;color:#64748b}body.dark-mode .notes-section{color:var(--text-muted)}.totals-section{background:#f8fafc;padding:20px;border-radius:12px;border:1px solid #e2e8f0}body.dark-mode .totals-section{background:rgb(15 23 42 / .4);border-color:var(--border-main)}.total-row{display:flex;justify-content:space-between;margin-bottom:10px;font-size:13px;font-weight:600;color:#475569}body.dark-mode .total-row{color:var(--text-muted)}.grand-total{margin-top:15px;padding-top:15px;border-top:2px dashed #cbd5e1;font-size:16px;font-weight:900;color:var(--primary)}body.dark-mode .grand-total{border-top-color:var(--border-strong)}.terima-kasih{text-align:center;font-size:12px;font-weight:400;color:#64748b;font-style:italic;margin-top:20px}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body{background:white!important;padding:0!important;color:#1e293b!important}.action-bar,.bottom-nav,.header,#btnTourInvoice,.no-print{display:none!important}.invoice-paper{box-shadow:none!important;border:none!important;padding:0!important;width:100%!important;max-width:100%!important}@page{margin:1.5cm}}@media (max-width:600px){.action-bar{flex-wrap:nowrap;gap:6px;padding:10px 15px;justify-content:space-between}.btn-kembali-invoice,.btn-wa-invoice,.print-btn{flex:1;padding:12px 5px;font-size:11px;justify-content:center;text-align:center;white-space:nowrap}.btn-kembali-invoice i,.btn-wa-invoice i,.print-btn i{display:none}.invoice-header{flex-direction:column;align-items:flex-start;text-align:left;gap:15px}.kop-kiri,.header-right{max-width:100%!important;display:block;text-align:left!important;margin-top:0}.header-right{margin-top:10px}.info-grid,.bottom-grid{flex-direction:column;grid-template-columns:1fr;gap:15px}.invoice-paper{padding:20px 15px}}.body-langganan{background-color:var(--text-dark);display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;box-sizing:border-box}.langganan-card{background:var(--bg-card,white);padding:40px;border-radius:20px;box-shadow:0 10px 30px rgb(0 0 0 / .05);max-width:550px;width:100%;text-align:center;box-sizing:border-box;position:relative;overflow:hidden}.langganan-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:8px;background:linear-gradient(to right,var(--text-danger),var(--primary))}.langganan-card h1{color:var(--text-main);margin-bottom:10px}.langganan-card .subtitle{color:var(--text-muted);margin-bottom:30px;font-size:14px}.paket-container{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.paket-radio{display:none}.paket-card{background:var(--bg-card);border:2px solid var(--border-main);border-radius:16px;padding:20px 25px;cursor:pointer;transition:0.3s ease;position:relative;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}.paket-card-left{display:flex;align-items:center;gap:15px;text-align:left}.paket-radio:checked+.paket-card{border-color:var(--primary);background:var(--bg-body)}.radio-custom{width:24px;height:24px;border:2px solid var(--border-main);border-radius:50%;position:relative;transition:0.3s;flex-shrink:0}.paket-radio:checked+.paket-card .radio-custom{border-color:var(--primary);border-width:6px}.paket-title{font-size:16px;font-weight:800;color:var(--text-main);margin-bottom:4px}.paket-desc{font-size:12px;color:var(--text-muted)}.paket-price{text-align:right}.price-month{font-size:22px;font-weight:900;color:var(--text-main);transition:0.3s}.paket-radio:checked+.paket-card .price-month{color:var(--primary)}.price-total{font-size:11px;color:var(--text-muted);margin-top:2px}.paket-card.best-value{border-color:var(--primary)}.badge-hemat{position:absolute;top:-12px;right:25px;background:var(--text-danger);color:#fff;padding:5px 15px;border-radius:20px;font-size:10px;font-weight:800;white-space:nowrap;box-shadow:0 4px 10px rgb(0 0 0 / .1)}.voucher-container{background:var(--bg-body);border:1px dashed var(--border-strong);padding:20px;border-radius:14px;margin:20px 0 25px;text-align:center;box-sizing:border-box;width:100%}.voucher-container label{display:block;font-size:14px;font-weight:800;color:var(--text-main);margin-bottom:12px}.voucher-input-group{display:flex;gap:10px;width:100%;box-sizing:border-box}.voucher-input-group input{flex:1;min-width:0;padding:14px 15px;border-radius:10px;border:1px solid var(--border-main);background:var(--bg-card);color:var(--text-main);font-family:inherit;font-size:14px;font-weight:700;text-transform:uppercase}.voucher-input-group input:focus{border-color:var(--primary);outline:none}.voucher-input-group button{background:var(--text-main);color:var(--bg-card);border:none;border-radius:10px;padding:0 20px;font-weight:800;font-family:inherit;cursor:pointer;transition:0.3s;white-space:nowrap}.voucher-input-group button:hover{opacity:.9}#voucher-msg{margin-top:12px;font-size:12px;font-weight:700;display:none}.msg-success{color:var(--text-success)}.msg-error{color:var(--text-danger)}.btn-pay{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;background:var(--primary);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:800;cursor:pointer;transition:0.3s;font-family:inherit;margin-bottom:15px;box-shadow:0 8px 20px rgb(0 0 0 / .1);box-sizing:border-box}.btn-pay:hover{opacity:.9;transform:translateY(-2px)}.btn-wa-outline{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px;background:#fff0;color:var(--primary);border:2px solid var(--border-main);border-radius:12px;font-size:14px;font-weight:800;text-decoration:none;transition:0.3s;box-sizing:border-box}.btn-wa-outline:hover{background:var(--bg-body);border-color:var(--primary)}@media (max-width:480px){.langganan-card{padding:25px 15px}.paket-card{padding:15px}.price-month{font-size:18px}.voucher-input-group{flex-direction:column}.voucher-input-group button{padding:14px}}.btn-mengerti-premium{background:var(--primary);color:#fff;border:none;padding:12px 35px;border-radius:12px;font-size:15px;font-weight:800;font-family:'Plus Jakarta Sans',sans-serif;cursor:pointer;transition:all 0.3s ease;box-shadow:0 8px 15px rgb(6 176 148 / .2);margin-top:15px;letter-spacing:.5px}.btn-mengerti-premium:hover{transform:translateY(-3px);box-shadow:0 12px 20px rgb(6 176 148 / .3);filter:brightness(1.1)}.btn-mengerti-premium:active{transform:translateY(0)}.badge-status{padding:6px 14px;border-radius:50px;font-size:11px;font-weight:700;display:inline-block;text-transform:uppercase;letter-spacing:.5px}.badge-pending{background-color:var(--bg-warning);color:var(--text-warning);border:1px solid var(--border-warning)}.badge-lunas{background-color:var(--bg-success);color:var(--text-success);border:1px solid var(--border-success)}.badge-batal{background-color:var(--bg-danger);color:var(--text-danger);border:1px solid var(--border-danger)}.badge-info{background-color:var(--bg-info);color:var(--text-info);border:1px solid var(--border-info)}input,select,textarea,button,form{box-sizing:border-box;max-width:100%}input[type="text"],input[type="number"],input[type="email"],input[type="password"],select,textarea,button{-webkit-appearance:none;-moz-appearance:none;appearance:none}