*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--orange: #F97316;--orange-dark: #EA580C;--red: #DC2626;--amber: #F59E0B;--amber-light: #FDE68A;--bg: #FFF9F0;--card-bg: #FFFBF5;--label: #92400E;--border: #F59E0B;--border-focus: #F97316;--text: #1C1917;--muted: #78716C;--placeholder: #A8A29E;--shadow: 0 2px 8px rgba(249, 115, 22, .12);--shadow-lg: 0 4px 20px rgba(249, 115, 22, .18);--radius: 12px;--radius-sm: 8px}html,body,#root{min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{max-width:480px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding-bottom:32px}.nav{display:flex;gap:8px;padding:16px 16px 0;background:var(--bg);position:sticky;top:0;z-index:10}.nav-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:99px;border:1.5px solid var(--border);background:transparent;color:var(--label);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.nav-btn:hover{border-color:var(--orange);color:var(--orange)}.nav-btn.active{background:linear-gradient(135deg,var(--orange),var(--red));border-color:transparent;color:#fff;box-shadow:0 2px 8px #f9731666}.nav-icon{font-size:15px}.page{flex:1;padding:20px 16px}.form-card{background:var(--card-bg);border-radius:var(--radius);padding:24px 20px;box-shadow:var(--shadow);border:1px solid rgba(245,158,11,.15)}.field{margin-bottom:20px}.field-label{display:block;font-size:13.5px;font-weight:600;color:var(--label);margin-bottom:8px;letter-spacing:.01em}.field-label .required{color:var(--red);margin-left:2px}.field-row{display:flex;gap:10px}.field-row .field-inner{flex:1}.field-inner{position:relative}.input,.select{width:100%;padding:13px 14px;border:2px solid var(--border);border-radius:var(--radius-sm);background:#fffdf7;font-size:15px;color:var(--text);transition:border-color .2s,box-shadow .2s;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.input::placeholder{color:var(--placeholder);font-size:14px}.input:focus,.select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #f973161f}.input.error,.select.error{border-color:var(--red)}.select-wrap{position:relative}.select-wrap:after{content:"";position:absolute;right:14px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--amber);pointer-events:none}.field-error{font-size:12px;color:var(--red);margin-top:5px}.btn-submit{width:100%;padding:16px;border-radius:var(--radius-sm);border:none;background:linear-gradient(135deg,var(--orange) 0%,var(--red) 100%);color:#fff;font-size:16px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:opacity .2s,transform .1s,box-shadow .2s;box-shadow:0 4px 14px #dc26264d;margin-top:8px}.btn-submit:hover:not(:disabled){opacity:.93;box-shadow:0 6px 18px #dc262666}.btn-submit:active:not(:disabled){transform:scale(.99)}.btn-submit:disabled{opacity:.65;cursor:not-allowed}.success-card{background:#fff7ed;border:2px solid #FED7AA;border-radius:var(--radius);padding:32px 20px;text-align:center;margin-bottom:16px}.success-icon{font-size:52px;margin-bottom:12px}.success-title{font-size:20px;font-weight:700;color:var(--orange-dark);margin-bottom:8px}.success-msg{font-size:14px;color:var(--muted);margin-bottom:20px;line-height:1.5}.btn-secondary{padding:12px 28px;border-radius:99px;border:2px solid var(--orange);background:transparent;color:var(--orange);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--orange);color:#fff}.footer{text-align:center;padding:20px 16px 8px;font-size:14px;color:var(--label);font-weight:500}.section-title{font-size:18px;font-weight:700;color:var(--label);margin-bottom:16px;display:flex;align-items:center;gap:8px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.stat-card{background:var(--card-bg);border:1px solid rgba(245,158,11,.2);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);text-align:center}.stat-label{font-size:12px;color:var(--muted);font-weight:500;margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:22px;font-weight:800;color:var(--orange-dark)}.stat-value.positive{color:#15803d}.stat-value.negative{color:var(--red)}.stat-card.full-width{grid-column:1 / -1}.contrib-list{display:flex;flex-direction:column;gap:10px}.contrib-item{background:var(--card-bg);border:1px solid rgba(245,158,11,.15);border-radius:var(--radius-sm);padding:14px 16px;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:0 1px 4px #f9731612}.contrib-info{flex:1}.contrib-flat{font-size:15px;font-weight:600;color:var(--text)}.contrib-meta{font-size:12px;color:var(--muted);margin-top:3px}.contrib-amount{font-size:16px;font-weight:700;color:var(--orange-dark);white-space:nowrap;margin-left:12px}.expense-form{background:var(--card-bg);border:1px solid rgba(245,158,11,.2);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:24px}.expense-form-title{font-size:15px;font-weight:700;color:var(--label);margin-bottom:16px;display:flex;align-items:center;gap:6px}.btn-add{width:100%;padding:12px;border-radius:var(--radius-sm);border:none;background:linear-gradient(135deg,var(--amber) 0%,var(--orange) 100%);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s;margin-top:4px}.btn-add:hover:not(:disabled){opacity:.9}.btn-add:disabled{opacity:.6;cursor:not-allowed}.expense-item{background:var(--card-bg);border:1px solid rgba(245,158,11,.15);border-radius:var(--radius-sm);padding:14px 16px;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:0 1px 4px #f9731612}.expense-desc{font-size:14px;font-weight:600;color:var(--text)}.expense-meta{font-size:12px;color:var(--muted);margin-top:3px}.expense-amount{font-size:15px;font-weight:700;color:var(--red);white-space:nowrap;margin-left:12px}.expense-list{display:flex;flex-direction:column;gap:10px}.wing-badge{display:inline-block;padding:2px 8px;border-radius:99px;background:#fde68a;color:#92400e;font-size:11px;font-weight:700;margin-right:6px;letter-spacing:.04em}.loading{text-align:center;padding:40px 16px;color:var(--muted);font-size:14px}.empty{text-align:center;padding:32px 16px;color:var(--muted);font-size:14px}.empty-icon{font-size:36px;margin-bottom:8px}.bar-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.bar-label{width:60px;font-size:12px;font-weight:600;color:var(--label);text-align:right;flex-shrink:0}.bar-track{flex:1;height:24px;background:#fde68a;border-radius:6px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--amber),var(--orange));border-radius:6px;transition:width .5s ease;display:flex;align-items:center;padding-left:8px;min-width:24px}.bar-count{font-size:11px;font-weight:700;color:#fff}.alert{padding:12px 16px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:16px}.alert.error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c}.coupon-note{font-size:12px;color:var(--muted);margin-top:4px}.form-card{background:#fff;border:1px solid rgba(245,158,11,.2);border-radius:var(--radius);padding:32px 24px;box-shadow:0 10px 40px #0000001a}.form-card form{display:flex;flex-direction:column;gap:16px}.form-card .field{display:flex;flex-direction:column;gap:6px}.form-card .field-label{font-size:13px;font-weight:600;color:var(--label);display:flex;gap:2px}.form-card .required{color:var(--red)}.form-card .input{width:100%;padding:12px;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;color:var(--text);background:#fff;transition:all .2s}.form-card .input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #f973161a}.form-card .input::placeholder{color:var(--placeholder)}.form-card .select-wrap{position:relative}.form-card .select{width:100%;padding:12px 32px 12px 12px;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;color:var(--text);background:#fff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-card .select:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #f973161a}.form-card .select-wrap:after{content:"▼";position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--label);font-size:10px}.form-card .btn-submit{width:100%;padding:12px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--amber) 0%,var(--orange) 100%);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s}.form-card .btn-submit:hover:not(:disabled){opacity:.9}.form-card .btn-submit:disabled{opacity:.6;cursor:not-allowed}.field-row{display:flex;gap:12px}.field-inner{flex:1}
