*{box-sizing:border-box;margin:0;padding:0}:root{--green: #1a7f5a;--green-light: #e6f4ee;--red: #d64545;--text: #222;--text-sub: #777;--border: #e5e5e5;--bg: #f7f7f5}body{font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{max-width:480px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;background:#fff}.content{flex:1;padding:16px 16px 80px}.state-message{text-align:center;color:var(--text-sub);padding:48px 0}.state-message.error{color:var(--red)}.hero{text-align:center;padding:40px 16px 24px}.hero-label{font-size:15px;color:var(--text-sub);margin-bottom:8px}.hero-date{font-size:13px;color:var(--text-sub);margin-bottom:20px}.hero-amount{font-size:56px;font-weight:700;color:var(--green);letter-spacing:-1px;line-height:1.1}.hero-amount.minus{color:var(--red)}.hero-amount .unit{font-size:28px;margin-left:4px}.summary-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:24px}.card{background:var(--green-light);border-radius:10px;padding:12px 8px;text-align:center}.card .card-label{font-size:11px;color:var(--text-sub);margin-bottom:4px}.card .card-value{font-size:15px;font-weight:600}.card .card-value.minus{color:var(--red)}.section-title{font-size:15px;font-weight:600;margin:8px 0 12px}.daily-table{width:100%;border-collapse:collapse;font-size:13px}.daily-table th{font-weight:500;color:var(--text-sub);font-size:11px;padding:6px 4px;border-bottom:1px solid var(--border);text-align:right}.daily-table th:first-child{text-align:left}.daily-table td{padding:8px 4px;border-bottom:1px solid var(--border);text-align:right;font-variant-numeric:tabular-nums}.daily-table td:first-child{text-align:left;white-space:nowrap}.daily-table tr.clickable{cursor:pointer}.daily-table .weekend{color:var(--red)}.daily-table .minus{color:var(--red);font-weight:600}.daily-table .remaining{font-weight:600}.expense-detail{background:var(--bg)}.expense-detail td{padding:4px 8px;font-size:12px;color:var(--text-sub)}.list{list-style:none}.list li{display:flex;justify-content:space-between;align-items:baseline;padding:12px 4px;border-bottom:1px solid var(--border);font-size:14px}.list .sub{font-size:12px;color:var(--text-sub);margin-left:8px}.list .amount{font-weight:600;font-variant-numeric:tabular-nums}.total-row{display:flex;justify-content:space-between;padding:14px 4px;font-size:15px;font-weight:700;border-bottom:2px solid var(--text);margin-bottom:4px}.tabs{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:#fff;border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.tabs button{flex:1;padding:12px 0 10px;border:none;background:none;font-size:12px;color:var(--text-sub);cursor:pointer;font-family:inherit}.tabs button.active{color:var(--green);font-weight:700}
