@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.mascot{width:100%;height:auto;filter:drop-shadow(0 0 1.5px #fef2dc) drop-shadow(0 0 1.5px #fef2dc) drop-shadow(0 6px 10px rgb(var(--navy-rgb) / .25));user-select:none}html{--g-tint:#9bd0ff42;--g-hi:.3;--g-lo:.08;--g-edge:.6}html[data-theme=night]{--g-tint:#4a7fe03d;--g-hi:.14;--g-lo:.04;--g-edge:.38}html .panel,html .contact-card,html .cards a,html .finale .site-footer,html .chip,html .back a,html .social a,html .companion .bubble,html .hud{background:linear-gradient(135deg, rgb(255 255 255/var(--g-hi)) 0%, #ffffff08 45%, rgb(255 255 255/var(--g-lo)) 100%), var(--g-tint);backdrop-filter:blur(14px)saturate(1.3);box-shadow:inset 0 1px 0 #ffffff80, inset 0 0 14px #ffffff0f, 0 8px 22px -14px rgb(var(--navy-rgb) / .3);border:1px solid #ffffff38}html .panel,html .contact-card,html .cards a{position:relative}html .panel:before,html .contact-card:before{content:"";border-radius:inherit;pointer-events:none;mix-blend-mode:soft-light;background:radial-gradient(120% 70% at 10% -5%,#ffffff4d,#0000 55%);position:absolute;inset:0}html .panel:after,html .contact-card:after,html .cards a:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg, rgb(255 255 255/var(--g-edge)), #ffffff0d 40%, #ffffff08 62%, #ffffff59);-webkit-mask-composite:xor;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}html .site-header{background:linear-gradient(180deg, rgb(255 255 255/calc(var(--g-hi) * .7)), #ffffff08), var(--g-tint);backdrop-filter:blur(16px)saturate(1.25);box-shadow:0 6px 18px -16px rgb(var(--navy-rgb) / .4);border-bottom:1px solid #ffffff38}html[data-glass=off] :is(.panel,.contact-card,.cards a,.finale .site-footer,.chip,.back a,.social a,.companion .bubble,.hud){background:color-mix(in srgb, var(--bg) 78%, transparent);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:none}html[data-glass=off] :is(.panel,.contact-card,.cards a):before,html[data-glass=off] :is(.panel,.contact-card,.cards a):after{display:none}html[data-glass=off] .site-header{background:color-mix(in srgb, var(--bg) 70%, transparent);box-shadow:none;border-bottom:1px solid var(--line)}html .panel,html .contact-card{color:var(--text)}html .btn:not(.ghost){box-shadow:0 1px 2px rgb(var(--navy-rgb) / .3), 0 6px 14px -8px rgb(var(--navy-rgb) / .45);border:0;transition:transform .18s,box-shadow .18s,filter .18s}html .btn:not(.ghost):hover{filter:brightness(1.06);transform:translateY(-1px)}html .btn:not(.ghost):active{box-shadow:0 1px 1px rgb(var(--navy-rgb) / .3);transition-duration:50ms;transform:translateY(1px)}html .btn.ghost{transition:transform .18s,background .18s}html .btn.ghost:hover{transform:translateY(-1px)}html .btn.ghost:active{transform:translateY(1px)}html.js .reveal{opacity:0;transition:opacity .55s,transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 45ms);transform:translateY(.7rem)}html.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1;transition:none;transform:none}}img.fade-pending{opacity:0}img.loaded{animation:.5s both img-in}@keyframes img-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){img.loaded{animation:none}}.clouds{translate:calc(var(--px,0) * -6px) calc(var(--py,0) * -4px);transition:translate .4s ease-out}.stars{translate:calc(var(--px,0) * 4px) calc(var(--py,0) * 3px);transition:translate .4s ease-out}.fx{z-index:2000;pointer-events:none;position:fixed;inset:0;overflow:hidden}.spark{width:var(--s,.8rem);height:var(--s,.8rem);background:var(--c,#ffd75e);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);animation:.7s cubic-bezier(.2,.8,.3,1) forwards spark;position:absolute;translate:-50% -50%}.spark.soft{opacity:.85;animation-duration:.5s}@keyframes spark{0%{opacity:1;transform:translate(0)scale(.2)rotate(0)}to{transform:translate(var(--dx), var(--dy)) scale(1) rotate(140deg);opacity:0}}.companion{z-index:45;cursor:pointer;opacity:.9;background:0 0;border:0;width:3.4rem;height:3.4rem;padding:0;transition:opacity .2s,transform .2s;position:fixed;bottom:6.4rem;left:.9rem}.companion:hover{opacity:1;transform:translateY(-2px)}.companion img{object-fit:contain;opacity:0;width:100%;height:100%;filter:drop-shadow(0 0 1px #fef2dc) drop-shadow(0 0 1px #fef2dc) drop-shadow(0 4px 6px rgb(var(--navy-rgb) / .25));transition:opacity .2s;position:absolute;inset:0}.companion img.on{opacity:1}.companion.hop{animation:.45s nod}.companion .bubble{border-radius:var(--r-md) var(--r-md) var(--r-md) .3rem;width:max-content;max-width:15rem;color:var(--text);text-align:left;opacity:0;pointer-events:none;margin-left:.5rem;padding:.5rem .85rem;font-size:.92rem;line-height:1.3;transition:opacity .25s,transform .3s;position:absolute;bottom:62%;left:100%;transform:translateY(.3rem)}.companion .bubble.show{opacity:1;transform:none}@keyframes nod{0%,to{transform:translateY(0)}40%{transform:translateY(-.35rem)}}@media (prefers-reduced-motion:reduce){.companion.hop{animation:none}}@media (width<=640px){.companion{width:2.8rem;height:2.8rem;bottom:.8rem;left:.6rem}.companion .bubble{max-width:11rem;bottom:70%}}.lightbox{color:#fef2dc;background:#080e1cf0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0}.lightbox::backdrop{backdrop-filter:blur(6px);background:#080e1cd9}.lb-stage{cursor:zoom-in;place-items:center;width:100%;height:100%;display:grid;overflow:hidden}.lb-stage.zoomed{cursor:zoom-out}.lb-stage img{object-fit:contain;border-radius:var(--r-md);user-select:none;-webkit-user-drag:none;max-width:96vw;max-height:92dvh;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.lb-close{z-index:2;width:2.8rem;height:2.8rem;color:inherit;cursor:pointer;background:#fef2dc1f;border:1px solid #fef2dc66;border-radius:50%;font-size:1.1rem;position:fixed;top:1rem;right:1rem}.lb-close:hover{background:#fef2dc40}.lb-nav{z-index:2;width:3rem;height:3rem;color:inherit;cursor:pointer;background:#fef2dc1f;border:1px solid #fef2dc66;border-radius:50%;font-size:1.3rem;position:fixed;top:50%;translate:0 -50%}.lb-nav:hover{background:#fef2dc40}.lb-prev{left:1rem}.lb-next{right:1rem}.lb-cap{z-index:2;gap:.15rem;max-width:60vw;margin:0;font-size:1rem;display:grid;position:fixed;top:1rem;left:1rem}.lb-cap a{color:inherit;opacity:.75;font-size:.9rem}.lb-help{text-align:center;opacity:.75;pointer-events:none;margin:0;font-size:.9rem;position:fixed;bottom:.9rem;left:0;right:0}.slide a,.zoomable,.gallery a,.works a{cursor:url(/cursors/pencil.svg) 3 29,pointer}@property --sig-p{syntax:"<percentage>";inherits:false;initial-value:100%}.signature{--sig-p:100%;width:var(--sig-w,14rem);aspect-ratio:1393/325;opacity:.9;-webkit-mask-image:url(/signature.png), linear-gradient(90deg, #000 var(--sig-p), transparent calc(var(--sig-p) + 7%));mask-image:url(/signature.png), linear-gradient(90deg, #000 var(--sig-p), transparent calc(var(--sig-p) + 7%));-webkit-mask-composite:source-in;background-color:currentColor;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain,100% 100%;mask-size:contain,100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mask-composite:intersect}html.js .signature[data-draw]:not(.drawn){--sig-p:-7%}.signature.drawn{animation:3.8s cubic-bezier(.4,.05,.35,1) both sign-draw}@keyframes sign-draw{0%{--sig-p:-7%}to{--sig-p:100%}}@media (prefers-reduced-motion:reduce){html.js .signature[data-draw]:not(.drawn){--sig-p:100%}.signature.drawn{animation:none}}.brush{z-index:70;pointer-events:none;opacity:0;height:.6rem;transition:opacity .4s;position:fixed;top:0;left:0;right:0}.brush svg{width:100%;height:100%;display:block;overflow:visible}.brush path{fill:none;stroke:var(--accent);stroke-width:3.2px;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1px}.brush.run{opacity:1}.brush.run path{stroke-dashoffset:.3px;transition:stroke-dashoffset 5s cubic-bezier(.1,.6,.2,1)}.brush.done{opacity:1}.brush.done path{stroke-dashoffset:0;transition:stroke-dashoffset .35s ease-out}.brush.gone{opacity:0}.brush.reset path{stroke-dashoffset:1px;transition:none}.sig-footer{--sig-w:6.8rem;flex:none}.keys-open{border:1px solid var(--line);width:1.7rem;height:1.7rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:.9rem;display:grid}.keys-open:hover{color:var(--text);border-color:var(--muted)}@media (pointer:coarse){.keys-open{display:none}}.keys{z-index:1500;backdrop-filter:blur(4px);background:#080e1c59;place-items:center;display:grid;position:fixed;inset:0}.keys[hidden]{display:none}.keys .panel{width:min(28rem,100% - 2rem)}.keys h2{margin:0 0 .8rem;font-size:1.15rem}.keys dl{gap:.6rem;margin:0;display:grid}.keys dl>div{grid-template-columns:9rem 1fr;align-items:center;gap:1rem;display:grid}.keys dt{white-space:nowrap}.keys dd{color:var(--muted);margin:0}.keys kbd{border:1px solid var(--line);background:var(--chip-bg);min-width:1.6rem;font:inherit;text-align:center;box-shadow:0 1px 0 var(--line);border-radius:.4rem;padding:.1rem .45rem;font-size:.85rem;display:inline-block}body:not(.home) .keys .only-home{display:none}.share{border:1px solid var(--line);background:var(--chip-bg);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .95rem;font-size:.95rem;transition:border-color .15s,transform .18s;display:inline-flex}.share:hover{border-color:var(--accent);transform:translateY(-1px)}.share svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.05rem;height:1.05rem}.social{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.social a{width:3rem;height:3rem;color:var(--text);border-radius:50%;place-items:center;text-decoration:none;transition:transform .18s,color .18s;display:grid}.social a:hover{color:var(--accent);transform:translateY(-2px)}.social svg{fill:currentColor;width:1.4rem;height:1.4rem}.sound-toggle{border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.sound-toggle:hover{color:var(--text);border-color:var(--muted)}.sound-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}html[data-sound=on] .icon-snd-off,html:not([data-sound=on]) .icon-snd-on{display:none}@media (pointer:coarse){.sound-toggle{width:2.75rem;height:2.75rem}}@media (pointer:coarse) and (width<=520px){.sound-toggle{width:2.5rem;height:2.5rem}}html[data-feel=lively]{--g-hi:.5;--g-lo:.14;--g-edge:.95}html[data-feel=lively] .panel,html[data-feel=lively] .contact-card,html[data-feel=lively] .cards a{backdrop-filter:blur(16px)saturate(1.8)brightness(1.06)}html[data-feel=lively] .btn:not(.ghost){box-shadow:0 .28rem 0 color-mix(in srgb, var(--btn-bg) 55%, #000), 0 .6rem 1rem -.4rem rgb(var(--navy-rgb) / .5);transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .12s,filter .15s}html[data-feel=lively] .btn:not(.ghost):hover{transform:translateY(-.14rem)scale(1.04)}html[data-feel=lively] .btn:not(.ghost):active{box-shadow:0 .06rem 0 color-mix(in srgb, var(--btn-bg) 55%, #000);transform:translateY(.2rem)scale(.99)}html[data-feel=lively].js .reveal{transition:opacity .5s,transform .75s cubic-bezier(.34,1.5,.64,1);transition-delay:calc(var(--i,0) * 75ms);transform:translateY(1.5rem)scale(.95)}html[data-feel=lively].js .reveal.in{transform:none}html[data-feel=lively] .clouds{translate:calc(var(--px,0) * -14px) calc(var(--py,0) * -8px)}html[data-feel=lively] .stars{translate:calc(var(--px,0) * 9px) calc(var(--py,0) * 6px)}html[data-feel=lively] .companion{width:4.4rem;height:4.4rem;animation:3.6s ease-in-out infinite bob}html[data-feel=lively] .companion.hop{animation:.55s cubic-bezier(.34,1.56,.64,1) hop,3.6s ease-in-out .55s infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-.35rem)}}@keyframes hop{0%{transform:scale(1)}25%{transform:translateY(.2rem)scale(1.18,.8)}55%{transform:translateY(-1.1rem)scale(.88,1.15)}to{transform:translateY(0)scale(1)}}html[data-feel=lively] .social a:hover{transform:translateY(-.25rem)rotate(-8deg)scale(1.1)}@media (prefers-reduced-motion:reduce){html[data-feel=lively] .companion,html[data-feel=lively] .companion.hop{animation:none}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--bg:#bfe3f7;--surface:#ffffff8c;--line:#1e3a5f38;--text:#1e3a5f;--muted:#44597a;--accent:#24558c;--btn-bg:#24558c;--btn-fg:#fff;--chip-bg:#fef2dceb;--cream:#fef2dc;--brown:#9d5b3e;--rose:#f4b9ae;--mint:#cbeed9;--navy-rgb:18 34 60;--gap:1rem;--maxw:88rem;--r-md:1.1rem;--r-lg:1.6rem;--glow:#ffffffa6;--font:"More Sugar", ui-rounded, "SF Pro Rounded", "Hiragino Maru Gothic ProN", Nunito, system-ui, sans-serif;color-scheme:light}:root[data-theme=night]{--bg:#12306a;--surface:#ffffff14;--line:#fef2dc33;--text:#fef2dc;--muted:#aab9d8;--accent:#ffd75e;--btn-bg:#ffd75e;--btn-fg:#14284f;--chip-bg:#14284fe6;--glow:#08142ebf;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-h,4.5rem);font-size:clamp(16px,.55vw + 12px,26px)}body{background:var(--bg);color:var(--text);font-family:var(--font);font-synthesis:none;flex-direction:column;min-height:100dvh;margin:0;font-size:1.1rem;line-height:1.6;display:flex}button,input,textarea,select{font-family:inherit}main h1{letter-spacing:-.01em;margin:0 0 .6rem;font-size:clamp(2.2rem,3.6vw,3.4rem);line-height:1.1}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable],.selectable,a[href^=mailto\:]{-webkit-user-select:text;user-select:text}img{-webkit-user-drag:none;user-drag:none}main{width:100%;max-width:var(--maxw);flex:1;margin:0 auto;padding:0 1.25rem 3rem}a{color:inherit}img{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sky{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.sky-layer{transition:opacity .8s;position:absolute;inset:0}.sky-day{background:linear-gradient(#7ec3ee 0%,#bfe3f7 55%,#eaf6fc 100%)}.sky-night{opacity:0;background:linear-gradient(#08142e 0%,#12306a 60%,#1c4a8c 100%)}[data-theme=night] .sky-night{opacity:1}.clouds{transition:opacity .8s;position:absolute;inset:0}[data-theme=night] .clouds{opacity:.2;mix-blend-mode:screen}.cloud{top:var(--top);width:clamp(130px, var(--w), 520px);max-width:none;animation:drift var(--dur) linear var(--delay) infinite;position:absolute;left:0}@keyframes drift{0%{transform:translate(-100%)}to{transform:translate(100vw)}}.stars{opacity:0;transition:opacity .8s;position:absolute;inset:0}[data-theme=night] .stars{opacity:1}.star{left:var(--x);top:var(--y);width:var(--s);height:var(--s);animation:twinkle var(--t) ease-in-out var(--d) infinite;background:#ffd75e;border-radius:50%;position:absolute;box-shadow:0 0 6px 1px #ffd75e99}.star.sparkle{box-shadow:none;filter:drop-shadow(0 0 4px #ffd75ecc);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);border-radius:0}@keyframes twinkle{0%,to{opacity:.4}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.cloud{left:var(--x);animation:none}.star{animation:none}}.skip-link{z-index:100;background:var(--btn-bg);color:var(--btn-fg);border-radius:999px;padding:.5rem 1rem;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:.75rem}.site-header{z-index:50;width:100%;padding:.6rem max(1.25rem, calc((100% - var(--maxw)) / 2 + 1.25rem));background:color-mix(in srgb, var(--bg) 70%, transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem 1.1rem;margin:0;display:grid;position:sticky;top:0}.id{align-items:center;gap:.6rem;min-width:0;display:flex}.brand{letter-spacing:.02em;white-space:nowrap;font-size:1.15rem;font-weight:700;text-decoration:none}.home-btn{border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--muted);border-radius:50%;flex:none;place-items:center;text-decoration:none;display:grid}.home-btn:hover,.home-btn[aria-current]{color:var(--text);border-color:var(--muted)}.home-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.site-header nav{justify-content:center;align-items:center;gap:.25rem;min-width:0;display:flex}.site-header nav a{color:var(--muted);white-space:nowrap;border-radius:999px;padding:.35rem .7rem;text-decoration:none;transition:background .15s,color .15s}.site-header nav a:hover{color:var(--text);background:rgb(var(--navy-rgb) / .07)}.site-header nav [aria-current]{color:var(--text);background:rgb(var(--navy-rgb) / .12)}[data-theme=night] .site-header nav a:hover{background:#fef2dc14}[data-theme=night] .site-header nav [aria-current]{background:#fef2dc24}.nav-sep{background:var(--line);flex:none;align-self:center;width:1px;height:1.2rem;margin-inline:.55rem}.site-header nav a.cta{background:var(--btn-bg);color:var(--btn-fg);margin-left:.9rem;padding-inline:1.1rem;font-weight:700}.site-header nav a.cta:hover{color:var(--btn-fg);background:var(--btn-bg);filter:brightness(1.1)}.site-header nav a.cta[aria-current]{color:var(--btn-fg);background:var(--btn-bg);box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--btn-bg)}.navwrap{justify-content:center;min-width:0;display:flex;position:relative}.navwrap nav{min-width:0}.nav-more{display:none}.news-btn{border:1px solid var(--line);height:2.25rem;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:0 .8rem 0 .6rem;font-size:.85rem;text-decoration:none;display:inline-flex;position:relative}.news-btn:hover,.news-btn[aria-current]{color:var(--text);border-color:var(--muted)}.news-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.15rem;height:1.15rem}.nb-dot{width:.55rem;height:.55rem;box-shadow:0 0 0 2px var(--bg);background:#e0627a;border-radius:50%;position:absolute;top:.2rem;left:1.35rem}.nb-dot[hidden],.nb-new[hidden]{display:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tools{align-items:center;gap:.5rem;display:flex}.langs{border:1px solid var(--line);letter-spacing:.06em;border-radius:999px;gap:.1rem;padding:.15rem;font-size:.8rem;display:flex}.langs a{color:var(--muted);border-radius:999px;padding:.25rem .6rem;text-decoration:none}.langs a:hover{color:var(--text)}.langs [aria-current]{color:var(--btn-fg);background:var(--btn-bg)}.lang-menu{display:none;position:relative}.lang-menu summary{border:1px solid var(--line);letter-spacing:.06em;height:2.25rem;color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:.15rem;padding:0 .45rem 0 .7rem;font-size:.8rem;list-style:none;display:inline-flex}.lang-menu summary::-webkit-details-marker{display:none}.lang-menu summary svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem;transition:rotate .2s}.lang-menu[open] summary svg{rotate:180deg}.lang-list{z-index:60;background:var(--chip-bg);border:1px solid var(--line);min-width:8.5rem;box-shadow:0 8px 20px rgb(var(--navy-rgb) / .25);border-radius:.9rem;padding:.3rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0}.lang-list a{color:var(--text);border-radius:.6rem;padding:.6rem .8rem;text-decoration:none}.lang-list a:hover{background:rgb(var(--navy-rgb) / .08)}.theme-toggle{border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.theme-toggle:hover{color:var(--text);border-color:var(--muted)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}[data-theme=day] .icon-moon,[data-theme=night] .icon-sun{display:none}.home main{max-width:none;padding:0}.site-footer{max-width:var(--maxw);width:100%;color:var(--muted);flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 auto;padding:1.5rem 1.25rem;font-size:.85rem;display:flex}.foot-links{gap:.9rem;margin-left:auto;display:flex}.foot-links a{color:var(--muted);text-decoration:none}.foot-links a:hover{color:var(--text)}.foot-mail{color:var(--muted);text-decoration:none}.foot-mail:hover{color:var(--text);text-decoration:underline}.site-footer p{margin:0}.site-footer .mascot{flex:none;width:2.75rem}.panel{border-radius:var(--r-lg);border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 78%, transparent);backdrop-filter:blur(10px);padding:1.75rem 2rem}.panel>:first-child{margin-top:0}.panel>:last-child{margin-bottom:0}.panel p+p{margin-top:.9em}.back a{background:var(--chip-bg);border:1px solid var(--line);border-radius:999px;padding:.3rem 1rem;font-size:.95rem;text-decoration:none;display:inline-block;color:var(--text)!important}.back a:hover{border-color:var(--accent);color:var(--accent)!important}.btn{background:var(--btn-bg);color:var(--btn-fg);cursor:pointer;border:0;border-radius:999px;padding:.7rem 1.4rem;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .15s,filter .15s;display:inline-block}.btn:hover{filter:brightness(1.1);transform:translateY(-2px)}.btn.ghost{color:var(--accent);border:2px solid var(--accent);background:0 0}.badge{letter-spacing:.03em;background:rgb(var(--navy-rgb) / .08);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.15rem .8rem;font-size:.88rem;display:inline-block}[data-theme=night] .badge{background:#fef2dc1a}@media (prefers-reduced-motion:reduce){.btn{transition:none}}@media (width<=640px){.panel{padding:1.1rem 1.25rem}main{padding-inline:1rem}.brand{font-size:1.05rem}}@media (width<=1480px){.site-header{grid-template-columns:minmax(0,1fr) auto;gap:.35rem .75rem;padding:.55rem 1rem}.navwrap{grid-area:2/1/auto/-1;justify-content:flex-start;margin-inline:-1rem}.site-header nav{scrollbar-width:none;scroll-behavior:smooth;justify-content:flex-start;padding-inline:1rem;overflow-x:auto}.site-header nav::-webkit-scrollbar{display:none}.navwrap.can-next nav{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 4.5rem),#0000 calc(100% - 1rem));mask-image:linear-gradient(90deg,#000 calc(100% - 4.5rem),#0000 calc(100% - 1rem))}.navwrap.can-prev nav{-webkit-mask-image:linear-gradient(90deg,#0000 1rem,#000 4.5rem);mask-image:linear-gradient(90deg,#0000 1rem,#000 4.5rem)}.navwrap.can-prev.can-next nav{-webkit-mask-image:linear-gradient(90deg,#0000 1rem,#000 4.5rem calc(100% - 4.5rem),#0000 calc(100% - 1rem));mask-image:linear-gradient(90deg,#0000 1rem,#000 4.5rem calc(100% - 4.5rem),#0000 calc(100% - 1rem))}.nav-more{z-index:1;border:1px solid var(--line);background:var(--chip-bg);width:2rem;height:2rem;color:var(--text);cursor:pointer;box-shadow:0 2px 8px rgb(var(--navy-rgb) / .2);opacity:0;pointer-events:none;border-radius:50%;place-items:center;padding:0;transition:opacity .2s;display:grid;position:absolute;top:50%;translate:0 -50%}.nav-more svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:1.05rem;height:1.05rem}.nav-more.prev{left:.4rem}.nav-more.next{right:.4rem}.navwrap.can-prev .nav-more.prev,.navwrap.can-next .nav-more.next{opacity:1;pointer-events:auto}}@media (width>=1481px) and (width<=1699px),(width<=700px){.nb-label{display:none}.news-btn{justify-content:center;width:2.25rem;padding:0}.nb-dot{top:.25rem;left:auto;right:.25rem}}@media (width<=520px){.tools{gap:.3rem}.brand{text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.langs{font-size:.75rem}.langs a{padding:.25rem .45rem}.theme-toggle,.sound-toggle,.home-btn{width:2.25rem;height:2.25rem}.langs{display:none}.lang-menu{display:block}}@media (pointer:coarse){.site-header nav a{padding:.6rem .9rem}.langs a{padding:.5rem .65rem}.theme-toggle,.home-btn{width:2.75rem;height:2.75rem}@media (width<=520px){.langs a{padding:.5rem .4rem}.theme-toggle,.home-btn{width:2.5rem;height:2.5rem}}}
