/**
 * MediLedger Senior Eye-Comfort & Box-Free Large Print CSS
 * - 눈이 편안한 웜 아이보리(#faf9f5) 배경 & 차콜(#18181b) 고선명 텍스트
 * - 모바일·PC 박스 중첩(테두리 안의 테두리) 완전 제거 -> 시원한 전체 폭 평면 레이아웃
 * - 본문 19px / 소제목 22~23px / 대제목 26~32px 대형 글씨
 * - 상단 중복 바로가기 버튼 제거 & 푸터 위 흰색 여백 0px
 */

:root {
  --bg-page: #faf9f5;
  --bg-surface: #faf9f5;
  --bg-soft: #f1efe8;
  --bg-navy: #1e293b;
  --text-main: #18181b;
  --text-sub: #27272a;
  --text-muted: #3f3f46;
  --primary: #1e40af;
  --primary-dark: #1e3a8a;
  --primary-light: #eff6ff;
  --accent-teal: #0f766e;
  --border: #d6d3cd;
}

* {
  box-sizing: border-box;
}

html, body {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  background: #faf9f5 !important;
  color: #18181b !important;
  font-family: -apple-system, BlinkMacSystemFont, "Pretendard", "Malgun Gothic", "맑은 고딕", "Noto Sans KR", sans-serif !important;
  font-size: 19px !important;
  line-height: 1.78 !important;
  word-break: keep-all !important;
  overflow-wrap: break-word !important;
  -webkit-font-smoothing: antialiased;
}

p, li, dd, dt, span, div {
  word-break: keep-all !important;
  overflow-wrap: break-word !important;
}

p, li, dd, dt {
  font-size: 19px !important;
  line-height: 1.78 !important;
  color: #1f2937 !important;
}

h1, .hero-title {
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1.38 !important;
  color: #18181b;
  text-align: left !important;
  margin: 0 0 16px 0 !important;
  letter-spacing: -0.02em;
}

h2, .section-title {
  font-size: 25px !important;
  font-weight: 900 !important;
  line-height: 1.42 !important;
  color: #18181b !important;
  text-align: left !important;
  margin: 0 0 12px 0 !important;
}

h3, .card-heading, .sim-box-title {
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.45 !important;
  color: #18181b !important;
  text-align: left !important;
  margin: 0 0 10px 0 !important;
}

a {
  color: #1e40af;
  text-decoration: none;
}

.skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  background: #1e40af;
  color: #ffffff !important;
  padding: 12px 20px;
  z-index: 9999;
  font-weight: 800;
  font-size: 18px;
}
.skip-link:focus {
  left: 0;
}

/* 1. 상단 헤더: 로고만 깔끔하게 표시 (하단 카테고리 버튼 영역 완전 제거) */
.site-header {
  background: #faf9f5 !important;
  border-bottom: 2px solid #d6d3cd !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 200;
}

.header-top-tier, .header-inner {
  max-width: 1080px;
  margin: 0 auto;
  padding: 16px 20px !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #faf9f5 !important;
}

.brand-link-wrap {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none !important;
  color: #18181b !important;
}

.brand-logo-badge {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: #1e3a8a !important;
  color: #ffffff !important;
  font-weight: 900;
  font-size: 19px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.brand-title-main {
  font-size: 24px !important;
  font-weight: 900 !important;
  color: #18181b !important;
  letter-spacing: -0.02em;
}

.header-home-link {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #1e40af !important;
  text-decoration: none !important;
  padding: 8px 14px;
  background: #e0e7ff;
  border-radius: 8px;
}

/* 상단 로고 밑 중복 카테고리 버튼 영역(.header-bottom-tier) 및 바이라인만 숨김 */
.header-bottom-tier,
.category-nav-bar,
.brand-subtitle-sub,
.official-source-pill,
.byline-bar,
.byline-box {
  display: none !important;
}

/* 검색창 아래 '바로 찾기' 및 '전체 안내서 보기' 버튼 스타일 (모바일·PC 가독성 최적화) */
.quick-keywords-wrap {
  margin-top: 18px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
}
.quick-keywords-label {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #38bdf8 !important;
  margin-right: 4px !important;
}
.quick-kw-btn {
  width: auto !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.3) !important;
  color: #ffffff !important;
  padding: 10px 16px !important;
  min-height: 46px !important;
  border-radius: 10px !important;
  font-size: 17.5px !important;
  font-weight: 700 !important;
  cursor: pointer;
}
.quick-kw-btn:hover {
  background: #38bdf8 !important;
  color: #0f172a !important;
  border-color: #38bdf8 !important;
}

