@font-face{font-family:Pacifico;src:url(/fonts/pacifico.woff2)format("woff2");font-weight:400;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);--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;--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;--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{opacity:.35}.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);cursor:pointer;flex-shrink:0;padding:0;position:relative;transform:translateZ(0);box-shadow:inset 0 1px #ffffff73}.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);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);box-shadow:0 6px 24px #1f2d3d24,inset 0 1px #ffffff80}.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,inset 0 1px #ffffff8c}.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)}.site-header__balance{width:var(--switch-w);flex-shrink:0}@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{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);transition:inset var(--dur-base) var(--ease-apple);position:absolute;transform:translateZ(0);box-shadow:0 6px 20px #1f2d3d29,inset 0 1px #ffffffa6}.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,inset 0 1px #ffffffa6}.site-header{--glass-radius:var(--r-full);background:var(--glass-bg-strong);width:fit-content;max-width:100%;transition:box-shadow var(--dur-base) var(--ease-apple), background-color var(--dur-base) var(--ease-apple)}.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;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__text{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;display:grid;overflow:hidden}.brand__text-inner{flex-direction:column;gap:1px;min-width:0;min-height:0;display:flex;overflow:hidden}.site-header-wrap.is-collapsed .brand__text{opacity:0;grid-template-rows:0fr;grid-template-columns:0fr}.site-header .brand__name,.site-header .brand__sub{text-shadow:var(--glass-text-shadow)}.brand__name{font-size:var(--fs-sm);letter-spacing:var(--tracking-wide);font-weight:600;line-height:1.25}.brand__sub{color:var(--text-muted);letter-spacing:var(--tracking-wide);font-size:.625rem;line-height:1.2}@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__sig{display: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-display);letter-spacing:.02em;color:#0000;background:linear-gradient(90deg, var(--primary) var(--fill), #fff var(--fill));-webkit-background-clip:text;background-clip:text;font-size:clamp(2.75rem,9vw,5.5rem);font-weight:600;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 page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}main>*{animation:page-in var(--dur-slow) var(--ease-apple)}
