:root{font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:#171b24;background:#f6f8fc;font-size:16px;font-weight:400;line-height:1.6}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#f6f8fc}button,input{font:inherit;font-weight:400}.app-shell{width:100%;max-width:430px;min-height:100dvh;margin:0 auto;background:#f6f8fc;box-shadow:0 0 22px rgba(25,73,128,.08)}
.top{padding:14px 16px;background:linear-gradient(180deg,#163e98,#0f57b8);color:#fff}.top small{display:block;font-size:13px;opacity:.82;margin-bottom:4px}.top h1{font-size:18px;font-weight:400;margin:0;letter-spacing:.2px}.top-row{display:flex;align-items:center;gap:8px}.back{width:44px;height:44px;min-width:44px;border:0;border-radius:8px;background:transparent;color:#fff;padding:0;display:grid;place-items:center;font-size:30px;line-height:1;cursor:pointer}.back:active{background:rgba(255,255,255,.14)}.grow{flex:1}
.page{padding:14px}.login{padding:30px 20px}.brand{font-size:20px;font-weight:400;color:#234e6b;margin:25px 0 6px}.subtle{font-size:14px;color:#657580;margin:0 0 24px}.field{display:block;margin:0 0 14px}.field span{display:block;font-size:14px;color:#536773;margin-bottom:6px}.field input{width:100%;height:48px;border:1px solid #d5dde3;border-radius:9px;padding:0 12px;background:#fff;color:#263640;outline:none}.field input:focus{border-color:#4e829f}.primary{width:100%;min-height:48px;border:0;border-radius:9px;background:#285b78;color:#fff;margin-top:6px}.ghost{min-height:44px;border:1px solid #d5dde3;border-radius:9px;background:#fff;color:#43545f;padding:0 14px}
.balance{margin:14px;padding:18px;background:linear-gradient(135deg,#246fc9 0%,#155bb7 100%);border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;box-shadow:0 5px 16px rgba(23,105,232,.16)}.balance:active{background:linear-gradient(135deg,#1f65bb 0%,#0f52aa 100%)}.balance-main{min-width:0}.balance .label{font-size:14px;opacity:.88}.balance .amount{font-size:24px;font-weight:400;letter-spacing:.3px;margin:7px 0 0}.balance-arrow{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.14);font-size:30px;line-height:1}.list{padding:0 14px 18px}.item,.project{display:block;width:100%;text-align:left;background:#fff;border:1px solid #dbe5f2;border-radius:10px;margin-bottom:10px;padding:14px;color:#171b24;min-height:50px}.item-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.item .name,.project .name{font-size:16px}.item .value{font-size:15px;color:#1769e8;white-space:nowrap}.project .meta{font-size:13px;color:#7c8798;margin-top:6px;line-height:1.55}.section{font-size:14px;color:#425168;margin:18px 2px 9px;letter-spacing:.2px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.metric{background:#fff;border:1px solid #dbe5f2;border-radius:9px;padding:12px}.metric span{display:block;color:#425168;font-size:13px}.metric em{display:block;color:#1f5fa9;font-style:normal;font-size:16px;margin-top:5px;line-height:1.45}.unit-summary{margin-bottom:4px}.empty,.error{padding:28px 16px;text-align:center;color:#7c8798;font-size:15px}.error{color:#a14545}.loading{padding:44px;text-align:center;color:#7c8798;font-size:15px}.detail-card{background:#fff;border:1px solid #dbe5f2;border-radius:10px;padding:14px;margin-bottom:10px;color:#171b24}.detail-card.static{width:100%}.detail-line{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 0;font-size:15px;border-bottom:1px solid #edf0f5;line-height:1.5}.detail-line:last-child{border-bottom:0}.detail-line span:first-child{color:#425168;flex:0 0 38%}.detail-line span:last-child{text-align:right;word-break:break-word}.warning{font-size:14px;color:#855f24;background:#fff8e8;border:1px solid #f1dfb4;border-radius:9px;padding:11px;margin-bottom:9px}.logout{border:0;background:transparent;color:#fff;opacity:.9;min-height:44px;font-size:13px}
.item .name,.project .name{display:block}.item small{display:block;color:#7c8798;font-size:13px;margin-top:3px}.metric{font:inherit;text-align:left;color:#171b24}.overview-metrics{margin-bottom:14px}.overview-metric{min-height:82px;cursor:pointer}.overview-metric:active{background:#f2f7fd}.payment-breakdown{margin-top:10px;color:#657580;font-size:13px;line-height:1.6}
@media(max-width:340px){:root{font-size:15px}.balance .amount{font-size:22px}.page,.list{padding-left:11px;padding-right:11px}.balance{margin-left:11px;margin-right:11px}.detail-line{font-size:14px}}
@media(min-width:431px){body{padding:18px 0}.app-shell{min-height:calc(100dvh - 36px);border-radius:16px}}
