.reserve-settlement-overlay{padding:24px;align-items:center;--reserve-tone:var(--till-section-tone,#6366db)}
html[data-theme="dark"] .reserve-settlement-overlay{--reserve-tone:color-mix(in srgb,var(--till-section-tone,#6366db) 65%,#fff)}
.reserve-settlement-overlay .reserve-settlement-modal{width:min(1020px,100%);max-width:1020px;max-height:calc(100dvh - 48px);padding:0;overflow:auto;border-radius:26px;border-inline-start:1px solid var(--border);animation:reserve-arrive .28s ease-out;color:var(--text1)}
.reserve-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;border-bottom:1px solid var(--border)}
.reserve-heading{display:flex;gap:14px;align-items:center;min-width:0}
.reserve-emblem{display:grid;place-items:center;flex-shrink:0;width:54px;height:54px;border-radius:18px;background:color-mix(in srgb,var(--reserve-tone) 13%,transparent);color:var(--reserve-tone);font-size:28px}
.reserve-eyebrow{font-size:12px;font-weight:800;color:var(--till-secondary-text);letter-spacing:.02em}
.reserve-settlement-overlay .reserve-header h3{margin:3px 0 7px;padding:0;border:0;background:none;font-size:22px;line-height:1.5;font-weight:850}
.reserve-document{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:11px;color:var(--till-secondary-text)}
.reserve-document bdi{white-space:nowrap;max-width:100%;font-size:12px;font-weight:750}
.reserve-balance{flex-shrink:0;padding:14px 18px;border-radius:16px;background:color-mix(in srgb,var(--reserve-tone) 9%,var(--till-inner-surface));min-width:220px}
.reserve-balance>span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:750;color:var(--till-secondary-text)}
.reserve-balance strong{display:flex;align-items:baseline;gap:8px;font-size:30px;line-height:1.5;font-weight:850;font-variant-numeric:tabular-nums}
.reserve-balance strong small{font-size:12px;font-weight:750}
.reserve-form{padding:20px 28px 0}
.reserve-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
.reserve-mode{position:relative;display:flex;align-items:center;gap:12px;min-height:94px;padding:14px;text-align:start;border:1px solid var(--border);border-radius:16px;background:var(--till-inner-surface);color:var(--text1);cursor:pointer;transition:background .18s,border-color .18s,transform .18s,box-shadow .18s;font:inherit}
.reserve-mode:hover{transform:translateY(-2px);border-color:var(--reserve-tone)}
.reserve-mode[aria-pressed="true"]{border-color:var(--reserve-tone);background:color-mix(in srgb,var(--reserve-tone) 10%,var(--till-inner-surface));box-shadow:inset 0 0 0 1px var(--reserve-tone)}
.reserve-mode-icon{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:12px;background:color-mix(in srgb,var(--reserve-tone) 10%,transparent);color:var(--reserve-tone);font-size:23px;transition:transform .2s}
.reserve-mode[aria-pressed="true"] .reserve-mode-icon{transform:scale(1.08)}
.reserve-mode strong{display:block;font-size:14px;font-weight:850;line-height:1.6;padding-inline-end:10px}
.reserve-mode small{display:block;margin-top:4px;font-size:11px;line-height:1.6;color:var(--till-secondary-text)}
.reserve-mode-check{position:absolute;inset-inline-end:7px;top:7px;font-size:12px;color:var(--reserve-tone);opacity:0;transform:scale(.6);transition:opacity .18s,transform .18s}
.reserve-mode[aria-pressed="true"] .reserve-mode-check{opacity:1;transform:scale(1)}
.reserve-content{display:grid;grid-template-columns:1.12fr 1fr;gap:24px}
.reserve-details h4{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:14px;font-weight:850}
.reserve-details h4 i,.reserve-field>label i{color:var(--reserve-tone);font-size:18px}
.reserve-settlement-overlay .reserve-field{display:block;margin:0 0 12px;min-width:0}
.reserve-settlement-overlay .reserve-field>label{display:flex;align-items:center;gap:7px;margin:0 0 6px;padding:0;font-size:13px;font-weight:800;line-height:1.6;color:var(--text1)}
.reserve-settlement-overlay .reserve-field :is(input,select,textarea){width:100%;margin:0;min-width:0;min-height:46px;padding:10px 13px;border-radius:12px;border:1px solid var(--border);background:var(--till-inner-surface);color:var(--text1);font:inherit;font-size:14px;line-height:1.5;box-shadow:none}
.reserve-settlement-overlay .reserve-field textarea{min-height:120px;height:120px;resize:vertical;max-height:180px}
.reserve-money-input{position:relative}
.reserve-settlement-overlay .reserve-money-input input{font-size:24px;font-weight:850;padding-inline:14px 65px;direction:ltr;font-variant-numeric:tabular-nums}
.reserve-money-input>span{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:750;color:var(--till-secondary-text);pointer-events:none}
.reserve-purchase{animation:reserve-reveal .2s ease-out}
.reserve-fuel{display:grid;grid-template-columns:1.1fr 1fr;gap:12px}
.reserve-settlement-overlay [hidden]{display:none!important}
.reserve-hint{display:flex;align-items:flex-start;gap:9px;padding:13px;border:1px solid color-mix(in srgb,var(--reserve-tone) 18%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--reserve-tone) 5%,transparent)}
.reserve-hint>i{font-size:20px;color:var(--reserve-tone);margin-top:3px;flex-shrink:0}
.reserve-hint p{margin:0;font-size:12px;line-height:1.85;color:var(--till-secondary-text)}
.reserve-error{margin:0;color:var(--danger);font-size:13px;font-weight:750;line-height:1.6}
.reserve-error:not(:empty){padding:8px 0}
.reserve-settlement-overlay .reserve-settlement-modal .reserve-footer{display:flex!important;gap:12px!important;justify-content:flex-start!important;margin:8px -28px 0!important;padding:16px 28px!important;border-top:1px solid var(--border);background:color-mix(in srgb,var(--till-inner-surface) 65%,transparent)}
.reserve-footer .btn{display:flex;justify-content:center;align-items:center;gap:8px;min-width:130px;flex:0 0 auto}
.reserve-footer .btn-primary{min-width:210px}
.reserve-footer .btn-primary i{font-size:20px}
.reserve-footer .btn-primary:disabled .ti-loader-2{animation:reserve-spin .9s linear infinite}
.reserve-mode:focus-visible{outline:3px solid var(--reserve-tone);outline-offset:3px}
@keyframes reserve-arrive{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@keyframes reserve-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes reserve-spin{to{transform:rotate(360deg)}}
@media(min-width:900px) and (min-height:700px){.reserve-settlement-overlay .reserve-field textarea{resize:none}}
@media(max-width:800px){.reserve-settlement-overlay{padding:16px}.reserve-settlement-overlay .reserve-settlement-modal{max-height:calc(100dvh - 32px)}.reserve-header{padding:20px;gap:14px}.reserve-header h3{font-size:19px!important}.reserve-balance{min-width:170px;padding:12px}.reserve-balance strong{font-size:25px}.reserve-form{padding:18px 20px 0}.reserve-modes{gap:8px}.reserve-mode{flex-direction:column;align-items:flex-start;padding:12px;gap:8px}.reserve-content{gap:16px}.reserve-settlement-overlay .reserve-footer{margin-inline:-20px;padding-inline:20px}}
@media(max-width:600px){.reserve-header{flex-direction:column;align-items:stretch;padding:18px}.reserve-heading{gap:10px}.reserve-emblem{width:44px;height:44px;font-size:24px}.reserve-balance{display:flex;align-items:center;justify-content:space-between;gap:12px}.reserve-balance>span{max-width:55%;line-height:1.6}.reserve-balance strong{font-size:24px;flex-shrink:0}.reserve-form{padding:16px 18px 0}.reserve-mode{min-height:110px;padding:10px}.reserve-mode strong{font-size:12px;line-height:1.7;padding-inline-end:0}.reserve-mode small{display:none}.reserve-content{grid-template-columns:1fr;gap:6px}.reserve-modes{margin-bottom:16px}.reserve-settlement-overlay .reserve-field textarea{height:90px;min-height:90px}.reserve-settlement-overlay .reserve-footer{margin-inline:-18px;padding:14px 18px;position:sticky;bottom:0;background:var(--till-readable-surface)}.reserve-footer .btn-primary{min-width:0;flex:1}.reserve-footer .btn-ghost{min-width:80px}.reserve-document{gap:4px;font-size:10px}.reserve-document bdi{font-size:11px}.reserve-header h3{font-size:17px!important}}
@media(prefers-reduced-motion:reduce){.reserve-settlement-overlay *{animation:none!important;transition:none!important}.reserve-mode:hover{transform:none}}

@media(max-width:800px){.reserve-settlement-overlay .reserve-settlement-modal .reserve-footer{margin-inline:-20px!important;padding-inline:20px!important}}
@media(max-width:600px){.reserve-settlement-overlay .reserve-settlement-modal .reserve-footer{margin-inline:-18px!important;padding:14px 18px!important}.reserve-settlement-overlay .reserve-footer .btn-primary{flex:1!important}.reserve-settlement-overlay .reserve-footer .btn-ghost{flex:0 0 auto!important}}
.reserve-settlement-overlay .reserve-footer .btn{flex:0 0 auto!important;width:auto!important}
@media(max-width:600px){.reserve-settlement-overlay .reserve-settlement-modal .reserve-footer .btn-primary{flex:1!important}}
