:root{color-scheme:light;--blue:#b71969;--navy:#11234c;--bg:#f1f4f9;--line:#d9e1ec;--text:#152440;--muted:#54647e;--red:#a42739;--green:#126243}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:44px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--text);padding:9px 16px;font-weight:600}button:hover{border-color:var(--blue);background:#f0f4ff}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--blue);border-color:var(--blue);color:white}button.primary:hover{background:#102e89}button.danger{color:var(--red)}button.small{padding:7px 12px;font-size:14px}a{color:var(--blue);text-underline-offset:3px}input,select,textarea{width:100%;border:1px solid #a8b5c9;border-radius:8px;background:white;padding:11px 12px;min-height:46px;color:var(--text)}input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--blue);flex-shrink:0}input[type=file]{padding:10px;font-size:14px}textarea{resize:vertical;min-height:80px}label{display:block;font-size:14px;font-weight:650;margin-bottom:6px}label.check{display:flex;gap:12px;font-size:16px;font-weight:400;align-items:flex-start;margin:16px 0}label.check input{margin-top:3px}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #8ba8ff;outline-offset:2px}header{height:auto;min-height:80px;padding:16px max(24px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:750;font-size:21px;letter-spacing:-.5px;text-decoration:none}#account{display:flex;gap:12px;align-items:center;font-size:14px}#account .role{display:block;color:var(--muted);font-size:13px}main{max-width:1168px;margin:auto;padding:36px 24px 56px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{color:var(--blue);font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase}h1{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:5px 0 8px}h2{font-size:22px;line-height:1.3;margin:0 0 16px;letter-spacing:-.3px}h3{font-size:18px;margin:0 0 6px}p{margin:0 0 16px}.muted,.meta{color:var(--muted)}.meta{font-size:14px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 28px}.stat{background:white;border:1px solid var(--line);border-radius:14px;padding:20px 22px;border-top:3px solid var(--blue)}.stat:nth-child(2){border-top-color:#d29b29}.stat:nth-child(3){border-top-color:var(--green)}.stat span{display:block;color:var(--muted);font-size:14px}.stat strong{display:block;font-size:30px;letter-spacing:-.8px;margin:5px 0;font-variant-numeric:tabular-nums}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:24px;overflow:auto}.tabs button{white-space:nowrap;background:none;border-color:transparent;color:var(--muted)}.tabs button.active{background:var(--navy);color:white}.section-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-tools input{max-width:360px}.pills{display:flex;gap:6px;flex-wrap:wrap}.pills button{font-size:14px;min-height:40px}.pills .active{background:#e7edff;border-color:var(--blue);color:var(--blue)}.list{display:grid;gap:12px}.trip-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:24px;background:white;border:1px solid var(--line);border-radius:14px;padding:20px 22px}.trip-title{display:flex;align-items:center;gap:10px;margin-bottom:4px;flex-wrap:wrap}.trip-title h3{margin:0}.badge{font-size:13px;font-weight:650;padding:3px 9px;border-radius:6px;white-space:nowrap}.badge.open{background:#fff1cf;color:#755000}.badge.closed{background:#e1f1e9;color:var(--green)}.card-numbers{text-align:right;font-variant-numeric:tabular-nums}.card-numbers strong{display:block;font-size:21px}.empty{background:white;border:1px dashed #a5b4cd;border-radius:16px;text-align:center;padding:48px 24px}.empty .empty-icon{font-size:35px;margin-bottom:12px}.empty p{max-width:460px;margin:0 auto 20px;color:var(--muted)}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:24px}.detail-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:22px;align-items:start}.balance-panel{background:var(--navy);color:white;border:none;position:sticky;top:20px}.balance-panel .muted,.balance-panel .meta{color:#c2cfe5}.balance-panel button{width:100%;margin-top:14px}.ledger-line{display:flex;justify-content:space-between;gap:16px;margin:14px 0;font-variant-numeric:tabular-nums}.ledger-line.total{border-top:1px solid #ffffff40;padding-top:18px;font-size:21px;font-weight:700}.ledger-line.total span:last-child{white-space:nowrap}.balance-caption{margin:14px 0 0;color:#c2cfe5;font-size:14px}.detail-left{display:grid;gap:20px}.receipt{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--line)}.receipt:first-of-type{border-top:0}.receipt-thumb{width:62px;height:75px;object-fit:cover;background:#f0f3f8;border:1px solid var(--line);border-radius:6px}.pdf-thumb{display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.receipt .amount{font-weight:700;font-variant-numeric:tabular-nums}.receipt-actions{display:flex;align-items:center;gap:9px;margin-top:5px}.receipt-actions button{min-height:32px;padding:3px 8px;font-size:13px}.history{padding:0;margin:0;list-style:none}.history li{border-left:2px solid var(--line);padding:0 0 18px 18px;margin-left:4px}.history li:last-child{padding-bottom:0}.history p{margin:0 0 4px;font-size:14px}.back{margin-bottom:18px}.signature-image{width:100%;max-width:400px;background:white;border:1px solid var(--line);border-radius:8px}.login{max-width:430px;margin:5vh auto}.login .panel{padding:32px}.login p{color:var(--muted)}.login h1{margin-bottom:12px}.field{margin-bottom:17px}.field-hint{margin:5px 0 0;font-size:14px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.form-actions button{min-width:100px}.error{color:var(--red);background:#fff1f2;border:1px solid #fac8d0;padding:12px;border-radius:8px;margin:0 0 16px}.notice{font-size:14px;background:#edf2ff;color:#243b71;padding:14px;border-radius:10px;margin:14px 0}.warning{background:#fff2d6;color:#755000}.divider{height:1px;background:var(--line);margin:20px 0}dialog{border:1px solid var(--line);border-radius:16px;padding:24px;width:calc(100% - 32px);max-width:540px;max-height:90dvh;overflow-y:auto;color:var(--text);box-shadow:0 24px 80px #12244c30}dialog::backdrop{background:#11234c99}.modal-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.modal-top h2{margin:0}.icon-button{font-size:25px;padding:0;width:44px;min-height:44px}.modal-total{border-radius:12px;background:var(--navy);color:white;padding:18px;margin-bottom:18px}.modal-total span{font-size:14px;display:block}.modal-total strong{font-size:28px;display:block;font-variant-numeric:tabular-nums}canvas.signature{touch-action:none;width:100%;height:180px;background:white;border:2px dashed #8fa1bd;border-radius:10px;display:block}.signature-tools{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.signature-tools .meta{max-width:65%}.user-card,.customer-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 22px;border:1px solid var(--line);border-radius:12px;background:white}.user-card .toolbar{justify-content:flex-end}.user-card h3,.customer-card h3{margin:0}.login button.primary{width:100%}.login label{font-size:16px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);background:var(--navy);color:white;border-radius:12px;padding:14px 20px;box-shadow:0 8px 32px #12244c33;z-index:10;font-size:15px}footer{text-align:center;color:var(--muted);font-size:14px;padding:20px 16px;border-top:1px solid var(--line)}.print-only{display:none}[hidden]{display:none!important}.loading{text-align:center;padding:50px}.preview-photo{max-height:180px;max-width:100%;border:1px solid var(--line);border-radius:8px;margin-top:10px}.row-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.row-head h2{margin:0}.amount-red{color:var(--red)}.account-name{max-width:180px;overflow-wrap:anywhere}.signed-text{font-size:14px;margin-top:10px}
@media(max-width:700px){header{padding:14px 16px;gap:8px;align-items:flex-start}.brand{font-size:18px;gap:8px}.brand img{width:30px;height:30px}#account{gap:8px;flex-wrap:wrap;justify-content:flex-end;text-align:right}.account-name{max-width:130px}#account .role{display:none}#account button{min-height:36px;padding:5px 8px;font-size:13px}main{padding:24px 16px 40px}.page-head{align-items:flex-start;flex-direction:column;gap:14px}h1{font-size:28px}.page-head .toolbar{width:100%}.page-head .primary{flex:1}.stats{gap:8px;margin-bottom:22px}.stat{padding:12px 10px;border-radius:10px}.stat strong{font-size:23px}.stat span{font-size:13px}.stats .stat:first-child{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.stats .stat:first-child strong{font-size:26px}.stats{grid-template-columns:1fr 1fr}.stats .stat:first-child small{display:none}.stat small{font-size:12px}.tabs{gap:0}.tabs button{padding:8px 11px}.section-tools{flex-direction:column;align-items:stretch;gap:10px}.section-tools input{max-width:none}.trip-card{grid-template-columns:1fr auto;gap:12px;padding:17px}.trip-card>button{grid-column:1/-1;width:100%}.card-numbers strong{font-size:19px}.card-numbers .meta{font-size:12px}.trip-title{gap:7px}.trip-title h3{font-size:17px}.trip-card .meta{font-size:13px}.detail-grid{grid-template-columns:1fr}.balance-panel{position:static;grid-row:1}.panel{padding:20px}.receipt{grid-template-columns:48px 1fr auto;gap:10px}.receipt-thumb{width:48px;height:65px}.receipt .amount{font-size:15px}.form-row{gap:12px}.user-card{align-items:flex-start;flex-direction:column}.user-card .toolbar{width:100%;justify-content:flex-start}dialog{padding:20px;max-height:92dvh}.login{margin:3vh auto}.login .panel{padding:24px}}
@media print{body{background:white;font-size:12pt}header,#account,footer,.tabs,.back,.toolbar,button{display:none!important}main{max-width:none;padding:0}.page-head{display:block}.print-only{display:block}.detail-grid{display:block}.panel{break-inside:avoid;border-color:#aaa;margin-bottom:16px;padding:18px}.balance-panel{position:static;background:white;color:black}.balance-panel .muted,.balance-panel .meta,.balance-caption{color:#333}.ledger-line.total{border-color:#888}.signature-image{max-height:100px;object-fit:contain}.receipt-thumb{display:none}.receipt{grid-template-columns:1fr auto}.history{display:none}.history-panel{display:none}.badge{border:1px solid #999;background:white!important;color:black!important}.page-head h1{font-size:22pt}}

.brand .company-logo{width:175px;height:auto;max-height:58px;object-fit:contain}.brand span{border-left:1px solid var(--line);padding-left:16px}.import-table{overflow-x:auto;margin:16px 0}table{width:100%;border-collapse:collapse;font-size:14px}td,th{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}th{background:#f1f4f9}@media(max-width:700px){.brand{flex-direction:column;align-items:flex-start;gap:3px}.brand .company-logo{width:155px;max-height:50px}.brand span{border:0;padding-left:0;font-size:15px}}
