.gift-card-receipt{box-sizing:border-box;width:min(100%,80mm);margin:0 auto;padding:8mm 5mm;color:#111;background:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-align:center}.gift-card-receipt p,.gift-card-receipt h2,.gift-card-receipt dl,.gift-card-receipt dd{margin:0}.receipt-brand{font-size:24px;font-weight:800;letter-spacing:.18em}.gift-card-receipt h2{margin-top:2mm;font-size:18px;letter-spacing:.12em}.receipt-details{margin:8mm 0 6mm}.receipt-details>div+div{margin-top:4mm}.receipt-details dt{font-size:11px}.receipt-details dd{margin-top:1mm;font-size:16px;font-weight:700}.receipt-card-number{letter-spacing:.12em}.receipt-codes{display:grid;justify-items:center;gap:4mm;margin:6mm 0;overflow:hidden}.receipt-codes img{width:42mm;height:42mm}.receipt-codes svg{width:64mm;max-height:14mm}.receipt-terms{border-top:1px dashed #111;padding-top:5mm;font-size:9px;line-height:1.55}.balance-receipt-note{margin-top:7mm;font-size:10px;font-weight:700}@media print{@page{size:80mm auto;margin:0}body *{visibility:hidden}.gift-card-receipt,.gift-card-receipt *{visibility:visible}.gift-card-receipt{position:absolute;inset:0 auto auto 0;width:80mm}}:root{color:#1b211d;background:#f3f1ec;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}.app-shell{min-height:100vh}.app-header{position:sticky;z-index:10;top:0;display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:12px max(20px,env(safe-area-inset-left));border-bottom:1px solid rgba(27,33,29,.12);background:#f3f1eceb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-header>div{display:flex;align-items:baseline;gap:14px}.wordmark{color:#142218;font-size:19px;font-weight:850;letter-spacing:.16em}.store-name{color:#657069;font-size:14px}.app-content{padding:44px 20px 118px}.page{margin:0 auto}.compact-page{max-width:620px}.wide-page{max-width:1080px}.page h1,.login-page h1{margin:4px 0 8px;color:#142218;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,6vw,58px);font-weight:500;line-height:1.05}.eyebrow{margin:0;color:#a33d25;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.page-intro{margin:0 0 28px;color:#657069}.card-panel{margin-top:28px;padding:clamp(22px,5vw,38px);border:1px solid rgba(27,33,29,.1);border-radius:22px;background:#fff;box-shadow:0 20px 60px #24302812}.form-stack{display:grid;gap:14px}label,.balance-panel span,.transaction-row span{color:#657069;font-size:13px;font-weight:650}input,select{width:100%;min-height:54px;padding:13px 15px;border:1px solid #c8ccc9;border-radius:12px;outline:none;background:#fff;color:#142218;font-size:18px}input:focus,select:focus{border-color:#31543d;box-shadow:0 0 0 3px #31543d24}.money-input{position:relative}.money-input input{padding-right:70px;font-size:28px;font-weight:700}.money-input span{position:absolute;top:50%;right:16px;transform:translateY(-50%);color:#657069;font-size:13px;font-weight:800}.primary-button,.secondary-button,.quiet-button,.text-button{min-height:50px;border:0;border-radius:12px;padding:12px 20px;font-weight:750}.primary-button{background:#183322;color:#fff}.secondary-button{border:1px solid #bfc5c0;background:#fff;color:#183322}.quiet-button,.text-button{min-height:40px;background:transparent;color:#31543d;text-decoration:underline;text-underline-offset:3px}.text-button{justify-self:start;padding-inline:0}.button-row{display:flex;flex-wrap:wrap;gap:12px}.error-message,.success-message{border-radius:12px;padding:14px 16px;font-weight:650}.error-message{background:#f9e8e3;color:#8f2f1c}.success-message{background:#e2efe5;color:#1b5b32}.balance-panel{display:grid;gap:20px}.balance-panel>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.balance-panel>div strong{font-size:24px}.bottom-nav{position:fixed;z-index:20;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border-top:1px solid rgba(27,33,29,.12);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bottom-nav button{display:grid;justify-items:center;gap:2px;min-height:58px;border:0;border-radius:12px;background:transparent;color:#69726c;font-size:12px;font-weight:700}.bottom-nav button span{font-size:24px;line-height:1}.bottom-nav button[aria-current=page]{background:#e6ebe7;color:#183322}.history-filters{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr)) minmax(140px,.8fr) minmax(180px,1.2fr) auto;align-items:end;gap:12px;margin:28px 0 20px}.history-filters label{display:grid;gap:7px}.transaction-list{display:grid;gap:10px}.transaction-row{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:center;gap:18px;padding:17px 20px;border:1px solid rgba(27,33,29,.1);border-radius:15px;background:#fff}.transaction-row>div{display:grid;gap:4px}.empty-state,.centered-state{color:#657069;text-align:center}.centered-state,.login-page{display:grid;place-content:center;min-height:100vh;padding:32px}.login-page{justify-items:start;max-width:520px;margin:0 auto}.login-page>button{min-height:52px;margin-top:18px;border:0;border-radius:12px;padding:12px 22px;background:#183322;color:#fff;font-weight:750}.issue-success{max-width:720px}.success-summary{margin-bottom:28px}.success-summary h1{margin:4px 0 24px}@media(max-width:760px){.app-content{padding-top:30px}.store-name{display:none}.history-filters,.transaction-row{grid-template-columns:1fr 1fr}.history-filters label:last-of-type,.history-filters>button{grid-column:1 / -1}}@media print{.screen-only{display:none!important}.app-content{padding:0}}
