#split-app{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;overflow-y:auto}#split-app .tx-item{opacity:0}#split-app.is-open .tx-item{animation:tx-in var(--tx-dur, .6s) var(--tx-ease, ease) both;animation-delay:calc(var(--i, 0) * var(--tx-stagger, .1s))}@media(prefers-reduced-motion:reduce){#split-app .tx-item,#split-app.is-open .tx-item{animation:none;opacity:1}}#split-app *,#split-app *:before,#split-app *:after{box-sizing:border-box}#split-app[hidden],#split-app [hidden]{display:none!important}.sx-main{width:100%;max-width:696px;margin:0 auto;display:flex;flex-direction:column}.sx-notice{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:30;width:calc(100% - 40px);max-width:656px;display:flex;align-items:center;gap:12px;background:var(--surface-2);padding:11px 14px;font-family:var(--font-body);font-size:var(--fs-300);line-height:var(--lh-normal);color:var(--text-2);border-radius:var(--radius)}.sx-notice.warn{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.sx-notice-msg{flex:1 1 auto}.sx-notice-x{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;padding:2px;margin:-2px -4px -2px 0;color:inherit;opacity:.55;transition:opacity .18s}.sx-notice-x:hover{opacity:1}.sx-notice-x svg{width:16px;height:16px;display:block}.sx-check{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border-radius:var(--radius);padding:11px 14px;margin-bottom:16px;font-family:var(--font-body);font-size:var(--fs-300);line-height:var(--lh-normal)}.sx-check b{font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.sx-stage{padding:clamp(80px,11vh,116px) 20px 16px}#split-app .sx-screen{display:none;flex-direction:column}#split-app[data-screen=upload] #split-upload,#split-app[data-screen=loading] #split-loading,#split-app[data-screen=review] #split-review,#split-app[data-screen=people] #split-people,#split-app[data-screen=assign] #split-assign,#split-app[data-screen=settle] #split-settle{display:flex}.sx-screen:focus{outline:none}.sx-lede{font-family:var(--font-mono);font-size:var(--fs-500);font-weight:var(--fw-medium);line-height:var(--lh-snug);color:var(--text);margin:0 0 24px}.sx-empty{font-family:var(--font-body);color:var(--text-3);font-size:var(--fs-300);line-height:var(--lh-normal);display:block;padding:20px 2px}#split-app :focus-visible{outline:2px solid var(--accent);outline-offset:2px}#split-app .sx-screen:focus,#split-app .sx-screen:focus-visible{outline:none}#split-app .sx-input{font-family:var(--font-mono);font-size:16px;color:var(--text);background:none;border:none;border-radius:0;padding:10px 2px;width:100%}#split-app .sx-input::placeholder{color:var(--text-mute)}#split-app .sx-input:focus,#split-app .sx-input:focus-visible{outline:none}.sx-btn{font-size:var(--fs-200);font-weight:var(--fw-medium);letter-spacing:var(--ls-label);line-height:1;text-transform:uppercase;cursor:pointer;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;background:var(--glass);color:var(--text-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .18s,background .18s,opacity .18s,transform .18s}.sx-btn:hover{color:var(--text);background:var(--surface-2)}.sx-btn:active{transform:scale(.97)}.sx-btn:disabled{opacity:.5;cursor:default}.sx-btn.primary{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.sx-btn.primary:hover{background:color-mix(in srgb,var(--accent) 32%,transparent);color:var(--accent)}.sx-btn.ghost.on{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.sx-btn.block{width:100%}.sx-btn.icon{border-radius:50%;padding:8px;min-width:44px;gap:0}.sx-btn.icon svg{width:20px;height:20px;display:block}.sx-btn .sx-ico{width:15px;height:15px;flex:0 0 auto;display:block}.sx-btn.muted{opacity:.5}#split-upload{justify-content:center;align-items:center}.up-inner{display:flex;flex-direction:column;align-items:stretch;gap:16px;width:100%}.up-try{align-items:center}.sx-uphead{width:100%;margin:0 0 32px}.sx-uphead .up-eyebrow{color:var(--accent);margin-bottom:12px}.sx-uphead .up-title{margin:0;font-size:var(--fs-700)}.sx-uphead .up-subtitle{margin-top:16px;color:var(--text-body);-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.up-drop{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;min-height:240px;padding:clamp(28px,9vw,56px);cursor:pointer;color:var(--text);background:none;border:1px dashed var(--border-strong);border-radius:var(--radius);transition:border-color .18s,background .18s,transform .12s}.up-drop:hover{border-color:var(--text-2);background:var(--surface)}.up-drop.over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent)}.up-drop:active{transform:scale(.995)}.up-drop-ic{width:46px;height:46px;color:var(--text-3)}.up-drop:hover .up-drop-ic{color:var(--text-2)}.up-drop-ic svg{width:100%;height:100%;display:block}.up-drop-title{font-family:var(--font-mono);font-size:var(--fs-500);font-weight:var(--fw-medium);line-height:var(--lh-snug)}.up-drop-sub{font-family:var(--font-body);font-size:var(--fs-300);color:var(--text-3)}.up-try{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:24px}.up-try-hint{font-family:var(--font-body);font-size:var(--fs-300);color:var(--text-3);text-align:center}.up-receipt3d{width:100%;height:220px;cursor:grab;touch-action:none}.up-receipt3d.dragging{cursor:grabbing;transform:scale(1.06)}.up-receipt3d:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.r3d-canvas{width:100%;height:100%;display:block;pointer-events:none}#split-loading{position:fixed;top:0;right:0;bottom:0;left:0;justify-content:center;align-items:center}.ld-inner{display:flex;flex-direction:column;align-items:center;gap:20px}.ld-spin{width:38px;height:38px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:ld-rot .9s linear infinite}@keyframes ld-rot{to{transform:rotate(360deg)}}.ld-status{font-family:var(--font-mono);font-size:var(--fs-400);color:var(--text);letter-spacing:var(--ls-tight);min-height:1.4em}.ld-credit{font-family:var(--font-mono);font-size:var(--fs-300);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-3)}@media(prefers-reduced-motion:reduce){.ld-spin{animation:none}}.rcpt-merchant{font-family:var(--font-mono);font-size:var(--fs-500);font-weight:var(--fw-medium);line-height:var(--lh-snug);color:var(--text);margin-bottom:28px}.sx-items{display:flex;flex-direction:column;margin-bottom:36px}.sx-item{display:flex;align-items:baseline;gap:10px;padding:11px 12px;margin:0 -12px;border-radius:var(--radius);transition:background .15s ease}.sx-item:hover{background:var(--surface-2)}.sx-iname{flex:0 1 auto;font-size:var(--fs-400);color:var(--text)}.sx-leader{flex:1 1 auto;min-width:16px;border-bottom:2px dotted var(--border-strong);transform:translateY(-.18em)}.sx-iprice{flex:0 0 auto;font-size:var(--fs-400);color:var(--text);font-variant-numeric:tabular-nums}.sx-totals{margin-bottom:4px}.sx-tline{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-family:var(--font-mono);font-size:var(--fs-400);color:var(--text)}.sx-tline b{color:var(--text);font-weight:var(--fw-regular);font-variant-numeric:tabular-nums}.sx-tline.grand{margin-top:16px;padding-top:18px;border-top:1px solid var(--border)}.sx-tline.grand b{color:var(--text);font-weight:var(--fw-regular)}.sx-piece,.sx-who-i{position:relative;display:inline-flex;align-items:flex-end;flex:0 0 auto}.sx-piece>img,.sx-who-i>img{height:calc(var(--ps, 1) * 100%);width:auto;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.sx-piece:after{content:"";position:absolute;left:0;right:0;bottom:0;height:calc(var(--ps, 1) * 100%);pointer-events:none;display:none}.sx-av:hover .sx-piece:after,.sx-av.on .sx-piece:after{display:block;background:var(--accent);-webkit-mask:var(--pc) bottom / contain no-repeat;mask:var(--pc) bottom / contain no-repeat}.pl-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px;padding:2px 0}.pl-slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px}.pl-x{position:absolute;top:2px;right:6px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;background:none;cursor:pointer;color:var(--text-3);opacity:1;transition:opacity .15s,color .15s}.pl-x:hover{opacity:1;color:var(--accent)}.pl-x svg{width:13px;height:13px;display:block}.pl-add-label{font-family:var(--font-mono);font-size:var(--fs-300);color:var(--text-3);text-align:center}.pl-ava{flex:0 0 auto;width:100%;height:104px;display:flex;align-items:flex-end;justify-content:center}.pl-ava .sx-piece{height:100%;width:auto}.pl-addbtn{flex:0 0 auto;width:100%;display:flex;flex-direction:column;align-items:center;gap:10px;background:none;border:none;cursor:pointer;padding:0;color:var(--text-3);transition:color .18s}.pl-addbtn-glyph{width:100%;height:104px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:22px;font-size:var(--fs-700);font-weight:var(--fw-light);line-height:1}.pl-addbtn .pl-add-label{padding-top:16px}.pl-addbtn:hover,.pl-addbtn:hover .pl-add-label{color:var(--accent)}#split-app .pl-addbtn:focus-visible,#split-app .sx-av.add:focus-visible{outline:none}.sx-focus-piece{position:absolute;left:0;right:0;top:0;pointer-events:none;opacity:0;transition:opacity .12s;z-index:0;filter:drop-shadow(1.6px 0 0 var(--accent)) drop-shadow(-1.6px 0 0 var(--accent)) drop-shadow(0 1.6px 0 var(--accent)) drop-shadow(0 -1.6px 0 var(--accent)) drop-shadow(1.2px 1.2px 0 var(--accent)) drop-shadow(-1.2px -1.2px 0 var(--accent)) drop-shadow(1.2px -1.2px 0 var(--accent)) drop-shadow(-1.2px 1.2px 0 var(--accent))}.sx-focus-piece>i{display:block;width:100%;height:100%;background:var(--bg);-webkit-mask:var(--addpc) center / contain no-repeat;mask:var(--addpc) center / contain no-repeat}.pl-addbtn .pl-addbtn-glyph{position:relative;z-index:1}.pl-addbtn .sx-focus-piece{height:104px}.pl-addbtn:focus-visible .sx-focus-piece{opacity:1}@media(max-width:460px){.pl-addbtn .sx-focus-piece{height:88px}}.sx-av.add{position:relative}.sx-av.add .sx-add-glyph{position:relative;z-index:1}.sx-av.add .sx-focus-piece{height:30px;top:1px}.sx-av.add:focus-visible .sx-focus-piece{opacity:1}@keyframes pl-pop-in{0%{transform:scale(.55)}to{transform:scale(1)}}.pl-slot.pl-pop .pl-ava{animation:pl-pop-in .34s cubic-bezier(.34,1.45,.5,1) both;transform-origin:center bottom}@keyframes pl-name-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.pl-name-in{animation:pl-name-in .26s cubic-bezier(.2,.8,.2,1) both}@media(prefers-reduced-motion:reduce){.pl-slot.pl-pop .pl-ava,.pl-name-in{animation:none}}#split-app .pl-name{text-align:center}.pl-cap{text-align:center;font-family:var(--font-mono);color:var(--text-3);font-size:var(--fs-300);letter-spacing:var(--ls-caps);text-transform:uppercase;margin-top:18px}@media(max-width:460px){.pl-grid{gap:18px 16px}.pl-ava,.pl-addbtn-glyph{height:88px}}#split-piece-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:260;pointer-events:none;opacity:0;transition:opacity .3s ease}#split-piece-canvas.active{opacity:1}.sx-acard{position:relative;display:flex;align-items:stretch;gap:24px;padding:14px 12px;margin:22px -12px;background:color-mix(in srgb,var(--surface-2) 50%,var(--bg));border-radius:var(--radius);box-shadow:var(--card-off, var(--fig-shadow-off, 9px)) var(--card-off, var(--fig-shadow-off, 9px)) 0 0 var(--fig-shadow)}.sx-acard-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.sx-anav{flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;gap:12px}.sx-navbtn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;padding:0;color:var(--text-3);transition:color .18s,transform .12s}.sx-navbtn svg{width:20px;height:20px;display:block}.sx-navbtn:hover{color:var(--text)}.sx-navbtn:active{transform:scale(.92)}.sx-navbtn:disabled{opacity:.28;cursor:default}.sx-acard-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}.sx-aname{flex:1 1 auto;font-size:var(--fs-400);font-weight:var(--fw-medium);color:var(--text)}.sx-aprice{flex:0 0 auto;font-size:var(--fs-400);font-weight:var(--fw-medium);color:var(--text);font-variant-numeric:tabular-nums}.sx-acard.err .sx-aname{color:var(--accent)}.sx-avs{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));align-items:start;gap:16px 8px}.sx-av{display:inline-flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;border:none;min-height:44px;min-width:60px;padding:8px 12px 6px;color:var(--text-2);background:none;transition:color .18s;-webkit-tap-highlight-color:transparent}.sx-av .sx-piece{height:26px}.sx-av .sx-av-n{font-family:var(--font-mono);font-size:var(--fs-300);letter-spacing:.02em;max-width:11ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sx-av:hover{color:var(--accent)}.sx-av:active{opacity:.55}.sx-av.on{color:var(--accent)}.sx-av.add{border:none;color:var(--text-3)}.sx-av.add .sx-add-glyph{height:26px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:4px;font-size:22px;line-height:1}.sx-av.add-active .sx-piece{animation:pl-pop-in .34s cubic-bezier(.34,1.45,.5,1) both;transform-origin:center bottom}@media(prefers-reduced-motion:reduce){.sx-av.add-active .sx-piece{animation:none}}#split-app .sx-addinput{width:72px;text-align:center;font-size:var(--fs-300);padding:0}.sx-arows{display:flex;flex-direction:column}.sx-arow{display:flex;align-items:center;gap:10px;width:100%;cursor:pointer;text-align:left;font-family:var(--font-mono);background:none;border:none;color:var(--text-3);padding:13px 12px;margin:0 -12px;border-radius:var(--radius);transition:background .15s,box-shadow .18s,color .15s}.sx-arow:hover{background:var(--surface-2);color:var(--text-2)}.sx-arow.err{box-shadow:inset 0 -1.5px 0 0 var(--accent)}.sx-arow-name{flex:0 1 auto;font-size:var(--fs-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sx-arow-price{flex:0 0 auto;margin-left:auto;font-size:var(--fs-300);color:var(--text-3);font-variant-numeric:tabular-nums}.sx-who{flex:0 0 auto;display:inline-flex;align-items:flex-end;gap:2px;min-width:18px;justify-content:flex-end}.sx-who-i{height:22px;width:auto;align-items:center}.sx-who .sx-who-i{align-items:flex-end}.sx-pending{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--accent)}.sx-people-totals{display:flex;flex-direction:column;margin-bottom:16px}.sx-person.zero{opacity:.5}.sx-person>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:12px;margin:0 -12px;border-radius:var(--radius);transition:background .15s ease}.sx-person>summary:hover{background:var(--surface-2)}.sx-person>summary::-webkit-details-marker{display:none}.sx-person>summary:after{content:"+";color:var(--text-mute);font-family:var(--font-mono);font-size:var(--fs-400);margin-left:4px}.sx-person[open]>summary:after{content:"−"}.sx-people-totals{interpolate-size:allow-keywords}.sx-person::details-content{block-size:0;overflow:hidden;opacity:0;transition:block-size .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease,content-visibility .28s allow-discrete}.sx-person[open]::details-content{block-size:auto;opacity:1}@media(prefers-reduced-motion:reduce){.sx-person::details-content{transition:none}}.sx-p-ava{flex:0 0 auto;height:30px;width:24px;display:flex;align-items:flex-end;justify-content:center}.sx-p-ava .sx-who-i{height:100%}.sx-p-name{font-family:var(--font-mono);font-size:var(--fs-300);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-2)}.sx-p-total{font-family:var(--font-mono);font-size:var(--fs-600);font-variant-numeric:tabular-nums;color:var(--text);margin-left:auto}.sx-p-lines{padding:0 24px 14px 34px;display:flex;flex-direction:column;gap:5px}.sx-pl{display:flex;justify-content:space-between;gap:12px;font-family:var(--font-mono);font-size:var(--fs-200);color:var(--text-3)}.sx-pl b{color:var(--text-2);font-weight:var(--fw-regular);font-variant-numeric:tabular-nums}.sx-pl i{font-style:normal;color:var(--text-mute);text-transform:uppercase;letter-spacing:.1em;font-size:var(--fs-100)}.sx-pl.sub{color:var(--text-mute);border-top:1px solid var(--border-soft);padding-top:5px;margin-top:2px}.sx-share{display:flex;align-items:center;gap:8px;margin-top:18px}.sx-share .sx-newsplit{margin-left:auto}.sx-share .sx-btn{justify-content:flex-start;white-space:nowrap;overflow:hidden;transition:color .18s,background .18s,opacity .18s,transform .18s,width .3s cubic-bezier(.2,.8,.2,1)}.sx-share .sx-btn:disabled{opacity:1;cursor:default}.sx-share .sx-btn span{display:inline-block}.sx-share .sx-btn span.sx-lbl-out{opacity:0;transform:translateY(5px);transition:opacity .17s ease,transform .17s ease}.sx-share .sx-btn span.sx-lbl-in{animation:sx-lbl-in .42s cubic-bezier(.2,.8,.2,1) both}@keyframes sx-lbl-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.sx-share .sx-btn span.sx-lbl-out,.sx-share .sx-btn span.sx-lbl-in{transition:none;animation:none;opacity:1;transform:none}}.sx-cta{display:flex;align-items:center;gap:12px;margin-top:20px;padding:18px 20px max(18px,env(safe-area-inset-bottom))}.sx-cta-meta{flex:1 1 auto;text-align:left;font-family:var(--font-mono);color:var(--text-3);font-size:var(--fs-300);letter-spacing:var(--ls-label);text-transform:uppercase;font-variant-numeric:tabular-nums}body.split-open #ui,body.split-open #top-nav,body.split-open #theme-toggle,body.split-open #view-switcher,body.split-open #card-overlay{display:none!important}#chat-fab{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:14;display:none;align-items:center;gap:9px;height:48px;padding:0 18px 0 15px;font:inherit;font-size:var(--fs-300, 13px);letter-spacing:var(--ls-label, .04em);text-transform:uppercase;color:var(--text);background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:999px;cursor:pointer;box-shadow:0 6px 22px var(--scrim, rgba(0, 0, 0, .2));transition:color .2s,border-color .2s,transform .2s}#chat-fab:hover{border-color:var(--border-strong)}#chat-fab:active{transform:scale(.97)}#chat-fab svg{width:20px;height:20px;flex:0 0 auto;display:block}body.content-open[data-page=work] #chat-fab{display:inline-flex}body.chat-open #chat-fab,body.split-open #chat-fab{display:none}#chat-app{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:15;width:380px;max-width:calc(100vw - 40px);height:560px;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:var(--font-mono);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 14px 44px var(--scrim, rgba(0, 0, 0, .3));overflow:hidden;-webkit-font-smoothing:antialiased;transform-origin:bottom right;opacity:0;transform:translateY(10px) scale(.98);transition:opacity .18s ease,transform .18s ease}#chat-app.is-open{opacity:1;transform:none}#chat-app *,#chat-app *:before,#chat-app *:after{box-sizing:border-box}#chat-app[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){#chat-app{transition:none}}.cx-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 10px 11px 16px;border-bottom:1px solid var(--border-soft)}.cx-title{color:var(--text);letter-spacing:.12em;text-transform:uppercase}.cx-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;color:var(--text-2);background:none;border:none;border-radius:var(--radius);cursor:pointer;transition:color .2s,background .2s}.cx-close:hover{color:var(--text);background:var(--surface-2)}.cx-close svg{width:17px;height:17px;display:block}.cx-scroll{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.cx-thread{display:flex;flex-direction:column;gap:16px;padding:16px}.cx-hello p{margin:0;line-height:1.6;color:var(--text-2)}.cx-msg{display:flex;flex-direction:column;gap:5px}.cx-who{color:var(--text-mute);letter-spacing:.12em;text-transform:uppercase}.cx-body{line-height:1.6;color:var(--text);overflow-wrap:break-word}.cx-body p{margin:0 0 8px}.cx-body p:last-child{margin-bottom:0}.cx-body ul,.cx-body ol{margin:0 0 8px;padding-left:18px}.cx-body li{margin:2px 0}.cx-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.cx-body strong{color:var(--text)}.cx-msg.is-user{align-items:flex-end}.cx-msg.is-user .cx-body{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);padding:8px 11px;max-width:88%;color:var(--text-2);white-space:pre-wrap}.cx-msg.is-error .cx-body{color:var(--text-mute);font-style:italic}.cx-cursor{display:inline-block;width:.5em;animation:cx-blink 1s steps(1) infinite}@keyframes cx-blink{50%{opacity:0}}.cx-think{display:inline-block;width:15px;height:15px;clip-path:circle(50%);-webkit-clip-path:circle(50%);color:var(--accent);vertical-align:-2px}.cx-think svg{display:block;width:100%;height:100%}.cx-think .cx-wave-rise{animation:cx-fill 2.1s ease-in-out infinite}.cx-think .cx-wave-drift{animation:cx-drift 1s linear infinite}@keyframes cx-fill{0%,to{transform:translateY(29px)}50%{transform:translateY(-5px)}}@keyframes cx-drift{0%{transform:translate(0)}to{transform:translate(-12px)}}@media(prefers-reduced-motion:reduce){.cx-think .cx-wave-rise{animation:none;transform:translateY(12px)}.cx-think .cx-wave-drift{animation:none}}@keyframes cx-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.cx-hello,.cx-msg{animation:cx-rise .28s cubic-bezier(.2,.8,.2,1) both}.cx-chip{animation:cx-rise .3s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--cx-i, 0) * 55ms)}@media(prefers-reduced-motion:reduce){.cx-hello,.cx-msg,.cx-chip{animation:none}}.cx-chips{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.cx-chips[hidden]{display:none}.cx-chip{font:inherit;font-size:var(--fs-300, 13px);color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);padding:8px 12px;cursor:pointer;text-align:left;transition:color .2s,border-color .2s}.cx-chip:hover{color:var(--text);border-color:var(--border-strong)}.cx-composer{flex:0 0 auto;border-top:1px solid var(--border);background:var(--bg);padding:12px}.cx-inputrow{display:flex;gap:8px;align-items:flex-end}.cx-input{flex:1 1 auto;font:inherit;font-size:var(--fs-400, 14px);line-height:1.4;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;resize:none;min-height:42px;max-height:120px;outline:none;transition:border-color .2s}.cx-input:focus{border-color:var(--border-strong)}.cx-input::placeholder{color:var(--text-mute)}.cx-send{flex:0 0 auto;font:inherit;font-size:var(--fs-400, 14px);color:var(--accent);background:color-mix(in srgb,var(--accent) 22%,transparent);border:1px solid transparent;border-radius:var(--radius);padding:10px 15px;height:42px;cursor:pointer;transition:background .2s,opacity .2s}.cx-send:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 32%,transparent)}.cx-send:active:not(:disabled){transform:scale(.97)}.cx-send:disabled{opacity:.5;cursor:default}.cx-note{margin:9px 0 0;color:var(--text-mute);line-height:1.4}.cx-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}@media(max-width:600px){#chat-app{top:0;right:0;bottom:0;left:0;width:auto;height:auto;max-width:none;max-height:none;border:none;border-radius:0;transform-origin:bottom center}}#tofu-chat{margin-top:28px}.tx-panel{display:flex;flex-direction:column;height:clamp(400px,calc(100dvh - 340px),720px);background:var(--bg);color:var(--text);font-family:var(--font-mono);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.tx-panel *,.tx-panel *:before,.tx-panel *:after{box-sizing:border-box}#tofu-chat .cx-thread{padding:20px;gap:18px}#tofu-chat .cx-msg.is-assistant .cx-who{align-self:flex-start}#tofu-chat .cx-chips{flex-direction:row;flex-wrap:wrap}#tofu-chat .cx-msg.is-user .cx-body{max-width:72%}@media(max-width:600px){.tx-panel{height:calc(100dvh - 240px);min-height:380px}#tofu-chat .cx-chips{flex-direction:column}}
