.suggested-prompts{flex-wrap:wrap;justify-content:center;gap:.5rem;padding:0 .5rem .25rem;display:flex}.suggested-prompt-chip{color:var(--blue);background:var(--blue-light);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:.35rem .75rem;font-family:inherit;font-size:.78rem;font-weight:500;line-height:1.4;transition:background .12s}.suggested-prompt-chip:hover{background:var(--blue-mid)}
.chat-fab{background:var(--blue);color:#fff;cursor:pointer;z-index:1000;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .18s,box-shadow .18s,opacity .18s;display:flex;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 8px 24px #1a73e859,0 2px 6px #0000001f}.chat-fab:hover{transform:translateY(-2px)scale(1.04);box-shadow:0 12px 28px #1a73e873,0 3px 8px #00000026}.chat-fab:active{transform:translateY(0)scale(.98)}.chat-fab--hidden{opacity:0;pointer-events:none;transform:scale(.8)}.chat-panel{width:min(380px,90vw);height:min(620px, calc(100vh - var(--nav-h) - 2.5rem));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);z-index:1001;opacity:0;pointer-events:none;flex-direction:column;transition:opacity .2s,transform .2s;display:flex;position:fixed;bottom:1.25rem;right:1.25rem;overflow:hidden;transform:translateY(16px)scale(.98);box-shadow:0 24px 60px #0f172a38,0 4px 14px #00000014}.chat-panel--open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.chat-panel-header{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;display:flex}.chat-panel-header-text{flex:1;min-width:0}.chat-panel-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:.925rem;font-weight:700}.chat-panel-subtitle{color:var(--text-4);white-space:nowrap;text-overflow:ellipsis;margin:.15rem 0 0;font-size:.75rem;line-height:1.3;overflow:hidden}.chat-close{border-radius:var(--r-sm);width:30px;height:30px;color:var(--text-3);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.chat-close:hover{background:var(--bg);color:var(--text)}.chat-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;flex:1;gap:.75rem;padding:1rem;display:flex;overflow-y:auto}.chat-empty{text-align:center;margin:auto 0;padding:1.25rem .5rem}.chat-empty-title{color:var(--text);margin:0 0 .4rem;font-size:.875rem;font-weight:600}.chat-empty-hint{color:var(--text-4);margin:0;font-size:.78rem;line-height:1.5}.chat-empty-hint em{color:var(--text-3);font-style:normal;font-weight:500}.chat-empty .suggested-prompts{margin-top:.85rem}.chat-msg{width:100%;display:flex}.chat-msg--user{justify-content:flex-end}.chat-msg--assistant{justify-content:flex-start}.chat-bubble{border-radius:var(--r);white-space:pre-wrap;word-wrap:break-word;max-width:85%;padding:.6rem .8rem;font-size:.85rem;line-height:1.5}.chat-bubble--md{white-space:normal}.chat-bubble--md p{margin:0 0 .4rem}.chat-bubble--md p:last-child{margin-bottom:0}.chat-bubble--md strong{font-weight:700}.chat-bubble--md em{font-style:italic}.chat-bubble--md ul,.chat-bubble--md ol{margin:.3rem 0;padding-left:1.2rem}.chat-bubble--md li{margin-bottom:.2rem}.chat-bubble--md h1,.chat-bubble--md h2,.chat-bubble--md h3{margin:.5rem 0 .25rem;font-size:.9rem;font-weight:700}.chat-bubble--md code{background:var(--border-2);border-radius:3px;padding:.1rem .3rem;font-size:.78rem}.chat-bubble--md blockquote{border-left:3px solid var(--border);color:var(--text-3);margin:.3rem 0;padding-left:.75rem}.chat-msg--user .chat-bubble{background:var(--blue);color:#fff;border-bottom-right-radius:4px}.chat-msg--assistant .chat-bubble{background:var(--bg);color:var(--text-2);border:1px solid var(--border);border-bottom-left-radius:4px}.chat-msg--error .chat-bubble{background:var(--red-bg);border-color:var(--red);color:var(--red-text)}.chat-typing{gap:4px;padding:.75rem .85rem;display:inline-flex}.chat-typing span{background:var(--text-4);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite chat-dot}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-input-row{border-top:1px solid var(--border);background:var(--surface);align-items:flex-end;gap:.5rem;padding:.75rem .875rem;display:flex}.chat-input-row textarea{resize:none;border:1px solid var(--border);border-radius:var(--r);background:var(--bg);min-height:38px;max-height:120px;color:var(--text);outline:none;flex:1;padding:.55rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.45;transition:border-color .12s,box-shadow .12s}.chat-input-row textarea:focus{border-color:var(--blue);background:var(--surface);box-shadow:0 0 0 3px var(--blue-light)}.chat-input-row textarea:disabled{opacity:.6}.chat-send{border-radius:var(--r);background:var(--blue);color:#fff;cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:background .12s,transform .12s,opacity .12s;display:flex}.chat-send:hover:not(:disabled){background:var(--blue-dark)}.chat-send:active:not(:disabled){transform:scale(.95)}.chat-send:disabled{opacity:.4;cursor:not-allowed}.chat-signin{border-top:1px solid var(--border);background:linear-gradient(180deg, var(--surface) 0%, var(--bg) 100%);align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.chat-signin-icon{background:var(--blue-light);width:34px;height:34px;color:var(--blue);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-signin-text{flex:1;min-width:0}.chat-signin-title{color:var(--text);letter-spacing:-.01em;margin:0 0 .1rem;font-size:.82rem;font-weight:600}.chat-signin-hint{color:var(--text-4);margin:0;font-size:.72rem;line-height:1.35}.chat-signin-btn{border-radius:var(--r);background:var(--blue);color:#fff;white-space:nowrap;flex-shrink:0;padding:.45rem .85rem;font-size:.78rem;font-weight:600;text-decoration:none;transition:background .12s,transform .12s}.chat-signin-btn:hover{background:var(--blue-dark)}.chat-signin-btn:active{transform:scale(.97)}.chat-drag-handle{display:none}@media (max-width:1024px){.chat-panel{width:min(360px,85vw);height:min(560px, calc(100vh - var(--nav-h) - 2.5rem))}}@media (max-width:640px){.chat-fab{right:1rem;bottom:calc(1rem + var(--bottom-nav-space,var(--safe-bottom,0px)));width:44px;height:44px}.chat-panel{border:none;border-radius:0;width:100%;height:100%;position:fixed;inset:0}.chat-drag-handle{justify-content:center;padding:.5rem 0 0;display:flex}.chat-drag-handle span{background:var(--border);border-radius:2px;width:40px;height:4px;display:block}.chat-input-row textarea{font-size:16px}}
.reading-progress{top:var(--nav-h,56px);background:var(--blue);z-index:100;pointer-events:none;will-change:width;height:2px;transition:none;position:fixed;left:0}
