:root{--color-primary: #1677ff;--color-primary-2: #44a3ff;--color-primary-soft: #e8f2ff;--color-bg: #f4f7fb;--color-card: #ffffff;--color-text: #172033;--color-text-secondary: #6b7280;--color-muted: #9ca3af;--color-border: #e5e7eb;--color-success: #16a34a;--color-success-bg: #ecfdf3;--color-warning: #f59e0b;--color-warning-bg: #fff4e5;--color-danger: #dc2626;--color-danger-bg: #fee2e2;--radius-card: 16px;--radius-btn: 11px;--shadow-card: 0 6px 18px rgba(22, 119, 255, .06);font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:var(--color-text);background:var(--color-bg)}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none}input,select{font:inherit}.page{max-width:480px;margin:0 auto;min-height:100vh;padding:14px 14px 80px;background:var(--color-bg)}.nav{margin:-14px -14px 14px;padding:16px 18px 14px;color:#fff;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-2))}.card{background:var(--color-card);border-radius:var(--radius-card);padding:14px;margin-bottom:12px;box-shadow:var(--shadow-card)}.search{height:38px;display:flex;align-items:center;padding:0 12px;border-radius:12px;background:#fff;margin-bottom:12px;box-shadow:var(--shadow-card)}.search input{flex:1;border:none;outline:none;background:transparent}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.stat{background:#fff;border-radius:14px;padding:12px 8px;text-align:center;box-shadow:var(--shadow-card)}.stat b{display:block;color:var(--color-primary);font-size:20px}.stat span{color:var(--color-text-secondary);font-size:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:8px}.name{font-weight:700;font-size:16px}.meta{color:var(--color-text-secondary);font-size:12px;margin-top:4px;line-height:1.5}.tag{display:inline-block;padding:4px 8px;border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary);font-size:12px}.tag.green{background:var(--color-success-bg);color:var(--color-success)}.tag.orange{background:var(--color-warning-bg);color:var(--color-warning)}.tag.red{background:var(--color-danger-bg);color:var(--color-danger)}.btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.btns.three{grid-template-columns:repeat(3,1fr)}.btn{height:34px;border-radius:var(--radius-btn);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.btn.primary{background:var(--color-primary);color:#fff}.btn.ghost{background:#f1f5f9;color:#334155}.btn.danger{background:var(--color-danger-bg);color:var(--color-danger)}.btn.block{width:100%;height:44px;margin-top:12px}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.quick div,.quick a{background:#fff;border-radius:14px;padding:12px 4px;text-align:center;font-size:12px;color:#334155;box-shadow:var(--shadow-card)}.quick b{display:block;font-size:18px;margin-bottom:4px;color:var(--color-primary)}.site-img{height:88px;border-radius:14px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);margin-bottom:10px;overflow:hidden}.site-img img{width:100%;height:100%;object-fit:cover}.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.type-grid button{background:#f1f5f9;border-radius:12px;padding:10px 4px;font-size:12px;color:#64748b}.type-grid button.on{background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.form label{display:block;color:#64748b;font-size:12px;margin:12px 0 6px}.input{width:100%;background:#f1f5f9;border-radius:12px;padding:12px;border:none;outline:none;color:#334155;font-size:13px}.empty{text-align:center;color:var(--color-text-secondary);padding:28px 12px}.tabbar{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:min(480px,100%);height:58px;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-top:1px solid var(--color-border);z-index:20}.tabbar a{text-align:center;padding-top:8px;font-size:11px;color:#64748b}.tabbar a b{display:block;font-size:16px}.tabbar a.on{color:var(--color-primary);font-weight:700}.sum-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sum-box{background:#fff;border-radius:14px;padding:12px;box-shadow:var(--shadow-card)}.sum-box b{font-size:18px;display:block}.list-row{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eef2f7}.list-row:last-child{border-bottom:none}
