:root { color-scheme:light; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; --green:#173f33; --ink:#17332b; --muted:#64736e; --line:#dbe5df; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; color:var(--ink); background:radial-gradient(circle at top left,#f7e8a9 0,transparent 30%),linear-gradient(145deg,#edf6f1,#f7f4e8); }
.page { min-height:100vh; display:grid; place-content:center; padding:24px 16px; }
.card { width:min(100%,700px); background:rgba(255,255,255,.97); border:1px solid rgba(23,63,51,.1); border-radius:28px; padding:34px; box-shadow:0 24px 70px rgba(23,63,51,.14); }
.header,.section-title { display:flex; align-items:center; gap:16px; }
.brand { display:flex; flex:0 0 56px; width:56px; height:36px; }
.brand span { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; color:white; font-weight:800; background:var(--green); border:3px solid white; }
.brand span+span { margin-left:-12px; background:#d8a91d; }
.eyebrow { margin:0 0 4px; color:#98730c; font-size:.78rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
h1 { margin:0; font-size:clamp(1.7rem,5vw,2.5rem); line-height:1.05; }
h2 { margin:0; font-family:Georgia,serif; font-size:1.55rem; }
.section-title { padding-bottom:20px; margin-bottom:22px; border-bottom:1px solid #ddd8cf; }
.section-title p { margin:3px 0 0; color:var(--muted); font-size:.82rem; }
.cash-modes { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:4px 0 18px; padding:5px; background:#edf3f0; border-radius:14px; }
.cash-mode { border:0; border-radius:11px; padding:12px 10px; background:transparent; color:#53655e; font-weight:800; cursor:pointer; }
.cash-mode.active { background:#164e3e; color:#fff; box-shadow:0 3px 10px rgba(22,78,62,.2); }
.flow-help { margin:0 0 16px; color:var(--muted); font-size:.9rem; line-height:1.45; }
.cash-summary { display:flex; flex-direction:column; gap:5px; margin:-2px 0 16px; padding:13px 15px; border:1px solid #cfe0d8; border-radius:12px; background:#f1f7f4; color:#2d4d42; font-size:.88rem; }
.cash-summary strong { color:#123f32; }
.section-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:#087152; background:#e1eee8; font-weight:900; }
.tabs { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin:26px 0 20px; padding:5px; border-radius:16px; background:#edf3ef; }
.tab { padding:11px 8px; color:var(--muted); background:transparent; box-shadow:none; }
.tab:hover { color:var(--ink); background:rgba(255,255,255,.65); transform:none; }
.tab.active { color:white; background:var(--green); box-shadow:0 7px 18px rgba(23,63,51,.18); }
.panel { display:none; }.panel.active { display:block; }
.intro { margin:0 0 24px; color:var(--muted); line-height:1.5; }
form { display:grid; gap:18px; }.field { display:grid; gap:8px; }.row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
label { font-size:.92rem; font-weight:750; } label small { color:var(--muted); font-weight:500; }
input,select,textarea { width:100%; border:1px solid var(--line); border-radius:14px; background:#fbfdfc; color:var(--ink); font:inherit; padding:13px 14px; outline:none; transition:.2s; }
input:focus,select:focus,textarea:focus { border-color:#3d7966; box-shadow:0 0 0 4px rgba(61,121,102,.12); background:white; }
select:disabled { color:#8c9894; }.money { display:flex; align-items:center; border:1px solid var(--line); border-radius:14px; background:#fbfdfc; overflow:hidden; }
.money:focus-within { border-color:#3d7966; box-shadow:0 0 0 4px rgba(61,121,102,.12); background:white; }.money span { padding-left:14px; font-weight:800; color:#087152; }.money input { border:0; box-shadow:none; background:transparent; }
.check { display:flex; align-items:center; gap:12px; }.check input { width:20px; height:20px; }
button { border:0; border-radius:15px; padding:15px 20px; color:white; background:var(--green); font:inherit; font-weight:800; cursor:pointer; transition:.2s; box-shadow:0 10px 24px rgba(23,63,51,.2); }
button span { float:right; } button:hover { background:#215544; transform:translateY(-1px); } button:disabled { cursor:not-allowed; opacity:.42; transform:none; box-shadow:none; }
.message { display:none; margin:0; padding:12px 14px; border-radius:12px; line-height:1.4; }.message.show { display:block; }.message.success { background:#e5f5eb; color:#135d34; }.message.error { background:#fde9e7; color:#93291f; }
.footer { margin:16px 0 0; color:#62716c; font-size:.82rem; text-align:center; }
.install-button { width:100%; margin-top:20px; color:var(--green); background:#f2c94c; }.install-button[hidden],.install-help[hidden] { display:none; }.install-help { padding:11px 13px; background:#fff7d6; border-radius:12px; }
@media (max-width:600px) { .card { padding:25px 19px; border-radius:22px; }.row { grid-template-columns:1fr; }.tabs { grid-template-columns:1fr 1fr; }.page { place-content:start center; } }
