/* Cookie consent bar and "limited list" card. Colors and shapes follow the site (tenders-search.css / tg-* variables). */

/* ---------- cookie consent bar ---------- */
.tg-consent {
    position: fixed; left: 88px; right: 88px; bottom: 16px; margin: 0 auto; max-width: 960px; z-index: 10001;
    display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px;
    padding: 14px 18px; background: #fff; color: #35474e; font-size: 13px; line-height: 1.6;
    border: 1px solid #d3e8ea; border-radius: 12px; box-shadow: 0 6px 24px rgba(23, 63, 69, .18);
}
.tg-consent__text { flex: 1 1 280px; min-width: 0; }
.tg-consent__title { display: block; margin-bottom: 2px; color: #245f66; font-size: 14px; font-weight: 700; }
.tg-consent__text a { color: #378b95; text-decoration: underline; }
.tg-consent__actions { display: flex; gap: 8px; flex-wrap: wrap; }
.tg-consent__btn {
    display: inline-flex; align-items: center; justify-content: center; padding: 10px 24px; min-width: 96px;
    font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; border-radius: 10px; border: 1.5px solid transparent;
    transition: background .2s, border-color .2s, color .2s;
}
.tg-consent__btn--accept { background: #f5833d; border-color: #f5833d; color: #fff; }
.tg-consent__btn--accept:hover { background: #d96b2c; border-color: #d96b2c; }
.tg-consent__btn--reject { background: #fff; border-color: #378b95; color: #245f66; }
.tg-consent__btn--reject:hover { background: #eef7f8; }
.tg-consent__btn:focus-visible { outline: 2px solid #378b95; outline-offset: 2px; }

/* ---------- list notices: sign in / subscription / search tools (sit inside the existing load-more panel) ---------- */
.tg-limit {
    max-width: 560px; margin: 14px auto 0; padding: 18px 20px; text-align: center;
    background: #fff; border: 1px solid #d3e8ea; border-top: 3px solid #378b95; border-radius: 12px;
    color: #35474e; font-size: 13px; line-height: 1.7; box-shadow: 0 2px 10px rgba(23, 63, 69, .06);
}
.tg-limit--tools { border-top-color: #f5833d; }
.tg-limit__title { display: block; margin-bottom: 2px; color: #245f66; font-size: 16px; font-weight: 700; }
.tg-limit__text { margin: 0 0 14px; color: #4a5c63; }
.tg-limit__actions { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
.tg-limit__btn {
    display: inline-flex; align-items: center; justify-content: center; padding: 10px 22px; min-height: 40px;
    font: inherit; font-size: 13px; font-weight: 700; line-height: 1.3; text-decoration: none; cursor: pointer;
    border-radius: 10px; border: 1.5px solid transparent; transition: background .2s, border-color .2s, color .2s;
}
.tg-limit__btn--primary { background: #f5833d; border-color: #f5833d; color: #fff; }
.tg-limit__btn--primary:hover { background: #d96b2c; border-color: #d96b2c; color: #fff; }
.tg-limit__btn--secondary { background: #fff; border-color: #378b95; color: #245f66; }
.tg-limit__btn--secondary:hover { background: #eef7f8; color: #245f66; }
.tg-limit__btn--link { background: transparent; border-color: transparent; color: #378b95; text-decoration: underline; }
.tg-limit__btn--link:hover { color: #245f66; }
.tg-limit__btn:focus-visible, .tg-limit__opt:focus-visible { outline: 2px solid #378b95; outline-offset: 2px; }

.tg-limit__opts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 16px; text-align: start; }
.tg-limit__opt {
    display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; font: inherit; text-align: start; cursor: pointer;
    background: #eef7f8; border: 1px solid #d3e8ea; border-radius: 10px; color: #35474e; transition: background .2s, border-color .2s;
}
.tg-limit__opt:hover { background: #e2f1f3; border-color: #378b95; }
.tg-limit__opt-title { color: #245f66; font-size: 13px; font-weight: 700; }
.tg-limit__opt-title .fas { margin-inline-end: 8px; color: #378b95; font-size: 13px; }
.tg-limit__opt-desc { font-size: 12px; line-height: 1.5; color: #5a6c73; }
.tg-limit__status { margin: 12px 0 0; padding-top: 10px; border-top: 1px dashed #d3e8ea; color: #5a6c73; font-size: 12px; }

/* genuine empty / end of results */
.tg-empty-action { margin-top: 14px; display: flex; justify-content: center; }
.tg-list-end { max-width: 560px; margin: 14px auto 0; text-align: center; color: #5a6c73; font-size: 13px; }
.tg-list-end .fa { color: #378b95; margin-inline-end: 4px; }
.ts-empty-tips, .bl-empty-state ul, .sl-empty-state ul { display: none !important; }

@media (max-width: 575px) {
    .tg-limit { padding: 16px 14px; }
    .tg-limit__opts { grid-template-columns: 1fr; }
    .tg-limit__actions .tg-limit__btn { flex: 1 1 100%; }
}

@media (max-width: 575px) {
    .tg-consent { left: 8px; right: 8px; bottom: 76px; padding: 12px 14px; }
    .tg-consent__actions { width: 100%; }
    .tg-consent__btn { flex: 1 1 0; }
}

/* the site's global button rules (fixed height / line-height) must not squeeze these controls */
body .tg-limit__btn, body .tg-limit__opt { height: auto; line-height: 1.4; white-space: normal; text-overflow: clip; overflow: visible; }
body .tg-limit__opt span { white-space: normal; overflow-wrap: anywhere; }
body .tg-limit__btn { min-height: 40px; }
