:root{--font-sans:"Noto Sans", sans-serif;--font-serif:"Noto Serif", serif;--font-mono:"Noto Sans Mono", monospace;--ink:#202530;--muted:#606b7b;--muted-light:#697487;--primary:#2867c7;--primary-hover:#2057b0;--primary-ink:#1c53ad;--primary-soft:#e9f1ff;--on-primary:#fff;--control-black:#000;--assistant-bubble:#000;--on-assistant:#fff;--surface:#fff;--surface-glass:#fffffff0;--surface-soft:#f0f3f8;--surface-blue:#eff4fc;--canvas:#e4cdd5;--border:#99a4b4;--border-width:1px;--border-strong:#354050;--divider:#dce1e8;--divider-soft:#e7eaf0;--danger:#b33834;--selection:#6599f54a;--backdrop:#19273d5c;--panel-shadow:0 18px 65px #16223c40;--radius-sm:8px;--radius-control:10px;--radius-input:16px;--radius-bubble:17px;--radius-panel:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--text-xs:11px;--text-sm:12px;--text-label:13px;--text-body:14px;--text-chat:14px;--text-user:12px;--text-input:16px;--chat-width:480px;--chat-gutter:12px;--safe-area-bottom:env(safe-area-inset-bottom,0px);--chat-fade:24px;--message-preview:256;--message-collapse-threshold:320;--message-flight-ms:460;--settings-right:max(var(--space-3), env(safe-area-inset-right));--settings-top:max(var(--space-3), env(safe-area-inset-top));--settings-control-size:44px;--sheet-open-duration:.22s;--orb-size:72px;--orb-radius:36px;--orb-gap:6px;--orb-spacing:6px;--orb-red-mid:#cd3945;--orb-green-mid:#258852;--transition:.2s ease;--gradient-red:#ee8996;--gradient-orange:#efb078;--gradient-yellow:#f3da8d;--gradient-green:#91c9ab;--gradient-blue:#83b8e7;--gradient-indigo:#8b8ed0;--gradient-violet:#c29cda;font-family:var(--font-sans);color:var(--ink);font-synthesis:none;background:var(--canvas);-webkit-font-smoothing:antialiased;font-weight:500}*{box-sizing:border-box;scrollbar-width:none}::-webkit-scrollbar{display:none}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent;outline:none}button{cursor:pointer;border:0}button:disabled{cursor:default}button,a{touch-action:manipulation}button:not(.orb):focus-visible{box-shadow:inset 0 0 0 var(--border-width) var(--primary-ink)}a:focus-visible,summary:focus-visible{text-decoration:underline;text-decoration-thickness:2px}input:focus-visible,select:focus-visible,.fields textarea:focus-visible{border-color:var(--primary)}a{color:inherit}::selection{background:var(--selection)}.app{isolation:isolate;height:100dvh;position:relative;overflow:clip}.atmosphere{z-index:-2;pointer-events:none;background:radial-gradient(ellipse 58% 39% at 45% 74%, var(--gradient-yellow) 0%, #f3da8d00 100%), radial-gradient(ellipse 62% 48% at 88% 51%, var(--gradient-red) 0%, #ee899600 100%), radial-gradient(ellipse 60% 40% at 44% 46%, var(--gradient-orange) 0%, #efb07800 100%), radial-gradient(ellipse 56% 52% at 1% 42%, var(--gradient-green) 0%, #91c9ab00 100%), radial-gradient(ellipse 70% 44% at 86% 5%, var(--gradient-blue) 0%, #83b8e700 100%), radial-gradient(ellipse 64% 42% at 10% 96%, var(--gradient-indigo) 0%, #8b8ed000 100%), radial-gradient(ellipse 58% 44% at 14% 7%, var(--gradient-violet) 0%, #c29cda00 100%), var(--canvas);position:fixed;inset:0}.grain{z-index:-1;pointer-events:none;opacity:.12;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.38' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:fixed;inset:0}.workspace{left:var(--chat-x,50%);top:calc(var(--chat-y,70dvh) + var(--orb-radius));width:min(var(--chat-width), calc(var(--viewport-width,100vw) - var(--chat-gutter) * 2));max-height:max(0px, calc(var(--chat-y,70dvh) + var(--orb-radius) - var(--viewport-top,0px)));flex-direction:column;display:flex;position:fixed;transform:translate(-50%,-100%)}.conversation{overflow-anchor:none;overscroll-behavior:contain;flex:0 auto;min-height:0;overflow:hidden auto}.conversation[data-fade-top=true]{-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--chat-fade));mask-image:linear-gradient(to bottom, transparent, #000 var(--chat-fade));-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--chat-fade))}.conversation-content{gap:var(--space-3);padding-bottom:var(--space-3);flex-direction:column;display:flex}.conversation-content:empty{padding:0}.message{max-width:88%;font-size:var(--text-chat);flex-shrink:0;line-height:1.6}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:var(--radius-bubble);padding:11px 15px}.bubble p{margin:0}.bubble p+p{margin-top:var(--space-3)}.bubble ul,.bubble ol{padding-left:var(--space-5);margin:var(--space-2) 0;white-space:normal}.bubble pre{white-space:pre;color:var(--ink)}.bubble img{max-width:100%;height:auto}.bubble table{white-space:normal;border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.bubble th,.bubble td{padding:var(--space-1) var(--space-2);border:var(--border-width) solid currentColor}.message.assistant{color:var(--on-assistant);align-self:flex-start}.message.assistant .bubble{background:var(--assistant-bubble);border-bottom-left-radius:5px}.message.user{color:var(--on-primary);font-size:var(--text-user);align-self:flex-end;line-height:1.55}.message.user .bubble{background:var(--primary);border-bottom-right-radius:5px;padding:6px 10px}.collapsible-message{overflow-anchor:none;min-width:0;max-width:100%}.message-preview{overflow:hidden}.message-toggle{align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-1) 0;color:inherit;font-size:var(--text-sm);-webkit-user-select:none;user-select:none;background:0 0;font-weight:600;display:inline-flex}.message-toggle:focus-visible{text-decoration:underline}.message-placement{z-index:5;pointer-events:none;will-change:left, top, width, height;position:fixed;overflow:hidden}.message-placement .composer textarea{min-height:0;max-height:none;height:100%!important}.agent-status{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:#c4c4c4;line-height:1.5;display:flex}.agent-status.after-content{margin-top:var(--space-2)}.agent-spinner{flex-shrink:0;margin-top:2px;animation:1s linear infinite agent-spin}@keyframes agent-spin{to{transform:rotate(360deg)}}.action-review{border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-input);background:var(--surface);padding:var(--space-3);font-size:var(--text-body)}.review-action+.review-action{margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--border-width) solid var(--divider)}.review-action p{margin:0 0 var(--space-2)}.review-content{white-space:pre-wrap;overflow-wrap:anywhere}.review-target{font-weight:600}.review-buttons{gap:var(--space-2);margin-top:var(--space-2);display:flex}.review-buttons button{border:var(--border-width) solid var(--border);border-radius:var(--radius-control);min-height:44px;padding:var(--space-2) var(--space-3);background:var(--surface)}.review-buttons .confirm,.open-surface{background:var(--control-black);color:var(--on-assistant)}.open-surface{border-radius:var(--radius-control);padding:var(--space-3);font-size:var(--text-body);align-self:flex-start}.stop-run{align-self:flex-start;align-items:center;gap:var(--space-1);border-radius:var(--radius-sm);padding:var(--space-2);background:var(--surface);font-size:var(--text-xs);display:flex}.activity{font-size:var(--text-sm);color:var(--muted);padding:var(--space-2) var(--space-3);align-self:flex-start;margin:0;animation:2s ease-in-out infinite thinking}.composer-area{flex:none}.composer{border-radius:var(--radius-input);background:var(--surface-glass);border:0;align-items:flex-end;display:flex;position:relative}.composer textarea{resize:none;width:100%;min-height:76px;max-height:180px;font:500 var(--text-input)/1.5 var(--font-sans);background:0 0;border:0;border-radius:0;flex:1;padding:14px 50px 14px 15px}.retry-message{margin:var(--space-1) 0 0 auto;font-size:var(--text-xs);color:var(--danger);background:0 0;padding:0;display:block}.composer textarea::placeholder{color:var(--muted);opacity:1}.orb-stage{height:var(--orb-size);justify-content:center;align-items:center;gap:var(--orb-gap);margin-top:var(--orb-spacing);display:flex;position:relative}.orb{--orb-color:var(--control-black);width:var(--orb-size);height:var(--orb-size);touch-action:none;-webkit-user-select:none;user-select:none;background:var(--orb-color);isolation:isolate;cursor:grab;opacity:1;border-radius:50%;padding:0;position:relative}.orb.red{--orb-color:var(--orb-red-mid)}.orb.green{--orb-color:var(--orb-green-mid)}.orb-core{background:var(--orb-color);border-radius:50%;position:absolute;inset:0}.orb.dragging{cursor:grabbing}.orb-icon{height:100%;color:var(--on-primary);place-items:center;display:grid;position:relative}.orb:disabled{opacity:1}.send{border-radius:var(--radius-sm);background:var(--control-black);width:30px;height:30px;color:var(--on-primary);place-items:center;padding:0;display:grid;position:absolute;bottom:10px;right:10px}.settings-controls{right:var(--settings-right);top:var(--settings-top);align-items:center;gap:var(--space-2);display:flex;position:fixed}.app-version{font:400 var(--text-xs)/1 var(--font-mono);color:var(--ink)}.settings-button{min-width:var(--settings-control-size);height:var(--settings-control-size);justify-content:center;align-items:center;gap:var(--space-2);color:var(--control-black);-webkit-backdrop-filter:blur(18px);font-size:var(--text-label);font-variant-numeric:tabular-nums;background:#ffffffba;border-radius:999px;padding:0 11px;display:flex}.settings-menu{gap:var(--space-2);flex-direction:column;display:flex}.settings-menu button,.settings-menu a{align-items:center;gap:var(--space-3);text-align:left;min-height:48px;padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--divider);background:0 0;text-decoration:none;display:flex}.text-link{color:var(--primary-hover);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.sheet{width:min(440px,100vw - 24px);padding:var(--space-6);max-height:calc(100dvh - 24px);color:var(--ink);border:var(--border-width) solid var(--border);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--panel-shadow);font-size:var(--text-body);overscroll-behavior:contain;line-height:1.6}.sheet::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sheet-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.sheet-actions{align-items:center;gap:var(--space-1);display:flex}.sheet-heading h2{margin:0;font-size:18px;font-weight:700;line-height:1.3}.close{background:var(--surface-soft);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--border-strong);place-items:center;padding:0;display:grid}.sheet p{margin:14px 0}.quiet{color:var(--muted)}.small{font-size:var(--text-sm);line-height:1.65}.balance{font-variant-numeric:tabular-nums;font-size:42px;font-weight:600;line-height:1.2;margin-bottom:var(--space-2)!important}.sheet .balance-caption{margin-top:0;margin-bottom:var(--space-6);font-size:var(--text-label)}.amounts{margin:var(--space-5) 0 14px;gap:10px;display:flex}.checkout-quote{margin:var(--space-4) 0}.checkout-quote div{justify-content:space-between;gap:var(--space-3);margin:var(--space-2) 0;display:flex}.checkout-quote dd{font-variant-numeric:tabular-nums;margin:0}.checkout-quote .quote-total{border-top:var(--border-width) solid var(--divider);padding-top:var(--space-2);font-weight:600}.amounts button{border:var(--border-width) solid var(--border);border-radius:var(--radius-control);background:var(--surface);font-size:var(--text-input);flex:1;padding:13px;font-weight:600}.amounts button[aria-pressed=true]{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink)}.solid{background:var(--primary);color:var(--on-primary);padding:var(--space-3) var(--space-5);border:1px solid var(--primary-hover);border-radius:var(--radius-control);min-height:44px;font-size:var(--text-body);font-weight:600}.solid:hover:enabled{background:var(--primary-hover)}.wide{width:100%}.details{border-top:1px solid var(--divider);margin-top:var(--space-6);padding:18px 0 0}.details summary{cursor:pointer;font-size:var(--text-label);font-weight:600}.ledger,.token-list{font-size:var(--text-sm);margin:14px 0 0;padding:0;list-style:none}.ledger li,.token-list li{padding:var(--space-3) 0;border-bottom:1px solid var(--divider-soft);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:18px;display:flex}.ledger li div{flex-direction:column;gap:3px;display:flex}.ledger time,.token-list small{font-size:var(--text-xs);color:var(--muted-light);display:block}.local-note{font-size:var(--text-xs);color:var(--muted-light)}.fields{flex-direction:column;gap:17px;display:flex}.fields label,.token-result label{font-size:var(--text-label);flex-direction:column;gap:7px;font-weight:600;display:flex}.fields input,.fields textarea,.fields select,.token-result input{border:var(--border-width) solid var(--border);background:var(--surface);min-width:0;padding:11px var(--space-3);border-radius:var(--radius-control);font-size:var(--text-input);font-weight:400}.fields textarea{resize:vertical;min-height:84px}.fields .check-label{flex-direction:row;align-items:center;gap:10px}.check-label input{accent-color:var(--primary);width:18px;height:18px}.fields p{margin:0}.profile-editor-actions,.location-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.profile-editor-actions button,.location-actions button{align-items:center;gap:var(--space-1);display:inline-flex}.profile-photos{border:0;min-width:0;margin:0;padding:0}.profile-photos legend{margin-bottom:var(--space-2);font-size:var(--text-label);padding:0;font-weight:600}.photo-editor-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.photo-editor-item{min-width:0;position:relative}.photo-editor-item>img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);width:100%;display:block}.photo-remove{top:var(--space-1);right:var(--space-1);background:var(--control-black);width:28px;height:28px;color:var(--on-assistant);border-radius:50%;place-items:center;display:grid;position:absolute}.photo-order{font-size:var(--text-xs);justify-content:space-between;align-items:center;display:flex}.photo-order button{background:0 0;place-items:center;width:32px;height:36px;display:grid}.photo-order button:disabled{visibility:hidden}.photo-add{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);background:var(--surface);min-height:44px;margin:var(--space-2) 0;display:flex}.profile-photo{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-control);width:100%;display:block}.profile-thumbnails{gap:var(--space-2);margin-top:var(--space-2);display:flex}.profile-thumbnails button{border-radius:var(--radius-sm);background:0 0;width:44px;height:44px;padding:0;overflow:hidden}.profile-thumbnails img{object-fit:cover;width:100%;height:100%}.profile-thumbnails button[aria-pressed=true]{box-shadow:0 0 0 var(--border-width) var(--primary)}.profile-card h3{margin:var(--space-4) 0 0;font-size:20px}.profile-card .profile-handle{margin:var(--space-1) 0;font-size:var(--text-label)}.profile-bio{white-space:pre-wrap;overflow-wrap:anywhere}.profile-interests{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.profile-interests li{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--surface-soft);font-size:var(--text-sm)}.location-picker label{flex-direction:column;gap:7px;display:flex}.location-actions{margin:var(--space-2) 0;font-size:var(--text-label)}.place-results{margin:0;padding:0;list-style:none}.place-results button{width:100%;min-height:44px;padding:var(--space-2);text-align:left;background:var(--surface-soft);border-bottom:var(--border-width) solid var(--divider)}.switch-account{font-size:var(--text-label);margin-top:22px}.token-result{background:var(--surface-blue);border-radius:var(--radius-control);margin:var(--space-6) 0;padding:14px}.token-result input{font-family:var(--font-mono);font-size:var(--text-sm);margin:var(--space-1) 0 var(--space-2);width:100%}.token-result button{font-size:var(--text-sm)}.connection-setup{margin-top:var(--space-6)}.setup-prompt{white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px}pre,code{font-family:var(--font-mono)}pre{background:var(--surface-soft);padding:var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm);overflow:auto}blockquote{font-family:var(--font-serif)}.error{color:var(--danger);font-size:var(--text-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes thinking{0%,to{opacity:1}50%{opacity:.55}}@media (width<=600px){.sheet{padding:var(--space-6)}}@media (width>=640px){:root{--chat-width:600px}.sheet{inset:var(--settings-top) var(--settings-right) auto auto;max-height:calc(100dvh - var(--settings-top) - var(--space-3));transform-origin:100% 0;margin:0;padding-top:0;position:fixed}.sheet[open]{animation:sheet-open var(--sheet-open-duration) cubic-bezier(.22, 1, .36, 1)}.sheet-heading{min-height:var(--settings-control-size);padding-right:calc(var(--settings-control-size) * 2 - var(--space-6));margin-bottom:var(--space-4)}.sheet-actions{top:calc(-1 * var(--border-width));right:calc(-1 * var(--border-width));gap:0;position:absolute}.sheet-actions .close{width:var(--settings-control-size);height:var(--settings-control-size);background:0 0;border-radius:50%}}@keyframes sheet-open{0%{clip-path:inset(0 0 calc(100% - var(--settings-control-size)) calc(100% - var(--settings-control-size)) round 22px)}to{clip-path:inset(0 round var(--radius-panel))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
