:root{--brand: #9E1B32;--brand-2: #B8324A;--brand-deep: #7C1426;--brand-soft: #FBEEF0;--gold: #C29A57;--gold-soft: #FAF5EA;--bg: #F6F4F1;--card: #FFFFFF;--text: #1F2329;--text-2: #5C6470;--text-3: #9BA2AD;--line: #EEEAE4;--ok: #2E8B6E;--ok-soft: #E9F5F0;--warn: #C9821B;--warn-soft: #FDF3E3;--danger: #C0392B;--danger-soft: #FBECEA;--info: #4B6A8F;--info-soft: #EDF2F8}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}.app-shell{max-width:480px;margin:0 auto;min-height:100vh}.container{padding:0 14px}.section{margin-top:16px}.card{background:var(--card);border-radius:12px;padding:16px;box-shadow:0 3px 12px #7c14260d}.row{display:flex;align-items:center}.row-between{display:flex;align-items:center;justify-content:space-between}.flex-1{flex:1;min-width:0}.t-title{font-size:18px;font-weight:600}.t-sub{font-size:15px;font-weight:600}.t-body{font-size:14px;color:var(--text-2)}.t-muted{font-size:12px;color:var(--text-3)}.t-brand{color:var(--brand)}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:11px}.section-head__main{display:flex;align-items:center}.section-head__bar{width:4px;height:15px;border-radius:2px;background:linear-gradient(180deg,var(--brand-2),var(--brand-deep));margin-right:8px}.section-head__title{font-size:16px;font-weight:600}.section-head__more{font-size:12px;color:var(--text-3)}.tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:4px;font-size:11px;line-height:1}.tag--brand{background:var(--brand-soft);color:var(--brand)}.tag--gold{background:var(--gold-soft);color:#9a7628}.tag--ok{background:var(--ok-soft);color:var(--ok)}.tag--warn{background:var(--warn-soft);color:var(--warn)}.tag--danger{background:var(--danger-soft);color:var(--danger)}.tag--info{background:var(--info-soft);color:var(--info)}.tag--plain{background:#f2f0ed;color:var(--text-2)}.btn{height:46px;border-radius:23px;font-size:15px;font-weight:500;display:flex;align-items:center;justify-content:center;letter-spacing:.5px;border:none;cursor:pointer;width:100%}.btn--primary{background:linear-gradient(135deg,var(--brand-2),var(--brand-deep));color:#fff;box-shadow:0 6px 14px #9e1b3238}.btn--ghost{background:#fff;color:var(--brand);border:1px solid rgba(158,27,50,.28)}.btn--plain{background:#f3f1ee;color:var(--text-2)}.btn:active{opacity:.85}.btn:disabled{opacity:.45;cursor:not-allowed}.field{margin-top:16px}.field__label{font-size:13px;color:var(--text-2);margin-bottom:8px;display:block}.field__label--required:after{content:"*";color:var(--danger);margin-left:3px}.field__input,.field__textarea{width:100%;height:44px;padding:0 12px;border-radius:8px;border:none;background:#f8f6f3;font-size:14px;outline:none}.field__textarea{height:auto;min-height:70px;padding:10px 12px;resize:vertical}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{height:32px;padding:0 14px;display:inline-flex;align-items:center;border-radius:16px;background:#f3f1ee;color:var(--text-2);font-size:13px;cursor:pointer;border:none}.chip--on{background:var(--brand-soft);color:var(--brand);font-weight:600;box-shadow:inset 0 0 0 1px #9e1b3259}.date-row{display:flex;gap:7px;overflow-x:auto;padding:2px 0 6px}.date-cell{width:56px;height:59px;border-radius:9px;background:#f8f6f3;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;border:none}.date-cell--on{background:linear-gradient(160deg,var(--brand-2),var(--brand-deep))}.date-cell--on .date-cell__weekday,.date-cell--on .date-cell__day{color:#fff}.date-cell__weekday{font-size:11px;color:var(--text-3)}.date-cell__day{margin-top:4px;font-size:14px;font-weight:600}.toast{position:fixed;left:50%;bottom:18%;transform:translate(-50%);background:#1f2329e0;color:#fff;font-size:13px;padding:10px 18px;border-radius:8px;z-index:999;max-width:80%}.empty{padding:60px 20px;text-align:center;color:var(--text-3);font-size:13px}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;background:#fff;display:flex;border-top:1px solid var(--line);z-index:99;padding-bottom:env(safe-area-inset-bottom)}.tabbar__item{flex:1;text-align:center;padding:8px 0 10px;font-size:11px;color:#9aa1ac;cursor:pointer;text-decoration:none}.tabbar__item--on{color:var(--brand)}.tabbar__dot{width:20px;height:20px;margin:0 auto 3px;border-radius:6px;background:currentColor;opacity:.55}.hero{position:relative;background:linear-gradient(160deg,#b8324a,#9e1b32 52%,#7c1426);padding:22px 16px 56px;overflow:hidden}.hero__name{font-size:20px;font-weight:600;color:#fff;letter-spacing:1px}.hero__sub{margin-top:4px;font-size:12px;color:#ffffffc7}.hero__badges{margin-top:17px;display:flex}.hero__badge{height:23px;padding:0 11px;margin-right:9px;border-radius:12px;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#fff;font-size:11px;display:flex;align-items:center}.hero__badge--gold{background:linear-gradient(135deg,#e3cd9e52,#e3cd9e24);border-color:#e3cd9e80;color:#f7e9c8}.hero__overlap{position:relative;margin-top:-38px}.core-card{position:relative;border-radius:12px;padding:17px 15px 15px;background:linear-gradient(150deg,#fff,#fbf4f5);border:1px solid rgba(158,27,50,.1);box-shadow:0 5px 15px #7c142614;cursor:pointer}.core-card__name{font-size:17px;font-weight:600}.core-card__summary{margin-top:5px;font-size:12px;color:var(--text-2);line-height:1.55}.core-card__meta{display:flex;margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}.core-card__meta-item{flex:1}.core-card__meta-label{font-size:11px;color:var(--text-3);display:block}.core-card__meta-value{margin-top:3px;font-size:12px;color:var(--text);font-weight:500;display:block}.core-card__cta{margin-top:14px;height:39px;border-radius:20px;background:linear-gradient(135deg,var(--brand-2),var(--brand-deep));color:#fff;font-size:14px;letter-spacing:1px;display:flex;align-items:center;justify-content:center}.grid8{display:flex;flex-wrap:wrap;padding:12px 6px 10px}.grid8__item{width:25%;padding:10px 4px 11px;display:flex;flex-direction:column;align-items:center;cursor:pointer}.grid8__tile{width:46px;height:46px;border-radius:11px;background:linear-gradient(150deg,#fdf3f4,#f7e9ec);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--brand)}.grid8__name{margin-top:8px;font-size:12px;color:var(--text);text-align:center;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.grid8__meta{margin-top:2px;font-size:10px;color:var(--text-3)}.grid8__item--locked .grid8__tile{opacity:.32}.grid8__item--locked .grid8__name{color:var(--text-3)}.benefit{display:flex;align-items:center;padding:15px 12px}.benefit__item{flex:1;text-align:center}.benefit__label{font-size:12px;color:var(--text-3)}.benefit__value{margin-top:4px;font-size:13px;color:var(--text);font-weight:500}.benefit__divider{width:1px;height:26px;background:var(--line)}.svc-card{margin-top:12px}.svc__foot{margin-top:12px;padding-top:11px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.svc__btn{height:34px;padding:0 20px;display:inline-flex;align-items:center;border-radius:17px;background:linear-gradient(135deg,var(--brand-2),var(--brand-deep));color:#fff;font-size:13px;cursor:pointer;border:none}.svc__btn--locked{background:#f0eeea;color:var(--text-3)}.record-card{margin-top:12px;cursor:pointer}.notice{margin-top:18px;padding:13px 15px;border-radius:10px;background:#fff9;border:1px dashed var(--line);font-size:11px;color:var(--text-3);line-height:1.7}.safe-bottom{height:70px}
