.theme-toggle.svelte-1kenrq5{position:relative;display:inline-grid;width:44px;height:44px;place-items:center;border:0;border-radius:999px;color:var(--m3c-on-surface);background:var(--m3c-surface-container-high);cursor:pointer;transition:background-color .26s cubic-bezier(.2,0,0,1),color .26s cubic-bezier(.2,0,0,1),box-shadow .26s cubic-bezier(.2,0,0,1)}.theme-toggle.svelte-1kenrq5:hover{color:var(--m3c-on-primary-container);background:var(--m3c-primary-container);box-shadow:0 0 0 3px color-mix(in srgb,var(--m3c-primary) 12%,transparent)}.theme-icon.svelte-1kenrq5{position:absolute;display:block;opacity:0;transform:rotate(-35deg) scale(.65);transition:opacity .3s cubic-bezier(.2,0,0,1),transform .42s cubic-bezier(.2,0,0,1)}.sun-icon.icon-visible.svelte-1kenrq5,.moon-icon.icon-visible.svelte-1kenrq5{opacity:1;transform:rotate(0) scale(1)}html[data-theme=light] .sun-icon.icon-visible.svelte-1kenrq5{opacity:0;transform:rotate(-35deg) scale(.65)}html[data-theme=light] .moon-icon.svelte-1kenrq5{opacity:1;transform:rotate(0) scale(1)}.theme-toggle.svelte-1kenrq5:active .theme-icon.icon-visible:where(.svelte-1kenrq5){opacity:.78}@media(prefers-reduced-motion:reduce){.theme-toggle.svelte-1kenrq5,.theme-icon.svelte-1kenrq5{transition:none}}.material-symbols-rounded.svelte-1kenrq5{font-size:21px;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}@font-face{font-family:Google Sans Flex Rounded;src:url(https://raw.githubusercontent.com/tiwa244/Google-Sans-Rounded/main/GoogleSansRounded-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Google Sans Flex Rounded;src:url(https://raw.githubusercontent.com/tiwa244/Google-Sans-Rounded/main/GoogleSansRounded-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Google Sans Flex Rounded;src:url(https://raw.githubusercontent.com/tiwa244/Google-Sans-Rounded/main/GoogleSansRounded-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:light dark;--m3-font: "Google Sans Flex Rounded", system-ui, sans-serif;font-family:var(--m3-font);font-synthesis:none;text-rendering:optimizeLegibility}@layer tokens{:root{--m3c-surface: light-dark(#fbf4ff, #11062d);--m3c-surface-container-lowest: light-dark(#fff, #000);--m3c-surface-container-low: light-dark(#f5eeff, #160a36);--m3c-surface-container: light-dark(#ede4ff, #1d103f);--m3c-surface-container-high: light-dark(#e8ddff, #231649);--m3c-surface-container-highest: light-dark(#e3d7ff, #2a1b52);--m3c-on-surface: light-dark(#32284f, #ebe1ff);--m3c-on-surface-variant: light-dark(#60557f, #b1a4d3);--m3c-outline: light-dark(#7c709c, #7a6f9b);--m3c-outline-variant: light-dark(#b3a6d5, #4c426a);--m3c-inverse-surface: light-dark(#11062d, #fdf7ff);--m3c-inverse-on-surface: light-dark(#a296c4, #594f78);--m3c-primary: light-dark(#4d3fe2, #a8a4ff);--m3c-on-primary: light-dark(#f5f1ff, #1f009e);--m3c-primary-container: #9994ff;--m3c-on-primary-container: #16007d;--m3c-inverse-primary: light-dark(#8781ff, #5043e5);--m3c-secondary: light-dark(#6448b1, #ab8ffd);--m3c-on-secondary: light-dark(#f7f0ff, #290070);--m3c-secondary-container: light-dark(#d8caff, #4f319b);--m3c-on-secondary-container: light-dark(#4f329b, #d7c8ff);--m3c-tertiary: light-dark(#983670, #ff9dcf);--m3c-on-tertiary: light-dark(#ffeff3, #6c0f4b);--m3c-tertiary-container: light-dark(#fe8bc9, #fb88c6);--m3c-on-tertiary-container: light-dark(#610243, #5e0040);--m3c-error: light-dark(#b41340, #ff6e84);--m3c-on-error: light-dark(#ffefef, #490013);--m3c-error-container: light-dark(#f74b6d, #a70138);--m3c-on-error-container: light-dark(#510017, #ffb2b9);--m3c-shadow: #000;--m3c-scrim: #000;--m3c-on-on-primary: light-dark(#4c3ee1, #a8a4ff);--m3c-primary-container-subtle: light-dark(#d3d0ff, #1d0098);--m3c-on-primary-container-subtle: light-dark(#3924d0, #a5a1ff);--m3c-secondary-container-subtle: light-dark(#dbcdff, #330c7f);--m3c-on-secondary-container-subtle: light-dark(#51349d, #b59cff);--m3c-tertiary-container-subtle: light-dark(#ffc4df, #5a003d);--m3c-on-tertiary-container-subtle: light-dark(#81235d, #f885c3);--m3c-error-container-subtle: light-dark(#ffc6cb, #5f001c);--m3c-on-error-container-subtle: light-dark(#960031, #ff8796)}}:root[data-theme=dark]{color-scheme:dark}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;background:var(--m3c-surface);color:var(--m3c-on-surface)}a{color:inherit;text-decoration:none}button{font:inherit}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.site-header,main{width:min(100% - 40px,760px);margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:76px;border-bottom:1px solid var(--m3c-outline-variant)}.wordmark{display:inline-flex;align-items:center;gap:9px;font-size:16px;font-weight:700}.wordmark-mark{display:grid;width:32px;height:32px;place-items:center;border-radius:11px;color:var(--m3c-on-primary);background:var(--m3c-primary);font-size:20px}.wordmark-muted{color:var(--m3c-on-surface-variant);font-weight:500}main{min-height:calc(100vh - 76px);padding-block:52px 80px}.writing-title{margin:0 0 24px;font-size:clamp(28px,5vw,36px);font-weight:600;letter-spacing:-1px}.post-list{display:grid;gap:14px}.post-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:20px;border:1px solid var(--m3c-outline-variant);border-radius:20px}.post-card:first-child{border-top:1px solid var(--m3c-outline-variant)}.post-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-bottom:8px;color:var(--m3c-on-surface-variant);font-size:12px;line-height:1.5}.post-date{display:inline-block;margin:0;color:inherit;font-size:inherit}.post-card h2{margin:0 0 6px;font-size:19px;font-weight:600;letter-spacing:-.25px}.post-card p{max-width:620px;margin:0;color:var(--m3c-on-surface-variant);font-size:14px;line-height:1.6}.post-arrow{color:var(--m3c-primary);font-size:20px}.post-card:hover h2{color:var(--m3c-primary)}.empty-state{margin:0;color:var(--m3c-on-surface-variant)}.article{max-width:700px;margin-inline:auto}.article-back{display:inline-flex;align-items:center;gap:7px;margin-bottom:38px;color:var(--m3c-on-surface-variant);font-size:13px}.post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:var(--m3c-on-surface-variant);font-size:13px;line-height:1.5}.post-meta time{display:inline-block}.meta-dot{width:3px;height:3px;flex:0 0 3px;border-radius:50%;background:var(--m3c-on-surface-variant)}.article-header{margin-bottom:36px}.article-header h1{margin:15px 0;font-size:clamp(36px,6vw,58px);line-height:1.1;letter-spacing:-2px}.article-description{color:var(--m3c-on-surface-variant);font-size:17px;line-height:1.7}.article-content{font-size:16px;line-height:1.85}.article-content h2,.article-content h3{margin-top:2em;margin-bottom:.65em;line-height:1.25}.article-content h2{font-size:27px}.article-content h3{font-size:21px}.article-content p,.article-content ul,.article-content ol,.article-content blockquote{color:var(--m3c-on-surface-variant)}.article-content blockquote{margin:26px 0;padding:8px 0 8px 20px;border-left:3px solid var(--m3c-tertiary)}.article-content pre{overflow-x:auto;padding:20px;border-radius:16px;background:var(--m3c-surface-container-high);font-size:13px;line-height:1.7}.article-content code{padding:2px 6px;border-radius:6px;background:var(--m3c-surface-container-high);font-size:.88em}.article-content pre code{padding:0;background:transparent}.article-content img{max-width:100%;border-radius:18px}.article-content hr{margin-block:32px;border:0;border-top:1px solid var(--m3c-outline-variant)}.article-content .callout{--callout-accent: var(--m3c-primary);--callout-tint: var(--m3c-primary-container-subtle);display:block;margin:24px 0;padding:16px 18px;border:1px solid color-mix(in srgb,var(--callout-accent) 28%,transparent);border-left:4px solid var(--callout-accent);border-radius:14px;background:color-mix(in srgb,var(--callout-tint) 24%,var(--m3c-surface-container-low));color:var(--m3c-on-surface)}.article-content .callout>:last-child{margin-bottom:0}.article-content .callout>:first-child{margin-top:0}.article-content .callout .callout-title{display:flex;align-items:center;gap:9px;margin:0 0 7px;color:var(--callout-accent);font-size:14px;font-weight:700;line-height:1.4}.article-content .callout .callout-title:before{font-family:Material Symbols Rounded;font-size:19px;font-weight:400;line-height:1}.article-content .callout-note{--callout-accent: light-dark(#1d4ed8, #93c5fd);--callout-tint: light-dark(#dbeafe, #1e3a8a)}.article-content .callout-note .callout-title:before{content:"info"}.article-content .callout-tip{--callout-accent: light-dark(#854d0e, #facc15);--callout-tint: light-dark(#fef3c7, #713f12)}.article-content .callout-tip .callout-title:before{content:"lightbulb"}.article-content .callout-warning{--callout-accent: light-dark(#92400e, #fbbf24);--callout-tint: light-dark(#ffedd5, #78350f)}.article-content .callout-warning .callout-title:before{content:"warning"}.article-content .callout-success{--callout-accent: light-dark(#166534, #86efac);--callout-tint: light-dark(#dcfce7, #14532d)}.article-content .callout-success .callout-title:before{content:"check_circle"}.article-content .callout-danger{--callout-accent: light-dark(#b91c1c, #fca5a5);--callout-tint: light-dark(#fee2e2, #7f1d1d)}.article-content .callout-danger .callout-title:before{content:"error"}.article-content .callout-important{--callout-accent: light-dark(#7e22ce, #d8b4fe);--callout-tint: light-dark(#f3e8ff, #581c87)}.article-content .callout-important .callout-title:before{content:"priority_high"}.article-content table{width:100%;margin:24px 0;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--m3c-outline-variant);border-radius:14px;font-size:14px}.article-content th,.article-content td{padding:12px 14px;border-bottom:1px solid var(--m3c-outline-variant);text-align:left}.article-content th{color:var(--m3c-on-surface);background:var(--m3c-surface-container-high);font-weight:600}.article-content tr:last-child td{border-bottom:0}.article-content a{color:var(--m3c-primary);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--m3c-primary) 45%,transparent);text-underline-offset:3px}.article-content ul,.article-content ol{padding-left:1.5em}.article-content li{padding-left:3px;margin-block:5px}.article-content li input[type=checkbox]{width:15px;height:15px;margin:0 8px 0 0;accent-color:var(--m3c-primary);vertical-align:-2px}.article-content kbd{display:inline-block;padding:2px 7px;border:1px solid var(--m3c-outline-variant);border-bottom-width:2px;border-radius:6px;background:var(--m3c-surface-container);color:var(--m3c-on-surface);font-family:inherit;font-size:.85em}.article-content details{margin:20px 0;padding:14px 16px;border:1px solid var(--m3c-outline-variant);border-radius:14px;background:var(--m3c-surface-container-low)}.article-content details summary{color:var(--m3c-on-surface);cursor:pointer;font-weight:600}.article-content details[open] summary{margin-bottom:12px}.article-content details>:last-child{margin-bottom:0}.article-content figure{margin:24px 0}.article-content figcaption{margin-top:8px;color:var(--m3c-on-surface-variant);font-size:13px;text-align:center}.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.tag{padding:6px 12px;border-radius:999px;color:var(--m3c-on-secondary-container);background:var(--m3c-secondary-container);font-size:11px}@media(max-width:620px){.site-header,main{width:min(100% - 32px,760px)}main{padding-block:40px 60px}.post-card{gap:12px;padding-block:18px}.post-card h2{font-size:17px}}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}body{animation:page-fade-in .28s ease-out both}@media(prefers-reduced-motion:reduce){body{animation:none}}*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.article-content details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}.article-content details>summary::-webkit-details-marker{display:none}.article-content details>summary::marker{content:""}.article-content details>summary:after{content:"arrow_drop_down";flex:0 0 auto;font-family:Material Symbols Rounded;font-size:24px;font-weight:400;line-height:1;font-feature-settings:"liga";-webkit-font-feature-settings:"liga";transform:rotate(0);transition:transform .22s cubic-bezier(.2,0,0,1)!important}.article-content details[open]>summary:after{transform:rotate(180deg)}.article-content details[open]>:not(summary){animation:details-content-in .22s cubic-bezier(.2,0,0,1) both}@keyframes details-content-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.article-content details>summary:after{transition:none!important}.article-content details[open]>:not(summary){animation:none}}.blog-search{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;margin:0 0 8px;padding:0 18px;border:1px solid var(--m3c-outline-variant);border-radius:18px;background:var(--m3c-surface-container-low);color:var(--m3c-on-surface-variant);transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease!important}.blog-search:focus-within{border-color:var(--m3c-primary);background:var(--m3c-surface-container);box-shadow:0 0 0 3px color-mix(in srgb,var(--m3c-primary) 13%,transparent)}.blog-search-icon{flex:0 0 auto;font-size:22px;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.blog-search input{width:100%;min-width:0;padding:16px 0;border:0;outline:0;background:transparent;color:var(--m3c-on-surface);font:inherit;font-size:15px}.blog-search input::placeholder{color:var(--m3c-on-surface-variant);opacity:1}.blog-search input::-webkit-search-cancel-button{cursor:pointer}.search-shortcut{flex:0 0 auto;min-width:25px;padding:3px 7px;border:1px solid var(--m3c-outline-variant);border-radius:7px;background:var(--m3c-surface-container);color:var(--m3c-on-surface-variant);text-align:center}.search-status{min-height:18px;margin:0 2px 10px;color:var(--m3c-on-surface-variant);font-size:12px}.search-empty{margin:22px 0;color:var(--m3c-on-surface-variant);font-size:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.post-card[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){.blog-search{transition:none!important}}:root.theme-transitioning *,:root.theme-transitioning *:before,:root.theme-transitioning *:after{transition:color .32s ease,background-color .32s ease,border-color .32s ease,outline-color .32s ease,box-shadow .32s ease,text-decoration-color .32s ease,fill .32s ease,stroke .32s ease!important}@media(prefers-reduced-motion:reduce){:root.theme-transitioning *,:root.theme-transitioning *:before,:root.theme-transitioning *:after{transition:none!important}}html{scroll-behavior:smooth!important;scroll-padding-top:24px}main{animation:content-fade-in .42s cubic-bezier(.2,0,0,1) both}@keyframes content-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}main{animation:none}}.article-content details.is-closing>:not(summary){animation:details-content-out .22s cubic-bezier(.2,0,0,1) both;pointer-events:none}.article-content details.is-closing>summary:after{transform:rotate(0)}@keyframes details-content-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){.article-content details.is-closing>:not(summary){animation:none}}.article-content details{overflow:clip;transition:height .26s cubic-bezier(.2,0,0,1),border-radius .26s cubic-bezier(.2,0,0,1)!important}.article-content details.is-closing{overflow:hidden;border-radius:18px}@media(prefers-reduced-motion:reduce){.article-content details{transition:none!important}}:root{accent-color:var(--m3c-primary)}::selection{color:var(--m3c-on-primary-container);background:var(--m3c-primary-container)}:focus-visible{outline:2px solid var(--m3c-primary);outline-offset:3px}.site-header{border-color:var(--m3c-outline-variant)}.wordmark{color:var(--m3c-on-surface)}.wordmark-muted{color:var(--m3c-on-surface-variant)}.writing-title,.article-header h1,.article-content h2,.article-content h3{color:var(--m3c-on-surface)}.post-card{border-color:var(--m3c-outline-variant);border-radius:20px;transition:border-color .18s ease,background-color .18s ease!important}.post-card:hover{border-color:var(--m3c-primary);background:var(--m3c-surface-container-low)}.post-card:hover h2,.article-back:hover,.post-arrow,.blog-search-icon{color:var(--m3c-primary)}.blog-search{border-color:var(--m3c-outline);background:var(--m3c-surface-container-low)}.blog-search:focus-within{border-color:var(--m3c-primary);background:var(--m3c-surface-container);box-shadow:0 0 0 3px color-mix(in srgb,var(--m3c-primary) 18%,transparent)}.blog-search input{color:var(--m3c-on-surface)}.search-shortcut{border-color:var(--m3c-outline-variant);background:var(--m3c-surface-container-high);color:var(--m3c-on-surface-variant)}.theme-toggle{color:var(--m3c-on-primary-container)!important;background:var(--m3c-primary-container)!important}.theme-toggle{transition:background-color .18s ease,color .18s ease,box-shadow .18s ease!important}.theme-toggle:hover{background:var(--m3c-primary-container-subtle)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--m3c-primary) 12%,transparent)}.article-back{padding:9px 13px;border-radius:999px;transition:color .18s ease,background-color .18s ease!important}.article-back:hover{background:var(--m3c-secondary-container-subtle)}.article-content a{color:var(--m3c-primary);text-decoration-color:color-mix(in srgb,var(--m3c-primary) 55%,transparent)}.article-content a:hover{color:var(--m3c-secondary);text-decoration-color:currentColor}.article-content blockquote{border-left-color:var(--m3c-tertiary);color:var(--m3c-on-surface-variant)}.article-content pre,.article-content code{background:var(--m3c-surface-container-high);color:var(--m3c-on-surface)}.article-content pre{border:1px solid var(--m3c-outline-variant)}.article-content table{border-color:var(--m3c-outline-variant);background:var(--m3c-surface-container-low)}.article-content th{background:var(--m3c-surface-container-high);color:var(--m3c-on-surface)}.article-content td{color:var(--m3c-on-surface-variant)}.article-content details{border-color:var(--m3c-outline-variant);background:var(--m3c-surface-container-low);color:var(--m3c-on-surface)}.article-content details:hover{border-color:var(--m3c-outline)}.article-content details[open]{background:var(--m3c-surface-container);border-color:color-mix(in srgb,var(--m3c-primary) 42%,var(--m3c-outline-variant))}.article-content details>summary{color:var(--m3c-on-surface)}.article-content details>summary:after{color:var(--m3c-primary)}.article-content kbd{border-color:var(--m3c-outline-variant);background:var(--m3c-surface-container-high);color:var(--m3c-on-surface)}.tag{color:var(--m3c-on-secondary-container);background:var(--m3c-secondary-container)}.article-content .callout{border-color:color-mix(in srgb,var(--callout-accent) 34%,var(--m3c-outline-variant));border-left-color:var(--callout-accent);background:color-mix(in srgb,var(--callout-tint) 56%,var(--m3c-surface-container-low));color:var(--m3c-on-surface)}.article-content .callout-note{--callout-accent: var(--m3c-primary);--callout-tint: var(--m3c-primary-container-subtle)}.article-content .callout-tip{--callout-accent: var(--m3c-secondary);--callout-tint: var(--m3c-secondary-container-subtle)}.article-content .callout-warning{--callout-accent: var(--m3c-tertiary);--callout-tint: var(--m3c-tertiary-container-subtle)}.article-content .callout-success{--callout-accent: var(--m3c-secondary);--callout-tint: var(--m3c-secondary-container)}.article-content .callout-danger{--callout-accent: var(--m3c-error);--callout-tint: var(--m3c-error-container-subtle)}.article-content .callout-important{--callout-accent: var(--m3c-primary);--callout-tint: var(--m3c-primary-container-subtle)}.article-content .callout-note .callout-title,.article-content .callout-tip .callout-title,.article-content .callout-warning .callout-title,.article-content .callout-success .callout-title,.article-content .callout-danger .callout-title,.article-content .callout-important .callout-title{color:var(--callout-accent)}@media(prefers-reduced-motion:reduce){.post-card,.article-back{transition:none!important}}.theme-toggle:hover{background:var(--m3c-primary-container)!important;color:var(--m3c-on-primary-container)!important}
