@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/f3deaf8281908ff2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/c62081b071647022-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/6ba5f591ae6c56f6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/f3deaf8281908ff2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/c62081b071647022-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/6ba5f591ae6c56f6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_ce3c7a{font-family:Fraunces,Fraunces Fallback}.__variable_ce3c7a{--font-display:"Fraunces","Fraunces Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_46fe82{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_46fe82{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--bg:oklch(96.5% 0.011 84);--surface:oklch(98.8% 0.005 84);--sunken:oklch(94.5% 0.012 84);--ink:oklch(28% 0.02 60);--ink-soft:oklch(46% 0.018 60);--ink-faint:oklch(62% 0.014 62);--line:oklch(88% 0.014 80);--line-soft:oklch(92% 0.011 82);--accent:oklch(56% 0.15 42);--accent-ink:oklch(44% 0.14 42);--accent-soft:oklch(94% 0.032 48);--teal:oklch(48% 0.075 200);--teal-soft:oklch(93% 0.02 200);--ok:oklch(55% 0.11 152);--err:oklch(54% 0.17 27);--add-bg:oklch(95% 0.035 150);--add-ink:oklch(38% 0.09 152);--del-bg:oklch(95% 0.028 25);--del-ink:oklch(42% 0.13 27);--shadow:0 1px 2px oklch(30% 0.02 60/0.06),0 4px 16px oklch(30% 0.02 60/0.05);--sans:-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Segoe UI",sans-serif;--mono:var(--font-mono),ui-monospace,"SF Mono",Menlo,monospace;--display:var(--font-display),var(--sans)}[data-theme=dark]{--bg:oklch(22.5% 0.014 62);--surface:oklch(26.5% 0.014 62);--sunken:oklch(20% 0.014 62);--ink:oklch(90% 0.012 82);--ink-soft:oklch(72% 0.014 78);--ink-faint:oklch(56% 0.014 72);--line:oklch(35% 0.016 65);--line-soft:oklch(31% 0.015 64);--accent:oklch(71% 0.13 48);--accent-ink:oklch(78% 0.12 52);--accent-soft:oklch(33% 0.045 48);--teal:oklch(72% 0.07 198);--teal-soft:oklch(32% 0.03 200);--ok:oklch(70% 0.1 152);--err:oklch(68% 0.14 27);--add-bg:oklch(30% 0.04 150);--add-ink:oklch(82% 0.09 150);--del-bg:oklch(30% 0.035 25);--del-ink:oklch(80% 0.09 27);--shadow:0 1px 2px oklch(10% 0.01 60/0.4),0 6px 20px oklch(10% 0.01 60/0.3)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15.5px;line-height:1.75;transition:background .25s ease,color .25s ease}a{color:var(--accent-ink);text-underline-offset:3px}.mono{font-family:var(--mono);font-size:.86em}.dim{color:var(--ink-faint)}.small{font-size:.85rem}button{font-family:inherit}.site-bar{display:flex;align-items:center;justify-content:space-between;padding:14px clamp(16px,4vw,40px);border-bottom:1px solid var(--line-soft)}.brand{font-family:var(--display);font-style:italic;font-weight:600;font-size:1.15rem;color:var(--ink);text-decoration:none;letter-spacing:.01em}.brand-mark{font-style:normal;color:var(--accent);font-size:.8em;margin-right:2px}.bar-actions{display:flex;align-items:center;gap:10px}.theme-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1}.theme-toggle:hover{color:var(--ink);border-color:var(--ink-faint)}.locale-switch{display:flex;border:1px solid var(--line);border-radius:20px;overflow:hidden}.locale-switch button{border:none;background:transparent;color:var(--ink-faint);font-size:.78rem;padding:5px 12px;cursor:pointer;transition:background .15s,color .15s}.locale-switch button:hover{color:var(--ink)}.locale-switch button.on{background:var(--ink);color:var(--bg)}.features{margin-top:clamp(48px,9vh,80px)}.features h2{font-family:var(--display);font-weight:600;font-size:1.45rem;margin:0 0 24px}.feature-list{display:grid;grid-gap:28px;gap:28px}@media (min-width:720px){.feature-list{grid-template-columns:repeat(3,1fr);gap:32px}}.feature-list h3{font-family:var(--display);font-weight:600;font-size:1.02rem;margin:0 0 6px;padding-top:12px;border-top:2px solid var(--accent);display:inline-block}.feature-list>div{border-top:1px solid var(--line-soft)}.feature-list>div h3{border-top:none;padding-top:0;margin-top:14px}.feature-list p{margin:0;color:var(--ink-soft);font-size:.94rem}.site-foot{display:flex;justify-content:space-between;gap:16px;padding:28px clamp(16px,4vw,40px) 40px;font-size:.82rem;border-top:1px solid var(--line-soft);margin-top:64px}.site-foot,.site-foot a{color:var(--ink-faint)}.home{max-width:780px;margin:0 auto;padding:0 clamp(16px,4vw,32px)}.hero{padding:clamp(40px,8vh,88px) 0 36px}.kicker{font-family:var(--mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}.hero h1{font-family:var(--display);font-weight:600;font-size:clamp(2rem,5.5vw,3.1rem);line-height:1.22;margin:0 0 20px;letter-spacing:.01em}.lede{font-size:1.05rem;color:var(--ink-soft);max-width:34em;margin:0}.lede b{color:var(--ink)}.dropzone{margin:8px 0 0;border:1.5px dashed var(--line);border-radius:14px;background:var(--surface);cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.dropzone.over,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone.over{transform:scale(1.005)}.dropzone-inner{padding:clamp(36px,7vw,64px) 24px;text-align:center}.dz-main{font-family:var(--display);font-size:1.35rem;font-weight:600;margin:0 0 6px}.dz-sub{color:var(--ink-soft);margin:0 0 14px}.dz-sub code{font-family:var(--mono);background:var(--sunken);padding:1px 5px;border-radius:4px}.dz-hint{color:var(--ink-faint);font-size:.78rem;margin:0}.load-err{color:var(--err);margin:12px 2px}.ai-flow{margin-top:clamp(48px,9vh,80px)}.ai-flow h2{font-family:var(--display);font-weight:600;font-size:1.45rem;margin:0 0 10px}.ai-flow>p{color:var(--ink-soft);max-width:36em}.prompt-card{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;padding:18px 20px;margin:18px 0 10px;box-shadow:var(--shadow)}.prompt-card p{margin:0 0 14px}.landing .hero h1{font-size:clamp(1.9rem,4.4vw,2.7rem)}.cta-note{margin:12px 2px 0}.prose-section{margin-top:clamp(40px,7vh,64px)}.prose-section h2{font-family:var(--display);font-weight:600;font-size:1.42rem;line-height:1.35;margin:0 0 14px}.prose-section p{color:var(--ink-soft);margin:0 0 14px}.prose-section code{font-family:var(--mono);font-size:.85em;background:var(--sunken);padding:1px 5px;border-radius:4px;color:var(--ink)}.prose-section strong{color:var(--ink);font-weight:600}.feature-bullets{list-style:none;margin:0 0 16px;padding:0}.feature-bullets li{position:relative;padding-left:20px;margin:9px 0;color:var(--ink-soft)}.feature-bullets li:before{content:"→";position:absolute;left:0;color:var(--accent);font-size:.85em}.code-block{font-family:var(--mono);font-size:.82rem;line-height:1.7;background:var(--sunken);border:1px solid var(--line-soft);border-radius:9px;padding:14px 16px;overflow-x:auto;color:var(--ink-soft);margin:0}.faq-item{border-bottom:1px solid var(--line-soft);padding:4px 0}.faq-item summary{cursor:pointer;list-style:none;padding:12px 24px 12px 0;font-weight:500;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:4px;color:var(--ink-faint);font-weight:400}.faq-item[open] summary:after{content:"−"}.faq-item summary:hover{color:var(--accent-ink)}.faq-item p{padding:0 0 14px;margin:0}.cross-link{margin-top:40px}.cross-link a{font-family:var(--display);font-size:1.05rem;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:2px}.cross-link a:hover{border-color:var(--accent)}.guides{margin-top:clamp(48px,9vh,80px)}.guides h2{font-family:var(--display);font-weight:600;font-size:1.45rem;margin:0 0 18px}.guide-links{display:grid;grid-gap:12px;gap:12px}@media (min-width:720px){.guide-links{grid-template-columns:1fr 1fr}}.guide-links a{display:block;padding:16px 18px;background:var(--surface);border:1px solid var(--line-soft);border-radius:10px;text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}.guide-links a:hover{border-color:var(--accent);transform:translateY(-1px)}.guide-links b{display:block;font-weight:600;margin-bottom:4px}.guide-links span{display:block;font-size:.86rem;color:var(--ink-faint);line-height:1.55}.btn{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:8px;padding:8px 16px;font-size:.9rem;cursor:pointer;transition:opacity .15s}.btn:hover{opacity:.85}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:transparent;color:var(--ink-soft);border-color:var(--line)}.btn.ghost:hover{color:var(--ink);border-color:var(--ink-faint);opacity:1}.btn.small{padding:4px 10px;font-size:.8rem;border-radius:6px}.viewer{max-width:1160px;margin:0 auto;padding:0 clamp(12px,3vw,32px)}.session-head{padding:28px 0 14px;border-bottom:1px solid var(--line)}.session-title-row{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.session-title{font-family:var(--display);font-weight:600;font-size:clamp(1.25rem,3vw,1.7rem);line-height:1.35;margin:0;flex:1 1;min-width:200px}.share-result{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--teal-soft);border-radius:8px;padding:8px 12px;margin:10px 0 4px;font-size:.88rem}.share-result a{word-break:break-all}.share-err{color:var(--err);font-size:.88rem;margin:8px 0 0}.meta-strip{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0}.badge{font-family:var(--mono);font-size:.74rem;font-weight:500;padding:3px 10px;border-radius:20px;letter-spacing:.03em}.badge.src-codex{background:var(--ink);color:var(--bg)}.badge.src-claude-code{background:var(--accent);color:oklch(98% .01 84)}.chip{font-size:.78rem;color:var(--ink-soft);background:var(--sunken);border-radius:20px;padding:3px 10px;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.controls{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;background:color-mix(in oklch,var(--bg) 90%,oklch(100% 0 0/0));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-soft)}.controls input[type=search]{flex:1 1;min-width:160px;max-width:340px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:7px 12px;font-size:.88rem;font-family:inherit}.controls input[type=search]:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}.toggle{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--ink-faint);border:1px solid var(--line);border-radius:20px;padding:4px 12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle input{display:none}.toggle.on{color:var(--ink);background:var(--surface);border-color:var(--ink-faint)}.toggle i{font-style:normal;font-size:.72rem;color:var(--ink-faint)}.hit-count{font-size:.8rem;color:var(--accent-ink)}.viewer-body{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:32px;gap:32px}@media (min-width:1080px){.viewer-body{grid-template-columns:minmax(0,1fr) 230px}}.timeline{padding:24px 0 40px}.empty{text-align:center;padding:48px 0}.nav-rail{display:none}@media (min-width:1080px){.nav-rail{display:block;position:-webkit-sticky;position:sticky;top:64px;align-self:start;max-height:calc(100vh - 90px);overflow-y:auto;padding:20px 0 20px 18px;border-left:1px solid var(--line-soft)}}.rail-title{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px}.nav-rail ol{list-style:none;margin:0;padding:0}.nav-rail li{margin:2px 0}.nav-rail button{display:flex;gap:8px;align-items:baseline;width:100%;text-align:left;background:none;border:none;color:var(--ink-soft);font-size:.8rem;line-height:1.5;padding:4px 6px;border-radius:6px;cursor:pointer}.nav-rail button:hover{background:var(--sunken);color:var(--ink)}.nav-rail button i{font-style:normal;font-family:var(--mono);font-size:.7rem;color:var(--accent);flex-shrink:0}.msg{margin:26px 0}.msg header{display:flex;align-items:center;gap:10px;margin-bottom:4px}.who{font-family:var(--mono);font-size:.72rem;font-weight:500;padding:1px 8px;border-radius:5px;letter-spacing:.05em}.who-user{background:var(--accent);color:oklch(98% .01 84)}.who-ai{border:1px solid var(--line)}.ts,.who-ai{color:var(--ink-faint)}.ts{font-family:var(--mono);font-size:.72rem}.msg.user{background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--accent);border-radius:10px;padding:14px 18px 12px;box-shadow:var(--shadow)}.msg.user .md{font-size:1.02em}.msg.assistant{padding:0 2px}.attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.flash{animation:flash 1.2s ease-out}@keyframes flash{0%{box-shadow:0 0 0 3px var(--accent)}to{box-shadow:0 0 0 3px transparent}}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:.6em 0}.md h1,.md h2,.md h3,.md h4{font-family:var(--display);font-weight:600;line-height:1.4;margin:1.2em 0 .4em}.md h1{font-size:1.3em}.md h2{font-size:1.18em}.md h3{font-size:1.06em}.md pre{border:1px solid var(--line-soft);border-radius:8px;padding:12px 14px;overflow-x:auto;font-size:.82rem;line-height:1.6}.md code,.md pre{background:var(--sunken);font-family:var(--mono)}.md code{font-size:.86em;padding:1px 5px;border-radius:4px}.md pre code{background:none;padding:0}.md blockquote{margin:.8em 0;padding:2px 16px;border-left:3px solid var(--line);color:var(--ink-soft)}.md table{border-collapse:collapse;display:block;overflow-x:auto;max-width:100%}.md td,.md th{border:1px solid var(--line);padding:5px 12px;font-size:.9em}.md th{background:var(--sunken)}.md img{max-width:100%;border-radius:8px}.md ol,.md ul{padding-left:1.5em}.md li{margin:.2em 0}.md hr{border:none;border-top:1px solid var(--line);margin:1.4em 0}.fold{margin:10px 0}.fold summary{display:flex;align-items:baseline;gap:10px;cursor:pointer;list-style:none;color:var(--ink-faint);font-size:.84rem;padding:4px 2px;border-radius:6px}.fold summary::-webkit-details-marker{display:none}.fold summary:before{content:"▸";font-size:.7rem;transition:transform .15s}.fold[open] summary:before{transform:rotate(90deg)}.fold summary:hover{color:var(--ink-soft)}.fold-tag{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;flex-shrink:0}.reasoning .fold-tag{color:var(--teal)}.system .fold-tag{color:var(--ink-faint)}.fold-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic;max-width:60ch}.fold-body{margin:6px 0 6px 14px;padding:10px 16px;border-left:2px solid var(--line);color:var(--ink-soft);font-size:.92rem}.raw{white-space:pre-wrap;word-break:break-word;font-family:var(--mono);font-size:.8rem;line-height:1.6;margin:0;max-height:420px;overflow-y:auto}.tool{margin:8px 0;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface)}.tool summary{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;list-style:none;min-height:24px}.tool summary::-webkit-details-marker{display:none}.tool.flat .tool-row{display:flex;align-items:center;gap:10px;padding:8px 14px;min-height:24px}.tool.flat .tool-row .ts{margin-left:auto;flex-shrink:0}.tool[open] summary{border-bottom:1px solid var(--line-soft)}.dot{width:8px;height:8px;border-radius:50%;background:var(--ink-faint);flex-shrink:0}.dot.ok{background:var(--ok)}.dot.error{background:var(--err)}.tool-name{font-family:var(--mono);font-size:.76rem;font-weight:500;color:var(--ink-soft);flex-shrink:0}.tool-summary{font-family:var(--mono);font-size:.8rem;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1}.tool summary .ts{margin-left:auto;flex-shrink:0}.tool-body{padding:10px 14px}.code,.output{font-family:var(--mono);font-size:.8rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;background:var(--sunken);border-radius:7px;padding:10px 12px;margin:0 0 8px;max-height:380px;overflow-y:auto}.output{position:relative}.output:before{content:attr(data-label);display:block;font-size:.68rem;letter-spacing:.1em;color:var(--ink-faint);margin-bottom:6px}.diff-file{margin:0 0 12px}.diff-path{font-size:.8rem;color:var(--ink-soft);margin-bottom:4px;word-break:break-all}.diff-path b{color:var(--ink);font-weight:500}.diff{font-family:var(--mono);font-size:.78rem;line-height:1.55;background:var(--sunken);border-radius:7px;padding:8px 0;margin:0;max-height:420px;overflow:auto}.diff span{display:block;padding:0 12px;white-space:pre-wrap;word-break:break-all}.diff .add{background:var(--add-bg);color:var(--add-ink)}.diff .del{background:var(--del-bg);color:var(--del-ink)}.diff .hunk{color:var(--teal)}.diff .ctx{color:var(--ink-soft)}.plan{margin:14px 0;padding:12px 18px;background:var(--surface);border:1px solid var(--line-soft);border-radius:9px}.plan-head{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px}.plan ul{list-style:none;margin:0;padding:0}.plan li{display:flex;gap:10px;padding:3px 0;font-size:.92rem}.plan li.completed{color:var(--ink-faint)}.plan li.in_progress{color:var(--ink);font-weight:500}.plan-mark{color:var(--ok);font-family:var(--mono);flex-shrink:0}.plan li.pending .plan-mark{color:var(--ink-faint)}.plan li.in_progress .plan-mark{color:var(--accent)}.image-item{margin:14px 0}.image-item img{max-width:min(100%,420px);border-radius:10px;border:1px solid var(--line);box-shadow:var(--shadow)}.divider{display:flex;align-items:center;gap:14px;margin:28px 0;color:var(--ink-faint);font-size:.78rem;font-family:var(--mono);letter-spacing:.04em}.divider:after,.divider:before{content:"";flex:1 1;border-top:1px solid var(--line-soft)}.share-loading{text-align:center;padding:96px 20px;color:var(--ink-faint)}.share-loading .brand-mark{font-size:1.4rem;animation:pulse 1.2s ease-in-out infinite;display:inline-block}@keyframes pulse{50%{opacity:.3}}@media (max-width:640px){body{font-size:15px}.msg.user{padding:12px 14px 10px}.fold-preview{max-width:36ch}.chip{max-width:200px}}