/* Neyro identity: warm surfaces, clear contrast and a single gold accent. */
:root{--gold:#d8b86b;--gold-ink:#211b0e;--reference-blue:var(--gold);--accent:var(--gold);--accent-soft:#d8b86b1a;--pressed:var(--gold)}
html[data-theme="dark"]{--accent:var(--gold);--pressed:var(--gold);--surface:#1b1a18;--surface-2:#24221f;--surface-3:#302d27;--composer:#201f1c;--user:#3c3220;--muted:#b7b1a5;--faint:#a09a8f;--inverse:#19160f}
html[data-theme="light"]{--gold:#8a641a;--gold-ink:#fff;--accent:var(--gold);--pressed:var(--gold);--surface:#fff;--surface-2:#f6f3ec;--surface-3:#ece5d8;--composer:#f4f1ea;--user:#f3e5c6;--muted:#655f54;--faint:#716a5e;--inverse:#fff}
.ui-icon{width:19px;height:19px;display:inline-block;vertical-align:middle;flex:none;pointer-events:none}
.message-action,.artifact-tools button,.tool-button,.chart-menu-trigger{display:inline-flex;align-items:center;justify-content:center}
.icon-button .ui-icon,.message-action .ui-icon{width:18px;height:18px}
.workspace-icon,.nav-icon,.suggestion-icon,.search-glyph,.more-icon,.tool-menu-icon{display:inline-flex;align-items:center;justify-content:center;flex:none}
.workspace-icon,.nav-icon{width:22px;height:22px;color:var(--muted)}
.workspace-link.active .workspace-icon{color:var(--gold)}
.workspace-link{transition:background .18s,color .18s}.workspace-link:hover .ui-icon{transform:translateY(-1px)}
.ui-icon{transition:transform .18s var(--ease-reference),color .18s}
.brand-mark{display:grid;width:29px;height:29px;background:none;border:0;box-shadow:none;flex:none}
.brand-mark img{width:100%;height:100%;object-fit:contain}
.particle-brand{position:relative}
.particle-brand-source{opacity:1!important}
.brand-particle-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
.main-pane.empty-chat .welcome-mark{display:grid!important;width:104px;height:104px;border:0;background:none;box-shadow:none;animation:none;margin-bottom:20px;filter:drop-shadow(0 2px 12px #d8b86b30)}
.welcome-mark img{width:100%;height:100%;object-fit:contain}
.brand-button{gap:10px}.brand-label{font-weight:550;letter-spacing:-.04em}.brand-avatar{background:var(--accent-soft)!important;color:var(--gold)!important}
.send-button{background:var(--gold);color:var(--gold-ink)}.send-button:not(:disabled):hover{background:var(--gold);filter:brightness(1.09);transform:translateY(-1px)}
.send-icon{display:grid;place-items:center}.send-icon .ui-icon{width:19px;height:19px}
.send-button.stop-mode{color:var(--gold-ink)}
.user-bubble{box-shadow:inset 0 0 0 1px #d8b86b0d}
.provider-logo.google,.provider-logo.google.mini{background:transparent!important;overflow:visible!important;border:0!important}
.provider-logo.google img,.provider-logo.google:hover img,.provider-logo.google.mini img,.provider-logo.google.mini:hover img,.assistant-avatar .provider-logo.google img{position:static!important;inset:auto!important;width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important;max-width:100%!important}
.provider-logo.neyro img{object-fit:contain!important;transform:none!important}
.wallet-pill{opacity:1;color:var(--muted)}.wallet-dot{color:var(--gold)}
.wallet-modal{background:var(--surface);border-color:var(--line);border-radius:24px}
.wallet-tab.active,.topup-custom button{background:var(--gold);color:var(--gold-ink)}
.wallet-tab:not(.active){color:var(--muted)}
.topup-presets button{background:var(--surface-2);color:var(--ink);border:1px solid var(--line);box-shadow:none;transition:background .2s,border-color .2s,transform .2s}
.topup-presets button strong{color:var(--ink);font-weight:600}.topup-presets button span{color:var(--muted)}
.topup-presets button:hover,.topup-presets button:focus-visible{background:var(--accent-soft);border-color:var(--gold);transform:translateY(-2px)}
.topup-custom button:hover{filter:brightness(1.09)}.topup-custom button:disabled{opacity:.65}
.wallet-balance-card{border-color:#d8b86b48;background:linear-gradient(135deg,var(--accent-soft),var(--surface))}
.wallet-balance-card strong{color:var(--gold)}
.calculator-grid select{color:var(--ink);color-scheme:dark}
html[data-theme="light"] .calculator-grid select{color-scheme:light}
.effort-panel{padding:12px 10px 8px}.effort-panel strong{display:block;font-size:13px;margin-bottom:15px;font-weight:550}
.effort-segments{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--surface);isolation:isolate}
.effort-indicator{position:absolute;inset:4px auto 4px 4px;width:calc((100% - 8px)/3);border-radius:9px;background:var(--gold);z-index:-1;transform:translateX(calc(var(--effort-index)*100%));transition:transform .28s cubic-bezier(.22,1,.36,1);box-shadow:0 2px 8px #0002}
.reference-popover .effort-segments button{font-size:11px;padding:10px 2px;min-height:36px;justify-content:center;border-radius:9px;transition:color .2s;background:transparent}
.reference-popover .effort-segments button[aria-checked="true"]{color:var(--gold-ink);font-weight:600}
.effort-description{font-size:11px;color:var(--muted);line-height:1.6;margin:12px 2px 0;min-height:36px}
.effort-panel .popover-label{font-size:10px;line-height:1.5;padding:10px 2px 0}
button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.model-check,.popover-check{color:var(--gold)}.model-row.selected{border-color:#d8b86b55;background:var(--accent-soft)}
.history-item.active{background:var(--surface)}.avatar:not(.brand-avatar){background:var(--accent-soft);color:var(--gold)}
.chart-line,.chart-points circle{--reference-blue:var(--gold)}
.chart-table,.assistant-content .table-wrap{overflow:auto}.chart-menu button{color:var(--ink)}
@media(prefers-reduced-motion:reduce){.ui-icon,.effort-indicator,.topup-presets button{transition:none!important;transform:none}.effort-indicator{left:calc(4px + var(--effort-index)*(100% - 8px)/3)}}

.provider-logo.anthropic,.provider-logo.xai,.provider-logo.openai{background:#fbf8f1;border-color:transparent}
.provider-logo.anthropic img{padding:5px}.provider-logo.xai img{padding:3px}.provider-logo.openai img,.provider-logo.openai:hover img{filter:grayscale(1)!important}

.wallet-balance-card strong span{font:inherit;color:inherit}
input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:15px;height:15px;cursor:pointer;background:var(--gold);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 6 12 12M18 6 6 18' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* Keep the welcome and the expanding composer in the same vertical group. */
.main-pane.empty-chat .composer-zone{bottom:max(16px,calc(50% - var(--composer-height,92px)/2 - 32px));padding-top:0;transition:none}
.main-pane.empty-chat .welcome{top:auto;bottom:max(calc(var(--composer-height,92px) + 28px),calc(50% + var(--composer-height,92px)/2 - 8px));padding:0 24px;transition:none}
.conversation-scroller{padding-bottom:calc(var(--composer-height,100px) + 28px)}
.composer-zone{background:none;pointer-events:none}
.composer-zone .composer,.composer-zone .attachment-chip{pointer-events:auto}
.composer-note{width:max-content;max-width:100%;margin-inline:auto;padding:3px 8px!important;border-radius:7px;background:var(--canvas)}
.main-pane:has(.mode-switch [data-mode="studio"].active) .conversation{--content-width:1040px}
.composer textarea{overflow-wrap:anywhere;word-break:break-word}
.workspace-details summary{display:flex!important;align-items:center;gap:5px;padding:4px 0 12px;min-height:30px;cursor:pointer}
.workspace-details summary::after{content:none!important}.workspace-details summary .ui-icon{width:14px;height:14px;transition:transform .2s ease}
.workspace-details[open] summary .ui-icon{transform:rotate(180deg)}
.image-options{display:none!important}
.upload-hint{font-size:11px;line-height:1.5;color:var(--muted);margin:0 10px 10px}
.attachment-chip.error .attachment-file-copy{max-width:260px}.attachment-chip.error small{white-space:normal;line-height:1.4}
.image-settings-trigger{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--muted);height:34px;padding:0 9px;border:0;border-radius:16px;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}
.image-settings-trigger:hover,.image-settings-trigger[aria-expanded="true"]{background:var(--hover);color:var(--ink)}
.image-settings-trigger[hidden]{display:none!important}
.provider-logo.anthropic{background:transparent!important;border:0!important}.provider-logo.anthropic img{padding:0;object-fit:contain!important;transform:none!important}
.provider-logo.openai{background:transparent!important;border:0!important}.provider-logo.openai img{padding:1px;object-fit:contain!important;transform:none!important;filter:invert(1)!important}
[data-theme="light"] .provider-logo.openai img{filter:none!important}
@media(max-width:600px){.image-settings-trigger{gap:4px;padding:0 5px;max-width:112px}.image-settings-trigger span{overflow:hidden;text-overflow:ellipsis}.main-pane.empty-chat .welcome h1{font-size:23px;line-height:1.35}.main-pane.empty-chat .welcome{padding-inline:20px}.composer textarea{max-height:min(220px,30dvh)}}
@media(prefers-reduced-motion:reduce){.workspace-details summary .ui-icon{transition:none}}

@media(max-width:600px){.composer:has(.image-settings-trigger:not([hidden])) .composer-model-trigger{max-width:100px}.image-settings-trigger{max-width:96px}.composer-tools-left{gap:2px}}

/* Central composer menus grow down; bottom composer menus grow up. */
.reference-popover[data-side="bottom"]{transform-origin:top right;transform:translateY(-6px) scale(.985)}
.reference-popover[data-side="bottom"].visible{transform:none}
.attachment-remove{box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:0!important;min-width:22px;width:22px;height:22px;line-height:1;flex:none;border:1px solid var(--line-soft)}
.attachment-remove .ui-icon{display:block;width:14px;height:14px;flex:none;margin:0;vertical-align:middle}
.provider-logo.xai{background:transparent!important;border:0!important}.provider-logo.xai img{padding:0;object-fit:contain!important;transform:none!important;filter:invert(1)!important}
[data-theme="light"] .provider-logo.xai img{filter:none!important}
.web-search-outcome{font-size:11px;color:var(--muted);margin-top:15px;line-height:1.5}

/* A quiet gold dot field, with the game drawn on the same canvas. */
.image-progress{width:min(100%,384px)}
.image-progress .image-generation-stage{aspect-ratio:6/5;border:0;border-radius:12px;background:transparent;outline-offset:4px;transition:aspect-ratio .5s ease}
.image-progress-copy strong{font-size:14px;font-weight:450;color:var(--muted)}
.image-particle-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;transition:opacity .6s ease}
.particle-launch{position:absolute;inset:0;z-index:2;width:100%;height:100%;border:0;background:none;color:var(--muted);cursor:pointer;border-radius:12px;padding:0}
.particle-launch span{position:absolute;bottom:8px;right:8px;display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:20px;background:var(--surface-2);font-size:10px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}
.particle-launch:hover span,.particle-launch:focus-visible span{opacity:1;transform:none}
.particle-launch .ui-icon{width:12px;height:12px}
.particle-launch[hidden],.particle-game-hud[hidden],.particle-directions[hidden],.particle-game-hud button[hidden]{display:none!important}
.particle-game-hud{position:absolute;z-index:4;inset:auto 8px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--gold)}
.particle-game-hud>div{display:flex;align-items:center;gap:4px}
.particle-game-hud button,.particle-directions button{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);padding:6px 9px;border-radius:20px;font:inherit;cursor:pointer;min-height:28px}
.particle-game-hud button:hover,.particle-directions button:hover{background:var(--hover);border-color:var(--gold)}
.particle-game-hud .ui-icon{width:13px;height:13px}
.particle-directions{display:flex;justify-content:center;gap:8px;position:absolute;bottom:46px;inset-inline:0;z-index:4}
.particle-directions button{width:36px;height:32px;padding:0;touch-action:manipulation}
.particle-directions .ui-icon{width:15px;height:15px}
.particle-game-hint{display:none}.is-playing .particle-game-hint{display:inline}.is-playing .particle-idle-hint{display:none}
.image-progress.is-playing .image-particle-canvas{touch-action:none}
.image-progress .image-partial-preview{pointer-events:none}
.image-progress.has-partial:not(.is-playing) .image-particle-canvas{opacity:0}
.image-progress.has-partial .image-generation-stage{aspect-ratio:var(--image-ratio,1)}
.image-progress.has-partial.is-playing .image-partial-preview{opacity:.08}
@media(hover:hover) and (pointer:fine){.particle-directions{display:none}}
@media(prefers-reduced-motion:reduce){.image-particle-canvas,.particle-launch span,.image-progress .image-generation-stage{transition:none}}

.artifact-mount{position:relative}
.artifact-pending{display:none;position:absolute;inset:0 0 34px;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;text-align:center;color:var(--muted);background:var(--surface);font-size:12px}
.artifact-pending strong{color:var(--ink);font-size:15px;font-weight:500}
.artifact-pending .thinking-orb{width:12px;height:12px;background:var(--gold)}
.artifact-awaiting-content .inline-artifact-frame{opacity:0}
.artifact-awaiting-content .artifact-pending{display:flex}
.image-load-retry{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:14px;padding:12px 18px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;z-index:3}
.image-load-retry[hidden]{display:none}
.image-result.load-error{min-height:180px;background:var(--surface)}
.image-result.load-error img{opacity:.15}
@media(max-width:600px){.main-pane.empty-chat .welcome-mark{width:84px;height:84px;margin-bottom:14px}}
