*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Noto Sans,DejaVu Sans,sans-serif;color:#1c2b26;background:#eef1ee}a{color:#0a5c3c;text-decoration:none}.wrap{display:flex;min-height:100vh}.side{width:244px;background:#0a3527;color:#dcebe4;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex-shrink:0}.brand{display:flex;align-items:center;padding:16px;border-bottom:1px solid #155c43}.logo{width:34px;height:34px;background:#22b573;border-radius:9px;color:#fff;font-weight:800;font-size:15px;text-align:center;line-height:34px;margin-right:10px}.brand b{font-size:16.5px;color:#fff;display:block}.brand span{font-size:10px;color:#9fc6b4;letter-spacing:.5px}.menu{padding:12px 10px;flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin}.menu a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;font-size:13.5px;margin-bottom:3px;color:#cfe4d9}.menu a svg{opacity:.75;flex-shrink:0}.menu a.on{background:#14684a;color:#fff;font-weight:700;box-shadow:inset 3px 0 #22b573}.menu a.on svg{opacity:1}.menu .bdg{background:#e8b13c;color:#3a2a00;font-size:10.5px;font-weight:800;border-radius:9px;padding:1px 7px;margin-left:auto}.side .spacer{flex:0 0 0}.device{flex-shrink:0;min-width:0;max-width:calc(100% - 16px);margin:10px 8px;background:#0e4633;border:1px solid #1a6a4d;border-radius:10px;padding:11px 10px}.device .lbl{font-size:10px;letter-spacing:1px;color:#9fc6b4}.device .num{font-size:13px;color:#fff;font-weight:700;margin:3px 0 6px;word-break:break-all}.device .pills{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;min-width:0}.device .pill{font-size:9px;padding:2.5px 6px;white-space:nowrap;text-align:center}.side>form{flex-shrink:0;min-width:0;max-width:100%}.logout{min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;margin:0 8px 14px;background:#082a1f;color:#cfe4d9;border:1px solid #1a6a4d;border-radius:9px;padding:9px 8px;font-size:12.5px;cursor:pointer;width:calc(100% - 16px)}.pill{display:inline-block;font-size:10.5px;font-weight:800;border-radius:20px;padding:2.5px 9px}.pill.on{background:#22b573;color:#fff}.pill.off{background:#8a968f;color:#fff}.pill.warn{background:#e8b13c;color:#3a2a00}.pill.red{background:#d9534a;color:#fff}.pill.blue{background:#2f7fc4;color:#fff}.main{flex:1;display:flex;flex-direction:column;min-width:0}.head{background:#fff;border-bottom:1px solid #d9e2dc;padding:13px 20px;display:flex;align-items:center}.head h1{font-size:18px}.head p{font-size:12px;color:#68776f;margin-top:2px}.head .right{margin-left:auto;display:flex;align-items:center;gap:10px}.content{padding:18px 20px}.stats{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid #dfe7e1;border-radius:12px;padding:14px 18px;min-width:168px}.stat .v{font-size:22px;font-weight:800;color:#0a3527}.stat .v em{font-style:normal;color:#0e9f6e;font-size:13px}.stat .k{font-size:10.5px;color:#68776f;letter-spacing:.4px;margin-top:2px}.card{background:#fff;border:1px solid #e2eae4;border-radius:14px;padding:16px;margin-bottom:16px;box-shadow:0 1px 3px #0a35270d}.card h3{font-size:13px;letter-spacing:.5px;color:#43534b;margin-bottom:10px}.btn{display:inline-block;border:none;border-radius:10px;font-size:13px;font-weight:800;padding:9px 16px;cursor:pointer;text-align:center}.btn.green{background:#0e9f6e;color:#fff;box-shadow:0 2px 6px #0e9f6e59}.btn.red{background:#d9534a;color:#fff}.btn.dark{background:#0a3527;color:#fff}.btn.ghost{background:#fff;border:1.5px solid #cfe0d6;color:#0a5c3c}.btn.small{padding:6px 11px;font-size:12px}input[type=text],input[type=password],input[type=number],input[type=url],select,textarea{width:100%;border:1.5px solid #cfdccf;border-radius:9px;padding:9px 12px;font-size:13.5px;font-family:inherit;background:#fff;color:#1c2b26}textarea{line-height:1.55}label.f{display:block;font-size:12px;font-weight:700;color:#43534b;margin:12px 0 5px}label.f:first-child{margin-top:0}.hint{font-size:11.5px;color:#68776f;margin-top:4px;line-height:1.45}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.ok{background:#e9f9f0;border:1px solid #bfe6d2;color:#0a5c3c;border-radius:9px;padding:9px 13px;font-size:13px;margin-bottom:14px}.err{background:#fdeceb;border:1px solid #f3c1bd;color:#8f2b24;border-radius:9px;padding:9px 13px;font-size:13px;margin-bottom:14px}table.tbl{width:100%;border-collapse:collapse;font-size:13px}table.tbl th{text-align:left;font-size:11px;letter-spacing:.5px;color:#68776f;padding:7px 8px;border-bottom:2px solid #e6ede8}table.tbl td{padding:8px;border-bottom:1px solid #edf2ee;vertical-align:top}td.r,th.r{text-align:right}.lastmsg{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.cols3{display:flex;gap:0;background:#fff;border:1px solid #dfe7e1;border-radius:12px;overflow:hidden;min-height:560px}.list{width:292px;border-right:1px solid #d9e2dc;padding:10px;overflow-y:auto;max-height:78vh}.list h3{font-size:12px;letter-spacing:.6px;color:#68776f;margin:2px 4px 9px}.conv{display:block;border-radius:10px;padding:10px 11px;margin-bottom:5px;border:1.5px solid transparent;color:#1c2b26}.conv:hover{background:#f4f8f5}.conv.on{background:#eef7f1;border-color:#bfe6d2}.conv .nm{font-size:13.5px;font-weight:700;display:flex}.conv .tm{margin-left:auto;font-size:10.5px;color:#93a29a;font-weight:400}.conv .sn{font-size:12px;color:#5d6f66;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv .tag{margin-top:5px}.chat{flex:1;display:flex;flex-direction:column;background:#ece5dd;min-width:0}.chathead{background:#f6f3ef;border-bottom:1px solid #ddd3c6;padding:10px 16px}.chathead b{font-size:14.5px}.chathead span{display:block;font-size:11.5px;color:#68776f;margin-top:1px}.msgs{flex:1;padding:14px 22px 8px;overflow-y:auto;max-height:62vh}.row{display:flex;margin-bottom:8px}.row.me{justify-content:flex-end}.bub{max-width:78%;border-radius:10px;padding:8px 11px 6px;font-size:13px;line-height:1.5;box-shadow:0 1px 1px #00000014;white-space:pre-wrap;word-break:break-word}.bub.in{background:#fff;border-top-left-radius:2px}.bub.out{background:#d9fdd3;border-top-right-radius:2px}.bub.hum{background:#ffe9c9}.bub .meta{text-align:right;font-size:10px;color:#7d8a83;margin-top:3px}.bub .src{display:inline-block;background:#0a5c3c;color:#eafff4;font-size:9.5px;font-weight:800;border-radius:6px;padding:1.5px 6px;margin-right:5px}.bub .src.h{background:#a86e14}.syspill{text-align:center;margin:9px 0}.syspill span{background:#fdf3c6;border:1px solid #ecd97e;color:#6b5d10;font-size:11px;font-weight:700;border-radius:8px;padding:4px 12px;display:inline-block}.inputbar{background:#f6f3ef;border-top:1px solid #ddd3c6;padding:10px 14px;display:flex;flex-direction:column;gap:8px}.inputbar form{display:flex;gap:8px;width:100%;align-items:stretch}.inputbar textarea{flex:1;min-width:0;width:auto;font-size:16px;padding:12px 16px;border-radius:18px;resize:none}.inputbar .btn{padding:12px 22px;font-size:14.5px;white-space:nowrap;border-radius:18px}.inputbar form.act .btn{width:100%}.ctx{width:304px;border-left:1px solid #d9e2dc;padding:14px;overflow-y:auto;max-height:78vh;background:#fff}.ctx h3{font-size:12px;letter-spacing:.6px;color:#68776f;margin:12px 0 8px}.ctx h3:first-child{margin-top:0}.ctx .box{border:1.5px solid #e2eae4;border-radius:11px;padding:11px 12px;margin-bottom:6px}.ctx .nm{font-size:14.5px;font-weight:800}.ctx .sub{font-size:11.5px;color:#68776f;margin-top:1px}.kv{display:flex;font-size:12px;margin-top:5px}.kv .k{color:#68776f;width:92px;flex-shrink:0}.kv .v{font-weight:700}.scorebar{height:8px;background:#e7eee9;border-radius:5px;margin:9px 0 4px}.scorebar i{display:block;height:8px;background:#e8873a;border-radius:5px}.chip{display:inline-block;background:#eef7f1;border:1px solid #bfe6d2;color:#0a5c3c;font-size:11px;font-weight:700;border-radius:14px;padding:3px 9px;margin:0 4px 5px 0}.note{font-size:11px;color:#68776f;margin-top:6px;line-height:1.45}.log{font-size:11.5px;color:#43534b;line-height:1.55}.loginwrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a3527}.logincard{background:#fff;border-radius:16px;padding:28px 26px;width:340px;max-width:92vw}.logincard .logo{margin:0 auto 10px}.logincard h1{font-size:19px;text-align:center}.logincard p{font-size:12.5px;color:#68776f;text-align:center;margin:4px 0 14px}.mtop,.tabbar{display:none}.menurow{display:flex;align-items:center;gap:12px;padding:13px 10px;border-bottom:1px solid #eef3ef;color:#1c2b26}.menurow:last-child{border-bottom:none}.menurow .micon{width:40px;height:40px;border-radius:12px;background:#eef7f1;color:#0a5c3c;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menurow .mtx{flex:1;min-width:0}.menurow .mtx b{display:block;font-size:14px}.menurow .mtx span{display:block;font-size:11.5px;color:#68776f;margin-top:1px}.menurow .mchev{color:#b6c4bb;display:flex}@media(max-width:900px){.side{display:none}.mtop{display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:40;background:linear-gradient(135deg,#0a3527,#0d4a34);color:#fff;padding:11px 14px;box-shadow:0 2px 12px #0a352759}.mtop .logo{width:32px;height:32px;line-height:32px;font-size:14px;margin-right:0;border-radius:9px}.mtop .mtitle{flex:1;min-width:0}.mtop .mtitle b{display:block;font-size:15.5px;line-height:1.15}.mtop .mtitle span{display:block;font-size:10px;letter-spacing:1.2px;color:#9fc6b4}.mtop .pill{white-space:nowrap}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fffffff7;border-top:1px solid #e0e8e2;box-shadow:0 -3px 14px #0a352714;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 0 3px;color:#84948a;font-size:10.5px;font-weight:700;border-radius:10px;position:relative}.tabbar a.on{color:#0a8f5f}.tabbar a.on:before{content:"";position:absolute;top:-7px;left:50%;transform:translate(-50%);width:26px;height:3px;border-radius:3px;background:#22b573}.tabbar .tic{position:relative;display:flex}.tabbar .tbdg{position:absolute;top:-5px;right:-11px;background:#d9534a;color:#fff;font-size:9.5px;font-weight:800;min-width:17px;height:17px;line-height:17px;border-radius:9px;text-align:center;padding:0 4px}.main{padding-bottom:86px}.head{padding:13px 14px 11px;flex-wrap:wrap;gap:8px}.head .pill{white-space:nowrap;font-size:10px;padding:3px 8px}.head h1{font-size:16.5px}.head p{font-size:11.5px}.head .right{margin-left:0}.content{padding:12px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{min-width:0;padding:12px 14px;border-radius:13px}.stat .v{font-size:19px}.card{padding:13px;border-radius:13px;margin-bottom:12px}table.tbl{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.cols3{flex-direction:column;min-height:0}.chat{order:1}.list{order:2}.ctx{order:3}.list,.ctx{width:100%;max-height:none;border:none;border-top:1px solid #d9e2dc}.msgs{max-height:52vh;padding:12px 12px 6px}.bub{max-width:88%;font-size:12.8px}.inputbar{padding:10px 12px}.grid2{grid-template-columns:1fr}.btn{padding:10px 15px}}.proofimg{max-width:230px;width:100%;border-radius:10px;display:block;margin-bottom:6px}.vfy{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.02em}.vfy.v-terverifikasi{background:#dcfce7;color:#166534}.vfy.v-nominal_tidak_cocok,.vfy.v-rekening_tidak_cocok{background:#fee2e2;color:#991b1b}.vfy.v-perlu_cek_manual,.vfy.v-belum_terverifikasi{background:#fef3c7;color:#92400e}.vfy.v-bukan_bukti_transfer{background:#e5e7eb;color:#374151}.vfyrow{margin-bottom:8px}.vfyrow .vfy{margin-top:0}.log{display:flex;flex-direction:column}.logrow{display:flex;gap:9px;padding:9px 2px;border-bottom:1px solid #eef3f0;align-items:flex-start}.logrow:last-child{border-bottom:none}.logtime{font-weight:700;font-size:12.5px;color:#33503f;min-width:40px;padding-top:1px}.logdot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex:none;background:#b9c6bf}.logdot.green{background:#22b573}.logdot.amber{background:#e8a13a}.logdot.red{background:#d9534f}.logbody{min-width:0}.loglabel{font-size:13.5px;font-weight:700;color:#1d2b23}.logconv{font-size:11px;font-weight:700;color:#0e6b4f;background:#e7f4ec;border-radius:20px;padding:1px 8px;text-decoration:none;white-space:nowrap}.logdetail{font-size:12.5px;color:#5d6f66;margin-top:1px;overflow-wrap:anywhere}.prodgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.prodcard{border:1px solid #dfe7e1;border-radius:12px;padding:13px 14px;display:flex;flex-direction:column;gap:7px}.prodtop{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.prodname{font-size:15px;line-height:1.3}.prodprice{font-size:15px;font-weight:800;color:#0e6b4f}.proddesc{font-size:12.5px;color:#5d6f66;margin:0}.prodlink{font-size:12px;color:#68776f}.prodlink .ok{color:#0e6b4f}.prodlink .belum{color:#c0392b}.prodacts{display:flex;gap:7px;flex-wrap:wrap;margin-top:2px}.prodacts form{display:inline}
