.badge{--ink:#f2ead8;--shade:#1d1b1a;--warm:#f4b860;--coral:#e8684a;--glow:#fbe3b0;cursor:pointer;-webkit-tap-highlight-color:transparent;background:radial-gradient(circle at 45% 40%,#34312e 0%,#242220 55%,#171615 100%);border:0;border-radius:50%;place-items:center;width:64px;height:64px;padding:0;transition:box-shadow .4s;display:grid;position:relative;box-shadow:0 6px 18px -6px #0009,0 0 0 1px #f2ead814}.badge:hover,.badge.is-lit{box-shadow:0 6px 18px -6px #0009,0 0 0 1px #f2ead81f,0 0 22px #f4b86059}.badge:focus-visible{outline:2px solid var(--warm);outline-offset:3px}.badge__art{width:87.5%;height:87.5%;display:block;overflow:visible}.badge .ic-ring{fill:none;stroke:var(--ink);stroke-width:2.6px;stroke-dasharray:60 1.5 90 2 75 1;opacity:.75;transition:stroke .4s}.badge .ic-fill{fill:var(--ink);transition:fill .4s}.badge .ic-line,.badge .ic-hole-line{fill:none;stroke:var(--ink);stroke-width:2.4px;stroke-linecap:round;transition:stroke .4s}.badge .ic-thick{stroke-width:9px}.badge .ic-bold{stroke-width:5px}.badge .ic-thin{stroke-width:1.4px}.badge .ic-dashed{stroke-dasharray:2.5 4}.badge .ic-wave{stroke-width:3px;opacity:var(--rest);transition:stroke .5s,opacity .5s}.badge .ic-hole{fill:var(--shade)}.badge .ic-hole-line{stroke-width:1.6px}.badge .ic-face{stroke:var(--shade);stroke-width:1.4px}.badge .ic-face-line{fill:none;stroke:var(--shade);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.badge .ic-stripe{fill:var(--ink);opacity:var(--rest);transition:fill .5s,opacity .5s}.badge .ic-spin{transform-origin:0 0}.badge .ic-fill{fill:var(--stripe,var(--warm))}.badge .ic-line{stroke:var(--stripe,var(--warm))}.badge .ic-hole-line{stroke:var(--stripe,var(--ink))}.badge [style*=--neon]{filter:drop-shadow(0 0 2.5px var(--neon))}.badge .ic-line.ic-accent{fill:none;stroke:var(--coral)}.badge .ic-wave{opacity:1}.badge .ic-face{fill:var(--glow)}.badge .ic-accent{fill:var(--coral)}.badge .ic-stripe{fill:var(--stripe);opacity:1}:is(.badge:hover,.badge.is-lit) .ic-ring{stroke:var(--ink)}:is(.badge:hover,.badge.is-lit) .ic-spin{animation:24s linear infinite badge-spin}@keyframes badge-spin{to{transform:rotate(-360deg)}}@media (prefers-reduced-motion:reduce){.badge,.badge *{transition:none!important;animation:none!important}}.devmenu{--dm-ring-color:#f2ead8;--dm-surface:#fdfbf5;--dm-ink:#0a0f1a;--dm-muted:#475467;--dm-accent:#e4572e;--dm-credit:#7d8db0;--edge:color-mix(in srgb, var(--dm-ink) 24%, transparent);--edge-hover:#e4572e;--edge-on:#10a437;--radius:12px;--gap:1vw;--dm-right:var(--gap);right:var(--dm-right);bottom:var(--gap);z-index:1000;align-items:flex-end;gap:var(--gap);-webkit-tap-highlight-color:transparent;flex-direction:column;font-family:IBM Plex Mono,ui-monospace,monospace;display:flex;position:fixed}.devmenu__toggle.badge .ic-ring{stroke:var(--dm-ring-color);stroke-dasharray:48 12 32 12 70 12 38 12 38 12;transform-origin:0 0}.devmenu__ring{pointer-events:none;position:absolute}.devmenu__toggle.badge .ic-spin{animation:none}.devmenu__toggle.badge:is(:hover,:focus-visible,.is-lit){box-shadow:0 6px 18px -6px #0009, 0 0 0 1px color-mix(in srgb, var(--dm-ring-color) 45%, transparent), 0 0 22px color-mix(in srgb, var(--dm-ring-color) 35%, transparent)}.devmenu__toggle.badge:focus-visible{outline-color:var(--dm-ring-color)}.devmenu__corner{--corner-right:max(3px, env(safe-area-inset-right));--corner-bottom:max(3px, env(safe-area-inset-bottom));--corner-duration:8s;right:var(--corner-right);bottom:var(--corner-bottom);width:calc(64px + 10px + var(--dm-right) - var(--corner-right));height:calc(64px + 10px + var(--gap) - var(--corner-bottom));box-sizing:border-box;color:#fff;opacity:0;pointer-events:none;border:0 solid;border-width:1px 0 0 1px;border-top-left-radius:24px;transition:color .4s;position:fixed}.devmenu__corner:before{content:"";border-top-left-radius:inherit;border:0 solid;border-width:2px 0 0 2px;position:absolute;inset:-1px 0 0 -1px;mask-image:radial-gradient(at 0 0,#000,#0000 85%)}.devmenu__corner-tail{pointer-events:none;animation-duration:var(--corner-duration);background:currentColor;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:both;display:block;position:absolute}.devmenu__corner-tail--bottom{transform-origin:100%;width:min(45vw,440px);height:1px;animation-name:devmenu-edge-left;bottom:0;right:100%;mask-image:linear-gradient(270deg,#000,#0000)}.devmenu__corner-tail--right{transform-origin:bottom;width:1px;height:min(45dvh,440px);animation-name:devmenu-edge-up;bottom:100%;right:0;mask-image:linear-gradient(#0000,#000)}@keyframes devmenu-edge-left{0%{transform:scaleX(.06)}to{transform:scaleX(1)}}@keyframes devmenu-edge-up{0%{transform:scaleY(.06)}to{transform:scaleY(1)}}.devmenu__panel{border:1px solid color-mix(in srgb, var(--dm-ink) 12%, transparent);background:var(--dm-surface);max-height:calc(100dvh - 90px);box-shadow:0 -16px 32px -16px color-mix(in srgb, var(--dm-ink) 40%, transparent);border-radius:16px;padding:6px;animation:.2s cubic-bezier(.2,.8,.2,1) devmenu-rise;overflow-y:auto}.devmenu__panel[hidden]{display:none}@keyframes devmenu-rise{0%{opacity:0;transform:translateY(6px)}}.devmenu__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.devmenu__heading{color:var(--dm-muted);letter-spacing:.08em;text-transform:uppercase;margin:8px 12px 4px;font-size:.72rem}.devmenu__credit{color:var(--dm-credit);letter-spacing:.04em;text-align:right;margin:10px 12px 4px;font-size:.7rem}.devmenu__credit b{font-weight:500}.devmenu__tab{color:var(--dm-muted);white-space:nowrap;align-items:center;gap:8px;padding:12px 18px 12px 12px;font-size:.92rem;font-weight:500;text-decoration:none;transition:color .3s;display:flex;position:relative}.devmenu__tab:hover,.devmenu__tab:focus-visible,.devmenu__tab--on{color:var(--dm-ink)}.devmenu__tab:focus-visible{outline:2px solid var(--dm-accent);outline-offset:2px;border-radius:4px}.devmenu__icon{flex:none}.devmenu__tab--on .devmenu__icon{color:var(--edge-on)}.devmenu__edge,.devmenu__edge:before{border-color:var(--edge);pointer-events:none;border-style:solid;transition:border-color .3s,opacity .3s;position:absolute}.devmenu__edge{border-radius:var(--radius) var(--radius) 0 0;border-width:1px 1px 0;inset:0;mask-image:linear-gradient(#000 0%,#0006 30%,#0000 60%)}.devmenu__edge:before{content:"";border-radius:calc(var(--radius) + 1px) calc(var(--radius) + 1px) 0 0;border-width:2px 2px 0;inset:-1px;mask-image:linear-gradient(#000 0%,#0000 30%)}.devmenu__tab:not(.devmenu__tab--on):not(:hover) .devmenu__edge{opacity:0}.devmenu__tab:hover .devmenu__edge,.devmenu__tab:hover .devmenu__edge:before{border-color:var(--edge-hover)}.devmenu__tab--on .devmenu__edge,.devmenu__tab--on .devmenu__edge:before{border-color:var(--edge-on)}.devmenu__tab:hover .devmenu__edge:before,.devmenu__tab--on .devmenu__edge:before{border-top-width:3px}@media (prefers-reduced-motion:reduce){.devmenu__tab,.devmenu__corner,.devmenu__edge,.devmenu__edge:before{transition:none}.devmenu__panel,.devmenu__corner-tail{animation:none}}
