.ask-hub-page { min-height:100vh; background:#f7f5f2; color:#000e27; }
.ask-hub-header { position:relative; padding:56px 24px 52px; text-align:center; background:linear-gradient(135deg,#000e27,#0b3853); color:#fff; }
.ask-hub-header .eyebrow { margin-bottom:8px; color:#81d5ef; font-size:11px; font-weight:800; letter-spacing:2px; text-transform:uppercase; }
.ask-hub-header h1 { margin:0 0 10px; font-size:clamp(28px,5vw,42px); }
.ask-hub-header p { max-width:600px; margin:0 auto; color:rgba(255,255,255,.82); line-height:1.55; }
.ask-back { position:absolute; top:20px; left:max(20px,calc((100% - 1040px)/2)); color:#fff; font-size:13px; font-weight:700; text-decoration:none; }
.ask-hub-wrap { width:min(calc(100% - 32px),760px); margin:36px auto 70px; }
.ask-hub-card,.ask-hub-result { border:1px solid #e0dbd4; border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(0,14,39,.07); }
.ask-hub-card { padding:32px 52px 32px 32px; }
.ask-hub-icon { font-size:30px; margin-bottom:10px; }
.ask-hub-card h2 { margin:0 0 8px; font-size:23px; }
.ask-hub-intro,.ask-hub-note { color:#5b6574; font-size:14px; line-height:1.55; }
.ask-hub-card form { margin-top:24px; }
.ask-hub-card label { display:block; margin-bottom:8px; font-size:13px; font-weight:800; }
.ask-hub-card textarea { box-sizing:border-box; width:100%; max-width:100%; min-height:128px; padding:14px 116px 14px 14px; border:1px solid #b8c7d1; border-radius:10px; color:#000e27; font:inherit; line-height:1.5; resize:vertical; }
.ask-hub-card textarea:focus { outline:3px solid rgba(38,158,202,.22); border-color:#269eca; }
.ask-hub-card button { width:100%; margin-top:12px; border:0; border-radius:10px; padding:14px 18px; background:#269eca; color:#fff; font:inherit; font-weight:800; cursor:pointer; }
.ask-hub-card button:hover { background:#167da2; }
.ask-hub-card button:disabled { cursor:wait; opacity:.72; }
.ask-hub-note { margin:15px 0 0; font-size:12px; }
.ask-hub-result { margin-top:18px; padding:26px 28px; line-height:1.6; }
.ask-hub-result.loading { color:#405264; }
.ask-hub-result.error { border-color:#f1b5bd; background:#fff5f5; color:#8e2630; }
.ask-hub-result.needs-review { border-color:#f3ce91; background:#fffaf0; }
.ask-hub-answer-label { margin-bottom:10px; color:#0d6686; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; }
.ask-hub-answer { white-space:pre-wrap; }
.ask-hub-sources { display:grid; gap:8px; margin-top:22px; padding-top:18px; border-top:1px solid #e4e7eb; font-size:13px; }
.ask-hub-sources strong { color:#334155; }
.ask-hub-sources a { color:#086e95; font-weight:700; text-decoration:none; }
.ask-hub-sources a:hover { text-decoration:underline; }
.ask-review-list { display:grid; gap:14px; }
.ask-review-tools { margin-bottom:18px; padding:22px 24px; border:1px solid #b8ddeb; border-radius:14px; background:#eef8fc; }
.ask-review-tools h2 { margin:0 0 7px; font-size:18px; }
.ask-review-tools p { margin:0; color:#405264; font-size:14px; line-height:1.5; }
.ask-review-tools button { margin:16px 0 2px; border:0; border-radius:9px; padding:11px 15px; background:#0d6686; color:#fff; font:inherit; font-size:13px; font-weight:800; cursor:pointer; }
.ask-review-tools button:disabled { cursor:wait; opacity:.7; }
.ask-review-tools .ask-hub-note { margin-top:10px; font-size:12px; }
.ask-review-item { padding:22px 24px; border:1px solid #e0dbd4; border-radius:14px; background:#fff; box-shadow:0 5px 16px rgba(0,14,39,.05); }
.ask-review-item.needs-review { border-left:5px solid #f9a03f; }
.ask-review-meta { display:flex; justify-content:space-between; gap:12px; color:#52606d; font-size:12px; }
.ask-review-meta strong { color:#000e27; }
.ask-review-question { margin-top:13px; color:#000e27; font-weight:800; line-height:1.45; }
.ask-review-answer { margin-top:10px; color:#52606d; font-size:14px; line-height:1.55; white-space:pre-wrap; }
.ask-review-resolve { margin-top:14px; padding:8px 11px; border:1px solid #269eca; border-radius:8px; background:#269eca; color:#fff; font:inherit; font-size:12px; font-weight:800; cursor:pointer; }
.ask-review-resolve:hover { border-color:#167da2; background:#167da2; }
.ask-review-resolve:disabled { cursor:wait; opacity:.7; }
@media (max-width:600px) { .ask-hub-wrap { width:min(calc(100% - 24px),760px); margin-top:22px; } .ask-hub-card { padding:24px 42px 24px 20px; } .ask-hub-card textarea { padding-right:104px; } .ask-hub-result { padding:22px 20px; } }