.filter-chips-bar {
  display: flex !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
}
.chip-btn {
  width: auto !important;
  background: #1e293b !important;
  border: 2px solid #475569 !important;
  color: #f8fafc !important;
  padding: 12px 18px !important;
  min-height: 50px !important;
  border-radius: 12px !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  cursor: pointer;
}
.chip-btn:hover,
.chip-btn.active {
  background: #38bdf8 !important;
  color: #0f172a !important;
  border-color: #38bdf8 !important;
}

/* 2. 상단 검색 배너 (눈이 편안한 딥 슬레이트 블루 & 군더더기 없는 검색창) */
.hero-section {
  background: #1e293b !important;
  color: #f8fafc !important;
  padding: 28px 20px 30px !important;
  text-align: left !important;
  border-bottom: 3px solid #334155 !important;
}

.hero-container {
  max-width: 1080px;
  margin: 0 auto;
}

.hero-section .hero-title {
  color: #f8fafc !important;
  font-size: 28px !important;
  line-height: 1.4 !important;
  margin-bottom: 18px !important;
}

.hero-section .hero-title span {
  color: #93c5fd !important;
}

.search-bar-wrap {
  display: flex;
  gap: 10px;
  width: 100%;
}

.search-input-box {
  flex: 1;
  width: 100% !important;
  background: #faf9f5 !important;
  border: 2px solid #93c5fd !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #18181b !important;
  min-height: 58px !important;
}

.search-action-button {
  background: #2563eb !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 0 24px !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  min-height: 58px !important;
  cursor: pointer;
  white-space: nowrap;
}

/* 즉시 검색 결과 영역 (박스 중첩 없이 깔끔한 리스트) */
.instant-results-box {
  display: none;
  margin-top: 16px;
  background: #faf9f5 !important;
  color: #18181b !important;
  border-radius: 10px !important;
  padding: 18px !important;
  border: 2px solid #93c5fd !important;
}
.instant-results-box.active {
  display: block;
}
.instant-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 2px solid #d6d3cd;
}
.instant-results-title {
  font-size: 20px !important;
  font-weight: 900 !important;
  color: #18181b !important;
}
.instant-close-btn {
  background: #e4e2dd !important;
  color: #18181b !important;
  border: none !important;
  padding: 8px 16px !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  border-radius: 8px !important;
}
.instant-item-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.instant-item-card {
  display: block;
  padding: 16px 4px !important;
  border: none !important;
  border-bottom: 1px solid #d6d3cd !important;
  border-radius: 0 !important;
  background: transparent !important;
  text-decoration: none !important;
  color: #18181b !important;
}
.instant-item-card:last-child {
  border-bottom: none !important;
}
.instant-item-badge {
  display: inline-block;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #1e40af !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin-bottom: 4px !important;
}
.instant-item-heading {
  font-size: 21px !important;
  font-weight: 800 !important;
  color: #18181b !important;
  line-height: 1.42 !important;
}
.instant-item-stat {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0f766e !important;
  margin-top: 6px !important;
}

/* 3. 본문 레이아웃: "박스에 박스가 연속으로 있으면 글씨가 작아짐 -> 전부 박스를 없애버려!"
   모든 외곽 카드 테두리·이중 박스·그림자를 없애고 시원한 평면(Flat) 리스트 & 구분선 구조로 전환 */
