@import "https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap";*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--surface:#faf8f5;--surface-raised:#fff;--surface-sunken:#f0ede6;--ink:#2d2d2b;--ink-muted:#6b6860;--line:#2d2d2b1f;--line-strong:#2d2d2b47;--accent-soft:#eaf2ed;--accent-line:#b3cebd;--accent-ink:#3d6850;--warm-soft:#fdf0e3;--warm-line:#d9b889;--warm-ink:#7d5126;--radius:12px;--radius-small:6px;--duration:.18s;--ease:cubic-bezier(.2, .8, .2, 1);--font-body:"BIZ UDPGothic", -apple-system, BlinkMacSystemFont, system-ui, sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--surface:#16161a;--surface-raised:#1d1d22;--surface-sunken:#232328;--ink:#e8e6e0;--ink-muted:#9a968e;--line:#e8e6e01f;--line-strong:#e8e6e052;--accent-soft:#1d2d24;--accent-line:#3d6850;--accent-ink:#a8cbb5;--warm-soft:#2a2118;--warm-line:#7d5126;--warm-ink:#d9b889}}@media (prefers-contrast:more){:root{--line:#2d2d2b66;--line-strong:#2d2d2bb3;--ink-muted:#4a463f}@media (prefers-color-scheme:dark){:root{--line:#e8e6e066;--line-strong:#e8e6e0b3;--ink-muted:#c8c4bc}}}html{-webkit-text-size-adjust:100%}body{background:var(--surface);color:var(--ink);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;min-height:100svh;font-size:15px;line-height:1.65}a{color:inherit;text-underline-offset:2px;text-decoration-thickness:1px}button{font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;background:0 0;border:none}:focus{outline:none}:focus-visible{outline:2px solid var(--line-strong);outline-offset:3px;border-radius:4px}.topbar{background:var(--surface-raised);border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;gap:1rem;min-height:52px;padding:.75rem 1.75rem;display:flex;position:sticky;top:0}.topbar-logo{letter-spacing:.01em;font-size:15px;font-weight:500}.topbar-logo .suffix{color:var(--ink-muted);font-weight:400}.lang-row{flex-wrap:wrap;gap:2px;display:flex}.lang-btn{color:var(--ink-muted);min-height:32px;transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), border-color var(--duration) var(--ease);border:1px solid #0000;border-radius:999px;padding:6px 12px;font-size:13px}.lang-btn:hover{color:var(--ink);background:var(--surface-sunken)}.lang-btn[aria-pressed=true]{color:var(--ink);background:var(--surface-sunken);border-color:var(--line)}.main{max-width:640px;margin:0 auto;padding:3.5rem 1.75rem 5rem}@keyframes settle-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.section{border-top:1px solid var(--line);animation:settle-in .42s var(--ease) both;margin-top:2.5rem;padding-top:2.5rem}.section:first-of-type{border-top:none;margin-top:0;padding-top:0}.section:nth-of-type(2){animation-delay:70ms}.section:nth-of-type(3){animation-delay:.14s}.section:nth-of-type(4){animation-delay:.21s}.section-head{letter-spacing:.16em;color:var(--ink-muted);text-transform:uppercase;margin-bottom:1rem;font-size:12px;font-weight:400}.section-note{text-transform:none;letter-spacing:0;opacity:.75}.hero{margin-bottom:1rem}.hero-eyebrow{background:var(--surface-sunken);border:1px solid var(--line);color:var(--ink-muted);letter-spacing:.04em;border-radius:999px;margin-bottom:1.25rem;padding:4px 12px;font-size:12px;display:inline-block}.hero-title{letter-spacing:.01em;margin-bottom:.5rem;font-size:clamp(2rem,7vw,3.2rem);font-weight:500;line-height:1.15}.hero-title .suffix{color:var(--ink-muted);font-weight:300}.hero-pronounce{color:var(--ink-muted);letter-spacing:.08em;background:var(--surface-sunken);border-radius:var(--radius-small);margin-top:.25rem;margin-bottom:1.75rem;padding:3px 10px;font-size:12px;display:inline-block}.hero-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.5rem}.hero-wish{font-size:15px;line-height:1.7}.proj-list{flex-direction:column;gap:6px;display:flex}.proj-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);min-height:56px;color:inherit;transition:border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease), transform var(--duration) var(--ease);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;text-decoration:none;display:flex;position:relative;overflow:visible}.proj-card:hover{border-color:var(--line-strong);transform:translateY(-1px);box-shadow:0 2px 10px #2d2d2b12}.proj-card:active{transition-duration:80ms;transform:translateY(0)scale(.995)}.proj-paw{color:var(--accent-ink);opacity:0;transition:opacity var(--duration) var(--ease), transform var(--duration) var(--ease);pointer-events:none;flex-shrink:0;font-size:11px;position:absolute;top:50%;right:1rem;transform:translate(6px)}.proj-card:hover .proj-paw,.proj-card:focus-visible .proj-paw{opacity:.65;transform:translate(0)}.proj-left{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.proj-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.proj-name{font-size:15px;font-weight:500}.proj-lang{color:var(--ink-muted);background:var(--surface-sunken);border-radius:var(--radius-small);padding:1px 7px;font-size:12px}.proj-desc{color:var(--ink-muted);margin-top:2px;font-size:14px;line-height:1.55}.badge{white-space:nowrap;border:1px solid var(--line);color:var(--ink-muted);background:var(--surface-sunken);border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:12px}.badge.wip{color:var(--accent-ink);background:var(--accent-soft);border-color:var(--accent-line)}.badge.star{color:var(--warm-ink);background:var(--warm-soft);border-color:var(--warm-line)}.links-grid{flex-wrap:wrap;gap:8px;display:flex}.link-chip{color:var(--ink-muted);background:var(--surface-raised);border:1px solid var(--line);min-height:36px;transition:color var(--duration) var(--ease), border-color var(--duration) var(--ease), background-color var(--duration) var(--ease);border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:13px;text-decoration:none;display:inline-flex}.link-chip:hover{color:var(--ink);border-color:var(--line-strong);background:var(--surface-sunken);transform:translateY(-1px)}.link-chip:active,.tea-btn:active,.lang-btn:active{transition-duration:80ms;transform:translateY(0)scale(.97)}.link-chip,.tea-btn,.lang-btn{transition:color var(--duration) var(--ease), background-color var(--duration) var(--ease), border-color var(--duration) var(--ease), transform var(--duration) var(--ease)}.tea-btn{color:var(--warm-ink);background:var(--warm-soft);border:1px solid var(--warm-line);min-height:36px;transition:background-color var(--duration) var(--ease), border-color var(--duration) var(--ease);border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:13px;text-decoration:none;display:inline-flex}.tea-btn:hover{background:var(--warm-soft);border-color:var(--warm-ink);transform:translateY(-1px)}.credit-list{flex-direction:column;gap:6px;display:flex}.credit-item{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:12px;min-height:44px;padding:.75rem 1.1rem;display:flex}.credit-tag{color:var(--ink-muted);background:var(--surface-sunken);border-radius:var(--radius-small);white-space:nowrap;flex-shrink:0;padding:2px 8px;font-size:12px}.credit-name{color:var(--ink);font-size:14px;text-decoration:none}.credit-name rt{font-size:.7em;display:inline-block;transform:translateY(.4em)}.credit-name:hover{text-underline-offset:3px;text-decoration:underline}.thanks{text-align:center;color:var(--ink-muted);letter-spacing:.02em;margin-top:3rem;font-size:14px}.foot{border-top:1px solid var(--line);color:var(--ink-muted);justify-content:space-between;align-items:center;gap:1rem;margin-top:3rem;padding-top:1.5rem;font-size:12px;display:flex}.foot a{text-decoration:none}.foot a:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.lang-fixed{display:none}@media (width<=540px){.topbar{padding:.75rem 1.25rem}.topbar .lang-row{display:none}.lang-fixed{background:var(--surface-raised);border-bottom:1px solid var(--line);z-index:9;padding:.5rem 1.25rem;display:flex;position:sticky;top:52px}.lang-fixed .lang-row{flex-wrap:wrap}.lang-fixed .lang-btn{min-height:40px;padding:8px 14px;font-size:14px}.main{padding:2rem 1.25rem 4rem}.foot{flex-direction:column;align-items:flex-start;gap:6px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
