@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800&display=swap");*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{--brand-ink:#1f1b17;--brand-ink-muted:#6b6258;--brand-rust:#c0532b;--brand-rust-dark:#8f3d20;--page-bg:#f7f2e9;--cream-bg:#f4ede4;--surface-warm:#fbf7f1;--surface-muted:#f1e8dc;--brand-border:rgba(31,27,23,.1);--brand-border-strong:rgba(31,27,23,.18);--shadow-warm:rgba(31,27,23,.08);--success:#4b6b4f;--success-soft:#e5ecdd;--danger:#a9412f;--danger-soft:#f6dfd8;--warning:#9c7a3c;--warning-soft:#fbefd0;--font-sans:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;--navy:var(--brand-ink);--navy-soft:#312b25;--paper:var(--surface-warm);--paper-muted:var(--surface-muted);--paper-line:var(--brand-border);--stamp-red:var(--danger);--brass:var(--brand-rust);--moss:var(--success);--ink-muted:var(--brand-ink-muted);--ledger-bg:var(--page-bg);background:var(--page-bg);color:var(--brand-ink);font-family:var(--font-sans);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}a{color:inherit}.appNav{background:color-mix(in srgb,var(--page-bg) 94%,transparent);border-bottom:1px solid var(--brand-border);padding:14px clamp(16px,4vw,48px);position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.appNavInner{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto;max-width:1120px;min-height:44px}.appBrand{gap:12px;min-width:0;text-decoration:none}.appBrand,.appBrandMark{align-items:center;display:inline-flex}.appBrandMark{background:var(--surface-warm);border:1px solid color-mix(in srgb,var(--brand-rust) 55%,var(--brand-border));border-radius:999px;color:var(--brand-rust);flex:0 0 auto;height:38px;justify-content:center;width:38px}.appBrandText{display:grid;grid-gap:4px;gap:4px;min-width:0}.appWordmark{color:var(--brand-ink);font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.appByline,.appWordmark{line-height:1;white-space:nowrap}.appByline{color:var(--brand-ink-muted);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.03em}.appNavLinks{gap:6px;justify-content:flex-end;min-width:0}.appNavLink,.appNavLinks{align-items:center;display:flex}.appNavLink{border:1px solid transparent;border-radius:8px;color:var(--brand-ink-muted);font-size:13px;font-weight:700;gap:7px;min-height:38px;padding:0 11px;text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease}.appNavLink:hover{background:var(--surface-warm);border-color:var(--brand-border);color:var(--brand-ink)}.appNavLink.active{background:var(--surface-warm);border-color:color-mix(in srgb,var(--brand-rust) 36%,var(--brand-border));color:var(--brand-rust)}.signOutButton{background:transparent;cursor:pointer;margin-left:6px}.authLoading,.authPage{align-items:center;background:var(--page-bg);color:var(--brand-ink-muted);display:flex;justify-content:center;min-height:100vh;padding:24px}.authPanel{background:var(--surface-warm);border:1px solid var(--brand-border);border-radius:8px;box-shadow:0 18px 48px var(--shadow-warm);display:grid;grid-gap:12px;gap:12px;max-width:390px;padding:24px;width:100%}.authEyebrow{color:var(--brand-rust);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.16em;margin:0;text-transform:uppercase}.authPanel h1{color:var(--brand-ink);font-size:32px;line-height:1.05;margin:0}.authPanel p{color:var(--brand-ink-muted);font-size:14px;line-height:1.55;margin:0}.authPanel input{background:#fffdf8;border:1px solid var(--brand-border);border-radius:8px;color:var(--brand-ink);font-size:15px;outline:none;padding:12px;width:100%}.authPanel input:focus{border-color:color-mix(in srgb,var(--brand-rust) 70%,var(--brand-border))}.authPanel button{background:var(--brand-ink);border:1px solid var(--brand-ink);border-radius:8px;color:var(--surface-warm);cursor:pointer;font-size:14px;font-weight:800;min-height:44px;padding:0 12px}.authModeRow{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.authPanel .authLinkButton,.authPanel .authModeRow button{background:#fffdf8;border:1px solid var(--brand-border);color:var(--brand-ink)}.authPanel .authModeRow button.active{background:var(--brand-rust);border-color:var(--brand-rust);color:var(--surface-warm)}.authPanel .authLinkButton{background:transparent;border:none;color:var(--brand-ink-muted);min-height:0;padding:4px;text-decoration:underline}.authPanel button:disabled{cursor:default;opacity:.55}.authError,.authStatus{border-radius:8px;font-size:13px;font-weight:700;padding:10px 12px}.authError{background:var(--danger-soft);color:var(--danger)}.authStatus{background:var(--success-soft);color:var(--success)}@media (max-width:680px){.appNavInner{align-items:flex-start;flex-direction:column;gap:14px}.appNavLinks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.appNavLink{justify-content:center}.signOutButton{grid-column:1/-1;margin-left:0}}.page{--page:var(--ledger-bg);--surface:var(--paper);--surface-muted:var(--paper-muted);--border:var(--paper-line);--border-strong:#c8bea7;--ink:var(--navy);--muted:var(--ink-muted);--muted-strong:#4d5560;--primary:var(--navy);--success:var(--moss);--success-soft:#e4eddf;--danger:var(--stamp-red);--danger-soft:#f8e4df;--accent:var(--brass);--shadow:0 14px 32px rgba(30,42,56,.08);min-height:100vh;padding:24px 16px 48px}.loadingText{color:var(--muted);font-size:14px;padding-top:60px;text-align:center}.container{margin:0 auto;max-width:760px}.pinPage{align-items:center;display:flex;justify-content:center}.pinPanel{margin:0 auto;max-width:360px;width:100%}.pinInput{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-size:26px;letter-spacing:.2em;margin:20px 0 10px;outline:none;padding:12px 14px;text-align:center;width:100%}.pinError{color:var(--danger);font-size:13px;font-weight:700;margin-bottom:10px;text-align:center}.keypad{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}.keypad button{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);cursor:pointer;font-size:18px;font-weight:700;min-height:52px}.keypad button:nth-child(10),.keypad button:nth-child(12){color:var(--muted);font-size:13px;font-weight:700}.header{background:var(--navy);border-radius:0 0 18px 18px;color:var(--paper);margin-bottom:0;padding:26px 26px 54px}.billAmount,.billMeta,.debtFields span,.formField span,.input[type=date],.ledgerEyebrow,.paymentInput,.settingsGrid span,.summaryLabel{font-family:IBM Plex Mono,monospace}.ledgerEyebrow{color:var(--brass);font-size:12px;font-weight:700;letter-spacing:.12em;margin:0 0 8px;text-transform:uppercase}.title{color:var(--paper);font-family:Fraunces,Georgia,serif;font-size:clamp(30px,5vw,48px);font-weight:500;margin:0}.subtitle{color:hsla(40,53%,97%,.72);font-size:14px;margin:4px 0 0}.summaryRow{display:flex;gap:10px;margin:-30px 18px 18px;position:relative;z-index:1}.summaryRow.isLoading{opacity:.62}.summaryCard{background:var(--surface);border:1px dashed var(--border);border-radius:10px;flex:1 1;padding:14px 16px;box-shadow:var(--shadow)}.summaryLabel{font-size:11px;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.summaryValue{font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:500}.balancePanel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:10px;gap:10px;margin-bottom:16px;padding:12px}.balanceHeader{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.balanceTitle{align-items:center;color:var(--ink);display:flex;font-size:14px;font-weight:800;gap:6px}.verifiedLabel{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;margin-top:4px;text-transform:uppercase}.balanceHeader p,.reminderNote{color:var(--muted);font-size:12px;line-height:1.35;margin:4px 0 0}.balanceWarning{background:#fff6db;border:1px solid #ead37c;border-radius:999px;color:#755d00;flex-shrink:0;font-size:12px;font-weight:800;padding:5px 8px}.settingsGrid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr)) auto}.settingsGrid label{display:grid;grid-gap:4px;gap:4px;min-width:0}.debtFields span,.formField span,.settingsGrid span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.settingsGrid input{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--ink);min-width:0;outline:none;padding:9px 10px;width:100%}.settingsGrid button{align-self:end;background:var(--primary);border:1px solid var(--primary);border-radius:8px;color:var(--surface);cursor:pointer;font-size:13px;font-weight:800;padding:9px 12px}.reminderNote{align-items:center;display:flex;gap:6px;margin:0}.overdraftPrompt,.reconcilePrompt{background:#fff6db;border:1px solid #ead37c;border-radius:8px;color:#755d00;display:flex;flex-wrap:wrap;gap:8px;padding:10px}.reconcilePrompt div{display:grid;flex:1 1 220px;grid-gap:2px;gap:2px}.overdraftPrompt strong,.reconcilePrompt strong{color:var(--ink)}.overdraftPrompt span,.reconcilePrompt span{font-size:12px}.overdraftPrompt button,.reconcilePrompt button,.secondaryAction{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);cursor:pointer;font-size:12px;font-weight:800;padding:8px 10px}.secondaryAction{align-items:center;display:inline-flex;gap:6px;justify-content:center;width:-moz-fit-content;width:fit-content}.negativeAmount{color:var(--danger)!important}.importPanel,.realityCard,.transactionsPanel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px;margin-bottom:16px;padding:14px}.realityHeader,.sectionHeader{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.sectionHeader h2{font-family:Fraunces,Georgia,serif;font-weight:500;margin:0}.statementTextarea{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-family:IBM Plex Mono,monospace;min-height:160px;outline:none;padding:12px;resize:vertical;width:100%}.importActions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.fileButton{align-items:center;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;gap:6px;padding:10px 12px}.fileButton input{display:none}.reviewBox,.unparsedBox{background:var(--surface-muted);border:1px dashed var(--border);border-radius:8px;display:grid;grid-gap:10px;gap:10px;padding:12px}.realityRows,.reviewCategoryGrid,.reviewStats{display:grid;grid-gap:8px;gap:8px}.reviewStats{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.reviewCategoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.realityRows div,.reviewCategoryGrid div{align-items:center;display:flex;justify-content:space-between}.realityHeader span,.realityRows span,.reviewCategoryGrid span,.transactionRow small{color:var(--muted);font-size:12px}.realityRows strong,.reviewCategoryGrid strong,.transactionAmount strong{color:var(--ink);font-family:IBM Plex Mono,monospace}.unparsedBox code{color:var(--muted-strong);font-family:IBM Plex Mono,monospace;font-size:11px;white-space:pre-wrap}.transactionList{border:1px solid var(--border);overflow:hidden}.transactionRow{border-bottom:1px solid var(--border);display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px}.transactionRow:last-child{border-bottom:none}.transactionRow div:first-child{display:grid;grid-gap:2px;gap:2px;min-width:0}.transactionRow span{color:var(--ink);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transactionAmount{align-items:flex-end;display:grid;grid-gap:4px;gap:4px;justify-items:end}.transactionAmount button{background:none;border:none;color:var(--danger);cursor:pointer;font-size:11px;font-weight:800;padding:0;text-decoration:underline}.errorBanner{align-items:center;background:var(--danger-soft);border-radius:8px;color:var(--danger);display:flex;flex-wrap:wrap;font-size:13px;gap:8px;margin-bottom:10px;padding:10px 12px}.errorText{flex:1 1;min-width:180px}.retryButton{background:none;border:none;color:var(--danger);cursor:pointer;flex-shrink:0;font-size:13px;font-weight:700;padding:0;text-decoration:underline}.priorBanner,.toastNotice{align-items:center;border-radius:8px;display:flex;font-size:13px;gap:10px;justify-content:space-between;margin-bottom:10px;padding:10px 12px}.toastNotice{border:1px solid #cbdabc}.priorBanner button,.toastNotice button{background:none;border:none;cursor:pointer;flex-shrink:0;font-weight:800;padding:0}.toastNotice button{align-items:center;color:var(--success);display:inline-flex}.priorBanner{background:var(--danger-soft);border:1px solid #eec3bb;color:var(--danger)}.priorBanner span{min-width:0}.priorBanner button{color:var(--danger);text-decoration:underline}.monthSwitcher{align-items:center;background:var(--surface);border:1px dashed var(--border);border-radius:8px;box-shadow:var(--shadow);color:var(--ink);display:grid;grid-template-columns:44px minmax(0,1fr) 44px;margin:0 0 12px;min-height:48px}.monthSwitcher span{font-family:Fraunces,Georgia,serif;font-size:21px;font-weight:500;text-align:center}.monthSwitcher button{align-items:center;align-self:stretch;background:transparent;border:none;color:var(--primary);cursor:pointer;display:flex;font-size:0;justify-content:center;padding:0}.monthSwitcher button span{font-family:IBM Plex Mono,monospace;font-size:24px;font-weight:800;line-height:1}.monthSwitcher button:hover{background:var(--surface-muted)}.filterScroller{display:flex;flex-wrap:wrap;gap:0;margin:6px 0 -1px;overflow:visible;padding:0 8px;position:relative;z-index:2}.filterChip{background:#efe7d8;border-bottom:none;border-radius:10px 10px 0 0;color:var(--muted-strong);cursor:pointer;flex:0 0 auto;font-size:13px;font-weight:600;line-height:1.2;margin-right:-1px;padding:10px 13px 11px;white-space:nowrap}.filterChip.active{border-color:var(--border);color:var(--primary);position:relative;z-index:3}.filterChip.active,.list{background:var(--surface)}.list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:0 10px 10px 10px;box-shadow:var(--shadow);gap:0;margin-bottom:16px;overflow:hidden}.emptyState{padding:32px 16px;text-align:center}.emptyState.compact{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 16px}.emptyText{color:var(--muted);font-size:14px;line-height:1.5;margin:0}.skeletonRow{background:linear-gradient(90deg,transparent,rgba(30,42,56,.05),transparent),var(--surface);background-size:200% 100%;border-bottom:1px solid var(--border);min-height:68px;animation:ledgerPulse 1.3s ease-in-out infinite}@keyframes ledgerPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.billRow{align-items:center;border:none;border-radius:0;display:flex;gap:12px;min-height:58px;padding:12px 14px;box-shadow:none}.billRow.isPaid{opacity:.55}.billGroup{display:flex;flex-direction:column;gap:6px}.checkButton{align-items:center;background:var(--surface);border:2px solid var(--border-strong);border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:0;width:24px}.checkButton.checked{background:var(--paper);border-color:var(--stamp-red)}.addButton:disabled,.checkButton:disabled,.closeButton:disabled,.deleteButton:disabled,.editBillButton:disabled,.resetLink:disabled,.settingsGrid button:disabled{cursor:default;opacity:.5}.editBillButton{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;gap:12px;padding:0;text-align:left}.billInfo,.editBillButton{flex:1 1;min-width:0}.billNameRow{align-items:center;display:flex;gap:6px}.billName{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.categoryDot{border-radius:50%;flex-shrink:0;height:6px;width:6px}.billMeta{color:var(--muted);font-size:12px;margin-top:2px}.pastDue{color:var(--danger);font-weight:600}.paymentProgress{color:var(--accent);font-weight:600}.debtMeta{color:var(--muted-strong);font-weight:700}.billAmount{flex-shrink:0;font-size:15px;font-weight:700}.amountStack{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px;min-width:86px}.inkStamp{border:1px solid var(--stamp-red);border-radius:3px;color:var(--stamp-red);display:inline-block;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700;letter-spacing:.08em;line-height:1;opacity:.78;padding:3px 5px;text-transform:uppercase;transform:rotate(-7deg)}.closeButton,.deleteButton{background:none;border:none;cursor:pointer;padding:4px}.deleteButton{flex-shrink:0}.paymentEditor{align-items:center;background:var(--surface);display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding:10px}.paymentEditor,.paymentInput{border:1px solid var(--border);border-radius:8px}.paymentInput{background:var(--surface-muted);color:var(--ink);font-size:15px;min-width:0;outline:none;padding:10px 11px;width:100%}.paymentButton,.paymentCancel{border-radius:8px;cursor:pointer;font-size:13px;font-weight:700;padding:10px 12px}.paymentButton{background:var(--primary);border:1px solid var(--primary);color:var(--surface)}.paymentCancel{background:none;border:1px solid var(--border);color:var(--muted)}.fab{align-items:center;background:var(--primary);border:none;border-radius:8px;color:var(--surface);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px;width:100%}.formCard{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:16px;box-shadow:var(--shadow)}.formHeader{align-items:center;display:flex;justify-content:space-between;margin-bottom:2px}.formTitle{color:var(--ink);font-size:15px;font-weight:700}.formRow{display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.formField{display:grid;grid-gap:5px;gap:5px;min-width:0}.debtFields{display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.debtFields label{display:grid;grid-gap:5px;gap:5px;min-width:0}.input,.select{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-size:15px;min-width:0;outline:none;padding:11px 12px;width:100%}.checkboxRow{align-items:center;color:var(--muted-strong);display:flex;font-size:14px;gap:8px;line-height:1.3;padding:2px 0}.checkboxRow input{accent-color:var(--primary);height:16px;width:16px}.addButton{background:var(--primary);border:none;border-radius:8px;color:var(--surface);cursor:pointer;font-size:15px;font-weight:600;margin-top:4px;padding:12px}.resetLink{background:none;border:none;color:var(--muted);cursor:pointer;display:block;font-size:13px;margin:16px auto 0;text-decoration:underline}@media (max-width:360px){.page{padding-inline:12px}.filterScroller{padding-inline:4px}.billRow{gap:9px;padding-inline:10px}.billAmount{font-size:14px}.amountStack{min-width:72px}.debtFields,.reviewCategoryGrid,.reviewStats,.settingsGrid,.transactionRow{grid-template-columns:minmax(0,1fr)}.transactionAmount{align-items:start;justify-items:start}}.page{--page:var(--page-bg);--surface:var(--surface-warm);--surface-muted:var(--surface-muted);--border:var(--brand-border);--border-strong:var(--brand-border-strong);--ink:var(--brand-ink);--muted:var(--brand-ink-muted);--muted-strong:#554c43;--primary:var(--brand-rust);--success:var(--success);--success-soft:var(--success-soft);--danger:var(--danger);--danger-soft:var(--danger-soft);--accent:var(--brand-rust);--shadow:0 14px 36px var(--shadow-warm);background:var(--page);padding:28px clamp(16px,4vw,48px) 56px}.container{max-width:960px}.header{background:linear-gradient(135deg,rgba(192,83,43,.1),hsla(0,0%,100%,0) 46%),var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 48px var(--shadow-warm);color:var(--ink);margin-bottom:16px;padding:clamp(24px,5vw,42px)}.ledgerEyebrow{color:var(--brand-rust);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.16em}.title{color:var(--ink);font-family:var(--font-sans);font-size:clamp(38px,8vw,72px);font-weight:700;letter-spacing:0;line-height:.98;max-width:780px}.subtitle{color:var(--muted);font-size:16px;line-height:1.6;margin-top:14px}.summaryRow{gap:12px;margin:0 0 18px}.balancePanel,.formCard,.importPanel,.list,.monthSwitcher,.realityCard,.summaryCard,.transactionsPanel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px var(--shadow-warm)}.summaryCard{border-style:solid;padding:16px 18px}.billAmount,.billMeta,.debtFields span,.formField span,.input[type=date],.paymentInput,.settingsGrid span,.summaryLabel{font-family:var(--font-mono)}.summaryLabel{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.12em}.summaryValue{color:var(--ink);font-family:var(--font-sans);font-size:26px;font-weight:750}.paidValue{color:var(--success)}.balancePanel,.formCard,.importPanel,.realityCard,.transactionsPanel{gap:14px;padding:16px}.balanceTitle,.formTitle{color:var(--ink);font-size:15px;font-weight:800}.balanceHeader p,.emptyText,.realityHeader span,.realityRows span,.reminderNote,.reviewCategoryGrid span,.transactionRow small,.verifiedLabel{color:var(--muted)}.input,.paymentInput,.select,.settingsGrid input,.statementTextarea{background:#fffdf8;border:1px solid var(--border);border-radius:8px;color:var(--ink)}.input:focus,.paymentInput:focus,.select:focus,.settingsGrid input:focus,.statementTextarea:focus{border-color:color-mix(in srgb,var(--brand-rust) 68%,var(--border))}.addButton,.fab,.paymentButton,.settingsGrid button{background:var(--brand-rust);border:1px solid var(--brand-rust);border-radius:8px;color:var(--surface);font-weight:800}.addButton:hover,.fab:hover,.paymentButton:hover,.settingsGrid button:hover{background:var(--brand-rust-dark);border-color:var(--brand-rust-dark)}.fileButton,.overdraftPrompt button,.paymentCancel,.reconcilePrompt button,.secondaryAction{background:#fffdf8;border:1px solid var(--border);border-radius:8px;color:var(--ink)}.balanceWarning,.overdraftPrompt,.reconcilePrompt{background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 34%,var(--border));color:#6d5628}.errorBanner,.priorBanner{background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 28%,var(--border));color:var(--danger)}.toastNotice{background:var(--success-soft);border:1px solid color-mix(in srgb,var(--success) 28%,var(--border));color:var(--success)}.monthSwitcher{border-style:solid;margin-top:18px;overflow:hidden}.monthSwitcher span{font-family:var(--font-sans);font-size:18px;font-weight:800}.monthSwitcher button{color:var(--brand-rust)}.filterScroller{gap:8px;margin:14px 0 12px;padding:0}.filterChip{background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.01em;margin-right:0;min-height:34px;padding:0 12px}.filterChip.active{background:var(--brand-rust);border-color:var(--brand-rust);color:var(--surface)}.list{border-radius:8px;margin-bottom:18px}.billRow{background:var(--surface);border-bottom:1px solid var(--border);min-height:66px;padding:14px 16px}.billRow:hover{background:color-mix(in srgb,var(--surface) 76%,#fffdf8)}.checkButton{background:#fffdf8;border-color:var(--border-strong)}.checkButton.checked{background:color-mix(in srgb,var(--brand-rust) 10%,#fffdf8);border-color:var(--brand-rust)}.billName{color:var(--ink);font-size:15px;font-weight:750}.billAmount{color:var(--ink);font-size:14px;font-weight:800}.inkStamp{border-color:var(--brand-rust);color:var(--brand-rust)}.paymentEditor,.reviewBox,.unparsedBox{background:color-mix(in srgb,var(--surface-muted) 76%,#fffdf8);border:1px solid var(--border);border-radius:8px}.sectionHeader h2{color:var(--ink);font-family:var(--font-sans);font-size:24px;font-weight:750}.transactionList{border-color:var(--border);border-radius:8px}.transactionRow{background:var(--surface);border-bottom-color:var(--border)}.resetLink{color:var(--brand-rust);font-weight:700}.pinPanel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 48px var(--shadow-warm);padding:24px}.pinPanel .title{font-size:34px}@media (max-width:520px){.page{padding-inline:12px}.header{padding:24px 20px}.debtFields,.reviewCategoryGrid,.reviewStats,.settingsGrid,.summaryRow,.transactionRow{grid-template-columns:minmax(0,1fr)}.summaryRow{flex-direction:column}}.listingPage{--page:var(--ledger-bg);--surface:var(--paper);--surface-muted:var(--paper-muted);--border:var(--paper-line);--border-strong:#c8bea7;--ink:var(--navy);--muted:var(--ink-muted);--muted-strong:#4d5560;--primary:var(--navy);--accent:var(--brass);--success:var(--moss);--danger:var(--stamp-red);--danger-soft:#f8e4df;--shadow:0 14px 32px rgba(30,42,56,.08);background:var(--page);min-height:calc(100vh - 52px);padding:24px 16px 56px}.listingContainer{margin:0 auto;max-width:760px}.listingHeader{align-items:flex-start;background:var(--navy);border-radius:0 0 18px 18px;display:flex;justify-content:space-between;margin-bottom:0;padding:26px 26px 54px}.eyebrow{color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em;margin:0 0 5px;text-transform:uppercase}.listingTitle{color:var(--paper);font-family:Fraunces,Georgia,serif;font-size:clamp(30px,5vw,44px);font-weight:500;letter-spacing:0;line-height:1.1;margin:0}.listingSubtitle{color:hsla(40,53%,97%,.72);font-size:14px;line-height:1.45;margin:7px 0 0;max-width:560px}.listingError{margin-bottom:12px}.salesDashboard{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(5,minmax(0,1fr));margin:-30px 18px 12px;position:relative;z-index:1}.salesDashboard div{background:var(--surface);border:1px dashed var(--border);border-radius:10px;box-shadow:var(--shadow);min-width:0;padding:10px}.salesDashboard span{color:var(--muted);display:block;font-size:10px;font-weight:800;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase;font-family:IBM Plex Mono,monospace}.salesDashboard strong{color:var(--ink);display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.listingToolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.listingComposer{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px;padding:14px}.studioIntro{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.studioIntro h2{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:500;letter-spacing:0;line-height:1.08;margin:0}.studioIntro p:not(.eyebrow){color:var(--muted-strong);font-size:13px;line-height:1.45;margin:7px 0 0;max-width:510px}.studioIntro>span{background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;color:var(--muted-strong);flex-shrink:0;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:800;padding:7px 10px;text-transform:uppercase}.shotChecklist{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.shotSlot{align-items:center;background:var(--surface-muted);border:1px dashed var(--border);border-radius:8px;color:var(--muted-strong);display:flex;font-size:12px;font-weight:800;gap:7px;min-width:0;padding:9px 10px}.shotSlot span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shotSlot.complete{background:#e7f3ee;border-color:#a7dccd;color:var(--success)}.photoDrop{align-items:center;background:var(--surface-muted);border:1px dashed var(--border-strong);border-radius:8px;color:var(--muted-strong);cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:9px;justify-content:center;min-height:82px;padding:16px}.photoDrop input{display:none}.photoGrid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}.photoThumb{aspect-ratio:1;border-radius:8px;overflow:hidden;position:relative}.photoThumb img{height:100%;object-fit:cover;width:100%}.photoThumb select{background:hsla(40,53%,97%,.95);border:1px solid var(--border);border-radius:6px;bottom:6px;color:var(--ink);font-size:10px;font-weight:800;left:6px;max-width:calc(100% - 12px);outline:none;padding:5px 6px;position:absolute;right:6px}.photoThumb button{align-items:center;background:rgba(24,34,47,.78);border:none;border-radius:999px;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;position:absolute;right:6px;top:6px;width:24px}.photoThumb .cleanPhotoButton{background:hsla(40,53%,97%,.96);border:1px solid var(--border);border-radius:999px;bottom:34px;color:var(--ink);font-size:10px;font-weight:900;height:auto;left:6px;padding:5px 8px;right:auto;text-transform:uppercase;top:auto;width:auto}.studioPresetPicker{align-items:center;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;display:flex;gap:10px;justify-content:space-between;padding:10px}.studioPresetPicker>span{color:var(--muted-strong);flex-shrink:0;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.studioPresetPicker>div{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.studioPresetPicker button{background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--muted-strong);cursor:pointer;font-size:12px;font-weight:800;padding:7px 9px}.studioPresetPicker button.active{background:var(--ink);border-color:var(--ink);color:var(--surface)}.photoThumb .studioPhotoButton{background:var(--accent);border:1px solid hsla(0,0%,100%,.45);border-radius:999px;bottom:62px;color:var(--ink);font-size:10px;font-weight:900;height:auto;left:6px;padding:5px 8px;right:auto;text-transform:uppercase;top:auto;width:auto}.photoThumb .studioPhotoButton:disabled{cursor:wait;opacity:.8}.studioResults{background:#fff8ea;border:1px solid #ead37c;border-radius:8px;display:grid;grid-gap:10px;gap:10px;padding:10px}.studioResultsHeader{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.studioResultsHeader strong{color:var(--ink);display:block;font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:500;line-height:1.08}.studioResultsHeader p:not(.eyebrow){color:var(--muted-strong);font-size:12px;line-height:1.45;margin:5px 0 0;max-width:520px}.studioResultsHeader>span{background:hsla(40,53%,97%,.86);border:1px solid var(--border);border-radius:999px;color:var(--muted-strong);flex-shrink:0;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:900;padding:6px 8px;text-transform:uppercase}.studioResultsGrid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr}.studioResultCard{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.studioCompare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.studioCompare figure{margin:0;min-width:0;position:relative}.studioCompare figure+figure{border-left:1px solid var(--border)}.studioCompare img{aspect-ratio:1;display:block;object-fit:cover;width:100%}.studioCompare figcaption{background:rgba(24,34,47,.82);border-radius:999px;bottom:8px;color:#fff;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:900;left:8px;letter-spacing:.06em;padding:5px 7px;position:absolute;text-transform:uppercase}.studioResultCard>div{display:grid;grid-gap:7px;gap:7px;padding:9px}.studioResultCard>.studioCompare{padding:0}.studioResultCard span{color:var(--muted-strong);font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.studioResultCard button{background:var(--surface-muted);border:1px solid var(--border);border-radius:7px;color:var(--ink);cursor:pointer;font-size:12px;font-weight:900;padding:8px 9px;text-align:center}.studioResultCard button:last-child{background:var(--ink);border-color:var(--ink);color:var(--surface)}.listingNotes{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-size:15px;line-height:1.45;min-height:94px;outline:none;padding:12px;resize:vertical;width:100%}.platformPicker{display:flex;flex-wrap:wrap;gap:8px}.platformPicker button{background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--muted-strong);cursor:pointer;font-size:13px;font-weight:800;padding:8px 11px}.platformPicker button.active{background:var(--primary);border-color:var(--primary);color:var(--surface)}.platformPicker button:disabled{cursor:default;opacity:.55}.platformPicker.compact{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;padding:8px}.platformPicker.compact button{font-size:12px;padding:7px 9px}.generateButton{align-items:center;background:var(--primary);border:none;border-radius:8px;color:var(--surface);cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;justify-content:center;padding:13px}.cardControls select:disabled,.generateButton:disabled,.iconTextButton:disabled{cursor:default;opacity:.55}.statusScroller{display:flex;flex-wrap:wrap;gap:0;margin:16px 0 -1px;overflow:visible;padding:0 8px;position:relative;z-index:2}.statusChip{background:#efe7d8;border:1px solid var(--border);border-bottom:none;border-radius:10px 10px 0 0;color:var(--muted-strong);cursor:pointer;flex:0 0 auto;font-size:13px;font-weight:700;margin-right:-1px;padding:10px 13px 11px}.statusChip.active{background:var(--surface);border-color:var(--border);color:var(--primary);position:relative;z-index:3}.listingList{background:var(--surface);border:1px solid var(--border);border-radius:0 10px 10px 10px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px;padding:12px}.listingList .emptyState.compact{align-items:center;display:flex;gap:8px;justify-content:center}.listingCard{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px;padding:14px}.cardSelectRow{align-items:center;display:flex;gap:8px;justify-content:space-between}.cardSelectRow label{align-items:center;color:var(--muted-strong);display:flex;font-size:13px;font-weight:700;gap:7px}.cardSelectRow input{accent-color:var(--primary)}.profitBadge,.staleBadge{background:#fff6db;border:1px solid #ead37c;border-radius:999px;color:#755d00;flex-shrink:0;font-size:12px;font-weight:800;padding:5px 8px}.profitBadge{align-self:center;background:#dff5ef;border-color:#a7dccd;color:var(--success)}.profitBadge.loss{background:var(--danger-soft);border-color:#f2b8af;color:var(--danger)}.listingCardTop{display:grid;grid-gap:14px;gap:14px;grid-template-columns:196px minmax(0,1fr)}.itemPhotoStrip{display:flex;gap:8px;max-width:196px;overflow-x:auto;padding:2px 2px 8px;position:relative;scrollbar-width:thin;scroll-snap-type:x mandatory}.listingStatusStamp{background:hsla(40,53%,97%,.9);border:1px solid var(--stamp-red);border-radius:3px;color:var(--stamp-red);font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700;left:6px;letter-spacing:.06em;line-height:1;opacity:.82;padding:3px 5px;position:absolute;text-transform:uppercase;top:6px;transform:rotate(-7deg);z-index:2}.itemPhoto{aspect-ratio:1;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 22px rgba(30,42,56,.1);flex:0 0 178px;height:auto;object-fit:cover;scroll-snap-align:start;width:62px;width:178px}.itemPhoto.placeholder{align-items:center;color:var(--muted);display:flex;justify-content:center}.listingMain{min-width:0}.listingMetaRow{color:var(--muted);display:flex;flex-wrap:wrap;font-size:12px;gap:8px;margin-bottom:5px;font-family:IBM Plex Mono,monospace}.listingMain h2{color:var(--ink);font-size:17px;line-height:1.28;margin:0 0 8px}.priceBand{color:var(--success);font-size:18px;font-weight:800;font-family:IBM Plex Mono,monospace}.priceBand small{color:var(--ink);font-weight:800}.priceBand small,.priceBand span{display:block;font-size:12px;line-height:1.35;margin-top:2px}.priceBand span{color:var(--muted);font-weight:600}.cardControls{display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto auto auto}.cardControls select{color:var(--ink);min-width:0;outline:none}.cardControls select,.iconTextButton{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;padding:9px 10px}.iconTextButton{align-items:center;color:var(--muted-strong);cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:6px;justify-content:center;text-decoration:none;white-space:nowrap}.financePanel{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr)) auto auto;padding:10px}.financePanel label{display:grid;grid-gap:4px;gap:4px;min-width:0}.financePanel label span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.financePanel input{background:var(--surface);color:var(--ink);min-width:0;padding:9px 10px}.copyBlock,.financePanel input{border:1px solid var(--border);border-radius:8px}.copyBlock{background:#fffdf8;border-left:4px solid var(--brass);padding:10px}.copyHeader{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.copyHeader>span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.copyBlock p{color:var(--ink);font-size:14px;line-height:1.45;margin:0;white-space:pre-wrap}.specificsBlock{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:9px;gap:9px;padding:10px}.specificsHeader{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.specificsHeader span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.specificsHeader small{color:var(--muted);font-size:11px;font-weight:700;line-height:1.3;text-align:right}.specificsBlock p{color:var(--muted-strong);font-size:13px;line-height:1.35;margin:0}.specificsGrid{display:grid;grid-gap:7px;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.specificRow{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:3px;gap:3px;min-width:0;padding:8px}.specificRow span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.specificRow strong{color:var(--ink);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.specificRow em{color:var(--success);font-size:13px;font-style:normal;font-weight:800;overflow-wrap:anywhere}.tagRow{display:flex;flex-wrap:wrap;gap:7px}.tagRow span{background:#e7eefb;border:1px solid #c7d7f2;border-radius:999px;color:#294c87;font-size:12px;font-weight:700;padding:6px 9px}.spin{animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:560px){.listingPage{padding-inline:12px}.salesDashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.salesDashboard div:last-child{grid-column:1/-1}.listingToolbar{justify-content:stretch}.listingToolbar .iconTextButton{width:100%}.studioIntro{display:grid}.studioIntro>span{justify-self:flex-start}.studioPresetPicker{align-items:flex-start;display:grid}.studioPresetPicker>div{justify-content:flex-start}.listingCardTop,.shotChecklist{grid-template-columns:minmax(0,1fr)}.itemPhotoStrip{max-width:100%}.itemPhoto{flex-basis:150px;width:150px}.cardControls,.financePanel,.specificsGrid{grid-template-columns:minmax(0,1fr)}}.fileButton{position:relative}.fileButton input{cursor:pointer;inset:0;opacity:0;position:absolute}.fileButton.disabled{cursor:default;opacity:.55;pointer-events:none}.compsTextPanel{background:#f6efe2;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:9px;gap:9px;padding:10px}.compsTextPanel label{display:grid;grid-gap:6px;gap:6px}.compsTextPanel span{color:var(--muted-strong);font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.compsTextPanel textarea{background:var(--surface);color:var(--ink);font-size:13px;line-height:1.4;min-height:132px;outline:none;resize:vertical;width:100%}.compsTextPanel textarea,.listingPhotoEditor{border:1px solid var(--border);border-radius:8px;padding:10px}.listingPhotoEditor{background:#f6efe2;display:grid;grid-gap:10px;gap:10px}.listingPhotoEditorHeader{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.listingPhotoEditorHeader span{color:var(--muted-strong);display:block;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:900;letter-spacing:.06em;margin-bottom:3px;text-transform:uppercase}.listingPhotoEditorHeader strong{color:var(--ink);display:block;font-size:13px;line-height:1.35}.listingPhotoEditorGrid{display:grid;grid-gap:9px;gap:9px;grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}.listingPhotoEditorThumb{display:grid;grid-gap:7px;gap:7px}.listingPhotoEditorThumb img{aspect-ratio:1;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;object-fit:cover;width:100%}.listingPhotoEditorEmpty{color:var(--muted-strong);font-size:13px;margin:0}.compsPanel{background:#fff8ea;border:1px solid #ead37c;border-radius:8px;display:grid;grid-gap:9px;gap:9px;padding:10px}.compsHeader{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.compsHeader span{color:#755d00;display:block;font-size:11px;font-weight:900;letter-spacing:.06em;margin-bottom:3px;text-transform:uppercase}.compsHeader strong{color:var(--ink);display:block;font-size:15px;line-height:1.25}.compsPanel p{color:var(--muted-strong);font-size:13px;line-height:1.4;margin:0}.compsExamples{display:grid;grid-gap:6px;gap:6px}.compsExamples div{align-items:baseline;background:hsla(0,0%,100%,.56);border:1px solid hsla(47,72%,70%,.65);border-radius:7px;display:grid;grid-gap:5px;gap:5px;grid-template-columns:54px minmax(0,1fr);padding:7px 8px}.compsExamples strong{color:var(--success);font-family:IBM Plex Mono,monospace;font-size:12px}.compsExamples span{color:var(--ink);font-size:12px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dangerButton{color:var(--danger)}.dangerButton:hover{background:var(--danger-soft);border-color:#f2b8af}.sourcingPage{--page:var(--ledger-bg);--surface:var(--paper);--surface-muted:var(--paper-muted);--border:var(--paper-line);--border-strong:#c8bea7;--ink:var(--navy);--muted:var(--ink-muted);--muted-strong:#4d5560;--primary:var(--navy);--accent:var(--brass);--success:var(--moss);--danger:var(--stamp-red);--danger-soft:#f8e4df;--shadow:0 14px 32px rgba(30,42,56,.08);background:var(--page);min-height:calc(100vh - 52px);padding:24px 16px 56px}.sourcingContainer{margin:0 auto;max-width:760px}.sourcingHeader{align-items:flex-start;background:var(--navy);border-radius:0 0 18px 18px;display:flex;gap:12px;justify-content:space-between;margin-bottom:0;padding:26px 26px 54px}.sourcingTitle{color:var(--paper);font-family:Fraunces,Georgia,serif;font-size:clamp(30px,5vw,44px);font-weight:500;letter-spacing:0;line-height:1.1;margin:0}.sourcingSubtitle{color:hsla(40,53%,97%,.72);font-size:14px;line-height:1.45;margin:7px 0 0}.addWatchButton,.scanButton{align-items:center;background:var(--primary);border:none;border-radius:8px;color:var(--paper);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:800;gap:7px;justify-content:center;padding:11px 12px}.addWatchButton:disabled,.scanButton:disabled{cursor:default;opacity:.55}.sourcingStats{display:grid;grid-gap:0;gap:0;grid-template-columns:repeat(3,minmax(0,1fr));margin:-30px 18px 12px;position:relative;z-index:1}.hitCard,.sourcingNotice,.watchComposer,.watchRow{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.sourcingStats{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.sourcingStats div{min-width:0;padding:14px 16px}.sourcingStats div+div{border-left:1px dashed var(--border)}.sourcingStats span{color:var(--muted);display:block;font-size:10px;font-weight:800;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase;font-family:IBM Plex Mono,monospace}.sourcingStats strong{color:var(--ink);display:block;font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:500;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sourcingNotice{color:var(--muted-strong);font-size:13px;font-weight:700;padding:10px 12px}.sourcingError,.sourcingNotice{margin-bottom:12px}.watchComposer{display:grid;grid-gap:12px;gap:12px;margin-bottom:18px;padding:16px}.watchGrid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 120px}.sourcingInput{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fffdf8;border:1px solid var(--border);border-radius:8px;color:var(--ink);font-size:14px;min-width:0;outline:none;padding:12px 13px;width:100%}.sourcingInput::placeholder{color:#8d8472;opacity:1}.sourcingInput:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(156,122,60,.14)}.sourcingInput.main{font-size:15px}.addWatchButton{justify-self:stretch;min-height:46px}.addWatchButton:not(:disabled):hover,.scanButton:not(:disabled):hover{background:var(--navy-soft)}.hitList,.watchList{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.hitList h2,.watchList h2{color:var(--ink);font-size:16px;margin:0 0 4px}.watchRow{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:12px}.hitMain h3,.watchRow strong{color:var(--ink)}.watchRow span{color:var(--muted);display:block;font-size:12px;margin-top:3px;font-family:IBM Plex Mono,monospace}.watchToggle{background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;color:var(--muted-strong);cursor:pointer;font-size:12px;font-weight:800;padding:8px 10px}.watchToggle.active{background:#dff5ef;border-color:#a7dccd;color:var(--success)}.hitCard{display:grid;grid-gap:12px;gap:12px;grid-template-columns:96px minmax(0,1fr);padding:12px}.hitCard.seen{opacity:.72}.hitImage{aspect-ratio:1;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;object-fit:cover;width:96px}.hitImage.placeholder{align-items:center;justify-content:center}.hitImage.placeholder,.hitMeta{color:var(--muted);display:flex}.hitMeta{flex-wrap:wrap;font-size:12px;gap:8px;font-family:IBM Plex Mono,monospace}.hitMain h3{font-size:16px;line-height:1.3;margin:5px 0}.hitMain>strong{color:var(--success);display:block;font-size:18px;margin-bottom:8px;font-family:IBM Plex Mono,monospace}.hitActions{display:flex;flex-wrap:wrap;gap:8px}.hitActions a,.hitActions button{align-items:center;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--muted-strong);cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;gap:6px;padding:8px 10px;text-decoration:none}@media (max-width:560px){.sourcingPage{padding-inline:12px}.sourcingHeader{display:grid}.scanButton{width:100%}.hitCard,.sourcingStats,.watchGrid{grid-template-columns:minmax(0,1fr)}.sourcingStats div+div{border-left:none;border-top:1px dashed var(--border)}.hitImage{width:100%}}