:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f8f5ef;--surface:#fff;--ink:#18312b;--muted:#68756f;--line:#ded8cd;--primary:#126c57;--primary-dark:#0b4d3e;--accent:#d88a2d;--danger:#b74435;--success:#26734d;--shadow:0 16px 40px #1526201f}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--ink);letter-spacing:0;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-screen{width:min(100%,760px);min-height:100svh;margin:0 auto;padding:18px 16px 96px}.center-screen,.login-screen{place-items:center;display:grid}.loading-mark,.brand-mark{background:var(--primary);color:#fff;border-radius:18px;place-items:center;width:72px;height:72px;font-size:36px;font-weight:900;display:grid}.login-panel{justify-items:start;gap:18px;width:min(100%,420px);display:grid}.login-panel h1,.topbar h1{margin:0;font-size:34px;line-height:1.08}.login-panel p,.voice-band p,.advice-band p{color:var(--muted);margin:0;line-height:1.55}.small-text{font-size:14px}.topbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.eyebrow{color:var(--muted);margin:0 0 3px;font-size:14px;font-weight:700}.top-actions{align-items:center;gap:8px;display:flex}.status-pill{border:1px solid var(--line);min-height:38px;color:var(--muted);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.status-pill.online{color:var(--success)}.status-pill.offline{color:var(--danger)}.icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink);background:#fff;border-radius:12px;place-items:center;display:inline-grid}.icon-button.danger{color:var(--danger)}.notice,.error-banner{border-radius:8px;margin-bottom:12px;padding:12px 14px;font-size:14px;line-height:1.4}.notice{color:var(--primary-dark);background:#e9f2ee}.error-banner{color:var(--danger);background:#f8e8e4}.record-flow,.report-view,.family-view{gap:14px;display:grid}.voice-band,.confirm-panel,.manual-panel,.recent-list,.metric-grid>div,.advice-band,.yearly-chart,.category-report,.invite-band,.member-list{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.voice-band{grid-template-columns:auto 1fr;align-items:center;gap:18px;padding:22px;display:grid}.voice-band h2,.section-title h2,.advice-band h2,.invite-band h2{margin:0;font-size:22px;line-height:1.2}.mic-button{background:var(--primary);color:#fff;border:0;border-radius:50%;place-items:center;width:112px;height:112px;display:grid;box-shadow:0 12px 28px #126c5752}.mic-button.listening{background:var(--accent)}.transcript-row,.join-row{grid-template-columns:1fr auto;gap:10px;display:grid}.transcript-row input,.join-row input,.note-input,.form-grid input,.big-field input,.date-shortcuts input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:8px}.transcript-row input,.join-row input,.note-input{min-height:52px;padding:0 14px}.transcript-row button,.join-row button{background:var(--primary);color:#fff;border:0;border-radius:8px;align-items:center;gap:7px;min-height:52px;font-weight:900;display:inline-flex}.transcript-row button{padding:0 16px}.join-row button{padding:0 18px}.confirm-panel,.manual-panel,.recent-list,.yearly-chart,.category-report,.member-list{gap:14px;padding:16px;display:grid}.manual-panel.collapsed{padding:10px}.manual-summary{min-height:68px;color:var(--ink);text-align:left;background:#fcfbf8;border:0;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.manual-summary svg{color:var(--muted)}.manual-summary-item{gap:4px;min-width:0;display:grid}.manual-summary-item small{color:var(--muted);font-size:12px;font-weight:900}.manual-summary-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:20px;line-height:1.15;overflow:hidden}.manual-details{gap:14px;display:grid}.section-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.section-title span{color:var(--muted);font-size:13px;font-weight:800}.select-control{color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:900;display:inline-flex}.select-control select{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;border-radius:8px;padding:0 30px 0 10px;font-weight:900}.big-field{grid-template-columns:1fr auto;align-items:end;gap:6px 10px;display:grid}.big-field span{color:var(--muted);grid-column:1/-1;font-weight:800}.big-field input{height:74px;padding:0 14px;font-size:44px;font-weight:900}.big-field em{color:var(--muted);padding-bottom:14px;font-style:normal;font-weight:900}.segmented{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.segmented button{min-height:52px;color:var(--muted);background:#fff;border:0;font-size:18px;font-weight:900}.segmented button.selected{background:var(--primary);color:#fff}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.category-grid button{border:1px solid var(--line);min-height:58px;color:var(--ink);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:900;display:flex}.category-grid.compact button{min-height:50px}.category-grid button.selected{border-color:var(--primary);color:var(--primary-dark);background:#e4f0ec}.category-grid b{background:#f3eee4;border-radius:50%;place-items:center;min-width:28px;height:28px;font-size:14px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-grid label{color:var(--muted);gap:6px;font-weight:800;display:grid}.form-grid input,.date-shortcuts input{min-height:48px;padding:0 10px}.confirm-actions{grid-template-columns:1fr 1.4fr;gap:10px;display:grid}.primary-button,.secondary-button{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:56px;font-weight:900;display:inline-flex}.primary-button{background:var(--primary);color:#fff;border:0}.secondary-button{border:1px solid var(--line);color:var(--ink);background:#fff}.primary-button.full{width:100%}.amount-display{border:1px solid var(--line);text-align:right;background:#fcfbf8;border-radius:8px;min-height:70px;padding:8px 14px;font-size:42px;font-weight:900;line-height:1.2;display:block;overflow:hidden}.keypad{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keypad button,.date-shortcuts button{border:1px solid var(--line);min-height:54px;color:var(--ink);background:#fff;border-radius:8px;font-size:20px;font-weight:900}.date-shortcuts{grid-template-columns:auto auto 1fr;gap:8px;display:grid}.empty-list{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:8px;padding:18px}.transaction-row,.member-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:12px 0;display:grid}.transaction-row:first-of-type,.member-row:first-of-type{border-top:0}.transaction-row strong,.member-row strong{display:block}.transaction-row span,.member-row span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.money{white-space:nowrap;font-weight:900}.income{color:var(--success)}.expense{color:var(--danger)}.metric-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.metric-grid>div{gap:8px;padding:16px;display:grid}.metric-grid span{color:var(--muted);font-weight:800}.metric-grid strong{font-size:24px}.advice-band{grid-template-columns:auto 1fr;gap:12px;padding:16px;display:grid}.chart-legend{color:var(--muted);gap:14px;font-size:13px;font-weight:900;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend span:before{content:"";background:currentColor;border-radius:2px;width:10px;height:10px}.month-bars{grid-template-columns:repeat(12,minmax(78px,1fr));gap:10px;padding-bottom:4px;display:grid;overflow-x:auto}.month-bar{text-align:center;align-items:end;gap:6px;min-width:78px;display:grid}.bar-pair{background:#f3eee4;border-radius:8px;grid-template-columns:1fr 1fr;align-items:end;gap:4px;height:150px;padding:8px;display:grid}.bar-pair span{border-radius:6px 6px 2px 2px;min-height:0}.income-bar{background:var(--success)}.expense-bar{background:var(--danger)}.month-bar strong{font-size:13px}.month-bar small{min-height:28px;color:var(--muted);overflow-wrap:anywhere;font-size:11px;font-weight:800;line-height:1.25}.bar-row{grid-template-columns:92px 1fr auto;align-items:center;gap:10px;display:grid}.bar-row span{color:var(--muted);font-size:13px;display:block}.bar-track{background:#ece7dc;border-radius:999px;height:12px;overflow:hidden}.bar-track span{border-radius:inherit;background:var(--primary);height:100%;display:block}.invite-band{gap:8px;padding:20px;display:grid}.invite-band span,.invite-band p{color:var(--muted);margin:0;font-weight:800}.invite-band strong{letter-spacing:0;font-size:42px}.member-row{grid-template-columns:1fr auto}.member-row b{color:var(--primary-dark)}.bottom-nav{border:1px solid var(--line);max-width:732px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 auto;padding:8px;display:grid;position:fixed;bottom:14px;left:max(14px,50vw - 366px);right:max(14px,50vw - 366px)}.bottom-nav button{min-height:56px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;gap:3px;font-size:13px;font-weight:900;display:grid}.bottom-nav button.active{background:var(--primary);color:#fff}@media (max-width:520px){.app-screen{padding-inline:12px}.topbar{align-items:center}.topbar h1{font-size:30px}.voice-band{text-align:center;grid-template-columns:1fr;justify-items:center}.transcript-row,.join-row,.form-grid,.metric-grid,.confirm-actions,.bar-row{grid-template-columns:1fr}.section-title{align-items:flex-start}.select-control{flex-shrink:0}.transaction-row{grid-template-columns:minmax(0,1fr) auto auto}.transaction-row .money{grid-column:2/4;justify-self:end}.manual-summary{grid-template-columns:1fr 1fr auto}.manual-summary-item:first-child{grid-column:1/-1}.manual-summary-item:first-child strong{font-size:26px}}
