@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-vietnamese-400-normal-Dpl4UHAZ.woff2) format("woff2"),url(/assets/barlow-vietnamese-400-normal-BFeobeCK.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-ext-400-normal-HxX4XjxC.woff2) format("woff2"),url(/assets/barlow-latin-ext-400-normal-CvBsJvxq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2) format("woff2"),url(/assets/barlow-latin-400-normal-fsAxiSwU.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-vietnamese-500-normal-zTViEIzf.woff2) format("woff2"),url(/assets/barlow-vietnamese-500-normal-GNfB7rCE.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-ext-500-normal-DOaysfXq.woff2) format("woff2"),url(/assets/barlow-latin-ext-500-normal-CJPcKP2Q.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2) format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-vietnamese-600-normal-DcjprdFV.woff2) format("woff2"),url(/assets/barlow-vietnamese-600-normal-CA_GiK2e.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-ext-600-normal-B8NK_A3D.woff2) format("woff2"),url(/assets/barlow-latin-ext-600-normal-DMVRjfRT.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2) format("woff2"),url(/assets/barlow-latin-600-normal-CNwfPWQD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2) format("woff2"),url(/assets/barlow-condensed-vietnamese-700-normal-DhIzd8Tb.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2) format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-vietnamese-800-normal-CpjukuLw.woff2) format("woff2"),url(/assets/barlow-condensed-vietnamese-800-normal-BZxKbt5V.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-ext-800-normal-DGNyg4u8.woff2) format("woff2"),url(/assets/barlow-condensed-latin-ext-800-normal-gY_0Gifi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-800-normal-BKzMuPgK.woff2) format("woff2"),url(/assets/barlow-condensed-latin-800-normal-e9GbPXiK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:italic;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-vietnamese-800-italic-DdsBx9lY.woff2) format("woff2"),url(/assets/barlow-condensed-vietnamese-800-italic-aDhyDJMT.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:italic;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-ext-800-italic-BbzArEj4.woff2) format("woff2"),url(/assets/barlow-condensed-latin-ext-800-italic-Ca7Cun8E.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:italic;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-800-italic-Cnej2eWp.woff2) format("woff2"),url(/assets/barlow-condensed-latin-800-italic-B5BpsPSY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--bg:#0E1117;--panel:#161A22;--panel-2:#1E232D;--line:#2B313D;--fg:#EEF1F6;--muted:#939BAB;--dim:#5C6474;--ink:#0E1117;--bad:#FF5D62;--ok:#3DDC84;--joker:#FFB52E;--tier:#8891A0;--tier-deep:#4A5160;--display:"Barlow Condensed","Arial Narrow","Roboto Condensed",sans-serif;--body:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}html{overflow-x:clip}body{margin:0;background:var(--bg);color:var(--fg);font:400 16px/1.5 var(--body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}h1,h2,p,ul,ol,fieldset,legend{margin:0;padding:0}ul,ol{list-style:none}fieldset{border:0;min-width:0}:focus-visible{outline:2px solid var(--fg);outline-offset:3px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app{max-width:540px;margin:0 auto;padding-top:max(18px,env(safe-area-inset-top,0px));padding-bottom:max(56px,env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:20px}.top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}.wordmark{display:flex;align-items:center;gap:8px;font:italic 800 20px/1 var(--display);text-transform:uppercase;letter-spacing:.04em}.wordmark img{flex:none;display:block}.wordmark b{font-weight:inherit;color:var(--tier)}.cols{display:flex;flex-direction:column;gap:32px}.col-main,.col-side{display:flex;flex-direction:column;gap:28px;min-width:0}.hero{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding-top:40px;isolation:isolate}.backdrop{position:absolute;z-index:-1;top:-96px;bottom:-28px;left:50%;width:100vw;transform:translate(-50%);pointer-events:none;overflow:hidden;-webkit-mask-image:linear-gradient(#000 64%,transparent);mask-image:linear-gradient(#000 64%,transparent)}.backdrop:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.5;animation:glow 7s ease-in-out infinite alternate;background:radial-gradient(95% 52% at 50% 0%,color-mix(in srgb,var(--tier-deep) 62%,transparent),transparent 74%),radial-gradient(closest-side at 50% 46%,color-mix(in srgb,var(--tier) 26%,transparent),transparent)}.backdrop[data-level="1"]:before{opacity:.75}.backdrop[data-level="2"]:before{opacity:1}.backdrop canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.fx{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.emblem{width:min(290px,74vw);aspect-ratio:1;filter:drop-shadow(0 14px 24px rgba(0,0,0,.5))}.emblem svg{display:block;width:100%;height:100%;overflow:visible}.emblem.is-thunk{animation:thunk .5s cubic-bezier(.2,1.5,.4,1)}.flash{font:600 12px/1 var(--body);letter-spacing:.22em;text-transform:uppercase;color:var(--fg);height:12px;opacity:0;margin-top:12px}.flash.is-on{animation:flash 2.6s ease both}.rank{font:italic 800 clamp(46px,15vw,66px)/.92 var(--display);text-transform:uppercase;letter-spacing:.01em;color:var(--tier);text-wrap:balance;margin-top:4px}.rank.is-up{animation:rankup .7s cubic-bezier(.2,1.3,.4,1)}.god{font:600 12.5px/1.3 var(--body);letter-spacing:.15em;text-transform:uppercase;margin-top:4px}.count{color:var(--muted)}.count b,.xp-text b,.hint b{color:var(--fg);font-weight:600}.xp{width:100%;max-width:360px;display:flex;flex-direction:column;gap:8px;margin-top:14px}.xp-bar{display:flex;gap:4px;height:10px}.xp-bar i{flex:1;border-radius:3px;background:var(--panel-2)}.xp-bar i.on{background:var(--tier)}.xp-bar.is-ok i.on{background:var(--ok)}.xp-text .ok{color:var(--ok)}.xp-bar.is-cont{gap:0;background:var(--panel-2);border-radius:5px;overflow:hidden}.xp-bar.is-cont i{flex:none;border-radius:5px;background:linear-gradient(90deg,var(--tier-deep),var(--tier))}.xp-text{font-size:14.5px;color:var(--muted)}.xp-text+.xp-text{margin-top:-4px}.today{display:flex;flex-direction:column;gap:12px}.check{display:flex;align-items:center;gap:16px;width:100%;padding:16px 18px;border-radius:18px;border:2px solid var(--tier);background:var(--panel);text-align:left;cursor:pointer;transition:transform .12s}.check:active{transform:scale(.985)}.check-box{flex:none;width:44px;height:44px;border-radius:12px;border:2.5px solid var(--tier);display:grid;place-items:center}.check-box svg{width:26px;height:26px;stroke:var(--tier);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .28s .05s}.check-label{display:flex;flex-direction:column;gap:2px;min-width:0}.check-title{font:800 27px/1.05 var(--display);text-transform:uppercase;letter-spacing:.02em}.check-date{font-size:14px;color:var(--muted)}.check[aria-pressed=true]{background:var(--tier);background:linear-gradient(135deg,var(--tier),color-mix(in srgb,var(--tier) 68%,var(--tier-deep)));border-color:transparent;color:var(--ink)}.check[aria-pressed=true] .check-box{background:var(--ink);border-color:var(--ink)}.check[aria-pressed=true] .check-box svg{stroke-dashoffset:0}.check[aria-pressed=true] .check-date{color:#0e1117bd}.hint{font-size:14.5px;color:var(--muted);padding-inline:4px}.hint[data-tone=danger]{color:var(--bad)}.late{align-self:flex-start;background:none;border:0;padding:4px;font-size:14.5px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--dim);cursor:pointer}.block{display:flex;flex-direction:column;gap:12px}h2{font:600 12px/1.2 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.note{font-size:13.5px;color:var(--muted)}.block-head{display:flex;align-items:center;justify-content:space-between;gap:6px 12px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--joker)}.chip svg{width:14px;height:14px;fill:currentColor}.chip.is-used{color:var(--dim)}.cal{display:flex;flex-direction:column;gap:6px}.dow,.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) 20px;gap:6px;align-items:center}.dow span{text-align:center;font-size:11px;color:var(--dim);letter-spacing:.08em}.week{border-radius:13px;outline:1px solid transparent;outline-offset:3px}.week.is-valid{outline-color:color-mix(in srgb,var(--ok) 55%,transparent);background:color-mix(in srgb,var(--ok) 9%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 9%,transparent)}.week-mark{display:grid;place-items:center;height:100%}.week-mark svg{width:16px;height:16px;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.week.is-valid .week-mark{color:var(--ok)}.week.is-failed .week-mark{color:var(--bad)}.week-mark svg{stroke:currentColor}.day{position:relative;aspect-ratio:1;border-radius:10px;border:1px solid var(--line);background:transparent;padding:0;display:grid;place-items:center;color:var(--dim);font-variant-numeric:tabular-nums}.day:disabled{opacity:1}.day:not(:disabled){cursor:pointer}.day-n{position:absolute;top:4px;left:6px;font-size:10.5px;line-height:1}.day svg{width:44%;height:44%;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.day.is-before,.day.is-future,.day.is-off{border-style:dashed}.day.is-rest{color:var(--muted);background:var(--panel)}.day.is-miss{border-color:var(--bad);color:var(--bad);background:#ff5d621a}.day.is-late{border:1.5px dashed var(--bad);color:var(--bad);animation:pulse 2s ease-in-out infinite}.day.is-joker{border-color:var(--joker);color:var(--joker);background:color-mix(in srgb,var(--joker) 12%,transparent)}.day.is-joker svg{fill:currentColor;stroke-width:1.5;width:50%;height:50%}.day.is-done{border-color:transparent;background:linear-gradient(140deg,var(--tier),color-mix(in srgb,var(--tier) 62%,var(--tier-deep)));color:var(--ink)}.day.is-done .day-n{color:#0e1117b8}.week.is-valid .day.is-done{background:linear-gradient(140deg,var(--ok),color-mix(in srgb,var(--ok) 70%,#0B6B3A))}.week.is-failed .day.is-done,.week.is-off .day.is-done{background:var(--panel-2);color:var(--muted)}.week.is-failed .day.is-done .day-n,.week.is-off .day.is-done .day-n{color:var(--dim)}.day.is-today{border:2px solid var(--tier)}.day.is-today.is-done{border-color:var(--fg)}.day.is-pending{animation:pulse 2s ease-in-out infinite}.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:var(--muted)}.legend li{display:inline-flex;align-items:center;gap:6px}.key{width:14px;height:14px;border-radius:4px;border:1px solid var(--line)}.key.k-done{background:var(--tier);border-color:transparent}.key.k-valid{background:var(--ok);border-color:transparent}.key.k-joker{border-color:var(--joker);background:color-mix(in srgb,var(--joker) 12%,transparent)}.key.k-rest{background:var(--panel)}.key.k-miss{border-color:var(--bad);background:#ff5d621a}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line)}.stat{display:flex;flex-direction:column;gap:2px;padding:14px 12px;min-width:0}.stat:first-child{padding-left:0}.stat+.stat{border-left:1px solid var(--line)}.stat-n{font:700 34px/1 var(--display);font-variant-numeric:tabular-nums}.stat-l{font-size:12.5px;color:var(--muted)}.stat-s{font-size:12.5px;font-weight:600}.ladder{display:flex;flex-direction:column}.ladder li{border-bottom:1px solid var(--line)}.ladder li:last-child{border-bottom:0}.rung{display:grid;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:8px 0;background:none;border:0;text-align:left;cursor:pointer}.rung-emblem svg{display:block;width:60px;height:60px;overflow:visible}.rung-body{display:flex;flex-direction:column;min-width:0}.rung-name{font:700 21px/1.1 var(--display);text-transform:uppercase;letter-spacing:.03em;color:var(--c)}.rung-min{font-size:13px;color:var(--muted)}.rung-state{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.rung.is-locked .rung-emblem{filter:grayscale(1) brightness(.72);opacity:.6}.rung.is-locked .rung-name{color:var(--dim)}.rung.is-current{width:calc(100% + 20px);margin-inline:-10px;padding-inline:10px;border-radius:12px;background:var(--panel)}.rung.is-current .rung-state{color:var(--c)}.rules p{font-size:14.5px;color:var(--muted);max-width:62ch}.seg{display:flex;flex-direction:column;gap:8px;margin-top:4px}.seg legend{font-size:14.5px;margin-bottom:8px}.seg-row{display:inline-flex;align-self:flex-start;border:1px solid var(--line);border-radius:12px;overflow:hidden}.seg-row label{position:relative;display:block}.seg-row input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.seg-row span{display:grid;place-items:center;min-width:54px;height:44px;font:700 21px/1 var(--display);color:var(--muted)}.seg-row label+label span{border-left:1px solid var(--line)}.seg-row input:checked+span{background:var(--tier);color:var(--ink)}.seg-row input:focus-visible+span{outline:2px solid var(--fg);outline-offset:-4px}.wipe{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:8px}.btn{min-height:44px;padding:8px 16px;border-radius:12px;border:1px solid var(--line);background:transparent;font-size:14px;color:var(--muted);cursor:pointer}.btn:disabled{opacity:.35;cursor:default}.btn.is-bad{border-color:var(--bad);color:var(--bad)}.pv{width:min(420px,calc(100% - 32px));max-height:calc(100% - 32px);padding:50px 20px 20px;border:1px solid var(--line);border-radius:24px;background:var(--bg);color:var(--fg);text-align:center;overflow:hidden auto}.pv[open]{display:flex;flex-direction:column;align-items:center;gap:6px}.pv::backdrop{background:#040609d6}.pv:before{content:"";position:absolute;left:50%;top:0;width:100%;aspect-ratio:1;transform:translate(-50%);background:radial-gradient(closest-side,var(--tier),transparent);opacity:.22;pointer-events:none}.pv>*{position:relative}.pv .fx{position:absolute}.pv .emblem{margin-bottom:14px}.pv-div{margin-top:10px;align-self:center}.pv-div span{min-width:50px;height:38px;font-size:18px}.seg .note{margin-top:2px}.pv-min{color:var(--muted);font-size:14.5px}.pv-nav{display:flex;gap:10px;margin-top:16px}.pv-nav .btn{color:var(--fg)}.pv-arrow{width:48px;padding:0;font:700 24px/1 var(--display)}@keyframes glow{0%{filter:brightness(.82)}to{filter:brightness(1.18)}}@keyframes thunk{0%{transform:scale(1)}35%{transform:scale(1.09)}to{transform:scale(1)}}@keyframes rankup{0%{transform:scale(.72);opacity:0}to{transform:scale(1);opacity:1}}@keyframes flash{0%{opacity:0;transform:translateY(6px)}12%,80%{opacity:1;transform:none}to{opacity:0}}@keyframes pulse{0%,to{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 0 4px #ffffff1f}}@keyframes blink{50%{opacity:.35}}@media(min-width:920px){.app{max-width:1040px;padding-top:max(32px,env(safe-area-inset-top,0px));padding-bottom:72px}.cols{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:72px;align-items:start}.col-main{position:sticky;top:calc(env(safe-area-inset-top,0px) + 28px)}.backdrop{left:-28px;right:-28px;top:-28px;bottom:-20px;width:auto;transform:none;border-radius:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.flash.is-on{opacity:1}}.sync{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted)}.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--dim)}.sync[data-state=saved] .sync-dot{background:var(--ok)}.sync[data-state=saving] .sync-dot,.sync[data-state=loading] .sync-dot{background:var(--muted);animation:blink 1s infinite}.sync[data-state=offline] .sync-dot{background:var(--bad)}.account-mail{color:var(--fg);font-weight:600;overflow-wrap:anywhere}.auth-main{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:380px;margin:0 auto;padding-top:28px}.auth-emblem{width:min(190px,48vw)}.auth-pitch{text-align:center;color:var(--muted);max-width:30ch;text-wrap:balance}.auth-form{display:flex;flex-direction:column;gap:14px;width:100%;margin-top:10px}.auth-title{font:800 27px/1.05 var(--display);letter-spacing:.02em;text-transform:uppercase;color:var(--fg)}.field{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}.field input{font:inherit;font-size:16px;color:var(--fg);background:var(--panel);border:1px solid var(--line);border-radius:12px;min-height:50px;padding:10px 14px;width:100%}.field input:focus-visible{outline:2px solid var(--tier);outline-offset:1px;border-color:transparent}.cta{min-height:54px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--tier),color-mix(in srgb,var(--tier) 68%,var(--tier-deep)));color:var(--ink);font:800 22px/1 var(--display);letter-spacing:.03em;text-transform:uppercase;cursor:pointer}.cta:disabled{opacity:.6;cursor:default}.auth-msg{font-size:14.5px;color:var(--muted)}.auth-msg.is-bad{color:var(--bad)}.auth-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px}.auth-links .late{align-self:auto}.avatar{display:block;flex:none;width:54px;aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--panel);border:2px solid var(--c,var(--line))}.avatar svg{display:block;width:100%;height:100%}.rank-card{position:relative;display:flex;align-items:center;gap:12px;min-height:98px;padding:10px 6px 10px 14px;border-radius:18px;overflow:hidden;border:1px solid color-mix(in srgb,var(--c1) 34%,var(--line));background:linear-gradient(100deg,color-mix(in srgb,var(--c2) 36%,var(--ink)),var(--panel) 72%)}.rank-card[data-div="1"]{border-color:color-mix(in srgb,var(--c1) 70%,var(--line))}.rank-card[data-div="2"],.rank-card[data-top]{border-color:var(--c1);box-shadow:0 0 0 3px var(--bg),0 0 0 4px color-mix(in srgb,var(--c1) 60%,transparent);margin:4px}.rank-card[data-shine]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(105deg,transparent 42%,color-mix(in srgb,var(--c1) 20%,transparent) 50%,transparent 58%) no-repeat;background-size:250% 100%;animation:shine-sweep 5.5s ease-in-out infinite}.rank-card[data-top]:after{background-image:linear-gradient(105deg,transparent 38%,color-mix(in srgb,var(--c1) 34%,transparent) 50%,transparent 62%);animation-duration:4s}@keyframes shine-sweep{0%{background-position:100% 0}60%,to{background-position:0% 0}}.has-shine{position:relative}.emblem-shine{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;background:linear-gradient(105deg,transparent 45%,rgba(255,255,255,.9) 50%,transparent 55%) no-repeat;background-size:250% 100%;mix-blend-mode:overlay;animation:shine-sweep 5.5s ease-in-out infinite}.rc-body{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.rc-pseudo{font-size:13px;font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-rank{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;font:italic 800 clamp(24px,7.4vw,30px)/1 var(--display);text-transform:uppercase;letter-spacing:.03em;color:var(--c1)}.rc-div{font-style:normal;font-size:.7em;color:var(--fg)}.rc-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12.5px;color:var(--muted)}.rc-pips{display:inline-flex;gap:5px;padding-inline:2px}.rc-pips i{width:7px;height:7px;transform:rotate(45deg);border:1.5px solid var(--c1)}.rc-pips i.on{background:var(--c1)}.rc-emblem{flex:none;width:86px;height:86px}.rc-emblem svg{display:block;width:100%;height:100%;overflow:visible}.profile-edit{display:flex;flex-direction:column;gap:22px;margin-top:6px}.profile-edit[hidden]{display:none}.profile-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.profile-form .field{flex:1 1 200px}.profile-form .btn{min-height:50px;color:var(--fg)}.avatars{display:flex;flex-direction:column;gap:10px}.avatars legend{font-size:14.5px;margin-bottom:8px}.avatars .btn{align-self:flex-start}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:12px 6px}.avatar-pick{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;min-height:44px;padding:4px 0;border:0;background:none;cursor:pointer;border-radius:12px}.avatar-pick .avatar{width:56px}.avatar-pick[aria-pressed=true] .avatar{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--fg)}.avatar-pick:disabled{cursor:default}.avatar-pick:disabled .avatar{filter:grayscale(1);opacity:.32;border-color:var(--line)}.avatar-lock{position:absolute;top:22px;left:50%;width:22px;height:22px;margin-left:-11px;fill:none;stroke:var(--fg);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.avatar-lock rect{fill:var(--bg)}.avatar-name{font-size:11.5px;line-height:1.15;color:var(--muted);text-align:center;overflow-wrap:anywhere}.avatar-pick[aria-pressed=true] .avatar-name{color:var(--fg);font-weight:600}@media(prefers-reduced-motion:reduce){.rank-card[data-shine]:after,.emblem-shine{animation:none;background-position:100% 0}}.rank-card[data-top] .rc-emblem{width:70px;height:70px;margin:8px 16px 8px 2px}.friend-code{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.friend-code b{font:700 30px/1 var(--display);letter-spacing:.12em;color:var(--fg)}.btn.is-ok{border-color:var(--ok);color:var(--ok)}.requests{display:flex;flex-direction:column;gap:8px}.requests li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px}.req-name{flex:1 1 150px;min-width:0;font-size:14.5px;color:var(--muted);overflow-wrap:anywhere}.req-name b{color:var(--fg)}.board{display:flex;flex-direction:column;gap:10px}.board li{display:flex;align-items:flex-start;gap:6px}.board-pos{flex:none;width:24px;padding-top:38px;text-align:center;font:700 22px/1 var(--display);color:var(--muted)}.board li.is-me .board-pos{color:var(--fg)}.board-card{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.board-more summary{display:inline-flex;align-items:center;min-height:36px;padding:0 6px;font-size:13px;color:var(--muted);cursor:pointer}.board-actions{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 8px}[hidden]{display:none!important}.fold-head button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;text-align:left;cursor:pointer}.fold-head svg{flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}.fold-head button[aria-expanded=true] svg{transform:rotate(180deg)}.fold{gap:4px;border-top:1px solid var(--line);padding-top:4px}.fold-body{display:flex;flex-direction:column;gap:12px;padding-bottom:8px}.app.has-tabs{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}.tab-page{display:flex;flex-direction:column;gap:28px;width:100%;max-width:540px;margin:0 auto}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:center;border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.tabbar ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:540px}.tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-height:58px;padding:8px 2px 7px;border:0;background:none;font:600 11.5px/1 var(--body);color:var(--muted);cursor:pointer}.tabbar button[aria-current=page]{color:var(--fg)}.tabbar button[aria-current=page] .tab-icon:after{content:"";position:absolute;left:50%;top:-9px;width:22px;height:3px;margin-left:-11px;border-radius:2px;background:var(--tier)}.tab-icon{position:relative;display:block;width:24px;height:24px}.tab-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.tab-dot{position:absolute;top:-2px;right:-5px;width:10px;height:10px;border-radius:50%;background:var(--bad);border:2px solid var(--bg)}.theme-list{display:flex;flex-direction:column}.theme-row{display:flex;align-items:center;gap:12px;min-height:68px;padding:8px 0;border-bottom:1px solid var(--line)}.theme-row:last-child{border-bottom:0}.theme-emblem{flex:none;width:52px;height:52px}.theme-emblem svg{display:block;width:100%;height:100%;overflow:visible}.theme-lock{display:grid;place-items:center;border:1px dashed var(--line);border-radius:50%}.theme-lock svg{width:22px;height:22px;fill:none;stroke:var(--dim);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.theme-name{flex:1;min-width:0;font-weight:600;color:var(--fg)}.theme-row.is-locked .theme-name{color:var(--muted)}.theme-state{flex:none;font-size:13px;color:var(--muted)}.theme-row[aria-current=true] .theme-state{color:var(--tier);font-weight:600}@media(min-width:920px){.app.has-tabs{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}}.e-spin,.e-spin-r,.e-orbit{transform-origin:100px 90px}.e-spin{animation:spin 80s linear infinite}.e-spin-r{animation:spin 50s linear infinite reverse}.e-orbit{animation:spin 16s linear infinite}.e-pulse,.e-eye{animation:epulse 3s ease-in-out infinite}.e-flk{transform-box:fill-box;transform-origin:50% 100%;animation:eflk 1.6s ease-in-out infinite}.e-bolt{animation:ebolt 2.8s linear infinite}.e-arc{opacity:0;animation:earc 3.4s linear infinite}.e-flap{transform-origin:143px 88px;animation:eflap 2.6s ease-in-out infinite alternate}.e-sway{animation:esway 3s ease-in-out infinite alternate}.e-twinkle,.e-pump{transform-box:fill-box;transform-origin:50% 50%}.e-twinkle{animation:etw 2.4s ease-in-out infinite}.e-pump{animation:epump 1.3s ease-in-out infinite alternate}.e-rise{animation:erise 3.2s linear infinite}.e-wave{animation:ewave 3s linear infinite}.e-breathe{animation:ebreathe 3.8s ease-in-out infinite alternate}@keyframes spin{to{transform:rotate(360deg)}}@keyframes epulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes eflk{0%,to{transform:scale(1)}30%{transform:scale(.93,1.14)}62%{transform:scale(1.05,.9)}}@keyframes ebolt{0%,3%{opacity:1}5%{opacity:.4}8%,50%{opacity:1}53%{opacity:.5}56%,to{opacity:1}}@keyframes earc{0%,7%{opacity:1}8%,to{opacity:0}}@keyframes eflap{0%{transform:rotate(4deg)}to{transform:rotate(-7deg)}}@keyframes esway{0%{transform:rotate(-5deg)}to{transform:rotate(5deg)}}@keyframes etw{0%,to{opacity:.15;transform:scale(.55)}50%{opacity:1;transform:scale(1.15)}}@keyframes epump{0%{transform:scale(1)}to{transform:scale(1.13)}}@keyframes erise{0%{transform:translateY(0);opacity:0}15%{opacity:1}to{transform:translateY(-34px);opacity:0}}@keyframes ewave{to{transform:translate(-18.4px)}}@keyframes ebreathe{0%{transform:translateY(.6px)}to{transform:translateY(-.9px)}}@media(prefers-reduced-motion:reduce){.e-arc{opacity:.75}}
