:root{--bp-mobile:480px;--bp-tablet:768px;--bp-desktop:1024px;--bp-large:1440px;--font-size-xs:clamp(0.75rem,0.7rem + 0.2vw,0.875rem);--font-size-sm:clamp(0.875rem,0.8rem + 0.4vw,1rem);--font-size-base:clamp(1rem,0.9rem + 0.5vw,1.125rem);--font-size-lg:clamp(1.125rem,1rem + 0.6vw,1.25rem);--font-size-xl:clamp(1.25rem,1.1rem + 0.8vw,1.5rem);--font-size-2xl:clamp(1.5rem,1.3rem + 1vw,2rem);--font-size-3xl:clamp(1.875rem,1.6rem + 1.4vw,2.5rem);--space-xs:clamp(0.25rem,0.2rem + 0.2vw,0.375rem);--space-sm:clamp(0.5rem,0.4rem + 0.5vw,0.75rem);--space-md:clamp(0.75rem,0.6rem + 0.8vw,1rem);--space-lg:clamp(1rem,0.8rem + 1vw,1.5rem);--space-xl:clamp(1.5rem,1.2rem + 1.5vw,2rem);--space-2xl:clamp(2rem,1.6rem + 2vw,3rem);--space-3xl:clamp(2.5rem,2rem + 2.5vw,4rem);--touch-target-min:44px;--touch-target-comfortable:48px;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--radius-sm:clamp(4px,0.2rem + 0.2vw,6px);--radius-md:clamp(8px,0.4rem + 0.4vw,12px);--radius-lg:clamp(12px,0.6rem + 0.6vw,16px);--radius-xl:clamp(16px,0.8rem + 0.8vw,20px)}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100vh;height:100dvh;font-family:Georgia,Times New Roman,serif;font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;text-size-adjust:100%;-webkit-overflow-scrolling:touch}body{background:linear-gradient(135deg,#f8f6f0,#f2f0e8 50%,#ede9dd);background-attachment:fixed;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(173,216,230,.15) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(144,238,144,.15) 0,transparent 50%),radial-gradient(circle at 40% 80%,rgba(176,224,230,.15) 0,transparent 50%);background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(0,0,0,.01) 0,rgba(0,0,0,.01) 4px);pointer-events:none}.paper{background:#f9f7f1;border:2px solid rgba(144,238,144,.3);border-radius:15px;box-shadow:0 4px 8px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.8);position:relative}.paper:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent 1px,rgba(173,216,230,.03) 0,rgba(173,216,230,.03) 2px);border-radius:inherit;pointer-events:none}.paper-button{background:linear-gradient(135deg,#fafafa,#f5f5f5);border:2px solid rgba(0,0,0,.8);border-radius:var(--radius-md);box-shadow:0 3px 6px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.9);transition:all .2s ease;cursor:pointer;position:relative;font-size:var(--font-size-sm);min-height:var(--touch-target-min);padding:var(--space-sm) var(--space-md);display:flex;align-items:center;justify-content:center;gap:var(--space-xs)}.paper-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 1px,rgba(0,0,0,.02) 0,rgba(0,0,0,.02) 2px);border-radius:inherit;pointer-events:none}.paper-button:hover{background:linear-gradient(135deg,#f0f0f0,#e8e8e8);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.12),0 2px 4px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.9)}.paper-button:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.9)}.paper-input{background:linear-gradient(135deg,#f9f7f1,#f5f3ed);border:2px solid rgba(144,238,144,.4);border-radius:var(--radius-md);color:#2c3e50;font-size:var(--font-size-base);padding:var(--space-md) var(--space-lg);transition:all .2s ease;box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.9);min-height:var(--touch-target-comfortable);font-size:max(var(--font-size-base),16px)}.paper-input::placeholder{color:rgba(44,62,80,.5)}.paper-input:focus{outline:none;border-color:rgba(70,130,180,.6);background:linear-gradient(135deg,#ffffff,#f9f7f1);box-shadow:0 0 0 3px rgba(70,130,180,.1),inset 0 1px 3px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.08)}.message-bubble{max-width:min(80%,600px);padding:var(--space-lg) var(--space-xl);margin:var(--space-md) 0;border-radius:var(--radius-xl);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;transition:all .2s ease-out;will-change:auto;contain:layout style paint;position:relative;font-size:var(--font-size-base);line-height:1.6}.user-message{background:linear-gradient(135deg,#fafafa,#f5f5f5);border:2px solid rgba(70,130,180,.6);margin-left:auto;color:#2c4e60;box-shadow:0 3px 6px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.8)}.user-message:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(70,130,180,.02) 0,rgba(70,130,180,.02) 4px);border-radius:inherit;pointer-events:none}.assistant-message{background:linear-gradient(135deg,#fafafa,#f5f5f5);border:2px solid rgba(255,193,7,.7);margin-right:auto;color:#2c4e60;box-shadow:0 3px 6px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.8)}.assistant-message:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,193,7,.02) 0,rgba(255,193,7,.02) 4px);border-radius:inherit;pointer-events:none}.typing-indicator{display:flex;align-items:center;gap:8px;padding:16px 20px;background:linear-gradient(135deg,#f0f8f0,#e6f4e6);border:2px solid rgba(144,238,144,.3);border-radius:20px;margin-right:auto;max-width:120px;color:rgba(44,85,48,.8);box-shadow:0 2px 4px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.8)}.typing-dots{display:flex;gap:4px}.typing-dot{width:6px;height:6px;background:rgba(70,130,80,.6);border-radius:50%;animation:typingPulse 1.4s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}.thinking-bubble{position:relative;overflow:hidden;animation:fadeInUp .3s ease-out}.thinking-bubble:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,rgba(144,238,144,.1),rgba(173,216,230,.15) 50%,rgba(144,238,144,.1));animation:gradientShift 3s ease-in-out infinite;pointer-events:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.typewriter-text{animation:fadeInUp .2s ease-out}.typewriter-cursor{animation:streamingBlink .8s ease-in-out infinite}.streaming-response{transition:all .1s ease-out}.streaming-response .typewriter-text{overflow:hidden;border-right:2px solid rgba(70,130,180,.8);white-space:pre-wrap;animation:typing .1s step-end}@keyframes typing{0%{width:0}to{width:100%}}@keyframes gradientShift{0%,to{opacity:.3}50%{opacity:.6}}@keyframes typingPulse{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.scroll-smooth{scroll-behavior:smooth}.chat-container{height:100vh;height:100dvh;display:flex;flex-direction:column;position:relative;z-index:1;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);container-type:inline-size}.chat-header{padding:var(--space-lg) var(--space-xl);display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);background:linear-gradient(135deg,#f9f7f1,#f5f3ed);border-bottom:2px solid rgba(144,238,144,.2);box-shadow:0 2px 4px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.9);flex-wrap:wrap}.chat-header h1{color:#2c4e60;font-size:var(--font-size-2xl);font-weight:400;margin:0;text-shadow:0 1px 2px rgba(255,255,255,.8);font-family:Georgia,Times New Roman,serif;line-height:1.2}.chat-messages{flex:1 1;overflow-y:auto;padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);scroll-behavior:smooth;overflow-anchor:none;will-change:scroll-position;transform:translateZ(0);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:rgba(144,238,144,.1);border-radius:4px}.chat-messages::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#a8d8a8,#7fbf7f);border-radius:4px;border:1px solid rgba(144,238,144,.3)}.chat-messages::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#98c898,#6faf6f)}.chat-input-container{padding:var(--space-lg) var(--space-xl);background:linear-gradient(135deg,#f9f7f1,#f5f3ed);border-top:2px solid rgba(173,216,230,.2);box-shadow:0 -2px 4px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.9)}.chat-input-form{display:flex;gap:var(--space-md);align-items:center;max-width:var(--container-lg);margin:0 auto}.chat-input{flex:1 1;padding:var(--space-lg) var(--space-xl);font-size:max(var(--font-size-base),16px);border:none;resize:none;max-height:120px;font-family:Georgia,Times New Roman,serif;line-height:1.5}.chat-input,.send-button{min-height:var(--touch-target-comfortable)}.send-button{padding:var(--space-md);border:2px solid rgba(0,0,0,.8);color:#2c4e60;font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;min-width:var(--touch-target-comfortable);background:linear-gradient(135deg,#fafafa,#f5f5f5);border-radius:var(--radius-md);transition:all .2s ease;cursor:pointer}.send-button:hover{background:linear-gradient(135deg,#f0f0f0,#e8e8e8);transform:translateY(-1px)}.send-button:disabled{opacity:.5;cursor:not-allowed}.send-button:disabled:hover{transform:none}.thinking-container{position:relative;overflow:hidden}.thinking-container:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(173,216,230,.2),transparent);animation:shimmer 2s infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.streaming-cursor{animation:streamingBlink 1s ease-in-out infinite}.thinking-cursor{animation:streamingBlink 1.2s ease-in-out infinite}@keyframes streamingBlink{0%,45%{opacity:1;background-color:rgba(70,130,180,.8)}50%,95%{opacity:.3;background-color:rgba(70,130,180,.4)}to{opacity:1;background-color:rgba(70,130,180,.8)}}.typewriter-cursor{display:inline-block;width:2px;height:1.2em;background:rgba(70,130,180,.7);animation:blink 1s infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.streaming-text{transition:none;animation:none;contain:layout style}.streaming-content,.streaming-text{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.streaming-content{min-height:1.2em;will-change:contents;position:relative}.streaming-cursor,.thinking-cursor{display:inline-block;vertical-align:top;line-height:inherit}.model-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(135deg,#e8f4f8,#d4e9f7);border:1px solid rgba(173,216,230,.4);border-radius:6px;font-size:.75rem;font-weight:500;color:#2c4e60}.settings-panel{transform:translateY(-10px);opacity:0;animation:slideIn .3s ease-out forwards}@keyframes slideIn{to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateX(-50%) translateY(-20px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.stream-transition{transition:all .3s ease-in-out}.thinking-phase{border-left:3px solid rgba(144,238,144,.6);animation:thinkingGlow 2s ease-in-out infinite alternate;transition:all .3s ease-out;will-change:transform,opacity;contain:layout style paint}@keyframes thinkingGlow{0%{border-left-color:rgba(144,238,144,.3);box-shadow:0 0 6px rgba(144,238,144,.1)}to{border-left-color:rgba(144,238,144,.8);box-shadow:0 0 12px rgba(144,238,144,.2)}}@keyframes thinkingPulse{0%,70%,to{transform:scale(.8);opacity:.4}35%{transform:scale(1.2);opacity:1}}.response-phase{border-left:3px solid rgba(173,216,230,.6);animation:responseGlow 1.5s ease-in-out infinite alternate;opacity:1;transform:translateY(0);transition:opacity .3s ease-out,transform .3s ease-out}@keyframes responseGlow{0%{border-left-color:rgba(173,216,230,.3);box-shadow:0 0 6px rgba(173,216,230,.1)}to{border-left-color:rgba(173,216,230,.8);box-shadow:0 0 12px rgba(173,216,230,.2)}}.paper-button.active{background:linear-gradient(135deg,#c2e0f4,#b0d7f1)!important;border-color:rgba(70,130,180,.5);box-shadow:0 4px 8px rgba(0,0,0,.12),0 2px 4px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.9),0 0 0 2px rgba(70,130,180,.1)}.cancel-button{background:linear-gradient(135deg,#f4d4d4,#f1c2c2)!important;border-color:rgba(220,20,60,.4)!important;color:#8B0000!important}.cancel-button:hover{background:linear-gradient(135deg,#f1c2c2,#eeb2b2)!important;transform:translateY(-1px)}.responsive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));grid-gap:var(--space-lg);gap:var(--space-lg)}.responsive-stack{display:flex;flex-direction:column;gap:var(--space-md)}.responsive-flex{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:center}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min);padding:var(--space-sm) var(--space-md)}.container{max-width:var(--container-lg);margin:0 auto;padding:0 var(--space-lg)}@container (max-width: 600px){.responsive-grid{grid-template-columns:1fr}.responsive-flex{flex-direction:column;align-items:stretch}}@media (max-width:768px){.message-bubble{line-height:1.5}.chat-input,.message-bubble{font-size:max(var(--font-size-base),16px)}.paper-button{font-size:max(var(--font-size-sm),14px)}.thinking-bubble{padding:var(--space-md) var(--space-lg);margin:var(--space-sm) 0}.thinking-bubble div[style*="gap: 12px"]{gap:8px!important}.thinking-bubble div[style*="font-size: 0.95rem"]{font-size:.9rem!important}body{position:fixed;width:100%;overflow:hidden}.chat-container,body{height:100vh;height:100dvh}.chat-container{padding:max(env(safe-area-inset-top),8px) max(env(safe-area-inset-right),8px) max(env(safe-area-inset-bottom),8px) max(env(safe-area-inset-left),8px)}.chat-header{padding:12px 16px;position:relative;z-index:10;flex-shrink:0}.chat-header h1{font-size:1.5rem}.message-bubble{max-width:95%;font-size:16px;padding:14px 18px}.chat-messages{padding:12px 16px;flex:1 1;min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.chat-input-container{padding:12px 16px;position:relative;z-index:10;flex-shrink:0;background:linear-gradient(135deg,#f9f7f1,#f5f3ed)}.chat-input-form{gap:8px;align-items:flex-end}.chat-input{font-size:16px;padding:12px 16px;min-height:44px;max-height:100px;width:100%;box-sizing:border-box}.send-button{min-width:44px;min-height:44px;padding:12px;align-self:flex-end;flex-shrink:0}.thinking-container{margin:12px 0;padding:12px 16px}.settings-panel{margin-top:12px;padding:16px}.paper-button{min-height:44px;padding:12px 16px;font-size:.9rem;touch-action:manipulation}.library-input{font-size:16px!important;min-height:44px}*{max-width:100%;box-sizing:border-box}}@media (max-width:768px){.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:2px}}@media (max-width:480px){.chat-header{padding:10px 12px}.chat-messages{padding:8px 12px}.chat-input-container{padding:10px 12px}.message-bubble{max-width:98%;padding:12px 16px;font-size:15px}.paper-button{font-size:.85rem;padding:10px 14px}}@media (max-width:768px) and (orientation:landscape){.chat-header,.chat-input-container{padding:8px 16px}.message-bubble{font-size:14px;padding:10px 14px}}@supports (-webkit-touch-callout:none){.chat-container{height:-webkit-fill-available}.chat-input{font-size:16px;-webkit-appearance:none;border-radius:12px}}@media (max-width:768px){div[style*="height: 100vh"]{height:100vh!important;height:100dvh!important}div[style*="padding: 20px"]{padding:12px 16px!important}div[style*=grid-template-columns]{grid-template-columns:1fr!important;gap:12px!important}div[style*="min-width: 300px"],div[style*="min-width: 320px"]{min-width:auto!important;width:100%!important}div[style*="max-width: 1000px"]{max-width:100%!important;margin:0!important}button[style*="padding: 8px"]{padding:12px 16px!important;min-height:44px!important;touch-action:manipulation!important}h2[style*="font-size: 1.5rem"]{font-size:1.3rem!important}div[style*="position: fixed"][style*="inset: 0"],div[style*="position: fixed"][style*="z-index: 10000"]{padding:max(env(safe-area-inset-top),8px) max(env(safe-area-inset-right),8px) max(env(safe-area-inset-bottom),8px) max(env(safe-area-inset-left),8px)!important}div[style*="overflow-x: auto"]{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;-ms-overflow-style:none!important}div[style*="overflow-x: auto"]::-webkit-scrollbar{display:none!important}}@media (max-width:480px){div[style*="padding: 40px"]{padding:20px 12px!important}div[style*="padding: 16px"],div[style*="padding: 20px"]{padding:12px!important}h2[style*="font-size: 1.3rem"]{font-size:1.2rem!important}h3[style*="font-size: 1.2rem"]{font-size:1.1rem!important}button[style*="font-size: 0.8rem"]{font-size:.75rem!important;padding:8px 12px!important}}.streaming-response{position:relative;overflow:visible!important;min-height:auto;transition:all .05s ease-out;transform-origin:top left;contain:layout;will-change:height,contents;height:auto!important;min-height:2rem;word-wrap:break-word;overflow-wrap:break-word;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}@keyframes bubbleGrow{0%{min-height:60px;opacity:.9;transform:scale(.99)}to{min-height:auto;opacity:1;transform:scale(1)}}.streaming-cursor{animation:streamingBlink 1s infinite,streamingPulse 2s ease-in-out infinite}@keyframes streamingPulse{0%,to{background:rgba(70,130,180,.8);transform:scaleY(1)}50%{background:rgba(70,130,180,1);transform:scaleY(1.05)}}.streaming-content-wrapper{transition:height .1s ease-out;overflow:hidden;will-change:height}.streaming-text-container{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:layout style}.message-bubble h1,.message-bubble h2,.message-bubble h3,.message-bubble h4,.message-bubble h5,.message-bubble h6{margin-top:0;margin-bottom:.5rem;font-family:Georgia,Times New Roman,serif}.message-bubble h1{font-size:1.25rem;border-bottom:1px solid rgba(44,78,96,.2);padding-bottom:.25rem}.message-bubble h2{font-size:1.1rem}.message-bubble h3{font-size:1rem}.message-bubble p{margin-bottom:.5rem}.message-bubble p:last-child{margin-bottom:0}.message-bubble ol,.message-bubble ul{margin:.5rem 0;padding-left:1.5rem}.message-bubble li{margin-bottom:.25rem}.message-bubble blockquote{margin:.5rem 0;padding-left:1rem;border-left:3px solid rgba(173,216,230,.5);font-style:italic;color:rgba(44,78,96,.8)}.message-bubble pre{background:linear-gradient(135deg,#f9f7f1,#f5f3ed);border:1px solid rgba(144,238,144,.3);border-radius:6px;padding:.75rem;overflow-x:auto;font-size:.85rem;margin:.5rem 0}.message-bubble code{font-family:Monaco,Consolas,Courier New,monospace;font-size:.9em}.message-bubble pre code{background:none;padding:0;border-radius:0}.message-bubble table{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:.9rem}.message-bubble td,.message-bubble th{padding:.5rem;text-align:left;border-bottom:1px solid rgba(144,238,144,.2)}.message-bubble th{background:linear-gradient(135deg,#e8f8e8,#d4f4d4);font-weight:600;color:#2c5530}.message-bubble a{color:#4682b4;text-decoration:underline;-webkit-text-decoration-color:rgba(70,130,180,.4);text-decoration-color:rgba(70,130,180,.4)}.message-bubble a:hover{-webkit-text-decoration-color:#4682b4;text-decoration-color:#4682b4}.document-artifact{margin:1rem 0;padding:1.5rem;background:linear-gradient(135deg,#e8f4f8,#d4e9f7);border:2px solid rgba(173,216,230,.4);border-radius:12px;box-shadow:0 4px 8px rgba(0,0,0,.1)}.document-artifact-header{margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(173,216,230,.3)}.document-artifact-title{color:#2c4e60;font-size:1.2rem;font-weight:600;margin:0 0 .5rem}.document-artifact-description{color:rgba(44,78,96,.7);font-style:italic;margin:0;font-size:.9rem}.document-artifact-content{background:#ffffff;padding:1rem;border-radius:8px;border:1px solid rgba(173,216,230,.2)}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}@media (max-width:768px){.paper-button{-webkit-tap-highlight-color:rgba(70,130,180,.2);touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}.paper-button:active{transform:translateY(1px) scale(.98);transition:transform .1s ease}.message-bubble{-webkit-user-select:text;-moz-user-select:text;user-select:text;-webkit-touch-callout:default}.chat-header,.responsive-flex,.touch-target{-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-input,.paper-input{-webkit-appearance:none;touch-action:manipulation}.chat-messages,[style*="overflow-x: auto"],[style*="overflowX: auto"]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}div[style*="overflow-x: auto"]::-webkit-scrollbar,div[style*="overflowX: auto"]::-webkit-scrollbar{display:none}.responsive-flex{gap:var(--space-md)}.responsive-flex>*{flex-shrink:0}}@media (max-width:768px){@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.chat-messages,.message-bubble{transform:translateZ(0);will-change:auto}.streaming-response{contain:layout style;will-change:contents}}