@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800&display=swap');
:root{--purple:#7447df;--purple-dark:#5b34c4;--ink:#252338;--muted:#9795a6;--line:#efedf4;--surface:#fff;--bg:#f5f4f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans SC',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px}.topbar{height:54px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1100px)/2),16px);position:sticky;top:0;z-index:10;box-shadow:0 2px 12px #2a205008}.brand{font-weight:800;color:#6d9ee8;font-size:18px;letter-spacing:1px}.icon-btn{border:0;background:none;color:#7c7b87;font-size:20px;width:34px;height:38px;cursor:pointer}.page{max-width:1080px;margin:0 auto;padding:15px 16px 80px}.hero{height:clamp(180px,35vw,310px);border-radius:12px;overflow:hidden;position:relative;color:#fff;background:linear-gradient(115deg,#19283c 0%,#38536b 38%,#9e928e 62%,#263447 100%);box-shadow:0 8px 24px #24203a18}.hero:before,.hero:after{content:"";position:absolute;inset:0}.hero:before{background:radial-gradient(ellipse at 28% 38%,#d2c7b5a6 0 9%,transparent 10%),radial-gradient(ellipse at 70% 38%,#1c2028d9 0 12%,transparent 13%),linear-gradient(180deg,#22324b22,#14203399)}.hero:after{background:linear-gradient(90deg,#182239aa,transparent 35%,transparent 68%,#1c263455)}.hero-content{position:absolute;z-index:1;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;text-shadow:0 2px 12px #0009}.hero-kicker{font-size:11px;letter-spacing:3px;opacity:.82}.hero h1{font-size:clamp(22px,5vw,38px);letter-spacing:5px;margin:10px 0 3px;font-weight:600}.hero p{font-size:12px;letter-spacing:4px;margin:0;color:#e7e5eb}.hero-arrow{position:absolute;z-index:2;top:48%;border:0;background:#ffffff22;color:white;font-size:28px;border-radius:50%;width:38px;height:38px;cursor:pointer}.hero-arrow:hover{background:#ffffff48}.prev{left:15px}.next{right:15px}.dots{position:absolute;bottom:13px;z-index:2;left:50%;transform:translateX(-50%);display:flex;gap:6px}.dot{border:0;padding:0;width:18px;height:3px;border-radius:4px;background:#ffffff70;cursor:pointer}.dot.active{width:27px;background:#fff}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0 20px}.quick-links a{height:44px;background:linear-gradient(115deg,#7950e5,#6038d1);border-radius:7px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;box-shadow:0 4px 8px #6944d322;transition:transform .18s,filter .18s}.quick-links a:hover{transform:translateY(-2px);filter:brightness(1.06)}.hot-section{background:#fff;border-radius:12px;padding:15px 16px 13px;margin-bottom:14px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:15px;font-weight:700}.section-title span{display:flex;align-items:center;gap:8px}.section-title i{height:17px;width:4px;background:var(--purple);border-radius:4px}.section-title>a{font-size:12px;color:#aaa}.hot-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}.hot-card{background:#faf9fd;border:1px solid #f3f0fa;border-radius:9px;min-height:109px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;transition:.2s}.hot-card:hover{transform:translateY(-3px);box-shadow:0 7px 18px #43307514}.hot-logo{height:45px;width:45px;border-radius:13px;display:grid;place-items:center;font-size:20px;color:#fff;font-weight:800;background:linear-gradient(140deg,#201842,#d8b84e);box-shadow:0 4px 10px #3322652c}.hot-card:nth-child(3n+2) .hot-logo{background:linear-gradient(140deg,#155480,#9c58df)}.hot-card:nth-child(3n) .hot-logo{background:linear-gradient(140deg,#561c8c,#f6ac24)}.hot-name{font-size:11px;color:#6640c8;font-weight:600}.hot-bonus{font-size:11px;color:#a6a0b6}.notice{height:42px;background:#fff;border-radius:8px;display:flex;align-items:center;gap:10px;padding:0 12px;margin-bottom:11px;overflow:hidden}.notice-icon{color:#f2a647}.notice-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px;color:#777386;flex:1}.notice button{border:0;background:none;font-size:20px;color:#aaa;cursor:pointer}.promo-row{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:14px}.promo-row article{background:#fff;border-radius:9px;min-height:68px;padding:11px;display:flex;align-items:center;gap:9px}.promo-icon{height:35px;width:35px;flex:none;border-radius:10px;background:#f1edff;display:grid;place-items:center}.promo-row article div{min-width:0;display:flex;flex-direction:column;gap:4px;flex:1}.promo-row b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-row small{font-size:10px;color:#aaa}.promo-row article>a{font-size:10px;white-space:nowrap;color:var(--purple)}.feed{background:#fff;border-radius:11px;overflow:hidden}.feed-tabs{display:flex;align-items:center;padding:0 14px;border-bottom:1px solid var(--line);gap:21px;height:49px}.feed-tabs button{height:100%;position:relative;border:0;background:none;color:#858191;font:inherit;font-size:13px;cursor:pointer}.feed-tabs button.selected{color:var(--purple);font-weight:700}.feed-tabs button.selected:after{content:"";height:2px;position:absolute;bottom:0;left:0;right:0;background:var(--purple);border-radius:3px}.feed-tabs .checkin{margin-left:auto;color:#6440ca}.feed-item{padding:13px 15px;border-bottom:1px solid #f2f0f5;display:grid;grid-template-columns:38px 1fr;gap:10px;transition:background .15s}.feed-item:hover{background:#fcfbff}.feed-avatar{height:36px;width:36px;border-radius:50%;background:linear-gradient(145deg,#d9c7ff,#8f73db);display:grid;place-items:center;color:#fff;font-size:13px;font-weight:700}.feed-main{min-width:0}.feed-head{display:flex;align-items:center;gap:7px;margin-bottom:5px}.feed-head strong{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{font-size:9px;color:#f19b54;background:#fff4e8;border-radius:3px;padding:2px 5px;flex:none}.badge.hot{color:#ea6776;background:#fff0f1}.feed-meta{display:flex;align-items:center;gap:8px;color:#a09dab;font-size:10px}.feed-meta .category{color:#7b60cf;background:#f4f0ff;border-radius:3px;padding:2px 5px}.feed-meta .author{margin-left:auto}.feed-bottom{display:flex;justify-content:space-between;margin-top:7px;color:#aaa;font-size:10px}.load-more{display:block;margin:14px auto 17px;border:1px solid #e7e1f7;border-radius:16px;padding:6px 22px;color:#7958cc;background:#fff;cursor:pointer}footer{text-align:center;color:#aaa;font-size:11px;padding:23px 0 0;line-height:2}footer b{color:#8062cd;font-weight:600}.bottom-nav{display:none}.side-menu{position:fixed;z-index:21;top:0;bottom:0;left:0;width:280px;background:#fff;padding:23px 18px;transform:translateX(-102%);transition:transform .25s;box-shadow:8px 0 28px #1e163022}.side-menu.open{transform:translateX(0)}.scrim{position:fixed;inset:0;background:#1e183966;z-index:20;opacity:0;pointer-events:none;transition:.2s}.scrim.open{opacity:1;pointer-events:auto}.welcome{display:flex;gap:11px;align-items:center;padding:12px 0 20px;border-bottom:1px solid var(--line)}.avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;color:white;background:linear-gradient(135deg,#a891ee,#6440c8);font-weight:700}.welcome b,.welcome small{display:block}.welcome b{font-size:13px}.welcome small{margin-top:4px;color:#a6a2b1;font-size:10px}.side-links{display:grid;padding:12px 0;border-bottom:1px solid var(--line)}.side-links a{padding:11px 8px;border-radius:7px;color:#5b5868}.side-links a:hover{background:#f5f1ff;color:var(--purple)}.tag-cloud{display:flex;flex-wrap:wrap;gap:7px;padding-top:16px}.tag-cloud a{background:#f5f2fc;padding:6px 10px;border-radius:16px;color:#7659c2;font-size:11px;cursor:pointer}.toast{position:fixed;left:50%;bottom:85px;transform:translate(-50%,15px);background:#292536;color:#fff;padding:9px 16px;border-radius:20px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:900px){.topbar{padding-left:max(calc((100vw - 1080px)/2),20px);padding-right:max(calc((100vw - 1080px)/2),20px)}.page{padding-top:21px}.quick-links{gap:12px}.quick-links a{height:48px}.hot-grid{grid-template-columns:repeat(9,1fr)}.feed-list{display:grid;grid-template-columns:1fr 1fr}.feed-item:nth-child(odd){border-right:1px solid #f2f0f5}}
.confirm-field[hidden],.notice[hidden]{display:none!important}
.detail-view[hidden]{display:none!important}.detail-view{min-height:55vh;background:#fff;border-radius:12px;padding:clamp(18px,4vw,32px);margin-bottom:18px}.route-page .page> :not(#detail-view){display:none!important}.detail-breadcrumb{font-size:11px;color:#a09dab;margin:0 0 16px}.detail-breadcrumb a{color:#7554cc}.detail-view h1{font-size:24px;margin:0 0 8px}.detail-intro{font-size:13px;color:#858193;line-height:1.8;margin:0 0 21px}.detail-card{border:1px solid #efedf4;background:#fcfbff;border-radius:10px;padding:17px;margin:15px 0}.detail-card h2{font-size:14px;margin:0 0 8px}.detail-card p{color:#777386;font-size:12px;line-height:1.8;margin:0}.detail-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px;margin-top:14px}.detail-links a{border:1px solid #efedf4;border-radius:8px;padding:11px;color:#6c4bc2;background:#fff;font-size:12px}.detail-posts .feed-item{border:1px solid #f0eef4;border-radius:8px;margin-bottom:8px}.feed-head a{color:inherit}.post-content{white-space:pre-wrap;color:#5e5a6b;font-size:13px;line-height:1.9}.detail-action{display:inline-flex;padding:9px 15px;border-radius:7px;background:#754bd8;color:#fff;font-size:12px;margin-top:12px}
.submission-form{max-width:680px;display:grid;gap:14px}.submission-form label{display:block;color:#656172;font-size:12px;font-weight:600}.submission-form input,.submission-form select,.submission-form textarea{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #e9e6f0;border-radius:8px;background:#fff;color:#393548;outline:0;font:inherit;font-size:13px}.submission-form input:focus,.submission-form select:focus,.submission-form textarea:focus{border-color:#9678e8;box-shadow:0 0 0 3px #805ce51c}.submission-form textarea{min-height:190px;resize:vertical;line-height:1.8}.submission-form .detail-action{border:0;cursor:pointer;width:max-content}.submission-form .detail-action:disabled{opacity:.6}.form-hint,.submission-error{font-size:11px;color:#8b8797;margin:0}.submission-error{color:#dc5969;min-height:15px}.submission-status{display:inline-block;padding:4px 8px;border-radius:12px;background:#fff6df;color:#b47d21;font-size:10px;white-space:nowrap}.status-approved{background:#e8f8ef;color:#298453}.status-rejected{background:#fff0f0;color:#c34e59}.my-submissions .detail-card h2{display:flex;align-items:center;gap:10px}
.submission-form input[type="file"]{padding:9px;background:#fcfbff}.submission-form label .form-hint{display:block;margin-top:6px}.image-preview{margin-top:-6px}.image-preview img,.post-image{display:block;max-width:min(100%,620px);max-height:460px;object-fit:contain;border-radius:9px;border:1px solid #efedf4}.post-image{margin-top:14px}
.hot-logo img{width:100%;height:100%;display:block;object-fit:contain;border-radius:inherit;background:#fff}.hot-logo.has-image{background:#fff;border:1px solid #efedf4;overflow:hidden}
@media(max-width:600px){body{font-size:13px}.topbar{height:48px;padding:0 11px}.brand{font-size:16px}.page{padding:10px 8px 78px}.hero{height:190px;border-radius:8px}.hero-arrow{width:32px;height:32px;font-size:23px}.quick-links{gap:5px;margin:10px 0 13px}.quick-links a{height:32px;border-radius:4px;font-size:13px}.hot-section{padding:10px 8px 8px;border-radius:8px;margin-bottom:10px}.section-title{margin-bottom:8px;font-size:13px}.hot-grid{grid-template-columns:repeat(4,1fr);gap:5px}.hot-card{min-height:91px;border:0;background:transparent;gap:3px}.hot-logo{width:40px;height:40px;border-radius:12px;font-size:18px}.hot-name,.hot-bonus{font-size:10px}.notice{height:36px;margin-bottom:8px;padding:0 9px}.promo-row{grid-template-columns:1fr;gap:7px;margin-bottom:10px}.promo-row article{min-height:59px;padding:8px}.feed-tabs{height:43px;padding:0 10px;gap:17px}.feed-tabs button{font-size:12px}.feed-item{padding:11px 10px;grid-template-columns:34px 1fr;gap:8px}.feed-avatar{height:32px;width:32px}.feed-head strong{font-size:12px}.bottom-nav{height:50px;position:fixed;z-index:12;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #eeecf3;display:flex;justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -3px 15px #28203c0a}.bottom-nav a{height:100%;min-width:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:10px;color:#9693a1}.bottom-nav a span{font-size:19px;line-height:20px}.bottom-nav a.active{color:#5599e9}.load-more{margin-bottom:14px}footer{padding-top:17px}}
.bottom-nav{height:58px;position:fixed;z-index:12;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #eeecf3;display:flex;justify-content:center;align-items:center;gap:clamp(26px,10vw,120px);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -3px 15px #28203c0a}.bottom-nav a{height:100%;min-width:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:11px;color:#9693a1}.bottom-nav a span{font-size:20px;line-height:22px}.bottom-nav a.active{color:#5599e9}.page{padding-bottom:88px}
.auth-overlay{position:fixed;z-index:50;inset:0;background:#211a376e;display:none;align-items:center;justify-content:center;padding:18px}.auth-overlay.open{display:flex}.auth-dialog{position:relative;width:min(100%,410px);background:#fff;border-radius:17px;padding:28px 27px 21px;text-align:center;box-shadow:0 22px 70px #170f2c38;animation:auth-in .2s ease-out}.auth-close{position:absolute;right:13px;top:10px;border:0;background:transparent;color:#a3a0ad;font-size:25px;cursor:pointer}.auth-mark{height:48px;width:48px;border-radius:15px;margin:0 auto 12px;display:grid;place-items:center;background:linear-gradient(135deg,#9472ef,#6340ce);color:#fff;font-size:21px;font-weight:700;box-shadow:0 7px 15px #6844d333}.auth-dialog h2{font-size:20px;margin:0;color:#27243a}.auth-caption{font-size:12px;color:#aaa6b5;margin:7px 0 22px}.auth-dialog form{text-align:left}.auth-dialog label{display:block;margin:0 0 13px;font-size:12px;color:#5e5a6d;font-weight:600}.auth-dialog input{display:block;width:100%;height:43px;margin-top:6px;border:1px solid #e9e6f0;border-radius:8px;padding:0 12px;outline:0;font:inherit;font-size:13px;transition:.15s}.auth-dialog input:focus{border-color:#9678e8;box-shadow:0 0 0 3px #805ce51c}.auth-error{min-height:17px;color:#e05f70;font-size:11px;margin:2px 0 8px}.auth-submit{width:100%;height:43px;border:0;border-radius:8px;background:linear-gradient(110deg,#8159e4,#633bd0);color:white;font:inherit;font-weight:700;cursor:pointer}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-switch{font-size:12px;color:#9692a1;margin:17px 0 8px}.auth-switch button{border:0;background:none;color:#704bd2;font:inherit;font-weight:700;cursor:pointer}.auth-local-note{font-size:10px;color:#b5b2bd}@keyframes auth-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
