*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.block{display:block}.inline{display:inline}.grid{display:grid}.hidden{display:none}.resize{resize:both}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--background: #2b2a27;--foreground: #e8e4de;--card: #3c3936;--primary: #2dbe78;--primary-strong: #1a8f5c;--secondary: #35322e;--muted: #302e2b;--muted-foreground: #9b9590;--border: rgba(255, 255, 255, .08);--ring: rgba(45, 190, 120, .24);--destructive: #ef4444;--sidebar-bg: #1a1915;--sidebar-accent: #2b2a27;--input-border: rgba(255, 255, 255, .12);--input-border-focus: rgba(255, 255, 255, .24);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .28);--shadow-md: 0 10px 30px rgba(0, 0, 0, .18);--radius-card: 12px;--radius-pill: 999px;--app-font-size: 16px}html[data-theme=light]{--background: #f4f3ee;--foreground: #1a1714;--card: #ffffff;--primary: #1a8f5c;--primary-strong: #14704a;--secondary: #ebe9e1;--muted: #eceae2;--muted-foreground: #6b665e;--border: rgba(0, 0, 0, .08);--ring: rgba(26, 143, 92, .2);--destructive: #dc2626;--sidebar-bg: #ebe9e1;--sidebar-accent: #e2dfd7;--input-border: rgba(0, 0, 0, .12);--input-border-focus: rgba(0, 0, 0, .24);--shadow-lg: 0 20px 50px rgba(29, 29, 29, .08);--shadow-md: 0 10px 25px rgba(29, 29, 29, .06)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}html{color-scheme:dark}html[data-theme=light]{color-scheme:light}body{min-height:100vh;background:var(--background);color:var(--foreground);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--app-font-size);line-height:1.6}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit}.logo-lockup{display:inline-flex;align-items:center;justify-content:center}.logo-mark{width:32px;height:32px;border-radius:10px;display:inline-grid;place-items:center;background:var(--primary);color:#fff;font-size:.95rem;font-weight:700;line-height:1;box-shadow:var(--shadow-md)}.logo-mark.sm{width:32px;height:32px;font-size:.95rem}.logo-mark.lg{width:64px;height:64px;border-radius:20px;font-size:1.8rem}.logo-mark.is-soft{background:color-mix(in srgb,var(--primary) 16%,transparent);color:var(--primary);box-shadow:none}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,rgba(217,119,87,.14),transparent 0 32%),var(--background)}.auth-card{width:min(100%,420px);padding:32px;border-radius:28px;border:1px solid var(--border);background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:var(--shadow-lg)}.auth-logo-wrap{margin-bottom:20px}.auth-kicker,.topbar-kicker,.chat-section-kicker,.sidebar-search-label,.sidebar-kicker{margin:0 0 6px;color:var(--muted-foreground);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.auth-card h1{margin:0;font-size:clamp(2rem,6vw,2.6rem);line-height:1.05}.auth-subtitle,.auth-helper,.input-bar-hint,.input-bar-disclaimer,.sidebar-empty span,.chat-empty-state p,.chat-welcome p,.message-bubble-header span,.message-tools,.tool-indicator p,.thinking-copy p,.web-preview-empty p,.topbar-email,.conversation-main-copy span,.code-block-language{color:var(--muted-foreground)}.auth-form{display:grid;gap:14px;margin-top:28px}.auth-form label,.sidebar-search,.settings-option-column,.settings-panel-group{display:grid;gap:8px}.auth-form input,.sidebar-search input,.input-bar textarea,.settings-panel select{width:100%;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--background) 35%,var(--card));color:var(--foreground);padding:12px 14px;transition:border-color .2s ease,background .2s ease}.auth-password-row{position:relative}.auth-password-row input{padding-right:76px}.auth-password-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted-foreground);padding:6px 10px;font-size:.82rem}.auth-form input:focus,.sidebar-search input:focus,.input-bar textarea:focus,.settings-panel select:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 24%,transparent)}.auth-submit-button,.auth-disabled-button,.primary-button,.ghost-button,.conversation-delete,.conversation-main,.mini-file,.code-editor-topbar button,.web-preview-topbar button,.topbar-pill-button,.topbar-icon-button,.sidebar-footer-button,.sidebar-collapse-button,.chat-suggestion-card,.new-chat-button,.input-icon-button,.send-button,.attachment-remove,.auth-switch,.code-block-copy,.overlay-backdrop{border:1px solid transparent;transition:background .18s ease,border-color .18s ease,transform .18s ease,color .18s ease,opacity .18s ease}.auth-submit-button,.primary-button,.send-button,.new-chat-button{background:var(--primary);color:#fff}.auth-submit-button,.auth-disabled-button,.auth-switch,.topbar-pill-button{border-radius:var(--radius-pill);padding:12px 16px}.auth-disabled-button,.auth-switch,.ghost-button,.conversation-delete,.mini-file,.topbar-pill-button,.topbar-icon-button,.sidebar-footer-button,.sidebar-collapse-button,.input-icon-button,.chat-suggestion-card,.attachment-remove{background:transparent;border-color:var(--border);color:var(--foreground)}.auth-submit-button:hover,.auth-switch:hover,.ghost-button:hover,.conversation-delete:hover,.conversation-main:hover,.mini-file:hover,.code-editor-topbar button:hover,.web-preview-topbar button:hover,.topbar-pill-button:hover,.topbar-icon-button:hover,.sidebar-footer-button:hover,.sidebar-collapse-button:hover,.chat-suggestion-card:hover,.new-chat-button:hover,.input-icon-button:hover,.send-button:hover,.attachment-remove:hover,.auth-disabled-button:hover,.code-block-copy:hover,.auth-password-toggle:hover{transform:translateY(-1px)}.auth-divider{position:relative;margin:18px 0;text-align:center;color:var(--muted-foreground)}.auth-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--border)}.auth-divider span{position:relative;z-index:1;padding:0 10px;background:color-mix(in srgb,var(--card) 92%,transparent)}.auth-error{margin:0;color:#ff9b8a}.auth-disabled-button{width:100%}.auth-switch{width:100%;margin-top:16px}.auth-card-minimal{text-align:center}.auth-brand-name{margin:0 0 4px;font-size:24px;font-weight:700;color:var(--foreground)}.auth-key-input{width:100%;max-width:320px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--background) 35%,var(--card));color:var(--foreground);padding:12px 16px;font-size:1rem;transition:border-color .2s ease,background .2s ease}.auth-key-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 24%,transparent)}.auth-card-minimal .auth-form{align-items:center}.auth-card-minimal .auth-submit-button{width:min(100%,320px);height:44px;background:#2d8c5a;border-radius:8px;font-size:1rem;font-weight:600}.auth-card-minimal .auth-submit-button:hover:not(:disabled){background:#25784d}.topbar-logout-button{opacity:.7;font-size:.85rem}.workspace-shell{min-height:100vh;display:grid;grid-template-columns:256px minmax(0,1fr);background:var(--background)}.panel-layout-left,.panel-layout-main{min-width:0}.panel-layout-main{transition:padding-right .3s ease-out}.panel-layout.has-artifact .panel-layout-main{padding-right:50vw}.sidebar-backdrop{display:none}.sidebar{position:sticky;top:0;width:256px;height:100vh;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px;padding:16px;font-size:14px;border-right:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--sidebar-bg) 98%,transparent);transition:transform .3s ease,opacity .2s ease,width .3s ease}.sidebar.is-closed{transform:translate(-100%);opacity:0;pointer-events:none}.sidebar-header,.workspace-topbar,.chat-panel-header,.mini-computer-topbar,.code-editor-topbar,.web-preview-topbar,.settings-panel-topbar,.input-bar-footer,.code-block-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.new-chat-button{width:100%;min-height:44px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600}.new-chat-icon,.message-avatar{display:inline-grid;place-items:center;flex:none}.sidebar-collapse-button,.topbar-icon-button,.input-icon-button,.send-button{width:40px;height:40px;border-radius:999px;display:inline-grid;place-items:center}.sidebar-search input{border-radius:16px}.conversation-list,.chat-list{display:grid;gap:8px;align-content:start}.conversation-list{overflow:auto}.chat-list{gap:0}.conversation-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:6px;border-radius:8px;background:transparent;border:1px solid transparent}.conversation-item.is-active{background:var(--sidebar-accent);border-color:var(--border)}.conversation-item:hover{background:color-mix(in srgb,var(--sidebar-accent) 72%,transparent)}.conversation-main{min-width:0;width:100%;display:flex;align-items:flex-start;gap:10px;padding:10px;text-align:left;border-radius:8px;background:transparent}.conversation-item-icon{width:18px;height:18px;color:var(--muted-foreground);margin-top:2px}.conversation-main-copy{min-width:0;display:grid;gap:3px}.conversation-main-copy strong,.conversation-main-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-delete-group{display:flex;align-items:center;gap:6px}.conversation-delete,.sidebar-footer-button{border-radius:12px;padding:9px 12px}.conversation-delete{opacity:.18}.conversation-item:hover .conversation-delete,.conversation-item:focus-within .conversation-delete,.conversation-delete-group .conversation-delete{opacity:1}.conversation-delete.danger{color:#fff;background:var(--destructive);border-color:var(--destructive)}.sidebar-empty,.chat-empty-state{border:1px dashed var(--border);border-radius:18px;padding:18px;background:color-mix(in srgb,var(--card) 40%,transparent)}.sidebar-footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:12px;border-top:1px solid var(--border)}.sidebar-footer-button{width:100%}.workspace-topbar{position:sticky;top:0;z-index:30;min-height:56px;padding:10px 20px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--background) 80%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.workspace-topbar-left,.workspace-topbar-actions,.brand-lockup,.thinking-indicator,.thinking-dots{display:flex;align-items:center;gap:12px}.workspace-topbar-left{flex:1 1 auto;min-width:0}.workspace-topbar-actions{flex:0 0 auto}.brand-lockup{margin:0 auto 0 0}.brand-lockup strong{display:block;font-size:.95rem}.topbar-email{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.chat-panel{min-height:calc(100vh - 56px);display:grid;grid-template-rows:minmax(0,1fr) auto}.chat-panel-body{min-height:0;overflow:auto;padding:24px 20px 12px;display:flex;flex-direction:column}.chat-thread-wrap,.chat-welcome{width:min(100%,760px);margin:0 auto}.chat-thread-wrap{display:grid;align-content:start;gap:16px}.chat-panel-header{margin-bottom:4px}.chat-panel-header h2,.chat-empty-state h3,.sidebar h2,.settings-panel h2,.mini-computer h2,.chat-welcome h2{margin:0}.chat-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:32px 0 64px}.chat-welcome-logo{margin:0 auto}.chat-welcome h2{font-size:clamp(2rem,6vw,4.2rem);line-height:1.04;font-weight:500}.chat-suggestion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.chat-suggestion-card{padding:18px;border-radius:22px;background:color-mix(in srgb,var(--card) 65%,transparent);text-align:left}.chat-suggestion-card strong,.chat-suggestion-card span{display:block}.chat-suggestion-card strong{margin-bottom:8px}.tool-indicator,.thinking-indicator{width:min(100%,760px);padding:14px 16px;margin:0 auto;border-radius:16px;background:color-mix(in srgb,var(--primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--primary) 22%,transparent)}.tool-indicator{display:flex;align-items:center;gap:12px}.tool-indicator.is-done{background:color-mix(in srgb,var(--primary) 12%,transparent)}.tool-indicator-dot,.thinking-dot{width:10px;height:10px;border-radius:999px;background:var(--primary)}.tool-indicator-dot{animation:pulse 1.2s infinite ease-in-out}.thinking-copy{display:grid;gap:4px}.thinking-indicator.is-executing{background:color-mix(in srgb,var(--secondary) 75%,transparent);border-color:color-mix(in srgb,var(--border) 88%,transparent)}.thinking-dot{opacity:.4;animation:thinkingPulse .8s infinite ease-in-out}.thinking-dot.dot-2{animation-delay:.15s}.thinking-dot.dot-3{animation-delay:.3s}.message-row{width:min(100%,768px);display:flex;align-items:flex-start;gap:12px;margin:0 auto 24px}.message-row.user{flex-direction:row-reverse}.message-avatar{width:32px;height:32px;border-radius:999px;font-size:.82rem;font-weight:700}.message-avatar.assistant{background:color-mix(in srgb,var(--primary) 16%,transparent);color:var(--primary)}.message-avatar.user{background:var(--primary);color:#fff}.message-avatar .logo-mark{width:32px;height:32px;border-radius:999px;font-size:.82rem}.message-bubble{width:min(100%,680px);border-radius:20px;padding:16px;border:0;background:transparent;box-shadow:none}.message-bubble.role-user{background:var(--card)}.message-bubble-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.message-bubble-body{overflow-wrap:anywhere;word-break:break-word;line-height:1.75}.message-bubble-body p,.message-bubble-body ul,.message-bubble-body ol,.message-bubble-body .code-block{margin:0 0 12px}.message-bubble-body p:last-child,.message-bubble-body ul:last-child,.message-bubble-body ol:last-child,.message-bubble-body .code-block:last-child{margin-bottom:0}.message-bubble-body code{font-family:JetBrains Mono,ui-monospace,monospace}.code-block{overflow:hidden;border-radius:16px;border:1px solid color-mix(in srgb,var(--border) 60%,transparent);background:#0f1115;color:#f5f5f5}.code-block-header{padding:10px 12px;background:#ffffff0a}.code-block-language{font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.code-block-copy{border-radius:10px;padding:6px 10px;background:#ffffff0f;border-color:#ffffff14;color:#f5f5f5}.code-block pre{margin:0;overflow:auto;max-width:100%;padding:14px;background:transparent;color:inherit;font-family:JetBrains Mono,SF Mono,Menlo,ui-monospace,monospace;font-size:14px;line-height:1.5}.code-line{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px}.code-line-number{color:#ffffff57;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:right}.code-line-text{white-space:pre-wrap}.message-attachments,.attachment-preview-list{display:flex;flex-wrap:wrap;gap:10px}.message-attachments{margin-top:12px}.attachment-preview-list{margin-top:0}.message-attachment,.attachment-preview-item{display:grid;gap:8px;width:140px;padding:10px;border-radius:14px;border:1px solid var(--border);background:color-mix(in srgb,var(--background) 20%,var(--card));color:inherit;text-decoration:none}.attachment-preview-item>div{display:grid;gap:4px}.message-attachment img{width:100%;height:72px;-o-object-fit:cover;object-fit:cover;border-radius:10px}.message-tools{margin-top:8px;font-size:.85rem}.tool-steps-card{margin:0 0 12px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:14px;background:color-mix(in srgb,var(--card) 68%,transparent);overflow:hidden}.tool-steps-card summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer;color:var(--muted-foreground);font-size:.9rem}.tool-steps-card summary::-webkit-details-marker{display:none}.tool-steps-list{display:grid;gap:8px;padding:0 12px 12px}.tool-step-item{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start}.tool-step-index{width:24px;height:24px;border-radius:999px;display:inline-grid;place-items:center;background:color-mix(in srgb,var(--primary) 16%,transparent);color:var(--primary);font-size:.75rem;font-weight:700}.tool-step-copy{display:grid;gap:2px}.tool-step-copy strong{font-size:.92rem}.tool-step-copy span{color:var(--muted-foreground);font-size:.82rem;font-style:italic}.tool-step-item.is-running .tool-step-index{background:color-mix(in srgb,var(--primary) 22%,transparent)}.tool-step-item.is-running .tool-step-copy strong{color:var(--primary)}.tool-step-spinner{display:block;width:10px;height:10px;border-radius:999px;border:2px solid color-mix(in srgb,var(--primary) 30%,transparent);border-top-color:var(--primary);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tool-steps-card summary:hover{color:var(--foreground);background:color-mix(in srgb,var(--card) 80%,transparent)}.chat-input-dock{position:sticky;bottom:0;padding:12px 20px 18px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--background) 94%,transparent) 22%)}.input-bar{width:min(100%,768px);max-width:48rem;margin:0 auto;display:grid;gap:12px}.input-bar-shell{display:flex;align-items:flex-end;gap:10px;padding:12px 16px;border-radius:24px;border:1px solid var(--input-border);background:var(--card);box-shadow:var(--shadow-md)}.input-bar-shell:focus-within{border-color:var(--input-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent),var(--shadow-md)}.input-bar textarea,.input-bar-textarea{min-height:52px;max-height:200px;padding:12px 0;border:0;background:transparent;resize:none;box-shadow:none;transition:height .15s ease-out}.input-bar textarea:focus,.input-bar-textarea:focus{box-shadow:none}.input-bar-file-input{display:none}.input-bar-footer{font-size:.86rem}.send-button{background:var(--primary);color:#fff;border-color:var(--primary)}.send-button:hover,.new-chat-button:hover,.auth-submit-button:hover{background:var(--primary-strong)}.overlay-layer{position:fixed;inset:0;z-index:40}.overlay-backdrop{position:absolute;inset:0;border:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mini-computer{position:absolute;top:0;right:0;bottom:0;width:50vw;max-width:none;background:color-mix(in srgb,var(--background) 97%,transparent);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);padding:16px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;z-index:1;overflow:hidden;transform:translate(0);transition:transform .3s ease-out}.mini-computer.is-fullscreen{position:fixed;inset:0;width:100vw;z-index:50}.mini-computer-topbar{min-height:48px;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.mini-computer-actions{display:flex;gap:8px;flex-wrap:wrap}.artifact-main,.artifact-code-view,.artifact-code-view .code-block,.artifact-code-view .code-block pre,.artifact-code-view .code-block code,.web-preview,.web-preview-frame-wrap{min-height:0;height:100%}.artifact-main{grid-template-rows:minmax(0,1fr)}.artifact-code-view{overflow:hidden}.artifact-code-view .code-block{height:100%}.artifact-code-view .code-block pre{overflow:auto}.web-preview{border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--card) 78%,transparent);display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px}.web-preview-topbar{padding:0}.web-preview-frame-wrap{position:relative;border-radius:14px;overflow:hidden;background:#fff}.web-preview-empty{display:grid;place-items:center;gap:8px;min-height:180px;border:1px dashed var(--border);border-radius:14px;padding:16px;text-align:center}.web-preview-frame{width:100%;height:100%;border:0;background:#fff}.web-preview-skeleton{position:absolute;inset:0;background:linear-gradient(90deg,#0000000a,#00000014,#0000000a);animation:pulse 1.2s infinite ease-in-out}.web-preview-frame.is-loading{opacity:0}.settings-panel{position:absolute;top:16px;right:16px;width:min(360px,calc(100vw - 32px));display:grid;gap:16px;padding:20px;border-radius:20px;background:color-mix(in srgb,var(--background) 97%,transparent);border:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:1;overflow:auto}.topbar-pill-button.is-accent,.ghost-button.is-active{background:color-mix(in srgb,var(--primary) 12%,transparent);border-color:color-mix(in srgb,var(--primary) 32%,transparent);color:var(--primary)}.markdown-body{font-size:16px;line-height:1.8}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:0 0 12px;line-height:1.3}.markdown-body ul,.markdown-body ol{padding-left:20px}.markdown-body a{color:var(--primary)}@keyframes pulse{0%,to{transform:scale(.92);opacity:.66}50%{transform:scale(1.08);opacity:1}}@keyframes thinkingPulse{0%,to{transform:scale(1);opacity:.35}50%{transform:scale(1.35);opacity:1}}@media(prefers-reduced-motion:reduce){.tool-indicator-dot,.thinking-dot,.web-preview-skeleton{animation:none}.mini-computer,.sidebar,.topbar-pill-button,.ghost-button,.input-bar-shell,.sidebar-collapse-button,.topbar-icon-button,.send-button{transition:none}}@media(max-width:1024px){.workspace-shell{grid-template-columns:240px minmax(0,1fr)}.mini-computer{width:50vw}}@media(max-width:767px){.panel-layout.has-artifact .panel-layout-main{padding-right:0}.workspace-shell{grid-template-columns:1fr}.panel-layout-left{position:static}.sidebar-backdrop{position:fixed;inset:0;display:block;background:#00000061;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:18;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar-backdrop.is-visible{opacity:1;pointer-events:auto}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(86vw,320px);z-index:20;box-shadow:var(--shadow-lg)}.workspace-topbar,.chat-panel-body{padding-left:16px;padding-right:16px}.chat-input-dock{padding-left:12px;padding-right:12px}.workspace-topbar{min-height:48px;flex-wrap:wrap;align-items:flex-start}.workspace-topbar-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.topbar-email{max-width:100%}.chat-suggestion-grid{grid-template-columns:1fr}.message-row,.tool-indicator,.thinking-indicator,.chat-thread-wrap,.chat-welcome,.input-bar{width:100%}.message-bubble{width:min(90%,680px)}.message-attachment,.attachment-preview-item{width:100%}.message-bubble-header{flex-wrap:wrap}.sidebar-footer{grid-template-columns:1fr}.mini-computer,.settings-panel{inset:0;width:100vw;max-width:100vw;min-height:100vh;border-radius:0;padding:16px}.overlay-backdrop{display:none}}
