:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#101314;color:#f4f1ea;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #f4f1ea;--muted: #aeb7b2;--faint: #727b78;--line: rgba(244, 241, 234, .13);--panel: #181d1c;--panel-2: #202725;--green: #43d18b;--teal: #58c4dd;--gold: #efc05a;--red: #ff7a6c;--blue: #83a6ff}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#58c4dd14,#10131400 320px),#101314}button,input,select,textarea{font:inherit}button{border:0}.app-shell{min-height:100vh;padding-bottom:82px}.screen{width:min(100%,760px);margin:0 auto}.scan-layout{min-height:calc(100vh - 82px);display:grid;grid-template-rows:auto 1fr auto auto;gap:14px;padding:max(14px,env(safe-area-inset-top)) 14px 14px}.scan-topbar,.screen-header,.confirm-header,.section-title,.item-topline,.progress-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:14px}.scan-topbar h1,.screen-header h1,.confirm-header h2{margin:0;font-size:28px;letter-spacing:0;line-height:1.05}.eyebrow{margin:0 0 4px;color:var(--teal);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.icon-button{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#f4f1ea1a;color:var(--ink)}.icon-button.quiet{background:#f4f1ea0f}.camera-stage{position:relative;min-height:430px;overflow:hidden;border:1px solid rgba(244,241,234,.14);border-radius:8px;background:linear-gradient(135deg,rgba(67,209,139,.12),transparent 38%),linear-gradient(225deg,rgba(239,192,90,.1),transparent 35%),#111715}.camera-video{width:100%;height:100%;min-height:430px;object-fit:cover;opacity:0}.camera-video.live{opacity:1}.camera-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;gap:20px;color:var(--muted)}.receipt-paper{width:min(58%,260px);aspect-ratio:.62;display:grid;align-content:start;gap:12px;padding:24px 20px;border-radius:6px;background:#f6f0df;color:#26302d;box-shadow:0 24px 80px #00000057;transform:rotate(-2deg)}.receipt-paper span{display:block;height:10px;border-radius:999px;background:#cfc7b6}.receipt-paper b{margin-top:20px;font-size:30px}.scanner-frame{position:absolute;top:12%;right:12%;bottom:12%;left:12%;pointer-events:none}.scanner-frame span{position:absolute;width:48px;height:48px;border-color:var(--green);border-style:solid}.scanner-frame span:nth-child(1){top:0;left:0;border-width:3px 0 0 3px}.scanner-frame span:nth-child(2){top:0;right:0;border-width:3px 3px 0 0}.scanner-frame span:nth-child(3){bottom:0;right:0;border-width:0 3px 3px 0}.scanner-frame span:nth-child(4){bottom:0;left:0;border-width:0 0 3px 3px}.scan-hint{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid rgba(67,209,139,.28);border-radius:8px;background:#101314c7;color:#d9f8e8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.scan-actions{display:grid;grid-template-columns:1fr 1fr 76px 1fr 1fr;align-items:center;gap:8px}.tool-button,.secondary-button,.item-actions button,.suggestion button,.statement-card button,.danger-button,.support-actions button,.api-card button,.section-form button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border-radius:8px;background:var(--panel-2);color:var(--ink);font-weight:750}.tool-button span{font-size:12px}.tool-button.active{background:#43d18b2e;color:#d9f8e8}.capture-button{width:76px;height:76px;display:grid;place-items:center;border:5px solid rgba(244,241,234,.24);border-radius:999px;background:var(--green);color:#07110c;box-shadow:0 16px 44px #43d18b3d}.voice-strip{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(88,196,221,.28);border-radius:8px;background:#58c4dd17;color:#dff8ff}.voice-strip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-input{display:none}.scan-status{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(67,209,139,.26);border-radius:8px;background:#43d18b17;color:#d9f8e8}.scan-status.warning{border-color:#efc05a52;background:#efc05a1a;color:#ffedbd}.scan-status span{min-width:0;overflow-wrap:anywhere}.confirm-panel{position:fixed;left:50%;bottom:82px;z-index:5;width:min(100% - 20px,720px);max-height:calc(100vh - 104px);overflow:auto;transform:translate(-50%);padding:10px 14px 14px;border:1px solid rgba(244,241,234,.16);border-radius:8px 8px 0 0;background:#181d1cfa;box-shadow:0 -30px 80px #00000070}.panel-handle{width:48px;height:5px;margin:0 auto 14px;border-radius:999px;background:#f4f1ea3d}.confirm-header p{margin:6px 0 0;color:var(--muted)}.ocr-status{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:9px 11px;border:1px solid rgba(239,192,90,.28);border-radius:8px;background:#efc05a17;color:#ffedbd;font-size:13px;font-weight:800}.ocr-status.ready{border-color:#43d18b42;background:#43d18b17;color:#d9f8e8}.receipt-summary,.metric-grid,.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.receipt-summary div,.metric,.evidence-item,.score-band,.coach-card,.section-block,.inbox-item,.rule-row,.suggestion,.empty-state{border:1px solid var(--line);border-radius:8px;background:var(--panel)}.receipt-summary div{padding:12px}.receipt-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.receipt-edit-grid label{display:grid;gap:6px;min-width:0}.receipt-edit-grid label.wide{grid-column:span 3}.receipt-edit-grid span{color:var(--muted);font-size:12px;font-weight:800}.receipt-edit-grid input{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:8px;outline:0;padding:0 11px;background:#111615;color:var(--ink)}.receipt-summary span,.metric span,.evidence-item span,.rule-row span,.book-row span,.settings-row span,.report-row span,.section-title span,.progress-row span,.inbox-item small{color:var(--muted);font-size:13px}.receipt-summary strong,.metric strong,.evidence-item strong,.settings-row strong{display:block;margin-top:4px;font-size:17px}.settings-row strong{min-width:0;overflow-wrap:anywhere;text-align:right}.suggestion-band{display:flex;gap:12px;margin-top:12px;padding:12px;border-radius:8px;background:#43d18b21;color:#e9fff4}.suggestion-band span{display:block;margin-top:2px;color:#b9dec9;font-size:13px}.quick-question{margin-top:16px}.quick-question p{margin:0 0 10px;font-weight:800}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choice-button{min-height:44px;border-radius:8px;background:#222a28;color:var(--ink);font-weight:760}.choice-button.selected{background:var(--gold);color:#191405}.line-items{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.line-items span{padding:7px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:12px}.primary-actions{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin-top:14px}.confirm-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;background:var(--green);color:#07110c;font-weight:850}.confirm-button:disabled{cursor:not-allowed;opacity:.45}.save-status{margin-top:10px;padding:10px 12px;border:1px solid rgba(67,209,139,.26);border-radius:8px;background:#43d18b17;color:#d9f8e8;font-size:13px;font-weight:800}.save-status.warning{border-color:#efc05a52;background:#efc05a1a;color:#ffedbd}.content-screen{min-height:calc(100vh - 82px);padding:max(18px,env(safe-area-inset-top)) 14px 20px}.screen-header{margin-bottom:16px}.header-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:#58c4dd24;color:#dff8ff}.score-band{display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:center;padding:16px;background:linear-gradient(135deg,rgba(67,209,139,.15),transparent),#181d1c}.score-ring{width:96px;height:96px;display:grid;place-items:center;align-content:center;border:8px solid rgba(67,209,139,.32);border-top-color:var(--green);border-radius:999px}.score-ring span{font-size:32px;font-weight:900}.score-ring small{color:var(--muted)}.score-band h2{margin:0 0 6px;font-size:25px}.score-band p,.coach-card p,.inbox-item p,.suggestion p,.rule-row p,.location-note p{margin:0;color:var(--muted);line-height:1.45}.coach-card{display:flex;gap:12px;align-items:center;margin-top:12px;padding:14px;border-color:#efc05a42;background:#efc05a14}.metric-grid{grid-template-columns:repeat(4,1fr)}.metric{display:grid;gap:8px;padding:12px}.section-block{margin-top:12px;padding:14px}.section-title{margin-bottom:12px}.section-title h3{margin:0;font-size:17px}.challenge-list,.report-list,.receipt-list,.inbox-list,.rule-list,.settings-list,.book-list,.suggested-rules{display:grid;gap:10px}.progress-row{display:grid;gap:7px}.progress-track{height:9px;overflow:hidden;border-radius:999px;background:#f4f1ea14}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--teal))}.search-box{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#111615}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}.report-list{margin-top:10px}.report-row,.receipt-row,.book-row,.settings-row,.transaction-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.report-row:last-child,.receipt-row:last-child,.book-row:last-child,.settings-row:last-child,.transaction-row:last-child{border-bottom:0}.report-row strong,.receipt-row strong,.book-row strong,.transaction-row strong{display:block;margin-bottom:2px}.receipt-row>strong{text-align:right}.receipt-row span{color:var(--muted);font-size:13px}.statement-card{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(88,196,221,.22);border-radius:8px;background:#58c4dd14}.statement-main{display:flex;align-items:center;gap:10px;min-width:0}.statement-main strong,.statement-main span{display:block}.statement-main span,.transaction-row span{color:var(--muted);font-size:13px}.statement-card button{background:#58c4dd2e;color:#dff8ff}.transaction-list{margin-top:8px}.status-pill{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:92px;padding:7px 8px;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap}.status-pill.matched{background:#43d18b24;color:#d9f8e8}.status-pill.review{background:#efc05a24;color:#ffe4a5}.status-strip{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px;border-radius:8px;background:#83a6ff1a}.status-strip span{color:var(--muted)}.inbox-item{padding:14px}.item-topline span{color:var(--gold);font-size:12px;font-weight:850;text-transform:uppercase}.inbox-item h2,.rule-row h2,.suggestion h2{margin:8px 0 6px;font-size:18px}.inbox-item small{display:block;margin-top:8px}.item-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.empty-state{display:grid;place-items:center;gap:8px;padding:44px 16px;text-align:center}.empty-state h2{margin:0}.empty-state p{margin:0;color:var(--muted)}.suggestion{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px;border-color:#58c4dd38}.suggestion button{margin-top:12px;background:#58c4dd29;color:#dff8ff}.rule-row{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;padding:12px}.rule-confidence{width:52px;height:52px;display:grid;place-items:center;border-radius:8px;background:#43d18b24;color:#d9f8e8;font-weight:900}.switch{position:relative;width:42px;height:24px;border-radius:999px;background:#f4f1ea24}.switch:after{content:"";position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:var(--ink)}.switch.on{background:#43d18b6b}.switch.on:after{left:22px;background:var(--green)}.segmented{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:6px;padding:4px;border-radius:8px;background:#111615}.segmented button{min-height:42px;border-radius:6px;background:transparent;color:var(--muted);font-weight:750}.segmented button.selected{background:var(--blue);color:#071021}.location-note{display:flex;align-items:center;gap:10px;margin-top:12px;padding:12px;border-radius:8px;background:#f4f1ea0d}.danger-button{width:100%;background:#ff7a6c1f;color:#ffd7d2}.identity-card{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid rgba(67,209,139,.22);border-radius:8px;background:#43d18b17}.section-manager{display:grid;gap:14px}.managed-section{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.managed-section:first-of-type{padding-top:0;border-top:0}.managed-heading,.managed-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px}.managed-heading strong,.managed-heading span,.managed-row strong,.managed-row span{display:block}.managed-heading span,.managed-row span,.managed-empty{color:var(--muted);font-size:13px}.section-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(92px,.65fr) minmax(84px,.7fr) 48px;gap:8px}.section-form input,.section-form select{min-width:0;min-height:46px;border:1px solid var(--line);border-radius:8px;outline:0;background:#111615;color:var(--ink)}.section-form input{padding:0 12px}.section-form select{padding:0 10px}.section-form button{padding:0;background:#43d18b29;color:#d9f8e8}.section-form button:disabled{opacity:.45}.managed-list{display:grid;gap:4px}.managed-row{grid-template-columns:minmax(0,1fr) auto;min-height:48px;padding:7px 0;border-bottom:1px solid var(--line)}.managed-row:last-child{border-bottom:0}.managed-row strong,.managed-row span{min-width:0;overflow-wrap:anywhere}.managed-row .icon-button{width:36px;height:36px;color:#ffd7d2}.managed-empty{padding:8px 0}.api-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:12px;padding:13px;border:1px solid rgba(255,122,108,.22);border-radius:8px;background:#ff7a6c14}.api-card.connected{border-color:#43d18b38;background:#43d18b17}.api-card strong,.api-card span{display:block}.api-card span{margin-top:3px;color:var(--muted);overflow-wrap:anywhere}.api-card button{background:#f4f1ea1a}.otp-entry{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.auth-email-row{margin-bottom:8px}.auth-email-row input,.otp-entry input{min-height:48px;width:100%;border:1px solid var(--line);border-radius:8px;outline:0;padding:0 12px;background:#111615;color:var(--ink)}.otp-entry input{font-size:18px;font-weight:850;letter-spacing:0}.otp-entry button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border-radius:8px;background:var(--green);color:#07110c;font-weight:850}.otp-entry button:disabled{cursor:not-allowed;opacity:.45}.identity-card strong,.identity-card span{display:block}.identity-card span{margin-top:3px;color:var(--muted);overflow-wrap:anywhere}.support-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.support-actions button{background:var(--panel-2)}.support-actions button:first-child{background:#ff7a6c1f;color:#ffd7d2}.support-actions button:last-child{background:#83a6ff24;color:#dfe7ff}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12;display:grid;align-items:end;padding-left:0;background:#00000070}.evidence-drawer{width:min(100%,760px);max-height:min(86vh,760px);margin:0 auto;overflow:auto;padding:10px 14px max(14px,env(safe-area-inset-bottom));border:1px solid rgba(244,241,234,.16);border-radius:8px 8px 0 0;background:#181d1cfc;box-shadow:0 -30px 80px #0000007a}.admin-drawer{width:min(100%,980px)}.admin-policy,.diagnostic-card{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:12px;border:1px solid rgba(67,209,139,.22);border-radius:8px;background:#43d18b17}.admin-policy p{margin:0;color:#d9f8e8;line-height:1.45}.admin-table{overflow-x:auto;border:1px solid var(--line);border-radius:8px}.admin-table-row{display:grid;grid-template-columns:minmax(210px,1.6fr) repeat(5,minmax(96px,.8fr));min-width:720px;border-bottom:1px solid var(--line)}.admin-table-row:last-child{border-bottom:0}.admin-table-row span{padding:11px 10px;color:var(--muted);font-size:13px}.admin-table-head span{color:var(--ink);font-weight:850;background:#f4f1ea0f}.bug-report-list{display:grid;gap:10px}.bug-report-row{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#111615}.bug-report-row strong,.bug-report-row span{display:block}.bug-report-row span,.bug-report-row p{color:var(--muted)}.bug-report-row p{margin:0;line-height:1.45}.bug-report-row code{display:block;overflow-wrap:anywhere;padding:9px;border-radius:6px;background:#f4f1ea0f;color:#dff8ff;font-size:12px}.bug-form{display:grid;gap:12px;margin-top:14px}.bug-form label{display:grid;gap:7px}.bug-form label span{color:var(--muted);font-size:13px;font-weight:800}.bug-form input,.bug-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;outline:0;background:#111615;color:var(--ink)}.bug-form input{min-height:46px;padding:0 12px}.bug-form textarea{resize:vertical;padding:12px;line-height:1.45}.diagnostic-card{align-items:center}.diagnostic-card strong,.diagnostic-card span{display:block}.diagnostic-card span{margin-top:3px;color:var(--muted);overflow-wrap:anywhere}.evidence-grid{grid-template-columns:repeat(4,1fr)}.evidence-item{display:grid;gap:7px;min-width:0;padding:12px}.evidence-item strong{min-width:0;overflow-wrap:anywhere;font-size:14px}.drawer-section{margin-top:10px}.proof-list{display:grid;gap:9px}.proof-list div{display:flex;align-items:center;gap:9px;color:var(--muted)}.snapshot-card{display:grid;gap:10px;padding:12px;border-radius:8px;background:#111615}.snapshot-card strong,.snapshot-card span{display:block}.snapshot-card span,.snapshot-card p{color:var(--muted)}.snapshot-card p{margin:0;line-height:1.45}.drawer-actions{display:grid;grid-template-columns:1.2fr 1fr;gap:8px;margin-top:12px}.export-status{display:flex;align-items:center;gap:9px;margin-top:10px;padding:10px 12px;border:1px solid rgba(67,209,139,.22);border-radius:8px;background:#43d18b1a;color:#d9f8e8}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:8;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:8px max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-bottom));border-top:1px solid rgba(244,241,234,.12);background:#0d1010f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-button{min-width:0;height:58px;display:grid;place-items:center;align-content:center;gap:4px;border-radius:8px;background:transparent;color:var(--muted)}.nav-button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:800}.nav-button.active{background:#43d18b21;color:#d9f8e8}@media(min-width:760px){.app-shell{padding-bottom:0;display:grid;grid-template-columns:108px 1fr}.screen{grid-column:2}.bottom-nav{top:0;right:auto;width:108px;grid-template-columns:1fr;align-content:start;border-top:0;border-right:1px solid rgba(244,241,234,.12);padding:14px 10px}.nav-button{height:72px}.confirm-panel{bottom:20px}.drawer-backdrop{padding-left:108px}.content-screen,.scan-layout{min-height:100vh}}@media(max-width:470px){.camera-stage,.camera-video{min-height:390px}.scan-actions{grid-template-columns:1fr 1fr 72px 1fr 1fr;gap:6px}.tool-button{padding:0 6px}.tool-button span{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}.evidence-grid,.drawer-actions,.statement-card,.api-card,.otp-entry,.section-form,.receipt-edit-grid{grid-template-columns:1fr}.receipt-edit-grid label.wide{grid-column:auto}.score-band,.primary-actions,.item-actions,.support-actions{grid-template-columns:1fr}.rule-row{grid-template-columns:58px 1fr}.rule-row .switch{grid-column:2}}
