:root{--bg: #0F1115;--bg-elev: #1A1D24;--bg-card: #20242C;--border: #2A2F38;--text: #E8EAED;--text-muted: #8A8F98;--accent: #16A085;--accent-hover: #1ABC9C;--danger: #E74C3C;--warn: #F39C12;--success: #27AE60;--radius: 12px;--radius-sm: 8px;--shadow: 0 4px 16px rgba(0, 0, 0, .3)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Inter,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button,input,select,textarea{font:inherit;color:inherit}button{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:12px 18px;font-weight:600;cursor:pointer;transition:background .15s ease}button:hover{background:var(--accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--bg-card);color:var(--text);border:1px solid var(--border)}button.danger{background:var(--danger)}input,select,textarea{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}a{color:var(--accent);text-decoration:none}.app-shell{max-width:720px;margin:0 auto;padding:env(safe-area-inset-top) 16px calc(72px + env(safe-area-inset-bottom));min-height:100vh}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:12px}.muted{color:var(--text-muted)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.stack{display:flex;flex-direction:column;gap:12px}.h1{font-size:28px;font-weight:800;margin-bottom:16px}.h2{font-size:20px;font-weight:700;margin-bottom:12px}.label{font-size:13px;color:var(--text-muted);margin-bottom:4px;display:block}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--bg-elev);border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:100}.bottom-nav a{flex:1;text-align:center;padding:8px;color:var(--text-muted);font-size:12px;font-weight:600}.bottom-nav a.active{color:var(--accent)}.amount-positive{color:var(--success);font-weight:600}.amount-negative{color:var(--danger);font-weight:600}
