:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f9fc;--surface:#fff;--line:#e5eaf2;--muted:#627188;--text:#18283f;--blue:#2563d9;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;font-size:16px;line-height:1.65}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:default}[hidden]{display:none!important}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #2563d9}button{touch-action:manipulation}h1,h2,h3,p{margin:0}h2{font-size:1.125rem;font-weight:650}button,input{min-height:44px}button{border:0}.skip-link{z-index:10;background:#fff;padding:12px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:12px}.referral-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;width:min(920px,100% - 48px);min-height:80px;margin:auto;display:flex}.referral-brand{white-space:nowrap;align-items:center;gap:10px;text-decoration:none;display:flex}.referral-brand span{color:#fff;letter-spacing:-.05em;background:linear-gradient(135deg,#42c7ed,#427bea);border-radius:10px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.referral-brand b{font-size:1rem}.referral-nav nav a{min-height:44px;color:var(--muted);align-items:center;gap:8px;font-size:.875rem;text-decoration:none;display:inline-flex}.referral-shell{width:min(840px,100% - 48px);margin:auto;padding:52px 0 64px}.referral-hero>h1{text-align:center;letter-spacing:-.04em;font-size:2.5rem;font-weight:700;line-height:1.25}.referral-hero>p{text-align:center;color:var(--muted);max-width:520px;margin:16px auto 0}.participation-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin:40px 0 30px;padding:0;list-style:none;display:grid}.participation-steps li{min-width:0;position:relative}.step-number{width:32px;height:32px;color:var(--blue);background:#e8f0ff;border-radius:50%;place-items:center;margin-bottom:12px;font-size:14px;font-weight:700;display:grid}.participation-steps li:not(:last-child):after{content:"";background:#dce5f4;height:1px;position:absolute;top:16px;left:48px;right:-17px}.participation-steps h2{margin:0 0 6px;font-size:1rem}.participation-steps p{color:var(--muted);max-width:220px;font-size:.875rem}.share-area{text-align:center}.primary-button{background:var(--blue);color:#fff;border-radius:12px;justify-content:center;align-items:center;gap:24px;width:min(100%,272px);min-height:52px;font-weight:600;display:inline-flex;box-shadow:0 4px 10px #2563d914}.primary-button:hover:not(:disabled){background:#1f54ba}.share-options{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;margin:8px 0;display:flex}.share-options button,.text-button{color:var(--muted);background:0 0;padding:10px 12px;font-size:.875rem}.share-options button:hover:not(:disabled),.text-button:hover:not(:disabled){color:var(--blue);background:#eaf1fc;border-radius:8px}.invitation-details{max-width:480px;color:var(--muted);margin:0 auto;font-size:.875rem}summary{cursor:pointer;align-items:center;min-height:44px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}.invitation-details summary{justify-content:center;gap:8px}.invitation-details summary:after{content:"⌄"}.invitation-details[open] summary:after{content:"⌃"}.invitation-details label{text-align:left;margin-top:8px;display:block}.invitation-details input{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);background:#fff;border-radius:8px;padding:10px 12px;font-size:16px;display:block}.invitation-details p{margin:8px 0}.invitation-details strong{color:var(--text);letter-spacing:.08em}.referral-status{color:var(--muted);overflow-wrap:anywhere;max-width:520px;min-height:24px;margin:4px auto 0;font-size:.875rem}.referral-status:empty{min-height:0}.referral-status[data-type=error]{color:#a14332}.referral-status[data-type=success]{color:#356751}.dashboard-section{border-top:1px solid var(--line);margin-top:32px;padding-top:30px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.metric-grid article{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0;padding:20px 22px}.metric-grid h3{color:var(--muted);font-size:.875rem;font-weight:400}.metric-grid p{align-items:baseline;gap:6px;margin-top:8px;display:flex}.metric-grid strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;font-size:1.875rem;font-weight:650;line-height:1.35}.metric-grid span{color:var(--muted);font-size:.875rem}.metric-grid .money{gap:3px}.metric-note,.record-note{color:var(--muted);margin-top:12px;font-size:.875rem}.referral-records{margin-top:36px}.referral-records header{justify-content:space-between;align-items:center;gap:12px;display:flex}.record-heading,.record-list article{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(100px,.8fr);align-items:center;gap:12px;display:grid}.record-heading{color:var(--muted);border-bottom:1px solid var(--line);padding:16px 0 12px;font-size:.875rem}.record-heading span:last-child{text-align:right}.record-list{margin:0;padding:0;list-style:none}.record-list article{border-bottom:1px solid var(--line);padding:18px 0;font-size:.875rem}.record-person{overflow-wrap:anywhere;min-width:0;font-weight:500}.record-list time{color:var(--muted);font-variant-numeric:tabular-nums}.record-status{color:#627188;text-align:center;background:#eef1f5;border-radius:6px;justify-self:end;padding:3px 9px;font-size:.875rem;font-weight:400}.record-status[data-state=completed]{color:#355e9d;background:#eaf1ff}.record-status[data-state=paid]{color:#34705c;background:#e9f4ef}.record-status[data-state=invalid]{color:#6c6f76;background:#f1f1f2}.empty{text-align:center;color:var(--muted);border-bottom:1px solid var(--line);padding:38px 16px;font-size:.875rem}.empty span{color:var(--text);margin-bottom:5px;font-size:1rem;display:block}.rules-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:36px}.rules-panel>summary{justify-content:space-between;padding:18px 0;font-size:1rem}.rules-panel>summary span{color:var(--muted);font-size:20px}.rules-panel[open]>summary span{transform:rotate(45deg)}.rules-content{color:var(--muted);padding:0 0 24px;font-size:.875rem}.rules-content ol{margin:0 0 16px;padding-left:22px}.rules-content li+li{margin-top:6px}.rules-content>p{margin-top:12px}.friend-code{border-top:1px solid var(--line);margin-top:20px;padding-top:8px}.friend-code summary{color:var(--text)}.friend-code form{margin-top:8px}.friend-code label{margin-bottom:8px;display:block}.friend-code form>div{gap:8px;display:flex}.friend-code input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;padding:10px 12px;font-size:16px}.secondary-button{color:var(--text);white-space:nowrap;background:#fff;border:1px solid #cdd8ea;border-radius:8px;padding:10px 16px}.friend-code form>p{margin-top:8px}dialog{border:1px solid var(--line);width:min(360px,100% - 32px);max-height:calc(100% - 32px);color:var(--text);background:#fff;border-radius:18px;padding:24px;overflow:auto;box-shadow:0 24px 80px #18283f30}dialog::backdrop{background:#13243d66}.dialog-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.dialog-header h2{font-size:1.125rem}.close-button{width:44px;color:var(--muted);background:#f1f4f8;border-radius:50%;flex-shrink:0;font-size:28px;line-height:1}.qr-image{aspect-ratio:1;text-align:center;place-items:center;width:min(100%,240px);margin:20px auto 12px;font-size:.875rem;display:grid}.qr-image img{width:100%;height:auto;display:block}.qr-brand,#qr-description{text-align:center;color:var(--muted);font-size:.875rem}.qr-brand{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}footer{width:min(920px,100% - 48px);padding:24px 0 max(32px,env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;margin:auto;font-size:.875rem;display:flex}footer a{font-weight:600;text-decoration:none}@media (width<=600px){.referral-nav{min-height:68px}.referral-nav,.referral-shell,footer{width:calc(100% - 40px)}.referral-shell{padding-top:32px;padding-bottom:40px}.referral-hero>h1{font-size:2rem}.referral-hero>p{margin-top:12px}.participation-steps{grid-template-columns:1fr;gap:24px;margin:28px 0}.participation-steps li{gap:16px;display:flex}.step-number{flex-shrink:0;margin:0}.participation-steps p{max-width:none}.participation-steps li:not(:last-child):after{width:1px;height:auto;inset:40px auto -16px 16px}.primary-button{width:100%}.share-options{justify-content:space-between;gap:0}.share-options button{padding:10px 6px}.dashboard-section{margin-top:24px;padding-top:24px}.metric-grid{gap:8px}.metric-grid article{padding:16px 10px}.metric-grid strong{font-size:1.5rem}.metric-grid p{gap:3px}.metric-note,.record-note{line-height:1.6}.record-heading{display:none}.record-list article{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.record-list time{grid-area:2/1}.record-status{grid-area:1/2/3}.record-person{font-size:1rem}.referral-records,.rules-panel{margin-top:28px}footer{flex-direction:column;gap:4px}.friend-code form>div{flex-wrap:wrap}.friend-code input{flex:170px}.friend-code button{flex:0 auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.wechat-panel{text-align:left;background:#fff;border:1px solid #cddded;border-radius:14px;max-width:520px;margin:20px auto 0;padding:20px}.wechat-help{color:var(--muted);margin:12px 0 16px;font-size:.875rem}.wechat-panel label{margin-bottom:6px;font-size:.875rem;display:block}.wechat-panel input{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);-webkit-user-select:all;user-select:all;background:#f7f9fc;border-radius:8px;padding:12px;font-size:16px;display:block}.wechat-note{color:var(--muted);overflow-wrap:anywhere;margin:8px 0;font-size:.8125rem}.wechat-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.wechat-actions .primary-button{flex:190px;width:auto}.wechat-actions .secondary-button{flex:140px}.wechat-panel .referral-status{margin-top:12px}.wechat-qr-details{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}.wechat-qr-details summary{justify-content:space-between;gap:8px;font-size:.875rem}.wechat-qr-details .wechat-note{text-align:center}.wechat-qr-details a{text-align:center;margin:12px auto 0;text-decoration:none;display:block}.wechat-panel .qr-image img{image-rendering:pixelated;-webkit-touch-callout:default}@media (width<=360px){.metric-grid{gap:6px}.metric-grid article{padding:16px 8px}.metric-grid strong{font-size:1.25rem}.metric-grid p{gap:2px}.metric-grid span{font-size:.875rem}}
