hsa-app/internal/web/static/style.css
Jean-Michel Tremblay 8b7252dad4 Initial commit: HSA receipt tracker
Go app for capturing and archiving HSA-eligible receipts: OIDC/PKCE auth
against Authelia, SQLite storage with dual-write (filesystem + DB blob),
mobile-first upload, and DB export.

Adds AI receipt classification: a config.json catalog of people and
categories (seeded into the DB on startup), a prompt builder that derives
name-order/initial variants from the data (with same-surname ambiguity
handling), and an Anthropic tool-use client behind POST /classify. Tests
run against a mock endpoint; a live integration test is env-gated to the
cheapest model.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 21:40:12 -04:00

83 lines
1.4 KiB
CSS

body {
font-family: system-ui, sans-serif;
max-width: 30rem;
margin: 0 auto;
padding: 1rem;
line-height: 1.5;
}
header {
display: flex;
justify-content: space-between;
font-size: .85rem;
color: #555;
margin-bottom: 1rem;
}
h2 { margin-top: 1.5rem; }
label {
display: block;
margin: 1rem 0 .25rem;
font-weight: 600;
}
input, select {
font-size: 1.1rem;
width: 100%;
padding: .6rem;
box-sizing: border-box;
}
a { color: #1a73e8; }
small { color: #555; }
.err {
background: #fce8e6;
color: #a50e0e;
padding: .6rem;
border-radius: .4rem;
margin: .5rem 0;
}
.ok {
color: #137333;
font-weight: 600;
font-size: 1.3rem;
}
/* Full-width primary submit button (upload form). */
button.primary {
font-size: 1.1rem;
width: 100%;
padding: .6rem;
margin-top: 1.5rem;
background: #137333;
color: #fff;
border: 0;
border-radius: .4rem;
font-weight: 600;
}
/* Links styled as buttons. */
a.button {
display: block;
text-align: center;
color: #fff;
padding: .7rem;
border-radius: .4rem;
text-decoration: none;
margin: .75rem 0;
}
a.button.green { background: #137333; }
a.button.blue { background: #1a73e8; }
/* Inline rename/add rows on the manage page. */
form.row {
display: flex;
gap: .4rem;
margin: .3rem 0;
}
form.row input { flex: 1; padding: .4rem; }
form.row button { padding: .4rem .7rem; }
.add input { border: 1px solid #137333; }