.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-green-500:oklch(72.3% .219 149.579);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-border:var(--border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--accent)75%,transparent)}}*{scrollbar-color:var(--color-border)transparent}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:5.5rem;overflow-y:scroll}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background-color:var(--background);min-height:100svh;font-family:var(--ff-body);color:var(--foreground);flex-direction:column;display:flex}body ::selection{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){body ::selection{background-color:color-mix(in oklab,var(--accent)25%,transparent)}}body::selection{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){body::selection{background-color:color-mix(in oklab,var(--accent)25%,transparent)}}body ::selection{color:var(--foreground)}body::selection{color:var(--foreground)}body{-webkit-font-smoothing:antialiased;font-size:1.0625rem;line-height:1.7}@media (min-width:640px){body{font-size:1.125rem}}h1,h2,h3,h4{font-family:var(--ff-display);letter-spacing:-.012em;text-wrap:balance;font-weight:600;line-height:1.2}a,button,summary{outline-offset:2px;outline-color:var(--accent)}:is(a,button,summary):focus-visible{outline-style:var(--tw-outline-style);--tw-outline-style:solid;outline-width:2px;outline-style:solid}button:not(:disabled),[role=button]:not(:disabled),summary{cursor:pointer}img{max-width:100%;height:auto}:lang(ja){font-family:var(--font-ja);letter-spacing:0}:is(h1,h2,h3,h4) :lang(ja),.jp-display{font-family:var(--font-kanji)}}@layer components{.app-prose{overflow-wrap:break-word;line-height:1.75}.app-prose>*+*{margin-top:1.15em}.app-prose>:first-child{margin-top:0}.app-prose h2{margin-top:2.3em;margin-bottom:.1em;font-size:clamp(1.5rem,3.8vw,1.9rem)}.app-prose h3{margin-top:1.8em;margin-bottom:0;font-size:clamp(1.25rem,3vw,1.4rem)}.app-prose h4{font-family:var(--ff-body);letter-spacing:0;margin-top:1.6em;font-size:1.05em;font-weight:700}.app-prose :is(h2,h3,h4)+*{margin-top:.65em}.app-prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1.5px;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.app-prose a{-webkit-text-decoration-color:color-mix(in oklab,var(--accent)45%,transparent);text-decoration-color:color-mix(in oklab,var(--accent)45%,transparent)}}.app-prose a{transition:text-decoration-color .15s}.app-prose a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.app-prose strong{font-weight:700}.app-prose ul,.app-prose ol{padding-left:1.35em}.app-prose ul{list-style:outside}.app-prose ol{list-style:decimal}.app-prose li{margin-block:.45em;padding-left:.15em}.app-prose li::marker{color:var(--accent);font-weight:600}.app-prose li>ul,.app-prose li>ol{margin-top:.45em}.app-prose blockquote{background:var(--surface);border-left:4px solid var(--accent);border-radius:0 .9rem .9rem 0;margin-block:1.6em;padding:1rem 1.25rem;font-size:1.04em}.app-prose blockquote>*+*{margin-top:.6em}.app-prose picture{display:block}.app-prose img{border-radius:.9rem;margin:1.8em auto;display:block}.app-prose figcaption{color:var(--subtle);text-align:center;font-size:.9em}.app-prose hr{background:var(--border);border:0;max-width:10rem;height:1px;margin:2.4em auto}.app-prose .table-wrap{background:var(--surface);border:1px solid var(--border);-webkit-overflow-scrolling:touch;border-radius:.9rem;margin-block:1.6em;overflow-x:auto}.app-prose table{border-collapse:collapse;width:100%;font-size:.96em;line-height:1.5}.app-prose th,.app-prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:.7em .95em}.app-prose th{background:var(--muted);font-weight:700}.app-prose tbody tr:last-child>*{border-bottom:0}.app-prose thead:not(:has(th:not(:empty))){display:none}.app-prose code{background:var(--muted);border-radius:.3em;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Consolas,Menlo,monospace;font-size:.9em}.app-prose pre{background:var(--muted);border:1px solid var(--border);border-radius:.9rem;padding:1rem 1.1rem;font-size:.9em;line-height:1.6;overflow-x:auto}.app-prose pre code{background:0 0;padding:0}.app-prose details{background:var(--surface);border:1px solid var(--border);border-radius:.9rem;padding:.9rem 1.1rem}.app-prose details>summary{font-weight:600}.topic-learn{--topic-bg:var(--t-learn-bg);--topic-fg:var(--t-learn-fg)}.topic-kanji{--topic-bg:var(--t-kanji-bg);--topic-fg:var(--t-kanji-fg)}.topic-names-tattoos{--topic-bg:var(--t-names-bg);--topic-fg:var(--t-names-fg)}.topic-tools-gifts{--topic-bg:var(--t-tools-bg);--topic-fg:var(--t-tools-fg)}.topic-culture{--topic-bg:var(--t-culture-bg);--topic-fg:var(--t-culture-fg)}.topic-chip{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);background:var(--topic-bg);color:var(--topic-fg);border-radius:3.40282e38px;align-self:flex-start;align-items:center;padding:.2rem .7rem;font-size:.8125rem;line-height:1.4;text-decoration:none;display:inline-flex}a.topic-chip:hover{text-decoration:underline}.topic-badge{background:var(--topic-bg);width:3rem;height:3rem;color:var(--topic-fg);font-family:var(--font-kanji);border-radius:.9rem;flex:none;place-items:center;font-size:1.6rem;font-weight:600;line-height:1;display:grid}.btn{justify-content:center;align-items:center;gap:calc(var(--spacing)*2);text-align:center;--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);border-radius:3.40282e38px;min-height:3rem;padding:.7rem 1.4rem;font-size:1rem;line-height:1.25;text-decoration:none;transition:transform .15s,box-shadow .15s,background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 1px 2px rgb(var(--shadow-rgb)/.2)}.btn-primary:hover{box-shadow:0 8px 18px rgb(var(--shadow-rgb)/.2);transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--foreground);border:1.5px solid var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.more-link{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);white-space:nowrap;color:var(--accent);text-decoration:none}.more-link:hover{text-underline-offset:4px;text-decoration:underline}.site-header{top:calc(var(--spacing)*0);z-index:40;background:var(--background);position:sticky}@supports (color:color-mix(in lab,red,red)){.site-header{background:color-mix(in oklab,var(--background)92%,transparent)}}.site-header{-webkit-backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border)}.brand{align-items:center;gap:calc(var(--spacing)*2);white-space:nowrap;color:var(--foreground);min-width:0;font-family:var(--ff-display);letter-spacing:-.01em;font-size:clamp(1.05rem,5.4vw,1.3rem);font-weight:600;text-decoration:none;display:inline-flex}.brand span{text-overflow:ellipsis;overflow:hidden}.brand svg{color:var(--accent);flex:none}@media (max-width:339px){.brand svg{display:none}}.nav-link{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);white-space:nowrap;color:var(--foreground);border-radius:3.40282e38px;align-items:center;padding:.45rem .8rem;font-size:.98rem;text-decoration:none;display:inline-flex}.nav-link:hover{background:var(--muted)}.nav-link.is-active{color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.nav-link.is-active{background:color-mix(in oklab,var(--accent)10%,transparent)}}.icon-btn{color:var(--foreground);border-radius:3.40282e38px;flex:none;place-items:center;width:2.75rem;height:2.75rem;display:inline-grid}.icon-btn:hover{background:var(--muted);color:var(--accent)}.mobile-menu{border-top:1px solid var(--border);background:var(--background);overscroll-behavior:contain;max-height:calc(100svh - 4rem);overflow-y:auto}.mobile-menu__topic{align-items:center;gap:calc(var(--spacing)*4);color:var(--foreground);padding:.7rem 0;text-decoration:none;display:flex}.mobile-menu__topic strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);font-size:1.0625rem;line-height:1.3;display:block}.mobile-menu__topic small{color:var(--subtle);font-size:.875rem;line-height:1.4;display:block}.section{padding-block:2.5rem}@media (min-width:640px){.section{padding-block:3.25rem}}.section-head{justify-content:space-between;align-items:flex-end;column-gap:calc(var(--spacing)*6);row-gap:calc(var(--spacing)*2);flex-wrap:wrap;margin-bottom:1.4rem;display:flex}.section-title{font-size:clamp(1.5rem,3.4vw,2rem)}.section-lede{color:var(--subtle);max-width:40rem;margin-top:.35rem;line-height:1.6}.eyebrow{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--accent);letter-spacing:.01em;font-size:.95rem}.band{background:var(--muted);border-block:1px solid var(--border)}.card{background:var(--surface);border:1px solid var(--border);border-radius:1rem}.post-grid{gap:calc(var(--spacing)*5);display:grid}@media (min-width:40rem){.post-grid{gap:calc(var(--spacing)*6);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.post-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.post-card:hover,.post-card:focus-within{box-shadow:0 14px 30px rgb(var(--shadow-rgb)/.13);border-color:var(--accent);transform:translateY(-3px)}@supports (color:color-mix(in lab,red,red)){.post-card:hover,.post-card:focus-within{border-color:color-mix(in oklab,var(--accent)40%,var(--border))}}.post-card__media{aspect-ratio:8/5;background:var(--muted);flex:none;display:block;overflow:hidden}.post-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.post-card:hover .post-card__media img{transform:scale(1.04)}.post-card__body{min-width:calc(var(--spacing)*0);gap:calc(var(--spacing)*2);flex-direction:column;flex:1;padding:1rem 1.15rem 1.15rem;display:flex}.post-card__title{letter-spacing:-.008em;font-size:1.2rem;line-height:1.28}.post-card__title a{color:inherit;text-decoration:none}.post-card__title a:after{content:"";position:absolute;inset:0}.post-card__title a:focus-visible{outline:none}.post-card:focus-within{outline:2px solid var(--accent);outline-offset:2px}.post-card__desc{color:var(--subtle);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:.95rem;line-height:1.55;display:-webkit-box;overflow:hidden}.post-card__meta{color:var(--subtle);margin-top:auto;padding-top:.25rem;font-size:.85rem}@media (max-width:639px){.post-grid--compact,.post-grid--lead{gap:.75rem}:is(.post-grid--compact .post-card,.post-grid--lead .post-card:not(:first-child)){flex-direction:row;align-items:stretch}:is(.post-grid--compact .post-card,.post-grid--lead .post-card:not(:first-child)) .post-card__media{aspect-ratio:auto;width:7rem;min-height:6.5rem}:is(.post-grid--compact .post-card,.post-grid--lead .post-card:not(:first-child)) .post-card__body{justify-content:center;gap:.35rem;padding:.75rem .9rem}:is(.post-grid--compact .post-card,.post-grid--lead .post-card:not(:first-child)) .post-card__title{font-size:1.02rem}:is(.post-grid--compact .post-card,.post-grid--lead .post-card:not(:first-child)) :is(.post-card__desc,.post-card__meta){display:none}}.topic-card{gap:calc(var(--spacing)*4);color:var(--foreground);background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.1rem 1.15rem;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.topic-card:hover{border-color:var(--topic-fg);box-shadow:0 10px 24px rgb(var(--shadow-rgb)/.1);transform:translateY(-2px)}.topic-card__name{font-family:var(--ff-display);font-size:1.2rem;font-weight:600;line-height:1.25;display:block}.topic-card__blurb{margin-top:calc(var(--spacing)*1);color:var(--subtle);font-size:.93rem;line-height:1.5;display:block}.topic-card__count{margin-top:calc(var(--spacing)*2);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--topic-fg);font-size:.875rem;display:block}@media (min-width:1024px){.topic-card{flex-direction:column;gap:.85rem;height:100%}.topic-card__count{margin-top:auto;padding-top:.6rem}.topic-card>div{flex-direction:column;flex:1;display:flex}}.kanji-grid{gap:calc(var(--spacing)*3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (min-width:40rem){.kanji-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:48rem){.kanji-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.kanji-tile{color:var(--foreground);background:var(--surface);border:1px solid var(--border);border-radius:1rem;flex-direction:column;align-items:center;gap:.1rem;padding:.9rem .4rem .75rem;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.kanji-tile:hover{border-color:var(--accent);box-shadow:0 10px 22px rgb(var(--shadow-rgb)/.1);transform:translateY(-2px)}.kanji-tile__char{font-family:var(--font-kanji);font-size:2.6rem;font-weight:500;line-height:1.2;transition:color .2s}.kanji-tile:hover .kanji-tile__char{color:var(--accent)}.kanji-tile__meaning{text-align:center;--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--subtle);font-size:.875rem;line-height:1.25}.crumbs{color:var(--subtle);flex-wrap:wrap;align-items:center;gap:.15rem .5rem;font-size:.9rem;display:flex}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--accent);text-decoration:underline}.crumbs [aria-current]{color:var(--foreground)}.page-title{font-size:clamp(1.9rem,5vw,2.75rem);line-height:1.12}.meta-line{color:var(--subtle);flex-wrap:wrap;row-gap:.15rem;padding-block:2px;font-size:.92rem;display:flex;overflow:hidden}.meta-line>span{white-space:nowrap;padding-left:1.15em;position:relative;left:-1.15em}.meta-line>span:before{content:"·";position:absolute;left:.45em}.disclosure{background:var(--surface);border:1px solid var(--border);border-radius:.9rem}.disclosure>summary{justify-content:space-between;align-items:center;gap:calc(var(--spacing)*4);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);padding:.9rem 1.1rem;line-height:1.4;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:after{content:"+";color:var(--accent);flex:none;font-size:1.4rem;font-weight:400;line-height:1}.disclosure[open]>summary:after{content:"−"}.disclosure>:not(summary){padding:0 1.1rem 1rem}.toc-list{gap:.15rem;font-size:.95rem;line-height:1.4;display:grid}.toc-list a{color:var(--subtle);border-left:2px solid var(--border);padding:.3rem 0 .3rem .85rem;text-decoration:none;display:block}.toc-list a:hover{color:var(--accent);border-left-color:var(--accent)}.site-footer{background:var(--muted);border-top:1px solid var(--border);margin-top:auto}.site-footer h2{font-family:var(--ff-body);letter-spacing:0;margin-bottom:.6rem;font-size:.95rem;font-weight:700}.site-footer li a{color:var(--subtle);font-size:.95rem;text-decoration:none}.site-footer li a:hover{color:var(--accent);text-decoration:underline}.progress-bar{top:calc(var(--spacing)*0);left:calc(var(--spacing)*0);z-index:50;background:var(--accent);width:0;height:3px;position:fixed}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start-4{inset-inline-start:calc(var(--spacing)*4)}.end-4{inset-inline-end:calc(var(--spacing)*4)}.-top-6{top:calc(var(--spacing)*-6)}.-top-full{top:-100%}.top-\(--file-name-offset\){top:var(--file-name-offset)}.top-1\/2{top:50%}.top-24{top:calc(var(--spacing)*24)}.bottom-5{bottom:calc(var(--spacing)*5)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.isolate{isolation:isolate}.z-30{z-index:30}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.app-layout{width:100%;max-width:44rem;padding-inline:calc(var(--spacing)*5);margin-inline:auto}@media (min-width:40rem){.app-layout{padding-inline:calc(var(--spacing)*8)}}.site-container{width:100%;max-width:72rem;padding-inline:calc(var(--spacing)*5);margin-inline:auto}@media (min-width:40rem){.site-container{padding-inline:calc(var(--spacing)*8)}}.mx-auto{margin-inline:auto}.-me-2\.5{margin-inline-end:calc(var(--spacing)*-2.5)}.me-1{margin-inline-end:calc(var(--spacing)*1)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-7{margin-top:calc(var(--spacing)*7)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-9{margin-top:calc(var(--spacing)*9)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-12{margin-top:calc(var(--spacing)*12)}.mt-14{margin-top:calc(var(--spacing)*14)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.aspect-\[16\/10\]{aspect-ratio:16/10}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-10\!{width:calc(var(--spacing)*10)!important;height:calc(var(--spacing)*10)!important}.size-16\!{width:calc(var(--spacing)*16)!important;height:calc(var(--spacing)*16)!important}.h-16{height:calc(var(--spacing)*16)}.h-\[5\.5rem\]{height:5.5rem}.w-\[4\.5rem\]{width:4.5rem}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-app{max-width:44rem}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.grow{flex-grow:1}.-translate-1\/2{--tw-translate-x: -50% ;--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-0{rotate:none}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-col{flex-direction:column}.flex-col\!{flex-direction:column!important}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-3\!{gap:calc(var(--spacing)*3)!important}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-10{gap:calc(var(--spacing)*10)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing)*3)}.gap-x-4{column-gap:calc(var(--spacing)*4)}.gap-x-6{column-gap:calc(var(--spacing)*6)}.gap-y-1{row-gap:calc(var(--spacing)*1)}.gap-y-2{row-gap:calc(var(--spacing)*2)}.gap-y-3{row-gap:calc(var(--spacing)*3)}.overflow-hidden{overflow:hidden}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.rounded-tl-none{border-top-left-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-border{border-color:var(--border)}.bg-background{background-color:var(--background)}.bg-black{background-color:var(--color-black)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-muted\/75{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/75{background-color:color-mix(in oklab,var(--muted)75%,transparent)}}.bg-surface{background-color:var(--surface)}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-4\!{padding-inline:calc(var(--spacing)*4)!important}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-1\.5\!{padding-block:calc(var(--spacing)*1.5)!important}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-5{padding-block:calc(var(--spacing)*5)}.py-10{padding-block:calc(var(--spacing)*10)}.py-16{padding-block:calc(var(--spacing)*16)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-10{padding-top:calc(var(--spacing)*10)}.pr-2{padding-right:calc(var(--spacing)*2)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-10{padding-bottom:calc(var(--spacing)*10)}.pb-12{padding-bottom:calc(var(--spacing)*12)}.pb-14{padding-bottom:calc(var(--spacing)*14)}.pb-16{padding-bottom:calc(var(--spacing)*16)}.pl-4{padding-left:calc(var(--spacing)*4)}.text-center{text-align:center}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9rem\]{font-size:.9rem}.text-\[0\.9rem\]\!{font-size:.9rem!important}.text-\[0\.85rem\]{font-size:.85rem}.text-\[0\.93rem\]{font-size:.93rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.97rem\]{font-size:.97rem}.text-\[1\.05em\]{font-size:1.05em}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[1\.05rem\]\!{font-size:1.05rem!important}.text-\[1\.08em\]{font-size:1.08em}.text-\[1\.15rem\]{font-size:1.15rem}.text-\[1\.35rem\]{font-size:1.35rem}.text-\[1\.35rem\]\!{font-size:1.35rem!important}.text-\[2\.1rem\]\!{font-size:2.1rem!important}.text-\[5rem\]{font-size:5rem}.text-\[clamp\(2\.05rem\,5\.6vw\,3\.25rem\)\]{font-size:clamp(2.05rem,5.6vw,3.25rem)}.leading-4{--tw-leading:calc(var(--spacing)*4);line-height:calc(var(--spacing)*4)}.leading-\[1\.08\]{--tw-leading:1.08;line-height:1.08}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-accent{color:var(--accent)}.text-foreground{color:var(--foreground)}.text-subtle{color:var(--subtle)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-\[color-mix\(in_oklab\,var\(--accent\)_45\%\,transparent\)\]{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.decoration-\[color-mix\(in_oklab\,var\(--accent\)_45\%\,transparent\)\]{-webkit-text-decoration-color:color-mix(in oklab,var(--accent)45%,transparent);text-decoration-color:color-mix(in oklab,var(--accent)45%,transparent)}}.decoration-border{-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border)}.decoration-2{text-decoration-thickness:2px}.underline-offset-4{text-underline-offset:4px}.opacity-40{opacity:.4}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_18px_40px_rgb\(var\(--shadow-rgb\)\/0\.12\)\]{--tw-shadow:0 18px 40px var(--tw-shadow-color,rgb(var(--shadow-rgb)/.12));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-\[45\%\]:before{content:var(--tw-content);top:45%}.before\:left-2:before{content:var(--tw-content);left:calc(var(--spacing)*2)}.before\:inline-block:before{content:var(--tw-content);display:inline-block}.before\:size-1:before{content:var(--tw-content);width:calc(var(--spacing)*1);height:calc(var(--spacing)*1)}.before\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\:bg-green-500:before{content:var(--tw-content);background-color:var(--color-green-500)}@media (hover:hover){.hover\:border-accent:hover{border-color:var(--accent)}.hover\:text-accent:hover{color:var(--accent)}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-accent:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}}.focus\:top-3:focus{top:calc(var(--spacing)*3)}@media (min-width:40rem){.sm\:aspect-\[2\/1\]{aspect-ratio:2}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:calc(var(--spacing)*4)}.sm\:p-7{padding:calc(var(--spacing)*7)}.sm\:p-9{padding:calc(var(--spacing)*9)}.sm\:pt-12{padding-top:calc(var(--spacing)*12)}.sm\:pb-16{padding-bottom:calc(var(--spacing)*16)}}@media (min-width:64rem){.lg\:mx-0{margin-inline:calc(var(--spacing)*0)}.lg\:block{display:block}.lg\:grid{display:grid}.lg\:hidden{display:none}.lg\:aspect-\[4\/3\]{aspect-ratio:4/3}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-cols-\[1\.4fr_1fr_1fr_1fr\]{grid-template-columns:1.4fr 1fr 1fr 1fr}.lg\:grid-cols-\[1\.5fr_1fr\]{grid-template-columns:1.5fr 1fr}.lg\:grid-cols-\[1\.15fr_1fr\]{grid-template-columns:1.15fr 1fr}.lg\:grid-cols-\[minmax\(0\,44rem\)_16\.5rem\]{grid-template-columns:minmax(0,44rem) 16.5rem}.lg\:items-center{align-items:center}.lg\:justify-center{justify-content:center}.lg\:gap-12{gap:calc(var(--spacing)*12)}.lg\:gap-14{gap:calc(var(--spacing)*14)}.lg\:pt-16{padding-top:calc(var(--spacing)*16)}}.dark\:scale-0:where([data-theme=dark],[data-theme=dark] *){--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x)var(--tw-scale-y)}.dark\:scale-100:where([data-theme=dark],[data-theme=dark] *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.dark\:-rotate-90:where([data-theme=dark],[data-theme=dark] *){rotate:-90deg}.dark\:rotate-0:where([data-theme=dark],[data-theme=dark] *){rotate:none}}:root,html[data-theme=light]{color-scheme:light;--background:#faf5eb;--surface:#fffdf8;--foreground:#1f1a14;--accent:#a8392b;--accent-ink:#fff;--muted:#f1eadb;--border:#e4dbc8;--subtle:#6a5f50;--shadow-rgb:60 45 25;--t-learn-bg:#e3eaf2;--t-learn-fg:#2f4f73;--t-kanji-bg:#f6e2dc;--t-kanji-fg:#a63a2b;--t-names-bg:#efe1ea;--t-names-fg:#7a3f63;--t-tools-bg:#f4e7c8;--t-tools-fg:#7a4f10;--t-culture-bg:#e4ebd7;--t-culture-fg:#4a6327}html[data-theme=dark]{color-scheme:dark;--background:#18140f;--surface:#221c15;--foreground:#e8dfcc;--accent:#e58b70;--accent-ink:#18140f;--muted:#2a241c;--border:#3a3229;--subtle:#a3967f;--shadow-rgb:0 0 0;--t-learn-bg:#1f2a38;--t-learn-fg:#9db7d6;--t-kanji-bg:#3a211c;--t-kanji-fg:#e79a88;--t-names-bg:#33222d;--t-names-fg:#d7a3c3;--t-tools-bg:#3a2e14;--t-tools-fg:#e0b969;--t-culture-bg:#26301b;--t-culture-fg:#b3cc8b}:root{--font-kanji:"Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP","Noto Serif CJK JP",serif;--font-ja:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic","Meiryo","Noto Sans JP","Noto Sans CJK JP",sans-serif}:target{scroll-margin-block:5.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}
