/* Cashless trilogy extends G-SMART's existing boarding and services styles. */
:root{--cash:#087b66;--cash-dark:#063e3d;--mintlight:#effaf7}
.finance-hero{min-height:148px}.finance-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}
.finance-grid .panel{min-width:0}.finance-grid h2{font-size:16px}.finance-grid .hint{margin-top:13px}
.profile-strip{display:flex;align-items:center;gap:13px;border:1px solid #d9eee6;background:linear-gradient(120deg,#f3fcf8,#edf8fa);padding:14px;border-radius:13px;min-height:75px;margin:12px 0}
.profile-strip strong,.profile-strip small{display:block}.profile-strip small{font-size:11px;color:#789098;margin-top:3px}.profile-balance{margin-left:auto;text-align:right}.profile-balance b{font-size:18px;color:#076c58;white-space:nowrap}.avatar-mini{width:43px;height:43px;border-radius:13px;background:linear-gradient(130deg,#064e45,#17b780);color:#fff;display:grid;place-items:center;font-weight:850;font-size:21px;flex-shrink:0}.pos-picker{margin-bottom:16px}.pos-picker>label{font-size:12px}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.product-tile{position:relative;border:1px solid #e0eceb;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:start;text-align:left;gap:3px;padding:14px;min-height:152px;color:#123146;box-shadow:0 3px 13px #042a3006;transition:transform .15s,border-color .15s}.product-tile:hover:not(:disabled){transform:translateY(-2px);border-color:#16ab8b;box-shadow:0 7px 18px #053a2610}.product-tile:disabled{opacity:.42;cursor:not-allowed}.product-emoji{height:48px;width:50px;display:grid;place-items:center;background:#eff8f4;border-radius:11px;font-size:26px;margin-bottom:5px}.product-tile strong{font-size:12px;line-height:1.3}.product-tile small{color:#8a9bab;font-size:10px}.product-tile b{color:#007c66;font-size:13px}.product-tile em{font-size:10px;font-style:normal;color:#8496a2}.add-sign{position:absolute;right:10px;top:10px;background:#dcf7e8;color:#067857;border-radius:8px;width:23px;height:23px;text-align:center;line-height:23px;font-size:18px}
.cart-card{border:1px solid #d2e8df}.cart-list{display:grid;gap:7px;min-height:90px}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;border-bottom:1px solid #ebf0f1;padding:12px 1px}.line-name strong{display:block;font-size:12px}.line-name small{display:block;color:#8a9baa;font-size:11px}.cart-line>b{white-space:nowrap;font-size:12px}.qty-controls{display:flex;align-items:center;border:1px solid #e0e8e9;border-radius:9px;overflow:hidden}.qty-controls button{border:0;background:#f0f8f5;color:#075f55;padding:5px 10px;font-weight:800}.qty-controls span{width:29px;text-align:center;font-size:12px}.remove-btn{border:0;border-radius:8px;background:#ffeeef;color:#bf3945;font-size:18px;width:27px;height:29px}.cart-totals{margin:17px 0;border:1px solid #e4ecea;background:#f7fbfa;border-radius:13px;padding:14px 16px}.cart-totals>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:9px}.cart-totals>div:last-child{margin-bottom:0;padding-top:11px;border-top:1px dashed #c8ddd9}.cart-totals strong{font-size:16px;color:#07634f}.cart-totals>div:first-child strong{font-size:22px}.stack-actions{display:grid;grid-template-columns:1fr;gap:9px}.stack-actions .btn,.btn-wide{width:100%;min-height:46px}.fingerprint-btn{border-color:#cfd5fb;color:#4630a2;background:#f3f1ff}.btn:disabled{opacity:.5;cursor:not-allowed}
.receipt-preview{border:1px dashed #bfd5ce;border-radius:12px;background:#f8fbfa;padding:20px;text-align:center;color:#78928c;min-height:90px;font-size:12px}.receipt-paper{display:grid;text-align:left;gap:6px;color:#233c47}.receipt-paper>strong,.receipt-paper>small{text-align:center}.receipt-paper>div{display:flex;justify-content:space-between;gap:12px}.receipt-paper hr{border:0;border-top:1px dashed #b7c9c8;width:100%}.receipt-print{margin-top:8px}
.empty-finance{padding:23px 12px;color:#80949f;text-align:center;font-size:12px;line-height:1.6}.text-alert{color:#c63846!important}.text-positive{color:#087e58!important}.finance-grid .filterline{display:flex;gap:10px;flex-wrap:wrap}.finance-grid .filterline>input{flex:2;min-width:155px}.finance-grid .filterline>select{flex:1;min-width:140px}
.fingerprint-device{background:linear-gradient(125deg,#e5f8f2,#e9f2f7);border:1px solid #d5eee6;padding:19px;border-radius:15px;display:flex;align-items:center;gap:18px;margin:14px 0}.fingerprint-shell{width:140px;height:170px;border:6px solid #34565b;border-radius:22px;background:linear-gradient(160deg,#061e2c,#173f4a);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#e4ffed;box-shadow:0 15px 22px #0d3d3c1d;flex-shrink:0}.sensor-light{background:#27fa93;width:75px;height:6px;border-radius:30px;box-shadow:0 0 13px #27fa93}.fingerprint-symbol{font-size:68px;color:#8fffc4;line-height:1}.fingerprint-shell small{font-size:10px;letter-spacing:1px;color:#a5cabc}.fingerprint-device strong{display:block;font-size:16px;color:#183950}.fingerprint-device p{color:#5d7787;font-size:12px;line-height:1.6}.device-status{color:#076f5f;border:1px solid #bee5d6;display:inline-block;background:#fff;padding:7px 10px;border-radius:20px;font-size:11px}
.scan-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0 10px}.scan-actions .btn{font-size:12px}.checkout-detail{padding:15px;border:1px solid #e5eeed;background:#fbfdfd;border-radius:12px;display:grid;gap:10px}.checkout-detail>small{font-size:11px;color:#8498a2}.request-info{display:flex;justify-content:space-between;gap:12px;font-size:16px;color:#073f3b}.request-info>span{color:#07876d;font-weight:800}.order-lines{border-top:1px dashed #d6e7e1;display:grid;gap:7px;padding-top:10px}.order-lines>div{display:flex;justify-content:space-between;gap:10px;font-size:12px}.scan-message{background:#f1f4f8;padding:12px;border-radius:9px;color:#53677b;font-size:12px}.scan-message.match-ok{background:#d8f7e9;color:#086e50}.scan-message.match-no{background:#ffebeb;color:#a92837}
.pending-row{width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;border:1px solid #e2eeec;background:#fff;padding:13px;border-radius:12px;align-items:center;margin-bottom:9px}.pending-row.chosen{background:#ebfaf5;border-color:#0fa780;outline:1px solid #0fa780}.pending-row strong,.pending-row small,.pending-row b,.pending-row .pill{display:block}.pending-row strong{font-size:12px}.pending-row small{color:#8698a6;font-size:10px}.pending-row b{color:#075b50;font-size:13px}.pending-row>span:last-child{text-align:right}.pending-row .pill{margin-top:5px}
.wallet-big{background:linear-gradient(120deg,#006b5b,#03a57e);color:#fff;padding:24px;border-radius:17px;display:grid;gap:7px;box-shadow:0 10px 29px #00674b27}.wallet-big span{font-size:12px;color:#e1fcf1}.wallet-big strong{font-size:clamp(24px,3vw,36px)}.wallet-big small{color:#bce9dc}.wallet-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.wallet-mini-grid>div{background:#f0faf7;border-radius:12px;padding:15px;display:grid;gap:5px}.wallet-mini-grid small{font-size:11px;color:#5b8476}.wallet-mini-grid strong{color:#075b4c;font-size:17px}.quick-amounts{display:flex;gap:8px;flex-wrap:wrap}
.finance-grid .item{min-width:0}.finance-grid .item .fill{overflow:hidden}.finance-grid .item small{overflow-wrap:anywhere}.finance-grid .item b{white-space:nowrap}.finance-grid .stats{margin-bottom:0}
@media(max-width:1280px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-grid{grid-template-columns:1fr}}
@media(max-width:780px){.finance-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-strip{flex-wrap:wrap}.profile-balance{margin-left:0;width:100%;text-align:left}.fingerprint-device{flex-direction:column;text-align:center}.scan-actions{grid-template-columns:1fr}.cart-line{gap:7px;grid-template-columns:minmax(0,1fr) auto}.cart-line>b{grid-column:1}.cart-line .remove-btn{grid-column:2}.finance-grid .panel{padding:14px}}
@media print{
 body:has(#receiptPreview){background:white!important}
 body:has(#receiptPreview) .sidebar,
 body:has(#receiptPreview) .topbar,
 body:has(#receiptPreview) .content > :not(.finance-grid),
 body:has(#receiptPreview) .finance-grid:not(:has(#receiptPreview)),
 body:has(#receiptPreview) .finance-grid:has(#receiptPreview)>:not(.cart-card),
 body:has(#receiptPreview) .cart-card>:not(#receiptPreview),
 body:has(#receiptPreview) .receipt-print{display:none!important}
 body:has(#receiptPreview) .main{margin:0!important}
 body:has(#receiptPreview) .content{margin:0!important;padding:0!important}
 body:has(#receiptPreview) .finance-grid{display:block!important;margin:0!important}
 body:has(#receiptPreview) .cart-card{display:block!important;box-shadow:none!important;border:0!important;padding:0!important}
 body:has(#receiptPreview) #receiptPreview{display:block!important;border:0!important;background:#fff!important;position:relative;top:0;left:0;width:80mm;min-height:0;text-align:left;color:#000!important;padding:12mm}
}
