@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2) format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");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:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) 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:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/silkscreen-latin-400-normal-CtPo2yA5.woff2) format("woff2"),url(/assets/silkscreen-latin-400-normal-D0DfPJut.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:light;--night: #0b0d14;--night-2: #141826;--night-3: #1e2437;--paper: #f5f6fa;--paper-2: #e8eaf1;--paper-3: #d6dae6;--ink: #12141f;--ink-2: #565c72;--ink-3: #8f95aa;--sun: #ffc233;--sun-deep: #e2a300;--coral: #ff6b5b;--sky: #58b6ff;--leaf: #5ed18c;--grape: #b18cff;--radius-lg: 22px;--radius: 14px;--radius-sm: 9px;--shadow: 0 10px 30px rgba(11, 13, 20, .22), 0 2px 6px rgba(11, 13, 20, .12);--shadow-sm: 0 4px 14px rgba(11, 13, 20, .16);--font-display: "Bricolage Grotesque Variable", "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Nunito Variable", "Nunito", system-ui, -apple-system, sans-serif;--font-pixel: "Silkscreen", ui-monospace, monospace;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--dur: .22s;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--ground: var(--night);--ground-2: var(--night-2);--ground-3: var(--night-3);--on-ground: var(--paper);--on-ground-2: #c9cee0;--on-ground-3: var(--ink-3);--hero-fade: 11, 13, 20;font-family:var(--font-body);font-size:16px;line-height:1.45}:root[data-theme=light]{--ground: #ffffff;--ground-2: #eef1f7;--ground-3: #dde3ee;--on-ground: var(--ink);--on-ground-2: var(--ink-2);--on-ground-3: var(--ink-3);--hero-fade: 255, 255, 255;--shadow: 0 10px 30px rgba(18, 20, 31, .14), 0 2px 6px rgba(18, 20, 31, .08)}:root[data-theme=light] .page--canvas :is(.pill-nav,.tray,.btn--paper,.chip-hint,.callout,.maplibregl-ctrl-group){border:1px solid var(--paper-3)}@media(prefers-reduced-motion:reduce){:root{--dur: 0ms;--ease-spring: linear}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--ground);color:var(--on-ground);-webkit-font-smoothing:antialiased}a{color:inherit}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0}h1{font-size:clamp(34px,6vw,48px)}h2{font-size:22px;margin-bottom:8px}p{margin:.4em 0}.muted{color:var(--ink-2)}.pixel{font-family:var(--font-pixel);font-size:11px;letter-spacing:.02em;text-transform:uppercase}:focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:6px}.page{min-height:100%;display:flex;flex-direction:column}.page--canvas{position:relative;height:100%;overflow:hidden;background:var(--ground);color:var(--on-ground)}.page--paper{background:var(--paper);color:var(--ink)}.sheet{width:min(680px,100%);margin:0 auto;padding:8px 18px calc(56px + var(--safe-bottom));display:flex;flex-direction:column;gap:22px;animation:rise var(--dur) var(--ease-out) both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}section{display:flex;flex-direction:column;gap:10px}.card{background:#fff;border-radius:var(--radius-lg);padding:18px 20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:10px}.page--paper .card{border:1px solid var(--paper-3)}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;padding:calc(10px + var(--safe-top)) 12px 10px;position:relative;z-index:6;pointer-events:none}.page--canvas .topbar{position:absolute;left:0;right:0;top:0}.topbar>*{pointer-events:auto}.pill-nav{display:flex;align-items:center;gap:2px;padding:4px;background:var(--paper);color:var(--ink);border-radius:999px;box-shadow:var(--shadow)}.pill-nav a{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;text-decoration:none;font-weight:700;font-size:14px;color:var(--ink-2);transition:background var(--dur),color var(--dur),transform var(--dur) var(--ease-spring)}.pill-nav a:hover{color:var(--ink);background:var(--paper-2)}.pill-nav a.active{color:var(--ink);background:var(--sun)}.pill-nav a:active{transform:scale(.96)}.pill-nav .brand{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;color:var(--ink);padding-left:14px;font-size:16px}.pill-nav .brand svg{width:20px;height:20px}.pill-nav .badge-count{font-family:var(--font-pixel);font-size:10px;background:var(--coral);color:#fff;border-radius:999px;padding:3px 6px 2px;line-height:1}.topbar__right{display:flex;gap:8px;align-items:center;margin-left:auto}@media(max-width:640px){.pill-nav a span.label{display:none}.pill-nav .brand span.label{display:inline}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;border:0;background:var(--sun);color:var(--ink);font:700 15px/1 var(--font-body);cursor:pointer;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-spring),box-shadow var(--dur),background var(--dur),opacity var(--dur);white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}.btn--paper{background:var(--paper);color:var(--ink)}.btn--ghost{background:transparent;color:var(--on-ground);box-shadow:none;border:2px solid currentColor}.btn--ghost:hover{box-shadow:none}.btn--danger{background:var(--coral);color:#fff}.btn--icon{width:42px;padding:0}.btn svg{width:18px;height:18px}.btn--big{min-height:54px;padding:0 26px;font-size:17px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14px}label.check{flex-direction:row;align-items:center;gap:10px;font-weight:600}input[type=text],input[type=email],input:not([type]),select,textarea{background:#fff;color:var(--ink);border:2px solid var(--paper-3);border-radius:var(--radius-sm);padding:10px 12px;font:500 15px var(--font-body);transition:border-color var(--dur)}input:focus,textarea:focus,select:focus{border-color:var(--sky);outline:none}textarea{min-height:84px;resize:vertical}input[type=checkbox]{width:22px;height:22px;accent-color:var(--sun-deep)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:2px solid var(--paper-3);background:#fff;color:var(--ink);border-radius:999px;padding:8px 14px;font:700 14px var(--font-body);cursor:pointer;transition:all var(--dur) var(--ease-spring)}.chip[aria-checked=true]{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:scale(1.04)}.toggle{display:flex;flex-direction:row;align-items:center;gap:12px;cursor:pointer;font-weight:700;font-size:14px;white-space:nowrap}.toggle__text{flex:1;white-space:normal}.toggle{position:relative}.toggle input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}.toggle__track{width:42px;height:24px;border-radius:999px;background:var(--paper-3);position:relative;transition:background var(--dur)}.toggle__track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform var(--dur) var(--ease-spring)}.toggle input:checked+.toggle__track{background:var(--leaf)}.toggle input:checked+.toggle__track:after{transform:translate(18px)}.toggle input:focus-visible+.toggle__track{outline:3px solid var(--sky);outline-offset:2px}.gauge{display:inline-flex;align-items:center;gap:10px}.gauge__blocks{display:flex;gap:3px}.gauge__block{width:9px;height:14px;border-radius:2px;background:var(--paper-3);transition:background var(--dur)}.gauge--night .gauge__block{background:var(--ground-3)}.gauge__block.is-on{background:var(--sun)}.gauge__block.is-new{animation:pop .42s var(--ease-spring)}.gauge__block.is-frozen{background:var(--sky)}.gauge__label{font-family:var(--font-pixel);font-size:11px;text-transform:uppercase;white-space:nowrap;color:var(--ink-2)}.gauge--wide .gauge__block{width:14px;height:20px;border-radius:3px}@keyframes pop{0%{transform:scale(.4)}60%{transform:scale(1.35)}to{transform:scale(1)}}.globe{position:absolute;inset:0;user-select:none;-webkit-user-select:none;touch-action:none}.page--canvas .hero h1,.page--canvas .hero__lead{user-select:none;-webkit-user-select:none}.globe--hero{z-index:0}.hero{position:absolute;left:0;right:0;bottom:0;padding:48px 22px calc(22px + var(--safe-bottom));z-index:2;background:linear-gradient(to top,rgba(var(--hero-fade),.9) 18%,rgba(var(--hero-fade),0));pointer-events:none;display:flex;flex-direction:column;gap:10px}.hero>*{pointer-events:auto}.hero h1{font-size:clamp(40px,7vw,76px);font-weight:800;letter-spacing:-.04em;line-height:.95;color:var(--on-ground);animation:rise .5s var(--ease-out) both}.hero__lead{max-width:460px;font-size:16px;color:var(--on-ground-2);animation:rise .5s 80ms var(--ease-out) both}.hero__actions{animation:rise .5s .14s var(--ease-out) both;margin-top:4px}.hero__stats{font-family:var(--font-pixel);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--on-ground-3);display:flex;gap:14px;flex-wrap:wrap;align-items:center;animation:rise .5s .1s var(--ease-out) both}.hero__stats a{color:var(--on-ground-2);text-decoration:none;border-bottom:1px solid currentColor}.hero__alt{color:var(--on-ground-2);font-weight:700;text-decoration:none;border-bottom:2px solid transparent;transition:border-color var(--dur),color var(--dur)}.hero__alt:hover{color:var(--on-ground);border-color:var(--sun)}.hero__stats .gauge__label{color:var(--on-ground-2)}.hero__live{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-pixel);font-size:11px;text-transform:uppercase;color:var(--sky)}.hero__live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sky);box-shadow:0 0 #58b6ff99;animation:ping 2s infinite}@keyframes ping{0%{box-shadow:0 0 #58b6ff99}to{box-shadow:0 0 0 12px #58b6ff00}}.hero__note{color:var(--sun-deep);font-weight:700}.hero__footer{font-size:12px;color:var(--on-ground-3)}.hero__footer a{color:var(--on-ground-2)}.stats-strip{display:flex;gap:18px 28px;flex-wrap:wrap;align-items:flex-end;animation:rise .5s .1s var(--ease-out) both}.stat{display:flex;flex-direction:column;gap:2px}.stat__n{font-family:var(--font-pixel);font-size:22px;color:var(--paper);line-height:1}.stat__l{font-size:12px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.stat--ink .gauge__label{color:#c9cee0}.recent{display:flex;gap:10px;overflow-x:auto;padding:4px 0 6px;scrollbar-width:none;animation:rise .5s .16s var(--ease-out) both}.recent::-webkit-scrollbar{display:none}.recent__item{flex:none;display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--ink-3);font-family:var(--font-pixel);font-size:9px;text-transform:uppercase;transition:transform var(--dur) var(--ease-spring)}.recent__item:hover{transform:translateY(-3px) rotate(-2deg);color:var(--paper)}.recent__img{width:64px;height:64px;border-radius:10px;background:var(--ground-2);border:2px solid var(--ground-3);image-rendering:pixelated;object-fit:cover}.avatar-editor{display:flex;flex-direction:column;gap:12px}.map{position:absolute;inset:0}.map:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,rgba(var(--hero-fade),0) 55%,rgba(var(--hero-fade),.45))}.map--draw .maplibregl-canvas{cursor:crosshair}.map--report .maplibregl-canvas{cursor:cell}.maplibregl-ctrl-top-right{top:calc(66px + var(--safe-top));right:12px}.maplibregl-ctrl-group{background:var(--paper);border-radius:999px!important;box-shadow:var(--shadow)!important;overflow:hidden}.maplibregl-ctrl-group button{width:40px;height:40px;border:0!important}.maplibregl-ctrl-group button+button{border-top:0!important}.map-fabs{position:absolute;right:12px;bottom:calc(112px + var(--safe-bottom));display:flex;flex-direction:column;gap:10px;z-index:4}.tray{position:absolute;left:12px;right:12px;bottom:calc(12px + var(--safe-bottom));z-index:5;background:var(--paper);color:var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:12px 14px;display:flex;flex-direction:column;gap:8px;animation:tray-in .32s var(--ease-spring) both;max-width:720px;margin:0 auto}@keyframes tray-in{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}.tray__row{display:flex;align-items:center;gap:12px}.tray__status{font-family:var(--font-pixel);font-size:11px;text-transform:uppercase;color:var(--ink-2);min-height:14px}.tray__status.is-error{color:var(--coral)}.tray__spacer{flex:1}.chip-hint{position:absolute;left:50%;top:calc(70px + var(--safe-top));transform:translate(-50%);background:var(--paper);color:var(--ink);padding:8px 14px;border-radius:999px;z-index:4;font-weight:700;font-size:14px;box-shadow:var(--shadow);animation:rise var(--dur) var(--ease-out) both;white-space:nowrap}.chip-hint--corner{left:12px;top:auto;bottom:calc(112px + var(--safe-bottom));transform:none;font-family:var(--font-pixel);font-size:10px;text-transform:uppercase;color:var(--ink-2);padding:6px 10px}.btn--live{background:var(--sky);color:var(--ink)}.callout{display:flex;width:max-content;align-items:center;gap:6px;padding:3px;background:var(--paper);color:var(--ink);border-radius:12px;box-shadow:var(--shadow);font:700 12px/1 var(--font-body);white-space:nowrap;pointer-events:none;opacity:0;transform:translateY(6px) scale(.85);transition:opacity .26s var(--ease-spring),transform .26s var(--ease-spring);position:relative}.callout:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;background:var(--paper);transform:translate(-50%) rotate(45deg);border-radius:2px}.callout.is-in{opacity:1;transform:none}.callout.is-idle{opacity:.55}.callout.is-hidden{display:none}.callout__avatar{width:30px;height:30px;border-radius:9px;background-color:var(--paper-2);background-size:100% 100%;image-rendering:pixelated;flex:none}.callout__avatar--empty{background-image:linear-gradient(135deg,var(--sky),var(--grape))!important}.callout__name{font-family:var(--font-pixel);font-size:10px;text-transform:uppercase;letter-spacing:.02em}.callout--link{pointer-events:auto;cursor:pointer;border:0;font:inherit;appearance:none;-webkit-appearance:none}.callout--link .callout__avatar{transition:transform .16s var(--ease-spring),box-shadow .16s var(--ease-out)}.callout--link:hover .callout__avatar{transform:scale(1.12);box-shadow:0 0 0 2px var(--sun)}.callout--link:active .callout__avatar{transform:scale(.94)}.callout--link:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.maplibregl-marker{will-change:transform;transition:transform .32s var(--ease-out)}.globe-callouts{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}.callout--globe{position:absolute;left:0;top:0;transition:opacity .26s var(--ease-spring);transform:none;border:1px solid var(--paper-3)}.callout--globe.is-in{transform:none}.puck{width:46px;height:46px;border-radius:50%;border:3px solid #fff;box-shadow:var(--shadow-sm),inset 0 -6px #00000024;cursor:pointer;transition:transform var(--dur) var(--ease-spring);flex:none}.puck:hover{transform:scale(1.06) rotate(-6deg)}.puck:active{transform:scale(.94)}.palette{position:relative}.palette__sheet{position:absolute;bottom:58px;left:-14px;background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:12px;animation:tray-in .26s var(--ease-spring) both}.palette__grid{display:grid;grid-template-columns:repeat(16,22px);gap:3px}.palette__swatch{width:22px;height:22px;border-radius:6px;border:0;padding:0;cursor:pointer;transition:transform .14s var(--ease-spring)}.palette__swatch:hover{transform:scale(1.25);z-index:1;position:relative}.palette__swatch.is-selected{outline:3px solid var(--ink);outline-offset:1px;transform:scale(1.15)}.palette--inline .palette__grid{grid-template-columns:repeat(16,minmax(0,1fr));gap:4px}.palette--inline .palette__swatch{width:100%;aspect-ratio:1;height:auto}.timeline{display:flex;align-items:flex-end;gap:3px;flex:1;height:34px;cursor:pointer;touch-action:none;position:relative}.timeline__day{flex:1;min-width:4px;height:12px;border-radius:2px;background:var(--paper-3);transition:height var(--dur) var(--ease-spring),background var(--dur)}.timeline__day.has-snapshot{background:var(--grape)}.timeline__day.is-today{background:var(--sky)}.timeline__day.is-selected{height:30px;background:var(--sun)}.timeline input[type=range]{position:absolute;inset:0;opacity:0;width:100%;margin:0;cursor:pointer}.timeline__label{font-family:var(--font-pixel);font-size:11px;text-transform:uppercase;color:var(--ink-2);min-width:128px;text-align:right}.modal{position:fixed;inset:0;background:#0b0d148c;display:flex;align-items:flex-end;justify-content:center;z-index:10;padding:12px}.modal__card{background:var(--paper);color:var(--ink);border-radius:var(--radius-lg);padding:22px;width:min(460px,100%);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;animation:tray-in .32s var(--ease-spring) both;margin-bottom:var(--safe-bottom)}@media(min-width:640px){.modal{align-items:center}}.toast{position:fixed;left:50%;bottom:calc(96px + var(--safe-bottom));transform:translate(-50%);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:999px;z-index:20;box-shadow:var(--shadow);font-weight:700;animation:toast-in .38s var(--ease-spring) both;max-width:min(92vw,520px);text-align:center}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px) scale(.9)}to{opacity:1;transform:translate(-50%) scale(1)}}.profile__head{display:flex;gap:18px;align-items:center}.avatar{display:grid;grid-template-columns:repeat(16,1fr);background:var(--paper-2);border-radius:var(--radius);overflow:hidden;image-rendering:pixelated;border:3px solid #fff;box-shadow:var(--shadow-sm);flex:none}.avatar span{display:block;width:100%;aspect-ratio:1}.avatar-grid{display:grid;grid-template-columns:repeat(16,1fr);gap:1px;background:var(--paper-3);padding:1px;border-radius:var(--radius-sm);width:100%;max-width:352px;touch-action:none}.avatar-grid__px{aspect-ratio:1;border:0;padding:0;background:#fff;cursor:pointer}.stats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats li{background:#fff;border:1px solid var(--paper-3);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--ink-2);font-weight:700}.stats strong{font-family:var(--font-pixel);font-size:20px;color:var(--ink)}.badges{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.sticker{background:#fff;border:1px solid var(--paper-3);border-radius:var(--radius);padding:12px;display:flex;gap:10px;align-items:center;transition:transform var(--dur) var(--ease-spring);animation:rise var(--dur) var(--ease-out) both}.sticker:hover{transform:rotate(-2deg) scale(1.03)}.sticker__name{font-weight:800;font-size:14px;line-height:1.15}.sticker__date{font-family:var(--font-pixel);font-size:10px;text-transform:uppercase;color:var(--ink-3)}.sigil{display:grid;grid-template-columns:repeat(5,6px);grid-auto-rows:6px;gap:1px;padding:6px;border-radius:10px;background:var(--paper-2);flex:none}.sigil span{display:block;border-radius:1px}.empty{background:#fff;border:2px dashed var(--paper-3);border-radius:var(--radius);padding:22px;text-align:center;color:var(--ink-2);font-weight:600}.notifications{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.notifications li{background:#fff;border:1px solid var(--paper-3);border-radius:var(--radius);padding:14px 16px;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;animation:rise var(--dur) var(--ease-out) both}.notifications li.is-unread{border-left:5px solid var(--sky)}.notifications strong{font-weight:800}.notifications p{margin:0;color:var(--ink-2)}.notifications .when{font-family:var(--font-pixel);font-size:10px;text-transform:uppercase;color:var(--ink-3);grid-column:1}.notifications .btn{grid-row:1 / span 3}.signin{display:flex;flex-direction:column;gap:12px;max-width:420px}.legal p,.legal li{line-height:1.6}.legal h2{margin-top:12px}.danger{border:2px solid rgba(255,107,91,.35);border-radius:var(--radius);padding:12px 16px}.danger summary{cursor:pointer;color:var(--coral);font-weight:800}.warn{color:var(--sun-deep);font-weight:700}code{font-family:var(--font-pixel);font-size:12px}@media(max-width:480px){.hero{background:linear-gradient(to top,rgba(var(--hero-fade),.96) 40%,rgba(var(--hero-fade),0));padding-top:90px}.hero h1{font-size:44px}.tray .gauge__label{display:none}.tray .gauge__block{width:7px;height:12px}.tray .btn{padding:0 14px}.puck{width:40px;height:40px}.stats{grid-template-columns:repeat(3,1fr)}.palette__grid{grid-template-columns:repeat(16,17px)}.palette__swatch{width:17px;height:17px}.tray{padding:10px 12px}}
