.ai-hub { --hub-muted:#4d6470; }
.ai-hub .ai-opening { display:grid; grid-template-columns:1fr 1fr; align-items:center; background:#12324b; color:#fff; border-radius:12px; overflow:hidden; margin:0 0 2rem; }
.ai-hub .ai-opening .ai-welcome { padding:2rem; }
.ai-hub .ai-opening h2 { color:#fff; margin:0 0 1rem; font-family:Georgia,serif; font-size:2.3rem; font-weight:normal; }
.ai-hub .ai-opening p { margin:0; color:#e2eef1; }
.ai-hub .ai-opening .ai-kicker { margin:0 0 .8rem; color:#b7dbdb; }
.ai-hub .ai-opening figure { display:block; margin:0; border:0; }
.ai-hub .ai-opening img { display:block; width:100%; height:auto; }
.ai-hub .ai-opening figcaption { color:#e2eef1; padding:.65rem 1rem; font-size:.8rem; font-style:normal; }
.ai-hub .ai-kicker { color:#006b77; text-transform:uppercase; letter-spacing:.12em; font-size:.75rem; font-weight:bold; }
.ai-hub .ai-collection { background:#f0f6f6; padding:1.6rem; }
.ai-hub .ai-collection h3 { font-size:1.7rem; margin:.4rem 0; }
.ai-hub .ai-collection .ai-count { font-size:2.5rem; line-height:1.2; font-weight:bold; color:#12324b; margin:0 0 .4rem; }
.ai-hub .ai-collection .ai-count span { font-size:.9rem; font-weight:normal; }
.ai-hub .ai-collection .ai-examples { font-size:.9rem; color:var(--hub-muted); }
.ai-hub .ai-action { display:inline-block; font-weight:bold; margin-top:.5rem; }
.ai-hub .ai-note { color:var(--hub-muted); font-size:.9rem; }
.ai-hub .ai-search { background:#edf5f5; border:1px solid #cbdde3; border-radius:8px; padding:1.25rem; margin:1.5rem 0; }
.ai-hub .ai-fields { display:flex; align-items:end; gap:1rem; flex-wrap:wrap; }
.ai-hub .ai-fields>div:first-child { flex:1; min-width:200px; }
.ai-hub label { display:block; font-weight:bold; font-size:.9rem; margin-bottom:.3rem; }
.ai-hub input,.ai-hub select,.ai-hub button { font:inherit; color:#12324b; background:#fff; border:1px solid #809aa5; border-radius:4px; padding:.65rem .8rem; }
.ai-hub input { width:100%; }
.ai-hub input::placeholder { color:#596b75; opacity:1; }
.ai-hub button { cursor:pointer; }
.ai-hub button:hover { background:#e1ecee; }
.ai-hub .ai-suggestions { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; margin:1rem 0; font-size:.85rem; }
.ai-hub .ai-suggestions button { padding:.35rem .7rem; }
.ai-hub #ai-results { margin:0; font-size:.9rem; color:#405863; }
.ai-hub details { border:1px solid #cbdde3; border-radius:8px; background:#fff; margin:1rem 0; }
.ai-hub summary { cursor:pointer; padding:1rem 1.25rem; font-size:1.1rem; font-weight:bold; color:#12324b; }
.ai-hub summary:hover { background:#edf5f5; }
.ai-hub .ai-topic-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:2rem; list-style:none; margin:0; padding:0 1.25rem 1.25rem; }
.ai-hub .ai-topic-list li { margin:0; border-top:1px solid #e1e9ec; }
.ai-hub .ai-topic-list a { display:block; padding:.7rem 0; line-height:1.5; font-size:.95rem; overflow-wrap:anywhere; }
.ai-hub [hidden] { display:none!important; }
.ai-hub .ai-history { margin-top:2.5rem; border-top:1px solid #cbdde3; }
@media(max-width:760px) { .ai-hub .ai-opening { grid-template-columns:1fr; } .ai-hub .ai-opening .ai-welcome { padding:1.5rem; } .ai-hub .ai-opening h2 { font-size:1.9rem; } }
@media(max-width:600px) { .ai-hub .ai-topic-list { grid-template-columns:1fr; } .ai-hub .ai-fields { align-items:stretch; } .ai-hub .ai-fields>div { width:100%; } .ai-hub select { width:100%; } .ai-hub .ai-collection { padding:1.25rem; } }

.resource-guide.ai-hub input[type="search"] { box-sizing:border-box; }
.ai-hub :is(input,select,button,summary):focus-visible { outline:3px solid #007d89; outline-offset:4px; }
