@font-face{font-family:Pacifico;src:url(/fonts/pacifico.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Edu QLD Hand;src:url(/fonts/eduqld-hand-bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}html,[data-theme=light]{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Noto Sans JP", sans-serif;--font-display:var(--font-sans);--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--font-hand:"Pacifico", var(--font-sans);--font-wordmark:"Edu QLD Hand", var(--font-sans);--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.9375rem;--fs-md:1.0625rem;--fs-lg:clamp(1.25rem, 1.1rem + .7vw, 1.5rem);--fs-xl:clamp(1.75rem, 1.4rem + 1.6vw, 2.5rem);--fs-2xl:clamp(2.5rem, 1.8rem + 3.4vw, 4.5rem);--fs-3xl:clamp(3rem, 2rem + 4.4vw, 5.5rem);--lh-tight:1.2;--lh-snug:1.45;--lh-base:1.75;--lh-loose:2;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.06em;--tracking-wider:.14em;--tracking-jp:.22em;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--sp-9:6rem;--sp-10:8rem;--page-gutter:clamp(1.25rem, 5vw, 8rem);--page-max:76rem;--content-max:46rem;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-full:999px;--ease-apple:cubic-bezier(.32, .72, 0, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.2s;--dur-base:.35s;--dur-slow:.5s;--dur-slower:.8s;--glass-blur:24px;--glass-sat:180%;--switch-w:60px;--switch-h:34px;--switch-knob:22px;--switch-pad:6px;--switch-travel:26px;--switch-track:#ffffff6b;--bg-veil:#ffffff59;--danger:#b8412c;--loader-bg:#f2f6f8;--loader-glow:#3f7d8c1f;--loader-fill:.9s;--loader-fade:.48s;--glass-bg:#ffffffad;--glass-bg-strong:#ffffffd6;--glass-text-shadow:none;--glass-bg-card:#ffffff9e;--glass-bg-menu:#fcfdfedb;--glass-border:#1c253012;--glass-shadow:0 8px 32px #1f2d3d0f;--glass-shadow-hover:0 12px 40px #1f2d3d1a;--glass-inner:inset 0 1px 0 #ffffff80;--glass-topline:inset 0 1px 0 #fff9;--bg:#f7f9fa;--bg-tint:#eef4f6;--text:#1c2530;--text-secondary:#5b6b7a;--text-muted:#93a3b0;--primary:#3f7d8c;--primary-hover:#33697a;--primary-soft:#3f7d8c1a;--primary-ring:#3f7d8c47;--accent:#d99429;--accent-hover:#c07f1c;--accent-soft:#d994291f;--hairline:#1c253014;--hairline-strong:#1c253024;--hairline-bold:#1c25303d}[data-theme=dark]{--bg:#0e1418;--bg-tint:#131b20;--text:#e6edf2;--text-secondary:#9fb0bd;--text-muted:#64788a;--primary:#6fb3c2;--primary-hover:#8ac6d3;--primary-soft:#6fb3c224;--primary-ring:#6fb3c252;--accent:#e8a33d;--accent-hover:#f2b458;--accent-soft:#e8a33d24;--hairline:#e6edf217;--hairline-strong:#e6edf229;--hairline-bold:#e6edf24d;--bg-veil:#0e141859;--danger:#e0705a;--loader-bg:#0a0f14;--loader-glow:#6fb3c221;--loader-fill:.9s;--loader-fade:.48s;--glass-bg:#0a0f1385;--glass-bg-strong:#0a0f13a8;--glass-text-shadow:0 1px 3px #00000080;--glass-bg-card:#0a0f138a;--glass-bg-menu:#10171de0;--glass-border:#ffffff21;--glass-shadow:0 8px 32px #0000004d;--glass-shadow-hover:0 12px 40px #0006;--glass-inner:inset 0 1px 0 #ffffff0f;--glass-topline:inset 0 1px 0 #fff0;--switch-track:#ffffff1f}html[data-accent=blue]{--bg-image:url(/bg.webp);--bg-veil:#ffffff59;--primary:#3f7d8c;--primary-hover:#33697a;--primary-soft:#3f7d8c1a;--primary-ring:#3f7d8c47;--accent:#d99429;--accent-hover:#c07f1c;--accent-soft:#d994291f}html[data-accent=yellow]{--bg-image:url(/bg-yellow.webp);--bg-veil:#36200861;--primary:#9c7117;--primary-hover:#7f5c11;--primary-soft:#9c71171f;--primary-ring:#9c71174d;--accent:#c34d78;--accent-hover:#a83f64;--accent-soft:#c34d7824;--loader-bg:#faf6ec;--loader-glow:#9c711721}html[data-accent=purple]{--bg-image:url(/bg-purple.webp);--bg-veil:#0e071e6b;--primary:#6f4fa8;--primary-hover:#5b3f8c;--primary-soft:#6f4fa824;--primary-ring:#6f4fa84d;--accent:#2f97a6;--accent-hover:#267c89;--accent-soft:#2f97a629;--loader-bg:#f4f1fa;--loader-glow:#6f4fa821}html[data-accent=blue][data-theme=dark]{--bg-veil:#0e141859;--primary:#6fb3c2;--primary-hover:#8ac6d3;--primary-soft:#6fb3c224;--primary-ring:#6fb3c252;--accent:#e8a33d;--accent-hover:#f2b458;--accent-soft:#e8a33d24}html[data-accent=yellow][data-theme=dark]{--bg-veil:#120a02c2;--primary:#e6b445;--primary-hover:#f2c76a;--primary-soft:#e6b44529;--primary-ring:#e6b44557;--accent:#e884a8;--accent-hover:#f19cba;--accent-soft:#e884a829;--loader-bg:#14100a;--loader-glow:#e6b44524}html[data-accent=purple][data-theme=dark]{--bg-veil:#08041299;--primary:#b79ae8;--primary-hover:#cbb2f2;--primary-soft:#b79ae829;--primary-ring:#b79ae857;--accent:#62c3d2;--accent-hover:#86d4e0;--accent-soft:#62c3d229;--loader-bg:#0d0a16;--loader-glow:#b79ae824}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh;transition:background-color var(--dur-base) var(--ease-apple), color var(--dur-base) var(--ease-apple);overflow-x:hidden}#root{display:flow-root}body:before{content:"";z-index:-2;background:linear-gradient(var(--bg-veil), var(--bg-veil)), var(--bg-image) center / cover no-repeat;pointer-events:none;position:fixed;inset:0}h1,h2,h3,h4{font-weight:600;line-height:var(--lh-tight);letter-spacing:var(--tracking-tight)}h1,h2{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-weight:600}a{color:var(--primary);transition:color var(--dur-fast) var(--ease-apple);text-decoration:none}a:hover{color:var(--primary-hover)}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}::selection{background:var(--primary-soft);color:var(--text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--hairline-strong);border-radius:var(--r-full);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--text-muted);background-clip:content-box}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--r-xs)}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow), var(--glass-inner);border-radius:var(--glass-radius,var(--r-lg));position:relative}.glass--strong{background:var(--glass-bg-strong)}.glass--inset{border-color:var(--hairline);box-shadow:none;--glass-radius:var(--r-md);background:#ffffff47}[data-theme=dark] .glass--inset{background:#ffffff09}.glass:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;opacity:.8;background:linear-gradient(160deg,#ffffff8c,#fff0 40%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}[data-theme=dark] .glass:before{display:none}.glass--hover{transition:transform var(--dur-base) var(--ease-apple), box-shadow var(--dur-base) var(--ease-apple), background-color var(--dur-base) var(--ease-apple)}.glass--hover:hover{box-shadow:var(--glass-shadow-hover), var(--glass-inner);transform:translateY(-2px)}.btn{align-items:center;gap:var(--sp-2);border-radius:var(--r-full);font-size:var(--fs-sm);letter-spacing:var(--tracking-normal);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(160%);border:1px solid var(--glass-border);color:var(--text);box-shadow:var(--glass-shadow);transition:transform var(--dur-fast) var(--ease-apple), background-color var(--dur-fast) var(--ease-apple), box-shadow var(--dur-fast) var(--ease-apple);padding:.625rem 1.25rem;font-weight:500;display:inline-flex}.btn:hover{color:var(--text);box-shadow:var(--glass-shadow-hover);transform:scale(1.02)}.btn:active{transform:scale(.97)}.btn--primary{background:var(--primary);color:#fff;border-color:#0000}.btn--primary:hover{background:var(--primary-hover);color:#fff}.chip{align-items:center;gap:var(--sp-1);border-radius:var(--r-full);font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);color:var(--primary);background:linear-gradient(var(--primary-soft), var(--primary-soft)), var(--glass-bg-strong);backdrop-filter:blur(10px)saturate(150%);border:1px solid var(--glass-border);transition:background-color var(--dur-fast) var(--ease-apple), transform var(--dur-fast) var(--ease-apple);padding:.3rem .75rem;display:inline-flex}.chip--accent{color:var(--accent);background:linear-gradient(var(--accent-soft), var(--accent-soft)), var(--glass-bg-strong)}.chip:hover{transform:translateY(-1px)}.hairline{background:var(--hairline);border:none;height:1px}.section{margin-bottom:var(--sp-8)}.section-head{align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-5);display:flex}.section-head__title{font-size:var(--fs-base);letter-spacing:var(--tracking-normal);font-weight:600}.section-head__kana{font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:var(--tracking-jp)}.section-head:after{content:"";background:var(--hairline);flex:1;height:1px}.rows{flex-direction:column;display:flex}.row{align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-2);border-bottom:1px solid var(--hairline);color:var(--text);transition:background-color var(--dur-fast) var(--ease-apple), padding-left var(--dur-fast) var(--ease-apple);display:flex}.row:first-child{border-top:1px solid var(--hairline)}a.row:hover,.row--interactive:hover{color:var(--text);padding-left:var(--sp-3);background:#ffffff52}[data-theme=dark] a.row:hover{background:#ffffff0a}.row__icon{width:30px;height:30px;color:var(--primary);flex-shrink:0;place-items:center;display:grid}.row__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row__title{align-items:center;gap:var(--sp-2);font-size:var(--fs-base);font-weight:500;line-height:1.35;display:flex}.row__level{padding:.1rem .45rem;font-size:.625rem;font-weight:500}.row__sub{font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:var(--tracking-wide);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row__meta{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-secondary);flex-shrink:0}.row__arrow{color:var(--text-muted);opacity:0;transition:opacity var(--dur-base) var(--ease-apple), transform var(--dur-base) var(--ease-apple);flex-shrink:0;transform:translate(-4px,4px)}a.row:hover .row__arrow{opacity:1;color:var(--primary);transform:translate(0)}.facts{gap:var(--sp-5) var(--sp-6);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.fact__label{font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:var(--tracking-wide);margin-bottom:var(--sp-1)}.fact__value{font-size:var(--fs-md);font-weight:500}.cols{gap:var(--sp-6);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.cols__title{font-size:var(--fs-sm);color:var(--primary);letter-spacing:var(--tracking-wide);margin-bottom:var(--sp-3);font-weight:600}.plain-list{gap:var(--sp-2);flex-direction:column;display:flex}.plain-list li{font-size:var(--fs-base);color:var(--text-secondary);line-height:var(--lh-snug)}.chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.quote{padding-left:var(--sp-4);border-left:2px solid var(--primary-soft);color:var(--text-secondary);font-size:var(--fs-md);line-height:var(--lh-snug)}.prose p{color:var(--text-secondary);line-height:var(--lh-base);max-width:38em}.prose p+p{margin-top:var(--sp-4)}:root{--dur-reveal:.5s;--ease-reveal:cubic-bezier(.35, 0, .25, 1)}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2;clip-path:circle(0 at var(--vt-x,50%) var(--vt-y,50%));animation:theme-reveal var(--dur-reveal) var(--ease-reveal) forwards}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--vt-x,50%) var(--vt-y,50%))}to{clip-path:circle(var(--vt-r,100vmax) at var(--vt-x,50%) var(--vt-y,50%))}}.theme-switch__knob{view-transition-name:theme-switch-knob}::view-transition-group(theme-switch-knob){z-index:10}::view-transition-old(theme-switch-knob){animation:.16s linear both knob-swap-out}::view-transition-new(theme-switch-knob){animation:.2s linear 60ms both knob-swap-in}@keyframes knob-swap-out{0%{opacity:1}to{opacity:0}}@keyframes knob-swap-in{0%{opacity:0}to{opacity:1}}html.theme-transition,html.theme-transition *,html.theme-transition :before,html.theme-transition :after{transition:background-color .5s,border-color .5s,color .5s,fill .5s,stroke .5s!important}html.theme-transition .theme-switch__knob{transition:transform var(--dur-reveal) var(--ease-reveal)!important}@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root),::view-transition-old(theme-switch-knob),::view-transition-new(theme-switch-knob){animation:none!important}html.theme-transition,html.theme-transition *,html.theme-transition :before,html.theme-transition :after{transition:none!important}}.theme-switch{width:var(--switch-w);height:var(--switch-h);border-radius:var(--r-full);background:var(--switch-track);backdrop-filter:blur(14px)saturate(165%);border:1px solid var(--glass-border);box-shadow:var(--glass-topline);cursor:pointer;flex-shrink:0;padding:0;position:relative;transform:translateZ(0)}.theme-switch__knob{top:50%;left:var(--switch-pad);width:var(--switch-knob);height:var(--switch-knob);border-radius:var(--r-full);background:var(--glass-bg-strong);border:1px solid var(--hairline-strong);color:var(--text);place-items:center;display:grid;position:absolute;translate:0 -50%}.theme-switch[data-on=dark] .theme-switch__knob{transform:translateX(var(--switch-travel))}.theme-switch__glyph{display:block}.heat{gap:var(--sp-3);flex-direction:column;display:flex}.heat__grid{padding-bottom:var(--sp-1);scrollbar-width:thin;gap:3px;display:flex;overflow-x:auto}.heat__week{flex-direction:column;gap:3px;display:flex}.heat__day{background:var(--hairline);border-radius:2px;flex-shrink:0;width:10px;height:10px}.heat__day.is-blank{background:0 0}.heat__day[data-level="1"]{background:color-mix(in oklab, var(--primary) 28%, transparent)}.heat__day[data-level="2"]{background:color-mix(in oklab, var(--primary) 48%, transparent)}.heat__day[data-level="3"]{background:color-mix(in oklab, var(--primary) 70%, transparent)}.heat__day[data-level="4"]{background:var(--primary)}.heat__foot{justify-content:space-between;align-items:center;gap:var(--sp-3);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.heat__legend{align-items:center;gap:3px;display:inline-flex}.heat__note{font-size:var(--fs-sm);color:var(--text-muted);padding:var(--sp-2) 0}.heat__note a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.heat{position:relative}.heat__veil{padding:var(--sp-3);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--text-soft);text-align:center;letter-spacing:.02em;background:color-mix(in srgb, var(--bg) 55%, transparent);backdrop-filter:blur(2px);place-items:center;display:grid;position:absolute;inset:0}.auth-dock{left:calc(-1 * (var(--page-gutter) - var(--sp-4)));z-index:3;--dock-size:56px;--dock-w:200px;--dock-h:116px;--dock-w-in:400px;--dock-h-in:282px;--dock-w-peek:290px;--dock-w-half:560px;--dock-h-half:282px;--dock-lift-x:4px;--dock-lift-y:4px;--dur-dock:.42s;--ease-dock:cubic-bezier(.32, .72, 0, 1);position:absolute;top:0}.auth-dock__panel{width:var(--dock-size);height:var(--dock-size);border-radius:var(--r-xl);background:var(--glass-bg-menu);backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--hairline);box-shadow:0 6px 24px #1f2d3d24, var(--glass-topline);transition:width var(--dur-dock) var(--ease-dock), height var(--dur-dock) var(--ease-dock), translate var(--dur-dock) var(--ease-dock), box-shadow var(--dur-dock) var(--ease-dock);position:relative;overflow:hidden;transform:translateZ(0)}.auth-dock[data-auth=in][data-open=true] .auth-dock__panel{width:var(--dock-w-in);height:var(--dock-h-in)}.auth-dock[data-auth=in][data-heat=year][data-open=true] .auth-dock__panel{width:var(--dock-w-half);height:var(--dock-h-half)}.auth-dock[data-open=true] .auth-dock__panel{width:var(--dock-w);height:var(--dock-h);translate:calc(-1 * var(--dock-lift-x)) calc(-1 * var(--dock-lift-y));box-shadow:0 18px 48px #1f2d3d33, var(--glass-topline)}.auth-dock__divider{background:var(--hairline-bold);opacity:0;flex-shrink:0;width:1px;height:18px;margin:0 5px;transition:opacity .2s linear}.auth-dock[data-open=true] .auth-dock__divider,.auth-dock[data-peek=true] .auth-dock__divider{opacity:1;transition:opacity .2s linear .33s}.auth-dock[data-auth=in][data-open=false][data-peek=true] .auth-dock__panel{width:var(--dock-w-peek)}.auth-dock[data-open=false][data-peek=true] .auth-dock__head-right{gap:0;width:0}.auth-dock[data-open=false][data-peek=true] .auth-dock__head{padding-right:10px}.auth-dock__head{transition:padding var(--dur-dock) var(--ease-dock);justify-content:space-between;align-items:center;padding:4px;display:flex}.auth-dock[data-open=true] .auth-dock__head{padding:8px 12px 6px 8px}.auth-dock__trigger{border-radius:var(--r-full);width:46px;height:46px;color:var(--primary);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-apple), transform var(--dur-fast) var(--ease-apple);background:0 0;border:0;flex-shrink:0;place-items:center;padding:0;display:grid;overflow:hidden}.auth-dock__trigger:hover{background:var(--hairline)}.auth-dock__trigger:active{transform:scale(.94)}.auth-dock__trigger:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-dock__pic,.auth-dock__initial{object-fit:cover;border-radius:var(--r-full);place-items:center;width:100%;height:100%;display:grid}.auth-dock__initial{font-size:var(--fs-sm);color:var(--bg);background:var(--primary);font-weight:600}.auth-dock__spin{border:1.5px solid var(--hairline-strong);border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-dock__ident{opacity:0;min-width:max-content;transition:opacity .18s linear, transform .22s var(--ease-apple);flex-direction:column;flex:1;gap:1px;display:flex;transform:translate(-5px)}.auth-dock[data-open=true] .auth-dock__ident,.auth-dock[data-peek=true] .auth-dock__ident{opacity:1;transition:opacity .2s linear .33s, transform .26s var(--ease-apple) .33s;transform:none}.auth-dock__ident strong{font-size:var(--fs-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;line-height:1.2;overflow:hidden}.auth-dock__ident span{font-size:var(--fs-xs);color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.auth-dock__head-right{opacity:0;pointer-events:none;transition:opacity .16s linear, transform .24s var(--ease-dock), width var(--dur-dock) var(--ease-dock), gap var(--dur-dock) var(--ease-dock);align-items:center;gap:6px;margin-left:auto;display:flex;overflow:hidden;transform:translate(6px)}.auth-dock[data-open=true] .auth-dock__head-right{opacity:1;pointer-events:auto;transition:opacity .2s linear .35s, transform .26s var(--ease-dock) .35s;transform:none}.auth-dock__body{opacity:0;pointer-events:none;transition:opacity .14s linear, transform .2s var(--ease-dock);flex-direction:column;flex:1;gap:10px;padding:0 12px 12px;display:flex;transform:translateY(4px)}.auth-dock[data-open=true] .auth-dock__body{opacity:1;pointer-events:auto;transition:opacity .24s linear .11s, transform .32s var(--ease-dock) 90ms;transform:none}.auth-dock__cta{border-radius:var(--r-full);width:100%;height:44px;font-family:var(--font-sans);font-size:var(--fs-base);color:var(--bg);background:var(--primary);cursor:pointer;transition:filter var(--dur-fast) var(--ease-apple), transform var(--dur-fast) var(--ease-apple);border:0;place-items:center;font-weight:500;display:grid}.auth-dock__cta:hover:not(:disabled){filter:brightness(1.08)}.auth-dock__cta:active:not(:disabled){transform:scale(.98)}.auth-dock__cta:disabled{cursor:progress;opacity:.7}.auth-dock__who{flex-direction:column;gap:2px;padding:2px 4px 0;display:flex}.auth-dock__who strong{font-size:var(--fs-sm);color:var(--text);font-weight:600}.auth-dock__who span{font-size:var(--fs-xs);color:var(--text-faint);word-break:break-all}.auth-dock__tiles{grid-template-columns:1fr 1fr;gap:8px;display:grid}.auth-dock__tile{border-radius:var(--r-lg);height:62px;font-family:var(--font-sans);font-size:var(--fs-xs);color:var(--text-soft);background:var(--hairline);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-apple), color var(--dur-fast) var(--ease-apple);border:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;text-decoration:none;display:flex}.auth-dock__tile:hover{background:var(--hairline-strong);color:var(--text)}.auth-dock__wide{border-radius:var(--r-md);height:38px;font-size:var(--fs-xs);color:var(--text-soft);background:var(--hairline);transition:background-color var(--dur-fast) var(--ease-apple);justify-content:space-between;align-items:center;gap:8px;padding:0 12px;text-decoration:none;display:flex}.auth-dock__wide:hover{background:var(--hairline-strong);color:var(--text)}.auth-dock__error{border-radius:var(--r-md);font-size:var(--fs-xs);color:var(--text);background:var(--hairline);border:1px solid var(--danger,#c0563f);align-items:flex-start;gap:6px;padding:6px 8px;display:flex}.auth-dock__error button{color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex-shrink:0;font-size:.7rem}@media (width<=720px){.auth-dock{display:none}}@media (prefers-reduced-motion:reduce){.auth-dock__panel,.auth-dock__head,.auth-dock__head-right,.auth-dock__body,.auth-dock__trigger,.auth-dock__cta,.auth-dock__tile,.auth-dock__wide{transition:none}.auth-dock__spin{animation:none}}.auth-dock__clock{border-bottom:1px solid var(--hairline);align-items:baseline;gap:.5rem;padding:0 2px 10px;display:flex}.auth-dock__clock strong{font-family:var(--font-sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text);font-size:1.6rem;font-weight:600;line-height:1.1}.auth-dock__clock span{font-size:var(--fs-xs);color:var(--text-faint)}.auth-dock__accents{align-items:center;gap:2px;margin-left:auto;display:flex}.auth-dock__accent{cursor:pointer;background:0 0;border:0;place-items:center;width:24px;height:24px;padding:0;display:grid;position:relative}.auth-dock__accent:before{content:"";border-radius:var(--r-full);background:var(--dot);opacity:0;transition:opacity .26s var(--ease-apple), transform .3s var(--ease-apple);position:absolute;inset:0;transform:scale(.4)}.auth-dock__accent[data-on=true]:before{opacity:.22;transform:scale(1)}.auth-dock__accent-dot{border-radius:var(--r-full);background:var(--dot);width:10px;height:10px;transition:transform .24s var(--ease-apple);position:relative;box-shadow:0 1px 3px #1c253038}.auth-dock__accent:hover .auth-dock__accent-dot{transform:scale(1.15)}.auth-dock__weather{font-size:var(--fs-sm);color:var(--text-soft);align-items:center;gap:.4rem;padding-top:10px;display:flex}.auth-dock__wicon{color:var(--primary);place-items:center;display:grid}.auth-dock__weather strong{font-size:var(--fs-md);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.auth-dock__wlabel{font-size:var(--fs-xs);color:var(--text-faint)}.auth-dock__wcity{font-size:var(--fs-xs);color:var(--text-faint);margin-left:auto}.auth-dock__logout{border:1px solid var(--hairline);border-radius:var(--r-full);background:var(--hairline);width:28px;height:28px;color:var(--danger);cursor:pointer;z-index:2;transition:color var(--dur-fast) var(--ease-apple), background-color var(--dur-fast) var(--ease-apple), border-color var(--dur-fast) var(--ease-apple);flex-shrink:0;place-items:center;margin-left:8px;padding:0;display:grid;position:relative}.auth-dock__logout:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent);border-color:color-mix(in srgb, var(--danger) 28%, transparent)}.auth-dock__heat{flex-direction:column;gap:8px;padding:10px 2px 0;display:flex}.auth-dock__heat-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.auth-dock__heat-title{font-size:var(--fs-xs);color:var(--text-soft);align-items:center;gap:.4rem;font-weight:500;display:flex}.auth-dock__heat-title svg{color:var(--primary)}.auth-dock__heat-toggle{border-radius:var(--r-full);background:var(--hairline);width:22px;height:22px;color:var(--text-faint);cursor:pointer;transition:transform var(--dur-base) var(--ease-apple), background-color var(--dur-fast) var(--ease-apple), color var(--dur-fast) var(--ease-apple);border:0;place-items:center;padding:0;display:grid}.auth-dock__heat-toggle:hover{background:var(--hairline-strong);color:var(--text)}.auth-dock__heat-toggle{transform:rotate(-90deg)}.auth-dock__heat-toggle.is-open{transform:rotate(90deg)}.auth-dock__heat .heat{gap:6px}.auth-dock__heat .heat__grid{justify-content:flex-end;gap:2px;display:flex;overflow:hidden}.auth-dock__heat .heat__week{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.auth-dock__heat .heat__day{border-radius:1.5px;flex-shrink:0;width:8px;height:8px}.auth-dock__heat .heat__veil{border-radius:var(--r-sm);background:color-mix(in srgb, var(--bg) 45%, transparent);font-size:11px}.auth-dock__confirm{min-height:92px;font-size:var(--fs-sm);color:var(--text);text-align:center;animation:auth-confirm-in .22s var(--ease-apple);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;display:flex}@keyframes auth-confirm-in{0%{opacity:0;transform:scale(.96)}}.auth-dock__confirm-q{white-space:nowrap}.auth-dock__confirm-acts{align-items:center;gap:4px;display:flex}.auth-dock__confirm-acts button{border-radius:var(--r-full);background:var(--hairline);color:var(--text-soft);font-family:var(--font-sans);font-size:var(--fs-xs);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-apple), color var(--dur-fast) var(--ease-apple);border:0;padding:4px 10px}.auth-dock__confirm-acts button:hover{background:var(--hairline-strong);color:var(--text)}.auth-dock__confirm-acts .is-danger{background:var(--danger);color:#fff;font-weight:600}.auth-dock__confirm-acts .is-danger:hover{filter:brightness(1.08);color:#fff}.auth-dock__weather{position:relative}.auth-dock__wveil{z-index:1;border-radius:var(--r-sm);background:var(--glass-bg-menu);-webkit-backdrop-filter:blur(12px)saturate(160%);border:1px solid var(--hairline);font-size:var(--fs-xs);color:var(--text-soft);white-space:nowrap;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:-4px -6px}.auth-dock__wgrant{border-radius:var(--r-full);background:var(--primary);color:#fff;font-family:var(--font-sans);font-size:var(--fs-xs);cursor:pointer;transition:filter var(--dur-fast) var(--ease-apple);border:0;padding:3px 10px;font-weight:500}.auth-dock__wgrant:hover{filter:brightness(1.08)}.search-panel{top:calc(100% + 10px);left:var(--field-left,50%);z-index:55;width:min(max(var(--field-w,560px), 340px), calc(100% - var(--page-gutter) * 2));max-width:calc(100% - var(--field-left,0px) - var(--page-gutter));overscroll-behavior:contain;border:1px solid var(--hairline-strong);border-radius:var(--r-lg);background:var(--glass-bg-menu);backdrop-filter:blur(24px)saturate(180%);max-height:min(60vh,520px);animation:search-drop .3s var(--ease-apple);position:absolute;overflow-y:auto;box-shadow:0 24px 64px #10182038}@keyframes search-drop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-panel__note{text-align:center;font-size:var(--fs-sm);color:var(--text-muted);margin:0;padding:26px 18px}.search-panel__note--dim{font-size:var(--fs-xs);padding-top:0}.search-group__title{font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);color:var(--text-muted);align-items:center;gap:6px;margin:0;padding:12px 18px 6px;font-weight:600;display:flex}.search-group__count{border-radius:var(--r-full);background:var(--primary-soft);color:var(--primary);padding:0 6px;font-size:10px;font-weight:500}.search-group__rows{border-top:1px solid var(--hairline)}.search-hit-row{color:inherit;border-top:1px solid var(--hairline);transition:background-color var(--dur-fast) var(--ease-apple);grid-template-columns:1fr auto;gap:2px 10px;padding:10px 18px;text-decoration:none;display:grid}.search-hit-row:first-child{border-top:0}.search-hit-row:hover{background:var(--primary-soft)}.search-hit-row__title{font-size:var(--fs-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.search-hit-row__meta{font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:8px;display:flex}.search-hit-row__type{border-radius:var(--r-full);background:var(--hairline);padding:1px 6px}.search-hit-row__date{font-variant-numeric:tabular-nums}.search-hit-row__facets{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;grid-column:1/-1;gap:4px 12px;margin-top:2px;line-height:1.6;display:flex}.search-facet{align-items:baseline;max-width:100%;display:inline-flex}.search-facet__label{color:var(--text-muted);white-space:nowrap}.search-hit-row__snippet{font-size:var(--fs-xs);color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;grid-column:1/-1;line-height:1.65;display:-webkit-box;overflow:hidden}.search-hit{background:color-mix(in srgb, var(--primary) 26%, transparent);color:var(--primary);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;padding:0 2px}@media (width<=720px){.search-panel{left:var(--page-gutter);right:var(--page-gutter);width:auto;max-width:none}}.site-header__balance{flex-shrink:0;width:12px}@media (width<=720px){.site-header__balance{display:none}}.site-header-wrap{top:var(--sp-4);z-index:50;margin:var(--sp-4) auto 0;width:calc(100% - var(--page-gutter) * 2);--avatar-size:46px;--halo-bleed:5px;justify-content:center;align-items:center;gap:14px;display:flex;position:sticky}.site-header-wrap.is-collapsed{--avatar-size:42px;--halo-bleed:2px}.site-header__avatar{z-index:43;width:var(--avatar-size);height:var(--avatar-size);transition:width var(--dur-base) var(--ease-apple), height var(--dur-base) var(--ease-apple);flex-shrink:0;place-items:center;display:grid;position:relative}.site-header__avatar-halo{inset:calc(-1 * var(--halo-bleed));border-radius:var(--r-full);background:var(--glass-bg-strong);backdrop-filter:blur(14px)saturate(170%);border:1px solid var(--hairline-strong);box-shadow:0 6px 20px #1f2d3d29, var(--glass-topline);transition:inset var(--dur-base) var(--ease-apple);position:absolute;transform:translateZ(0)}.site-header__avatar img{z-index:1;border-radius:var(--r-full);object-fit:cover;width:100%;height:100%;display:block;position:relative}.site-header__avatar:hover .site-header__avatar-halo{box-shadow:0 10px 28px #1f2d3d38, var(--glass-topline)}.site-header{z-index:41;width:var(--pill-w,fit-content);--glass-radius:var(--r-full);background:var(--glass-bg-strong);max-width:100%;transition:box-shadow var(--dur-base) var(--ease-apple), background-color var(--dur-base) var(--ease-apple), width .42s var(--ease-apple), margin-left .42s var(--ease-apple), margin-right .42s var(--ease-apple);position:relative}.site-header-wrap.is-collapsed .site-header{box-shadow:0 10px 36px #1f2d3d1a, var(--glass-inner)}.site-header__inner{align-items:center;gap:var(--sp-3);padding:.5rem var(--sp-5);min-height:54px;transition:min-height var(--dur-base) var(--ease-apple), padding var(--dur-base) var(--ease-apple), gap var(--dur-base) var(--ease-apple);display:flex}.site-header-wrap.is-collapsed .site-header__inner{padding:.375rem var(--sp-4);gap:var(--sp-2);min-height:44px}.brand{align-items:center;gap:var(--sp-3);color:var(--text);flex-shrink:0;display:flex}.brand:hover{color:var(--text)}.site-header-wrap.is-collapsed .brand{gap:0}.brand__sig{white-space:nowrap;font-family:var(--font-hand);color:var(--primary);letter-spacing:.01em;flex-shrink:0;grid-template-columns:1fr;margin:-.05em 0 -.46em;padding:.05em 0 .46em;font-size:1.0625rem;line-height:1;display:grid;overflow:hidden}.brand__sig>span{min-width:0}.brand__tail{white-space:nowrap;transition:grid-template-rows var(--dur-base) var(--ease-apple), grid-template-columns var(--dur-base) var(--ease-apple), opacity var(--dur-base) var(--ease-apple);grid-template-rows:1fr;grid-template-columns:1fr;margin:-2px 0;padding:2px 0;display:grid;overflow:hidden}.brand__tail-inner{flex-direction:row;align-items:center;gap:.5rem;min-width:0;min-height:0;margin:-2px 0;padding:2px 0;display:flex;overflow:hidden}.site-header-wrap.is-collapsed .brand__tail{opacity:0;grid-template-rows:0fr;grid-template-columns:0fr}.site-header .brand__name{text-shadow:var(--glass-text-shadow)}.brand__name{font-family:var(--font-wordmark);letter-spacing:.01em;font-size:.9375rem;font-weight:700;line-height:1.2}.brand__divider{background:var(--hairline-strong);flex-shrink:0;width:1px;height:.95em}@media (width<=720px){.site-header-wrap{top:var(--sp-3);margin-top:var(--sp-3);--avatar-size:34px;gap:10px}.site-header-wrap.is-collapsed{--avatar-size:32px}.site-header__inner{padding:.375rem .375rem .375rem var(--sp-4);gap:var(--sp-1)}.brand__tail{opacity:0;grid-template-rows:0fr;grid-template-columns:0fr}.brand{gap:0}}.search-backdrop{z-index:40;backdrop-filter:blur()saturate();opacity:0;pointer-events:none;transition:opacity .28s var(--ease-apple), backdrop-filter .28s var(--ease-apple);background:#10182029;position:fixed;inset:0}.site-header-wrap[data-search=true] .search-backdrop{opacity:1;pointer-events:auto;backdrop-filter:blur(10px)saturate(120%)}.search-btn{z-index:43;cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;width:37px;height:37px;padding:0;display:grid;position:relative}.search-btn__glass{border-radius:var(--r-full);border:1px solid var(--hairline-strong);background:var(--glass-bg-strong);backdrop-filter:blur(14px)saturate(170%);box-shadow:0 6px 20px #1f2d3d29, var(--glass-topline);transition:opacity .26s var(--ease-apple);position:absolute;inset:0}.search-btn:hover .search-btn__glass{box-shadow:0 8px 24px #1f2d3d2e, var(--glass-topline)}.site-header-wrap[data-search=true] .search-btn__glass{opacity:0}.search-btn__icon{z-index:1;color:var(--text-secondary);pointer-events:none;transform:translate(var(--fly-x,0px), var(--fly-y,0px));transition:transform .29s var(--ease-apple);position:relative}.site-header-wrap[data-search=true] .site-header{z-index:42;width:var(--field-w,fit-content);margin-left:var(--field-ml,0px);margin-right:var(--field-mr,0px)}.site-header__search{--search-pad:18px;--search-text-pad:30px;padding:0 var(--search-pad);opacity:0;pointer-events:none;transition:opacity .2s var(--ease-apple);align-items:center;display:flex;position:absolute;inset:0}.site-header-wrap[data-search=true] .site-header__search{opacity:1;pointer-events:auto;transition-delay:80ms}.site-header__search-ph{left:calc(var(--search-pad) + var(--search-text-pad));pointer-events:none;font-family:var(--font-sans);font-size:var(--fs-base);color:var(--text-muted);white-space:nowrap;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.site-header__search-ph i{opacity:0;font-style:normal;display:inline-block}.site-header-wrap[data-search=true] .site-header__search-ph i{animation:ph-rise .3s var(--ease-apple) both;animation-delay:calc(.28s + var(--i,0) * 20ms)}@keyframes ph-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.site-header__search-slot{left:var(--search-pad);width:16px;height:16px;margin-top:-8px;position:absolute;top:50%}.site-header__search-input{width:100%;padding-left:var(--search-text-pad);font-family:var(--font-sans);font-size:var(--fs-base);color:var(--text);background:0 0;border:0;outline:none;padding-right:46px}.site-header__search-input::placeholder{color:var(--text-muted)}.brand{transition:opacity .18s var(--ease-apple), transform .32s var(--ease-apple)}.site-header-wrap[data-search=true] .brand{opacity:0;pointer-events:none;transform:translate(-10px)}.site-header__avatar{transition:opacity .26s var(--ease-apple)}.site-header-wrap[data-search=true] .site-header__avatar{opacity:0;pointer-events:none}@property --fill{syntax:"<percentage>";inherits:false;initial-value:0%}.page-loader{z-index:100;background:radial-gradient(120% 90% at 50% 40%, var(--loader-glow), transparent 62%), var(--loader-bg);transition:opacity var(--loader-fade) var(--ease-apple), visibility var(--loader-fade) var(--ease-apple);place-items:center;display:grid;position:fixed;inset:0}.page-loader.is-out{opacity:0;visibility:hidden;pointer-events:none}.page-loader__word{z-index:1;font-family:var(--font-wordmark);letter-spacing:.01em;color:#0000;background:linear-gradient(90deg, var(--primary) var(--fill), #fff var(--fill));-webkit-background-clip:text;background-clip:text;margin:-.3em 0;padding:.3em 0;font-size:clamp(2.75rem,9vw,5.5rem);font-weight:700;line-height:1;position:relative}.page-loader.is-fill .page-loader__word{animation:loader-fill var(--loader-fill) var(--ease-apple) forwards}@keyframes loader-fill{0%{--fill:0%}to{--fill:100%}}.page-loader__glow{aspect-ratio:1;background:radial-gradient(circle, var(--loader-glow), transparent 68%);opacity:.5;filter:blur(18px);width:min(62vw,34rem);animation:loader-glow var(--loader-fill) var(--ease-apple) forwards;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}@keyframes loader-glow{0%{opacity:.28;scale:.86}to{opacity:.62;scale:1}}@media (prefers-reduced-motion:reduce){.page-loader__word,.page-loader__glow{animation-duration:1ms}.page-loader__word{--fill:100%}}.page-shell{width:min(calc(100% - var(--page-gutter) * 2), var(--page-max));padding:var(--sp-8) 0 0;flex-direction:column;min-height:calc(100vh - 4.5rem);margin:0 auto;display:flex;position:relative}.page-shell__margin{top:50%;right:var(--sp-5);writing-mode:vertical-rl;font-family:var(--font-display);letter-spacing:.3em;color:var(--text-secondary);opacity:.55;pointer-events:none;user-select:none;font-size:.6875rem;font-weight:500;position:fixed;transform:translateY(-50%)}.page-shell__main{max-width:var(--content-max);flex-direction:column;flex:1;display:flex}.page-shell__main.is-wide{max-width:var(--page-max)}.page-head{margin-bottom:var(--sp-7)}.page-head__title{font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);margin-bottom:var(--sp-2);font-weight:600}.page-head__subtitle{color:var(--text-secondary);font-size:var(--fs-base);max-width:34em}.site-footer{margin-top:var(--sp-6);padding-bottom:var(--sp-4)}.site-footer__inner{justify-content:flex-end;align-items:center;gap:var(--sp-2);letter-spacing:.01em;color:var(--text-muted);opacity:.72;flex-wrap:wrap;font-size:.6875rem;display:flex}.site-footer__quote{font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:var(--tracking-jp);color:var(--text-secondary)}.site-footer__meta a{color:var(--text-muted)}.site-footer__meta a:hover{color:var(--primary)}@media (width<=1024px){.page-shell__margin{display:none}}@media (width<=720px){.page-shell{padding-top:var(--sp-6)}.site-footer__inner{align-items:flex-start;gap:var(--sp-2);flex-direction:column}}.page-shell__margin:before{content:"";background:var(--hairline-strong);width:1px;height:1.75rem;position:absolute;top:-2.75rem;left:50%;transform:translate(-50%)}@keyframes intro-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.intro{animation:intro-in .7s var(--ease-apple) backwards;animation-delay:calc(var(--i,0) * 70ms + 80ms)}@media (prefers-reduced-motion:reduce){.intro{animation:none}}.home-title{font-family:var(--font-hand);letter-spacing:.01em;color:var(--primary);text-shadow:0 1px 3px #0003,0 6px 24px #0000001f;--glass-radius:var(--r-full);translate:0 var(--sp-7);transition:color var(--dur-base) var(--ease-apple);padding:.4em .55em;font-size:clamp(1.65rem,5vw,4rem);font-weight:400;line-height:1.1}.home-hero{align-items:center;gap:var(--sp-7);margin:auto 0;display:flex}.home-side{gap:var(--sp-4);flex-direction:column;flex:0 0 340px;margin-left:auto;display:flex}.home-card{--glass-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5)}.home-card__title{font-size:var(--fs-sm);margin-bottom:var(--sp-2)}.home-card__line{font-size:var(--fs-sm);color:var(--text-secondary)}.home-card__meta{font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:.06em;margin-top:2px}.home-card__quote{margin-top:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted)}.home-card__links{gap:var(--sp-2);flex-wrap:wrap;display:flex}@media (width<=1080px){.home-hero{align-items:flex-start;gap:var(--sp-6);flex-direction:column}.home-side{flex:none;width:100%;margin-left:0}.home-title{font-size:clamp(1.65rem,8.5vw,3.5rem);translate:none}}.hero{align-items:flex-start;gap:var(--sp-4);padding:var(--sp-8) 0 var(--sp-9);flex-direction:column;max-width:40rem;display:flex}.hero__avatar-wrap{margin-bottom:var(--sp-2)}.hero__avatar{border-radius:var(--r-full);object-fit:cover;border:1px solid var(--glass-border);width:76px;height:76px;box-shadow:0 4px 16px #1f2d3d14}.hero__name{font-size:var(--fs-3xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:1.05}.hero__desc{font-size:var(--fs-md);color:var(--text-secondary);line-height:var(--lh-base);max-width:30em}.hero__actions{gap:var(--sp-3);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.hero__lyric{margin-top:var(--sp-5);font-size:var(--fs-xs);letter-spacing:var(--tracking-jp);color:var(--text-muted)}.section[id]{scroll-margin-top:7rem}.prose .quote{margin-top:var(--sp-5)}.facts{margin-top:var(--sp-6)}.works-heat{margin-top:var(--sp-5);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.works-heat__summary{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-2);cursor:pointer;font-size:var(--fs-sm);color:var(--text-secondary);transition:color var(--dur-fast) var(--ease-apple);font-weight:500;list-style:none;display:flex}.works-heat__summary:hover{color:var(--text)}.works-heat__summary::-webkit-details-marker{display:none}.works-heat__hint{font-size:var(--fs-xs);color:var(--text-muted);font-weight:400}.works-heat__box[open] .works-heat__hint,.works-heat[open] .works-heat__hint{opacity:0}.works-heat__body{padding:var(--sp-2) var(--sp-2) var(--sp-5);overflow-x:auto}.contact-copy{align-items:center;gap:var(--sp-1);border-radius:var(--r-full);font-size:var(--fs-xs);color:var(--text-muted);border:1px solid var(--hairline);transition:color var(--dur-fast) var(--ease-apple), border-color var(--dur-fast) var(--ease-apple), transform var(--dur-fast) var(--ease-apple);flex-shrink:0;padding:.25rem .625rem;display:inline-flex}.contact-copy:hover{color:var(--primary);border-color:var(--primary-ring);transform:translateY(-1px)}@media (width<=720px){.hero{padding:var(--sp-6) 0 var(--sp-7)}}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}main>*{animation:page-in var(--dur-slow) var(--ease-apple)}
