*{box-sizing:border-box}body{margin:0;background:#f6f5f0;color:#29362d;font:15px/1.5 system-ui,sans-serif}header{padding:24px 5%;border-bottom:1px solid #dddfd5;display:flex;justify-content:space-between;align-items:center;background:#fafaf6}.brand{display:flex;gap:14px;align-items:center;letter-spacing:2px;font-size:13px;font-weight:700}.brand small{display:block;letter-spacing:0;font-size:12px;font-weight:400;color:#727a70}.mark{border:1px solid #89977a;border-radius:50%;padding:10px;font-family:Georgia,serif;font-size:20px}.badge{font-size:12px;background:#e8eddf;border-radius:20px;padding:7px 13px}main{max-width:1240px;margin:auto;padding:40px 30px}.intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:36px}.eyebrow{font-size:10px;letter-spacing:2px;color:#788368;font-weight:700}h1{font:42px/1.15 Georgia,serif;margin:12px 0}p{color:#72796d}button,.file-button{font:inherit;border:1px solid transparent;border-radius:7px;background:#344b39;color:white;padding:11px 18px;cursor:pointer;display:inline-block;font-weight:600}button:hover{filter:brightness(.93)}button:disabled{opacity:.5;cursor:wait}.secondary,.file-button{background:#fafaf6;border-color:#d9ddd0;color:#344b39}.toolbar,.actions,.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.toolbar{margin-bottom:24px}.toolbar label{display:flex;gap:14px;align-items:center;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.stats article{background:#fff;border:1px solid #e1e3d9;border-radius:10px;padding:24px}.stats article:first-child{background:#e9edde;border-color:#dce3cd}.stats span,small{display:block;color:#747d6e;font-size:12px}.stats strong{display:block;font-size:34px;font-weight:500;margin:8px 0}.layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);gap:24px}.panel{background:#fff;border:1px solid #e1e3d9;border-radius:10px;padding:24px}h2{font:23px Georgia,serif;margin:0 0 20px}.section-title h2{margin-bottom:0}.section-title{margin-bottom:20px}.section-title span{font-size:12px;color:#7b8473}.entry{padding:18px 0;border-top:1px solid #ebede5;display:grid;grid-template-columns:1fr auto;gap:12px}.entry h3{font-size:15px;margin:0 0 5px;overflow-wrap:anywhere}.entry p{margin:0;font-size:12px}.entry .value{text-align:right;font-size:18px}.entry .actions{justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-top:10px}.entry button{font-size:11px;padding:5px 9px;background:#f5f6f0;color:#4e6044;border-color:#e4e7dc}.reviewed{font-size:11px;color:#526b3f}.cat{margin:18px 0;font-size:12px}.cat div:first-child{display:flex;justify-content:space-between;gap:8px}.bar{height:6px;background:#eef0e7;border-radius:4px;margin-top:8px;overflow:hidden}.bar i{display:block;height:100%;background:#8b9b71}.note{border-top:1px solid #e6e9df;margin-top:28px;padding-top:24px;font-size:12px}.note strong{font-family:Georgia,serif;font-size:17px;font-weight:400}.empty{padding:48px 16px;text-align:center;color:#78816e}.empty strong{display:block;font:24px Georgia,serif;color:#45533d;margin-bottom:8px}.storage{margin-top:28px;padding:20px 24px;border:1px solid #dce1d3;border-radius:8px;font-size:13px}.storage summary{cursor:pointer;font-weight:600}footer{display:flex;justify-content:space-between;margin:32px 0 0;font-size:11px;color:#89917f}dialog{border:0;border-radius:12px;padding:28px;width:min(520px,calc(100% - 24px));max-height:90vh;box-shadow:0 24px 80px #17281744}dialog::backdrop{background:#1b271a66}label{display:block;font-size:13px;margin-bottom:15px}input,select{display:block;width:100%;padding:11px;border:1px solid #ced5c5;border-radius:6px;background:white;font:inherit;color:#29362d;margin-top:5px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.muted{font-size:12px;color:#7b8274}.icon{background:transparent;color:#344b39;font-size:24px;padding:0 6px}.check{display:flex;align-items:center;gap:8px;font-size:12px}.check input{width:auto;margin:0}.file-button input{max-width:220px;font-size:11px}#formError{color:#a33524;font-size:13px}#save{width:100%}#receiptImage{width:100%;object-fit:contain}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#293c2d;color:#fff;border-radius:8px;padding:12px 22px;display:none;max-width:90%;z-index:10}#report{display:none}button:focus-visible,summary:focus-visible{outline:3px solid #a9b781;outline-offset:3px}@media(max-width:700px){header{padding:18px}.badge{display:none}main{padding:28px 16px}.intro{display:block}h1{font-size:34px}.intro button{width:100%;margin-top:10px}.toolbar{align-items:flex-start;flex-direction:column}.toolbar .actions{width:100%}.toolbar button{flex:1;font-size:12px}.stats{gap:8px}.stats article{padding:14px 10px}.stats strong{font-size:23px}.stats small{font-size:10px}.stats span{font-size:11px}.layout{grid-template-columns:1fr}.panel{padding:18px}footer span{display:none}.storage .actions{flex-wrap:wrap}}@media print{body>*{display:none!important}#report{display:block!important;color:#000;font:11px/1.4 Arial;padding:10mm}#report h1{font-size:28px}#report table{width:100%;border-collapse:collapse;margin-top:20px}#report th,#report td{text-align:left;border-bottom:1px solid #bbb;padding:8px;overflow-wrap:anywhere}#report tr{break-inside:avoid}#report thead{display:table-header-group}@page{size:A4;margin:12mm}}

[hidden]{display:none!important}.language{margin:0;font-size:10px}.language select{padding:6px;font-size:13px}.camera-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.camera-actions button{font-size:13px;padding:14px 8px}#photoPreview{max-height:240px;max-width:100%;display:block;margin:10px auto;border-radius:6px}#suggestions{background:#edf1e5;padding:16px;border-radius:8px;margin:16px 0}#suggestions dl{font-size:13px}#suggestions dt{font-weight:600}#suggestions dd{margin:0 0 8px;overflow-wrap:anywhere}#scanText{white-space:pre-wrap;font-size:11px;max-height:180px;overflow:auto}.check{margin-top:10px}.check input{flex-shrink:0;width:20px;height:20px}.entry button{min-height:38px}input,select{font-size:16px}dialog{overscroll-behavior:contain}#scanStatus{font-size:13px}@media(max-width:480px){header{padding:14px 12px}.brand{font-size:10px;letter-spacing:1px}.brand small{font-size:10px}.mark{padding:8px;font-size:16px}dialog{padding:20px 16px}.toolbar>div{width:100%}#pdf{width:100%}}
