:root{--paper:#f7f3ea;--paper-2:#efe9db;--sumi:#1a1a1a;--sumi-soft:#3a3a38;--muted:#6a665b;--muted-deco:#8a857a;--rule:#d9d2bf;--line-strong:#8a8372;--ai:#2f4858;--shu:#b03a2e;--ai-ink:#2f4858;--shu-ink:#b03a2e;--fs-2xs:.6875rem;--fs-xs:.8125rem;--fs-sm:.875rem;--fs-base:1rem;--fs-lg:1.125rem;--fs-xl:1.375rem;--font-serif:"Shippori Mincho", "Noto Serif SC", "Yu Mincho", serif;--font-body:"Noto Serif SC", serif;--font-mono:"JetBrains Mono", monospace;--font-sans:"Inter", sans-serif;--radius-xs:1px;--radius:2px;--radius-sm:4px;--radius-md:8px;--radius-pill:999px;--shadow-float:0 20px 50px -20px #00000038}body{--accent:var(--shu);--accent-ink:var(--shu-ink);--ring:0 0 0 3px color-mix(in oklab, var(--accent) 14%, transparent);--ring-danger:0 0 0 3px color-mix(in oklab, var(--shu) 18%, transparent)}body[data-palette=kinari]{--paper:#f7f3ea;--paper-2:#efe9db;--sumi:#1a1a1a;--sumi-soft:#3a3a38;--muted:#6a665b;--rule:#d9d2bf;--ai:#2f4858;--shu:#b03a2e;--muted-deco:#8a857a;--line-strong:#8a8372;--shu-ink:#b03a2e;--ai-ink:#2f4858}body[data-palette=sumi]{--paper:#161514;--paper-2:#1f1d1b;--sumi:#ece7da;--sumi-soft:#c3bdac;--muted:#8e8a7f;--rule:#39332b;--ai:#8eb3c5;--shu:#d46a5d;--muted-deco:#6e6a60;--line-strong:#706960;--shu-ink:#d56b5d;--ai-ink:#8eb3c5}body[data-palette=matcha]{--paper:#eef1e4;--paper-2:#dfe4d2;--sumi:#1b2418;--sumi-soft:#384033;--muted:#5a6751;--rule:#c7d1ba;--ai:#2f4858;--shu:#6b8e5c;--muted-deco:#7a8870;--line-strong:#78826c;--shu-ink:#4b6c3c;--ai-ink:#2f4858}body[data-palette=sakura]{--paper:#fbf1ed;--paper-2:#f4dfd9;--sumi:#2a1a1c;--sumi-soft:#4b3335;--muted:#765f5d;--rule:#e8cfc7;--ai:#845d70;--shu:#c96a7c;--muted-deco:#a58d8a;--line-strong:#917b74;--shu-ink:#a1475a;--ai-ink:#80596c}body[data-palette=ai]{--paper:#eef2f4;--paper-2:#dde5e9;--sumi:#11222b;--sumi-soft:#2e4553;--muted:#506775;--rule:#c4d2d9;--ai:#2f4858;--shu:#c97a4a;--muted-deco:#6d8593;--line-strong:#758288;--shu-ink:#9b501e;--ai-ink:#2f4858}body[data-palette=yuzu]{--paper:#fdf6e3;--paper-2:#f5e9c4;--sumi:#2e2a18;--sumi-soft:#524a30;--muted:#746744;--rule:#e4d6a8;--ai:#6b8e5c;--shu:#d89635;--muted-deco:#998c68;--line-strong:#918358;--shu-ink:#975900;--ai-ink:#4f7040}body[data-accent=shu]{--accent:var(--shu);--accent-ink:var(--shu-ink)}body[data-accent=ai]{--accent:var(--ai);--accent-ink:var(--ai-ink)}body[data-accent=sumi]{--accent:var(--sumi);--accent-ink:var(--sumi)}body{--warning-anchor:#a2761f;--success-anchor:#4a7f4a;--warning:color-mix(in oklab, var(--warning-anchor) 88%, var(--sumi));--success:color-mix(in oklab, var(--success-anchor) 88%, var(--sumi));--warning-ink:color-mix(in oklab, var(--warning-anchor) 65%, var(--sumi));--success-ink:color-mix(in oklab, var(--success-anchor) 74%, var(--sumi));--danger:var(--shu);--danger-ink:var(--shu-ink);--info:var(--ai);--info-ink:var(--ai-ink);--danger-bg:color-mix(in oklab, var(--danger) 6%, transparent);--success-bg:color-mix(in oklab, var(--success) 6%, transparent);--warning-bg:color-mix(in oklab, var(--warning) 6%, transparent);--info-bg:color-mix(in oklab, var(--info) 6%, transparent);--danger-line:color-mix(in oklab, var(--danger-ink) 45%, var(--line-strong));--success-line:color-mix(in oklab, var(--success-ink) 45%, var(--line-strong));--warning-line:color-mix(in oklab, var(--warning-ink) 45%, var(--line-strong));--info-line:color-mix(in oklab, var(--info-ink) 45%, var(--line-strong));--scrim-anchor:var(--sumi);--scrim:color-mix(in oklab, var(--scrim-anchor) 55%, transparent);--surface-overlay:var(--paper);--overlay-line:color-mix(in oklab, var(--line-strong) 85%, var(--sumi));--surface-hover:color-mix(in oklab, var(--sumi) 3%, transparent);--surface-active:color-mix(in oklab, var(--sumi) 6%, transparent);--opacity-disabled:.45;--surface-disabled:color-mix(in oklab, var(--sumi) 4%, transparent);--shadow-1:0 6px 18px -8px #00000029;--shadow-2:var(--shadow-float);--shadow-3:0 32px 80px -28px #0000004d;--space-1:4px;--space-2:6px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:22px;--space-7:30px;--space-8:44px;--ctl-h-sm:28px;--ctl-h-md:34px;--ctl-h-lg:42px;--ctl-px-sm:12px;--ctl-px-md:15px;--ctl-px-lg:20px;--ctl-px-wide:30px;--z-drawer:70;--z-modal:80;--z-dropdown:90;--z-toast:100;--dur-1:.2s;--dur-2:.35s;--ease:cubic-bezier(.2, 0, .2, 1);--drawer-w:min(86vw, 340px);--select-caret-color:var(--muted);--table-row-h:44px;--table-head-bg:color-mix(in oklab, var(--sumi) 3%, var(--paper));--table-border:var(--rule);--dialog-w:480px;--toast-w:340px}body[data-palette=sumi]{--warning-anchor:#dcae64;--success-anchor:#8cc98c;--scrim-anchor:var(--paper);--surface-overlay:color-mix(in oklab, var(--sumi) 7%, var(--paper));--danger-bg:color-mix(in oklab, var(--danger) 12%, var(--paper));--success-bg:color-mix(in oklab, var(--success) 12%, var(--paper));--warning-bg:color-mix(in oklab, var(--warning) 12%, var(--paper));--info-bg:color-mix(in oklab, var(--info) 12%, var(--paper))}@media (prefers-reduced-motion:reduce){body{--dur-1:0s;--dur-2:0s}}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:120%}body,html{margin:0;padding:0}body{background:var(--paper);min-height:100vh;color:var(--sumi);-webkit-font-smoothing:antialiased;font-family:Shippori Mincho,Noto Serif SC,Yu Mincho,serif;font-weight:400;line-height:1.85;transition:background .4s,color .4s;overflow-x:hidden}:where(a:-moz-any-link){color:var(--accent-ink);text-underline-offset:.2em;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;overflow-wrap:anywhere;text-decoration-line:underline;text-decoration-thickness:.06em}:where(a:any-link){color:var(--accent-ink);text-underline-offset:.2em;-webkit-text-decoration-skip:ink;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;overflow-wrap:anywhere;text-decoration-line:underline;text-decoration-thickness:.06em}:where(a:any-link:hover),:where(a:any-link:hover){color:var(--sumi);text-decoration-thickness:.1em}:where(a:any-link:focus-visible),:where(a:any-link:focus-visible){outline:2px solid var(--accent-ink);outline-offset:3px}body:before{content:"";pointer-events:none;z-index:0;transition:opacity .3s,background-color .4s;position:fixed;inset:0}@supports ((-webkit-mask-image:linear-gradient(#000,#000)) or (mask-image:linear-gradient(#000,#000))){body:before{--wg-ink:6.5%;--wg-tone:3.2%;background-color:color-mix(in oklab,var(--sumi) var(--wg-ink),transparent);background-image:radial-gradient(circle at 12% 8%,color-mix(in oklab,var(--sumi) var(--wg-tone),transparent) 0,transparent 55%),radial-gradient(circle at 88% 92%,color-mix(in oklab,var(--sumi) var(--wg-tone),transparent) 0,transparent 55%);--wg-mask:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22280%22%20height%3D%22280%22%3E%3Cfilter%20id%3D%22a%22%20width%3D%22280%22%20height%3D%22280%22%20x%3D%220%22%20y%3D%220%22%20color-interpolation-filters%3D%22sRGB%22%20filterUnits%3D%22userSpaceOnUse%22%3E%3CfeTurbulence%20baseFrequency%3D%22.35%22%20numOctaves%3D%223%22%20result%3D%22pulp%22%20seed%3D%227%22%20stitchTiles%3D%22stitch%22%20type%3D%22fractalNoise%22%2F%3E%3CfeTurbulence%20baseFrequency%3D%220.025%200.35%22%20numOctaves%3D%222%22%20result%3D%22fib%22%20seed%3D%223%22%20stitchTiles%3D%22stitch%22%20type%3D%22fractalNoise%22%2F%3E%3CfeComposite%20in%3D%22pulp%22%20in2%3D%22fib%22%20k2%3D%22.75%22%20k3%3D%22.45%22%20k4%3D%22-.1%22%20operator%3D%22arithmetic%22%2F%3E%3CfeComponentTransfer%3E%3CfeFuncR%20intercept%3D%221%22%20slope%3D%220%22%20type%3D%22linear%22%2F%3E%3CfeFuncG%20intercept%3D%221%22%20slope%3D%220%22%20type%3D%22linear%22%2F%3E%3CfeFuncB%20intercept%3D%221%22%20slope%3D%220%22%20type%3D%22linear%22%2F%3E%3CfeFuncA%20exponent%3D%222.6%22%20type%3D%22gamma%22%2F%3E%3C%2FfeComponentTransfer%3E%3C%2Ffilter%3E%3Cpath%20d%3D%22M0%200h280v280H0z%22%20filter%3D%22url\(%23a\)%22%2F%3E%3C%2Fsvg%3E);-webkit-mask-image:var(--wg-mask);-webkit-mask-image:var(--wg-mask);mask-image:var(--wg-mask);-webkit-mask-size:280px 280px;mask-size:280px 280px}body[data-palette=sumi]:before{--wg-ink:3.6%;--wg-tone:2.0%}}body:after{content:"";pointer-events:none;z-index:0;opacity:.38;transition:opacity .3s;position:fixed;inset:0}body[data-bg=plain]:after{--cr:color-mix(in oklab, var(--sumi) 6%, transparent);background-image:linear-gradient(23deg,transparent 22%,var(--cr) 27%,transparent 33%),linear-gradient(-14deg,transparent 55%,var(--cr) 60%,transparent 66%),linear-gradient(68deg,transparent 74%,var(--cr) 77%,transparent 81%);opacity:.5;background-repeat:no-repeat;background-size:100% 100%}body[data-bg=seigaiha]:after{--c:color-mix(in oklab, var(--sumi) 14%, transparent);background-image:radial-gradient(circle at 20px 25px,transparent 16px,var(--c) 16px 16.8px,transparent 17px),radial-gradient(circle at 20px 25px,transparent 11px,var(--c) 11px 11.8px,transparent 12px),radial-gradient(circle at 20px 25px,transparent 6px,var(--c) 6px 6.8px,transparent 7px),radial-gradient(circle at 0 0,transparent 16px,var(--c) 16px 16.8px,transparent 17px),radial-gradient(circle at 40px 0,transparent 16px,var(--c) 16px 16.8px,transparent 17px),radial-gradient(circle at 0 0,transparent 11px,var(--c) 11px 11.8px,transparent 12px),radial-gradient(circle at 40px 0,transparent 11px,var(--c) 11px 11.8px,transparent 12px),radial-gradient(circle at 0 0,transparent 6px,var(--c) 6px 6.8px,transparent 7px),radial-gradient(circle at 40px 0,transparent 6px,var(--c) 6px 6.8px,transparent 7px);background-size:40px 25px}body[data-bg=asanoha]:after{--c:color-mix(in oklab, var(--sumi) 13%, transparent);background-image:linear-gradient(60deg,transparent 49.4%,var(--c) 49.4% 50.6%,transparent 50.6%),linear-gradient(-60deg,transparent 49.4%,var(--c) 49.4% 50.6%,transparent 50.6%),linear-gradient(0deg,transparent 49.4%,var(--c) 49.4% 50.6%,transparent 50.6%);background-size:36px 62px}body[data-bg=komon]:after{--c:color-mix(in oklab, var(--sumi) 15%, transparent);background-image:radial-gradient(var(--c) 1px,transparent 1.4px);background-size:14px 14px}body[data-bg=genko]:after{--c:color-mix(in oklab, var(--sumi) 12%, transparent);background-image:linear-gradient(to right,var(--c) 1px,transparent 1px),linear-gradient(to bottom,var(--c) 1px,transparent 1px);background-size:28px 28px}body[data-bg=kumo]:after{--c1:color-mix(in oklab, var(--accent) 13%, transparent);--c2:color-mix(in oklab, var(--ai) 13%, transparent);background-image:radial-gradient(ellipse 420px 90px at 20% 18%,var(--c1),transparent 60%),radial-gradient(ellipse 520px 120px at 82% 35%,var(--c2),transparent 60%),radial-gradient(ellipse 480px 100px at 32% 72%,var(--c1),transparent 60%),radial-gradient(ellipse 420px 90px at 85% 88%,var(--c2),transparent 60%);opacity:.45}body[data-bg=tategaki]:after{--c:color-mix(in oklab, var(--sumi) 11%, transparent);background-image:repeating-linear-gradient(90deg,transparent 0 60px,var(--c) 60px 61px)}body[data-bg=koushi]:after{--c:color-mix(in oklab, var(--sumi) 12%, transparent);background-image:repeating-linear-gradient(45deg,transparent 0 18px,var(--c) 18px 19px),repeating-linear-gradient(-45deg,transparent 0 18px,var(--c) 18px 19px)}.spine,.spine-label{left:clamp(16px,2vw,28px)}.spine{background:var(--rule);z-index:1;width:1px;position:fixed;top:0;bottom:0}.spine:after,.spine:before{content:"";border-radius:50%;width:7px;height:7px;position:absolute;left:-3px}.spine:before{background:var(--sumi);top:28px}.spine:after{background:var(--accent);bottom:28px}.spine-label{writing-mode:vertical-rl;letter-spacing:.6em;color:var(--muted);background:var(--paper);z-index:2;pointer-events:none;padding:14px 2px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:11px;position:fixed;top:50%;transform:translate(-50%,-50%)}.site-main,main{z-index:3;position:relative}.site-main{flex-direction:column;width:100%;max-width:min(96vw,1440px);min-height:100dvh;margin:0 auto;padding:72px clamp(20px,3vw,40px) 28px;display:flex}.site-main>*{flex-shrink:0;min-width:0}.site-main>.site-footer{margin-top:auto}.site-main.main--wide{max-width:min(96vw,1560px)}.top{font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:baseline;padding-bottom:40px;display:flex}.top .date{color:var(--sumi-soft)}.hero{border-bottom:1px solid var(--rule);padding-bottom:72px;position:relative}.hero-index{letter-spacing:.3em;color:var(--muted);align-items:center;gap:12px;margin-bottom:28px;font-family:Inter,sans-serif;font-size:12px;font-weight:500;display:flex}.hero-index .dash{background:var(--muted-deco);width:24px;height:1px}.hero-title{letter-spacing:-.02em;color:var(--sumi);margin:0 0 10px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:clamp(46px,8.5vw,100px);font-weight:700;line-height:.98}.hero-title .accent{color:var(--accent-ink);font-weight:800}.hero-sub{color:var(--ai-ink);letter-spacing:.35em;margin:4px 0 44px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:18px;font-weight:400}.hero-body{grid-template-columns:1fr auto;align-items:start;gap:48px;display:grid}.hero-body p{font-size:var(--fs-base);color:var(--sumi-soft);max-width:44ch;margin:0;line-height:2}.hero-body p b{color:var(--sumi);font-weight:600}.hero-body p .under{background:linear-gradient(transparent 70%,color-mix(in oklab,var(--accent) 30%,transparent) 70%);padding:0 2px}.hero-note{border:1px dashed color-mix(in oklab,var(--accent) 45%,var(--rule));background:color-mix(in oklab,var(--accent) 6%,transparent);letter-spacing:.04em;color:var(--sumi-soft);border-radius:2px;align-items:center;gap:10px;margin-top:32px;padding:8px 16px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:13px;line-height:1.6;display:inline-flex}.hero-note a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.hero-note a:hover{color:var(--sumi)}.hero-note .badge{font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);letter-spacing:.15em;color:var(--accent-ink);border:1px solid color-mix(in oklab,var(--accent) 45%,var(--rule));text-transform:uppercase;border-radius:2px;flex-shrink:0;padding:2px 7px}.portrait{flex-shrink:0;width:160px;height:160px;position:relative}.portrait img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;filter:saturate(.95);border-radius:50%;width:100%;height:100%}.seal{background:var(--accent-ink);width:54px;height:54px;color:var(--paper);border-radius:8px;place-items:center;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:26px;font-weight:700;display:grid;position:absolute;bottom:-6px;right:-12px;transform:rotate(-6deg);box-shadow:inset 0 0 0 2px #ffffff40}.seal:before{content:"";border:1px solid #ffffff73;border-radius:4px;position:absolute;inset:3px}.section{border-bottom:1px solid var(--rule);padding:64px 0}.section:last-of-type{border-bottom:none}.section-label{letter-spacing:.3em;color:var(--muted);text-transform:uppercase;align-items:baseline;gap:14px;margin-bottom:36px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.section-label .no{color:var(--accent-ink);font-weight:600}.section-label h2{letter-spacing:.2em;color:var(--sumi);text-transform:none;margin:0;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:20px;font-weight:600}.section-label .rule{background:var(--rule);flex:1;height:1px}.prose{font-size:var(--fs-base);color:var(--sumi-soft);max-width:56ch;margin:0;line-height:2.05}.prose b{color:var(--sumi);font-weight:600}.prose .under{background:linear-gradient(transparent 70%,color-mix(in oklab,var(--accent) 30%,transparent) 70%);padding:0 2px}.tags{flex-wrap:wrap;gap:10px;display:flex}.tag{border:1px solid var(--line-strong);color:var(--sumi-soft);background:var(--paper);cursor:default;letter-spacing:.02em;border-radius:2px;padding:6px 16px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:14px;transition:all .25s}.tag:hover{border-color:var(--accent);transform:translateY(-2px)}.tag.hl,.tag:hover{color:var(--accent-ink)}.tag.hl{border-color:color-mix(in oklab,var(--accent) 55%,var(--rule));background:color-mix(in oklab,var(--accent) 9%,transparent)}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px dashed var(--rule)}.list li:last-child{border-bottom:none}.list a{color:inherit;grid-template-columns:48px 1fr auto auto;align-items:baseline;gap:20px;padding:18px 4px;text-decoration:none;transition:all .35s;display:grid}.list a:hover{background:var(--paper-2);border-radius:4px;margin:0 -12px;padding-left:16px;padding-right:16px}.list .idx{color:var(--muted);letter-spacing:.15em;font-family:JetBrains Mono,monospace;font-size:11px}.list .label{color:var(--sumi);letter-spacing:.02em;overflow-wrap:anywhere;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:22px;font-weight:500}.list .label .jp{color:var(--muted);letter-spacing:.25em;margin-left:10px;font-size:12px;font-weight:400}.list .value{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--ai-ink);letter-spacing:.02em}.list .go{color:var(--muted);font-family:Shippori Mincho,serif;font-size:18px;transition:all .3s}.list a:hover .go{color:var(--accent-ink);transform:translate(4px)}.posts .list a{grid-template-columns:48px 1fr auto auto;align-items:start}.post-main{flex-direction:column;gap:6px;min-width:0;display:flex}.post-desc{color:var(--muted);letter-spacing:0;overflow-wrap:anywhere;font-family:Noto Serif SC,serif;font-size:13px;font-weight:400;line-height:1.7}.post-tags{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.post-tag{font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--accent-ink);border:1px solid color-mix(in oklab,var(--accent) 35%,var(--rule));border-radius:2px;padding:2px 8px}.posts .value{white-space:nowrap}.copy-toast{background:var(--sumi);color:var(--paper);letter-spacing:.2em;word-break:break-word;opacity:0;pointer-events:none;z-index:60;border-radius:2px;max-width:calc(100vw - 32px);padding:10px 22px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:13px;transition:all .35s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px)}.copy-toast.on{opacity:1;transform:translate(-50%)}.flip{letter-spacing:.2em;color:var(--muted);background:var(--paper);border:1px solid var(--line-strong);z-index:40;cursor:pointer;border-radius:999px;padding:8px 14px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:12px;transition:all .3s;position:fixed;top:24px;right:24px}.flip:hover{color:var(--accent-ink);border-color:var(--accent)}.tweaks{z-index:50;background:var(--paper);border:1px solid var(--line-strong);width:260px;box-shadow:var(--shadow-float);border-radius:2px;max-height:80dvh;padding:18px;font-family:Shippori Mincho,Noto Serif SC,serif;display:none;position:fixed;bottom:22px;right:22px;overflow:auto}.tweaks.show{display:block}.tweaks h3{letter-spacing:.3em;color:var(--accent-ink);justify-content:space-between;margin:0 0 14px;font-size:11px;display:flex}.tweaks h3,.tweaks label{text-transform:uppercase;font-family:JetBrains Mono,monospace}.tweaks label{font-size:var(--fs-2xs);color:var(--muted);letter-spacing:.2em;margin:14px 0 8px;display:block}.tweaks .row{gap:6px;display:flex}.tweaks .row.wrap{flex-wrap:wrap}.tweaks .row.wrap button{flex:0 0 calc(33.33% - 4px);min-width:0;padding:7px 4px;font-size:12px}.tweaks .row button{border:1px solid var(--line-strong);background:var(--paper);cursor:pointer;color:var(--sumi-soft);border-radius:2px;flex:1;padding:8px 10px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:13px;transition:all .2s}.tweaks .row button:hover{border-color:var(--sumi)}.tweaks .row button.active{background:var(--accent-ink);color:var(--paper);border-color:var(--accent-ink)}.foot-feed{color:var(--muted);border-bottom:1px solid #0000;text-decoration:none}.foot-feed:hover{color:var(--accent-ink);border-bottom-color:var(--accent)}@media (width<=900px){.hero-title{font-size:clamp(42px,8vw,80px)}.hero-note{margin-top:24px;font-size:12px}.tweaks{width:240px;bottom:16px;right:16px}.flip{padding:6px 12px;font-size:11px}}@media (width<=640px){.site-main{max-width:100%;padding:108px 20px 24px}.top{font-size:var(--fs-2xs);padding-bottom:28px}.hero{padding-bottom:48px}.hero-title{text-align:center;font-size:clamp(32px,10vw,52px);line-height:1.05}.hero-sub{letter-spacing:.25em;text-align:center;margin-bottom:32px;font-size:15px}.hero-body{text-align:center;grid-template-columns:1fr;justify-items:center;gap:24px}.hero-body p{font-size:var(--fs-base);max-width:100%;line-height:1.9}.portrait{width:100px;height:100px}.seal{width:44px;height:44px;font-size:22px;bottom:-4px;right:-8px}.hero-note{font-size:var(--fs-xs);flex-direction:column;align-items:flex-start;gap:8px;margin-top:28px;padding:10px 12px}.hero-note .badge{font-size:var(--fs-2xs);padding:2px 6px}.section{padding:36px 0}.section-label{flex-wrap:wrap;gap:8px;margin-bottom:20px}.section-label,.section-label .no{font-size:var(--fs-2xs)}.section-label h2{font-size:17px}.section-label .rule{display:none}.prose{font-size:var(--fs-base);line-height:1.95}.tags{gap:7px}.tag{padding:4px 10px;font-size:12px}.list a,.posts .list a{grid-template-columns:32px minmax(0,1fr) auto;grid-template-areas:"idx main go"".val val";gap:6px 12px;padding:14px 4px}.list .idx{font-size:var(--fs-2xs);grid-area:idx}.list .label,.list .post-main{grid-area:main}.list .go{grid-area:go}.list .go,.list .label{font-size:16px}.list .label .jp{margin:3px 0 0;font-size:11px;display:block}.list .value{font-size:var(--fs-2xs);grid-area:val;display:block}.post-desc{font-size:var(--fs-sm);line-height:1.65}.post-tag{padding:2px 6px}.flip,.post-tag{font-size:var(--fs-2xs)}.flip{letter-spacing:.15em;padding:5px 9px;top:14px;right:14px}.tweaks{width:calc(100% - 28px);max-height:70dvh;padding:16px;bottom:14px;right:14px}.tweaks h3{font-size:var(--fs-2xs);margin-bottom:12px}.tweaks label{font-size:var(--fs-2xs);margin:12px 0 6px}.tweaks .row button{padding:7px 8px;font-size:12px}.tweaks .row.wrap button{padding:6px 3px;font-size:11px}.spine,.spine-label{display:none}}body[data-density=loose] .site-main{padding-top:96px;padding-bottom:44px}body[data-density=loose] .section{padding:88px 0}body[data-density=tight] .site-main{padding-top:64px;padding-bottom:20px}body[data-density=tight] .section{padding:40px 0}.wb-corner{z-index:41;flex-direction:column;align-items:flex-end;gap:7px;max-width:calc(100vw - 48px);display:flex;position:fixed;top:24px;right:24px}.wb-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.wb-who{font-family:var(--font-serif);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--sumi-soft);white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding-right:2px;text-decoration:none;display:block;overflow:hidden}.wb-who:hover,.wb-who[aria-current=location],.wb-who[aria-current=page]{color:var(--accent-ink);text-decoration:underline}.wb-nav .flip{z-index:auto;position:static;top:auto;right:auto}.wb-nav .flip,.wb-pill{font-size:var(--fs-xs);letter-spacing:.16em;padding:7px 13px;line-height:1}.wb-pill{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--paper);color:var(--muted);font-family:var(--font-serif);white-space:nowrap;cursor:pointer;text-decoration:none;transition:all .25s;display:inline-block}.wb-pill:hover{color:var(--sumi);border-color:var(--sumi)}.wb-pill--go{color:var(--accent-ink);border-color:color-mix(in oklab,var(--accent) 50%,var(--line-strong));background:color-mix(in oklab,var(--accent) 6%,var(--paper))}.wb-pill--go:hover,.wb-pill[aria-current=location],.wb-pill[aria-current=page]{color:var(--paper);background:var(--accent-ink);border-color:var(--accent-ink)}.wb-nav .flip:focus-visible,.wb-pill:focus-visible,.wb-who:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.wb-pill--me{cursor:default;color:var(--sumi-soft);text-overflow:ellipsis;border-style:dashed;max-width:8em;overflow:hidden}.wb-pill--me:hover{color:var(--sumi-soft);border-color:var(--line-strong)}.wb-pill--btn{font-family:var(--font-serif)}@media (width<=640px){.wb-corner{gap:5px;max-width:calc(100vw - 32px);top:16px;right:16px}.wb-nav{gap:6px}.wb-nav .flip,.wb-pill{font-size:var(--fs-2xs);letter-spacing:.04em;padding:6px 8px}.wb-who{font-size:var(--fs-2xs);letter-spacing:.06em}.wb-pill--me{max-width:5.5em}}.list-kicker{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);text-transform:uppercase;align-items:center;gap:12px;display:flex}.list-kicker .dash{background:var(--muted-deco);width:24px;height:1px}.list-title{font-family:var(--font-serif);letter-spacing:.04em;color:var(--sumi);overflow-wrap:anywhere;margin:16px 0 0;font-size:clamp(24px,4.2vw,34px);font-weight:700;line-height:1.4}.list-title .thin{color:var(--muted);font-weight:400}.list-note{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.14em;color:var(--muted);margin:14px 0 0}.list-note .n{color:var(--ai-ink)}.list-tip{font-family:var(--font-body);font-size:var(--fs-sm);letter-spacing:.02em;line-height:1.9}.wb-list .list{margin-top:34px}.wb-list .list-empty{border:1px dashed var(--rule);border-radius:var(--radius);background:color-mix(in oklab,var(--sumi) 3%,transparent);color:var(--muted);margin:40px 0 0;padding:22px 20px;font-size:14px}.wb-list .list-empty a{color:var(--accent-ink);text-underline-offset:3px}.wb-list mark{color:inherit;border-radius:var(--radius-xs);background:linear-gradient(transparent 58%,color-mix(in oklab,var(--accent) 34%,transparent) 58%);padding:0 2px}.wb-search{align-items:stretch;gap:10px;max-width:34em;margin:22px 0 0;display:flex}.wb-search input[type=search]{min-width:0;font-family:var(--font-body);color:var(--sumi);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);flex:1;padding:10px 14px;font-size:14px;transition:border-color .25s}.wb-search input[type=search]:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.wb-search input[type=search]::placeholder{color:var(--muted)}.wb-search button{cursor:pointer;font-family:var(--font-serif);font-size:var(--fs-sm);letter-spacing:.2em;color:var(--paper);background:var(--accent-ink);border:1px solid var(--accent-ink);border-radius:var(--radius);padding:10px 20px;transition:opacity .25s}.wb-search button:hover{opacity:.85}.tag-cloud{flex-wrap:wrap;gap:10px;margin:24px 0 0;display:flex}.tag-cloud .tag{cursor:pointer;text-decoration:none}.tag-cloud .tag .tag-n{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);letter-spacing:.1em;margin-left:8px}.year-nav{flex-wrap:wrap;gap:8px;margin:24px 0 0;display:flex}.year-nav .year{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--sumi-soft);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);align-items:baseline;gap:7px;padding:5px 13px;text-decoration:none;transition:all .25s;display:inline-flex}.year-nav .year:hover{border-color:var(--accent);color:var(--accent-ink)}.year-nav .year.cur{color:var(--paper);background:var(--accent-ink);border-color:var(--accent-ink)}.year-nav .year .year-n{font-size:var(--fs-2xs);color:var(--muted)}.year-nav .year.cur .year-n{color:var(--paper)}.arc-group{margin-top:40px}.arc-month{font-family:var(--font-mono);font-weight:500;font-size:var(--fs-2xs);letter-spacing:.24em;color:var(--muted);align-items:baseline;gap:14px;margin:0;display:flex}.arc-month .arc-y{color:var(--accent-ink)}.arc-month .arc-m{font-family:var(--font-serif);font-size:var(--fs-base);letter-spacing:.16em;color:var(--sumi)}.arc-month .arc-rule{background:var(--rule);flex:1;height:1px}.arc-group .list{margin-top:8px}.pager{border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-xs);justify-content:space-between;gap:12px;margin-top:44px;padding-top:22px}.pager,.pager .pg-nums{align-items:center;display:flex}.pager .pg-nums{flex-wrap:wrap;justify-content:center;gap:6px}.pager .pg{text-align:center;letter-spacing:.1em;min-width:30px;color:var(--sumi-soft);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);padding:6px 10px;text-decoration:none;transition:all .25s}.pager a.pg:hover{border-color:var(--accent);color:var(--accent-ink)}.pager .pg-cur{color:var(--paper);background:var(--accent-ink);border-color:var(--accent-ink)}.pager .pg-off{color:var(--muted);opacity:.45}.pager .pg-gap{color:var(--muted);padding:0 2px}.list-links{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.16em;color:var(--muted);margin-top:38px}.list-links a{color:var(--muted);text-decoration:none;transition:color .25s}.list-links a:hover{color:var(--accent-ink)}.list-links .sep{opacity:.5;margin:0 8px}@media (width<=640px){.list-kicker{letter-spacing:.22em}.list-title{font-size:clamp(20px,6.2vw,26px)}.wb-list .list{margin-top:24px}.wb-search{flex-direction:column;gap:8px}.wb-search button{padding:9px 16px}.arc-group{margin-top:28px}.pager{flex-direction:column;gap:14px;margin-top:32px}.pager .pg{min-width:26px;padding:5px 9px}.list-links{text-align:center}}.post-page{--post-col:704px;--toc-gap:16px;--toc-w:208px;width:100%;max-width:var(--post-col);margin:0 auto;padding:56px clamp(20px,5vw,48px) 96px}.post-page [hidden]{display:none!important}.post-back{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--muted)}.post-back a{color:var(--muted);text-decoration:none}.post-back a:hover{color:var(--accent-ink)}.post-draft{border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;background:color-mix(in oklab,var(--accent) 7%,transparent);color:var(--sumi-soft);font-size:var(--fs-sm);margin:18px 0 0;padding:10px 14px;line-height:1.7}.post-draft strong{color:var(--accent-ink)}.post-draft.is-hidden{border-left-color:var(--ai);background:color-mix(in oklab,var(--ai) 7%,transparent)}.post-draft.is-hidden strong{color:var(--ai-ink)}@keyframes breathe{0%,to{opacity:.25}50%{opacity:1}}.post-kicker{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);text-transform:uppercase;align-items:center;gap:12px;margin-top:44px;display:flex}.post-kicker .dash{background:var(--muted-deco);width:24px;height:1px}.post-head{border-bottom:1px solid var(--rule);padding-bottom:26px}.post-title{font-family:var(--font-serif);letter-spacing:.02em;color:var(--sumi);margin:18px 0 0;font-size:clamp(26px,4.6vw,38px);font-weight:700;line-height:1.4}.post-summary{max-width:40em;font-family:var(--font-body);color:var(--muted);margin:14px 0 0;font-size:14px;line-height:1.9}.post-meta{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.14em;color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:22px;display:flex}.post-meta .m-date{color:var(--ai-ink)}.post-meta .post-tags{margin:0}.post-lock{border:1px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in oklab,var(--sumi) 4%,var(--paper));margin-top:40px;padding:clamp(20px,5vw,30px)}.post-lock-title{font-family:var(--font-serif);font-size:var(--fs-lg);letter-spacing:.04em;color:var(--sumi);margin:0;font-weight:600;line-height:1.5}.post-lock-note{max-width:34em;font-family:var(--font-body);color:var(--muted);margin:10px 0 0;font-size:14px;line-height:1.9}.post-lock-form{align-items:stretch;gap:var(--space-3);margin-top:18px;display:flex}.post-lock-form .wb-input{flex:auto;min-width:0}.post-lock-form .wb-btn{flex:none}.post-body{font-size:var(--fs-base);color:var(--sumi-soft);overflow-wrap:break-word;margin-top:40px;line-height:1.9}.post-body>:first-child{margin-top:0}.post-body p{margin:1.25em 0}.post-body b,.post-body strong{color:var(--sumi);font-weight:600}.post-body em,.post-body i{font-style:italic}.post-body del,.post-body s{color:var(--muted)}.post-body ins,.post-body u{text-underline-offset:2px;text-decoration:underline}.post-body mark{color:inherit;background:linear-gradient(transparent 70%,color-mix(in oklab,var(--accent) 30%,transparent) 70%);padding:0 2px}.post-body h2,.post-body h3,.post-body h4,.post-body h5,.post-body h6{font-family:var(--font-serif);color:var(--sumi);font-weight:600;line-height:1.5}.post-body h2{border-bottom:1px solid var(--rule);font-size:var(--fs-xl);letter-spacing:.08em;margin:52px 0 18px;padding:0 0 10px 16px;position:relative}.post-body h2:before{content:"";border-radius:var(--radius-xs);background:var(--accent);width:6px;height:6px;position:absolute;top:.62em;left:0}.post-body h3{font-size:var(--fs-lg);letter-spacing:.06em;margin:38px 0 14px}.post-body h4{font-size:var(--fs-base);margin:30px 0 12px}.post-body h4,.post-body h5,.post-body h6{letter-spacing:.06em;color:var(--sumi-soft)}.post-body h5,.post-body h6{font-size:var(--fs-sm);margin:26px 0 10px}.post-body ol,.post-body ul{margin:1.25em 0;padding-left:1.5em}.post-body li,.post-body li>ol,.post-body li>ul{margin:.45em 0}.post-body ul>li::marker{color:var(--accent-ink)}.post-body ol>li::marker{color:var(--muted);font-family:var(--font-mono);font-size:.9em}.post-body blockquote{border-left:2px solid var(--accent);background:color-mix(in oklab,var(--accent) 4%,transparent);color:var(--muted);margin:1.8em 0;padding:2px 0 2px 18px}.post-body blockquote p{margin:.7em 0}.post-body pre{background:color-mix(in oklab,var(--sumi) 4%,var(--paper));border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--sumi);margin:1.8em 0;padding:16px 18px;line-height:1.75;overflow-x:auto}.post-body pre code{font-size:inherit;color:inherit;white-space:pre;background:0 0;border:0;padding:0}.code-block{position:relative}.code-copy{min-height:var(--ctl-h-sm);padding:0 var(--ctl-px-sm);border-radius:var(--radius);background:color-mix(in oklab,var(--sumi) 6%,var(--paper));color:var(--muted);font-family:var(--font-sans);font-size:var(--fs-xs);cursor:pointer;opacity:.55;transition:opacity var(--dur-1) var(--ease),color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease);border:1px solid #0000;align-items:center;line-height:1;display:inline-flex;position:absolute;top:8px;right:8px}.code-block:hover .code-copy{opacity:1}.code-copy:hover{color:var(--sumi);border-color:var(--rule)}.code-copy:focus-visible{box-shadow:var(--ring);opacity:1;color:var(--sumi);border-color:var(--rule);outline:none}.post-body code{font-family:var(--font-mono);border-radius:var(--radius);color:var(--sumi);background:color-mix(in oklab,var(--sumi) 6%,transparent);border:1px solid color-mix(in oklab,var(--rule) 70%,transparent);padding:2px 6px;font-size:.88em}.post-body table{border-collapse:collapse;width:max-content;max-width:100%;font-size:var(--fs-sm);margin:1.8em 0;display:block;overflow-x:auto}.post-body td,.post-body th{text-align:left;border-bottom:1px solid var(--rule);padding:9px 14px}.post-body thead th{color:var(--sumi);background:color-mix(in oklab,var(--sumi) 4%,transparent);border-bottom:1px solid color-mix(in oklab,var(--sumi) 40%,var(--rule));font-weight:600}.post-body tbody tr:last-child td{border-bottom:none}.post-body a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.post-body a:hover{color:var(--sumi)}.post-body img{border-radius:var(--radius);border:6px solid color-mix(in oklab,var(--paper) 88%,#fff);outline:1px solid var(--rule);outline-offset:-7px;background:var(--paper-2);max-width:100%;height:auto;margin:2em auto;display:block}.post-body figure{text-align:center;margin:2.4em 0}.post-body figure img{margin-bottom:0}.post-body figcaption{font-family:var(--font-serif);font-size:var(--fs-sm);color:var(--sumi-soft);border-left:1px solid var(--muted-deco);text-align:left;max-width:90%;margin-top:10px;padding:0 0 0 12px;line-height:1.7;display:inline-block}.post-body img{cursor:zoom-in;transition:border-color .15s}.post-body img:hover{border-color:color-mix(in oklab,var(--accent) 24%,#fff)}.post-body hr{background:linear-gradient(to right,transparent,var(--rule) 18%,var(--rule) 82%,transparent);border:0;height:1px;margin:3.2em 0}.post-body dl{margin:1.25em 0}.post-body dt{color:var(--sumi);margin-top:1.1em;font-weight:600}.post-body dd{margin:.4em 0 0 1.4em}.post-page footer{border-top:1px solid var(--rule);margin-top:76px}@media (width<=640px){.post-page{padding:36px 18px 64px}.post-kicker{letter-spacing:.22em;margin-top:32px}.post-title{font-size:clamp(22px,6.4vw,28px);line-height:1.45}.post-summary{font-size:var(--fs-sm)}.post-meta{gap:8px 14px}.post-body{font-size:var(--fs-base);margin-top:30px;line-height:1.85}.post-body h2{font-size:var(--fs-xl);margin:40px 0 14px}.post-body h3{font-size:var(--fs-lg);margin:30px 0 12px}.post-body h4{font-size:var(--fs-base);margin:24px 0 10px}.post-body pre{padding:12px 14px}.post-body table{font-size:var(--fs-sm)}.post-body td,.post-body th{padding:7px 10px}.post-page footer{margin-top:52px}}.post-toc{border:1px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in oklab,var(--sumi) 3%,transparent);margin:34px 0 0;padding:13px 16px;position:relative}.post-toc-cb{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.post-toc-head{cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.24em;color:var(--muted);text-transform:uppercase;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.post-toc-cb:focus-visible+.post-toc-head{outline:2px solid var(--accent);outline-offset:4px}.post-toc-head:hover,.post-toc-n{color:var(--accent-ink)}.post-toc-n{font-size:var(--fs-2xs);letter-spacing:.1em;border:1px solid color-mix(in oklab,var(--accent) 40%,var(--rule));border-radius:var(--radius);padding:1px 6px}.post-toc-caret{font-size:var(--fs-base);margin-left:auto;line-height:1;transition:transform .25s}.post-toc-cb:checked~.post-toc-head .post-toc-caret{transform:rotate(90deg)}.post-toc-list{margin:12px 0 0;padding:0;list-style:none;display:none}.post-toc-cb:checked~.post-toc-list{display:block}.post-toc-list a{border-left:1px solid var(--rule);font-family:var(--font-body);font-size:var(--fs-sm);letter-spacing:.01em;color:var(--muted);overflow-wrap:anywhere;padding:5px 0 5px 12px;line-height:1.6;text-decoration:none;transition:color .2s,border-color .2s;display:block}.post-toc-list a:hover{color:var(--accent-ink);border-left-color:var(--accent)}.post-toc-list li.lv3 a{font-size:var(--fs-xs);padding-left:24px}@media (width>=1240px){.post-toc{top:128px;left:calc(50% + var(--post-col,704px)/2 + var(--toc-gap,16px));width:var(--toc-w,208px);z-index:4;background:0 0;border:0;max-height:calc(100dvh - 250px);margin:0;padding:0;position:fixed;overflow-y:auto}.post-toc-head{cursor:default;pointer-events:none}.post-toc-caret{display:none}.post-toc-list{display:block}}.post-meta .m-read{color:var(--sumi-soft)}.post-nav{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:14px;margin-top:60px;padding-top:26px;display:grid}.pn{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);flex-direction:column;gap:7px;padding:14px 16px;text-decoration:none;transition:all .28s;display:flex}a.pn:hover{border-color:var(--accent);background:var(--paper-2)}.pn-next{text-align:right}.pn-k{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.2em;color:var(--muted)}a.pn:hover .pn-k{color:var(--accent-ink)}.pn-t{font-family:var(--font-serif);font-size:var(--fs-base);color:var(--sumi);overflow-wrap:anywhere;line-height:1.5}.pn-d{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--ai-ink)}.pn-off{opacity:.55;border-style:dashed}.pn-off .pn-t{font-size:var(--fs-sm);color:var(--muted)}.post-related{border-top:1px solid var(--rule);margin-top:56px;padding-top:26px}.post-related .post-kicker{margin-top:0}.rel-list{margin:16px 0 0;padding:0;list-style:none}.rel-list li{border-bottom:1px dashed var(--rule)}.rel-list li:last-child{border-bottom:none}.rel-list a{grid-template-columns:1fr auto auto;align-items:baseline;gap:14px;padding:12px 4px;text-decoration:none;transition:all .3s;display:grid}.rel-list a:hover{background:var(--paper-2);border-radius:3px;margin:0 -8px;padding-left:12px;padding-right:12px}.rel-t{font-family:var(--font-serif);font-size:var(--fs-base);color:var(--sumi);overflow-wrap:anywhere}.rel-list a:hover .rel-t{color:var(--accent-ink)}.rel-tags{gap:6px;display:flex}.rel-d{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--muted);white-space:nowrap}@media (width<=640px){.post-toc{margin-top:26px;padding:12px 14px}.post-toc-head{letter-spacing:.18em}.post-lock{margin-top:30px;padding:18px 16px}.post-lock-title{font-size:var(--fs-base)}.post-nav{grid-template-columns:1fr;gap:10px;margin-top:44px}.pn-next{text-align:left}.pn-t{font-size:14px}.post-related{margin-top:42px}.rel-list a{grid-template-columns:1fr auto;gap:10px;padding:11px 2px}.rel-tags{display:none}}.post-body pre.hl{--hl-anchor-num:#7a5ea8;--hl-anchor-name:#35786a;--hl-anchor-esc:#a2761f;--hl-anchor-add:#4a7f4a;--hl-anchor-del:#a3453a;--hl-keyword:color-mix(in oklab, var(--ai) 74%, var(--sumi));--hl-string:color-mix(in oklab, var(--shu-ink) 74%, var(--sumi));--hl-comment:color-mix(in oklab, var(--muted) 74%, var(--sumi));--hl-number:color-mix(in oklab, var(--hl-anchor-num) 74%, var(--sumi));--hl-name:color-mix(in oklab, var(--hl-anchor-name) 74%, var(--sumi));--hl-escape:color-mix(in oklab, var(--hl-anchor-esc) 74%, var(--sumi));--hl-added:color-mix(in oklab, var(--hl-anchor-add) 74%, var(--sumi));--hl-deleted:color-mix(in oklab, var(--hl-anchor-del) 74%, var(--sumi));--hl-punct:var(--sumi-soft)}body[data-palette=sumi] .post-body pre.hl{--hl-anchor-num:#b9a2e0;--hl-anchor-name:#79c3ae;--hl-anchor-esc:#dcae64;--hl-anchor-add:#8cc98c;--hl-anchor-del:#e58a80}.post-body pre.hl .hl-c,.post-body pre.hl .hl-c1,.post-body pre.hl .hl-ch,.post-body pre.hl .hl-cm,.post-body pre.hl .hl-cs{color:var(--hl-comment);font-style:italic}.post-body pre.hl .hl-k,.post-body pre.hl .hl-kd,.post-body pre.hl .hl-kn,.post-body pre.hl .hl-kp,.post-body pre.hl .hl-kr,.post-body pre.hl .hl-nt,.post-body pre.hl .hl-ow{color:var(--hl-keyword);font-weight:500}.post-body pre.hl .hl-dl,.post-body pre.hl .hl-s,.post-body pre.hl .hl-s1,.post-body pre.hl .hl-s2,.post-body pre.hl .hl-sa,.post-body pre.hl .hl-sb,.post-body pre.hl .hl-sc,.post-body pre.hl .hl-sd,.post-body pre.hl .hl-sh,.post-body pre.hl .hl-ss,.post-body pre.hl .hl-sx{color:var(--hl-string)}.post-body pre.hl .hl-il,.post-body pre.hl .hl-kc,.post-body pre.hl .hl-ld,.post-body pre.hl .hl-m,.post-body pre.hl .hl-mb,.post-body pre.hl .hl-mf,.post-body pre.hl .hl-mh,.post-body pre.hl .hl-mi,.post-body pre.hl .hl-mo,.post-body pre.hl .hl-no{color:var(--hl-number)}.post-body pre.hl .hl-bp,.post-body pre.hl .hl-fm,.post-body pre.hl .hl-kt,.post-body pre.hl .hl-na,.post-body pre.hl .hl-nb,.post-body pre.hl .hl-nc,.post-body pre.hl .hl-nd,.post-body pre.hl .hl-ne,.post-body pre.hl .hl-nf,.post-body pre.hl .hl-nn,.post-body pre.hl .hl-py{color:var(--hl-name)}.post-body pre.hl .hl-cp,.post-body pre.hl .hl-cpf,.post-body pre.hl .hl-esc,.post-body pre.hl .hl-ni,.post-body pre.hl .hl-se,.post-body pre.hl .hl-si,.post-body pre.hl .hl-sr{color:var(--hl-escape)}.post-body pre.hl .hl-o,.post-body pre.hl .hl-p,.post-body pre.hl .hl-pm{color:var(--hl-punct)}.post-body pre.hl .hl-gi{color:var(--hl-added);background:color-mix(in oklab,var(--hl-anchor-add) 12%,transparent)}.post-body pre.hl .hl-gd{color:var(--hl-deleted);background:color-mix(in oklab,var(--hl-anchor-del) 12%,transparent)}.post-body pre.hl .hl-gh,.post-body pre.hl .hl-gu{color:var(--sumi);font-weight:600}.post-body pre.hl .hl-gp{color:var(--hl-comment)}.post-body pre.hl .hl-go{color:var(--hl-punct)}.post-body pre.hl .hl-ge{font-style:italic}.post-body pre.hl .hl-gs{font-weight:600}.post-body pre.hl .hl-ges{font-style:italic;font-weight:600}.post-body pre.hl .hl-err,.post-body pre.hl .hl-gr,.post-body pre.hl .hl-gt{color:var(--hl-deleted)}.post-body pre.code-frame{padding:0}.post-body pre.code-frame>code{min-width:max-content;padding:14px 18px;display:block}.post-body pre.code-numbered>code{padding-inline:0}.post-body .code-meta{border-bottom:1px solid var(--rule);background:var(--paper);min-height:42px;color:var(--sumi-soft);font-size:var(--fs-xs);white-space:normal;overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:6px 16px;padding:10px 76px 10px 18px;line-height:1.7;display:flex;position:sticky;left:0}.post-body .code-filename{min-width:0}.post-body .code-language{color:var(--muted);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase}.post-body .code-line{box-sizing:border-box;vertical-align:top;min-width:100%;padding:0 18px 0 5.5em;display:inline-block;position:relative}.post-body .code-line:before{content:attr(data-line);width:4em;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;padding-right:1em;position:absolute;left:0}.post-body .code-line-marked{background:var(--paper);box-shadow:inset 3px 0 0 var(--accent-ink)}.post-body .code-line-marked:before{color:var(--sumi);font-weight:700}.post-body .code-language,.post-body .code-meta{-webkit-user-select:none;user-select:none}@media (width<=640px){.post-body pre.code-frame{padding:0}.post-body .code-meta{padding-left:12px}.post-body .code-line{padding-right:12px}}@media print{.post-body .code-line,.post-body pre.code-frame>code{white-space:pre-wrap;min-width:0}.post-body .code-line{overflow-wrap:anywhere;width:100%}.post-body .code-meta{padding-right:18px;position:static}.post-body .code-line-marked{border-left:2px solid}}.love-wrap [hidden],.wb-cmt [hidden]{display:none!important}.cmt-post{border:1px dashed color-mix(in oklab,var(--accent) 34%,var(--rule));background:color-mix(in oklab,var(--accent) 3%,transparent);border-radius:2px;margin-bottom:6px;padding:18px}.cmt-input{box-sizing:border-box;resize:vertical;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);width:100%;min-height:78px;max-height:320px;color:var(--sumi);font-family:inherit;font-size:var(--fs-base);padding:11px 12px;line-height:1.8}.cmt-input:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.cmt-post-foot{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:10px}.cmt-foot-right,.cmt-post-foot{align-items:center;display:flex}.cmt-foot-right{gap:12px;margin-left:auto}.cmt-as,.cmt-counter{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.04em;color:var(--muted)}.cmt-as b{color:var(--accent-ink);font-weight:500}.cmt-nick{align-items:center;gap:8px;display:flex}.cmt-nick label{letter-spacing:.16em;color:var(--muted);font-family:Shippori Mincho,Noto Serif SC,serif;font-size:12px}.cmt-nick input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);width:9em;color:var(--sumi);padding:5px 8px;font-family:inherit;font-size:12px}.cmt-nick input:focus{border-color:var(--accent);outline:none}.cmt-send{border:1px solid var(--sumi);background:var(--sumi);color:var(--paper);letter-spacing:.14em;cursor:pointer;border-radius:2px;flex:none;padding:8px 18px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:13px;transition:opacity .2s}.cmt-send:hover:not(:disabled){opacity:.84}.cmt-send:disabled{opacity:.38;cursor:not-allowed}.cmt-tip{font-size:var(--fs-sm);color:var(--muted);margin-top:9px;line-height:1.8}.cmt-tip.warn{color:var(--shu-ink)}.cmt-tip a{color:var(--accent-ink)}.cmt-list{margin-top:6px}.cmt-item{border-bottom:1px dashed var(--rule);padding:16px 2px}.cmt-item:last-child{border-bottom:none}.cmt-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.cmt-who{color:var(--sumi);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;max-width:14em;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:14px;overflow:hidden}.cmt-who.guest{color:var(--muted)}.cmt-seal{border:1px solid color-mix(in oklab,var(--accent) 45%,var(--rule));font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);color:var(--accent-ink);vertical-align:1px;letter-spacing:.06em;border-radius:1px;margin-left:5px;padding:0 3px;display:inline-block}.cmt-seal.member{border-color:var(--rule);color:var(--muted)}.cmt-time{font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);color:var(--muted);opacity:.8}.cmt-hidden-flag{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--shu-ink)}.cmt-body{font-size:var(--fs-base);color:var(--sumi-soft);white-space:pre-wrap;word-break:break-word;margin-top:6px;line-height:1.9}.cmt-item.is-hidden .cmt-body{opacity:.55;text-decoration:line-through}.cmt-ops{margin-top:8px}.cmt-reply-btn{cursor:pointer;font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);letter-spacing:.14em;color:var(--muted);text-transform:uppercase;background:0 0;border:0;padding:0}.cmt-reply-btn:hover{color:var(--accent-ink)}.cmt-kids{border-left:2px solid color-mix(in oklab,var(--accent) 22%,var(--rule));margin:10px 0 0;padding-left:14px}.cmt-kids .cmt-item{border-bottom:1px dotted var(--rule);padding:12px 2px}.cmt-kids .cmt-item:last-child{border-bottom:none}.cmt-kids .cmt-body{font-size:14px}.cmt-kids .cmt-post{margin-top:10px;padding:14px}.cmt-more-wrap,.cmt-state{padding:14px 2px}.cmt-state{color:var(--muted);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:11px}.cmt-state.warn{color:var(--shu-ink)}.cmt-btn{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);color:var(--muted);letter-spacing:.1em;cursor:pointer;padding:6px 14px;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:12px;transition:all .2s}.cmt-btn:hover:not(:disabled){border-color:var(--sumi);color:var(--sumi)}.cmt-btn:disabled{opacity:.45;cursor:not-allowed}.love-wrap{align-items:center;gap:16px;display:flex}.love-btn{border:1px solid color-mix(in oklab,var(--accent) 48%,var(--rule));background:color-mix(in oklab,var(--accent) 9%,transparent);width:60px;height:60px;color:var(--accent-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:8px;flex:none;place-items:center;transition:background .2s,box-shadow .2s,transform .12s ease-out;display:grid;position:relative;transform:rotate(-4deg)}.love-btn:before{content:"";border:1px solid color-mix(in oklab,var(--accent) 30%,transparent);pointer-events:none;border-radius:4px;position:absolute;inset:4px}.love-btn:hover{background:color-mix(in oklab,var(--accent) 18%,transparent)}.love-btn:focus-visible{box-shadow:var(--ring);outline:none}.love-btn:active{transform:rotate(-4deg)scale(.9)}.love-seal{-webkit-user-select:none;user-select:none;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:26px;font-weight:700;line-height:1}.love-btn.hit{animation:.24s ease-out loveStamp}@keyframes loveStamp{0%{transform:rotate(-4deg)scale(.9)}55%{transform:rotate(-4deg)scale(1.09)}to{transform:rotate(-4deg)scale(1)}}.love-pop{color:var(--accent-ink);pointer-events:none;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:12px;animation:.85s ease-out forwards lovePop;position:absolute;top:-4px;left:50%}@keyframes lovePop{0%{opacity:0;transform:translate(-50%,4px)scale(.85)}22%{opacity:1;transform:translate(-50%,-6px)scale(1)}to{opacity:0;transform:translate(-50%,-38px)scale(1)}}.love-num{align-items:baseline;gap:4px;display:flex}.love-count{font-variant-numeric:tabular-nums;color:var(--sumi);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:24px;display:inline-block}.love-count.bump{animation:.2s ease-out loveBump}@keyframes loveBump{50%{color:var(--accent-ink);transform:translateY(-4px)}}.love-unit{color:var(--muted);letter-spacing:.1em;font-family:Shippori Mincho,Noto Serif SC,serif;font-size:12px}.love-say{flex-direction:column;gap:2px;margin-top:2px;display:flex}.love-title{font-family:JetBrains Mono,monospace;font-size:var(--fs-2xs);letter-spacing:.22em;color:var(--muted);text-transform:uppercase}.love-mine{color:var(--muted);font-family:Shippori Mincho,Noto Serif SC,serif;font-size:11.5px}.love-mine b{color:var(--accent-ink);font-weight:500}@media (width<=640px){.cmt-post{padding:14px}.cmt-post-foot{gap:8px}.cmt-foot-right{justify-content:space-between;width:100%;margin-left:0}.cmt-who{max-width:9em}.cmt-kids{padding-left:10px}.love-btn{width:52px;height:52px}.love-seal{font-size:22px}.love-count{font-size:20px}}@media (prefers-reduced-motion:reduce){.love-btn,.love-btn.hit,.love-count.bump,.love-pop{transition:none!important;animation:none!important}.love-pop{display:none}}.gb-board,.gb-list-label{margin-top:var(--space-8)}.gb-form{padding:var(--space-6);border:1px dashed color-mix(in oklab,var(--accent) 34%,var(--rule));border-radius:var(--radius);background:color-mix(in oklab,var(--accent) 3%,transparent)}.gb-as{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.04em;color:var(--muted);margin:0}.gb-as b{color:var(--accent-ink);font-weight:500}.gb-ids{gap:0 var(--space-5);flex-wrap:wrap;display:flex}.gb-ids>.wb-field{flex:14em;min-width:0}.gb-form textarea.wb-textarea{font-family:var(--font-body);font-size:var(--fs-base)}.gb-form-foot{justify-content:flex-end;align-items:center;gap:var(--space-4);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.gb-counter{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.04em;color:var(--muted);font-variant-numeric:tabular-nums;margin-right:auto}.gb-items{margin:0;padding:0;list-style:none}.gb-item{padding:var(--space-6) var(--space-1);border-bottom:1px dashed var(--rule)}.gb-item:last-child{border-bottom:none}.gb-item.is-focused{outline:2px solid var(--accent-ink);outline-offset:var(--space-2);background:color-mix(in oklab,var(--accent) 6%,transparent);scroll-margin-top:5rem}.gb-head{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.gb-who{font-family:var(--font-serif);font-size:var(--fs-base);letter-spacing:.02em;color:var(--sumi);text-overflow:ellipsis;white-space:nowrap;max-width:16em;overflow:hidden}.gb-who.guest{color:var(--muted)}.gb-seal{border:1px solid color-mix(in oklab,var(--accent) 45%,var(--rule));border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.06em;color:var(--accent-ink);padding:0 3px;display:inline-block}.gb-seal.member{border-color:var(--rule);color:var(--muted)}.gb-time{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);opacity:.8}.gb-body{margin:var(--space-2) 0 0;font-size:var(--fs-base);color:var(--sumi-soft);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.gb-item.is-hidden .gb-body{opacity:.55;text-decoration:line-through}.gb-item.is-pending{padding-left:var(--space-4);border-left:2px dashed var(--warning-line)}.gb-reply{margin:var(--space-5) 0 0 var(--space-5);padding:var(--space-4) var(--space-5);border-left:2px solid color-mix(in oklab,var(--accent) 45%,var(--rule));border-radius:0 var(--radius) var(--radius) 0;background:var(--paper-2)}.gb-reply-head{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.gb-reply-who{font-family:var(--font-serif);font-size:var(--fs-sm);letter-spacing:.14em;color:var(--accent-ink)}.gb-reply .gb-body{color:var(--sumi)}.gb-empty{margin:var(--space-7) 0 0;padding:var(--space-6);border:1px dashed var(--rule);border-radius:var(--radius);background:color-mix(in oklab,var(--sumi) 3%,transparent);font-size:var(--fs-sm);color:var(--muted)}@media (width<=640px){.gb-form{padding:var(--space-5)}.gb-item{padding:var(--space-5) var(--space-1)}.gb-who{max-width:9em}.gb-reply{margin-left:var(--space-3);padding:var(--space-4)}}.wb-widget{z-index:45;font-family:var(--font-serif);flex-direction:column;align-items:flex-end;gap:10px;transition:opacity .2s;display:flex;position:fixed;bottom:22px;right:22px}.wb-widget.wbw-away{opacity:0;pointer-events:none}.wbw-dock{flex-direction:column;gap:8px;display:flex}.wbw-open .wbw-dock{flex-direction:row;align-items:center}.wbw-btn{width:42px;height:42px;font-family:inherit;font-size:var(--fs-base);letter-spacing:0;color:var(--sumi-soft);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:color .25s,border-color .25s,transform .25s;display:flex}.wbw-btn:hover{color:var(--accent-ink);border-color:var(--accent)}.wbw-btn[aria-expanded=true]{color:var(--paper);background:var(--accent-ink);border-color:var(--accent-ink)}.wbw-btn .wbw-dot{background:var(--shu);border-radius:50%;width:5px;height:5px;margin:-14px 0 0 20px;position:absolute}.wb-widget .love-wrap{align-items:center;gap:8px}.wb-widget .love-btn{border-radius:6px;width:40px;height:40px}.wb-widget .love-seal{font-size:17px}.wb-widget .love-side{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);flex-direction:column;gap:1px;padding:4px 9px;display:flex}.wb-widget .love-num{gap:3px}.wb-widget .love-count{letter-spacing:0;font-size:17px}.wb-widget .love-unit{font-size:var(--fs-2xs);letter-spacing:.06em}.wb-widget .love-say{margin:0}.wb-widget .love-title{display:none}.wb-widget .love-mine{font-size:var(--fs-2xs);line-height:1.3}.wbw-panel[hidden]{display:none}.wbw-panel{--fs-base:.8125rem;--fs-sm:.75rem;--fs-xs:.6875rem;--fs-2xs:.625rem;--ctl-h-sm:30px;--ctl-px-sm:10px;width:min(480px,100vw - 44px);min-width:0;height:min(660px,100dvh - 110px);font-size:var(--fs-base);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-float);flex-direction:column;line-height:1.6;display:flex;overflow:hidden}.wbw-panel-head{border-bottom:1px solid var(--rule);background:var(--paper-2);flex:none;align-items:center;gap:10px;padding:12px 14px;display:flex}.wbw-panel-seal{border:1px solid var(--accent-ink);border-radius:var(--radius);width:30px;height:34px;color:var(--accent-ink);flex:none;place-items:center;font-size:.9375rem;line-height:1;display:grid}.wbw-panel-heading{flex-direction:column;flex:1;gap:1px;min-width:0;line-height:1.3;display:flex}.wbw-panel-t{letter-spacing:.12em;color:var(--sumi);font-size:.875rem;font-weight:600}.wbw-panel-sub{font-size:var(--fs-2xs);color:var(--muted);letter-spacing:.12em}.wbw-full-link,.wbw-icon{min-width:34px;min-height:34px;font-family:inherit;font-size:var(--fs-xs);color:var(--sumi-soft);border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;text-decoration:none;transition:color .2s,background .2s;display:flex}.wbw-full-link{border-color:var(--rule);gap:5px;padding:0 8px}.wbw-full-link svg,.wbw-icon svg{flex:none;width:17px;height:17px}.wbw-full-link:hover,.wbw-icon:hover{color:var(--accent-ink);background:var(--surface-hover)}.wbw-btn:focus-visible,.wbw-full-link:focus-visible,.wbw-icon:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.wbw-panel-body{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.wbw-panel-body iframe{border:0;width:100%;height:100%;display:block}@media (width<=900px){.wb-widget{bottom:18px;right:18px}}@media (width<=640px){.wb-widget{right:max(12px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));gap:8px}.wbw-btn{width:38px;height:38px;font-size:14px}.wb-widget .love-wrap{gap:6px}.wb-widget .love-btn{width:36px;height:36px}.wb-widget .love-seal{font-size:15px}.wb-widget .love-count{font-size:16px}.wbw-panel{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(68px + env(safe-area-inset-bottom));width:auto;height:min(660px,calc(100vh - 88px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));height:min(660px,calc(100dvh - 88px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));position:fixed}.wbw-panel-head{gap:8px;padding:10px 12px}}@media (width<=400px){.wb-widget .love-side{padding:3px 7px}.wb-widget .love-mine{display:none}}@media (height<=520px){.wbw-panel{height:calc(100vh - 88px - env(safe-area-inset-top) - env(safe-area-inset-bottom));height:calc(100dvh - 88px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.wb-widget{bottom:max(12px,env(safe-area-inset-bottom))}.wbw-panel-head{padding-top:7px;padding-bottom:7px}.wbw-panel-heading{flex-flow:wrap;align-items:baseline;gap:4px 8px}}@media (prefers-reduced-motion:reduce){.wbw-btn{transition:none}}.room-wrap{max-width:760px}.room-bar{border-bottom:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0 14px;display:flex}.room-dot{background:var(--muted);border-radius:50%;flex:none;width:7px;height:7px}.room-connection{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:inline-flex}.room-dot.on{background:#4a8f5e;box-shadow:0 0 0 3px oklab(59.1261% -.0905155 .0491027/.2)}.room-dot.off{background:var(--shu)}.room-me{color:var(--sumi-soft);margin-left:auto}.room-me b{color:var(--accent-ink);font-weight:500}.room-log{scrollbar-width:thin;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;gap:14px;height:min(58dvh,520px);padding:18px 2px 8px;display:flex;overflow-y:auto}.room-log>:first-child{margin-top:auto}.msg-row{grid-template-columns:6em 1fr;align-items:start;gap:0 12px;display:grid}.msg-row:hover .msg-meta{opacity:1}.msg-meta{opacity:.78;flex-direction:column;align-items:flex-end;gap:1px;padding-top:2px;transition:opacity .2s;display:flex}.msg-who{font-family:var(--font-serif);font-size:var(--fs-xs);letter-spacing:.04em;color:var(--muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.5;overflow:hidden}.is-member>.msg-meta>.msg-who{color:var(--sumi-soft)}.me>.msg-meta>.msg-who{color:var(--accent-ink)}.msg-who .seal-mini{border:1px solid color-mix(in oklab,var(--accent) 45%,var(--rule));border-radius:var(--radius-xs);color:var(--accent-ink);vertical-align:1px;margin-left:3px;padding:0 3px;display:inline-block}.msg-time,.msg-who .seal-mini{font-family:var(--font-mono);font-size:var(--fs-2xs)}.msg-time{color:var(--muted);opacity:.75;line-height:1.4}.msg-text{border-left:1px solid var(--rule);font-size:var(--fs-base);color:var(--sumi);white-space:pre-wrap;word-break:break-word;padding-left:12px;line-height:1.8}.me>.msg-text{border-left-color:color-mix(in oklab,var(--accent) 55%,var(--rule))}.msg-row.cont{margin-top:-8px}.msg-row.cont .msg-who{visibility:hidden}.sys-row{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);letter-spacing:.04em;align-items:center;gap:8px;margin-left:calc(6em + 12px);display:flex}.sys-row:before{content:"";background:var(--rule);flex:none;width:10px;height:1px}.sys-row:after{content:"";background:linear-gradient(to right,var(--rule),transparent);flex:1;height:1px}.sys-row.warn{color:var(--shu-ink)}.sys-row.warn:before{background:color-mix(in oklab,var(--shu) 50%,var(--rule))}.room-log{scrollbar-color:var(--line-strong) transparent}.room-log::-webkit-scrollbar{width:6px}.room-log::-webkit-scrollbar-track{background:0 0}.room-log::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--radius-pill)}.room-log::-webkit-scrollbar-thumb:hover{background:var(--muted)}.room-form{border-top:1px solid var(--rule);margin-top:12px;padding-top:14px}.room-input-row{align-items:flex-end;gap:10px;display:flex}.room-input{min-height:var(--ctl-h-lg);box-sizing:border-box;resize:none;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);max-height:120px;color:var(--sumi);font-family:inherit;font-size:var(--fs-base);flex:1;padding:11px 12px;line-height:1.6}.room-input:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.room-send{min-height:var(--ctl-h-lg);box-sizing:border-box;border:1px solid var(--sumi);border-radius:var(--radius);background:var(--sumi);color:var(--paper);font-family:var(--font-serif);font-size:var(--fs-sm);letter-spacing:.12em;cursor:pointer;flex:none;justify-content:center;align-items:center;padding:0 22px;transition:opacity .2s;display:inline-flex}.room-send:hover:not(:disabled){opacity:.84}.room-send:disabled{opacity:.4;cursor:not-allowed}.room-foot{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);justify-content:space-between;gap:10px;margin-top:8px;display:flex}.nick-set{align-items:center;gap:8px;display:flex}.nick-set input{background:var(--paper);width:8em;color:var(--sumi);font-size:var(--fs-sm);padding:4px 7px}.nick-set button,.nick-set input{border:1px solid var(--line-strong);border-radius:var(--radius);font-family:inherit}.nick-set button{color:var(--sumi-soft);font-size:var(--fs-xs);cursor:pointer;background:0 0;padding:4px 10px}.nick-set button:hover{border-color:var(--sumi)}@media (width<=640px){.room:not(.room-embed) .room-log{height:52dvh}.room-log{gap:12px}.msg-row{grid-template-columns:1fr;gap:3px}.msg-meta{flex-direction:row;align-items:baseline;gap:7px;padding-top:0}.msg-who{max-width:11em}.msg-time{margin-left:0}.msg-text{margin-left:1px;padding-left:10px}.msg-row.cont{margin-top:-9px}.msg-row.cont .msg-meta{display:none}.sys-row{margin-left:0}.room-send{padding:12px 16px}}.room-announcement,.room-options,.room-summary{border-bottom:1px solid var(--rule);flex:none;padding:8px 0}.room-announcement summary,.room-options summary,.room-summary summary{cursor:pointer;color:var(--sumi-soft);font-size:var(--fs-sm)}.room-options-body{gap:10px;max-height:36dvh;padding-top:10px;display:grid;overflow-y:auto}.room-catchup small,.room-options-body small{color:var(--muted);font-size:var(--fs-xs)}.room-catchup,.room-navigation,.room-preferences,.room-topic-search{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-topic-search input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);min-width:8em;color:var(--sumi);flex:1;padding:6px 8px}.room-topic-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.room-preferences label{align-items:center;gap:5px;display:inline-flex}.room-catchup,.room-navigation{font-size:var(--fs-xs);color:var(--muted);flex:none;padding-top:8px}.room-prose{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;line-height:1.65}.room-announcement .room-prose,.room-summary .room-prose{max-height:150px;overflow-y:auto}.room-unread-divider{border-top:1px solid var(--accent);color:var(--accent-ink);font-size:var(--fs-xs);padding-top:8px}.room-empty,.room-notice,.room-send-result{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.room-notice{flex:none;max-height:4.5em;margin:8px 0;overflow-y:auto}.room .msg-time{overflow-wrap:anywhere}.room-embed{flex-direction:column;flex:1;min-width:0;height:100%;min-height:0;display:flex}.room-embed .room-bar{flex:none;gap:6px 10px;padding:8px 16px;line-height:1.5}.room-embed .room-online{white-space:nowrap}.room-embed .room-me{overflow-wrap:anywhere;flex:1;min-width:0;margin-left:0}.room-embed .room-bar .wb-btn{letter-spacing:0;min-height:28px;margin-left:auto;padding:0 9px}.room-embed .room-context{border-bottom:1px solid var(--rule);overscroll-behavior:contain;scrollbar-width:thin;flex:none;min-width:0;min-height:0;max-height:30%;padding:10px 16px 0;display:block;overflow-y:auto}.room-embed .room-heading strong{color:var(--sumi);font-size:var(--fs-sm);overflow-wrap:anywhere;font-weight:600;display:block}.room-embed .room-heading .room-prose{color:var(--muted);font-size:var(--fs-xs);margin-top:3px}.room-embed .room-announcement,.room-embed .room-options,.room-embed .room-summary{border-bottom:0;padding:8px 0}.room-embed .room-announcement,.room-embed .room-summary{border-top:1px solid var(--rule)}.room-embed summary{font-size:var(--fs-xs);overflow-wrap:anywhere}.room-embed .room-options-body{gap:8px;padding:8px 0 4px}.room-embed .room-options-body,.room-embed .room-prose{max-height:none;overflow:visible}.room-embed .room-topic-search{gap:6px}.room-embed .room-topic-search input{width:100%;min-width:0;font-family:inherit;font-size:max(16px,var(--fs-xs));flex:130px}.room-embed .room-topic-list{gap:6px}.room-embed .room-topic-list li{min-width:0;max-width:100%}.room-embed .room-context .wb-btn{white-space:normal;overflow-wrap:anywhere;letter-spacing:0;max-width:100%}.room-embed .wb-pager{flex-wrap:wrap;gap:6px 10px;margin-top:2px}.room-embed .wb-pg-info{letter-spacing:0}.room-embed .room-preferences{font-size:var(--fs-xs);gap:8px 14px}.room-embed .room-conversation{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:1;min-width:0;min-height:0;padding:0 16px;display:flex;overflow-y:auto}.room-embed .room-conversation>:not(.room-log){flex:none}.room-embed .room-navigation{gap:6px;padding:9px 0}.room-embed .room-navigation .wb-btn{letter-spacing:0;padding:0 8px}.room-embed .room-navigation>span{margin-left:auto}.room-embed .room-catchup{max-height:120px;padding:0 0 8px;overflow-y:auto}.room-embed .wb-tip{margin-top:0;padding:7px 9px}.room-embed .room-log{border-top:1px solid var(--rule);flex:1;gap:12px;min-width:0;height:auto;min-height:96px;padding:10px 2px 14px}.room-embed .room-log:focus-visible{outline:1px solid var(--line-strong);outline-offset:-2px}.room-embed .room-log>*{flex:none}.room-embed .msg-row{grid-template-columns:minmax(0,1fr);gap:4px;min-width:0}.room-embed .msg-meta{opacity:1;flex-direction:row;align-items:baseline;gap:8px;padding-top:0}.room-embed .msg-who{text-align:left;white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%;overflow:visible}.room-embed .msg-time{opacity:1;white-space:nowrap;flex:none;margin-left:auto}.room-embed .msg-text{overflow-wrap:anywhere;margin-left:1px;padding-left:10px;line-height:1.65}.room-embed .msg-row.cont{margin-top:-6px}.room-embed .msg-row.cont .msg-meta{display:none}.room-embed .room-compose{border-top:1px solid var(--rule);background:var(--surface-hover);overscroll-behavior:contain;scrollbar-width:thin;max-height:240px;margin:0 -16px;padding:10px 16px 12px;overflow-y:auto}.room-embed .room-notice{overflow-wrap:anywhere;margin:0 0 8px}.room-embed .nick-set{min-width:0;font-size:var(--fs-xs);flex-wrap:wrap;margin-bottom:8px}.room-embed .nick-set input{min-width:5em;max-width:100%;font-size:max(16px,var(--fs-sm));flex:1}.room-embed .nick-set button{min-height:30px}.room-embed .room-form{border-top:0;margin:0;padding:0}.room-embed .room-input-row{gap:8px}.room-embed .room-input{min-width:0;max-height:96px;font-size:max(16px,var(--fs-base));padding:8px 10px;line-height:1.5}.room-embed .room-send{letter-spacing:.08em;padding:0 14px}.room-embed .room-foot{flex-wrap:wrap;gap:3px 8px;margin-top:6px;line-height:1.5}.room-embed .room-foot>:last-child{white-space:nowrap;margin-left:auto}.room-embed .room-send-result{overflow-wrap:anywhere;margin:6px 0}@media (width<=400px){.room-embed .room-bar,.room-embed .room-compose,.room-embed .room-context,.room-embed .room-conversation{padding-left:12px;padding-right:12px}.room-embed .room-compose{margin-left:-12px;margin-right:-12px}}[hidden]{display:none!important}.adm-wrap{max-width:1240px;margin:0 auto;padding:40px clamp(16px,4vw,56px) 96px}.adm-top{border-bottom:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:24px;display:flex}.adm-top a{color:var(--muted);text-decoration:none}.adm-top a:hover{color:var(--accent-ink)}.adm-who{color:var(--sumi-soft);letter-spacing:.12em;text-transform:none}.adm-title{font-family:var(--font-serif);letter-spacing:.1em;color:var(--sumi);margin:26px 0 0;font-size:26px;font-weight:600}.adm-title .jp{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);margin-left:14px}.adm-gate{text-align:center;border:1px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in oklab,var(--paper) 92%,#fff);max-width:460px;margin:56px auto 0;padding:32px 28px}.adm-gate h2{font-family:var(--font-serif);letter-spacing:.06em;color:var(--sumi);margin:0 0 10px;font-size:20px;font-weight:600}.adm-gate p{font-size:var(--fs-sm);color:var(--muted);margin:0;line-height:1.9}.adm-gate .go-login{border:1px solid var(--sumi);border-radius:var(--radius);background:var(--sumi);color:var(--paper);font-family:var(--font-serif);font-size:var(--fs-sm);letter-spacing:.16em;margin-top:22px;padding:10px 26px;text-decoration:none;transition:opacity .2s;display:inline-block}.adm-gate .go-login:hover{opacity:.84}.tabs{margin-top:28px}.pane{padding-top:26px}.cols{grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start;gap:36px;display:grid}.cols>form{scroll-margin-top:108px}.panel-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.panel-head h3{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);text-transform:uppercase;margin:0}.panel-head h3 span{letter-spacing:.1em;margin-left:10px}.rows{margin:0;padding:0;list-style:none}.rows li{border-bottom:1px dashed var(--rule);padding:15px 2px}.rows li:last-child{border-bottom:none}.row-t{font-family:var(--font-serif);color:var(--sumi);word-break:break-word;font-size:16px;font-weight:500;line-height:1.55}.row-link{color:inherit;text-decoration:none}.row-link:hover{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px}.row-link:focus-visible{box-shadow:var(--ring);border-radius:var(--radius);outline:none}.row-m{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:7px;display:flex}.row-m .slug{color:var(--ai-ink);word-break:break-all}.row-d{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--muted);margin-top:6px;line-height:1.75}.row-acts{gap:8px;margin-top:11px;display:flex}.empty{font-size:var(--fs-sm);padding:26px 2px}.empty,.pill{color:var(--muted)}.pill{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.1em;border:1px solid var(--line-strong);border-radius:var(--radius);padding:1px 7px}.pill.pub{color:var(--ai-ink);border-color:color-mix(in oklab,var(--ai) 40%,var(--line-strong));background:color-mix(in oklab,var(--ai) 6%,transparent)}.pill.draft{color:var(--accent-ink);border-color:color-mix(in oklab,var(--accent) 40%,var(--line-strong));background:color-mix(in oklab,var(--accent) 6%,transparent)}.pill.off{text-decoration:line-through}.row-lock{white-space:nowrap;color:var(--accent-ink);letter-spacing:.1em;border-bottom:1px dotted color-mix(in oklab,var(--accent) 55%,var(--line-strong))}.field textarea{resize:vertical;tab-size:2;min-height:430px;line-height:1.8}.grid2{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.check{align-items:center;gap:9px;margin-top:30px;display:flex}.check input{width:15px;height:15px;accent-color:var(--accent)}.check label{font-family:var(--font-serif);font-size:var(--fs-sm);color:var(--sumi-soft);letter-spacing:.04em;cursor:pointer}.acts{gap:12px;margin-top:28px}.acts,.filters{flex-wrap:wrap;align-items:center;display:flex}.filters{gap:10px;margin-top:20px}.filters input,.filters select{box-sizing:border-box;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);color:var(--sumi);font-family:inherit;font-size:var(--fs-base);padding:8px 11px}.filters input{min-width:0;font-family:var(--font-mono);flex:240px;font-size:14px}.filters input:focus,.filters select:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.filters button.wb-select{width:auto;min-width:7em}.tbl-wrap{margin-top:18px;overflow-x:auto}.tbl{border-collapse:collapse;width:100%}.sr-only{clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only,.tbl th{white-space:nowrap}.tbl th{text-align:left;border-bottom:1px solid var(--rule);font-weight:400;font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.2em;color:var(--muted);text-transform:uppercase;padding:0 14px 11px 0}.tbl td{vertical-align:top;border-bottom:1px dashed var(--rule);padding:13px 14px 13px 0}.tbl tbody tr:last-child td{border-bottom:none}.tbl .c-name{font-family:var(--font-serif);color:var(--sumi);word-break:break-word;font-size:15px}.tbl .c-mono{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);white-space:nowrap}.tbl .c-mail{white-space:normal;word-break:break-all}.tbl .c-text{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--sumi-soft);white-space:pre-wrap;word-break:break-word;min-width:240px;max-width:460px;line-height:1.8}.tbl a{color:var(--ai-ink);text-decoration:none}.tbl a:hover{text-decoration:underline}.tbl td.c-acts{white-space:nowrap}.tbl td.c-acts .row-acts{flex-wrap:wrap;margin-top:0}.tbl .pills{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.tbl .empty{border-bottom:none;padding:26px 2px}.pill.risk{color:var(--shu-ink);border-color:color-mix(in oklab,var(--shu) 45%,var(--line-strong));background:color-mix(in oklab,var(--shu) 8%,transparent)}.pill.adm{color:var(--accent-ink);border-color:color-mix(in oklab,var(--accent) 40%,var(--line-strong));background:color-mix(in oklab,var(--accent) 6%,transparent)}.adm-pager{align-items:center;gap:14px;margin-top:22px;display:flex}.pg-info{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--muted)}@media (width<=980px){.cols{grid-template-columns:minmax(0,1fr);gap:30px}.field textarea{min-height:340px}}@media (width<=640px){.adm-wrap{padding:26px 16px 72px}.adm-title{font-size:21px}.adm-title .jp{margin:8px 0 0;display:block}.grid2{grid-template-columns:minmax(0,1fr)}.tabs{margin-top:22px}.btn.solid{flex:1}.check{margin-top:20px}}.rows>li.sk-row{padding:var(--space-4) 0;border-bottom:1px solid var(--rule)}.rows>li.sk-row::marker{content:none}.tbl td.sk-cell{padding:var(--space-3) var(--space-4)}@media (width<=640px){.tbl-wrap{overflow-x:visible}.tbl thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tbl,.tbl tbody,.tbl td,.tbl tr{width:auto;display:block}.tbl tr{margin-bottom:var(--space-4);padding:var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper-2)}.tbl td{gap:var(--space-4);border:0;align-items:baseline;padding:5px 0;display:flex}.tbl td+td{border-top:1px solid var(--rule)}.tbl td:before{content:attr(data-label);min-width:5.5em;font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.08em;color:var(--muted);flex:none}.tbl td:not([data-label]){display:block}.tbl td:not([data-label]):before{content:none}.tbl td.c-acts .row-acts{flex-wrap:wrap}.tbl td.c-mail{word-break:break-all}.tbl td.c-text{min-width:0;max-width:none}}.adm-wrap .tabs .wb-tabs{row-gap:var(--space-1);flex-wrap:wrap}.adm-wrap .tabs .wb-tab{flex:none}.adm-wrap .tabs.has-pending .wb-tab[id$=-trigger-moderation]:after{content:"";border-radius:var(--radius-pill);background:var(--danger-ink);vertical-align:middle;width:6px;height:6px;margin-left:6px;display:inline-block}.sub-tabs{margin-top:var(--space-5)}.adm-wrap .sub-tabs .wb-tabs{row-gap:var(--space-1);flex-wrap:wrap}.adm-wrap .sub-tabs .wb-tab{padding:8px var(--space-5);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.16em;flex:none}.stat-grid{gap:var(--space-3);margin:var(--space-6) 0 0;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));display:grid}.stat{padding:10px var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper-2)}.stat dt{font-size:var(--fs-2xs);letter-spacing:.08em;color:var(--muted)}.stat dd,.stat dt{font-family:var(--font-mono)}.stat dd{font-size:var(--fs-lg);color:var(--sumi);margin:4px 0 0}.stat.hot{border-color:var(--danger-line);background:var(--danger-bg)}.stat.hot dd{color:var(--danger-ink)}.bulk-bar{align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding:10px var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper-2);flex-wrap:wrap;display:flex}.tbl .c-sub{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.04em;color:var(--muted);word-break:break-all;margin-top:5px;display:block}.tbl a.c-sub{color:var(--ai-ink)}.tbl td.c-pick{white-space:nowrap}.tbl .c-pick input{width:15px;height:15px;accent-color:var(--accent)}.tbl .gb-reply{border-left:2px solid var(--line-strong);font-family:var(--font-body);font-size:var(--fs-sm);color:var(--sumi-soft);white-space:pre-wrap;word-break:break-word;margin-top:9px;padding-left:10px;line-height:1.8}.tbl .gb-reply-by{letter-spacing:.08em;color:var(--muted);margin-bottom:3px;display:block}.tbl .gb-reply-by,.tbl .log-detail{font-family:var(--font-mono);font-size:var(--fs-2xs)}.tbl .log-detail{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper-2);color:var(--sumi-soft);white-space:pre-wrap;word-break:break-all;margin:8px 0 0;padding:9px 10px;line-height:1.7}.tbl tr.more-row>td{padding:var(--space-4) var(--space-4) var(--space-5) 0}.more-grid{gap:7px var(--space-4);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.more-grid dt{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.08em;color:var(--muted)}.more-grid dd{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--sumi-soft);word-break:break-word;margin:0;line-height:1.8}.more-grid dd.m-mono{font-family:var(--font-mono);font-size:var(--fs-2xs);word-break:break-all;line-height:1.7}@media (width<=640px){.tbl tr.more-row{margin-top:calc(var(--space-4)*-1);border-top:0}.tbl tr.more-row>td{padding:0}.more-grid{grid-template-columns:minmax(0,1fr);gap:2px}.more-grid dt{margin-top:9px}.more-grid dt:first-child{margin-top:0}}.kw-form input.kw-word{flex:0 150px}.adm-order-shortcuts{gap:var(--space-3) var(--space-5);margin:0 0 var(--space-5);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.adm-order-shortcuts a{padding:var(--space-2) var(--space-3);color:var(--accent-ink);border:1px solid var(--line-strong);border-radius:var(--radius);text-decoration:none}.adm-order-shortcuts a:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.ai-box{border:1px dashed color-mix(in oklab,var(--ai) 40%,var(--rule));border-radius:var(--radius);background:color-mix(in oklab,var(--ai) 3%,transparent);margin-top:24px;padding:20px}.ai-log{flex-direction:column;gap:14px;display:flex}.ai-log:empty{display:none}.ai-msg{grid-template-columns:auto 1fr;align-items:baseline;gap:10px;display:grid}.ai-msg-who{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.08em;white-space:nowrap;padding-top:3px}.ai-msg.me .ai-msg-who{color:var(--muted)}.ai-msg.bot .ai-msg-who{color:var(--ai-ink)}.ai-msg-text{font-size:var(--fs-base);color:var(--sumi-soft);white-space:pre-wrap;word-break:break-word;line-height:1.9}.ai-msg.bot .ai-msg-text{color:var(--sumi)}.ai-caret{background:var(--ai);vertical-align:text-bottom;width:6px;height:1em;animation:1.1s steps(2,start) infinite aiBlink;display:inline-block}@keyframes aiBlink{50%{opacity:0}}.ai-form{margin-top:18px}.ai-input-row{align-items:flex-end;gap:10px;display:flex}.ai-input{min-height:var(--ctl-h-lg);box-sizing:border-box;resize:none;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);max-height:120px;color:var(--sumi);font-family:inherit;font-size:var(--fs-base);flex:1;padding:10px 12px;line-height:1.6}.ai-input:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.ai-send{min-height:var(--ctl-h-lg);box-sizing:border-box;border:1px solid var(--ai-ink);border-radius:var(--radius);background:var(--ai-ink);color:var(--paper);font-family:var(--font-serif);font-size:var(--fs-sm);letter-spacing:.12em;cursor:pointer;transition:opacity var(--dur-1) var(--ease);flex:none;justify-content:center;align-items:center;padding:0 20px;display:inline-flex}.ai-send:hover:not(:disabled){opacity:.85}.ai-send:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.ai-foot{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);justify-content:space-between;gap:10px;margin-top:8px;display:flex}.ai-notice{font-size:var(--fs-sm);color:var(--muted);line-height:1.9}.ai-notice a{color:var(--accent-ink)}.ai-notice.warn{color:var(--shu-ink)}@media (width<=640px){.ai-msg{grid-template-columns:1fr;gap:2px}.ai-send{padding:11px 14px}}.ai-hist{margin-top:22px}.ai-hist [hidden],.wb-hist [hidden]{display:none!important}.hist-head{border:0;border-top:1px solid var(--rule);cursor:pointer;text-align:left;width:100%;font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.3em;color:var(--muted);text-transform:uppercase;background:0 0;align-items:center;gap:12px;padding:10px 2px;display:flex}.hist-head:hover{color:var(--sumi)}.hist-head:focus-visible{box-shadow:var(--ring);outline:none}.hist-title{font-family:var(--font-serif);letter-spacing:.2em}.hist-rule{background:var(--rule);flex:1;height:1px}.hist-count{letter-spacing:.1em;flex:none}.hist-caret{width:0;height:0;transition:transform var(--dur-2) var(--ease);border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid;flex:none}.hist-head[aria-expanded=true] .hist-caret,.hist-item-head[aria-expanded=true] .hist-caret{transform:rotate(90deg)}.hist-body{padding:4px 0 2px}.hist-list{margin:0;padding:0;list-style:none}.hist-item{border-bottom:1px dashed var(--rule)}.hist-item:last-child{border-bottom:none}.hist-item-top{align-items:center;gap:10px;display:flex}.hist-item-head{cursor:pointer;text-align:left;min-width:0;color:inherit;background:0 0;border:0;flex:1;align-items:baseline;gap:10px;padding:12px 2px;display:flex}.hist-item-head:focus-visible{box-shadow:var(--ring);outline:none}.hist-item-title{min-width:0;font-family:var(--font-serif);font-size:var(--fs-base);color:var(--sumi);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.hist-item-head:hover .hist-item-title{color:var(--accent-ink)}.hist-item-meta{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--muted);flex:none;gap:12px;display:flex}.hist-msgs{border-left:2px solid color-mix(in oklab,var(--ai) 35%,var(--rule));background:color-mix(in oklab,var(--ai) 3%,transparent);flex-direction:column;gap:12px;margin:2px 0 16px;padding:14px 0 14px 14px;display:flex}.hist-msgs .ai-msg-text{font-size:14px;line-height:1.85}.hist-tip{font-size:var(--fs-sm);color:var(--muted);padding:14px 2px;line-height:1.8}.hist-tip.warn{color:var(--shu-ink)}.hist-btn{font-family:var(--font-serif);font-size:var(--fs-xs);letter-spacing:.1em;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);color:var(--muted);cursor:pointer;transition:border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease),background var(--dur-1) var(--ease);flex:none;padding:5px 13px}.hist-btn:hover:not(:disabled){border-color:var(--sumi);color:var(--sumi)}.hist-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.hist-btn:focus-visible{box-shadow:var(--ring);outline:none}.hist-btn.danger{color:var(--shu-ink);border-color:color-mix(in oklab,var(--shu) 30%,var(--line-strong))}.hist-btn.danger:hover:not(:disabled){border-color:var(--shu);color:var(--shu-ink);background:color-mix(in oklab,var(--shu) 8%,transparent)}.hist-btn.danger:focus-visible{box-shadow:var(--ring-danger)}.hist-foot{border-top:1px dashed var(--rule);justify-content:space-between;align-items:center;gap:12px;padding:14px 2px 2px;display:flex}.hist-link{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.16em;color:var(--muted);text-decoration:none}.hist-link:hover{color:var(--accent-ink)}@media (width<=640px){.hist-head{letter-spacing:.2em;gap:8px}.hist-item-head{flex-wrap:wrap;gap:4px 10px}.hist-item-title{white-space:normal}.hist-item-meta{gap:10px}.hist-msgs{padding-left:10px}}.list-more{border-top:1px dashed var(--rule);font-size:var(--fs-sm);letter-spacing:.02em;color:var(--muted);margin:22px 0 0;padding-top:16px}.list-more a{color:var(--accent-ink);text-decoration:none}.list-more a:hover{text-decoration:underline}.wb-err-back[data-v-ad00c1e3]{color:var(--muted)}.wb-err-back a[data-v-ad00c1e3]{color:var(--accent-ink)}
