.gw-resource-search { padding: 42px 0 76px; }
.gw-resource-search__container { max-width: 960px; }
.gw-resource-search__header { max-width: 680px; padding: 18px 0 28px; }
.gw-resource-search__header > span { color: var(--gw-primary); font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.gw-resource-search__header h1 { margin: 8px 0 10px; color: var(--gw-heading); font-size: 32px; line-height: 1.22; }
.gw-resource-search__header p { margin: 0; color: var(--gw-text-secondary); font-size: 14px; line-height: 1.75; }
.gw-resource-search__workspace, .gw-resource-search__notice { border: 1px solid var(--gw-border); border-radius: 8px; background: var(--gw-white); }
.gw-resource-search__workspace { overflow: hidden; }
.gw-resource-search__content { padding: 18px; }
.gw-resource-tabs { display: flex; gap: 4px; overflow-x: auto; margin: -18px -18px 18px; padding: 10px 18px; border-bottom: 1px solid var(--gw-border-light); }
.gw-resource-tabs__tab { flex: 0 0 auto; min-height: 34px; padding: 0 14px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--gw-text-secondary); font-size: 13px; font-weight: 700; cursor: pointer; }
.gw-resource-tabs__tab:hover, .gw-resource-tabs__tab:focus-visible { color: var(--gw-heading); outline: none; }
.gw-resource-tabs__tab.is-active { border-bottom-color: var(--gw-primary); color: var(--gw-primary); }
.gw-resource-tabs__tab.is-disabled { color: var(--gw-text-muted); opacity: .65; }
.gw-resource-search__gate { padding: 28px; border: 1px solid var(--gw-border); border-radius: 10px; background: linear-gradient(135deg,#fff 0%,#f4f1ff 100%); }
.gw-resource-search__gate h1 { margin: 8px 0; font-size: 26px; }
.gw-resource-search__sponsor-note { margin: 14px 0; color: var(--gw-text-secondary); font-size: 12px; }
.gw-resource-search__gate-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.gw-resource-search__sponsor-button { min-height:36px; padding:0 14px; }
.gw-resource-search__section + .gw-resource-search__section { margin-top: 24px; }
.gw-resource-search__section > h2 { margin: 0 0 8px; color: var(--gw-heading); font-size: 18px; }
.gw-resource-search__disabled { margin: 0; padding: 14px; border: 1px dashed var(--gw-border); color: var(--gw-text-muted); font-size: 13px; }
.gw-resource-search__toolbar { display: flex; gap: 10px; padding: 18px; border-bottom: 1px solid var(--gw-border-light); }
.gw-resource-search__toolbar form { display: flex; flex: 1; min-width: 0; min-height: 42px; border: 1px solid var(--gw-border); border-radius: 6px; }
.gw-resource-search__toolbar input { width: 100%; min-width: 0; border: 0; padding: 0 12px; background: transparent; color: var(--gw-heading); }
.gw-resource-search__toolbar form button, .gw-resource-search__unlock { display: inline-flex; align-items: center; justify-content: center; min-width: 90px; border: 0; border-radius: 6px; padding: 0 13px; background: var(--gw-primary); color: #fff; font-size: 13px; font-weight: 750; text-decoration: none; cursor: pointer; }
.gw-resource-search__unlock { background: #263246; white-space: nowrap; }
.gw-resource-search__unlock:disabled { opacity: .6; cursor: default; }
.gw-resource-search__status { min-height: 20px; margin: 12px 18px; color: var(--gw-text-muted); font-size: 12px; }
.gw-resource-search__status.is-error { color: var(--gw-danger); }
.gw-resource-search__results { min-height: 180px; padding: 0 18px 18px; }
.gw-resource-result { display: flex; gap: 16px; padding: 18px 0; border-top: 1px solid var(--gw-border-light); }
.gw-resource-result__content { min-width: 0; }
.gw-resource-result__source { color: var(--gw-primary); font-size: 11px; font-weight: 800; }
.gw-resource-result h2 { margin: 5px 0 7px; color: var(--gw-heading); font-size: 18px; line-height: 1.35; }
.gw-resource-result p { margin: 0 0 9px; color: var(--gw-text-secondary); font-size: 13px; line-height: 1.7; }
.gw-resource-result__link { display: inline-flex; align-items: center; min-height: 32px; border: 0; padding: 0 12px; border-radius: 6px; background: var(--gw-primary); color: #fff; font-size: 12px; font-weight: 750; text-decoration: none; cursor: pointer; }
.gw-resource-result__link:disabled { opacity: .65; cursor: progress; }
.gw-resource-result__purchase { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; margin-left: 7px; padding: 0 11px; border: 1px solid #d9e0e8; border-radius: 6px; background: #f4f6f9; color: #8792a0; font-size: 12px; font-weight: 700; cursor: not-allowed; }
.gw-resource-result__purchase small { font-size: 10px; font-weight: 600; opacity: .8; }
.gw-resource-search__empty { padding: 38px 0; color: var(--gw-text-muted); font-size: 13px; text-align: center; }
.gw-resource-search__external-note { margin: 5px 0 0; color: var(--gw-text-muted); font-size: 12px; line-height: 1.5; }
.gw-resource-search__searchgal-status { padding: 8px 10px; border-radius: 6px; background: var(--gw-bg-soft); color: var(--gw-primary); }
.gw-resource-result__tags { display:flex; flex-wrap:wrap; gap:5px; margin:7px 0; }
.gw-resource-result__tag { display:inline-flex; align-items:center; min-height:21px; padding:0 7px; border-radius:99px; background:var(--gw-primary-soft); color:var(--gw-primary); font-size:10px; font-weight:700; }
.gw-resource-search__filters { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:4px 0 8px; padding:9px 10px; border:1px solid var(--gw-border-light); border-radius:7px; background:var(--gw-bg-soft); }
.gw-resource-search__filter-label { color:var(--gw-text-secondary); font-size:12px; font-weight:700; }
.gw-resource-search__filter { min-height:30px; padding:0 8px; border:1px solid var(--gw-border); border-radius:5px; background:#fff; color:var(--gw-text-secondary); font:inherit; font-size:12px; }
.gw-resource-result-list { min-width:0; }
.gw-resource-search__notice { padding: 28px; }.gw-resource-search__notice p { margin: 8px 0 0; color: var(--gw-text-secondary); }
.gw-resource-search__login { display:inline-flex; margin-top:18px; min-height:38px; align-items:center; padding:0 14px; border-radius:6px; background:var(--gw-primary); color:#fff; font-size:13px; font-weight:750; text-decoration:none; }
.gw-resource-search__safe-harbor { margin-top: 16px; padding: 17px 18px; border-left: 3px solid #c58b25; background: #fff9ed; color: var(--gw-text-secondary); }
.gw-resource-search__safe-harbor strong { color: var(--gw-heading); font-size: 13px; }
.gw-resource-search__safe-harbor p { margin: 6px 0 0; font-size: 12px; line-height: 1.75; }
.gw-resource-search__report-toggle { margin-top: 12px; min-height: 32px; padding: 0 11px; border: 1px solid var(--gw-border); border-radius: 6px; background: #fff; color: var(--gw-text-secondary); font-size: 12px; cursor: pointer; }
.gw-resource-search__report-form { display: grid; gap: 8px; margin-top: 12px; max-width: 620px; }
.gw-resource-search__report-form textarea { min-height: 90px; padding: 8px; border: 1px solid var(--gw-border); border-radius: 6px; resize: vertical; }
.gw-resource-search__report-form button { justify-self: start; min-height: 34px; padding: 0 12px; border: 0; border-radius: 6px; background: var(--gw-primary); color: #fff; font-size: 12px; font-weight: 700; cursor: pointer; }

/* AI resource workspace */
.gw-resource-search { padding: 48px 0 84px; background: linear-gradient(180deg, #fafbff 0, var(--gw-bg) 360px); }
.gw-resource-search__container { max-width: 1120px; }
.gw-resource-search__header { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; max-width:none; padding:8px 0 30px; }
.gw-resource-search__header-copy { min-width:0; }
.gw-resource-search__header .gw-resource-search__eyebrow { display:block; }
.gw-resource-search__header h1 { margin:9px 0 8px; font-size:34px; letter-spacing:-.03em; }
.gw-resource-search__header p { max-width:660px; }
.gw-resource-search__header-meta { display:grid; gap:5px; flex:0 0 min(320px, 35%); padding:14px 16px; border:1px solid rgba(124,92,255,.16); border-radius:10px; background:rgba(255,255,255,.76); }
.gw-resource-search__header-meta span { color:var(--gw-text-muted); font-size:11px; font-weight:700; }
.gw-resource-search__header-meta strong { overflow:hidden; color:var(--gw-heading); font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.gw-resource-search__workspace { border-color:rgba(124,92,255,.18); border-radius:12px; box-shadow:0 16px 42px rgba(40,43,76,.08); }
.gw-resource-search__identity { padding:16px 20px; background:#fff; }
.gw-resource-search__identity > div { gap:4px; }
.gw-resource-search__identity strong { font-size:15px; }
.gw-resource-search__article-label { margin-top:1px; }
.gw-resource-search__article-title { max-width:min(680px, 62vw); overflow:hidden; color:var(--gw-heading)!important; font-size:18px!important; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.gw-resource-search__identity-actions { display:flex!important; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:8px!important; }
.gw-resource-search__terms-button { min-height:34px; padding:0 12px; border:1px solid rgba(124,92,255,.24); border-radius:7px; background:#fff; color:var(--gw-primary); font:inherit; font-size:12px; font-weight:750; cursor:pointer; }
.gw-resource-search__terms-button:hover,.gw-resource-search__terms-button:focus-visible { border-color:rgba(124,92,255,.5); background:var(--gw-primary-soft); color:var(--gw-primary); box-shadow:none; outline:none; transform:none; }
.gw-resource-search__access-status { display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:0 13px; border-radius:7px; background:#263246; color:#fff; font-size:12px; font-weight:750; white-space:nowrap; }
.gw-resource-search__access-status[hidden] { display:none!important; }
.gw-resource-search__workbench { display:grid; grid-template-columns:220px minmax(0,1fr); min-width:0; }
.gw-resource-search__workbench[hidden] { display:none!important; }
.gw-resource-search__workspace.is-preparing [data-resource-workbench] { display:none!important; }
.gw-resource-search__workspace.is-preparing > :not([data-resource-preparing]):not([data-resource-terms]) { display:none!important; }
.gw-resource-search__sources { min-width:0; padding:20px 14px; border-right:1px solid var(--gw-border-light); background:#fafaff; }
.gw-resource-search__sources-heading { display:grid; gap:5px; padding:0 8px 14px; border-bottom:1px solid var(--gw-border-light); }
.gw-resource-search__sources-heading span { color:var(--gw-primary); font-size:10px; font-weight:800; letter-spacing:.12em; }
.gw-resource-search__sources-heading strong { color:var(--gw-heading); font-size:14px; }
.gw-resource-search__source-list { display:grid; gap:5px; padding-top:12px; }
.gw-resource-search__source { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-height:42px; padding:0 10px; border:1px solid transparent; border-radius:7px; background:transparent; color:var(--gw-text-secondary); font:inherit; font-size:13px; font-weight:700; text-align:left; cursor:pointer; }
.gw-resource-search__source:hover, .gw-resource-search__source:focus-visible { border-color:rgba(124,92,255,.14); background:#fff; color:var(--gw-heading); outline:none; }
.gw-resource-search__source.is-active { border-color:rgba(124,92,255,.18); background:var(--gw-primary-soft); color:var(--gw-primary); }
.gw-resource-search__source b { display:grid; min-width:22px; height:22px; padding:0 5px; place-items:center; border-radius:99px; background:#fff; color:var(--gw-text-muted); font-size:11px; }
.gw-resource-search__source.is-active b { color:var(--gw-primary); }
.gw-resource-search__source.is-disabled { opacity:.55; }
.gw-resource-search__sources-note { margin:18px 8px 0; color:var(--gw-text-muted); font-size:11px; line-height:1.65; }
.gw-resource-search__workbench > .gw-resource-search__content { min-width:0; padding:0; }
.gw-resource-search__results-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding:20px 20px 8px; }
.gw-resource-search__results-head > div { display:grid; gap:4px; }
.gw-resource-search__results-head h2 { margin:0; color:var(--gw-heading); font-size:20px; letter-spacing:-.02em; }
.gw-resource-search__accelerator { min-width:0; margin-left:auto; color:var(--gw-primary); font-size:12px; font-weight:700; line-height:1.55; overflow-wrap:anywhere; text-align:right; text-decoration:none; }
.gw-resource-search__accelerator:hover, .gw-resource-search__accelerator:focus-visible { text-decoration:underline; text-underline-offset:3px; }
.gw-resource-search__results-head > strong { padding:5px 9px; border-radius:99px; background:var(--gw-bg-soft); color:var(--gw-text-muted); font-size:11px; white-space:nowrap; }
.gw-resource-search__workbench .gw-resource-tabs { margin:0; padding:14px 20px 10px; background:#fff; }
.gw-resource-search__workbench .gw-resource-tabs__tab { min-height:34px; }
.gw-resource-search__workbench .gw-resource-search__section { padding:0 20px 20px; }
.gw-resource-search__workbench .gw-resource-result { padding:18px 0; }
.gw-resource-result { gap:0; }
.gw-resource-result__content { width:100%; }
.gw-resource-result__source { display:inline-flex; padding:3px 7px; border-radius:4px; background:var(--gw-primary-soft); }
.gw-resource-result h3 { margin:8px 0 6px; color:var(--gw-heading); font-size:17px; line-height:1.4; }
.gw-resource-result p { max-width:760px; }
.gw-resource-search__gate-context { color:var(--gw-heading)!important; font-size:16px!important; font-weight:800; }
.gw-resource-search__usage-card { display:grid; grid-template-columns:auto auto; align-items:baseline; gap:3px 12px; width:min(100%, 360px); margin:6px 0 2px; padding:12px 14px; border:1px solid rgba(124,92,255,.16); border-radius:9px; background:rgba(255,255,255,.72); text-align:left; }
.gw-resource-search__usage-card span { color:var(--gw-text-muted); font-size:11px; font-weight:700; }
.gw-resource-search__usage-card strong { color:var(--gw-primary); font-size:17px; }
.gw-resource-search__ai-picker { display:grid; grid-template-columns:auto minmax(430px,1fr); align-items:center; gap:22px; margin:0; padding:15px 20px; border:0; border-bottom:1px solid rgba(124,92,255,.13); border-radius:0; background:linear-gradient(90deg,#fbfaff,#fff); box-shadow:none; }
.gw-resource-search__ai-picker-copy { display:grid; gap:4px; min-width:0; }
.gw-resource-search__ai-picker-copy strong { color:var(--gw-heading); font-size:14px; }
.gw-resource-search__ai-picker-copy strong b { color:var(--gw-primary); }
.gw-resource-search__safe-harbor { border-left:3px solid var(--gw-primary); border-radius:0 9px 9px 0; background:linear-gradient(135deg,#f8f6ff,#fffaf0); }
.gw-resource-search__safe-harbor strong { display:block; }
.gw-resource-search__report-toggle { border-color:rgba(124,92,255,.22); color:var(--gw-primary); font-weight:700; }
.gw-resource-search__workspace.has-access [data-resource-gate] { display:none!important; }
.gw-resource-search__workspace.has-access .gw-resource-search__identity { border-bottom-color:rgba(124,92,255,.14); background:linear-gradient(90deg,#fff,#faf9ff); }
.gw-resource-search__workspace.has-access .gw-resource-search__identity strong { color:var(--gw-primary); }

/* Refined workspace surface and low-distraction micro-interactions. */
.gw-resource-search { position:relative; isolation:isolate; overflow:hidden; }
.gw-resource-search::before,
.gw-resource-search::after { position:absolute; z-index:-1; content:""; pointer-events:none; }
.gw-resource-search::before { top:-220px; right:-180px; width:620px; height:620px; border-radius:50%; background:radial-gradient(circle,rgba(151,124,255,.18) 0,rgba(151,124,255,.05) 36%,transparent 70%); filter:blur(2px); animation:gw-resource-aurora 14s ease-in-out infinite alternate; }
.gw-resource-search::after { top:0; right:0; bottom:0; left:0; opacity:.35; background-image:linear-gradient(rgba(124,92,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(124,92,255,.045) 1px,transparent 1px); background-size:30px 30px; mask-image:linear-gradient(to bottom,#000,transparent 430px); }
.gw-resource-search__container { position:relative; z-index:1; }
.gw-resource-search__header-copy { animation:gw-resource-reveal .48s ease both; }
.gw-resource-search__header-meta { position:relative; overflow:hidden; border-color:rgba(124,92,255,.22); background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(246,242,255,.72)); box-shadow:0 14px 30px rgba(91,69,165,.08); backdrop-filter:blur(12px); }
.gw-resource-search__header-meta::after { position:absolute; top:0; right:12%; left:12%; height:1px; background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent); content:""; }
.gw-resource-search__workspace { position:relative; border:1px solid transparent; background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,rgba(124,92,255,.4),rgba(255,255,255,.9),rgba(240,179,96,.3)) border-box; box-shadow:0 24px 64px rgba(40,43,76,.12),0 2px 7px rgba(124,92,255,.08); }
.gw-resource-search__workspace::before { position:absolute; top:0; right:28px; left:28px; height:1px; background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),transparent); content:""; }
.gw-resource-search__identity { position:relative; background:linear-gradient(100deg,#fff 0%,#fcfbff 62%,#f5f1ff 100%); }
.gw-resource-search__sources { background:linear-gradient(180deg,#fbfaff,#f7f5ff); }
.gw-resource-search__source { position:relative; overflow:hidden; transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease; }
.gw-resource-search__source::before,.gw-resource-tabs__tab::before { display:inline-grid; width:18px; height:18px; margin-right:7px; place-items:center; border-radius:6px; background:rgba(124,92,255,.1); color:var(--gw-primary); font-size:11px; content:"✦"; }
[data-resource-tab="downloads"]::before { content:"↓"; }
[data-resource-tab="patches"]::before { content:"⌁"; }
[data-resource-tab="articles"]::before { content:"≡"; }
.gw-resource-search__source:hover { transform:translateX(3px); box-shadow:0 8px 18px rgba(63,50,123,.07); }
.gw-resource-search__source.is-active { box-shadow:inset 3px 0 0 var(--gw-primary),0 8px 18px rgba(102,76,194,.1); }
.gw-resource-search__source b { transition:transform .2s ease,background .2s ease,color .2s ease; }
.gw-resource-search__source.is-active b { background:#fff; transform:scale(1.06); }
.gw-resource-search__results-head { padding-top:24px; }
.gw-resource-search__results-head > strong { border:1px solid rgba(124,92,255,.13); background:linear-gradient(135deg,#fff,#f6f3ff); box-shadow:0 5px 14px rgba(89,68,151,.07); }
.gw-resource-search__workbench .gw-resource-tabs { gap:7px; border-bottom:0; background:linear-gradient(180deg,#fff,#fcfbff); }
.gw-resource-search__workbench .gw-resource-tabs__tab { display:inline-flex; align-items:center; border:1px solid transparent; border-radius:8px; transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }
.gw-resource-search__workbench .gw-resource-tabs__tab:hover { transform:translateY(-1px); background:var(--gw-primary-soft); }
.gw-resource-search__workbench .gw-resource-tabs__tab.is-active { border-color:rgba(124,92,255,.18); background:linear-gradient(135deg,#f5f1ff,#fff); box-shadow:0 7px 16px rgba(86,65,150,.08); }
.gw-resource-search__filters { gap:7px; padding:8px; border-color:rgba(124,92,255,.13); border-radius:10px; background:linear-gradient(135deg,#fbfaff,#f5f2ff); box-shadow:inset 0 1px 0 rgba(255,255,255,.9); }
.gw-resource-search__filter-label { display:inline-flex; align-items:center; min-height:30px; padding:0 5px; color:var(--gw-primary); }
.gw-resource-search__filter { border-color:rgba(124,92,255,.16); border-radius:99px; box-shadow:0 2px 6px rgba(84,65,143,.04); transition:border-color .18s ease,box-shadow .18s ease; }
.gw-resource-search__filter:focus { border-color:rgba(124,92,255,.5); outline:0; box-shadow:0 0 0 3px rgba(124,92,255,.1); }
.gw-resource-result { position:relative; margin:8px -8px; padding:16px 14px!important; border:1px solid transparent; border-radius:10px; background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(250,249,255,.86)); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease; }
.gw-resource-result::before { position:absolute; top:16px; bottom:16px; left:0; width:3px; border-radius:0 99px 99px 0; background:linear-gradient(var(--gw-primary),#b7a6ff); content:""; opacity:0; transition:opacity .22s ease; }
.gw-resource-result:hover { transform:translateY(-2px); border-color:rgba(124,92,255,.2); background:#fff; box-shadow:0 13px 28px rgba(50,42,86,.09); }
.gw-resource-result:hover::before { opacity:1; }
.gw-resource-result__source { position:relative; overflow:hidden; background:linear-gradient(135deg,#eee9ff,#faf9ff); box-shadow:inset 0 1px 0 rgba(255,255,255,.86); }
.gw-resource-result__source::after { position:absolute; top:0; bottom:0; left:-50%; width:35%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent); content:""; transform:skewX(-20deg); transition:left .45s ease; }
.gw-resource-result:hover .gw-resource-result__source::after { left:120%; }
.gw-resource-result.has-paid-tag .gw-resource-result__tag { background:#fff1de; color:#a65d0c; }
.gw-resource-result__link { position:relative; overflow:hidden; box-shadow:0 7px 14px rgba(124,92,255,.18); transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.gw-resource-result__link::after { margin-left:6px; content:"→"; transition:transform .2s ease; }
.gw-resource-result__link:hover { transform:translateY(-1px); box-shadow:0 10px 20px rgba(124,92,255,.24); }
.gw-resource-result__link:hover::after { transform:translateX(3px); }
.gw-resource-search__safe-harbor { box-shadow:0 10px 25px rgba(123,90,45,.06); }
.gw-resource-search__workspace.has-access .gw-resource-search__workbench { animation:gw-resource-reveal .42s ease both; }
.gw-resource-search__content.is-rendered .gw-resource-search__section.is-active .gw-resource-result { animation:gw-resource-card-in .36s ease both; animation-delay:calc(var(--gw-result-index, 0) * 45ms); }
.gw-resource-search__preparing-spinner { position:relative; box-shadow:0 0 0 8px rgba(124,92,255,.05),0 0 28px rgba(124,92,255,.18); }
.gw-resource-search__preparing-spinner::after { position:absolute; inset:-10px; border:1px solid rgba(124,92,255,.14); border-radius:50%; content:""; animation:gw-resource-pulse 1.7s ease-out infinite; }
.gw-resource-search__workbench { background:linear-gradient(115deg,rgba(255,255,255,.98),rgba(250,248,255,.96)); }
.gw-resource-search__sources { position:relative; }
.gw-resource-search__sources::after { position:absolute; top:24px; right:-1px; bottom:24px; width:1px; background:linear-gradient(transparent,rgba(124,92,255,.28),transparent); content:""; }
.gw-resource-search__source.is-active { background:linear-gradient(105deg,rgba(239,234,255,.96),rgba(255,255,255,.9)); }
.gw-resource-search__source.is-active::after { position:absolute; top:0; right:-35%; bottom:0; width:28%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent); content:""; transform:skewX(-18deg); animation:gw-resource-source-sheen 4.8s ease-in-out infinite; }
.gw-resource-search__results-head { position:relative; padding-bottom:12px; }
.gw-resource-search__results-head::after { position:absolute; right:20px; bottom:0; left:20px; height:1px; background:linear-gradient(90deg,rgba(124,92,255,.18),rgba(124,92,255,.04),transparent); content:""; }
.gw-resource-search__searchgal-status { position:relative; overflow:hidden; border:1px solid rgba(124,92,255,.14); background:linear-gradient(120deg,rgba(247,244,255,.96),rgba(255,255,255,.92)); box-shadow:0 6px 18px rgba(77,58,137,.05); }
.gw-resource-search__searchgal-status::before { display:inline-block; width:6px; height:6px; margin:0 7px 1px 1px; border-radius:50%; background:var(--gw-primary); box-shadow:0 0 0 4px rgba(124,92,255,.1); content:""; vertical-align:middle; }
.gw-resource-search__content.is-rendered .gw-resource-search__section.is-active .gw-resource-search__searchgal-status { animation:gw-resource-reveal .32s ease both; }
.gw-resource-search__workbench .gw-resource-tabs__tab.is-active { position:relative; overflow:hidden; }
.gw-resource-search__workbench .gw-resource-tabs__tab.is-active::after { position:absolute; right:10px; bottom:3px; left:10px; height:2px; border-radius:99px; background:linear-gradient(90deg,transparent,var(--gw-primary),transparent); content:""; animation:gw-resource-tab-glow 2.8s ease-in-out infinite; }
.gw-resource-search__preparing { position:relative; overflow:hidden; border-radius:inherit; background:radial-gradient(circle at 50% 24%,rgba(136,107,255,.12),transparent 34%),linear-gradient(135deg,#fff,#faf8ff); }
.gw-resource-search__preparing::before { position:absolute; top:50%; left:50%; width:220px; height:220px; border:1px solid rgba(124,92,255,.08); border-radius:50%; content:""; transform:translate(-50%,-50%); animation:gw-resource-preparing-orbit 5.5s ease-in-out infinite; }
.gw-resource-search__preparing > * { position:relative; z-index:1; }
@keyframes gw-resource-aurora { from { transform:translate3d(0,0,0) scale(1); } to { transform:translate3d(-35px,40px,0) scale(1.08); } }
@keyframes gw-resource-reveal { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@keyframes gw-resource-card-in { from { opacity:0; transform:translateY(9px); } to { opacity:1; transform:translateY(0); } }
@keyframes gw-resource-pulse { from { opacity:.75; transform:scale(.78); } to { opacity:0; transform:scale(1.24); } }
@keyframes gw-resource-source-sheen { 0%,58% { transform:translateX(-90%) skewX(-18deg); opacity:0; } 68% { opacity:.8; } 82%,100% { transform:translateX(430%) skewX(-18deg); opacity:0; } }
@keyframes gw-resource-tab-glow { 0%,100% { opacity:.5; transform:scaleX(.72); } 50% { opacity:1; transform:scaleX(1); } }
@keyframes gw-resource-preparing-orbit { 0%,100% { opacity:.35; transform:translate(-50%,-50%) scale(.82); } 50% { opacity:.8; transform:translate(-50%,-50%) scale(1.05); } }

@media (max-width: 760px) {
    .gw-resource-search { padding-top:28px; }
    .gw-resource-search__header { display:block; padding-bottom:22px; }
    .gw-resource-search__header h1 { font-size:28px; }
    .gw-resource-search__header-meta { margin-top:18px; }
    .gw-resource-search__ai-picker { grid-template-columns:1fr; gap:13px; }
    .gw-resource-search__workbench { display:block; }
    .gw-resource-search__sources { padding:14px 14px 10px; border-right:0; border-bottom:1px solid var(--gw-border-light); }
    .gw-resource-search__sources::after { top:auto; right:18px; bottom:-1px; left:18px; width:auto; height:1px; }
    .gw-resource-search__sources-heading { display:flex; align-items:center; justify-content:space-between; padding:0 4px 10px; }
    .gw-resource-search__source-list { display:flex; gap:6px; overflow-x:auto; padding-top:10px; }
    .gw-resource-search__source { flex:0 0 auto; width:auto; min-height:36px; padding:0 10px; }
    .gw-resource-search__sources-note { display:none; }
    .gw-resource-search__workbench .gw-resource-tabs { display:none; }
    .gw-resource-search__results-head { align-items:flex-start; flex-wrap:wrap; padding:16px 16px 6px; }
    .gw-resource-search__accelerator { order:3; flex:1 1 100%; margin-left:0; text-align:left; }
    .gw-resource-search__workbench .gw-resource-search__section { padding:12px 16px 16px; }
}
@media (max-width: 640px) { .gw-resource-search { padding-top: 24px; }.gw-resource-search__header h1 { font-size: 26px; }.gw-resource-search__ai-picker { padding:14px; }.gw-resource-search__gate { padding: 20px; }.gw-resource-search__gate-actions { justify-content:stretch; flex-wrap:wrap; }.gw-resource-search__gate-actions > * { flex:1 1 140px; } }

.gw-resource-search__identity { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px; border-bottom:1px solid var(--gw-border-light); background:var(--gw-bg-soft); }
.gw-resource-search__identity > div { display:grid; gap:3px; }.gw-resource-search__eyebrow { color:var(--gw-primary); font-size:10px; font-weight:800; letter-spacing:.1em; }.gw-resource-search__identity strong { color:var(--gw-heading); font-size:16px; }.gw-resource-search__identity small { color:var(--gw-text-muted); font-size:12px; }
.gw-resource-search__cost-note { color:var(--gw-primary)!important; font-weight:700; }
.gw-resource-search__favorite { min-width:64px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; color:var(--gw-text-secondary); font-size:12px; font-weight:700; cursor:pointer; }.gw-resource-search__favorite.is-favorited { border-color:rgba(124,92,255,.3); background:var(--gw-primary-soft); color:var(--gw-primary); }
.gw-resource-search__lower { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:16px; }.gw-resource-search__panel { min-width:0; padding:17px; border:1px solid var(--gw-border); border-radius:8px; background:var(--gw-white); }.gw-resource-search__panel header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }.gw-resource-search__panel h2 { margin:0; color:var(--gw-heading); font-size:15px; }.gw-resource-search__panel header button { border:0; background:transparent; color:var(--gw-text-muted); font-size:11px; cursor:pointer; }
.gw-resource-history-item { display:block; width:100%; padding:10px 0; border:0; border-top:1px solid var(--gw-border-light); background:transparent; color:var(--gw-text-secondary); font-size:12px; line-height:1.5; text-align:left; text-decoration:none; cursor:pointer; }
.gw-resource-confirm[hidden] { display:none; }.gw-resource-confirm { position:fixed; z-index:10000; inset:0; display:grid; place-items:center; padding:18px; }.gw-resource-confirm__backdrop { position:absolute; inset:0; background:rgba(18,22,32,.46); }.gw-resource-confirm__dialog { position:relative; width:min(420px,100%); padding:24px; border-radius:8px; background:#fff; box-shadow:0 20px 50px rgba(18,22,32,.24); }.gw-resource-confirm__dialog h2 { margin:0 28px 12px 0; color:var(--gw-heading); font-size:20px; }.gw-resource-confirm__dialog p { color:var(--gw-text-secondary); font-size:13px; line-height:1.7; }.gw-resource-confirm__dialog > div:last-child { display:flex; justify-content:flex-end; gap:8px; margin-top:20px; }.gw-resource-confirm__dialog button { min-height:36px; padding:0 13px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; color:var(--gw-text-secondary); cursor:pointer; }.gw-resource-confirm__dialog [data-resource-confirm-submit] { border-color:var(--gw-primary); background:var(--gw-primary); color:#fff; }.gw-resource-confirm__close { position:absolute; top:10px; right:10px; width:30px; min-height:30px!important; padding:0!important; border:0!important; font-size:20px; }
.gw-resource-patch-form { display:grid; gap:10px; margin:0 18px 18px; padding:16px; border:1px solid var(--gw-border-light); border-radius:8px; background:var(--gw-bg-soft); }.gw-resource-patch-form h2,.gw-resource-patch-form p { margin:0; }.gw-resource-patch-form h2 { color:var(--gw-heading); font-size:16px; }.gw-resource-patch-form p { color:var(--gw-text-muted); font-size:12px; line-height:1.6; }.gw-resource-patch-form label { display:grid; gap:5px; color:var(--gw-heading); font-size:12px; font-weight:700; }.gw-resource-patch-form input,.gw-resource-patch-form textarea { width:100%; box-sizing:border-box; padding:9px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; font:inherit; }.gw-resource-patch-form textarea { min-height:74px; resize:vertical; }.gw-resource-patch-form button,.gw-resource-result__report { justify-self:start; min-height:34px; padding:0 12px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; color:var(--gw-text-secondary); font-size:12px; font-weight:700; cursor:pointer; }.gw-resource-patch-form button { border-color:var(--gw-primary); background:var(--gw-primary); color:#fff; }.gw-resource-result__report { margin-left:8px; }.gw-resource-modal[hidden] { display:none; }.gw-resource-modal { position:fixed; z-index:10020; inset:0; display:grid; place-items:center; padding:18px; }.gw-resource-modal__backdrop { position:absolute; inset:0; background:rgba(18,22,32,.5); }.gw-resource-modal__dialog { position:relative; width:min(420px,100%); padding:24px; border-radius:8px; background:#fff; box-shadow:0 20px 50px rgba(18,22,32,.24); }.gw-resource-modal__dialog h2 { margin:0 28px 10px 0; color:var(--gw-heading); font-size:19px; }.gw-resource-modal__dialog p { margin:0; color:var(--gw-text-secondary); font-size:13px; line-height:1.7; }.gw-resource-modal__dialog textarea { box-sizing:border-box; width:100%; min-height:96px; margin-top:12px; padding:9px; border:1px solid var(--gw-border); border-radius:6px; resize:vertical; }.gw-resource-modal__dialog > div:last-child { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }.gw-resource-modal__dialog button { min-height:36px; padding:0 13px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; color:var(--gw-text-secondary); cursor:pointer; }.gw-resource-modal__dialog [data-resource-modal-confirm] { border-color:var(--gw-primary); background:var(--gw-primary); color:#fff; }.gw-resource-modal__close { position:absolute; top:10px; right:10px; width:30px; min-height:30px!important; padding:0!important; border:0!important; font-size:20px; }
@media (max-width:640px) { .gw-resource-search__identity { align-items:flex-start; flex-direction:column; }.gw-resource-search__favorite { min-height:40px; }.gw-resource-search__lower { grid-template-columns:1fr; }.gw-resource-search__toolbar { gap:8px; }.gw-resource-search__toolbar form { width:100%; }.gw-resource-search__favorite { width:100%; }.gw-resource-patch-form { margin-right:13px; margin-left:13px; }.gw-resource-result__report { margin:8px 0 0; } }

.gw-resource-patch-form select { width:100%; box-sizing:border-box; padding:9px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; font:inherit; }

/* Locked AI search keeps the shared site navigation visible while reducing the
   workspace itself to one clear access action. */
body:has(.gw-resource-search--locked) { background:#fff; }
body:has(.gw-resource-search--locked) #site-footer,
body:has(.gw-resource-search--locked) .gw-mobile-bottom-nav { display:none; }
.gw-resource-search--locked { min-height:calc(100vh - var(--gw-header-height)); padding:0; background:#fff; }
.gw-resource-search--locked .gw-resource-search__container { display:grid; grid-template-columns:minmax(0,620px); align-content:center; justify-content:center; min-height:calc(100vh - var(--gw-header-height)); max-width:none; padding:32px 20px; }
.gw-resource-search__workspace.is-locked { width:min(100%, 620px); border:1px solid rgba(124,92,255,.16); border-radius:16px; background:#fff; box-shadow:0 24px 70px rgba(61,45,136,.11); overflow:hidden; }
.gw-resource-search__workspace.is-locked > :not([data-ai-picker]):not([data-resource-gate]):not([data-resource-preparing]):not([data-resource-terms]) { display:none!important; }
.gw-resource-search__workspace.is-locked .gw-resource-search__ai-picker { grid-template-columns:auto minmax(0,1fr); gap:18px; }
.gw-resource-search__gate { display:grid; justify-items:center; gap:10px; width:100%; padding:30px 36px 34px; border:0; border-radius:0; box-sizing:border-box; background:linear-gradient(160deg,#fff 0%,#faf8ff 100%); text-align:center; }
.gw-resource-search__gate-eyebrow { color:var(--gw-primary); font-size:11px; font-weight:800; letter-spacing:.14em; }
.gw-resource-search__gate h1 { max-width:100%; margin:0; color:var(--gw-heading); font-size:24px; line-height:1.35; overflow-wrap:anywhere; }
.gw-resource-search__gate p { margin:0; color:var(--gw-text-secondary); font-size:14px; line-height:1.7; }
.gw-resource-search__gate small { color:var(--gw-text-muted); font-size:12px; }
.gw-resource-search__gate .gw-resource-search__unlock { min-height:44px; margin-top:8px; padding:0 22px; }
.gw-resource-search__gate-status { min-height:20px; color:var(--gw-danger); font-size:12px; line-height:1.5; }
.gw-resource-search__workspace.is-preparing [data-resource-gate] { display:none!important; }
.gw-resource-search__preparing[hidden] { display:none!important; }
.gw-resource-search__preparing { display:grid; justify-items:center; gap:10px; width:100%; padding:48px 28px; box-sizing:border-box; text-align:center; }
.gw-resource-search__preparing-spinner { width:38px; height:38px; border:3px solid rgba(124,92,255,.18); border-top-color:var(--gw-primary); border-radius:50%; animation:gw-resource-preparing-spin .85s linear infinite; }
.gw-resource-search__preparing h2 { max-width:100%; margin:0; color:var(--gw-heading); font-size:24px; line-height:1.35; overflow-wrap:anywhere; }
.gw-resource-search__preparing p { margin:0; color:var(--gw-text-secondary); font-size:14px; line-height:1.7; }
.gw-resource-search__preparing strong { color:var(--gw-primary); font-size:16px; font-variant-numeric:tabular-nums; }
.gw-resource-terms[hidden] { display:none; }
.gw-resource-terms { position:fixed; z-index:10030; inset:0; display:grid; place-items:center; padding:18px; }
.gw-resource-terms__backdrop { position:absolute; inset:0; background:rgba(18,22,32,.58); }
.gw-resource-terms__dialog { position:relative; display:flex; flex-direction:column; width:min(700px,100%); max-height:min(760px,calc(100vh - 36px)); box-sizing:border-box; padding:26px; border-radius:10px; background:#fff; box-shadow:0 22px 58px rgba(18,22,32,.3); }
.gw-resource-terms__dialog h2 { margin:0 0 14px; color:var(--gw-heading); font-size:21px; line-height:1.4; }
.gw-resource-terms__body { flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 12px 0 0; scrollbar-color:rgba(124,92,255,.45) transparent; scrollbar-width:thin; }
.gw-resource-terms__body::-webkit-scrollbar { width:7px; }
.gw-resource-terms__body::-webkit-scrollbar-thumb { border:2px solid #fff; border-radius:99px; background:rgba(124,92,255,.42); }
.gw-resource-terms__body:focus-visible { outline:2px solid rgba(124,92,255,.48); outline-offset:3px; }
.gw-resource-terms__dialog ol { display:grid; gap:10px; margin:0; padding-left:22px; color:var(--gw-text-secondary); font-size:13px; line-height:1.72; }
.gw-resource-terms__dialog p { margin:16px 0 0; color:var(--gw-heading); font-size:13px; font-weight:700; line-height:1.65; }
.gw-resource-terms__check { display:flex; flex:0 0 auto; align-items:flex-start; gap:8px; margin-top:18px; padding-top:15px; border-top:1px solid rgba(124,92,255,.13); color:var(--gw-text-secondary); font-size:13px; line-height:1.6; cursor:pointer; }
.gw-resource-terms__check input { flex:0 0 auto; width:17px; height:17px; margin:2px 0 0; accent-color:var(--gw-primary); }
.gw-resource-terms__dialog > div:last-child { display:flex; flex:0 0 auto; justify-content:flex-end; flex-wrap:wrap; gap:8px; margin-top:16px; }
.gw-resource-terms__dialog button { min-height:38px; padding:0 14px; border:1px solid var(--gw-border); border-radius:6px; background:#fff; color:var(--gw-text-secondary); font:inherit; font-size:13px; cursor:pointer; }
.gw-resource-terms__dialog [data-resource-terms-accept] { border-color:var(--gw-primary); background:var(--gw-primary); color:#fff; font-weight:700; }
@keyframes gw-resource-preparing-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .gw-resource-search__preparing-spinner { animation:none; } }

@media (max-width:640px) {
    .gw-resource-search--locked { min-height:calc(100vh - var(--gw-header-height-mobile)); }
    .gw-resource-search--locked .gw-resource-search__container { min-height:calc(100vh - var(--gw-header-height-mobile)); padding:20px 16px; }
    .gw-resource-search__workspace.is-locked .gw-resource-search__ai-picker { grid-template-columns:1fr; gap:10px; }
    .gw-resource-search__gate { padding:24px 12px; }
    .gw-resource-search__gate h1 { font-size:21px; }
    .gw-resource-search__preparing { padding:36px 18px; }
    .gw-resource-search__preparing h2 { font-size:21px; }
    .gw-resource-terms { padding:12px; }
    .gw-resource-terms__dialog { max-height:calc(100vh - 24px); padding:20px 18px; }
    .gw-resource-terms__dialog h2 { margin-bottom:11px; font-size:19px; }
    .gw-resource-terms__body { padding-right:8px; }
    .gw-resource-terms__dialog ol { gap:8px; padding-left:19px; font-size:12px; line-height:1.62; }
    .gw-resource-terms__check { margin-top:13px; padding-top:12px; font-size:12px; }
    .gw-resource-terms__dialog > div:last-child { justify-content:stretch; margin-top:12px; }
    .gw-resource-terms__dialog > div:last-child button { flex:1 1 150px; }
}

/* The article AI action explains itself on hover and keyboard focus. */
.gw-ai-search-tooltip { position:absolute; z-index:20; left:50%; bottom:calc(100% + 9px); display:block; width:max-content; max-width:min(280px, calc(100vw - 32px)); padding:7px 10px; border-radius:5px; background:#252b37; color:#fff; font-size:11px; font-weight:500; line-height:1.5; opacity:0; pointer-events:none; transform:translate(-50%, 4px); transition:opacity .16s ease, transform .16s ease; }
.gw-ai-search-tooltip::after { position:absolute; top:100%; left:50%; border:5px solid transparent; border-top-color:#252b37; content:''; transform:translateX(-50%); }
.gw-wiki-action--ai-search { position:relative; overflow:visible; }
.gw-wiki-action--ai-search:hover .gw-ai-search-tooltip,
.gw-wiki-action--ai-search:focus-visible .gw-ai-search-tooltip { opacity:1; transform:translate(-50%, 0); }

/* Article AI help floats above its trigger and never affects document flow. */
.gw-ai-search-anchor { position:relative; z-index:10020; }
.gw-ai-search-popover { top:auto; right:auto; bottom:calc(100% + 10px); left:50%; z-index:10030; width:min(360px, calc(100vw - 28px)); padding:12px 38px 12px 14px; border:1px solid rgba(124,92,255,.2); border-radius:10px; background:linear-gradient(135deg,#252b37,#303b54); color:#fff; font-size:12px; line-height:1.6; box-shadow:0 14px 34px rgba(29,35,62,.24); transform:translateX(-50%); }
.gw-ai-search-popover::after { top:100%; right:auto; bottom:auto; left:50%; border-top-color:#252b37; border-bottom-color:transparent; }
.gw-ai-search-popover[data-placement="bottom"] { top:calc(100% + 10px); bottom:auto; }
.gw-ai-search-popover[data-placement="top"] { top:auto; bottom:calc(100% + 10px); }
.gw-ai-search-popover[data-placement="top"]::after { top:100%; bottom:auto; border-top-color:#252b37; border-bottom-color:transparent; }
.gw-ai-search-popover[data-placement="bottom"]::after { top:auto; bottom:100%; border-top-color:transparent; border-bottom-color:#252b37; }
.gw-ai-search-popover__close { top:7px; right:7px; width:26px; height:26px; border-radius:7px; color:rgba(255,255,255,.78); }
.gw-ai-search-popover__close:hover, .gw-ai-search-popover__close:focus-visible { background:rgba(255,255,255,.14); color:#fff; }

@media (max-width: 760px) {
    .gw-resource-search__workspace { box-shadow:0 10px 28px rgba(40,43,76,.07); }
    .gw-resource-search__identity { padding:14px 16px; }
    .gw-resource-search__article-title { max-width:100%; }
    .gw-resource-search__identity-actions { width:100%; justify-content:stretch; }
    .gw-resource-search__identity-actions > * { flex:1 1 140px; box-sizing:border-box; }
    .gw-resource-search__header-meta { flex-basis:auto; }
    .gw-resource-search__filters { gap:6px; }
    .gw-resource-search__filter { flex:1 1 120px; min-width:0; }
    .gw-resource-result { margin-right:0; margin-left:0; }
    .gw-resource-result:hover { transform:none; }
    .gw-ai-search-popover { left:0; transform:none; }
    .gw-ai-search-popover::after { left:24px; }
}

@media (prefers-reduced-motion: reduce) {
    .gw-resource-search *, .gw-resource-search::before, .gw-resource-search::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
    .gw-resource-search__source:hover, .gw-resource-search__workbench .gw-resource-tabs__tab:hover, .gw-resource-result:hover, .gw-resource-result__link:hover { transform:none!important; }
}

/* Download center palette override. */
.gw-resource-search { --gw-primary: #1769aa; --gw-primary-hover: #0e4f86; --gw-primary-soft: #e8f4fc; }
.gw-resource-search__header-meta, .gw-resource-search__workspace, .gw-resource-search__usage-card { border-color: rgba(23,105,170,.2); }
.gw-resource-search__source.is-active, .gw-resource-tabs__tab.is-active { border-color: rgba(23,105,170,.25); background: #e8f4fc; color: #1769aa; }
