:root{--bg:#07111f;--panel:#101d2e;--panel2:#16263a;--text:#eef7f6;--muted:#91a3b7;--brand:#14b8a6;--brand2:#0f766e;--gold:#f59e0b;--danger:#fb7185;--line:#24364d;--shadow:0 16px 40px #0005}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px system-ui,-apple-system,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.auth{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#124a4a,var(--bg) 55%)}.auth-card{width:min(420px,100%);background:#0e1c2de8;border:1px solid #ffffff18;border-radius:28px;padding:30px;box-shadow:var(--shadow)}.auth-card img{width:68px;border-radius:18px}.auth-card h1{margin:14px 0 2px;font-size:30px}.auth-card p{color:var(--muted);margin-top:0}.auth label{display:block;color:var(--muted);margin:18px 0 6px}.auth input,dialog input,dialog select,dialog textarea,.filters input,.filters select{width:100%;border:1px solid var(--line);background:#081421;color:var(--text);padding:13px;border-radius:13px;outline:0}.auth input:focus,dialog input:focus{border-color:var(--brand)}.auth button,#saveBtn{width:100%;border:0;border-radius:14px;padding:14px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;font-weight:800;margin-top:20px}.auth small,#modalMsg{display:block;color:var(--danger);min-height:20px;margin-top:10px}header{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:16px max(18px,env(safe-area-inset-left));background:#07111fe8;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff0c}header h1{font-size:20px;margin:1px 0}header small{color:var(--muted)}.header-actions{display:flex;gap:10px;align-items:center}.sync{font-size:11px;color:#5eead4}.icon{border:0;background:var(--panel2);color:var(--text);width:38px;height:38px;border-radius:12px;font-size:20px}main{max-width:760px;margin:auto;padding:14px 16px 110px}.page{display:none}.page.active{display:block}.hero{background:linear-gradient(135deg,#0f766e,#164e63);border-radius:25px;padding:22px;box-shadow:var(--shadow)}.hero h2{font-size:34px;margin:7px 0 22px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero-grid span{background:#ffffff12;border-radius:15px;padding:12px}.hero-grid small,.hero-grid b{display:block}.hero-grid small{color:#ccfbf1}.section-title{display:flex;justify-content:space-between;align-items:center;margin:24px 2px 12px}.section-title h2,.section-title h3{margin:0}.section-title button{border:0;background:var(--brand);color:#fff;padding:9px 12px;border-radius:11px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.card,.list-item{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:14px}.card small,.list-item small,.module-grid small,.about small{display:block;color:var(--muted)}.card b{display:block;margin-top:6px;font-size:17px}.list{display:grid;gap:9px}.list.empty{color:var(--muted);text-align:center;padding:26px;background:var(--panel);border-radius:18px}.list-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.list-item .amount{font-weight:800;white-space:nowrap}.income{color:#5eead4}.expense{color:#fda4af}.filters{display:grid;grid-template-columns:1fr 1.5fr;gap:8px;margin-bottom:12px}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.module-grid button{background:var(--panel);border:1px solid var(--line);border-radius:18px;color:var(--text);padding:18px;text-align:left;font-size:24px}.module-grid b{display:block;font-size:15px;margin-top:8px}.module-grid small{font-size:11px;margin-top:3px}.settings-list{display:grid;gap:10px}.settings-list button{background:var(--panel);border:1px solid var(--line);color:var(--text);padding:16px;border-radius:16px;text-align:left}.settings-list .danger{color:var(--danger)}.about{margin-top:30px;text-align:center;color:var(--muted)}.about small{margin-top:6px}nav{position:fixed;z-index:10;bottom:0;left:0;right:0;height:74px;padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:#0a1627f2;border-top:1px solid var(--line);backdrop-filter:blur(18px)}nav button{border:0;background:none;color:var(--muted);font-size:19px}nav button.active{color:var(--brand)}nav span{display:block;font-size:10px;margin-top:4px}#fab{position:fixed;right:18px;bottom:90px;z-index:8;width:56px;height:56px;border-radius:50%;border:0;background:var(--gold);color:#1f2937;font-size:32px;box-shadow:var(--shadow)}dialog{width:min(520px,calc(100% - 24px));max-height:88vh;border:1px solid var(--line);border-radius:24px;background:var(--panel);color:var(--text);padding:0;box-shadow:var(--shadow)}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}#modalForm{padding:20px;overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h3{margin:0}.field{margin-top:13px}.field label{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}dialog textarea{min-height:80px;resize:vertical}.light{--bg:#eef5f4;--panel:#fff;--panel2:#e1eeec;--text:#14222e;--muted:#617282;--line:#d7e3e2;--shadow:0 14px 35px #2442}body.light header{background:#eef5f4e8}body.light nav{background:#fffffff2}body.light .auth{background:radial-gradient(circle at top,#99f6e4,#eef5f4 55%)}body.light .auth-card{background:#fff}body.light input,body.light select,body.light textarea{background:#f7faf9;color:#14222e}@media(min-width:700px){.cards{grid-template-columns:repeat(4,1fr)}.module-grid{grid-template-columns:repeat(4,1fr)}#fab{right:calc(50% - 360px)}}
