:root{--blue:#1477f8;--ink:#14213a;--muted:#7d8aa0;--line:#eaf0f7;--bg:#f5f8fc;--radius:18px}*{box-sizing:border-box}body{margin:0;background:#dbe8f7;color:var(--ink);font:15px/1.5,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}.shell{width:min(100%,430px);min-height:100vh;margin:auto;background:#fff;box-shadow:0 0 40px #8ba5c655;overflow:hidden}.page{min-height:100vh;padding-bottom:90px}.top{height:64px;display:flex;align-items:center;justify-content:center;padding:0 18px;font-size:19px;font-weight:800;border-bottom:1px solid var(--line)}.back{position:absolute;left:max(18px,calc(50% - 197px));border:0;background:none;font-size:30px;color:var(--ink);cursor:pointer}.hero{padding:22px 16px 18px;background:linear-gradient(#e8f5ff,#fff)}.search-row{display:flex;align-items:center;gap:12px}.city{font-weight:800;white-space:nowrap}.city b{color:var(--blue);font-size:22px}.search{display:flex;align-items:center;gap:8px;flex:1;padding:9px 13px;border:1px solid #d9e5f1;border-radius:99px;background:white;color:#9aa6b9}.search input{min-width:0;flex:1;border:0;outline:0;font:inherit}.search button{border:0;background:transparent;color:var(--blue);cursor:pointer}.banner{position:relative;overflow:hidden;height:156px;margin-top:20px;padding:28px 25px;border-radius:18px;color:#fff;background:linear-gradient(125deg,#0759ee,#00a0f8)}.banner h1{margin:0;font-size:29px;line-height:1.22}.banner p{margin:10px 0;font-size:14px}.banner .scene{position:absolute;right:15px;bottom:12px;font-size:70px;color:#ffd756;transform:rotate(-8deg)}.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 10px;padding:22px 16px}.cat{text-align:center;cursor:pointer;font-size:13px;font-weight:700}.ico{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 7px;border-radius:18px;color:white;font-size:27px;box-shadow:inset 0 -5px #00000013}.cyan{background:#19c6c9}.pink{background:#ed4cad}.blue{background:#319df1}.orange{background:#ff8d2e}.sky{background:#1ab4db}.green{background:#18b66a}.yellow{background:#ffb31a}.purple{background:#6175eb}.section{padding:0 16px 22px}.section-head{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px;font-size:22px;font-weight:800}.section-head:before{content:'';width:4px;height:25px;margin-right:9px;border-radius:4px;background:var(--blue)}.section-head a{margin-left:auto;color:#8491a5;font-size:13px;font-weight:500;cursor:pointer}.merchant-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.merchant{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 5px 14px #27466d0e;cursor:pointer}.merchant img{display:block;width:100%;height:118px;object-fit:cover}.merchant .body{padding:10px}.merchant strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px}.tag{display:inline-block;margin:8px 4px 0 0;padding:3px 6px;border-radius:5px;background:#edf5ff;color:#2778ef;font-size:11px}.tag.gray{color:#68778d;background:#f1f4f7}.score{display:block;margin-top:7px;color:#f59b20;font-size:12px}.tabs{position:fixed;z-index:3;bottom:0;width:min(100%,430px);height:70px;display:flex;justify-content:space-around;padding:9px 0 max(9px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}.tab{display:flex;flex-direction:column;align-items:center;border:0;background:none;color:#7d899c;font:12px inherit;cursor:pointer}.tab b{font-size:23px}.tab.active{color:var(--blue)}.list{padding:16px;background:var(--bg)}.filters{display:flex;gap:8px;margin:12px 0}.filters button,.outline{flex:1;padding:8px;border:0;border-radius:10px;background:#fff;color:#536078;font:13px inherit}.list-card{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #e8edf3;cursor:pointer}.list-card img{width:105px;height:87px;border-radius:10px;object-fit:cover}.list-card h3{margin:0;font-size:17px}.list-card p{margin:5px 0;color:#8490a4;font-size:12px}.distance{float:right;color:#8490a4;font-weight:400}.cover{width:100%;height:240px;object-fit:cover}.content{padding:22px 18px}.content h1{margin:0;font-size:27px}.meta{color:#718096;margin:8px 0}.address{display:flex;gap:12px;align-items:center;margin:20px 0;font-size:14px}.actions{display:flex;gap:12px;position:sticky;bottom:0;padding:12px 16px;background:#fff;border-top:1px solid var(--line)}button.primary,.actions button{flex:1;padding:12px;border:0;border-radius:24px;background:var(--blue);color:white;font:600 16px inherit;cursor:pointer}.actions button:first-child{background:#eaf3ff;color:var(--blue)}.blue-hero{padding:28px 20px 70px;color:#fff;text-align:center;background:linear-gradient(135deg,#0762f5,#159cf8)}.blue-hero h1{margin:0;font-size:29px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 14px -50px;padding:17px 8px;border-radius:16px;background:white;color:#33415a;box-shadow:0 8px 20px #003b8725;font-size:12px}.benefits b{display:block;font-size:25px;color:var(--blue)}.form{padding:64px 18px 24px}.form h2{font-size:21px}.field{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:10px;margin:13px 0}.field label{font-weight:700}.field label em{color:#ed5151;font-style:normal}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #dfe7f0;border-radius:10px;outline-color:var(--blue);font:14px inherit}.field textarea{height:86px;resize:vertical}.upload{display:block;padding:16px;border:1px dashed #9fc4fa;border-radius:10px;color:var(--blue);text-align:center;cursor:pointer}.upload input{display:none}.preview{width:80px;height:60px;margin-top:8px;object-fit:cover;border-radius:8px}.status-card{margin:18px;padding:28px 20px;border-radius:18px;background:#edf7ff;text-align:center}.status-icon{font-size:54px;color:var(--blue)}.timeline{margin:25px 0;padding:16px;border-radius:12px;background:#fff;text-align:left}.timeline div{padding:9px;border-left:3px solid #dbe4f1}.timeline .done{border-color:var(--blue)}.timeline .pending{color:#8d9aae}.status-switch{display:flex;gap:8px;margin:16px}.status-switch button{flex:1;padding:10px;border:1px solid #cfdbea;border-radius:10px;background:white;color:#547}.manager-head{padding:24px 18px 75px;color:white;background:linear-gradient(135deg,#0966f4,#239bf8)}.manager-head img{float:left;width:74px;height:74px;margin-right:14px;border-radius:11px;object-fit:cover}.manager-head h1{margin:4px 0 4px;font-size:24px}.pill{display:inline-block;padding:3px 9px;border-radius:99px;background:#b9f4d1;color:#147840;font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:-48px 16px 18px;padding:16px 5px;border-radius:16px;background:#fff;text-align:center;box-shadow:0 8px 20px #1c4a7917}.metrics b{display:block;font-size:21px}.metrics span{color:#77849a;font-size:11px}.menu{margin:0 16px;border-radius:16px;background:#fff;box-shadow:0 5px 17px #254b740f}.menu button{display:flex;justify-content:space-between;width:100%;padding:16px;border:0;border-bottom:1px solid var(--line);background:white;text-align:left;font:16px inherit;cursor:pointer}.menu button:last-child{border-bottom:0}.service{display:flex;align-items:center;gap:12px;margin:12px 16px;padding:10px;border:1px solid var(--line);border-radius:14px}.service img{width:68px;height:68px;border-radius:9px;object-fit:cover}.service main{flex:1}.service main b,.service main span{display:block}.service main span{color:#f05252}.service button{padding:7px 9px;border:0;border-radius:8px;background:#eaf3ff;color:var(--blue);cursor:pointer}.service button.danger{background:#fff0f1;color:#ef5b63}.payment-status{margin:18px;padding:23px;border-radius:16px;color:white;background:linear-gradient(135deg,#0962f3,#24a4f8)}.payment-status b{display:block;font-size:25px}.renew{float:right;margin-top:-37px;padding:9px 14px;border:0;border-radius:20px;color:var(--blue);background:#fff;cursor:pointer}.pay-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:5px;margin:0 16px;padding:16px 10px;border-bottom:1px solid var(--line);font-size:13px}.confirmed{color:#13a35a}.profile{margin:0;padding:30px 20px 50px;background:linear-gradient(135deg,#d9f0ff,#fff)}.profile .avatar{display:grid;place-items:center;width:73px;height:73px;border:3px solid white;border-radius:50%;background:#246fe9;color:white;font-size:32px}.profile h2{margin:10px 0 0}.toast{position:fixed;z-index:10;left:50%;bottom:90px;transform:translateX(-50%);padding:10px 14px;border-radius:10px;background:#17223b;color:#fff;font-size:13px}.empty{padding:70px 15px;text-align:center;color:#8c98aa}@media(min-width:560px){body{padding:18px}.shell{border-radius:24px;min-height:900px}.tabs{border-radius:0 0 24px 24px}}
