/* BFG GPT (Need Help page). Colours use tokens only (--card, --off, --border, --text,
   --muted, --navy, --navy-ink, --gold, --gold-text, --lav), which dark.css already
   redefines, so no dark-mode copy of these rules is needed. */
.gpt{background:var(--card,#fff);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:22px;}
.gpt-head{display:flex;align-items:center;gap:13px;padding:15px 20px;background:linear-gradient(120deg,var(--navy),var(--navy-dark));color:#fff;}
.gpt-ava{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.gpt-ava svg{width:20px;height:20px;}
.gpt-head h3{font-size:15px;font-weight:800;color:#fff;}
.gpt-head p{font-size:12px;color:rgba(255,255,255,.75);margin-top:2px;}
.gpt-body{padding:16px 18px 18px;background:var(--off);}
.gpt-search{display:flex;align-items:center;gap:9px;background:var(--card,#fff);border:1.5px solid var(--border);border-radius:11px;padding:0 8px 0 13px;}
.gpt-search:focus-within{border-color:var(--navy);}
.gpt-search>svg{width:18px;height:18px;flex-shrink:0;color:var(--muted);}
.gpt-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--text);font-size:15px;padding:13px 2px;outline:none;}
.gpt-clear{border:0;background:var(--lav);color:var(--navy-ink,var(--navy));border-radius:8px;font-size:12px;font-weight:700;padding:7px 10px;cursor:pointer;}
.gpt-filters{margin-top:12px;}
.gpt-chips{display:flex;flex-wrap:wrap;gap:6px;}
.gpt-chip{font-size:11.5px;font-weight:700;color:var(--navy-ink,var(--navy));background:var(--card,#fff);border:1px solid var(--border);border-radius:20px;padding:6px 12px;cursor:pointer;}
.gpt-chip small{color:var(--muted);font-size:10.5px;margin-left:4px;font-weight:600;}
.gpt-chip:hover{background:var(--lav);}
.gpt-chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff;}
.gpt-chip[aria-pressed="true"] small{color:rgba(255,255,255,.8);}
.gpt-sel{display:none;width:100%;background:var(--card,#fff);color:var(--text);border:1px solid var(--border);border-radius:10px;font-size:14px;padding:10px 12px;}
@media(max-width:700px){.gpt-chips{display:none;}.gpt-sel{display:block;}}
.gpt-count{font-size:12px;color:var(--muted);margin:11px 0 0;}
.gpt-hint{font-size:13px;color:var(--muted);margin:14px 0 8px;}
.gpt-sugs{display:flex;flex-wrap:wrap;gap:7px;}
.gpt-sug{font-size:12.5px;font-weight:700;color:var(--navy-ink,var(--navy));background:var(--card,#fff);border:1px solid var(--border);border-radius:20px;padding:8px 14px;cursor:pointer;}
.gpt-sug:hover{background:var(--lav);border-color:var(--lav2);}
.gpt-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;}
.gpt-card{background:var(--card,#fff);border:1px solid var(--border);border-radius:12px;min-width:0;}
.gpt-card[open]{border-color:var(--lav2);}
.gpt-card>summary{list-style:none;cursor:pointer;padding:12px 15px;display:block;}
.gpt-card>summary::-webkit-details-marker{display:none;}
.gpt-t{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:14px;font-weight:800;line-height:1.35;color:var(--text);}
.gpt-t span{min-width:0;overflow-wrap:anywhere;}
.gpt-t::after{content:"";flex:none;width:7px;height:7px;margin-top:5px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);}
.gpt-card[open]>summary .gpt-t::after{transform:rotate(-135deg);margin-top:8px;}
.gpt-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;}
.gpt-tag{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:6px;background:var(--lav);color:var(--navy-ink,var(--navy));}
.gpt-tag.gold{background:rgba(201,168,76,.22);color:var(--gold-text);}
.gpt-snip{margin:7px 0 0;font-size:12.5px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.gpt-card[open]>summary .gpt-snip{display:none;}
.gpt mark{background:rgba(201,168,76,.4);color:inherit;border-radius:3px;padding:0 1px;}
.gpt-ans{padding:0 15px 14px;border-top:1px solid var(--border);overflow-wrap:anywhere;font-size:13.5px;line-height:1.55;color:var(--text);}
.gpt-ans>.gpt-body-txt>:first-child{margin-top:12px;}
.gpt-ans p{margin:0 0 .7em;}
.gpt-ans ul,.gpt-ans ol{margin:0 0 .7em;padding-left:1.2em;}
.gpt-ans li{margin:.2em 0;}
.gpt-ans h3,.gpt-ans h4{font-size:13.5px;font-weight:800;margin:1em 0 .35em;}
.gpt-ans blockquote{margin:.8em 0;padding:.55em .85em;border-left:3px solid var(--gold);background:rgba(201,168,76,.14);border-radius:0 8px 8px 0;font-size:12.5px;}
.gpt-ans blockquote p:last-child{margin:0;}
.gpt-tw{overflow-x:auto;margin:.6em 0 .9em;border:1px solid var(--border);border-radius:8px;}
.gpt-ans table{border-collapse:collapse;font-size:12.5px;min-width:100%;}
.gpt-ans th,.gpt-ans td{padding:7px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;}
.gpt-ans th{background:var(--lav);font-weight:700;}
.gpt-src{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:11px;border-top:1px dashed var(--border);}
.gpt-src p{margin:0;font-size:11.5px;color:var(--muted);flex:1 1 200px;min-width:0;}
.gpt-src b{color:var(--text);}
.gpt-copy,.gpt-more{font-size:12px;font-weight:700;color:var(--navy-ink,var(--navy));background:var(--lav);border:1px solid var(--lav2);border-radius:8px;padding:7px 12px;cursor:pointer;}
.gpt-more{display:block;margin:12px auto 0;}
.gpt-empty{text-align:center;color:var(--muted);font-size:13px;padding:26px 10px;}
.gpt-empty b{display:block;color:var(--text);font-size:15px;margin-bottom:5px;}
