.top-nav[data-astro-cid-5i26sbjv]{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.top-nav-inner[data-astro-cid-5i26sbjv]{max-width:var(--max-content);margin:0 auto;height:100%;display:flex;align-items:center;padding:0 var(--space-4);gap:var(--space-3)}.top-nav-logo[data-astro-cid-5i26sbjv]{width:32px;height:32px;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;flex-shrink:0}.top-nav-back[data-astro-cid-5i26sbjv]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text);margin-left:-4px;flex-shrink:0}.top-nav-back[data-astro-cid-5i26sbjv]:hover{background:var(--color-surface-2)}.top-nav-title[data-astro-cid-5i26sbjv]{flex:1;font-size:var(--text-md);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-nav-avatar[data-astro-cid-5i26sbjv]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text-muted);margin-left:auto;flex-shrink:0}.top-nav-avatar[data-astro-cid-5i26sbjv]:hover{background:var(--color-primary-light);color:var(--color-primary)}.bottom-nav[data-astro-cid-hob2loae]{position:fixed;bottom:0;left:0;right:0;z-index:100;height:var(--bottom-nav-height);background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom,0px)}.bnav-item[data-astro-cid-hob2loae]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;padding:var(--space-2) 0;color:var(--color-text-muted);font-size:10px;font-weight:500;transition:color .15s}.bnav-item[data-astro-cid-hob2loae].active,.bnav-item[data-astro-cid-hob2loae]:hover,.bnav-add[data-astro-cid-hob2loae]{color:var(--color-primary)}.bnav-add-btn[data-astro-cid-hob2loae]{width:48px;height:48px;background:var(--color-primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:2px;box-shadow:var(--shadow-md)}.bnav-add-btn[data-astro-cid-hob2loae]:hover{background:var(--color-primary-dark)}:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-primary-light: #e0e7ff;--color-accent: #f59e0b;--color-success: #22c55e;--color-danger: #ef4444;--color-warning: #f59e0b;--color-info: #3b82f6;--color-bg: #f8fafc;--color-surface: #ffffff;--color-surface-2: #f1f5f9;--color-border: #e2e8f0;--color-border-focus: #6366f1;--color-text: #0f172a;--color-text-muted: #64748b;--color-text-on-primary: #ffffff;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .07), 0 1px 2px -1px rgb(0 0 0 / .07);--shadow-md: 0 4px 12px 0 rgb(0 0 0 / .08);--shadow-lg: 0 10px 30px 0 rgb(0 0 0 / .1);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-md: 17px;--text-lg: 20px;--text-xl: 24px;--text-2xl: 30px;--nav-height: 56px;--bottom-nav-height: 64px;--max-content: 680px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100dvh;line-height:1.5}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:inherit}img{max-width:100%;display:block}.app-shell{display:flex;flex-direction:column;min-height:100dvh;padding-bottom:var(--bottom-nav-height)}.app-content{flex:1;padding-top:var(--nav-height);padding-bottom:var(--space-6)}.page-wrap{max-width:var(--max-content);margin:0 auto;padding:var(--space-4)}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-primary{color:var(--color-primary)}.text-center{text-align:center}.font-bold{font-weight:700}.font-medium{font-weight:500}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.w-full{width:100%}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.form-input{width:100%;padding:11px var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-base);transition:border-color .15s;outline:none}.form-input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input::placeholder{color:var(--color-text-muted)}.form-error{font-size:var(--text-sm);color:var(--color-danger)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:11px var(--space-5);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;transition:all .15s;white-space:nowrap;cursor:pointer;border:none}.btn-primary{background:var(--color-primary);color:var(--color-text-on-primary)}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{background:var(--color-surface-2);color:var(--color-text);border:1.5px solid var(--color-border)}.btn-secondary:hover{background:var(--color-border)}.btn-danger{background:var(--color-danger);color:#fff}.btn-ghost{background:transparent;color:var(--color-primary)}.btn-ghost:hover{background:var(--color-primary-light)}.btn-lg{padding:14px var(--space-6);font-size:var(--text-md)}.btn-sm{padding:7px var(--space-3);font-size:var(--text-sm)}.btn-full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge-hotel{background:#dbeafe;color:#1d4ed8}.badge-lodge{background:#d1fae5;color:#065f46}.badge-food{background:#fef3c7;color:#92400e}.badge-travel{background:#ede9fe;color:#5b21b6}.badge-fuel{background:#fee2e2;color:#991b1b}.badge-shopping{background:#fce7f3;color:#9d174d}.badge-tickets{background:#e0f2fe;color:#0369a1}.badge-misc{background:var(--color-surface-2);color:var(--color-text-muted)}.divider{height:1px;background:var(--color-border);margin:var(--space-4) 0}.amount-positive{color:var(--color-success)}.amount-negative{color:var(--color-danger)}.amount-neutral{color:var(--color-text-muted)}.toast{position:fixed;bottom:calc(var(--bottom-nav-height) + var(--space-4));left:50%;transform:translate(-50%);background:var(--color-text);color:#fff;padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;box-shadow:var(--shadow-lg);z-index:1000;animation:toast-in .2s ease}.toast-success{background:var(--color-success)}.toast-error{background:var(--color-danger)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.category-bar{display:flex;flex-direction:column;gap:var(--space-2)}.category-bar-row{display:grid;grid-template-columns:80px 1fr 80px;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.category-bar-track{height:8px;background:var(--color-surface-2);border-radius:var(--radius-full);overflow:hidden}.category-bar-fill{height:100%;background:var(--color-primary);border-radius:var(--radius-full);transition:width .4s ease}.settlement-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border)}.settlement-arrow{color:var(--color-text-muted);font-size:18px}
