/* AI preferences belong to the same glass workspace as the rest of the Hub. */
[data-workspace="ai"] { --ai-glass: linear-gradient(135deg, #29392b99, #18211ee0); }
.ai-overview { display:grid; grid-template-columns:1fr .85fr 1.15fr; gap:1.5rem; padding:1.5rem 0; border-block:1px solid var(--line); margin-bottom:2rem; }
.ai-overview>div { min-width:0; display:flex; flex-direction:column; gap:.35rem; }
.ai-overview strong { font:2.4rem/1.12 var(--serif); color:var(--paper); }
.ai-overview .ai-model-name { font-size:1.75rem; overflow-wrap:anywhere; }
.ai-overview>div>span:last-child { font-size:.8rem; color:var(--muted); }
.ai-overview .eyebrow { font-size:.65rem; }
.ai-preset { display:flex; justify-content:space-between; align-items:center; gap:2rem; padding:1.8rem; background:linear-gradient(120deg,#eab48116,#eab48103); border:1px solid #eab4814d; border-radius:12px; }
.ai-preset h2 { margin-bottom:.6rem; }
.ai-preset p { margin-bottom:0; max-width:590px; font-size:.9rem; }
.ai-preset .eyebrow { margin-bottom:.7rem; font-size:.7rem; }
.ai-preset button { flex-shrink:0; border-color:#eab48177; border-radius:6px; }
.ai-form { max-width:none; margin:1.5rem 0; }
.ai-fields { border:0; margin:0; padding:0; min-width:0; display:grid; gap:1.5rem; }
.ai-panel { padding:1.8rem; border:1px solid #ffffff24; border-radius:12px; background:var(--ai-glass); backdrop-filter:blur(18px); }
.ai-section-heading { display:flex; align-items:baseline; gap:1rem; margin-bottom:1.5rem; }
.ai-section-heading h2 { margin:0 0 .5rem; font-size:2rem; }
.ai-section-heading p { margin:0; font-size:.875rem; }
.ai-step { font-size:.7rem; color:var(--accent); border-bottom:1px solid #eab48170; padding-bottom:.2rem; }
.ai-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.ai-grid>div { min-width:0; }
.ai-credentials { margin-top:1.7rem; padding-top:1.7rem; border-top:1px solid var(--line); }
.ai-form .hint { line-height:1.6; font-size:.8rem!important; margin-top:.65rem; }
.ai-form .ai-subtle { border:0; padding:.4rem 0; margin-top:.5rem; font-size:.75rem; color:var(--muted); text-decoration:underline; text-underline-offset:4px; }
.ai-feature { display:flex; gap:1.5rem; align-items:center; justify-content:space-between; padding:1.1rem 0; border-top:1px solid var(--line); }
.ai-feature>div,.ai-feature>span:first-child { min-width:0; }
.ai-feature strong { display:block; color:var(--paper); font-size:.95rem; font-weight:500; }
.ai-feature p,.ai-feature>span>span { display:block; margin:.35rem 0 0; color:var(--muted); font-size:.825rem; line-height:1.65; }
.ai-feature .hub-badge { flex-shrink:0; font-size:.65rem; }
.ai-feature .text-link { margin-top:.6rem; font-size:.78rem; }
.ai-toggle-label { display:flex; gap:.6rem; align-items:center; font-size:.8rem; color:var(--paper); flex-shrink:0; }
.ai-toggle-label input,.ai-form .hub-check input { width:18px; height:18px; accent-color:var(--accent); flex-shrink:0; }
.ai-form .hub-check { margin-top:1rem; font-size:.85rem; }
.ai-form .hub-policy { font-size:.85rem; margin:0 0 1.5rem; }
.ai-form .hub-policy .text-link { font-size:.8rem; }
.ai-master { padding-top:1.5rem; margin-top:1.5rem!important; border-top:1px solid var(--line); }
.ai-master strong { display:block; font-weight:500; font-size:1rem; }
.ai-master small { display:block; margin-top:.3rem; color:var(--muted); font-size:.8rem; }
.ai-save { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; padding:1.3rem 0; border-block:1px solid var(--line); }
.ai-save p { margin:0; font-size:.8rem; color:var(--accent); }
.ai-save button { border-radius:6px; }
.ai-footnote { font-size:.8rem; max-width:720px; }
@media(max-width:1100px) { .ai-preset { align-items:flex-start; flex-direction:column; gap:1.25rem; } }
@media(max-width:800px) { .ai-grid { grid-template-columns:1fr; } .ai-overview { gap:1rem; } .ai-overview strong { font-size:1.9rem; } .ai-overview .ai-model-name { font-size:1.5rem; } .ai-feature { align-items:flex-start; flex-direction:column; gap:.65rem; } }
@media(max-width:480px) { .ai-overview { grid-template-columns:1fr 1fr; } .ai-overview>div:last-child { grid-column:1/-1; } .ai-panel,.ai-preset { padding:1.25rem; } .ai-section-heading { gap:.7rem; } .ai-section-heading h2 { font-size:1.8rem; } .ai-save { align-items:stretch; } .ai-save .hub-actions { width:100%; } .ai-save button { flex:1; padding:.7rem; } }
@media(prefers-reduced-motion:reduce) { [data-workspace="ai"] { scroll-behavior:auto; } }
.ai-feature-list { display:grid; gap:0; }
.ai-feature-model { padding:1.4rem 0; border-top:1px solid var(--line); }
.ai-feature-heading { display:flex; align-items:baseline; justify-content:space-between; gap:1.5rem; margin-bottom:1rem; }
.ai-feature-heading>div { min-width:0; }
.ai-feature-heading h3 { margin:0 0 .45rem; font:500 1rem/1.4 var(--sans); color:var(--paper); }
.ai-feature-heading p { margin:0; max-width:620px; font-size:.825rem; line-height:1.65; }
.ai-feature-heading .hub-badge { flex-shrink:0; font-size:.6rem; }
.ai-feature-model label { font-size:.78rem; }
.ai-feature-model .ai-feature-detail { margin-bottom:0; }
.ai-feature-actions { display:flex; align-items:center; gap:1rem; justify-content:space-between; margin-top:1rem; }
.ai-key-summary p { color:var(--paper); font-size:.9rem; margin-bottom:.6rem; }
.ai-key-summary .eyebrow { font-size:.65rem; }
.ai-key-summary .text-link { font-size:.8rem; }
.ai-policy-provider + .ai-policy-provider { padding-top:1rem; margin-top:1rem; border-top:1px solid var(--line); }
.ai-policy-provider h3 { font-size:.9rem; font-weight:500; }
.ai-policy-provider p { font-size:.82rem; }
.ai-upgrade { margin-top:1.5rem; }
.ai-connections { margin:2.5rem 0; }
.ai-connections .section-heading { align-items:end; gap:1.5rem; flex-wrap:wrap; }
.ai-connections .section-heading .eyebrow { font-size:.65rem; margin-bottom:.6rem; }
.ai-connections>.hint { max-width:880px; font-size:.825rem; }
.ai-connection-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin:1.4rem 0 1rem; }
.ai-connection-card { display:flex; flex-direction:column; min-width:0; padding:1.4rem; border:1px solid #ffffff24; border-radius:12px; background:linear-gradient(135deg,#29392b99,#18211ee0); backdrop-filter:blur(18px); }
.ai-provider-monogram { display:grid; place-items:center; width:2.2rem; height:2.2rem; font:1.55rem/1 var(--serif); border:1px solid #eab4814d; border-radius:50%; color:var(--accent); }
.ai-connection-card .hub-card-title { gap:.5rem; }
.ai-connection-card .hub-badge { font-size:.62rem; }
.ai-connection-card h3 { margin:1rem 0 .35rem; font:1.6rem/1.2 var(--serif); color:var(--paper); }
.ai-connection-card p { margin:0 0 .4rem; font-size:.8rem; }
.ai-connection-card small { display:block; font-size:.7rem; color:var(--muted); margin-bottom:1.2rem; }
.ai-connection-card .hub-actions { margin-top:auto; gap:.5rem; flex-wrap:wrap; }
.ai-connection-card button { padding:.55rem .7rem; font-size:.72rem; }
.ai-connection-card .ai-key-remove { color:var(--muted); border-color:transparent; padding-inline:.2rem; }
[data-ai-key-form] fieldset { min-width:0; padding:0; border:0; display:grid; gap:.8rem; }
[data-ai-key-form] .text-link { font-size:.8rem; }
@media(max-width:1200px) { .ai-connection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:800px) { .ai-feature-heading { flex-direction:column; gap:.7rem; } .ai-feature-actions { flex-wrap:wrap; } }
@media(max-width:480px) { .ai-connection-grid { grid-template-columns:1fr; } .ai-connections .section-heading { align-items:start; } .ai-overview { grid-template-columns:1fr 1fr; } .ai-overview>div:last-child { grid-column:1 / -1; } .ai-feature-actions { align-items:start; flex-direction:column; } }