.portal-main,
.container,
main {
  max-width: 1080px !important;
  margin: 0 auto !important;
  padding: 24px 20px 0 20px !important;
  background: #faf9f5 !important;
}

.portal-section,
.interactive-panel,
.card,
.content-card,
.calc-widget-card,
.audit-box {
  background: transparent !important;
  border: none !important;
  border-bottom: 3px solid #d6d3cd !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 24px 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

.section-header {
  margin-bottom: 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid #1e293b !important;
}

.section-badge {
  display: inline-block;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #1e40af !important;
  background: #e0e7ff !important;
  border: none !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
}

.section-desc {
  font-size: 19px !important;
  color: #27272a !important;
  margin-top: 8px !important;
  line-height: 1.7 !important;
}

/* 안내 글 목록: 답답한 카드 박스를 없애고 시원한 와이드 목록형으로 표시 */
.card-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

.module-card {
  display: block !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1.5px solid #d6d3cd !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 22px 0 !important;
  margin: 0 !important;
  width: 100% !important;
  text-decoration: none !important;
  color: #18181b !important;
}

.module-card:last-child {
  border-bottom: none !important;
}

.module-card:hover {
  transform: none !important;
  background: #f1efe8 !important;
}

.card-top {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 8px !important;
}

.card-category-tag {
  font-size: 17px !important;
  font-weight: 900 !important;
  color: #1e40af !important;
  background: #e0e7ff !important;
  border: none !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
}

.tag-medical {
  color: #0f766e !important;
  background: #ccfbf1 !important;
}

.card-source-tag {
  font-size: 17px !important;
  color: #3f3f46 !important;
  font-weight: 700 !important;
}

.card-heading {
  font-size: 22.5px !important;
  font-weight: 900 !important;
  color: #18181b !important;
  line-height: 1.42 !important;
  margin-bottom: 10px !important;
}

.card-summary {
  font-size: 19px !important;
  color: #27272a !important;
  line-height: 1.72 !important;
  margin-bottom: 12px !important;
}

.card-footer-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  border-top: none !important;
  padding-top: 4px !important;
}

.card-highlight-stat {
  font-size: 18.5px !important;
  font-weight: 900 !important;
  color: #1e40af !important;
}

.card-arrow-link {
  font-size: 18.5px !important;
  font-weight: 900 !important;
  color: #0f766e !important;
}

/* 4. 계산기 영역: 이중·삼중 박스 테두리 완전 제거 (전체 가로폭 100% 사용) */
.sim-grid,
.calc-grid-layout,
.contact-cat-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 32px !important;
  width: 100% !important;
  margin-top: 16px !important;
}

.sim-box,
.contact-cat-box,
.calc-result-panel {
  background: transparent !important;
  border: none !important;
  border-top: 2px solid #94a3b8 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 22px 0 8px 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

.sim-box-title {
  font-size: 23px !important;
  font-weight: 900 !important;
  color: #18181b !important;
  margin-bottom: 16px !important;
}

.sim-form-group, .calc-field {
  margin-bottom: 18px !important;
}

label,
.sim-label,
.calc-field label {
  font-size: 19px !important;
  font-weight: 800 !important;
  color: #18181b !important;
  margin-bottom: 8px !important;
  display: block;
}

select,
input[type="text"],
input[type="number"],
input[type="search"],
input[type="email"],
textarea,
.sim-select,
.sim-input,
.calc-select,
.calc-num-input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #18181b !important;
  padding: 15px 16px !important;
  min-height: 58px !important;
  border: 2px solid #71717a !important;
  border-radius: 10px !important;
  background-color: #ffffff !important;
  line-height: 1.4 !important;
}

.sim-btn,
.calc-widget-card button {
  width: 100%;
  font-size: 20px !important;
  font-weight: 900 !important;
  min-height: 58px !important;
  padding: 15px 20px !important;
  border-radius: 10px !important;
  background: #1e40af !important;
  color: #ffffff !important;
  border: none !important;
  cursor: pointer;
}

