@import "https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&family=Inconsolata:wght@200..900&family=IBM+Plex+Mono&display=swap";.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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-cyrillic-ext-200-normal.CZJ4cUBu.woff2)format("woff2"),url(/_astro/inter-cyrillic-ext-200-normal.D_iEhpPi.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-cyrillic-200-normal.CXBQYKzb.woff2)format("woff2"),url(/_astro/inter-cyrillic-200-normal.BbeBjk1e.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-greek-ext-200-normal.Dq1CX1Yh.woff2)format("woff2"),url(/_astro/inter-greek-ext-200-normal.Bkc44p7b.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-greek-200-normal.eNF1HMAo.woff2)format("woff2"),url(/_astro/inter-greek-200-normal.Bu8uf3rj.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-vietnamese-200-normal.BYvDigGQ.woff2)format("woff2"),url(/_astro/inter-vietnamese-200-normal.DzDmzEiT.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-latin-ext-200-normal.BbLMEfwQ.woff2)format("woff2"),url(/_astro/inter-latin-ext-200-normal.BZvdQwkN.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:200;src:url(/_astro/inter-latin-200-normal.CGIQ4gbF.woff2)format("woff2"),url(/_astro/inter-latin-200-normal.fAycq8N-.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-cyrillic-ext-300-normal.CgCALhwJ.woff2)format("woff2"),url(/_astro/inter-cyrillic-ext-300-normal.RId2JxDB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-cyrillic-300-normal.BnqRxXuy.woff2)format("woff2"),url(/_astro/inter-cyrillic-300-normal.LR1W_oT8.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-greek-ext-300-normal.l2DDyC6M.woff2)format("woff2"),url(/_astro/inter-greek-ext-300-normal.DLbbeei1.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-greek-300-normal.DmGD3g_f.woff2)format("woff2"),url(/_astro/inter-greek-300-normal.BrhSP0vQ.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-vietnamese-300-normal.Bdr24Bqb.woff2)format("woff2"),url(/_astro/inter-vietnamese-300-normal.DDGmYYdT.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-latin-ext-300-normal.CPgO9Ksf.woff2)format("woff2"),url(/_astro/inter-latin-ext-300-normal.Dp1L8vcn.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/inter-latin-300-normal.BVlfKGgI.woff2)format("woff2"),url(/_astro/inter-latin-300-normal.i8F0SvXL.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-cyrillic-ext-400-normal.BQZuk6qB.woff2)format("woff2"),url(/_astro/inter-cyrillic-ext-400-normal.DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-cyrillic-400-normal.obahsSVq.woff2)format("woff2"),url(/_astro/inter-cyrillic-400-normal.HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-greek-ext-400-normal.DGGRlc-M.woff2)format("woff2"),url(/_astro/inter-greek-ext-400-normal.KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-greek-400-normal.B4URO6DV.woff2)format("woff2"),url(/_astro/inter-greek-400-normal.q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-vietnamese-400-normal.DMkecbls.woff2)format("woff2"),url(/_astro/inter-vietnamese-400-normal.Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-latin-ext-400-normal.C1nco2VV.woff2)format("woff2"),url(/_astro/inter-latin-ext-400-normal.77YHD8bZ.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-latin-400-normal.C38fXH4l.woff2)format("woff2"),url(/_astro/inter-latin-400-normal.CyCys3Eg.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-cyrillic-ext-500-normal.B0yAr1jD.woff2)format("woff2"),url(/_astro/inter-cyrillic-ext-500-normal.BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-cyrillic-500-normal.BasfLYem.woff2)format("woff2"),url(/_astro/inter-cyrillic-500-normal.CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-greek-ext-500-normal.C4iEst2y.woff2)format("woff2"),url(/_astro/inter-greek-ext-500-normal.2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-greek-500-normal.BIZE56-Y.woff2)format("woff2"),url(/_astro/inter-greek-500-normal.Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-vietnamese-500-normal.DOriooB6.woff2)format("woff2"),url(/_astro/inter-vietnamese-500-normal.mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-latin-ext-500-normal.CV4jyFjo.woff2)format("woff2"),url(/_astro/inter-latin-ext-500-normal.BxGbmqWO.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-latin-500-normal.Cerq10X2.woff2)format("woff2"),url(/_astro/inter-latin-500-normal.BL9OpVg8.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-cyrillic-ext-700-normal.BjwYoWNd.woff2)format("woff2"),url(/_astro/inter-cyrillic-ext-700-normal.LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-cyrillic-700-normal.CjBOestx.woff2)format("woff2"),url(/_astro/inter-cyrillic-700-normal.DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-greek-ext-700-normal.qfdV9bQt.woff2)format("woff2"),url(/_astro/inter-greek-ext-700-normal.BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-greek-700-normal.C3JjAnD8.woff2)format("woff2"),url(/_astro/inter-greek-700-normal.BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-vietnamese-700-normal.DlLaEgI2.woff2)format("woff2"),url(/_astro/inter-vietnamese-700-normal.BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-latin-ext-700-normal.Ca8adRJv.woff2)format("woff2"),url(/_astro/inter-latin-ext-700-normal.TidjK2hL.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-latin-700-normal.Yt3aPRUw.woff2)format("woff2"),url(/_astro/inter-latin-700-normal.BLAVimhd.woff)format("woff");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[data-theme=linen]{--background-main:#f2f0ef;--background-darker:#f8f5f3;--text-color:#3b3b3b;--sec-text-color:#656565;--contrast-overlay:#000000b3;--contrast-overlay-hover:#00000080;--translucent-low:#0000000d;--translucent-medium:#00000012;--translucent-medium-high:#0000001f;--translucent-high:#0003;--code-bg:#ebe9e8}:root[data-theme=denim]{--background-main:#2d3d5a;--background-darker:#1f2a3f;--text-color:#e8edf5;--sec-text-color:#c6cfdc;--code-bg:#1f2a3f;--contrast-overlay:#ffffffb3;--contrast-overlay-hover:#ffffff80;--translucent-low:#ffffff08;--translucent-medium:#ffffff12;--translucent-medium-high:#ffffff1f;--translucent-high:#fff3}:root[data-theme=charcoal]{--background-main:#1a1a1a;--background-darker:#2a2a2a;--text-color:#d0d0d0;--sec-text-color:#c2c2c2;--code-bg:#212121;--contrast-overlay:#ffffffb3;--contrast-overlay-hover:#ffffff80;--translucent-low:#ffffff08;--translucent-medium:#ffffff12;--translucent-medium-high:#ffffff1f;--translucent-high:#fff3}:root[data-theme=plum]{--background-main:#2a1a1d;--background-darker:#3d1f24;--text-color:#f5e8ea;--sec-text-color:#e0d3d8;--code-bg:#3d1f24;--contrast-overlay:#ffffffb3;--contrast-overlay-hover:#ffffff80;--translucent-low:#ffffff08;--translucent-medium:#ffffff12;--translucent-medium-high:#ffffff1f;--translucent-high:#fff3}:root[data-theme=moss]{--background-main:#2a2f2a;--background-darker:#1e231e;--text-color:#f2faed;--sec-text-color:#e0e6da;--code-bg:#1e231e;--contrast-overlay:#ffffffb3;--contrast-overlay-hover:#ffffff80;--translucent-low:#ffffff08;--translucent-medium:#ffffff12;--translucent-medium-high:#ffffff1f;--translucent-high:#fff3}:root[data-theme=butter]{--background-main:#f1d799;--background-darker:#f5e2ae;--text-color:#4a4235;--sec-text-color:#7a7060;--contrast-overlay:#000000b3;--contrast-overlay-hover:#00000080;--translucent-low:#0000000d;--translucent-medium:#00000012;--translucent-medium-high:#0000001f;--translucent-high:#0003;--code-bg:#e6ca85}:root[data-theme=espresso]{--background-main:#1f1410;--background-darker:#160d0a;--text-color:#f0e0d0;--sec-text-color:#d4c0ac;--code-bg:#160d0a;--contrast-overlay:#ffffffb3;--contrast-overlay-hover:#ffffff80;--translucent-low:#ffffff08;--translucent-medium:#ffffff12;--translucent-medium-high:#ffffff1f;--translucent-high:#fff3}:root[data-theme=blush]{--background-main:#f1d9d3;--background-darker:#f6e5e0;--text-color:#4a2f35;--sec-text-color:#7a5560;--contrast-overlay:#000000b3;--contrast-overlay-hover:#00000080;--translucent-low:#0000000d;--translucent-medium:#00000012;--translucent-medium-high:#0000001f;--translucent-high:#0003;--code-bg:#e8cdc6}:root[data-theme=sky]{--background-main:#d9eaf8;--background-darker:#edf6fd;--text-color:#284454;--sec-text-color:#5a7180;--contrast-overlay:#000000b3;--contrast-overlay-hover:#00000080;--translucent-low:#0000000d;--translucent-medium:#00000012;--translucent-medium-high:#0000001f;--translucent-high:#0003;--code-bg:#c9e0f2}:root{--spacing-2xs:2px;--spacing-xs:5px;--spacing-sm:8px;--spacing-md:10px;--spacing-lg:15px;--spacing-xl:20px;--spacing-2xl:30px;--spacing-3xl:60px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-pill:20px;--radius-round:50%;--control-height-xs:24px;--control-height-sm:30px;--control-height-md:36px;--control-height-lg:42px;--control-thumb-size:12px;--transition-fast:.1s cubic-bezier(.4, 0, .2, 1);--transition-press:.1s cubic-bezier(.2, 0, 0, 1);--transition-medium:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1);--transition-backdrop:.4s cubic-bezier(.4, 0, .2, 1);--transition-slowest:.6s cubic-bezier(.4, 0, .2, 1);--motion-slide-offset:8px;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 8px #0000001a;--shadow-lg:0 8px 16px #0000001a;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal:1000;--z-tooltip:1100;--game-ttt-x:#66b5f5;--game-ttt-o:#ff7369;--game-ttt-win:#4caf50;--game-ms-1:#7aa6d9;--game-ms-2:#88c47e;--game-ms-3:#e88e5e;--game-ms-4:#9b87d5;--game-ms-5:#e07171;--game-ms-6:#5fb0b0;--game-ms-7:#c2c2c2;--game-ms-8:#8a8a8a;--game-colordle-correct:#65c467;--game-colordle-close:#d5a04c;--game-colordle-wrong:#757575;--game-status-win:#4caf50;--game-status-lose:#f44336;--game-status-success:#2e7d32;--game-status-error:#c62828;--color-line-number:#d9d9d9;--color-code-border:#d9d9d9;--color-code-break:#606060;--color-link-underline:#dadada;--color-social-instagram:#b6393d;--color-social-tiktok:#9860d5}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{font-size:1em;font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}a{text-decoration:none}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}table{border-collapse:collapse;border-spacing:0}img{background-color:var(--translucent-low)}.reveal-card__media img,.image-ratio-box img,.product__icon{background-color:#0000}*{font-family:var(--font-family,-apple-system, "SF Pro Display", "Inter", sans-serif)}body{color:var(--text-color);font-family:var(--font-family,-apple-system, "SF Pro Display", "Inter", sans-serif);font-size:calc(1em * var(--font-size-scale,1));word-wrap:break-word;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:200}h1{margin-bottom:var(--spacing-md);color:var(--text-color);margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);text-wrap:balance;font-size:16pt;font-weight:500}h2{color:var(--text-color);margin-bottom:var(--spacing-md);text-wrap:balance;font-size:14pt;font-weight:500}h3{color:var(--text-color);margin-top:var(--spacing-xs);margin-bottom:var(--spacing-md);text-wrap:balance;font-size:12pt;font-weight:400}p{font-size:12pt;font-weight:200;line-height:1.25em}.post__content p{text-align:left;word-wrap:break-word;letter-spacing:.2px;color:var(--sec-text-color);font-size:11.5pt;font-weight:200;line-height:16pt}strong,b{font-weight:400}em,i{font-style:italic}a{color:var(--text-color);transition:color var(--transition-medium);line-height:25px;text-decoration:none}@media (any-hover:hover){a:hover{text-decoration:underline;text-decoration-color:var(--translucent-high);text-underline-offset:2px;font-style:italic}}a.touch-hover{text-decoration:underline;text-decoration-color:var(--translucent-high);text-underline-offset:2px;font-style:italic}code,.highlighter-rouge{background:var(--code-bg);border-radius:var(--radius-sm);word-wrap:break-word;color:var(--text-color);padding:2px 6px;font-family:IBM Plex Mono,monospace;font-size:11pt;font-weight:200}code a,.highlighter-rouge a{text-decoration:none}pre code{font-size:inherit;background:0 0;border-radius:0;padding:0}sup{vertical-align:super;font-size:8pt}.ph{vertical-align:text-bottom}.page-content{view-transition-name:page-content;--content-gutter:var(--spacing-lg);padding-inline:var(--content-gutter);margin-inline:calc(-1 * var(--content-gutter))}html{view-transition-name:none}::view-transition{background-color:var(--background-main)}.header-row{view-transition-name:site-header}.breadcrumb-back{view-transition-name:nav-back}.breadcrumb-home{view-transition-name:nav-home}.breadcrumb-root-sep{view-transition-name:nav-sep}@keyframes vt-slide-out-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(calc(var(--motion-slide-offset) * -1))}}@keyframes vt-slide-in-up{0%{opacity:0;transform:translateY(var(--motion-slide-offset))}to{opacity:1;transform:translateY(0)}}@keyframes vt-slide-out-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(var(--motion-slide-offset))}}@keyframes vt-slide-in-down{0%{opacity:0;transform:translateY(calc(var(--motion-slide-offset) * -1))}to{opacity:1;transform:translateY(0)}}@keyframes vt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}to{opacity:1}}::view-transition-old(page-content){animation:vt-slide-out-up var(--transition-slow) both}::view-transition-new(page-content){animation:vt-slide-in-up var(--transition-slow) both}html[data-vt-direction=back]::view-transition-old(page-content){animation-name:vt-slide-out-down}html[data-vt-direction=back]::view-transition-new(page-content){animation-name:vt-slide-in-down}::view-transition-old(site-header){animation:vt-fade-out var(--transition-medium) both}::view-transition-new(site-header){animation:vt-fade-in var(--transition-medium) both}::view-transition-old(nav-back),::view-transition-old(nav-home),::view-transition-old(nav-sep){animation:vt-fade-out var(--transition-medium) both}::view-transition-new(nav-back),::view-transition-new(nav-home),::view-transition-new(nav-sep){animation:vt-fade-in var(--transition-medium) both}@media (prefers-reduced-motion:reduce){::view-transition-old(page-content),::view-transition-new(page-content),::view-transition-old(site-header),::view-transition-new(site-header){animation-duration:10ms}}html{background-color:var(--background-main);height:100%;min-height:100vh}html.theme-transition{transition:background-color var(--transition-backdrop)}body{background-color:var(--background-main);height:100%;min-height:100vh}body.theme-transition{transition:background-color var(--transition-backdrop)}.wrapper{max-width:525px;padding:var(--spacing-3xl) var(--spacing-2xl);margin:auto}@media screen and (width<=600px){.wrapper{padding:var(--spacing-2xl) var(--spacing-xl)}}.fullscreen{height:100%;margin:0;padding:0;overflow:hidden}.game-wrapper{box-sizing:border-box;justify-content:center;width:100%;position:relative;overflow-x:hidden}.expandable-section{margin-bottom:var(--spacing-md);position:relative}.expandable-section--compact{margin-bottom:0}.expandable-section--compact .expandable-content{margin-top:var(--spacing-sm);padding-block:var(--spacing-sm)}.expandable-content{padding:var(--spacing-md) var(--spacing-lg);margin-top:var(--spacing-md);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);opacity:1;transition:max-height var(--transition-slow), opacity var(--transition-slow), margin-top var(--transition-slow), margin-bottom var(--transition-slow), padding-top var(--transition-slow), padding-bottom var(--transition-slow);will-change:opacity;overflow:hidden}.expandable-content.collapsed{opacity:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;max-height:0!important}header{flex-direction:column;display:flex}.header-reveal,.settings-panel,.title-photo-container{opacity:0;max-height:0;transition:max-height var(--transition-slow), opacity var(--transition-slow), margin-top var(--transition-slow), padding-bottom var(--transition-slow);order:-1;overflow:hidden}.header-reveal.revealed,.revealed.settings-panel,.revealed.title-photo-container{margin-top:calc(var(--spacing-2xl) * -.6);max-height:300px;padding-bottom:calc(var(--spacing-2xl) * .5);opacity:1}.title-photo-container{width:200px;margin-inline-start:-28px;padding-inline:28px}.title-photo-container.revealed{padding-top:var(--spacing-md);padding-bottom:var(--spacing-lg);margin-top:calc(var(--spacing-2xl) * -.6 - var(--spacing-md))}.title-photo-container .title-photo{box-sizing:border-box;border-radius:var(--radius-lg);border:5px solid var(--photo-outline,var(--translucent-medium));background-color:var(--photo-outline,var(--translucent-low));width:120px;transform:rotate(var(--photo-tilt,0deg));transition:transform var(--transition-medium);display:block}.settings-panel .settings-panel-inner{padding:var(--spacing-md) 2px 0}.header-row{justify-content:space-between;align-items:flex-start;margin-bottom:1em;display:flex}header:has(.header-breadcrumb){z-index:var(--z-sticky);margin-top:calc(var(--spacing-3xl) * -1);margin-left:calc(var(--spacing-2xl) * -1);margin-right:calc(var(--spacing-2xl) * -1);padding:var(--spacing-2xl) var(--spacing-2xl) var(--spacing-md);position:sticky;top:0}@media screen and (width<=600px){header:has(.header-breadcrumb){margin-top:calc(var(--spacing-2xl) * -1);margin-left:calc(var(--spacing-xl) * -1);margin-right:calc(var(--spacing-xl) * -1);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-md)}}header:has(.header-breadcrumb):before{content:"";background:linear-gradient(to bottom, var(--background-main) 0%, color-mix(in srgb, var(--background-main) 92%, transparent) 12.5%, color-mix(in srgb, var(--background-main) 80%, transparent) 25%, color-mix(in srgb, var(--background-main) 66%, transparent) 37.5%, color-mix(in srgb, var(--background-main) 50%, transparent) 50%, color-mix(in srgb, var(--background-main) 34%, transparent) 62.5%, color-mix(in srgb, var(--background-main) 20%, transparent) 75%, color-mix(in srgb, var(--background-main) 8%, transparent) 87.5%, transparent 100%);pointer-events:none;opacity:0;width:100vw;height:calc(100% + 120px);transition:opacity var(--transition-slowest);position:absolute;top:0;left:50%;transform:translate(-50%)}header:has(.header-breadcrumb) .header-row{margin-bottom:0;position:relative}:root.is-scrolled header:has(.header-breadcrumb):before{opacity:1}.header-left{align-items:baseline;display:flex}.site-name-group{flex-direction:column;display:flex}.site-name-lockup{align-self:flex-start;align-items:center;line-height:1;display:inline-flex;position:relative}.site-name{color:inherit;font:inherit;cursor:pointer;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;transition:none}.site-name:hover,.site-name:focus,.site-name:focus-visible,.site-name.touch-hover{backdrop-filter:none;color:inherit;background:0 0}.site-name{color:var(--text-color);font-size:1.5em;line-height:inherit;text-decoration:none;font-weight:400!important}.site-name:hover{color:var(--text-color);font-style:normal;text-decoration:none}.site-name-menu{align-items:baseline;gap:var(--spacing-sm);opacity:1;max-height:2em;transition:max-height var(--transition-slow), opacity var(--transition-medium), padding-top var(--transition-slow);padding-top:var(--spacing-xs);color:var(--sec-text-color);display:flex;overflow:hidden}.site-name-menu>a,.site-name-menu>.menu-trigger{color:var(--sec-text-color);transition:opacity var(--transition-medium), color var(--transition-medium);white-space:nowrap;text-decoration:none}.site-name-menu>a:hover,.site-name-menu>.menu-trigger:hover{opacity:1;text-decoration:underline;text-decoration-color:var(--translucent-high);text-underline-offset:2px}.site-name-menu>.menu-trigger{color:inherit;font:inherit;cursor:pointer;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;transition:none}.site-name-menu>.menu-trigger:hover,.site-name-menu>.menu-trigger:focus,.site-name-menu>.menu-trigger:focus-visible,.site-name-menu>.menu-trigger.touch-hover{backdrop-filter:none;color:inherit;background:0 0}.site-name-menu>.menu-trigger{font-weight:inherit!important}.settings-toggle-slot{text-align:left;display:inline-grid}.settings-toggle-slot .settings-toggle-text{grid-area:1/1}.settings-toggle-slot:after{content:"settings";visibility:hidden;grid-area:1/1}.menu-sep{opacity:.4}.site-name-group:hover .site-name-menu,.site-name-group:focus-within .site-name-menu,.site-name-menu.is-open{opacity:1;max-height:2em;padding-top:var(--spacing-xs)}.header-breadcrumb{align-items:baseline;gap:var(--spacing-sm);color:var(--text-color);display:flex}.header-breadcrumb a{color:inherit;transition:color var(--transition-medium);text-decoration:none}.header-breadcrumb a:hover{font-style:normal;text-decoration:none}.breadcrumb-back{color:inherit;font:inherit;cursor:pointer;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;transition:none}.breadcrumb-back:hover,.breadcrumb-back:focus,.breadcrumb-back:focus-visible,.breadcrumb-back.touch-hover{backdrop-filter:none;color:inherit;background:0 0}.breadcrumb-back{box-sizing:content-box;height:25px;padding:var(--spacing-md);margin:calc(var(--spacing-md) * -1);align-self:flex-start;align-items:center;font-size:.9em;line-height:1;display:inline-flex;font-weight:inherit!important}.breadcrumb-home{font-weight:400}.header-breadcrumb .breadcrumb-mid,.breadcrumb-current,.breadcrumb-settings{color:var(--sec-text-color)}.breadcrumb-sep{opacity:.4}.site-footer{text-align:center;color:var(--sec-text-color);font-size:.8em}.footer-sep{color:var(--sec-text-color)}button,.btn,.normal-btn{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--contrast-overlay);color:var(--background-main);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-medium), scale var(--transition-press);backdrop-filter:blur(10px);font-size:1em;font-family:var(--font-family,-apple-system, "SF Pro Display", "inter", sans-serif);border:none;font-weight:300!important;text-decoration:none!important}@media (any-hover:hover){button:hover,.btn:hover,.normal-btn:hover{background-color:var(--contrast-overlay-hover);color:var(--background-main);font-style:normal;text-decoration:none!important}}button.touch-hover,.btn.touch-hover,.normal-btn.touch-hover{background-color:var(--contrast-overlay-hover);color:var(--background-main);font-style:normal;text-decoration:none!important}button--dark-forced,.btn--dark-forced,.normal-btn--dark-forced{background-color:#000000b3}@media (any-hover:hover){button--dark-forced:hover,.btn--dark-forced:hover,.normal-btn--dark-forced:hover{background-color:#00000080}}button--dark-forced.touch-hover,.btn--dark-forced.touch-hover,.normal-btn--dark-forced.touch-hover{background-color:#00000080}button--small,.btn--small,.normal-btn--small{padding:2px var(--spacing-sm);font-size:.8em}button--link-variant,.btn--link-variant,.normal-btn--link-variant{background-color:var(--translucent-low);backdrop-filter:none;color:var(--sec-text-color);padding:3px var(--spacing-sm) 3px var(--spacing-sm);outline:solid 1px var(--translucent-medium);margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;font-size:.9em;display:flex}button--copy,.btn--copy,.normal-btn--copy{padding:2px var(--spacing-sm);background-color:var(--translucent-medium);color:var(--text-color);font-size:.8em}button--outline,.btn--outline,.normal-btn--outline{background-color:var(--translucent-low);color:var(--text-color);outline:solid 1px var(--translucent-medium)}button--outline:hover,.btn--outline:hover,.normal-btn--outline:hover{background-color:var(--translucent-high);color:var(--text-color)}button--text,.btn--text,.normal-btn--text{backdrop-filter:none;color:var(--sec-text-color);letter-spacing:.3px;background-color:#0000;border-radius:0;padding:0;font-size:.85em}@media (any-hover:hover){button--text:hover,.btn--text:hover,.normal-btn--text:hover{color:var(--text-color);background-color:#0000}}button--text.touch-hover,.btn--text.touch-hover,.normal-btn--text.touch-hover{color:var(--text-color);background-color:#0000}button code,.btn code,.normal-btn code{background-color:#0000}.btn,.normal-btn{box-sizing:border-box;min-height:var(--control-height-md);justify-content:center;align-items:center;line-height:1;display:inline-flex}.btn--small,.btn--copy,.btn--text{min-height:0}.btn--link-variant{justify-content:space-between;min-height:0;display:flex}.btn:active,.normal-btn:active{scale:.96}.btn[data-copy]:active,.normal-btn[data-copy]:active{scale:1}input[type=file]::file-selector-button{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--contrast-overlay);color:var(--background-main);border-radius:var(--radius-md);font-family:var(--font-family,-apple-system, "SF Pro Display", "inter", sans-serif);cursor:pointer;transition:background-color var(--transition-medium);border:none;font-size:1.2em;font-weight:300!important}.expandable-toggle{box-sizing:border-box;width:100%;min-height:var(--control-height-lg);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);text-align:left;cursor:pointer;color:var(--text-color);transition:background-color var(--transition-medium), color var(--transition-medium);outline:solid 1px var(--translucent-medium);border:none;justify-content:space-between;align-items:center;line-height:1;display:flex}@media (any-hover:hover){.expandable-toggle:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.expandable-toggle.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.expandable-toggle .toggle-icon{transition:transform var(--transition-slow)}.expandable-toggle[aria-expanded=true] .toggle-icon{transform:rotate(45deg)}.selection-switch{gap:var(--spacing-sm);overscroll-behavior-x:contain;max-width:100%;scroll-padding-inline:var(--spacing-sm);scrollbar-width:none;flex-wrap:nowrap;padding:1px;font-weight:300;display:flex;overflow:auto hidden}.selection-switch::-webkit-scrollbar{display:none}.selection-switch .switch-option{box-sizing:border-box;min-height:var(--control-height-xs);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-pill);background-color:var(--translucent-low);color:var(--text-color);cursor:pointer;transition:background-color var(--transition-medium), color var(--transition-medium), scale var(--transition-press);outline:solid 1px var(--translucent-medium);border:none;flex:none;justify-content:center;align-items:center;font-size:.85em;line-height:1;display:inline-flex}.selection-switch .switch-option:active{scale:.96}@media (any-hover:hover){.selection-switch .switch-option:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.selection-switch .switch-option.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.selection-switch .switch-option.active{background-color:var(--contrast-overlay);color:var(--background-main);outline:none}.selection-switch-wrap{--switch-fade-width:4.5em;--switch-fade-left:#000;--switch-fade-right:#000;min-width:0;max-width:100%;position:relative}.selection-switch-wrap.has-prev{--switch-fade-left:transparent}.selection-switch-wrap.has-next{--switch-fade-right:transparent}.selection-switch-wrap.has-prev .selection-switch,.selection-switch-wrap.has-next .selection-switch{mask-image:linear-gradient(to right, var(--switch-fade-left) 0, #000 var(--switch-fade-width), #000 calc(100% - var(--switch-fade-width)), var(--switch-fade-right) 100%)}.selection-switch-chevron{aspect-ratio:1;border-radius:var(--radius-pill);background-color:var(--background-main);color:var(--text-color);cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--transition-medium), scale var(--transition-press);z-index:2;outline:solid 1px var(--translucent-medium);border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:1px;bottom:1px}@media (any-hover:hover){.selection-switch-chevron:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.selection-switch-chevron.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.selection-switch-chevron:active{scale:.94}.selection-switch-chevron.is-visible{opacity:1;pointer-events:auto}.selection-switch-chevron--prev{--switch-chevron-rotation:90deg;left:0}.selection-switch-chevron--next{--switch-chevron-rotation:-90deg;right:0}.selection-switch-chevron .icon{width:.7em;height:.7em;transform:rotate(var(--switch-chevron-rotation))}.site-search{--site-search-closed-width:118px;--site-search-resting-scale:.86;--site-search-trigger-exit-scale:.94;width:var(--site-search-closed-width);max-width:100%;min-height:var(--control-height-md);border-radius:var(--radius-pill);transition:width var(--transition-slow), min-height var(--transition-slow), border-radius var(--transition-slow);display:inline-grid}.site-search.is-open,.site-search.has-query{border-radius:var(--radius-lg);width:100%}.site-search.is-open .site-search__trigger,.site-search.has-query .site-search__trigger{opacity:0;pointer-events:none;transform:scale(var(--site-search-trigger-exit-scale))}.site-search.is-open .site-search__field,.site-search.has-query .site-search__field{opacity:1;pointer-events:auto;transform:none}.site-search--small{--site-search-closed-width:92px;min-height:var(--control-height-sm)}.site-search--small .site-search__trigger,.site-search--small .site-search__field{min-height:var(--control-height-sm)}.site-search--small .site-search__trigger{font-size:.85em}.site-search--small.is-open,.site-search--small.has-query{min-height:var(--control-height-md)}.site-search__trigger,.site-search__field{box-sizing:border-box;min-width:0;min-height:var(--control-height-md);align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-md);border-radius:inherit;outline:solid 1px var(--translucent-medium);grid-area:1/1;display:flex}.site-search__trigger{background-color:var(--translucent-low);color:var(--text-color);backdrop-filter:none;transition:opacity var(--transition-slow), transform var(--transition-slow), background-color var(--transition-medium), color var(--transition-medium);justify-content:center}@media (any-hover:hover){.site-search__trigger:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.site-search__trigger.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.site-search i{flex-shrink:0;font-size:.95em}.site-search__field{background-color:var(--translucent-low);width:100%;color:var(--text-color);opacity:0;pointer-events:none;transform:scaleX(var(--site-search-resting-scale));transform-origin:0;transition:opacity var(--transition-slow), transform var(--transition-slow), min-height var(--transition-slow)}.site-search__field>i{color:var(--sec-text-color)}.site-search__field input[type=search]{--focus-ring-color:transparent;width:100%;min-width:0;height:100%;color:var(--text-color);font-size:.9em;font-family:var(--font-family,-apple-system, "SF Pro Display", "inter", sans-serif);background:0 0;border:0;outline:none;padding:0}.site-search__field input[type=search]::-webkit-search-decoration{appearance:none}.site-search__field input[type=search]::-webkit-search-cancel-button{appearance:none}.site-search__field input[type=search]::placeholder{color:var(--sec-text-color);opacity:.7}.site-search__field input[type=search]:focus{background:0 0}.site-search__clear{flex:0 0 calc(var(--control-height-md) - var(--spacing-md));height:calc(var(--control-height-md) - var(--spacing-md));border-radius:var(--radius-round);color:var(--sec-text-color);backdrop-filter:none;background-color:#0000;padding:0;font-size:.8em}@media (any-hover:hover){.site-search__clear:hover{background-color:var(--translucent-medium);color:var(--text-color)}}.site-search__clear.touch-hover{background-color:var(--translucent-medium);color:var(--text-color)}@media (prefers-reduced-motion:reduce){.site-search,.site-search__trigger,.site-search__field{transition:none}}.card{background-color:var(--translucent-medium);backdrop-filter:blur(10px);border-radius:var(--radius-md);padding:var(--spacing-lg);transition:background-color var(--transition-medium), scale var(--transition-fast)}@media (any-hover:hover){.card:hover{background-color:var(--translucent-high)}}.card.touch-hover{background-color:var(--translucent-high)}.card--interactive{cursor:pointer}.card--interactive:active{scale:.96}.card--no-padding{padding:0}@media (any-hover:hover){.card--static:hover{background-color:var(--translucent-medium)}}.card--static.touch-hover{background-color:var(--translucent-medium)}.image-card{break-inside:avoid;cursor:pointer;opacity:0;transition:opacity var(--transition-slow);content-visibility:auto;contain-intrinsic-size:auto 0 auto 400px;width:100%}.image-card.loaded{opacity:1}.image-card .image-ratio-box{background-color:var(--translucent-low);border-radius:var(--radius-md);width:100%;overflow:hidden}.image-card .image-ratio-box img{object-fit:contain;border-radius:inherit;width:100%;height:100%;display:block}.image-gallery-card__caption{padding-top:var(--spacing-xs);gap:2px;display:grid}.image-gallery-card__title{color:var(--text-color);font-size:.86em;line-height:1.25}.image-gallery-card__body{color:var(--text-color);font-size:.78em;line-height:1.25}.image-gallery-card__meta{min-height:1.2em;color:var(--sec-text-color);font-size:.74em;line-height:1.2}@media (width<=640px){.image-gallery-card__caption{display:none}}.reveal-card{min-width:0;color:inherit;--reveal-card-ratio:1;--reveal-card-padding:.8em;--reveal-card-title-size:1.1em;--reveal-card-meta-size:.8em;--reveal-card-body-size:.9em;line-height:1;text-decoration:none;display:block}@media (any-hover:hover){.reveal-card:hover{color:inherit;font-style:normal;text-decoration:none}.reveal-card:hover .reveal-card__media{outline-color:var(--translucent-high)}.reveal-card:hover .reveal-card__overlay{opacity:1}.reveal-card:hover .reveal-card__overlay>*{transform:translateY(0)}}.reveal-card.touch-hover{color:inherit;font-style:normal;text-decoration:none}.reveal-card.touch-hover .reveal-card__media{outline-color:var(--translucent-high)}.reveal-card.touch-hover .reveal-card__overlay{opacity:1}.reveal-card.touch-hover .reveal-card__overlay>*{transform:translateY(0)}.reveal-card:focus-visible .reveal-card__media{outline-color:var(--translucent-high)}.reveal-card:focus-visible .reveal-card__overlay{opacity:1}.reveal-card:focus-visible .reveal-card__overlay>*{transform:translateY(0)}.reveal-card__media{width:100%;aspect-ratio:var(--reveal-card-ratio);border-radius:var(--radius-md);background-color:var(--translucent-low);outline:solid 1px var(--translucent-medium);transition:outline-color var(--transition-medium);display:block;position:relative;overflow:hidden}.reveal-card__media img{object-fit:cover;border-radius:inherit;width:100%;height:100%;margin:0;padding:0;transition:none;display:block}.reveal-card__overlay{justify-content:space-between;gap:var(--spacing-sm);padding:var(--reveal-card-padding);border-radius:inherit;color:#ffffffeb;opacity:0;transition:opacity var(--transition-slow);background-color:#00000085;flex-direction:column;display:flex;position:absolute;inset:0}.reveal-card__overlay>*{transform:translateY(var(--motion-slide-offset));transition:transform var(--transition-slow)}.reveal-card.is-revealed .reveal-card__overlay,.reveal-card__overlay.show-overlay{opacity:1}.reveal-card.is-revealed .reveal-card__overlay>*,.reveal-card__overlay.show-overlay>*{transform:translateY(0)}.reveal-card__copy{gap:var(--spacing-xs);min-width:0;display:grid}.reveal-card .reveal-card__title,.reveal-card .reveal-card__meta,.reveal-card .reveal-card__body{color:inherit;word-break:break-word;margin:0;padding:0;line-height:1.2;display:block}.reveal-card .reveal-card__title{color:#ffffffeb;font-size:var(--reveal-card-title-size)}.reveal-card .reveal-card__meta{color:#ffffffc7;font-size:var(--reveal-card-meta-size);font-variant-numeric:tabular-nums}.reveal-card .reveal-card__body{color:#ffffffeb;max-width:18em;font-size:var(--reveal-card-body-size);line-height:1.25}.reveal-card .reveal-card__meta--bottom{text-align:left}@media (prefers-reduced-motion:reduce){.reveal-card__media,.reveal-card__overlay{transition:none}}.album-item{text-align:center;opacity:0;width:100%;transition:opacity var(--transition-slow), transform var(--transition-slow);position:relative;transform:translateY(8px)}.album-item.card-visible{opacity:1;transform:translateY(0)}.palette-actions{margin-bottom:var(--spacing-xl);display:flex}.grid{gap:var(--spacing-md);display:grid}.grid--2-col{grid-template-columns:repeat(2,1fr)}.grid--3-col{grid-template-columns:repeat(3,1fr)}.grid--4-col{grid-template-columns:repeat(4,1fr)}.grid--5-col{grid-template-columns:repeat(5,1fr)}.grid--auto-fit{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid--auto-fill{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.grid--masonry{column-count:2;column-gap:var(--spacing-md);display:block}.grid--equal-rows{grid-auto-rows:1fr}.grid--gap-sm{gap:var(--spacing-xs)}.grid--gap-lg{gap:var(--spacing-xl)}.grid--no-gap{gap:0}.album-grid{transition:opacity var(--transition-slow);grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.album-grid.grid-fade-out{opacity:0}@media (width<=768px){.album-grid{grid-template-columns:repeat(2,1fr)}}.image-gallery{gap:var(--spacing-md);margin-top:var(--spacing-lg);display:grid;position:relative}.image-gallery:focus{outline:none}.image-gallery.is-deep-link-pending>.reveal__stage{visibility:hidden;opacity:1;transition:none;transform:none}.image-gallery__status,.image-gallery__summary{color:var(--sec-text-color);font-size:.9em}.image-gallery__summary{font-family:IBM Plex Mono,ui-monospace,monospace}.image-gallery__controls,.image-gallery__control-group{min-width:0}.image-gallery__control-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;color:var(--sec-text-color);border:0;margin:-1px;padding:0;font-size:.85em;line-height:1;position:absolute;overflow:hidden}.image-gallery__sentinel{pointer-events:none;width:100%;height:1px}.album-container{gap:var(--spacing-md);flex-wrap:wrap;width:100%;max-width:100%;margin:0 auto;display:flex}.album-container .masonry-column{gap:var(--spacing-md);flex-direction:column;flex:1 1 0;min-width:0;display:flex}.album-container>img{border-radius:var(--radius-md);width:100%;max-width:100%;height:auto}.palette-output{gap:var(--spacing-md);width:100%;margin-bottom:var(--spacing-md);grid-template-columns:repeat(5,1fr);grid-auto-rows:1fr;display:grid}@media (width<=600px){.palette-output{grid-template-columns:repeat(3,1fr)}}.color-swatch{aspect-ratio:1;border:1px solid var(--translucent-medium);border-radius:var(--radius-md);cursor:pointer;background:0 0;width:100%;padding:0;font-family:IBM Plex Mono,ui-monospace,monospace;position:relative;overflow:hidden}.color-swatch__hex{padding:var(--spacing-xs);text-align:center;letter-spacing:.3px;color:#fff;backdrop-filter:blur(4px);background:#00000059;font-size:.75em;font-weight:400;position:absolute;bottom:0;left:0;right:0}.color-swatch--light .color-swatch__hex{color:#000;background:#ffffff73}.color-swatch__feedback{letter-spacing:.3px;color:#fff;backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity var(--transition-fast);background:#0000008c;justify-content:center;align-items:center;font-size:.85em;font-weight:500;display:flex;position:absolute;inset:0}.color-swatch--light .color-swatch__feedback{color:#000;background:#fff9}.color-swatch.copied .color-swatch__feedback{opacity:1}.game-grid{gap:var(--spacing-sm);display:grid}.game-grid--ttt{gap:var(--spacing-sm);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr)}.game-grid--minesweeper{box-sizing:border-box;max-width:100%;overflow:hidden}.info-grid{gap:var(--spacing-md);display:grid}.info-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.info-card{column-gap:var(--spacing-md);row-gap:var(--spacing-2xs);min-width:0;padding:var(--spacing-md);background-color:var(--translucent-low);border-radius:var(--radius-md);outline:solid 1px var(--translucent-medium);grid-template-columns:1em minmax(0,1fr);grid-template-areas:"icon title"".body";display:grid}.info-card__icon{width:1em;color:var(--sec-text-color);grid-area:icon;justify-content:flex-start;align-self:center;align-items:center;padding-top:.2em;display:inline-flex}.info-card__title{grid-area:title;min-width:0;margin:0;font-size:1em;font-weight:500;line-height:1.25}.info-card__body{min-width:0;color:var(--sec-text-color);grid-area:body;margin:0;font-size:.85em;line-height:1.4}.info-card--no-icon{grid-template-columns:minmax(0,1fr);grid-template-areas:"title""body"}@media screen and (width<=600px){.info-grid--cards{gap:var(--spacing-sm);grid-template-columns:1fr}}input[type=text],input[type=email],input[type=url],select{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--translucent-low);border-radius:var(--radius-md);color:var(--text-color);font-family:var(--font-family,-apple-system, "SF Pro Display", "inter", sans-serif);transition:background-color var(--transition-medium);outline:solid 1px var(--translucent-medium);--focus-ring-color:transparent;border:none}input[type=text]:focus,input[type=email]:focus,input[type=url]:focus,select:focus{background-color:var(--translucent-high)}input[type=text]::placeholder,input[type=email]::placeholder,input[type=url]::placeholder,select::placeholder{color:var(--sec-text-color);opacity:.7}.selection-dropdown{width:100%;font-weight:300}.selection-dropdown__trigger{justify-content:space-between;align-items:center;gap:var(--spacing-md);width:100%;min-height:var(--control-height-lg);background-color:var(--translucent-low);color:var(--text-color);border-radius:var(--radius-lg);backdrop-filter:none;transition:background-color var(--transition-medium);outline:solid 1px var(--translucent-medium);border:none;display:flex}@media (any-hover:hover){.selection-dropdown__trigger:hover{background-color:var(--translucent-medium);color:var(--text-color)}}.selection-dropdown__trigger.touch-hover{background-color:var(--translucent-medium);color:var(--text-color)}.selection-dropdown__trigger .selection-dropdown__chevron{transition:transform var(--transition-slow)}.selection-dropdown__trigger[aria-expanded=true]{background-color:var(--translucent-medium)}.selection-dropdown__trigger[aria-expanded=true] .selection-dropdown__chevron{transform:rotate(180deg)}.selection-dropdown__trigger-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.selection-dropdown__chevron{color:var(--sec-text-color);flex:none;line-height:1}.selection-dropdown__menu{gap:var(--spacing-2xs);max-height:240px;margin-top:var(--spacing-md);padding:var(--spacing-xs);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);opacity:1;transition:max-height var(--transition-slow), opacity var(--transition-slow), margin-top var(--transition-slow), margin-bottom var(--transition-slow), padding-top var(--transition-slow), padding-bottom var(--transition-slow);will-change:opacity;display:grid;overflow:hidden}.selection-dropdown__menu.collapsed{opacity:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;max-height:0!important}.selection-dropdown__menu{overflow-y:auto}.selection-dropdown__menu.collapsed{overflow-y:hidden}.selection-dropdown__option{justify-content:space-between;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-color);border-radius:var(--radius-md);text-align:left;backdrop-filter:none;background-color:#0000;border:none;display:flex}@media (any-hover:hover){.selection-dropdown__option:hover{background-color:var(--translucent-low);color:var(--text-color)}}.selection-dropdown__option.touch-hover{background-color:var(--translucent-low);color:var(--text-color)}.selection-dropdown__option .selection-dropdown__option-check{opacity:0;transition:opacity var(--transition-fast);flex:none}.selection-dropdown__option.active{background-color:var(--contrast-overlay);color:var(--background-main)}.selection-dropdown__option.active .selection-dropdown__option-check{opacity:1}.selection-dropdown__option-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}input[type=range]{appearance:none;background:linear-gradient(to right, var(--text-color) var(--value-percent,0%), var(--translucent-medium) var(--value-percent,0%)) center/100% 2px no-repeat;cursor:pointer;background-color:#0000;border:none;outline:none;width:100%;height:18px;margin:0;display:block}input[type=range]::-webkit-slider-thumb{appearance:none;width:var(--control-thumb-size);height:var(--control-thumb-size);background:var(--text-color);cursor:pointer;transition:transform var(--transition-fast);border:none;border-radius:50%}input[type=range]::-moz-range-thumb{width:var(--control-thumb-size);height:var(--control-thumb-size);background:var(--text-color);cursor:pointer;transition:transform var(--transition-fast);border:none;border-radius:50%}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.2)}input[type=range]:hover::-moz-range-thumb{transform:scale(1.2)}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.4)}input[type=range]:active::-moz-range-thumb{transform:scale(1.4)}input[type=color]{cursor:pointer;width:50px;height:40px;transition:background-color var(--transition-medium);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);border:none;padding:0;overflow:hidden}input[type=color]::-webkit-color-swatch-wrapper{border-radius:var(--radius-md);border:none;padding:0}input[type=color]::-webkit-color-swatch{border-radius:var(--radius-md);border:none}input[type=color]::-moz-color-swatch{border-radius:var(--radius-md);border:none}.range-slider{gap:var(--spacing-xs);display:grid}.range-value{color:var(--sec-text-color);letter-spacing:.3px;text-transform:lowercase;font-variant-numeric:tabular-nums;font-size:.85em;font-weight:300;line-height:1}.image-upload{gap:var(--spacing-sm);display:grid}.image-upload__selector{cursor:pointer;width:100%;height:200px;color:var(--text-color);transition:background-color var(--transition-medium), color var(--transition-medium);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);border:none;justify-content:center;align-items:center;font-size:.9em;font-weight:400;display:flex}@media (any-hover:hover){.image-upload__selector:hover{background-color:var(--translucent-high);color:var(--text-color)}}.image-upload__selector.touch-hover{background-color:var(--translucent-high);color:var(--text-color)}.image-upload__input{display:none}.image-upload .image-upload__preview{border-radius:var(--radius-md);outline:solid 1px var(--translucent-medium);width:100%;max-width:100%;margin:0;padding:0;transition:opacity .5s ease-out;display:none}.image-upload .image-upload__preview.fade-out{opacity:0}.image-upload--has-preview .image-upload__selector{display:none}.image-upload--has-preview .image-upload__preview{display:block}.image-zoom-overlay{z-index:var(--z-modal);isolation:isolate;--image-zoom-horizontal-padding:60px;--image-zoom-top-strip:52px;--image-zoom-control-strip-height:32px;--image-zoom-direct-scale:.985;--image-zoom-direct-image-duration:.2s;--image-zoom-direct-opacity-duration:.18s;--image-zoom-direct-controls-duration:.12s;--image-zoom-direct-backdrop-duration:.16s;--image-zoom-direct-backdrop-delay:50ms;position:fixed;inset:0}.image-zoom-overlay--has-meta{--image-zoom-control-strip-height:56px}@media (hover:none){.image-zoom-overlay{--image-zoom-horizontal-padding:20px}}[data-zoomable]{cursor:zoom-in;border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px var(--translucent-medium);backface-visibility:hidden}.image-zoom-backdrop{background-color:var(--background-main);backdrop-filter:none;width:100%;height:100%;z-index:var(--z-modal);opacity:0;transition:opacity var(--transition-medium);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:0;padding:0;position:fixed;top:0;left:0}.image-zoom-backdrop.active{opacity:1}@media (any-hover:hover){.image-zoom-backdrop:hover{background-color:var(--background-main);color:#0000;font-style:normal;text-decoration:none}}.image-zoom-backdrop.touch-hover{background-color:var(--background-main);color:#0000;font-style:normal;text-decoration:none}.image-zoom-backdrop:focus,.image-zoom-backdrop:active,.image-zoom-backdrop.touch-hover{background-color:var(--background-main);color:#0000;outline:none}.image-zoom-clone{z-index:calc(var(--z-modal) + 1);transition:top var(--transition-slow), left var(--transition-slow), width var(--transition-slow), height var(--transition-slow), transform var(--transition-slow), opacity var(--transition-medium);cursor:default;object-fit:contain;backface-visibility:hidden;background-color:#0000;margin:0;padding:0;transform:translateZ(0);border-radius:0!important}.image-zoom-clone.zoomed{box-shadow:none}.image-zoom-clone.image-zoom-clone--direct{opacity:0;transform:scale(var(--image-zoom-direct-scale)) translateZ(0)}.image-zoom-clone.image-zoom-clone--direct.zoomed{opacity:1;transform:scale(1)translateZ(0)}.image-zoom-clone.image-zoom-clone--settled{max-width:none;max-height:none;top:var(--image-zoom-top-strip)!important;left:var(--image-zoom-horizontal-padding)!important;width:calc(100vw - var(--image-zoom-horizontal-padding) - var(--image-zoom-horizontal-padding))!important;height:calc(100vh - var(--image-zoom-top-strip) - var(--image-zoom-control-strip-height))!important;height:calc(100dvh - var(--image-zoom-top-strip) - var(--image-zoom-control-strip-height))!important;transition:none!important;transform:translateZ(0)!important}.image-zoom-clone.image-zoom-clone--direct,.image-zoom-overlay.image-zoom-overlay--closing-direct .image-zoom-clone{transition:opacity var(--image-zoom-direct-opacity-duration) cubic-bezier(.4, 0, .2, 1), transform var(--image-zoom-direct-image-duration) cubic-bezier(.4, 0, .2, 1);will-change:opacity, transform}.image-zoom-overlay.image-zoom-overlay--closing-direct .image-zoom-clone{opacity:0;transform:scale(var(--image-zoom-direct-scale)) translateZ(0)}.image-zoom-overlay.image-zoom-overlay--closing-direct .image-zoom-controls{opacity:0;transition:opacity var(--image-zoom-direct-controls-duration) cubic-bezier(.4, 0, .2, 1);will-change:opacity}.image-zoom-overlay.image-zoom-overlay--closing-direct .image-zoom-backdrop{opacity:0;transition:opacity var(--image-zoom-direct-backdrop-duration) cubic-bezier(.4, 0, .2, 1) var(--image-zoom-direct-backdrop-delay);will-change:opacity}.image-zoom-controls{z-index:calc(var(--z-modal) + 2);pointer-events:none;opacity:0;transition:opacity var(--transition-slow);position:fixed;inset:0}.image-zoom-controls.active{opacity:1}.image-zoom-controls button{pointer-events:auto}.image-zoom-edge{border-radius:var(--radius-md);cursor:pointer;width:48px;height:88px;color:var(--sec-text-color);transition:color var(--transition-medium);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.6em;line-height:1;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.image-zoom-edge--prev{left:8px}.image-zoom-edge--next{right:8px}@media (any-hover:hover){.image-zoom-edge:hover{color:var(--text-color);background-color:#0000}}.image-zoom-edge.touch-hover{color:var(--text-color);background-color:#0000}.image-zoom-edge:focus{outline:none}.image-zoom-edge[hidden]{display:none}.image-zoom-edge:disabled{color:var(--sec-text-color);cursor:default;opacity:.35}@media (any-hover:hover){.image-zoom-edge:disabled:hover{color:var(--sec-text-color)}}.image-zoom-edge:disabled.touch-hover{color:var(--sec-text-color)}@media (hover:none){.image-zoom-edge{display:none}}.image-zoom-corner{align-items:center;gap:var(--spacing-sm);display:flex;position:absolute;top:16px;right:20px}.image-zoom-infobar{left:50%;bottom:var(--spacing-xl);max-width:calc(100vw - var(--spacing-xl) * 2);justify-content:center;display:flex;position:absolute;transform:translate(-50%)}.image-zoom-meta{align-items:baseline;gap:var(--spacing-sm);max-width:100%;transition:opacity var(--transition-slow);display:flex}.image-zoom-meta:empty,.image-zoom-meta.is-empty{display:none}.image-zoom-meta.is-fading{opacity:0}.image-zoom-caption{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.85em;line-height:1.4;overflow:hidden}.image-zoom-detail{color:var(--sec-text-color);white-space:nowrap;flex-shrink:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.78em;line-height:1.4}.image-zoom-counter{color:var(--sec-text-color);white-space:nowrap;text-align:center;font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.68em;line-height:24px}.image-zoom-sep{color:var(--sec-text-color);opacity:.5;user-select:none;font-size:.85em;line-height:24px}.image-zoom-control-button{border-radius:var(--radius-md);backdrop-filter:none;cursor:pointer;width:24px;height:24px;color:var(--sec-text-color);transition:color var(--transition-medium), opacity var(--transition-medium);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1em;line-height:1;display:inline-flex;position:relative}.image-zoom-control-button:before{content:"";position:absolute;inset:-8px}@media (any-hover:hover){.image-zoom-control-button:hover{color:var(--text-color);background-color:#0000}}.image-zoom-control-button.touch-hover{color:var(--text-color);background-color:#0000}.image-zoom-control-button:focus{outline:none}.image-zoom-control-button:disabled{color:var(--sec-text-color);cursor:default;opacity:.35}@media (any-hover:hover){.image-zoom-control-button:disabled:hover{color:var(--sec-text-color);background-color:#0000}}.image-zoom-control-button:disabled.touch-hover{color:var(--sec-text-color);background-color:#0000}@media (prefers-reduced-motion:reduce){.image-zoom-overlay{--image-zoom-direct-scale:1;--image-zoom-direct-image-duration:.12s;--image-zoom-direct-opacity-duration:.12s;--image-zoom-direct-controls-duration:.12s;--image-zoom-direct-backdrop-duration:.12s;--image-zoom-direct-backdrop-delay:0s}.image-zoom-backdrop,.image-zoom-controls,.image-zoom-clone{transition-duration:.16s}.image-zoom-clone{transform:none!important}}.icon{vertical-align:-.12em;fill:currentColor;flex-shrink:0;width:1em;height:1em;line-height:1em;display:inline-block}.charm{--charm-x:0;--charm-y:0;--charm-rotate:0deg;--charm-rotate-hover:0deg;--charm-scale:1;z-index:1;pointer-events:none;transform:translate(var(--charm-x), var(--charm-y)) rotate(calc(var(--charm-rotate) + var(--charm-rotate-hover))) scale(var(--charm-scale));transform-origin:50%;transition:transform var(--transition-medium);will-change:transform;line-height:1;display:inline-flex;position:absolute}.charm--tr{top:0;right:0}.charm--tl{top:0;left:0}.charm--br{bottom:0;right:0}.charm--bl{bottom:0;left:0}@media (prefers-reduced-motion:reduce){.charm{transition:none}}@keyframes charm-pop-in{0%{opacity:0;transform:translateY(-8px)scale(.7)}35%{opacity:1;transform:translateY(1px)scale(1.05)}70%{transform:translateY(0)scale(.99)}to{opacity:1;transform:none}}@keyframes charm-pulse{0%{transform:scale(1)}35%{transform:scale(1.18)}70%{transform:scale(.96)}to{transform:scale(1)}}.charm--flower{pointer-events:auto;cursor:pointer}.charm--flower .charm-fx{display:inline-flex}@media (prefers-reduced-motion:no-preference){.charm--flower .charm-fx__body.is-pulsing{animation:.44s ease-out charm-pulse}}.charm--flower img{object-fit:contain;background-color:#0000;width:auto;height:1.2em;display:block}@media (any-hover:hover){.charm--flower:hover{--charm-rotate-hover:10deg;--charm-scale:1.4}}.charm--count{--charm-count-bg:#7cae86;--charm-count-fg:#fff;--charm-count-outline:#b3d6b8;pointer-events:auto;cursor:pointer;font-size:.75rem}.charm--count .charm-fx{display:inline-flex}@media (prefers-reduced-motion:no-preference){.charm--count .charm-fx{animation:.44s ease-out .15s both charm-pop-in}.charm--count .charm-fx__body.is-pulsing{animation:.44s ease-out charm-pulse}}.charm--count .charm-fx__body{box-sizing:border-box;border-radius:var(--radius-pill);background-color:var(--charm-count-bg);min-width:2.15em;height:1.5em;color:var(--charm-count-fg);outline:2px solid var(--charm-count-outline);font-variant-numeric:tabular-nums;letter-spacing:.01em;justify-content:center;align-items:center;padding:0 .5em;font-weight:500;line-height:1;display:inline-flex}.charm--canister{--charm-canister-outline:#f2cd82;pointer-events:auto;cursor:pointer}.charm--canister .charm-fx{display:inline-flex}@media (prefers-reduced-motion:no-preference){.charm--canister .charm-fx{animation:.44s ease-out .15s both charm-pop-in}.charm--canister .charm-fx__body.is-pulsing{animation:.44s ease-out charm-pulse}}@media (width<=768px){.charm--canister{--charm-scale:.9}}.charm--canister .charm-fx__body{object-fit:contain;width:auto;height:3.25em;filter:drop-shadow(1px 0 0 var(--charm-canister-outline)) drop-shadow(-1px 0 0 var(--charm-canister-outline)) drop-shadow(0 1px 0 var(--charm-canister-outline)) drop-shadow(0 -1px 0 var(--charm-canister-outline)) drop-shadow(1px 1px 0 var(--charm-canister-outline)) drop-shadow(-1px 1px 0 var(--charm-canister-outline)) drop-shadow(1px -1px 0 var(--charm-canister-outline)) drop-shadow(-1px -1px 0 var(--charm-canister-outline));background-color:#0000;display:block}.charm--heart{--charm-heart-fill:#d16a64;--charm-heart-outline:#eba49d;pointer-events:auto;cursor:pointer;font-size:.75rem}.charm--heart .charm-fx{display:inline-flex}@media (prefers-reduced-motion:no-preference){.charm--heart .charm-fx{animation:.44s ease-out .15s both charm-pop-in}.charm--heart .charm-fx__body.is-pulsing{animation:.44s ease-out charm-pulse}}.charm--heart .charm-fx__body{width:auto;height:1.75em;display:block}.charm--heart svg{width:auto;height:100%;display:block;overflow:visible}.charm--heart path{fill:var(--charm-heart-fill);stroke:var(--charm-heart-outline);stroke-width:5.5px;stroke-linejoin:round;paint-order:stroke}.charm--jacket{--charm-jacket-outline:#a6c1dc;pointer-events:auto;cursor:pointer}.charm--jacket .charm-fx{display:inline-flex}@media (prefers-reduced-motion:no-preference){.charm--jacket .charm-fx{animation:.44s ease-out .15s both charm-pop-in}.charm--jacket .charm-fx__body.is-pulsing{animation:.44s ease-out charm-pulse}}.charm--jacket .charm-fx__body{object-fit:contain;width:auto;height:3.6rem;filter:drop-shadow(1.2px 0 0 var(--charm-jacket-outline)) drop-shadow(-1.2px 0 0 var(--charm-jacket-outline)) drop-shadow(0 1.2px 0 var(--charm-jacket-outline)) drop-shadow(0 -1.2px 0 var(--charm-jacket-outline)) drop-shadow(1.2px 1.2px 0 var(--charm-jacket-outline)) drop-shadow(-1.2px 1.2px 0 var(--charm-jacket-outline)) drop-shadow(1.2px -1.2px 0 var(--charm-jacket-outline)) drop-shadow(-1.2px -1.2px 0 var(--charm-jacket-outline));background-color:#0000;display:block}.charm--pearl{--charm-pearl-outline:#e6d7b8;pointer-events:auto;cursor:pointer}.charm--pearl .charm-fx{display:inline-flex}@media (prefers-reduced-motion:no-preference){.charm--pearl .charm-fx{animation:.44s ease-out .15s both charm-pop-in}.charm--pearl .charm-fx__body.is-pulsing{animation:.44s ease-out charm-pulse}}.charm--pearl .charm-fx__body{object-fit:contain;width:auto;height:5rem;filter:drop-shadow(1px 0 0 var(--charm-pearl-outline)) drop-shadow(-1px 0 0 var(--charm-pearl-outline)) drop-shadow(0 1px 0 var(--charm-pearl-outline)) drop-shadow(0 -1px 0 var(--charm-pearl-outline)) drop-shadow(1px 1px 0 var(--charm-pearl-outline)) drop-shadow(-1px 1px 0 var(--charm-pearl-outline)) drop-shadow(1px -1px 0 var(--charm-pearl-outline)) drop-shadow(-1px -1px 0 var(--charm-pearl-outline));background-color:#0000;display:block}.post{--post-header-gap:var(--spacing-md);gap:var(--post-header-gap);display:grid}.post--dated{--post-header-gap:var(--spacing-xl)}.post__back{text-align:left;display:block}.post__header{min-width:0;position:relative}.post__date{text-align:left;color:var(--sec-text-color);font-size:.75em;font-weight:200}.post__title{text-align:left;text-wrap:balance;font-size:24pt;font-weight:500;line-height:1.1em}.post__content{--post-flow-space:var(--spacing-md);color:var(--text-color)}.post__content>*{margin-block:0}.post__content>*+*{margin-top:var(--post-flow-space)}.post__content h1,.post__content h2{margin-top:var(--spacing-lg)}.post__content hr{width:10%;color:var(--background-main);opacity:.6}.post__content ul{margin-left:var(--spacing-lg);color:var(--sec-text-color);padding-bottom:0;font-size:12pt;line-height:1.3em;list-style:outside}.post__content ol{margin-left:var(--spacing-lg);padding-bottom:0;line-height:1.65em;list-style:outside}.post__content li{padding-top:3px;padding-bottom:3px;padding-left:2px}.post__content>img,.post__content>p>img{max-width:100%;height:auto;margin-left:auto;margin-right:auto;padding:0;display:block}.post__content>img{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.post__content>.img-curved-edges,.post__content>p>.img-curved-edges{border-radius:var(--radius-md);outline:solid 1px var(--translucent-medium);max-width:100%;margin:0;padding:0;display:block}.post__content .note{background:var(--translucent-low);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-lg);color:var(--sec-text-color);font-size:.95em;display:block}.post__content .note a{text-decoration:underline;text-decoration-color:var(--color-link-underline);text-underline-offset:2.5px;line-height:25px;text-decoration-thickness:.125em}.post__content .highlight pre{margin:0;padding:0}.post__content .highlight,.post__content pre{background:var(--code-bg);padding:var(--spacing-lg);border-radius:var(--radius-md);color:var(--text-color);margin-bottom:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11pt;font-weight:200;line-height:16pt;overflow-x:auto}.post__content .lineno{color:var(--color-line-number);margin-right:var(--spacing-lg);-webkit-touch-callout:none;user-select:none}.post__content .codebreak{margin:var(--spacing-lg);border:0;border-bottom:1px dashed var(--color-code-break)}.paintings-hub__intro{padding-right:4em}.more-page{gap:var(--spacing-sm);margin-top:var(--spacing-md);display:grid}.more-section{gap:var(--spacing-lg);grid-template-columns:130px minmax(0,1fr);align-items:baseline;font-size:11.5pt;line-height:25px;display:grid}.more-section__label{color:var(--sec-text-color);white-space:nowrap;font-size:.85em}.more-section__label a{color:inherit}.more-section__path-sep{opacity:.45;margin:0 4px}.more-section__links{min-width:0}.more-section__item{align-items:baseline;display:inline-flex}.more-section__item:after{content:",";color:var(--sec-text-color);opacity:.5;margin-right:2px}.more-section__item.is-last-visible:after{content:"";margin-right:0}.more-section[hidden],.more-section__item[hidden]{display:none}@media screen and (width<=360px){.more-section{grid-template-columns:1fr;gap:0}}.more-empty{color:var(--sec-text-color);margin-top:var(--spacing-md);font-size:.9em}.home__intro p{text-align:left;font-size:11.5pt;font-weight:200;line-height:1.5em}.site-title-link{color:inherit;font:inherit;cursor:pointer;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;transition:none}.site-title-link:hover,.site-title-link:focus,.site-title-link:focus-visible,.site-title-link.touch-hover{backdrop-filter:none;color:inherit;background:0 0}.site-title-link{line-height:inherit;display:inline;font-weight:inherit!important}@media (any-hover:hover){.site-title-link:hover{text-decoration:underline}}.archive ul{margin:0;padding:0}.archive li{margin:0;padding:1px 0;font-size:11.5pt;line-height:1.3em;list-style:none}.archive .date{color:var(--sec-text-color);white-space:nowrap;opacity:.8;margin-left:var(--spacing-xs);font-variant-numeric:tabular-nums;font-size:.7em}#flappy-meta{color:var(--sec-text-color);letter-spacing:.3px;margin:var(--spacing-xl) 0 var(--spacing-sm);justify-content:space-between;align-items:baseline;font-size:.85em;font-weight:300;display:flex}#flappy-game-container{margin:0 0 var(--spacing-xl);flex-direction:column;align-items:stretch;display:flex;position:relative}#flappy-game-container #flappyCanvas{border:1px solid var(--translucent-medium);border-radius:var(--radius-lg);box-sizing:border-box;width:100%;height:auto;transition:filter var(--transition-backdrop);background:0 0;display:block}#flappy-game-container #flappyCanvas.dimmed{filter:blur(3px)opacity(.35)}@media screen and (width<=768px){#flappy-game-container{width:100%;max-width:100vw}#flappy-game-container #flappyCanvas{touch-action:none;-webkit-touch-callout:none;user-select:none;max-width:95vw;max-height:70vh}}#flappy-ui{width:100%;height:100%;padding:0 var(--spacing-2xl);box-sizing:border-box;pointer-events:none;flex-direction:column;justify-content:center;align-items:flex-start;display:flex;position:absolute;top:0;left:0}#flappy-ui>*{pointer-events:auto}#game-over,#start-screen{text-align:left;opacity:0;transition:opacity var(--transition-backdrop)}#game-over.visible,#start-screen.visible{opacity:1}#game-over h2,#start-screen h2{letter-spacing:.3px;margin:0 0 var(--spacing-xs);font-size:1.4em;font-weight:400}#game-over p,#start-screen p{color:var(--sec-text-color);margin:0 0 var(--spacing-lg);font-size:.9em}#game-over button,#start-screen button{font-size:.9em}#ttt-meta{color:var(--sec-text-color);letter-spacing:.3px;margin:var(--spacing-xl) 0 var(--spacing-sm);justify-content:space-between;align-items:baseline;font-size:.85em;font-weight:300;display:flex}#ttt-game-container{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);display:grid}.ttt-cell{border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-medium);border:1px solid var(--translucent-medium);aspect-ratio:1;backdrop-filter:blur(10px);font-family:IBM Plex Mono,ui-monospace,monospace;position:relative}.ttt-cell:before{content:attr(data-content);font-size:1.3em;font-weight:300;line-height:100;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (any-hover:hover){.ttt-cell:hover{background-color:var(--translucent-medium)}}.ttt-cell.touch-hover{background-color:var(--translucent-medium)}.ttt-cell.x:before{color:var(--game-ttt-x)}.ttt-cell.o:before{color:var(--game-ttt-o)}.ttt-cell.winning-cell{background-color:color-mix(in srgb, var(--game-ttt-win) 50%, transparent)}.ttt-cell.winning-cell:before{color:var(--text-color)}#game-of-life-container{margin:var(--spacing-lg) 0 0}#game-of-life-grid{grid-gap:var(--spacing-xs);box-sizing:border-box;max-width:100%;display:grid;overflow:hidden}@media screen and (width<=768px){#game-of-life-grid{grid-gap:3px}}.gol-cell{border:1px solid var(--translucent-medium);border-radius:var(--radius-sm);cursor:pointer;user-select:none;aspect-ratio:1;box-sizing:border-box;min-width:0}@media (any-hover:hover){.gol-cell:hover{background-color:var(--translucent-medium)}}.gol-cell.touch-hover{background-color:var(--translucent-medium)}.gol-cell.alive{background-color:var(--text-color);border-color:var(--text-color)}#minesweeper-container{flex-direction:column;align-items:stretch;margin:0;display:flex}#minesweeper-header{width:100%;color:var(--sec-text-color);letter-spacing:.3px;margin:var(--spacing-xl) 0 var(--spacing-sm);justify-content:space-between;align-items:baseline;font-size:.85em;font-weight:300;display:flex}#minesweeper-grid{grid-gap:var(--spacing-xs);box-sizing:border-box;max-width:100%;display:grid;overflow:hidden}@media screen and (width<=768px){#minesweeper-grid{grid-gap:3px}}.ms-cell{border:1px solid var(--translucent-medium);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-medium), border-color var(--transition-medium);user-select:none;box-sizing:border-box;aspect-ratio:1;justify-content:center;align-items:center;min-width:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:calc(100% - 2px);font-weight:400;display:flex;position:relative}@media (any-hover:hover){.ms-cell:hover{background-color:var(--translucent-medium)}}.ms-cell.touch-hover{background-color:var(--translucent-medium)}.ms-cell.revealed{border-color:var(--translucent-low);background-color:var(--translucent-low)}.ms-cell.flagged:before{content:"🚩";font-size:var(--spacing-lg)}.ms-cell.mine:before{content:"💣";font-size:var(--spacing-lg)}.ms-cell.flagged-correct:before{content:"🚩";font-size:var(--spacing-lg)}.ms-cell.flagged-wrong:before{content:"❌";font-size:var(--spacing-lg)}.ms-cell.adjacent-1{color:var(--game-ms-1)}.ms-cell.adjacent-2{color:var(--game-ms-2)}.ms-cell.adjacent-3{color:var(--game-ms-3)}.ms-cell.adjacent-4{color:var(--game-ms-4)}.ms-cell.adjacent-5{color:var(--game-ms-5)}.ms-cell.adjacent-6{color:var(--game-ms-6)}.ms-cell.adjacent-7{color:var(--game-ms-7)}.ms-cell.adjacent-8{color:var(--game-ms-8)}#minesweeper-controls{margin-top:var(--spacing-lg)}#game-status{margin-top:var(--spacing-xs);color:var(--sec-text-color);letter-spacing:.3px;flex-basis:100%;font-size:.85em;font-weight:300}#game-status.win{color:var(--game-status-win)}#game-status.lose{color:var(--game-status-lose)}#colordle-meta{color:var(--sec-text-color);letter-spacing:.3px;margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:baseline;font-size:.85em;font-weight:300;display:flex}.colordle-container #color-display{border:1px solid var(--translucent-medium);border-radius:var(--radius-lg);height:70px;margin-bottom:var(--spacing-lg)}.colordle-container #game-board{gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);flex-direction:column;display:flex}.colordle-container .guess-row .hex-cells{gap:var(--spacing-xs);grid-template-columns:repeat(7,1fr);width:100%;display:grid}.colordle-container .guess-row .hex-cells .hex-cell{aspect-ratio:1;border:1px solid var(--translucent-medium);border-radius:var(--radius-sm);min-width:0;color:var(--text-color);transition:background-color var(--transition-medium), border-color var(--transition-medium);box-sizing:border-box;justify-content:center;align-items:center;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:1.1rem;font-weight:400;display:flex}.colordle-container .guess-row .hex-cells .hex-cell.hash-cell{color:var(--sec-text-color)}.colordle-container .guess-row .hex-cells .hex-cell.hash-cell[style*=background-color]{color:#0000}.colordle-container .guess-row .hex-cells .hex-cell.empty-cell{color:var(--sec-text-color)}.colordle-container .guess-row .hex-cells .hex-cell.correct{background-color:var(--game-colordle-correct);border-color:var(--game-colordle-correct);color:#fff}.colordle-container .guess-row .hex-cells .hex-cell.close{background-color:var(--game-colordle-close);border-color:var(--game-colordle-close);color:#fff}.colordle-container .guess-row .hex-cells .hex-cell.wrong{background-color:var(--game-colordle-wrong);border-color:var(--game-colordle-wrong);color:#fff}.colordle-container .input-section{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);display:flex}.colordle-container .input-section #guess-input{flex:1;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:1rem}.colordle-container .game-message{padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.colordle-container .game-message.success{color:var(--game-status-success)}.colordle-container .game-message.error{color:var(--game-status-error)}.colordle-container .game-results{background:var(--translucent-medium);padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);backdrop-filter:blur(10px)}.colordle-container .game-results .share-section{margin-top:var(--spacing-lg)}.colordle-container .game-results .share-section .share-text{background:var(--background-main);border:1px solid var(--translucent-medium);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);white-space:pre-line;text-align:left;user-select:all;cursor:text;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.9rem}.colordle-container .game-results .game-stats .stats-grid{gap:var(--spacing-md);grid-template-columns:repeat(4,1fr);display:grid}.colordle-container .game-results .game-stats .stats-grid .stat .stat-number{color:var(--text-color);font-size:2rem;font-weight:500}.colordle-container .game-results .game-stats .stats-grid .stat .stat-label{color:var(--sec-text-color);margin-top:var(--spacing-xs);font-size:.9rem}.colordle-container .game-controls{gap:var(--spacing-md);flex-wrap:wrap;justify-content:center;display:flex}@media (prefers-reduced-motion:reduce){#flappyCanvas,#game-over,#start-screen,.ttt-cell,.gol-cell,.ms-cell,.colordle-container .hex-cell{transition:none}}.feedback-example{vertical-align:bottom;width:var(--spacing-xl);height:var(--spacing-xl);border-radius:var(--radius-sm);margin-right:var(--spacing-xs);display:inline-block}.feedback-example.correct{background-color:var(--game-colordle-correct)}.feedback-example.close{background-color:var(--game-colordle-close)}.feedback-example.wrong{background-color:var(--game-colordle-wrong)}.music-widget{color:inherit;text-decoration:none}.music-widget:hover{color:inherit;font-style:normal;text-decoration:none}.music-widget-content{text-align:left;align-items:center;gap:var(--spacing-md);padding:7px var(--spacing-lg) 7px var(--spacing-md);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);transition:background-color var(--transition-medium);border-radius:var(--radius-md);line-height:1em;display:flex}@media (any-hover:hover){.music-widget-content:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.music-widget-content.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.music-widget-content:has(.music-widget-art-wrapper:hover){background-color:var(--translucent-low);color:inherit}.music-widget-art-wrapper{border-radius:var(--radius-sm);outline:solid 1px var(--translucent-medium);cursor:pointer;transform-origin:0;width:28px;height:28px;transition:transform var(--transition-medium);will-change:transform;z-index:1;flex-shrink:0;position:relative}@media (any-hover:hover) and (prefers-reduced-motion:no-preference){.music-widget-art-wrapper:hover{transform:translateX(calc(-1 * var(--spacing-md) - 5.5px)) rotate(-1.5deg) scale(1.75);z-index:3}}@media (prefers-reduced-motion:no-preference){.music-widget-art.is-pulsing{animation:.44s ease-out charm-pulse}}.music-widget-art-placeholder{background-color:var(--translucent-high);border-radius:var(--radius-sm);position:absolute;inset:0}.music-widget .music-widget-art{object-fit:cover;border-radius:var(--radius-sm);opacity:0;width:28px;height:28px;transition:opacity var(--transition-slow);flex-shrink:0;margin:0;padding:0;display:block;position:relative}.music-widget .music-widget-art.loaded{opacity:1}.music-widget-info{flex-direction:row;flex:auto;align-items:baseline;gap:0;min-width:0;display:flex;overflow:hidden}.music-widget-info .music-widget-info-placeholder{color:var(--sec-text-color);opacity:.7;font-size:.9em}.music-widget-info .music-widget-track,.music-widget-info .music-widget-separator,.music-widget-info .music-widget-artist{opacity:0;transition:opacity var(--transition-slow)}.music-widget-info.loaded .music-widget-info-placeholder{display:none}.music-widget-info.loaded .music-widget-track,.music-widget-info.loaded .music-widget-separator,.music-widget-info.loaded .music-widget-artist{opacity:1}.music-widget-track{white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;font-size:.95em;font-weight:400;overflow:hidden}.music-widget-separator{flex-shrink:0;padding:0 4px;font-size:.9em}.music-widget-artist{white-space:nowrap;text-overflow:ellipsis;opacity:.8;font-size:.9em;overflow:hidden}.music-widget-status{align-items:baseline;gap:var(--spacing-xs);color:var(--sec-text-color);white-space:nowrap;opacity:0;transition:opacity var(--transition-slow);flex-shrink:0;margin-left:auto;font-size:.8em;display:flex}.music-widget-status.loaded{opacity:1}.music-widget-status:not(.is-live) .music-widget-status-label:not(:empty):after{content:" ·"}.music-widget-status-time{font-variant-numeric:tabular-nums}.music-widget-status-icon{align-self:baseline;font-size:1.15em;display:none;transform:translateY(-.065em)}.music-widget-status.is-live .music-widget-status-icon{display:inline-block}.music-widget-arrow{margin-left:var(--spacing-sm);flex-shrink:0;font-size:.9em}@media (width<=420px){.music-widget-status:not(.is-live) .music-widget-status-label{display:none}}.artist-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.artist-list .music-artist-item{box-sizing:border-box;min-height:var(--control-height-lg);padding:var(--spacing-md);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);transition:background-color var(--transition-medium);align-items:center;line-height:1;display:flex}@media (any-hover:hover){.artist-list .music-artist-item:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.artist-list .music-artist-item.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.artist-list .music-artist-item .music-artist-name{color:var(--text-color);margin:0;font-size:1em;font-weight:400}.tool-preview-img{object-fit:contain;border-radius:var(--radius-md);width:100%;margin:0;padding:0;display:block}.archive-index-grid{gap:var(--spacing-lg) var(--spacing-lg);margin-top:var(--spacing-xl);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.archive-index-card{gap:var(--spacing-xs);--reveal-card-ratio:8 / 5;--reveal-card-padding:var(--spacing-lg);--reveal-card-meta-size:.82em;--reveal-card-body-size:.88em;display:grid}.archive-index-card__caption{gap:var(--spacing-sm);grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:25px;display:grid}.archive-index-card__heading{flex-direction:column;gap:2px;min-width:0;display:flex}.archive-index-card__title{min-width:0;color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;font-size:.95em;font-weight:400;line-height:1.2;overflow:hidden}.archive-index-card__sub{min-width:0;color:var(--sec-text-color);text-overflow:ellipsis;white-space:nowrap;font-size:.78em;line-height:1.2;overflow:hidden}.archive-index-card__arrow{color:var(--sec-text-color);align-items:center;transition:none;display:inline-flex}.archive-index-card.reveal-card .reveal-card__overlay{background-color:#0000;background-image:linear-gradient(#0000 20%,#00000080 60%,#000000c7 100%);justify-content:flex-end}@media screen and (width<=600px){.archive-index-grid{gap:var(--spacing-lg);grid-template-columns:1fr}.archive-index-card{--reveal-card-ratio:3 / 2}}.ascii-container .canvas-container{width:100%;padding-bottom:75%;position:relative}.ascii-container #camera-canvas{background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);border-radius:var(--radius-lg);width:100%;height:100%;position:absolute;top:0;left:0}.ascii-container #camera-canvas.is-fullscreen{background-color:#000;border-radius:0;width:100vw;height:100vh;margin:0;padding:0}.ascii-container .mode-controls{gap:var(--spacing-sm);display:grid}.ascii-container .mode-controls[hidden]{display:none}.ascii-container #ascii-output{white-space:pre;box-sizing:border-box;width:100%;padding:var(--spacing-md);border:1px solid var(--translucent-medium);border-radius:var(--radius-lg);text-align:center;font-family:IBM Plex Mono,ui-monospace,monospace;line-height:1;display:block;overflow:auto}.ascii-container #ascii-output:empty{aspect-ratio:4/3}@media (width<=768px){.ascii-container #fullscreen-btn{display:none}}.historical-browser{gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:grid}.historical-browser-bar{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex}.historical-browser-search{gap:var(--spacing-sm);flex:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.historical-browser-search__field{min-width:0;min-height:var(--control-height-md);align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-md);background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);display:flex}.historical-browser-search__field i{color:var(--sec-text-color);flex-shrink:0;font-size:1.05em}.historical-browser-search__field input[type=text]{background:0 0;border-radius:0;outline:none;width:100%;min-width:0;padding:0;font-size:1em}.historical-browser-search__field input[type=text]:focus{background:0 0}.historical-browser-go-btn,.browser-control-button,.historical-browser-starter{color:var(--text-color);background-color:var(--translucent-low);backdrop-filter:none;outline:solid 1px var(--translucent-medium);justify-content:center;align-items:center;display:inline-flex}@media (any-hover:hover){.historical-browser-go-btn:hover,.browser-control-button:hover,.historical-browser-starter:hover{background-color:var(--translucent-medium-high);color:var(--text-color)}}.historical-browser-go-btn.touch-hover,.browser-control-button.touch-hover,.historical-browser-starter.touch-hover{background-color:var(--translucent-medium-high);color:var(--text-color)}.historical-browser-go-btn{width:var(--control-height-md);height:var(--control-height-md);padding:0;font-size:1em}.historical-browser-nav{gap:var(--spacing-xs);flex-shrink:0;display:flex}.browser-control-button{width:var(--control-height-md);height:var(--control-height-md);padding:0;font-size:1em}.browser-control-button:disabled{color:var(--sec-text-color);cursor:default;opacity:.45;background-color:#0000;outline-color:#0000}.historical-browser-history{border-radius:var(--radius-md);background-color:var(--translucent-low);outline:solid 1px var(--translucent-medium);display:flex;overflow:hidden}.historical-browser-history .browser-control-button--segment{background-color:#0000;border-radius:0;outline:none}.historical-browser-timeline{min-width:0}.historical-browser-content{background-color:var(--translucent-low);backdrop-filter:blur(10px);border-radius:var(--radius-md);outline:1px solid var(--translucent-medium);width:100%;height:62vh;min-height:430px;max-height:560px;position:relative;overflow:hidden}.historical-browser-content iframe{background-color:#0000;border:none;width:100%;height:100%;display:block}.historical-browser-empty,.historical-browser-loading{z-index:1;color:var(--sec-text-color);background-color:var(--translucent-low);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.historical-browser-empty{gap:var(--spacing-lg);flex-direction:column}.historical-browser-empty>i{opacity:.75;font-size:1.6em}.historical-browser-starters{justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.historical-browser-starter{padding:var(--spacing-xs) var(--spacing-md);font-size:.8em;font-weight:300!important}.historical-browser-loading[hidden],.historical-browser-empty[hidden]{display:none}@media screen and (width<=600px){.historical-browser-bar{gap:var(--spacing-xs)}.historical-browser-nav{gap:4px}.historical-browser-history .browser-control-button--segment{width:var(--control-height-sm)}.historical-browser-content{height:62vh;min-height:360px}}@keyframes blink{0%{opacity:1}50%{opacity:.3}to{opacity:1}}@font-face{font-family:ChicagoFont;src:url(https://dangasson.github.io/Resources/Fonts/ChicagoFLF.ttf)format("truetype");font-weight:400;font-style:normal}.ipod-container{-webkit-touch-callout:none;user-select:none;touch-action:manipulation;justify-content:center;align-items:center;width:300px;max-width:415px;margin:0 auto;display:flex;position:relative}.ipod-device{background:linear-gradient(45deg,#e3e4e5,#fff);border-radius:38px;width:415px;min-width:415px;height:692px;margin-top:-70px;box-shadow:inset 5px -5px 15px gray,0 0 15px #0000001a}.ipod-device.small{transform:scale(.67)}:root.is-embedded .ipod-device.small{margin-top:-110px}.ipod-screen{margin:var(--spacing-2xl) auto 0px auto;border-radius:var(--spacing-md);color:#484647;background:linear-gradient(135deg,#a5a59b,#d6d5d0);width:284px;height:230px;font-family:ChicagoFont,Arial;font-size:130%;position:relative;box-shadow:inset 0 0 10px 2px #4d4d4d}.ipod-title{top:50%;left:var(--spacing-2xl);position:absolute;transform:translate(-50%,-50%)}.ipod-title-bar{left:var(--spacing-xs);right:var(--spacing-xs);text-align:center;border-bottom:2px solid #484647;height:16%;position:absolute}.ipod-play-pause-icon{display:inline-block;position:absolute;top:25%;left:50%}.ipod-battery{right:var(--spacing-xs);background-color:#c1c1ba;border:5px solid #484647;width:100px;height:50px;position:absolute}.ipod-battery:before{content:"";background-color:#c1c1ba;border-top:5px solid #484647;border-bottom:5px solid #484647;border-right:5px solid #484647;width:7px;height:33%;position:absolute;top:50%;right:-12px;transform:translateY(-50%)}.ipod-battery:after{content:"";top:var(--spacing-xs);bottom:var(--spacing-xs);left:var(--spacing-xs);background:repeating-linear-gradient(90deg,#484647,#484647 20px,#c1c1ba 20px 25px,#484647 25px 45px,#c1c1ba 45px 50px,#484647 50px 70px);width:70px;position:absolute}.ipod-battery.small{transform-origin:100% 25%;transform:scale(.3)}.ipod-menu-options{flex-direction:column;height:81%;display:flex;position:relative;top:17%}.ipod-option{padding:var(--spacing-sm) 12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ipod-option:after{content:"";width:var(--spacing-sm);height:var(--spacing-sm);transform-origin:180%;border-bottom:3px solid #484647;border-right:3px solid #484647;position:absolute;right:18px;transform:rotate(-45deg)skew(7deg,7deg)}.ipod-option.selected{color:#c1c1ba;background-color:#484647;border-bottom:2px solid #484647}.ipod-option.selected:after{border-bottom:3px solid #c1c1ba;border-right:3px solid #c1c1ba}.ipod-outer-ring{top:var(--spacing-2xl);border-radius:var(--radius-round);background-color:#fff;width:350px;height:350px;margin:0 auto;position:relative;box-shadow:inset 5px -5px 30px -7px #595959}.ipod-outer-ring:before,.ipod-outer-ring:after{content:"";border:1px solid #4d4d4d;width:0;height:99%;position:absolute}.ipod-outer-ring:before{left:50%;transform:rotate(45deg)}.ipod-outer-ring:after{top:0;left:50%;transform:rotate(135deg)}.ipod-touch-wheel{border-radius:var(--radius-round);z-index:1;width:276px;height:276px;transition:box-shadow var(--transition-backdrop), background var(--transition-backdrop);background:radial-gradient(farthest-side at 90% -70%,#999,#f2f2f2);border:2px solid #4d4d4d;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:5px -5px 30px -7px #595959}.ipod-touch-wheel:active{background:radial-gradient(farthest-side at 60% -70%,#888,#e5e5e5);box-shadow:5px -5px 20px -7px #595959,inset 2px 2px 5px #0003}.ipod-center-button{border-radius:var(--radius-round);width:100px;height:100px;transition:background var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);cursor:pointer;background:radial-gradient(farthest-side at -90% 80%,#999,#f2f2f2);border:2px solid #babdc1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ipod-center-button:active{background:radial-gradient(farthest-side at -90% 80%,#777,#ddd);transform:translate(-50%,-50%)scale(.95);box-shadow:inset 2px 2px 5px #0000004d}.ipod-container text{fill:#babdc1;font-family:Arial;font-size:110%;font-weight:700}.ipod-container path{fill:#0000}.ipod-skip{cursor:pointer;width:4px;height:12px;transition:background-color var(--transition-fast), transform var(--transition-fast);background-color:#babdc1;position:absolute;top:50%;transform:translateY(-50%)}.ipod-skip:before,.ipod-skip:after{content:"";transition:border-color var(--transition-fast);border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:9px solid #babdc1;position:absolute}.ipod-skip:before{left:-9px}.ipod-skip:after{left:-18px}.ipod-skip.next{right:var(--spacing-md);transform:rotate(90deg)translateY(50%)}.ipod-skip.prev{left:var(--spacing-md);top:155px;transform:rotate(-90deg)translateY(50%)}.ipod-play-pause{cursor:pointer;border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:12px solid #babdc1;width:0;height:0;position:absolute;bottom:12px;left:50%;transform:translate(-13px)}.ipod-play-pause:before{content:"";height:12px;width:var(--spacing-md);background:repeating-linear-gradient(90deg,#babdc1,#babdc1 4px,#0000 4px 6px,#babdc1 6px 10px);position:absolute;bottom:-6px;left:4px}.ipod-menu-text{cursor:pointer}#now-playing{width:100%;height:84%;padding:var(--spacing-md);box-sizing:border-box;color:#484647;text-align:center;flex-direction:column;justify-content:center;align-items:center;font-family:ChicagoFont,Arial;display:flex;position:absolute;top:25%;left:0}#now-playing .song-title{margin-bottom:var(--spacing-xs);width:100%;font-size:16px;font-weight:700}#now-playing .artist-name{margin-bottom:var(--spacing-lg);width:100%;font-size:14px}#now-playing .album-info{margin-bottom:var(--spacing-xl);width:100%;font-size:12px;font-style:italic}#now-playing .progress-container{width:80%;height:var(--spacing-md);border-radius:var(--spacing-xs);margin-bottom:var(--spacing-md);background-color:#939389;margin-left:auto;margin-right:auto;position:relative;overflow:hidden}#now-playing #progress-bar{border-radius:var(--spacing-xs);background-color:#484647;width:0%;height:100%;position:absolute;top:0;left:0}#now-playing #time-display{margin-top:var(--spacing-xs);font-size:12px}.ipod-press-play-message{text-align:center;margin-top:var(--spacing-md);color:#333;padding:var(--spacing-xs);font-size:14px;font-weight:700;animation:2s infinite blink;display:none}#youtube-player{width:1px;height:1px;position:absolute;top:-9999px;left:-9999px}.ytp-title{display:none}.ipod-device{box-shadow:inset 5px -5px 25px 3px #99999950}_:-ms-lang(x){box-shadow:inset 5px -5px 25px 3px #99999950}.ipod-screen{box-shadow:inset 0 0 20px 1px #59595950}_:-ms-lang(x){box-shadow:inset 0 0 20px 1px #59595950}.ipod-outer-ring{box-shadow:inset 5px -5px 50px -7px #99999950}_:-ms-lang(x){box-shadow:inset 5px -5px 50px -7px #99999950}.ipod-touch-wheel{box-shadow:5px -5px 50px -7px #99999950}_:-ms-lang(x){box-shadow:5px -5px 50px -7px #99999950}.lastfm-charts .chart-container{width:100%;margin:var(--spacing-xl) 0;position:relative}.lastfm-charts canvas{display:block;width:100%!important;height:auto!important}.lastfm-charts .chart-legend{gap:var(--spacing-xs) var(--spacing-md);margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap;font-size:.75em;display:flex}.lastfm-charts .legend-item{cursor:pointer;opacity:.7;transition:opacity var(--transition-fast);align-items:center;gap:5px;display:flex}.lastfm-charts .legend-item:hover,.lastfm-charts .legend-item.active{opacity:1}.lastfm-charts .legend-item.dimmed{opacity:.25}.lastfm-charts .legend-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.lastfm-charts .chart-controls{align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex}.lastfm-charts .time-blocks{gap:var(--spacing-lg);margin:var(--spacing-xl) 0;flex-direction:column;display:flex}.lastfm-charts .time-block{padding:var(--spacing-lg);background:var(--translucent-low);border-radius:var(--radius-lg)}.lastfm-charts .time-block__header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:baseline;display:flex}.lastfm-charts .time-block__name{font-size:1em;font-weight:500}.lastfm-charts .time-block__hours{color:var(--sec-text-color);font-size:.75em}.lastfm-charts .time-block__artists{color:var(--sec-text-color);font-size:.85em;line-height:1.6}.lastfm-charts .time-block__sep{opacity:.4}.lastfm-charts .hourly-bars{height:80px;margin:var(--spacing-xl) 0 var(--spacing-xs);align-items:flex-end;gap:2px;display:flex}.lastfm-charts .hourly-bar{background:var(--sec-text-color);opacity:.7;min-height:2px;transition:opacity var(--transition-fast);border-radius:2px 2px 0 0;flex:1}.lastfm-charts .hourly-bar:hover{opacity:1}.lastfm-charts .hourly-labels{color:var(--sec-text-color);gap:2px;font-size:.6em;display:flex}.lastfm-charts .hourly-label{text-align:center;flex:1}.lastfm-charts.data-range{align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.lastfm-charts .data-range__label{color:var(--sec-text-color);font-size:.8em}.lastfm-charts .lifecycle-list{gap:var(--spacing-sm);margin:var(--spacing-xl) 0;flex-direction:column;display:flex}.lastfm-charts .lifecycle-row{align-items:center;gap:var(--spacing-md);display:flex}.lastfm-charts .lifecycle-label{flex-direction:column;flex:0 0 140px;min-width:0;display:flex}.lastfm-charts .lifecycle-name{white-space:nowrap;text-overflow:ellipsis;font-size:.8em;font-weight:500;overflow:hidden}.lastfm-charts .lifecycle-plays{color:var(--sec-text-color);font-size:.65em}.lastfm-charts .lifecycle-spark-wrap{flex:1;min-width:0;height:30px}.lastfm-charts .lifecycle-spark-wrap canvas{height:30px!important}.product{--product-divider:1px solid var(--translucent-medium)}.product .btn{align-items:center;gap:var(--spacing-sm);display:inline-flex}.product__hero{padding-bottom:var(--spacing-lg);border-bottom:var(--product-divider)}.product__icon{border-radius:var(--radius-xl);width:72px;height:72px;display:block}.product__title{font-size:2.4em;line-height:1.1}.product__tagline{color:var(--sec-text-color);font-size:1.05em}.product__cta-row{align-items:stretch}.product__copy-cmd code{background:0 0;padding:0;font-size:.9em}.product__copy-cmd--block{gap:var(--spacing-md);width:100%;display:flex}.product__copy-cmd--block code{white-space:nowrap;text-align:left;flex:1;overflow-x:auto}.product__copy-label{color:var(--sec-text-color);text-transform:lowercase;letter-spacing:.5px;font-size:.85em}.product__install-panel{display:none}.product__install-panel.active{display:block}.product__meta{color:var(--sec-text-color);gap:var(--spacing-sm) var(--spacing-md);flex-wrap:wrap;align-items:center;margin:0;font-size:.85em;display:flex}.product__meta-item--sep:after,.product__meta-item--before-release:after,.product__release-version:after{content:"·";margin-left:var(--spacing-md);opacity:.5}.product__meta-sep{opacity:.5}.product__release{display:contents}.product__release-version{font-variant-numeric:tabular-nums}.product__hero-image,.product__demo,.product__features,.product__screenshots,.product__readme{min-width:0}.product__hero-image img,.product__demo img,.product__screenshot img{border-radius:var(--radius-md);outline:solid 1px var(--translucent-medium);width:100%;height:auto;display:block}.product__hero-image,.product__demo{margin-top:var(--spacing-md)}.product__hero-image img,.product__demo img{border-radius:var(--radius-lg)}.product__screenshots-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.product__screenshot-caption{color:var(--sec-text-color);font-size:.85em}.product__readme .github-readme__content>h1:first-child,.product__readme .github-readme__content>h2:first-child{display:none}.product__readme img{border-radius:var(--radius-md);outline:solid 1px var(--translucent-medium);max-width:100%;height:auto;padding:0}.product__footer{padding-top:var(--spacing-lg);border-top:var(--product-divider);color:var(--sec-text-color);font-size:.9em}.product__footer a{color:var(--sec-text-color)}.product__footer a:hover{color:var(--text-color)}.backdrop-blur{backdrop-filter:blur(10px)}.translucent-bg{background-color:var(--translucent-medium)}.translucent-bg-high{background-color:var(--translucent-high)}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-start{align-items:start;display:flex}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.full-width{width:100%}.full-height{height:100%}.va-mid{vertical-align:middle}.stack{gap:var(--spacing-md);display:grid}.stack>*{min-width:0}.stack>:where(h1,h2,h3,p){margin-block:0;padding-bottom:0}.stack--sm{gap:var(--spacing-sm)}.stack--lg{gap:var(--spacing-xl)}.cluster{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.cluster--sm{gap:var(--spacing-sm)}.cluster--lg{gap:var(--spacing-xl)}.cluster>.field{flex:200px}.field{gap:var(--spacing-xs);min-width:0;display:grid}.field__label{color:var(--sec-text-color);font-size:.85em;line-height:1}.field__control{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex}.field__control input[type=text],.field__control input[type=email],.field__control input[type=url]{flex:auto;min-width:0}.toolbar{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.p-0{padding:0}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.hidden{display:none}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-round)}.reveal__stage{opacity:0;transform:translateY(var(--motion-slide-offset));transition:opacity var(--transition-slow), transform var(--transition-slow)}.reveal.is-ready .reveal__stage{opacity:1;transform:translateY(0)}.reveal.is-ready .reveal__stage--1{transition-delay:0s}.reveal.is-ready .reveal__stage--2{transition-delay:60ms}.reveal.is-ready .reveal__stage--3{transition-delay:.12s}.reveal.is-ready .reveal__stage--4{transition-delay:.18s}@media (prefers-reduced-motion:reduce){.reveal__stage{transition-duration:10ms;transform:none}.reveal.is-ready .reveal__stage{transition-delay:0s}}.me{width:100%}hr{color:var(--background-main);opacity:.6}ul{align-items:baseline;list-style:none}ul li{padding:var(--spacing-xs);padding-left:var(--spacing-md)}@media screen and (width<=600px){ul li{padding:var(--spacing-md) 0}}.wiki-image img{width:100%}@media (any-hover:hover){#insta-link:hover{color:var(--color-social-instagram)}#tiktok-link:hover{color:var(--color-social-tiktok)}}#insta-link.touch-hover{color:var(--color-social-instagram)}#tiktok-link.touch-hover{color:var(--color-social-tiktok)}
