/* =========================================================================
   MedPartners — Клиентская (публичная) часть
   Использует токены из app.css. Лёгкий, светлый интерфейс без админ-сайдбара.
   ========================================================================= */

.client-body {
    background:
        radial-gradient(1200px 480px at 80% -10%, rgba(var(--mp-sky-rgb), 0.10), transparent 60%),
        radial-gradient(1000px 420px at -10% 0%, rgba(var(--mp-teal-rgb), 0.10), transparent 55%),
        var(--shell-bg);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* ── Шапка ─────────────────────────────────────────────────────────────── */
.client-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--border-soft);
}

.client-header .navbar { padding-block: 0.75rem; }
.client-header .navbar-brand .brand-sub {
    font-size: 0.72rem;
    color: var(--mp-muted);
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.client-header .nav-link {
    font-weight: 600;
    color: var(--mp-ink);
    border-radius: 0.7rem;
    padding: 0.5rem 0.95rem !important;
}
.client-header .nav-link:hover { background: rgba(var(--mp-teal-rgb), 0.08); color: var(--mp-teal-dark); }
.client-header .nav-link.active { background: rgba(var(--mp-teal-rgb), 0.12); color: var(--mp-teal-darker); }

.client-header .navbar-toggler {
    border: 1px solid var(--border-soft);
    border-radius: 0.6rem;
    font-size: 1.4rem;
    color: var(--mp-teal-dark);
}
.client-header .navbar-toggler:focus { box-shadow: none; }

.client-main { flex: 1 0 auto; }

/* ── Подвал ────────────────────────────────────────────────────────────── */
.client-footer {
    border-top: 1px solid var(--border-soft);
    background: var(--surface);
}

/* ── Героический блок на главной ───────────────────────────────────────── */
.client-hero {
    background: linear-gradient(135deg, var(--mp-teal-dark) 0%, var(--mp-teal-darker) 55%, #0c4842 100%);
    color: #fff;
    border-radius: 1.5rem;
    padding: clamp(1.75rem, 1.2rem + 3vw, 3.25rem);
    box-shadow: 0 20px 50px rgba(15, 42, 46, 0.22);
}
.client-hero h1 { color: #fff; }
.client-hero .lead { color: rgba(255, 255, 255, 0.85); }
.client-hero .form-control { border: none; }
.client-hero .badge-pill {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    border-radius: 2rem;
    padding: 0.45rem 0.95rem;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    transition: background-color .15s ease;
}
.client-hero .badge-pill:hover { background: rgba(255, 255, 255, 0.28); color: #fff; }

/* ── Карточки-плитки ───────────────────────────────────────────────────── */
.tile-card {
    height: 100%;
    transition: transform .15s ease, box-shadow .15s ease;
    text-decoration: none;
    color: inherit;
    display: block;
}
.tile-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(15, 42, 46, 0.12) !important;
}
.tile-icon {
    width: 52px;
    height: 52px;
    border-radius: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    background: rgba(var(--mp-teal-rgb), 0.1);
    color: var(--mp-teal-dark);
}

/* ── Статистические плашки сравнения цен ───────────────────────────────── */
.price-stat {
    border-radius: 0.9rem;
    padding: 0.85rem 1rem;
    text-align: center;
    border: 1px solid var(--border-soft);
}
.price-stat .label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--mp-muted); }
.price-stat .value { font-size: 1.35rem; font-weight: 700; }
.price-stat.is-min { background: rgba(var(--mp-green-rgb), 0.1); border-color: rgba(var(--mp-green-rgb), 0.3); }
.price-stat.is-min .value { color: #15803d; }
.price-stat.is-max { background: rgba(var(--mp-red-rgb), 0.08); border-color: rgba(var(--mp-red-rgb), 0.25); }
.price-stat.is-max .value { color: #b91c1c; }

/* ── Бейдж статуса заказа ──────────────────────────────────────────────── */
.order-status { font-weight: 600; }

/* Крупная цена в карточке заказа/оффера */
.offer-price { font-size: clamp(1.8rem, 1.4rem + 1.5vw, 2.6rem); font-weight: 800; color: var(--mp-teal-darker); }
