@font-face{font-family:DM Mono;src:url(/assets/fonts/dm-mono/DMMono-Regular-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;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}.hb-wrap{--ink: #181818;--soft: #3a3f45;--muted: #66707a;--faint: #a0a7ae;--line: rgba(20, 30, 40, .1);--line-strong: rgba(20, 30, 40, .17);--paper: rgba(255, 255, 255, .72);--raise: #ffffff;--card: #f5f7f9;--sunken: #eff2f5;--well: #f6f8fa;--teal: #0aa79e;--teal-text: #087068;--teal-fill: #12d8cc;--teal-soft: rgba(18, 216, 204, .15);--teal-line: rgba(10, 167, 158, .55);--warm: #ffb547;--warm-text: #b45309;--warm-soft: rgba(245, 158, 11, .15);--star: #f5a524;--on-teal: #062e2b;--inv: #181818;--inv-ink: #f5f5f5;--scrim: rgba(18, 22, 26, .12);--sky0: #e3fbf8;--sky1: #fff3e6;--hill1: rgba(18, 216, 204, .38);--hill2: rgba(10, 167, 158, .62);--shadow: rgba(16, 24, 32, .1);--shadow-2: rgba(16, 24, 32, .16);--shadow-ph: rgba(16, 24, 32, .24);--screen: #f7f8fa;--ph-ink: #15181b;--ph-mut: #6b737b;--ph-card: #ffffff;--ph-press: rgba(20, 30, 40, .06);--sans: "DM Sans", ui-sans-serif, system-ui, sans-serif;--mono: "DM Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}.hb{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:12px;border-radius:24px;border:1px solid var(--line);background-color:var(--paper);backdrop-filter:blur(20px);font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}html.dark .hb-wrap{--ink: #eceef0;--soft: #c9ced3;--muted: #959ca4;--faint: #5f666d;--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .15);--paper: rgba(22, 22, 22, .8);--raise: #1c1e21;--card: #17191b;--sunken: #141618;--well: #16181a;--teal: #12d8cc;--teal-text: #12d8cc;--teal-soft: rgba(18, 216, 204, .13);--teal-line: rgba(18, 216, 204, .5);--warm: #ffb547;--warm-text: #fbbf24;--warm-soft: rgba(251, 191, 36, .13);--inv: #f1f2f3;--inv-ink: #15171a;--scrim: rgba(0, 0, 0, .45);--sky0: #12302d;--sky1: #2a2216;--hill1: rgba(18, 216, 204, .3);--hill2: rgba(18, 216, 204, .55);--shadow: rgba(0, 0, 0, .4);--shadow-2: rgba(0, 0, 0, .5);--shadow-ph: rgba(0, 0, 0, .6);--screen: #101214;--ph-ink: #eef0f2;--ph-mut: #8d959d;--ph-card: #1a1d20;--ph-press: rgba(255, 255, 255, .06)}.hb:before{content:"";position:absolute;top:0;left:8%;right:8%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,var(--teal-fill),transparent);opacity:.85}.hb-wrap{position:relative}@media(min-width:640px){.hb{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.hb-wrap{max-width:1112px;margin-inline:auto}.hb{gap:12px;padding:12px}}@media(max-width:639px){.hb{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;padding:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.hb::-webkit-scrollbar{display:none}.hb>.hb-tile{flex:0 0 90%;scroll-snap-align:center}}.hb-dots{display:none}@media(max-width:639px){.hb-dots{display:flex;justify-content:center;gap:6px;padding-top:12px}.hb-dots button{width:6px;height:6px;padding:0;border:0;border-radius:999px;background:var(--line-strong);cursor:pointer;transition:width .35s cubic-bezier(.2,.8,.2,1),background-color .35s}.hb-dots button.on{width:18px;background:var(--teal-fill)}.hb-dots button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}}.hb *{box-sizing:border-box}.hb-tile{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0;overflow:hidden;padding:14px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(180deg,var(--raise),var(--card));color:var(--ink);text-decoration:none;transition:border-color .3s,box-shadow .35s,transform .35s cubic-bezier(.2,.8,.2,1)}.hb-tile:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(520px 260px at 18% -12%,var(--teal-soft),transparent 70%);opacity:.55;transition:opacity .45s}.hb-tile>*{position:relative}.hb-tile:hover{border-color:color-mix(in srgb,var(--teal-fill) 40%,var(--line-strong));box-shadow:0 1px 2px var(--shadow),0 18px 40px -24px var(--shadow-2);transform:translateY(-2px)}.hb-tile:hover:before{opacity:1}.hb-tile:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.hb-head{display:flex;align-items:center;gap:10px;min-height:26px}.hb-kicker{font-size:12.5px;font-weight:500;color:var(--muted)}.hb-chip{margin-left:auto;display:inline-flex;align-items:center;gap:7px;padding:4px 10px 4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--raise);font-size:11.5px;font-weight:500;color:var(--soft);white-space:nowrap;font-variant-numeric:tabular-nums}.hb-dot{position:relative;width:7px;height:7px;border-radius:50%;background:var(--teal-fill);box-shadow:0 0 0 3px var(--teal-soft);flex:none}.hb-busy{position:absolute;inset:0;border-radius:50%;background:var(--warm);box-shadow:0 0 0 3px var(--warm-soft)}.hb-busy b{position:absolute;inset:-3px;border-radius:50%;border:1px solid var(--warm);animation:hb-ping 1.4s cubic-bezier(0,0,.2,1) infinite}.hb-tick{display:grid;overflow:hidden;line-height:1.25}.hb-tick>span{grid-area:1 / 1}@media(min-width:1024px){.hb-tile{padding:16px 18px 18px}}.hb-stage{width:100%;max-width:340px;margin:0 auto}.hb-art svg{display:block;width:100%;height:auto;overflow:visible}.hb-art-wide{display:none}@media(min-width:1024px){.hb-stage{max-width:500px}.hb-art-wide{display:block}.hb-art-square{display:none}}.hb-foot{padding-top:12px}@media(max-width:1023px){.hb-foot{padding-top:20px}}.hb-tile h3{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;font-size:15px;line-height:1.3;font-weight:600;letter-spacing:-.01em;color:var(--teal-text)}.hb-tile h3>span{color:var(--teal-text)}.hb-go{flex:none;color:var(--teal-text);transition:transform .3s cubic-bezier(.2,.8,.2,1)}.hb-go *,.hb-chip *{color:inherit}.hb-tile:hover .hb-go{transform:translate(2px,-2px)}.hb-tile p{margin:3px 0 0;font-size:13px;line-height:1.45;color:var(--muted)}.hb-stage svg text{font-family:var(--sans)}.hb .mono{font-family:var(--mono)}.hb .c-ink{fill:var(--ink)}.hb .c-soft{fill:var(--soft)}.hb .c-mut{fill:var(--muted)}.hb .c-fnt{fill:var(--faint)}.hb .c-teal{fill:var(--teal)}.hb .c-tf{fill:var(--teal-fill)}.hb .c-ts{fill:var(--teal-soft)}.hb .c-on{fill:var(--on-teal)}.hb .c-inv{fill:var(--inv)}.hb .c-invt{fill:var(--inv-ink)}.hb .c-bar{fill:var(--line-strong)}.hb .c-scrim{fill:var(--scrim)}.hb .c-warm{fill:var(--warm)}.hb .c-warmt{fill:var(--warm-text)}.hb .c-ws{fill:var(--warm-soft)}.hb .c-star{fill:var(--star)}.hb .c-hill1{fill:var(--hill1)}.hb .c-hill2{fill:var(--hill2)}.hb .o45{opacity:.45}.hb .o55{opacity:.55}.hb .o70{opacity:.7}.hb .o85{opacity:.85}.hb .sf{fill:var(--raise);stroke:var(--line-strong);vector-effect:non-scaling-stroke}.hb .f-sunk{fill:var(--sunken)}.hb .f-in{fill:var(--sunken);stroke:var(--line);vector-effect:non-scaling-stroke}.hb .f-well{fill:var(--well);stroke:var(--line);vector-effect:non-scaling-stroke}.hb .bd,.hb .hl{fill:none;stroke:var(--line);vector-effect:non-scaling-stroke}.hb .dot3{fill:var(--line-strong)}.hb .trk{fill:none;stroke:var(--line);stroke-width:4}.hb .arc{fill:none;stroke:var(--teal-fill);stroke-width:4;stroke-linecap:round}.hb .trk-l{fill:none;stroke:var(--line-strong);stroke-width:2;stroke-linecap:round}.hb .node{fill:var(--raise);stroke:var(--line-strong);stroke-width:1.5}.hb .wire{fill:none;stroke:var(--line-strong);stroke-width:1.2;stroke-linecap:round}.hb .wire-lit{fill:none;stroke:var(--teal);stroke-width:1.5;stroke-linecap:round}.hb .pk{fill:var(--teal-fill)}.hb .pk-halo{fill:var(--teal-fill);opacity:.22}.hb .sel{fill:var(--teal-soft);stroke:var(--teal-line);stroke-width:1}.hb .ring-t,.hb .rip{fill:none;stroke:var(--teal);stroke-width:1.4}.hb .touch{fill:var(--ph-ink);fill-opacity:.14;stroke:var(--ph-ink);stroke-opacity:.2}.hb .spark{fill:none;stroke:var(--teal);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.hb .ck-on{fill:none;stroke:var(--on-teal);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.hb .ck-teal{fill:none;stroke:var(--teal);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.hb .ic{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hb .k-mut{stroke:var(--muted)}.hb .k-ink{stroke:var(--ink)}.hb .k-teal{stroke:var(--teal)}.hb .k-on{stroke:#fff}.hb .k-ph{stroke:var(--ph-ink)}.hb .k-cd{stroke:#8a929b}.hb .g-btn0{stop-color:#43ebe0}.hb .g-btn1{stop-color:#10cdc1}.hb .g-sky0{stop-color:var(--sky0)}.hb .g-sky1{stop-color:var(--sky1)}.hb .g-glow0{stop-color:var(--teal-fill);stop-opacity:.28}.hb .g-glow1,.hb .g-scan0{stop-color:var(--teal-fill);stop-opacity:0}.hb .g-scan1{stop-color:var(--teal-fill);stop-opacity:.38}.hb .g-rim0{stop-color:#5b6067}.hb .g-rim1{stop-color:#1b1d20}.hb-stage filter,.hb-stage filter *{color-interpolation-filters:sRGB}.hb .hb-fs{flood-color:var(--shadow);flood-opacity:1}.hb .hb-fs2{flood-color:var(--shadow-2);flood-opacity:1}.hb .hb-fs3{flood-color:#000;flood-opacity:.4}.hb .hb-fs4{flood-color:var(--shadow-ph);flood-opacity:1}.hb .cur-a{fill:#111;stroke:#fff;stroke-width:1.1;stroke-linejoin:round}.hb .cur-h rect{fill:#111;stroke:#111;stroke-width:2.2}.hb .cur-hf rect{fill:#fff}.hb .cur-hl{fill:none;stroke:#111;stroke-width:.9;stroke-linecap:round}.hb .cd-win{fill:#121417;stroke:#2a2f35}.hb .cd-bar{fill:#181b1f}.hb .cd-bg{fill:#121417}.hb .cd-hl{fill:none;stroke:#24282e}.hb .cd-accent{fill:none;stroke:#12d8cc;stroke-width:1.5}.hb .cd-tab{fill:#e6e8eb}.hb .cd-tab2{fill:#6b737c}.hb .cd-tabdot{fill:#e6e8eb}.hb .cd-ln{fill:#474e56}.hb .cd-lnon{fill:#c9ced4}.hb .cd-kw{fill:#2ee6da}.hb .cd-str{fill:#fdba74}.hb .cd-fn{fill:#eef0f2}.hb .cd-txt{fill:#c3c9cf}.hb .cd-p{fill:#8a929b}.hb .cd-com{fill:#6b737c}.hb .cd-act{fill:#fff;fill-opacity:.04}.hb .cd-pop{fill:#1c2024;stroke:#30363d}.hb .cd-sel{fill:#2ee6da24}.hb .cd-mi{fill:none;stroke:#2ee6da;stroke-width:1.2}.hb .ph-body{fill:#17191c;stroke:#2b2f34;stroke-width:1}.hb .ph-btn{fill:#23262a}.hb .ph-scr{fill:var(--screen)}.hb .ph-island{fill:#000}.hb .ph-cam{fill:#1a2531}.hb .ph-ink,.hb .ph-inkf{fill:var(--ph-ink)}.hb .ph-mut,.hb .ph-soft{fill:var(--ph-mut)}.hb .ph-fnt{fill:var(--ph-mut);opacity:.8}.hb .ph-card{fill:var(--ph-card);stroke:var(--line);vector-effect:non-scaling-stroke}.hb .ph-press{fill:var(--ph-press)}.hb .ph-ban{fill:var(--raise);fill-opacity:.97;stroke:var(--line-strong);vector-effect:non-scaling-stroke}.hb .ph-sheet{fill:var(--raise);stroke:var(--line-strong);vector-effect:non-scaling-stroke}.hb .ph-batt{fill:none;stroke:var(--ph-ink);stroke-opacity:.45;stroke-width:1}.hb .ph-wifi{fill:none;stroke:var(--ph-ink);stroke-width:1.45;stroke-linecap:round}.hb .ph-nub{fill:none;stroke:var(--ph-ink);stroke-opacity:.45;stroke-width:1.3;stroke-linecap:round}.hb .a{animation-duration:12s;animation-timing-function:linear;animation-iteration-count:infinite;animation-delay:var(--ph, 0s);animation-fill-mode:both;transform-box:fill-box;transform-origin:center}.hb .spin{fill:none;stroke-width:2;stroke-linecap:round;transform-box:fill-box;transform-origin:center;animation:hb-spin .8s linear infinite}.hb .spin-t{stroke:var(--teal)}.hb .spin-on{stroke:var(--on-teal);stroke-dasharray:10 25}.hb .comet{fill:none;stroke:var(--teal-fill);stroke-width:2.2;stroke-linecap:round;animation:hb-comet 1.3s linear infinite}.hb .comet-glow{fill:none;stroke:var(--teal-fill);stroke-width:7;stroke-linecap:round;opacity:.18;animation:hb-comet 1.3s linear infinite}.hb .pulse{transform-box:fill-box;transform-origin:center;animation:hb-pulse 2.6s ease-in-out infinite}.hb .twinkle{transform-box:fill-box;transform-origin:center;animation:hb-twinkle 1.6s ease-in-out infinite}.hb.hb-off *,.hb-tile.hb-off *{animation-play-state:paused!important}@keyframes hb-spin{to{transform:rotate(360deg)}}@keyframes hb-comet{to{stroke-dashoffset:-180.53}}@keyframes hb-pulse{0%,to{transform:scale(.9);opacity:.7}50%{transform:scale(1.06);opacity:1}}@keyframes hb-twinkle{0%,to{transform:scale(.6);opacity:.4}50%{transform:scale(1.15);opacity:1}}@keyframes hb-ping{0%{transform:scale(.8);opacity:.9}to{transform:scale(2);opacity:0}}@media(prefers-reduced-motion:reduce){.hb .a,.hb .spin,.hb .comet,.hb .comet-glow,.hb .pulse,.hb .twinkle,.hb .hb-busy b{animation:none!important}.hb .tmp,.hb .hb-busy{display:none!important}}.dial{--dial-ink: #181818;--dial-muted: #6b7076;--dial-line: rgba(24, 24, 24, .14);--dial-glass: rgba(255, 255, 255, .72);--dial-teal: #12d8cc;position:relative;width:220px;max-width:100%;aspect-ratio:1;margin:0 auto}html.dark .dial{--dial-ink: #edf0f5;--dial-muted: #9a9fa6;--dial-line: rgba(255, 255, 255, .16);--dial-glass: rgba(22, 22, 22, .8)}.dial>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.dial-ticks line{stroke:var(--dial-line);stroke-width:1}.dial-ticks line.big{stroke:var(--dial-muted)}.dial-text{font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;font-size:10.5px;font-weight:500;letter-spacing:.2em;fill:var(--dial-ink)}.dial-spin,.dial-orbit{transform-box:view-box;transform-origin:110px 110px;animation:dial-spin 60s linear infinite}.dial-orbit{animation-duration:14s}.dial-sat{fill:var(--dial-teal);filter:drop-shadow(0 0 4px rgba(18,216,204,.7))}.dial-disc{position:absolute;left:50%;top:50%;width:60%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--dial-glass);border:1px solid var(--dial-line);backdrop-filter:blur(14px);box-shadow:0 10px 30px -18px #00000059}.dial-disc img{width:66%;height:auto}@keyframes dial-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.dial-spin,.dial-orbit{animation:none}}
