:root{
  --bg:#06090e;--panel:rgba(10,15,22,.92);--soft-panel:rgba(255,255,255,.035);
  --line:rgba(226,232,238,.14);--line-strong:rgba(226,232,238,.28);
  --text:#f3f0e8;--soft:rgba(235,239,242,.66);--faint:rgba(235,239,242,.38);
  --gold:#e7ca89;--bright:#ffe9b8;--cyan:#70d7d0;--pink:#df86b0;--blue:#86aef0;
  --top:52px;--hero:118px;--tabs:44px;--footer:44px;
  color:var(--text);background:var(--bg);font-family:"Noto Serif SC","Songti SC",serif;
}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg)}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
#app{position:fixed;inset:0;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 72% 18%,rgba(49,96,104,.2),transparent 34%),linear-gradient(132deg,#091019,#06090e 58%,#0b0b12)}
.cosmos{position:absolute;inset:0;z-index:-1;overflow:hidden;background-image:radial-gradient(circle,rgba(255,255,255,.24) 0 1px,transparent 1.3px);background-size:73px 73px;opacity:.55}.cosmos>i{position:absolute;border:1px solid rgba(112,215,208,.12);border-radius:50%;transform:rotate(-15deg)}.cosmos>i:nth-child(1){width:74vw;aspect-ratio:1;right:-28vw;top:-57vw}.cosmos>i:nth-child(2){width:52vw;aspect-ratio:1;right:-12vw;top:-39vw;border-color:rgba(231,202,137,.13)}.cosmos>i:nth-child(3){left:22%;top:27%;width:76%;height:1px;border:0;border-radius:0;background:linear-gradient(90deg,transparent,rgba(112,215,208,.2),transparent);transform:rotate(-8deg)}.cosmos>i:nth-child(4){left:8%;top:52%;width:91%;height:1px;border:0;border-radius:0;background:linear-gradient(90deg,transparent,rgba(231,202,137,.15),transparent);transform:rotate(4deg)}
.topbar{position:absolute;z-index:20;left:0;right:0;top:0;height:calc(var(--top) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);background:rgba(5,8,12,.9);backdrop-filter:blur(16px)}
.icon-button{width:44px;height:44px;display:grid;place-items:center;flex:none;border:0;background:transparent}.icon-button svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.brand{min-width:160px;padding-right:17px;border-right:1px solid var(--line)}.brand small{display:block;color:var(--faint);font:400 7px "DM Mono",monospace;letter-spacing:.15em}.brand strong{display:block;margin-top:2px;font-size:14px;font-weight:500;letter-spacing:.12em}.season-clock{display:flex;align-items:baseline;gap:4px}.season-clock span{font-size:8px;color:var(--faint)}.season-clock b{font:500 18px "DM Mono",monospace;color:var(--gold)}.season-clock em{font-size:8px;font-style:normal;color:var(--soft)}.top-spacer{flex:1}.top-action{min-height:38px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:7px;background:var(--soft-panel);font-size:9px}.top-action b{min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:rgba(112,215,208,.16);color:var(--cyan);font:500 8px "DM Mono",monospace}
.season-hero{position:absolute;z-index:5;left:0;right:0;top:calc(var(--top) + env(safe-area-inset-top));height:var(--hero);padding:13px max(18px,env(safe-area-inset-right)) 10px max(18px,env(safe-area-inset-left));display:grid;grid-template-columns:minmax(270px,1.25fr) 112px minmax(210px,.8fr) minmax(230px,.9fr);align-items:center;gap:18px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(7,12,18,.88),rgba(12,26,31,.56),rgba(9,12,18,.88))}
.season-story span,.eyebrow{color:var(--gold);font:500 7px "DM Mono",monospace;letter-spacing:.2em}.season-story h1{margin:5px 0 4px;font-size:clamp(16px,1.8vw,24px);line-height:1.25;font-weight:500;letter-spacing:.04em}.season-story p{margin:0;color:var(--soft);font-size:8px;line-height:1.55}.level-orbit{position:relative;width:98px;height:98px;display:grid;place-content:center;text-align:center}.orbit-rings,.orbit-rings i{position:absolute;inset:0;border:1px solid rgba(112,215,208,.24);border-radius:50%}.orbit-rings{animation:turn 24s linear infinite}.orbit-rings i:nth-child(1){inset:8px;border-color:rgba(231,202,137,.23)}.orbit-rings i:nth-child(2){inset:18px;border-style:dashed}.orbit-rings i:nth-child(3){left:47px;right:auto;top:-3px;width:5px;height:5px;border:0;background:var(--gold);box-shadow:0 0 12px var(--gold)}.level-orbit span{position:relative;color:var(--faint);font:500 6px "DM Mono",monospace;letter-spacing:.12em}.level-orbit strong{position:relative;font:400 32px/1 "DM Mono",monospace;color:var(--bright)}.level-orbit small{position:absolute;right:18px;bottom:23px;color:var(--faint);font:7px "DM Mono",monospace}.progress-panel{min-width:0}.progress-head,.progress-foot{display:flex;justify-content:space-between;gap:8px}.progress-head{align-items:end}.progress-head span{font-size:9px}.progress-head b,.progress-foot b{font:500 8px "DM Mono",monospace}.progress-head b{color:var(--gold)}.progress-track{height:6px;margin:8px 0 7px;background:rgba(255,255,255,.08);overflow:hidden}.progress-track i{display:block;width:64%;height:100%;background:linear-gradient(90deg,var(--cyan),var(--gold));box-shadow:0 0 14px rgba(112,215,208,.42);transition:width .45s}.progress-foot{color:var(--faint);font-size:7px}.value-card{height:88px;padding:9px 10px 8px;border:1px solid rgba(231,202,137,.26);border-radius:9px;background:linear-gradient(120deg,rgba(231,202,137,.09),rgba(112,215,208,.045))}.value-card>small{display:block;color:var(--gold);font-size:7px}.value-card>strong{display:block;margin-top:3px;font-size:12px;font-weight:500}.value-card>p{margin:2px 0 7px;color:var(--soft);font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.value-card>button{width:100%;min-height:27px;padding:0 8px;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(231,202,137,.38);border-radius:6px;background:rgba(231,202,137,.11);font-size:8px}.value-card>button b{font:500 9px "DM Mono",monospace;color:var(--bright)}.value-card.paid{border-color:rgba(112,215,208,.32);background:rgba(112,215,208,.06)}.value-card.paid>small{color:var(--cyan)}
.section-tabs{position:absolute;z-index:14;left:0;right:0;top:calc(var(--top) + var(--hero) + env(safe-area-inset-top));height:var(--tabs);padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line);background:rgba(6,9,14,.88)}.section-tabs>button{position:relative;min-height:44px;padding:0 15px;border:0;background:transparent;color:var(--faint);font-size:9px}.section-tabs>button.active{color:var(--bright)}.section-tabs>button.active::after{content:"";position:absolute;left:13px;right:13px;bottom:-1px;height:2px;background:var(--gold);box-shadow:0 0 9px var(--gold)}.section-tabs>button b{min-width:15px;height:15px;margin-left:5px;padding:0 3px;display:inline-grid;place-items:center;border-radius:999px;background:rgba(223,134,176,.16);color:var(--pink);font:500 7px "DM Mono",monospace}.tab-spacer{flex:1}.section-tabs .claim-all{min-height:30px;border:1px solid rgba(231,202,137,.34);border-radius:6px;background:rgba(231,202,137,.09);color:var(--bright)}.section-tabs .claim-all::after{display:none}.section-tabs .claim-all:disabled{opacity:.35;cursor:not-allowed}
.view{position:absolute;z-index:6;left:0;right:0;top:calc(var(--top) + var(--hero) + var(--tabs) + env(safe-area-inset-top));bottom:calc(var(--footer) + env(safe-area-inset-bottom));display:none;overflow:hidden}.view.active{display:block}
#rewardsView{padding-left:105px}.track-labels{position:absolute;z-index:5;left:0;top:0;bottom:0;width:105px;display:grid;grid-template-rows:1fr 31px 1fr;border-right:1px solid var(--line);background:rgba(5,8,12,.9)}.track-labels>span{padding:8px 9px;display:flex;flex-direction:column;justify-content:center;font-size:9px}.track-labels small{display:block;margin-top:3px;color:var(--faint);font-size:7px}.track-labels .paid-label{color:var(--gold)}.track-labels .free-label{color:var(--cyan)}.track-labels .track-axis{padding:0;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--faint);font:500 7px "DM Mono",monospace}.reward-scroll{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:rgba(231,202,137,.25) transparent}.reward-track{width:max-content;min-width:100%;height:100%;display:flex;padding-right:45px}.reward-column{position:relative;width:112px;height:100%;display:grid;grid-template-rows:1fr 31px 1fr;border-right:1px solid rgba(255,255,255,.055)}.reward-cell{position:relative;margin:5px;min-height:0;padding:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:var(--soft-panel);text-align:center;transition:.2s}.reward-cell:hover{border-color:var(--line-strong);background:rgba(255,255,255,.055)}.reward-cell strong{margin-top:4px;font-size:8px;font-weight:500}.reward-cell small{margin-top:2px;color:var(--faint);font:6px "DM Mono",monospace}.reward-cell.locked{filter:saturate(.35);opacity:.52}.reward-cell.available{border-color:rgba(231,202,137,.54);background:rgba(231,202,137,.08);box-shadow:inset 0 0 16px rgba(231,202,137,.05)}.reward-cell.claimed{opacity:.5}.reward-cell.claimed::after{content:"已领取";position:absolute;right:3px;top:3px;color:var(--cyan);font:6px "DM Mono",monospace}.reward-cell.paid.available{border-color:rgba(223,134,176,.55);background:rgba(223,134,176,.08)}.reward-icon{position:relative;width:27px;height:27px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;color:var(--cyan);box-shadow:0 0 12px color-mix(in srgb,currentColor 30%,transparent)}.reward-icon::before{content:"";width:9px;height:9px;background:currentColor;transform:rotate(45deg)}.reward-icon.echo{color:#cc95d5}.reward-icon.echo::before{background:transparent;border:1px solid currentColor;border-radius:50% 50% 16% 50%}.reward-icon.invite{color:var(--gold);border-radius:4px}.reward-icon.invite::before{width:13px;height:8px;transform:none;clip-path:polygon(0 0,100% 0,50% 62%)}.reward-icon.anchor{color:var(--blue)}.reward-icon.anchor::before{background:transparent;border:1px solid currentColor}.reward-icon.film{color:var(--pink)}.reward-icon.film::before{width:11px;height:8px;transform:none;clip-path:polygon(0 0,100% 0,100% 70%,66% 70%,66% 100%,35% 70%,0 70%)}.reward-icon.scroll{color:#c8a7ef}.reward-icon.scroll::before{width:12px;height:13px;transform:none;border-radius:5px 0;background:currentColor}.reward-icon.pack{color:var(--soft)}.reward-icon.pack::before{width:11px;height:11px;transform:none;clip-path:polygon(50% 0,100% 30%,84% 100%,16% 100%,0 30%)}.level-node{display:grid;place-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--faint);font:500 8px "DM Mono",monospace}.reward-column.reached .level-node{color:var(--gold);background:rgba(231,202,137,.05)}.reward-column.current .level-node{color:#071014;background:var(--cyan);box-shadow:0 0 18px rgba(112,215,208,.45)}.reward-column.milestone{width:126px;background:linear-gradient(180deg,rgba(231,202,137,.025),transparent,rgba(112,215,208,.025))}.reward-column.milestone .level-node{color:var(--bright);border-color:rgba(231,202,137,.3)}.scroll-fade{position:absolute;z-index:4;top:0;bottom:0;width:36px;pointer-events:none}.scroll-fade.left{left:105px;background:linear-gradient(90deg,rgba(6,9,14,.9),transparent)}.scroll-fade.right{right:0;background:linear-gradient(-90deg,rgba(6,9,14,.9),transparent)}
.task-layout{height:100%;display:grid;grid-template-columns:255px 1fr}.task-summary{padding:16px 18px;border-right:1px solid var(--line);background:rgba(7,11,17,.78)}.task-summary h2,.materials-intro h2{margin:5px 0 5px;font-size:22px;font-weight:500}.task-summary>p,.materials-intro>p{margin:0;color:var(--soft);font-size:8px;line-height:1.65}.daily-ring{width:92px;height:92px;margin:12px auto;display:grid;place-content:center;text-align:center;border:1px solid rgba(112,215,208,.34);border-radius:50%;box-shadow:inset 0 0 28px rgba(112,215,208,.06)}.daily-ring strong{font:500 23px "DM Mono",monospace;color:var(--cyan)}.daily-ring span{color:var(--faint);font:6px "DM Mono",monospace}.task-switch{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:7px;overflow:hidden}.task-switch button{min-height:32px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--faint);font-size:8px}.task-switch button:last-child{border:0}.task-switch button.active{background:rgba(231,202,137,.1);color:var(--bright)}.task-list{min-width:0;padding:10px 15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:7px;overflow:auto}.task-card{min-height:69px;padding:9px 10px;display:grid;grid-template-columns:1fr auto;gap:5px 10px;border:1px solid var(--line);border-radius:8px;background:var(--soft-panel)}.task-card.done{opacity:.58}.task-card h3{margin:0;font-size:10px;font-weight:500}.task-card p{grid-column:1;margin:0;color:var(--faint);font-size:7px}.task-card .task-exp{grid-column:2;grid-row:1;color:var(--gold);font:500 7px "DM Mono",monospace}.task-progress{align-self:end;height:4px;background:rgba(255,255,255,.07)}.task-progress i{display:block;height:100%;background:var(--cyan)}.task-card button{grid-column:2;min-width:66px;min-height:27px;align-self:end;border:1px solid var(--line);border-radius:5px;background:rgba(255,255,255,.035);font-size:7px}.task-card button.ready{border-color:rgba(231,202,137,.4);color:var(--bright)}.task-card button:disabled{opacity:.45}
#materialsView.active{display:grid;grid-template-columns:minmax(270px,.72fr) 1.28fr}.materials-intro{padding:22px max(22px,4vw);border-right:1px solid var(--line);background:rgba(7,11,17,.72)}.materials-intro button{margin-top:16px;min-height:42px;padding:0 13px;display:flex;align-items:center;gap:24px;border:1px solid rgba(231,202,137,.38);border-radius:7px;background:rgba(231,202,137,.08);font-size:9px}.materials-intro button span{color:var(--gold)}.material-ledger{padding:12px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:7px;overflow:auto}.material-row{min-height:72px;padding:9px 11px;display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--soft-panel)}.material-row .reward-icon{width:33px;height:33px}.material-row strong,.material-row small{display:block}.material-row strong{font-size:10px;font-weight:500}.material-row small{margin-top:3px;color:var(--faint);font-size:7px}.material-row b{font:500 18px "DM Mono",monospace;color:var(--bright)}
.journey-footer{position:absolute;z-index:18;left:0;right:0;bottom:0;height:calc(var(--footer) + env(safe-area-inset-bottom));padding:0 max(14px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(14px,env(safe-area-inset-left));display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);background:rgba(5,8,12,.94)}.journey-footer>div span,.journey-footer>div b{display:block}.journey-footer>div span{color:var(--faint);font-size:7px}.journey-footer>div b{font:500 9px "DM Mono",monospace;color:var(--gold)}.journey-footer>p{flex:1;margin:0;color:var(--soft);font-size:8px}.journey-footer>button{min-width:154px;height:100%;padding:0 12px;border:0;border-left:1px solid var(--line);background:transparent;text-align:left}.journey-footer>button small,.journey-footer>button strong{display:block}.journey-footer>button small{color:var(--faint);font-size:7px}.journey-footer>button strong{margin-top:2px;color:var(--gold);font-size:9px;font-weight:500}.journey-footer>button:disabled{cursor:not-allowed;opacity:.5}
.scrim{position:fixed;inset:0;z-index:39;opacity:0;visibility:hidden;background:rgba(1,3,6,.78);backdrop-filter:blur(6px);transition:.2s}.scrim.open{opacity:1;visibility:visible}.modal{position:fixed;z-index:40;left:50%;top:50%;width:min(670px,calc(100vw - 30px));max-height:calc(100vh - 22px);padding:18px;overflow:auto;opacity:0;visibility:hidden;transform:translate(-50%,-47%) scale(.98);transition:.2s;border:1px solid var(--line-strong);border-radius:12px;background:linear-gradient(145deg,rgba(17,24,32,.99),rgba(7,10,16,.99));box-shadow:0 30px 110px #000}.modal.open{opacity:1;visibility:visible;transform:translate(-50%,-50%)}.modal-close{position:absolute;right:4px;top:3px}.modal .eyebrow{display:block}.modal h2{margin:6px 42px 4px 0;font-size:23px;font-weight:500}.modal p{margin:0;color:var(--soft);font-size:8px;line-height:1.65}.modal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px}.modal-card{min-height:72px;padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--soft-panel)}.modal-card strong,.modal-card small{display:block}.modal-card strong{font-size:9px;font-weight:500}.modal-card small{margin-top:4px;color:var(--faint);font-size:7px}.purchase-summary{margin-top:12px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(231,202,137,.25);background:rgba(231,202,137,.055)}.purchase-summary span{font-size:8px;color:var(--soft)}.purchase-summary b{font:500 20px "DM Mono",monospace;color:var(--bright)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.plain-button,.gold-button{min-height:42px;padding:0 15px;border-radius:7px;font-size:9px}.plain-button{border:1px solid var(--line);background:transparent}.gold-button{min-width:150px;border:1px solid rgba(231,202,137,.5);background:linear-gradient(100deg,rgba(231,202,137,.25),rgba(231,202,137,.08));color:#fff0ce}.bag-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:11px}.bag-item{padding:9px;display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;border:1px solid var(--line);border-radius:7px;background:var(--soft-panel)}.bag-item .reward-icon{width:29px;height:29px}.bag-item strong,.bag-item small{display:block}.bag-item strong{font-size:9px;font-weight:500}.bag-item small{margin-top:2px;color:var(--faint);font-size:7px}.bag-item b{font:500 15px "DM Mono",monospace}.toast{position:fixed;z-index:80;left:50%;bottom:calc(var(--footer) + 12px + env(safe-area-inset-bottom));max-width:420px;padding:8px 13px;opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:.2s;border:1px solid var(--line-strong);border-radius:7px;background:rgba(7,10,15,.97);font-size:9px}.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}
@keyframes turn{to{transform:rotate(345deg)}}
@media(max-width:980px){:root{--hero:106px}.season-hero{grid-template-columns:minmax(220px,1.15fr) 90px minmax(170px,.8fr) minmax(200px,.9fr);gap:10px;padding-top:9px;padding-bottom:8px}.level-orbit{width:86px;height:86px}.level-orbit small{right:13px;bottom:18px}.season-story h1{font-size:16px}.season-story p{display:none}.value-card{height:78px}.reward-column{width:102px}.task-layout{grid-template-columns:220px 1fr}}
@media(max-width:800px){:root{--top:48px;--hero:91px;--tabs:40px;--footer:40px}.topbar{gap:4px}.brand{min-width:112px;padding-right:7px}.brand small{display:none}.brand strong{font-size:12px}.season-clock span{display:none}.top-action span{display:none}.season-hero{grid-template-columns:minmax(190px,1.1fr) 76px minmax(150px,.8fr) minmax(172px,.9fr);gap:7px;padding:6px max(10px,env(safe-area-inset-right)) 5px max(10px,env(safe-area-inset-left))}.season-story span{font-size:6px}.season-story h1{margin-top:3px;font-size:13px}.level-orbit{width:71px;height:71px}.level-orbit strong{font-size:25px}.level-orbit small{right:7px;bottom:13px}.progress-head span{font-size:7px}.progress-track{margin:5px 0}.progress-foot span:last-child{display:none}.value-card{height:68px;padding:6px 7px}.value-card>strong{font-size:9px}.value-card>p{margin-bottom:4px;font-size:6px}.value-card>button{min-height:22px}.section-tabs{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}.section-tabs>button{min-height:40px;padding:0 9px;font-size:8px}.section-tabs>button.active::after{left:7px;right:7px}.reward-column{width:94px}.reward-cell{margin:3px}.reward-icon{width:22px;height:22px}.reward-cell strong{font-size:7px}.task-layout{grid-template-columns:185px 1fr}.task-summary{padding:10px 12px}.task-summary h2{font-size:17px}.task-summary>p{display:none}.daily-ring{width:68px;height:68px;margin:8px auto}.daily-ring strong{font-size:18px}.task-list{padding:7px;gap:5px}.task-card{min-height:60px;padding:6px 7px}.task-card p{display:none}.material-ledger{padding:7px;gap:5px}.material-row{min-height:58px;padding:6px}.materials-intro{padding:14px}.materials-intro h2{font-size:17px}.journey-footer{gap:9px}.journey-footer>p{font-size:7px}.journey-footer>button{min-width:124px}.modal{padding:13px}.modal h2{font-size:19px}.modal-grid{margin-top:8px}.modal-card{min-height:61px;padding:6px}}
@media(max-width:700px){.season-hero{grid-template-columns:minmax(178px,1fr) 68px minmax(145px,.86fr) minmax(155px,.9fr)}.season-story h1{font-size:12px}.level-orbit{width:64px;height:64px}.orbit-rings i:nth-child(2){inset:13px}.orbit-rings i:nth-child(3){left:30px}.progress-foot{display:none}.value-card>small{display:none}.section-tabs>button{padding:0 7px}.section-tabs>button b{display:none}.track-labels{width:88px}.track-labels>span{padding-left:7px;font-size:8px}#rewardsView{padding-left:88px}.scroll-fade.left{left:88px}.task-layout{grid-template-columns:165px 1fr}.task-switch button{font-size:7px}.task-list{grid-template-columns:1fr 1fr}.task-card h3{font-size:8px}.material-row strong{font-size:8px}}
@media(max-height:380px){:root{--hero:82px}.season-hero{padding-top:4px;padding-bottom:4px}.level-orbit{width:62px;height:62px}.value-card{height:60px}.section-tabs>button{min-height:38px}.reward-cell strong{margin-top:2px}.task-summary{padding-top:7px}.daily-ring{width:58px;height:58px;margin:5px auto}.task-card{min-height:53px}.modal{padding:11px}.modal h2{font-size:17px}.modal-grid{margin-top:6px}.modal-actions{margin-top:7px}.purchase-summary{margin-top:7px;padding:7px}}
/* Shared interaction floor: compact copy may remain small, controls may not. */
.top-action,.value-card>button,.section-tabs .claim-all,.reward-cell,.task-switch button,.task-card button,.materials-intro button,.plain-button,.gold-button{min-height:44px}
.top-action{min-width:44px}
.journey-footer,.journey-footer>button{min-height:44px}
@media(max-height:380px){.section-tabs>button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
