.page-head{max-width:calc(var(--maxw) + 2 * var(--gutter));padding:clamp(72px, 10vw, 128px) var(--gutter) clamp(48px, 6vw, 80px);margin:0 auto}.page-head .lede{max-width:32em}.fpage{max-width:calc(var(--maxw) + 2 * var(--gutter));padding:0 var(--gutter);grid-template-columns:220px minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,80px);margin:0 auto;display:grid}.fpage__index{position:sticky;top:88px}.fpage__index ol{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.fpage__index a{border-left:2px solid var(--line);color:var(--dim);padding:7px 0 7px 14px;font-size:14.5px;text-decoration:none;transition:color .2s,border-color .2s;display:block}.fpage__index a:hover{color:var(--fg)}.fpage__index a[aria-current]{color:var(--fg);border-left-color:var(--brass)}.fgroup{padding:0 0 clamp(56px,7vw,88px);scroll-margin-top:88px}.fgroup+.fgroup{padding-top:8px}.fgroup h2{font-family:var(--f-display);letter-spacing:-.03em;margin:0 0 8px;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:500;line-height:1.1}.fgroup__lede{color:var(--fg-2);max-width:40em;margin:6px 0 24px}.fitems{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,56px);margin:20px 0 0;display:grid}.fitems>div{border-top:1px solid var(--line);padding:20px 0 22px}.fitems dt{letter-spacing:-.01em;margin-bottom:6px;font-weight:500}.fitems dd{color:var(--fg-2);text-wrap:pretty;margin:0;font-size:15px;line-height:1.6}.keys{border-collapse:collapse;width:100%;font-size:15px}.keys th,.keys td{text-align:left;border-top:1px solid var(--line);vertical-align:middle;padding:11px 0}.keys thead th{font:500 11.5px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);border-top:0;padding-bottom:14px}.keys tbody th{padding-right:24px;font-weight:400}.keys td{white-space:nowrap;text-align:right}.keys thead th:last-child{text-align:right}.keys__sep{color:var(--faint);margin:0 6px}.clog-hero{color:#faf8f3;background:#16201a;height:clamp(380px,40vw,540px);margin-top:-60px;position:relative;overflow:hidden}.clog-hero__img{object-fit:cover;object-position:60% 50%;width:100%;height:100%;position:absolute;inset:0}.clog-hero:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0a0e0b8c,#0a0e0b26 55%,#0000);position:absolute;inset:0}.clog-hero__copy{z-index:1;max-width:calc(var(--maxw) + 2 * var(--gutter));height:100%;padding:0 var(--gutter) clamp(44px, 5vw, 72px);flex-direction:column;justify-content:flex-end;margin:0 auto;display:flex;position:relative}.clog-hero__meta{font:500 13px/1 var(--f-mono);letter-spacing:.04em;color:#faf8f3d9;margin:0 0 18px}.clog-hero h1{color:#faf8f3;max-width:9.5em;font-size:clamp(2.8rem,6vw,5.4rem);line-height:1.02}.clog-hero h1 span,.clog-hero h1 em{display:block}:is(:lang(ja),:lang(zh),:lang(ko)) .clog-hero h1{max-width:none;font-size:clamp(2.2rem,4.6vw,4.2rem)}.clog{max-width:calc(800px + 2 * var(--gutter));padding:clamp(56px, 7vw, 96px) var(--gutter) 0;margin:0 auto}.clog__rel{padding:0 0 clamp(56px,7vw,88px);scroll-margin-top:88px}.clog__rel>*{max-width:none}.clog__head{flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:22px;display:flex}.clog__head h2{font:400 clamp(2rem, 3.4vw, 2.8rem)/1 var(--f-display);letter-spacing:-.02em;margin:0}.clog__head time{color:var(--dim);font-size:14px}.clog__new{background:color-mix(in srgb, var(--brass) 14%, transparent);color:var(--brass-text);font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-self:baseline;padding:6px 10px}.clog__sec+.clog__sec{margin-top:26px}.clog__kind{font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);align-items:center;gap:8px;margin:0 0 6px;display:inline-flex}.clog__kind:before{content:"";background:var(--faint);border-radius:50%;width:7px;height:7px}.clog__kind--added:before{background:var(--ok)}.clog__kind--changed:before{background:var(--steel)}.clog__kind--fixed:before{background:var(--brass)}.clog__kind--removed:before,.clog__kind--security:before{background:var(--err)}.clog__items{margin:0;padding:0;list-style:none}.clog__items>li{border-top:1px solid var(--line)}.clog__items>li>p{color:var(--fg-2);text-wrap:pretty;margin:0;padding:14px 0;font-size:15.5px;line-height:1.6}.clog__items>li>p.clog__lead{color:var(--fg);font-weight:500}.clog__items details>summary{cursor:pointer;font:500 16.5px/1.45 var(--f-body);color:var(--fg);text-wrap:pretty;padding:14px 32px 14px 0;list-style:none;position:relative}.clog__items details>summary::-webkit-details-marker{display:none}.clog__items details>summary:after{content:"";background:linear-gradient(var(--dim), var(--dim)) center / 12px 1.5px no-repeat, linear-gradient(var(--dim), var(--dim)) center / 1.5px 12px no-repeat;width:12px;height:12px;transition:transform .25s var(--ease-out);margin-top:-6px;position:absolute;top:50%;right:4px}.clog__items details[open]>summary:after{background:linear-gradient(var(--fg), var(--fg)) center / 12px 1.5px no-repeat;transform:rotate(180deg)}.clog__more{color:var(--fg-2);padding:0 32px 18px 0;font-size:15.5px;line-height:1.6}.clog__more p{text-wrap:pretty;margin:0}.clog__more ul{margin:10px 0 0;padding-left:18px}.clog__more li+li{margin-top:6px}.clog code{font:400 .88em/1 var(--f-mono);background:color-mix(in srgb, var(--fg) 6%, transparent);color:var(--fg);border-radius:5px;padding:.1em .35em}.clog__items>li>p:not(.clog__lead) strong,.clog__more strong{color:var(--fg);font-weight:500}.clog__empty{color:var(--fg-2)}.sketchbook--page{padding-top:clamp(72px,10vw,128px)}.drail{display:none}@media (width>=1100px) and (height>=560px){.drail{z-index:15;transition:opacity .25s ease-out, transform .3s var(--ease-out), visibility 0s;display:block;position:fixed;top:50%;left:4px;transform:translateY(-50%)}.drail.is-away,.drail.is-done{opacity:0;visibility:hidden;transition:opacity .18s ease-out,transform .2s ease-out,visibility 0s linear .2s;transform:translate(-8px,-50%)}}.drail ol{width:36px;margin:0;padding:12px 8px;list-style:none;position:relative}.drail ol:before{content:"";width:var(--rail-w,268px);background:color-mix(in srgb, var(--paper) 94%, transparent);backdrop-filter:blur(12px);box-shadow:0 0 0 1px var(--line), 0 24px 48px -24px #00000073;opacity:0;transform-origin:0;transition:opacity .16s ease-out, transform .2s var(--ease-out);pointer-events:none;border-radius:12px;position:absolute;inset:0 auto 0 0;transform:translate(-6px)scale(.98)}.drail li{position:relative}.drail li.is-gstart{margin-top:9px}.drail a{outline-offset:2px;align-items:center;height:18px;text-decoration:none;display:flex;position:relative}.drail__dash{background:var(--faint);transform-origin:0;width:18px;height:1.5px;transition:transform .28s var(--ease-out), background-color .2s ease;border-radius:1px;flex:none;transform:scaleX(.45)}.drail a.is-past .drail__dash{background:var(--dim)}.drail a[aria-current] .drail__dash{background:var(--brass);transform:scaleX(1)}.drail__t{font:500 11.5px/1 var(--f-mono);letter-spacing:.02em;white-space:nowrap;color:var(--fg-2);opacity:0;transition:opacity .16s ease-out, transform .2s var(--ease-out);pointer-events:none;border-radius:7px;align-items:baseline;gap:9px;padding:5px 9px;display:flex;position:absolute;top:50%;left:26px;transform:translate(-4px,-50%)}.drail__no{color:var(--dim);letter-spacing:.08em;font-size:10.5px}.drail a[aria-current] .drail__t{color:var(--fg)}.drail a[aria-current] .drail__no{color:var(--brass-text)}.drail.has-room.is-reading a[aria-current] .drail__t{opacity:1;transform:translateY(-50%)}@media (hover:hover){.drail:hover ol,.drail:focus-within ol{width:var(--rail-w,268px)}.drail:hover ol:before,.drail:focus-within ol:before{opacity:1;transform:none}.drail:hover .drail__t,.drail:focus-within .drail__t{opacity:1;pointer-events:auto;transition-delay:calc(var(--k) * 14ms);transform:translateY(-50%)}.drail a:hover .drail__dash{background:var(--fg)}.drail a:hover .drail__t{color:var(--fg)}}.drail a:focus-visible{outline:none}.drail a:focus-visible .drail__t{box-shadow:0 0 0 1.5px var(--brass)}@media (prefers-reduced-motion:reduce){.drail__dash,.drail__t,.drail ol:before{transition-duration:10ms}}@media (width<=1020px){.fpage{grid-template-columns:1fr;gap:8px}.fpage__index{margin:0 calc(-1 * var(--gutter)) 32px;padding:0 var(--gutter) 2px;scrollbar-width:none;position:static;overflow-x:auto}.fpage__index::-webkit-scrollbar{display:none}.fpage__index ol{flex-direction:row;gap:6px;width:max-content}.fpage__index a{border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:7px 13px;font-size:13.5px}.fpage__index a[aria-current]{border-color:var(--line-strong);background:var(--tile)}}@media (width<=640px){.fitems{grid-template-columns:1fr}.keys tbody th{padding-right:12px;font-size:14px}}
