:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-page:#f9f9f7;--surface-1:#fcfcfb;--surface-2:#fff;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#898781;--gridline:#e1e0d9;--baseline:#c3c2b7;--border:#0b0b0b1f;--series-1:#2a78d6;--series-2:#eb6834;--danger:#d03b3b;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Yu Gothic UI", sans-serif;font:16px/1.6 var(--sans);color:var(--text-primary);background:var(--surface-page)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface-page:#0d0d0d;--surface-1:#1a1a19;--surface-2:#202020;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--gridline:#2c2c2a;--baseline:#383835;--border:#ffffff1f;--series-1:#3987e5;--series-2:#d95926}}*{box-sizing:border-box}body{margin:0}h1,h2,h3{color:var(--text-primary);font-weight:600}.app-shell{max-width:960px;min-height:100svh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;margin:0 auto;display:flex}.app-header{padding:calc(16px + env(safe-area-inset-top)) 16px 16px;border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.app-header h1{margin:0;font-size:24px}.tab-nav{border-bottom:1px solid var(--border);gap:4px;padding:8px 16px;display:flex;overflow-x:auto}.tab-button{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px 8px 0 0;padding:8px 16px;font-size:14px}.tab-button.selected{background:var(--surface-1);color:var(--text-primary);box-shadow:inset 0 -2px 0 var(--series-1);font-weight:600}.app-main{flex:1;padding:16px}.quick-entry-form{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.field-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.field-row label,.field-label{min-width:48px;color:var(--text-secondary);font-size:14px}.field-row input,.field-row select,.field-row textarea{border:1px solid var(--border);background:var(--surface-2);min-width:120px;color:var(--text-primary);border-radius:8px;flex:1;padding:8px 10px;font-size:16px}.button-group{flex:1;gap:8px;display:flex}.button-group.wrap{flex-wrap:wrap}.chip{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:14px}.chip.selected{background:var(--series-1);border-color:var(--series-1);color:#fff}.chip.add-chip{color:var(--text-muted);border-style:dashed}.add-category-inline{align-items:center;gap:6px;display:flex}.add-category-inline input{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);border-radius:8px;padding:6px 10px}.yen-suffix{color:var(--text-muted)}.form-error{color:var(--danger);font-size:14px}.submit-button{background:var(--series-1);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px;font-size:16px;font-weight:600}.table-scroll{border:1px solid var(--border);border-radius:12px;overflow-x:auto}table{border-collapse:collapse;background:var(--surface-1);width:100%;font-size:14px}th,td{text-align:right;border-bottom:1px solid var(--gridline);white-space:nowrap;padding:10px 12px}th:first-child,td:first-child{text-align:left}thead th{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600}.amount-cell,.total-cell{font-variant-numeric:tabular-nums;font-weight:600}.grand-total-row th,.grand-total-row td{border-top:2px solid var(--baseline);font-weight:700}.row-actions{justify-content:flex-end;gap:6px;display:flex}.row-actions button{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:12px}.empty-row{text-align:center;color:var(--text-muted)}.list-filters{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.list-filters select{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);border-radius:8px;padding:6px 10px}.sort-direction-button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:6px 12px}.transaction-list{margin-top:8px}.tx-card-list{flex-direction:column;gap:8px;display:flex}.tx-card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;min-width:0;padding:12px 14px;display:flex}.tx-card-main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tx-date{font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:14px}.chip.small{cursor:default;padding:3px 10px;font-size:12px}.chip.small.person-chip{background:var(--series-1);border-color:var(--series-1);color:#fff}.chip.small.category-chip{background:var(--series-2);border-color:var(--series-2);color:#fff}.tx-card-memo{color:var(--text-primary);word-break:break-word;font-size:15px}.tx-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tx-card-footer .amount-cell{font-size:17px}.editing-card .field-row{margin-bottom:0}.month-switcher{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.month-nav-button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);cursor:pointer;border-radius:999px;width:32px;height:32px}.month-nav-button:disabled{color:var(--text-muted);cursor:not-allowed}.month-label{text-align:center;min-width:88px;font-weight:600}.month-input{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);border-radius:8px;padding:6px 10px}.sync-banner{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:13px;display:flex}.sync-banner-info{background:var(--surface-1);color:var(--text-secondary)}.sync-banner-error{color:var(--danger);background:#d03b3b1f}.sync-banner button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:8px;padding:4px 12px;font-size:12px}.summary-view h2{margin:0 0 12px;font-size:18px}.summary-table th{cursor:default}.viz-root.category-chart{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;margin:20px 0;padding:8px}.settlement-cards{flex-wrap:wrap;gap:16px;margin-top:16px;display:flex}.settlement-card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;flex:1;min-width:260px;padding:16px}.settlement-card h3{color:var(--text-secondary);margin:0 0 8px;font-size:15px}.carry-over-detail{color:var(--text-muted);flex-direction:column;gap:4px;margin-bottom:8px;font-size:13px;display:flex}.settings-panel section{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:16px}.settings-panel h3{margin:0 0 12px;font-size:15px}.hint-text{color:var(--text-muted);margin:4px 0 12px;font-size:13px}.category-master-list{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.category-master-list li{align-items:center;gap:8px;display:flex}.category-master-list input{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);border-radius:8px;flex:1;padding:6px 10px}.unused-categories{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}button{font-family:inherit}.app-loading{min-height:100svh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}
