:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Noto Sans SC,sans-serif;--primary: #10b981;--primary-dark: #047857;--mint: #d1fae5;--bg: #f6faf8;--surface: #ffffff;--border: #dbe7e1;--text: #10201a;--muted: #66756f;--warning: #f59e0b;--danger: #dc2626;--shadow: 0 12px 30px rgba(16, 96, 66, .1)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#e9f5ef;color:var(--text)}button,input{font:inherit}button{cursor:pointer}.phone-shell{width:min(430px,100vw);min-height:100vh;margin:0 auto;background:var(--bg);position:relative;box-shadow:0 0 0 1px #10201a0d}.app-header{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:44px 1fr 44px;gap:8px;align-items:center;padding:18px 16px 12px;background:#f6faf8eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(219,231,225,.7)}.app-header h1{margin:0;font-size:22px;line-height:1.25;text-align:center}.app-header p{margin:4px 0 0;color:var(--muted);font-size:13px;text-align:center}.header-spacer,.icon-button{width:44px;height:44px}.icon-button{border:0;background:transparent;border-radius:12px;display:grid;place-items:center;color:var(--text)}.app-main{padding:14px 16px 28px}.app-main.with-tabs{padding-bottom:96px}.stack{display:grid;gap:12px}.today-row{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.icon-pill{min-height:34px;display:inline-flex;gap:6px;align-items:center;border:1px solid var(--border);border-radius:999px;padding:0 12px;color:var(--primary-dark);background:#fff}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.card h2,.card h3{margin:0 0 6px}.card p{margin:0;color:var(--muted);line-height:1.5}.hero-card{color:#fff;background:linear-gradient(135deg,var(--primary),#059669);border-color:transparent}.hero-card span{opacity:.88;font-size:14px}.hero-card strong{display:block;font-size:36px;line-height:1.1;margin:8px 0}.hero-card p{color:#ffffffdb}.hero-card button{margin-top:14px;height:40px;border:0;border-radius:12px;padding:0 14px;color:var(--primary-dark);background:#fff;font-weight:700}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.hero-card.compact strong{font-size:30px}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-card{min-height:112px;display:grid;align-content:start;gap:8px;text-align:left;border:1px solid var(--border);border-radius:16px;background:#fff;padding:14px;box-shadow:var(--shadow)}.metric-card span{color:var(--muted);font-size:13px}.metric-card strong{font-size:20px;line-height:1.2;overflow-wrap:anywhere}.metric-card em{font-style:normal;color:var(--primary-dark);font-size:12px}.bottom-tabs{position:fixed;left:50%;bottom:0;transform:translate(-50%);width:min(430px,100vw);height:78px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:#fffffff2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--border)}.bottom-tabs button{height:58px;border:0;background:transparent;color:#8a9691;display:grid;place-items:center;gap:2px;border-radius:14px;font-size:11px}.bottom-tabs button.active{color:var(--primary-dark);background:var(--mint)}.bottom-tabs .add-tab{color:var(--primary);font-weight:700}.primary-button,.secondary-button,.ghost-button{height:50px;border-radius:14px;border:0;font-weight:700;padding:0 16px}.primary-button{background:var(--primary);color:#fff}.secondary-button{background:var(--mint);color:var(--primary-dark)}.ghost-button{background:transparent;color:var(--primary-dark)}.input{width:100%;min-height:50px;border:1px solid var(--border);border-radius:14px;padding:0 14px;background:#fff}.amount-input{font-size:24px;font-weight:700}.field-label{font-weight:700;font-size:14px}.check-row{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:14px}.form-error{color:var(--danger);font-size:13px;font-weight:700}.badge{display:inline-flex;align-items:center;width:fit-content;min-height:26px;padding:0 9px;border-radius:999px;font-size:12px;background:#eef2f1;color:var(--muted);white-space:nowrap}.badge.green{color:#047857;background:#d1fae5}.badge.blue{color:var(--text);background:#eef2f1}.badge.amber{color:#92400e;background:#fef3c7}.badge.red{color:#b91c1c;background:#fee2e2}.row-card,.action-card,.notice-card,.profile-card{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center}.action-card{grid-template-columns:40px 1fr}.upload-box{border-style:dashed;text-align:center;color:var(--primary-dark)}.upload-box svg{margin:0 auto 8px}.notice-card{grid-template-columns:28px 1fr;color:var(--primary-dark);background:#f0fdf4}.notice-card p,.upload-box p{color:var(--primary-dark)}.debt-card,.payable-card,.field-card,.line{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.debt-card strong,.payable-card strong{font-size:18px}.filter-row{display:flex;gap:8px;overflow-x:auto}.formula{font-size:18px;font-weight:700;color:var(--primary-dark);overflow-wrap:anywhere}.line{padding:10px 0;border-bottom:1px solid var(--border)}.line:last-child{border-bottom:0}.line small{display:block;color:var(--muted);margin-top:4px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-grid button{min-height:54px;border:1px solid var(--border);background:#fff;border-radius:12px;display:grid;place-items:center;color:var(--text)}.calendar-grid button.has-payable{border-color:var(--primary);color:var(--primary-dark);background:var(--mint);font-weight:700}.calendar-grid small{font-size:9px;color:var(--primary-dark)}.brand-card{text-align:center}.logo-mark,.avatar{width:58px;height:58px;margin:0 auto 12px;border-radius:18px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#5ee07d,#00a77b);font-weight:900;font-size:30px}.logo-mark{display:block;object-fit:cover}.avatar{width:46px;height:46px;margin:0;font-size:20px}.danger-card{border-color:#fecaca;background:#fff7f7}.danger-card h3{color:var(--danger)}.empty-state{text-align:center;padding:48px 16px;color:var(--muted)}.empty-state h3{color:var(--text);margin-bottom:8px}.toast{position:sticky;top:82px;z-index:6;margin-bottom:10px;padding:12px 14px;border-radius:14px;color:#fff;background:var(--primary-dark);box-shadow:var(--shadow)}.skeleton-list{display:grid;gap:12px}.skeleton{height:98px;border-radius:16px;background:linear-gradient(90deg,#eef6f2,#fff,#eef6f2);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position-x:-200%}}@media(max-width:360px){.metric-grid{grid-template-columns:1fr}.hero-card strong{font-size:30px}.app-header h1{font-size:20px}}
