/* Trademark search & status tools (loaded only on those two pages) */
.tm-tool .form-wrap .card { padding: 24px; }
.tm-tool .section-hero .btn-main,
.section-hero .tm-tool .btn-main { margin-top: 0; }
.tm-tool .form-wrap .form-group { margin-bottom: 8px; }
.tm-tool .form-floating > .form-select { padding-top: 1.625rem; }
.tm-tool .tm-submit { height: calc(3.5rem + 2px); }
.tm-tool .card i { margin-bottom: 0; }
.tm-tool [aria-busy="true"] { opacity: .75; cursor: progress; }

.tm-results.tm-loading { opacity: .5; pointer-events: none; transition: opacity .2s; }
.tm-results { scroll-margin-top: 110px; }
.tm-results > * + * { margin-top: 16px; }

.tm-summary h2 { color: #3f3c3a; }

.tm-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.tm-chip {
  background: #fff; border: 1px solid rgb(63 60 58 / 25%); border-radius: 50px;
  color: #3f3c3a; font-size: 13px; line-height: 18px; padding: 6px 12px;
}
.tm-chip:hover { border-color: #ec671f; color: #ec671f; }
.tm-chip.active { background: #ec671f; border-color: #ec671f; color: #fff; }

.tm-list { display: grid; gap: 12px; }
.tm-card .card-body { display: block; }
.tm-card-head { display: flex; align-items: center; gap: 14px; margin-bottom: 10px; }
.tm-img { flex: 0 0 64px; width: 64px; height: 64px; }
.tm-img img { width: 64px; height: 64px; object-fit: contain; border: 1px solid rgb(63 60 58 / 15%); border-radius: 8px; background: #fff; }
.tm-noimg {
  display: flex; align-items: center; justify-content: center; width: 64px; height: 64px;
  border-radius: 8px; background: #fef4ea; color: #ec671f; font-size: 26px;
}
.tm-tool .tm-noimg i { color: #ec671f; margin: 0; }
.tm-card-title h3 { color: #3f3c3a; word-break: break-word; }

.tm-badge { display: inline-block; border-radius: 6px; font-size: 12px; line-height: 14px; font-weight: 500; padding: 5px 9px; }
.tm-badge-live { background: #fad3ac; color: #3f3c3a; }
.tm-badge-reg  { background: #3f3c3a; color: #fff; }
.tm-badge-dead { background: rgb(60 63 58 / 8%); color: rgb(63 60 58 / 75%); }

.tm-meta { display: flex; flex-wrap: wrap; gap: 4px 16px; list-style: none; padding: 0; margin: 0 0 8px; font-size: 13px; color: rgb(63 60 58 / 75%); }
.tm-goods { color: #3f3c3a; }
.tm-clamp { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.tm-more { background: none; border: 0; padding: 0; margin-top: 4px; color: #0068b1; font-size: 13px; }
.tm-more:hover { color: #ec671f; }
.tm-flag { background: #fff3cd; border-radius: 6px; padding: 6px 10px; color: #664d03; }

.tm-pager { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.tm-pager .btn-main { padding: 6px 16px; font-size: 14px; }
.tm-pager .btn-main[disabled] { opacity: .45; pointer-events: none; }

.tm-upsell {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  background: #fad3ac; border-radius: 16px; padding: 20px 24px;
}
.tm-upsell .btn-main { white-space: nowrap; flex: 0 0 auto; }

.tm-meaning { background: #fef4ea; border-radius: 10px; padding: 12px 14px; font-size: 14px; }

.tm-locked { background: #fff; border: 2px dashed #ec671f; border-radius: 16px; padding: 22px 24px; }
.tm-locked .bi-lock-fill { color: #ec671f; }
.tm-locked .list-check li::before { color: #ec671f; }
.tm-locked .list-item li { margin-bottom: 8px; }
.tm-pay-msg:not(:empty) { margin-top: 12px; }

.tm-full { background: #fff; border-radius: 16px; padding: 22px 24px; border: 1px solid rgb(63 60 58 / 15%); }
.tm-table th { width: 30%; font-weight: 500; background: rgb(60 63 58 / 4%); }
.tm-table th, .tm-table td { font-size: 14px; padding: 8px 12px; }
.tm-docs { list-style: none; padding: 0; margin: 0; font-size: 14px; }
.tm-docs li { padding: 6px 0; border-bottom: 1px solid rgb(63 60 58 / 10%); }
.tm-docs li:last-child { border-bottom: 0; }

@media (max-width: 767.98px) {
  .tm-tool .form-wrap .card { padding: 16px; }
  .tm-upsell { flex-direction: column; align-items: stretch; padding: 18px; }
  .tm-upsell .btn-main { white-space: normal; }
  .tm-locked, .tm-full { padding: 16px; }
  .tm-table th { width: 38%; }
}

/* site rule colours select labels green; keep them neutral here */
.tm-tool .form-floating > .form-select ~ label { color: #727586; }
.tm-full .table-responsive { border-radius: 8px; }

/* Trademark search page: expert-report form as a sticky right column beside
   "What You Get…" through "What a Thorough Trademark Search Checks" */
.tm-apply-row { align-items: stretch; }
.section-apply.section-content { padding-top: 0; }
.section-apply .form-wrap .card { padding: 22px; }
.section-apply .form-wrap .form-group { margin-bottom: 12px; }
.section-apply .form-wrap .btn-main { margin-top: 0; }
.section-apply .tm-apply-notes li { margin-bottom: 6px !important; }
@media (min-width: 992px) {
  .section-apply { height: 100%; padding-top: 40px; }
  .tm-apply-sticky { position: sticky; top: 110px; }
}
@media (max-width: 991.98px) {
  .section-apply .form-wrap .card { padding: 16px; }
}

/* Search results: list on the left, expert-report box sticky on the right */
.tm-results-grid { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 20px; align-items: start; }
.tm-results-main > * + * { margin-top: 16px; }
.tm-results-side { position: sticky; top: 110px; }
.tm-results-side .tm-upsell { flex-direction: column; align-items: stretch; padding: 20px; }
.tm-results-side .tm-upsell .btn-main { white-space: nowrap; width: 100%; padding: 12px 8px; font-size: 15px; }
@media (max-width: 991.98px) {
  .tm-results-grid { grid-template-columns: 1fr; }
  .tm-results-side { position: static; }
}