/* 계산기 결과 영역: 답답한 박스 테두리 제거 -> 배경색만 은은하게 구분하고 전체 폭 100% 사용 */
.sim-result-card,
.sim-out {
  margin-top: 20px !important;
  padding: 20px 16px !important;
  background: #f1efe8 !important;
  border: none !important;
  border-left: 5px solid #1e40af !important;
  border-radius: 6px !important;
  font-size: 19px !important;
  color: #18181b !important;
  line-height: 1.8 !important;
  width: 100% !important;
}

.sim-result-card div,
.sim-result-card span,
.sim-out div,
.sim-out span {
  font-size: 19px !important;
  line-height: 1.78 !important;
}

.sim-result-num {
  font-size: 29px !important;
  font-weight: 900 !important;
  color: #1e40af !important;
  margin: 8px 0 !important;
  line-height: 1.3 !important;
}

.lead-box {
  background: #f1efe8 !important;
  border: none !important;
  border-left: 5px solid #0f766e !important;
  border-radius: 4px !important;
  padding: 18px 16px !important;
  margin-bottom: 20px !important;
}

/* 5. 표(Table) 디자인: PC에서는 큼직한 표, 모바일에서는 테두리 박스 없는 깔끔한 세로 구분선형 */
table,
table.comp-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-top: 16px !important;
  font-size: 18.5px !important;
}

table th,
table.comp-table th {
  background: #e4e2dd !important;
  color: #18181b !important;
  padding: 14px 16px !important;
  border-bottom: 2px solid #71717a !important;
  text-align: left !important;
  font-size: 18.5px !important;
  font-weight: 800 !important;
}

table td,
table.comp-table td {
  padding: 16px !important;
  border-bottom: 1px solid #d6d3cd !important;
  vertical-align: top !important;
  font-size: 18.5px !important;
  line-height: 1.75 !important;
  color: #18181b !important;
}

/* 6. 하단 안내 섹션 & 푸터 (푸터 위 흰색 여백 완전 0px 제거!) */
#reference-meta-section,
.trust-section {
  background: #f1efe8 !important;
  color: #18181b !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 28px 0 32px 0 !important;
  margin: 0 !important;
}

#reference-meta-section h2,
.trust-section h2 {
  color: #18181b !important;
  font-size: 22px !important;
  margin-bottom: 10px !important;
}

