/* ==========================================================================
   Dorat Shaqra — inner pages (banner, workers, forms, auth, prose, tables)
   ========================================================================== */

/* banner + breadcrumb */
.ds-banner {
    position: relative; overflow: hidden; padding: 56px 0 64px; color: #fff;
    background: var(--ds-grad);
}
.ds-banner::after { content: ""; position: absolute; width: 420px; height: 420px; border-radius: 50%; inset-inline-end: -140px; inset-block-start: -200px; background: rgba(255, 255, 255, .07); }
.ds-banner .container { position: relative; z-index: 1; }
.ds-banner h1 { color: #fff; font-size: clamp(1.6rem, 3vw, 2.4rem); margin: .4rem 0 0; }
.ds-banner p { color: #cdd9f3; margin: .6rem 0 0; max-width: 640px; }
.ds-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem; font-size: .9rem; color: #cdd9f3; }
.ds-crumbs a { color: #fff; opacity: .85; }
.ds-crumbs a:hover { opacity: 1; }
.ds-crumbs i { font-size: .7rem; opacity: .6; }
.ds-crumbs span { color: var(--ds-orange); font-weight: 600; }

/* filter bar */
.ds-filter { margin-top: -30px; position: relative; z-index: 2; }
.ds-filter__box { background: #fff; border: 1px solid var(--ds-line); border-radius: var(--ds-radius); box-shadow: var(--ds-shadow); padding: 1.3rem 1.5rem; }
.ds-filter__box h4 { font-size: 1.05rem; margin-bottom: 1rem; display: flex; align-items: center; gap: .5rem; }
.ds-filter__box h4 i { color: var(--ds-blue); }
.ds-filter label { font-weight: 600; font-size: .9rem; margin-bottom: .4rem; display: block; }
.ds-filter label i { color: var(--ds-blue); margin-inline-end: .3rem; }
.ds-filter__actions { display: flex; gap: .6rem; justify-content: flex-end; flex-wrap: wrap; }

/* worker card */
.ds-worker {
    height: 100%; background: #fff; border: 1px solid var(--ds-line); border-radius: var(--ds-radius);
    box-shadow: var(--ds-shadow-sm); overflow: hidden; display: flex; flex-direction: column; transition: .25s;
}
.ds-worker:hover { transform: translateY(-5px); box-shadow: var(--ds-shadow); border-color: var(--ds-blue-100); }
.ds-worker__media { background: var(--ds-bg); padding: 0; height: 280px; position: relative; overflow: hidden; }
.ds-worker__media .ds-worker__blur { object-fit: cover; object-position: center; padding: 0; filter: blur(18px) saturate(1.2); transform: scale(1.25); opacity: .55; }
.ds-worker__media img:not(.ds-worker__blur) { filter: blur(14px); transform: scale(1.04); position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center top; padding: .75rem; border-radius: 0; }
.ds-worker__tag { position: absolute; inset-block-start: 12px; inset-inline-start: 12px; background: var(--ds-green); color: #fff; font-size: .75rem; font-weight: 600; padding: .25rem .7rem; border-radius: 20px; }
.ds-worker__tag--old { background: var(--ds-blue); }
.ds-worker__body { padding: 1.2rem 1.3rem 1.4rem; display: flex; flex-direction: column; flex: 1; }
.ds-worker__name { font-size: 1.1rem; font-weight: 700; color: var(--ds-ink); margin-bottom: .9rem; text-align: center; }
.ds-worker__info { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem .8rem; margin: 0 0 1.1rem; padding: 0; list-style: none; }
.ds-worker__info li { font-size: .86rem; color: var(--ds-muted); line-height: 1.4; }
.ds-worker__info li b { display: block; color: var(--ds-ink); font-size: .93rem; font-weight: 600; }
.ds-worker__info li.wide { grid-column: 1 / -1; }
.ds-worker__cta { margin-top: auto; display: flex; gap: .6rem; }
.ds-worker__cta .ds-btn { flex: 1; justify-content: center; padding-inline: .8rem; }

/* pagination */
.pagination { gap: .35rem; justify-content: center; margin: 2.2rem 0 0; flex-wrap: wrap; }
.pagination .page-link { border-radius: 10px !important; border: 1px solid var(--ds-line); color: var(--ds-ink); min-width: 42px; height: 42px; display: grid; place-items: center; font-weight: 600; }
.pagination .page-item.active .page-link { background: var(--ds-blue); border-color: var(--ds-blue); color: #fff; }
.pagination .page-item.disabled .page-link { opacity: .5; }

/* empty / info states */
.ds-empty { text-align: center; padding: 3.5rem 1rem; grid-column: 1 / -1; }
.ds-empty i { font-size: 4rem; color: var(--ds-blue-100); margin-bottom: 1rem; display: block; }
.ds-empty h3 { margin-bottom: .4rem; }
.ds-empty p { color: var(--ds-muted); }

/* form card */
.ds-formcard { max-width: 760px; margin-inline: auto; background: #fff; border: 1px solid var(--ds-line); border-radius: var(--ds-radius-lg); box-shadow: var(--ds-shadow); padding: 2.2rem; }
.ds-formcard--narrow { max-width: 520px; }
.ds-formcard h2, .ds-formcard h3 { margin-bottom: .4rem; }
.ds-formcard .sub { color: var(--ds-muted); margin-bottom: 1.6rem; }
.ds-formcard .req { color: var(--ds-red); font-size: .78rem; margin-inline-start: .3rem; font-weight: 500; }

/* success */
.ds-success { text-align: center; max-width: 620px; margin-inline: auto; }
.ds-success__icon { width: 110px; height: 110px; border-radius: 50%; background: #eaf4e2; color: var(--ds-green); display: grid; place-items: center; font-size: 3.4rem; margin: 0 auto 1.4rem; }
.ds-success__code { display: inline-block; background: var(--ds-blue-50); color: var(--ds-blue); font-weight: 700; padding: .3rem 1rem; border-radius: 10px; }
.ds-contact-choices { display: flex; gap: .8rem; justify-content: center; flex-wrap: wrap; margin-top: 1.4rem; }
.ds-choice { display: flex; align-items: center; gap: .7rem; background: #fff; border: 1.5px solid var(--ds-line); border-radius: 14px; padding: .9rem 1.3rem; font-weight: 600; color: var(--ds-ink); transition: .2s; }
.ds-choice i { font-size: 1.4rem; }
.ds-choice--wa i { color: #25d366; }
.ds-choice--tel i { color: var(--ds-blue); }
.ds-choice:hover { border-color: var(--ds-blue); transform: translateY(-3px); box-shadow: var(--ds-shadow-sm); color: var(--ds-ink); }

/* prose (terms, policies, about) */
.ds-prose { max-width: 860px; margin-inline: auto; background: #fff; border: 1px solid var(--ds-line); border-radius: var(--ds-radius-lg); padding: 2.4rem; box-shadow: var(--ds-shadow-sm); }
.ds-prose h2, .ds-prose h3, .ds-prose h4 { margin: 1.6rem 0 .6rem; }
.ds-prose h2:first-child, .ds-prose h3:first-child { margin-top: 0; }
.ds-prose p, .ds-prose li { color: var(--ds-text); line-height: 1.95; }
.ds-prose ul { list-style: disc; padding-inline-start: 1.4rem; }
.ds-prose ol { list-style: decimal; padding-inline-start: 1.4rem; }

/* CV modal */
.cvModal .modal-content { border: 0; border-radius: var(--ds-radius-lg); overflow: hidden; box-shadow: var(--ds-shadow-lg); }
.cvModal .closeBtn { position: absolute; inset-block-start: 14px; inset-inline-end: 14px; z-index: 5; width: 38px; height: 38px; border-radius: 50%; border: 0; background: #fff; box-shadow: var(--ds-shadow-sm); display: grid; place-items: center; }
.cvModal .cv .mainImg img { width: 100%; border-radius: 14px; }
.cvModal .cv .moreImgs { display: flex; gap: .5rem; margin-top: .6rem; flex-wrap: wrap; }
.cvModal .cv .moreImgs img { width: 64px; height: 64px; object-fit: cover; border-radius: 10px; }
.cvModal .cv .info ul { display: grid; gap: .7rem; padding: 1rem; list-style: none; margin: 0; }
.cvModal .cv .info li { background: var(--ds-bg); border-radius: 12px; padding: .7rem 1rem; }
.cvModal .cv .info .title { margin: 0; color: var(--ds-muted); font-size: .85rem; }
.cvModal .cv .info .data { margin: 0; font-weight: 600; font-size: 1rem; }
.cvModal .cv .info .alertText { margin: .3rem 0 0; color: var(--ds-orange); font-size: .82rem; }
.cvModal .modal-footer { gap: .6rem; justify-content: center; border-top: 1px solid var(--ds-line); }
.cvModal .modal-footer .btn { border-radius: 12px; padding: .65rem 1.4rem; font-weight: 600; border: 1.5px solid var(--ds-line); }
.cvModal .modal-footer .btn.book { background: var(--ds-blue); border-color: var(--ds-blue); color: #fff; }

/* auth */
.ds-auth {
    min-height: calc(100vh - 220px); display: grid; align-items: center; padding: 3rem 0;
    background:
        radial-gradient(700px 400px at 90% 0%, rgba(27, 111, 181, .10), transparent 60%),
        radial-gradient(600px 380px at 0% 100%, rgba(242, 153, 31, .10), transparent 60%), var(--ds-bg);
}
.ds-auth__logo { display: block; margin: 0 auto 1.2rem; max-height: 84px; }
.ds-auth .ds-formcard { text-align: start; }
.ds-auth__alt { text-align: center; margin-top: 1.2rem; color: var(--ds-muted); }
.ds-auth__alt a { font-weight: 600; }

/* tables / badges */
.ds-table { width: 100%; background: #fff; border-radius: var(--ds-radius); overflow: hidden; box-shadow: var(--ds-shadow-sm); border: 1px solid var(--ds-line); }
.ds-table th { background: var(--ds-blue-50); color: var(--ds-ink); font-weight: 600; padding: .9rem 1rem; text-align: start; }
.ds-table td { padding: .9rem 1rem; border-top: 1px solid var(--ds-line); }
.ds-badge { display: inline-block; padding: .25rem .8rem; border-radius: 20px; font-size: .8rem; font-weight: 600; background: var(--ds-blue-50); color: var(--ds-blue); }
.ds-badge--green { background: #eaf4e2; color: #4c8730; }
.ds-badge--orange { background: #fdf1de; color: #b96f08; }
.ds-badge--red { background: #f8e3e5; color: var(--ds-red); }

/* map */
.ds-map { margin-top: 2.4rem; border-radius: var(--ds-radius-lg); overflow: hidden; box-shadow: var(--ds-shadow); border: 1px solid var(--ds-line); }
.ds-map iframe { width: 100%; height: 360px; border: 0; display: block; }

@media (max-width: 991px) {
    .ds-worker__media { height: 220px; }
}
@media (max-width: 575px) {
    .ds-formcard, .ds-prose { padding: 1.4rem; }
    .ds-banner { padding: 40px 0 48px; }
}
