@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";:root{color:#101828;font-synthesis:none;background:#f7f7fa;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}.app-shell{max-width:640px;min-height:100dvh;padding:calc(19px + env(safe-area-inset-top)) 20px calc(101px + env(safe-area-inset-bottom));background:radial-gradient(circle at 100% 0,#ecebff 0,#0000 34%),#f8f8fa;margin:auto}.topbar{justify-content:space-between;align-items:center;height:36px;margin-bottom:26px;display:flex}.brand{color:#151b35;letter-spacing:-1px;align-items:center;gap:8px;font-size:21px;font-weight:700;display:flex}.brand-mark{color:#fff;background:#635bff;border-radius:8px;place-items:center;width:27px;height:27px;font-size:25px;line-height:1;display:grid;transform:rotate(-10deg)}.text-button{color:#5a54c7;background:0 0;border:0;font-size:14px;font-weight:600}.eyebrow{color:#635bff;letter-spacing:1.2px;font:500 10px DM Mono,monospace}.capture-view h1,.review-view h1,.history-view h1{letter-spacing:-2.8px;margin:13px 0 14px;font:700 clamp(39px,11vw,57px)/.99 Playfair Display,Georgia,serif}.capture-view h1 em,.review-view h1 em,.history-view h1 em{color:#635bff}.intro{color:#667085;max-width:330px;margin:0 0 30px;font-size:15px;line-height:1.6}.camera-card,.form-card{background:#fff;border:1px solid #e9e9f0;border-radius:22px;box-shadow:0 12px 34px #2018550f}.camera-card{padding:14px}.viewfinder{color:#ffffffe0;isolation:isolate;background:linear-gradient(140deg,#8d7d74,#4a4042 45%,#766a69);border-radius:15px;place-items:center;height:263px;display:grid;position:relative;overflow:hidden}.viewfinder:before{content:"";opacity:.42;background:repeating-linear-gradient(0deg,#0000,#0000 6px,#1f1719 7px);position:absolute;inset:0}.viewfinder:after{content:"";background:linear-gradient(100deg,#ded6ca,#fff 45%,#c3b9ac);border-radius:7px;width:171px;height:198px;position:absolute;transform:rotate(-5deg);box-shadow:0 15px 30px #211719}.viewfinder span{z-index:2;background:#120e0f80;border-radius:8px;margin-top:225px;padding:4px 9px;font:11px DM Mono;position:relative}.corner{z-index:3;border-style:solid;border-color:#fff;width:26px;height:26px;position:absolute}.tl{border-width:3px 0 0 3px;border-radius:5px 0 0;top:25px;left:25px}.tr{border-width:3px 3px 0 0;border-radius:0 5px 0 0;top:25px;right:25px}.bl{border-width:0 0 3px 3px;border-radius:0 0 0 5px;bottom:25px;left:25px}.br{border-width:0 3px 3px 0;border-radius:0 0 5px;bottom:25px;right:25px}.primary-button{color:#fff;background:#635bff;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:54px;margin-top:14px;font-weight:600;display:flex;box-shadow:0 8px 18px #635bff38}.primary-button:active{background:#554cd9;transform:translateY(1px)}.camera-icon{font-size:20px}.secondary-button{color:#565f71;background:0 0;border:0;width:100%;min-height:46px;margin-top:5px;font-size:14px;font-weight:600}.privacy{color:#7b8190;align-items:center;gap:11px;margin:25px 8px;font-size:12px;line-height:1.5;display:flex}.privacy span{color:#635bff;font-size:18px}.privacy p{margin:0}.privacy strong{color:#4d5565}.hidden{display:none}.notice{color:#49428e;background:#f0efff;border:1px solid #e1deff;border-radius:12px;justify-content:space-between;gap:15px;margin:0 0 18px;padding:12px 14px;font-size:13px;display:flex}.notice button{color:inherit;background:0 0;border:0;font-size:18px;line-height:1}.scanning{color:#4e5361;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:345px;display:flex}.scanning strong{color:#20263a}.scanning span{color:#635bff;font:500 23px DM Mono}.scanning small{color:#808897;font-size:11px}.loader{border:4px solid #e4e2ff;border-top-color:#635bff;border-radius:50%;width:42px;height:42px;animation:1s linear infinite spin}.progress{background:#ecebf5;border-radius:99px;width:180px;height:5px;overflow:hidden}.progress i{border-radius:inherit;background:#635bff;height:100%;transition:width .25s;display:block}@keyframes spin{to{transform:rotate(360deg)}}.review-view h1{margin-bottom:23px}.receipt-preview{background:#e4e0db;border-radius:17px;height:190px;overflow:hidden}.receipt-preview img{object-fit:cover;width:100%;height:100%}.review-help{color:#667085;margin:20px 3px 13px;font-size:13px}.form-card{gap:14px;padding:18px;display:grid}.form-card label{color:#51586a;gap:7px;font-size:12px;font-weight:600;display:grid}.form-card input,.form-card select{color:#202638;background:#fff;border:1px solid #e1e2ea;border-radius:10px;outline-color:#635bff;width:100%;min-height:45px;padding:0 12px;font-size:15px}.field-pair{grid-template-columns:1.3fr .7fr;gap:12px;display:grid}.save-button{margin-top:20px}.save-button span{font-size:21px}.ocr-details{color:#5e6678;background:#fff;border:1px solid #e4e5ed;border-radius:12px;margin-top:13px;font-size:12px}.ocr-details summary{cursor:pointer;padding:13px 14px;font-weight:600}.ocr-details pre{color:#535b6d;white-space:pre-wrap;max-height:180px;margin:0;padding:0 14px 14px;font:11px/1.5 DM Mono,monospace;overflow:auto}.history-view h1{margin-bottom:24px}.history-controls{grid-template-columns:1fr auto;gap:9px;margin-bottom:16px;display:grid}.search{color:#858c9d;background:#fff;border:1px solid #e1e2ea;border-radius:11px;align-items:center;gap:8px;padding:0 12px;display:flex}.search input{background:0 0;border:0;outline:none;width:100%;min-height:43px;font-size:13px}.history-controls select{color:#50586b;background:#fff;border:1px solid #e1e2ea;border-radius:11px;padding:0 8px;font-size:12px}.receipt-list{gap:9px;display:grid}.receipt-row{background:#fff;border:1px solid #ececf1;border-radius:15px;grid-template-columns:48px minmax(0,1fr) auto 22px;align-items:center;gap:11px;min-height:74px;padding:9px;display:grid}.receipt-row img{object-fit:cover;background:#eee;border-radius:7px;width:48px;height:54px}.receipt-row div{gap:4px;min-width:0;display:grid}.receipt-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.receipt-row span{color:#868d9b;font-size:11px}.receipt-row b{color:#252a3b;white-space:nowrap;font-size:13px}.delete-button{color:#a8adba;background:0 0;border:0;font-size:21px}.empty{color:#697187;text-align:center;border:1px dashed #d7d7e1;border-radius:18px;place-items:center;min-height:260px;padding:30px;display:grid}.empty span{color:#a5a1ff;font-size:45px}.empty strong{color:#454b5d;margin-top:8px}.empty p{margin:7px 0 0;font-size:13px}.floating-add{margin-top:21px;position:sticky;bottom:16px}.bottom-nav{z-index:5;max-width:640px;padding:9px 20px calc(9px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff2;border-top:1px solid #e9e9ef;grid-template-columns:1fr 1fr;margin:auto;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#8a90a0;background:0 0;border:0;place-items:center;gap:2px;font-size:10px;display:grid}.bottom-nav button span{font-size:20px}.bottom-nav .active{color:#635bff;font-weight:700}@media (width>=641px){body{background:#ececf1}.app-shell{box-shadow:0 0 50px #221f4414}.bottom-nav{left:50%;transform:translate(-50%)}}