#reference-meta-section p,
.trust-section p,
#reference-meta-section div,
.trust-section div {
  color: #27272a !important;
  font-size: 18.5px !important;
  background: transparent !important;
  border: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.site-footer {
  background: #1e293b !important;
  color: #f8fafc !important;
  padding: 40px 20px 48px 20px !important;
  margin-top: 0 !important;
  border-top: none !important;
}

.site-footer p,
.site-footer div,
.site-footer span {
  color: #f1f5f9 !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
}

.footer-inner {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footer-top-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 16px;
}

.footer-brand-name {
  color: #ffffff !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  display: block;
  margin-bottom: 6px;
}

.footer-desc-text {
  color: #e2e8f0 !important;
  font-size: 18px !important;
  margin: 0 !important;
}

.footer-contact-box {
  background: #0f172a !important;
  border: 1px solid #475569 !important;
  padding: 14px 18px !important;
  border-radius: 10px !important;
  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}

.footer-email-link {
  color: #93c5fd !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 24px;
  border-top: 1px solid #334155 !important;
  border-bottom: 1px solid #334155 !important;
  padding: 16px 0 !important;
}

.footer-links a {
  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.footer-links a:hover {
  color: #93c5fd !important;
  text-decoration: underline !important;
}

.footer-legal-text {
  font-size: 17px !important;
  color: #cbd5e1 !important;
  line-height: 1.75 !important;
}

/* 7. 모바일 최적화 (@media max-width: 768px)
   - 모든 박스 테두리와 내부 여백을 0으로 만들어 화면 가로폭 100%에 큼직한 글씨 배치!
*/
@media (max-width: 768px) {
  html, body, p, li, dd, dt {
    font-size: 19px !important;
    line-height: 1.78 !important;
  }

  h1, .hero-title, .hero-section .hero-title {
    font-size: 26px !important;
    line-height: 1.38 !important;
  }

  h2, .section-title {
    font-size: 23px !important;
    line-height: 1.4 !important;
  }

  h3, .card-heading, .sim-box-title {
    font-size: 21.5px !important;
    line-height: 1.42 !important;
  }

  .search-bar-wrap {
    flex-direction: column;
  }

  .search-action-button {
    width: 100%;
  }

  .portal-main,
  .container,
  main {
    padding: 16px 16px 0 16px !important;
  }

  /* 모바일 표(Table): 답답한 카드 테두리 없이 위아래 구분선으로만 시원하게 표시 */
  div[style*="overflow-x"] {
    overflow-x: visible !important;
  }

  table,
  table.comp-table,
  thead,
  tbody,
  th,
  td,
  tr {
    display: block !important;
    width: 100% !important;
  }

  thead tr {
    position: absolute !important;
    top: -9999px !important;
    left: -9999px !important;
  }

  tbody tr {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #94a3b8 !important;
    border-radius: 0 !important;
    margin-bottom: 16px !important;
    padding: 14px 0 !important;
    box-shadow: none !important;
  }

  tbody td,
  table.comp-table tbody td {
    border: none !important;
    padding: 6px 0 !important;
    font-size: 19px !important;
    line-height: 1.7 !important;
    text-align: left !important;
    display: block !important;
    color: #18181b !important;
  }

  tbody td[data-label]::before {
    content: attr(data-label) " : ";
    font-size: 18px !important;
    font-weight: 900 !important;
    color: #1e40af !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    display: inline !important;
  }
}


/* 전체 안내서 보기 밑 3대 핵심 계산기 바로가기 버튼 바 */
.calc-shortcuts-wrap {
  margin-top: 16px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  width: 100% !important;
}

.calc-shortcuts-label {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #fde047 !important;
  margin-bottom: 2px !important;
}

.calc-shortcut-btn {
  width: 100% !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 10px !important;
  background: linear-gradient(135deg, #0f766e 0%, #0369a1 100%) !important;
  border: 2px solid #5eead4 !important;
  color: #ffffff !important;
  padding: 15px 18px !important;
  min-height: 56px !important;
  border-radius: 12px !important;
  font-size: 18.5px !important;
  font-weight: 900 !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  transition: transform 0.15s ease, border-color 0.15s ease !important;
}

.calc-shortcut-btn:hover {
  transform: translateY(-2px) !important;
  border-color: #fde047 !important;
  background: linear-gradient(135deg, #115e59 0%, #1e40af 100%) !important;
}

.calc-shortcut-arrow {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #fde047 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

@keyframes calcHighlightPulse {
  0% { background-color: #fef08a; }
  100% { background-color: transparent; }
}

.calc-target-highlight {
  animation: calcHighlightPulse 1.8s ease-out;
}


/* 검색창 및 버튼 가로폭 찌그러짐 버그 완전 수정 */
.search-bar-wrap {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 12px !important;
  width: 100% !important;
}

.search-input-box,
input#main-live-search.search-input-box {
  flex: 1 1 0% !important;
  width: auto !important;
  min-width: 220px !important;
  background: #ffffff !important;
  border: 2px solid #93c5fd !important;
  border-radius: 10px !important;
  padding: 16px 20px !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #18181b !important;
  min-height: 58px !important;
}

.search-action-button,
button#search-action-btn.search-action-button {
  flex: 0 0 auto !important;
  width: auto !important;
  background: #2563eb !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 0 28px !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  min-height: 58px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

.instant-close-btn,
.btn-consent {
  width: auto !important;
  flex: 0 0 auto !important;
}

@media (max-width: 768px) {
  .search-bar-wrap {
    flex-direction: column !important;
  }
  .search-input-box,
  input#main-live-search.search-input-box {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
  }
  .search-action-button,
  button#search-action-btn.search-action-button {
    width: 100% !important;
    flex: none !important;
  }
}
