/* Tools extend the shared Aurora tokens without affecting the admin cabinet. */
.client-ui .tools-workspace { padding-bottom: max(24px, env(safe-area-inset-bottom)); }
.client-ui .tools-workspace [hidden] { display:none !important; }
.client-ui .tools-heading { margin:0 0 24px; }
.client-ui .tools-heading h1 { font-size:clamp(28px,3vw,36px); margin:8px 0 10px; letter-spacing:-1px; }
.client-ui .tools-heading p { margin:0; font-size:14px; }
.client-ui .tools-tabs { display:flex; gap:8px; margin-bottom:24px; padding:5px; border:1px solid var(--line); border-radius:13px; background:var(--bg-soft); width:fit-content; max-width:100%; }
.client-ui .tools-tab { display:flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:10px 20px; border:1px solid transparent; border-radius:9px; background:transparent; color:var(--muted); font:600 14px/1.4 Manrope,sans-serif; box-shadow:none; cursor:pointer; transition:background 100ms,color 100ms,border-color 100ms; }
.client-ui .tools-tab[aria-selected=true] { color:var(--brand); background:var(--surface-alt); border-color:var(--line-strong); box-shadow:inset 0 1px 0 #b2adff12; }
.client-ui .tools-tab:hover { color:var(--text); }
.client-ui .tools-tab .ui-icon { width:20px; height:20px; flex-shrink:0; }
.client-ui .tools-panel { animation:tools-panel-in 180ms ease-out; min-width:0; }
@keyframes tools-panel-in { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }
.client-ui .tools-workspace .button { min-height:44px; gap:8px; transition:background 100ms,border-color 100ms,opacity 100ms; }
.client-ui .tools-workspace .button:active { opacity:.8; }
.client-ui .tools-workspace input,.client-ui .tools-workspace select,.client-ui .tools-workspace textarea { font-size:16px; }
.client-ui .tools-section-heading,.client-ui .tools-result-heading,.client-ui .tools-ai-heading,.client-ui .tools-dialog-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.client-ui .tools-section-heading h2,.client-ui .tools-ai h2 { font-size:21px; margin:0; letter-spacing:-.4px; }
.client-ui .tools-section-heading p,.client-ui .tools-ai-heading p { margin:8px 0 0; font-size:13px; }
.client-ui .tools-label { color:var(--muted); font-size:12px; padding:7px 10px; border:1px solid var(--line); border-radius:7px; white-space:nowrap; }
.client-ui .tools-check-form { display:flex; gap:12px; align-items:flex-end; margin-top:28px; }
.client-ui .tools-check-field { flex:1; min-width:0; }
.client-ui .tools-check-form .button { min-height:48px; padding-inline:24px; }
.client-ui .tools-caption { font-size:12px; color:var(--muted); line-height:1.65; }
.client-ui .tools-check-empty { display:flex; align-items:center; justify-content:center; gap:16px; padding:36px 16px 18px; margin-top:24px; border-top:1px solid var(--line); color:var(--muted); }
.client-ui .tools-check-empty .ui-icon { width:30px; height:30px; color:var(--brand); flex-shrink:0; opacity:.8; }
.client-ui .tools-check-empty p { margin:0; font-size:13px; }
.client-ui .tools-probe { margin-top:28px; padding-top:26px; border-top:1px solid var(--line); }
.client-ui .tools-result-heading h3 { font-size:17px; margin:8px 0 0; word-break:break-word; }
.client-ui .tools-result-badge { border:1px solid var(--line-strong); border-radius:8px; padding:8px 12px; font-size:13px; white-space:nowrap; }
.client-ui .tools-probe-list { margin-top:20px; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.client-ui .tools-probe-row + .tools-probe-row { border-top:1px solid var(--line); }
.client-ui .tools-probe-row summary { display:grid; grid-template-columns:1fr 110px 110px 20px; gap:16px; align-items:center; min-height:64px; padding:16px; font-size:13px; cursor:pointer; list-style:none; }
.client-ui .tools-probe-row summary::-webkit-details-marker { display:none; }
.client-ui .tools-probe-row summary:hover { background:var(--surface-alt); }
.client-ui .tools-probe-name { display:flex; align-items:center; gap:12px; min-width:0; }
.client-ui .tools-probe-name .ui-icon { color:var(--brand); flex-shrink:0; }
.client-ui .tools-probe-time { color:var(--muted); }
.client-ui .tools-disclosure-icon { width:16px; height:16px; }
.client-ui .tools-probe-row[open] .tools-disclosure-icon { transform:rotate(90deg); }
.client-ui .tools-probe-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; gap:20px; padding:4px 16px 20px; }
.client-ui .tools-probe-metrics dt { color:var(--muted); font-size:11px; }
.client-ui .tools-probe-metrics dd { margin:5px 0 0; font-size:12px; overflow-wrap:anywhere; }
.client-ui .tools-history { margin-top:20px; }
.client-ui .tools-history > summary { display:flex; justify-content:space-between; align-items:center; min-height:44px; gap:10px; cursor:pointer; }
.client-ui .tools-history .table-wrap { margin-top:20px; }
.client-ui .tools-url { overflow-wrap:anywhere; }
.client-ui .tools-inline-status,.client-ui .tools-job-status { background:var(--surface-alt); border:1px solid var(--line); border-radius:8px; padding:12px 16px; font-size:13px; color:var(--brand); }
.client-ui .tools-ai { overflow:hidden; }
.client-ui .tools-ai-heading { margin-bottom:24px; }
.client-ui .tools-ai-title { display:flex; align-items:center; gap:14px; }
.client-ui .tools-ai-title > .ui-icon { width:38px; height:38px; padding:9px; box-sizing:content-box; color:var(--brand); border:1px solid var(--line); border-radius:13px; background:var(--surface-alt); }
.client-ui .tools-quota { padding:8px 12px; border:1px solid var(--line); background:var(--bg-soft); border-radius:8px; font-size:12px; color:var(--muted); text-align:right; line-height:1.6; }
.client-ui .tools-ai-gate { padding:40px 20px; text-align:center; border-top:1px solid var(--line); }
.client-ui .tools-gate-icon,.client-ui .tools-empty-icon { width:38px; height:38px; color:var(--brand); margin-bottom:16px; }
.client-ui .tools-ai-gate h3,.client-ui .tools-ai-empty h3 { margin:0 0 10px; font-size:22px; }
.client-ui .tools-ai-gate p { max-width:430px; margin:0 auto 24px; font-size:14px; }
.client-ui .tools-ai-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; align-items:flex-end; padding-top:22px; border-top:1px solid var(--line); }
.client-ui .tools-ai-selects { display:flex; gap:12px; }
.client-ui .tools-ai-selects select { width:auto; min-width:130px; }
.client-ui .tools-ai-selects label { font-size:11px; color:var(--muted); }
.client-ui .tools-ai-actions { display:flex; flex-wrap:wrap; gap:8px; }
.client-ui .tools-ai-actions .button { font-size:12px; padding:10px 12px; }
.client-ui .tools-ai-empty { padding:54px 16px 44px; text-align:center; }
.client-ui .tools-ai-empty p { margin:0 0 22px; font-size:14px; }
.client-ui .tools-example-list { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; }
.client-ui .tools-example-list button { display:flex; align-items:center; gap:12px; padding:10px 14px; min-height:44px; border:1px solid var(--line); border-radius:9px; background:var(--bg-soft); color:var(--muted); font:500 12px/1.5 Manrope,sans-serif; cursor:pointer; }
.client-ui .tools-example-list button:hover { color:var(--text); border-color:var(--brand); }
.client-ui .tools-ai-conversation { padding-top:28px; display:flex; flex-direction:column; gap:24px; }
.client-ui .tools-ai-conversation:empty { display:none; }
.client-ui .tools-message { min-width:0; max-width:100%; animation:tools-panel-in 160ms ease-out; }
.client-ui .tools-message[data-role=user] { background:var(--surface-alt); border:1px solid var(--line); border-radius:12px; padding:16px 20px; margin-left:min(12%,100px); align-self:flex-end; }
.client-ui .tools-message[data-role=assistant] { padding:0 0 8px; }
.client-ui .tools-message-author { font-size:11px; font-weight:700; color:var(--brand); margin:0 0 10px; }
.client-ui .tools-message-content { font-size:14px; line-height:1.75; color:var(--text); overflow-wrap:anywhere; }
.client-ui .tools-message-content p { color:inherit; margin:0 0 12px; white-space:pre-wrap; }
.client-ui .tools-message-content h2,.client-ui .tools-message-content h3,.client-ui .tools-message-content h4 { margin:22px 0 12px; font-size:18px; }
.client-ui .tools-message-content ul,.client-ui .tools-message-content ol { padding-left:24px; }
.client-ui .tools-message-content pre { max-width:100%; overflow:auto; background:var(--bg); border:1px solid var(--line); padding:16px; border-radius:10px; font-size:12px; white-space:pre; }
.client-ui .tools-message-content code { font-family:Consolas,monospace; background:var(--bg); padding:2px 4px; border-radius:4px; }
.client-ui .tools-message-content pre code { padding:0; }
.client-ui .tools-message-content .table-wrap { margin:12px 0; overflow:auto; max-width:100%; }
.client-ui .tools-message-content table { width:100%; min-width:300px; font-size:12px; }
.client-ui .tools-message-content td,.client-ui .tools-message-content th { padding:10px 12px; white-space:normal; }
.client-ui .tools-message-artifact { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px; }
.client-ui .tools-message-artifact img { display:block; width:auto; max-width:min(100%,480px); max-height:400px; border:1px solid var(--line); border-radius:12px; }
.client-ui .tools-proposal { margin-top:16px; padding:16px; border:1px solid var(--line-strong); border-radius:10px; background:var(--surface-alt); }
.client-ui .tools-proposal p { font-size:13px; margin:0 0 12px; }
.client-ui .tools-proposal .button { font-size:12px; }
.client-ui .tools-job-status { margin:20px 0 12px; }
.client-ui .tools-ai-error { padding:12px 16px; border:1px solid #995e72; background:#3a1e2b; color:#ffcad8; border-radius:8px; font-size:13px; }
.client-ui .tools-composer { margin-top:24px; border:1px solid var(--line-strong); border-radius:14px; background:var(--bg-soft); padding:12px; }
.client-ui .tools-composer:focus-within { border-color:var(--brand); }
.client-ui .tools-composer textarea { min-height:84px; max-height:280px; resize:vertical; background:transparent; border:0; border-radius:0; box-shadow:none; padding:8px; }
.client-ui .tools-composer textarea:focus { background:transparent; box-shadow:none; outline:0; }
.client-ui .tools-composer-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:10px; }
.client-ui .tools-composer-options { display:flex; gap:8px; align-items:center; min-width:0; }
.client-ui .tools-composer-options select { width:auto; min-width:110px; max-width:170px; background:var(--surface); min-height:44px; font-size:13px; }
.client-ui .tools-attach { position:relative; margin:0; width:44px; padding:10px; overflow:hidden; cursor:pointer; flex-shrink:0; }
.client-ui .tools-attach:focus-within { outline:2px solid var(--brand); outline-offset:3px; }
.client-ui .tools-attach input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.client-ui .tools-cost { font-size:11px; color:var(--muted); white-space:nowrap; }
.client-ui .tools-composer-hint { font-size:11px; color:var(--muted); line-height:1.7; margin:10px 4px 0; }
.client-ui .tools-file-chip { display:flex; gap:8px; align-items:center; max-width:100%; width:fit-content; padding:4px 4px 4px 10px; border:1px solid var(--line); border-radius:8px; background:var(--surface-alt); font-size:12px; }
.client-ui .tools-file-chip span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.client-ui .tools-file-chip button { min-width:44px; min-height:44px; display:grid; place-items:center; border:0; background:none; color:var(--muted); cursor:pointer; }
.client-ui .tools-dialog { color:var(--text); background:var(--surface); border:1px solid var(--line-strong); border-radius:16px; width:min(560px,calc(100% - 32px)); max-height:calc(100dvh - 48px); box-sizing:border-box; padding:26px; overflow:auto; }
.client-ui .tools-dialog::backdrop { background:#050916c9; }
.client-ui .tools-dialog h2 { margin:0; font-size:22px; }
.client-ui .tools-dialog p { font-size:13px; }
.client-ui .tools-icon-button { width:44px; padding:10px; flex-shrink:0; }
.client-ui .tools-memory-list { padding:0; list-style:none; margin:22px 0; }
.client-ui .tools-memory-list li { display:flex; gap:16px; justify-content:space-between; align-items:center; font-size:13px; padding:12px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.client-ui .tools-memory-list li .button { flex-shrink:0; padding:8px 12px; font-size:12px; }
.client-ui .tools-memory-form { display:grid; gap:12px; margin-bottom:20px; }
.client-ui .tools-memory-form .button { justify-self:start; }
.client-ui .tools-sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:700px) {
 .client-ui .tools-tabs { display:flex; width:100%; box-sizing:border-box; }
 .client-ui .tools-tab { flex:1; min-width:0; padding:10px 12px; font-size:12px; gap:8px; }
 .client-ui .tools-section-heading { align-items:flex-start; flex-direction:column; gap:12px; }
 .client-ui .tools-section-heading p { max-width:280px; }
 .client-ui .tools-check-form { flex-direction:column; align-items:stretch; margin-top:24px; }
 .client-ui .tools-result-heading { align-items:flex-start; flex-direction:column; }
 .client-ui .tools-probe-row summary { grid-template-columns:1fr auto 16px; gap:8px; padding:14px 12px; }
 .client-ui .tools-probe-time { grid-column:1; grid-row:2; margin-left:32px; font-size:11px; }
 .client-ui .tools-probe-row summary > .status-ok,.client-ui .tools-probe-row summary > .status-bad { grid-column:2; grid-row:1 / 3; font-size:11px; }
 .client-ui .tools-disclosure-icon { grid-column:3; grid-row:1 / 3; }
 .client-ui .tools-probe-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
 .client-ui .tools-ai-heading { align-items:flex-start; gap:10px; }
 .client-ui .tools-ai-title { gap:10px; }
 .client-ui .tools-ai-title > .ui-icon { width:22px; height:22px; padding:8px; }
 .client-ui .tools-ai-heading { align-items:center; }
 .client-ui .tools-ai-heading p { display:none; }
 .client-ui .tools-quota { padding:6px 8px; font-size:10px; max-width:130px; }
 .client-ui .tools-ai-selects { width:100%; gap:10px; }
 .client-ui .tools-ai-selects > div { flex:1; min-width:0; }
 .client-ui .tools-ai-selects select { width:100%; min-width:0; font-size:13px; }
 .client-ui .tools-ai-toolbar { gap:12px; }
 .client-ui .tools-ai-actions { width:100%; }
 .client-ui .tools-ai-actions .button { flex:1; white-space:nowrap; font-size:11px; gap:6px; padding:10px 8px; }
 .client-ui .tools-ai-empty { padding:40px 0 24px; }
 .client-ui .tools-example-list { display:grid; }
 .client-ui .tools-example-list button { justify-content:space-between; }
 .client-ui .tools-composer { padding:8px; }
 .client-ui .tools-composer-controls { flex-wrap:wrap; gap:10px; }
 .client-ui .tools-composer-options { flex:1 1 100%; }
 .client-ui .tools-composer-controls > .button { width:100%; }
 .client-ui .tools-composer-options select { flex:1; max-width:none; }
 .client-ui .tools-cost { margin-left:auto; }
 .client-ui .tools-message[data-role=user] { margin-left:24px; padding:12px 14px; }
 .client-ui .tools-dialog { padding:20px; }
 .client-ui .tools-check-empty { align-items:flex-start; padding-inline:0; }
}
@media(prefers-reduced-motion:reduce) {
 .client-ui .tools-workspace *, .client-ui .tools-workspace *::before,.client-ui .tools-workspace *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Approved workspace layout. Keep these overrides scoped to the AI tool. */
body.client-ui.tools-ai-active .client-footer { display:none; }
.client-ui.tools-ai-active .tools-heading { display:none; }
.client-ui.tools-ai-active .tools-workspace { padding-bottom:12px; }
.client-ui.tools-ai-active .tools-workspace > .topbar { margin-bottom:20px; }
.client-ui.tools-ai-active .tools-tabs { margin-bottom:16px; }
.client-ui .tools-ai { padding:0; height:var(--tools-ai-height,calc(100dvh - 210px)); min-height:640px; display:flex; flex-direction:column; border-color:#393d5c; border-radius:18px; }
.client-ui .tools-ai-heading { flex-shrink:0; margin:0; padding:18px 22px; border-bottom:1px solid var(--line); }
.client-ui .tools-ai-title { gap:12px; }
.client-ui .tools-ai-title > .ui-icon { width:24px; height:24px; padding:10px; border-radius:12px; }
.client-ui .tools-ai-heading p { margin-top:3px; font-size:12px; }
.client-ui .tools-ai-heading-actions { display:flex; align-items:center; gap:8px; }
.client-ui .tools-quota { border:0; background:none; padding:0; font-size:12px; color:var(--brand); }
.client-ui .tools-ai [data-gpt-work] { flex:1; min-height:0; }
.client-ui .tools-ai-layout { display:grid; grid-template-columns:minmax(0,1fr) 260px; height:100%; min-height:0; }
.client-ui .tools-settings-host { grid-column:2; grid-row:1; min-height:0; border-left:1px solid var(--line); background:#12192c; overflow:auto; }
.client-ui .tools-ai-sidebar { display:flex; flex-direction:column; gap:16px; min-height:100%; padding:22px; }
.client-ui .tools-rail-title { color:#b4a8dd; font-size:10px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase; }
.client-ui .tools-ai-selects { display:grid; gap:14px; width:100%; }
.client-ui .tools-ai-selects > div { min-width:0; display:grid; gap:7px; }
.client-ui .tools-ai-selects label { font-size:12px; font-weight:600; margin:0; line-height:1.5; color:var(--muted); }
.client-ui .tools-ai-selects select { width:100%; min-width:0; height:44px; min-height:44px; padding:0 12px; font-size:13px; line-height:normal; margin:0; }
.client-ui .tools-rail-copy { margin:0; font-size:12px; color:var(--muted); line-height:1.8; }
.client-ui .tools-rail-memory { border-top:1px solid var(--line); padding-top:18px; }
.client-ui .tools-rail-heading { display:flex; align-items:center; gap:8px; }
.client-ui .tools-rail-heading h3 { margin:0; font-size:13px; }
.client-ui .tools-rail-heading span { font-size:10px; color:var(--muted); }
.client-ui .tools-rail-heading .ui-icon { margin-left:auto; width:17px; height:17px; color:var(--brand); }
.client-ui .tools-memory-preview { font-size:12px; line-height:1.7; padding:12px; background:var(--surface-alt); border:1px solid var(--line); border-radius:10px; margin:12px 0 8px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; overflow-wrap:anywhere; }
.client-ui .tools-rail-memory > .button { width:100%; justify-content:space-between; padding:8px 10px; font-size:12px; }
.client-ui .tools-new-dialog { margin-top:auto; width:100%; padding:10px; font-size:12px; flex-shrink:0; }
.client-ui .tools-chat-main { grid-row:1; grid-column:1; min-height:0; min-width:0; display:flex; flex-direction:column; }
.client-ui .tools-chat-scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#5d5679 transparent; padding:24px; overflow-anchor:none; }
.client-ui .tools-ai-conversation { padding:0; gap:24px; }
.client-ui .tools-ai-empty { padding:24px 0; min-height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.client-ui .tools-ai-empty h3 { font-size:21px; }
.client-ui .tools-example-list { gap:8px; }
.client-ui .tools-example-list button { font-size:11px; padding:10px 12px; }
.client-ui .tools-composer-zone { flex-shrink:0; border-top:1px solid var(--line); padding:12px 20px 14px; background:#10172a; min-width:0; }
.client-ui .tools-composer { margin:0; border-radius:12px; padding:10px; }
.client-ui .tools-composer textarea { display:block; min-height:48px; height:56px; max-height:min(160px,22dvh); resize:none; overflow:auto; padding:4px; font-size:14px; line-height:1.6; }
.client-ui .tools-composer-controls { flex-wrap:nowrap; gap:8px; padding-top:6px; }
.client-ui .tools-composer-options { flex:0 1 auto; gap:8px; position:relative; }
.client-ui .tools-composer-controls > .button { width:auto; flex-shrink:0; min-height:44px; padding:10px 14px; font-size:12px; }
.client-ui .tools-attach.button { display:grid; place-items:center; height:44px; min-width:44px; width:44px; padding:0; margin:0; line-height:1; }
.client-ui .tools-attach > .ui-icon { display:block; width:20px; height:20px; margin:0; }
.client-ui .tools-composer-options select { appearance:none; -webkit-appearance:none; background-image:none; min-width:100px; max-width:130px; width:116px; height:44px; padding:0 8px; text-align:center; text-align-last:center; font-size:12px; line-height:normal; }
.client-ui .tools-ai .button.primary { background:#6055df; border-color:#8079f1; box-shadow:0 4px 14px #33299526; }
.client-ui .tools-ai .button.primary:hover { background:#7164ed; border-color:#a096ff; }
.client-ui .tools-ai .button.primary:active { background:#6558d5; filter:none; }
.client-ui .tools-cost { appearance:none; display:inline-flex; align-items:center; justify-content:center; font:500 11px/1.5 Manrope,sans-serif; color:#c2b9ee; padding:5px 4px; margin:0; min-height:44px; min-width:44px; border:0; border-radius:6px; background:transparent; cursor:help; text-decoration:underline dotted #887aaf; text-underline-offset:4px; white-space:nowrap; }
.client-ui .tools-cost:hover,.client-ui .tools-cost[aria-expanded=true] { color:#eee9ff; background:#26223e; }
.client-ui .tools-price-info { position:fixed; z-index:80; width:min(300px,calc(100vw - 32px)); padding:12px 14px; border:1px solid #73668f; border-radius:11px; background:#24203a; box-shadow:0 8px 24px #0006; color:#eee9ff; font-size:12px; line-height:1.75; white-space:normal; }
.client-ui .tools-composer-hint { font-size:10px; margin:7px 2px 0; line-height:1.5; }
.client-ui .tools-job-status { margin:0 0 8px; padding:8px 12px; font-size:12px; }
.client-ui .tools-ai-error { margin:0 0 8px; padding:8px 12px; font-size:12px; max-height:76px; overflow:auto; }
.client-ui .tools-ai-gate { overflow:auto; flex:1; border:0; }
.client-ui .tools-settings-open.button,.client-ui .tools-mobile-summary { display:none; }
.client-ui .tools-icon-button.button { display:grid; place-items:center; width:44px; min-width:44px; height:44px; padding:0; line-height:1; }
.client-ui .tools-icon-button > .ui-icon { display:block; width:20px; height:20px; margin:0; }
.client-ui .tools-dialog-heading { align-items:center; margin-bottom:12px; }
.client-ui .tools-dialog-heading h2 { font-size:21px; }
.client-ui .tools-memory-form { gap:10px; margin:0; }
.client-ui .tools-memory-form label { margin:0; font-size:12px; }
.client-ui .tools-memory-form textarea { margin:0; resize:vertical; min-height:84px; max-height:30dvh; font-size:14px; }
.client-ui .tools-memory-buttons { display:flex; align-items:stretch; justify-content:space-between; gap:12px; margin-top:4px; }
.client-ui .tools-memory-buttons > .button { min-height:46px; font-size:12px; padding:10px 14px; margin:0; line-height:1.5; }
.client-ui .tools-memory-buttons [data-gpt-clear] { border-color:#795666; color:#f3b9c9; }
.client-ui .tools-memory-buttons .primary { min-width:130px; }
.client-ui .tools-settings-dialog .tools-ai-sidebar { padding:8px 0 0; min-height:0; }
.client-ui .tools-settings-dialog .tools-ai-selects { grid-template-columns:1fr 1fr; }
.client-ui .tools-settings-dialog .tools-new-dialog { margin-top:0; }
@media(max-width:800px) {
 .client-ui.tools-ai-active .tools-workspace > .topbar { margin-bottom:12px; }
 .client-ui.tools-ai-active .tools-tabs { margin-bottom:12px; }
 .client-ui .tools-ai { min-height:300px; border-radius:14px; }
 .client-ui .tools-ai-heading { padding:12px; }
 .client-ui .tools-ai-heading h2 { font-size:18px; }
 .client-ui .tools-ai-title > .ui-icon { width:18px; height:18px; padding:8px; }
 .client-ui .tools-ai-heading p { display:none; }
 .client-ui .tools-quota { font-size:10px; max-width:125px; }
 .client-ui .tools-settings-open.button { display:grid; }
 .client-ui .tools-ai-layout { display:flex; }
 .client-ui .tools-settings-host { display:none; }
 .client-ui .tools-chat-main { width:100%; }
 .client-ui .tools-mobile-summary { display:block; flex-shrink:0; padding:8px 14px; color:var(--muted); font-size:11px; border-bottom:1px solid var(--line); }
 .client-ui .tools-chat-scroll { padding:16px 13px; }
 .client-ui .tools-message-content { font-size:13px; }
 .client-ui .tools-message[data-role=user] { margin-left:20px; padding:10px 12px; }
 .client-ui .tools-composer-zone { padding:10px; }
 .client-ui .tools-composer { padding:8px; }
 .client-ui .tools-composer textarea { font-size:16px; height:50px; }
 .client-ui .tools-composer-options { flex:0 1 auto; gap:4px; }
 .client-ui .tools-composer-options select { min-width:85px; width:85px; max-width:110px; flex:none; font-size:11px; }
 .client-ui .tools-composer-controls > .button { padding:10px; font-size:11px; gap:6px; }
 .client-ui .tools-cost { margin:0; font-size:10px; padding-inline:2px; }
 .client-ui .tools-composer-hint span { display:none; }
 .client-ui .tools-ai-empty { padding:12px 0; }
 .client-ui .tools-ai-empty .tools-empty-icon { width:28px; height:28px; margin-bottom:10px; }
 .client-ui .tools-ai-empty h3 { font-size:18px; }
 .client-ui .tools-ai-empty p { font-size:12px; margin-bottom:12px; }
 .client-ui .tools-example-list { display:flex; }
 .client-ui .tools-example-list button { min-height:40px; padding:8px; font-size:10px; }
 .client-ui .tools-settings-dialog { margin:auto auto max(12px,env(safe-area-inset-bottom)); border-radius:18px 18px 12px 12px; }
 .client-ui .tools-memory-buttons { gap:8px; }
 .client-ui .tools-memory-buttons > .button { padding:9px; font-size:11px; }
 .client-ui .tools-memory-buttons .primary { min-width:100px; }
}
@media(max-width:359px) {
 .client-ui .tools-composer-controls > .button [data-gpt-send-label] { display:none; }
 .client-ui .tools-composer-options select { min-width:75px; width:75px; }
}
body.client-ui.tools-ai-active { padding-bottom:0; }
.client-ui .tools-settings-open.tools-icon-button.button { display:none; }
.client-ui .tools-composer-options { flex-shrink:0; }
@media(max-width:800px) {
 .client-ui .tools-settings-open.tools-icon-button.button { display:grid; }
}
/* Mobile keeps the conversation larger than the composer. */
.client-ui .tools-cost-host { display:contents; }
.client-ui .tools-quota-mobile,.client-ui .tools-check-tab-short { display:none; }
@media(min-width:801px) {
 .client-ui .tools-chat-scroll { overscroll-behavior-y:auto; }
}
@media(max-width:800px) {
 .client-ui.tools-ai-active .tools-workspace > .topbar { padding:4px 0; margin-bottom:8px; }
 .client-ui.tools-ai-active .tools-tabs { padding:3px; margin-bottom:8px; }
 .client-ui.tools-ai-active .tools-tab { min-height:44px; padding:8px; font-size:11px; gap:7px; white-space:nowrap; }
 .client-ui.tools-ai-active .tools-check-tab-full { display:none; }
 .client-ui.tools-ai-active .tools-check-tab-short { display:inline; }
 .client-ui .tools-ai-heading { padding:4px 10px; }
 .client-ui .tools-ai-title > .ui-icon,.client-ui .tools-quota { display:none; }
 .client-ui .tools-quota-mobile { display:inline; font-size:12px; color:var(--brand); white-space:nowrap; }
 .client-ui .tools-ai-title { min-width:0; gap:0; }
 .client-ui .tools-mobile-summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:0 10px; }
 .client-ui [data-gpt-summary] { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
 .client-ui .tools-mobile-price-slot { flex:none; display:flex; }
 .client-ui .tools-cost { margin:0; padding:4px; font-size:12px; }
 .client-ui .tools-chat-scroll { padding:14px 12px; }
 .client-ui .tools-composer-zone { padding:6px 8px; }
 .client-ui .tools-composer { padding:6px; }
 .client-ui .tools-composer textarea { min-height:36px; height:36px; max-height:96px; padding:4px; }
 .client-ui .tools-composer-controls { display:flex; flex-wrap:nowrap; align-items:center; gap:8px; padding-top:4px; }
 .client-ui .tools-composer-options { flex:1; width:auto; min-width:0; gap:8px; }
 .client-ui .tools-composer-options select { flex:1; width:auto; min-width:96px; max-width:150px; font-size:12px; }
 .client-ui .tools-composer-controls > .button { display:grid; place-items:center; min-width:44px; width:44px; height:44px; padding:0; }
 .client-ui .tools-composer-controls > .button > .ui-icon { width:21px; height:21px; }
 .client-ui [data-gpt-send-label],.client-ui [data-gpt-stop-label],.client-ui .tools-composer-hint { display:none; }
}
/* The public checker shares the AI workspace shell, with natural page scrolling. */
.client-ui .tools-workspace > .tools-heading { display:none; }
.client-ui .tools-workspace > .topbar { margin-bottom:20px; }
.client-ui .tools-tabs { margin-bottom:16px; }
.client-ui .tools-check-card { padding:0; border-radius:18px; overflow:hidden; }
.client-ui .tools-check-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:22px 24px; border-bottom:1px solid var(--line); }
.client-ui .tools-check-title { display:flex; align-items:center; gap:14px; min-width:0; }
.client-ui .tools-check-title > .ui-icon { width:48px; height:48px; padding:11px; flex-shrink:0; color:var(--brand); background:var(--surface-alt); border:1px solid var(--line); border-radius:13px; }
.client-ui .tools-check-title h2 { font-size:21px; letter-spacing:-.4px; margin:0; }
.client-ui .tools-check-title p { margin:4px 0 0; color:var(--muted); font-size:12px; }
.client-ui .tools-check-assurance { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:11px; white-space:nowrap; }
.client-ui .tools-check-assurance .ui-icon { width:16px; height:16px; }
.client-ui .tools-check-layout { display:grid; grid-template-columns:minmax(0,1fr) 260px; min-height:410px; }
.client-ui .tools-check-results { min-width:0; padding:24px; }
.client-ui .tools-check-sidebar { min-width:0; padding:24px 20px; border-left:1px solid var(--line); background:var(--bg-soft); }
.client-ui .tools-check-rail-title { color:var(--muted); font-size:10px; letter-spacing:1.3px; font-weight:700; text-transform:uppercase; margin-bottom:20px; }
.client-ui .tools-check-card .tools-check-form { display:grid; gap:12px; margin:0; }
.client-ui .tools-check-field label { display:block; font-size:12px; margin:0 0 8px; color:var(--muted); }
.client-ui .tools-check-field input { height:48px; min-width:0; width:100%; margin:0; padding:0 12px; border-radius:10px; }
.client-ui .tools-check-card .tools-check-form .button { width:100%; min-width:0; padding:10px 12px; border-radius:10px; }
.client-ui .tools-check-copy,.client-ui .tools-check-explanation p { color:var(--muted); font-size:12px; line-height:1.8; margin:16px 0 0; }
.client-ui .tools-check-explanation { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.client-ui .tools-check-explanation h3 { font-size:12px; font-weight:600; margin:0; }
.client-ui .tools-check-explanation p { margin-top:8px; }
.client-ui .tools-check-card .tools-probe { padding:0; margin:0; border:0; }
.client-ui .tools-checked-url { display:flex; align-items:flex-start; gap:8px; font-size:12px; color:var(--muted); margin:0 0 8px; }
.client-ui .tools-checked-url .ui-icon { width:15px; height:15px; flex-shrink:0; margin-top:3px; }
.client-ui .tools-check-results h3 { font-size:20px; line-height:1.45; letter-spacing:-.3px; margin:0; }
.client-ui .tools-check-average { font-size:12px; color:var(--muted); margin:8px 0 22px; }
.client-ui .tools-check-average strong { font-weight:500; }
.client-ui .tools-check-card .tools-probe-list { margin-top:0; }
.client-ui .tools-check-card .tools-probe-row summary { min-height:66px; grid-template-columns:minmax(0,1fr) auto 14px; gap:16px; padding:14px 16px; }
.client-ui .tools-check-card .tools-probe-name { min-width:0; gap:12px; }
.client-ui .tools-check-card .tools-probe-name strong { font-size:14px; font-weight:500; overflow-wrap:anywhere; }
.client-ui .tools-country-code { display:grid; place-items:center; width:34px; height:34px; flex-shrink:0; background:var(--surface-alt); border:1px solid var(--line); border-radius:9px; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.6px; }
.client-ui .tools-country-code .ui-icon { width:16px; height:16px; }
.client-ui .tools-probe-reading { display:flex; align-items:center; gap:14px; font-size:12px; white-space:nowrap; }
.client-ui .tools-probe-status { display:flex; align-items:center; gap:6px; }
.client-ui .tools-probe-status::before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; }
.client-ui .tools-check-card .tools-probe-time { min-width:48px; text-align:right; font-variant-numeric:tabular-nums; }
.client-ui .tools-check-card .tools-disclosure-icon { grid-column:auto; grid-row:auto; width:14px; height:14px; }
.client-ui .tools-check-card .tools-probe-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:0 16px 18px 62px; }
.client-ui .tools-check-card .tools-check-empty { flex-direction:column; align-items:center; gap:12px; justify-content:center; padding:40px 16px; margin:0; border:0; min-height:100%; text-align:center; }
.client-ui .tools-check-empty > .ui-icon { width:34px; height:34px; }
.client-ui .tools-check-empty p { font-size:13px; max-width:320px; margin:0; }
.client-ui .tools-check-footer { padding:13px 24px; border-top:1px solid var(--line); background:var(--bg-soft); }
.client-ui .tools-check-footer p { font-size:12px; line-height:1.6; margin:0; color:var(--muted); }
.client-ui .tools-check-footer [data-tools-progress] { color:var(--brand); }
.client-ui .tools-check-footer [data-tools-progress].status-warn { color:var(--warn); }
.client-ui .tools-probe-row[data-check-state=pending] .tools-probe-status { color:var(--muted); }
@media(max-width:800px) {
 .client-ui .tools-check-heading { padding:16px; }
 .client-ui .tools-check-title { gap:10px; }
 .client-ui .tools-check-title > .ui-icon { width:38px; height:38px; padding:8px; border-radius:10px; }
 .client-ui .tools-check-title h2 { font-size:18px; }
 .client-ui .tools-check-title p { font-size:11px; }
 .client-ui .tools-check-assurance { display:none; }
 .client-ui .tools-check-layout { display:flex; flex-direction:column; min-height:0; }
 .client-ui .tools-check-sidebar { order:-1; border-left:0; border-bottom:1px solid var(--line); padding:16px; }
 .client-ui .tools-check-rail-title,.client-ui .tools-check-explanation { display:none; }
 .client-ui .tools-check-card .tools-check-form { display:flex; flex-direction:row; align-items:flex-end; gap:8px; }
 .client-ui .tools-check-card .tools-check-form .button { width:auto; flex:0 0 auto; max-width:140px; font-size:13px; }
 .client-ui .tools-check-card .tools-check-form .button .ui-icon { display:none; }
 .client-ui .tools-check-copy { font-size:11px; margin:10px 0 0; }
 .client-ui .tools-check-results { padding:18px 16px; }
 .client-ui .tools-check-results h3 { font-size:18px; }
 .client-ui .tools-check-average { margin-bottom:16px; font-size:11px; }
 .client-ui .tools-check-card .tools-probe-row summary { min-height:64px; padding:12px; gap:9px; }
 .client-ui .tools-check-card .tools-probe-name { gap:9px; }
 .client-ui .tools-probe-reading { flex-direction:column; align-items:flex-end; gap:0; font-size:11px; }
 .client-ui .tools-check-card .tools-probe-reading { white-space:normal; max-width:100px; text-align:right; }
 .client-ui .tools-check-card .tools-probe-time { margin:0; font-size:11px; }
 .client-ui .tools-check-card .tools-probe-metrics { padding-left:55px; }
 .client-ui .tools-check-footer { padding:12px 16px; }
 .client-ui .tools-check-card .tools-check-empty { padding:28px 8px; }
 .client-ui.tools-ai-active [data-tool-tab=check] { padding-block:6px; }
 .client-ui.tools-ai-active .tools-check-tab-short { white-space:normal; text-wrap:balance; line-height:1.3; }
}
