:root{--bg: #0f172a;--surface: #1e293b;--surface-2: #334155;--text: #e2e8f0;--muted: #94a3b8;--accent: #38bdf8;--accent-strong: #0ea5e9;--danger: #f87171;--border: #334155;--radius: 12px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}.app{max-width:880px;margin:0 auto;padding:32px 20px 80px}.app__header{margin-bottom:28px}.app__header h1{margin:0 0 6px;font-size:28px;letter-spacing:-.01em}.app__subtitle{margin:0;color:var(--muted)}.app__main{display:grid;gap:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.card h2{margin:0 0 16px;font-size:18px}.form{display:grid;gap:14px}.form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form__field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.form__field input,.form__field select{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:15px;outline:none;transition:border-color .15s}.form__field input:focus,.form__field select:focus{border-color:var(--accent)}.form__error{color:var(--danger);font-size:14px}.form__submit{justify-self:start;background:var(--accent-strong);color:#0b1220;border:none;border-radius:8px;padding:10px 18px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,transform .05s}.form__submit:hover{background:var(--accent)}.form__submit:active{transform:translateY(1px)}.list-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.list-header h2{margin:0;font-size:18px}.filter{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.filter select{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-size:14px}.empty{color:var(--muted);text-align:center;margin:8px 0}.list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.list__item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px 14px;background:var(--surface-2);border-radius:10px}.list__title{font-weight:600;margin-bottom:4px}.list__meta{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.badge{background:#38bdf826;color:var(--accent);padding:2px 8px;border-radius:999px;font-size:12px}.list__amount{font-weight:600;font-variant-numeric:tabular-nums}.list__remove{background:transparent;border:none;color:var(--muted);font-size:22px;line-height:1;cursor:pointer;padding:4px 8px;border-radius:6px;transition:color .15s,background .15s}.list__remove:hover{color:var(--danger);background:#f871711a}.summary{display:grid;gap:18px}.summary__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.summary__tile{background:var(--surface-2);border-radius:10px;padding:14px 16px}.summary__label{color:var(--muted);font-size:13px;margin-bottom:6px}.summary__value{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.summary__list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}.summary__item-head{display:flex;justify-content:space-between;font-size:14px;margin-bottom:4px}.summary__bar{height:6px;background:var(--surface-2);border-radius:999px;overflow:hidden}.summary__bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-strong))}@media (max-width: 560px){.form__row,.summary__row{grid-template-columns:1fr}.list__item{grid-template-columns:1fr auto;grid-template-areas:"main remove" "amount amount"}.list__main{grid-area:main}.list__amount{grid-area:amount}.list__remove{grid-area:remove}}
