/* Truelysell Offers UI — matches the theme (Bootstrap 5 + var(--ts_primary_color), Tabler icons). */
.offers-wrap { --offer-accent: var(--ts_primary_color, #0d6efd); }

/* ---- Section header ---- */
.offers-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1.4rem; }
.offers-head h2 { font-size:1.4rem; font-weight:700; margin:0; line-height:1.2; }
.offers-head .offers-count { font-size:.9rem; color:#6b7280; font-weight:500; }

/* ---- Responsive filter bar ---- */
.offers-filter { display:flex; flex-wrap:wrap; gap:.75rem; align-items:flex-end;
  background:#fff; border:1px solid #e9edf2; border-radius:14px; padding:1rem 1.15rem; margin-bottom:1.5rem; }
.offers-filter .field { flex:1 1 170px; min-width:140px; display:flex; flex-direction:column; gap:.3rem; }
.offers-filter label { font-size:.74rem; font-weight:700; letter-spacing:.02em; color:#6b7280; text-transform:uppercase; }
.offers-filter input, .offers-filter select { width:100%; border:1px solid #dce1e7; border-radius:9px;
  padding:.6rem .8rem; font-size:.92rem; color:#1f2937; background:#fff; }
.offers-filter input:focus, .offers-filter select:focus { outline:none; border-color:var(--offer-accent);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--offer-accent) 18%, transparent); }
.offers-filter .filter-submit { flex:0 0 auto; }
.offers-filter .filter-submit .btn { white-space:nowrap; }

/* ---- Card grid (segregates each offer) ---- */
.offers-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(290px, 1fr)); gap:1.25rem; }
.offers-archive-list .offers-grid--list { display:flex; flex-wrap:wrap; gap:0; }

/* ---- Full-width job card (browse offers) ---- */
.offer-job-card { background:#fff; border:1px solid #e6e9ef; border-radius:10px; box-shadow:0 3px 8px rgba(15,23,42,.08); overflow:hidden; transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.offer-job-card:hover { border-color:color-mix(in srgb, var(--offer-accent) 35%, #e6e9ef); box-shadow:0 6px 8px rgba(15,23,42,.10); transform:translateY(-2px); }
.offer-job-card .card-body { padding:1.25rem; }
.offer-job-card__top { border-color:#e6e9ef !important; margin:-1.25rem -1.25rem 1.25rem; padding:1.25rem; background:linear-gradient(135deg, color-mix(in srgb, var(--offer-accent) 9%, #fff) 0%, #fff 58%, #f5fbf8 100%); }
.offer-job-card__thumb-link { display:inline-flex; flex:0 0 auto; }
.offer-job-card .job-thumbnail { width:70px; height:70px; object-fit:cover; display:block; border:3px solid #fff; box-shadow:0 2px 8px rgba(15,23,42,.12); }
.offer-job-card__title { margin:0; line-height:1.35; }
.offer-job-card__title a { color:#111827; text-decoration:none; }
.offer-job-card__title a:hover { color:var(--offer-accent); }
.offer-job-card__byline { color:#667085 !important; }
.offer-job-card__byline .badge.bg-success { background:#00a650 !important; color:#fff; }
.offer-job-card__badges .badge { display:inline-flex; align-items:center; min-height:22px; border-radius:5px; padding:.28rem .55rem; font-size:.78rem; font-weight:700; }
.offer-job-card__badges .badge-info { background:#5625e8; color:#fff; }
.offer-job-card__badges .badge-danger { background:#e70d0d; color:#fff; }
.offer-job-card__badges .offer-priority-badge.is-urgent { background:#e70d0d; color:#fff; }
.offer-job-card__badges .offer-priority-badge.is-medium { background:#ffbc35; color:#111827; }
.offer-job-card__badges .offer-priority-badge.is-low { background:#0dcaf0; color:#062b35; }
.offer-job-card__excerpt { color:#475467; line-height:1.6; }
.offer-job-card__meta { color:#1f2937; }
.offer-job-card__meta span { padding:.18rem .45rem; background:#f7f8fb; border-radius:6px; }
.offer-job-card__meta i { color:var(--offer-accent) !important; }
.offer-job-card__tags .tag-pill { background:#fff; border-color:#dfe3ea !important; line-height:1.35; transition:border-color .2s ease, background-color .2s ease; }
.offer-job-card__tags .tag-pill:nth-child(3n+1) { background:#f5f0ff; border-color:#decfff !important; color:#3f1d99 !important; }
.offer-job-card__tags .tag-pill:nth-child(3n+2) { background:#effaf4; border-color:#c8efd8 !important; color:#126c3a !important; }
.offer-job-card__tags .tag-pill:nth-child(3n+3) { background:#fff7e8; border-color:#ffe0a8 !important; color:#8a5700 !important; }
.offer-job-card__notice { border-radius:7px; }
.offer-job-card__notice.is-open { background:#d2f5df; color:#007a3d; }
.offer-job-card__notice.is-closed { background:#f1f3f5; color:#667085; }
.offer-job-card__actions .btn { min-height:34px; border-color:#dfe3ea !important; border-radius:7px; color:#111827; background:#fff; }
.offer-job-card__actions .provide-apply-btn { font-weight:600; background:var(--offer-accent); color:#fff; }
.offer-primary-border { border:1px solid var(--offer-accent) !important; }
.offer-job-card__actions .provide-apply-btn:hover,
.offer-job-card__actions .provide-apply-btn:focus { background:#111827; border-color:color-mix(in srgb, #111827 80%, var(--offer-accent)) !important; color:#fff; }
.offer-job-card__actions .provide-apply-btn.is-applied,
.offer-job-card__actions .provide-apply-btn:disabled { background:#fdecec !important; border-color:#dc3545 !important; color:#dc3545 !important; opacity:1; cursor:not-allowed; }
.offer-job-card__actions .provide-action-btn { flex:0 0 40px; width:40px; padding:11px !important; display:inline-flex; align-items:center; justify-content:center; }
.offer-job-card__actions .btn:hover:not(.provide-apply-btn) { border-color:var(--offer-accent) !important; color:var(--offer-accent); }
.offer-share-wrap { position:relative; flex:0 0 40px; }
.offer-share-menu { position:absolute; right:0; bottom:calc(100% + .5rem); z-index:30; width:180px; padding:.35rem; border:1px solid #e6e9ef; border-radius:8px; background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.14); }
.offer-share-menu__item { display:flex; align-items:center; gap:.55rem; padding:.55rem .65rem; border-radius:6px; color:#1f2937; font-size:.88rem; font-weight:600; text-decoration:none; }
.offer-share-menu__item:hover { background:color-mix(in srgb, var(--offer-accent) 10%, #fff); color:var(--offer-accent); }
.offer-share-menu__item i { font-size:1rem; }
.offer-share-menu__item.is-facebook i { color:#1877f2; }
.offer-share-menu__item.is-x i { color:#111827; }
.offer-share-menu__item.is-linkedin i { color:#0a66c2; }
.offer-share-menu__item.is-whatsapp i { color:#16a34a; }
.offer-share-menu__item.is-email i { color:#f00075; }
.offers-grid .offer-card-shell.is-apply-hidden { display:none !important; }
.offers-grid .offer-card-shell.is-applying { flex:0 0 100%; max-width:100%; width:100%; }
.offer-card-shell.is-applying .offer-job-card { border-color:#e2e8f0; box-shadow:0 8px 18px rgba(15,23,42,.08); transform:none; }
.offer-card-shell.is-applying .offer-job-card__preview { display:none; }
.offer-inline-apply-panel { color:#0f172a; }
.offer-apply-back { display:inline-flex; align-items:center; gap:.35rem; border:0; background:transparent; color:#0f172a; font-weight:600; padding:0; margin:0 0 1rem; cursor:pointer; }
.offer-apply-back:hover { color:var(--offer-accent); }
.offer-apply-layout { display:grid; grid-template-columns:minmax(300px, .9fr) minmax(420px, 1.25fr); gap:1.5rem; align-items:start; }
.offer-apply-summary,
.offer-apply-form-card,
.offer-apply-tips { background:#fff; border:1px solid #e6e9ef; border-radius:8px; box-shadow:0 3px 8px rgba(15,23,42,.06); }
.offer-apply-summary h3,
.offer-apply-form-card h3,
.offer-apply-tips h3 { font-size:1.25rem; font-weight:700; margin:0; padding:1rem 1.25rem; border-bottom:1px solid #e6e9ef; color:#0f172a; }
.offer-apply-summary { overflow:hidden; }
.offer-apply-summary__job { display:flex; gap:1rem; align-items:center; padding:1.25rem; border-bottom:1px solid #e6e9ef; }
.offer-apply-summary__thumb { width:72px; height:72px; object-fit:cover; border-radius:8px; flex:0 0 auto; }
.offer-apply-summary__job h4 { font-size:1.05rem; font-weight:700; margin:0 0 .6rem; color:#0f172a; }
.offer-apply-summary__badges { display:flex; flex-wrap:wrap; gap:.4rem; }
.offer-apply-summary__badges .badge { display:inline-flex; align-items:center; min-height:22px; border-radius:5px; padding:.28rem .55rem; font-size:.78rem; font-weight:700; }
.offer-apply-summary__badges .badge-info { background:#5625e8; color:#fff; }
.offer-apply-summary__badges .offer-priority-badge.is-urgent { background:#e70d0d; color:#fff; }
.offer-apply-summary__badges .offer-priority-badge.is-medium { background:#ffbc35; color:#111827; }
.offer-apply-summary__badges .offer-priority-badge.is-low { background:#0dcaf0; color:#062b35; }
.offer-apply-summary__section { padding:1.25rem; border-bottom:1px solid #e6e9ef; }
.offer-apply-summary__section h4 { font-size:1rem; font-weight:700; margin:0 0 .9rem; color:#0f172a; }
.offer-apply-summary__section p { margin:0; color:#475467; line-height:1.6; }
.offer-apply-client { display:flex; align-items:center; gap:.75rem; }
.offer-apply-client__avatar { width:48px; height:48px; border-radius:50%; object-fit:cover; }
.offer-apply-client strong { display:block; font-size:.92rem; color:#0f172a; }
.offer-apply-client span:not(.badge) { display:block; font-size:.86rem; color:#475467; margin-top:.2rem; }
.offer-apply-summary__facts { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:1rem; padding:1.25rem; border-bottom:1px solid #e6e9ef; }
.offer-apply-summary__facts span,
.offer-apply-summary__stats span { display:block; color:#475467; font-size:.84rem; margin-bottom:.3rem; }
.offer-apply-summary__facts strong { display:flex; align-items:center; gap:.35rem; min-width:0; color:#1f2937; font-size:.9rem; font-weight:600; word-break:break-word; }
.offer-apply-summary__facts i { color:var(--offer-accent); }
.offer-apply-summary__skills { display:flex; flex-wrap:wrap; gap:.45rem; }
.offer-apply-summary__skills span { border:1px solid #dfe3ea; border-radius:5px; padding:.35rem .55rem; font-size:.84rem; color:#0f172a; background:#fff; }
.offer-apply-summary__stats { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:1rem; padding:1.25rem; }
.offer-apply-summary__stats > div { border:1px solid #e6e9ef; border-radius:8px; padding:.75rem; }
.offer-apply-summary__stats strong { display:block; font-size:1rem; color:#0f172a; }
.offer-apply-form-card { overflow:hidden; }
.offer-proposal-form { padding:1.25rem; }
.offer-proposal-form label { display:flex; flex-direction:column; gap:.45rem; margin:0 0 1rem; font-size:.9rem; font-weight:700; color:#0f172a; }
.offer-proposal-form label em { color:#f00075; font-style:normal; }
.offer-proposal-form input,
.offer-proposal-form textarea { width:100%; border:1px solid #dfe3ea; border-radius:5px; background:#fff; color:#111827; font-size:.92rem; padding:.7rem .85rem; }
.offer-proposal-form textarea { min-height:126px; resize:vertical; line-height:1.55; }
.offer-proposal-form input:focus,
.offer-proposal-form textarea:focus { outline:none; border-color:var(--offer-accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--offer-accent) 15%, transparent); }
.offer-apply-tip,
.offer-proposal-confirm { color:#475467; font-size:.88rem; margin:-.45rem 0 1rem; line-height:1.5; }
.offer-proposal-form__row { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:1.25rem; }
.offer-proposal-total { border:1px solid #e6e9ef; border-radius:8px; padding:1rem; margin:0 0 1.25rem; background:#fbfcfe; }
.offer-proposal-total div { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.35rem 0; color:#475467; }
.offer-proposal-total strong { color:#0f172a; font-weight:700; }
.offer-proposal-total .is-total { border-top:1px solid #e6e9ef; margin-top:.45rem; padding-top:.85rem; }
.offer-proposal-total .is-total span,
.offer-proposal-total .is-total strong { font-size:1.1rem; color:#0f172a; }
.offer-proposal-agreement { display:grid !important; grid-template-columns:auto 1fr; align-items:flex-start; gap:.6rem !important; font-weight:600 !important; margin-bottom:.55rem !important; }
.offer-proposal-agreement input { width:15px; height:15px; margin:.2rem 0 0; padding:0; }
.offer-proposal-agreement a { color:#f00075; text-decoration:none; }
.offer-proposal-actions { display:flex; align-items:center; justify-content:space-between; gap:.75rem; flex-wrap:wrap; border-top:1px solid #e6e9ef; margin-top:1.25rem; padding-top:1.25rem; }
.offer-proposal-actions .btn-primary { background:#f00075; border-color:#f00075; color:#fff; }
.offer-proposal-preview-box { white-space:pre-wrap; margin-top:1rem; padding:1rem; border:1px solid #e6e9ef; border-radius:8px; background:#f8fafc; color:#334155; line-height:1.55; }
.offer-apply-form-card .offer-request-result { margin:.9rem 1.25rem 1.25rem; color:#0f766e; font-weight:700; }
.offer-inline-apply-panel__note { margin:1.25rem; color:#475467; font-weight:500; }
.offer-apply-tips { grid-column:2; }
.offer-apply-tips ul { list-style:none; margin:0; padding:1.25rem; }
.offer-apply-tips li { position:relative; padding:.35rem 0 .35rem 1rem; color:#475467; line-height:1.5; }
.offer-apply-tips li::before { content:""; position:absolute; left:0; top:.62rem; width:3px; height:1rem; border-radius:999px; background:#00c853; }

/* ---- Offer card ---- */
.offer-card { display:flex; flex-direction:column; background:#fff; border:1px solid #e9edf2; border-radius:16px;
  padding:1.25rem; transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.offer-card:hover { box-shadow:0 14px 30px rgba(16,24,40,.10);
  transform:translateY(-3px); border-color:color-mix(in srgb, var(--offer-accent) 40%, #e9edf2); }
.offer-card__media { margin:-1.25rem -1.25rem .9rem; border-radius:16px 16px 0 0; overflow:hidden; line-height:0; }
.offer-card__media img { width:100%; height:170px; object-fit:cover; display:block; }
.offer-detail__media { margin:0 0 1.1rem; border-radius:14px; overflow:hidden; max-width:520px; line-height:0; }
.offer-detail__media img { width:100%; height:auto; display:block; }
.offer-editor-field { margin:0 0 1rem; }
.offer-editor-field > label { display:block; font-weight:600; margin-bottom:.45rem; }
.offer-current-images { display:flex; flex-wrap:wrap; gap:.5rem; margin:.4rem 0 1rem; }
.offer-current-images img { width:82px; height:82px; object-fit:cover; border-radius:10px; }
.offer-gallery-slider { max-width:720px; margin:0 0 1.25rem; }
.offer-gallery-slider__track { position:relative; overflow:hidden; border-radius:14px; background:#f3f4f6; aspect-ratio:16 / 9; }
.offer-gallery-slider__slide { display:none; width:100%; height:100%; }
.offer-gallery-slider__slide.is-active { display:block; }
.offer-gallery-slider__slide img { width:100%; height:100%; object-fit:cover; display:block; }
.offer-gallery-slider__dots { display:flex; gap:.45rem; justify-content:center; margin-top:.7rem; }
.offer-gallery-slider__dots button { width:10px; height:10px; border-radius:50%; border:0; padding:0; background:#cbd5e1; cursor:pointer; }
.offer-gallery-slider__dots button.is-active { background:var(--offer-accent); }
.offer-card__head { display:flex; align-items:center; gap:.8rem; margin-bottom:.85rem; }
.offer-cat-icon { flex:0 0 auto; width:48px; height:48px; border-radius:13px; display:grid; place-items:center;
  font-size:1.4rem; line-height:1; color:var(--offer-accent); background:color-mix(in srgb, var(--offer-accent) 12%, #fff); }
.offer-cat-icon img { width:26px; height:26px; object-fit:contain; }
.offer-card__titles { min-width:0; }
.offer-card__cat { display:block; font-size:.76rem; font-weight:600; color:var(--offer-accent); text-transform:uppercase; letter-spacing:.03em; }
.offer-card__title { font-size:1.05rem; font-weight:700; line-height:1.3; margin:.1rem 0 0; }
.offer-card__title a { color:#111827; text-decoration:none; }
.offer-card__title a:hover { color:var(--offer-accent); }
.offer-card__meta { list-style:none; margin:0 0 1rem; padding:0; display:flex; flex-wrap:wrap; gap:.45rem .9rem; }
.offer-card__meta li { display:inline-flex; align-items:center; gap:.35rem; font-size:.85rem; color:#4b5563; }
.offer-card__meta i { color:var(--offer-accent); font-size:1rem; }
.offer-card__meta .offer-budget { font-weight:700; color:#0f172a; }
.offer-card__excerpt { font-size:.9rem; color:#4b5563; line-height:1.55; margin:0 0 1.15rem; }
.offer-card__foot { margin-top:auto; }

/* My-offers row variant (title + status + action) */
.offer-card--row .offer-card__foot { margin-top:.4rem; display:flex; gap:.6rem; flex-wrap:wrap; }
.offer-card.is-selected,
.job-booking-card.is-selected,
.offer-dashboard-item.is-selected .card,
.job-booking-item.is-selected .card,
.offer-request-item.is-selected .card { border-color:color-mix(in srgb, var(--offer-accent) 45%, #e9edf2); box-shadow:0 10px 24px rgba(16,24,40,.10); }
.truelysell-offers-html-ui { --primary: var(--ts_primary_color, #6259ca); }
.truelysell-offers-html-ui .card { border:1px solid #EBECED; border-radius:10px; box-shadow:none; }
.truelysell-offers-html-ui .card-header { background:transparent; border-bottom:1px solid #EBECED; }
.truelysell-offers-html-ui .btn-link-html { appearance:none; background:transparent; border:0; padding:0; color:#242B3A; text-align:left; cursor:pointer; }
.truelysell-offers-html-ui .btn-link-html:hover { color:var(--primary); }
.truelysell-offers-html-ui .btn-icon-md { width:42px; min-width:42px; min-height:42px; display:inline-flex; align-items:center; justify-content:center; padding:.5rem; }
.truelysell-offers-html-ui .avatar img { height:100%; object-fit:cover; }
.truelysell-offers-html-ui .offer-detail-thumb { width:84px; height:84px; object-fit:cover; }
.truelysell-offers-html-ui .offer-detail-copy { color:#475467; }
.truelysell-offers-html-ui .offer-detail-back { color:#242B3A; display:inline-flex; align-items:center; gap:.35rem; }
.truelysell-offers-html-ui .custom-tab { padding:8px; border-radius:10px; gap:0; }
.truelysell-offers-html-ui .custom-tab .nav-link { border:0; border-radius:10px; color:#242B3A; font-size:14px; padding:6px 12px; }
.truelysell-offers-html-ui .custom-tab .nav-link.active,
.truelysell-offers-html-ui .custom-tab .nav-link:hover { background:#fff; color:#242B3A; }
.truelysell-offers-html-ui .search-input-method { position:relative; min-width:280px; height:38px; border:1px solid #EBECED; border-radius:6px; background:#fff; }
.truelysell-offers-html-ui .search-input-method .form-control { height:100%; border:0; background:transparent; box-shadow:none; padding-left:36px; }
.truelysell-offers-html-ui .search-input-method .icon { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:#6B7280; pointer-events:none; }
.truelysell-offers-html-ui .job-card-content { border:1px solid #EBECED; border-radius:10px; overflow:hidden; }
.truelysell-offers-html-ui .job-card-content .item { padding:14px 10px; }
.truelysell-offers-html-ui .job-card-content .center { border-left:1px solid #EBECED; border-right:1px solid #EBECED; }
.truelysell-offers-html-ui .btn-outline-white { border:1px solid #EBECED; background:#fff; color:#242B3A; }
.truelysell-offers-html-ui .btn-outline-white:hover { border-color:var(--primary); background:var(--primary); color:#fff; }
.truelysell-offers-html-ui .avatar.avatar-xxl { width:5rem; height:5rem; line-height:5rem; flex:0 0 5rem; }
.truelysell-offers-html-ui .badge-soft-purple { background:rgba(171,71,188,.1); color:#AB47BC; }
.truelysell-offers-html-ui .bg-transparent-info { background:#F0EBFD; }
.truelysell-offers-html-ui .bg-transparent-purple { background:rgba(171,71,188,.1); }
.truelysell-offers-html-ui .text-purple { color:#AB47BC !important; }
.notification-media .avatar img,
.noti-content .avatar img { width:40px; height:40px; object-fit:cover; }

/* ---- Inline dashboard details ---- */
.offer-dashboard-detail,
.job-booking-detail,
.offer-request-detail { margin-top:1.5rem; scroll-margin-top:110px; }
.offer-dashboard-detail.is-loading,
.job-booking-detail.is-loading,
.offer-request-detail.is-loading { opacity:.72; }
.offer-inline-detail { background:#fff; border:1px solid #e9edf2; border-radius:16px; padding:1.35rem; }
.offer-inline-detail__head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; border-bottom:1px solid #edf0f4; padding-bottom:1rem; margin-bottom:1rem; }
.offer-inline-detail__head h3 { font-size:1.25rem; font-weight:700; margin:.15rem 0 0; color:#111827; }
.offer-inline-detail__head h4,
.offer-inline-detail h4 { font-size:1rem; font-weight:700; margin:0 0 .75rem; color:#111827; }
.offer-inline-detail__body { display:grid; grid-template-columns:minmax(0, 1fr) minmax(240px, 320px); gap:1.25rem; }
.offer-inline-detail__description { color:#475467; line-height:1.65; }
.offer-inline-detail__description p:last-child { margin-bottom:0; }
.offer-detail-list { list-style:none; margin:0; padding:0; display:grid; gap:.65rem; }
.offer-detail-list li { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:.65rem .75rem; background:#f8f9fb; border-radius:10px; }
.offer-detail-list span { color:#667085; font-size:.84rem; }
.offer-detail-list strong { color:#111827; font-size:.9rem; text-align:right; }
.offer-detail-list--wide { grid-template-columns:repeat(2, minmax(0, 1fr)); }
.offer-inline-detail__skills { margin-top:1.1rem; padding:1rem; border-radius:12px; background:#f8f9fb; }
.offer-inline-detail__skills p { margin:0; color:#475467; }
.offer-inline-detail__proposals { margin-top:1.35rem; }
.offer-proposal-list { display:grid; gap:1rem; }
.offer-proposal-card__provider { display:flex; align-items:center; gap:.75rem; min-width:0; }
.offer-proposal-card__provider img { width:48px; height:48px; border-radius:50%; object-fit:cover; }
.offer-proposal-card__provider p { margin:.15rem 0 0; color:#667085; font-size:.86rem; }

/* ---- Customer job bookings ---- */
.job-booking-list { display:grid; gap:1rem; }
.job-booking-card { display:flex; gap:1rem; background:#fff; border:1px solid #e9edf2; border-radius:16px; padding:1rem; transition:box-shadow .25s ease, border-color .25s ease; }
.job-booking-card__media { flex:0 0 86px; width:86px; height:86px; border-radius:12px; overflow:hidden; background:color-mix(in srgb, var(--offer-accent) 12%, #fff); display:grid; place-items:center; color:var(--offer-accent); font-size:1.6rem; }
.job-booking-card__media img { width:100%; height:100%; object-fit:cover; display:block; }
.job-booking-card__body { flex:1 1 auto; min-width:0; }
.job-booking-card__top { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; margin-bottom:.75rem; }
.job-booking-card h3 { font-size:1.05rem; font-weight:700; margin:0; color:#111827; }
.job-booking-card p { margin:.2rem 0 0; color:#667085; font-size:.9rem; }

/* ---- Status badges ---- */
.offer-status { display:inline-flex; align-items:center; gap:.3rem; font-size:.72rem; font-weight:700;
  padding:.3rem .65rem; border-radius:999px; text-transform:capitalize; white-space:nowrap; }
.offer-status.is-waiting   { background:#fff4e0; color:#9a6700; }
.offer-status.is-confirmed { background:#e7f6ec; color:#11814b; }
.offer-status.is-completed { background:#e7eefc; color:#1c4fcb; }
.offer-status.is-cancelled,
.offer-status.is-closed    { background:#f1f3f5; color:#6b7280; }
.offer-status.is-open      { background:#e7f6ec; color:#11814b; }
.offer-card__head .offer-status { margin-left:auto; flex:0 0 auto; align-self:flex-start; }
.offer-card__titles { flex:1 1 auto; }

/* ---- Request card (customer & provider) ---- */
.offer-request-card { background:#fff; border:1px solid #e9edf2; border-radius:16px; padding:1.3rem 1.4rem; }
.offer-request-card + .offer-request-card { margin-top:1rem; }
.offer-request-card__head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.offer-request-card__head h4 { font-size:1.08rem; font-weight:700; margin:0; }
.offer-request-card .party { font-size:.9rem; color:#374151; margin:.55rem 0; }
.offer-request-card .party strong { color:#111827; }
.offer-request-card .meta-row { display:flex; flex-wrap:wrap; gap:.4rem 1.1rem; margin:.45rem 0 .8rem; font-size:.88rem; color:#4b5563; }
.offer-request-card .meta-row span { display:inline-flex; align-items:center; gap:.35rem; }
.offer-request-card .meta-row i { color:var(--offer-accent); }
.offer-request-card .msg { background:#f8f9fb; border-radius:10px; padding:.7rem .9rem; font-size:.9rem; color:#374151; margin:.2rem 0 1rem; }
.offer-request-card .contact { font-size:.88rem; color:#374151; margin:.2rem 0 1rem; }
.offer-request-card .contact em { color:#9aa3af; }
.offer-request-card .actions { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:.4rem; }
.offer-request-result { display:none; }
.offer-request-result:not(:empty) { display:block; }
.offers-pagination { margin-top:1.5rem; }
.offers-pagination ul { display:flex; flex-wrap:wrap; gap:.35rem; list-style:none; padding:0; margin:0; }

/* ---- Customer offer requests screenshot layout ---- */
.offer-customer-requests { color:#0f172a; }
.offer-customer-requests__toolbar .input-group-text,
.offer-customer-requests__toolbar .form-control,
.offer-customer-requests__toolbar .form-select { min-height:40px; border-color:#e2e8f0; color:#0f172a; font-size:.92rem; }
.offer-customer-requests__toolbar .input-group-text { color:#64748b; }
.offer-customer-requests__toolbar .form-control:focus,
.offer-customer-requests__toolbar .form-select:focus { border-color:var(--offer-accent); box-shadow:0 0 0 .2rem color-mix(in srgb, var(--offer-accent) 14%, transparent); }
.offer-request-tabs { display:inline-flex; flex-wrap:wrap; gap:.35rem; padding:.35rem; border-radius:9px; background:#eef0f4; }
.offer-request-tabs .nav-link { border:0; border-radius:8px; color:#0f172a; font-weight:600; padding:.45rem .85rem; line-height:1.2; }
.offer-request-tabs .nav-link.active,
.offer-request-tabs .nav-link:hover { background:#fff; color:#0f172a; box-shadow:0 1px 2px rgba(15,23,42,.08); margin-left: 5px; }
.offer-request-approval { border:1px solid #e6e9ef; border-radius:3px; background:#fff; padding:1rem 1.1rem; }
.offer-request-approval i { color:#0f172a; font-size:1.1rem; }
.offer-request-approval h3 { margin:0 0 .25rem; font-size:.98rem; font-weight:700; color:#0f172a; }
.offer-request-approval p { margin:0; color:#475467; font-size:.92rem; }
.offer-request-approval .btn { min-width:120px; min-height:42px; border-radius:5px; font-weight:700; }
.offer-request-job-card { height:100%; background:#fff; border:1px solid #e6e9ef; border-radius:10px; box-shadow:0 3px 10px rgba(15,23,42,.08); padding:1.25rem; }
.offer-request-job-card__head { display:flex; gap:1rem; align-items:flex-start; padding-bottom:1.05rem; border-bottom:1px solid #e6e9ef; }
.offer-request-job-card__thumb { width:80px; height:80px; border-radius:5px; object-fit:cover; flex:0 0 auto; }
.offer-request-job-card__id { display:inline-block; color:#0b2c8f; font-weight:700; font-size:.92rem; margin-bottom:.3rem; text-decoration:none; }
.offer-request-job-card h3 { margin:0 0 .55rem; font-size:1.16rem; font-weight:700; color:#0f172a; line-height:1.25; }
.offer-request-state,
.offer-request-payment { display:inline-flex; align-items:center; gap:.4rem; border-radius:5px; padding:.28rem .55rem; font-size:.78rem; font-weight:700; line-height:1; }
.offer-request-state i,
.offer-request-payment i { font-size:.42rem; margin-right:.25rem; }
.offer-request-state.is-waiting,
.offer-request-payment.is-waiting,
.offer-request-payment.is-confirmed { background:#f7e9fb; color:#ad3cc4; }
.offer-request-state.is-confirmed { background:#e6f4ff; color:#0b78c7; }
.offer-request-state.is-completed,
.offer-request-payment.is-completed { background:#dcfce7; color:#00a650; }
.offer-request-state.is-cancelled,
.offer-request-state.is-withdrawn,
.offer-request-payment.is-cancelled,
.offer-request-payment.is-withdrawn { background:#fee2e2; color:#dc2626; }
.offer-request-provider { display:flex; align-items:center; gap:.75rem; margin:1.1rem 0 1.6rem; }
.offer-request-provider__avatar { width:42px; height:42px; border-radius:50%; background:#eef0f4; color:#0f172a; display:inline-flex; align-items:center; justify-content:center; font-weight:700; flex:0 0 auto; }
.offer-request-provider strong { display:block; color:#0f172a; font-size:.95rem; margin-bottom:.15rem; }
.offer-request-provider span:not(.offer-request-provider__avatar) { display:block; color:#475467; font-size:.9rem; }
.offer-request-job-card__meta { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:1rem; margin-bottom:1.4rem; }
.offer-request-job-card__meta span { display:block; color:#475467; font-size:.84rem; margin-bottom:.25rem; }
.offer-request-job-card__meta strong { display:block; color:#0f172a; font-size:.9rem; font-weight:600; }
.offer-request-job-card__meta .is-amount { color:#3014d9; font-weight:700; }
.offer-request-job-card > .btn { min-height:38px; border-color:#dfe3ea !important; border-radius:5px; color:#0f172a; font-weight:600; }
.offer-request-job-card > .btn:hover { border-color:var(--offer-accent) !important; color:var(--offer-accent); }
.offer-requests-list.is-request-detail-mode .offer-customer-requests__toolbar,
.offer-requests-list.is-request-detail-mode .offer-request-tabs,
.offer-requests-list.is-request-detail-mode .offer-request-approval,
.offer-requests-list.is-request-detail-mode [data-customer-request-grid],
.offer-requests-list.is-request-detail-mode .offers-pagination { display:none !important; }
.offer-requests-list.is-request-detail-mode .offer-request-detail { margin-top:0; }

/* ---- My offers active jobs layout ---- */
.my-offers-list { color:#0f172a; }
.offer-dashboard-head h4 { color:#0f172a; font-size:1.35rem; font-weight:800; }
.offer-add-job-btn { min-height:42px; border-radius:5px !important; background:#f00075; border-color:#f00075; color:#fff; font-weight:700; padding:.6rem 1.1rem; }
.offer-add-job-btn:hover { background:#d80069; border-color:#d80069; color:#fff; }
.offer-dashboard-toolbar { align-items:flex-start; }
.offer-job-tabs { display:inline-flex; flex-wrap:wrap; gap:.35rem; padding:.35rem; border-radius:10px; background:#eef0f4; }
.offer-job-tabs .nav-link { border:0; border-radius:8px; color:#0f172a; font-weight:600; padding:.45rem .85rem; line-height:1.2; background:transparent; }
.offer-job-tabs .nav-link.active,
.offer-job-tabs .nav-link:hover { background:#fff; color:#0f172a; box-shadow:0 1px 2px rgba(15,23,42,.08); }
.offer-dashboard-controls { flex:1 0 100%; width:100%; margin-left:0; justify-content:space-between !important; }
.offer-dashboard-search { flex:0 1 300px; min-width:220px; width:auto; }
.offer-dashboard-search .input-group-text,
.offer-dashboard-search .form-control,
.offer-dashboard-sort { min-height:40px; border-color:#dfe3ea; color:#0f172a; font-size:.92rem; }
.offer-dashboard-search .input-group-text { color:#64748b; }
.offer-dashboard-search .form-control:focus,
.offer-dashboard-sort:focus { border-color:var(--primary); box-shadow:0 0 0 .2rem color-mix(in srgb, var(--primary) 14%, transparent); }
.offer-dashboard-sort { flex:0 0 150px; width:150px; margin-left:auto; border-radius:5px; }
.my-offers-list.is-offer-detail-mode .offer-dashboard-head,
.my-offers-list.is-offer-detail-mode .offer-dashboard-toolbar,
.my-offers-list.is-offer-detail-mode .tab-content,
.my-offers-list.is-offer-detail-mode .offers-pagination { display:none !important; }
.my-offers-list.is-offer-detail-mode .offer-dashboard-detail { margin-top:0; }
.offer-job-manage-card { height:100%; background:#fff; }
.offer-job-manage-card .card-body { padding:1.25rem; }
.offer-job-manage-card__head { padding-bottom:1.05rem; margin-bottom:1.45rem; border-bottom:1px solid #e6e9ef; }
.offer-job-manage-card__id { color:#0b2c8f; font-size:.93rem; font-weight:700; text-decoration:none; }
.offer-job-state { display:inline-flex; align-items:center; gap:.4rem; border-radius:5px; padding:.34rem .62rem; font-size:.78rem; font-weight:700; line-height:1; white-space:nowrap; }
.offer-job-state i { font-size:.78rem; }
.offer-job-state.is-hired { background:#eee8ff; color:#5625e8; }
.offer-job-state.is-progress { background:#f7e9fb; color:#ad3cc4; }
.offer-job-state.is-completed { background:#dcfce7; color:#00a650; }
.offer-job-state.is-cancelled { background:#fee2e2; color:#dc2626; }
.offer-job-state.is-draft { background:#eef0f4; color:#475467; }
.offer-job-state.is-new { background:#fff4de; color:#b45309; }
.offer-job-state.is-new i { font-size:.45rem; }
.offer-form-modern .offer-alert { display:flex; align-items:center; width:100%; }
.offer-form-modern .offer-alert-message { flex:1 1 auto; }
.offer-form-modern .offer-alert-action { margin-left:auto !important; white-space:nowrap; }
.offer-job-switch .form-check-input { width:38px; height:20px; margin:0; cursor:pointer; border:0; background-color:#cbd5e1; }
.offer-job-switch .form-check-input:checked { background-color:#00c853; }
.offer-job-switch .form-check-input:focus { box-shadow:0 0 0 .2rem rgba(0,200,83,.18); }
.offer-job-switch .form-check-input:disabled { cursor:not-allowed; opacity:.55; }
.offer-job-manage-card__body { display:flex; align-items:center; gap:1rem; margin-bottom:1.45rem; }
.offer-job-manage-card__thumb { width:80px; height:80px; border-radius:5px; overflow:hidden; flex:0 0 auto; background:#eef2f7; }
.offer-job-manage-card__thumb img { width:100%; height:100%; display:block; object-fit:cover; }
.offer-job-manage-card__body h5 { margin:0 0 .45rem; color:#0f172a; font-size:1.16rem; font-weight:800; line-height:1.3; }
.offer-job-manage-card__body h5 button { color:#0f172a; font-size:inherit; font-weight:inherit; line-height:inherit; }
.offer-job-manage-card__body h5 button:hover { color:var(--primary); }
.offer-job-manage-card__cat { display:inline-flex; align-items:center; gap:.35rem; margin:0; color:#0f172a; font-size:.88rem; font-weight:600; }
.offer-job-manage-card__cat i { color:#64748b; }
.offer-active-pill { display:inline-flex; align-items:center; gap:.45rem; border-radius:5px; padding:.35rem .65rem; color:#fff; font-size:.78rem; font-weight:700; line-height:1; }
.offer-active-pill i { font-size:.38rem; }
.offer-active-pill.is-active { background:#00c853; }
.offer-active-pill.is-inactive { background:#e70d0d; }
.offer-job-manage-card__stats { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); border:1px solid #e6e9ef; border-radius:8px; overflow:hidden; margin-bottom:1.5rem; }
.offer-job-manage-card__stats > div { min-height:88px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.22rem; padding:.85rem; text-align:center; border-right:1px solid #e6e9ef; }
.offer-job-manage-card__stats > div:last-child { border-right:0; }
.offer-job-manage-card__stats i { color:#475467; font-size:1.05rem; margin-bottom:.25rem; }
.offer-job-manage-card__stats span { color:#475467; font-size:.82rem; }
.offer-job-manage-card__stats strong { color:#0f172a; font-size:.92rem; font-weight:700; overflow-wrap:anywhere; }
.offer-job-manage-card__actions { display:flex; align-items:center; gap:.55rem; }
.offer-manage-view-btn { flex:1 1 auto; min-height:38px; border:1px solid #dfe3ea !important; border-radius:5px !important; background:#fff; color:#0f172a; font-weight:700; }
.offer-manage-view-btn:hover { border-color:var(--primary) !important; color:var(--primary); }
.offer-manage-icon-btn { width:38px; min-width:38px; min-height:38px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #dfe3ea !important; border-radius:5px !important; background:#fff; color:#0f172a; padding:.45rem !important; }
.offer-manage-icon-btn:hover { border-color:var(--primary) !important; color:var(--primary); }

@media (max-width: 767.98px) {
  .offer-dashboard-controls,
  .offer-dashboard-search,
  .offer-dashboard-sort { width:100%; }
  .offer-job-manage-card__body { align-items:flex-start; flex-direction:column; }
  .offer-job-manage-card__stats { grid-template-columns:1fr; }
  .offer-job-manage-card__stats > div { border-right:0; border-bottom:1px solid #e6e9ef; }
  .offer-job-manage-card__stats > div:last-child { border-bottom:0; }
}

/* ---- Customer offer detail view ---- */
.customer-offer-detail-view { color:#0f172a; }
.customer-offer-detail-view .offer-detail-back { display:inline-flex; align-items:center; gap:.45rem; min-height:28px; padding:0; border:0; background:transparent; color:#0f172a; font-size:.93rem; font-weight:600; }
.customer-offer-detail-view .offer-detail-back:hover { color:var(--primary); }
.customer-offer-detail-card,
.customer-offer-proposals-card,
.customer-offer-overview-card { border:1px solid #e6e9ef !important; border-radius:8px !important; box-shadow:0 3px 10px rgba(15,23,42,.08) !important; }
.customer-offer-detail-card .card-body,
.customer-offer-proposals-card .card-body,
.customer-offer-overview-card .card-body { padding:1.25rem; }
.customer-offer-detail-card__head { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-bottom:1.05rem; margin-bottom:1.45rem; border-bottom:1px solid #e6e9ef; }
.customer-offer-detail-card__head > span:first-child { color:#0b2c8f; font-size:.93rem; font-weight:700; }
.customer-offer-status { display:inline-flex; align-items:center; gap:.4rem; border-radius:5px; padding:.34rem .65rem; font-size:.78rem; font-weight:700; line-height:1; white-space:nowrap; }
.customer-offer-status i { font-size:.4rem; }
.customer-offer-status.is-published,
.customer-offer-status.is-pending { background:#f7e9fb; color:#ad3cc4; }
.customer-offer-status.is-booked { background:#eee8ff; color:#5625e8; }
.customer-offer-status.is-completed { background:#dcfce7; color:#00a650; }
.customer-offer-status.is-closed,
.customer-offer-status.is-expired,
.customer-offer-status.is-draft { background:#fee2e2; color:#dc2626; }
.customer-offer-detail-card__hero { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; margin-bottom:1.15rem; }
.customer-offer-detail-card__hero .offer-detail-thumb { width:82px; height:82px; border-radius:6px; object-fit:cover; flex:0 0 auto; }
.customer-offer-detail-card__hero h5 { margin:0 0 .4rem; color:#0f172a; font-size:1.18rem; font-weight:800; line-height:1.3; }
.customer-offer-detail-card__hero p { display:inline-flex; align-items:center; gap:.4rem; margin:0; color:#475467; font-size:.9rem; font-weight:600; }
.customer-offer-budget { margin-left:auto; text-align:right; }
.customer-offer-budget span { display:block; color:#475467; font-size:.82rem; margin-bottom:.2rem; }
.customer-offer-budget strong { display:block; color:#2615a8; font-size:1.25rem; font-weight:800; }
.customer-offer-detail-view .offer-detail-copy { color:#475467; line-height:1.65; margin-bottom:1.15rem; }
.customer-offer-skills h6 { color:#0f172a; font-size:.95rem; font-weight:700; margin:0 0 .65rem; }
.customer-offer-skills div { display:flex; flex-wrap:wrap; gap:.45rem; }
.customer-offer-skills span { display:inline-flex; align-items:center; min-height:24px; padding:.25rem .55rem; border:1px solid #dfe3ea; border-radius:4px; background:#fff; color:#0f172a; font-size:.78rem; font-weight:700; }
.customer-offer-proposals-card { margin-top:1.5rem; }
.customer-offer-proposals-card__head { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding-bottom:1rem; margin-bottom:1rem; border-bottom:1px solid #e6e9ef; }
.customer-offer-proposals-card__head h5 { margin:0; color:#0f172a; font-size:1.1rem; font-weight:800; }
.customer-offer-proposals-card__head p { margin:0; color:#475467; font-size:.9rem; font-weight:600; }
.customer-offer-proposal { padding:1rem; border:1px solid #e6e9ef; border-radius:8px; background:#fff; margin-bottom:1rem; }
.customer-offer-proposal:last-child { margin-bottom:0; }
.customer-offer-proposal__top { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.customer-offer-proposal__provider { display:flex; gap:.75rem; min-width:0; }
.customer-offer-proposal__provider > div:first-child { width:44px; height:44px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; background:#eef0f4; color:#0f172a; font-size:.9rem; font-weight:800; }
.customer-offer-proposal__provider h6 { margin:0 0 .3rem; color:#0f172a; font-size:.95rem; font-weight:800; }
.customer-offer-proposal__provider span { display:inline-flex; align-items:center; gap:.3rem; color:#475467; font-size:.86rem; font-weight:600; margin-right:.7rem; }
.customer-offer-proposal__price { text-align:right; }
.customer-offer-proposal__price h6 { margin:0 0 .2rem; color:#2615a8; font-size:1rem; font-weight:800; }
.customer-offer-proposal__price p { margin:0; color:#64748b; font-size:.86rem; }
.customer-offer-proposal__message { margin-top:.9rem; padding:.85rem; border-radius:7px; background:#fbfcfe; color:#475467; font-size:.9rem; line-height:1.6; }
.customer-offer-proposal__message p:last-child { margin-bottom:0; }
.customer-offer-proposal__foot { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding-top:.9rem; margin-top:.9rem; border-top:1px solid #e6e9ef; }
.customer-offer-proposal__foot p { display:inline-flex; align-items:center; gap:.45rem; margin:0; color:#475467; font-size:.88rem; font-weight:600; }
.customer-offer-proposal__foot > div { display:flex; flex-wrap:wrap; gap:.5rem; }
.customer-offer-overview-card__head { padding-bottom:1rem; margin-bottom:1rem; border-bottom:1px solid #e6e9ef; }
.customer-offer-overview-card__head h5 { margin:0; color:#0f172a; font-size:1.1rem; font-weight:800; }
.customer-offer-overview-item { display:flex; align-items:flex-start; gap:.75rem; padding:.8rem 0; border-bottom:1px solid #eef2f7; }
.customer-offer-overview-item i { width:32px; height:32px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; color:var(--primary); background:color-mix(in srgb, var(--primary) 10%, #fff); }
.customer-offer-overview-item p { margin:0 0 .2rem; color:#64748b; font-size:.82rem; }
.customer-offer-overview-item strong { display:block; color:#0f172a; font-size:.92rem; overflow-wrap:anywhere; }
.customer-offer-status-btn { min-height:40px; border-radius:5px !important; background:#f00075; border-color:#f00075; color:#fff; font-weight:700; }
.customer-offer-status-btn:hover { background:#d80069; border-color:#d80069; color:#fff; }

@media (max-width: 575.98px) {
  .customer-offer-budget,
  .customer-offer-proposal__price { width:100%; text-align:left; }
  .customer-offer-proposal__foot { align-items:stretch; flex-direction:column; }
  .customer-offer-proposal__foot > div { flex-direction:column; }
  .customer-offer-proposal__foot .btn { width:100%; }
}

/* ---- Customer request detail view ---- */
.offer-request-detail-view { color:#0f172a; }
.offer-request-detail-view .card { border:1px solid #e6e9ef; border-radius:8px; box-shadow:0 3px 10px rgba(15,23,42,.08); }
.offer-detail-backbar { margin-bottom:1rem; }
.offer-request-detail-view .offer-detail-back { display:inline-flex; align-items:center; gap:.45rem; min-height:28px; padding:0; border:0; background:transparent; color:#0f172a; font-size:.93rem; font-weight:600; }
.offer-request-detail-view .offer-detail-back:hover { color:var(--primary); }
.offer-detail-main-card .card-body,
.offer-detail-party-card .card-body { padding:1.35rem; }
.offer-detail-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-bottom:1rem; margin-bottom:1.5rem; border-bottom:1px solid #e6e9ef; }
.offer-detail-kicker { color:#0b2c8f; font-size:.93rem; font-weight:700; }
.offer-request-detail-status { display:inline-flex; align-items:center; gap:.45rem; border-radius:5px; padding:.38rem .75rem; font-size:.8rem; font-weight:700; line-height:1; white-space:nowrap; }
.offer-request-detail-status i { font-size:.42rem; }
.offer-request-detail-status.is-waiting { background:#fff3cd; color:#b07900; }
.offer-request-detail-status.is-confirmed { background:#ad3cc4; color:#fff; }
.offer-request-detail-status.is-completed { background:#00c853; color:#fff; }
.offer-request-detail-status.is-cancelled,
.offer-request-detail-status.is-withdrawn { background:#e70d0d; color:#fff; }
.offer-detail-hero { display:flex; align-items:center; justify-content:space-between; gap:1.25rem; flex-wrap:wrap; margin-bottom:1.4rem; }
.offer-detail-hero__thumb { width:80px; height:80px; border-radius:5px; overflow:hidden; flex:0 0 auto; background:#eef2f7; }
.offer-detail-hero__thumb img { width:100%; height:100%; display:block; object-fit:cover; }
.offer-detail-hero h3 { margin:0 0 .45rem; color:#0f172a; font-size:1.22rem; font-weight:700; line-height:1.3; }
.offer-detail-category { display:inline-flex; align-items:center; gap:.45rem; margin:0; color:#0f172a; font-size:.92rem; font-weight:600; }
.offer-detail-category i { color:#0f172a; font-size:.9rem; }
.offer-detail-amount { min-width:130px; text-align:right; }
.offer-detail-amount span { display:block; color:#475467; font-size:.82rem; margin-bottom:.25rem; }
.offer-detail-amount strong { display:block; color:#2615a8; font-size:1.25rem; font-weight:800; }
.offer-detail-message { margin-bottom:1.35rem; }
.offer-detail-message p { color:#475467; font-size:.93rem; line-height:1.6; margin:0; }
.offer-detail-metrics { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:1.4rem; padding-bottom:1.35rem; margin-bottom:1rem; border-bottom:1px solid #e6e9ef; }
.offer-detail-metric { display:flex; align-items:center; gap:.75rem; min-width:0; }
.offer-detail-metric i { width:28px; height:28px; border:1px solid #94a3b8; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; color:#0b2c8f; background:#fff; font-size:.9rem; }
.offer-detail-metric span { display:block; color:#475467; font-size:.82rem; margin-bottom:.2rem; }
.offer-detail-metric strong { display:block; color:#0f172a; font-size:.92rem; font-weight:700; overflow-wrap:anywhere; }
.offer-detail-proposal { margin:0 0 1.1rem; padding:1rem; border:1px solid #e6e9ef; border-radius:8px; background:#fbfcfe; }
.offer-detail-proposal__head { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding-bottom:.85rem; margin-bottom:.85rem; border-bottom:1px solid #e6e9ef; }
.offer-detail-proposal__head h4 { margin:0; color:#0f172a; font-size:1.05rem; font-weight:700; }
.offer-detail-proposal__head span { color:#64748b; font-size:.84rem; font-weight:600; }
.offer-detail-proposal__summary { display:grid; grid-template-columns:1.3fr .85fr .85fr; gap:.75rem; margin-bottom:1rem; }
.offer-detail-proposal__item { padding:.8rem; border:1px solid #e6e9ef; border-radius:7px; background:#fff; }
.offer-detail-proposal__item span { display:block; color:#64748b; font-size:.8rem; margin-bottom:.25rem; }
.offer-detail-proposal__item strong { display:block; color:#0f172a; font-size:.94rem; font-weight:700; overflow-wrap:anywhere; }
.offer-detail-proposal__item:not(.is-wide) strong { color:#2615a8; }
.offer-detail-proposal__section { margin-top:.9rem; }
.offer-detail-proposal__section h5 { margin:0 0 .45rem; color:#0f172a; font-size:.92rem; font-weight:700; }
.offer-detail-proposal__section p { margin:0; color:#475467; font-size:.9rem; line-height:1.6; white-space:pre-line; }
.offer-detail-proposal__chips { display:flex; flex-wrap:wrap; gap:.45rem; }
.offer-detail-proposal__chips span { display:inline-flex; align-items:center; min-height:24px; padding:.25rem .55rem; border:1px solid #dfe3ea; border-radius:4px; background:#fff; color:#0f172a; font-size:.78rem; font-weight:700; }
.offer-detail-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.65rem; }
.offer-detail-action-btn { min-height:38px; border-radius:5px !important; display:inline-flex; align-items:center; justify-content:center; gap:.45rem; font-size:.9rem; font-weight:700; padding:.55rem 1rem !important; }
.offer-detail-action-btn.is-done { background:#00c853; border-color:#00c853; color:#fff; }
.offer-detail-action-btn.is-message { background:#fff; border:1px solid #dfe3ea; color:#0f172a; }
.offer-detail-action-btn.is-cancel { margin-left:auto; background:#e70d0d; border-color:#e70d0d; color:#fff; }
.offer-detail-action-btn:hover { filter:brightness(.96); }
.offer-detail-no-action { color:#475467; font-size:.92rem; font-weight:600; }
.offer-detail-side-head { display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding-bottom:1rem; margin-bottom:1.6rem; border-bottom:1px solid #e6e9ef; }
.offer-detail-side-head h5 { margin:0; color:#0f172a; font-size:1.15rem; font-weight:700; }
.offer-detail-hired { border-radius:5px; padding:.38rem .65rem; background:#eef0f4; color:#0f172a; font-size:.78rem; font-weight:700; white-space:nowrap; }
.offer-detail-party { display:flex; align-items:center; gap:.85rem; padding-bottom:1.5rem; margin-bottom:1.5rem; border-bottom:1px solid #e6e9ef; }
.offer-detail-party__avatar { width:44px; height:44px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; background:#eef0f4; color:#0f172a; }
.offer-detail-party__avatar span { font-size:.9rem; font-weight:800; }
.offer-detail-party h6 { margin:0 0 .18rem; font-size:.94rem; font-weight:700; }
.offer-detail-party h6 a { color:#0f172a; text-decoration:none; }
.offer-detail-party span { color:#475467; font-size:.9rem; }
.offer-detail-party span i { font-size:.84rem; margin-right:.2rem; }
.offer-detail-jobs-count { margin-left:auto; display:inline-flex; align-items:center; gap:.35rem; color:#475467; font-size:.9rem; white-space:nowrap; }
.offer-detail-seller-contact { display:grid; gap:.6rem; margin:-.5rem 0 1.35rem; }
.offer-detail-seller-contact span { display:flex; align-items:center; gap:.5rem; color:#475467; font-size:.9rem; font-weight:600; }
.offer-detail-seller-contact i { color:var(--primary); }
.offer-detail-seller-contact a { color:#0f172a; text-decoration:none; overflow-wrap:anywhere; }
.offer-detail-seller-contact a:hover { color:var(--primary); }
.offer-detail-skills { margin-bottom:1.5rem; }
.offer-detail-skills h6 { color:#0f172a; font-size:.95rem; font-weight:700; margin:0 0 .65rem; }
.offer-detail-skills div { display:flex; flex-wrap:wrap; gap:.45rem; }
.offer-detail-skills span { display:inline-flex; align-items:center; min-height:24px; padding:.25rem .55rem; border:1px solid #dfe3ea; border-radius:4px; background:#fff; color:#0f172a; font-size:.78rem; font-weight:700; }
.offer-detail-contact-btn { width:100%; min-height:42px; border-radius:5px !important; display:inline-flex; align-items:center; justify-content:center; gap:.5rem; background:#f00075; border-color:#f00075; color:#fff; font-weight:700; }
.offer-detail-contact-btn:hover { background:#d80069; border-color:#d80069; color:#fff; }
.offer-detail-party-meta,
.offer-detail-support-card { display:none; }

@media (max-width: 991.98px) {
  .offer-detail-metrics { grid-template-columns:1fr; }
  .offer-detail-proposal__summary { grid-template-columns:1fr; }
  .offer-detail-amount { text-align:left; width:100%; }
  .offer-detail-action-btn.is-cancel { margin-left:0; }
}

@media (max-width: 575.98px) {
  .offer-detail-header,
  .offer-detail-side-head { align-items:flex-start; flex-direction:column; }
  .offer-detail-hero { align-items:flex-start; }
  .offer-detail-hero__thumb { width:72px; height:72px; }
  .offer-detail-actions { align-items:stretch; flex-direction:column; }
  .offer-detail-action-btn { width:100%; }
  .offer-detail-party { align-items:flex-start; flex-wrap:wrap; }
  .offer-detail-jobs-count { margin-left:0; width:100%; }
}

/* ---- Provider proposals table ---- */
.offer-proposals-table-wrap { color:#0f172a; }
.offer-proposals-toolbar .input-group-text,
.offer-proposals-toolbar .form-control,
.offer-proposals-toolbar .form-select { min-height:42px; border-color:#dfe3ea; color:#0f172a; font-size:.92rem; }
.offer-proposals-toolbar .input-group-text { color:#64748b; }
.offer-proposals-toolbar .form-control:focus,
.offer-proposals-toolbar .form-select:focus { border-color:var(--offer-accent); box-shadow:0 0 0 .2rem color-mix(in srgb, var(--offer-accent) 14%, transparent); }
.offer-proposals-sort { min-width:150px; }
.offer-proposals-table-scroll { overflow-x:auto; border:1px solid #e6e9ef; background:#fff; }
.offer-proposals-table { width:100%; min-width:980px; border-collapse:collapse; margin:0; }
.offer-proposals-table th { background:#f7f7f8; color:#0f172a; font-size:.88rem; font-weight:700; text-align:left; padding:1rem; border-bottom:1px solid #e6e9ef; white-space:nowrap; }
.offer-proposals-table td { padding:1rem; border-bottom:1px solid #e6e9ef; color:#475467; vertical-align:middle; font-size:.92rem; }
.offer-proposals-table tbody tr:last-child td { border-bottom:0; }
.offer-proposals-table tbody tr:hover { background:#fcfcfd; }
.offer-proposal-job { display:flex; align-items:center; gap:.65rem; min-width:240px; }
.offer-proposal-job__thumb { width:46px; height:46px; border-radius:6px; object-fit:cover; flex:0 0 auto; }
.offer-proposal-job__thumb--empty { display:inline-flex; align-items:center; justify-content:center; background:#f1f5f9; color:#64748b; font-size:1.25rem; }
.offer-proposal-job strong { color:#0f172a; font-size:.92rem; line-height:1.35; }
.offer-proposal-amount { color:#5625e8; font-weight:700; }
.offer-proposal-status { display:inline-flex; align-items:center; gap:.3rem; padding:.25rem .55rem; border-radius:5px; font-size:.76rem; font-weight:700; line-height:1; color:#fff; white-space:nowrap; }
.offer-proposal-status::before { content:""; width:5px; height:5px; border-radius:50%; background:currentColor; filter:brightness(3); }
.offer-proposal-status.is-confirmed { background:#00c853; }
.offer-proposal-status.is-waiting { background:#f5b700; }
.offer-proposal-status.is-cancelled { background:#e70d0d; }
.offer-proposal-status.is-withdrawn { background:#64748b; }
.offer-proposal-status.is-completed { background:#5625e8; }
.offer-proposal-withdraw { min-height:34px; border-radius:999px !important; padding:.4rem .75rem !important; color:#0f172a; white-space:nowrap; }
.offer-proposal-withdraw:not(:disabled):hover { border-color:#dc3545 !important; color:#dc3545; }
.offer-proposal-withdraw:disabled { opacity:.45; cursor:not-allowed; }
.offer-withdraw-modal { position:fixed; inset:0; z-index:1055; display:none; align-items:center; justify-content:center; padding:1rem; }
.offer-withdraw-modal.is-visible { display:flex; }
.offer-withdraw-modal__backdrop { position:absolute; inset:0; background:rgba(15,23,42,.5); }
.offer-withdraw-modal__dialog { position:relative; width:min(100%, 430px); border-radius:10px; background:#fff; padding:1.5rem; box-shadow:0 8px 24px rgba(15,23,42,.18); text-align:center; }
.offer-withdraw-modal__close { position:absolute; top:.8rem; right:.8rem; width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #e6e9ef; border-radius:50%; background:#fff; color:#64748b; }
.offer-withdraw-modal__close:hover { color:#dc3545; border-color:#fecaca; }
.offer-withdraw-modal__icon { width:52px; height:52px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; margin:0 auto 1rem; background:#fff1f2; color:#dc3545; font-size:1.55rem; }
.offer-withdraw-modal h3 { margin:0 0 .55rem; color:#0f172a; font-size:1.15rem; font-weight:800; }
.offer-withdraw-modal p { margin:0; color:#475467; font-size:.93rem; line-height:1.55; }
.offer-withdraw-modal__actions { display:flex; justify-content:center; gap:.75rem; flex-wrap:wrap; margin-top:1.25rem; }
.offer-withdraw-modal__actions .btn { min-width:120px; min-height:40px; border-radius:5px !important; font-weight:700; }

/* ---- Empty state ---- */
.offers-empty { text-align:center; padding:3rem 1.5rem; background:#fff; border:1px dashed #d7dde5; border-radius:18px; }
.offers-empty i { font-size:2.6rem; color:var(--offer-accent); }
.offers-empty p { color:#6b7280; margin:.85rem auto 1.3rem; max-width:42ch; }

/* ---- "Browse offers" hero CTA (provider) ---- */
.offers-cta { display:flex; align-items:center; justify-content:space-between; gap:1.2rem; flex-wrap:wrap;
  background:color-mix(in srgb, var(--offer-accent) 8%, #fff);
  border:1px solid color-mix(in srgb, var(--offer-accent) 22%, #e9edf2);
  border-radius:18px; padding:1.3rem 1.5rem; margin-bottom:1.6rem; }
.offers-cta .txt h3 { font-size:1.12rem; font-weight:700; margin:0 0 .2rem; color:#0f172a; }
.offers-cta .txt p { margin:0; color:#4b5563; font-size:.92rem; }
.offers-cta .btn { white-space:nowrap; }

.truelysell-offer-invoice-page { background:#f5f7fb; }
.offer-invoice { max-width:960px; margin:2rem auto; padding:0 1rem; color:#111827; }
.offer-invoice__toolbar { display:flex; justify-content:flex-end; gap:.6rem; flex-wrap:wrap; margin-bottom:1rem; }
.offer-invoice__paper { background:#fff; border:1px solid #e5e7eb; border-radius:8px; padding:2rem; box-shadow:0 18px 40px rgba(15,23,42,.08); }
.offer-invoice__header { display:flex; justify-content:space-between; gap:1.5rem; border-bottom:1px solid #e5e7eb; padding-bottom:1.4rem; margin-bottom:1.4rem; }
.offer-invoice__logo { max-width:190px; max-height:70px; object-fit:contain; }
.offer-invoice__meta { text-align:right; }
.offer-invoice__meta h2 { margin:0 0 .4rem; font-size:1.8rem; }
.offer-invoice__meta p { margin:.15rem 0; color:#4b5563; }
.offer-invoice__parties { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:1rem; margin-bottom:1.4rem; }
.offer-invoice__parties > div { border:1px solid #e5e7eb; border-radius:8px; padding:1rem; }
.offer-invoice h3 { font-size:1rem; margin:0 0 .55rem; }
.offer-invoice p { margin:.18rem 0; }
.offer-invoice__service { margin-bottom:1.4rem; }
.offer-invoice__table { width:100%; border-collapse:collapse; }
.offer-invoice__table th, .offer-invoice__table td { padding:.85rem 0; border-bottom:1px solid #e5e7eb; }
.offer-invoice__table th { text-align:left; color:#4b5563; }
.offer-invoice__table td { text-align:right; font-weight:600; }
.offer-invoice__table .is-total th, .offer-invoice__table .is-total td { font-size:1.15rem; color:#111827; border-bottom:0; }

@media (max-width:991px) {
  .offer-apply-layout { grid-template-columns:1fr; }
  .offer-apply-tips { grid-column:auto; }
}

@media (max-width:575px) {
  .offers-filter { padding:.85rem; }
  .offers-filter .field, .offers-filter .filter-submit, .offers-filter .filter-submit .btn { flex:1 1 100%; width:100%; }
  .offer-request-tabs { width:100%; }
  .offer-request-tabs .nav-item { flex:1 1 auto; }
  .offer-request-tabs .nav-link { width:100%; }
  .offer-request-job-card__head { flex-direction:column; }
  .offer-request-job-card__meta { grid-template-columns:1fr; }
  .offer-proposal-form__row, .offer-apply-summary__facts, .offer-apply-summary__stats { grid-template-columns:1fr; }
  .offer-proposal-actions .btn { width:100%; }
  .offer-apply-summary__job, .offer-apply-client { align-items:flex-start; }
  .offer-apply-layout { gap:1rem; }
  .offer-proposal-form, .offer-apply-summary__job, .offer-apply-summary__section, .offer-apply-summary__facts, .offer-apply-summary__stats, .offer-apply-tips ul { padding:1rem; }
  .offer-request-card__head { flex-direction:column; }
  .offer-inline-detail__head,
  .job-booking-card,
  .job-booking-card__top { flex-direction:column; }
  .offer-inline-detail__body,
  .offer-detail-list--wide { grid-template-columns:1fr; }
  .job-booking-card__media { width:100%; height:170px; flex-basis:auto; }
  .offers-cta { flex-direction:column; align-items:flex-start; }
  .offers-cta .btn { width:100%; text-align:center; }
  .offer-invoice__header, .offer-invoice__parties { grid-template-columns:1fr; flex-direction:column; }
  .offer-invoice__meta { text-align:left; }
}

@media print {
  body.truelysell-offer-invoice-page { background:#fff; }
  body.truelysell-offer-invoice-page header,
  body.truelysell-offer-invoice-page footer,
  .offer-invoice__toolbar { display:none !important; }
  .offer-invoice { max-width:none; margin:0; padding:0; }
  .offer-invoice__paper { border:0; box-shadow:none; padding:0; }
}

@media (prefers-reduced-motion: reduce) {
  .offer-card, .offer-job-card { transition:none; }
  .offer-card:hover { transform:none; }
  .offer-job-card:hover { transform:none; }
}
