:root{color-scheme:light;--navy:#172d45;--gold:#d7b66f;--paper:#f6f4ef;--muted:#586776}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--navy);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}header{padding:25px max(24px,calc((100vw - 1060px)/2));display:flex;align-items:center;gap:15px;background:var(--navy);color:#fff}.brand{font-family:Georgia,serif;font-size:36px;color:var(--gold);border:1px solid var(--gold);width:52px;height:58px;text-align:center}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:700;margin:0}.tagline{font-size:13px;margin:4px 0 0;color:#d6dee5}main{max-width:1108px;margin:auto;padding:26px 24px 36px}.test-note{padding:12px 16px;border:1px solid #d8c9aa;border-radius:8px;font-size:13px;background:#fff9ec}.intro{max-width:670px;margin:32px 0}.intro .eyebrow{color:var(--muted)}h1{font-family:Georgia,serif;font-size:44px;line-height:1.15;font-weight:400;margin:12px 0}h2{font-size:18px;margin:0}.intro>p:last-child{color:var(--muted)}.layout{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start}.card{background:#fff;border:1px solid #e0e4e6;border-radius:16px;padding:24px;box-shadow:0 4px 20px #172d4505}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}#identity{font-size:12px;color:var(--muted)}button,.button{border:0;border-radius:8px;background:var(--navy);color:#fff;font:inherit;font-size:15px;font-weight:600;padding:12px 20px;cursor:pointer;text-decoration:none;display:inline-block;min-height:44px}button:disabled{opacity:.55;cursor:wait}.text-button{background:transparent;color:var(--navy);text-decoration:underline;padding:8px;font-size:13px}label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}textarea{width:100%;padding:13px;font:inherit;font-size:16px;border:1px solid #aab5bf;border-radius:8px;color:var(--navy);resize:vertical}textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.hint,.footer-note{font-size:13px;color:var(--muted)}#conversation{max-height:290px;overflow-y:auto;margin-bottom:24px}.bubble{border-radius:10px;padding:12px 14px;font-size:14px;white-space:pre-wrap;margin:0 0 12px}.garno{background:#f1f4f6}.you{background:#fcf6e9;margin-left:35px}#status{font-size:14px;color:#8d3c18}#items{list-style:none;padding:0;margin:0}#items li{padding:14px 0;border-top:1px solid #edf0f2}#items span{display:block;color:var(--muted);font-size:12px;margin-top:2px}#list-summary{font-size:14px;color:var(--muted)}.footer-note{margin-top:25px;max-width:760px}[hidden]{display:none!important}@media(max-width:700px){header{padding:20px}.layout{grid-template-columns:1fr;gap:18px}main{padding:20px 16px}h1{font-size:36px}.card{padding:20px}.intro{margin:26px 0}.section-title{flex-wrap:wrap}}

.voice-controls{display:flex;align-items:center;gap:12px;margin:12px 0}.voice-controls button{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;background:#f1f4f6;color:var(--navy);border:1px solid #aab5bf}.voice-controls button[aria-pressed="true"]{background:#8d3c18;color:#fff}#voice-status{font-size:13px;color:var(--muted)}

select,input{width:100%;font:inherit;padding:10px;border:1px solid #aab5bf;border-radius:8px;margin-bottom:12px;color:var(--navy);background:#fff}.item-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.item-actions button{padding:8px 12px;font-size:13px}#manual-add{margin:15px 0}input:focus-visible,select:focus-visible{outline:3px solid var(--gold)}

.item-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#items li.is-staple{background:#fff6dc;border:1px solid #d7b66f;border-left:6px solid #ad7d22;border-radius:10px;padding:16px;margin:10px 0}
#items .staple-badge{display:inline-block;background:#172d45;color:#f5d58d;font-size:12px;font-weight:800;letter-spacing:.7px;padding:5px 10px;border-radius:6px;margin:0}
.item-actions button[aria-pressed="true"]{background:transparent;color:#172d45;border:1px solid #8a681f}

.tasks-card{margin-top:24px}.task-filters{display:grid;grid-template-columns:1fr 1fr;gap:16px}#tasks-list{list-style:none;margin:0 0 24px;padding:0}#tasks-list li{border-top:1px solid #e0e4e6;padding:16px 0}#tasks-list p{font-size:13px;margin:5px 0;color:var(--muted)}#tasks-list .task-overdue{border-left:5px solid #b54a31;background:#fff1eb;padding:16px;border-radius:8px;margin:10px 0}#tasks-list button{font-size:13px;padding:8px 12px;margin-top:8px}details summary{font-weight:700;cursor:pointer;padding:10px 0}#task-add{max-width:650px;margin-top:12px}

#health-chart svg{width:100%;max-height:300px}#health-list{padding:0;list-style:none}#health-list li{padding:16px;border-bottom:1px solid #ddd}#health-add{display:grid;gap:12px}#health-add input,#health-add textarea,#health-add select{display:block;width:100%}
.budget-controls{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:18px 0}.budget-controls label{display:grid;gap:6px;flex:1;min-width:140px}.budget-controls input,.budget-controls select,.budget-edit input,.budget-edit select,.budget-edit textarea{width:100%;max-width:100%;padding:9px}.budget-months{border:1px solid #ccc;border-radius:10px;padding:14px}.budget-months label{display:flex;gap:6px;align-items:center}.budget-months input{width:auto}#budget-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.budget-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.budget-total{border:1px solid #dbcca8;background:#fff8e7;border-radius:12px;padding:15px;display:grid;gap:8px}.budget-total strong{font-size:23px;color:#173d5a}.budget-bar-row{display:grid;grid-template-columns:160px minmax(30px,1fr) 105px;align-items:center;gap:12px;margin:10px 0}.budget-bar-row button{padding:0;color:#173d5a;background:none;text-align:left;border:0}.budget-bar-track{height:14px;background:#eee;border-radius:6px;overflow:hidden}.budget-bar{height:100%;border-radius:6px}.budget-bar.income{background:#164978}.budget-bar.spending{background:#b38b32}.budget-month-chart-row{padding:12px 0;border-bottom:1px solid #ddd}#budget-groups{overflow-x:auto}#budget-groups table{border-collapse:collapse;width:100%;min-width:470px}#budget-groups th,#budget-groups td{padding:10px;text-align:right;border-bottom:1px solid #ddd}#budget-groups th:first-child,#budget-groups td:first-child{text-align:left}#budget-groups details p{font-size:14px;margin:8px 0}.budget-transaction{padding:15px;border-bottom:1px solid #ddd;overflow-wrap:anywhere}.budget-transaction.investigate{border-left:4px solid #ad2f2f;background:#fff1f1}.budget-transaction pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px}.budget-edit{display:grid;gap:12px;margin:15px 0}.budget-edit label{display:grid;gap:5px}@media(max-width:650px){.budget-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-total strong{font-size:20px}#budget-months{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-bar-row{grid-template-columns:100px minmax(20px,1fr) 85px;font-size:12px}.budget-controls label{min-width:120px}}

#calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:16px 0}.calendar-day{border:1px solid #d5dedb;border-radius:8px;padding:8px;min-height:80px;overflow-wrap:anywhere}.calendar-day span{display:block;font-size:.85rem;margin-top:6px}#calendar-preview{border:2px solid #b08a38;padding:20px;border-radius:12px;margin-top:20px}#calendar-preview button{margin:8px 8px 0 0}#calendar-preview label{display:block;margin-top:20px}#calendar-add{display:grid;gap:12px}#calendar-add input[type=checkbox],#calendar-preview input[type=checkbox]{width:auto}#calendar-events p{white-space:pre-wrap}@media(max-width:700px){#calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
