/* RaASaAD Search Results — unified visual system
 * One stylesheet owns the /search frontend. Legacy stylesheets remain in the
 * repository for other consumers, but are not loaded by results.blade.php.
 */
:root {
  color-scheme: light;
  --rs-page: #f4f7fb;
  --rs-surface: #ffffff;
  --rs-surface-soft: #f8fafc;
  --rs-surface-tint: #eef7fa;
  --rs-text: #17283d;
  --rs-muted: #687b91;
  --rs-faint: #8b9aab;
  --rs-border: #e1e8ef;
  --rs-border-strong: #d1dde7;
  --rs-accent: #087ea4;
  --rs-accent-strong: #066783;
  --rs-accent-bright: #20b8d5;
  --rs-accent-soft: #e8f7fb;
  --rs-success: #16856b;
  --rs-warning: #a76b13;
  --rs-radius-sm: 10px;
  --rs-radius: 16px;
  --rs-radius-lg: 22px;
  --rs-shadow: 0 10px 30px rgba(20, 43, 70, .055);
  --rs-shadow-soft: 0 4px 16px rgba(20, 43, 70, .045);
  --rs-font: Tahoma, "Segoe UI", Arial, sans-serif;
}
html { min-height:100%; background:var(--rs-page); }
body.raasaad-results-document {
  min-height:100vh; margin:0; background:var(--rs-page); color:var(--rs-text);
  font-family:var(--rs-font); font-size:14px; line-height:1.8;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
body.raasaad-results-document * { box-sizing:border-box; }
body.raasaad-results-document button,
body.raasaad-results-document input,
body.raasaad-results-document textarea { font:inherit; }
body.raasaad-results-document button,
body.raasaad-results-document a { -webkit-tap-highlight-color:transparent; }
body.raasaad-results-document a { color:inherit; text-decoration:none; }
body.raasaad-results-document button { cursor:pointer; }
body.raasaad-results-document button:focus-visible,
body.raasaad-results-document a:focus-visible,
body.raasaad-results-document input:focus-visible,
body.raasaad-results-document textarea:focus-visible,
body.raasaad-results-document summary:focus-visible {
  outline:3px solid rgba(32,184,213,.38); outline-offset:3px;
}
.ra-app { min-height:100vh; background:var(--rs-page); }
.ra-container { width:min(1260px, calc(100% - 48px)); margin-inline:auto; }
.ra-header {
  position:sticky; top:0; z-index:50; background:rgba(255,255,255,.94);
  border-bottom:1px solid var(--rs-border); box-shadow:0 5px 22px rgba(20,43,70,.035);
  backdrop-filter:blur(18px);
}
.ra-header .ra-container { width:min(1260px, calc(100% - 48px)); }
.ra-header-inner {
  min-height:88px; display:grid; grid-template-columns:190px minmax(260px,1fr) 116px;
  align-items:center; gap:28px;
}
.ra-brand { display:inline-flex; align-items:center; gap:11px; min-width:0; }
.ra-brand-mark {
  width:44px; height:44px; display:grid; place-items:center; flex:none;
  border-radius:15px; background:linear-gradient(145deg,var(--rs-accent-bright),var(--rs-accent));
  box-shadow:0 7px 18px rgba(8,126,164,.2); transform:rotate(-5deg);
}
.ra-brand-mark span { width:16px; height:16px; display:block; border:3px solid #fff; border-radius:5px; transform:rotate(5deg); }
.ra-brand-copy { display:flex; flex-direction:column; line-height:1.35; }
.ra-brand-name { font-size:20px; font-weight:800; letter-spacing:-.6px; }
.ra-brand-sub { margin-top:3px; color:var(--rs-muted); font-size:10px; white-space:nowrap; }
.ra-search { min-width:0; }
.ra-search-box {
  min-height:54px; display:flex; align-items:center; gap:10px; padding:5px 8px 5px 7px;
  background:var(--rs-surface); border:1px solid var(--rs-border-strong); border-radius:17px;
  box-shadow:0 4px 14px rgba(20,43,70,.035); transition:border-color .18s,box-shadow .18s;
}
.ra-search-box:focus-within { border-color:rgba(8,126,164,.55); box-shadow:0 0 0 4px rgba(8,126,164,.08); }
.ra-search-leading { width:34px; text-align:center; color:var(--rs-muted); font-size:26px; line-height:1; }
.ra-search-input { flex:1; min-width:0; padding:8px 0; color:var(--rs-text); border:0; outline:0; background:transparent; }
.ra-search-input::placeholder { color:#93a1b1; }
.ra-tool,.ra-search-action {
  width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; gap:5px;
  flex:none; border:1px solid transparent; border-radius:12px; background:transparent; color:var(--rs-muted);
}
.ra-search-action { color:#fff; background:linear-gradient(140deg,var(--rs-accent-bright),var(--rs-accent)); box-shadow:0 4px 10px rgba(8,126,164,.17); }
.ra-tool:hover { background:var(--rs-surface-tint); color:var(--rs-accent); }
.ra-header-actions { display:flex; justify-content:flex-end; align-items:center; gap:8px; }
.ra-chat-trigger { width:auto; min-width:48px; padding-inline:11px; background:var(--rs-accent); color:#fff; box-shadow:0 6px 16px rgba(8,126,164,.17); }
.ra-chat-trigger b { font-size:11px; }
.ra-theme-trigger { border-color:var(--rs-border); background:var(--rs-surface); }
.ra-nav { border-top:1px solid rgba(225,232,239,.7); }
.ra-nav-inner { min-height:48px; display:flex; align-items:stretch; gap:5px; overflow-x:auto; scrollbar-width:none; }
.ra-nav-inner::-webkit-scrollbar { display:none; }
.ra-nav-item { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 17px; flex:none; color:var(--rs-muted); font-size:12px; font-weight:600; white-space:nowrap; }
.ra-nav-item:hover { color:var(--rs-accent); background:#f6fafc; }
.ra-nav-item.active { color:var(--rs-accent); background:var(--rs-accent-soft); }
.ra-nav-item.active:after { content:""; position:absolute; inset-inline:16px; bottom:0; height:3px; border-radius:4px 4px 0 0; background:var(--rs-accent-bright); }
.ra-nav-ai { color:var(--rs-accent); }
.ra-main { padding:26px 0 72px; }
.ra-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; align-items:start; gap:26px; }
.ra-results-column { min-width:0; }
.ra-search-content-grid,.ra-primary-results { min-width:0; background:transparent; }
.ra-side-column { min-width:0; }
.ra-layout.without-knowledge-panel,
.ra-layout.has-knowledge-panel { grid-template-columns:minmax(0,1fr) 360px; }
/* Keep the desktop results column stable when no Knowledge Panel is available.
   The reserved column has no card, background, border or placeholder. */
.ra-layout.without-knowledge-panel > .ra-side-column {
  display:block; visibility:hidden; pointer-events:none; min-height:1px;
}
.ai-center {
  padding:26px 28px 22px; margin-bottom:18px; background:var(--rs-surface);
  border:1px solid var(--rs-border); border-radius:var(--rs-radius-lg); box-shadow:var(--rs-shadow-soft);
}
.ai-head { display:flex; justify-content:space-between; align-items:center; gap:22px; padding-bottom:20px; border-bottom:1px solid var(--rs-border); }
.ai-kicker { display:inline-flex; align-items:center; gap:8px; color:var(--rs-accent); font-size:11px; font-weight:800; letter-spacing:.2px; }
.ai-live { width:7px; height:7px; display:inline-block; border-radius:50%; background:var(--rs-success); box-shadow:0 0 0 4px rgba(22,133,107,.1); }
.ai-title { margin:9px 0 5px; color:var(--rs-text); font-size:23px; line-height:1.65; font-weight:800; letter-spacing:-.35px; }
.ai-description { margin:0; color:var(--rs-muted); font-size:12px; }
.ai-understanding { width:64px; height:64px; display:flex; flex-direction:column; align-items:center; justify-content:center; flex:none; border:1px solid #cfeaf1; border-radius:18px; background:var(--rs-accent-soft); color:var(--rs-accent); }
.understanding-number { font-size:16px; font-weight:800; line-height:1.3; }
.understanding-label { font-size:9px; }
.ra-ai-tools { margin-top:15px; border:1px solid var(--rs-border); border-radius:13px; background:var(--rs-surface-soft); overflow:hidden; }
.ra-ai-tools-summary { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 15px; color:var(--rs-accent); font-size:12px; font-weight:700; cursor:pointer; list-style:none; }
.ra-ai-tools-summary::-webkit-details-marker { display:none; }
.ra-ai-tools-summary:after { content:"＋"; color:var(--rs-muted); font-size:16px; }
.ra-ai-tools[open]>.ra-ai-tools-summary:after { content:"−"; }
.ra-ai-tools-hint { color:var(--rs-muted); font-size:10px; font-weight:400; }
.conversation-flow { display:grid; gap:9px; padding:4px 15px 14px; }
.conversation-line { display:flex; align-items:flex-start; gap:10px; }
.conversation-avatar { width:27px; height:27px; display:grid; place-items:center; flex:none; border-radius:9px; background:var(--rs-accent-soft); color:var(--rs-accent); }
.conversation-message { flex:1; padding:8px 11px; border:1px solid var(--rs-border); border-radius:11px; background:var(--rs-surface); color:var(--rs-muted); font-size:12px; }
.conversation-message strong { color:var(--rs-text); }
.ai-answer-box,.learning-panel,.ra-market-panel,.intent-area { margin:0 15px 14px; }
.ai-answer-box { border:1px solid var(--rs-border); border-radius:12px; background:var(--rs-surface); }
.ai-answer-title { display:flex; justify-content:space-between; gap:12px; padding:11px 13px; color:var(--rs-text); font-size:12px; font-weight:700; cursor:pointer; }
.ai-answer-content { padding:0 13px 13px; color:var(--rs-muted); white-space:normal; font-size:12px; }
.ai-answer-toggle { color:var(--rs-accent); font-weight:500; }
.ra-market-panel { padding:14px; border:1px solid var(--rs-border); border-radius:14px; background:var(--rs-surface); }
.ra-market-head { display:flex; justify-content:space-between; gap:12px; margin-bottom:12px; }
.ra-market-head strong,.ra-market-head small { display:block; }
.ra-market-head strong { font-size:13px; }
.ra-market-head small,.ra-market-head>span { color:var(--rs-muted); font-size:10px; }
.ra-market-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.ra-market-item { padding:12px; border:1px solid var(--rs-border); border-radius:12px; background:var(--rs-surface-soft); min-width:0; }
.ra-market-type { color:var(--rs-accent); font-size:10px; }
.ra-market-item strong { display:block; margin-top:4px; font-size:12px; }
.ra-market-item p { margin:5px 0; color:var(--rs-muted); font-size:11px; }
.ra-market-meta { display:flex; justify-content:space-between; gap:8px; color:var(--rs-muted); font-size:10px; }
.ra-market-meta a { color:var(--rs-accent); }
.intent-area { padding-top:4px; }
.intent-label { margin-bottom:9px; color:var(--rs-muted); font-size:11px; }
.intent-chips { display:flex; flex-wrap:wrap; gap:8px; }
.intent-chip { padding:7px 12px; border:1px solid var(--rs-border-strong); border-radius:999px; background:var(--rs-surface); color:var(--rs-muted); font-size:11px; }
.intent-chip:hover,.intent-chip.primary { border-color:#b7e2ec; background:var(--rs-accent-soft); color:var(--rs-accent); }
.learning-panel { padding:13px; border:1px solid var(--rs-border); border-radius:13px; background:var(--rs-surface); }
.learning-top { display:flex; justify-content:space-between; gap:10px; margin-bottom:9px; }
.learning-title { font-size:12px; font-weight:700; }
.learning-title-icon { margin-inline-end:7px; color:var(--rs-accent); }
.learning-note { color:var(--rs-muted); font-size:10px; }
.learning-input-row { display:flex; gap:8px; }
.learning-input { flex:1; min-width:0; padding:10px 12px; border:1px solid var(--rs-border-strong); border-radius:10px; background:var(--rs-surface); color:var(--rs-text); outline:0; }
.learning-send { padding:8px 16px; border:0; border-radius:10px; background:var(--rs-accent); color:#fff; }
.search-status { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:8px 0 4px; padding:12px 3px; color:var(--rs-muted); font-size:11px; border-bottom:1px solid var(--rs-border); }
.status-text strong { color:var(--rs-text); }
.status-badge { display:inline-flex; align-items:center; gap:6px; padding:5px 9px; border:1px solid #d5eee6; border-radius:999px; background:#f0faf6; color:var(--rs-success); white-space:nowrap; font-size:10px; }
.status-badge span { font-size:8px; }
.result-list { display:flex; flex-direction:column; }
.result-card { min-width:0; padding:22px 8px 24px; border-bottom:1px solid var(--rs-border); background:transparent; transition:background .18s; }
.result-card:hover { background:rgba(255,255,255,.58); }
.result-content { display:flex; align-items:flex-start; gap:15px; min-width:0; }
.result-body { flex:1; min-width:0; }
.result-image-wrap { width:104px; flex:none; overflow:hidden; border:1px solid var(--rs-border); border-radius:13px; background:var(--rs-surface); }
.result-image { display:block; width:100%; height:92px; object-fit:cover; }
/* Result cards: one readable hierarchy, shared color tokens, no legacy overrides. */
.result-domain-row { display:flex; align-items:center; gap:9px; min-width:0; margin-bottom:5px; color:var(--rs-muted); font-size:12px; line-height:1.6; }
.domain-favicon { width:20px; height:20px; flex:0 0 20px; padding:2px; border:1px solid var(--rs-border); border-radius:6px; object-fit:contain; background:var(--rs-surface); }
.result-domain { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.result-match { margin-inline-start:auto; padding:2px 7px; border:1px solid var(--rs-border); border-radius:999px; background:var(--rs-surface-soft); color:var(--rs-muted); font-size:10px; line-height:1.6; white-space:nowrap; }
.result-title { margin:0; font-size:19px; line-height:1.75; font-weight:750; letter-spacing:0; overflow-wrap:anywhere; }
.result-title a { color:#1767c5; text-decoration:none; text-decoration-thickness:1px; text-underline-offset:4px; }
.result-title a:hover { color:var(--rs-accent); text-decoration:underline; }
.result-description { margin:5px 0 0; color:var(--rs-muted); font-size:13.5px; line-height:1.95; overflow-wrap:anywhere; }
.ra-result-tools { margin-top:9px; }
.ra-result-tools summary { display:inline-flex; align-items:center; gap:6px; color:var(--rs-muted); font-size:11px; cursor:pointer; }
.result-actions { display:flex; flex-wrap:wrap; gap:7px; margin-top:9px; }
.result-action { min-height:34px; padding:6px 10px; border:1px solid var(--rs-border); border-radius:10px; background:var(--rs-surface); color:var(--rs-muted); font-size:11px; transition:background .16s ease,border-color .16s ease,color .16s ease; }
.result-action:hover { border-color:#b7e2ec; color:var(--rs-accent); background:var(--rs-accent-soft); }
.result-action.ai-action { border-color:#b7e2ec; color:var(--rs-accent); }
.result-title a:focus-visible, .result-action:focus-visible, .ra-result-tools summary:focus-visible { outline:2px solid var(--rs-accent-bright); outline-offset:3px; border-radius:4px; }
@media (max-width:760px) {
  .result-card { padding:17px 4px 19px; }
  .result-content { gap:11px; }
  .result-title { font-size:17px; line-height:1.8; }
  .result-description { font-size:13px; line-height:1.9; }
  .result-domain-row { gap:7px; font-size:11px; }
  .domain-favicon { width:19px; height:19px; flex-basis:19px; }
  .result-action { min-height:36px; }
}
.suggestion-box { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:12px 0; padding:12px; border:1px solid #d5eaf2; border-radius:12px; background:var(--rs-accent-soft); }
.suggestion-label { color:var(--rs-muted); font-size:11px; }
.suggestion-button { padding:5px 10px; border:1px solid #b7e2ec; border-radius:8px; background:#fff; color:var(--rs-accent); }
.empty-state,.ra-image-empty { margin:20px 0; padding:32px 20px; text-align:center; border:1px dashed var(--rs-border-strong); border-radius:var(--rs-radius); background:var(--rs-surface); }
.empty-icon,.ra-image-empty-icon { color:var(--rs-accent); font-size:28px; }
.empty-title,.ra-image-empty-title { margin-top:6px; font-weight:800; }
.empty-text,.ra-image-empty-text { color:var(--rs-muted); font-size:12px; }
.ra-knowledge-panel {
  position:relative; padding:20px; color:var(--rs-text); background:var(--rs-surface);
  border:1px solid var(--rs-border); border-radius:var(--rs-radius-lg); box-shadow:var(--rs-shadow);
  overflow:hidden; isolation:isolate;
}
.ra-knowledge-panel:before { content:""; position:absolute; z-index:-1; inset:0 0 auto; height:5px; background:linear-gradient(90deg,var(--rs-accent),var(--rs-accent-bright)); }
.ra-knowledge-panel-head { display:flex; align-items:center; gap:12px; padding:15px 0 16px; }
.ra-knowledge-panel-mark { width:46px; height:46px; display:grid; place-items:center; flex:none; border:1px solid #cbe9f0; border-radius:15px; background:var(--rs-accent-soft); color:var(--rs-accent); font-size:21px; font-weight:800; }
.ra-knowledge-panel-kicker { margin-bottom:3px; color:var(--rs-accent); font-size:10px; font-weight:700; }
.ra-knowledge-panel h2 { margin:0; color:var(--rs-text); font-size:19px; line-height:1.6; font-weight:800; overflow-wrap:anywhere; }
.ra-knowledge-panel-domain { margin-top:2px; color:var(--rs-muted); font-size:11px; }
.ra-knowledge-expand { position:absolute; top:14px; inset-inline-end:14px; z-index:2; padding:7px 10px; border:1px solid #c9e5ed; border-radius:10px; background:rgba(255,255,255,.96); color:var(--rs-accent); font-size:10px; font-weight:700; }
.ra-knowledge-panel-head { padding-inline-start:76px; }
.ra-knowledge-panel-description { margin:0 0 14px; color:#53677d; font-size:12px; line-height:2; overflow-wrap:anywhere; }
.ra-knowledge-panel-status { display:flex; align-items:flex-start; gap:7px; margin:10px 0 14px; padding:9px 10px; border-radius:10px; font-size:10px; line-height:1.8; }
.ra-knowledge-panel-status.is-verified { color:#14745f; background:#eff9f5; border:1px solid #d4eee5; }
.ra-knowledge-panel-status.is-unverified { color:#94631d; background:#fff8e9; border:1px solid #f3e4bf; }
.ra-knowledge-panel-facts { display:grid; gap:8px; margin:0; }
.ra-knowledge-panel-facts>div { display:grid; grid-template-columns:86px minmax(0,1fr); gap:8px; padding:9px 10px; border:1px solid var(--rs-border); border-radius:10px; background:var(--rs-surface-soft); }
.ra-knowledge-panel-facts dt { color:var(--rs-muted); font-size:10px; }
.ra-knowledge-panel-facts dd { min-width:0; margin:0; color:var(--rs-text); font-size:11px; overflow-wrap:anywhere; }
.ra-knowledge-panel-facts a,.ra-knowledge-panel-sources a { color:var(--rs-accent); overflow-wrap:anywhere; }
.ra-knowledge-panel-sources { display:grid; gap:7px; margin-top:15px; }
.ra-knowledge-panel-sources>span { color:var(--rs-muted); font-size:10px; font-weight:700; }
.ra-knowledge-panel-sources a { padding:8px 10px; border:1px solid var(--rs-border); border-radius:9px; background:var(--rs-surface-soft); font-size:10px; }
.ra-knowledge-panel-sources a:hover { border-color:#b7e2ec; background:var(--rs-accent-soft); }
.ra-knowledge-dialog { position:fixed; inset:0; z-index:1000; display:none; align-items:center; justify-content:center; padding:24px; background:rgba(12,25,40,.62); backdrop-filter:blur(8px); }
.ra-knowledge-dialog.is-open { display:flex; }
.ra-knowledge-dialog-card { position:relative; width:min(760px,100%); max-height:min(88vh,900px); padding:22px; overflow:auto; border:1px solid rgba(255,255,255,.6); border-radius:24px; background:var(--rs-page); box-shadow:0 30px 100px rgba(0,0,0,.28); }
.ra-knowledge-dialog-card>.ra-knowledge-panel { max-width:100%; box-shadow:none; }
.ra-knowledge-close { position:sticky; top:0; z-index:5; float:left; width:38px; height:38px; margin-bottom:-38px; border:1px solid var(--rs-border); border-radius:12px; background:var(--rs-surface); color:var(--rs-text); font-size:25px; line-height:1; }
.ra-knowledge-dialog-open { overflow:hidden; }
.ra-image-discovery { padding:20px 0; }
.ra-image-discovery-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; padding:20px; border:1px solid var(--rs-border); border-radius:var(--rs-radius); background:var(--rs-surface); }
.ra-image-eyebrow { color:var(--rs-accent); font-size:11px; font-weight:800; }
.ra-image-discovery-head h2 { margin:5px 0; font-size:20px; }
.ra-image-discovery-head p { margin:0; color:var(--rs-muted); font-size:11px; }
.ra-image-count { flex:none; padding:7px 10px; border-radius:999px; background:var(--rs-accent-soft); color:var(--rs-accent); font-size:10px; }
.ra-image-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.ra-image-card { min-width:0; overflow:hidden; border:1px solid var(--rs-border); border-radius:15px; background:var(--rs-surface); box-shadow:var(--rs-shadow-soft); }
.ra-image-media { position:relative; display:block; aspect-ratio:4/3; overflow:hidden; background:var(--rs-surface-tint); }
.ra-image-media img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .25s; }
.ra-image-card:hover .ra-image-media img { transform:scale(1.035); }
.ra-image-open { position:absolute; top:9px; inset-inline-end:9px; width:30px; height:30px; display:grid; place-items:center; border-radius:9px; background:rgba(255,255,255,.94); color:var(--rs-accent); }
.ra-image-card-body { padding:12px; }
.ra-image-source { display:flex; align-items:center; gap:6px; color:var(--rs-muted); font-size:10px; }
.ra-image-source-dot { width:6px; height:6px; border-radius:50%; background:var(--rs-success); }
.ra-image-card h3 { margin:6px 0; font-size:12px; line-height:1.8; }
.ra-image-card p { color:var(--rs-muted); font-size:10px; }
.ra-image-actions { display:flex; flex-wrap:wrap; gap:10px; padding-top:7px; border-top:1px solid var(--rs-border); }
.ra-image-actions a { color:var(--rs-accent); font-size:10px; }
.chat-panel { position:fixed; z-index:200; inset-block:0; inset-inline-end:0; width:min(430px,100vw); display:flex; flex-direction:column; background:var(--rs-surface); border-inline-start:1px solid var(--rs-border); box-shadow:-18px 0 55px rgba(15,35,60,.16); transform:translateX(110%); visibility:hidden; transition:transform .25s ease,visibility .25s; }
.chat-panel.is-open,.chat-panel.open,.chat-panel[aria-hidden="false"] { transform:translateX(0); visibility:visible; }
.chat-header { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px; border-bottom:1px solid var(--rs-border); background:var(--rs-surface); }
.chat-title { display:flex; align-items:center; gap:11px; min-width:0; }
.chat-orb { width:40px; height:40px; display:grid; place-items:center; flex:none; border-radius:13px; background:var(--rs-accent-soft); color:var(--rs-accent); }
.chat-name { font-weight:800; font-size:13px; }
.chat-state { color:var(--rs-muted); font-size:10px; }
.chat-close,.chat-context-close { width:34px; height:34px; border:1px solid var(--rs-border); border-radius:10px; background:var(--rs-surface); color:var(--rs-muted); font-size:20px; }
.chat-messages { flex:1; overflow:auto; padding:18px; }
.chat-message { padding:14px; border:1px solid var(--rs-border); border-radius:14px; background:var(--rs-surface-soft); color:var(--rs-muted); font-size:12px; line-height:2; }
.chat-message-title { margin-bottom:8px; color:var(--rs-text); font-weight:700; }
.chat-suggestions { display:grid; gap:8px; margin-top:12px; }
.chat-suggestion { padding:9px 10px; text-align:right; border:1px solid var(--rs-border); border-radius:10px; background:var(--rs-surface); color:var(--rs-accent); font-size:11px; }
.chat-search-context { display:flex; align-items:center; gap:10px; padding:12px 16px; border-top:1px solid var(--rs-border); border-bottom:1px solid var(--rs-border); background:var(--rs-surface-soft); }
.chat-context-icon { color:var(--rs-accent); }
.chat-context-content { display:flex; flex:1; min-width:0; flex-direction:column; }
.chat-context-label { color:var(--rs-muted); font-size:9px; }
.chat-context-content strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.chat-input-area { padding:14px; }
.chat-input-row { display:flex; align-items:flex-end; gap:8px; padding:7px; border:1px solid var(--rs-border-strong); border-radius:14px; }
.chat-input { flex:1; min-width:0; max-height:140px; resize:vertical; padding:8px; border:0; outline:0; background:transparent; color:var(--rs-text); }
.chat-send { width:38px; height:38px; border:0; border-radius:11px; background:var(--rs-accent); color:#fff; font-size:20px; }
.chat-input-hint { margin-top:7px; color:var(--rs-muted); font-size:9px; }
.ra-mobile-dock { display:none; }
@media (prefers-color-scheme:dark) {
  html[data-theme="dark"], [data-theme="dark"] { color-scheme:dark; }
}
[data-theme="dark"] body.raasaad-results-document,
body.raasaad-results-document.dark,
body.raasaad-results-document.theme-dark {
  color-scheme:dark;
  --rs-page:#091421; --rs-surface:#101e2d; --rs-surface-soft:#132436; --rs-surface-tint:#142b3c;
  --rs-text:#edf5fc; --rs-muted:#a0b0c2; --rs-faint:#8195aa; --rs-border:#26394b; --rs-border-strong:#344b60;
  --rs-accent:#5bc9e5; --rs-accent-strong:#2ca7ce; --rs-accent-bright:#43c8e5; --rs-accent-soft:#122f3c;
  --rs-shadow:0 10px 30px rgba(0,0,0,.2); --rs-shadow-soft:0 4px 16px rgba(0,0,0,.16);
}
[data-theme="dark"] body.raasaad-results-document .ra-header,
body.raasaad-results-document.dark .ra-header,
body.raasaad-results-document.theme-dark .ra-header { background:rgba(16,30,45,.94); }
[data-theme="dark"] body.raasaad-results-document .result-title a,
body.raasaad-results-document.dark .result-title a,
body.raasaad-results-document.theme-dark .result-title a { color:#83baff; }
[data-theme="dark"] body.raasaad-results-document .result-description,
body.raasaad-results-document.dark .result-description,
body.raasaad-results-document.theme-dark .result-description,
[data-theme="dark"] body.raasaad-results-document .ra-knowledge-panel-description { color:#b5c4d4; }
[data-theme="dark"] body.raasaad-results-document .ra-knowledge-expand,
body.raasaad-results-document.dark .ra-knowledge-expand,
body.raasaad-results-document.theme-dark .ra-knowledge-expand { background:var(--rs-surface); }
[data-theme="dark"] body.raasaad-results-document .status-badge,
body.raasaad-results-document.dark .status-badge { background:#102c28; border-color:#1d4c43; color:#76d7bb; }
@media (max-width:1050px) {
  .ra-layout { grid-template-columns:minmax(0,1fr) 280px; gap:18px; }
  .ra-layout.without-knowledge-panel,
  .ra-layout.has-knowledge-panel { grid-template-columns:minmax(0,1fr) 320px; }
  .ra-header-inner { grid-template-columns:160px minmax(220px,1fr) 104px; gap:16px; }
  .ra-brand-name { font-size:18px; }
  .ai-center { padding:22px; }
  .ra-image-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .ra-container,.ra-header .ra-container { width:calc(100% - 28px); }
  .ra-header { position:relative; }
  .ra-header-inner { min-height:0; grid-template-columns:1fr auto; gap:12px; padding:12px 0; }
  .ra-brand { grid-column:1; grid-row:1; }
  .ra-brand-mark { width:38px; height:38px; border-radius:12px; }
  .ra-brand-name { font-size:17px; }
  .ra-brand-sub { font-size:9px; }
  .ra-header-actions { grid-column:2; grid-row:1; }
  .ra-header-actions .ra-tool { width:36px; height:36px; }
  .ra-header-actions .ra-chat-trigger { width:auto; }
  .ra-search { grid-column:1/-1; grid-row:2; }
  .ra-search-box { min-height:48px; border-radius:14px; }
  .ra-nav-inner { min-height:44px; gap:0; }
  .ra-nav-item { padding-inline:13px; font-size:11px; }
  .ra-main { padding:15px 0 90px; }
  .ra-layout { display:flex; flex-direction:column; gap:16px; }
  .ra-results-column,.ra-side-column { width:100%; }
  .ra-side-column { order:-1; }
  .ra-search-content-grid,.ra-primary-results { width:100%; }
  .ai-center { padding:17px 15px; margin-bottom:13px; border-radius:17px; }
  .ai-head { align-items:flex-start; gap:10px; padding-bottom:14px; }
  .ai-title { margin-top:7px; font-size:18px; line-height:1.75; }
  .ai-description { font-size:11px; line-height:1.9; }
  .ai-understanding { width:51px; height:51px; border-radius:14px; }
  .understanding-number { font-size:13px; }
  .understanding-label { font-size:8px; }
  .ra-ai-tools-summary { align-items:flex-start; font-size:11px; }
  .ra-ai-tools-hint { max-width:44%; text-align:left; }
  .conversation-flow { padding-inline:10px; }
  .ai-answer-box,.learning-panel,.ra-market-panel,.intent-area { margin-inline:9px; }
  .ra-market-grid { grid-template-columns:1fr; }
  .search-status { align-items:flex-start; font-size:10px; }
  .result-card { padding:18px 2px 20px; }
  .result-content { gap:10px; }
  .result-title { font-size:16px; line-height:1.85; }
  .result-description { font-size:12px; line-height:2; }
  .result-image-wrap { width:76px; }
  .result-image { height:74px; }
  .result-domain-row { flex-wrap:wrap; gap:6px; font-size:10px; }
  .ra-knowledge-panel { padding:15px; border-radius:17px; }
  .ra-knowledge-panel-head { padding-top:30px; padding-inline:0; }
  .ra-knowledge-expand { top:10px; inset-inline-end:10px; padding:5px 8px; }
  .ra-knowledge-panel h2 { font-size:17px; }
  .ra-knowledge-panel-facts>div { grid-template-columns:78px minmax(0,1fr); }
  .ra-knowledge-dialog { padding:10px; }
  .ra-knowledge-dialog-card { max-height:92vh; padding:12px; border-radius:18px; }
  .ra-knowledge-dialog-card .ra-knowledge-panel-head { padding-top:30px; padding-inline:0; }
  .ra-image-discovery-head { align-items:flex-start; padding:14px; }
  .ra-image-discovery-head h2 { font-size:16px; }
  .ra-image-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .ra-image-card-body { padding:9px; }
  .ra-image-card h3 { font-size:11px; }
  .chat-panel { width:100vw; }
  .ra-mobile-dock {
    position:fixed; z-index:80; inset-inline:10px; bottom:calc(9px + env(safe-area-inset-bottom));
    display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; padding:7px;
    border:1px solid rgba(209,221,231,.9); border-radius:17px; background:rgba(255,255,255,.94);
    box-shadow:0 10px 35px rgba(20,43,70,.16); backdrop-filter:blur(18px);
  }
  .ra-mobile-dock-item { min-width:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1px; padding:5px 2px; border:0; border-radius:11px; background:transparent; color:var(--rs-muted); font-size:9px; }
  .ra-mobile-dock-item>span:first-child { font-size:17px; line-height:1.35; }
  .ra-mobile-dock-item.active { background:var(--rs-accent-soft); color:var(--rs-accent); font-weight:700; }
  .ra-mobile-dock-item.ai { background:var(--rs-accent); color:#fff; }
}
@media (max-width:420px) {
  .ra-container,.ra-header .ra-container { width:calc(100% - 22px); }
  .ra-brand-sub { display:none; }
  .ra-header-inner { column-gap:8px; }
  .ra-image-grid { grid-template-columns:1fr; }
  .ra-image-media { aspect-ratio:16/9; }
  .ai-title { font-size:16px; }
  .result-title { font-size:15px; }
  .ra-knowledge-panel-head { padding-inline-start:0; }
  .ra-knowledge-panel-facts>div { grid-template-columns:72px minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) {
  body.raasaad-results-document *, body.raasaad-results-document *:before, body.raasaad-results-document *:after {
    scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important;
  }
}


/* 2026-10-25: calmer, more deliberate organic-result layout */
.ra-layout.has-knowledge-panel,
.ra-layout.without-knowledge-panel {
  grid-template-columns:minmax(0,1fr) 340px;
  gap:24px;
}
.result-list { gap:12px; }
.result-card {
  padding:20px 20px 21px;
  border:1px solid var(--rs-border);
  border-radius:15px;
  background:var(--rs-surface);
  box-shadow:0 2px 8px rgba(20,43,70,.025);
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.result-card:hover {
  border-color:var(--rs-border-strong);
  background:var(--rs-surface);
  box-shadow:var(--rs-shadow-soft);
  transform:translateY(-1px);
}
.result-domain-row { margin-bottom:7px; }
.result-title { font-size:18px; line-height:1.8; }
.result-description { margin-top:6px; line-height:1.9; }
.ra-result-tools { margin-top:10px; }
.ra-knowledge-panel { padding:17px; }
.ra-knowledge-panel-head { padding-top:12px; padding-bottom:12px; }
.ra-knowledge-panel-description { margin-bottom:10px; }
.ra-knowledge-panel-status { margin:8px 0 10px; }
.ra-knowledge-panel-sources { margin-top:11px; }
@media(max-width:1050px) {
  .ra-layout.has-knowledge-panel,
  .ra-layout.without-knowledge-panel { grid-template-columns:minmax(0,1fr) 300px; gap:18px; }
}
@media(max-width:760px) {
  .ra-layout.has-knowledge-panel,
  .ra-layout.without-knowledge-panel { display:flex; flex-direction:column; }
  .result-list { gap:10px; }
  .result-card { padding:16px 14px 17px; border-radius:13px; }
  .result-title { font-size:16px; }
  .ra-knowledge-panel { padding:15px; }
}


/* RaaSaaD editorial search experience — source-first result cards */
body.raasaad-results-document {
  --rs-page:#f7f9fc;
  --rs-surface:#fff;
  --rs-border:#e5ebf2;
  --rs-border-strong:#d3e0eb;
  --rs-text:#14243a;
  --rs-muted:#62748a;
  --rs-accent:#087f9f;
}
.ra-main { padding-top:22px; }
.ra-layout { grid-template-columns:minmax(0,1fr) 326px; gap:28px; }
.ra-layout.has-knowledge-panel,
.ra-layout.without-knowledge-panel { grid-template-columns:minmax(0,1fr) 326px; gap:28px; }
.ra-results-column { min-width:0; }
.search-status {
  margin:0 0 14px; padding:10px 2px 13px; border-bottom:1px solid #dfe7ef;
  font-size:11px;
}
.status-badge { padding:4px 8px; background:#f1faf6; }
.result-list { gap:13px; }
.result-card {
  position:relative; isolation:isolate; overflow:hidden;
  padding:19px 21px 18px;
  border:1px solid #e3eaf1; border-radius:16px;
  background:#fff; box-shadow:0 3px 14px rgba(25,48,76,.035);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.result-card:before {
  content:""; position:absolute; z-index:-1; inset:0 0 0 auto;
  width:3px; background:#dceff4; opacity:0; transition:opacity .18s ease;
}
.result-card:hover {
  transform:translateY(-2px); border-color:#cbdde8;
  background:#fff; box-shadow:0 9px 25px rgba(25,48,76,.075);
}
.result-card:hover:before { opacity:1; }
.result-content { gap:16px; }
.result-body { min-width:0; }
.result-domain-row { gap:8px; margin-bottom:7px; font-size:11px; color:#64778c; }
.domain-favicon { width:22px; height:22px; flex-basis:22px; border-radius:7px; border-color:#edf1f5; }
.result-domain { direction:ltr; text-align:right; unicode-bidi:plaintext; }
.result-match { margin-inline-start:auto; color:#60758a; background:#f7f9fb; border-color:#e7edf3; font-size:10px; }
.result-title { font-size:19px; line-height:1.75; letter-spacing:-.15px; }
.result-title a { color:#155fba; }
.result-description { margin-top:7px; color:#53667c; font-size:13px; line-height:2; }
.ra-result-tools { margin-top:12px; }
.ra-result-tools summary { padding:3px 0; color:#65788c; }
.result-actions { padding-top:2px; }
.result-action { border-radius:9px; }
.ra-context-images {
  margin:0 0 18px; padding:15px; border:1px solid #e3eaf1;
  border-radius:17px; background:#fff; box-shadow:0 4px 16px rgba(25,48,76,.035);
}
.ra-context-images-head { margin-bottom:12px; }
.ra-context-images-head h2 { font-size:16px; letter-spacing:-.1px; }
.ra-context-images-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.ra-context-image-card { border-color:#e7edf3; border-radius:11px; background:#fff; }
.ra-context-image-link { height:100px; }
.ra-context-image-caption { padding:7px 8px 8px; }
.ra-context-image-caption span { font-size:10px; }
.ra-context-image-caption strong { font-size:11px; line-height:1.7; }
.ra-knowledge-panel {
  border-radius:18px; box-shadow:0 5px 22px rgba(25,48,76,.045);
}
.ra-knowledge-panel:before { height:3px; }
.ra-knowledge-panel-head { gap:10px; }
.ra-knowledge-panel-mark { border-radius:13px; }
.ra-knowledge-panel-facts>div { background:#fbfcfe; }
@media(max-width:1050px) {
  .ra-layout.has-knowledge-panel,
  .ra-layout.without-knowledge-panel { grid-template-columns:minmax(0,1fr) 290px; gap:18px; }
  .ra-context-images-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .ra-layout.has-knowledge-panel,
  .ra-layout.without-knowledge-panel { display:flex; flex-direction:column; gap:14px; }
  .result-card { padding:16px 15px; border-radius:14px; }
  .result-card:hover { transform:none; }
  .result-title { font-size:16px; }
  .result-description { font-size:12px; }
  .ra-context-images-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ra-context-image-link { height:110px; }
}
