/* ResearchProspect free tools: form-based tools on the shared tool card (3 Nov 2026).
   Adds fields, top-bar selects and a formatted result to /rp-tools/rp-shell.css.
   Used by: Methodology Selector, Essay Outline Generator, Dissertation Topic Generator, AI Dissertation Writer. */
.rps-ft .rps-bar { gap:14px 18px; padding:8px 18px; }
.rps-sel { display:inline-flex; align-items:center; gap:8px; margin:0; font-size:14px; color:var(--rps-muted); font-weight:600; white-space:nowrap; }
.rps-sel select, .rps-sel input { border:1px solid var(--rps-line); border-radius:20px; padding:6px 12px; font:inherit; font-size:14px; font-weight:500; color:var(--rps-ink); background:#fff; height:auto; width:auto; max-width:220px; }
.rps-sel input[type=number] { width:76px; }
.rps-sel select:focus, .rps-sel input:focus { outline:2px solid rgba(239,106,35,.35); outline-offset:1px; border-color:var(--rps-orange); }
.rps-ft .rps-tabs button { padding:12px 10px 10px; }

.rps-fields { flex:1; padding:18px 20px 8px; display:flex; flex-direction:column; gap:16px; }
.rps-fld { display:flex; flex-direction:column; gap:6px; margin:0; padding:0; border:0; min-width:0; }
.rps-fld > label, .rps-fld > legend { font-size:14px; font-weight:600; color:var(--rps-navy); margin:0; padding:0; float:none; width:auto; line-height:1.4; }
.rps-fld .opt { font-weight:400; color:var(--rps-muted); }
.rps-fld textarea, .rps-fld input[type=text], .rps-fld select { width:100%; border:1px solid var(--rps-line); border-radius:10px; padding:11px 13px; font:inherit; font-size:16px; line-height:1.5; color:var(--rps-ink); background:#fff; box-shadow:none; height:auto; }
.rps-fld textarea { min-height:112px; resize:vertical; }
.rps-fld textarea:focus, .rps-fld input:focus, .rps-fld select:focus { outline:0; border-color:var(--rps-navy); box-shadow:0 0 0 3px rgba(0,33,71,.08); }
.rps-fld textarea::placeholder, .rps-fld input::placeholder { color:#9ca3af; font-size:inherit !important; }
.rps-fld textarea, .rps-fld input[type=text], .rps-fld select { font-size:16px !important; }
.rps-row2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.rps-checks { display:grid; grid-template-columns:1fr 1fr; gap:6px 14px; margin-top:2px; }
.rps-checks label { display:flex; align-items:flex-start; gap:8px; font-size:14.5px; color:#374151; font-weight:400; margin:0; cursor:pointer; line-height:1.45; }
.rps-checks input { width:16px; height:16px; margin:2px 0 0; flex:0 0 16px; accent-color:var(--rps-orange); }
.rps-range { display:flex; align-items:center; gap:12px; }
.rps-range input { flex:1; accent-color:var(--rps-orange); }
.rps-range output { min-width:96px; font-weight:600; color:var(--rps-navy); font-size:14.5px; }

.rps-ft .rps-result { max-height:720px; white-space:normal; font-size:15.5px; line-height:1.6; }
.rps-ft .rps-out-empty { flex-direction:column; gap:6px; }
.rps-r-badge { display:inline-block; background:var(--rps-chip); color:var(--rps-navy); border-radius:20px; padding:5px 14px; font-size:13.5px; font-weight:700; letter-spacing:.3px; text-transform:uppercase; margin:0 0 8px; }
.rps-r-title { margin:0 0 10px; font-size:19px; line-height:1.35; color:var(--rps-navy); font-weight:700; }
.rps-r-h { margin:18px 0 8px; padding:0 0 5px; font-size:15.5px; line-height:1.35; color:var(--rps-navy); font-weight:700; border-bottom:2px solid #FBE3D3; }
.rps-r-h:first-child { margin-top:0; }
.rps-r-sub { margin:12px 0 4px; font-size:15px; color:var(--rps-navy); font-weight:600; }
.rps-r p { margin:0 0 8px; }
.rps-r ul, .rps-r ol { margin:0 0 10px; padding-left:20px; }
.rps-r li { margin:3px 0; }
.rps-r-dl { display:grid; grid-template-columns:max-content 1fr; gap:6px 14px; margin:0 0 8px; }
.rps-r-dl dt { font-weight:600; color:#374151; }
.rps-r-dl dd { margin:0; }
.rps-r-box { border:1px solid var(--rps-line); border-left:3px solid var(--rps-orange); border-radius:8px; padding:10px 14px; margin:0 0 10px; background:#FBFCFE; }
.rps-r-box .rps-r-sub { margin-top:0; }
.rps-r-quote { border-left:3px solid var(--rps-orange); background:#FFF8F2; padding:10px 14px; border-radius:0 8px 8px 0; margin:0 0 10px; font-style:italic; }
.rps-r-note { font-size:13.5px; color:var(--rps-muted); margin:4px 0 8px; }
.rps-r-topics { list-style:none; padding:0 !important; margin:0; counter-reset:t; }
.rps-r-topics li { display:flex; gap:12px; align-items:flex-start; border:1px solid var(--rps-line); border-radius:10px; padding:10px 12px; margin:0 0 8px; counter-increment:t; }
.rps-r-topics li::before { content:counter(t); flex:0 0 26px; height:26px; border-radius:7px; background:var(--rps-chip); color:var(--rps-navy); font-weight:700; font-size:13px; display:flex; align-items:center; justify-content:center; }
.rps-r-topics .tx { flex:1; min-width:0; }
.rps-r-tt { margin:0 0 3px !important; font-weight:600; color:var(--rps-navy); line-height:1.4; }
.rps-r-ag { margin:0 !important; font-size:14px; color:#4b5563; line-height:1.5; }
.rps-r-copy { flex:0 0 auto; border:1px solid var(--rps-line); background:#fff; color:var(--rps-navy); border-radius:8px; padding:4px 10px; font-size:12.5px; font-weight:500; cursor:pointer; }
.rps-r-copy:hover { background:var(--rps-chip); }
.rps-offer .t a { color:var(--rps-navy); font-weight:600; text-decoration:underline; }

/* inside a blog article column (Dissertation Topic Generator): no full-width hero, panes stacked */
.rps-embed { margin:4px 0 8px; padding:20px; background:var(--rps-bg); border-radius:14px; text-align:left; color:var(--rps-ink); }
.rps-embed .rps-embed-h { margin:0 0 6px; color:var(--rps-navy); font-size:26px; line-height:1.25; font-weight:700; }
.rps-embed .rps-embed-p { margin:0; color:#374151; font-size:16.5px; line-height:1.5; }
.rps-embed .rps-chips { justify-content:flex-start; margin:10px 0 16px; }
.rps-embed .rps-wrap { background:none; padding:0; }
.rps-embed .rps-panes { grid-template-columns:1fr; }
.rps-embed .rps-pane + .rps-pane { border-left:0; border-top:1px solid var(--rps-line); }
.rps-embed .rps-result { min-height:150px; }
.rps-embed .rps-out-empty { min-height:110px; }
.rps-embed .rps-offer, .rps-embed .rps-note { max-width:none; }
.rps-embed .rps-note { text-align:left; }
.rps-proto { display:none !important; }
/* WordPress page template with a fixed header (AI Dissertation Writer): the hero starts under it, as the old hero did */
.rps-hero.rps-hero-wp { padding-top:140px; }

/* The WordPress theme sizes p, li and h3 with !important; keep the card's own sizes on the two WP pages */
.rps-hero p { font-size:17px !important; line-height:1.5 !important; }
.rps-chips li { font-size:14px !important; }
.rps-embed .rps-embed-p { font-size:16.5px !important; }
.rps-ft p, .rps-ft li, .rps-ft dt, .rps-ft dd { font-size:inherit !important; }
.rps-ft .rps-msg { font-size:14px !important; }
.rps-ft h3.rps-r-h { font-size:15.5px !important; font-weight:700 !important; }
.rps-ft .rps-r-title { font-size:19px !important; }
.rps-ft .rps-r-sub { font-size:15px !important; }
.rps-ft .rps-r-note, .rps-r-topics .rps-r-ag { font-size:14px !important; }
.rps-wrap .rps-note { font-size:14px !important; }

@media (max-width:700px) {
  .rps-ft .rps-bar { padding:8px 12px 2px; gap:8px 12px; }
  .rps-ft .rps-tabs { padding:0; margin:0 -6px; width:calc(100% + 12px); }
  .rps-sel { font-size:13.5px; }
  .rps-sel select { max-width:200px; }
  .rps-fields { padding:14px 14px 6px; gap:14px; }
  .rps-row2, .rps-checks { grid-template-columns:1fr; }
  .rps-ft .rps-result { max-height:none; }
  .rps-r-dl { grid-template-columns:1fr; gap:0 0; }
  .rps-r-dl dd { margin:0 0 6px; }
  .rps-embed { padding:16px 12px; margin:0 -4px 8px; }
  .rps-hero.rps-hero-wp { padding-top:96px; }
  .rps-r-topics li { display:grid; grid-template-columns:26px 1fr; gap:4px 12px; }
  .rps-r-topics .rps-r-copy { grid-column:2; justify-self:start; }
  .rps-embed .rps-embed-h { font-size:22px; }
  .rps-hero p, .rps-embed .rps-embed-p { font-size:15px !important; }
  .rps-chips li { font-size:12.5px !important; }
  .rps-wrap .rps-note { font-size:13px !important; }
  .rps-embed .rps-chips { gap:4px 12px; }
  .rps-embed .rps-embed-p { font-size:15px; }
  .rps-embed .rps-panes { grid-template-columns:1fr; }
  .rps-embed .rps-pane + .rps-pane { border-top:0; }
  /* the embed's sticky bar stays hidden until the script has moved it to <body>; until then the in-card button is shown */
  body:not(.rps-has-mbar) .rps-embed .rps-inp .rps-go { display:inline-block; }
}
