@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/golos-text-cyrillic-ext-wght-normal.hICkpzq7.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/golos-text-cyrillic-wght-normal.mKek_fSS.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/golos-text-latin-ext-wght-normal.B-I5lbAQ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/golos-text-latin-wght-normal.BS5oQT7X.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-cyrillic-wght-normal.BfQLqnEI.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-latin-ext-wght-normal.CsF3XSp0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-latin-wght-normal.Cbhn5ptY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--ink:light-dark(oklch(25% .045 285),oklch(93% .012 285));--ink-soft:light-dark(oklch(43% .04 285),oklch(78% .03 285));--paper:light-dark(oklch(97.5% .006 285),oklch(25% .035 284));--paper-2:light-dark(oklch(93% .016 285),oklch(20.5% .033 284));--paper-3:light-dark(oklch(84% .025 285),oklch(37% .04 285));--line:light-dark(oklch(78% .03 285),oklch(42% .04 285));--edge:light-dark(oklch(25% .045 285),oklch(11% .03 285));--bevel-hi:light-dark(oklch(100% 0 0),oklch(37% .04 285));--bevel-lo:light-dark(oklch(84% .025 285),oklch(16% .03 285));--shadow:light-dark(oklch(18% .05 285/.55),oklch(5% .03 285/.75));--title:oklch(45% .12 278);--title-text:light-dark(oklch(45% .12 278),oklch(80% .09 278));--title-idle:light-dark(oklch(80% .035 285),oklch(34% .04 285));--on-dark:oklch(97.5% .006 285);--on-dark-soft:oklch(84% .025 285);--on-dark-line:oklch(43% .04 285);--on-accent:oklch(25% .045 285);--accent:oklch(87% .13 92);--accent-press:oklch(80% .13 88);--ok:oklch(72% .17 150);--focus:light-dark(oklch(60% .23 345),oklch(76% .17 345));--hl:light-dark(oklch(93% .06 92),oklch(40% .07 92));--sky-0:oklch(20% .055 280);--sky-1:oklch(27% .075 284);--sky-2:oklch(36% .095 295);--sky-3:oklch(48% .11 320);--sky-4:oklch(64% .11 350);--hill-far:oklch(30% .07 295);--hill-near:oklch(21% .05 288);--moon:oklch(93% .08 95);--star:oklch(95% .03 95);--px-o:oklch(76% .15 62);--px-r:oklch(58% .2 27);--px-g:oklch(74% .17 140);--px-G:oklch(53% .13 145);--px-b:oklch(52% .08 55);--px-d:oklch(33% .03 285);--px-B:oklch(55% .14 265);--px-p:oklch(74% .14 0);--px-s:oklch(83% .07 55);--px-c:oklch(80% .11 205);--px-k:oklch(25% .045 285);--px-w:oklch(97.5% .006 285);--px-l:oklch(84% .025 285);--font-brand:"Pixelify Sans Variable", ui-monospace, monospace;--font-pixel:var(--font-brand);--font-body:"Golos Text Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-ui:var(--font-body);--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--fs-xs:.8125rem;--fs-sm:.9375rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:1.5rem;--fs-xl:2rem;--fs-2xl:clamp(2.5rem, 2.2rem + 1.6vw, 3rem);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--measure:64ch;--wrap:1160px;--topbar:56px;--taskbar:44px;--e1:2px 2px 0 var(--edge);--e2:4px 4px 0 var(--edge);--hard:6px 6px 0 var(--shadow)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:where(#boot,.tz){color-scheme:light;color:var(--ink)}:lang(ru){--font-pixel:var(--font-body)}@media (prefers-contrast:more){:root{--line:light-dark(oklch(55% .03 285),oklch(62% .03 285));--ink-soft:var(--ink)}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--fs-base);color:var(--ink);background:var(--paper-2);margin:0;line-height:1.55}img,svg,canvas{max-width:100%;display:block}img{height:auto}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:2px}a:hover{text-decoration-color:var(--title-text)}:is(main,.win__body) a:not([class]):hover,.tlink:hover{text-decoration-color:var(--title-text);background:var(--hl)}h1,h2{font-family:var(--font-pixel);text-wrap:balance;margin:0;font-weight:500;line-height:1.1}h3,h4{font:600 var(--fs-md)/1.25 var(--font-ui);text-wrap:balance;margin:0}:lang(ru) :is(h1,h2,.as-h1,.sub-h,.bar){letter-spacing:-.005em;font-weight:700}:lang(ru) :is(p,.facts li,.prose li){hyphens:auto}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}figure{margin:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}:is(.topbar,.bar) :focus-visible{outline-color:var(--accent)}::selection{background:var(--accent);color:var(--on-accent)}strong,b{font-weight:600}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:2000;background:var(--accent);color:var(--on-accent);border:2px solid var(--edge);font:600 var(--fs-sm)/1.2 var(--font-ui);padding:8px 12px;position:absolute;top:-80px;left:8px}.skip:focus{top:8px}.px-icon{flex:none;width:16px;height:16px}.wordmark{font:600 1.5rem/1 var(--font-brand);letter-spacing:.02em;color:inherit;white-space:nowrap;text-decoration:none}.wordmark span{color:var(--accent)}.btn{justify-content:center;align-items:center;gap:var(--s-2);min-height:44px;padding:6px var(--s-4);font:600 var(--fs-sm)/1 var(--font-ui);letter-spacing:.01em;color:var(--ink);cursor:pointer;white-space:nowrap;background:var(--paper);border:2px solid var(--edge);box-shadow:inset -2px -2px 0 var(--bevel-lo), inset 2px 2px 0 var(--bevel-hi), var(--e1);text-decoration:none;transition-property:translate,box-shadow,background-color;transition-duration:90ms;transition-timing-function:steps(2,end);display:inline-flex}.btn:hover{background:var(--paper-2)}.btn:active{box-shadow:inset -2px -2px 0 var(--bevel-lo), inset 2px 2px 0 var(--bevel-hi);translate:2px 2px}.btn--primary{color:var(--on-accent);background:var(--accent);box-shadow:inset -2px -2px 0 var(--accent-press), inset 2px 2px 0 oklch(96% .07 95), var(--e1)}.btn--primary:active{box-shadow:inset -2px -2px 0 var(--accent-press), inset 2px 2px 0 oklch(96% .07 95)}.btn--primary:hover{background:var(--accent-press)}.btn--sm{min-height:36px;padding:4px var(--s-3);font-size:var(--fs-xs)}.ibtn{border:2px solid var(--edge);background:var(--paper);width:32px;height:32px;color:var(--ink);cursor:pointer;box-shadow:var(--e1);place-items:center;padding:0;display:inline-grid}.ibtn:hover{background:var(--accent);color:var(--on-accent)}.ibtn:active{box-shadow:1px 1px 0 var(--edge);translate:1px 1px}.ibtn svg{width:16px;height:16px}.btn--icon{flex:none;width:44px;min-height:44px;padding:0}.glyph{flex:none;width:16px;height:16px}.cbtns{gap:var(--s-2);flex-wrap:wrap;display:flex}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);z-index:40;background:var(--ink);color:var(--paper);border:2px solid var(--edge);box-shadow:var(--e1);font:600 var(--fs-xs)/1.2 var(--font-ui);letter-spacing:0;white-space:nowrap;pointer-events:none;opacity:0;padding:4px 8px;transition:opacity .12s steps(2,end),translate .12s steps(2,end);position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50% 4px}[data-tip]:is(:hover,:focus-visible):after{opacity:1;transition-delay:.25s;translate:-50%}[data-tip].tip-below:after{top:calc(100% + 8px);bottom:auto}@media (hover:none){[data-tip]:hover:not(:focus-visible):after{opacity:0}}.theme-btn .glyph--sun,[data-theme=dark] .theme-btn .glyph--moon{display:none}[data-theme=dark] .theme-btn .glyph--sun{display:block}.topbar .theme-btn{width:34px;height:34px}.chips{gap:var(--s-2) 6px;flex-wrap:wrap;display:flex}.chips li{font:500 var(--fs-xs)/1.2 var(--font-ui);background:var(--paper-2);border:2px solid var(--paper-3);cursor:default;padding:5px 9px}.status{align-items:center;gap:var(--s-2);font:500 var(--fs-sm)/1.2 var(--font-ui);display:inline-flex}.light{background:var(--ok);width:10px;height:10px;box-shadow:0 0 0 2px var(--edge);flex:none}@media (forced-colors:active){.light{forced-color-adjust:none}}.frame{background:var(--paper);border:2px solid var(--edge);box-shadow:var(--hard)}.bar{align-items:center;gap:var(--s-2);min-height:36px;padding:0 6px 0 var(--s-3);background:var(--title);color:var(--on-dark);border-bottom:2px solid var(--edge);font:500 var(--fs-base)/1 var(--font-pixel);display:flex}.bar h2,.bar h3{font:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar a{color:inherit;text-decoration:none}.bar a:hover{text-decoration:underline}.bar__grip{background:repeating-linear-gradient(oklch(100% 0 0/.35) 0 2px,#0000 2px 4px);flex:1;align-self:stretch;min-width:16px;margin-block:10px}.links{align-items:center;gap:var(--s-3) var(--s-4);font:500 var(--fs-sm)/1.2 var(--font-ui);flex-wrap:wrap;display:flex}.tlink{min-height:36px;font:500 var(--fs-sm)/1.2 var(--font-ui);align-items:center;display:inline-flex}.meta{color:var(--ink-soft);font-size:var(--fs-sm)}.pitch{font-size:var(--fs-md);text-wrap:pretty;max-width:var(--measure);line-height:1.45}.facts{gap:var(--s-2);max-width:var(--measure);display:grid}.facts li{text-wrap:pretty;padding-left:20px;position:relative}.facts li:before{content:"";background:var(--title-text);width:8px;height:8px;position:absolute;top:.6em;left:4px}.shot{border:2px solid var(--edge);background:var(--edge)}figcaption,.caption{font-size:var(--fs-xs);color:var(--ink-soft);text-wrap:pretty;margin-top:8px}.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:24px}.topbar{z-index:30;background:var(--title);color:var(--on-dark);border-bottom:2px solid var(--edge);position:sticky;top:0}.topbar__in{align-items:center;gap:var(--s-3) var(--s-6);min-height:var(--topbar);flex-wrap:wrap;display:flex}.topnav ul{gap:var(--s-1) var(--s-5);font:500 var(--fs-sm)/1.2 var(--font-ui);display:flex}.topnav a{min-height:44px;color:var(--on-dark);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.topnav a:hover{text-decoration:underline}.topbar__tray{align-items:center;gap:var(--s-4);margin-left:auto;display:flex}.seg{border:2px solid var(--edge);background:var(--paper);display:inline-flex}.seg a{min-width:40px;min-height:30px;font:600 var(--fs-xs)/1 var(--font-ui);color:var(--ink);place-items:center;text-decoration:none;display:grid}.seg a[aria-current=true]{background:var(--ink);color:var(--paper)}.seg a:not([aria-current=true]):hover{background:var(--accent);color:var(--on-accent)}[data-mode-toggle]{display:none!important}@media (width>=1024px){html.js [data-mode-toggle]{display:inline-flex!important}}.banner{border-bottom:2px solid var(--edge);background:linear-gradient(var(--sky-0) 0 20%, var(--sky-1) 20% 40%, var(--sky-2) 40% 60%, var(--sky-3) 60% 80%, var(--sky-4) 80%);height:120px;position:relative;overflow:hidden}.banner canvas{width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.banner--thin{height:64px}main{display:block;container-type:inline-size}.home main{margin-top:-64px;position:relative}.hr-sec{margin-top:var(--s-9);scroll-margin-top:calc(var(--topbar) + 16px)}.hr-sec>h2{font-size:var(--fs-xl);margin-bottom:var(--s-6)}.sub-h{font:500 var(--fs-lg)/1.1 var(--font-pixel);margin:var(--s-7) 0 var(--s-5)}.site-foot{margin:var(--s-8) auto var(--s-6);color:var(--ink-soft);font-size:var(--fs-sm);gap:var(--s-2);display:grid}.hero{scroll-margin-top:calc(var(--topbar) + 16px)}.hero__body{gap:var(--s-6);padding:var(--s-6);display:grid}.hero h1,.as-h1{font:600 var(--fs-2xl)/1 var(--font-pixel);letter-spacing:-.01em;margin:0}.hero__id{gap:var(--s-4);align-content:start;display:grid}.role{font:600 1.25rem/1.25 var(--font-ui);color:var(--title-text);text-wrap:balance}.value{font-size:var(--fs-md);text-wrap:pretty;max-width:46ch}.cta{align-items:center;gap:var(--s-3) var(--s-4);margin-top:var(--s-2);flex-wrap:wrap;display:flex}.hero__stack{gap:var(--s-3);align-content:start;display:grid}.hero__stack h2{font:600 var(--fs-xs)/1.2 var(--font-ui);letter-spacing:.01em;color:var(--ink-soft)}.quick{border-top:2px solid var(--edge);background:var(--paper-3);font:500 var(--fs-sm)/1.35 var(--font-ui);grid-template-columns:minmax(0,1fr);gap:2px;display:grid}.quick li{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);background:var(--paper-2);display:flex}@container (width>=480px){.quick{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=960px){.quick{grid-template-columns:repeat(4,minmax(0,1fr))}}@container (width>=820px){.hero__body{gap:var(--s-7);padding:var(--s-7) var(--s-7) var(--s-6);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}}@container (width<=560px){.hero__body{padding:var(--s-5) var(--s-4);gap:var(--s-5)}.hero h1,.win .as-h1{font-size:2.5rem}.role{font-size:var(--fs-md)}.value{font-size:var(--fs-base)}.quick li{padding:var(--s-2) var(--s-4)}}.pgrid{gap:var(--s-6);display:grid}.pcard{flex-direction:column;display:flex;container-type:inline-size}.pcard__body{gap:var(--s-5);padding:var(--s-5);align-items:start;display:grid}.pcard__text{gap:var(--s-4);align-content:start;display:grid}.pcard__media{gap:var(--s-2);display:grid}.pcard .links{margin-top:var(--s-1)}.kpi{justify-self:start;align-items:baseline;gap:var(--s-2);padding:6px var(--s-3);background:var(--hl);border:2px solid var(--edge);font:500 var(--fs-sm)/1.3 var(--font-ui);display:inline-flex}.kpi span{text-wrap:pretty}.kpi b{font-weight:700;font-size:var(--fs-md);font-variant-numeric:tabular-nums;white-space:nowrap}.phones{gap:var(--s-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.phones img{border:2px solid var(--edge);background:var(--paper)}@container (width>=760px){.pcard__body{gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.pcard__media{order:2}}@container (width<=480px){.pcard__body{padding:var(--s-4)}}@container (width>=900px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgrid>.pcard:first-child{grid-column:1/-1}}.others{gap:var(--s-6) var(--s-7);display:grid}.other{gap:var(--s-4);grid-template-columns:32px minmax(0,1fr);align-items:start;display:grid}.other>.px-icon{width:32px;height:32px}.other__text{gap:var(--s-2);display:grid}.other p:not(.meta){text-wrap:pretty;max-width:var(--measure)}@container (width>=760px){.others{grid-template-columns:repeat(2,minmax(0,1fr))}}.skills{gap:var(--s-5) var(--s-7);display:grid}.skills h3{margin-bottom:var(--s-2)}.skills p{text-wrap:pretty;max-width:52ch}@container (width>=640px){.skills{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=980px){.skills{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (width<=480px){.skills .chips{font-size:var(--fs-base);display:block}.skills .chips li{font:inherit;background:0 0;border:0;padding:0;display:inline}.skills .chips li:not(:last-child):after{content:", "}}.exp{gap:var(--s-7);display:grid}.timeline{align-content:start;gap:var(--s-5);border-left:2px solid var(--edge);padding-left:var(--s-5);display:grid}.timeline li{align-content:start;gap:var(--s-1);display:grid;position:relative}.timeline li:before{content:"";background:var(--accent);border:2px solid var(--edge);width:16px;height:16px;position:absolute;top:4px;left:-33px}.timeline p:last-child{max-width:var(--measure);text-wrap:pretty}.exp__side{gap:var(--s-6);align-content:start;display:grid}.exp__side>div{gap:var(--s-2);display:grid}@container (width>=860px){.exp{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}.contact-card .card__body{gap:var(--s-4);padding:var(--s-6);display:grid}.ltime{font-size:var(--fs-sm);color:var(--ink-soft)}.ltime time{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.email{gap:var(--s-1);font:600 var(--fs-lg)/1.2 var(--font-ui);letter-spacing:-.01em;overflow-wrap:anywhere;user-select:all;justify-self:start;display:grid}.email .meta{letter-spacing:0;user-select:text;font-weight:500}@container (width<=560px){.email{font-size:var(--fs-md)}.contact-card .card__body{padding:var(--s-5) var(--s-4)}}.crumbs{margin:var(--s-6) 0 var(--s-4);font:500 var(--fs-sm)/1.3 var(--font-ui)}.crumbs ol{gap:var(--s-2);flex-wrap:wrap;display:flex}.crumbs li+li:before{content:"/";margin-right:var(--s-2);color:var(--ink-soft)}.project__body{gap:var(--s-6);padding:var(--s-6);display:grid}.project__head{gap:var(--s-5);align-items:start;display:grid}.project__lead{gap:var(--s-4);align-content:start;min-width:0;display:grid}.project__head h1{font:600 var(--fs-2xl)/1 var(--font-pixel)}.project__facts{gap:var(--s-2) var(--s-4);font-size:var(--fs-sm);padding:var(--s-4);border:2px solid var(--edge);background:var(--paper-2);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.project__facts dt{color:var(--ink-soft);font-weight:600}.project__facts dd{margin:0}.prose ul.metrics li{padding-left:var(--s-4)}.prose ul.metrics li:before{content:none}.prose{gap:var(--s-4);max-width:70ch;display:grid}.prose h2{font-size:var(--fs-lg);margin-top:var(--s-4)}.prose h3{margin-top:var(--s-2)}.prose ul{gap:var(--s-2);display:grid}.prose ul li{padding-left:20px;position:relative}.prose ul li:before{content:"";background:var(--title-text);width:8px;height:8px;position:absolute;top:.6em;left:4px}.prose ol{gap:8px;padding-left:24px;list-style:decimal;display:grid}.prose code{font-family:var(--font-mono);background:var(--paper-2);padding:1px 4px;font-size:.9em}.prose a{overflow-wrap:anywhere}.metrics{gap:var(--s-3);display:grid}.metrics li{gap:var(--s-1);padding:var(--s-3) var(--s-4);border:2px solid var(--edge);background:var(--paper-2);box-shadow:var(--e2);display:grid}.metrics b{font:700 var(--fs-lg)/1.1 var(--font-ui);font-variant-numeric:tabular-nums}.pnav{justify-content:space-between;gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.note{padding:var(--s-3) var(--s-4);background:var(--hl);border:2px solid var(--edge);font-size:var(--fs-sm)}@container (width>=720px){.project__head{column-gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(15rem,21rem)}}.brief{gap:var(--s-4) var(--s-5);max-width:52rem;margin-top:var(--s-1);grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));display:grid}.brief section{gap:var(--s-1);align-content:start;display:grid}.brief p{font-size:var(--fs-sm);text-wrap:pretty}.h-xs{font:700 var(--fs-xs)/1.2 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}@container (width<=560px){.project__body{padding:var(--s-5) var(--s-4)}.project__head h1{font-size:var(--fs-xl)}}.demo{border:2px solid var(--edge);position:relative;container-type:inline-size}.demo__replay{z-index:2;position:absolute;top:10px;right:10px}.demo__note{font-size:var(--fs-xs)}.tsk{background:var(--sky-0);color:var(--on-dark);gap:14px;padding:16px;display:grid}.tsk__stage{grid-template-columns:minmax(0,1fr);align-items:end;gap:14px;display:grid}.tsk__mascot{aspect-ratio:448/375;width:132px;margin-inline:auto;padding-top:6px;position:relative}.tsk__mascot img{object-fit:contain;object-position:bottom;width:100%;height:calc(100% - 6px);transition:opacity .12s steps(2,end);position:absolute;inset:6px 0 0}.tsk__mascot img:not(.is-on){opacity:0}.tsk__hud{gap:10px;min-width:0;display:grid}.tsk__pill{background:var(--sky-1);border:2px solid var(--on-dark-soft);align-items:center;gap:10px;min-height:40px;padding:6px 12px;display:flex}.tsk__dot{background:var(--px-r);flex:none;width:10px;height:10px}.tsk__dot[data-s=done]{background:var(--ok)}.tsk__dot[data-s=work]{background:var(--accent)}.tsk__status{font:600 var(--fs-sm)/1.2 var(--font-ui);color:var(--on-dark);flex:none}.wave{flex:1;align-items:center;gap:2px;min-width:0;height:28px;display:flex}.wave i{background:var(--accent);flex:1;max-width:6px;height:100%;transform:scaleY(.15)}.tsk__field{background:var(--paper);color:var(--ink);border:2px solid var(--edge);box-shadow:var(--e2);gap:6px;padding:10px 12px;display:grid}.tsk__app{font:600 var(--fs-xs)/1 var(--font-ui);color:var(--ink-soft)}.tsk__text{min-height:3em;font-size:var(--fs-sm);line-height:1.5}.tsk__text:after{content:"";vertical-align:-3px;background:var(--ink);width:2px;height:1.1em;margin-left:1px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.tsk .demo__note{color:var(--on-dark-soft)}@container (width>=440px){.tsk__stage{grid-template-columns:132px minmax(0,1fr)}.tsk__mascot{margin:0}.tsk__hud{padding-right:40px}}.flash{background:var(--paper-2);justify-items:center;gap:16px;padding:16px;display:grid}.card3d{perspective:600px;cursor:pointer;background:0 0;border:0;width:150px;height:180px;padding:0}.card3d__in{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.3,.7,.3,1);display:block;position:relative}.card3d.is-flipped .card3d__in{transform:rotateY(180deg)}.face{backface-visibility:hidden;background:var(--paper);border:2px solid var(--edge);box-shadow:4px 4px 0 var(--edge);color:var(--ink);place-content:center;justify-items:center;gap:6px;display:grid;position:absolute;inset:0}.face--back{background:light-dark(oklch(97% .02 85),oklch(30% .03 85));transform:rotateY(180deg)}.face .kana{font:400 4.5rem/1 Hiragino Mincho ProN,Yu Mincho,Noto Serif JP,serif}.face b{font:700 2rem/1 var(--font-ui)}.face small{font:500 var(--fs-xs)/1.2 var(--font-ui);color:var(--ink-soft)}.face .seal{background:var(--px-r);width:14px;height:14px;position:absolute;bottom:8px;right:8px}.flash__side{align-content:center;justify-items:start;gap:10px;display:grid}.flash__side p{font-size:var(--fs-sm);max-width:40ch}@container (width>=400px){.flash{grid-template-columns:150px minmax(0,1fr);justify-items:stretch;gap:20px}}.scan{background:var(--paper-2);gap:14px;padding:16px;display:grid}.scan__head{justify-content:space-between;align-items:center;gap:var(--s-2);min-height:32px;font:600 var(--fs-sm)/1 var(--font-ui);display:flex}.scan__head .demo__replay{position:static}.scan__stage{align-items:center;gap:14px;display:grid}.scan__view{background:var(--sky-0);border:2px solid var(--edge);place-items:center;height:150px;display:grid;position:relative;overflow:hidden}.scan__code{background:var(--px-w);color:var(--px-k);justify-items:center;gap:4px;padding:10px 12px 6px;display:grid}.scan__bars{align-items:stretch;gap:0;height:54px;display:flex}.scan__bars i{background:var(--px-k);display:block}.scan__num{font:400 var(--fs-xs)/1 var(--font-mono);letter-spacing:.12em}.scan__line{background:var(--px-r);opacity:0;height:2px;position:absolute;top:50%;left:12%;right:12%;box-shadow:0 0 0 1px oklch(58% .2 27/.4)}.scan__corner{border:3px solid var(--accent);width:18px;height:18px;position:absolute}.scan__corner:first-of-type{border-bottom:0;border-right:0;top:12px;left:12px}.scan__corner:nth-of-type(2){border-bottom:0;border-left:0;top:12px;right:12px}.scan__corner:nth-of-type(3){border-top:0;border-right:0;bottom:12px;left:12px}.scan__corner:nth-of-type(4){border-top:0;border-left:0;bottom:12px;right:12px}.ncard{background:var(--paper);border:2px solid var(--edge);box-shadow:var(--e2);gap:10px;padding:12px 14px;display:grid}.ncard__top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ncard h3{font-size:var(--fs-base)}.tag{font:600 var(--fs-xs)/1 var(--font-ui);background:var(--hl);border:2px solid var(--edge);white-space:nowrap;padding:3px 6px}.ncard dl{grid-template-columns:repeat(auto-fit,minmax(62px,1fr));gap:6px;margin:0;display:grid}.ncard dl div{background:var(--paper-2);text-align:center;gap:2px;padding:6px;display:grid}.ncard dt{font:500 var(--fs-xs)/1 var(--font-ui);color:var(--ink-soft)}.ncard dd{font:600 var(--fs-sm)/1.1 var(--font-ui);font-variant-numeric:tabular-nums;margin:0}.ncard__foot{font-size:var(--fs-xs);color:var(--ink-soft)}@container (width>=480px){.scan__stage{grid-template-columns:180px minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.card3d__in{transition:none}.card3d .face{transition:opacity .2s linear}.card3d .face--back{opacity:0;transform:none}.card3d.is-flipped .card3d__in{transform:none}.card3d.is-flipped .face--front{opacity:0}.card3d.is-flipped .face--back{opacity:1}.btn,.tsk__mascot img{transition:none}.tsk__text:after{animation:none}}@media (width<=1023px){.topbar__in{padding-block:8px 0}.topnav{scrollbar-width:none;flex-basis:100%;order:3;margin-inline:-24px;padding-inline:24px;overflow-x:auto;mask-image:linear-gradient(90deg,#000 calc(100% - 24px),#0000)}}@media (width<=767px){.wrap{padding-inline:16px}.topnav{margin-inline:-16px;padding-inline:16px}.topbar .status span{display:none}.banner{height:88px}.home main{margin-top:-40px}.hr-sec{margin-top:var(--s-8)}.hr-sec>h2{font-size:var(--fs-lg);margin-bottom:var(--s-5)}.topbar__in{gap:var(--s-2) var(--s-4)}}.mbar{display:none}@media (width<=767px){.mbar{z-index:30;gap:var(--s-3);padding:var(--s-2) var(--s-4) calc(var(--s-2) + env(safe-area-inset-bottom));background:var(--paper);border-top:2px solid var(--edge);grid-template-columns:1fr auto auto;display:grid;position:sticky;bottom:0}}html[data-mode=os] body{background:var(--sky-0);overflow:hidden}html[data-mode=os] #hr{display:none}html.reveal #hr .hero{opacity:0;animation:0s 1.2s forwards failsafe}@keyframes failsafe{to{opacity:1}}main:focus{outline:none}@media print{#os,canvas,.skip,.topnav,[data-mode-toggle],[data-demo] button{display:none!important}html[data-mode=os] #hr{display:block!important}html,body{color:#000!important;background:#fff!important;overflow:visible!important}#hr .hero{opacity:1!important}a[href^=http]:after{content:" (" attr(href) ")";font-size:.8em}img,figure{break-inside:avoid}}.cc{z-index:1500;right:var(--s-4);bottom:var(--s-4);width:min(26rem, calc(100vw - 2 * var(--s-4)));max-height:calc(100dvh - 2 * var(--s-4));color:var(--ink);font-size:var(--fs-sm);position:fixed;overflow:auto}.cc[hidden]{display:none}.cc:focus{outline:none}.cc:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.cc__body{gap:var(--s-3);padding:var(--s-4);display:grid}.cc__body p{text-wrap:pretty}.cc__btns{gap:var(--s-3);grid-template-columns:1fr 1fr;display:grid}.cc__btns .btn[aria-pressed=true]{background:var(--paper-2);box-shadow:inset 2px 2px 0 var(--bevel-lo), inset -2px -2px 0 var(--bevel-hi)}html[data-mode=os] .cc{bottom:calc(var(--taskbar) + var(--s-4))}@media (width<=767px){html:not([data-mode=os]) .cc{bottom:calc(76px + env(safe-area-inset-bottom))}}button.tlink{color:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline 2px}.legal,.site-foot__legal{align-items:center;gap:0 var(--s-5);flex-wrap:wrap;display:flex}@media print{.cc{display:none!important}}.policy .prose h2{font-size:var(--fs-lg)}.policy table{border-collapse:collapse;font-size:var(--fs-sm);width:100%}.policy th,.policy td{border:2px solid var(--edge);padding:var(--s-2) var(--s-3);text-align:left;vertical-align:top}.policy th{background:var(--paper-2)}.policy .tbl{overflow-x:auto}.prose button.tlink{min-height:0;font:inherit;display:inline}.policy .project__body>*,.policy .prose>*{min-width:0}.policy .as-h1{hyphens:auto;overflow-wrap:break-word;font-size:clamp(1.75rem,1.2rem + 2.6vw,3rem)}.project__short{gap:var(--s-6);display:grid}.project [data-win-only]{display:none}.h-sm{font:600 var(--fs-md)/1.25 var(--font-ui);margin-bottom:var(--s-3)}.team li+li{margin-top:2px}.badges{gap:var(--s-3);position:relative}.badges .btn{gap:var(--s-2)}.badge__ic{flex:none;width:auto;height:12px}.badge__ic--g{height:16px}.badge-tag{align-items:center;gap:var(--s-2);min-height:36px;padding:4px var(--s-3);font:600 var(--fs-xs)/1.2 var(--font-ui);color:var(--ink);background:var(--paper-2);border:2px dashed var(--ink-soft);display:inline-flex}.badge-tag:before{content:"";background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--edge);flex:none}.lock{position:relative}.lock>summary{cursor:pointer;list-style:none}.lock>summary::-webkit-details-marker{display:none}.lock[open]>summary{background:var(--ink);color:var(--paper)}.lock__msg{z-index:5;width:max-content;max-width:min(22rem,80cqw);padding:var(--s-3) var(--s-4);background:var(--sky-0);color:var(--on-dark);border:2px solid var(--edge);box-shadow:var(--e2);font:500 var(--fs-xs)/1.4 var(--font-mono);gap:4px;display:grid;position:absolute;top:calc(100% + 8px);left:0}.lock__cmd{color:var(--on-dark-soft)}.lock__err{color:oklch(80% .14 27)}.lock__msg a{color:var(--accent)}.lock__l{display:block}@media (prefers-reduced-motion:no-preference){.lock[open] .lock__l{animation:.3s steps(6,end) both print}.lock[open] .lock__l:nth-child(2){animation-delay:.25s}.lock[open] .lock__l:nth-child(3){animation-delay:.5s}@keyframes print{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}}.mods__grid{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));display:grid}.mod{gap:var(--s-2);padding:var(--s-4);background:var(--paper-2);border:2px solid var(--edge);box-shadow:var(--e2);align-content:start;display:grid}.mod h3{font-size:var(--fs-base)}.mod p{font-size:var(--fs-sm);text-wrap:pretty}.mod__links{gap:var(--s-2);padding-top:var(--s-2);flex-wrap:wrap;margin-top:auto;display:flex}.cf{gap:var(--s-3);margin-block:var(--s-2);display:grid;container-type:inline-size}.cf__stage{touch-action:pan-y;user-select:none;background:var(--sky-0);border:2px solid var(--edge);cursor:grab;height:clamp(240px,52cqw,440px);position:relative;overflow:hidden}.cf--compact .cf__stage{height:clamp(200px,50cqw,320px)}.cf.is-drag .cf__stage{cursor:grabbing}.cf__track{perspective:70cqw;position:absolute;inset:0 0 12%}.cf__item{opacity:var(--o,1);will-change:transform;transform:translate(-50%, -50%) translateX(calc(var(--x,0) * 1cqw)) translateZ(calc(var(--tz,0) * 1cqw)) rotateY(calc(var(--ry,0) * 1deg));position:absolute;top:50%;left:50%}@media (prefers-reduced-motion:reduce){.cf__item{transform:translate(-50%, -50%) translateX(calc(var(--x,0) * 1cqw))}}:root[data-theme=dark] .v-light,:root:not([data-theme=dark]) .v-dark{display:none!important}.cf__btn{outline-offset:4px;-webkit-tap-highlight-color:transparent;display:block}.cf__btn img{border:2px solid var(--edge);background:var(--edge);-webkit-box-reflect:below 2px linear-gradient(transparent 72%, oklch(100% 0 0/.22));pointer-events:none;width:auto;max-width:48cqw;height:auto;max-height:calc(clamp(240px,52cqw,440px)/1.25)}.cf--compact .cf__btn img{max-height:calc(clamp(200px,50cqw,320px)/1.25)}.cf__item:not([data-current]) .cf__btn img{filter:brightness(.72)}.cf__item[data-current] .cf__btn{cursor:zoom-in}.cf__itemcap{display:none}.cf__ctrl{align-items:start;gap:var(--s-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.cf__ctrl .ibtn{width:40px;height:40px}.cf__ctrl .ibtn:disabled{opacity:.4;cursor:default;box-shadow:none}.cf__cap{text-align:center;min-height:2.8em;font-size:var(--fs-sm);color:var(--ink-soft);text-wrap:pretty}.cf__n{font:600 var(--fs-xs)/1 var(--font-ui);color:var(--ink);font-variant-numeric:tabular-nums;margin-right:var(--s-2)}.cf__text{display:inline}html:not(.js) .cf__stage{perspective:none;scroll-snap-type:x mandatory;cursor:auto;height:auto;padding:var(--s-3);overflow-x:auto}html:not(.js) .cf__track{gap:var(--s-4);display:flex;position:static}html:not(.js) .cf__item{opacity:1;scroll-snap-align:center;flex:none;max-width:80%;position:static;transform:none}html:not(.js) .cf__itemcap{color:var(--on-dark-soft);font-size:var(--fs-xs);margin-top:var(--s-2);display:block}html:not(.js) .cf__ctrl,html:not(.js) .cf>.cf__cap{display:none}@media (forced-colors:active){.cf__item:not([data-current]) .cf__btn img{filter:none}}.lb{background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.lb[open]{place-items:center;display:grid}.lb::backdrop{background:0 0}html:has(.lb[open]){overflow:hidden}.lb__scrim{background:oklch(14% .03 285/.9);position:absolute;inset:0}.lb__fig{justify-items:center;gap:var(--s-3);pointer-events:none;max-width:100%;padding:64px 72px 24px;display:grid;position:relative}.lb__img{border:2px solid var(--edge);background:var(--edge);pointer-events:auto;touch-action:pan-y;width:auto;max-width:min(100%,1400px);height:auto;max-height:calc(100dvh - 160px);box-shadow:0 24px 64px oklch(0% 0 0/.45)}.lb__cap{text-align:center;max-width:70ch;color:var(--on-dark);font-size:var(--fs-sm);margin:0}.lb__n{color:var(--accent);margin-right:var(--s-2);font-variant-numeric:tabular-nums;font-weight:600}.lb__btn{width:44px;height:44px;position:absolute}.lb__btn:disabled{opacity:.35;cursor:default}.lb__close{top:16px;right:16px}.lb__prev,.lb__next{z-index:1;top:calc(50% - 22px)}.lb__prev{left:16px}.lb__next{right:16px}.lb__close{z-index:1}@media (width<=600px){.lb__fig{padding:64px 12px 88px}.lb__prev,.lb__next{top:auto;bottom:20px}.lb__prev{left:calc(50% - 56px)}.lb__next{right:calc(50% - 56px)}}.seg2{border:2px solid var(--edge);background:var(--paper);flex-wrap:wrap;display:inline-flex}.seg2 button{min-height:32px;font:600 var(--fs-xs)/1.2 var(--font-ui);color:var(--ink);cursor:pointer;background:0 0;border:0;padding:4px 10px}.seg2 button+button{border-left:2px solid var(--edge)}.seg2 button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.seg2 button:not([aria-pressed=true]):hover{background:var(--accent);color:var(--on-accent)}.scan[data-mode=photo] [data-for=barcode],.scan[data-mode=barcode] [data-for=photo]{display:none!important}.scan__photo{width:100%;height:100%;display:block;position:absolute;inset:0}.scan__view>.scan__corner,.scan__view>.scan__line{z-index:1}.scan[data-mode=photo] .scan__corner{filter:drop-shadow(1px 1px 0 var(--edge))}.scan__stage{align-items:start}.tabps{display:grid}.tabps>.tabp{grid-area:1/1}.tabps>.tabp[hidden]{visibility:hidden;display:grid!important}.scan__cam{gap:6px;min-width:0;display:grid}.scan__cascade{font:500 .6875rem/1.3 var(--font-mono);color:var(--ink);overflow-wrap:anywhere;gap:2px;margin:0;padding:0;list-style:none;display:grid}.scan__cascade .is-skip{color:var(--ink-soft);text-decoration:line-through}.scan__cascade .is-ok:before{content:"✓ ";color:light-dark(oklch(50% .14 150),oklch(80% .15 150))}.ncard__src{font:500 var(--fs-xs)/1.3 var(--font-ui);color:var(--ink-soft)}.tabs{border-bottom:2px solid var(--edge);gap:0;display:flex}.tabs button{min-height:32px;font:600 var(--fs-xs)/1.2 var(--font-ui);color:var(--ink-soft);cursor:pointer;background:0 0;border:2px solid #0000;border-bottom:0;margin-bottom:-2px;padding:4px 10px}.tabs button[aria-selected=true]{border-color:var(--ink);background:var(--paper);color:var(--ink)}.tabs button:hover{color:var(--ink)}.tabp{align-content:start;gap:8px;min-height:6em;display:grid}.ai-warn{border:2px solid var(--px-r);font:600 var(--fs-xs)/1.35 var(--font-ui);background:light-dark(oklch(94% .05 27),oklch(30% .07 27));align-items:baseline;gap:8px;padding:6px 8px;display:flex}.ai-warn b{color:light-dark(var(--px-r),oklch(80% .13 27))}.diet{flex-wrap:wrap;gap:4px;display:flex}.diet li{font:500 var(--fs-xs)/1.2 var(--font-ui);border:2px solid var(--paper-3);background:var(--paper-2);padding:3px 6px}.diet li[data-v=yes]{border-color:var(--px-G)}.diet li[data-v=no]{border-color:var(--px-r)}.diet li span{font-weight:700}.ai-pm{font-size:var(--fs-xs);gap:6px;display:flex}.ai-pm b{flex:none;width:1ch}.recipes{gap:6px;display:grid}.recipes li{background:var(--paper-2);font-size:var(--fs-xs);padding:6px 8px;display:grid}.recipes b{font-weight:600;font-size:var(--fs-sm)}.recipes small{color:var(--ink-soft)}.sun{--sun-bg:light-dark(oklch(95% .04 85),oklch(22% .025 70));--paper:light-dark(oklch(97.5% .006 285),oklch(29% .03 70));background:var(--sun-bg);gap:12px;padding:16px;display:grid}.sun__screen{gap:10px;max-width:480px;display:grid}.sun__q{font:600 var(--fs-sm)/1.2 var(--font-ui)}.sun__chips{flex-wrap:wrap;gap:6px;display:flex}.sun__chips button{border:2px solid var(--edge);background:var(--paper);min-height:32px;font:600 var(--fs-xs)/1.2 var(--font-ui);color:var(--ink);cursor:pointer;border-radius:999px;padding:4px 10px}.sun__chips button[aria-pressed=true]{color:var(--on-accent);background:oklch(80% .14 70)}.sun__chips button[aria-pressed=true]:before{content:"✓ "}.sun__list{gap:6px;display:grid}.sun__list li{background:var(--paper);border:2px solid var(--edge);border-radius:12px;grid-template-columns:32px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.sun__list li[data-n="0"]{opacity:.6}.sun__ava{border:2px solid var(--edge);background:var(--c,var(--px-o));border-radius:50%;width:32px;height:32px}.sun__ava[data-m=dino]{--c:var(--px-g)}.sun__ava[data-m=cat]{--c:var(--px-p)}.sun__ava[data-m=owl]{--c:var(--px-B)}.sun__who{min-width:0;display:grid}.sun__who b{font:600 var(--fs-sm)/1.2 var(--font-ui)}.sun__who small{font-size:var(--fs-xs);color:var(--ink-soft)}.sun__n{font:600 var(--fs-xs)/1 var(--font-ui);white-space:nowrap}.sun>.tabs{flex-wrap:wrap;max-width:480px}.sun .tabs button[aria-selected=true]{background:var(--sun-bg)}.sun__found{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.sun__mine{color:var(--ink-soft);align-items:center;gap:6px;font-weight:500;display:inline-flex}.sun__mine .sun__ava{width:20px;height:20px}.sun__same{font:italic 500 var(--fs-xs)/1.3 var(--font-ui);color:light-dark(var(--px-G),var(--px-g))}.sun__like{border:2px solid var(--edge);background:var(--paper);width:36px;height:36px;color:light-dark(var(--px-r),oklch(72% .18 25));cursor:pointer;border-radius:50%;place-items:center;font-size:1.1rem;line-height:1;display:grid}.sun__like[aria-pressed=true]{background:light-dark(oklch(92% .06 0),oklch(38% .09 0))}.sun__destroy{gap:8px;display:grid}.sun__row{flex-wrap:wrap;gap:6px;display:flex}.sun__row input{border:2px solid var(--edge);background:var(--paper);min-width:0;min-height:36px;font:500 var(--fs-sm)/1.2 var(--font-ui);color:var(--ink);border-radius:12px;flex:160px;padding:4px 10px}.sun__btn{border:2px solid var(--edge);min-height:36px;font:600 var(--fs-sm)/1.2 var(--font-ui);color:var(--on-accent);cursor:pointer;background:oklch(85% .06 120);border-radius:12px;padding:4px 14px}.sun__btn:disabled{opacity:.6;cursor:default}.sun__stage{min-height:72px;display:grid;overflow:hidden}.sun__stage>*{grid-area:1/1}.sun__blast{place-items:center;display:grid;position:relative}.sun__gone{text-align:center;place-self:center}.sun__word{z-index:1;font:700 var(--fs-base)/1.2 var(--font-ui);text-align:center;overflow-wrap:anywhere;position:relative}.sun__word span{white-space:pre;display:inline-block}.sun__boom{visibility:hidden;background:radial-gradient(circle,oklch(93% .17 100) 0 30%,oklch(80% .17 65) 31% 62%,oklch(64% .21 32) 63%);border-radius:42% 58% 46% 54%;width:64px;height:64px;position:absolute}.sun__wheelbox{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.sun__wheel{aspect-ratio:1;flex:none;width:132px;position:relative}.sun__disc{border:2px solid var(--edge);background:conic-gradient(var(--px-o) 0 60deg, var(--px-g) 0 120deg, var(--px-p) 0 180deg, var(--px-c) 0 240deg, oklch(90% .12 95) 0 300deg, var(--px-B) 0 360deg);border-radius:50%;position:absolute;inset:0}.sun__pin{border:9px solid #0000;border-top:14px solid var(--edge);border-bottom:0;width:0;height:0;position:absolute;top:-6px;left:50%;translate:-50%}.sun__wheeltext{flex:160px;justify-items:start;gap:8px;min-width:0;display:grid}.sun__got b{font-weight:700}.sun__lock{font-size:var(--fs-xs);color:var(--ink-soft)}.goida{background:var(--paper-2);gap:12px;padding:16px;display:grid}.goida__world{grid-template-columns:repeat(var(--cols), 1fr);border:2px solid var(--edge);background:linear-gradient(oklch(72% .1 235),oklch(84% .06 220));width:100%;max-width:432px;display:grid;position:relative;overflow:hidden}.goida__world i{aspect-ratio:1;display:block;box-shadow:inset -2px -2px oklch(0% 0 0/.16),inset 2px 2px oklch(100% 0 0/.14)}.goida__world i[data-b=\.]{box-shadow:none}.goida__world i[data-b=r]{background:oklch(50% .12 35)}.goida__world i[data-b=l]{background:oklch(45% .07 60)}.goida__world i[data-b=p]{background:oklch(68% .09 70)}.goida__world i[data-b=g]{background:oklch(85% .05 220)}.goida__world i[data-b=d]{background:oklch(40% .06 55)}.goida__world i[data-b=G]{background:linear-gradient(oklch(62% .15 140) 0 34%,oklch(48% .07 60) 34%)}.goida__world i[data-b=D]{background:oklch(48% .07 60)}.goida__world i[data-b=S]{background:oklch(60% .01 285)}.goida__world i[data-b=L]{background:oklch(52% .13 145)}.goida__world i[data-b=T]{background:oklch(42% .07 60)}.goida__world i[data-b=t]{background:linear-gradient(oklch(55% .2 28) 0 30%,oklch(95% 0 0) 30% 70%,oklch(55% .2 28) 70%);position:relative}.goida__world i[data-b=t]:after{content:"TNT";font:700 7px/1 var(--font-mono);color:oklch(20% 0 0);place-items:center;display:grid;position:absolute;inset:0}.goida__world i[data-b=t].is-lit{background:oklch(100% 0 0)}.goida__world i.is-gone{visibility:hidden}.goida__p{pointer-events:none;width:6px;height:6px;position:absolute;top:0;left:0}.goida__flash{pointer-events:none;visibility:hidden;background:radial-gradient(circle,oklch(100% 0 0) 0 30%,oklch(95% .12 95) 31% 55%,oklch(80% .16 60/.6) 56% 70%,#0000 71%);border-radius:50%;width:40px;height:40px;margin:-20px 0 0 -20px;position:absolute}.goida__con{gap:10px;min-width:0;display:grid}.goida__log{color:oklch(97% .006 285);border:2px solid var(--edge);min-height:8.5em;max-height:11em;font:500 .75rem/1.45 var(--font-mono);background:oklch(20% .055 280);align-content:start;gap:2px;padding:8px 10px;display:grid;overflow:auto}.goida__log .is-cmd{color:oklch(87% .13 92)}.goida__log .is-cmd:before{content:"> "}.goida__log .is-ok{color:oklch(85% .12 150)}.goida__btns{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.goida__btns .demo__replay{position:static}.btn:disabled{opacity:.5;cursor:default;translate:none}@container (width>=620px){.goida{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start}.goida .demo__note{grid-column:1/-1}}.cozy{--paper:light-dark(oklch(97.5% .006 285),oklch(29% .025 10));background:light-dark(oklch(95% .03 15),oklch(22% .02 10));gap:14px;padding:16px;display:grid}.cozy__app{background:var(--paper);border:2px solid var(--edge);text-align:center;border-radius:18px;justify-items:center;gap:8px;padding:14px;display:grid}.cozy__since{font:600 var(--fs-xs)/1 var(--font-ui);color:var(--ink-soft)}.cozy__count{font-size:var(--fs-sm)}.cozy__count b{font:700 var(--fs-xl)/1 var(--font-ui);font-variant-numeric:tabular-nums}.cozy__hms{font:500 var(--fs-xs)/1.4 var(--font-mono);color:var(--ink-soft);font-variant-numeric:tabular-nums;display:block}.cozy__card{perspective:600px;cursor:pointer;width:min(100%,240px);height:120px;color:var(--ink);background:0 0;border:0;padding:0;position:relative}.cozy__face{border:2px solid var(--edge);backface-visibility:hidden;font:500 var(--fs-sm)/1.35 var(--font-ui);border-radius:14px;place-content:center;gap:4px;padding:10px;transition:transform .45s cubic-bezier(.3,.7,.3,1);display:grid;position:absolute;inset:0}.cozy__front{background:light-dark(oklch(86% .08 10),oklch(36% .08 10))}.cozy__front small{font-size:var(--fs-xs);color:var(--ink-soft)}.cozy__heart{background:var(--px-r);clip-path:polygon(0 25%,25% 0,50% 25%,75% 0,100% 25%,50% 100%);justify-self:center;width:14px;height:12px}.cozy__back{background:var(--paper);transform:rotateY(180deg)}.cozy__read{color:light-dark(var(--px-G),var(--px-g));font-weight:600;font-size:var(--fs-xs)}.cozy__card[aria-pressed=true] .cozy__front{transform:rotateY(-180deg)}.cozy__card[aria-pressed=true] .cozy__back{transform:rotateY(0)}.cozy__bot{align-content:start;justify-items:start;gap:8px;min-width:0;display:grid}.cozy__botname{font:600 var(--fs-xs)/1 var(--font-ui);color:var(--ink-soft)}.cozy__chat{gap:6px;width:100%;display:grid}.cozy__chat li{border:2px solid var(--edge);max-width:88%;font-size:var(--fs-xs);border-radius:12px;padding:6px 10px;line-height:1.35}.cozy__chat .is-me{background:light-dark(oklch(90% .06 140),oklch(34% .06 140));justify-self:end}.cozy__chat .is-bot{background:var(--paper)}@container (width>=520px){.cozy{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.cozy .demo__note{grid-column:1/-1}}.vpn{background:var(--sky-0);padding:16px}.vpn__app{max-width:460px;color:var(--on-dark);border:2px solid var(--on-dark-soft);background:oklch(24% .05 280);gap:12px;padding:14px;display:grid}.vpn__top{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.vpn__planet{background:oklch(55% .12 270);border-radius:50%;width:44px;height:44px;position:relative;box-shadow:inset -8px -6px oklch(40% .1 270)}.vpn__planet i{background:var(--accent);transform-origin:3px 20px;width:6px;height:6px;margin-left:-3px;position:absolute;top:2px;left:50%}.vpn[data-s=connecting] .vpn__planet i{animation:.9s steps(8,end) infinite orbit}.vpn[data-s=on] .vpn__planet{background:oklch(60% .14 160);box-shadow:inset -8px -6px oklch(45% .12 160),0 0 0 3px oklch(72% .17 150/.4)}@keyframes orbit{to{transform:rotate(1turn)}}.vpn__state{gap:2px;display:grid}.vpn__state b{font:600 var(--fs-md)/1.2 var(--font-ui)}.vpn__timer{font:500 var(--fs-xs)/1 var(--font-mono);color:var(--on-dark-soft);font-variant-numeric:tabular-nums}.vpn__switch{border:2px solid var(--on-dark);background:var(--on-dark-line);cursor:pointer;width:60px;height:32px;padding:0;position:relative}.vpn__switch i{background:var(--on-dark);width:24px;height:24px;transition:translate .2s cubic-bezier(.3,.7,.3,1);position:absolute;top:2px;left:2px}.vpn__switch[aria-checked=true]{background:var(--ok)}.vpn__switch[aria-checked=true] i{translate:28px}.vpn .seg2{border-color:var(--on-dark-soft);background:0 0}.vpn .seg2 button{color:var(--on-dark)}.vpn .seg2 button+button{border-color:var(--on-dark-soft)}.vpn .seg2 button[aria-pressed=true]{background:var(--on-dark);color:var(--on-accent)}.vpn .seg2 button:not([aria-pressed=true]):hover{background:oklch(100% 0 0/.12)}.vpn__h{font:600 var(--fs-xs)/1 var(--font-ui);color:var(--on-dark-soft)}.vpn__routes{font-size:var(--fs-xs);gap:4px;display:grid}.vpn__routes li{background:oklch(100% 0 0/.06);justify-content:space-between;gap:10px;padding:5px 8px;display:flex}.vpn__routes span{font-family:var(--font-mono)}.vpn__routes li[data-via=t] b{color:oklch(85% .12 150)}.vpn__routes li[data-via=t] b:before{content:"● "}.vpn__ks{font-size:var(--fs-xs);color:var(--on-dark-soft)}.vpn .demo__note{color:var(--on-dark-soft);margin-top:10px}.eva{background:var(--sky-0);color:var(--on-dark);gap:12px;padding:16px;display:grid}.eva__head{font:600 var(--fs-sm)/1.2 var(--font-ui);flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.eva .tag{color:var(--ink)}.eva__tl{border:2px solid var(--on-dark-soft);background:oklch(24% .05 280);height:110px;position:relative}.eva__kp{bottom:18px;left:calc(var(--h) / 24 * 100% + 1px);width:calc(4.16667% - 2px);height:calc(var(--k) / 9 * 80px);transform-origin:bottom;background:oklch(70% .1 250);position:absolute}.eva__kp[data-hot]{background:oklch(68% .18 30)}.eva__saa{top:4px;left:calc(var(--s) / 24 * 100%);background:var(--accent);width:4px;height:8px;position:absolute}.eva__sel{top:0;bottom:16px;left:calc(var(--from) / 24 * 100%);width:calc((var(--to) - var(--from)) / 24 * 100%);border:2px solid var(--on-dark);background:oklch(100% 0 0/.08);transition:left .3s,width .3s;position:absolute}.eva__axis{font:500 .6875rem/16px var(--font-mono);color:var(--on-dark-soft);justify-content:space-between;padding:0 2px;display:flex;position:absolute;bottom:0;left:0;right:0}.eva__wins{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;display:grid}.eva__wins button{text-align:left;border:2px solid var(--on-dark-soft);color:var(--on-dark);cursor:pointer;font:500 var(--fs-xs)/1.2 var(--font-ui);background:0 0;gap:2px;padding:6px 8px;display:grid}.eva__wins button b{font-family:var(--font-mono);font-weight:600}.eva__wins button[aria-pressed=true]{background:var(--on-dark);color:var(--on-accent);border-color:var(--on-dark)}.eva__wins button:not([aria-pressed=true]):hover{background:oklch(100% 0 0/.1)}.eva__wins button:before,.eva__v b:before{content:"";background:var(--vc);width:8px;height:8px;margin-right:6px;display:inline-block}[data-v=go]{--vc:var(--ok)}[data-v=caution]{--vc:var(--accent)}[data-v=nogo]{--vc:var(--px-r)}.eva__verdict{background:var(--paper);color:var(--ink);border:2px solid var(--edge);gap:8px;padding:10px 12px;display:grid}.eva__v{font:500 var(--fs-sm)/1.2 var(--font-ui)}.eva__v b{font-weight:700}.eva__v span{font-family:var(--font-mono);color:var(--ink-soft)}.eva__verdict dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;display:grid}.eva__verdict dl div{background:var(--paper-2);padding:6px}.eva__verdict dt{font:500 var(--fs-xs)/1.2 var(--font-ui);color:var(--ink-soft)}.eva__verdict dd{font:600 var(--fs-sm)/1.2 var(--font-ui);margin:0}.jump{background:var(--paper-2);gap:10px;padding:16px;display:grid}.jump__space{background:var(--sky-0) radial-gradient(circle, var(--star) 1px, transparent 1.5px) 0 0 / 37px 29px;border:2px solid var(--edge);height:180px;position:relative;overflow:hidden}.jump__ship{width:80px;image-rendering:pixelated;margin-top:-25px;position:absolute;top:50%;left:8%}.jump__junk{top:var(--y);cursor:crosshair;background:0 0;border:0;width:44px;height:44px;padding:8px;position:absolute;left:0;translate:78cqw}.jump__junk svg{width:100%;height:100%}.jump__junk.is-hit{visibility:hidden}.jump__hud{font:500 var(--fs-sm)/1.2 var(--font-ui);flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.jump__hud b{font-variant-numeric:tabular-nums}.jump__bar{border:2px solid var(--edge);background:var(--paper);flex:100px;height:12px}.jump__bar i{background:var(--accent);width:0;height:100%;transition:width .2s steps(4,end);display:block}@media (prefers-reduced-motion:no-preference){.jump.is-on .jump__junk{animation:drift var(--t) linear var(--d) infinite}.jump.is-on .jump__flame{animation:.3s step-end infinite blink}.jump.is-warp .jump__space{background-size:120px 29px;transition:background-size .2s}@keyframes drift{0%{translate:100cqw}to{translate:-48px}}}@media (prefers-reduced-motion:reduce){.cozy__face,.vpn__switch i,.eva__sel,.jump__bar i{transition:none}.cozy__card[aria-pressed=true] .cozy__front,.cozy__back{opacity:0;transform:none}.cozy__card[aria-pressed=true] .cozy__back{opacity:1}}
