.chat{height:100vh;height:100dvh;max-width:980px;margin:0 auto;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg);overflow:hidden;position:relative;border-left:1px solid var(--border-strong);border-right:1px solid var(--border-strong)}@media (min-width: 981px){.chat{box-shadow:0 0 0 1px var(--border),0 12px 40px #10233c14}}@media (max-width: 420px){.chat{border-left:none;border-right:none}}.chat-scroll{background-color:var(--bg);background-image:radial-gradient(ellipse 60% 42% at 12% 8%,color-mix(in srgb,var(--accent) 7%,transparent) 0%,transparent 55%),radial-gradient(ellipse 55% 42% at 88% 92%,color-mix(in srgb,#c98492 6%,transparent) 0%,transparent 55%);background-attachment:local,local;overflow-y:auto;padding:1rem clamp(.75rem,3vw,1.75rem) .5rem;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}@media (prefers-color-scheme: dark){.chat-scroll{background-image:radial-gradient(ellipse 60% 42% at 12% 8%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 55%),radial-gradient(ellipse 55% 42% at 88% 92%,color-mix(in srgb,#c98492 10%,transparent) 0%,transparent 55%)}}.chat-scroll::-webkit-scrollbar{width:8px}.chat-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-dim) 25%,transparent);border-radius:999px}.chat-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-dim) 45%,transparent)}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.65rem 1rem;background:var(--header-bg);color:var(--header-fg);border-bottom:1px solid var(--border);z-index:5}.chat-brand{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#3d619b,#2b4c7e);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;letter-spacing:.02em;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff1f}.brand-text{min-width:0}.brand-text h1{margin:0;font-size:.98rem;font-weight:600;letter-spacing:-.005em;line-height:1.2;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-text p{margin:0;font-size:.78rem;color:var(--accent);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ghost-btn{background:transparent;border:1px solid var(--border);color:var(--text-dim);padding:.35rem .85rem;border-radius:999px;font-size:.78rem;cursor:pointer;transition:background .14s,color .14s,border-color .14s;flex-shrink:0}.ghost-btn:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.chat-header-actions{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.session-stats{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--text-dim);padding:.32rem .75rem;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}.session-stats strong{color:var(--text);font-weight:700}.stat-sep{color:var(--text-faint);margin:0 -2px}.welcome{max-width:620px;margin:2.5rem auto 1rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.65rem;padding:1.4rem 1.5rem 1.5rem;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border)}.welcome-dot{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#3d619b,#2b4c7e);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem;font-weight:700;letter-spacing:.02em;box-shadow:0 8px 28px #2b4c7e47,inset 0 0 0 1px #ffffff24;margin-bottom:.25rem}.welcome h2{margin:0;font-size:clamp(1.25rem,3vw,1.55rem);font-weight:600;letter-spacing:-.01em}.welcome>p{margin:0;color:var(--text-dim);font-size:.92rem;line-height:1.6}.welcome>p strong{color:var(--text);font-weight:600}.suggestion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem;margin-top:1rem;width:100%}.suggestion{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .95rem;font-size:.86rem;text-align:left;cursor:pointer;color:var(--text);line-height:1.45;transition:background .14s,border-color .14s,transform .12s}.suggestion:hover:not(:disabled){background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.suggestion:active:not(:disabled){transform:scale(.99)}.suggestion:disabled{opacity:.55;cursor:not-allowed}.msg-list{display:flex;flex-direction:column;gap:.4rem;padding-bottom:.5rem;max-width:760px;margin:0 auto}.bubble-row{display:flex;animation:bubble-in .18s ease-out;padding:0 .25rem}.bubble-row-user{justify-content:flex-end}.bubble-row-assistant,.bubble-row-error{justify-content:flex-start}@keyframes bubble-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bubble{max-width:75%;padding:.55rem .85rem;border-radius:16px;font-size:.94rem;line-height:1.55;word-break:break-word;white-space:normal;position:relative;box-shadow:var(--shadow-sm)}.bubble-user{background:var(--bubble-out);color:var(--bubble-out-fg);border-bottom-right-radius:6px}.bubble-assistant{background:linear-gradient(135deg,#f5f1e8,#fff);color:var(--bubble-in-fg);border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border));border-bottom-left-radius:6px}@media (prefers-color-scheme: dark){.bubble-assistant{background:linear-gradient(135deg,#33302b,#262321);border-color:color-mix(in srgb,var(--accent) 24%,var(--border))}}.bubble-error{background:color-mix(in srgb,var(--bad-bg) 85%,var(--surface));color:var(--text);border:1px solid color-mix(in srgb,var(--bad-fg) 28%,transparent);border-bottom-left-radius:6px}.bubble-content.plain{line-height:1.55;white-space:pre-wrap}.bubble-meta{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.55rem;padding-top:.55rem;border-top:1px dashed color-mix(in srgb,var(--text-faint) 35%,transparent)}.chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;padding:.15rem .55rem;border-radius:999px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.4}.chip strong{font-weight:700}.chip-label{opacity:.72;font-weight:600;font-size:.66rem;letter-spacing:.03em;text-transform:uppercase}.chip-icon{font-size:.82rem;line-height:1}.chip-sep{opacity:.55;margin:0 1px}.chip-ok{background:var(--ok-bg);color:var(--ok-fg)}.chip-warn{background:var(--warn-bg);color:var(--warn-fg)}.chip-bad{background:var(--bad-bg);color:var(--bad-fg)}.chip-neutral{background:var(--neutral-bg);color:var(--neutral-fg)}.bubble-user .chip{background:#fff3;color:#fff}.bubble-typing{display:inline-flex;gap:5px;align-items:center;padding:.75rem .9rem;min-height:40px}.dot{width:7px;height:7px;border-radius:50%;background:var(--text-faint);animation:typing-bounce 1.1s infinite}.dot:nth-child(2){animation-delay:.15s}.dot:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}mark.hl-assertive,.hl-assertive-demo{background:color-mix(in srgb,var(--bad-bg) 80%,transparent);color:var(--bad-fg);padding:0 3px;border-radius:3px;font-weight:600;text-decoration:underline;text-decoration-style:wavy;text-decoration-color:color-mix(in srgb,var(--bad-fg) 45%,transparent);text-underline-offset:3px;text-decoration-thickness:1px}mark.hl-hedge,.hl-hedge-demo{background:color-mix(in srgb,var(--ok-bg) 80%,transparent);color:var(--ok-fg);padding:0 3px;border-radius:3px;font-weight:500}.bubble-user mark.hl-assertive,.bubble-user mark.hl-hedge{background:#ffffff38;color:#fff;text-decoration-color:#ffffff8c}.formatted{display:flex;flex-direction:column;gap:.5rem}.formatted>*:first-child{margin-top:0}.formatted>*:last-child{margin-bottom:0}.formatted p{margin:0;line-height:1.6}.formatted h1,.formatted h2,.formatted h3{margin:.3rem 0 .1rem;line-height:1.3;letter-spacing:-.01em}.formatted h1{font-size:1.08rem;font-weight:700}.formatted h2{font-size:1rem;font-weight:700}.formatted h3{font-size:.95rem;font-weight:600}.formatted ul,.formatted ol{margin:0;padding-left:1.3rem;display:flex;flex-direction:column;gap:.2rem}.formatted li{line-height:1.55}.formatted strong{font-weight:700}.formatted em{font-style:italic}.formatted code{background:color-mix(in srgb,var(--text) 9%,transparent);padding:.08em .35em;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.bubble-user .formatted code{background:#ffffff38}.msg-actions{display:flex;gap:.3rem;margin-top:.45rem;flex-wrap:wrap}.action-btn{background:transparent;border:1px solid color-mix(in srgb,currentColor 18%,transparent);color:inherit;opacity:.75;padding:.22rem .7rem;font-size:.74rem;border-radius:999px;cursor:pointer;transition:opacity .12s,background .12s}.action-btn:hover{opacity:1;background:color-mix(in srgb,currentColor 7%,transparent)}.bubble-user .action-btn{border-color:#ffffff61;color:#ffffffeb}.trace{margin-top:.45rem}.trace-toggle{display:inline-flex;align-items:center;gap:.3rem;background:transparent;border:none;color:var(--text-dim);font-size:.76rem;cursor:pointer;padding:.18rem 0;font-weight:500;opacity:.8;transition:opacity .12s,color .12s}.trace-toggle:hover{opacity:1;color:var(--accent)}.trace-caret{display:inline-block;width:.65rem;font-size:.7rem}.trace-list{margin:.5rem 0 0;padding:.55rem .7rem;list-style:none;display:flex;flex-direction:column;gap:.45rem;background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:10px;border:1px dashed color-mix(in srgb,var(--text-faint) 35%,transparent);animation:bubble-in .2s ease-out}.trace-step{display:flex;gap:.55rem;align-items:flex-start}.trace-num{flex-shrink:0;width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;background:var(--surface);border:1px solid var(--border);color:var(--text-dim);font-variant-numeric:tabular-nums}.trace-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.18rem}.trace-head{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;font-size:.8rem}.trace-label{font-weight:600;color:var(--text)}.trace-verdict{font-size:.72rem;color:var(--text-dim)}.chip-sm{font-size:.66rem;padding:.08rem .42rem}.trace-panel{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.axis-breakdown{padding:.55rem .7rem;background:color-mix(in srgb,var(--text) 3%,transparent);border-radius:10px;border:1px solid color-mix(in srgb,var(--text-faint) 25%,transparent);display:flex;flex-direction:column;gap:.4rem}.axis-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.axis-label{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);min-width:6rem}.judge-panel{margin-top:.3rem;padding:.5rem .6rem;background:var(--surface);border:1px solid var(--border);border-radius:8px}.judge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.35rem .8rem}.judge-axis{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.76rem}.judge-axis-label{color:var(--text-dim);font-weight:500}.judge-dots{display:inline-flex;gap:3px}.judge-dot{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--text-faint) 35%,transparent)}.judge-dot-on{background:var(--accent)}.judge-flag{margin-top:.4rem}.judge-notes{margin-top:.35rem;padding-top:.35rem;border-top:1px dashed color-mix(in srgb,var(--text-faint) 30%,transparent);font-size:.72rem;color:var(--text-dim);font-style:italic}.intent-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;letter-spacing:.02em}.bubble-row-clarify{justify-content:flex-start}.bubble-clarify{background:color-mix(in srgb,var(--accent) 8%,var(--bubble-in));color:var(--bubble-in-fg);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));max-width:80%;padding:.6rem .85rem;border-radius:16px}.clarify-header{margin-bottom:.35rem}.clarify-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.65rem;font-weight:700;padding:.15rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);letter-spacing:.04em;text-transform:uppercase}.followup-hint{display:block;width:100%;margin-top:.7rem;padding:.55rem .7rem;background:color-mix(in srgb,var(--accent) 7%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-left:2px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:6px;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:background .14s,border-color .14s}.followup-hint:hover:not(:disabled):not(.followup-hint-active){background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.followup-hint:disabled{opacity:.55;cursor:not-allowed}.followup-hint-active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);border-left-width:3px}.followup-chip{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:.25rem}.followup-hint-active .followup-chip{color:color-mix(in srgb,var(--accent) 90%,var(--text))}.followup-text{margin:0;font-size:.86rem;color:var(--text);line-height:1.5}.chat-input-followup textarea{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.followup-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.4rem;padding:.5rem .7rem;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:8px}.followup-banner-text{display:flex;flex-direction:column;gap:.18rem;min-width:0;flex:1}.followup-banner-label{font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.followup-banner-q{font-size:.84rem;color:var(--text);line-height:1.4;word-break:break-word}.followup-banner-cancel{background:transparent;border:none;color:var(--text-dim);font-size:1rem;width:24px;height:24px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .14s,color .14s;flex-shrink:0}.followup-banner-cancel:hover{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text)}.chat-input{display:flex;flex-direction:column;gap:.35rem;padding:.55rem .9rem calc(.7rem + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border)}.chat-input-row{display:grid;grid-template-columns:1fr auto;gap:.55rem;align-items:end}.chat-input textarea{resize:none;min-height:2.6rem;max-height:200px;padding:.6rem 1rem;background:var(--surface-2);border:1px solid var(--border);border-radius:18px;font-size:.94rem;line-height:1.45;color:var(--text);transition:border-color .14s,box-shadow .14s,background .14s;overflow-y:hidden;display:block}.chat-input textarea:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--surface);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.chat-input textarea::placeholder{color:var(--text-faint)}.input-hint{display:flex;flex-wrap:wrap;align-items:center;gap:.22rem;font-size:.66rem;color:var(--text-faint);padding:0 .3rem;min-height:.95rem}.input-hint kbd{display:inline-flex;align-items:center;padding:.03rem .32rem;font-size:.62rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);line-height:1.2}.chat-input button[type=submit]{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;border:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s,transform .1s;box-shadow:0 1px 2px #2b4c7e47;flex-shrink:0}.chat-input button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.chat-input button[type=submit]:active:not(:disabled){transform:scale(.94)}.chat-input button[type=submit]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 520px){.chat-header{padding:.6rem .85rem}.brand-text p{display:none}.bubble{max-width:84%;font-size:.92rem}.chat-input{padding:.5rem .75rem calc(.7rem + env(safe-area-inset-bottom))}.suggestion-grid{grid-template-columns:1fr}.session-stats{display:none}.input-hint{font-size:.62rem}.input-hint kbd{font-size:.58rem}.msg-list{max-width:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.assistant-fab{position:fixed;right:22px;bottom:calc(22px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#3d619b,#2b4c7e);color:#fff;border:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #2b4c7e47,0 10px 28px -6px #2b4c7e52;z-index:9999;transition:transform .2s cubic-bezier(.2,.9,.2,1.1),background .16s,box-shadow .16s}.assistant-fab:hover{transform:translateY(-2px) scale(1.04)}.assistant-fab:active{transform:translateY(0) scale(.96)}.assistant-fab-open{background:var(--surface);color:var(--text);box-shadow:0 4px 14px #3c281426}.assistant-widget{position:fixed;right:22px;bottom:calc(94px + env(safe-area-inset-bottom));width:min(360px,calc(100vw - 44px));height:min(560px,calc(100vh - 140px));background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 44px #3c281438;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;z-index:9998;transform-origin:bottom right;animation:widget-open .22s cubic-bezier(.2,.9,.2,1.05)}@keyframes widget-open{0%{opacity:0;transform:scale(.92) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.assistant-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.7rem .85rem;background:linear-gradient(135deg,#3d619b,#2b4c7e);color:#fff}.assistant-header-brand{display:flex;align-items:center;gap:.6rem;min-width:0}.assistant-avatar{width:32px;height:32px;border-radius:50%;background:#fff3;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.7rem;color:#fff;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff24}.assistant-header-text{min-width:0}.assistant-title{font-weight:600;font-size:.92rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assistant-sub{font-size:.7rem;color:#ffffffbf;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assistant-close{background:transparent;border:none;color:#ffffffd9;padding:.32rem;border-radius:6px;cursor:pointer;line-height:0;transition:background .14s;flex-shrink:0}.assistant-close:hover{background:#ffffff2e;color:#fff}.assistant-scroll{overflow-y:auto;padding:.85rem .75rem;background-color:var(--bg);background-image:radial-gradient(ellipse 90% 50% at 50% 0%,color-mix(in srgb,var(--accent) 5%,transparent) 0%,transparent 65%);-webkit-overflow-scrolling:touch}.assistant-scroll::-webkit-scrollbar{width:6px}.assistant-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-dim) 30%,transparent);border-radius:999px}.assistant-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;gap:.75rem;padding:1rem;color:var(--text-dim);font-size:.88rem}.assistant-empty-dot{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#3d619b,#2b4c7e);box-shadow:0 6px 18px #2b4c7e47,inset 0 0 0 1px #ffffff24}.assistant-empty p{margin:0}.assistant-chips{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;margin-top:.2rem}.assistant-chip{background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:.78rem;padding:.38rem .75rem;border-radius:999px;cursor:pointer;transition:background .14s,border-color .14s}.assistant-chip:hover{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.assistant-messages{display:flex;flex-direction:column;gap:.45rem}.mini-bubble{max-width:84%;padding:.5rem .7rem;font-size:.88rem;line-height:1.55;border-radius:12px;word-break:break-word;white-space:pre-wrap;box-shadow:var(--shadow-sm)}.mini-bubble-user{align-self:flex-end;background:var(--bubble-out);color:var(--bubble-out-fg);border-bottom-right-radius:4px}.mini-bubble-assistant{align-self:flex-start;background:linear-gradient(135deg,#f5f1e8,#fff);color:var(--bubble-in-fg);border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border));border-bottom-left-radius:4px}@media (prefers-color-scheme: dark){.mini-bubble-assistant{background:linear-gradient(135deg,#33302b,#262321);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}}.mini-bubble-error{align-self:flex-start;background:color-mix(in srgb,var(--bad-bg) 85%,var(--surface));color:var(--text);border:1px solid color-mix(in srgb,var(--bad-fg) 28%,transparent);border-bottom-left-radius:4px}.mini-bubble-clarify{align-self:flex-start;background:color-mix(in srgb,var(--accent) 8%,var(--bubble-in));color:var(--bubble-in-fg);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-bottom-left-radius:4px}.mini-clarify-header{margin-bottom:.3rem}.mini-clarify-chip{display:inline-flex;align-items:center;font-size:.6rem;font-weight:700;padding:.1rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);letter-spacing:.04em;text-transform:uppercase}.mini-content{line-height:1.55}.mini-followup-chip{display:block;width:100%;margin-top:.5rem;padding:.4rem .55rem;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-left:2px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:6px;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:background .14s,border-color .14s}.mini-followup-chip:hover:not(:disabled):not(.mini-followup-chip-active){background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.mini-followup-chip:disabled{opacity:.55;cursor:not-allowed}.mini-followup-chip-active{background:color-mix(in srgb,var(--accent) 20%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);border-left-width:3px}.mini-followup-chip-label{display:block;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:.2rem}.mini-followup-chip-text{display:block;font-size:.78rem;color:var(--text);line-height:1.4}.assistant-input-followup textarea{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.mini-followup-banner{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding:.32rem .55rem;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:8px}.mini-followup-banner-label{font-size:.66rem;font-weight:700;letter-spacing:.04em;color:var(--accent)}.mini-followup-banner-cancel{background:transparent;border:none;color:var(--text-dim);font-size:.85rem;width:20px;height:20px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .14s,color .14s}.mini-followup-banner-cancel:hover{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text)}.mini-meta{margin-top:.35rem;padding-top:.35rem;border-top:1px dashed color-mix(in srgb,var(--text-faint) 40%,transparent);font-size:.68rem;color:var(--text-dim);font-variant-numeric:tabular-nums}.mini-meta strong{color:var(--text);font-weight:700}.mini-typing{display:inline-flex;gap:4px;align-items:center;padding:.6rem .75rem;min-height:30px}.mini-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-faint);animation:typing-bounce 1.1s infinite}.mini-typing span:nth-child(2){animation-delay:.15s}.mini-typing span:nth-child(3){animation-delay:.3s}.assistant-input{display:grid;grid-template-columns:1fr auto;gap:.4rem;padding:.55rem .65rem .7rem;background:var(--surface);border-top:1px solid var(--border);align-items:end}.assistant-input textarea{resize:none;min-height:2.3rem;max-height:120px;padding:.5rem .8rem;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;font-size:.88rem;line-height:1.45;color:var(--text);overflow-y:hidden;transition:border-color .14s,box-shadow .14s,background .14s}.assistant-input textarea:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--surface);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.assistant-input textarea::placeholder{color:var(--text-faint)}.assistant-input button[type=submit]{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;border:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s,transform .1s;box-shadow:0 1px 2px #2b4c7e47;flex-shrink:0}.assistant-input button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.assistant-input button[type=submit]:active:not(:disabled){transform:scale(.94)}.assistant-input button[type=submit]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.mini-spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@media (max-width: 520px){.assistant-fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}.assistant-widget{right:14px;left:14px;bottom:calc(82px + env(safe-area-inset-bottom));width:auto;height:min(520px,calc(100vh - 110px))}}:root{color-scheme:light dark;--bg: #faf7f2;--bg-outer: #e8e2d5;--surface: #ffffff;--surface-2: #f0ebde;--header-bg: #ffffff;--header-fg: #2d2d2d;--text: #2d2d2d;--text-dim: #6e6760;--text-faint: #a39c92;--border: #e4ddd0;--border-strong: #c9c0b0;--accent: #2b4c7e;--accent-hover: #3d619b;--accent-soft: rgba(43, 76, 126, .1);--bubble-out: #2b4c7e;--bubble-out-fg: #ffffff;--bubble-in: #ffffff;--bubble-in-fg: #2d2d2d;--ok-bg: #e3ead5;--ok-fg: #5a6e3f;--warn-bg: #f3ebd5;--warn-fg: #8a6b37;--bad-bg: #f0dade;--bad-fg: #a8575f;--neutral-bg: #eee8dc;--neutral-fg: #6e6760;--radius-lg: 14px;--radius: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 2px rgba(60, 40, 20, .06);--shadow: 0 2px 8px rgba(60, 40, 20, .08);--shadow-lg: 0 8px 32px rgba(60, 40, 20, .12)}@media (prefers-color-scheme: dark){:root{--bg: #1a1816;--bg-outer: #0d0c0a;--surface: #242220;--surface-2: #2c2925;--header-bg: #242220;--header-fg: #e8e3db;--text: #e8e3db;--text-dim: #9b938a;--text-faint: #6b6560;--border: #332f2a;--border-strong: #443f38;--accent: #7a9ec8;--accent-hover: #97b2d6;--accent-soft: rgba(122, 158, 200, .16);--bubble-out: #2b4c7e;--bubble-out-fg: #ffffff;--bubble-in: #2e2b28;--bubble-in-fg: #e8e3db;--ok-bg: rgba(122, 153, 93, .2);--ok-fg: #b5c28e;--warn-bg: rgba(190, 149, 85, .2);--warn-fg: #d3b079;--bad-bg: rgba(190, 120, 130, .2);--bad-fg: #d49aa3;--neutral-bg: rgba(155, 147, 138, .16);--neutral-fg: #c4bcb0;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 2px 8px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6)}}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:var(--bg-outer);color:var(--text);font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic UI,Yu Gothic,YuGothic,Meiryo,-apple-system,BlinkMacSystemFont,Helvetica Neue,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15.5px;line-height:1.7;font-feature-settings:"palt" 1;text-rendering:optimizeLegibility;overscroll-behavior:none}#root{height:100%}button,textarea,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--accent) 28%,transparent)}
