:root{--green:#14634a;--dark:#123d31;--muted:#78877e;--line:#e4ebe5;--bg:#f5f8f5;font-family:Inter,Segoe UI,Arial,sans-serif;color:#243d32;background:var(--bg);font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{background:var(--green);border:1px solid var(--green);color:#fff;border-radius:8px;padding:11px 17px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;line-height:1.3}button:hover,.button:hover{background:#0c4b36;text-decoration:none}.secondary{background:#fff;color:#426050;border-color:#d8e2da}.secondary:hover{background:#f0f5f1}.small{padding:7px 12px;font-size:12px}.danger{background:#a43a3a;border-color:#a43a3a}.sidebar{position:fixed;left:0;top:0;bottom:0;width:244px;padding:30px 18px;background:var(--dark);color:#d9e9df;overflow-y:auto;z-index:30}.brand{display:flex;gap:12px;align-items:center;color:#fff;font-size:25px;font-weight:700;padding:0 12px 28px}.brand:hover{text-decoration:none}.brand small{font-size:9px;letter-spacing:2px;margin-top:5px;color:#a5cbb7}.nav-label{font-size:9px;letter-spacing:1.7px;color:#82a995;margin:24px 13px 10px}.sidebar nav a{padding:12px 15px;display:flex;gap:12px;align-items:center;margin-bottom:4px;color:#c4d8ce;border-radius:8px}.sidebar nav a:hover,.sidebar nav a.selected{background:#ffffff14;color:#fff;text-decoration:none}.sidebar nav a.selected{box-shadow:inset 3px 0 #b6d597}.workspace{margin-left:244px}.topbar{background:#fff;border-bottom:1px solid var(--line);min-height:82px;padding:17px 36px;display:flex;justify-content:space-between;align-items:center;gap:18px}.topbar-label{font-weight:600;color:#506658;font-size:13px}.account{display:flex;align-items:center;gap:22px}.account strong{font-size:12px}.account small{font-size:9px;letter-spacing:1.2px;color:var(--muted);margin-top:4px}.menu-button{display:none}main{padding:34px 36px;max-width:1700px;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2px;color:#7b977c;margin-bottom:9px}h1{font-size:36px;letter-spacing:-.8px;margin:0 0 10px;font-weight:700}h2{font-size:16px;margin:0;font-weight:650}p{color:#6b7c70;line-height:1.65;margin:6px 0 0}.page-head p{font-size:12px;max-width:800px}.actions{display:flex;gap:10px;flex-wrap:wrap}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:22px;overflow:hidden;box-shadow:0 3px 9px #213b2c02}.panel-head{padding:21px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.unpadded{padding:0 0 18px}.padded{padding:24px}.pill{background:#f0f5ef;color:#647d69;padding:5px 9px;border-radius:7px;font-size:10px}.stats{display:grid;grid-template-columns:1.25fr 1fr 1fr .9fr;gap:18px;margin-bottom:24px}.stat{padding:16px 20px;background:#fff;border:1px solid var(--line);border-radius:12px;min-height:100px;display:flex;flex-direction:column;justify-content:center}.stat span{font-size:11px;color:#6d7f71}.stat strong{font-size:25px;margin:13px 0 10px;letter-spacing:-.7px;white-space:nowrap;font-weight:650}.stat em{font-size:12px;font-weight:400;letter-spacing:0;font-style:normal}.stat small{font-size:10px;color:#8a998e}.featured{background:var(--green);border-color:var(--green);color:#fff;background-image:radial-gradient(ellipse at 100% 0,#ffffff12,transparent 70%)}.featured span,.featured small{color:#c0d8c9}.green{color:var(--green)}.columns{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}.balance-row{display:flex;align-items:center;gap:15px;padding:12px 18px;border-bottom:1px solid #eef2ed;font-size:12px}.balance-row:last-child{border-bottom:0}.balance-row small{margin-top:5px;color:#91a091;font-size:10px}.book-icon{width:35px;height:35px;border-radius:9px;background:#edf4ed;display:grid;place-items:center;font-size:19px;color:#66846a}.amount{margin-left:auto;font-size:14px;white-space:nowrap}.group-row{padding:12px 18px;display:flex;justify-content:space-between;gap:18px;font-size:12px;border-bottom:1px solid #f0f3ef}.hint{font-size:11px;padding:15px 24px;color:#849486}.padded .hint{padding:0;margin-top:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-weight:500;font-size:10px;color:#829182;background:#fafcf9;padding:13px 22px;white-space:nowrap}td{padding:10px 14px;border-bottom:1px solid #eff3ed;vertical-align:middle;line-height:1.55}td small{display:block;font-size:10px;color:#8a9a8d;overflow-wrap:anywhere}.money{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.right{text-align:right}.status{font-size:9px;letter-spacing:.4px;font-weight:700;padding:5px 9px;border-radius:5px;display:inline-block;white-space:nowrap}.status.draft{background:#fff4db;color:#9a791c}.status.posted{background:#e9f5ec;color:#3f8154}.status.batal{background:#faebea;color:#b36660}.notice{padding:16px 20px;border-radius:9px;border:1px solid;margin-bottom:22px;font-size:12px;line-height:1.65}.notice ul{padding-left:19px;margin:6px 0}.notice p{margin:5px 0}.notice.info{background:#edf5f0;border-color:#d6e7dc;color:#507761}.notice.warning{background:#fff8e8;border-color:#f1e4bc;color:#93763e}.notice.error{background:#fff0ed;border-color:#efc9c1;color:#a34335}.notice.success{background:#eaf5ed;border-color:#cbe5d2;color:#35724a}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;min-width:0}.field label{font-size:12px;font-weight:600;color:#526a59}.required{color:#b06342}input,select,textarea{border:1px solid #dce5dd;border-radius:7px;padding:11px 12px;background:#fff;color:#344e3d;max-width:100%;outline:none;min-width:0}input:focus,select:focus,textarea:focus{border-color:#8cb395;box-shadow:0 0 0 3px #eaf1e8}textarea{resize:vertical;line-height:1.65}.field small{font-size:10px;color:#839186;line-height:1.65}.field .field-error{color:#ad5348}.form-panel{max-width:1060px;padding:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:21px;border-top:1px solid var(--line);margin-top:16px}.filters{padding:20px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--line)}.filters input[name=q]{flex:1;min-width:150px}.filters input,.filters select{font-size:11px;padding:9px}.empty{padding:40px 24px;text-align:center;color:#899788;font-size:12px;line-height:1.8}.muted{color:#8a998e;font-size:11px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;font-size:11px;color:#82917f;gap:16px}.pagination>div{display:flex;gap:15px}.disabled{color:#c2cbc2}footer{display:flex;justify-content:space-between;font-size:10px;color:#9ba798;padding:17px 0;margin-top:26px;border-top:1px solid #e5ebe0}.detail-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px}.big-money{font-size:32px;margin-top:14px}.details{display:grid;grid-template-columns:190px 1fr;gap:20px;font-size:13px;padding:10px 0}.details dt{color:#8c9a8c}.details dd{margin:0;overflow-wrap:anywhere}.preserve{white-space:pre-wrap}.cancel-box{margin-top:30px;border-top:1px solid var(--line);padding-top:20px}.cancel-box summary{cursor:pointer;color:#a76e58}.cancel-box form{max-width:650px;margin-top:20px}.summary-text{width:100%;height:460px;background:#fafcf9;border:1px solid #e4ebe1;font-family:inherit;line-height:1.8;font-size:13px}.login-main{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at top left,#e4eee0,transparent 60%),radial-gradient(ellipse at bottom right,#e2ebe0,transparent 60%);padding:30px}.login-card{max-width:450px;width:100%;padding:40px;background:#fff;border:1px solid #e0e9dc;border-radius:19px;box-shadow:0 20px 70px #244f2920;text-align:center}.login-card h1{font-size:30px}.login-card p{font-size:12px;margin-bottom:30px}.login-card form{text-align:left}.wide{width:100%;justify-content:space-between;padding:13px 17px;margin-top:6px}.login-foot{font-size:10px;color:#97a18f;line-height:1.8;border-top:1px solid var(--line);padding-top:22px;margin-top:28px}small{display:block}button:disabled{opacity:.6;cursor:wait}@media(min-width:1600px){.stat strong{font-size:29px}}@media(max-width:1200px){.stats{grid-template-columns:1fr 1fr}.columns{grid-template-columns:1fr}.stat strong{font-size:24px}.topbar{padding:17px 25px}main{padding:30px 25px}.page-head{align-items:flex-start}}@media(max-width:800px){.sidebar{transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:translate(0);box-shadow:20px 0 60px #0003}.workspace{margin-left:0}.menu-button{display:block;padding:7px 10px}.topbar{padding:15px;min-height:70px}.topbar-label{display:none}.account{margin-left:auto;gap:15px}main{padding:24px 16px}.page-head{flex-direction:column;gap:15px}h1{font-size:25px}.stats{gap:10px}.stat{padding:18px 14px;min-height:125px}.stat strong{font-size:20px}.form-grid{grid-template-columns:1fr}.form-panel{padding:20px}.filters{padding:15px}.filters input[type=date]{width:calc(50% - 5px)}td,th{padding:13px 15px}.details{grid-template-columns:1fr;gap:8px}.details dd{margin-bottom:14px}.balance-row{padding:18px;flex-wrap:wrap}.panel-head{padding:19px}.unpadded{padding:0 0 18px}.pagination{flex-direction:column;align-items:flex-start}.login-card{padding:30px 24px}.stat em{font-size:10px}.form-actions{flex-wrap:wrap}.summary-text{font-size:12px}footer{gap:15px}.big-money{font-size:27px}}.file-picker{display:flex;gap:12px;align-items:center;position:relative;border:1px solid #dce5dd;border-radius:7px;padding:9px;font-size:11px;min-height:44px}.file-picker input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.file-button{border:1px solid #dce5dd;padding:5px 9px;border-radius:5px;background:#f5f8f3;white-space:nowrap}.file-picker [data-file-name]{overflow-wrap:anywhere}.file-picker:focus-within{box-shadow:0 0 0 3px #eaf1e8}.stat{min-width:0}.stat strong{white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.book-actions{display:flex;gap:7px;flex-wrap:wrap;min-width:145px;margin-bottom:6px}.book-table td{padding:18px 16px}.book-table th{padding:13px 16px}.book-table td[data-label="Nama Buku Kas"],.book-table td[data-label="Deskripsi Saldo Awal"]{overflow-wrap:anywhere;min-width:130px}.book-summary{grid-template-columns:1fr 1fr}@media(max-width:800px){.book-table thead{display:none}.book-table,.book-table tbody,.book-table tr{display:block;width:100%}.book-table tr{padding:16px;border-bottom:1px solid var(--line)}.book-table td[data-label]{display:grid;grid-template-columns:125px minmax(0,1fr);gap:6px 12px;border:0;padding:8px 0;text-align:left;white-space:normal;min-width:0}.book-table td[data-label]:before{content:attr(data-label);font-size:10px;font-weight:500;color:#829182}.book-table td[data-label]>small{grid-column:2}.book-table td[data-label]>strong{grid-column:2}.book-table td.empty{display:block;border:0}.book-actions{min-width:0}.book-actions .button{white-space:normal;text-align:left;justify-content:flex-start}.book-summary{grid-template-columns:1fr}}.balance-filters{padding:0 0 22px;border:0}.balance-filters label{display:flex;align-items:center;gap:8px;font-size:12px}.balance-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.balance-stats .stat{border:0;min-height:100px;padding:20px;color:#fff}.balance-stats .stat span{color:#fff;font-size:14px}.balance-stats .stat strong{font-size:32px;letter-spacing:0;margin-bottom:0}.balance-purple{background:#6554ff}.balance-green{background:#2bc66b}.balance-pink{background:#ff5c91}.balance-report{padding:16px}.balance-report table{font-size:14px;min-width:600px}.balance-report th{background:#eff4fa;color:#243d52;font-size:12px}.balance-report td,.balance-report th{padding:10px 14px;border:1px solid #dce5ef}.balance-report tbody tr:nth-child(odd){background:#eff4fa}.balance-report .balance-closing{background:#fff;font-weight:700}.balance-report .hint{padding:20px 0 0}@media(max-width:800px){.balance-stats{grid-template-columns:1fr;gap:12px}.balance-stats .stat{min-height:135px;padding:25px}.balance-report{padding:16px}.balance-report td,.balance-report th{padding:18px 16px}.balance-filters label{width:100%}.balance-filters input[type=date]{width:auto;flex:1}}.login-card h1{margin-bottom:28px}.password-input{position:relative}.password-input input{width:100%;padding-right:50px}.password-reveal{position:absolute;right:6px;top:50%;transform:translateY(-50%);padding:8px;border:0;background:transparent;color:#718878;border-radius:6px;touch-action:none;-webkit-user-select:none;user-select:none}.password-reveal:hover,.password-reveal[aria-pressed=true]{background:#edf5ef;color:var(--green)}.password-reveal:focus-visible{outline:2px solid var(--green);outline-offset:1px}.login-logo{display:block;width:104px;height:auto;max-width:100%;margin:0 auto 24px}.sidebar-logo{display:block;width:48px;height:auto;flex-shrink:0;background:#fff;border-radius:8px;padding:4px}.row-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}.row-actions form{margin:0;display:flex}.action-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:7px;border:1px solid #d8e2da;border-radius:7px;background:#fff;color:var(--green);line-height:1}.action-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.action-icon:hover{background:#edf5ef;text-decoration:none}.action-delete{color:#b44f50;border-color:#ebd9d9}.action-delete:hover{background:#fff0ee}.action-icon:disabled{opacity:.38;cursor:not-allowed}.action-icon:focus-visible{outline:2px solid var(--green);outline-offset:2px}.action-post{background:#edf7ef;color:#247640;border-color:#cce4d1}.action-post:hover{background:#dcefe2}.sidebar{padding:18px 14px}.sidebar .brand{padding:0 8px 16px;gap:10px;font-size:23px}.sidebar .brand small{font-size:8px;letter-spacing:1.5px;margin-top:4px}.sidebar .sidebar-logo{width:44px}.sidebar .nav-label{margin:16px 10px 6px}.sidebar>.nav-label{margin-top:6px}.sidebar nav a{padding:8px 12px;margin-bottom:2px;gap:10px;font-size:13px;line-height:1.35}@media(max-height:620px){.sidebar{padding:14px 12px}.sidebar .brand{padding-bottom:10px;font-size:22px}.sidebar .sidebar-logo{width:40px}.sidebar .nav-label{margin:10px 10px 5px}.sidebar>.nav-label{margin-top:5px}.sidebar nav a{padding:6.5px 12px;font-size:12.5px}}.per-page-form{display:flex;align-items:center;gap:10px;font-size:12px;color:#647b6c}.per-page-form select{padding:7px 10px;min-width:68px}.recent-table{table-layout:fixed;min-width:820px}.recent-table th{background:#fff;color:#344b5a;font-size:11px;font-weight:600;text-align:center;padding:10px;border:1px solid #dce5ef}.recent-table td{padding:10px 12px;text-align:center;border:1px solid #dce5ef;overflow-wrap:anywhere;white-space:normal;font-size:13px;line-height:1.65}.recent-table tbody tr:nth-child(odd){background:#eff4fa}.recent-table td.right{text-align:right}.center{text-align:center}.recent-table td.money{overflow-wrap:normal;white-space:nowrap}.recent-table td small{margin-top:6px}.recent-pagination{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;font-size:12px;color:#7b8c81;gap:16px}.recent-pagination nav{display:flex;align-items:center;gap:16px}@media(max-width:800px){#riwayat-transaksi .panel-head{flex-wrap:wrap;gap:14px}.recent-pagination{flex-wrap:wrap;padding:18px 16px}.per-page-form{font-size:11px}}.date-control{position:relative;display:inline-flex;width:164px;max-width:100%;flex-shrink:0}.field .date-control{width:100%}.date-control [data-date-display]{width:100%;padding-right:42px}.date-picker-button{position:absolute;right:5px;top:50%;transform:translateY(-50%);padding:7px;border:0;background:transparent;color:#637c6b;border-radius:5px}.date-picker-button:hover{background:#edf5ef}.date-control input.native-date-picker{position:absolute;right:15px;top:50%;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.date-picker-button:focus-visible{outline:2px solid var(--green)}.balance-filters label .date-control{flex:1}@media(max-width:800px){.filters>.date-control{width:calc(50% - 5px)}}.recent-table tbody td:nth-child(3),.recent-table tbody td:nth-child(5){text-align:left}.money-input{font-variant-numeric:tabular-nums;text-align:right}[hidden]{display:none!important}.full-width{grid-column:1/-1}#report-range{padding:12px 14px;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-weight:600}.workspace .topbar{min-height:60px;padding:10px 24px}.workspace main{padding:18px 24px}.workspace .page-head{gap:12px;margin-bottom:16px}.workspace .eyebrow{margin-bottom:5px}.workspace .page-head h1{font-size:30px;margin-bottom:4px}.workspace .actions{gap:8px}.workspace button,.workspace .button{padding:8px 14px}.workspace .small{padding:6px 10px}.workspace .panel{margin-bottom:16px}.workspace .panel-head{padding:12px 18px}.workspace .unpadded{padding:0 0 12px}.workspace .padded,.workspace .form-panel{padding:18px}.workspace .stats{gap:14px;margin-bottom:16px}.workspace .stat{padding:12px 16px;min-height:84px}.workspace .stat strong{margin:8px 0 6px}.workspace .columns{gap:16px}.workspace .balance-row,.workspace .group-row{padding:9px 16px}.workspace .hint{padding:10px 18px}.workspace .padded .hint{padding:0;margin-top:8px}.workspace th{padding:9px 14px}.workspace td{padding:8px 14px}.workspace .book-table td{padding:10px 16px}.workspace .book-table th{padding:9px 16px}.workspace .recent-table th,.workspace .recent-table td{padding:8px 10px}.workspace .recent-table td small{margin-top:4px}.workspace .notice{padding:10px 16px;margin-bottom:16px}.workspace .field{gap:6px;margin-bottom:12px}.workspace input,.workspace select,.workspace textarea{padding:8px 12px}.workspace .date-control [data-date-display]{padding-right:42px}.workspace .date-control input.native-date-picker{padding:0}.workspace .form-grid{column-gap:18px}.workspace .form-actions{gap:10px;padding-top:14px;margin-top:10px}.workspace .filters{padding:12px 16px;gap:8px}.workspace .filters input,.workspace .filters select{padding:7px 9px}.workspace .empty{padding:26px 18px}.workspace .pagination,.workspace .recent-pagination{padding:12px 18px}.workspace .detail-top{padding-bottom:14px}.workspace .details{gap:12px;padding:8px 0}.workspace .cancel-box{margin-top:20px;padding-top:14px}.workspace .cancel-box form{margin-top:14px}.workspace .balance-filters{padding:0 0 14px}.workspace .balance-stats .stat{padding:14px 18px;min-height:88px}.workspace .balance-report{padding:12px}.workspace .balance-report td,.workspace .balance-report th{padding:8px 12px}.workspace .balance-report .hint{padding:12px 0 0}.workspace footer{padding:12px 0;margin-top:18px}.workspace .action-icon,.workspace .date-picker-button{padding:7px}.workspace .per-page-form select{padding:6px 10px}@media(max-width:800px){.workspace .topbar{min-height:56px;padding:9px 16px}.workspace main{padding:16px}.workspace .page-head{gap:10px;margin-bottom:14px}.workspace .page-head h1{font-size:25px}.workspace .stats{gap:10px}.workspace .stat{padding:12px 14px;min-height:92px}.workspace .panel-head,.workspace .padded,.workspace .form-panel{padding:14px}.workspace .unpadded{padding:0 0 12px}.workspace .filters,.workspace .book-table tr{padding:12px}.workspace .book-table td[data-label]{padding:6px 0}.workspace .balance-row{padding:12px 14px}.workspace .balance-stats .stat{padding:14px 18px;min-height:96px}.workspace .details{gap:6px}.workspace .details dd{margin-bottom:8px}.workspace #riwayat-transaksi .panel-head{gap:10px}}
