:root{--bg:#090b0e;--bg2:#0e1116;--card:#141820;--card2:#1b202a;--line:#2a303b;--text:#f7f8f4;--muted:#9da6b5;--green:#b6ff78;--yellow:#ffd467;--pink:#ff769d;--red:#ff7070;--shadow:0 20px 60px rgba(0,0,0,.35)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 70% -10%,#1a221f 0,transparent 30%),var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(1180px,calc(100% - 32px));margin:auto}.top{position:sticky;top:0;z-index:50;background:rgba(9,11,14,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.topin{height:68px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:950;letter-spacing:.02em;cursor:pointer}.brandMark{width:34px;height:34px;border-radius:12px;background:var(--green);display:grid;place-items:center;color:#121712;font-size:20px;box-shadow:0 0 30px rgba(182,255,120,.18)}.nav{display:flex;gap:20px;color:#d4d8de;font-size:14px}.nav a:hover{color:var(--green)}.spacer{flex:1}.btn,.pill{border:1px solid var(--line);background:var(--card2);color:#fff;border-radius:999px;padding:10px 16px;cursor:pointer;transition:.18s}.btn:hover{transform:translateY(-1px);border-color:#495162}.btn.primary{background:var(--green);color:#0c1309;border-color:var(--green);font-weight:850}.btn.danger{background:#3a1b20;border-color:#6b2933;color:#ffb4bf}.btn.flat{background:transparent}.btn.small{padding:7px 11px;font-size:13px}.hero{position:relative;min-height:520px;margin-top:24px;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow);background:#111}.heroImg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.58}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,10,.98) 0%,rgba(5,7,10,.72) 45%,rgba(5,7,10,.12) 100%),linear-gradient(0deg,rgba(5,7,10,.35),transparent 50%)}.heroContent{position:relative;z-index:2;max-width:650px;padding:78px 58px}.kicker{font-size:13px;color:var(--green);font-weight:850;letter-spacing:.15em}.hero h1{font-size:58px;line-height:1.05;margin:10px 0 12px;letter-spacing:-.04em}.heroSub{font-size:18px;color:#f5e9b5;margin-bottom:12px}.hero p{color:#d2d7df;line-height:1.85;font-size:16px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:17px 0 25px}.chip{padding:7px 11px;border-radius:999px;font-size:13px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.11)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.section{padding:38px 0 8px}.sectionHead{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:17px}.sectionHead h2{font-size:26px;margin:0}.muted,.small{color:var(--muted)}.small{font-size:13px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.workCard{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;cursor:pointer;transition:.22s}.workCard:hover{transform:translateY(-4px);border-color:#46505e;box-shadow:0 14px 40px rgba(0,0,0,.25)}.workCard img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.workPad{padding:15px}.workPad h3{margin:0 0 7px}.rankList{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rankItem{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);padding:15px;border-radius:16px;cursor:pointer}.rankNo{font-weight:950;font-size:28px;color:var(--yellow);width:36px}.rankItem .grow{flex:1}.heart{color:var(--pink)}.view{display:none}.view.active{display:block}.back{display:inline-flex;gap:8px;color:var(--muted);margin:26px 0 15px;cursor:pointer}.workHero{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:28px}.workHero img{width:100%;height:100%;min-height:320px;object-fit:cover;border-radius:18px}.workHero h1{font-size:42px;margin:6px 0}.chapterWrap{margin-top:22px;background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}.seasonHead{padding:18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.chapter{display:flex;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line);cursor:pointer}.chapter:last-child{border-bottom:0}.chapter:hover{background:#1a1f28}.chapterTitle{flex:1}.tagFree{color:var(--green)}.tagLock{color:var(--yellow)}.tagSoon{color:#77808f}.reader{width:min(800px,100%);margin:auto}.readerHead{text-align:center;padding:30px 0 18px}.readerHead h1{font-size:34px;margin:8px 0}.readerImg{width:100%;max-height:500px;object-fit:cover;border-radius:20px;margin-bottom:28px}.prose{font-family:"Noto Serif TC","PMingLiU",serif;font-size:20px;line-height:2.05;letter-spacing:.035em;color:#f0eee8;position:relative}.prose p{margin:0 0 1.35em}.readerLocked{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;margin:18px 0 30px;text-align:center}.previewFade{position:relative;max-height:260px;overflow:hidden;text-align:left}.previewFade:after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,var(--card))}.watermark{position:fixed;pointer-events:none;inset:auto 16px 16px auto;color:rgba(255,255,255,.08);font-size:11px;z-index:4}.readerNav{display:flex;justify-content:space-between;padding:25px 0 50px}.accountGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:22px}.pointsBig{font-size:46px;color:var(--green);font-weight:950}.progressItem{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer}.progressItem:last-child{border-bottom:0}.footer{margin-top:50px;border-top:1px solid var(--line);padding:34px 0 46px;color:var(--muted);font-size:13px}.footerIn{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:none;align-items:center;justify-content:center;z-index:100;padding:18px}.modal.show{display:flex}.modalBox{width:min(460px,100%);background:#151922;border:1px solid #303744;border-radius:22px;padding:24px;box-shadow:var(--shadow)}.modalBox h2{margin:0 0 6px}.tabs{display:flex;gap:8px;margin:16px 0}.tab{flex:1;text-align:center;padding:9px;border-radius:10px;border:1px solid var(--line);cursor:pointer;color:var(--muted)}.tab.active{background:var(--card2);color:#fff}.field{width:100%;padding:12px 13px;border-radius:12px;border:1px solid var(--line);background:#0f1218;color:#fff;margin:7px 0;outline:none}.field:focus{border-color:#647081}.notice{padding:12px 14px;border-radius:12px;background:#212717;border:1px solid #3b4e27;color:#dfffc3;font-size:13px;margin:10px 0}.error{background:#2c171a;border-color:#67333b;color:#ffc1ca}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#fff;color:#111;border-radius:999px;padding:11px 16px;font-weight:800;display:none;z-index:140;box-shadow:var(--shadow)}.toast.show{display:block}.empty{text-align:center;color:var(--muted);padding:26px}.divider{height:1px;background:var(--line);margin:16px 0}.legal{max-width:800px;margin:40px auto;line-height:1.9}.legal h1{font-size:38px}.legal h2{margin-top:30px}.noCopy{-webkit-user-select:none;user-select:none}.subscriptionBadge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#25321f;color:#cfffaa;font-size:12px}.menuBtn{display:none}.mobileMenu{display:none}.skeleton{background:linear-gradient(90deg,#151922,#1d222b,#151922);background-size:200% 100%;animation:sk 1.3s infinite}@keyframes sk{to{background-position:-200% 0}}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.workHero{grid-template-columns:1fr}.rankList{grid-template-columns:1fr}.heroContent{padding:58px 32px}.hero h1{font-size:46px}.nav{display:none}.menuBtn{display:block}.accountGrid{grid-template-columns:1fr}}@media(max-width:560px){.wrap{width:min(100% - 22px,1180px)}.topin{height:62px;gap:9px}.brand{font-size:21px}.brandMark{width:30px;height:30px}.pill{padding:8px 10px;font-size:12px}.hero{min-height:540px;margin-top:12px;border-radius:22px}.heroContent{padding:48px 22px}.hero h1{font-size:42px}.cards{grid-template-columns:1fr}.workHero{padding:17px}.workHero h1{font-size:34px}.chapter{padding:14px 12px}.readerHead h1{font-size:28px}.prose{font-size:18px;line-height:2}.btn{padding:9px 13px}.mobileMenu.show{display:block;position:fixed;z-index:70;top:62px;left:0;right:0;background:#0d1015;border-bottom:1px solid var(--line);padding:14px 20px}.mobileMenu a{display:block;padding:12px 0}}
.grow{flex:1}
.navButton{border:0;background:transparent;color:#d4d8de;padding:0;cursor:pointer}.navButton:hover{color:var(--green)}
.benefitList{padding-left:20px;line-height:1.9;color:#d7dce4}.benefitList li::marker{color:var(--green)}
.summaryRow{display:flex;gap:8px;flex-wrap:wrap}.statusTag{display:inline-flex;padding:5px 9px;border-radius:999px;background:#252c35;color:#dce2ea;font-size:12px;white-space:nowrap}.referralList{margin-top:16px}
.modalBox{max-height:calc(100vh - 36px);overflow:auto}

/* BALAFAN V1.2 reading experience */
.reader{width:min(860px,100%);margin:auto}.readerHead{padding:46px 10px 28px}.chapterNo{margin-top:14px;color:#788393;font-size:12px;letter-spacing:.22em;font-weight:800}.readerHead h1{font-family:"Noto Serif TC","PMingLiU",serif;font-size:40px;line-height:1.3;margin:8px 0 12px;letter-spacing:.02em}.chapterDeck{max-width:660px;margin:0 auto;color:#c7cdd5;font-family:"Noto Serif TC","PMingLiU",serif;font-size:16px;line-height:1.9}.readerMeta{margin-top:16px;color:#7f8997;font-size:12px;display:flex;gap:7px;justify-content:center}.readerImg{max-height:420px;margin-bottom:26px;opacity:.94}.readerArticle{background:linear-gradient(180deg,#11151b,#0d1015);border:1px solid #242b35;border-radius:24px;padding:46px 58px;box-shadow:0 22px 70px rgba(0,0,0,.24)}.prose{font-family:"Noto Serif TC","PMingLiU","Songti TC",serif;font-size:20px;line-height:2.12;letter-spacing:.045em;color:#eeeae2}.prose p{margin:0 0 1.55em;text-align:justify;text-justify:inter-ideograph}.prose p:last-child{margin-bottom:0}.proseEmphasis{text-align:center!important;color:#dfffbe!important;font-weight:800;letter-spacing:.08em!important;margin:2.2em 0!important}.sceneBreak{height:74px;display:grid;place-items:center;color:#55606f;font-size:11px;letter-spacing:.3em}.readerNav{padding:30px 0 70px}.readerLocked{margin-top:8px}.previewFade .prose{font-size:18px}@media(max-width:560px){.reader{width:100%}.readerHead{padding:30px 4px 20px}.readerHead h1{font-size:31px}.chapterDeck{font-size:15px;line-height:1.8}.readerImg{border-radius:16px;margin-bottom:16px}.readerArticle{padding:29px 21px;border-radius:18px}.prose{font-size:18.5px;line-height:2.05;letter-spacing:.035em}.prose p{margin-bottom:1.45em;text-align:left}.sceneBreak{height:58px}}

/* BALAFAN V1.5 brand */
.brand{display:flex;align-items:center;cursor:pointer;flex:0 0 auto}
.brandLogo{display:block;width:auto;height:50px;max-width:180px;object-fit:contain;transform-origin:42% 60%;animation:balafanFloat 3.8s ease-in-out infinite;filter:drop-shadow(0 5px 14px rgba(165,255,70,.12))}
@keyframes balafanFloat{0%,100%{transform:translateY(0) rotate(0deg)}45%{transform:translateY(-2px) rotate(-.45deg)}55%{transform:translateY(-2px) rotate(.45deg)}}
@media(prefers-reduced-motion:reduce){.brandLogo{animation:none}}
@media(max-width:560px){.brandLogo{height:42px;max-width:146px}.topin{gap:8px}.mobileMenu .navButton{display:block;padding:12px 0;width:100%;text-align:left;font-size:16px}}

/* BALAFAN V99 discovery and ranking */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--green);outline-offset:3px}
.genreNav{height:48px;display:flex;align-items:center;gap:8px;position:relative}
.genreDesktop{display:flex;gap:7px;min-width:0}.genreMobileScroll{display:none}.genreMoreWrap{position:relative;margin-left:auto}
.genreChip{appearance:none;border:1px solid transparent;background:transparent;color:#b9c0ca;border-radius:999px;padding:7px 11px;white-space:nowrap;cursor:pointer;font-size:13px;line-height:1.2}
.genreChip:hover{color:#fff;background:#1a1f27}.genreChip.active{background:#242d20;border-color:#405433;color:#d8ffb8}
.genreMoreMenu{position:absolute;right:0;top:calc(100% + 8px);width:230px;padding:8px;background:#11151c;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;z-index:80}
.genreMoreMenu .genreChip{text-align:left;border-radius:9px}.genreMoreMenu[hidden]{display:none}
.coverMedia.hero{position:absolute;inset:0}.coverMedia.hero img,.coverMedia.hero .coverFallback{width:100%;height:100%;object-fit:cover;opacity:.58}
.coverMedia{position:relative;overflow:hidden;background:#11161c}.coverMedia.card,.coverMedia.compact{aspect-ratio:16/10}.coverMedia img{display:block;width:100%;height:100%;object-fit:cover}
.coverFallback{width:100%;height:100%;min-height:130px;display:grid;place-items:center;background:linear-gradient(145deg,#171d23,#0f1318);color:#73808d;letter-spacing:.14em;font-size:12px;font-weight:850}
.hero .coverFallback{min-height:520px}.heroBadge{display:inline-flex;padding:6px 10px;margin-bottom:13px;border-radius:999px;background:rgba(182,255,120,.14);border:1px solid rgba(182,255,120,.35);color:#ddffc3;font-size:12px;font-weight:850;letter-spacing:.08em}
.heroHook{max-width:600px;font-size:18px!important;color:#d9dee5!important}.discoveryHead{align-items:center}
.rankingTabs{display:inline-flex;gap:4px;padding:4px;background:#11151b;border:1px solid var(--line);border-radius:999px}
.rankingTabs[hidden]{display:none}
.rankingTabs button{border:0;background:transparent;color:var(--muted);border-radius:999px;padding:8px 13px;cursor:pointer;white-space:nowrap}
.rankingTabs button[aria-selected="true"]{background:var(--card2);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.topThree{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);grid-template-rows:1fr 1fr;gap:16px}
.topThree.single{display:block}.topThree.single>.workCard{max-width:720px}
.topThree>.workCard:first-child{grid-row:1/3}.topThree>.workCard:first-child .coverMedia{aspect-ratio:16/11}.topThree>.workCard:not(:first-child){display:grid;grid-template-columns:minmax(130px,.82fr) minmax(0,1.18fr)}
.topThree>.workCard:not(:first-child) .coverMedia{aspect-ratio:auto;min-height:170px}.rankBadge{color:var(--yellow);font-weight:950;font-size:20px;margin-bottom:5px}
.genreLabel{color:var(--green);font-weight:800}.workPad h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}
.workHook{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.55;min-height:3.1em}.updatedLabel{margin-top:9px;color:#7f8997}
.engagement{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.engagement span:first-child{color:var(--pink)}
.discoveryGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.recentGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.discoveryEmpty{grid-column:1/-1;background:var(--card);border:1px dashed var(--line);border-radius:16px}
.genrePageHead{max-width:720px;padding:34px 0 4px}.genrePageHead h1{font-size:46px;margin:7px 0 10px}.genrePageHead p{color:#c5cbd4;line-height:1.8}
.genreCompactList{display:grid;gap:9px;margin-top:20px}.compactWork{display:grid;grid-template-columns:150px minmax(0,1fr);background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer}.compactWork .coverMedia{min-height:120px}.compactWork .workPad{position:relative}.compactWork .rankBadge{position:absolute;right:16px;top:12px}.compactWork h3{padding-right:45px}.notFound{min-height:440px;display:grid;align-content:center;justify-items:start}.notFound h1{margin:8px 0}
.workHero>.coverMedia.detail{min-height:320px;border-radius:18px}.coverMedia.reader{width:100%;height:min(420px,52vw);border-radius:20px;margin-bottom:26px}.coverMedia.reader .coverFallback{min-height:100%}
@media(max-width:1024px){.recentGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.topThree{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}
@media(max-width:900px){.genreDesktop,.genreMoreWrap{display:none}.genreMobileScroll{display:flex;width:100%;max-width:100%;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;padding:2px 1px 8px}.genreMobileScroll::-webkit-scrollbar{display:none}.genreNav{height:48px;width:100%;padding-inline:16px}.mobileMenu.show{display:block;position:fixed;z-index:70;top:116px;left:0;right:0;background:#0d1015;border-bottom:1px solid var(--line);padding:14px 20px}.mobileMenu a{display:block;padding:12px 0}.topThree{grid-template-columns:1fr;grid-template-rows:auto}.topThree>.workCard:first-child{grid-row:auto}.topThree>.workCard:not(:first-child){grid-template-columns:minmax(150px,.72fr) minmax(0,1.28fr)}.discoveryGrid,.recentGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.genreNav{padding-inline:11px}.mobileMenu.show{top:110px}.hero .coverFallback{min-height:540px}.discoveryHead{align-items:flex-start;flex-direction:column}.rankingTabs{width:100%}.rankingTabs button{flex:1}.topThree{gap:12px}.topThree>.workCard:not(:first-child){display:block}.topThree>.workCard:not(:first-child) .coverMedia{aspect-ratio:16/10;min-height:0}.discoveryGrid,.recentGrid{grid-template-columns:1fr}.genrePageHead{padding-top:20px}.genrePageHead h1{font-size:36px}.compactWork{grid-template-columns:110px minmax(0,1fr)}.compactWork .coverMedia{min-height:120px}.compactWork .workHook{display:none}.coverMedia.reader{height:58vw;border-radius:16px;margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.workCard,.btn{transition:none}.workCard:hover,.btn:hover{transform:none}}

/* Policy consent and checkout disclosure */
.consentGroup{min-width:0;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:14px}.consentGroup legend{padding:0 7px;color:#fff;font-weight:850}.consentRow{display:flex;align-items:flex-start;gap:10px;padding:10px 0;color:#dce1e8;font-size:14px;line-height:1.6;cursor:pointer}.consentRow+.consentRow{border-top:1px solid rgba(255,255,255,.07)}.consentRow input{flex:0 0 auto;width:19px;height:19px;margin:2px 0 0;accent-color:var(--green)}.consentRow input:disabled{cursor:not-allowed}.consentRow span{min-width:0}.consentRow a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;color:#dcffc1}.consentRow a:hover{color:var(--green)}.consentRow small{display:block;margin-top:3px;color:var(--muted)}.registrationConsent{margin:8px 0 0;padding:10px;border:1px solid var(--line);border-radius:12px}.policyHint{margin:8px 2px 10px;line-height:1.6}.btn:disabled{cursor:not-allowed;opacity:.52;transform:none}
#subscriptionModal .modalBox{width:min(760px,calc(100vw - 28px));padding:24px 26px}
#subscriptionModal #subscriptionBody{min-width:0}
.offerList{display:grid;gap:14px;margin:18px 0}
.offerCard{width:100%;min-width:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:24px;text-align:left;padding:18px 20px;border:1px solid #b98b20;border-radius:16px;background:linear-gradient(135deg,#201b0f 0%,#171a20 70%);color:#fff;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,222,125,.06)}
.offerCard:hover{border-color:#e0ad37;background:linear-gradient(135deg,#241e10 0%,#191d24 70%)}
.offerCardBody{display:grid;gap:9px;min-width:0}
.offerCardBody>b{font-size:18px;line-height:1.35;color:#fff2c2}
.offerCardSummary{color:#f3f5f7!important;font-weight:780!important;line-height:1.45;max-width:42ch}
.offerCard small{color:var(--muted);font-weight:400;line-height:1.45}
.offerCard strong{color:var(--green);white-space:nowrap}
.offerHighlights{display:flex!important;flex-wrap:wrap;gap:7px!important;margin-top:1px;color:#dce4da!important}
.offerHighlights>span{display:inline-flex!important;align-items:center;min-height:27px;padding:4px 9px;border-radius:999px;border:1px solid #45505d;background:#121820;color:#e1e6eb;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}
.offerHighlights .offerKeyBadge{font-weight:900}
.offerHighlights .offerKeyBadgePoints{background:#15241c;color:#c9ffb1;border-color:#6b9b58}
.offerHighlights .offerKeyBadgePermanent{background:#173015;color:#cfff9f;border-color:#70ad48}
.offerHighlights .offerKeyBadgeRecurring{background:#3a290c;color:#ffd86f;border-color:#a67b27}
.offerPriceStack{display:flex!important;width:220px;max-width:100%;min-width:0;flex-direction:column;align-items:flex-end;justify-content:center;gap:7px;text-align:right;justify-self:end}
.offerReferencePrice{color:#aab2bd;font-size:13px;line-height:1.2;white-space:nowrap}
.offerReferencePrice del{text-decoration-thickness:2px;text-decoration-color:#e36d78}
.offerCurrentPrice{color:var(--green)!important;font-size:23px;line-height:1.05;letter-spacing:.01em;white-space:nowrap}
.offerSaleBadge{display:inline-flex!important;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:#4d3510;color:#ffd66b;font-size:12px;font-weight:900;border:1px solid #9a6a18;white-space:nowrap}
.offerPromoDeadline{display:grid!important;gap:2px;width:100%;max-width:220px;color:#ffd66b;font-size:12px;font-weight:750;line-height:1.35;text-align:right;overflow-wrap:anywhere}
.offerPromoDeadline>b{color:#fff1bd;font-size:11px;letter-spacing:.05em}
.offerPromoDeadline>span{display:block!important;white-space:normal}
.offerFacts{display:grid;gap:0;margin:15px 0;border:1px solid var(--line);border-radius:13px;overflow:hidden}.offerFacts>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:11px 13px}.offerFacts>div+div{border-top:1px solid var(--line)}.offerFacts dt{color:var(--muted)}.offerFacts dd{margin:0;line-height:1.55}.quantityField{display:grid;gap:5px;margin:14px 0;font-weight:800}.quantityField .field{margin:0}.quantityField small{color:var(--muted);font-weight:400}.seasonActions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.seasonActions .btn{white-space:nowrap}
@media(max-width:760px){
  #subscriptionModal .modalBox{width:min(100%,calc(100vw - 18px));padding:20px 16px}
  .offerCard{grid-template-columns:1fr;align-items:flex-start;gap:14px;padding:17px}
  .offerPriceStack{width:100%;align-items:flex-start;text-align:left;justify-self:stretch;padding-top:2px}
  .offerPromoDeadline{max-width:none;text-align:left}
  .offerCurrentPrice{font-size:22px}
  .offerFacts>div{grid-template-columns:1fr;gap:4px}
  .seasonHead{align-items:flex-start}
  .seasonActions{align-items:flex-end;flex-direction:column}
}
.offerRewardSummary{display:grid;gap:3px;margin:12px 0;padding:11px 12px;border:1px solid #cda34b99;border-radius:11px;background:radial-gradient(circle at 88% 15%,#ffe79b26,transparent 42%),linear-gradient(135deg,#28200f,#121416);box-shadow:inset 0 0 20px #f8ce5710,0 0 12px #f0bd3b14}.offerRewardSummary>span{color:#ffe3a0;font-size:13px;font-weight:800}.offerRewardSummary>strong{color:#ffdc63;font-size:22px;line-height:1.05;text-shadow:0 0 10px #ffd95c55}.offerRewardSummary>small{color:#d5d8cf;line-height:1.45}.offerRewardCompact{margin:6px 0 0;padding:7px 9px;display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:baseline;column-gap:8px;background:#261d0b;border-color:#cda34b88}.offerRewardCompact>span:first-child{white-space:nowrap;line-height:1.2}.offerRewardCompact>strong{font-size:20px}.offerRewardCompact>small{grid-column:1/-1;font-size:11px}.offerAdditionalRewards{margin-top:6px;border-top:1px solid #cda34b55;padding-top:7px;color:#d8ddd3;font-size:12px;line-height:1.55}.offerAdditionalRewards summary{cursor:pointer;color:#ffe3a0;font-weight:800}.offerAdditionalRewards summary span{margin-left:6px;color:#b8c2b8;font-weight:600}.offerAdditionalRewards p{margin:7px 0 0}.offerVoucherRewards{display:grid;gap:6px;margin-top:8px}.offerVoucherReward{display:flex;align-items:center;gap:7px;padding:6px 7px;border:1px solid #cda34b55;border-radius:8px;background:#19170f}.offerVoucherReward img{width:30px;height:30px;object-fit:contain}.offerVoucherReward>span{display:grid;gap:1px;min-width:0}.offerVoucherReward strong{color:#ffdc63;font-size:13px}.offerVoucherReward small{color:#cdd2c6;font-size:11px;line-height:1.35}.offerRewardUnavailable{margin:5px 0 0;color:var(--muted);font-size:12px}
@media(max-width:560px){.offerRewardSummary>strong{font-size:19px}.offerRewardCompact{width:100%}}

/* VIP identity, experience and administrator controls */
.vipAccountPanel{margin-bottom:16px;background:radial-gradient(circle at 92% 0,rgba(255,212,103,.14),transparent 38%),linear-gradient(145deg,#171c24,#11151b);border-color:#434a56}.vipAccountPanel[data-vip-tier="Supreme"]{background:radial-gradient(circle at 88% 0,rgba(182,255,120,.2),transparent 42%),linear-gradient(145deg,#172019,#11151b);border-color:#607e49}.vipNameLine{display:flex;align-items:center;gap:13px;min-width:0}.vipNameLine h2{margin:2px 0;font-size:26px;line-height:1.25}.vipIdentity{min-width:0;flex:1}.vipIdentity h2{overflow-wrap:anywhere}.vipBadge,.vipBadgeFallback{flex:0 0 auto;width:68px;height:68px;border-radius:20px;border:1px solid rgba(255,255,255,.14);background:#202733;box-shadow:0 8px 26px rgba(0,0,0,.3)}.vipBadge{display:block;object-fit:contain}.vipBadgeFallback{display:grid;place-items:center;color:#e5ffcf;font-weight:950;font-size:14px;letter-spacing:.08em}.vipBadge.compact,.vipBadgeFallback.compact{width:42px;height:42px;border-radius:13px}.vipLevel{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid rgba(255,212,103,.32);background:rgba(255,212,103,.1);color:#ffe6a2;border-radius:999px;padding:7px 11px;font-weight:900}.vipExperience{margin-top:20px}.vipExperience.compact{margin-top:0;min-width:180px}.vipExperienceHead{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;margin-bottom:7px}.vipExperienceHead b{color:#f4f6ef}.vipProgressTrack{height:12px;border-radius:999px;overflow:hidden;background:#0c1015;border:1px solid #303744}.vipProgressFill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#93dd55,var(--green),#ffe078);box-shadow:0 0 18px rgba(182,255,120,.24)}.vipMeta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:11px;color:#cbd1d8;font-size:13px}.vipSupreme{color:#dfffbd;font-weight:900}.vipStandby{border-style:dashed}.vipStandby .notice{margin-bottom:0}.vipAdminBlock{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.vipAdminBlock .sectionTitle{align-items:center}.vipRuleTable{min-width:620px}.vipMemberTable{min-width:820px}.vipAdminIdentity{display:flex;align-items:center;gap:10px;min-width:190px}.vipAdminIdentity>span{display:grid;gap:3px;min-width:0}.vipAdminIdentity small{display:block;color:var(--muted);overflow-wrap:anywhere}.vipAdminBlock [data-vip-member]{background:rgba(255,255,255,.012)}
@media(max-width:560px){.vipNameLine{align-items:flex-start;flex-wrap:wrap}.vipNameLine .vipIdentity{flex:1 1 calc(100% - 84px)}.vipNameLine .vipLevel{margin-left:81px}.vipBadge,.vipBadgeFallback{width:60px;height:60px;border-radius:18px}.vipMeta{display:grid}.vipExperience.compact{min-width:150px}}

.vipLevelEditor{margin-top:16px;scroll-margin-top:20px}.vipLevelFields{display:grid;grid-template-columns:minmax(130px,.35fr) minmax(220px,1fr);gap:14px;align-items:start}.vipLevelFields .textarea{min-height:86px}.vipLevelPreview strong{font-size:21px}.vipLevelPreview p{margin:9px 0;overflow-wrap:anywhere}.vipLevelHistoryTable{min-width:560px}.vipLevelHistoryTable td{overflow-wrap:anywhere;max-width:360px}.vipLevelEditor .consentRow{margin:12px 0}
@media(max-width:560px){.vipLevelFields{grid-template-columns:1fr}.vipLevelEditor .sectionTitle{align-items:start}.vipLevelEditor .sectionTitle h3{margin-top:0}}

.opsModule{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.opsModule .toolbar{align-items:end}.opsModule .toolbar label{min-width:170px}.opsModule .toolbar .field{display:block}.opsCaseTable{min-width:710px}.opsCaseTable td{max-width:300px;overflow-wrap:anywhere}.opsEditor{margin-top:18px;scroll-margin-top:20px}.opsEditor textarea{resize:vertical}.opsText{white-space:pre-wrap;overflow-wrap:anywhere}.opsHistory{padding-left:22px}.opsHistory li{padding:10px 0;border-bottom:1px solid var(--line)}.opsHistory p{margin:6px 0}.opsRetention{padding:14px 0;margin:12px 0;border-block:1px solid var(--line)}.opsRetention summary{cursor:pointer;font-weight:700}.opsEditor [role=status]{margin-top:12px}.opsModule .opsRetentionTable{min-width:420px}
@media(max-width:560px){.opsModule .toolbar{align-items:stretch;flex-direction:column}.opsModule .sectionTitle{align-items:start}.opsModule .split{grid-template-columns:1fr}.opsModule .formLabel{min-width:0}}
/* Member header uses the same validated VIP status as the member center. */
#authTop.memberTop{display:inline-flex;align-items:center;gap:8px;min-width:0;padding:5px 12px 5px 5px;text-align:left}
.topVipBadge,.topEquippedBadge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.topVipBadge .vipBadge{width:42px;height:42px}.topEquippedBadge{width:38px;height:38px;border-left:1px solid rgba(255,255,255,.13);padding-left:7px}.topEquippedBadge .bf-badge-art{--bf-badge-size:31px!important}
.topMemberIdentity{display:grid;gap:2px;min-width:0}
.topMemberName{max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}
.topMemberLevel{color:#ffe6a2;font-size:13px;white-space:nowrap}
.topin .pill{white-space:nowrap}
@media(max-width:1100px) and (min-width:901px){.topin{gap:14px}.topin .nav{gap:12px}.topMemberName{max-width:8ch}}
@media(max-width:560px){
  .topin{gap:6px}
  .topin .brand{flex:0 1 106px;min-width:64px}
  .topin .brandLogo{width:100%;height:auto;max-height:42px}
  .topin .spacer{flex:1 1 0;min-width:0}
  .topin .pill{flex:0 1 auto;min-width:0;max-width:88px;padding:8px 7px;overflow:hidden;text-overflow:ellipsis}
  #authTop.memberTop{flex:0 1 auto;gap:5px;min-width:94px;padding:5px 7px 5px 4px}
  #authTop .topVipBadge .vipBadge.compact,#authTop .vipBadgeFallback.compact{width:30px;height:30px;border-radius:10px}
  #authTop .topEquippedBadge{width:31px;height:31px;padding-left:5px}
  #authTop .topEquippedBadge .bf-badge-art{--bf-badge-size:26px!important}
  .topMemberIdentity{display:grid;gap:2px}
  .topMemberName{max-width:8ch;font-size:12px;line-height:1.2}
  .topMemberLevel{font-size:11px;line-height:1.2}
  .topin .menuBtn{flex:0 0 auto;padding:7px 9px}
}

/* Reader navigation and native, touch-friendly TOP 10 rail. */
.menuBtn{display:block}.mobileMenu.show{display:grid;position:fixed;z-index:80;top:70px;right:max(16px,calc((100vw - 1180px)/2));left:auto;min-width:220px;padding:12px;background:#11161c;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.mobileMenu a,.mobileMenu .navButton{display:block;padding:13px 16px;text-align:left;width:100%;font-size:15px}.mobileMenu [hidden]{display:none!important}.menuLogout{color:#ffb7bb!important;border-top:1px solid var(--line);margin-top:5px}.memberPages{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin:8px 0 24px}.memberPages h1,.memberPages a{font-size:clamp(24px,4vw,34px);line-height:1.4;font-weight:900;margin:0;padding:0 0 12px}.memberPages h1{border-bottom:3px solid var(--green)}.memberPages a{color:var(--muted);text-decoration:none}.memberPages a:hover{color:#fff}.rankCarousel{position:relative}.rankControls{display:flex;justify-content:flex-end;gap:8px;margin:0 0 8px}.rankControls .btn:disabled{opacity:.3;cursor:default}.rankRail{display:flex;overflow-x:auto;overflow-y:hidden;gap:18px;scroll-snap-type:x mandatory;scroll-padding-inline:8px;overscroll-behavior-x:contain;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:12px 8px 24px;scrollbar-width:thin;scrollbar-color:#58624b #11161c}.rankCard{position:relative;isolation:isolate;flex:0 0 clamp(235px,28vw,340px);min-width:0;scroll-snap-align:start;padding-left:45px;cursor:pointer;outline-offset:4px}.rankNumber{position:absolute;left:0;top:42%;bottom:auto;transform:translateY(-50%);z-index:2;font:950 clamp(100px,12vw,152px)/.8 Arial,sans-serif;color:#101510;-webkit-text-stroke:2px #b6ff78;text-shadow:0 8px 20px #000;letter-spacing:-.09em;pointer-events:none}.rankContent{border-radius:16px;overflow:hidden;background:var(--card);border:1px solid var(--line);transition:transform .2s,border-color .2s}.rankCard:hover .rankContent{transform:translateY(-4px);border-color:#82956b}.rankCard .coverMedia.rank{aspect-ratio:3/4;position:relative;overflow:hidden}.rankCard .coverMedia.rank img{width:100%;height:100%;object-fit:cover}.rankCard .workPad{padding:15px}.rankCard h3{font-size:19px;margin:5px 0;line-height:1.35;min-height:2.7em}.rankCard .workHook{margin:6px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;height:3em}.rankCard:focus-visible,.rankRail:focus-visible{outline:3px solid var(--green)}.shelfList{display:grid;gap:12px}.shelfItem{display:flex;align-items:center;gap:18px;width:100%;padding:16px;text-align:left;background:#10151b;color:var(--text);border:1px solid var(--line);border-radius:14px;cursor:pointer}.shelfItem:hover{border-color:var(--green)}.shelfCover{flex:0 0 110px;overflow:hidden;border-radius:9px}.shelfItem .grow{display:grid;gap:7px;min-width:0}.shelfItem strong{font-size:19px}.shelfContinue{color:var(--green);white-space:nowrap}.vipRulesPanel,.accountSecurity{margin-top:16px}.vipRulesGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.vipRule{display:flex;align-items:center;gap:14px;background:#10161b;border:1px solid var(--line);border-radius:16px;padding:16px;min-width:0}.vipRule h3{margin:0 0 6px}.vipRule p{margin:4px 0}.vipReward{color:var(--green);font-size:13px}.rememberLogin{margin:12px 0}.rememberLogin small{display:block;color:var(--muted);font-weight:400}.authProviders{display:grid;gap:10px;margin:18px 0}.authProvider{display:flex;gap:12px;justify-content:center;align-items:center;min-height:44px;border-radius:8px;font-size:15px;font-weight:600}.authProvider.google{background:#fff;color:#1f1f1f;border:1px solid #747775}.authProvider.line{background:#06c755;color:#fff;border:1px solid #06c755}.connectionList{display:flex;gap:12px;flex-wrap:wrap}.connectionList .authProvider{padding:10px 18px}.authDivider{text-align:center;color:var(--muted);font-size:13px;margin:12px 0}.authProvider:disabled{opacity:.65}.oauthFinish{display:grid;gap:8px}.modalBox{max-height:calc(100dvh - 36px);overflow-y:auto}
@media(max-width:1024px){.vipRulesGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.topin{gap:12px}.topin .nav{gap:12px}}
@media(max-width:560px){.mobileMenu.show{top:62px;left:10px;right:10px;min-width:0;padding:10px;border-radius:16px}.memberPages{gap:22px}.rankRail{gap:12px;margin-right:-11px;padding-right:22px}.rankCard{flex-basis:76%;padding-left:38px}.rankNumber{font-size:115px}.vipRulesGrid{grid-template-columns:1fr}.vipRule{padding:14px}.shelfItem{gap:12px;padding:12px;flex-wrap:wrap}.shelfCover{flex-basis:80px}.shelfItem .grow{flex:1}.shelfContinue{margin-left:92px;font-size:13px}.shelfItem strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){.rankRail{scroll-behavior:auto}.rankContent{transition:none}.rankCard:hover .rankContent{transform:none}}

.authProviderForm{display:contents}.authProvider img{object-fit:contain;flex:0 0 20px}.authProvider.google{font-family:'Google Sans',Arial,sans-serif;font-weight:500;font-size:14px;padding:11px 12px;gap:10px}.authProvider.line{padding:10px 20px;gap:20px}.authProvider.line:hover{background:#05b34d}.authProvider.line:active{background:#048b3c}.authProvider.line:disabled{background:#fff;color:#aaa;border-color:#e5e5e5}.authProvider img{width:20px;height:20px}.connectionList .authProvider{margin-block:5px}.authProvider:focus-visible,.memberPages a:focus-visible,.shelfItem:focus-visible{outline:3px solid var(--green);outline-offset:4px}

.vipIdentity .small,.accountSecurity p{overflow-wrap:anywhere}@media(max-width:560px){.topin{gap:6px}}

.authLead{font-weight:700;margin:8px 0}.authProviders{margin:12px 0}.authProvider{cursor:pointer;min-height:48px}.authProvider:disabled{cursor:default}.backupEmailRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.backupEmailRow .field{flex:1 1 220px}.backupEmailRow .btn{white-space:normal}.lineFriend{background:#06c755;color:#fff}.accountHistory{margin-top:16px}.memberNotice,.memberTransaction{padding:16px 0;border-bottom:1px solid var(--line)}.memberNotice:last-child,.memberTransaction:last-child{border-bottom:0}.memberNotice summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;list-style:disclosure-closed}.memberNotice[open] summary{list-style:disclosure-open}.noticeBody{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.memberTransaction{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.memberTransaction p{overflow-wrap:anywhere}.noticeUnread{font-size:11px;color:var(--green)}#lineNotifications{margin:18px 0}#backupEmailStatus{overflow-wrap:anywhere}

.memberIdentityRow{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:5px;color:var(--muted);font-size:12px}.memberIdentityRow code{min-width:0;max-width:100%;font-size:11px;overflow-wrap:anywhere;user-select:all}.memberIdCopy{font:inherit;color:var(--muted);border:0;background:transparent;padding:2px 4px;border-radius:4px;min-height:28px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.memberIdCopy:hover{color:var(--green)}.memberIdCopy:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* Missions, support stamps and the member badge collection. */
.missionHero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:radial-gradient(circle at 85% 10%,rgba(182,255,120,.16),transparent 38%),linear-gradient(145deg,#171d22,#11151b);border-color:#48563e}.missionHero h2{font-size:34px;margin:4px 0}.missionHero p{margin:7px 0;color:#c7ced5}.missionLevel{display:flex;align-items:center;gap:12px;min-width:210px}.missionLevel>span{display:grid;gap:4px}.missionLevel b{font-size:25px}.missionLevel small{color:var(--muted)}.missionTabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.missionTabs button{min-height:48px;border:1px solid var(--line);border-radius:14px;background:#12171d;color:var(--muted);font-weight:900;cursor:pointer}.missionTabs button[aria-selected="true"]{background:var(--green);border-color:var(--green);color:#10130f}.missionBoard{min-height:380px}.missionSectionHead{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.missionSectionHead h2{margin:4px 0;font-size:28px}.missionStamp{display:flex;align-items:center;gap:10px;color:var(--muted)}.missionStamp img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.3));animation:missionGlow 3s ease-in-out infinite}.missionStamp span{max-width:12ch}.missionVoucherCount{display:grid;justify-items:center;border:1px solid #51613f;background:#192019;border-radius:16px;padding:11px 16px;color:#dfffc4}.missionVoucherCount b{font-size:28px}.missionVoucherCount span{font-size:12px}.missionTaskList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.missionTask{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:15px;background:#10151b}.missionTask.complete{border-color:#557445;background:linear-gradient(140deg,rgba(182,255,120,.1),#10151b 60%)}.missionTaskIcon{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border:1px solid #48515e;border-radius:50%;color:#929aa6;font-weight:900}.missionTask.complete .missionTaskIcon{background:var(--green);border-color:var(--green);color:#111}.missionTaskHead{display:flex;justify-content:space-between;gap:8px;align-items:start}.missionTaskHead span{color:var(--green);font-size:12px;font-weight:900;white-space:nowrap}.missionTask p{margin:5px 0 9px}.missionProgress{height:8px;border:1px solid #343c47;background:#090d11;border-radius:999px;overflow:hidden}.missionProgress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#58c86c,var(--green),#ffe078)}.missionTaskCount{text-align:right;margin-top:5px;color:var(--muted);font-size:11px}.missionSpend{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.missionSpend .sectionHead{align-items:start}.missionSpend .sectionHead p{margin:5px 0}.missionSpendTiers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.missionSpendTier{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:13px;color:var(--muted)}.missionSpendTier b{color:#fff;font-size:18px}.missionSpendTier span{font-size:12px}.missionSpendTier.complete{border-color:#6a8a51;background:rgba(182,255,120,.08)}.missionSpendTier.complete span{color:var(--green)}.missionWeekDates{padding:11px 13px;margin-bottom:13px;border-radius:12px;background:#0d1217;color:#cdd5dc}.missionBadgeIntro{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.missionBadgeIntro p{margin:6px 0}.missionBadgeGroup{margin-top:18px}.missionBadgeGroup h4{margin:0 0 9px;color:#dce3e9}.missionBadgeGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.missionBadge{display:flex;align-items:center;gap:9px;padding:10px;text-align:left;color:#fff;background:#10151b;border:1px solid var(--line);border-radius:14px;cursor:pointer;min-width:0}.missionBadge img{flex:0 0 54px;width:54px;height:54px;object-fit:contain}.missionBadge>span{display:grid;gap:4px;min-width:0}.missionBadge strong{font-size:13px;overflow-wrap:anywhere}.missionBadge small{color:var(--muted);font-size:11px}.missionBadge.locked{filter:grayscale(1);opacity:.48;cursor:not-allowed}.missionBadge.selected{border-color:var(--green);box-shadow:0 0 0 2px rgba(182,255,120,.18)}.missionBadge.rarity-epic:not(.locked),.missionBadge.rarity-legendary:not(.locked),.missionBadge.rarity-mythic:not(.locked){background:radial-gradient(circle at 18% 20%,rgba(202,145,255,.16),#10151b 66%)}.missionBadge.rarity-mythic:not(.locked) img{animation:missionGlow 2.2s ease-in-out infinite}.missionRuleNote{margin-top:16px}.missionRuleNote p{line-height:1.7}.missionVoucherButton{border-color:#d8b4fe;color:#ead8ff}@keyframes missionGlow{50%{filter:drop-shadow(0 0 14px rgba(182,255,120,.52))}}
@media(max-width:900px){.missionBadgeGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.missionHero,.missionSectionHead{align-items:flex-start;flex-direction:column}.missionLevel{min-width:0}.missionTabs{position:sticky;top:116px;z-index:20;background:#090c10;padding:6px 0}.missionTaskList{grid-template-columns:1fr}.missionSpendTiers{grid-template-columns:1fr}.missionBadgeGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.missionBadge{align-items:flex-start}.missionBadge img{width:46px;height:46px;flex-basis:46px}}
@media(max-width:420px){.missionBadgeGrid{grid-template-columns:1fr}.missionTabs button{font-size:13px}}
@media(prefers-reduced-motion:reduce){.missionStamp img,.missionBadge.rarity-mythic:not(.locked) img{animation:none}}

/* Final VIP depth atlas: the legacy img remains as a fail-safe/evidence
   reference, while the approved atlas supplies the visible artwork. */
.vipDepthBadge{position:relative;isolation:isolate;overflow:hidden;background:#0b1118;pointer-events:auto}
.vipDepthLegacy{position:absolute!important;inset:0;width:100%!important;height:100%!important;opacity:0;pointer-events:none;z-index:0}
.vipDepthStage{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:1}
.vipDepthArt{position:absolute;inset:0;background-image:url('/assets/vip-tiers-approved.webp');background-repeat:no-repeat;background-size:333.913% 262.564%;background-position:var(--vip-x) 77.918%;animation:vipDepthBrightness var(--vip-speed) ease-in-out infinite}
.vipTier-bronze,.vipTier-gold,.vipTier-diamond{--vip-upper:1}
.vipTier-bronze{--vip-x:3.7175%;--vip-light:#a26a42;--vip-speed:6s;--vip-bright:1.05}
.vipTier-gold{--vip-x:50%;--vip-light:#ffca48;--vip-speed:5.6s;--vip-bright:1.1}
.vipTier-diamond{--vip-x:96.0967%;--vip-light:#39b9ff;--vip-speed:5.1s;--vip-bright:1.16}
.vipTier-master{--vip-x:3.7175%;--vip-light:#c657ff;--vip-speed:4.8s;--vip-bright:1.2}
.vipTier-grandmaster{--vip-x:50%;--vip-light:#ff321e;--vip-speed:4.8s;--vip-bright:1.27}
.vipTier-supreme{--vip-x:96.0967%;--vip-light:#fff8df;--vip-speed:4s;--vip-bright:1.38}
.vipTier-bronze .vipDepthArt,.vipTier-gold .vipDepthArt,.vipTier-diamond .vipDepthArt{top:8%;bottom:8.667%;background-size:333.913% 315.077%;background-position:var(--vip-x) 10.0143%}
.vipDepthAura{position:absolute;inset:4%;border-radius:50%;background:radial-gradient(ellipse,transparent 18%,var(--vip-light) 42%,transparent 70%);mix-blend-mode:screen;opacity:.18;filter:blur(5px);animation:vipDepthBreathe var(--vip-speed) ease-in-out infinite}
.vipTier-bronze .vipDepthAura{inset:14%;opacity:.12}.vipTier-diamond .vipDepthAura{background:radial-gradient(ellipse,transparent 15%,#289bff 35%,#67cfff 45%,transparent 69%)}.vipTier-supreme .vipDepthAura{inset:0;background:radial-gradient(ellipse,transparent 12%,#fffef1 30%,#ffedb3 43%,transparent 70%);opacity:.32}
.vipTier-gold .vipDepthStage:after,.vipTier-diamond .vipDepthStage:after{content:'';position:absolute;width:18%;aspect-ratio:1;left:64%;top:28%;border-radius:50%;background:radial-gradient(circle,#fff 0,transparent 35%),linear-gradient(transparent 47%,var(--vip-light) 50%,transparent 53%),linear-gradient(90deg,transparent 47%,var(--vip-light) 50%,transparent 53%);mix-blend-mode:screen;opacity:0;animation:vipDepthTwinkle 5s ease-in-out infinite}
.vipTier-master .vipDepthStage:after{content:'';position:absolute;inset:12%;border:1px solid #db88ff;border-radius:50%;box-shadow:0 0 8px #a844df;opacity:0;animation:vipDepthWave 4.8s ease-out infinite}
.vipDepthRing{position:absolute;left:18%;top:50%;width:64%;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;pointer-events:none;mix-blend-mode:screen;z-index:2}
.vipDepthRing span{position:absolute;inset:0;border:2px solid var(--vip-ring,#ff4923);border-radius:50%;box-shadow:0 0 9px 2px var(--vip-light),inset 0 0 8px var(--vip-light);opacity:0;animation:vipDepthRing 4.8s ease-out infinite}
.vipDepthRing span+span{animation-delay:-2.4s}
.vipTier-grandmaster{--vip-ring:#ff4923}.vipTier-grandmaster .vipDepthRing{inset:0 7%;width:auto}.vipTier-grandmaster .vipDepthTrack{position:absolute;left:12%;top:50%;width:76%;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;mix-blend-mode:screen;animation:vipDepthOrbit 6.5s linear infinite;z-index:2}.vipDepthTrack:before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 242deg,var(--vip-ring) 357deg,transparent 360deg);mask:radial-gradient(circle,transparent 65%,#000 68% 70%,transparent 72%);-webkit-mask:radial-gradient(circle,transparent 65%,#000 68% 70%,transparent 72%)}.vipDepthOrb{position:absolute;left:50%;top:0;width:clamp(8px,12%,13px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#fff4d4 0 24%,#ff572a 45%,var(--vip-light) 62%,transparent 75%);box-shadow:0 0 6px 2px #ff572a,0 0 16px 5px var(--vip-light)}
.vipTier-supreme .vipDepthArt{z-index:0}.vipTier-supreme .vipDepthCrest{position:absolute;inset:0;z-index:2;clip-path:ellipse(34% 43% at 50% 50%);background-image:url('/assets/vip-tiers-approved.webp');background-repeat:no-repeat;background-size:333.913% 262.564%;background-position:var(--vip-x) 77.918%}.vipTier-supreme .vipDepthBack,.vipTier-supreme .vipDepthFront{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.vipTier-supreme .vipDepthBack{z-index:1}.vipTier-supreme .vipDepthFront{z-index:5}.vipTier-supreme .vipDepthRing{z-index:4;left:18%;width:64%;--vip-ring:#fff9e7}.vipTier-supreme .vipDepthRing span{border-color:#fff9e7;box-shadow:0 0 10px 3px #fff5d0,inset 0 0 10px #fff5d0,0 0 22px 5px #ffe2a0;animation-duration:4s}.vipTier-supreme .vipDepthStage:after{content:'';position:absolute;inset:0;z-index:6;background:radial-gradient(circle at 32% 29%,#fff 0,transparent 5%),radial-gradient(circle at 74% 51%,#fff 0,transparent 5%);mix-blend-mode:screen;opacity:.65}
@keyframes vipDepthBrightness{0%,100%{filter:brightness(1)}50%{filter:brightness(var(--vip-bright))}}@keyframes vipDepthBreathe{0%,100%{opacity:.1;transform:scale(.93)}50%{opacity:.4;transform:scale(1.04)}}@keyframes vipDepthTwinkle{0%,30%,100%{opacity:0;transform:scale(.5)}52%{opacity:.95;transform:scale(1)}72%{opacity:0;transform:scale(.6)}}@keyframes vipDepthWave{0%{opacity:0;transform:scale(.72)}35%{opacity:.3}100%{opacity:0;transform:scale(1.12)}}@keyframes vipDepthRing{0%{transform:scale(.35);opacity:0}18%{opacity:.8}55%{opacity:.45}100%{transform:scale(1.3);opacity:0}}@keyframes vipDepthOrbit{to{transform:translateY(-50%) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.vipDepthStage *{animation-play-state:paused!important}}

/* Each unlocked badge tier remains visually distinct even when images are unavailable. */
.missionBadge.rarity-common:not(.locked){border-color:#7c5a3b;background:linear-gradient(145deg,rgba(214,163,108,.09),#10151b 68%)}
.missionBadge.rarity-advanced:not(.locked){border-color:#337a57;background:linear-gradient(145deg,rgba(134,239,172,.09),#10151b 68%)}
.missionBadge.rarity-rare:not(.locked){border-color:#356caf;background:radial-gradient(circle at 18% 20%,rgba(125,211,252,.13),#10151b 66%)}
.missionBadge.rarity-epic:not(.locked){border-color:#7042a4;background:radial-gradient(circle at 18% 20%,rgba(202,145,255,.17),#10151b 66%)}
.missionBadge.rarity-legendary:not(.locked){border-color:#a34a3d;background:radial-gradient(circle at 18% 20%,rgba(253,164,175,.2),#10151b 66%);box-shadow:inset 0 0 24px rgba(253,186,116,.05)}
.missionBadge.rarity-mythic:not(.locked){border-color:#9e52ac;background:radial-gradient(circle at 18% 20%,rgba(94,234,212,.2),transparent 35%),radial-gradient(circle at 82% 80%,rgba(192,38,211,.19),#10151b 69%);box-shadow:inset 0 0 28px rgba(94,234,212,.06)}
.badgeWallLegend{display:flex;gap:10px;justify-content:flex-end;margin-bottom:12px;color:var(--muted);font-size:13px}.badgeFilter{padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.badgeFilter.active,.badgeFilter:hover{color:var(--green);border-color:#557445}.badgeFilter:focus-visible{outline:2px solid var(--green);outline-offset:2px}.wallBadge{cursor:default}.badgeWallBoard .missionBadgeGroup:first-child{margin-top:0}

/* Member daily tasks: above bottom controls, below dialogs and the main menu. */
#dailyTaskFloat{position:fixed;z-index:45;right:16px;bottom:calc(24px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:flex-end;gap:10px;max-width:calc(100vw - 24px)}
#dailyTaskFloat[hidden],#dailyTaskPanel[hidden]{display:none}
.dailyFloatToggle{display:flex;align-items:center;gap:8px;box-shadow:var(--shadow);font-weight:800}
.dailyPending{display:grid;place-items:center;min-width:22px;min-height:22px;padding:2px 6px;background:#f52244;color:#fff;border-radius:99px;font-size:12px}
.dailyTaskPanel{display:flex;flex-direction:column;order:-1;width:360px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 180px);overflow:hidden;border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--card);box-shadow:var(--shadow)}
.dailyTaskPanel header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dailyTaskPanel header,.dailyTaskPanel footer,.dailyTaskDate{flex:none}
.dailyTaskDate{margin:10px 0}
.dailyTaskList{min-height:0;max-height:408px;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px}
.dailyTaskList:focus-visible{outline:2px solid var(--green);outline-offset:-2px}
.dailyTaskList h3{font-size:13px;color:var(--muted);margin:12px 0 0}
.dailyFloatTask{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:106px;padding:12px 0;border-bottom:1px solid var(--line)}
.dailyFloatTask>div{min-width:0}.dailyFloatTask strong{font-size:14px}.dailyFloatTask p{margin:4px 0;color:var(--muted);font-size:12px;line-height:1.5}
.dailyFloatTask small{color:var(--muted);font-size:11px}.dailyFloatTask .btn,.dailyTaskClaimed{flex:none;white-space:nowrap}
.dailyTaskClaimed{color:var(--green);font-size:12px}.dailyClaimAll{width:100%;margin-top:14px}.dailyTaskPanel .btn:disabled{opacity:.5;cursor:default}
.missionTaskHead strong,.dailyFloatTask strong{display:flex;align-items:center;gap:7px}
.missionTaskDot{display:inline-block;width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#ff2647;box-shadow:0 0 0 2px rgba(255,38,71,.15)}
.missionTaskReceipt{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.5}
.dailyTaskTabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}
.dailyTaskTabs button{min-height:42px;border:1px solid var(--line);border-radius:10px;background:#0f141a;color:var(--muted);font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.dailyTaskTabs button[aria-selected="true"]{background:var(--green);border-color:var(--green);color:#10130f}
.dailyTaskTabs button:focus-visible{outline:2px solid white;outline-offset:2px}
#dailyTaskFloat.readerMode{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
@media(max-width:600px){#dailyTaskFloat{right:12px;bottom:calc(80px + env(safe-area-inset-bottom,0px))}.dailyTaskPanel{max-height:calc(100dvh - 292px - env(safe-area-inset-bottom,0px))}.dailyFloatToggle{font-size:13px;padding:9px 13px}}


/* Compact browsing. Scoped to discovery views; reader and member layouts stay independent. */
:is(#home, #genre) {
  --browse-gap: 12px;
  --browse-card: calc((100% - 60px) / 6.35);
  --browse-columns: 6;
}

#home .hero {
  min-height: 340px;
  margin-top: 16px;
  border-radius: 20px;
}
#home .hero .coverMedia.hero {
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
#home .hero .coverMedia.hero::after { content: none; }
#home .hero .coverFallback { min-height: 0; }
#home .heroContent { padding: 42px 36px; }
#home .hero h1 { font-size: 42px; line-height: 1.2; }

:is(#home, #genre) .section { padding: 24px 0 0; }
:is(#home, #genre) .sectionHead { gap: 10px; margin-bottom: 12px; }
:is(#home, #genre) .sectionHead h2 { font-size: 22px; line-height: 1.35; }
:is(#home, #genre) .sectionHead .kicker { font-size: 11px; margin-bottom: 4px; }
:is(#home, #genre) .discoveryHead { padding-right: 94px; }
:is(#home, #genre) .rankControls {
  position: absolute;
  right: 0;
  top: -48px;
  gap: 6px;
  margin: 0;
}
:is(#home, #genre) .rankControls .btn { min-width: 40px; min-height: 40px; }

:is(#home, #genre) .rankRail,
#home :is(#editorialCards, #recentCards) {
  gap: var(--browse-gap);
  margin: 0;
  padding: 4px 0 12px;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 0;
  scrollbar-width: thin;
  scrollbar-color: #58624b #11161c;
  -webkit-overflow-scrolling: touch;
}
#home :is(#editorialCards, #recentCards) {
  display: grid;
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: var(--browse-card);
  align-items: start;
}
:is(#home, #genre) .rankCard {
  flex: 0 0 var(--browse-card);
  padding-left: 0;
  min-width: 0;
}
:is(#home, #genre) :is(.rankContent, .workCard, .compactWork) {
  min-width: 0;
  border-radius: 10px;
  border: 0;
  background: transparent;
  box-shadow: none;
  scroll-snap-align: start;
}
:is(#home, #genre) :is(.workCard, .compactWork) { display: block; }
:is(#home, #genre) :is(.coverMedia.rank, .coverMedia.card, .coverMedia.compact) {
  aspect-ratio: 2 / 3;
  min-height: 0;
  border-radius: 10px;
  border: 1px solid var(--line);
}
:is(#home, #genre) :is(.rankCard, .workCard, .compactWork) .coverMedia img {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
}
:is(#home, #genre) :is(.rankCard, .workCard, .compactWork) .coverFallback {
  min-height: 0;
  font-size: 11px;
  letter-spacing: 0;
}
:is(#home, #genre) .rankNumber {
  top: 5px;
  left: 6px;
  bottom: auto;
  transform: none;
  font-size: 32px;
  line-height: 1;
  letter-spacing: -.06em;
  color: #fff;
  -webkit-text-stroke: 1px #11161c;
  text-shadow: 0 2px 7px #000;
}
:is(#home, #genre) :is(.rankCard, .workCard, .compactWork) .workPad { padding: 8px 2px 0; }
:is(#home, #genre) :is(.rankCard, .workCard, .compactWork) h3 {
  font-size: 15px;
  line-height: 1.4;
  margin: 3px 0 0;
  padding: 0;
  min-height: 2.8em;
  overflow-wrap: anywhere;
}
:is(#home, #genre) :is(.rankCard, .workCard, .compactWork) .genreLabel {
  font-size: 11px;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
:is(#home, #genre) :is(.rankCard, .workCard, .compactWork) .workHook { display: none; }
:is(#home, #genre) .updatedLabel { margin-top: 4px; font-size: 11px; line-height: 1.4; }
:is(#home, #genre) .engagement { gap: 4px 8px; font-size: 11px; flex-wrap: wrap; }
:is(#home, #genre) .discoveryEmpty { min-width: 100%; }
#home :is(#editorialCards, #recentCards):has(> .discoveryEmpty) { display: block; }

#genre .genrePageHead { padding: 18px 0 0; }
#genre .genrePageHead h1 { font-size: 32px; margin: 6px 0; }
#genre :is(.genreCompactList, .discoveryGrid) {
  display: grid;
  grid-template-columns: repeat(var(--browse-columns), minmax(0, 1fr));
  gap: 18px var(--browse-gap);
}
#genre .compactWork .rankBadge {
  position: static;
  font-size: 13px;
  margin-bottom: 3px;
}
:is(#home, #genre) :is(.workCard, .rankCard):focus-visible { outline-offset: -3px; }
#home :is(#editorialCards, #recentCards):focus-visible { outline-offset: 2px; }

@media (max-width: 1024px) {
  :is(#home, #genre) {
    --browse-card: calc((100% - 36px) / 4.35);
    --browse-columns: 4;
  }
}

@media (max-width: 600px) {
  :is(#home, #genre) {
    --browse-gap: 8px;
    --browse-card: calc((100% - 24px) / 3.35);
    --browse-columns: 3;
  }
  #home .hero { min-height: 0; margin-top: 10px; border-radius: 16px; }
  #home .heroContent {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 230px;
    max-width: 100%;
    padding: 20px 18px;
  }
  #home .heroBadge { align-self: flex-start; padding: 4px 8px; margin-bottom: 8px; font-size: 11px; }
  #home .hero h1 { font-size: 29px; margin: 6px 0; }
  #home .heroHook {
    font-size: 14px !important;
    line-height: 1.5;
    margin: 6px 0 14px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  #home .hero .row { gap: 8px; }
  #home .hero .btn { min-height: 42px; font-size: 13px; padding: 10px 14px; }
  :is(#home, #genre) .section { padding-top: 20px; }
  :is(#home, #genre) .sectionHead { align-items: start; flex-wrap: wrap; gap: 5px 10px; margin-bottom: 9px; }
  :is(#home, #genre) .sectionHead h2 { font-size: 19px; }
  :is(#home, #genre) .sectionHead > .small { font-size: 11px; }
  :is(#home, #genre) .discoveryHead { padding-right: 0; }
  :is(#home, #genre) .rankControls { display: none; }
  :is(#home, #genre) .rankNumber { font-size: 26px; }
  :is(#home, #genre) :is(.rankCard, .workCard, .compactWork) h3 { font-size: 13px; }
  :is(#home, #genre) .rankingTabs { width: 100%; margin-top: 5px; }
  :is(#home, #genre) .rankingTabs button { min-height: 40px; padding: 8px 10px; }
  #genre .genrePageHead h1 { font-size: 26px; }
  #genre .genrePageHead p { font-size: 13px; line-height: 1.6; margin: 8px 0; }
}

@media (min-width: 420px) and (max-width: 600px) {
  :is(#home, #genre) {
    --browse-card: calc((100% - 24px) / 4.2);
    --browse-columns: 4;
  }
}

@media (prefers-reduced-motion: reduce) {
  #home :is(#editorialCards, #recentCards) { scroll-behavior: auto; }
}

/* Approved badge atlas sprites.  The source rectangles retain their full
   artwork and transparent padding; only the presentation frame is scaled. */
.bf-badge-art{position:relative;display:block;width:var(--bf-badge-size,54px);height:var(--bf-badge-size,54px);max-width:100%;aspect-ratio:1;flex:0 0 auto}.bf-badge-motion{position:absolute;inset:0;transform-origin:50% 65%}.bf-badge-sprite{position:absolute;display:block;left:var(--bf-art-left);top:var(--bf-art-top);width:var(--bf-art-width);height:var(--bf-art-height);background-repeat:no-repeat;background-size:var(--bf-art-bg-size);background-position:var(--bf-art-bg-pos)}.bf-badge-bob{animation:bf-badge-bob 4s ease-in-out infinite}.bf-badge-sway{animation:bf-badge-sway 5s ease-in-out infinite}.bf-badge-breathe{animation:bf-badge-breathe 4.5s ease-in-out infinite}.bf-badge-float{animation:bf-badge-float 5.5s ease-in-out infinite}.badgeArtFallback{width:var(--bf-badge-size,54px);height:var(--bf-badge-size,54px);object-fit:contain;flex:0 0 auto}.missionBadge.locked .bf-badge-art,.missionBadge.locked .badgeArtFallback{filter:grayscale(1)}
@keyframes bf-badge-bob{0%,65%,100%{transform:translateY(0)}25%{transform:translateY(-2px) rotate(-1deg)}40%{transform:translateY(0) rotate(1deg)}}@keyframes bf-badge-sway{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes bf-badge-breathe{0%,100%{transform:scale(.98)}50%{transform:scale(1.02)}}@keyframes bf-badge-float{0%,100%{transform:translateY(1px) rotate(-1deg)}50%{transform:translateY(-2px) rotate(1deg)}}
@media(prefers-reduced-motion:reduce){.bf-badge-motion{animation:none!important}}

/* Public catalogue search and paged browsing. */
.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#browse{padding-top:24px}
.browseHead{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}
.browseHead h1{font-size:38px;margin:6px 0}.browseHead p{margin:0}
.browseSearch{display:flex;gap:8px;align-items:center;width:min(420px,100%)}
.browseSearch .field{margin:0;min-width:0;flex:1}
.browseFilters{display:flex;align-items:end;gap:16px;margin-bottom:16px}
.browseFilters label{display:grid;gap:5px;color:var(--muted);font-size:13px}.browseFilters .field{margin:0;min-width:180px}
.browseGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 12px}
.browseGrid .workCard{min-width:0}.browseGrid .workCard .coverMedia{aspect-ratio:3/4}.browseGrid .workCard .workPad{padding:11px 12px}.browseGrid .workCard h3{font-size:17px;line-height:1.4;margin:3px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.browseGrid .workCard .workHook{display:none}.browseGrid .workCard .genreLabel{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.browsePagination{display:flex;justify-content:center;align-items:center;gap:14px;padding:28px 0 10px}.browsePagination span{color:var(--muted);font-size:14px}
@media (max-width:1024px){.browseGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:600px){.topin{flex-wrap:wrap;height:auto;min-height:62px;padding:8px 0}.browseHead{display:block;margin-bottom:14px}.browseHead h1{font-size:30px}.browseSearch{margin-top:14px}.browseFilters{align-items:start;display:grid;gap:6px}.browseFilters .field{width:100%;min-width:0}.browseGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 8px}.browseGrid .workCard .workPad{padding:7px 2px 0}.browseGrid .workCard h3{font-size:13px;line-height:1.4}.browseGrid .workCard .genreLabel{font-size:11px}.browsePagination{padding-top:22px;gap:9px}.browsePagination .btn{padding:8px 11px}}
@media (min-width:420px) and (max-width:600px){.browseGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rankNumber.pending{font-size:clamp(48px,6vw,78px);letter-spacing:0;color:#d7e6ce;-webkit-text-stroke:1px #78916d}.rankingPendingNote{color:var(--muted);margin:6px 0 0}

/* Responsive member navigation and reliable full-frame badge atlas crop. */
.memberPages h1,.memberPages a{font-size:clamp(20px,3vw,28px);line-height:1.25}
.bf-badge-sprite{inset:0!important;left:0!important;top:0!important;width:100%!important;height:100%!important}
@media(max-width:560px){.memberPages{gap:8px;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;margin-bottom:18px}.memberPages::-webkit-scrollbar{display:none}.memberPages h1,.memberPages a{font-size:18px;line-height:1.2;padding-bottom:7px;white-space:nowrap;flex:0 0 auto}}
@media(max-width:420px){.memberPages{gap:6px}.memberPages h1,.memberPages a{font-size:16px}}
#reader .readerTts{margin:16px 0 24px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--card);max-width:100%;box-sizing:border-box}
#reader .readerTtsControls{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
#reader .readerTtsControls button{min-height:44px}
#reader .readerTtsSettings{display:grid;grid-template-columns:minmax(0,1fr) minmax(85px,120px);gap:12px}
#reader .readerTtsSettings label{display:grid;gap:6px;min-width:0;font-size:14px}
#reader .readerTtsSettings select{width:100%;max-width:100%;min-width:0;min-height:44px}
#reader .readerTtsStatus{font-size:14px;overflow-wrap:anywhere;margin:12px 0 6px}
#reader .readerTtsHint{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
#reader .readerTts :is(button,select):focus-visible{outline:3px solid var(--accent,#b9ff60);outline-offset:3px}
#reader .readerTts button:disabled{opacity:.5;cursor:default}
#reader .readerTtsNext{display:flex;align-items:center;gap:8px;min-height:44px;margin-top:8px;font-size:14px;cursor:pointer}
#reader .readerTtsNext input{flex:0 0 auto;width:18px;height:18px;accent-color:var(--accent,#b9ff60)}
#reader .readerTtsNext input:focus-visible{outline:3px solid var(--accent,#b9ff60);outline-offset:3px}
#reader .readerTtsSeek{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:12px}
#reader .readerTtsSeek label{display:grid;gap:4px;flex:1 1 160px;min-width:0;font-size:14px}
#reader .readerTtsSeek input{width:100%;min-width:0;min-height:28px;accent-color:var(--accent,#b9ff60)}
#reader .readerTtsSeek button{min-height:44px}
#reader .readerTtsSeek input:focus-visible{outline:3px solid var(--accent,#b9ff60);outline-offset:3px}

/* Homepage preview only. Shared member/reader/catalogue geometry is unchanged. */
.rewardCta{border-color:#f1c851;background:linear-gradient(135deg,#18170e,#4e3b0b);color:#ffe486;font-weight:900;box-shadow:0 0 18px #ffc62c29}
.rewardCta:hover,.commerceCta{border-color:#ffd467;background:linear-gradient(135deg,#34270a,#0f1114);color:#ffe8a1}
#welcomeTop[hidden],#pointsTopWrap[hidden],.topin #welcomeTop[hidden]{display:none}
.topin #welcomeTop{display:inline-flex;align-items:center;gap:6px}.topin #welcomeTop .homeVisualIcon{width:16px;height:16px}
.topin #welcomeTop .homeRewardLabel{display:grid;gap:1px;line-height:1.15;text-align:center}
.headerSearch{display:flex;align-items:center;flex:0 1 180px;min-width:0;margin:0;border:1px solid #2b4854;border-radius:20px;background:#0b1920;color:#b8d9e8}
.headerSearch input{width:100%;min-width:0;padding:8px 0 8px 12px;border:0;background:transparent;color:inherit;font-size:13px;outline-offset:2px}
.headerSearch button{flex:none;width:40px;min-height:40px;display:grid;place-items:center;padding:8px;border:0;border-radius:20px;background:transparent;color:inherit;cursor:pointer}
.headerSearch button svg{width:17px;height:17px}
.topin #welcomeTop .homeRewardLabel>span{font-size:12px}
.topin #welcomeTop .homeRewardLabel>strong{font-size:15px;color:#ffe995;text-shadow:0 0 10px #ffd34f70}
body:has(#home.active) .wrap{width:93%;max-width:1320px}
#home .homeLeadGrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:14px;margin-top:14px}
#home .homeLeadGrid>.hero{margin:0;min-height:310px;height:auto;border-radius:13px}
#home .heroContent{padding:28px 30px;max-width:75%}
#home .hero h1{font-size:40px;line-height:1.2;margin:9px 0 12px}
#home .heroBadge{margin-bottom:8px}
#home .heroHook{font-size:17px!important;line-height:1.6;margin:12px 0 20px}
#home .hero .coverMedia.hero img{opacity:.95}
#home .hero:after{background:linear-gradient(90deg,#050b0ff2,#050b0f91 46%,#050b0f0d),linear-gradient(0deg,#050b0f66,transparent 60%)}
#home .hero .row{gap:10px;flex-wrap:wrap}
#home .hero .btn{border-radius:9px;min-height:44px}
#home .homeChallenge,#home .homePlayCard,#home .homeWelcome{border:1px solid #2c483b;border-radius:12px;background:#0c1915}
#home .homeChallenge{padding:10px 14px;display:flex;flex-direction:column;min-width:0;gap:4px;background:radial-gradient(ellipse at 85% 0,#88c95918,transparent 55%),linear-gradient(145deg,#0d2118,#0a1513)}
#home .homeChallengeTop{display:flex;align-items:center;justify-content:space-between;gap:5px}
#home .homeChallengeTop h2{color:#b6ff78;font-size:23px;line-height:1.25;margin:0}
#home .homeInfoButton{background:#091c15;border:1px solid #31563e;color:#cfdbd5;border-radius:9px;min-height:36px;padding:5px 8px;font-size:12px;cursor:pointer}
#home .homeChallengeIntro{color:#bacfc3;font-size:12px;line-height:1.4;margin:0}
#home .homeChallengeMain{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 8px;border:1px solid #274537;border-radius:10px;background:#07171180}
#home .homeChallengeRing{--home-progress:0%;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:conic-gradient(#b6ff78 var(--home-progress),#233c2e 0);box-shadow:0 0 15px #a7ff6620}
#home .homeChallengeRing:before{content:"";grid-area:1/1;width:44px;height:44px;border-radius:50%;background:#0c1b15}
#home .homeChallengeRing b{grid-area:1/1;z-index:1;font-size:16px;line-height:1.2;text-align:center;color:#efffea}
#home .homeChallengeRing.preview{background:#23382c;box-shadow:none}
#home .homeChallengeRing.preview b{font-size:11px;max-width:44px}
#home .homeChallengeTask{display:grid;gap:3px;min-width:0}
#home .homeChallengeTask>span,#home .homeChallengeTask small{font-size:11px;color:#b6cbbb;line-height:1.3}
#home .homeChallengeTask strong{font-size:14px;line-height:1.3}
#home .homeChallengeRead{min-height:44px;padding:8px 10px;font-size:12px;border-radius:8px;white-space:nowrap}
#home .homeChallengeStreak,#home .homeChallengeRewards{border-top:1px solid #274537;padding:8px 0 0}
#home .homeChallengeRewards{padding:9px 8px;background:#102a1938;border:1px solid #274537;border-radius:9px;margin-top:auto}
#home .homeChallengeLayerTitle{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
#home .homeChallengeLayerTitle .homeVisualIcon{width:18px;height:18px;color:#ffba42;flex:none;filter:drop-shadow(0 0 4px #ffa70045)}
#home .homeChallengeRewards .homeVisualIcon{color:#b6ff78}
#home .homeChallengeStreak .homeIcon-flame{fill:#ffba32;stroke:#ffe077;stroke-width:1;filter:drop-shadow(0 0 3px #ffdf78) drop-shadow(0 0 7px #ff851bbb)}
#home .homeChallengeLayerTitle b{font-size:12px;color:#dbeedc}
#home .homeChallengeLayerTitle small{margin-left:auto;font-size:11px;color:#9ab6a4}
#home .homeChallengeStreak{display:flex;align-items:center;gap:10px}
#home .homeStreakCopy{flex:none}
#home .homeStreakCopy p{margin:2px 0 0;font-size:11px;color:#c2d7cd;white-space:nowrap}
#home .homeStreakCopy strong{font-size:17px;color:#b6ff78}
#home .homeStreakDays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:6px 0;flex:1}
#home .homeStreakDays span{text-align:center;color:#acc1af;font-size:11px}
#home .homeStreakDay i{display:grid;place-items:center;width:16px;height:16px;margin:auto;border-radius:50%;background:#34453e;color:#899a90;font-size:11px;font-style:normal;line-height:1}
#home .homeStreakDay.complete i{background:#b6ff78;color:#17411a;box-shadow:0 0 7px #a4ff4938}
#home .homeStreakDay small{display:block;margin-top:3px;font-size:11px;white-space:nowrap}
#home .homeRewardTiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:6px}
#home .homeRewardTile{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:4px;align-items:center;min-width:0}
#home .homeRewardTile i{grid-row:1/3;width:22px;height:22px;display:grid;place-items:center;background:#23452a;border-radius:7px;color:#b6ff78}
#home .homeRewardTile .homeVisualIcon{width:17px;height:17px}
#home .homeRewardTile b,#home .homeRewardTile small{font-size:11px;line-height:1.4;overflow-wrap:anywhere}
#home .homeRewardTile b{color:#d8ebdd}#home .homeRewardTile small{color:#b4c8bd}
#home .homePlayGrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,11fr) minmax(0,7fr);gap:14px;margin-top:14px}
#home .homePlayCard{position:relative;min-width:0;min-height:180px;padding:15px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
#home .homePlayCopy{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0;align-self:stretch}
#home .homeDecorTitle{display:flex;align-items:center;gap:7px;white-space:nowrap}
#home .homeDecorTitle .homeVisualIcon{width:27px;height:27px;flex:none;filter:drop-shadow(0 0 6px currentColor)}
#home .homeDecorTitle h2{font-size:23px;line-height:1.3;margin:0}
#home .homeBadgeTitle{color:#b6ff78}#home .homeVipTitle{color:#ffdb7d}#home .homeStampTitle{color:#e9a2f9}
#home .homePlayCard p{font-size:13px;line-height:1.5;margin:0;color:#bbccc4}
#home .homePlayCard .btn{margin-top:auto;min-height:44px;border-radius:8px;padding:8px 13px;font-size:13px;white-space:nowrap}
#home .homeBadgeCard{background:radial-gradient(ellipse at 90% 10%,#599e4530,transparent 65%),#0c2118}
#home .homeVipCard{grid-template-columns:minmax(128px,1fr) minmax(100px,.9fr) auto;gap:8px;background:linear-gradient(150deg,#362d1945,transparent 45%,#8f6b1817 65%,transparent),#151711;border-color:#5e4b2e}
#home .homeStampCard{background:radial-gradient(ellipse at 90% 25%,#8e43bc38,transparent 65%),#1b1427;border-color:#51375f}
#home .homeBadgeShowcase,#home .homeStampShowcase{display:flex;gap:3px;align-items:center;position:absolute;right:12px;bottom:15px}
#home .homeBadgeShowcase .bf-badge-art{width:60px;height:60px;--bf-badge-size:60px}
#home .homeStampShowcase img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 0 9px #ad75d838)}
#home .homeBadgeCard .homePlayCopy,#home .homeStampCard .homePlayCopy{grid-column:1/-1}
#home .homeBadgeCard p,#home .homeStampCard p{max-width:100%}
#home .homeVipVisual{position:relative;min-width:0;isolation:isolate;padding:10px 2px}
#home .homeVipVisual:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse,#e6b74638,transparent 70%);filter:blur(5px);z-index:-1}
#home .homeVipVisualFace{aspect-ratio:1.55;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transform:rotate(-11deg) skewY(-3deg);border:1px solid #cda34b;border-radius:7px;background:linear-gradient(145deg,#82704422,transparent 40%,#dcc07312 61%,transparent 63%),repeating-linear-gradient(125deg,#ffffff03 0 1px,transparent 1px 8px),#101110;box-shadow:inset 0 0 0 3px #171913,0 0 16px #e8ba473b,3px 9px 14px #0009;color:#ffe296}
#home .homeVipVisualFace>.homeVisualIcon{width:29px;height:29px;fill:#b98932;filter:drop-shadow(0 1px 3px #ffc95680)}
#home .homeVipVisualFace strong{font-family:Georgia,serif;font-size:25px;line-height:1.05;letter-spacing:3px;text-shadow:0 1px 3px #000}
#home .homeVipVisualFace small{font-size:8px;letter-spacing:2px;color:#cdb373}
#home .homeVipTiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:200px}
#home .homeVipTile{display:grid;place-items:center;padding:3px;border:1px solid #72613655;border-radius:9px;background:#050c0d60}
#home .homeVipTile .vipBadge{width:54px;height:54px}
#home .homeBadgeCta{border-color:#355e45;color:#e0f7d5;background:#0c2219}
#home .homeVipCta{border-color:#d6a93d;color:#ffe299;background:linear-gradient(135deg,#3a2b0a,#15130d);box-shadow:0 0 15px #ffca5124}
#home .homeStampCta{border-color:#9164b5;color:#edc5ff;background:#251535}
#home .homeWelcome{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:9px 16px;min-height:64px;background:linear-gradient(90deg,#15371c,#0b1a15);border-color:#49762d}
#home .homeWelcomeCopy{display:flex;align-items:center;gap:12px;min-width:0}
#home .homeWelcomeCopy>.homeVisualIcon{width:36px;height:36px;color:#b6ff78;flex:none;filter:drop-shadow(0 0 9px #9fff7155)}
#home .homeWelcomeCopy p{display:grid;gap:2px;margin:0;line-height:1.35}
#home .homeWelcomeCopy strong{font-size:16px;color:#f3f9f0}
#home .homeWelcomeCopy em{color:#b6ff78;font-style:normal}
#home .homeWelcomeCopy mark{display:inline-block;color:#ffdb55;background:transparent;font-weight:900;white-space:nowrap}
#home .homeWelcomeCopy .homeVoucherHighlight{display:inline-block;margin-left:6px;padding:2px 8px;border:1px solid #dcbb57;border-radius:6px;background:linear-gradient(120deg,#615015,#352a0b);color:#fff0a6;font-weight:900;white-space:nowrap;box-shadow:0 0 12px #ffce4026}
#home .homeWelcomeCopy small{font-size:11px;color:#bbcfbe}
#home .homeWelcome .rewardCta{background:#b6ff78;color:#14200b;border-color:#b6ff78;border-radius:8px;min-height:44px;font-size:14px;white-space:nowrap;box-shadow:0 0 16px #aaff6630}
#home .section{margin-top:14px;padding-top:0}
#home .sectionHead{margin-bottom:8px;min-height:42px;gap:8px}
#home .sectionHead h2{font-size:22px;margin:0}
#home .sectionHead .kicker{display:none}
#home #ranking .rankingTabs button{min-height:40px}
#home #homeTopList .rankCard{flex:0 0 calc((100% - 48px)/5);min-width:210px;padding-left:0}
#home #homeTopList .rankContent{overflow:hidden;background:#0b181c;border:1px solid #29434a;border-radius:9px}
#home #homeTopList .coverMedia.rank{aspect-ratio:2/1;min-height:0;border:0;border-radius:0}
#home #homeTopList .workPad{padding:7px 10px}
#home #homeTopList h3{font-size:14px;line-height:1.4;min-height:0;margin:2px 0}
#home #homeTopList .genreLabel{font-size:11px}
#home #homeTopList .rankNumber{top:6px;left:7px;font-size:25px;line-height:1;color:#fff;-webkit-text-stroke:1px #102020;text-shadow:0 2px 5px #000}
#home #homeTopList .workHook,#home #homeTopList .rankingPendingNote{display:none}
#home .homeUpdatesGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#home .homeUpdatesGrid>.section{min-width:0;position:relative}
#home .homeUpdatesGrid .sectionHead{padding-right:94px;min-height:44px}
#home .homeUpdatesGrid .sectionHead .small{font-size:11px}
#home :is(#editorialCards,#recentCards){display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:100%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 5px;scrollbar-width:thin}
#home .homeUpdatesGrid .workCard{display:grid;grid-template-columns:138px minmax(0,1fr);align-items:center;min-height:102px;padding:8px;gap:12px;background:#0b181c;border:1px solid #29434a;border-radius:9px;scroll-snap-align:start}
#home .homeUpdatesGrid .coverMedia{width:138px;height:82px;min-height:0;aspect-ratio:auto;border-radius:6px;overflow:hidden}
#home .homeUpdatesGrid .workPad{padding:0;min-width:0}
#home .homeUpdatesGrid h3{font-size:16px;line-height:1.4;margin:0;min-height:0}
#home .homeUpdatesGrid .genreLabel{display:none}
#home .homeUpdatesGrid .workHook{display:block;font-size:12px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:3px 0}
#home .homeUpdatesGrid .updatedLabel{font-size:11px}
#home .homeUpdateControls{position:absolute;right:0;top:0;display:flex;gap:4px}
#home .homeUpdateControls button{min-width:44px;min-height:44px;padding:6px}
#home :is(button,[role=link]):focus-visible{outline:3px solid #d9ffab;outline-offset:2px}
.memberPlayText{line-height:1.8;font-size:15px}.memberPlayText+.btn{margin:12px 0}
.memberPlayGallery{display:flex;align-items:center;gap:10px;margin:14px 0}
.memberPlayGallery.badgeGallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:12px}
.memberPlayGallery figure{display:grid;justify-items:center;gap:5px;margin:0}
.memberPlayGallery figcaption{font-size:12px;text-align:center}
.memberPlayGallery .bf-badge-art{width:64px;height:64px;--bf-badge-size:64px}
.memberPlayGallery.stampGallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.memberPlayGallery.stampGallery img{width:54px;height:54px;max-width:100%;object-fit:contain}
@media(max-width:480px){.memberPlayGallery.stampGallery{grid-template-columns:repeat(2,minmax(0,1fr))}.memberPlayGallery.stampGallery img{width:62px;height:62px}}
.seasonActions [data-buy-season],#unlockBtn,#subscribeLocked,#accountSubscribe,.offerCard{border-color:#d9b04a;background:linear-gradient(135deg,#2c230c,#15181e);color:#ffe6a2;box-shadow:0 0 0 1px rgba(255,212,103,.11),0 0 14px rgba(255,203,83,.1)}
@media(max-width:1100px) and (min-width:701px){
 #home .homeVipCard{grid-template-columns:minmax(110px,1fr) minmax(65px,.7fr) auto}
 #home .homeVipVisualFace strong{font-size:19px}
 #home .homeVipTiles{width:164px;gap:4px}#home .homeVipTile .vipBadge{width:46px;height:46px}
 #home .homeBadgeShowcase .bf-badge-art{width:45px;height:45px;--bf-badge-size:45px}
 #home .homeStampShowcase img{width:38px;height:38px}
 #home .homeChallengeMain{grid-template-columns:55px minmax(0,1fr)}#home .homeChallengeRead{grid-column:1/-1}
}
@media(max-width:700px){
 .headerSearch{width:100%;max-width:210px;justify-self:end;grid-column:2/-1;grid-row:2}
 .top .topin{display:grid;grid-template-columns:112px minmax(0,1fr) 40px 34px;height:auto}
 .top .topin .brand{grid-column:1;grid-row:1}
 .top .topin .nav{display:contents}
 .top .topin .nav a{display:none}
 .top #subscribeTop{grid-column:1;grid-row:2;min-height:36px;font-size:12px;text-align:left;color:#ffda76}
 .top .topin .spacer{display:none}
 .top #welcomeTop,.top #pointsTopWrap{grid-column:2;grid-row:1;justify-self:end}
 .top #authTop{grid-column:3;grid-row:1}
 .top #menuBtn{grid-column:4;grid-row:1}
 .headerSearch input{font-size:12px;padding-left:9px}
 .headerSearch button{width:32px;min-height:36px;padding:6px}
 body:has(#home.active) .wrap{width:calc(100% - 16px)}
 .top .wrap{width:calc(100% - 16px)}
 .top .topin{gap:6px;padding:3px 0;min-height:50px}
 .top .brandLogo{width:112px;height:auto}
 .topin #welcomeTop{font-size:11px;padding:6px;min-height:44px}
 .topin #welcomeTop .homeRewardLabel>span{font-size:11px}
 .topin #welcomeTop .homeRewardLabel>strong{font-size:12px}
 .topin #authTop{padding:6px;font-size:12px;min-height:44px}
 .top .menuBtn{width:34px;min-width:34px;padding:4px;min-height:44px}
 .top .topin:has(.memberTop){grid-template-columns:92px minmax(0,1fr) 56px 34px}
 .top .topin:has(.memberTop) .brandLogo{width:92px}
 .top .topin #authTop.memberTop{grid-column:2/4;justify-self:stretch;min-width:0;max-width:100%}
 .top .topin:has(.memberTop) #pointsTopWrap{grid-column:2;grid-row:2;justify-self:start;max-width:100%;padding:6px}
 .top .topin:has(.memberTop) .headerSearch{grid-column:3/-1;max-width:100%}
 .top .topin:has(.memberTop) .topMemberIdentity{flex:1}
 .top .mobileMenu.show{position:absolute;top:100%;left:8px;right:8px;min-width:0}
 .missionTask .grow{min-width:0}
 .missionTaskHead{flex-direction:column;align-items:stretch}
 .missionTaskHead>span{white-space:normal;overflow-wrap:anywhere}
 #home .homeLeadGrid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:6px;margin-top:8px}
 #home .homeLeadGrid>.hero{min-height:242px}
 #home .heroContent{max-width:100%;padding:10px 8px;height:100%;display:flex;flex-direction:column;align-items:flex-start}
 #home .heroBadge{font-size:11px;padding:4px 6px;margin-bottom:5px}
 #home .hero .kicker{font-size:11px}
 #home .hero h1{font-size:23px;margin:5px 0}
 #home .heroHook{font-size:11px!important;line-height:1.4;margin:5px 0 8px}
 #home .hero .row{margin-top:auto;gap:5px;width:100%}
 #home .hero .btn{font-size:11px;padding:6px 5px;min-height:44px;flex:1 1 auto}
 #home .hero:after{background:linear-gradient(90deg,#050b0fbc,#050b0f10),linear-gradient(0deg,#050b0fb0,transparent 75%)}
 #home .homeChallenge{padding:6px;gap:3px}
 #home .homeChallengeTop{flex-wrap:nowrap;gap:3px}
 #home .homeChallengeTop h2{font-size:13px}
 #home .homeInfoButton{font-size:11px;padding:3px;min-height:32px;flex:0 0 32px;min-width:2.3em;line-height:1.15}
 #home .homeChallengeIntro{font-size:11px;line-height:1.3}
 #home .homeChallengeMain{grid-template-columns:36px minmax(0,1fr);gap:3px;padding:2px}
 #home .homeChallengeRing{width:34px;height:auto;min-height:34px;align-self:start}
 #home .homeChallengeRing:before{width:25px;height:25px}
 #home .homeChallengeRing b{font-size:12px}
 #home .homeChallengeRing.preview b{font-size:11px;max-width:28px}
 #home .homeChallengeTask>span{display:none}
 #home .homeChallengeTask strong{font-size:12px}
 #home .homeChallengeTask small{display:none}
 #home .homeChallengeRead{grid-column:1/-1;width:100%;padding:6px;min-height:44px;font-size:12px;white-space:normal}
 #home .homeChallengeStreak{padding:4px 0 0;display:block}
 #home .homeStreakCopy{display:flex;align-items:center;justify-content:space-between;gap:3px}
#home .homeStreakCopy p{font-size:11px}
 #home .homeStreakCopy .homeChallengeLayerTitle{flex-wrap:nowrap;white-space:nowrap}
 #home .homeStreakQualifier{display:none}
 #home .homeStreakCopy strong{font-size:13px}
 #home .homeChallengeLayerTitle{gap:3px}
 #home .homeChallengeLayerTitle b{font-size:11px;line-height:1.15}
 #home .homeChallengeLayerTitle .homeVisualIcon{width:14px;height:14px}
 #home .homeChallengeLayerTitle small{display:none}
 #home .homeStreakDays{display:grid;gap:2px;margin:4px 0 0}
 #home .homeStreakDay small{margin:3px auto 0;font-size:11px;line-height:1}
 #home .homeStreakDay small span{display:none}
 #home .homeStreakDays span{flex:1 1 1.8em;font-size:11px;line-height:1.1;padding:2px 0;white-space:nowrap}
 #home .homeChallengeRewards{padding:3px 2px}
 #home .homeChallengeRewards .homeChallengeLayerTitle small{display:none}
 #home .homeRewardTiles{grid-template-columns:1fr;gap:1px;margin-top:2px}
 #home .homeRewardTile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px;text-align:left}
 #home .homeRewardTile i{display:none}
 #home .homeRewardTile b{flex:1 1 4em;font-size:11px;line-height:1.25}
 #home .homeRewardTile small{font-size:11px;line-height:1.2;white-space:nowrap}
 #home .homePlayGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:8px}
 #home .homePlayCard{min-height:190px;padding:6px 5px;display:flex;flex-direction:column;gap:4px;align-items:stretch}
 #home .homePlayCopy{display:contents}
 #home .homeDecorTitle{gap:3px;white-space:normal;align-items:center}
 #home .homeDecorTitle .homeVisualIcon{width:18px;height:18px}
 #home .homeDecorTitle h2{font-size:13px;line-height:1.2}
 #home .homePlayCard p{font-size:11px;line-height:1.4}
 #home .homePlayCard .btn{order:3;width:100%;padding:5px 3px;font-size:11px;min-height:44px;margin-top:auto;white-space:normal}
 #home .homeBadgeShowcase,#home .homeStampShowcase{position:static;display:flex;justify-content:center;gap:0;margin:auto 0}
 #home .homeBadgeShowcase .bf-badge-art{width:32%;height:auto;aspect-ratio:1;--bf-badge-size:32px}
 #home .homeStampShowcase img{width:25%;height:auto;aspect-ratio:1}
 #home .homeVipCard{gap:3px}
 #home .homeVipVisual{width:57px;padding:2px 0;align-self:center}
 #home .homeVipVisualFace{border-radius:4px;gap:0}
 #home .homeVipVisualFace>.homeVisualIcon{width:14px;height:14px}
 #home .homeVipVisualFace strong{font-size:15px;letter-spacing:1px}
 #home .homeVipVisualFace small{display:none}
 #home .homeVipTiles{width:82%;gap:2px;margin:auto 0;align-self:center}
 #home .homeVipTile{padding:1px;border:0;background:transparent}
 #home .homeVipTile .vipBadge{width:100%;height:auto;aspect-ratio:1;min-width:0}
 #home .homeWelcome{margin-top:6px;padding:6px;gap:6px;min-height:76px}
 #home .homeWelcomeCopy{gap:6px}
 #home .homeWelcomeCopy>.homeVisualIcon{width:26px;height:26px}
 #home .homeWelcomeCopy strong{font-size:11px;line-height:1.35}
 #home .homeWelcomeCopy .homeVoucherHighlight{margin-left:0;padding:1px 5px}
 #home .homeWelcomeCopy small{font-size:11px;line-height:1.2}
 #home .homeWelcome .rewardCta{font-size:12px;padding:7px;max-width:108px;white-space:normal;min-width:94px}
 #home .section{margin-top:10px}
 #home .sectionHead{flex-wrap:wrap;gap:5px}
 #home .sectionHead h2{font-size:17px}
 #home #ranking .sectionHead{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;margin-bottom:6px}
 #home #ranking .rankingTabs{width:auto;margin:0;flex:none}
 #home #ranking .rankingTabs button{padding:5px 7px;font-size:11px}
 #home #ranking .rankingTabs button{min-height:40px}
 #home #homeTopList .rankCard{flex-basis:47%;min-width:150px}
 #home #homeTopList .coverMedia.rank{aspect-ratio:1.8/1}
 #home #homeTopList h3{font-size:13px}
 #home .homeUpdatesGrid{grid-template-columns:minmax(0,1fr);gap:0}
 #home .homeUpdatesGrid .sectionHead h2{font-size:18px}
 #home .homeUpdatesGrid .workCard{grid-template-columns:120px minmax(0,1fr);gap:10px}
 #home .homeUpdatesGrid .coverMedia{width:120px;height:78px}
}

/* Member backpack: mission vouchers remain visible after leaving the task page. */
.accountInventory{margin-top:16px}.accountInventory p{line-height:1.75}.inventorySummary{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.inventorySummary span{padding:8px 11px;border:1px solid var(--line);border-radius:12px;color:var(--muted)}.inventorySummary b{color:var(--text)}.inventoryList{list-style:none;margin:12px 0 16px;padding:0;border-top:1px solid var(--line)}.inventoryList li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.inventoryList li span:first-child{display:grid;gap:3px}.inventoryList small{color:var(--muted)}
.voucherTitle{display:flex;align-items:center;gap:12px}.voucherTitle img{width:52px;height:52px;object-fit:contain}.inventoryVoucherGrid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:12px 0 16px;padding:0}.inventoryVoucherGrid li{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#10151b}.inventoryVoucherGrid li>img{width:52px;height:52px;object-fit:contain}.inventoryVoucherGrid li>span:nth-child(2){display:grid;gap:3px;min-width:0}.inventoryVoucherGrid small{color:var(--muted)}.inventoryVoucherGrid .statusTag{grid-column:1/-1;justify-self:start}
@media(max-width:560px){.accountInventory .sectionHead{align-items:start}.inventoryList li{align-items:start}}
