
/* Calculator refinement — preserves the existing 250 / 600 / 250 PHP template */
.refinement-calc-card { padding: 24px; }
.refinement-calc-heading {
  display:flex; align-items:flex-start; justify-content:space-between; gap:16px;
  margin-bottom:18px;
}
.refinement-calc-heading h2 { margin:0; color:var(--navy); font-size:1.05rem; }
.refinement-calc-heading p { margin:2px 0 0; color:#78869a; font-size:.78rem; }

.refinement-calc-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:4px; }
.refinement-calc-actions .btn { margin-right:0; }

.refinement-result-panel {
  background:#0f4d89;
  border:1px solid #0b4074;
  color:#fff;
  padding:20px;
}
.refinement-result-panel h3 { color:#d8eaff; }
.refinement-result-panel .result-value { color:#fff; font-size:2rem; font-weight:850; }
.refinement-result-note { margin-top:4px; color:#d9e8f7; font-size:.76rem; }
.refinement-result-mini-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:16px;
}
.refinement-result-mini-grid > div {
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12);
  padding:8px; border-radius:6px; display:grid; gap:1px;
}
.refinement-result-mini-grid span { color:#c9dcf0; font-size:.65rem; }
.refinement-result-mini-grid strong { color:#fff; font-size:.72rem; }

.refinement-result-tools { display:flex; flex-wrap:wrap; gap:7px; margin-top:8px; }
.refinement-result-tools .btn { margin-right:0; padding:8px 12px; font-size:.76rem; }

.refinement-share-card {
  background:#fff; border:1px solid var(--border); border-radius:10px;
  padding:12px 14px; display:flex; align-items:center; flex-wrap:wrap; gap:7px;
  font-size:.76rem;
}
.refinement-share-card > span { font-weight:700; color:var(--navy); margin-right:4px; }
.refinement-share-btn {
  border:1px solid #d5dfed; background:#fff; color:#2459ae;
  padding:5px 9px; border-radius:5px; font-size:.72rem; cursor:pointer;
}

.refinement-how-card h3,
.refinement-long-card h3 { margin:18px 0 6px; color:var(--navy); font-size:.96rem; }
.refinement-how-card p,
.refinement-long-card p { font-size:.88rem; line-height:1.7; }
.refinement-faq-list { margin-top:6px; }
.refinement-faq-list details { padding:10px 0; }

.refinement-insight-card { position:relative; padding-left:54px; }
.refinement-insight-card::before {
  content:"↗"; position:absolute; left:18px; top:20px; width:24px; height:24px;
  display:flex; align-items:center; justify-content:center; border-radius:5px;
  background:#eef4ff; color:#2463eb; font-weight:900;
}
.refinement-insight-label {
  color:#2463eb; text-transform:uppercase; letter-spacing:.06em;
  font-size:.63rem; font-weight:800; margin-bottom:3px;
}
.refinement-insight-card h2 { margin-bottom:6px; }

.refinement-smart-guide { padding:0; overflow:hidden; }
.refinement-smart-guide-head {
  background:linear-gradient(90deg,#10213f,#1a416f);
  color:#fff; padding:16px 18px; display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.refinement-smart-guide-head span { font-size:.64rem; text-transform:uppercase; letter-spacing:.06em; color:#b9d2ec; }
.refinement-smart-guide-head h2 { margin:2px 0 0; color:#fff; font-size:1rem; }
.refinement-guide-tabs { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--border); }
.refinement-guide-tabs button {
  background:#fff; border:0; border-right:1px solid var(--border); padding:11px 7px;
  font-size:.68rem; font-weight:700; color:#54657c; cursor:pointer;
}
.refinement-guide-tabs button.active { color:#2463eb; background:#f6f9ff; }
.refinement-guide-output { padding:16px 18px 8px; }
.refinement-guide-output strong { color:var(--navy); }
.refinement-guide-output p { margin:4px 0; font-size:.82rem; line-height:1.6; color:#5b6b82; }
.refinement-guide-question { padding:10px 18px 18px; }
.refinement-guide-question label { display:block; font-size:.72rem; font-weight:800; color:var(--navy); margin-bottom:5px; }
.refinement-guide-question > div { display:flex; gap:8px; }
.refinement-guide-question input {
  flex:1; min-width:0; border:1px solid var(--border); border-radius:6px; padding:9px 10px;
}
.refinement-guide-answer { margin:7px 0 0; font-size:.76rem; color:#5b6b82; }

.refinement-numbered-list { padding-left:20px; margin:0; }
.refinement-numbered-list li { margin:0 0 12px; padding-left:2px; font-size:.86rem; line-height:1.55; }
.refinement-mistakes-card { border-top:3px solid #d94b4b; }
.refinement-mistake-list { list-style:none; padding:0; margin:0; }
.refinement-mistake-list li { position:relative; padding-left:22px; margin:0 0 10px; font-size:.86rem; line-height:1.55; }
.refinement-mistake-list li::before { content:"✕"; position:absolute; left:0; color:#d62929; font-weight:900; }

.refinement-related-list { margin:8px 0 0; padding-left:18px; }
.refinement-related-list a { color:var(--blue); }
.refinement-reviewed-line {
  color:#7a8798; font-size:.68rem; padding:4px 2px 12px;
}

.refinement-resource-list { margin:0; padding-left:20px; font-size:.78rem; }
.refinement-resource-list li { padding:5px 0; border-bottom:1px solid #edf1f6; }
.refinement-resource-list a { color:#1f5cae; }

.refinement-project-summary .refinement-summary-list { display:grid; gap:8px; }
.refinement-project-summary .refinement-summary-list > div {
  display:flex; justify-content:space-between; gap:10px; font-size:.78rem;
  border-bottom:1px solid #edf1f6; padding-bottom:7px;
}
.refinement-project-summary span { color:#768499; }
.refinement-project-summary strong { color:var(--navy); text-align:right; max-width:135px; overflow:hidden; text-overflow:ellipsis; }

@media (max-width:760px) {
  .refinement-guide-tabs { grid-template-columns:repeat(2,1fr); }
  .refinement-result-mini-grid { grid-template-columns:1fr; }
}
