﻿/* LAB Service ? CRM design lab (ReUI ops-dash inspired), GidTur tokens */

body.lab-svc-page {
    --lab-ink: #173b42;
    --lab-lime: #ddedad;
    --lab-soft: #f4f6f2;
    --lab-panel: #ffffff;
    --lab-line: #e4e8e1;
    --lab-muted: #6b7280;
    --lab-ok: #1f7a4c;
    --lab-warn: #b8841a;
    --lab-risk: #b45309;
    --lab-info: #3b6d8c;
    margin: 0;
    min-height: 100vh;
    background: var(--lab-soft);
    color: var(--lab-ink);
    font-family: 'Manrope', 'Segoe UI', system-ui, sans-serif;
}

body.lab-svc-page .lab-svc-shell {
    display: grid;
    /* 248px: РґР»РёРЅРЅС‹Рµ RU-РїРѕРґРїРёСЃРё (Р”РѕСЃС‚РѕРїСЂРёРјРµС‡Р°С‚РµР»СЊРЅРѕСЃС‚Рё) РІР»РµР·Р°СЋС‚ РІ Р°РєС‚РёРІРЅСѓСЋ РїР»Р°С€РєСѓ */
    grid-template-columns: 248px minmax(0, 1fr);
    min-height: 100vh;
}

body.lab-svc-page .lab-svc-workspace {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 100vh;
}

/* ?? top chrome (ReUI-like app bar) ?? */
body.lab-svc-page .lab-svc-chrome {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 16px;
    padding: 10px 22px;
    background: var(--lab-panel);
    border-bottom: 1px solid var(--lab-line);
    box-sizing: border-box;
    flex-shrink: 0;
    z-index: 5;
}

body.lab-svc-page .lab-svc-chrome__search {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1 1 220px;
    max-width: 420px;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid var(--lab-line);
    border-radius: 999px;
    background: var(--lab-soft);
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-chrome__search svg {
    flex-shrink: 0;
    opacity: 0.7;
}

body.lab-svc-page .lab-svc-chrome__search input {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    outline: none;
    background: transparent;
    font: inherit;
    font-size: 0.86rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-chrome__search input:disabled {
    cursor: default;
    opacity: 0.85;
}

body.lab-svc-page .lab-svc-chrome__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

body.lab-svc-page .lab-svc-chrome__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid transparent;
    color: var(--lab-muted);
    background: transparent;
    text-decoration: none;
    cursor: pointer;
    font: inherit;
    padding: 0;
    transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-chrome__icon:hover {
    background: rgba(23, 59, 66, 0.05);
    color: var(--lab-ink);
    border-color: var(--lab-line);
}

body.lab-svc-page .lab-svc-locale {
    position: relative;
}

body.lab-svc-page .lab-svc-locale__flag {
    display: block;
    width: 22px;
    height: 16px;
    border-radius: 3px;
    object-fit: cover;
    box-shadow: 0 0 0 1px rgba(23, 59, 66, 0.18);
    background: rgba(18, 28, 22, 0.06);
}

body.lab-svc-page .lab-svc-locale__dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 80;
    min-width: 200px;
    max-height: min(70vh, 360px);
    overflow: auto;
    padding: 6px;
    border-radius: 12px;
    border: 1px solid var(--lab-line);
    background: #fff;
    box-shadow: 0 14px 36px rgba(15, 40, 48, 0.16);
}

body.lab-svc-page .lab-svc-locale__opt {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin: 0;
    padding: 8px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.88rem;
    text-align: left;
    cursor: pointer;
    transition: background 150ms ease;
}

body.lab-svc-page .lab-svc-locale__opt:hover,
body.lab-svc-page .lab-svc-locale__opt:focus-visible {
    background: rgba(15, 118, 110, 0.08);
    outline: none;
}

body.lab-svc-page .lab-svc-locale__opt.is-active {
    background: rgba(15, 118, 110, 0.12);
    font-weight: 650;
}

body.lab-svc-page .lab-svc-locale__opt-flag {
    width: 22px;
    height: 16px;
    border-radius: 3px;
    object-fit: cover;
    flex: 0 0 auto;
    box-shadow: 0 0 0 1px rgba(23, 59, 66, 0.16);
}

body.lab-svc-page .lab-svc-chrome__rail-toggle {
    flex-shrink: 0;
}

/* Brand row: logo + rail collapse opposite each other */
body.lab-svc-page .lab-svc-rail__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-rail__head .lab-svc-brand {
    min-width: 0;
}

body.lab-svc-page .lab-svc-rail__toggle {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid var(--lab-line, #d8e0e6);
    background: #fff;
    color: var(--lab-ink, #1a2420);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    padding: 0;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-rail__toggle:hover {
    background: rgba(23, 59, 66, 0.05);
    border-color: rgba(23, 59, 66, 0.22);
}

body.lab-svc-page .lab-svc-rail__toggle svg {
    display: block;
}

/* Collapsed left rail */
body.lab-svc-page.is-rail-collapsed .lab-svc-shell {
    grid-template-columns: 72px minmax(0, 1fr);
}

body.lab-svc-page.is-rail-collapsed .lab-svc-rail {
    padding: 16px 10px;
    align-items: center;
}

body.lab-svc-page.is-rail-collapsed .lab-svc-rail__head {
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
}

body.lab-svc-page.is-rail-collapsed .lab-svc-brand {
    justify-content: center;
    padding: 4px;
}

body.lab-svc-page.is-rail-collapsed .lab-svc-brand__text,
body.lab-svc-page.is-rail-collapsed .lab-svc-rail__lab,
body.lab-svc-page.is-rail-collapsed .lab-svc-nav__label,
body.lab-svc-page.is-rail-collapsed .lab-svc-rail__foot {
    display: none;
}

body.lab-svc-page.is-rail-collapsed .lab-svc-nav a,
body.lab-svc-page.is-rail-collapsed .lab-svc-nav span {
    justify-content: center;
    padding: 10px;
}

body.lab-svc-page .lab-svc-chrome__avatar {
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid var(--lab-line);
    background: #e7ebe4 center / cover no-repeat;
    color: var(--lab-ink);
    font-size: 0.68rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
    cursor: pointer;
    padding: 0;
    font-family: inherit;
}

body.lab-svc-page .lab-svc-chrome__avatar.is-empty {
    background-color: rgba(221, 237, 173, 0.65);
}

body.lab-svc-page .lab-svc-user-menu {
    position: relative;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-user-menu__dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 40;
    min-width: 240px;
    max-width: min(300px, calc(100vw - 24px));
    padding: 6px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid var(--lab-line);
    box-shadow: 0 12px 32px rgba(15, 40, 48, 0.14);
    display: flex;
    flex-direction: column;
    gap: 2px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-user-menu__dropdown[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-user-menu__item {
    display: block;
    width: 100%;
    margin: 0;
    padding: 9px 12px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.88rem;
    font-weight: 550;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-user-menu__item:hover,
body.lab-svc-page .lab-svc-user-menu__item.is-active {
    background: rgba(221, 237, 173, 0.45);
}

body.lab-svc-page .lab-svc-user-menu__sep {
    height: 1px;
    margin: 4px 6px;
    background: var(--lab-line);
}

body.lab-svc-page .lab-svc-chrome__create {
    min-height: 36px;
    padding: 0 14px;
    font-size: 0.84rem;
}

/* ?? rail ?? */
body.lab-svc-page .lab-svc-rail {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 20px 14px;
    background: var(--lab-panel);
    border-right: 1px solid var(--lab-line);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 4px 8px;
    text-decoration: none;
    color: var(--lab-ink);
    font-weight: 700;
    letter-spacing: -0.02em;
    border-radius: 10px;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-brand:hover {
    background: rgba(23, 59, 66, 0.05);
}

body.lab-svc-page .lab-svc-brand__mark {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: var(--lab-ink);
    color: var(--lab-lime);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.lab-svc-page .lab-svc-brand__mark svg {
    display: block;
}

body.lab-svc-page .lab-svc-rail__lab {
    margin: -8px 8px 0;
    font-size: 0.68rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

body.lab-svc-page .lab-svc-nav a,
body.lab-svc-page .lab-svc-nav span {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 550;
    line-height: 1.25;
    color: var(--lab-muted);
    text-decoration: none;
    transition: background 160ms ease, color 160ms ease;
    box-sizing: border-box;
}

/* Long labels wrap inside the active pill (safety net if rail is tight) */
body.lab-svc-page .lab-svc-nav__label {
    min-width: 0;
    flex: 1 1 auto;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: normal;
}

body.lab-svc-page .lab-svc-nav a:hover {
    background: rgba(23, 59, 66, 0.05);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-nav a.is-active {
    background: rgba(221, 237, 173, 0.55);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-nav span.is-soon {
    opacity: 0.55;
    cursor: default;
}

body.lab-svc-page .lab-svc-nav__ico {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    opacity: 0.85;
}

body.lab-svc-page .lab-svc-rail__foot {
    margin-top: auto;
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

body.lab-svc-page .lab-svc-rail__foot a {
    font-size: 0.78rem;
    color: var(--lab-muted);
    text-decoration: none;
    transition: color 160ms ease;
}

body.lab-svc-page .lab-svc-rail__foot a:hover {
    color: var(--lab-ink);
}

/* ?? main ?? */
body.lab-svc-page .lab-svc-main {
    padding: 18px 24px 36px;
    box-sizing: border-box;
    flex: 1 1 auto;
    min-height: 0;
}

body.lab-svc-page .lab-svc-pagehead,
body.lab-svc-page .lab-svc-top {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

body.lab-svc-page .lab-svc-crumb {
    margin: 0 0 4px;
    font-size: 0.74rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-pagehead__sub {
    margin: 4px 0 0;
    font-size: 0.86rem;
    color: var(--lab-muted);
    line-height: 1.35;
    max-width: 42rem;
}

body.lab-svc-page .lab-svc-title {
    margin: 0;
    font-family: 'Unbounded', 'Arial Black', sans-serif;
    font-size: clamp(1.15rem, 2vw, 1.45rem);
    font-weight: 600;
    letter-spacing: -0.03em;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-title-line {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    position: relative;
}

body.lab-svc-page .lab-svc-title-line .lab-svc-title {
    flex: 0 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-title-line .lab-svc-info--trail {
    margin-top: 2px;
}

body.lab-svc-page .lab-svc-title-line .lab-svc-info--trail .lab-svc-info__tip {
    left: 0;
    right: auto;
    max-width: min(360px, 72vw);
    z-index: 40;
}

/* List tabs (attractions: loaded | moderation) вЂ” LAB chips in toolbar */
body.lab-svc-page .lab-svc-list-tabs {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-list-tabs__btn {
    margin: 0;
    padding: 7px 12px;
    border-radius: 8px;
    border: 1px solid var(--lab-line);
    background: #fff;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-list-tabs__btn:hover {
    background: rgba(23, 59, 66, 0.04);
    color: var(--lab-ink);
    border-color: rgba(23, 59, 66, 0.22);
}

body.lab-svc-page .lab-svc-list-tabs__btn.is-active {
    background: rgba(221, 237, 173, 0.55);
    border-color: transparent;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-list-tabs__btn:focus-visible {
    outline: 2px solid rgba(23, 59, 66, 0.35);
    outline-offset: 2px;
}

/* РџСЂРѕРіСЂР°РјРјС‹ | РћР±СѓС‡РµРЅРёРµ | вЂ¦ вЂ” pagehead segment */
body.lab-svc-page .lab-svc-crs-seg {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 4px;
    margin: 10px 0 0;
    padding: 4px;
    border-radius: 12px;
    background: #f1f5f9;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-crs-seg__item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    border: 0;
    background: transparent;
    color: var(--lab-muted, #6b7280);
    font: inherit;
    font-size: 0.84rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-crs-seg__item:hover {
    color: var(--lab-ink, #173b42);
    background: rgba(255, 255, 255, 0.55);
}

body.lab-svc-page .lab-svc-crs-seg__item.is-active {
    background: #fff;
    color: var(--lab-ink, #0f172a);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
    pointer-events: none;
}

body.lab-svc-page .lab-svc-crs-seg__item:focus-visible {
    outline: 2px solid var(--lab-lime, #b7e63a);
    outline-offset: 2px;
}

body.lab-svc-page .lab-svc-pagehead__actions,
body.lab-svc-page .lab-svc-top__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

body.lab-svc-page .lab-svc-pagehead__actions[hidden],
body.lab-svc-page .lab-svc-top__actions[hidden],
body.lab-svc-page .lab-svc-staff[hidden],
body.lab-svc-page .lab-svc-credit[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-period {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: var(--lab-panel);
    font-size: 0.86rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 16px;
    border: 0;
    border-radius: 10px;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 650;
    text-decoration: none;
    cursor: pointer;
    transition: background 160ms ease, opacity 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-btn--ink {
    background: var(--lab-ink);
    color: #fff;
}

body.lab-svc-page .lab-svc-btn--ink:hover {
    background: #0f2a30;
}

body.lab-svc-page .lab-svc-btn--ghost {
    background: var(--lab-panel);
    color: var(--lab-ink);
    border: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-btn--ghost:hover {
    border-color: rgba(23, 59, 66, 0.35);
}

body.lab-svc-page .lab-svc-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(221, 237, 173, 0.65);
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-ink);
    text-decoration: none;
    cursor: pointer;
    transition: background 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page a.lab-svc-badge:hover {
    background: rgba(221, 237, 173, 0.95);
    box-shadow: 0 0 0 1px rgba(23, 59, 66, 0.12);
}

body.lab-svc-page a.lab-svc-badge:focus-visible {
    outline: 2px solid rgba(23, 59, 66, 0.35);
    outline-offset: 2px;
}

body.lab-svc-page .lab-svc-mock-note {
    margin: 0 0 18px;
    padding: 10px 14px;
    border-radius: 12px;
    border: 1px solid var(--lab-line);
    background: rgba(255, 252, 248, 0.8);
    font-size: 0.82rem;
    color: var(--lab-muted);
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-dash-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    margin: 0 0 14px;
}

body.lab-svc-page .lab-svc-dash-switch {
    display: inline-flex;
    gap: 2px;
    padding: 3px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: var(--lab-soft, #f3f5f1);
}

body.lab-svc-page .lab-svc-dash-switch button {
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.84rem;
    font-weight: 650;
    padding: 7px 14px;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-dash-switch button:hover {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-dash-switch button.is-active {
    background: rgba(221, 237, 173, 0.75);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-dash-status {
    margin: 0;
    flex: 1 1 200px;
    font-size: 0.78rem;
    color: var(--lab-muted);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-dash-status[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-dash-panel[hidden] {
    display: none !important;
}

/* ?? KPI ?? */
body.lab-svc-page .lab-svc-kpi {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}

body.lab-svc-page .lab-svc-kpi__card {
    display: block;
    padding: 16px 16px 14px;
    border-radius: 16px;
    border: 1px solid var(--lab-line);
    background: var(--lab-panel);
    text-decoration: none;
    color: inherit;
    box-shadow: 0 1px 2px rgba(15, 40, 48, 0.04);
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-kpi__card:hover {
    border-color: rgba(23, 59, 66, 0.28);
    box-shadow: 0 8px 22px rgba(15, 40, 48, 0.08);
}

body.lab-svc-page .lab-svc-kpi__label {
    margin: 0 0 10px;
    font-size: 0.8rem;
    color: var(--lab-muted);
    font-weight: 550;
}

body.lab-svc-page .lab-svc-kpi__value {
    margin: 0;
    font-size: 1.65rem;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.1;
}

body.lab-svc-page .lab-svc-kpi__delta {
    margin: 8px 0 0;
    font-size: 0.78rem;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-kpi__delta.is-up {
    color: var(--lab-ok);
}

body.lab-svc-page .lab-svc-kpi__delta.is-warn {
    color: var(--lab-warn);
}

body.lab-svc-page .lab-svc-kpi__delta.is-muted {
    color: var(--lab-muted);
    font-weight: 500;
}

/* ?? grid ?? */
body.lab-svc-page .lab-svc-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    gap: 14px;
    align-items: start;
}

body.lab-svc-page .lab-svc-card {
    border-radius: 16px;
    border: 1px solid var(--lab-line);
    background: var(--lab-panel);
    box-shadow: 0 1px 2px rgba(15, 40, 48, 0.04);
    padding: 18px 18px 16px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 14px;
}

body.lab-svc-page .lab-svc-card__title {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

body.lab-svc-page .lab-svc-card__meta {
    font-size: 0.78rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 16px;
}

body.lab-svc-page .lab-svc-stats__item {
    padding: 12px;
    border-radius: 12px;
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-stats__k {
    display: block;
    margin-bottom: 6px;
    font-size: 0.72rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-stats__v {
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -0.02em;
}

body.lab-svc-page .lab-svc-progress {
    margin-bottom: 16px;
}

body.lab-svc-page .lab-svc-progress__row {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
    font-size: 0.82rem;
}

body.lab-svc-page .lab-svc-progress__bar {
    height: 8px;
    border-radius: 999px;
    background: rgba(23, 59, 66, 0.08);
    overflow: hidden;
}

body.lab-svc-page .lab-svc-progress__fill {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #173b42, #3d6b74);
    transition: width 400ms ease;
}

body.lab-svc-page .lab-svc-events {
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

body.lab-svc-page .lab-svc-events li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid var(--lab-line);
    font-size: 0.84rem;
}

body.lab-svc-page .lab-svc-events li:first-child {
    border-top: 0;
    padding-top: 0;
}

body.lab-svc-page .lab-svc-events li.is-clickable {
    cursor: pointer;
    border-radius: 8px;
    margin: 0 -8px;
    padding-left: 8px;
    padding-right: 8px;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-events li.is-clickable:hover,
body.lab-svc-page .lab-svc-events li.is-clickable:focus-visible {
    background: #eef3ee;
}

body.lab-svc-page .lab-svc-tag {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

body.lab-svc-page .lab-svc-tag--ok {
    background: rgba(31, 122, 76, 0.12);
    color: var(--lab-ok);
}

body.lab-svc-page .lab-svc-tag--wait {
    background: rgba(59, 109, 140, 0.14);
    color: var(--lab-info);
}

body.lab-svc-page .lab-svc-tag--risk {
    background: rgba(180, 83, 9, 0.14);
    color: var(--lab-risk);
}

body.lab-svc-page .lab-svc-events__text {
    margin: 0;
    color: var(--lab-ink);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-events__time {
    color: var(--lab-muted);
    font-size: 0.75rem;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-cta-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

/* capacity bars */
body.lab-svc-page .lab-svc-cap__big {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 6px;
}

body.lab-svc-page .lab-svc-cap__pct {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.04em;
}

body.lab-svc-page .lab-svc-bars {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    height: 120px;
    margin: 14px 0 12px;
    padding: 0 2px;
}

body.lab-svc-page .lab-svc-bars span {
    flex: 1;
    border-radius: 6px 6px 2px 2px;
    background: linear-gradient(180deg, #9bb8a8, #173b42);
    min-height: 8px;
    opacity: 0.85;
    transition: opacity 160ms ease;
}

body.lab-svc-page .lab-svc-bars span:hover {
    opacity: 1;
}

body.lab-svc-page .lab-svc-cap__foot {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.8rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-team {
    display: flex;
    align-items: center;
    gap: 8px;
}

body.lab-svc-page .lab-svc-avatar {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    border: 2px solid #fff;
    margin-left: -8px;
    background: #c9d5c8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--lab-ink);
    overflow: hidden;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-avatar.has-photo {
    padding: 0;
    background: #d7e0d4;
}

body.lab-svc-page .lab-svc-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-avatar:first-child {
    margin-left: 0;
}

/* mix */
body.lab-svc-page .lab-svc-mix {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
}

body.lab-svc-page .lab-svc-mix__donut {
    width: 120px;
    height: 120px;
}

body.lab-svc-page .lab-svc-mix__legend {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

body.lab-svc-page .lab-svc-mix__legend li {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.84rem;
}

body.lab-svc-page .lab-svc-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-credit {
    margin: 22px 0 0;
    font-size: 0.72rem;
    letter-spacing: 0.03em;
    color: rgba(23, 59, 66, 0.4);
    text-align: center;
}

@media (max-width: 1100px) {
    body.lab-svc-page .lab-svc-kpi {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.lab-svc-page .lab-svc-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 820px) {
    body.lab-svc-page .lab-svc-shell {
        grid-template-columns: 1fr;
    }

    body.lab-svc-page .lab-svc-rail {
        border-right: 0;
        border-bottom: 1px solid var(--lab-line);
        padding-bottom: 12px;
    }

    body.lab-svc-page .lab-svc-nav {
        flex-direction: row;
        flex-wrap: wrap;
    }

    body.lab-svc-page .lab-svc-rail__foot {
        margin-top: 0;
        flex-direction: row;
        flex-wrap: wrap;
    }

    body.lab-svc-page .lab-svc-main {
        padding: 18px 16px 32px;
    }

    body.lab-svc-page .lab-svc-stats,
    body.lab-svc-page .lab-svc-cta-row,
    body.lab-svc-page .lab-svc-mix {
        grid-template-columns: 1fr;
    }
}
/* ?? LAB day?resource calendar ?? */
body.lab-svc-page .lab-svc-cal-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

body.lab-svc-page .lab-svc-cal-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

body.lab-svc-page .lab-svc-cal-day-label {
    min-width: 200px;
    text-align: center;
    font-weight: 650;
    font-size: 0.95rem;
}

body.lab-svc-page .lab-svc-cal-show {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: var(--lab-panel);
}

body.lab-svc-page .lab-svc-cal-show__label {
    padding: 0 8px;
    font-size: 0.72rem;
    color: var(--lab-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.lab-svc-page .lab-svc-cal-show button {
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.84rem;
    font-weight: 600;
    padding: 8px 12px;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-cal-show button:hover {
    color: var(--lab-ink);
    background: rgba(23, 59, 66, 0.05);
}

body.lab-svc-page .lab-svc-cal-show button.is-active {
    background: rgba(221, 237, 173, 0.65);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-cal-meta {
    margin: 0 0 10px;
    font-size: 0.82rem;
    color: var(--lab-muted);
}

/* Calendar page: day grid fills viewport ? no vertical scrollbar */
body.lab-svc-page.lab-svc-cal-page {
    height: 100vh;
    overflow: hidden;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-shell {
    height: 100vh;
    min-height: 0;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-workspace {
    min-height: 0;
    height: 100vh;
    overflow: hidden;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-main {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: auto;
    flex: 1 1 auto;
    overflow: hidden;
    padding: 12px 20px 10px;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-pagehead,
body.lab-svc-page.lab-svc-cal-page .lab-svc-top {
    margin-bottom: 8px;
    flex-shrink: 0;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-mock-note,
body.lab-svc-page.lab-svc-cal-page .lab-svc-cal-toolbar,
body.lab-svc-page.lab-svc-cal-page .lab-svc-cal-meta,
body.lab-svc-page.lab-svc-cal-page .lab-svc-credit {
    flex-shrink: 0;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-mock-note {
    margin-bottom: 8px;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-credit {
    margin-top: 8px;
    margin-bottom: 0;
}

body.lab-svc-page .lab-svc-cal-scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid var(--lab-line);
    border-radius: 16px;
    background: var(--lab-panel);
    max-height: none;
}

body.lab-svc-page .lab-svc-cal-grid {
    --lab-cal-hour: 40px;
    --lab-cal-time-w: 56px;
    --lab-cal-col-w: 160px;
    display: grid;
    height: 100%;
    grid-template-columns: var(--lab-cal-time-w) repeat(var(--lab-cal-cols, 1), minmax(var(--lab-cal-col-w), 1fr));
    min-width: calc(var(--lab-cal-time-w) + var(--lab-cal-cols, 1) * var(--lab-cal-col-w));
}

body.lab-svc-page .lab-svc-cal-corner,
body.lab-svc-page .lab-svc-cal-colhead {
    position: sticky;
    top: 0;
    z-index: 3;
    background: #f7f9f5;
    border-bottom: 1px solid var(--lab-line);
    border-right: 1px solid var(--lab-line);
    padding: 8px 10px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-cal-colhead {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-cal-colhead__media {
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-cal-colhead__photo {
    display: block;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    object-fit: cover;
    background: #e7ebe4;
    border: 1px solid rgba(23, 59, 66, 0.12);
}

body.lab-svc-page .lab-svc-cal-colhead__photo--ph {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: var(--lab-ink);
    background: #e2eadc;
}

body.lab-svc-page .lab-svc-cal-colhead__text {
    min-width: 0;
    flex: 1 1 auto;
}

body.lab-svc-page .lab-svc-cal-corner {
    left: 0;
    z-index: 4;
}

body.lab-svc-page .lab-svc-cal-colhead__title {
    margin: 0;
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--lab-ink);
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-cal-colhead__sub {
    margin: 2px 0 0;
    font-size: 0.68rem;
    color: var(--lab-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-cal-colhead__loc {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    max-width: 100%;
    margin-top: 4px;
    padding: 2px 7px 2px 5px;
    border-radius: 999px;
    border: 1px solid var(--lab-line, #d7e2e6);
    background: #eef3f0;
    --cal-loc-color: #173b42;
    font-size: 0.64rem;
    font-weight: 650;
    color: var(--lab-ink, #0f2830);
    line-height: 1.2;
}

body.lab-svc-page .lab-svc-cal-colhead__loc.has-color {
    border-color: color-mix(in srgb, var(--cal-loc-color) 35%, var(--lab-line, #d7e2e6));
    background: color-mix(in srgb, var(--cal-loc-color) 12%, #fff);
}

body.lab-svc-page .lab-svc-cal-colhead__loc.is-empty {
    color: var(--lab-muted, #5b727a);
    background: #f4f6f4;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-cal-colhead__loc.is-empty .lab-svc-cal-colhead__loc-dot {
    background: #b0bbb4;
}

body.lab-svc-page .lab-svc-cal-colhead__loc.is-from-order {
    border-style: dashed;
}

body.lab-svc-page .lab-svc-cal-colhead__loc-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex: 0 0 auto;
    background: var(--cal-loc-color);
}

body.lab-svc-page .lab-svc-cal-colhead__loc-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-cal-time {
    position: sticky;
    left: 0;
    z-index: 2;
    background: var(--lab-panel);
    border-right: 1px solid var(--lab-line);
    border-bottom: 1px solid rgba(232, 236, 227, 0.9);
    height: var(--lab-cal-hour);
    padding: 4px 6px 0;
    font-size: 0.68rem;
    color: var(--lab-muted);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-cal-lane {
    position: relative;
    grid-row: 2 / span var(--lab-cal-rows, 13);
    border-right: 1px solid var(--lab-line);
    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0,
            transparent calc(var(--lab-cal-hour) - 1px),
            rgba(232, 236, 227, 0.95) calc(var(--lab-cal-hour) - 1px),
            rgba(232, 236, 227, 0.95) var(--lab-cal-hour)
        );
    min-height: calc(var(--lab-cal-rows, 13) * var(--lab-cal-hour));
    height: calc(var(--lab-cal-rows, 13) * var(--lab-cal-hour));
}

body.lab-svc-page .lab-svc-cal-block {
    position: absolute;
    left: 4px;
    right: 4px;
    border-radius: 10px;
    padding: 4px 7px 5px;
    box-sizing: border-box;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    border: 1px solid transparent;
    text-decoration: none;
    color: inherit;
    text-align: left;
    font: inherit;
    width: auto;
    appearance: none;
    -webkit-appearance: none;
    background: #f3f4f2;
    box-shadow: 0 1px 2px rgba(15, 40, 48, 0.06);
    transition: box-shadow 160ms ease;
    z-index: 1;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-cal-block:hover {
    box-shadow: 0 6px 16px rgba(15, 40, 48, 0.12);
    z-index: 2;
}

body.lab-svc-page .lab-svc-cal-block__head {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-cal-block__title {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
    flex: 1 1 auto;
}

body.lab-svc-page .lab-svc-cal-block__status {
    flex-shrink: 0;
    margin: 0;
    padding: 1px 6px;
    font-size: 0.54rem;
    line-height: 1.2;
    max-width: 42%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-cal-block__sub {
    margin: 1px 0 0;
    font-size: 0.62rem;
    line-height: 1.2;
    color: rgba(23, 59, 66, 0.72);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-cal-block__foot {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    margin-top: auto;
    min-height: 0;
    padding-top: 2px;
}

body.lab-svc-page .lab-svc-cal-block__meta {
    margin: 0;
    min-width: 0;
    flex: 1 1 auto;
    font-size: 0.58rem;
    line-height: 1.2;
    color: rgba(23, 59, 66, 0.62);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-cal-block__tag {
    display: none;
}

/* Soft product hues (stable per excursion/course) */
body.lab-svc-page .lab-svc-cal-block--hue0 { background: #eaf6ee; border-color: #b7dcc4; }
body.lab-svc-page .lab-svc-cal-block--hue1 { background: #e8f1f7; border-color: #b7d0e0; }
body.lab-svc-page .lab-svc-cal-block--hue2 { background: #f3efe6; border-color: #ddd0b0; }
body.lab-svc-page .lab-svc-cal-block--hue3 { background: #eef3e8; border-color: #c5d4b4; }
body.lab-svc-page .lab-svc-cal-block--hue4 { background: #f6ecec; border-color: #e0bcbc; }
body.lab-svc-page .lab-svc-cal-block--hue5 { background: #e8f4f2; border-color: #b5d8d1; }
body.lab-svc-page .lab-svc-cal-block--hue6 { background: #f0eee8; border-color: #d4cec0; }
body.lab-svc-page .lab-svc-cal-block--hue7 { background: #ebeff5; border-color: #c2ccd9; }

body.lab-svc-page .lab-svc-cal-block__tag--wait { background: rgba(59, 109, 140, 0.16); color: #3b6d8c; }
body.lab-svc-page .lab-svc-cal-block__tag--ready { background: rgba(31, 122, 76, 0.14); color: #1f7a4c; }
body.lab-svc-page .lab-svc-cal-block__tag--service { background: rgba(98, 70, 140, 0.14); color: #62468c; }
body.lab-svc-page .lab-svc-cal-block__tag--done { background: rgba(23, 59, 66, 0.1); color: #173b42; }
body.lab-svc-page .lab-svc-cal-block__tag--cancel { background: rgba(156, 60, 60, 0.12); color: #9c3c3c; }
body.lab-svc-page .lab-svc-cal-block__tag--booked { background: rgba(107, 114, 128, 0.14); color: #6b7280; }

/* Cancelled: mute product color */
body.lab-svc-page .lab-svc-cal-block--tone-cancel {
    background: #f6ecec;
    border-color: #e0bcbc;
    opacity: 0.85;
}

body.lab-svc-page.lab-svc-cal-page .lab-svc-main { padding-bottom: 12px; }

@media (max-width: 900px) {
    body.lab-svc-page.lab-svc-cal-page {
        height: auto;
        overflow: auto;
    }
    body.lab-svc-page.lab-svc-cal-page .lab-svc-shell,
    body.lab-svc-page.lab-svc-cal-page .lab-svc-main {
        height: auto;
        overflow: visible;
    }
    body.lab-svc-page .lab-svc-cal-scroll {
        max-height: min(70vh, 640px);
        overflow: auto;
    }
}

/* ?? Dashboard month/week load calendar (product chips) ?? */
body.lab-svc-page .lab-svc-mcal {
    margin-top: 14px;
}

body.lab-svc-page .lab-svc-mcal.lab-svc-dash-panel {
    margin-top: 0;
}

body.lab-svc-page .lab-svc-mcal[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-mcal__head {
    align-items: flex-start;
    gap: 12px;
}

body.lab-svc-page .lab-svc-mcal__tools {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
}

body.lab-svc-page .lab-svc-mcal__views {
    display: inline-flex;
    gap: 2px;
    padding: 3px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-mcal__views button {
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 6px 10px;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-mcal__views button:hover {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-mcal__views button.is-active {
    background: rgba(221, 237, 173, 0.65);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-mcal__label {
    min-width: 140px;
    text-align: center;
    font-weight: 650;
    font-size: 0.9rem;
    text-transform: capitalize;
}

body.lab-svc-page .lab-svc-mcal__weekdays {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
    margin: 8px 0 6px;
    padding: 0 2px;
}

body.lab-svc-page .lab-svc-mcal__weekdays span {
    font-size: 0.68rem;
    color: var(--lab-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-align: right;
    padding-right: 4px;
}

body.lab-svc-page .lab-svc-mcal__grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
}

body.lab-svc-page .lab-svc-mcal__grid.is-week .lab-svc-mcal-cell {
    min-height: 148px;
}

body.lab-svc-page .lab-svc-mcal-cell {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-height: 96px;
    padding: 8px 6px 6px;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fbfcf9;
    text-decoration: none;
    color: inherit;
    box-sizing: border-box;
    font: inherit;
    text-align: left;
    width: 100%;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

body.lab-svc-page .lab-svc-mcal-day {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 420px;
}

body.lab-svc-page .lab-svc-mcal-day[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-mcal-day .lab-svc-cal-show {
    margin: 0;
}

body.lab-svc-page .lab-svc-cal-groups {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 360px;
}

body.lab-svc-page .lab-svc-cal-group {
    border: 1px solid var(--lab-line);
    border-radius: 14px;
    background: #fbfcf9;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-cal-group__sum {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px;
    cursor: pointer;
    font-weight: 600;
    color: var(--lab-ink);
    background: #f3f6f1;
    transition: background 160ms ease;
    --cal-group-color: #173b42;
}

body.lab-svc-page .lab-svc-cal-group__left {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-cal-group__dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex: 0 0 auto;
    background: var(--cal-group-color);
    box-shadow: 0 0 0 3px rgba(23, 59, 66, 0.12);
}

body.lab-svc-page .lab-svc-cal-group__sum.has-color .lab-svc-cal-group__dot {
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--cal-group-color) 18%, transparent);
}

body.lab-svc-page .lab-svc-cal-group__sum::-webkit-details-marker {
    display: none;
}

body.lab-svc-page .lab-svc-cal-group__sum::before {
    content: '';
    width: 0.45em;
    height: 0.45em;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    margin-right: 4px;
    opacity: 0.55;
    transition: transform 160ms ease;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-cal-group[open] > .lab-svc-cal-group__sum::before {
    transform: rotate(45deg);
}

body.lab-svc-page .lab-svc-cal-group__sum:hover {
    background: #eef3ea;
}

body.lab-svc-page .lab-svc-cal-group__title {
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-cal-group__meta {
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--lab-soft);
}

body.lab-svc-page .lab-svc-cal-scroll--group {
    border: 0;
    border-top: 1px solid var(--lab-line);
    border-radius: 0;
    min-height: 280px;
    max-height: 52vh;
    overflow-y: auto;
}

body.lab-svc-page .lab-svc-mcal-day .lab-svc-cal-scroll {
    min-height: 360px;
    max-height: 62vh;
    overflow-y: auto;
}

body.lab-svc-page .lab-svc-mcal-cell:hover {
    border-color: #c5d0c2;
    box-shadow: 0 4px 14px rgba(15, 40, 48, 0.08);
    background: #fff;
}

body.lab-svc-page .lab-svc-mcal-cell.is-out {
    opacity: 0.45;
    background: #f3f5f1;
}

body.lab-svc-page .lab-svc-mcal-cell.is-today {
    border-color: #173b42;
    box-shadow: inset 0 0 0 1px rgba(23, 59, 66, 0.35);
}

body.lab-svc-page .lab-svc-mcal-cell.is-selected {
    background: #e8eeea;
}

body.lab-svc-page .lab-svc-mcal-cell.is-today.is-selected {
    background: #e8eeea;
}

body.lab-svc-page .lab-svc-mcal-cell.has-orders {
    background: #fff;
}

body.lab-svc-page .lab-svc-mcal-cell__num {
    align-self: flex-end;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--lab-ink);
    line-height: 1;
}

body.lab-svc-page .lab-svc-mcal-cell__chips {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-height: 0;
    flex: 1;
}

body.lab-svc-page .lab-svc-mcal-chip {
    display: block;
    border-radius: 7px;
    padding: 3px 6px;
    font-size: 0.62rem;
    font-weight: 650;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border: 1px solid transparent;
}

body.lab-svc-page .lab-svc-mcal-chip--more {
    background: #eef1ec;
    border-color: #d5dbd0;
    color: var(--lab-muted);
    font-weight: 700;
}

body.lab-svc-page .lab-svc-mcal-chip--hue0 { background: #eaf6ee; border-color: #b7dcc4; color: #1f7a4c; }
body.lab-svc-page .lab-svc-mcal-chip--hue1 { background: #e8f1f7; border-color: #b7d0e0; color: #3b6d8c; }
body.lab-svc-page .lab-svc-mcal-chip--hue2 { background: #f3efe6; border-color: #ddd0b0; color: #8a6a2a; }
body.lab-svc-page .lab-svc-mcal-chip--hue3 { background: #eef3e8; border-color: #c5d4b4; color: #4a6340; }
body.lab-svc-page .lab-svc-mcal-chip--hue4 { background: #f6ecec; border-color: #e0bcbc; color: #9c3c3c; }
body.lab-svc-page .lab-svc-mcal-chip--hue5 { background: #e8f4f2; border-color: #b5d8d1; color: #2f6f66; }
body.lab-svc-page .lab-svc-mcal-chip--hue6 { background: #f0eee8; border-color: #d4cec0; color: #6a6354; }
body.lab-svc-page .lab-svc-mcal-chip--hue7 { background: #ebeff5; border-color: #c2ccd9; color: #45566e; }

body.lab-svc-page .lab-svc-mcal__legend {
    list-style: none;
    margin: 12px 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
}

body.lab-svc-page .lab-svc-mcal__legend li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-mcal__legend .lab-svc-mcal-chip {
    width: 14px;
    height: 14px;
    padding: 0;
    border-radius: 4px;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-mcal__legend strong {
    color: var(--lab-muted);
    font-weight: 650;
}

@media (max-width: 900px) {
    body.lab-svc-page .lab-svc-mcal__grid {
        gap: 4px;
    }
    body.lab-svc-page .lab-svc-mcal-cell {
        min-height: 72px;
        padding: 6px 4px 4px;
    }
    body.lab-svc-page .lab-svc-mcal-chip {
        font-size: 0.55rem;
        padding: 2px 4px;
    }
}

/* —— LAB dashboard: day shift roster (zoom=shift) —— */
body.lab-svc-page .lab-svc-mcal-shift {
    margin-top: 4px;
}

body.lab-svc-page .lab-svc-shift-roster {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 8px;
}

body.lab-svc-page .lab-svc-shift-roster__empty {
    margin: 0;
    padding: 28px 12px;
    text-align: center;
    color: var(--lab-muted, #5b727a);
    font-size: 0.9rem;
}

body.lab-svc-page .lab-svc-shift-row {
    display: grid;
    grid-template-columns: minmax(160px, 240px) minmax(0, 1fr);
    gap: 12px 16px;
    align-items: start;
    padding: 12px 14px;
    border: 1px solid var(--lab-line, #d7e2e6);
    border-radius: 12px;
    background: #fff;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-shift-row:hover {
    border-color: rgba(23, 59, 66, 0.28);
    box-shadow: 0 1px 0 rgba(15, 40, 48, 0.04);
}

body.lab-svc-page .lab-svc-shift-row.is-unassigned {
    background: #f8faf9;
}

body.lab-svc-page .lab-svc-shift-row__loc {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    --shift-loc-color: #173b42;
}

body.lab-svc-page .lab-svc-shift-row__logo {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    object-fit: cover;
    border: 1px solid var(--lab-line, #d7e2e6);
    flex: 0 0 auto;
    background: #eef3f0;
}

body.lab-svc-page .lab-svc-shift-row__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--shift-loc-color);
    flex: 0 0 auto;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--shift-loc-color) 22%, transparent);
}

body.lab-svc-page .lab-svc-shift-row__loc-meta {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

body.lab-svc-page .lab-svc-shift-row__loc-meta strong {
    font-size: 0.9rem;
    font-weight: 650;
    color: var(--lab-ink, #0f2830);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-shift-row__count {
    font-size: 0.72rem;
    color: var(--lab-muted, #5b727a);
    font-weight: 600;
}

body.lab-svc-page .lab-svc-shift-row__staff {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
    align-items: center;
}

body.lab-svc-page .lab-svc-shift-row__none {
    font-size: 0.82rem;
    color: var(--lab-muted, #5b727a);
}

body.lab-svc-page .lab-svc-shift-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    padding: 5px 10px 5px 5px;
    border-radius: 999px;
    border: 1px solid var(--lab-line, #d7e2e6);
    background: var(--lab-soft, #f4f7f4);
    --shift-chip-color: #173b42;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-shift-chip.has-color {
    border-color: color-mix(in srgb, var(--shift-chip-color) 35%, var(--lab-line, #d7e2e6));
    background: color-mix(in srgb, var(--shift-chip-color) 12%, #fff);
}

body.lab-svc-page .lab-svc-shift-chip__av {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--lab-ink, #0f2830);
    background: #d7e0d4;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-shift-chip__av.has-photo {
    padding: 0;
    background: #d7e0d4;
}

body.lab-svc-page .lab-svc-shift-chip__av.has-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.lab-svc-page .lab-svc-shift-chip__name {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--lab-ink, #0f2830);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 160px;
}

@media (max-width: 720px) {
    body.lab-svc-page .lab-svc-shift-row {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    body.lab-svc-page .lab-svc-shift-chip__name {
        max-width: 120px;
    }
}

/* ?? Order detail drawer (ReUI-style side panel) ?? */
body.lab-svc-page.lab-svc-drawer-open {
    overflow: hidden;
}

body.lab-svc-page .lab-svc-drawer {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: flex;
    justify-content: flex-end;
}

body.lab-svc-page .lab-svc-drawer[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-drawer__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 40, 48, 0.28);
    border: 0;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-drawer__panel {
    position: relative;
    z-index: 1;
    width: min(420px, 100vw);
    height: 100%;
    background: var(--lab-panel);
    border-left: 1px solid var(--lab-line);
    box-shadow: -12px 0 40px rgba(15, 40, 48, 0.12);
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    outline: none;
    animation: labSvcDrawerIn 180ms ease;
}

@keyframes labSvcDrawerIn {
    from { transform: translateX(12px); opacity: 0.6; }
    to { transform: translateX(0); opacity: 1; }
}

body.lab-svc-page .lab-svc-drawer__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 16px 10px;
    border-bottom: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-drawer__eyebrow {
    margin: 0 0 2px;
    font-size: 0.62rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-drawer__title {
    margin: 0;
    font-size: 0.98rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--lab-ink);
    line-height: 1.22;
}

body.lab-svc-page .lab-svc-drawer__close {
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-drawer__close:hover {
    background: rgba(23, 59, 66, 0.06);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-drawer__body {
    flex: 1;
    overflow: auto;
    padding: 10px 14px 6px;
    font-size: 0.84em;
}

body.lab-svc-page .lab-svc-drawer__status {
    display: inline-flex;
    margin: 0 0 8px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 700;
    border: 1px solid transparent;
}

/* Status tones ? same semantics as calendar block tags */
body.lab-svc-page .lab-svc-status--wait {
    background: rgba(59, 109, 140, 0.14);
    border-color: rgba(59, 109, 140, 0.28);
    color: #3b6d8c;
}
body.lab-svc-page .lab-svc-status--ready {
    background: rgba(31, 122, 76, 0.14);
    border-color: rgba(31, 122, 76, 0.28);
    color: #1f7a4c;
}
body.lab-svc-page .lab-svc-status--service {
    background: rgba(98, 70, 140, 0.14);
    border-color: rgba(98, 70, 140, 0.28);
    color: #62468c;
}
body.lab-svc-page .lab-svc-status--done {
    background: rgba(23, 59, 66, 0.1);
    border-color: rgba(23, 59, 66, 0.22);
    color: #173b42;
}
body.lab-svc-page .lab-svc-status--cancel {
    background: rgba(156, 60, 60, 0.12);
    border-color: rgba(156, 60, 60, 0.28);
    color: #9c3c3c;
}
body.lab-svc-page .lab-svc-status--booked {
    background: rgba(107, 114, 128, 0.12);
    border-color: rgba(107, 114, 128, 0.24);
    color: #6b7280;
}

body.lab-svc-page .lab-svc-drawer__row {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 7px 0;
    border-bottom: 1px solid rgba(228, 232, 225, 0.85);
}

body.lab-svc-page .lab-svc-drawer__ico {
    width: 22px;
    flex-shrink: 0;
    text-align: center;
    font-size: 0.72rem;
    color: var(--lab-muted);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-drawer__row-main {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-drawer__k {
    font-size: 0.58rem;
    color: var(--lab-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

body.lab-svc-page .lab-svc-drawer__v {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--lab-ink);
    word-break: break-word;
    line-height: 1.3;
}

body.lab-svc-page .lab-svc-drawer__hint {
    font-size: 0.64rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-drawer__party {
    margin: 2px 0 8px;
    padding: 8px 10px;
    border: 1px solid var(--lab-line, #e6eaf0);
    border-radius: 10px;
    background: #fafbfc;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

body.lab-svc-page .lab-svc-drawer__party-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-drawer__party-photo,
body.lab-svc-page .lab-svc-drawer__party-icon {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    object-fit: cover;
    flex-shrink: 0;
    background: #e7ebe4;
    border: 1px solid rgba(23, 59, 66, 0.1);
}

body.lab-svc-page .lab-svc-drawer__party-icon {
    border-radius: 8px;
    padding: 3px;
    box-sizing: border-box;
    object-fit: contain;
    background: #fff;
}

body.lab-svc-page .lab-svc-drawer__party-photo--ph,
body.lab-svc-page .lab-svc-drawer__party-icon--ph {
    display: inline-flex;
    background: #e2eadc;
}

body.lab-svc-page img.lab-svc-drawer__party-photo.is-broken {
    opacity: 0.35;
}

body.lab-svc-page .lab-svc-drawer__party-photo--ph::before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    margin: auto;
    border-radius: 50%;
    box-shadow: 0 8px 0 6px rgba(23, 59, 66, 0.18);
    background: rgba(23, 59, 66, 0.22);
}

body.lab-svc-page .lab-svc-drawer__party-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-drawer__inline-btn {
    display: inline-block;
    margin: 0;
    padding: 3px 8px;
    border: 1px solid rgba(23, 59, 66, 0.22);
    border-radius: 7px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.64rem;
    font-weight: 650;
    line-height: 1.25;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-drawer__inline-btn--accent {
    background: rgba(221, 237, 173, 0.85);
    border-color: rgba(23, 59, 66, 0.28);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-drawer__inline-btn--accent:hover {
    background: rgba(221, 237, 173, 1);
    border-color: rgba(23, 59, 66, 0.4);
}

body.lab-svc-page .lab-svc-drawer__row-actions {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-top: 5px;
}

body.lab-svc-page .lab-svc-drawer__money {
    margin: 2px 0 8px;
    padding: 8px 10px;
    border: 1px solid var(--lab-line, #e6eaf0);
    border-radius: 10px;
    background: #fafbfc;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

body.lab-svc-page .lab-svc-drawer__money-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

body.lab-svc-page .lab-svc-drawer__money-k {
    font-size: 0.58rem;
    color: var(--lab-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

body.lab-svc-page .lab-svc-drawer__money-v {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--lab-ink);
    text-align: right;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

body.lab-svc-page .lab-svc-drawer__money-row--due .lab-svc-drawer__money-v {
    font-size: 0.88rem;
}

body.lab-svc-page .lab-svc-drawer__muted {
    margin: 6px 0;
    color: var(--lab-muted);
    font-size: 0.76rem;
}

body.lab-svc-page .lab-svc-drawer__foot {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 16px 14px;
    border-top: 1px solid var(--lab-line);
    background: #fbfcf9;
}

body.lab-svc-page .lab-svc-drawer__foot:empty {
    display: none;
}

body.lab-svc-page .lab-svc-drawer__foot .lab-svc-btn {
    flex: 1 1 140px;
    text-align: center;
    text-decoration: none;
}

body.lab-svc-page .lab-svc-drawer__actions {
    padding: 0 16px 10px;
    border-top: 1px solid rgba(228, 232, 225, 0.9);
}

body.lab-svc-page .lab-svc-drawer__actions:empty {
    display: none;
}

body.lab-svc-page .lab-svc-drawer__actions-title {
    margin: 10px 0 6px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-drawer__timer {
    margin: 0 0 8px;
    padding: 6px 9px;
    border-radius: 8px;
    background: rgba(59, 109, 140, 0.1);
    border: 1px solid rgba(59, 109, 140, 0.22);
    color: #3b6d8c;
    font-size: 0.72rem;
    font-weight: 650;
}

body.lab-svc-page .lab-svc-drawer__timer.is-soon {
    background: rgba(180, 120, 40, 0.12);
    border-color: rgba(180, 120, 40, 0.28);
    color: #8a5a18;
}

body.lab-svc-page .lab-svc-drawer__timer.is-overdue {
    background: rgba(156, 60, 60, 0.1);
    border-color: rgba(156, 60, 60, 0.28);
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-drawer__actions-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.lab-svc-page .lab-svc-drawer__actions-row .lab-svc-btn {
    flex: 1 1 140px;
    min-height: 34px;
    padding: 0 12px;
    font-size: 0.78rem;
}

body.lab-svc-page .lab-svc-btn--danger {
    background: #fff;
    color: #9c3c3c;
    border: 1px solid #e0bcbc;
}

body.lab-svc-page .lab-svc-btn--danger:hover {
    background: #f6ecec;
}

body.lab-svc-page .lab-svc-drawer__wf-msg {
    margin: 6px 0 0;
    font-size: 0.7rem;
    color: var(--lab-ok);
}

body.lab-svc-page .lab-svc-drawer__wf-msg.is-err {
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-drawer__prep {
    display: inline-flex;
    margin-top: 1px;
    padding: 1px 7px;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-drawer__prep.is-paid {
    background: rgba(31, 122, 76, 0.12);
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-drawer__prep.is-pending {
    background: rgba(59, 109, 140, 0.14);
    color: #3b6d8c;
}

body.lab-svc-page .lab-svc-drawer__prep.is-risk {
    background: rgba(156, 60, 60, 0.12);
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-drawer__prep.is-muted {
    background: rgba(107, 114, 128, 0.12);
    color: #6b7280;
}

/* Cancel / replace instructor pops on LAB (reuse CRM modules) */
body.lab-svc-page .crm-cc-pop,
body.lab-svc-page .crm-ori-pop,
body.lab-svc-page .crm-stf-dismiss-pop,
body.lab-svc-page .crm-act-archive-pop {
    position: fixed;
    inset: 0;
    z-index: 13000;
    align-items: center;
    justify-content: center;
    background: rgba(15, 40, 48, 0.35);
}

body.lab-svc-page .crm-cc-pop.crm-cc-pop--open,
body.lab-svc-page .crm-ori-pop.crm-ori-pop--open,
body.lab-svc-page .crm-stf-dismiss-pop.crm-cc-pop--open,
body.lab-svc-page .crm-act-archive-pop.crm-cc-pop--open,
body.lab-svc-page .crm-cc-pop[style*="display: flex"],
body.lab-svc-page .crm-ori-pop[style*="display: flex"],
body.lab-svc-page .crm-stf-dismiss-pop[style*="display: flex"],
body.lab-svc-page .crm-act-archive-pop[style*="display: flex"] {
    display: flex !important;
}

body.lab-svc-page .lab-svc-mcal-chip.is-clickable {
    cursor: pointer;
}

body.lab-svc-page .lab-svc-mcal-chip.is-clickable:hover {
    filter: brightness(0.97);
    box-shadow: 0 1px 4px rgba(15, 40, 48, 0.08);
}

body.lab-svc-page .lab-svc-cal-block {
    cursor: pointer;
}

/* ?? LAB settings hub ?? */
body.lab-svc-page .lab-svc-chrome__icon.is-active {
    background: rgba(221, 237, 173, 0.55);
    color: var(--lab-ink);
    border-color: rgba(23, 59, 66, 0.18);
}

body.lab-svc-page .lab-svc-settings__layout {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

body.lab-svc-page .lab-svc-settings__nav {
    position: sticky;
    top: 12px;
    padding: 12px;
    border: 1px solid var(--lab-line);
    border-radius: 14px;
    background: var(--lab-panel);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-settings__nav-kicker {
    margin: 0 0 12px;
    font-size: 0.68rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__group-label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 6px;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings__group-label:first-of-type {
    margin-top: 0;
}

body.lab-svc-page .lab-svc-settings__nav-item {
    display: block;
    width: 100%;
    margin: 0 0 2px;
    padding: 8px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.88rem;
    font-weight: 550;
    text-align: left;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-settings__nav-item:hover {
    color: var(--lab-ink);
    background: rgba(23, 59, 66, 0.05);
}

body.lab-svc-page .lab-svc-settings__nav-item.is-active {
    background: rgba(221, 237, 173, 0.55);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings__nav-item-wrap {
    display: block;
    width: 100%;
}

body.lab-svc-page .lab-svc-settings__nav-item:disabled,
body.lab-svc-page .lab-svc-settings__nav-item.is-disabled {
    opacity: 0.45;
    cursor: not-allowed;
    color: var(--lab-muted);
    background: transparent;
}

body.lab-svc-page .lab-svc-settings__nav-item:disabled:hover,
body.lab-svc-page .lab-svc-settings__nav-item.is-disabled:hover {
    color: var(--lab-muted);
    background: transparent;
}

body.lab-svc-page .lab-svc-settings__panel[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-settings__panel-head {
    margin-bottom: 14px;
}

body.lab-svc-page .lab-svc-settings__panel-title {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.02em;
}

body.lab-svc-page .lab-svc-settings__panel-sub {
    margin: 4px 0 0;
    color: var(--lab-muted);
    font-size: 0.88rem;
}

body.lab-svc-page .lab-svc-settings__card {
    padding: 4px 0 8px;
    border: 1px solid var(--lab-line);
    border-radius: 14px;
    background: var(--lab-panel);
    overflow: hidden;
}

body.lab-svc-page .lab-svc-settings__card--link {
    padding: 18px 20px;
}

body.lab-svc-page .lab-svc-settings__lead {
    margin: 0 0 14px;
    color: var(--lab-muted);
    font-size: 0.9rem;
    line-height: 1.45;
}

body.lab-svc-page .lab-svc-settings__row {
    display: grid;
    grid-template-columns: minmax(140px, 220px) minmax(0, 1fr);
    gap: 12px 18px;
    align-items: center;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(228, 232, 225, 0.9);
}

body.lab-svc-page .lab-svc-settings__row:last-of-type {
    border-bottom: 0;
}

body.lab-svc-page .lab-svc-settings__row-title {
    display: block;
    font-size: 0.9rem;
    font-weight: 650;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings__row-hint {
    display: block;
    margin-top: 2px;
    font-size: 0.76rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__row-ctrl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-settings__row-ctrl--split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

body.lab-svc-page .lab-svc-settings__input {
    width: 100%;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.9rem;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-settings__input:focus {
    outline: 2px solid rgba(221, 237, 173, 0.9);
    outline-offset: 1px;
}

body.lab-svc-page .lab-svc-settings__input--compact {
    max-width: 220px;
    margin-left: auto;
}

body.lab-svc-page .lab-svc-settings__card--prefs {
    padding: 0;
    overflow: visible;
}

body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__prefs-group,
body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row,
body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row-lab,
body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row-title-line {
    overflow: visible;
}

body.lab-svc-page .lab-svc-settings__prefs-group {
    padding: 4px 0 2px;
}

body.lab-svc-page .lab-svc-settings__prefs-group + .lab-svc-settings__prefs-group {
    border-top: 1px solid rgba(228, 232, 225, 0.95);
}

body.lab-svc-page .lab-svc-settings__prefs-label {
    margin: 0;
    padding: 14px 18px 2px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-settings__prefs-sub {
    margin: 0;
    padding: 0 18px 6px;
    font-size: 0.78rem;
    line-height: 1.35;
    color: var(--lab-muted, #6b7c75);
    max-width: 42rem;
}

body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row {
    grid-template-columns: minmax(0, 1fr) minmax(140px, 240px);
    align-items: start;
    gap: 12px 20px;
}

body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row-lab {
    min-width: 0;
    padding-top: 8px;
}

body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row-hint {
    margin-top: 4px;
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-settings__row-ctrl--end {
    justify-content: flex-end;
    min-height: 40px;
}

body.lab-svc-page .lab-svc-settings__switch {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    cursor: pointer;
    user-select: none;
}

body.lab-svc-page .lab-svc-settings__switch input {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-settings__switch-ui {
    position: relative;
    width: 42px;
    height: 24px;
    flex-shrink: 0;
    border-radius: 999px;
    background: #c9d2cc;
    border: 1px solid rgba(26, 36, 32, 0.08);
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-settings__switch-ui::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(26, 36, 32, 0.18);
    transition: transform 160ms ease;
}

body.lab-svc-page .lab-svc-settings__switch input:checked + .lab-svc-settings__switch-ui {
    background: #173b42;
    border-color: #173b42;
}

body.lab-svc-page .lab-svc-settings__switch input:checked + .lab-svc-settings__switch-ui::after {
    transform: translateX(18px);
}

body.lab-svc-page .lab-svc-settings__switch input:focus-visible + .lab-svc-settings__switch-ui {
    outline: 2px solid rgba(221, 237, 173, 0.95);
    outline-offset: 2px;
}

body.lab-svc-page .lab-svc-settings__switch input:disabled + .lab-svc-settings__switch-ui {
    opacity: 0.45;
}

body.lab-svc-page .lab-svc-settings__switch input:disabled ~ .lab-svc-settings__switch-txt {
    opacity: 0.5;
}

body.lab-svc-page .lab-svc-settings__switch-txt {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--lab-ink, #1a2420);
}

body.lab-svc-page .lab-svc-settings__footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 18px;
    border-top: 1px solid var(--lab-line, #d8e0e6);
    background: #f4f6f5;
}

body.lab-svc-page .lab-svc-settings__footer #labCoOrdersDefaults {
    margin-right: auto;
}

@media (max-width: 700px) {
    body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row-lab {
        padding-top: 0;
    }
    body.lab-svc-page .lab-svc-settings__input--compact {
        max-width: none;
        margin-left: 0;
    }
    body.lab-svc-page .lab-svc-settings__row-ctrl--end {
        justify-content: flex-start;
    }
    body.lab-svc-page .lab-svc-settings__footer {
        justify-content: stretch;
    }
    body.lab-svc-page .lab-svc-settings__footer .lab-svc-btn {
        flex: 1 1 auto;
        justify-content: center;
    }
}

body.lab-svc-page .lab-svc-settings__readonly {
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings__pill {
    display: inline-flex;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 700;
    background: rgba(107, 114, 128, 0.12);
    color: #6b7280;
}

body.lab-svc-page .lab-svc-settings__pill.is-ok {
    background: rgba(31, 122, 76, 0.12);
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-settings__pill.is-bad {
    background: rgba(156, 60, 60, 0.12);
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-settings__avatar-edit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

body.lab-svc-page .lab-svc-settings__avatar-preview {
    width: 56px;
    height: 56px;
    border-radius: 999px;
    border: 1px solid var(--lab-line);
    background: #e7ebe4 center / cover no-repeat;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-settings__avatar-preview.is-empty {
    background-color: rgba(221, 237, 173, 0.65);
}

body.lab-svc-page .lab-svc-settings__file-btn {
    cursor: pointer;
}

body.lab-svc-page .lab-svc-settings__avatar-clear[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-settings__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 14px 18px 16px;
}

body.lab-svc-page .lab-svc-settings__card--link .lab-svc-settings__actions {
    padding: 0;
}

body.lab-svc-page .lab-svc-settings__msg {
    margin: 0 0 10px;
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 0.86rem;
}

body.lab-svc-page .lab-svc-settings__msg.is-err {
    background: rgba(156, 60, 60, 0.1);
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-settings__msg.is-ok {
    background: rgba(31, 122, 76, 0.1);
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-settings__msg[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-settings__table-wrap {
    padding: 8px 12px 12px;
    overflow: auto;
}

body.lab-svc-page .lab-svc-settings__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.86rem;
}

body.lab-svc-page .lab-svc-settings__table th,
body.lab-svc-page .lab-svc-settings__table td {
    padding: 8px 10px;
    border-bottom: 1px solid var(--lab-line);
    text-align: left;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-settings__table th {
    color: var(--lab-muted);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

body.lab-svc-page .lab-svc-settings__empty {
    margin: 8px 10px 4px;
    color: var(--lab-muted);
    font-size: 0.88rem;
}

body.lab-svc-page .lab-svc-settings__card--current {
    padding: 16px 18px 14px;
    background: linear-gradient(180deg, #f7faf4 0%, #fff 55%);
    border-color: rgba(47, 79, 54, 0.14);
}

body.lab-svc-page .lab-svc-settings__current-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 6px;
}

body.lab-svc-page .lab-svc-settings__current-kicker {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__current-badge {
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(156, 60, 60, 0.1);
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-settings__current-name {
    margin: 0 0 12px;
    font-size: 1.25rem;
    font-weight: 700;
    color: #2f4f36;
    line-height: 1.25;
}

body.lab-svc-page .lab-svc-settings__current-meta {
    margin: 0 0 14px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 16px;
}

body.lab-svc-page .lab-svc-settings__current-meta div {
    min-width: 0;
}

body.lab-svc-page .lab-svc-settings__current-meta dt {
    margin: 0;
    font-size: 0.72rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__current-meta dd {
    margin: 2px 0 0;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings__usage {
    display: grid;
    gap: 8px;
    padding: 10px 0 4px;
    border-top: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-settings__usage-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 0.9rem;
}

body.lab-svc-page .lab-svc-settings__usage-cap {
    color: #9c3c3c;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-settings__usage-fact {
    font-weight: 600;
}

body.lab-svc-page .lab-svc-settings__usage-sep {
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__steppers {
    margin-top: 12px;
    padding: 12px 12px 4px;
    border-radius: 12px;
    background: rgba(197, 220, 232, 0.22);
    border: 1px solid rgba(197, 220, 232, 0.65);
}

body.lab-svc-page .lab-svc-settings__steppers .lab-svc-settings__overage-title {
    margin: 0 0 8px;
}

body.lab-svc-page .lab-svc-settings__stepper-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(197, 220, 232, 0.7);
}

body.lab-svc-page .lab-svc-settings__stepper-row:last-child {
    border-bottom: 0;
}

body.lab-svc-page .lab-svc-settings__stepper-label {
    flex: 1;
    min-width: 0;
    font-size: 0.9rem;
    color: var(--lab-ink);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-settings__stepper-price {
    color: #9c3c3c;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-settings__stepper-ctrl {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-settings__stepper-btn {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    border: 1px solid var(--lab-line);
    background: #fff;
    color: var(--lab-ink);
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-settings__stepper-btn:hover:not(:disabled) {
    background: rgba(221, 237, 173, 0.45);
    border-color: rgba(47, 79, 54, 0.28);
}

body.lab-svc-page .lab-svc-settings__stepper-btn:disabled {
    color: var(--lab-muted);
    cursor: default;
    opacity: 0.55;
}

/* Tariff plans: one horizontal strip (compare side-by-side), not a wrapping grid */
body.lab-svc-page .lab-svc-tariff-strip {
    position: relative;
    margin: 0 0 18px;
}

body.lab-svc-page .lab-svc-tariff-grid {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 14px;
    margin: 0;
    padding: 4px 2px 14px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

body.lab-svc-page .lab-svc-tariff-grid:focus-visible {
    outline: 2px solid rgba(23, 59, 66, 0.35);
    outline-offset: 2px;
    border-radius: 10px;
}

body.lab-svc-page .lab-svc-tariff-strip__nav {
    position: absolute;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 0;
    padding: 0;
    border: 1px solid var(--lab-line, #d8e0e6);
    border-radius: 999px;
    background: #fff;
    color: var(--lab-ink, #1a2420);
    box-shadow: 0 4px 14px rgba(23, 59, 66, 0.12);
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, opacity 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-tariff-strip__nav:hover,
body.lab-svc-page .lab-svc-tariff-strip__nav:focus-visible {
    background: #f4f7f6;
    border-color: rgba(23, 59, 66, 0.28);
    outline: none;
}

body.lab-svc-page .lab-svc-tariff-strip__nav:disabled {
    opacity: 0.35;
    cursor: default;
    box-shadow: none;
}

body.lab-svc-page .lab-svc-tariff-strip__nav--prev {
    left: 0;
}

body.lab-svc-page .lab-svc-tariff-strip__nav--next {
    right: 0;
}

body.lab-svc-page .lab-svc-tariff-strip.is-scrollable .lab-svc-tariff-grid {
    padding-left: 40px;
    padding-right: 40px;
}

body.lab-svc-page .lab-svc-tcard {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 0 0 min(272px, 78vw);
    width: min(272px, 78vw);
    max-width: 300px;
    padding: 16px 16px 14px;
    background: #fff;
    border: 1px solid var(--lab-line, #d8e0e6);
    border-radius: 12px;
    scroll-snap-align: start;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-tcard.is-current {
    border-color: rgba(47, 79, 54, 0.45);
    box-shadow: 0 0 0 2px rgba(221, 237, 173, 0.85);
}

body.lab-svc-page .lab-svc-tcard__langs {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

body.lab-svc-page .lab-svc-tcard__langs-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    width: 100%;
    margin: 0;
    padding: 6px 8px;
    border-radius: 8px;
    border: 1px solid transparent;
    background: rgba(23, 59, 66, 0.04);
    color: inherit;
    font: inherit;
    font-size: 0.8rem;
    text-align: left;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-tcard__langs-toggle:hover,
body.lab-svc-page .lab-svc-tcard__langs-toggle:focus-visible {
    background: rgba(23, 59, 66, 0.08);
    border-color: rgba(23, 59, 66, 0.16);
    outline: none;
}

body.lab-svc-page .lab-svc-tcard__langs-toggle-lab {
    color: var(--lab-muted, #6b7c75);
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-tcard__langs-toggle strong {
    flex: 1 1 auto;
    min-width: 0;
    text-align: right;
    font-weight: 700;
    font-size: 0.78rem;
    color: var(--lab-ink, #1a2420);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-tcard__langs-chevron {
    flex-shrink: 0;
    color: var(--lab-muted, #6b7c75);
    transition: transform 160ms ease;
}

body.lab-svc-page .lab-svc-tcard__langs-toggle.is-open .lab-svc-tcard__langs-chevron {
    transform: rotate(180deg);
}

body.lab-svc-page .lab-svc-tcard__langs-panel {
    margin: 6px 0 0;
    padding: 8px 8px 10px;
    border-radius: 8px;
    border: 1px solid var(--lab-line, #d8e0e6);
    background: #f7f9f8;
    min-width: 0;
}

body.lab-svc-page .lab-svc-tcard__langs-hint {
    margin: 0 0 8px;
    font-size: 0.7rem;
    line-height: 1.3;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__langs-actions {
    margin-top: 8px;
}

body.lab-svc-page .lab-svc-tcard__langs-actions .lab-svc-btn {
    width: 100%;
    justify-content: center;
    font-size: 0.8rem;
    padding: 8px 10px;
}

body.lab-svc-page .lab-svc-tcard__langs-status {
    margin: 8px 0 0;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__langs-status.is-ok {
    color: #2f4f36;
}

body.lab-svc-page .lab-svc-tcard__langs-status.is-err {
    color: #9c3c3c;
}

/* Compact packs/checks inside tariff card column */
body.lab-svc-page .lab-svc-tcard__langs-panel .lab-svc-settings__sf-packs {
    display: grid;
    gap: 4px;
    margin: 0 0 8px;
}

body.lab-svc-page .lab-svc-tcard__langs-panel .lab-svc-settings__sf-pack {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin: 0;
    padding: 5px 6px;
    border-radius: 6px;
    border: 1px solid var(--lab-line, #d8e0e6);
    background: #fff;
    font-size: 0.72rem;
    line-height: 1.3;
    white-space: normal;
}

body.lab-svc-page .lab-svc-tcard__langs-panel .lab-svc-settings__sf-pack span {
    min-width: 0;
}

body.lab-svc-page .lab-svc-tcard__langs-panel .lab-svc-settings__sf-pack em {
    font-style: normal;
    font-weight: 700;
    color: #9c3c3c;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-tcard__langs-panel .lab-svc-settings__sf-checks {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3px;
    margin: 0;
}

body.lab-svc-page .lab-svc-tcard__langs-panel .lab-svc-settings__sf-check {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 3px 4px;
    font-size: 0.72rem;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-tcard__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

body.lab-svc-page .lab-svc-tcard__kind-wrap {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-tcard__kind {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted, #6b7c75);
}

/* Project default: info (i) + hover tip */
body.lab-svc-page .lab-svc-info,
body.lab-svc-page .lab-svc-tcard__info {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: var(--lab-muted, #6b7c75);
    cursor: help;
    outline: none;
    transition: color 150ms ease;
}

body.lab-svc-page .lab-svc-info:hover,
body.lab-svc-page .lab-svc-info:focus-visible,
body.lab-svc-page .lab-svc-tcard__info:hover,
body.lab-svc-page .lab-svc-tcard__info:focus-visible {
    color: var(--lab-ink, #1a2420);
}

body.lab-svc-page .lab-svc-info svg,
body.lab-svc-page .lab-svc-info__ico,
body.lab-svc-page .lab-svc-tcard__info svg {
    display: block;
}

body.lab-svc-page .lab-svc-info__tip,
body.lab-svc-page .lab-svc-tcard__tip {
    position: absolute;
    left: 0;
    top: calc(100% + 8px);
    z-index: 30;
    width: max-content;
    max-width: min(320px, 78vw);
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid var(--lab-line, #d8e0e6);
    background: #fff;
    box-shadow: 0 8px 20px rgba(26, 36, 32, 0.12);
    color: var(--lab-ink, #1a2420);
    font-size: 0.78rem;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    line-height: 1.4;
    white-space: normal;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-2px);
    transition: opacity 150ms ease, visibility 150ms ease, transform 150ms ease;
}

body.lab-svc-page .lab-svc-info:hover .lab-svc-info__tip,
body.lab-svc-page .lab-svc-info:focus-visible .lab-svc-info__tip,
body.lab-svc-page .lab-svc-info:hover .lab-svc-tcard__tip,
body.lab-svc-page .lab-svc-info:focus-visible .lab-svc-tcard__tip,
body.lab-svc-page .lab-svc-tcard__info:hover .lab-svc-info__tip,
body.lab-svc-page .lab-svc-tcard__info:focus-visible .lab-svc-info__tip,
body.lab-svc-page .lab-svc-tcard__info:hover .lab-svc-tcard__tip,
body.lab-svc-page .lab-svc-tcard__info:focus-visible .lab-svc-tcard__tip {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

body.lab-svc-page .lab-svc-settings__row-title-line {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    min-width: 0;
    position: relative;
}

body.lab-svc-page .lab-svc-settings__row-title-line .lab-svc-settings__row-title {
    flex: 0 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-settings__row-title-line .lab-svc-info--trail {
    margin-top: 1px;
    margin-left: 2px;
}

/* Tip opens under icon toward the control column вЂ” not past the left edge */
body.lab-svc-page .lab-svc-info--trail .lab-svc-info__tip {
    left: 0;
    right: auto;
    top: calc(100% + 8px);
    max-width: min(300px, 56vw);
    z-index: 40;
}

body.lab-svc-page .lab-svc-settings__card--prefs .lab-svc-settings__row-hint {
    margin-top: 4px;
    padding-right: 22px;
}

body.lab-svc-page .lab-svc-tcard__badge {
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(221, 237, 173, 0.7);
    color: #2f4f36;
}

body.lab-svc-page .lab-svc-tcard__name {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--lab-ink, #1a2420);
    line-height: 1.25;
}

body.lab-svc-page .lab-svc-tcard__price {
    margin: 0;
    font-size: 1.35rem;
    font-weight: 700;
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-tcard__per {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__limits {
    list-style: none;
    margin: 0;
    padding: 8px 0 0;
    border-top: 1px solid var(--lab-line, #d8e0e6);
}

body.lab-svc-page .lab-svc-tcard__limits li {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 5px 0;
    font-size: 0.9rem;
    color: var(--lab-ink, #1a2420);
}

body.lab-svc-page .lab-svc-tcard__limits strong {
    color: #9c3c3c;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-tcard__lim-usage {
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

body.lab-svc-page .lab-svc-tcard__lim-used,
body.lab-svc-page .lab-svc-tcard__lim-sep {
    color: var(--lab-ink, #1a2420);
}

body.lab-svc-page .lab-svc-tcard__lim-cap {
    color: #9c3c3c;
}

/* Paid card: compact DOP lines before description */
body.lab-svc-page .lab-svc-tcard__dops {
    margin: 0;
    padding: 8px 0 0;
    border-top: 1px dashed var(--lab-line, #d8e0e6);
}

body.lab-svc-page .lab-svc-tcard__dops-title {
    margin: 0 0 4px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__dop-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    padding: 5px 0;
    font-size: 0.78rem;
    line-height: 1.25;
    color: var(--lab-ink, #1a2420);
}

body.lab-svc-page .lab-svc-tcard__dop-label {
    display: block;
    min-width: 0;
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__dop-ctrl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-tcard__dop-price {
    flex: 0 1 auto;
    min-width: 0;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #9c3c3c;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-tcard__dop-step {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    flex: 0 0 auto;
    margin-left: auto;
}

body.lab-svc-page .lab-svc-tcard__dop-btn {
    width: 22px;
    height: 22px;
    padding: 0;
    border-radius: 6px;
    border: 1px solid var(--lab-line, #d8e0e6);
    background: #fff;
    color: var(--lab-ink, #1a2420);
    font-size: 0.85rem;
    line-height: 1;
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, opacity 150ms ease;
}

body.lab-svc-page .lab-svc-tcard__dop-btn:hover:not(:disabled) {
    background: rgba(23, 59, 66, 0.05);
    border-color: rgba(23, 59, 66, 0.22);
}

body.lab-svc-page .lab-svc-tcard__dop-btn:disabled {
    opacity: 0.4;
    cursor: default;
}

body.lab-svc-page .lab-svc-tcard__dop-val {
    min-width: 1.25em;
    text-align: center;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-tcard__dop-total {
    margin: 6px 0 0;
    font-size: 0.78rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--lab-ink, #1a2420);
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-tcard__dop-warn {
    margin: 4px 0 0;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.3;
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-tcard__desc {
    margin: 0;
    font-size: 0.84rem;
    line-height: 1.4;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__meta {
    display: grid;
    gap: 6px;
    padding: 8px 0;
    border-top: 1px dashed var(--lab-line, #d8e0e6);
    font-size: 0.84rem;
}

body.lab-svc-page .lab-svc-tcard__meta > div {
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

body.lab-svc-page .lab-svc-tcard__meta span {
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard__extras-mount {
    margin-top: 4px;
    padding-top: 8px;
    border-top: 1px solid var(--lab-line, #d8e0e6);
}

body.lab-svc-page .lab-svc-tcard__cta {
    margin-top: auto;
    padding-top: 8px;
}

body.lab-svc-page .lab-svc-tcard__cta .lab-svc-btn {
    width: 100%;
    justify-content: center;
}

body.lab-svc-page .lab-svc-tcard__agent-hint {
    margin: 0 0 8px;
    font-size: 0.82rem;
    line-height: 1.35;
    color: var(--lab-muted, #6b7c75);
}

body.lab-svc-page .lab-svc-tcard.is-agent {
    background: #f7f9fb;
}

body.lab-svc-page .lab-svc-tcard__price--agent {
    color: #9c3c3c;
    font-size: 1.2rem;
}

body.lab-svc-page .lab-svc-tcard.is-agent .lab-svc-tcard__lim-from-agent {
    color: #9c3c3c;
    font-weight: 700;
    font-variant-numeric: normal;
}

/* Starter: informational card вЂ” quieter than paid plans, no pick CTA */
body.lab-svc-page .lab-svc-tcard.is-starter {
    background: #f4f6f5;
    border-style: dashed;
    border-color: #c5d0c9;
    box-shadow: none;
}

body.lab-svc-page .lab-svc-tcard.is-starter.is-current {
    border-style: solid;
    border-color: rgba(47, 79, 54, 0.4);
    box-shadow: 0 0 0 2px rgba(221, 237, 173, 0.7);
}

body.lab-svc-page .lab-svc-tcard.is-starter .lab-svc-tcard__kind {
    color: #5a6b62;
}

body.lab-svc-page .lab-svc-tcard__price--free {
    color: #9c3c3c;
    font-size: 1.15rem;
}

body.lab-svc-page .lab-svc-tcard__badge--muted {
    background: rgba(100, 116, 139, 0.12);
    color: #475569;
}

body.lab-svc-page .lab-svc-tcard__info-hint {
    margin: 0;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.35;
    color: #5a6b62;
}

@media (max-width: 700px) {
    body.lab-svc-page .lab-svc-tariff-strip.is-scrollable .lab-svc-tariff-grid {
        padding-left: 36px;
        padding-right: 36px;
    }

    body.lab-svc-page .lab-svc-tariff-strip__nav {
        width: 32px;
        height: 32px;
    }

    body.lab-svc-page .lab-svc-tcard {
        flex-basis: min(260px, 84vw);
        width: min(260px, 84vw);
    }
}

body.lab-svc-page .lab-svc-settings__stepper-val {
    min-width: 28px;
    text-align: center;
    font-weight: 700;
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-settings__sf-packs {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 10px 0 12px;
}

body.lab-svc-page .lab-svc-settings__sf-pack {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.92rem;
    color: var(--lab-ink);
    cursor: pointer;
}

body.lab-svc-page .lab-svc-settings__sf-pack em {
    font-style: normal;
    color: #9c3c3c;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-settings__sf-checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 14px;
    margin-bottom: 4px;
}

body.lab-svc-page .lab-svc-settings__sf-check {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings__sf-check.is-capped {
    opacity: 0.55;
}

body.lab-svc-page .lab-svc-settings__sf-check.is-locked {
    font-weight: 600;
}

body.lab-svc-page .lab-svc-settings__sf-lock {
    color: var(--lab-muted);
    font-weight: 500;
    font-size: 0.82rem;
}

@media (max-width: 560px) {
    body.lab-svc-page .lab-svc-settings__sf-checks {
        grid-template-columns: 1fr;
    }
}

body.lab-svc-page .lab-svc-settings__overage {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed var(--lab-line);
}

body.lab-svc-page .lab-svc-settings__overage-title {
    margin: 0 0 4px;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--lab-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

body.lab-svc-page .lab-svc-settings__overage-line {
    margin: 0;
    font-size: 0.88rem;
    font-weight: 600;
    color: #9c3c3c;
}

@media (max-width: 700px) {
    body.lab-svc-page .lab-svc-settings__current-meta {
        grid-template-columns: 1fr;
    }
}

body.lab-svc-page .lab-svc-settings__logo-edit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

body.lab-svc-page .lab-svc-settings__logo-preview {
    width: 72px;
    height: 72px;
    border-radius: 12px;
    border: 1px solid var(--lab-line);
    background: #f4f6f3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-settings__logo-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

body.lab-svc-page .lab-svc-settings__logo-ph {
    font-size: 0.72rem;
    color: var(--lab-muted);
    text-align: center;
    padding: 4px;
}

body.lab-svc-page .lab-svc-settings__radio-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

body.lab-svc-page .lab-svc-settings__status-block {
    display: grid;
    gap: 4px;
}

body.lab-svc-page .lab-svc-settings__phone-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-settings__phone-row .gidtur-phone-combo {
    display: flex;
    gap: 8px;
    align-items: stretch;
    flex: 1 1 220px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-settings__phone-row .gidtur-phone-combo__dial {
    flex: 0 0 6.75rem;
    max-width: 7.5rem;
}

body.lab-svc-page .lab-svc-settings__phone-row .gidtur-phone-combo__national {
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-settings__row-ctrl--email {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 12px;
    width: 100%;
    min-width: min(320px, 100%);
}

body.lab-svc-page .lab-svc-settings__email-trail {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px 10px;
    margin-left: auto;
}

body.lab-svc-page .lab-svc-settings__verify-status,
body.lab-svc-page .lab-svc-settings__phone-status {
    font-size: 0.8rem;
    color: var(--lab-muted);
    white-space: nowrap;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-settings__verify-status.is-ok,
body.lab-svc-page .lab-svc-settings__phone-status.is-ok {
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-settings__verify-status.is-bad,
body.lab-svc-page .lab-svc-settings__phone-status.is-bad {
    color: #9c3c3c;
}

body.lab-svc-page .lab-svc-settings__nick-wrap {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    min-width: min(320px, 100%);
    flex: 1 1 220px;
}

body.lab-svc-page .lab-svc-settings__nick-status {
    font-size: 0.78rem;
    line-height: 1.3;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__nick-status.is-ok {
    color: #1f7a4c;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-settings__nick-status.is-bad {
    color: #9c3c3c;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-settings__nick-status.is-busy {
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__row--stack {
    align-items: start;
}

body.lab-svc-page .lab-svc-settings__checks {
    margin: 0;
    padding: 0;
    border: 0;
    display: grid;
    gap: 8px;
}

body.lab-svc-page .lab-svc-settings__check {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--lab-ink);
    cursor: pointer;
}

body.lab-svc-page .lab-svc-settings__check input {
    margin-top: 3px;
}

body.lab-svc-page .lab-svc-settings__row-actions {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
}

body.lab-svc-page .lab-svc-settings__table tr.is-editing td {
    background: rgba(221, 237, 173, 0.28);
}

body.lab-svc-page .lab-svc-settings-pop {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(18, 28, 22, 0.45);
}

body.lab-svc-page .lab-svc-settings-pop[hidden] {
    display: none !important;
}

body.lab-svc-page .crm-cc-pop-box p {
    margin: 0 0 14px;
    font-size: 13px;
    line-height: 1.45;
    color: #475569;
}

body.lab-svc-page .lab-svc-settings-pop__card {
    width: min(520px, 100%);
    max-height: min(90vh, 720px);
    overflow: auto;
    background: #fff;
    border: 1px solid var(--lab-line);
    border-radius: 16px;
    box-shadow: 0 18px 48px rgba(18, 28, 22, 0.18);
}

body.lab-svc-page .lab-svc-settings-pop__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-settings-pop__title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings-pop__close {
    border: 0;
    background: transparent;
    font-size: 1.4rem;
    line-height: 1;
    color: var(--lab-muted);
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 8px;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-settings-pop__close:hover {
    background: rgba(18, 28, 22, 0.06);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-settings-pop__body .lab-svc-settings__row {
    padding-left: 16px;
    padding-right: 16px;
}

body.lab-svc-page .lab-svc-settings-pop__body .lab-svc-settings__actions {
    padding-left: 16px;
    padding-right: 16px;
}

@media (max-width: 900px) {
    body.lab-svc-page .lab-svc-settings__layout {
        grid-template-columns: 1fr;
    }
    body.lab-svc-page .lab-svc-settings__nav {
        position: static;
    }
    body.lab-svc-page .lab-svc-settings__row {
        grid-template-columns: 1fr;
        gap: 6px;
    }
    body.lab-svc-page .lab-svc-settings__row-ctrl--split {
        grid-template-columns: 1fr;
    }
}

/* вЂ”вЂ” LAB staff list вЂ”вЂ” */
body.lab-svc-page .lab-svc-staff {
    background: #fff;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    padding: 16px 18px 12px;
}

body.lab-svc-page .lab-svc-staff__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}

body.lab-svc-page .lab-svc-staff__search {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: min(280px, 100%);
    flex: 1 1 220px;
    padding: 8px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fafbfa;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff__search input {
    border: 0;
    background: transparent;
    outline: none;
    width: 100%;
    font: inherit;
    font-size: 0.9rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff__filter {
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    padding: 8px 12px;
    font: inherit;
    font-size: 0.88rem;
    color: var(--lab-ink);
    background: #fff;
}

body.lab-svc-act-page .lab-svc-act__archive {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--lab-ink);
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-act-page .lab-svc-act__archive:hover {
    background: rgba(18, 28, 22, 0.03);
    border-color: rgba(18, 28, 22, 0.22);
}

body.lab-svc-act-page .lab-svc-act__archive:has(input:checked) {
    background: rgba(18, 28, 22, 0.04);
    border-color: rgba(18, 28, 22, 0.28);
}

body.lab-svc-act-page .lab-svc-act__archive input {
    margin: 0;
    width: 15px;
    height: 15px;
    accent-color: var(--lab-ink);
    cursor: pointer;
}

body.lab-svc-act-page .lab-svc-staff__row.is-archived {
    opacity: 0.78;
}

body.lab-svc-page .lab-svc-staff__status.is-archive {
    color: var(--lab-muted);
    background: rgba(18, 28, 22, 0.04);
    border-color: rgba(18, 28, 22, 0.12);
}

body.lab-svc-page .lab-svc-staff__status.is-archive .lab-svc-staff__dot {
    background: #8a918c;
}

body.lab-svc-page .lab-svc-staff__table-wrap {
    overflow: visible;
}

body.lab-svc-page .lab-svc-staff__table {
    width: 100%;
    border-collapse: collapse;
    min-width: 640px;
}

body.lab-svc-page .lab-svc-staff__table th {
    text-align: left;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted);
    padding: 8px 10px;
    border-bottom: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-staff__table td {
    padding: 12px 10px;
    border-bottom: 1px solid rgba(18, 28, 22, 0.06);
    vertical-align: middle;
    font-size: 0.9rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff__row {
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-staff__row:hover {
    background: rgba(18, 28, 22, 0.03);
}

body.lab-svc-page .lab-svc-staff__person {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff__avatar {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    background: #c9d5c8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--lab-ink);
    overflow: hidden;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff__avatar.has-photo {
    background: #d7e0d4;
}

body.lab-svc-page .lab-svc-staff__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff__meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff__name {
    font-weight: 600;
    line-height: 1.25;
}

body.lab-svc-page .lab-svc-staff__email {
    font-size: 0.8rem;
    color: var(--lab-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-staff__chip {
    display: inline-flex;
    max-width: 180px;
    padding: 2px 7px;
    border-radius: 5px;
    border: 1px solid transparent;
    background: rgba(18, 28, 22, 0.06);
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.25;
    color: var(--lab-ink);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
    cursor: default;
}

body.lab-svc-page .lab-svc-staff__chip.is-director {
    background: #fde8e4;
    border-color: rgba(157, 66, 48, 0.12);
    color: #8f3a2c;
}

body.lab-svc-page .lab-svc-staff__chip.is-manager {
    background: #e8f0fb;
    border-color: rgba(47, 92, 160, 0.14);
    color: #2a4f8a;
}

body.lab-svc-page .lab-svc-staff__chip.is-staff {
    background: #e6f4ea;
    border-color: rgba(46, 125, 70, 0.14);
    color: #2a6b3c;
}

body.lab-svc-page .lab-svc-act__mode-chip {
    max-width: 200px;
    font-size: 0.68rem;
}

body.lab-svc-page .lab-svc-act__mode-chip.is-mode-places {
    background: #e6f4ea;
    border-color: rgba(46, 125, 70, 0.14);
    color: #2a6b3c;
}

body.lab-svc-page .lab-svc-act__mode-chip.is-mode-res {
    background: #e8f0fb;
    border-color: rgba(47, 92, 160, 0.14);
    color: #2a4f8a;
}

body.lab-svc-page .lab-svc-act__mode-chip.is-mode-none {
    background: rgba(18, 28, 22, 0.06);
    border-color: rgba(18, 28, 22, 0.1);
    color: #5c675f;
}

body.lab-svc-page .lab-svc-act__mode-chip.is-mode-named {
    background: #f3e8fb;
    border-color: rgba(107, 63, 160, 0.14);
    color: #6b3fa0;
}

body.lab-svc-page .lab-svc-act__ctrl {
    position: relative;
    z-index: 3;
}

body.lab-svc-page .lab-svc-act__ctrl.is-open {
    z-index: 24;
}

body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-act__ctrl.is-open) {
    z-index: 24;
}

body.lab-svc-page .lab-svc-act__ctrl-trigger {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 42px;
    margin: 0;
    padding: 7px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-act__ctrl-trigger:hover,
body.lab-svc-page .lab-svc-act__ctrl.is-open .lab-svc-act__ctrl-trigger {
    border-color: rgba(23, 59, 66, 0.28);
}

body.lab-svc-page .lab-svc-act__ctrl-lab {
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__ctrl-caret {
    flex: 0 0 auto;
    color: var(--lab-muted);
    font-size: 0.72rem;
}

body.lab-svc-page .lab-svc-act__ctrl-ico {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-act__ctrl-ico.is-mode-res,
body.lab-svc-page .lab-svc-act__ctrl-opt.is-mode-res .lab-svc-act__ctrl-ico {
    background: #e8f0fb;
    color: #2a4f8a;
}

body.lab-svc-page .lab-svc-act__ctrl-ico.is-mode-places,
body.lab-svc-page .lab-svc-act__ctrl-opt.is-mode-places .lab-svc-act__ctrl-ico {
    background: #e6f4ea;
    color: #2a6b3c;
}

body.lab-svc-page .lab-svc-act__ctrl-ico.is-mode-none,
body.lab-svc-page .lab-svc-act__ctrl-opt.is-mode-none .lab-svc-act__ctrl-ico {
    background: rgba(18, 28, 22, 0.06);
    color: #5c675f;
}

body.lab-svc-page .lab-svc-act__ctrl-ico.is-mode-named,
body.lab-svc-page .lab-svc-act__ctrl-opt.is-mode-named .lab-svc-act__ctrl-ico {
    background: #f3e8fb;
    color: #6b3fa0;
}

body.lab-svc-page .lab-svc-act__ctrl-list {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 6px);
    z-index: 30;
    padding: 6px;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(15, 40, 48, 0.16);
    isolation: isolate;
}

body.lab-svc-page .lab-svc-act__ctrl-list.is-fixed {
    right: auto;
    max-height: min(280px, calc(100vh - 24px));
    overflow-y: auto;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop,
body.lab-svc-loc-pop-open .lab-svc-staff-pop,
body.lab-svc-exc-pop-open .lab-svc-staff-pop {
    overflow: hidden;
    overscroll-behavior: none;
    padding: 12px;
    box-sizing: border-box;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__dialog,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__dialog,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__dialog {
    /* РЈС‡РёС‚С‹РІР°РµРј padding РѕРІРµСЂР»РµСЏ вЂ” РёРЅР°С‡Рµ РїРѕР»РѕСЃР° РЅР° РІСЃС‘Рј POP (92vh + 16pxГ—2 > 100vh) */
    max-height: min(calc(100vh - 24px), 880px);
    height: min(calc(100vh - 24px), 880px);
    overflow: hidden;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__main,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__main,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__main {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__head,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__head,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__head {
    padding: 12px 16px 10px;
    flex-shrink: 0;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__foot,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__foot,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__foot {
    flex-shrink: 0;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__panel-head,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__panel-head,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__panel-head {
    padding: 8px 14px 6px;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__panel,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__panel,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__panel {
    padding: 6px 14px 10px;
}

body.lab-svc-act-pop-open .lab-svc-staff-pop__panel-sub,
body.lab-svc-loc-pop-open .lab-svc-staff-pop__panel-sub,
body.lab-svc-exc-pop-open .lab-svc-staff-pop__panel-sub {
    display: none; /* РґСѓР±Р»СЊ РїРѕРґР·Р°РіРѕР»РѕРІРєР° РІРєР»Р°РґРєРё вЂ” СЌРєРѕРЅРѕРјРёСЏ РІС‹СЃРѕС‚С‹ */
}

body.lab-svc-page .lab-svc-act__res,
body.lab-svc-page .lab-svc-act__main {
    max-width: 100%;
    overflow-x: clip;
}

body.lab-svc-page .lab-svc-act__ctrl-opt {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin: 0;
    padding: 8px 10px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--lab-ink);
    font: inherit;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    transition: background 150ms ease;
}

body.lab-svc-page .lab-svc-act__ctrl-opt:hover {
    background: rgba(18, 28, 22, 0.05);
}

body.lab-svc-page .lab-svc-act__ctrl-opt.is-on {
    background: rgba(15, 118, 110, 0.08);
}

body.lab-svc-act-page .lab-svc-act__qty-cell {
    width: 11.5rem;
    min-width: 11.5rem;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-act__qty {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    border-radius: 10px;
    border: 1px solid rgba(23, 59, 66, 0.12);
    background: #fff;
    font-size: 0.72rem;
    line-height: 1.3;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-act__qty.is-plain {
    min-width: 0;
    width: auto;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--lab-muted);
    font-size: 0.78rem;
}

body.lab-svc-page .lab-svc-act__qty-row {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
}

body.lab-svc-page .lab-svc-act__qty-lbl {
    color: var(--lab-muted);
    font-weight: 500;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__qty-val {
    margin-left: auto;
    flex: 0 0 auto;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--lab-ink);
    font-size: 0.8rem;
    letter-spacing: -0.01em;
}

body.lab-svc-page .lab-svc-act__qty-row.is-primary .lab-svc-act__qty-val {
    color: #1f5c4a;
}

body.lab-svc-page .lab-svc-act__muted {
    color: var(--lab-muted);
    font-size: 0.72rem;
}

/* Status: bordered label like sample вЂ” soft corners, not a pill */
body.lab-svc-page .lab-svc-staff__status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 2px 8px 2px 6px;
    border-radius: 5px;
    border: 1px solid rgba(18, 28, 22, 0.14);
    background: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--lab-ink);
    line-height: 1.25;
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
    cursor: default;
}

body.lab-svc-page .lab-svc-staff__dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #9aa49a;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff__status.is-active .lab-svc-staff__dot {
    background: #2f9e6b;
}

body.lab-svc-page .lab-svc-staff__status.is-soft {
    color: #9a3412;
    background: #fff7ed;
    border-color: rgba(234, 88, 12, 0.35);
}

body.lab-svc-page .lab-svc-staff__status.is-soft .lab-svc-staff__dot {
    background: #ea580c;
}

body.lab-svc-page .lab-svc-staff__status.is-inactive {
    color: var(--lab-ink);
    background: #fff;
    border-color: rgba(225, 29, 72, 0.45);
}

body.lab-svc-page .lab-svc-staff__status.is-inactive .lab-svc-staff__dot {
    background: #e11d48;
}

body.lab-svc-page .lab-svc-staff__acts {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    max-width: 280px;
    align-items: center;
}

body.lab-svc-page .lab-svc-staff__act {
    display: inline-flex;
    max-width: 140px;
    padding: 1px 7px;
    border-radius: 5px;
    border: 1px solid transparent;
    background: rgba(18, 28, 22, 0.05);
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--lab-ink);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
    cursor: default;
}

/* Stable activity tones вЂ” same entity id в†’ same tone (locale-independent) */
body.lab-svc-page .lab-svc-staff__act.is-tone-0 {
    background: #fbecd9;
    border-color: rgba(166, 99, 28, 0.14);
    color: #8a4f16;
}
body.lab-svc-page .lab-svc-staff__act.is-tone-1 {
    background: #e6f4ea;
    border-color: rgba(46, 125, 70, 0.14);
    color: #2a6b3c;
}
body.lab-svc-page .lab-svc-staff__act.is-tone-2 {
    background: #e8f0fb;
    border-color: rgba(47, 92, 160, 0.14);
    color: #2a4f8a;
}
body.lab-svc-page .lab-svc-staff__act.is-tone-3 {
    background: #f3e8f6;
    border-color: rgba(122, 63, 150, 0.12);
    color: #6b3a86;
}
body.lab-svc-page .lab-svc-staff__act.is-tone-4 {
    background: #fde8e4;
    border-color: rgba(157, 66, 48, 0.12);
    color: #8f3a2c;
}
body.lab-svc-page .lab-svc-staff__act.is-tone-5 {
    background: #e7f5f4;
    border-color: rgba(32, 122, 116, 0.14);
    color: #1f6b66;
}

body.lab-svc-page .lab-svc-staff__act-more {
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff__acts-empty {
    color: var(--lab-muted);
    font-size: 0.85rem;
}

body.lab-svc-page .lab-svc-staff__rating {
    font-variant-numeric: tabular-nums;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff__actions {
    text-align: right;
    white-space: nowrap;
    position: relative;
    width: 1%;
}

body.lab-svc-page .lab-svc-staff__more {
    position: relative;
    display: inline-flex;
}

body.lab-svc-page .lab-svc-staff__more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 6px;
    border: 1px solid rgba(18, 28, 22, 0.14);
    background: #fff;
    color: var(--lab-ink);
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff__more-btn:hover,
body.lab-svc-page .lab-svc-staff__more-btn[aria-expanded='true'] {
    background: rgba(18, 28, 22, 0.04);
    border-color: rgba(18, 28, 22, 0.22);
}

body.lab-svc-page .lab-svc-staff__more-menu {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 50;
    min-width: 220px;
    padding: 6px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid var(--lab-line);
    box-shadow: 0 12px 28px rgba(15, 40, 48, 0.14);
    display: flex;
    flex-direction: column;
    gap: 2px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-staff__more-menu[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-staff__more-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin: 0;
    padding: 8px 10px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.88rem;
    font-weight: 500;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
    transition: background 150ms ease;
}

body.lab-svc-page .lab-svc-staff__more-item:hover:not([aria-disabled='true']),
body.lab-svc-page a.lab-svc-staff__more-item:hover {
    background: rgba(18, 28, 22, 0.05);
}

body.lab-svc-page .lab-svc-staff__more-item-wrap {
    display: block;
    width: 100%;
}

body.lab-svc-page .lab-svc-staff__more-item[aria-disabled='true'] {
    opacity: 0.42;
    cursor: default;
    pointer-events: none;
}

body.lab-svc-page .lab-svc-staff__more-ico {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff__more-ico-img {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    object-fit: contain;
    display: block;
}

body.lab-svc-page .lab-svc-staff__more-item:hover .lab-svc-staff__more-ico {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff__more-sep {
    height: 1px;
    margin: 4px 6px;
    background: var(--lab-line);
    border: 0;
}

body.lab-svc-page .lab-svc-staff__more-toast {
    position: fixed;
    left: 50%;
    bottom: 24px;
    transform: translateX(-50%);
    z-index: 80;
    padding: 8px 14px;
    border-radius: 8px;
    background: rgba(18, 28, 22, 0.92);
    color: #fff;
    font-size: 0.85rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity 160ms ease;
}

body.lab-svc-page .lab-svc-staff__more-toast.is-on {
    opacity: 1;
}

body.lab-svc-page .lab-svc-staff__empty-row td {
    text-align: center;
    color: var(--lab-muted);
    padding: 28px 12px;
}

body.lab-svc-page .lab-svc-staff__hint {
    margin: 10px 0 0;
    font-size: 0.85rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff__hint.is-error {
    color: #b42318;
}

/* Settings в†’ Staff compact table */
body.lab-svc-page .lab-svc-settings__card--staff {
    padding: 16px 18px 14px;
    overflow: visible;
}

body.lab-svc-page .lab-svc-settings__staff {
    margin: 0;
    overflow: visible;
}

body.lab-svc-page .lab-svc-settings__staff .lab-svc-staff__table-wrap {
    overflow: visible;
}

body.lab-svc-page .lab-svc-settings__staff .lab-svc-staff__actions {
    overflow: visible;
    position: relative;
    z-index: 1;
}

body.lab-svc-page .lab-svc-settings__staff .lab-svc-staff__more {
    position: relative;
    z-index: 1;
}

body.lab-svc-page .lab-svc-settings__staff .lab-svc-staff__row.is-menu-open {
    position: relative;
    z-index: 40;
}

body.lab-svc-page .lab-svc-settings__staff .lab-svc-staff__more.is-open {
    z-index: 60;
}

/* Open upward so menu does not sit under the next rowвЂ™s вЂ¦ button */
body.lab-svc-page .lab-svc-settings__staff .lab-svc-staff__more-menu {
    top: auto;
    bottom: calc(100% + 6px);
    right: 0;
    z-index: 70;
}

body.lab-svc-page .lab-svc-settings__staff-table th.lab-svc-settings__staff-rev-th {
    min-width: 168px;
    vertical-align: bottom;
}

body.lab-svc-page .lab-svc-settings__staff-rev-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

body.lab-svc-page .lab-svc-settings__period {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #f6f7f6;
}

body.lab-svc-page .lab-svc-settings__period-btn {
    margin: 0;
    padding: 3px 8px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    font: inherit;
    font-size: 0.68rem;
    font-weight: 650;
    color: var(--lab-muted);
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
    line-height: 1.3;
}

body.lab-svc-page .lab-svc-settings__period-btn:hover {
    color: var(--lab-ink);
    background: rgba(18, 28, 22, 0.04);
}

body.lab-svc-page .lab-svc-settings__period-btn.is-active {
    background: #fff;
    color: var(--lab-ink);
    box-shadow: 0 0 0 1px rgba(18, 28, 22, 0.08);
}

body.lab-svc-page .lab-svc-settings__staff-rev {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    line-height: 1.25;
    min-width: 5.5rem;
}

body.lab-svc-page .lab-svc-settings__staff-rev-amt {
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    font-size: 0.92rem;
    color: var(--lab-ink);
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-settings__staff-rev.is-zero .lab-svc-settings__staff-rev-amt {
    color: var(--lab-muted);
    font-weight: 500;
}

body.lab-svc-page .lab-svc-settings__staff-rev-trend {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 0.72rem;
    font-weight: 650;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-settings__staff-rev-trend.is-up {
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-settings__staff-rev-trend.is-down {
    color: #b42318;
}

body.lab-svc-page .lab-svc-settings__staff-rev-trend.is-flat {
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-settings__staff-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-settings__staff-link {
    font-size: 0.82rem;
    font-weight: 600;
    color: #1a4f7a;
    text-decoration: underline;
    text-underline-offset: 2px;
    border-bottom: 0;
    transition: color 160ms ease, opacity 160ms ease;
}

body.lab-svc-page .lab-svc-settings__staff-link:hover {
    color: #0f2a30;
}

body.lab-svc-page .lab-svc-staff__more-item.is-danger {
    color: #b42318;
}

body.lab-svc-page .lab-svc-staff__more-item.is-danger:hover:not([aria-disabled='true']) {
    background: #fdecec;
}

body.lab-svc-page .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

body.lab-svc-page .lab-svc-staff__name-btn {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    font-weight: 600;
    color: var(--lab-ink);
    cursor: pointer;
    text-align: left;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color 160ms ease;
}

body.lab-svc-page .lab-svc-staff__name-btn:hover {
    color: #1a4f58;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* LAB staff card POP (ReUI-style: nav left, form right) */
body.lab-svc-staff-pop-open {
    overflow: hidden;
}

body.lab-svc-page .lab-svc-staff-pop {
    position: fixed;
    inset: 0;
    z-index: 13000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-staff-pop[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-staff-pop__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 40, 48, 0.32);
    border: 0;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-staff-pop__dialog {
    position: relative;
    z-index: 1;
    width: min(1040px, 100%);
    max-height: min(calc(100vh - 32px), 780px);
    display: flex;
    flex-direction: column;
    background: var(--lab-panel);
    border: 1px solid var(--lab-line);
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 40, 48, 0.18);
    outline: none;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-staff-pop--narrow .lab-svc-staff-pop__dialog {
    width: min(440px, 100%);
    max-height: min(calc(100vh - 32px), 520px);
}

body.lab-svc-page .lab-svc-run-create__panel {
    padding: 16px 20px 8px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

body.lab-svc-page .lab-svc-run-create__panel .lab-svc-staff-pop__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0;
}

body.lab-svc-page .lab-svc-run-create__panel .lab-svc-staff-pop__label {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page #labSvcCrsCreate.is-muted,
body.lab-svc-page #labSvcGrpCreate.is-muted,
body.lab-svc-page #labSvcTrkCreate.is-muted {
    opacity: 0.55;
}

body.lab-svc-page .lab-svc-staff-pop__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 20px 14px;
    border-bottom: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-staff-pop__title {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__sub {
    margin: 4px 0 0;
    font-size: 0.85rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-pop__close {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__close:hover {
    background: rgba(18, 28, 22, 0.06);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__layout {
    display: grid;
    grid-template-columns: 248px minmax(0, 1fr);
    gap: 0;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-staff-pop__nav {
    padding: 10px 8px;
    border-right: 1px solid var(--lab-line);
    background: rgba(18, 28, 22, 0.02);
    display: flex;
    flex-direction: column;
    gap: 2px;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    /* РўРѕРЅРєР°СЏ РїРѕР»РѕСЃР°: РЅРµ В«СЃРёСЃС‚РµРјРЅС‹Р№ Р±СЂСѓСЃВ», РЅРѕ СЃРєСЂРѕР»Р» РѕСЃС‚Р°С‘С‚СЃСЏ Р·Р°РјРµС‚РЅС‹Рј */
    scrollbar-width: thin;
    scrollbar-color: rgba(18, 28, 22, 0.28) transparent;
}

body.lab-svc-page .lab-svc-staff-pop__nav::-webkit-scrollbar {
    width: 6px;
}

body.lab-svc-page .lab-svc-staff-pop__nav::-webkit-scrollbar-track {
    background: transparent;
    margin: 6px 0;
}

body.lab-svc-page .lab-svc-staff-pop__nav::-webkit-scrollbar-thumb {
    background: rgba(18, 28, 22, 0.22);
    border-radius: 999px;
    border: 1px solid transparent;
    background-clip: padding-box;
}

body.lab-svc-page .lab-svc-staff-pop__nav::-webkit-scrollbar-thumb:hover {
    background: rgba(18, 28, 22, 0.38);
    background-clip: padding-box;
}

body.lab-svc-page .lab-svc-staff-pop__nav-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    margin: 0;
    padding: 8px 9px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__nav-item:hover {
    background: rgba(18, 28, 22, 0.05);
}

body.lab-svc-page .lab-svc-staff-pop__nav-item.is-active {
    background: rgba(221, 237, 173, 0.55);
}

body.lab-svc-page .lab-svc-staff-pop__nav-ico,
body.lab-svc-page .lab-svc-staff-pop__nav-ico-img {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--lab-muted);
    object-fit: contain;
    display: block;
}

body.lab-svc-page .lab-svc-staff-pop__nav-item.is-active .lab-svc-staff-pop__nav-ico {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__nav-ico-ph {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-pop__nav-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-pop__nav-title {
    font-size: 0.8rem;
    font-weight: 650;
    line-height: 1.25;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__nav-sub {
    font-size: 0.68rem;
    line-height: 1.3;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-pop__nav-sub:empty {
    display: none;
}

body.lab-svc-page .lab-svc-staff-pop__main {
    /* Р‘РµР· РІРµСЂС…РЅРµРіРѕ padding: РёРЅР°С‡Рµ sticky-Р·Р°РіРѕР»РѕРІРѕРє РѕСЃС‚Р°РІР»СЏРµС‚ С‰РµР»СЊ, СЃРєРІРѕР·СЊ РєРѕС‚РѕСЂСѓСЋ РµРґРµС‚ РєРѕРЅС‚РµРЅС‚ */
    padding: 0;
    overflow-y: auto;
    min-height: 0;
}

body.lab-svc-page .lab-svc-staff-pop__panel {
    padding: 12px 18px 16px;
}

body.lab-svc-page .lab-svc-staff-pop__panel-actions {
    margin-top: 14px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

/* Sticky: РІРїР»РѕС‚РЅСѓСЋ Рє РІРµСЂС…Сѓ main; Save СЃРїСЂР°РІР° */
body.lab-svc-page .lab-svc-staff-pop__panel-head {
    position: sticky;
    top: 0;
    z-index: 6;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 12px;
    margin: 0;
    padding: 12px 18px 10px;
    background: #fff;
    box-shadow: 0 1px 0 var(--lab-line);
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-text {
    min-width: 0;
    flex: 1 1 auto;
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-actions {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px 10px;
    margin-left: auto;
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-actions > .lab-svc-btn {
    flex: 0 0 auto;
    white-space: nowrap;
}

/* Status immediately left of Save (ok = green, error = red) */
body.lab-svc-page .lab-svc-staff-pop__panel-head-actions .lab-svc-staff-pop__form-msg {
    margin: 0;
    flex: 0 1 auto;
    min-width: 0;
    max-width: 12rem;
    text-align: right;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 0.82rem;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-actions .lab-svc-crs-jump .lab-svc-staff__more-menu {
    z-index: 30;
    min-width: 280px;
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-actions .lab-svc-crs-jump .lab-svc-staff__more-item {
    white-space: nowrap;
}
body.lab-svc-page .lab-svc-staff-pop__panel-head-actions .lab-svc-staff-pop__form-msg.is-ok {
    color: var(--lab-ok, #1f7a4c);
}
body.lab-svc-page .lab-svc-staff-pop__panel-head-actions .lab-svc-staff-pop__form-msg.is-error {
    color: #b42318;
    font-weight: 600;
    white-space: normal;
    max-width: min(100%, 16rem);
    overflow: visible;
    text-overflow: unset;
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-actions .lab-svc-staff-pop__head-save {
    flex: 0 0 auto;
    align-self: center;
}

/* Status left of Save вЂ” feedback next to the action */
body.lab-svc-loc-page .lab-svc-loc-pop__head-status {
    margin: 0;
    max-width: min(42vw, 280px);
    text-align: right;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-loc-page .lab-svc-loc-pop__head-status.is-ok {
    color: var(--lab-ok, #1f7a4c);
}

body.lab-svc-loc-page .lab-svc-loc-pop__head-status.is-error {
    color: #b42318;
    white-space: normal;
}

body.lab-svc-page .lab-svc-staff-pop__panel-head-actions[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-staff-pop__head-save {
    min-height: 36px;
    padding: 0 14px;
    font-size: 0.84rem;
}

body.lab-svc-page .lab-svc-staff-pop__head-save.is-busy,
body.lab-svc-page .lab-svc-staff-pop__head-save:disabled {
    opacity: 0.55;
    cursor: wait;
}

body.lab-svc-page .lab-svc-staff-pop__head-save.is-muted:disabled {
    opacity: 0.42;
    cursor: not-allowed;
    background: #9aa5a8;
    border-color: transparent;
    color: #fff;
}

body.lab-svc-page .lab-svc-staff-pop__crm-cta {
    text-decoration: none;
}

body.lab-svc-page .lab-svc-staff-pop__muted {
    color: var(--lab-muted);
    font-size: 0.85rem;
}

body.lab-svc-page .lab-svc-staff-pop__act-more {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--lab-muted);
    align-self: center;
}

body.lab-svc-page .lab-svc-staff-pop__input,
body.lab-svc-page .lab-svc-staff-pop__textarea {
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 8px 12px;
    border: 1px solid rgba(18, 28, 22, 0.22);
    border-radius: 10px;
    background: rgba(18, 28, 22, 0.035);
    font: inherit;
    font-size: 0.9rem;
    font-weight: 650;
    color: var(--lab-ink);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__field {
    position: relative;
    width: 100%;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-pop__field--input .lab-svc-staff-pop__input {
    padding-right: 34px;
}

body.lab-svc-page .lab-svc-staff-pop__field--textarea .lab-svc-staff-pop__textarea {
    padding-right: 34px;
    padding-bottom: 28px;
}

body.lab-svc-page .lab-svc-staff-pop__clear {
    position: absolute;
    top: 7px;
    right: 7px;
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(18, 28, 22, 0.08);
    color: var(--lab-muted);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, opacity 150ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__clear:hover {
    background: rgba(18, 28, 22, 0.14);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__clear[hidden] {
    display: none;
}

body.lab-svc-page .lab-svc-staff-pop__input:hover,
body.lab-svc-page .lab-svc-staff-pop__textarea:hover {
    border-color: rgba(15, 118, 110, 0.35);
    background: rgba(15, 118, 110, 0.04);
}

body.lab-svc-page .lab-svc-staff-pop__input:focus,
body.lab-svc-page .lab-svc-staff-pop__textarea:focus {
    outline: none;
    border-color: rgba(15, 118, 110, 0.55);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.14);
}

body.lab-svc-page .lab-svc-staff-pop__textarea {
    min-height: 88px;
    resize: vertical;
    line-height: 1.4;
    font-weight: 400;
}

body.lab-svc-page .lab-svc-staff-pop__desc-wrap {
    position: relative;
}

body.lab-svc-page .lab-svc-staff-pop__counter {
    display: block;
    margin-top: 4px;
    text-align: right;
    font-size: 0.72rem;
    font-variant-numeric: tabular-nums;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-pop__color-wrap {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
}

body.lab-svc-page .lab-svc-staff-pop__color-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

body.lab-svc-page .lab-svc-staff-pop__color-dot {
    width: 22px;
    height: 22px;
    padding: 0;
    border-radius: 999px;
    border: 2px solid transparent;
    box-shadow: inset 0 0 0 1px rgba(18, 28, 22, 0.12);
    cursor: pointer;
    transition: box-shadow 150ms ease, transform 150ms ease, opacity 150ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__color-dot:hover:not(:disabled) {
    transform: scale(1.06);
}

body.lab-svc-page .lab-svc-staff-pop__color-dot.is-selected {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(18, 28, 22, 0.78);
}

body.lab-svc-page .lab-svc-staff-pop__color-dot.is-taken,
body.lab-svc-page .lab-svc-staff-pop__color-dot:disabled {
    opacity: 0.28;
    cursor: not-allowed;
    transform: none;
    position: relative;
}

body.lab-svc-page .lab-svc-staff-pop__color-reset {
    padding: 4px 10px;
    font-size: 0.78rem;
}

body.lab-svc-page .lab-svc-crs__color-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
}

body.lab-svc-page .lab-svc-staff-pop__field-hint {
    margin: 0;
    font-size: 0.72rem;
    line-height: 1.35;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-pop__tr-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-pop__tr-chrome {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-pop__tr-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
}

body.lab-svc-page .lab-svc-staff-pop__tr-src {
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.02em;
    color: var(--lab-muted, #6b7280);
}

body.lab-svc-page .lab-svc-staff-pop__tr-link {
    appearance: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    color: var(--lab-ink, #173b42);
    font: inherit;
    transition: opacity 160ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__tr-link:hover {
    opacity: 0.82;
}

body.lab-svc-page .lab-svc-staff-pop__tr-link-txt {
    font-size: 0.75rem;
    font-weight: 650;
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.lab-svc-page .lab-svc-staff-pop__tr-preview {
    margin: 0;
    font-size: 0.8rem;
    line-height: 1.35;
    color: var(--lab-ink, #173b42);
    opacity: 0.78;
    word-break: break-word;
}

body.lab-svc-page .lab-svc-staff-pop__tr-preview.is-missing {
    color: var(--lab-muted, #6b7280);
    font-style: italic;
    opacity: 1;
}

body.lab-svc-page .lab-svc-staff-pop__form-msg {
    margin: 10px 0 0;
    font-size: 0.82rem;
    color: var(--lab-ok, #1f7a4c);
}

body.lab-svc-page .lab-svc-staff-pop__form-msg.is-ok {
    color: var(--lab-ok, #1f7a4c);
}

body.lab-svc-page .lab-svc-staff-pop__form-msg.is-error {
    color: #b42318;
}

body.lab-svc-page .lab-svc-staff-pop__panel-title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

body.lab-svc-page .lab-svc-staff-pop__panel-title > .lab-svc-staff-pop__row-title-line {
    align-items: center;
}

body.lab-svc-page .lab-svc-staff-pop__panel-title > .lab-svc-staff-pop__row-title-line > span:first-child {
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    color: inherit;
}

body.lab-svc-page .lab-svc-staff-pop__panel-title.has-who {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
}

body.lab-svc-page .lab-svc-staff-pop__panel-who {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-staff-pop__panel-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: #334155;
    background: #e2e8f0;
    overflow: hidden;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.08);
}

body.lab-svc-page .lab-svc-staff-pop__panel-avatar.has-photo {
    background: #f1f5f9;
}

body.lab-svc-page .lab-svc-staff-pop__panel-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff-pop__panel-name {
    min-width: 0;
    overflow-wrap: anywhere;
}

body.lab-svc-page .lab-svc-staff-pop__panel-sub {
    margin: 4px 0 0;
    font-size: 0.84rem;
    color: var(--lab-muted);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-staff-pop__panel-sub.is-price-unit {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-weight: 700;
    color: var(--lab-info);
}

body.lab-svc-page .lab-svc-staff-pop__panel-sub.is-price-unit .lab-svc-staff-pop__info-tip {
    font-weight: 500;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__lead {
    margin: 0 0 12px;
    font-size: 0.86rem;
    color: var(--lab-muted);
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-staff-pop__card {
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
}

body.lab-svc-page .lab-svc-staff-pop__row {
    display: grid;
    grid-template-columns: minmax(120px, 200px) minmax(0, 1fr);
    gap: 10px 16px;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(228, 232, 225, 0.9);
}

body.lab-svc-page .lab-svc-staff-pop__row:last-child {
    border-bottom: 0;
}

body.lab-svc-page .lab-svc-staff-pop__row-title-line {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-staff-pop__row-title {
    flex: 0 1 auto;
    min-width: 0;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-pop__row-title-line .lab-svc-staff-pop__info {
    flex: 0 0 auto;
    margin-top: 1px;
    margin-left: 0;
}

/* Main/Р РµСЃСѓСЂСЃС‹ вЂ” СЃРµС‚РєР° РєР°Рє Сѓ РЎРѕС‚СЂСѓРґРЅРёРєРѕРІ (Р»РµР№Р±Р» | РїРѕР»Рµ), Р±РµР· Р»РёС€РЅРµРіРѕ СЃРєСЂРѕР»Р»Р° РЅР° РєРѕСЂРѕС‚РєРёС… РІРєР»Р°РґРєР°С… */
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row {
    align-items: center;
    min-width: 0;
    padding: 6px 12px;
}

/* Р›РѕРіРѕС‚РёРї РІС‹С€Рµ РѕРґРЅРѕСЃС‚СЂРѕС‡РЅС‹С… РїРѕР»РµР№ вЂ” Р»РµР№Р±Р» Рє РІРµСЂС…Сѓ */
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-act__logo) {
    align-items: start;
}

body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__field,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__field,
body.lab-svc-page .lab-svc-act__main .lab-svc-act__logo,
body.lab-svc-page .lab-svc-act__main .lab-svc-act__sys,
body.lab-svc-page .lab-svc-act__main .lab-svc-act__tor,
body.lab-svc-page .lab-svc-act__res .lab-svc-act__ctrl,
body.lab-svc-page .lab-svc-act__res .lab-svc-act__qty-field {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act__cons-head,
body.lab-svc-page .lab-svc-act__tr-host {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head {
    align-items: start;
    position: relative;
    z-index: 1;
}

body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn:hover),
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn:focus-visible),
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn.is-open),
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn:hover),
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn:focus-visible),
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn.is-open),
body.lab-svc-page .lab-svc-act__cons-head:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-act__cons-head:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-act__cons-head:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-page .lab-svc-act__cons-head:has(.lab-svc-staff-pop__warn:hover),
body.lab-svc-page .lab-svc-act__cons-head:has(.lab-svc-staff-pop__warn:focus-visible),
body.lab-svc-page .lab-svc-act__cons-head:has(.lab-svc-staff-pop__warn.is-open),
body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head:has(.lab-svc-staff-pop__warn:hover),
body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head:has(.lab-svc-staff-pop__warn:focus-visible),
body.lab-svc-page .lab-svc-act__tr .lab-svc-act__cons-head:has(.lab-svc-staff-pop__warn.is-open) {
    z-index: 8;
}

body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__info,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__info,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__info,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__info,
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__warn,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__warn,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__warn,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__warn {
    position: relative;
}

body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__info-tip {
    left: calc(100% + 10px);
    top: 50%;
    z-index: 12;
    width: min(240px, 28vw);
    max-width: 240px;
    transform: translate(4px, -50%);
}

body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__info-tip::after,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__info-tip::after,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__info-tip::after,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__info-tip::after {
    content: '';
    position: absolute;
    left: -5px;
    top: 50%;
    width: 9px;
    height: 9px;
    margin-top: -5px;
    background: #fff;
    border-left: 1px solid var(--lab-line);
    border-bottom: 1px solid var(--lab-line);
    transform: rotate(45deg);
}

body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__warn:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__warn:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__main .lab-svc-staff-pop__warn.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__warn:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__warn:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__res .lab-svc-staff-pop__warn.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__warn:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__warn:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__cons .lab-svc-staff-pop__warn.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__warn:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__warn:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__tr .lab-svc-staff-pop__warn.is-open .lab-svc-staff-pop__info-tip {
    transform: translate(0, -50%);
}

body.lab-svc-page .lab-svc-act__tr {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

body.lab-svc-page .lab-svc-act__tr-mount {
    min-height: 48px;
}

body.lab-svc-page .lab-svc-act__tr .crm-entity-i18n-btn--secondary {
    background: #fff;
    color: var(--lab-ink);
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    font-size: 0.86rem;
    font-weight: 600;
    padding: 8px 14px;
    transition: background 150ms ease, border-color 150ms ease;
}

body.lab-svc-page .lab-svc-act__tr .crm-entity-i18n-btn--secondary:hover {
    background: var(--lab-soft);
    border-color: rgba(23, 59, 66, 0.28);
}

body.lab-svc-page .lab-svc-act__tr .crm-entity-i18n-btn--primary {
    border-radius: 10px;
    font-size: 0.86rem;
    font-weight: 600;
    padding: 8px 14px;
}

body.lab-svc-page .lab-svc-act__req {
    margin-left: 4px;
    color: #b42318;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-act__sys-trigger.is-invalid,
body.lab-svc-page #labActName.is-invalid,
body.lab-svc-page .lab-svc-staff-pop__input.is-invalid,
body.lab-svc-page .lab-svc-staff-pop__textarea.is-invalid {
    border-color: #b42318;
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.12);
    background: #fff8f7;
}

body.lab-svc-page .lab-svc-staff-pop__input.is-invalid:hover,
body.lab-svc-page .lab-svc-staff-pop__input.is-invalid:focus,
body.lab-svc-page .lab-svc-staff-pop__textarea.is-invalid:hover,
body.lab-svc-page .lab-svc-staff-pop__textarea.is-invalid:focus {
    border-color: #b42318;
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.16);
    background: #fff;
}

body.lab-svc-page .lab-svc-staff-pop__info {
    position: relative;
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: rgba(18, 28, 22, 0.42);
    cursor: help;
    transition: color 150ms ease, background 150ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__info:hover,
body.lab-svc-page .lab-svc-staff-pop__info:focus-visible,
body.lab-svc-page .lab-svc-staff-pop__info.is-open {
    color: #0f766e;
    background: rgba(15, 118, 110, 0.1);
    outline: none;
}

body.lab-svc-page .lab-svc-staff-pop__warn {
    position: relative;
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #9a6b12;
    cursor: help;
    transition: color 150ms ease, background 150ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__warn:hover,
body.lab-svc-page .lab-svc-staff-pop__warn:focus-visible,
body.lab-svc-page .lab-svc-staff-pop__warn.is-open {
    color: #7a5410;
    background: rgba(184, 134, 11, 0.14);
    outline: none;
}

body.lab-svc-page .lab-svc-staff-pop__info-tip {
    position: absolute;
    left: 0;
    top: calc(100% + 8px);
    z-index: 40;
    width: min(280px, 72vw);
    padding: 8px 10px;
    border-radius: 10px;
    border: 1px solid var(--lab-line);
    background: #fff;
    box-shadow: 0 10px 28px rgba(15, 40, 48, 0.14);
    color: var(--lab-ink);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
    white-space: normal;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-2px);
    transition: opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
}

/* Near bottom of the form: tip opens upward so main scroll does not clip it */
body.lab-svc-page .lab-svc-staff-pop__row:nth-last-child(-n+3) .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-staff-pop__row:nth-last-child(-n+3) .lab-svc-staff-pop__warn .lab-svc-staff-pop__info-tip {
    top: auto;
    bottom: calc(100% + 8px);
    transform: translateY(2px);
}

body.lab-svc-page .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-page .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn:hover),
body.lab-svc-page .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn:focus-visible),
body.lab-svc-page .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__warn.is-open) {
    position: relative;
    z-index: 12;
}

body.lab-svc-page .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-staff-pop__warn:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-staff-pop__warn:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-staff-pop__warn.is-open .lab-svc-staff-pop__info-tip {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

body.lab-svc-page .lab-svc-staff-pop__row-hint {
    display: block;
    margin-top: 2px;
    font-size: 0.72rem;
    font-weight: 400;
    color: rgba(18, 28, 22, 0.42);
}

body.lab-svc-page .lab-svc-staff-pop__row-val {
    font-size: 0.9rem;
    font-weight: 650;
    color: var(--lab-ink);
    min-width: 0;
    letter-spacing: -0.01em;
}

body.lab-svc-page .lab-svc-staff-pop__photo {
    width: 48px;
    height: 48px;
    border-radius: 999px;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff-pop__photo--ph {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #c9d5c8;
    font-size: 0.72rem;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-staff-pop__swatch {
    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid rgba(18, 28, 22, 0.12);
    vertical-align: middle;
    margin-right: 8px;
}

body.lab-svc-page .lab-svc-staff-pop__acts {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}

body.lab-svc-page .lab-svc-staff-pop__act {
    padding: 2px 8px;
    border-radius: 5px;
    background: rgba(18, 28, 22, 0.06);
    font-size: 0.78rem;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-staff-pop__crm-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

body.lab-svc-page .lab-svc-staff-pop__crm-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid transparent;
    text-decoration: none;
    color: var(--lab-ink);
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-pop__crm-link:hover {
    background: rgba(18, 28, 22, 0.04);
    border-color: var(--lab-line);
}

body.lab-svc-page .lab-svc-staff-pop__crm-link-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-pop__crm-link-title {
    font-size: 0.88rem;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-staff-pop__crm-link-sub {
    font-size: 0.76rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-pop__foot {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 12px 20px 16px;
    border-top: 1px solid var(--lab-line);
    background: rgba(18, 28, 22, 0.02);
}

/* LAB staff вЂ” work dates (combat flow, LAB tokens) */
body.lab-svc-page .lab-svc-staff-work-host {
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-work {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-work__mode-label {
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--lab-ink);
    margin-bottom: 6px;
}

body.lab-svc-page .lab-svc-staff-work__select {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.9rem;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-work__select:focus {
    outline: none;
    border-color: rgba(15, 118, 110, 0.45);
    box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.12);
}

body.lab-svc-page .lab-svc-staff-work__select:disabled {
    opacity: 0.65;
    cursor: not-allowed;
    background: rgba(18, 28, 22, 0.04);
}

body.lab-svc-page .lab-svc-staff-work__mode-note {
    margin: 8px 0 0;
    font-size: 0.78rem;
    line-height: 1.4;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-work__hint {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.4;
    color: #0c4a6e;
    background: #e0f2fe;
    border: 1px solid #7dd3fc;
    border-radius: 10px;
    padding: 8px 10px;
}

body.lab-svc-page .lab-svc-staff-work__inner {
    display: flex;
    gap: 14px;
    flex-wrap: nowrap;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
    overflow-x: hidden;
}

body.lab-svc-page .lab-svc-staff-work__cal {
    flex: 1 1 240px;
    min-width: 220px;
    max-width: 320px;
}

body.lab-svc-page .lab-svc-staff-work__cal-title {
    font-size: 0.78rem;
    font-weight: 700;
    margin: 0 0 8px;
    letter-spacing: 0.01em;
}

body.lab-svc-page .lab-svc-staff-work__cal-title.is-norm {
    color: #b45309;
}

body.lab-svc-page .lab-svc-staff-work__cal-title.is-temp {
    color: #047857;
}

body.lab-svc-page .lab-svc-staff-work__cal-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 4px;
    margin-bottom: 8px;
}

body.lab-svc-page .lab-svc-staff-work__dow-cell {
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--lab-muted);
    text-align: center;
    padding: 2px 0;
}

body.lab-svc-page .lab-svc-staff-work__cell {
    aspect-ratio: 1;
    min-height: 30px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-work__cell:hover:not(:disabled) {
    border-color: rgba(15, 118, 110, 0.4);
    box-shadow: 0 0 0 2px rgba(15, 118, 110, 0.1);
}

body.lab-svc-page .lab-svc-staff-work__cell.is-muted {
    opacity: 0.35;
    background: rgba(18, 28, 22, 0.03);
    cursor: default;
}

body.lab-svc-page .lab-svc-staff-work__cell.is-blocked {
    opacity: 0.45;
    background: rgba(18, 28, 22, 0.05);
    color: var(--lab-muted);
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-staff-work__cell.is-pending {
    background: rgba(15, 118, 110, 0.12);
    border-color: rgba(15, 118, 110, 0.45);
    color: #0f766e;
}

body.lab-svc-page .lab-svc-staff-work__cell.is-saved {
    background: rgba(180, 83, 9, 0.12);
    border-color: rgba(180, 83, 9, 0.4);
    color: #92400e;
}

body.lab-svc-page .lab-svc-staff-work.is-temp-mode .lab-svc-staff-work__cell.is-saved {
    background: rgba(4, 120, 87, 0.12);
    border-color: rgba(4, 120, 87, 0.4);
    color: #065f46;
}

body.lab-svc-page .lab-svc-staff-work__cal-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

body.lab-svc-page .lab-svc-staff-work__nav-btn {
    min-width: 36px;
    padding: 6px 10px;
}

body.lab-svc-page .lab-svc-staff-work__month {
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-work__side {
    flex: 1 1 280px;
    min-width: 0;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-staff-work__head {
    font-size: 0.86rem;
    font-weight: 600;
    color: var(--lab-ink);
    margin-bottom: 10px;
}

body.lab-svc-page .lab-svc-staff-work__section-label {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--lab-muted);
    margin: 0 0 6px;
}

body.lab-svc-page .lab-svc-staff-work__section-bar {
    margin-bottom: 6px;
}

body.lab-svc-page .lab-svc-staff-work__clear {
    font-size: 0.78rem;
    padding: 5px 10px;
}

body.lab-svc-page .lab-svc-staff-work__chips {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    width: 100%;
    margin-bottom: 10px;
    min-height: 28px;
}

body.lab-svc-page .lab-svc-staff-work__chip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    min-width: 0;
    padding: 5px 6px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: rgba(15, 118, 110, 0.06);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--lab-ink);
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-staff-work__chip-x {
    border: 0;
    background: transparent;
    color: var(--lab-muted);
    cursor: pointer;
    font-size: 0.9rem;
    line-height: 1;
    padding: 0 2px;
}

body.lab-svc-page .lab-svc-staff-work__chip-x:hover {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-work__upload {
    width: 100%;
    margin-bottom: 12px;
}

body.lab-svc-page .lab-svc-staff-work__db {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    width: 100%;
}

body.lab-svc-page .lab-svc-staff-work__db-li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    min-width: 0;
    padding: 5px 6px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-staff-work__db-del {
    border: 0;
    background: transparent;
    color: var(--lab-muted);
    cursor: pointer;
    font-size: 0.9rem;
    line-height: 1;
    padding: 0 2px;
}

body.lab-svc-page .lab-svc-staff-work__db-del:hover {
    color: #b91c1c;
}

body.lab-svc-page .lab-svc-staff-work__empty,
body.lab-svc-page .lab-svc-staff-work__empty-li {
    grid-column: 1 / -1;
    font-size: 0.8rem;
    color: var(--lab-muted);
    line-height: 1.4;
    padding: 8px 10px;
    border: 1px dashed var(--lab-line);
    border-radius: 10px;
    background: rgba(18, 28, 22, 0.02);
}

body.lab-svc-page .lab-svc-staff-work__msg {
    margin: 0;
    font-size: 0.82rem;
    color: #047857;
}

body.lab-svc-page .lab-svc-staff-work__msg.is-error {
    color: #b91c1c;
}

body.lab-svc-page .lab-svc-staff-pop__panel .lab-svc-staff-pop__lead.is-error {
    color: #b91c1c;
}

body.lab-svc-page .lab-svc-staff-month {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-month__mode {
    display: flex;
    align-items: center;
    gap: 10px 14px;
    flex-wrap: wrap;
}

body.lab-svc-page .lab-svc-staff-month__mode-label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-month__switch {
    display: inline-flex;
    padding: 3px;
    border-radius: 10px;
    border: 1px solid var(--lab-line);
    background: rgba(18, 28, 22, 0.04);
}

body.lab-svc-page .lab-svc-staff-month__switch-btn {
    margin: 0;
    padding: 5px 12px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.82rem;
    font-weight: 650;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, box-shadow 150ms ease;
}

body.lab-svc-page .lab-svc-staff-month__switch-btn.is-on {
    background: #fff;
    color: var(--lab-ink);
    box-shadow: 0 1px 2px rgba(18, 28, 22, 0.08);
}

body.lab-svc-page .lab-svc-staff-month__switch.is-locked .lab-svc-staff-month__switch-btn,
body.lab-svc-page .lab-svc-staff-month__switch-btn:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}

body.lab-svc-page .lab-svc-staff-month__note {
    margin: 0;
    font-size: 0.76rem;
    line-height: 1.35;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-month__legend {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-left: auto;
}

body.lab-svc-page .lab-svc-staff-month__key {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-month__key::before {
    content: '';
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid rgba(15, 118, 110, 0.35);
}

body.lab-svc-page .lab-svc-staff-month__key.is-work::before {
    background: rgba(15, 118, 110, 0.16);
}

body.lab-svc-page .lab-svc-staff-month__key.is-off::before {
    background: rgba(244, 114, 132, 0.28);
    border-color: rgba(190, 18, 60, 0.28);
}

body.lab-svc-page .lab-svc-staff-month__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

body.lab-svc-page .lab-svc-staff-month__title {
    min-width: 9.5rem;
    text-align: center;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--lab-ink);
    letter-spacing: -0.01em;
}

body.lab-svc-page .lab-svc-staff-month__nav-btn {
    min-width: 28px;
    height: 28px;
    padding: 0 6px;
    border-radius: 8px;
    font-size: 0.85rem;
    line-height: 1;
}

body.lab-svc-page .lab-svc-staff-month__dow,
body.lab-svc-page .lab-svc-staff-month__grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 4px;
}

body.lab-svc-page .lab-svc-staff-month__dow-cell {
    text-align: center;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: var(--lab-ink);
    padding: 2px 0 4px;
}

body.lab-svc-page .lab-svc-staff-month__day {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    min-height: 58px;
    margin: 0;
    padding: 4px 4px 5px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-month__day.is-work {
    background: rgba(15, 118, 110, 0.14);
    border-color: rgba(15, 118, 110, 0.28);
}

body.lab-svc-page .lab-svc-staff-month__day.is-off {
    background: rgba(244, 114, 132, 0.2);
    border-color: rgba(190, 18, 60, 0.22);
}

body.lab-svc-page .lab-svc-staff-month__day.is-out {
    opacity: 0.38;
    cursor: default;
}

body.lab-svc-page .lab-svc-staff-month__day.is-past {
    opacity: 0.42;
    cursor: default;
}

body.lab-svc-page .lab-svc-staff-month__day:hover:not(:disabled) {
    box-shadow: 0 0 0 2px rgba(18, 28, 22, 0.12);
}

body.lab-svc-page .lab-svc-staff-month__day.is-dirty::after {
    content: '';
    position: absolute;
    top: 5px;
    right: 5px;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #0f766e;
}

body.lab-svc-page .lab-svc-staff-month__day.is-conflict {
    box-shadow: inset 0 0 0 1px rgba(180, 83, 9, 0.55);
}

body.lab-svc-page .lab-svc-staff-month__day.is-book-lock {
    cursor: help;
}

body.lab-svc-page .lab-svc-staff-month__num {
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.2;
}

body.lab-svc-page .lab-svc-staff-month__logos {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    margin-top: auto;
    padding-left: 2px;
    min-height: 22px;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-staff-month__logos:hover .lab-svc-staff-month__logo {
    box-shadow: 0 0 0 2px rgba(15, 118, 110, 0.28);
}

body.lab-svc-page .lab-svc-staff-month__logo {
    position: relative;
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    margin-left: -6px;
    border-radius: 999px;
    border: 1.5px solid #fff;
    background: rgba(15, 118, 110, 0.12);
    box-shadow: 0 0 0 1px rgba(15, 40, 48, 0.08);
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--lab-ink);
    line-height: 1;
}

body.lab-svc-page .lab-svc-staff-month__logo:first-child {
    margin-left: 0;
}

body.lab-svc-page .lab-svc-staff-month__logo-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff-month__logo-fall {
    display: block;
}

body.lab-svc-page .lab-svc-staff-month__logo.is-more {
    background: #fff;
    color: var(--lab-muted);
    font-size: 0.58rem;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-staff-month__chips,
body.lab-svc-page .lab-svc-staff-month__chip,
body.lab-svc-page .lab-svc-staff-month__more {
    display: none;
}

body.lab-svc-page .lab-svc-staff-month__bar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
}

body.lab-svc-page .lab-svc-staff-month__msg {
    margin: 0;
    margin-right: auto;
    font-size: 0.8rem;
    color: #047857;
}

body.lab-svc-page .lab-svc-staff-month__msg.is-error {
    color: #b91c1c;
}

@media (max-width: 720px) {
    body.lab-svc-page .lab-svc-staff-pop__layout {
        grid-template-columns: 1fr;
    }

    body.lab-svc-page .lab-svc-staff-pop__nav {
        flex-direction: row;
        flex-wrap: wrap;
        border-right: 0;
        border-bottom: 1px solid var(--lab-line);
    }

    body.lab-svc-page .lab-svc-staff-pop__row {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    body.lab-svc-page .lab-svc-staff-work__inner {
        flex-wrap: wrap;
    }

    body.lab-svc-page .lab-svc-staff-work__cal {
        max-width: none;
    }

    body.lab-svc-page .lab-svc-staff-work__chips,
    body.lab-svc-page .lab-svc-staff-work__db {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* LAB staff POP вЂ” location schedule (M23b) */
body.lab-svc-page .lab-svc-staff-loc-host {
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-loc {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-loc__top {
    display: flex;
    align-items: center;
    gap: 10px 14px;
    flex-wrap: wrap;
}

body.lab-svc-page .lab-svc-staff-loc__loc-label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-loc__select {
    min-width: min(220px, 100%);
    max-width: 320px;
    padding: 6px 10px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.84rem;
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

body.lab-svc-page .lab-svc-staff-loc__select:focus {
    outline: none;
    border-color: rgba(15, 118, 110, 0.45);
    box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.12);
}

body.lab-svc-page .lab-svc-staff-loc__legend {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-left: auto;
    flex-wrap: wrap;
}

body.lab-svc-page .lab-svc-staff-loc__key {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-loc__key::before {
    content: '';
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid rgba(15, 118, 110, 0.35);
}

body.lab-svc-page .lab-svc-staff-loc__key.is-here::before {
    background: rgba(15, 118, 110, 0.16);
}

body.lab-svc-page .lab-svc-staff-loc__key.is-other::before {
    /* В«Р”СЂСѓРіР°СЏВ» = С†РІРµС‚ Р»РѕРєР°С†РёРё РёР· Р‘Р”; РІ Р»РµРіРµРЅРґРµ вЂ” РЅРµР№С‚СЂР°Р»СЊРЅС‹Р№ РЅР°РјС‘Рє */
    background: linear-gradient(
        135deg,
        rgba(59, 130, 246, 0.35) 0%,
        rgba(244, 114, 132, 0.35) 50%,
        rgba(245, 158, 11, 0.35) 100%
    );
    border-color: rgba(100, 116, 139, 0.4);
}

body.lab-svc-page .lab-svc-staff-loc__key.is-off::before {
    background: rgba(244, 114, 132, 0.28);
    border-color: rgba(190, 18, 60, 0.28);
}

body.lab-svc-page .lab-svc-staff-loc__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

body.lab-svc-page .lab-svc-staff-loc__title {
    min-width: 9.5rem;
    text-align: center;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--lab-ink);
    letter-spacing: -0.01em;
}

body.lab-svc-page .lab-svc-staff-loc__nav-btn {
    min-width: 28px;
    height: 28px;
    padding: 0 6px;
    border-radius: 8px;
    font-size: 0.85rem;
    line-height: 1;
}

body.lab-svc-page .lab-svc-staff-loc__dow,
body.lab-svc-page .lab-svc-staff-loc__grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 3px;
}

body.lab-svc-page .lab-svc-staff-loc__dow-cell {
    text-align: center;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: var(--lab-ink);
    padding: 2px 0 4px;
}

body.lab-svc-page .lab-svc-staff-loc__day {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    min-height: 44px;
    margin: 0;
    padding: 3px 3px 4px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-loc__day.is-here {
    background: rgba(15, 118, 110, 0.14);
    border-color: rgba(15, 118, 110, 0.28);
}

body.lab-svc-page .lab-svc-staff-loc__day.is-other {
    /* Р±РµР· С†РІРµС‚Р° РёР· Р‘Р” вЂ” РЅРµР№С‚СЂР°Р»СЊРЅС‹Р№; СЃ С†РІРµС‚РѕРј вЂ” С‚РѕР»СЊРєРѕ inline !important */
    background: rgba(100, 116, 139, 0.12);
    border-color: rgba(100, 116, 139, 0.28);
}

body.lab-svc-page .lab-svc-staff-loc__day.is-other.has-loc-color {
    /* С„РѕРЅ/Р±РѕСЂРґРµСЂ Р·Р°РґР°С‘С‚ JS inline (DB hex); СЃСЋРґР° РЅРµ Р»РµР·РµРј color-mix */
}

body.lab-svc-page .lab-svc-staff-loc__day.is-off {
    background: rgba(244, 114, 132, 0.2);
    border-color: rgba(190, 18, 60, 0.22);
    color: var(--lab-muted);
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-staff-loc__day.is-free {
    background: #fff;
}

body.lab-svc-page .lab-svc-staff-loc__day.is-out {
    opacity: 0.38;
    cursor: default;
    pointer-events: none;
}

body.lab-svc-page .lab-svc-staff-loc__day.is-past {
    opacity: 0.42;
    cursor: default;
}

body.lab-svc-page .lab-svc-staff-loc__day:hover:not(:disabled) {
    box-shadow: 0 0 0 2px rgba(18, 28, 22, 0.12);
}

body.lab-svc-page .lab-svc-staff-loc__day.is-dirty::after {
    content: '';
    position: absolute;
    top: 5px;
    right: 5px;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #0f766e;
}

body.lab-svc-page .lab-svc-staff-loc__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 4px;
    min-height: 1.15em;
}

body.lab-svc-page .lab-svc-staff-loc__num {
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.2;
}

body.lab-svc-page .lab-svc-staff-loc__auto {
    flex: 0 0 auto;
    margin: 0;
    padding: 0 4px;
    border-radius: 4px;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: lowercase;
    color: #0f766e;
    background: rgba(15, 118, 110, 0.12);
    line-height: 1.35;
}

/* 2-СЏ СЃС‚СЂРѕРєР°: Р»РѕРіРѕС‚РёРї Р»РѕРєР°С†РёРё. 3-СЏ: СЌРєСЃРєСѓСЂСЃРёРё (РєР»РёРє в†’ РґРЅРµРІРЅРѕР№ РєР°Р»РµРЅРґР°СЂСЊ). */
body.lab-svc-page .lab-svc-staff-loc__loc-row,
body.lab-svc-page .lab-svc-staff-loc__books-row {
    display: block;
}

body.lab-svc-page .lab-svc-staff-loc__loc-row .lab-svc-staff-loc__logos,
body.lab-svc-page .lab-svc-staff-loc__books-row .lab-svc-staff-loc__books {
    margin-top: 0;
    min-height: 20px;
}

body.lab-svc-page .lab-svc-staff-loc__day:has(.lab-svc-staff-loc__loc-row),
body.lab-svc-page .lab-svc-staff-loc__day:has(.lab-svc-staff-loc__books-row) {
    min-height: 56px;
}

body.lab-svc-page .lab-svc-staff-loc__books-row {
    margin-top: auto;
}

body.lab-svc-page .lab-svc-staff-loc__loc-row .lab-svc-staff-month__logo:first-child,
body.lab-svc-page .lab-svc-staff-loc__books-row .lab-svc-staff-month__logo:first-child {
    margin-left: 0;
}

body.lab-svc-page .lab-svc-staff-loc__day:disabled .lab-svc-staff-loc__logos,
body.lab-svc-page .lab-svc-staff-loc__day:disabled .lab-svc-staff-loc__books {
    cursor: default;
    opacity: 0.85;
}

body.lab-svc-page .lab-svc-staff-loc__bar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 4px;
}

body.lab-svc-page .lab-svc-staff-loc__msg {
    margin: 0;
    margin-right: auto;
    font-size: 0.82rem;
    color: #047857;
}

body.lab-svc-page .lab-svc-staff-loc__msg.is-error {
    color: #b91c1c;
}

/* вЂ”вЂ” LAB team schedule page layer (month Г— staff) вЂ”вЂ” */
body.lab-svc-staff-page.lab-svc-team-cal-open .lab-svc-workspace,
body.lab-svc-staff-page.lab-svc-prod-matrix-open .lab-svc-workspace {
    min-height: 0;
    height: 100vh;
    overflow: hidden;
}

body.lab-svc-staff-page.lab-svc-team-cal-open .lab-svc-main,
body.lab-svc-staff-page.lab-svc-prod-matrix-open .lab-svc-main {
    display: flex;
    flex-direction: column;
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
    padding: 14px 20px 12px;
}

body.lab-svc-staff-page.lab-svc-team-cal-open .lab-svc-pagehead,
body.lab-svc-staff-page.lab-svc-prod-matrix-open .lab-svc-pagehead {
    margin-bottom: 10px;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-team-cal {
    display: none;
    flex: 1 1 auto;
    min-height: 0;
    flex-direction: column;
}

body.lab-svc-staff-page.lab-svc-team-cal-open .lab-svc-team-cal:not([hidden]) {
    display: flex;
}

body.lab-svc-page .lab-svc-team-cal__panel {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    background: var(--lab-panel, #fff);
    border: 1px solid var(--lab-line, #d7e2e6);
    border-radius: 16px;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-team-cal__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 16px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-team-cal__sub {
    margin: 0;
    font-size: 0.84rem;
    color: var(--lab-muted, #5b727a);
}

body.lab-svc-page .lab-svc-team-cal__month {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-team-cal__month-label {
    min-width: 9.5rem;
    text-align: center;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--lab-ink, #0f2830);
    text-transform: capitalize;
}

body.lab-svc-page .lab-svc-team-cal__nav {
    min-width: 36px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 1.15rem;
    line-height: 1;
}

body.lab-svc-page .lab-svc-team-cal__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.78rem;
    color: var(--lab-muted, #5b727a);
}

body.lab-svc-page .lab-svc-team-cal__legend li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-team-cal__swatch {
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid var(--lab-line, #d7e2e6);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-team-cal__swatch.is-off {
    background: #fce8e8;
    border-color: #f0c4c4;
}

body.lab-svc-page .lab-svc-team-cal__swatch.is-free {
    background: #f4f8f9;
}

body.lab-svc-page .lab-svc-team-cal__swatch.is-loc {
    background: rgba(15, 118, 110, 0.18);
    border-color: #0f766e;
}

body.lab-svc-page .lab-svc-team-cal__swatch.is-auto {
    background: linear-gradient(135deg, rgba(15, 118, 110, 0.2), #fff 60%);
    border-color: #0f766e;
}

body.lab-svc-page .lab-svc-team-cal__scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
}

body.lab-svc-page .lab-svc-team-cal__table {
    width: max-content;
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.74rem;
}

body.lab-svc-page .lab-svc-team-cal__sticky {
    position: sticky;
    left: 0;
    z-index: 2;
    background: var(--lab-panel, #fff);
    min-width: 180px;
    max-width: 220px;
    text-align: left;
    padding: 8px 12px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    border-right: 1px solid var(--lab-line, #d7e2e6);
    box-shadow: 4px 0 8px rgba(15, 40, 48, 0.04);
}

body.lab-svc-page thead .lab-svc-team-cal__sticky {
    z-index: 3;
    top: 0;
}

body.lab-svc-page .lab-svc-team-cal__dhead {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f7fafb;
    text-align: center;
    padding: 8px 2px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    min-width: 40px;
    color: var(--lab-muted, #5b727a);
    font-weight: 600;
}

body.lab-svc-page .lab-svc-team-cal__dhead.is-weekend {
    color: #9a6b6b;
    background: #fbf6f6;
}

body.lab-svc-page .lab-svc-team-cal__dhead.is-today {
    color: #0f766e;
    box-shadow: inset 0 -2px 0 #0f766e;
}

body.lab-svc-page .lab-svc-team-cal__wd {
    display: block;
    font-size: 0.64rem;
    font-weight: 500;
    text-transform: lowercase;
    opacity: 0.85;
}

body.lab-svc-page .lab-svc-team-cal__dn {
    display: block;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--lab-ink, #0f2830);
}

body.lab-svc-page .lab-svc-team-cal__person {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-team-cal__av {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
    background: #e8eef0;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-team-cal__av.has-photo {
    display: block;
    padding: 0;
}

body.lab-svc-page .lab-svc-team-cal__av.has-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.lab-svc-page .lab-svc-team-cal__av.is-empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 700;
    color: #1a4f58;
}

body.lab-svc-page .lab-svc-team-cal__person-meta {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

body.lab-svc-page .lab-svc-team-cal__name-btn {
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    text-align: left;
    font: inherit;
    font-weight: 600;
    color: var(--lab-ink, #0f2830);
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 150px;
    transition: color 160ms ease;
}

body.lab-svc-page .lab-svc-team-cal__name-btn:hover {
    color: #0f766e;
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.lab-svc-page .lab-svc-team-cal__color {
    display: block;
    width: 28px;
    height: 3px;
    border-radius: 2px;
}

body.lab-svc-page .lab-svc-team-cal__cell {
    vertical-align: top;
    text-align: center;
    padding: 4px 2px 5px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    border-right: 1px solid rgba(215, 226, 230, 0.7);
    min-width: 40px;
    height: 54px;
    cursor: pointer;
    transition: background 150ms ease, box-shadow 150ms ease;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-team-cal__cell:hover,
body.lab-svc-page .lab-svc-team-cal__cell:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 2px rgba(15, 118, 110, 0.35);
}

body.lab-svc-page .lab-svc-team-cal__cell.is-off {
    background: #fce8e8;
}

body.lab-svc-page .lab-svc-team-cal__cell.is-free {
    background: #f8fbfc;
}

body.lab-svc-page .lab-svc-team-cal__cell.is-loc {
    background: rgba(15, 118, 110, 0.1);
}

body.lab-svc-page .lab-svc-team-cal__cell.is-today {
    box-shadow: inset 0 0 0 1px rgba(15, 118, 110, 0.45);
}

body.lab-svc-page .lab-svc-team-cal__dayn {
    display: block;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--lab-ink, #0f2830);
}

body.lab-svc-page .lab-svc-team-cal__cell.is-off .lab-svc-team-cal__dayn {
    color: #9a6b6b;
}

body.lab-svc-page .lab-svc-team-cal__auto {
    display: inline-block;
    margin-top: 1px;
    padding: 0 3px;
    border-radius: 3px;
    font-size: 0.52rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: lowercase;
    color: #0f766e;
    background: rgba(15, 118, 110, 0.12);
    line-height: 1.3;
}

body.lab-svc-page .lab-svc-team-cal__loc-logo {
    display: block;
    width: 20px;
    height: 20px;
    margin: 3px auto 0;
    border-radius: 4px;
    object-fit: cover;
    background: #fff;
    border: 1px solid rgba(15, 40, 48, 0.08);
}

body.lab-svc-page .lab-svc-team-cal__loc-dot {
    display: block;
    width: 10px;
    height: 10px;
    margin: 5px auto 0;
    border-radius: 50%;
}

body.lab-svc-page .lab-svc-team-cal__empty {
    padding: 36px 16px;
    text-align: center;
    color: var(--lab-muted, #5b727a);
    font-size: 0.9rem;
}

body.lab-svc-page .lab-svc-team-cal__hint {
    margin: 0;
    padding: 8px 16px 10px;
    font-size: 0.8rem;
    color: var(--lab-muted, #5b727a);
    border-top: 1px solid var(--lab-line, #d7e2e6);
    flex-shrink: 0;
}

@media (max-width: 720px) {
    body.lab-svc-page .lab-svc-team-cal__sticky {
        min-width: 120px;
        max-width: 140px;
        padding: 4px 8px;
    }

    body.lab-svc-page .lab-svc-team-cal__name-btn {
        max-width: 88px;
        font-size: 0.78rem;
    }

    body.lab-svc-page .lab-svc-team-cal__cell {
        min-width: 34px;
        height: 48px;
    }
}

/* вЂ”вЂ” LAB staff product assignment matrix вЂ”вЂ” */
body.lab-svc-page .lab-svc-prod-matrix {
    display: none;
    flex: 1 1 auto;
    min-height: 0;
    flex-direction: column;
}

body.lab-svc-staff-page.lab-svc-prod-matrix-open .lab-svc-prod-matrix:not([hidden]) {
    display: flex;
}

body.lab-svc-page .lab-svc-prod-matrix__panel {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    border: 1px solid var(--lab-line, #d7e2e6);
    border-radius: 16px;
    background: var(--lab-panel, #fff);
    overflow: hidden;
}

body.lab-svc-page .lab-svc-prod-matrix__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-prod-matrix__sub {
    margin: 0;
    margin-right: auto;
    font-size: 0.88rem;
    color: var(--lab-muted, #5b727a);
}

body.lab-svc-page .lab-svc-prod-matrix__tabs {
    display: inline-flex;
    gap: 2px;
    padding: 3px;
    border: 1px solid var(--lab-line, #d7e2e6);
    border-radius: 10px;
    background: #f3f6f1;
}

body.lab-svc-page .lab-svc-prod-matrix__tabs button {
    border: 0;
    background: transparent;
    border-radius: 8px;
    padding: 6px 12px;
    font: inherit;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--lab-ink, #0f2830);
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-prod-matrix__tabs button.is-active {
    background: #dfeee3;
    color: #1f5c45;
}

body.lab-svc-page .lab-svc-prod-matrix__filter select,
body.lab-svc-page .lab-svc-prod-matrix__search input {
    border: 1px solid var(--lab-line, #d7e2e6);
    border-radius: 8px;
    padding: 6px 10px;
    font: inherit;
    font-size: 0.84rem;
    background: #fff;
    color: var(--lab-ink, #0f2830);
}

body.lab-svc-page .lab-svc-prod-matrix__search input {
    min-width: 160px;
}

body.lab-svc-page .lab-svc-prod-matrix__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
    list-style: none;
    margin: 0;
    padding: 8px 16px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    font-size: 0.78rem;
    color: var(--lab-muted, #5b727a);
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-prod-matrix__legend li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-prod-matrix__swatch {
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid var(--lab-line, #d7e2e6);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-prod-matrix__swatch.is-on {
    background: #cfe9d8;
    border-color: #8fbf9e;
}

body.lab-svc-page .lab-svc-prod-matrix__swatch.is-off {
    background: #fff;
}

body.lab-svc-page .lab-svc-prod-matrix__swatch.is-blocked {
    background: #eceff1;
    border-color: #c5ced3;
}

body.lab-svc-page .lab-svc-prod-matrix__scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
}

body.lab-svc-page .lab-svc-prod-matrix__table {
    border-collapse: separate;
    border-spacing: 0;
    width: max-content;
    min-width: 100%;
}

body.lab-svc-page .lab-svc-prod-matrix__sticky {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #f7f9f5;
    min-width: 180px;
    max-width: 220px;
    padding: 8px 12px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    border-right: 1px solid var(--lab-line, #d7e2e6);
    text-align: left;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-prod-matrix__table thead .lab-svc-prod-matrix__sticky {
    z-index: 3;
    top: 0;
}

body.lab-svc-page .lab-svc-prod-matrix__col {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f7f9f5;
    min-width: 52px;
    max-width: 56px;
    width: 52px;
    padding: 8px 4px;
    border-bottom: 1px solid var(--lab-line, #d7e2e6);
    border-right: 1px solid var(--lab-line, #e8eef0);
    vertical-align: bottom;
}

body.lab-svc-page .lab-svc-prod-matrix__col-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-height: 88px;
}

body.lab-svc-page .lab-svc-prod-matrix__col-logo {
    width: 22px;
    height: 22px;
    border-radius: 6px;
    object-fit: cover;
    border: 1px solid rgba(15, 40, 48, 0.08);
    background: #fff;
}

body.lab-svc-page .lab-svc-prod-matrix__col-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #b7c4c9;
}

body.lab-svc-page .lab-svc-prod-matrix__col-name {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.15;
    color: var(--lab-ink, #0f2830);
    max-height: 72px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-prod-matrix__person {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-prod-matrix__av {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    overflow: hidden;
    background: #e8eef0;
}

body.lab-svc-page .lab-svc-prod-matrix__av.has-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.lab-svc-page .lab-svc-prod-matrix__av.is-empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 700;
    color: #1a4f58;
}

body.lab-svc-page .lab-svc-prod-matrix__name-btn {
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    font: inherit;
    font-size: 0.86rem;
    font-weight: 600;
    color: var(--lab-ink, #0f2830);
    cursor: pointer;
    text-align: left;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color 160ms ease;
}

body.lab-svc-page .lab-svc-prod-matrix__name-btn:hover {
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-prod-matrix__cell {
    padding: 4px;
    border-bottom: 1px solid var(--lab-line, #e8eef0);
    border-right: 1px solid var(--lab-line, #eef3f5);
    text-align: center;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-prod-matrix__toggle {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid var(--lab-line, #d7e2e6);
    background: #fff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 160ms ease, border-color 160ms ease, opacity 160ms ease;
}

body.lab-svc-page .lab-svc-prod-matrix__cell.is-on .lab-svc-prod-matrix__toggle {
    background: #d8f0e2;
    border-color: #8fbf9e;
}

body.lab-svc-page .lab-svc-prod-matrix__cell.is-on .lab-svc-prod-matrix__mark::before {
    content: '';
    display: block;
    width: 10px;
    height: 6px;
    border-left: 2px solid #1f7a4c;
    border-bottom: 2px solid #1f7a4c;
    transform: rotate(-45deg);
    margin-top: -2px;
}

body.lab-svc-page .lab-svc-prod-matrix__cell.is-off .lab-svc-prod-matrix__toggle:hover {
    border-color: #8fbf9e;
    background: #f3faf5;
}

body.lab-svc-page .lab-svc-prod-matrix__cell.is-blocked .lab-svc-prod-matrix__toggle {
    background: #eceff1;
    border-color: #c5ced3;
    cursor: not-allowed;
    opacity: 0.75;
}

body.lab-svc-page .lab-svc-prod-matrix__cell.is-busy .lab-svc-prod-matrix__toggle {
    opacity: 0.55;
    pointer-events: none;
}

body.lab-svc-page .lab-svc-prod-matrix__empty {
    padding: 36px 16px;
    text-align: center;
    color: var(--lab-muted, #5b727a);
    font-size: 0.9rem;
}

body.lab-svc-page .lab-svc-prod-matrix__hint,
body.lab-svc-page .lab-svc-prod-matrix__status {
    margin: 0;
    padding: 8px 16px 10px;
    font-size: 0.8rem;
    color: var(--lab-muted, #5b727a);
    border-top: 1px solid var(--lab-line, #d7e2e6);
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-prod-matrix__status.is-error {
    color: #9c3c3c;
}

/* вЂ”вЂ” LAB staff qualifications accordion (M5 redesign) вЂ”вЂ” */
body.lab-svc-page .lab-svc-staff-qual-host {
    min-height: 120px;
}

body.lab-svc-page .lab-svc-staff-qual {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body.lab-svc-page .lab-svc-staff-qual__lead {
    margin: 0;
    font-size: 0.86rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-qual__summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-qual__badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 650;
    color: #9a6b1a;
    background: #faf3e0;
    border: 1px solid #edd9a8;
}

body.lab-svc-page .lab-svc-staff-qual__search {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-qual__search input {
    flex: 1 1 auto;
    border: 0;
    background: transparent;
    font: inherit;
    font-size: 0.9rem;
    color: var(--lab-ink);
    outline: none;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-qual__list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

body.lab-svc-page .lab-svc-staff-qual__empty {
    margin: 0;
    padding: 14px 16px;
    border-radius: 10px;
    background: #f7fafb;
    border: 1px solid var(--lab-line);
    color: var(--lab-muted);
    font-size: 0.88rem;
}

body.lab-svc-page .lab-svc-staff-qual__row {
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__row.is-on {
    border-color: rgba(15, 118, 110, 0.35);
    box-shadow: inset 3px 0 0 #0f766e;
}

body.lab-svc-page .lab-svc-staff-qual__row.is-expired {
    border-color: #f0c4c4;
    box-shadow: inset 3px 0 0 #c45c5c;
    background: #fff8f8;
}

body.lab-svc-page .lab-svc-staff-qual__row.is-busy {
    opacity: 0.72;
    pointer-events: none;
}

body.lab-svc-page .lab-svc-staff-qual__head {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
}

body.lab-svc-page .lab-svc-staff-qual__chev {
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 150ms ease, color 150ms ease, transform 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__row.is-open .lab-svc-staff-qual__chev {
    transform: rotate(90deg);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-qual__chev:hover {
    background: rgba(15, 40, 48, 0.06);
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-qual__name {
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    text-align: left;
    font: inherit;
    font-size: 0.92rem;
    font-weight: 650;
    color: var(--lab-ink);
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-staff-qual__status {
    font-size: 0.78rem;
    color: var(--lab-muted);
    white-space: nowrap;
    max-width: 11rem;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-staff-qual__row.is-on .lab-svc-staff-qual__status {
    color: #0f766e;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-staff-qual__row.is-expired .lab-svc-staff-qual__status {
    color: #9a3b3b;
}

body.lab-svc-page .lab-svc-staff-qual__switch {
    position: relative;
    display: inline-flex;
    width: 42px;
    height: 24px;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-staff-qual__switch input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

body.lab-svc-page .lab-svc-staff-qual__switch-ui {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #d5dde0;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__switch-ui::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 40, 48, 0.2);
    transition: transform 160ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__switch input:checked + .lab-svc-staff-qual__switch-ui {
    background: #0f766e;
}

body.lab-svc-page .lab-svc-staff-qual__switch input:checked + .lab-svc-staff-qual__switch-ui::after {
    transform: translateX(18px);
}

body.lab-svc-page .lab-svc-staff-qual__body {
    padding: 0 12px 12px 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border-top: 1px solid var(--lab-line);
    padding-top: 12px;
}

body.lab-svc-page .lab-svc-staff-qual__field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin: 0;
}

body.lab-svc-page .lab-svc-staff-qual__field--grow {
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-qual__label {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-qual__control {
    min-height: 38px;
    padding: 0 11px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    font: inherit;
    font-size: 0.88rem;
    color: var(--lab-ink);
    box-sizing: border-box;
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__control:focus {
    outline: none;
    border-color: #0f766e;
    box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.12);
}

body.lab-svc-page .lab-svc-staff-qual__control:disabled {
    background: #f4f6f7;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-qual__until-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 10px 14px;
}

body.lab-svc-page .lab-svc-staff-qual__check {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    color: var(--lab-ink);
    margin-bottom: 8px;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-staff-qual__note-link {
    align-self: flex-start;
    border: 0;
    background: transparent;
    padding: 0;
    font: inherit;
    font-size: 0.82rem;
    color: #0f766e;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.lab-svc-page .lab-svc-staff-qual__notes-wrap {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

body.lab-svc-page .lab-svc-staff-qual__notes {
    min-height: 4.5rem;
    padding: 8px 11px;
    resize: vertical;
    white-space: pre-wrap;
    word-break: break-word;
    overflow-wrap: anywhere;
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-staff-qual__notes-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

body.lab-svc-page .lab-svc-staff-qual__notes-actions {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-qual__note-act {
    border: 0;
    background: transparent;
    padding: 0;
    font: inherit;
    font-size: 0.78rem;
    color: var(--lab-muted);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__note-act:hover {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-qual__note-hide {
    border: 0;
    background: transparent;
    padding: 0;
    font: inherit;
    font-size: 0.78rem;
    color: var(--lab-muted);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__note-hide:hover {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-qual__hint--tight {
    font-size: 0.74rem;
}

body.lab-svc-page .lab-svc-staff-qual__hint {
    margin: 0;
    font-size: 0.82rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-qual__row-msg {
    margin: 0;
    font-size: 0.8rem;
    color: #047857;
}

body.lab-svc-page .lab-svc-staff-qual__row-msg.is-error {
    color: #b91c1c;
}

body.lab-svc-page .lab-svc-staff-qual__sport {
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fbfcfc;
    padding: 0 12px 12px;
}

body.lab-svc-page .lab-svc-staff-qual__sport > summary,
body.lab-svc-page .lab-svc-staff-qual__sport-sum {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 4px;
    font-size: 0.86rem;
    font-weight: 650;
    color: var(--lab-ink);
    transition: color 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__sport > summary::-webkit-details-marker,
body.lab-svc-page .lab-svc-staff-qual__sport-sum::-webkit-details-marker {
    display: none;
}

body.lab-svc-page .lab-svc-staff-qual__sport-sum:hover {
    color: #0f766e;
}

body.lab-svc-page .lab-svc-staff-qual__sport-title {
    min-width: 0;
    flex: 1 1 auto;
}

body.lab-svc-page .lab-svc-staff-qual__sport-chevron {
    flex-shrink: 0;
    display: inline-flex;
    color: var(--lab-muted);
    transition: transform 180ms ease, color 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__sport-sum:hover .lab-svc-staff-qual__sport-chevron {
    color: #0f766e;
}

body.lab-svc-page .lab-svc-staff-qual__sport[open] > .lab-svc-staff-qual__sport-sum .lab-svc-staff-qual__sport-chevron {
    transform: rotate(180deg);
}

body.lab-svc-page .lab-svc-staff-qual__sport .lab-svc-staff-qual__hint {
    margin-bottom: 10px;
}

body.lab-svc-page .lab-svc-staff-qual__orphan-list {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

body.lab-svc-page .lab-svc-staff-qual__orphan {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid var(--lab-line);
    background: #fff;
    font-size: 0.84rem;
}

body.lab-svc-page .lab-svc-staff-qual__del {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-muted);
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
}

body.lab-svc-page .lab-svc-staff-qual__del:hover {
    background: #fce8e8;
    border-color: #f0c4c4;
    color: #9a3b3b;
}

@media (max-width: 720px) {
    body.lab-svc-page .lab-svc-staff-qual__head {
        grid-template-columns: 28px minmax(0, 1fr) auto;
        grid-template-areas:
            'chev name switch'
            'chev status switch';
    }

    body.lab-svc-page .lab-svc-staff-qual__chev {
        grid-area: chev;
    }

    body.lab-svc-page .lab-svc-staff-qual__name {
        grid-area: name;
    }

    body.lab-svc-page .lab-svc-staff-qual__status {
        grid-area: status;
        max-width: none;
    }

    body.lab-svc-page .lab-svc-staff-qual__switch {
        grid-area: switch;
    }

    body.lab-svc-page .lab-svc-staff-qual__body {
        padding-left: 12px;
    }
}

/* LAB staff POP вЂ” products (excursions / courses) */
body.lab-svc-page .lab-svc-staff-prod-host {
    min-height: 120px;
}

body.lab-svc-page .lab-svc-staff-prod {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body.lab-svc-page .lab-svc-staff-prod__lead,
body.lab-svc-page .lab-svc-staff-prod__loading {
    margin: 0;
    font-size: 0.86rem;
    line-height: 1.45;
    color: var(--lab-muted, #6b7280);
}

body.lab-svc-page .lab-svc-staff-prod__flash {
    margin: 0;
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 0.84rem;
    background: #ecfdf5;
    color: #065f46;
    border: 1px solid #a7f3d0;
}

body.lab-svc-page .lab-svc-staff-prod__flash.is-error {
    background: #fef2f2;
    color: #991b1b;
    border-color: #fecaca;
}

body.lab-svc-page .lab-svc-staff-prod__tabs {
    display: flex;
    gap: 6px;
    padding: 4px;
    border-radius: 12px;
    background: #f1f5f9;
}

body.lab-svc-page .lab-svc-staff-prod__tab {
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--lab-muted, #6b7280);
    font: inherit;
    font-size: 0.86rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-prod__tab:hover {
    color: var(--lab-ink, #173b42);
    background: rgba(255, 255, 255, 0.55);
}

body.lab-svc-page .lab-svc-staff-prod__tab.is-active {
    background: #fff;
    color: var(--lab-ink, #0f172a);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

body.lab-svc-page .lab-svc-staff-prod__tab-count {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 0 7px;
    border-radius: 999px;
    background: #e2e8f0;
    color: #475569;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

body.lab-svc-page .lab-svc-staff-prod__tab.is-active .lab-svc-staff-prod__tab-count {
    background: #ccfbf1;
    color: #0f766e;
}

body.lab-svc-page .lab-svc-staff-prod__list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

body.lab-svc-page .lab-svc-staff-prod__group {
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 12px;
    background: #fbfcfc;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-staff-prod__group-sum {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 12px;
    cursor: pointer;
    user-select: none;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-staff-prod__group-sum::-webkit-details-marker {
    display: none;
}

body.lab-svc-page .lab-svc-staff-prod__group-sum:hover {
    background: rgba(15, 23, 42, 0.03);
}

body.lab-svc-page .lab-svc-staff-prod__group-title {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 0.9rem;
    font-weight: 650;
    color: var(--lab-ink, #173b42);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-staff-prod__group-badge {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 700;
    background: #fff7ed;
    color: #c2410c;
}

body.lab-svc-page .lab-svc-staff-prod__group-count {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: #e2e8f0;
    color: #475569;
    font-size: 0.72rem;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-staff-prod__group[open] .lab-svc-staff-prod__group-count {
    background: #ccfbf1;
    color: #0f766e;
}

body.lab-svc-page .lab-svc-staff-prod__group-chev {
    flex-shrink: 0;
    display: inline-flex;
    color: var(--lab-muted, #6b7280);
    transition: transform 180ms ease, color 150ms ease;
}

body.lab-svc-page .lab-svc-staff-prod__group[open] .lab-svc-staff-prod__group-chev {
    transform: rotate(180deg);
    color: var(--lab-ink, #173b42);
}

body.lab-svc-page .lab-svc-staff-prod__group-body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0 10px 10px;
}

body.lab-svc-page .lab-svc-staff-prod__empty {
    margin: 0;
    padding: 28px 16px;
    text-align: center;
    font-size: 0.88rem;
    color: var(--lab-muted, #6b7280);
    border: 1px dashed var(--lab-line, #e2e8f0);
    border-radius: 12px;
    background: #fbfcfc;
}

body.lab-svc-page .lab-svc-staff-prod__row {
    display: grid;
    grid-template-columns: 44px minmax(0, 1.4fr) minmax(56px, auto) 52px 44px;
    align-items: center;
    gap: 10px 12px;
    padding: 10px 12px;
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 12px;
    background: #fff;
    transition: background 160ms ease, border-color 160ms ease, opacity 160ms ease;
}

body.lab-svc-page .lab-svc-staff-prod__row.is-on {
    border-color: #99f6e4;
    background: #f0fdfa;
}

/* Assigned, but product blocked (combat В«Р—РђР‘Р›РћРљРР РћР’РђРќРђВ») вЂ” keep toggle, change tint. */
body.lab-svc-page .lab-svc-staff-prod__row.is-inactive,
body.lab-svc-page .lab-svc-staff-prod__row.is-on.is-inactive {
    border-color: #fecaca;
    background: #fef2f2;
}

body.lab-svc-page .lab-svc-staff-prod__row.is-blocked {
    opacity: 0.72;
    background: #f8fafc;
}

body.lab-svc-page .lab-svc-staff-prod__row.is-busy {
    pointer-events: none;
    opacity: 0.55;
}

body.lab-svc-page .lab-svc-staff-prod__thumb {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    overflow: hidden;
    background: #f1f5f9;
    color: #94a3b8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    text-decoration: none;
    transition: box-shadow 160ms ease, opacity 160ms ease;
}

body.lab-svc-page a.lab-svc-staff-prod__thumb:hover {
    box-shadow: 0 0 0 2px rgba(13, 148, 136, 0.35);
    opacity: 0.95;
}

body.lab-svc-page .lab-svc-staff-prod__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff-prod__thumb--empty {
    border: 1px dashed #cbd5e1;
}

body.lab-svc-page .lab-svc-staff-prod__main {
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-prod__name-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 8px;
    min-width: 0;
    width: fit-content;
    max-width: 100%;
    text-decoration: none;
    color: inherit;
}

body.lab-svc-page a.lab-svc-staff-prod__name-row:hover .lab-svc-staff-prod__name {
    color: #0f766e;
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.lab-svc-page .lab-svc-staff-prod__name {
    font-size: 0.92rem;
    font-weight: 650;
    color: var(--lab-ink, #173b42);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
    max-width: 100%;
    transition: color 160ms ease, text-decoration-color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-prod__meta {
    margin-top: 3px;
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    font-size: 0.78rem;
    color: var(--lab-muted, #6b7280);
}

body.lab-svc-page .lab-svc-staff-prod__loc-logo {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    overflow: hidden;
    background: #e2e8f0;
}

body.lab-svc-page .lab-svc-staff-prod__loc-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff-prod__loc-pin {
    flex-shrink: 0;
    display: inline-flex;
    color: #94a3b8;
}

body.lab-svc-page .lab-svc-staff-prod__loc-name {
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.lab-svc-page .lab-svc-staff-prod__people {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 28px;
    min-width: 28px;
    padding-left: 6px;
}

body.lab-svc-page .lab-svc-staff-prod__person,
body.lab-svc-page .lab-svc-staff-prod__person-more {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid #fff;
    margin-left: -8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.62rem;
    font-weight: 700;
    background: #e2e8f0;
    color: #334155;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.06);
}

body.lab-svc-page .lab-svc-staff-prod__people > :first-child {
    margin-left: 0;
}

body.lab-svc-page .lab-svc-staff-prod__person.has-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-staff-prod__person-more {
    background: #f1f5f9;
    color: #475569;
    font-size: 0.68rem;
}

body.lab-svc-page .lab-svc-staff-prod__rating {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 3px;
    min-width: 44px;
    font-size: 0.84rem;
    font-weight: 650;
    color: var(--lab-ink, #0f172a);
    font-variant-numeric: tabular-nums;
}

body.lab-svc-page .lab-svc-staff-prod__rating--empty {
    min-width: 0;
    width: 0;
    overflow: hidden;
    visibility: hidden;
    pointer-events: none;
}

body.lab-svc-page .lab-svc-staff-prod__star {
    color: #d97706;
    font-size: 0.78rem;
    line-height: 1;
}

/* Product status вЂ” same family as staff table `.lab-svc-staff__status` */
body.lab-svc-page .lab-svc-staff-prod__status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
    padding: 2px 8px 2px 6px;
    border-radius: 5px;
    border: 1px solid rgba(18, 28, 22, 0.14);
    background: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--lab-ink, #173b42);
    line-height: 1.25;
    white-space: nowrap;
    user-select: none;
}

body.lab-svc-page .lab-svc-staff-prod__dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #9aa49a;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-prod__status.is-active .lab-svc-staff-prod__dot {
    background: #2f9e6b;
}

body.lab-svc-page .lab-svc-staff-prod__status.is-off {
    color: #9f1239;
    background: rgba(190, 18, 60, 0.04);
    border-color: rgba(190, 18, 60, 0.22);
}

body.lab-svc-page .lab-svc-staff-prod__status.is-off .lab-svc-staff-prod__dot {
    background: #e11d48;
}

body.lab-svc-page .lab-svc-staff-prod__status.is-blocked {
    color: #9a3412;
    background: rgba(194, 65, 12, 0.04);
    border-color: rgba(194, 65, 12, 0.2);
}

body.lab-svc-page .lab-svc-staff-prod__status.is-blocked .lab-svc-staff-prod__dot {
    background: #ea580c;
}

body.lab-svc-page .lab-svc-staff-prod__switch {
    position: relative;
    display: inline-flex;
    width: 42px;
    height: 24px;
    cursor: pointer;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-prod__switch input {
    position: absolute;
    opacity: 0;
    inset: 0;
    margin: 0;
    cursor: inherit;
}

body.lab-svc-page .lab-svc-staff-prod__switch-ui {
    width: 100%;
    height: 100%;
    border-radius: 999px;
    background: #cbd5e1;
    transition: background 160ms ease;
    position: relative;
}

body.lab-svc-page .lab-svc-staff-prod__switch-ui::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.18);
    transition: transform 160ms ease;
}

body.lab-svc-page .lab-svc-staff-prod__switch input:checked + .lab-svc-staff-prod__switch-ui {
    background: #0d9488;
}

body.lab-svc-page .lab-svc-staff-prod__switch input:checked + .lab-svc-staff-prod__switch-ui::after {
    transform: translateX(18px);
}

body.lab-svc-page .lab-svc-staff-prod__switch:has(input:disabled) {
    cursor: not-allowed;
    opacity: 0.45;
}

@media (max-width: 720px) {
    body.lab-svc-page .lab-svc-staff-prod__row {
        grid-template-columns: 40px minmax(0, 1fr) 44px;
        grid-template-areas:
            'thumb main switch'
            'people people people'
            'rating rating rating';
    }

    body.lab-svc-page .lab-svc-staff-prod__thumb {
        grid-area: thumb;
        width: 40px;
        height: 40px;
        align-self: start;
    }

    body.lab-svc-page .lab-svc-staff-prod__main {
        grid-area: main;
    }

    body.lab-svc-page .lab-svc-staff-prod__people {
        grid-area: people;
        justify-content: flex-start;
        padding-left: 0;
    }

    body.lab-svc-page .lab-svc-staff-prod__rating {
        grid-area: rating;
        justify-content: flex-start;
    }

    body.lab-svc-page .lab-svc-staff-prod__switch {
        grid-area: switch;
        justify-self: end;
        align-self: start;
    }
}

/* LAB staff POP вЂ” translations accordion */
body.lab-svc-page .lab-svc-staff-tr__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    margin: 0 0 12px;
}

body.lab-svc-page .lab-svc-staff-tr__toolbar .lab-svc-btn {
    min-height: 36px;
    padding: 0 14px;
    font-size: 0.84rem;
}

body.lab-svc-page .lab-svc-staff-tr__toolbar .lab-svc-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-staff-tr__toolbar-status {
    flex: 1 1 12rem;
    min-width: 0;
    font-size: 0.8rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-tr__toolbar-status.is-error {
    color: #b42318;
}

/* РљРЅРѕРїРєРё Р±Р»РѕРєР° вЂ” РЅР° СѓСЂРѕРІРЅРµ РІРєР»Р°РґРєРё (toolbar); РІРЅСѓС‚СЂРё Р°РєРєРѕСЂРґРµРѕРЅР° СЃРєСЂС‹РІР°РµРј РґСѓР±Р»Рё */
body.lab-svc-page .lab-svc-staff-tr__mount .crm-entity-i18n-actions {
    display: none;
}

body.lab-svc-page .lab-svc-staff-tr {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

body.lab-svc-page .lab-svc-staff-tr__group {
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fff;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-staff-tr__group:focus-within,
body.lab-svc-page .lab-svc-staff-tr__group[open] {
    border-color: rgba(18, 28, 22, 0.55);
}

body.lab-svc-page .lab-svc-staff-tr__sum {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 12px;
    align-items: center;
    list-style: none;
    cursor: pointer;
    padding: 12px 14px;
    border-radius: 12px;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-staff-tr__sum::-webkit-details-marker {
    display: none;
}

body.lab-svc-page .lab-svc-staff-tr__sum:hover {
    background: rgba(15, 118, 110, 0.04);
}

body.lab-svc-page .lab-svc-staff-tr__sum-title {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-tr__sum-sub {
    grid-column: 1;
    font-size: 0.78rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-tr__meta {
    grid-column: 2;
    grid-row: 1 / span 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-tr__count {
    font-size: 0.72rem;
    font-weight: 700;
    color: #0f766e;
    background: rgba(15, 118, 110, 0.1);
    border-radius: 8px;
    padding: 2px 8px;
}

body.lab-svc-page .lab-svc-staff-tr__prog-slot {
    display: inline-flex;
    align-items: center;
}

/* Р§РёРї Р±РµР· Р·Р°Р»РёРІРєРё: С‚РѕР»СЊРєРѕ С‚РѕС‡РєР° (Р·РµР»С‘РЅР°СЏ = N/N, РєСЂР°СЃРЅР°СЏ = РµСЃС‚СЊ РґС‹СЂС‹) + С†РёС„СЂС‹ */
body.lab-svc-page .lab-svc-staff-tr__prog {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 2px 8px 2px 6px;
    border-radius: 5px;
    border: 1px solid rgba(18, 28, 22, 0.14);
    background: transparent;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--lab-ink);
    line-height: 1.25;
    white-space: nowrap;
    user-select: none;
    transition: border-color 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-tr__prog-dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #9aa49a;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-tr__prog.is-empty {
    color: var(--lab-muted);
    background: transparent;
}

body.lab-svc-page .lab-svc-staff-tr__prog.is-todo .lab-svc-staff-tr__prog-dot {
    background: #e11d48;
}

body.lab-svc-page .lab-svc-staff-tr__prog.is-done .lab-svc-staff-tr__prog-dot {
    background: #2f9e6b;
}

body.lab-svc-page .lab-svc-staff-tr__prog.is-row {
    font-size: 0.68rem;
}

body.lab-svc-page .lab-svc-staff-tr__chev {
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    color: var(--lab-muted);
    transition: transform 160ms ease;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-staff-tr__group[open] .lab-svc-staff-tr__chev,
body.lab-svc-page .lab-svc-staff-tr__qual.is-open .lab-svc-staff-tr__chev {
    transform: rotate(45deg);
}

body.lab-svc-page .lab-svc-staff-tr__body {
    padding: 0 14px 14px;
}

body.lab-svc-page .lab-svc-staff-tr__hint {
    margin: 0;
    font-size: 0.84rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-tr__hint.is-error {
    color: #b42318;
}

body.lab-svc-page .lab-svc-staff-tr__qual-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

body.lab-svc-page .lab-svc-staff-tr__qual {
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #f8faf8;
}

body.lab-svc-page .lab-svc-staff-tr__qual-sum {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 10px;
    width: 100%;
    margin: 0;
    padding: 10px 12px;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
    font: inherit;
    color: inherit;
    border-radius: 10px;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-staff-tr__qual-sum:hover {
    background: rgba(15, 118, 110, 0.05);
}

body.lab-svc-page .lab-svc-staff-tr__qual-title {
    font-size: 0.9rem;
    font-weight: 650;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-staff-tr__qual-sub {
    grid-column: 1;
    font-size: 0.78rem;
    font-weight: 400;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-staff-tr__qual-sum .lab-svc-staff-tr__meta {
    grid-column: 2;
    grid-row: 1 / span 2;
}

body.lab-svc-page .lab-svc-staff-tr__qual-body {
    padding: 0 12px 12px;
}

body.lab-svc-page .lab-svc-staff-tr__mount {
    min-height: 8px;
}

body.lab-svc-page .crm-entity-i18n-panel--locale-fields .crm-entity-i18n-meta {
    font-size: 0.8rem;
    color: var(--lab-muted);
}

body.lab-svc-page .crm-entity-i18n-locale-select,
body.lab-svc-page .crm-entity-i18n-cell {
    width: 100%;
    box-sizing: border-box;
    padding: 8px 12px;
    border: 1px solid rgba(18, 28, 22, 0.22);
    border-radius: 10px;
    background: #fff;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--lab-ink);
}

body.lab-svc-page textarea.crm-entity-i18n-cell {
    min-height: 72px;
    resize: vertical;
    line-height: 1.4;
}

body.lab-svc-page .crm-entity-i18n-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

body.lab-svc-page .crm-entity-i18n-btn--primary {
    background: var(--lab-ink, #173b42);
    color: #fff;
    border: 0;
}

body.lab-svc-page .crm-entity-i18n-field-label {
    display: block;
    font-size: 0.82rem;
    font-weight: 650;
    margin-bottom: 4px;
}

body.lab-svc-page .crm-entity-i18n-original-preview {
    font-size: 0.8rem;
    color: var(--lab-muted);
    margin: 0 0 6px;
    font-weight: 400;
}

/* вЂ”вЂ” Staff POP: РџСЂР°РІР° CRM (РјР°С‚СЂРёС†Р° exclusive-С‚СѓРјР±Р»РµСЂРѕРІ) вЂ”вЂ” */
body.lab-svc-page .lab-svc-staff-crm-host {
    min-height: 120px;
}

body.lab-svc-page .lab-svc-staff-crm {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body.lab-svc-page .lab-svc-staff-crm__note {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: var(--lab-soft, #fafbf7);
    border: 1px solid var(--lab-line, #d8e0e6);
    font-size: 0.84rem;
    line-height: 1.4;
    color: var(--lab-muted, #5a6a66);
}

body.lab-svc-page .lab-svc-staff-crm__presets {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.lab-svc-page .lab-svc-staff-crm__preset {
    appearance: none;
    margin: 0;
    padding: 7px 14px;
    border-radius: 10px;
    border: 1px solid var(--lab-line, #d8e0e6);
    background: #fff;
    color: var(--lab-ink, #173b42);
    font: inherit;
    font-size: 0.86rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-crm__preset:hover:not(:disabled) {
    border-color: rgba(23, 59, 66, 0.35);
    background: var(--lab-soft, #fafbf7);
}

body.lab-svc-page .lab-svc-staff-crm__preset.is-active {
    background: var(--lab-ink, #173b42);
    border-color: var(--lab-ink, #173b42);
    color: #fff;
}

body.lab-svc-page .lab-svc-staff-crm__preset:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-staff-crm__scroll {
    overflow-x: auto;
    border: 1px solid var(--lab-line, #d8e0e6);
    border-radius: 12px;
    background: #fff;
}

body.lab-svc-page .lab-svc-staff-crm__loading {
    padding: 20px 16px;
    font-size: 0.9rem;
    color: var(--lab-muted, #5a6a66);
}

body.lab-svc-page .lab-svc-staff-crm__table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 640px;
}

body.lab-svc-page .lab-svc-staff-crm__table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--lab-soft, #fafbf7);
    border-bottom: 1px solid var(--lab-line, #d8e0e6);
    padding: 10px 8px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--lab-muted, #5a6a66);
    text-align: center;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-staff-crm__th-entity {
    text-align: left !important;
    padding-left: 14px !important;
    min-width: 180px;
}

body.lab-svc-page .lab-svc-staff-crm__th-lvl {
    min-width: 72px;
}

body.lab-svc-page .lab-svc-staff-crm__table tbody th,
body.lab-svc-page .lab-svc-staff-crm__table tbody td {
    border-bottom: 1px solid var(--lab-line, #d8e0e6);
    padding: 10px 8px;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-staff-crm__table tbody tr:last-child th,
body.lab-svc-page .lab-svc-staff-crm__table tbody tr:last-child td {
    border-bottom: 0;
}

body.lab-svc-page .lab-svc-staff-crm__entity {
    text-align: left;
    padding-left: 14px !important;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-page .lab-svc-staff-crm__cell {
    text-align: center;
}

body.lab-svc-page .lab-svc-staff-crm__sw {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    cursor: pointer;
    user-select: none;
}

body.lab-svc-page .lab-svc-staff-crm__sw input {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-staff-crm__sw-ui {
    position: relative;
    width: 38px;
    height: 22px;
    flex-shrink: 0;
    border-radius: 999px;
    background: #d5dde0;
    border: 1px solid transparent;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-staff-crm__sw-ui::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 40, 48, 0.2);
    transition: transform 160ms ease;
}

body.lab-svc-page .lab-svc-staff-crm__sw input:checked + .lab-svc-staff-crm__sw-ui,
body.lab-svc-page .lab-svc-staff-crm__sw.is-on .lab-svc-staff-crm__sw-ui {
    background: #0f766e;
    border-color: #0f766e;
}

body.lab-svc-page .lab-svc-staff-crm__sw input:checked + .lab-svc-staff-crm__sw-ui::after,
body.lab-svc-page .lab-svc-staff-crm__sw.is-on .lab-svc-staff-crm__sw-ui::after {
    transform: translateX(16px);
}

body.lab-svc-page .lab-svc-staff-crm__sw input:focus-visible + .lab-svc-staff-crm__sw-ui {
    outline: 2px solid rgba(221, 237, 173, 0.95);
    outline-offset: 2px;
}

body.lab-svc-page .lab-svc-staff-crm__sw.is-disabled {
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-staff-crm__sw.is-disabled .lab-svc-staff-crm__sw-ui {
    opacity: 0.45;
}

body.lab-svc-page .lab-svc-staff-crm__status {
    margin: 0;
    min-height: 1.2em;
    font-size: 0.82rem;
    color: var(--lab-muted, #5a6a66);
}

body.lab-svc-page .lab-svc-staff-crm__status.is-error {
    color: #b42318;
}

/* LAB Service activities POP extras */
body.lab-svc-act-pop-open,
body.lab-svc-exc-pop-open {
    overflow: hidden;
}

body.lab-svc-page .lab-svc-exc__need {
    margin: 0 0 12px;
    padding: 10px 12px;
    border-radius: 10px;
    background: var(--lab-soft, #f3f6f5);
    color: var(--lab-ink, #14201c);
    font-size: 0.9rem;
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-exc__need a {
    color: var(--lab-ink, #14201c);
    font-weight: 600;
}

body.lab-svc-page .lab-svc-exc__status-cell {
    white-space: nowrap;
}

/*
 * Excursion list вЂ” two chips stacked:
 *   1) status: dot = readiness, border = combat
 *   2) channel: РѕРЅР»Р°Р№РЅ (green) / РѕС„С„Р»Р°Р№РЅ (soft red)
 */
body.lab-svc-page .lab-svc-exc__status-stack {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

body.lab-svc-page .lab-svc-exc__status {
    color: var(--lab-ink, #14201c);
    background: #fff;
    border-color: rgba(18, 28, 22, 0.14);
    transition: border-color 160ms ease, background 160ms ease;
}

body.lab-svc-page .lab-svc-exc__status.is-soft {
    /* Beat staff .is-soft orange text/border вЂ” soft is only the dot here. */
    color: var(--lab-ink, #14201c);
}

body.lab-svc-page .lab-svc-exc__status .lab-svc-staff__dot {
    background: #9aa49a;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-exc__status.is-ready .lab-svc-staff__dot {
    background: #2f9e6b;
}

body.lab-svc-page .lab-svc-exc__status.is-soft .lab-svc-staff__dot {
    background: #ea580c;
}

body.lab-svc-page .lab-svc-exc__status.is-not-ready .lab-svc-staff__dot {
    background: #e11d48;
}

body.lab-svc-page .lab-svc-exc__status.is-combat-active {
    border-color: rgba(47, 158, 107, 0.55);
    background: rgba(47, 158, 107, 0.06);
}

body.lab-svc-page .lab-svc-exc__status.is-combat-blocked {
    border-color: rgba(225, 29, 72, 0.5);
    background: #fff;
}

body.lab-svc-page .lab-svc-exc__status.is-archive {
    color: var(--lab-muted);
    background: rgba(18, 28, 22, 0.04);
    border-color: rgba(18, 28, 22, 0.12);
}

body.lab-svc-page .lab-svc-exc__status.is-archive .lab-svc-staff__dot {
    background: #8a918c;
}

body.lab-svc-page .lab-svc-crs__pair {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-crs__pair-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    padding: 3px 8px 3px 6px;
    border-radius: 8px;
    border: 1px solid rgba(18, 28, 22, 0.12);
    background: rgba(18, 28, 22, 0.04);
    color: var(--lab-ink);
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.3;
}

body.lab-svc-page .lab-svc-crs__pair-chip.is-plain {
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-crs__pair-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    flex: none;
    box-shadow: inset 0 0 0 1px rgba(18, 28, 22, 0.12);
}

body.lab-svc-page .lab-svc-crs__pair-dot.is-plain {
    background: #94a3b8;
}

body.lab-svc-page .lab-svc-crs__pair-name {
    min-width: 0;
    overflow-wrap: anywhere;
}

body.lab-svc-page .lab-svc-crs__pair-empty {
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-exc__channel {
    display: inline-flex;
    align-items: center;
    padding: 1px 7px;
    border-radius: 5px;
    border: 1px solid transparent;
    font-size: 0.64rem;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0.01em;
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
    transition: border-color 160ms ease, background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-exc__channel.is-on {
    color: #1f7a4d;
    background: rgba(47, 158, 107, 0.08);
    border-color: rgba(47, 158, 107, 0.4);
}

body.lab-svc-page .lab-svc-exc__channel.is-off {
    color: #be123c;
    background: rgba(225, 29, 72, 0.04);
    border-color: rgba(190, 18, 60, 0.35);
}

body.lab-svc-page .lab-svc-exc__channel.is-both {
    color: #1e3a5f;
    background: rgba(30, 58, 95, 0.06);
    border-color: rgba(30, 58, 95, 0.35);
}

body.lab-svc-page .lab-svc-exc__ready {
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid var(--lab-line, #d7e0dc);
    background: #fff;
}

body.lab-svc-page .lab-svc-exc__ready.is-ok {
    border-color: rgba(31, 122, 77, 0.35);
}

body.lab-svc-page .lab-svc-exc__ready.is-ok > .lab-svc-exc__ready-title .lab-svc-exc__ready-dot {
    background: var(--lab-ok, #1f7a4d);
}

body.lab-svc-page .lab-svc-exc__ready.is-ok.is-soft {
    border-color: rgba(234, 88, 12, 0.55);
}

body.lab-svc-page .lab-svc-exc__ready.is-fail {
    border-color: rgba(225, 29, 72, 0.45);
}

body.lab-svc-page .lab-svc-exc__ready-title {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 8px;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--lab-ink, #14201c);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-exc__ready-dot {
    width: 6px;
    height: 6px;
    margin-top: 0.45em;
    border-radius: 999px;
    background: #e11d48;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-exc__ready-chip .lab-svc-exc__ready-dot {
    margin-top: 0;
}

body.lab-svc-page .lab-svc-exc__ready-list {
    margin: 0;
    padding-left: 1.1em;
    font-size: 0.85rem;
    color: var(--lab-muted, #5a6a66);
}

body.lab-svc-page .lab-svc-exc__ready-hint {
    margin: 8px 0 6px;
    font-size: 0.85rem;
    color: var(--lab-muted, #5a6a66);
}

body.lab-svc-page .lab-svc-exc__ready-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Hard blockers вЂ” red like list status В«РќРµ РіРѕС‚РѕРІР°В» */
body.lab-svc-page .lab-svc-exc__ready-chip.is-problem,
body.lab-svc-page .lab-svc-exc__ready-chip.is-soft,
body.lab-svc-page .lab-svc-exc__ready-chip.is-ok {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 10px 3px 7px;
    border-radius: 5px;
    background: #fff;
    color: var(--lab-ink, #14201c);
    font: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.25;
    cursor: default;
}

body.lab-svc-page .lab-svc-exc__ready-chip.is-problem {
    border: 1px solid rgba(225, 29, 72, 0.45);
}

body.lab-svc-page .lab-svc-exc__ready-chip.is-problem .lab-svc-exc__ready-dot {
    background: #e11d48;
}

/* Soft recommendations вЂ” orange (same family as Р’РђР–РќРћ !), never red/blue */
body.lab-svc-page .lab-svc-exc__ready-chip.is-soft {
    border: 1px solid rgba(234, 88, 12, 0.55);
}

body.lab-svc-page .lab-svc-exc__ready-chip.is-soft .lab-svc-exc__ready-dot {
    background: #ea580c;
}

body.lab-svc-page .lab-svc-exc__ready-chip.is-ok {
    border: 1px solid rgba(31, 122, 77, 0.45);
}

body.lab-svc-page .lab-svc-exc__ready-chip.is-ok .lab-svc-exc__ready-dot {
    background: var(--lab-ok, #1f7a4d);
}

body.lab-svc-page button.lab-svc-exc__ready-chip.is-problem.is-link,
body.lab-svc-page button.lab-svc-exc__ready-chip.is-soft.is-link {
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page button.lab-svc-exc__ready-chip.is-problem.is-link:hover {
    background: #fff8f9;
    border-color: rgba(225, 29, 72, 0.7);
    box-shadow: 0 0 0 1px rgba(225, 29, 72, 0.08);
}

body.lab-svc-page button.lab-svc-exc__ready-chip.is-soft.is-link:hover {
    background: #fff7ed;
    border-color: rgba(234, 88, 12, 0.75);
    box-shadow: 0 0 0 1px rgba(234, 88, 12, 0.1);
}

body.lab-svc-page .lab-svc-exc__textarea {
    min-height: 4.5rem;
    resize: vertical;
    line-height: 1.45;
}

body.lab-svc-page .lab-svc-exc__desc-wrap {
    width: 100%;
}

body.lab-svc-page .lab-svc-exc__desc-counter.is-near {
    color: var(--lab-warn, #b45309);
}

body.lab-svc-page .lab-svc-exc__desc-counter.is-full {
    color: #e11d48;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-exc__locked-wrap {
    display: block;
    width: 100%;
}

body.lab-svc-page .lab-svc-exc__locked-wrap .lab-svc-staff-pop__input:disabled {
    opacity: 0.72;
    cursor: not-allowed;
    background: var(--lab-soft, #f3f6f5);
}

body.lab-svc-page .lab-svc-exc__important {
    color: #b45309;
}

/* РќР°СЃС‚СЂРѕР№РєРё: РѕРґРЅР° РєРѕР»РѕРЅРєР° РєР°Рє В«РћСЃРЅРѕРІРЅР°СЏВ»; pickup/РїРѕРіРѕРґР° С‚РѕР»СЊРєРѕ РєРѕРіРґР° РЅСѓР¶РЅС‹. */
body.lab-svc-page .lab-svc-exc__settings {
    display: grid;
    gap: 0;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-exc__settings .lab-svc-staff-pop__row {
    padding: 8px 14px;
}

body.lab-svc-page .lab-svc-exc__gathering-row .lab-svc-staff-pop__row-val .lab-svc-staff-pop__input {
    border-color: rgba(45, 122, 122, 0.45);
    box-shadow: 0 0 0 1px rgba(45, 122, 122, 0.12);
}

body.lab-svc-page .lab-svc-exc__checks {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 14px;
    border-bottom: 1px solid rgba(228, 232, 225, 0.9);
}

body.lab-svc-page .lab-svc-crs-online-row {
    grid-template-columns: 1fr;
}

body.lab-svc-page .lab-svc-crs-online-row .lab-svc-exc__checks {
    padding: 0;
    border-bottom: 0;
}

/* ????? ????????: ????? | ?????? (????? ?????? ??????? CTG) */
body.lab-svc-page .lab-svc-exc__mode-radio {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 4px;
    border-radius: 12px;
    background: #f1f5f9;
}

body.lab-svc-page .lab-svc-exc__mode-radio__opt {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 10px;
    cursor: pointer;
    font-size: 0.86rem;
    font-weight: 600;
    color: var(--lab-muted, #6b7280);
    transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-exc__mode-radio__opt:has(input:checked) {
    background: #fff;
    color: var(--lab-ink, #0f172a);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

body.lab-svc-page .lab-svc-exc__mode-radio__opt input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* РџРѕРіРѕРґР°: РіР°Р»РѕС‡РєР° + СЃСЂРѕРє вЂ” РѕРґРёРЅ Р±Р»РѕРє; С‡РµСЂС‚Р° С‚РѕР»СЊРєРѕ РїРѕРґ РіСЂСѓРїРїРѕР№ */
body.lab-svc-page .lab-svc-exc__weather-group {
    border-bottom: 1px solid rgba(228, 232, 225, 0.9);
    padding: 0 0 10px;
}

body.lab-svc-page .lab-svc-exc__checks--weather {
    border-bottom: 0;
    padding-bottom: 4px;
}

body.lab-svc-page .lab-svc-exc__check-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    max-width: 36rem;
}

body.lab-svc-page .lab-svc-exc__check-line {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

body.lab-svc-page .lab-svc-exc__check-hint {
    margin: 0 0 0 1.5rem;
}

body.lab-svc-page .lab-svc-exc__fmt-lock-wrap {
    display: block;
    width: 100%;
}

body.lab-svc-page .lab-svc-exc__check {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    font-size: 0.9rem;
    color: var(--lab-ink, #1a2332);
    cursor: pointer;
}

body.lab-svc-page .lab-svc-exc__check input {
    margin-top: 3px;
}

body.lab-svc-page .lab-svc-exc__refusal {
    display: grid;
    gap: 4px;
    width: 100%;
}

body.lab-svc-page .lab-svc-exc__refusal-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: center;
}

body.lab-svc-page .lab-svc-exc__refusal-days {
    flex: 0 0 64px;
    width: 64px;
    max-width: 64px;
}

body.lab-svc-page .lab-svc-exc__refusal-hm {
    flex: 0 0 118px;
    width: 118px;
    max-width: 118px;
}

body.lab-svc-page .lab-svc-exc__refusal-summary,
body.lab-svc-page .lab-svc-exc__field-hint {
    margin: 2px 0 0;
    font-size: 0.8rem;
    color: var(--lab-muted, #6b7280);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-exc__pickup,
body.lab-svc-page .lab-svc-exc__weather {
    display: grid;
    gap: 0;
}

/* РЎСЂРѕРє СЂРµС€РµРЅРёСЏ вЂ” РІР»РѕР¶РµРЅРѕ РїРѕРґ РіР°Р»РѕС‡РєСѓ, Р±РµР· РѕС‚РґРµР»СЊРЅРѕР№ В«СЃС‚СЂРѕРєРё РЅР°СЃС‚СЂРѕРµРєВ» */
body.lab-svc-page .lab-svc-exc__weather {
    margin: 0 14px 0 28px;
    padding: 8px 12px;
    border-radius: 8px;
    background: var(--lab-soft, #f3f6f5);
}

body.lab-svc-page .lab-svc-exc__weather .lab-svc-staff-pop__row {
    padding: 0;
    border-bottom: 0;
    background: transparent;
}

/* display:grid РІС‹С€Рµ РїРµСЂРµР±РёРІР°РµС‚ UA [hidden] вЂ” РёРЅР°С‡Рµ pickup/РїРѕРіРѕРґР° РІСЃРµРіРґР° РІРёРґРЅС‹ */
body.lab-svc-page .lab-svc-exc__pickup[hidden],
body.lab-svc-page .lab-svc-exc__weather[hidden],
body.lab-svc-page .lab-svc-exc__og[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-exc__og {
    display: grid;
    gap: 8px;
    padding: 4px 14px 10px;
    border-bottom: 1px solid rgba(228, 232, 225, 0.9);
}

body.lab-svc-page .lab-svc-exc__og-warn {
    margin: 0;
    font-size: 0.82rem;
    color: #b45309;
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-exc__og-warn[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-exc__og-limits {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: flex-end;
}

body.lab-svc-page .lab-svc-exc__og-field {
    display: grid;
    gap: 4px;
    margin: 0;
    width: 120px;
}

body.lab-svc-page .lab-svc-exc__og-field--max {
    width: auto;
    min-width: 120px;
    flex: 1 1 220px;
}

body.lab-svc-page .lab-svc-exc__og-label {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--lab-ink, #1a2332);
    line-height: 1.25;
}

body.lab-svc-page .lab-svc-exc__og-field .lab-svc-staff-pop__input {
    width: 100%;
}

body.lab-svc-page .lab-svc-exc__og-max-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-exc__og-max-wrap .lab-svc-staff-pop__input {
    width: 120px;
    flex: 0 0 120px;
    transition:
        border-color 0.16s ease,
        box-shadow 0.16s ease;
}

body.lab-svc-page .lab-svc-exc__og-max-wrap .lab-svc-staff-pop__input.is-cap-error {
    border-color: #c23b2e;
    box-shadow: 0 0 0 2px rgba(194, 59, 46, 0.18);
}

body.lab-svc-page .lab-svc-exc__og-cap-msg {
    font-size: 0.78rem;
    font-weight: 600;
    color: #b42318;
    line-height: 1.25;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-exc__og-cap-msg[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-exc__important-bang {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    border-radius: 999px;
    border: 1.5px solid currentColor;
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1;
}

body.lab-svc-page .lab-svc-exc__slots,
body.lab-svc-page .lab-svc-exc__team,
body.lab-svc-page .lab-svc-exc__dates-list {
    list-style: none;
    margin: 0 0 10px;
    padding: 0;
}

body.lab-svc-page .lab-svc-exc__slot,
body.lab-svc-page .lab-svc-exc__team li,
body.lab-svc-page .lab-svc-exc__dates-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 6px 0;
    border-bottom: 1px solid var(--lab-line, #e6eeea);
}

body.lab-svc-page .lab-svc-exc__team-row {
    padding: 10px 0;
}

body.lab-svc-page .lab-svc-exc__team-person {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    flex: 1 1 auto;
}

body.lab-svc-page .lab-svc-exc__team-av {
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-exc__team-name {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--lab-ink, #1a2b34);
    line-height: 1.35;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-exc__slot-add,
body.lab-svc-page .lab-svc-exc__dates-add {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

body.lab-svc-page .lab-svc-exc__team {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.lab-svc-page .lab-svc-exc__team-avail-empty {
    margin: 0;
}

body.lab-svc-page .lab-svc-exc__gal-host,
body.lab-svc-page .lab-svc-exc__attr-host {
    min-width: 0;
}

/* Р”РѕРї. СѓСЃР»СѓРіРё: РёРєРѕРЅРєР° РєР°С‚Р°Р»РѕРіР° вЂ” РєРѕРЅС‚СѓСЂ Р±РµР· Р·РµР»С‘РЅРѕРіРѕ РєСЂСѓРіР° (РЅРµ avatar staff) */
body.lab-svc-page .lab-svc-exc__addsvc-ico {
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    background: transparent;
    overflow: visible;
    color: var(--lab-ink, #1a2b34);
    font-size: 0.72rem;
    font-weight: 700;
}
body.lab-svc-page .lab-svc-exc__addsvc-ico img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}
body.lab-svc-page .lab-svc-exc__addsvc-ico--ph {
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 8px;
    background: #f8fafc;
    color: var(--lab-muted, #64748b);
}

body.lab-svc-page .lab-svc-exc__attr-scroll {
    max-height: min(280px, 42vh);
    overflow: auto;
    padding-right: 2px;
}

body.lab-svc-page .lab-svc-exc__attr-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin: 0 0 10px;
}

body.lab-svc-page .lab-svc-exc__attr-search .lab-svc-staff-pop__input {
    flex: 1 1 12rem;
    min-width: 0;
}

body.lab-svc-page .lab-svc-exc__attr-count {
    flex: 0 0 auto;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--lab-soft, #5a6b73);
}

body.lab-svc-page .lab-svc-exc__attr-row .lab-svc-exc__attr-person {
    gap: 10px;
}

body.lab-svc-page .lab-svc-exc__attr-av {
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #d9e4df;
    color: var(--lab-ink, #1a2b34);
    font-size: 0.72rem;
    font-weight: 700;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-exc__attr-av.has-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-exc__attr-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-exc__attr-desc {
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1.3;
    color: var(--lab-soft, #5a6b73);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-exc__gal-count {
    margin: 0 0 6px;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--lab-ink, #1a2b34);
}

body.lab-svc-page .lab-svc-exc__gal-focal-hint {
    margin: 0 0 12px;
    font-size: 0.82rem;
    line-height: 1.4;
    color: var(--lab-soft, #5a6b73);
}

body.lab-svc-page .lab-svc-exc__gal .crm-gallery-mosaic-wrap {
    max-width: 100%;
}

body.lab-svc-page .lab-svc-exc__slots-summary {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 14px;
    margin: 0 0 14px;
    padding: 12px 14px;
    border: 1px solid var(--lab-line, #e6eeea);
    border-radius: 12px;
    background: var(--lab-soft, #f4f7f5);
}

body.lab-svc-page .lab-svc-exc__slots-summary-text {
    margin: 0;
    flex: 1 1 12rem;
    font-size: 0.9rem;
    line-height: 1.4;
    color: var(--lab-ink, #12263a);
}

body.lab-svc-page .lab-svc-exc__slots-summary-link {
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-exc__slots-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 8px;
}

body.lab-svc-page .lab-svc-exc__slots-tip {
    margin: 0 0 14px;
    font-size: 0.85rem;
    line-height: 1.4;
    color: var(--lab-muted, #5a6b75);
}

body.lab-svc-page .lab-svc-exc__slots-empty {
    margin: 0 0 12px;
    font-size: 0.9rem;
    line-height: 1.45;
    color: var(--lab-muted, #5a6b75);
}

body.lab-svc-page .lab-svc-exc__slots-chips {
    list-style: none;
    margin: 0 0 14px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.lab-svc-page .lab-svc-exc__slot-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 6px 6px 10px;
    border: 1px solid var(--lab-line, #e6eeea);
    border-radius: 10px;
    background: #fff;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

body.lab-svc-page .lab-svc-exc__slot-chip:hover {
    border-color: #c5d4cc;
}

body.lab-svc-page .lab-svc-exc__slot-chip-time {
    font-size: 0.875rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--lab-ink, #12263a);
}

body.lab-svc-page .lab-svc-exc__slot-chip-del {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted, #5a6b75);
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

body.lab-svc-page .lab-svc-exc__slot-chip-del:hover {
    background: #fde8e8;
    color: #9b2c2c;
}

body.lab-svc-page .lab-svc-exc__slot-manual {
    margin: 4px 0 0;
    border-top: 1px solid var(--lab-line, #e6eeea);
    padding-top: 10px;
}

body.lab-svc-page .lab-svc-exc__slot-manual > summary {
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--lab-ink, #12263a);
    list-style: none;
}

body.lab-svc-page .lab-svc-exc__slot-manual > summary::-webkit-details-marker {
    display: none;
}

body.lab-svc-page .lab-svc-exc__slot-manual[open] > summary {
    margin-bottom: 10px;
}

body.lab-svc-page .lab-svc-exc__slot-add-lab {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.75rem;
    color: var(--lab-muted, #5a6b75);
}

body.lab-svc-page .lab-svc-exc__slot-add-lab .lab-svc-staff-pop__input {
    min-width: 7.5rem;
}

body.lab-svc-page .lab-svc-exc__cal-tip-text,
body.lab-svc-page .lab-svc-exc-month__normal-tip {
    margin: 0 0 8px;
    font-size: 0.875rem;
    line-height: 1.45;
    color: var(--lab-muted, #5a6b75);
    max-width: 36rem;
}

body.lab-svc-page .lab-svc-exc-cal-host,
body.lab-svc-page .lab-svc-exc-month {
    max-width: 42rem;
}

body.lab-svc-page .lab-svc-exc-month .lab-svc-staff-month__switch-btn {
    min-width: 0;
    padding-left: 10px;
    padding-right: 10px;
}

body.lab-svc-page .lab-svc-act__logo {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 14px;
    align-items: center;
}

body.lab-svc-page .lab-svc-act__logo-box {
    width: 96px;
    height: 96px;
    border: 1px dashed var(--lab-line);
    border-radius: 12px;
    background: var(--lab-soft);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

body.lab-svc-page .lab-svc-act__logo-box.has-photo {
    border-style: solid;
    background: #fff;
}

body.lab-svc-page .lab-svc-act__logo-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-act__logo-ph {
    font-size: 0.75rem;
    color: var(--lab-muted);
    padding: 8px;
    text-align: center;
    line-height: 1.3;
}

body.lab-svc-page .lab-svc-act__logo-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    min-width: 7.5rem;
}

body.lab-svc-page .lab-svc-act__logo-upload {
    margin: 0;
}

body.lab-svc-page .lab-svc-act__tor {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-act__tor-ico {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    object-fit: contain;
    background: #fff;
}

body.lab-svc-page .lab-svc-act__tor-kicker {
    display: block;
    font-size: 0.72rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act__tor-name {
    font-weight: 600;
}

body.lab-svc-page .lab-svc-act__alloc {
    margin: 0 0 12px;
    padding: 8px 12px;
    border-radius: 10px;
    border: 1px solid var(--lab-line);
    background: rgba(15, 118, 110, 0.06);
    color: var(--lab-ink);
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-act__alloc.is-warn {
    border-color: rgba(180, 83, 9, 0.35);
    background: rgba(180, 83, 9, 0.08);
    color: #7a5410;
}

body.lab-svc-page .lab-svc-act__ctrl.is-locked .lab-svc-act__ctrl-trigger {
    cursor: not-allowed;
    opacity: 0.78;
}

body.lab-svc-page .lab-svc-act__save-wrap {
    display: inline-flex;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-act__save-wrap .lab-svc-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-act__derived {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: var(--lab-soft);
    font-size: 0.88rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-act__hint-warn {
    color: var(--lab-risk);
}

body.lab-svc-page .lab-svc-act__mode2-callout {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 4px 0 0;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid rgba(184, 134, 11, 0.35);
    border-left: 4px solid #b8860b;
    background: rgba(184, 134, 11, 0.1);
    color: #5c4310;
}

/* display:flex РІС‹С€Рµ РїРµСЂРµР±РёРІР°РµС‚ UA [hidden] вЂ” РёРЅР°С‡Рµ callout РІРёРґРµРЅ РІРѕ РІСЃРµС… СЂРµР¶РёРјР°С… */
body.lab-svc-page .lab-svc-act__mode2-callout[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-act__mode2-callout-icon {
    flex: 0 0 auto;
    display: inline-flex;
    margin-top: 1px;
    color: #9a7410;
}

body.lab-svc-page .lab-svc-act__mode2-callout-text {
    margin: 0;
    font-size: 0.86rem;
    font-weight: 600;
    line-height: 1.4;
    color: #5c4310;
}

body.lab-svc-page .lab-svc-act__lock {
    margin: 0;
    padding: 16px;
    border-radius: 12px;
    background: var(--lab-soft);
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act__nr-table,
body.lab-svc-page .lab-svc-act__cons-list {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

body.lab-svc-page .lab-svc-act__nr-table th,
body.lab-svc-page .lab-svc-act__nr-table td {
    padding: 8px 6px;
    border-bottom: 1px solid var(--lab-line);
    text-align: left;
    font-size: 0.86rem;
}

body.lab-svc-page .lab-svc-act__nr-table th:nth-child(1),
body.lab-svc-page .lab-svc-act__nr-table td:nth-child(1) {
    width: 46%;
}

body.lab-svc-page .lab-svc-act__nr-table th:nth-child(2),
body.lab-svc-page .lab-svc-act__nr-table td:nth-child(2) {
    width: 18%;
}

body.lab-svc-page .lab-svc-act__nr-table th:nth-child(3),
body.lab-svc-page .lab-svc-act__nr-table td:nth-child(3) {
    width: 22%;
}

body.lab-svc-page .lab-svc-act__nr-table th:nth-child(4),
body.lab-svc-page .lab-svc-act__nr-table td:nth-child(4) {
    width: 14%;
    text-align: center;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-act__nr-del-cell {
    position: relative;
    text-align: center;
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-act__nr-del-wrap {
    display: inline-flex;
}

body.lab-svc-page .lab-svc-act__nr-del {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-muted);
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease, opacity 150ms ease;
}

body.lab-svc-page .lab-svc-act__nr-del:hover:not(:disabled) {
    background: rgba(185, 28, 28, 0.06);
    border-color: rgba(185, 28, 28, 0.35);
    color: #b91c1c;
}

body.lab-svc-page .lab-svc-act__nr-del:disabled {
    opacity: 0.32;
    cursor: not-allowed;
    background: #f4f5f7;
    color: #9aa3b2;
}

body.lab-svc-page .lab-svc-act__nr-th {
    position: relative;
    vertical-align: middle;
    overflow: visible;
}

body.lab-svc-page .lab-svc-act__nr-th-line {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
    position: relative;
}

body.lab-svc-page .lab-svc-act__nr-th .lab-svc-staff-pop__info {
    position: relative;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-act__nr-th .lab-svc-staff-pop__info-tip {
    left: 0;
    top: calc(100% + 8px);
    z-index: 20;
    width: min(220px, 40vw);
    transform: translateY(-2px);
}

body.lab-svc-page .lab-svc-act__nr-th .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__nr-th .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-page .lab-svc-act__nr-th .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip {
    transform: translateY(0);
}

body.lab-svc-page .lab-svc-act__nr-table .lab-svc-staff-pop__input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act__nr-sw {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin: 0;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-act__nr-sw input {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    pointer-events: none;
}

body.lab-svc-page .lab-svc-act__nr-sw-ui {
    position: relative;
    width: 36px;
    height: 20px;
    flex-shrink: 0;
    border-radius: 999px;
    background: #d5dde0;
    border: 1px solid transparent;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-act__nr-sw-ui::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 40, 48, 0.2);
    transition: transform 160ms ease;
}

body.lab-svc-page .lab-svc-act__nr-sw input:checked + .lab-svc-act__nr-sw-ui {
    background: #0f766e;
    border-color: #0f766e;
}

body.lab-svc-page .lab-svc-act__nr-sw input:checked + .lab-svc-act__nr-sw-ui::after {
    transform: translateX(16px);
}

body.lab-svc-page .lab-svc-act__nr-sw input:focus-visible + .lab-svc-act__nr-sw-ui {
    outline: 2px solid rgba(15, 118, 110, 0.35);
    outline-offset: 2px;
}

body.lab-svc-page .lab-svc-act__nr-sw:hover .lab-svc-act__nr-sw-ui {
    border-color: rgba(23, 59, 66, 0.18);
}

body.lab-svc-page .lab-svc-act__cons {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

body.lab-svc-page .lab-svc-act__cons-head {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

body.lab-svc-page .lab-svc-act__cons-block {
    padding-top: 12px;
    border-top: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-act__cons-block--add {
    padding-bottom: 2px;
}

body.lab-svc-page .lab-svc-act__cons-pick-btn {
    margin-top: 4px;
    min-width: 168px;
}

body.lab-svc-page .lab-svc-act__cons-subtitle {
    margin: 0 0 4px;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-act__cons-add-label {
    display: block;
    margin: 0 0 6px;
    font-size: 0.78rem;
    font-weight: 500;
    color: rgba(18, 28, 22, 0.55);
}

body.lab-svc-page .lab-svc-act__cons-empty {
    margin-top: 4px;
    padding: 14px 16px;
    border-radius: 12px;
    border: 1px solid var(--lab-line);
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-act__cons-empty-text {
    margin: 0 0 12px;
    font-size: 0.86rem;
    line-height: 1.4;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act__cons-rows {
    margin-top: 8px;
}

body.lab-svc-page .lab-svc-act__cons-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(120px, 200px) 28px;
    gap: 10px;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-act__cons-row:last-child {
    border-bottom: 0;
}

body.lab-svc-page .lab-svc-act__cons-label {
    min-width: 0;
    font-size: 0.86rem;
    font-weight: 600;
    color: var(--lab-ink);
    line-height: 1.3;
}

body.lab-svc-page .lab-svc-act__cons-ctrl {
    justify-self: stretch;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__cons-ctrl .crm-pop-constraint-value,
body.lab-svc-page .lab-svc-act__cons-ctrl .crm-pop-constraint-value-wrap,
body.lab-svc-page .lab-svc-act__cons-ctrl .crm-modal-input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act__cons-ctrl .lab-svc-staff-pop__input {
    width: 100%;
}

body.lab-svc-page .lab-svc-act__cons-ctrl .lab-svc-staff-pop__input.is-invalid {
    border-color: #b42318;
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.12);
}

body.lab-svc-page .lab-svc-act__cons-sw {
    justify-self: end;
}

body.lab-svc-page .lab-svc-act__add {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-top: 0;
}

body.lab-svc-page .lab-svc-act__add select {
    flex: 1;
    min-width: 0;
}

body.lab-svc-page .lab-svc-staff-pop__nav-item.is-locked {
    opacity: 0.45;
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-act__sys {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__sys-trigger {
    flex: 1 1 auto;
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 8px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-act__sys-trigger:hover {
    border-color: rgba(23, 59, 66, 0.28);
}

body.lab-svc-page .lab-svc-act__sys-ph {
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act__sys-trig-ico {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    object-fit: contain;
    flex-shrink: 0;
    background: #fff;
}

body.lab-svc-page .lab-svc-act__sys-trig-ico.is-letter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef2ea;
    font-size: 0.75rem;
    font-weight: 700;
}

body.lab-svc-page .lab-svc-act__sys-trig-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-act__sys-x {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink);
    cursor: pointer;
    font-size: 1.1rem;
    line-height: 1;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-act__sys-x:hover {
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-act__sys-x[hidden] {
    display: none;
}

body.lab-svc-page .lab-svc-act__qty-field {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__qty-field .lab-svc-staff-pop__input {
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act__qty-x {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    margin: 0;
    padding: 0;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink);
    cursor: pointer;
    font-size: 1.1rem;
    line-height: 1;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-act__qty-x:hover {
    background: var(--lab-soft);
    color: #b42318;
}

body.lab-svc-page .lab-svc-act__qty-x[hidden] {
    display: none;
}

body.lab-svc-page .lab-svc-act-syspick {
    position: absolute;
    inset: 0;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 16px;
    background: rgba(15, 40, 48, 0.28);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act-syspick[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-act-syspick__card {
    width: min(520px, 100%);
    max-height: min(72vh, 560px);
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--lab-line);
    border-radius: 16px;
    box-shadow: 0 18px 48px rgba(15, 40, 48, 0.18);
    padding: 16px 18px 18px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act-syspick__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

body.lab-svc-page .lab-svc-act-syspick__title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-act-syspick__actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

body.lab-svc-page .lab-svc-act-syspick__reset {
    border: 0;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.86rem;
    cursor: pointer;
    padding: 6px 8px;
    border-radius: 8px;
    transition: color 160ms ease, background 160ms ease;
}

body.lab-svc-page .lab-svc-act-syspick__reset:hover {
    color: var(--lab-ink);
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-act-syspick__close {
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: var(--lab-ink);
    cursor: pointer;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-act-syspick__close:hover {
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-act-syspick__search input {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--lab-line);
    border-radius: 999px;
    padding: 10px 14px;
    font: inherit;
    background: #fff;
}

body.lab-svc-page .lab-svc-act-syspick__search input:focus {
    outline: none;
    border-color: rgba(23, 59, 66, 0.35);
    box-shadow: 0 0 0 3px rgba(23, 59, 66, 0.06);
}

body.lab-svc-page .lab-svc-act-syspick__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
    overflow: auto;
    min-height: 0;
}

body.lab-svc-page .lab-svc-act-syspick__chip {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 6px 10px 6px 8px;
    border: 1px solid rgba(18, 32, 58, 0.14);
    border-radius: 999px;
    background: #fff;
    color: var(--lab-ink);
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease;
}

body.lab-svc-page .lab-svc-act-syspick__chip:hover,
body.lab-svc-page .lab-svc-act-syspick__chip.is-on {
    border-color: var(--lab-ink);
    background: #f3f5f8;
}

body.lab-svc-page .lab-svc-act-syspick__chip img,
body.lab-svc-page .lab-svc-act-syspick__ph {
    width: 22px;
    height: 22px;
    object-fit: contain;
    flex: none;
    border-radius: 6px;
}

body.lab-svc-page .lab-svc-act-syspick__ph {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef2ea;
    font-size: 0.7rem;
}

body.lab-svc-page .lab-svc-act-syspick__empty {
    margin: 12px 0 0;
    color: var(--lab-muted);
    font-size: 0.86rem;
}

body.lab-svc-page .lab-svc-act-syspick__empty[hidden] {
    display: none !important;
}

body.lab-svc-page .lab-svc-act-syspick__card--cons {
    max-height: min(78vh, 620px);
}

body.lab-svc-page .lab-svc-act-syspick__chips--cons {
    flex: 1 1 auto;
    align-content: flex-start;
}

body.lab-svc-page .lab-svc-act-syspick__chip--check {
    border-radius: 12px;
    padding: 8px 12px 8px 10px;
    max-width: 100%;
    text-align: left;
}

body.lab-svc-page .lab-svc-act-syspick__chip--check > span:last-child {
    min-width: 0;
    white-space: normal;
    line-height: 1.25;
}

body.lab-svc-page .lab-svc-act-syspick__check {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    border: 1.5px solid rgba(18, 32, 58, 0.28);
    border-radius: 4px;
    background: #fff;
    box-sizing: border-box;
    position: relative;
    transition: border-color 150ms ease, background 150ms ease;
}

body.lab-svc-page .lab-svc-act-syspick__chip--check.is-on .lab-svc-act-syspick__check {
    border-color: var(--lab-ink);
    background: var(--lab-ink);
}

body.lab-svc-page .lab-svc-act-syspick__chip--check.is-on .lab-svc-act-syspick__check::after {
    content: '';
    position: absolute;
    left: 4px;
    top: 1px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

body.lab-svc-page .lab-svc-act-syspick__foot {
    display: flex;
    justify-content: flex-end;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-act-syspick__foot .lab-svc-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

body.lab-svc-page .lab-svc-act__nav-lock {
    display: block;
}

body.lab-svc-page .lab-svc-act__nav-lock .lab-svc-staff-pop__nav-item {
    width: 100%;
}

/* LAB activities вЂ” В«РЎРІСЏР·РёВ» matrix (activity Г— location) */
body.lab-svc-act-page.lab-svc-act-links-open .lab-svc-act-links:not([hidden]) {
    display: block;
}

body.lab-svc-page .lab-svc-act-links__panel {
    background: var(--lab-panel);
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    padding: 14px 16px 16px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act-links__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 16px;
    margin-bottom: 10px;
}

body.lab-svc-page .lab-svc-act-links__sub {
    margin: 0;
    flex: 1 1 220px;
    color: var(--lab-muted);
    font-size: 0.92rem;
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-act-links__search input {
    width: min(280px, 100%);
    min-width: 180px;
    height: 36px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    padding: 0 12px;
    font: inherit;
    background: #fff;
    color: var(--lab-ink);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act-links__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    list-style: none;
    margin: 0 0 12px;
    padding: 0;
    font-size: 0.8rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act-links__legend li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-act-links__swatch {
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid var(--lab-line);
    background: #fff;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-act-links__swatch.is-on {
    background: #d8f0e2;
    border-color: #8fbf9e;
}

body.lab-svc-page .lab-svc-act-links__swatch.is-off {
    background: #fde8e4;
    border-color: #e8a090;
}

body.lab-svc-page .lab-svc-act-links__swatch.is-linked {
    background: #eceff1;
    border-color: #c5ced3;
}

body.lab-svc-page .lab-svc-act-links__swatch.is-empty {
    background: #fff;
    border-color: #d7e2e6;
}

body.lab-svc-page .lab-svc-act-links__scroll {
    overflow: auto;
    max-height: min(68vh, 720px);
    border: 1px solid var(--lab-line);
    border-radius: 10px;
}

body.lab-svc-page .lab-svc-act-links__table {
    border-collapse: separate;
    border-spacing: 0;
    width: max-content;
    min-width: 100%;
    background: #fff;
}

body.lab-svc-page .lab-svc-act-links__sticky {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #fff;
    min-width: 180px;
    max-width: 220px;
    text-align: left;
    padding: 8px 10px;
    border-bottom: 1px solid #c5ced3;
    border-right: 1px solid #c5ced3;
    box-shadow: 4px 0 8px -6px rgba(15, 40, 48, 0.25);
}

body.lab-svc-page .lab-svc-act-links__table thead .lab-svc-act-links__sticky {
    z-index: 3;
    top: 0;
}

body.lab-svc-page .lab-svc-act-links__col {
    min-width: 88px;
    max-width: 120px;
    padding: 8px 6px;
    text-align: center;
    border-bottom: 1px solid #c5ced3;
    border-right: 1px solid #c5ced3;
    vertical-align: bottom;
    background: #fff;
    position: sticky;
    top: 0;
    z-index: 1;
}

body.lab-svc-page .lab-svc-act-links__col-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act-links__col .lab-svc-act-links__logo.is-loc {
    width: 36px;
    height: 36px;
}

body.lab-svc-page .lab-svc-act-links__col-name {
    display: block;
    font-size: 0.78rem;
    font-weight: 650;
    color: var(--lab-ink);
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-act-links__person {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act-links__av {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    overflow: hidden;
    background: #e8eef0;
}

body.lab-svc-page .lab-svc-act-links__av.has-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.lab-svc-page .lab-svc-act-links__av.is-empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 700;
    color: #1a4f58;
}

body.lab-svc-page .lab-svc-act-links__person-meta {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-act-links__name-btn {
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    font: inherit;
    font-size: 0.86rem;
    font-weight: 600;
    color: var(--lab-ink);
    cursor: pointer;
    text-align: left;
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color 160ms ease;
}

body.lab-svc-page .lab-svc-act-links__name-btn:hover {
    color: #1f7a4c;
}

body.lab-svc-page .lab-svc-act-links__sys {
    font-size: 0.72rem;
    color: var(--lab-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 150px;
}

body.lab-svc-page .lab-svc-act-links__row.is-focus .lab-svc-act-links__sticky {
    background: rgba(221, 237, 173, 0.45);
}

body.lab-svc-page .lab-svc-act-links__cell {
    padding: 0;
    min-width: 96px;
    min-height: 56px;
    border-bottom: 1px solid #c5ced3;
    border-right: 1px solid #c5ced3;
    text-align: center;
    vertical-align: middle;
    transition: background 160ms ease;
    box-shadow: inset 0 0 0 1px rgba(15, 40, 48, 0.06);
}

body.lab-svc-page .lab-svc-act-links__cell-inner {
    min-height: 56px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    box-sizing: border-box;
}

/* Full-cell fill (no nested pill). */
body.lab-svc-page .lab-svc-act-links__cell.is-on {
    background: #d8f0e2;
}

body.lab-svc-page .lab-svc-act-links__cell.is-off {
    background: #fde8e4;
}

body.lab-svc-page .lab-svc-act-links__cell.is-linked {
    background: #eceff1;
}

body.lab-svc-page .lab-svc-act-links__cell.is-empty {
    background: #fff;
}

body.lab-svc-page .lab-svc-act-links__logos {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

body.lab-svc-page .lab-svc-act-links__logo {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(15, 40, 48, 0.12);
    box-sizing: border-box;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-act-links__logo.has-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.lab-svc-page .lab-svc-act-links__logo.is-empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.65rem;
    font-weight: 700;
    color: #1a4f58;
    background: #e8eef0;
}

body.lab-svc-page .lab-svc-act-links__more {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--lab-ink);
    margin-left: 2px;
}

body.lab-svc-page .lab-svc-act-links__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #9aa7ad;
}

body.lab-svc-page .lab-svc-act-links__none {
    display: block;
    font-size: 1.35rem;
    font-weight: 600;
    line-height: 1;
    color: #9aa7ad;
    user-select: none;
}

body.lab-svc-page .lab-svc-act-links__empty {
    padding: 36px 16px;
    text-align: center;
    color: var(--lab-muted);
    font-size: 0.92rem;
}

body.lab-svc-page .lab-svc-act-links__hint {
    margin: 10px 0 0;
    font-size: 0.8rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act-links__status {
    margin: 8px 0 0;
    font-size: 0.86rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-act-links__status.is-error {
    color: var(--lab-risk);
}


/* вЂ”вЂ” LAB Service locations вЂ”вЂ” */
body.lab-svc-loc-page .lab-svc-staff__row.is-archived {
  opacity: 0.78;
}
body.lab-svc-loc-page .lab-svc-loc__hours {
  font-size: 13px;
  color: var(--lab-muted, #6b7280);
}
body.lab-svc-loc-page .lab-svc-loc__products {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  max-width: 120px;
}
body.lab-svc-loc-page .lab-svc-loc__products.is-empty {
  font-size: 0.82rem;
  color: var(--lab-muted, #6b7280);
}
body.lab-svc-loc-page .lab-svc-loc__prod-chip {
  display: inline-flex;
  padding: 2px 7px;
  border-radius: 5px;
  border: 1px solid transparent;
  font-size: 0.68rem;
  font-weight: 600;
  line-height: 1.25;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
  cursor: default;
}
body.lab-svc-loc-page .lab-svc-loc__prod-chip.is-active {
  background: #e6f4ea;
  border-color: rgba(46, 125, 70, 0.14);
  color: #2a6b3c;
}
body.lab-svc-loc-page .lab-svc-loc__prod-chip.is-blocked {
  background: #fde8e4;
  border-color: rgba(157, 66, 48, 0.12);
  color: #8f3a2c;
}
body.lab-svc-loc-page .lab-svc-loc__color {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
  color: var(--lab-ink, #1a2332);
}
body.lab-svc-loc-page .lab-svc-loc__color.is-auto {
  color: var(--lab-muted, #6b7280);
}
body.lab-svc-loc-page .lab-svc-loc__swatch {
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid var(--lab-line, #e2e6ee);
  flex-shrink: 0;
}
body.lab-svc-loc-page .lab-svc-loc__color-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
body.lab-svc-loc-page .lab-svc-loc__color-hex {
  max-width: 120px;
}
body.lab-svc-loc-page .lab-svc-loc__check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 0.88rem;
  color: var(--lab-ink, #1a2332);
  cursor: pointer;
}

/* Р›РѕРєР°С†РёСЏ POP вЂ” РІРєР»Р°РґРєР° РђРєС‚РёРІРЅРѕСЃС‚Рё (ACL quantity) */
body.lab-svc-loc-page .lab-svc-loc-act__lead {
  margin: 0 0 10px;
  font-size: 0.84rem;
  color: var(--lab-muted, #6b7280);
  line-height: 1.4;
}

body.lab-svc-loc-page .lab-svc-loc-act__add {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 0 0 14px;
  padding: 0 0 12px;
  border-bottom: 1px solid rgba(228, 232, 225, 0.9);
}

body.lab-svc-loc-page .lab-svc-loc-act__add .lab-svc-staff-pop__input {
  min-width: 180px;
  flex: 1 1 180px;
}

body.lab-svc-loc-page .lab-svc-loc-act__add-qty {
  flex: 0 0 88px !important;
  min-width: 88px !important;
  max-width: 88px;
}

body.lab-svc-loc-page .lab-svc-loc-act__list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

body.lab-svc-loc-page .lab-svc-loc-act__row {
  border: 1px solid var(--lab-line, #e6eeea);
  border-radius: 12px;
  background: #fff;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-loc-page .lab-svc-loc-act__row[open],
body.lab-svc-loc-page .lab-svc-loc-act__row:focus-within {
  border-color: rgba(18, 28, 22, 0.55);
}

body.lab-svc-loc-page .lab-svc-loc-act__row.is-blocked {
  opacity: 0.78;
  background: var(--lab-soft, #f3f6f5);
}

body.lab-svc-loc-page .lab-svc-loc-act__sum {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 12px;
  align-items: center;
  list-style: none;
  cursor: pointer;
  padding: 12px 14px;
  border-radius: 12px;
  transition: background 160ms ease;
}

body.lab-svc-loc-page .lab-svc-loc-act__sum::-webkit-details-marker {
  display: none;
}

body.lab-svc-loc-page .lab-svc-loc-act__sum:hover {
  background: rgba(15, 118, 110, 0.04);
}

body.lab-svc-loc-page .lab-svc-loc-act__sum-main {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  align-items: baseline;
  min-width: 0;
}

body.lab-svc-loc-page .lab-svc-loc-act__sum-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

body.lab-svc-loc-page .lab-svc-loc-act__chip {
  font-size: 0.72rem;
  font-weight: 700;
  color: #0f766e;
  background: rgba(15, 118, 110, 0.1);
  border-radius: 8px;
  padding: 2px 8px;
  white-space: nowrap;
}

body.lab-svc-loc-page .lab-svc-loc-act__chip.is-off {
  color: #9a3412;
  background: rgba(180, 83, 9, 0.12);
}

body.lab-svc-loc-page .lab-svc-loc-act__chip.is-soft {
  color: var(--lab-muted, #6b7280);
  background: rgba(107, 114, 128, 0.12);
}

body.lab-svc-loc-page .lab-svc-loc-act__chev {
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  color: var(--lab-muted, #6b7280);
  transition: transform 160ms ease;
  flex-shrink: 0;
}

body.lab-svc-loc-page .lab-svc-loc-act__row[open] .lab-svc-loc-act__chev {
  transform: rotate(45deg);
}

body.lab-svc-loc-page .lab-svc-loc-act__body {
  display: grid;
  gap: 8px;
  padding: 0 14px 14px;
}

body.lab-svc-loc-page .lab-svc-loc-act__name {
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--lab-ink, #1a2332);
}

body.lab-svc-loc-page .lab-svc-loc-act__mode {
  font-size: 0.78rem;
  color: var(--lab-muted, #6b7280);
}

body.lab-svc-loc-page .lab-svc-loc-act__check-row {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

body.lab-svc-loc-page .lab-svc-loc-act__check-row .lab-svc-staff-pop__info {
  z-index: 6;
}

body.lab-svc-loc-page .lab-svc-loc-act__check {
  display: inline-flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  font-size: 0.86rem;
  color: var(--lab-ink, #1a2332);
  cursor: pointer;
}

body.lab-svc-loc-page .lab-svc-loc-act__qty {
  display: grid;
  gap: 4px;
  margin: 0;
  max-width: 200px;
}

body.lab-svc-loc-page .lab-svc-loc-act__qty-lab {
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--lab-ink, #1a2332);
}

body.lab-svc-loc-page .lab-svc-loc-act__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
}

body.lab-svc-loc-page .lab-svc-loc-act__btn-with-info {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

body.lab-svc-loc-page .lab-svc-loc-act__btn-with-info .lab-svc-staff-pop__info {
  z-index: 7;
}

/* tip РІРІРµСЂС… вЂ” РєРЅРѕРїРєРё РІРЅРёР·Сѓ РєР°СЂС‚РѕС‡РєРё, РёРЅР°С‡Рµ РѕР±СЂРµР¶РµС‚СЃСЏ */
body.lab-svc-loc-page .lab-svc-loc-act__btn-with-info .lab-svc-staff-pop__info-tip {
  top: auto;
  bottom: calc(100% + 8px);
  left: 50%;
  right: auto;
  width: min(280px, 72vw);
  transform: translate(-50%, 2px);
}

body.lab-svc-loc-page .lab-svc-loc-act__btn-with-info .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-loc-page .lab-svc-loc-act__btn-with-info .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-loc-page .lab-svc-loc-act__btn-with-info .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip {
  transform: translate(-50%, 0);
}

body.lab-svc-loc-page .lab-svc-loc-act__note {
  margin: 0;
  font-size: 0.78rem;
  color: var(--lab-muted, #6b7280);
  line-height: 1.35;
}

body.lab-svc-loc-page .lab-svc-loc-act__cap {
  margin: 0;
  font-size: 0.78rem;
  color: var(--lab-muted, #6b7280);
  line-height: 1.35;
}

body.lab-svc-loc-page .lab-svc-loc-act__cap.is-bad {
  color: #b45309;
}

body.lab-svc-loc-page .lab-svc-loc-act__off-slot[hidden] {
  display: none !important;
}

body.lab-svc-loc-page .lab-svc-loc-act__park-ro {
  margin: 0 0 6px;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--lab-ink, #1a2332);
}

body.lab-svc-loc-page .lab-svc-loc-act__warn {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(180, 83, 9, 0.35);
  border-left: 4px solid #b45309;
  background: rgba(180, 83, 9, 0.08);
  color: #7c2d12;
}

body.lab-svc-loc-page .lab-svc-loc-act__warn-bang {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  margin-top: 1px;
  border-radius: 999px;
  border: 1.5px solid #b45309;
  background: #fffbeb;
  color: #b45309;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 19px;
  text-align: center;
}

body.lab-svc-loc-page .lab-svc-loc-act__warn-text {
  margin: 0;
  font-size: 0.84rem;
  font-weight: 600;
  line-height: 1.4;
  color: #7c2d12;
}

body.lab-svc-loc-page .lab-svc-loc-act__add-qty[hidden] {
  display: none !important;
}
body.lab-svc-loc-page .lab-svc-loc__main .lab-svc-staff-pop__row,
body.lab-svc-loc-page .lab-svc-loc__geo .lab-svc-staff-pop__row,
body.lab-svc-loc-page .lab-svc-loc__cost .lab-svc-staff-pop__row {
  padding: 6px 12px;
}
body.lab-svc-loc-page .lab-svc-loc__main .lab-svc-act__logo-box {
  width: 64px;
  height: 64px;
}
body.lab-svc-loc-page .lab-svc-loc__color-wrap {
  gap: 0;
}
body.lab-svc-loc-page .lab-svc-loc__color-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
}
body.lab-svc-loc-page .lab-svc-loc__hours-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  width: 100%;
}
body.lab-svc-loc-page .lab-svc-loc__hours-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
body.lab-svc-loc-page .lab-svc-loc__hours-lbl {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--lab-muted, #6b7280);
}
body.lab-svc-loc-page .lab-svc-loc__control-affix {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
}
body.lab-svc-loc-page .lab-svc-loc__control-affix .lab-svc-staff-pop__input {
  flex: 1 1 auto;
  min-width: 0;
}
body.lab-svc-loc-page .lab-svc-loc__control-affix--narrow .lab-svc-staff-pop__input {
  flex: 0 1 8.5rem;
  max-width: 8.5rem;
}
body.lab-svc-loc-page .lab-svc-loc__affix {
  flex: 0 0 auto;
  font-size: 0.84rem;
  font-weight: 600;
  color: var(--lab-muted, #6b7280);
  letter-spacing: 0.01em;
  user-select: none;
}
@media (max-width: 720px) {
  body.lab-svc-loc-page .lab-svc-loc__hours-pair {
    grid-template-columns: 1fr;
  }
  body.lab-svc-loc-page .lab-svc-loc__control-affix--narrow .lab-svc-staff-pop__input {
    flex: 1 1 auto;
    max-width: none;
  }
}
body.lab-svc-loc-page .lab-svc-loc__map {
  margin-top: 4px;
}
body.lab-svc-loc-page .lab-svc-loc__map .crm-loc-map {
  height: min(200px, 28vh);
  border-radius: 12px;
  border: 1px solid var(--lab-line, #e2e6ee);
}

/* LAB locations вЂ” В«РЎРІСЏР·РёВ» matrix (location Г— product + staff) */
body.lab-svc-loc-page.lab-svc-loc-links-open .lab-svc-loc-links:not([hidden]) {
    display: block;
}

body.lab-svc-page .lab-svc-loc-links__panel {
    background: var(--lab-panel);
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    padding: 14px 16px 16px;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-loc-links__toolbar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 10px;
}

body.lab-svc-page .lab-svc-loc-links__toolbar-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 16px;
}

body.lab-svc-page .lab-svc-loc-links__layers {
    display: flex;
    gap: 4px;
    padding: 4px;
    border-radius: 12px;
    background: #f1f5f9;
}

body.lab-svc-page .lab-svc-loc-links__layer {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--lab-muted, #6b7280);
    font: inherit;
    font-size: 0.86rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-loc-links__layer:hover {
    color: var(--lab-ink, #173b42);
    background: rgba(255, 255, 255, 0.55);
}

body.lab-svc-page .lab-svc-loc-links__layer.is-active {
    background: #fff;
    color: var(--lab-ink, #0f172a);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

body.lab-svc-page .lab-svc-loc-links__sub {
    margin: 0;
    color: var(--lab-muted);
    font-size: 0.92rem;
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-loc-links__search {
    margin-left: auto;
}

body.lab-svc-page .lab-svc-loc-links__search input {
    width: min(280px, 100%);
    min-width: 180px;
    height: 36px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    padding: 0 12px;
    font: inherit;
    background: #fff;
    color: var(--lab-ink);
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-loc-links__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    list-style: none;
    margin: 0 0 12px;
    padding: 0;
    font-size: 0.84rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-loc-links__legend li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-loc-links__swatch {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 1px solid transparent;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-loc-links__swatch.is-on {
    background: #7dbe8a;
    border-color: #5fa36c;
}

body.lab-svc-page .lab-svc-loc-links__swatch.is-off {
    background: #e8a0a8;
    border-color: #d47f8a;
}

body.lab-svc-page .lab-svc-loc-links__scroll {
    overflow: auto;
    max-height: min(68vh, 720px);
    border: 1px solid var(--lab-line);
    border-radius: 10px;
}

body.lab-svc-page .lab-svc-loc-links__table {
    width: max-content;
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.9rem;
}

body.lab-svc-page .lab-svc-loc-links__sticky {
    position: sticky;
    left: 0;
    z-index: 2;
    background: var(--lab-panel);
    min-width: 220px;
    max-width: 280px;
    text-align: left;
    padding: 10px 12px;
    border-bottom: 1px solid var(--lab-line);
    border-right: 1px solid var(--lab-line);
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-loc-links__table thead .lab-svc-loc-links__sticky {
    z-index: 3;
    top: 0;
}

body.lab-svc-page .lab-svc-loc-links__col {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--lab-panel);
    min-width: 92px;
    max-width: 120px;
    padding: 10px 8px;
    border-bottom: 1px solid var(--lab-line);
    vertical-align: bottom;
    text-align: center;
}

body.lab-svc-page .lab-svc-loc-links__col-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-loc-links__col .lab-svc-loc-links__logo.is-prod {
    width: 36px;
    height: 36px;
}

body.lab-svc-page .lab-svc-loc-links__col-name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.25;
    color: var(--lab-ink);
    word-break: break-word;
}

body.lab-svc-page .lab-svc-loc-links__col-sub {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 0.7rem;
    color: var(--lab-muted);
    line-height: 1.2;
}

body.lab-svc-page .lab-svc-loc-links__person {
    display: flex;
    align-items: center;
    gap: 10px;
}

body.lab-svc-page .lab-svc-loc-links__logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--lab-soft);
    color: var(--lab-ink);
    font-size: 0.82rem;
    font-weight: 700;
    overflow: hidden;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-loc-links__logo.has-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-loc-links__logo.is-empty {
    border: 1px solid var(--lab-line);
}

body.lab-svc-page .lab-svc-loc-links__person-meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-loc-links__name-btn {
    appearance: none;
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    font: inherit;
    font-weight: 700;
    color: var(--lab-ink);
    text-align: left;
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-loc-links__name-btn:hover {
    text-decoration: underline;
}

body.lab-svc-page .lab-svc-loc-links__sys {
    font-size: 0.78rem;
    color: var(--lab-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-loc-links__row.is-focus .lab-svc-loc-links__sticky {
    box-shadow: inset 3px 0 0 var(--lab-accent, #2f6b4f);
}

body.lab-svc-page .lab-svc-loc-links__cell {
    min-width: 92px;
    max-width: 120px;
    height: 64px;
    padding: 6px;
    border-bottom: 1px solid var(--lab-line);
    border-right: 1px solid rgba(0, 0, 0, 0.04);
    vertical-align: middle;
    text-align: center;
}

body.lab-svc-page .lab-svc-loc-links__cell-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
}

body.lab-svc-page .lab-svc-loc-links__cell.is-on {
    background: rgba(125, 190, 138, 0.28);
}

body.lab-svc-page .lab-svc-loc-links__cell.is-off {
    background: rgba(232, 160, 168, 0.22);
}

body.lab-svc-page .lab-svc-loc-links__staff {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2px;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-loc-links__av {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--lab-ink);
    overflow: hidden;
    flex: 0 0 auto;
}

body.lab-svc-page .lab-svc-loc-links__av.has-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-loc-links__av.is-empty {
    background: var(--lab-soft);
}

body.lab-svc-page .lab-svc-loc-links__more {
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--lab-muted);
    margin-left: 2px;
}

body.lab-svc-page .lab-svc-loc-links__dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(47, 107, 79, 0.45);
    display: inline-block;
}

body.lab-svc-page .lab-svc-loc-links__res {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    max-width: 100%;
    padding: 2px 4px;
}

body.lab-svc-page .lab-svc-loc-links__res-main {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 28px;
    padding: 0;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-page .lab-svc-loc-links__res-type {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    overflow: hidden;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid var(--lab-line, #e2e8f0);
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--lab-muted, #64748b);
    line-height: 1;
}

body.lab-svc-page .lab-svc-loc-links__res-type.has-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-page .lab-svc-loc-links__res-type.is-empty {
    background: #ecfdf5;
}

body.lab-svc-page .lab-svc-loc-links__res-num {
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    white-space: nowrap;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-page .lab-svc-loc-links__res-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 8px;
    background: rgba(15, 118, 110, 0.12);
    color: #0f766e;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-loc-links__res-chip.is-soft {
    background: rgba(100, 116, 139, 0.14);
    color: #475569;
}

body.lab-svc-page .lab-svc-loc-links__res-chip.is-off {
    background: rgba(180, 83, 9, 0.12);
    color: #b45309;
}

body.lab-svc-page .lab-svc-loc-links__res-names {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3px;
    max-width: 100%;
}

body.lab-svc-page .lab-svc-loc-links__res-name {
    display: inline-block;
    max-width: 72px;
    padding: 1px 6px;
    border-radius: 6px;
    background: rgba(15, 23, 42, 0.06);
    color: var(--lab-ink, #0f172a);
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-loc-links__none {
    color: rgba(0, 0, 0, 0.28);
    font-size: 1.1rem;
    line-height: 1;
}

body.lab-svc-page .lab-svc-loc-links__empty {
    padding: 28px 16px;
    text-align: center;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-loc-links__hint {
    margin: 10px 0 0;
    font-size: 0.82rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-loc-links__status {
    margin: 8px 0 0;
    font-size: 0.86rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-loc-links__status.is-error {
    color: var(--lab-risk);
}

body.lab-svc-loc-pop-open .pac-container,
body.lab-svc-staff-pop-open .pac-container,
body.lab-svc-attr-page.lab-svc-staff-pop-open .pac-container {
    z-index: 14050 !important;
}

body.lab-svc-page .lab-svc-loc__geo-status {
    margin: 6px 0 0;
    font-size: 0.82rem;
    line-height: 1.35;
    color: var(--lab-muted, #5b6573);
}

body.lab-svc-page .lab-svc-loc__geo-status.is-error {
    color: var(--lab-risk, #b42318);
}

body.lab-svc-page .lab-svc-loc__need-sys-wrap {
    margin-top: 8px;
}

body.lab-svc-page .lab-geo-need-pop.crm-cc-pop--open,
body.lab-svc-page .lab-geo-need-pop[style*="display: flex"] {
    z-index: 14100 !important;
}

/* РљР°СЂС‚РѕС‡РєР° Р·Р°СЏРІРєРё SYSTEM вЂ” СЃР°РјРѕРґРѕСЃС‚Р°С‚РѕС‡РЅС‹Р№ СЌС‚Р°Р»РѕРЅ (РґР°Р¶Рµ Р±РµР· crm-cc CSS РЅР° СЃС‚СЂР°РЅРёС†Рµ) */
body.lab-svc-page .lab-geo-need-pop .crm-cc-pop-box,
body.lab-svc-page .lab-geo-need-pop .crm-stf-dismiss-box {
    width: min(480px, calc(100vw - 32px));
    max-width: 94vw;
    max-height: min(90vh, 640px);
    overflow-x: hidden;
    overflow-y: auto;
    margin: 0;
    padding: 16px 18px 18px;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 12px;
    box-shadow: 0 16px 48px rgba(15, 40, 48, 0.22);
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-pop-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 8px;
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-pop-head h3 {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--lab-ink, #173b42);
    line-height: 1.3;
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-pop-close {
    flex: 0 0 auto;
    border: 0;
    background: transparent;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    color: var(--lab-muted, #64748b);
    padding: 0 2px;
}

body.lab-svc-page .lab-geo-need-pop .crm-stf-dismiss-name {
    margin: 0 0 8px;
    font-weight: 700;
    font-size: 0.92rem;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-pop-hint {
    margin: 0 0 10px;
    font-size: 0.82rem;
    color: var(--lab-muted, #64748b);
    line-height: 1.4;
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 4px;
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-btn {
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.84rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, opacity 160ms ease;
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-btn-back {
    border: 1px solid var(--lab-line, #cbd5e1);
    background: #fff;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-btn-submit {
    border: 1px solid var(--lab-ink, #173b42);
    background: var(--lab-ink, #173b42);
    color: #fff;
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-btn-submit:hover:not(:disabled) {
    filter: brightness(1.06);
}

body.lab-svc-page .lab-geo-need-pop .crm-cc-btn-submit:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

body.lab-svc-page .lab-geo-need-facts {
    margin: 0 0 12px;
    padding-left: 1.1em;
    font-size: 0.88rem;
    line-height: 1.4;
    color: var(--lab-ink, #1a2332);
}

body.lab-svc-page .lab-geo-need-comment-lbl {
    display: block;
    margin: 0 0 4px;
    font-size: 0.82rem;
    color: var(--lab-muted, #5b6573);
}

body.lab-svc-page .lab-geo-need-comment {
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 10px;
    padding: 8px 10px;
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 8px;
    font: inherit;
    resize: vertical;
    min-height: 52px;
    transition: border-color 160ms ease;
}

body.lab-svc-page .lab-geo-need-comment:focus {
    outline: none;
    border-color: var(--lab-ink, #1a2332);
}

body.lab-svc-page .lab-svc-loc__geo select.lab-svc-staff-pop__input:disabled {
    background: #f4f6f8;
    color: var(--lab-ink, #1a2332);
    cursor: default;
    opacity: 1;
}

/* LAB staff invite POP + pending strip */
body.lab-svc-page .lab-svc-btn-wrap {
    display: inline-flex;
    vertical-align: middle;
}

/* display:inline-flex РІС‹С€Рµ РїРµСЂРµР±РёРІР°РµС‚ UA [hidden] вЂ” РёРЅР°С‡Рµ РѕР±Рµ CTA РІСЃРµРіРґР° РІРёРґРЅС‹ */
body.lab-svc-page .lab-svc-btn-wrap[hidden],
body.lab-svc-page .lab-svc-btn[hidden] {
    display: none !important;
}

/* Attr list вЂ” СЂРµР№С‚РёРЅРі (Р·РІС‘Р·РґС‹ 0вЂ“5 + РѕС†РµРЅРєР° / РѕС‚Р·С‹РІС‹) */
body.lab-svc-attr-page .lab-svc-attr__rating {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    line-height: 1.2;
    pointer-events: none;
    user-select: none;
}

body.lab-svc-attr-page .lab-svc-attr__rating.is-empty {
    color: var(--lab-muted, #7a857c);
    font-size: 0.85rem;
    font-weight: 500;
}

body.lab-svc-attr-page .lab-svc-attr__stars {
    position: relative;
    display: inline-block;
    letter-spacing: 0.04em;
    font-size: 0.78rem;
    line-height: 1;
}

body.lab-svc-attr-page .lab-svc-attr__stars-base {
    color: rgba(18, 28, 22, 0.18);
}

body.lab-svc-attr-page .lab-svc-attr__stars-fill {
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #c9a227;
}

body.lab-svc-attr-page .lab-svc-attr__rating-num {
    font-size: 0.78rem;
    font-weight: 650;
    color: var(--lab-ink, #121c16);
}

body.lab-svc-attr-page .lab-svc-attr__rating-sep {
    margin: 0 2px;
    font-weight: 500;
    color: var(--lab-muted, #7a857c);
}

/* Attr list вЂ” СЂРµР¶РёРј (РїР»Р°С‚РЅС‹Р№ / Р±РµСЃРїР»Р°С‚РЅС‹Р№) */
body.lab-svc-attr-page .lab-svc-attr__mode-chip {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 5px;
    border: 1px solid transparent;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.25;
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
}

body.lab-svc-attr-page .lab-svc-attr__mode-chip.is-paid {
    background: #fdecec;
    border-color: rgba(185, 28, 28, 0.28);
    color: #b91c1c;
}

body.lab-svc-attr-page .lab-svc-attr__mode-chip.is-free {
    background: #e6f4ea;
    border-color: rgba(46, 125, 70, 0.28);
    color: #1f7a4c;
}

/* Attr POP map вЂ” РІРїРёСЃР°С‚СЊ РІ РІС‹СЃРѕС‚Сѓ main: РїР»РѕС‚РЅС‹Рµ РїРѕР»СЏ СЃР»РµРІР°, РєР°СЂС‚Р° СЃРїСЂР°РІР°, Р±РµР· РѕР±СЂРµР·РєРё */
body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo) {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo) .lab-svc-staff-pop__panel-head {
    flex: 0 0 auto;
}

body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo) .lab-svc-staff-pop__panel {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 8px 18px 12px;
}

body.lab-svc-attr-page .lab-svc-attr__geo {
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(220px, 0.95fr) minmax(260px, 1.2fr);
    gap: 10px 16px;
    align-items: stretch;
    overflow: hidden;
}

body.lab-svc-attr-page .lab-svc-attr__geo-fields {
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    overflow: hidden;
}

body.lab-svc-attr-page .lab-svc-attr__geo-lead {
    margin: 0 0 6px;
    font-size: 0.74rem;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Р›РµР№Р±Р» РЅР°Рґ РїРѕР»РµРј вЂ” СѓР¶Рµ Рё РЅРёР¶Рµ, С‡РµРј РєРѕР»РѕРЅРєР° Р»РµР№Р±Р»РѕРІ */
body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    margin: 0 0 7px;
    padding: 0;
    border-bottom: 0;
}

body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__row-title {
    font-size: 0.72rem;
    font-weight: 650;
    line-height: 1.2;
}

body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__row-hint {
    display: none;
}

body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__input {
    min-height: 34px;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 0.84rem;
}

body.lab-svc-attr-page .lab-svc-attr__geo-pair,
body.lab-svc-attr-page .lab-svc-attr__geo-coords {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 10px;
    min-width: 0;
    margin: 0 0 7px;
}

body.lab-svc-attr-page .lab-svc-attr__geo-pair .lab-svc-staff-pop__row,
body.lab-svc-attr-page .lab-svc-attr__geo-coords .lab-svc-staff-pop__row {
    margin-bottom: 0;
}

body.lab-svc-attr-page .lab-svc-attr__map {
    margin: 0;
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

body.lab-svc-attr-page .lab-svc-attr__map .crm-loc-map {
    width: 100%;
    flex: 1 1 auto;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    border-radius: 12px;
    border: 1px solid var(--lab-line, #e2e6ee);
    background: #eef1ec;
    box-sizing: border-box;
}

body.lab-svc-attr-page .lab-svc-attr__map .crm-loc-map.is-map-locked {
    cursor: default;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
    filter: saturate(0.92);
}

body.lab-svc-attr-page .lab-svc-attr__map .crm-loc-map.is-map-locked::after {
    content: '';
    pointer-events: none;
    position: absolute;
    inset: 0;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(15, 23, 42, 0.04));
}

body.lab-svc-attr-page .lab-svc-attr__map {
    position: relative;
}

body.lab-svc-page .lab-svc-attr-confirm-pop,
body.lab-svc-page .lab-svc-shell-confirm-pop,
body.lab-svc-page .lab-svc-ord-comment-pop {
    z-index: 14050;
    background: rgba(15, 23, 42, 0.45);
}

body.lab-svc-page .lab-svc-attr-confirm-pop__dialog,
body.lab-svc-page .lab-svc-shell-confirm-pop__dialog {
    max-width: 420px;
    width: min(420px, calc(100vw - 32px));
    max-height: none;
    overflow: hidden;
}

/* Compact confirm: message + foot only (no staff head/body chrome). */
body.lab-svc-page .lab-svc-attr-confirm-pop__dialog > .lab-svc-staff-pop__lead,
body.lab-svc-page .lab-svc-shell-confirm-pop__dialog > .lab-svc-staff-pop__lead {
    margin: 0;
    padding: 22px 22px 14px;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--lab-ink, #173b42);
    line-height: 1.45;
}

body.lab-svc-page .lab-svc-attr-confirm-pop__dialog > .lab-svc-staff-pop__foot,
body.lab-svc-page .lab-svc-shell-confirm-pop__dialog > .lab-svc-staff-pop__foot {
    padding: 12px 18px 16px;
    margin: 0;
}

body.lab-svc-page .lab-svc-attr-confirm-pop .lab-svc-btn.is-danger,
body.lab-svc-page .lab-svc-shell-confirm-pop .lab-svc-btn.is-danger {
    background: #b42318;
    border-color: #b42318;
    color: #fff;
}

body.lab-svc-attr-page .lab-svc-staff-tr__panel {
    border: 1px solid var(--lab-line, #e2e6ee);
    border-radius: 12px;
    background: #fff;
    padding: 12px 14px;
}

body.lab-svc-attr-page .lab-svc-staff-tr__panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

body.lab-svc-attr-page .lab-svc-attr__map .crm-loc-map-hint {
    margin: 4px 0 0;
    font-size: 0.72rem;
    color: var(--lab-muted);
    flex: 0 0 auto;
}

@media (max-width: 900px) {
    body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo) {
        overflow-y: auto;
    }

    body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo) .lab-svc-staff-pop__panel {
        overflow: visible;
        display: block;
    }

    body.lab-svc-attr-page .lab-svc-attr__geo {
        grid-template-columns: 1fr;
        overflow: visible;
        height: auto;
        flex: none;
    }

    body.lab-svc-attr-page .lab-svc-attr__map .crm-loc-map {
        min-height: 200px !important;
        max-height: min(220px, 32vh) !important;
    }
}

body.lab-svc-attr-page .lab-svc-attr-gal__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 12px;
}

body.lab-svc-attr-page .lab-svc-attr-gal__status {
    margin: 0 0 10px;
    font-size: 0.84rem;
    color: var(--lab-muted);
}

body.lab-svc-attr-page .lab-svc-attr-gal__status.is-error {
    color: #b42318;
    font-weight: 600;
}

body.lab-svc-attr-page .lab-svc-attr-gal__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 10px;
}

body.lab-svc-attr-page .lab-svc-attr-gal__item {
    position: relative;
    aspect-ratio: 1;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--lab-line);
    background: #eef1ec;
}

body.lab-svc-attr-page .lab-svc-attr-gal__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

body.lab-svc-attr-page .lab-svc-attr-gal__del {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 8px;
    background: rgba(23, 59, 66, 0.72);
    color: #fff;
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
    transition: background 160ms ease, opacity 160ms ease;
}

body.lab-svc-attr-page .lab-svc-attr-gal__del:hover {
    background: rgba(180, 35, 24, 0.9);
}

/* Import from catalog POP */
body.lab-svc-attr-page .lab-svc-attr-imp-pop__dialog {
    width: min(920px, 96vw);
    max-height: min(92vh, 880px);
}

body.lab-svc-attr-page .lab-svc-attr-imp-pop__body {
    padding: 12px 16px 8px;
    overflow: auto;
    min-height: 0;
    flex: 1 1 auto;
}

body.lab-svc-attr-page .lab-svc-attr-imp__filters {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 10px;
}

body.lab-svc-attr-page .lab-svc-attr-imp__search {
    grid-column: 1 / -1;
}

body.lab-svc-attr-page .lab-svc-attr-imp__table-wrap {
    overflow: auto;
    max-height: min(48vh, 420px);
    border: 1px solid var(--lab-line);
    border-radius: 12px;
}

body.lab-svc-attr-page .lab-svc-attr-imp__table {
    margin: 0;
}

body.lab-svc-attr-page .lab-svc-attr-imp__td-logo {
    width: 56px;
}

body.lab-svc-attr-page .lab-svc-attr-imp__logo,
body.lab-svc-attr-page .lab-svc-attr-imp__logo-ph {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    object-fit: cover;
    display: block;
    background: #eef1ec;
    border: 1px solid var(--lab-line);
}

body.lab-svc-attr-page .lab-svc-attr-imp__name {
    font-weight: 650;
    color: var(--lab-ink);
}

body.lab-svc-attr-page .lab-svc-attr-imp__desc {
    max-width: 18rem;
    font-size: 0.82rem;
    color: var(--lab-muted);
    line-height: 1.35;
}

body.lab-svc-attr-page .lab-svc-attr-imp__td-act {
    text-align: right;
    white-space: nowrap;
}

body.lab-svc-attr-page .lab-svc-attr-imp__btn {
    min-height: 32px;
    padding: 0 12px;
    font-size: 0.8rem;
}

body.lab-svc-attr-page .lab-svc-attr-imp-pop__foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

body.lab-svc-attr-page .lab-svc-attr-imp__pager {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    font-size: 0.84rem;
    color: var(--lab-muted);
}

@media (max-width: 720px) {
    body.lab-svc-attr-page .lab-svc-attr-imp__filters {
        grid-template-columns: 1fr;
    }
}
body.lab-svc-page .lab-staff-invite-pop__box {
    width: min(440px, calc(100vw - 24px));
}
body.lab-svc-page .lab-staff-invite-pop__title-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
body.lab-svc-page .lab-staff-invite-pop__badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 8px;
    font-size: 0.72rem;
    font-weight: 600;
    color: #9a3412;
    background: #ffedd5;
}
body.lab-svc-page .lab-staff-invite-pop__lbl {
    display: block;
    margin: 12px 0 4px;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--lab-ink, #0f172a);
}
body.lab-svc-page .lab-staff-invite-pop__input {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 8px;
    padding: 8px 10px;
    font: inherit;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
body.lab-svc-page .lab-staff-invite-pop__input:focus {
    outline: none;
    border-color: #94a3b8;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, 0.25);
}
body.lab-svc-page .lab-staff-invite-pop__input.is-invalid {
    border-color: #f04438;
}
body.lab-svc-page .lab-staff-invite-pop__status {
    margin: 10px 0 0;
    font-size: 0.85rem;
    color: var(--lab-muted, #64748b);
    white-space: pre-wrap;
    word-break: break-word;
}
body.lab-svc-page .lab-staff-invite-pop__status.is-error {
    color: #b42318;
}
body.lab-svc-page .lab-svc-staff__pending {
    margin: 0 0 14px;
    padding: 12px 14px;
    border: 1px solid var(--lab-line, #e2e8f0);
    border-radius: 12px;
    background: #fff;
}
body.lab-svc-page .lab-svc-staff__pending-head {
    margin-bottom: 8px;
}
body.lab-svc-page .lab-svc-staff__pending-title {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--lab-ink, #0f172a);
}
body.lab-svc-page .lab-svc-staff__pending-sub {
    margin: 2px 0 0;
    font-size: 0.8rem;
    color: var(--lab-muted, #64748b);
}
body.lab-svc-page .lab-svc-staff__pending-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
body.lab-svc-page .lab-svc-staff__pending-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 12px;
    padding: 8px 0;
    border-top: 1px solid var(--lab-line, #e2e8f0);
}
body.lab-svc-page .lab-svc-staff__pending-item:first-child {
    border-top: 0;
    padding-top: 0;
}
body.lab-svc-page .lab-svc-staff__pending-email {
    display: block;
    font-weight: 600;
    color: var(--lab-ink, #0f172a);
}
body.lab-svc-page .lab-svc-staff__pending-meta {
    display: block;
    font-size: 0.78rem;
    color: var(--lab-muted, #64748b);
}
body.lab-svc-page .lab-svc-staff__pending-act {
    flex-shrink: 0;
}
body.lab-svc-page .lab-svc-staff__pending-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
    flex-shrink: 0;
}

/* LAB excursion вЂ” product constraints tab (CRM panel chrome) */
body.lab-svc-page .lab-svc-exc__cons {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}
body.lab-svc-page .lab-svc-exc__cons-status {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.4;
}
body.lab-svc-page .lab-svc-exc__cons .crm-pop-offering-panel {
    border: 0;
    padding: 0;
    box-shadow: none;
    background: transparent;
}
body.lab-svc-page .lab-svc-exc__partner-block {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--lab-line, #e2e8f0);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

/* Partner booking embed POP вЂ” LAB chrome (РєР°Рє archive / dismiss) */
body.lab-svc-page .lab-svc-partner-embed-pop.crm-cc-pop {
    z-index: 14000;
}
body.lab-svc-page .lab-svc-partner-embed__box {
    width: min(560px, calc(100vw - 24px));
    max-height: calc(100vh - 32px);
    overflow: auto;
    overflow-x: hidden;
}
body.lab-svc-page .lab-svc-partner-embed__label-line {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}
body.lab-svc-page .lab-svc-partner-embed__label-text {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--lab-muted, #64748b);
}
body.lab-svc-page .lab-svc-partner-embed__field,
body.lab-svc-page .lab-svc-partner-embed__ref {
    position: relative;
    z-index: 1;
}
body.lab-svc-page .lab-svc-partner-embed__field:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-partner-embed__field:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-partner-embed__field:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-page .lab-svc-partner-embed__ref:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-page .lab-svc-partner-embed__ref:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-page .lab-svc-partner-embed__ref:has(.lab-svc-staff-pop__info.is-open) {
    z-index: 6;
}
body.lab-svc-page .lab-svc-partner-embed-pop .lab-svc-staff-pop__info-tip {
    z-index: 8;
    width: min(280px, 72vw);
}
body.lab-svc-page .lab-svc-partner-embed__box .crm-cc-pop-head h3 {
    font-family: inherit;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--lab-ink, #0f172a);
    line-height: 1.3;
}
body.lab-svc-page .lab-svc-partner-embed__ref {
    display: block;
    margin: 0 0 12px;
}
body.lab-svc-page .lab-svc-partner-embed__ref .lab-svc-partner-embed__label-line {
    margin-bottom: 4px;
}
body.lab-svc-page .lab-svc-partner-embed__ref .lab-svc-staff-pop__input {
    width: 100%;
    box-sizing: border-box;
}
body.lab-svc-page .lab-svc-partner-embed__status {
    margin: 0 0 10px;
    font-size: 0.82rem;
    line-height: 1.4;
    color: #856404;
}
body.lab-svc-page .lab-svc-partner-embed__status.is-err {
    color: #b42318;
}
body.lab-svc-page .lab-svc-partner-embed__field {
    margin: 0 0 12px;
}
body.lab-svc-page .lab-svc-partner-embed__field-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}
body.lab-svc-page .lab-svc-partner-embed__field-head .lab-svc-partner-embed__label {
    margin: 0;
}
body.lab-svc-page .lab-svc-partner-embed__ta {
    width: 100%;
    box-sizing: border-box;
    min-height: 2.6em;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.75rem;
    line-height: 1.4;
    resize: vertical;
}
body.lab-svc-page .lab-svc-partner-embed__copy {
    flex-shrink: 0;
    padding: 4px 10px;
    font-size: 0.78rem;
}

/* пїЅпїЅ LAB Excursions пїЅпїЅпїЅпїЅпїЅпїЅ matrix пїЅпїЅ */
body.lab-svc-page.lab-svc-exc-links-open .lab-svc-exc-links {
    display: block;
}

body.lab-svc-page .lab-svc-exc-links {
    margin: 0 0 24px;
}

body.lab-svc-page .lab-svc-exc-links__panel {
    border: 1px solid var(--lab-line);
    border-radius: 16px;
    background: #fff;
    padding: 14px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body.lab-svc-page .lab-svc-exc-links__toolbar-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

body.lab-svc-page .lab-svc-exc-links__periods {
    display: inline-flex;
    gap: 4px;
    padding: 3px;
    border-radius: 10px;
    background: rgba(18, 28, 22, 0.04);
}

body.lab-svc-page .lab-svc-exc-links__period {
    margin: 0;
    padding: 6px 12px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
}

body.lab-svc-page .lab-svc-exc-links__period:hover {
    color: var(--lab-ink);
    background: rgba(18, 28, 22, 0.06);
}

body.lab-svc-page .lab-svc-exc-links__period.is-active {
    background: #fff;
    color: var(--lab-ink);
    box-shadow: 0 1px 2px rgba(18, 28, 22, 0.08);
}

body.lab-svc-page .lab-svc-exc-links__search input {
    min-width: 220px;
    padding: 8px 12px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    font: inherit;
    font-size: 0.85rem;
}

body.lab-svc-page .lab-svc-exc-links__sub {
    margin: 0;
    font-size: 0.8rem;
    color: var(--lab-muted);
    line-height: 1.35;
}

body.lab-svc-page .lab-svc-exc-links__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.75rem;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-exc-links__legend li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.lab-svc-page .lab-svc-exc-links__swatch {
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1px solid var(--lab-line);
    background: #fff;
    box-sizing: border-box;
}

body.lab-svc-page .lab-svc-exc-links__swatch.is-active {
    background: #d8f0e2;
    border-color: #8fbf9e;
}

body.lab-svc-page .lab-svc-exc-links__swatch.is-blocked {
    background: #fde8e4;
    border-color: #e8a090;
}

body.lab-svc-page .lab-svc-exc-links__swatch.is-empty {
    background: #fff;
    border-color: #d7e2e6;
}

body.lab-svc-page .lab-svc-exc-links__scroll {
    overflow: auto;
    max-height: min(70vh, 720px);
    border: 1px solid var(--lab-line);
    border-radius: 12px;
}

body.lab-svc-page .lab-svc-exc-links__table {
    border-collapse: separate;
    border-spacing: 0;
    width: max-content;
    min-width: 100%;
    font-size: 0.8rem;
}

body.lab-svc-page .lab-svc-exc-links__sticky {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #fff;
    min-width: 200px;
    max-width: 260px;
    text-align: left;
    padding: 10px 12px;
    border-bottom: 1px solid var(--lab-line);
    border-right: 1px solid var(--lab-line);
    vertical-align: middle;
}

body.lab-svc-page .lab-svc-exc-links__table thead .lab-svc-exc-links__sticky {
    z-index: 3;
    top: 0;
}

body.lab-svc-page .lab-svc-exc-links__col {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #fafbfa;
    min-width: 112px;
    max-width: 140px;
    padding: 8px 6px;
    border-bottom: 1px solid var(--lab-line);
    vertical-align: bottom;
    text-align: center;
}

body.lab-svc-page .lab-svc-exc-links__col-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

body.lab-svc-page .lab-svc-exc-links__col-name {
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.25;
    color: var(--lab-ink);
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-exc-links__col-name.lab-svc-exc-links__name-btn {
    font-size: 0.7rem;
    font-weight: 600;
    max-width: 120px;
    text-align: center;
}

body.lab-svc-page .lab-svc-exc-links__logo {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    background: rgba(18, 28, 22, 0.06);
}

body.lab-svc-page .lab-svc-exc-links__logo.is-ph {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-exc-links__logo.is-loc {
    border-radius: 8px;
}

body.lab-svc-page .lab-svc-exc-links__person {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-exc-links__person-meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

body.lab-svc-page .lab-svc-exc-links__name-btn {
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    color: var(--lab-ink);
    font: inherit;
    font-weight: 650;
    font-size: 0.82rem;
    text-align: left;
    cursor: pointer;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-exc-links__name-btn:hover {
    text-decoration: underline;
}

body.lab-svc-page .lab-svc-exc-links__sys {
    font-size: 0.68rem;
    color: var(--lab-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-exc-links__cell {
    padding: 6px;
    border-bottom: 1px solid var(--lab-line);
    border-right: 1px solid rgba(18, 28, 22, 0.06);
    text-align: center;
    vertical-align: middle;
    transition: background 160ms ease;
}

body.lab-svc-page .lab-svc-exc-links__cell.is-active {
    background: #d8f0e2;
}

body.lab-svc-page .lab-svc-exc-links__cell.is-blocked {
    background: #fde8e4;
}

body.lab-svc-page .lab-svc-exc-links__cell.is-empty {
    background: #fff;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-exc-links__cell-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
}

body.lab-svc-page .lab-svc-exc-links__none {
    opacity: 0.35;
}

body.lab-svc-page .lab-svc-exc-links__rev {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    line-height: 1.2;
}

body.lab-svc-page .lab-svc-exc-links__rev.is-zero {
    color: var(--lab-muted);
    font-size: 0.85rem;
}

body.lab-svc-page .lab-svc-exc-links__amt {
    font-weight: 650;
    font-size: 0.78rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-exc-links__trend {
    font-size: 0.68rem;
    font-weight: 600;
}

body.lab-svc-page .lab-svc-exc-links__trend.is-up {
    color: #1b7a45;
}

body.lab-svc-page .lab-svc-exc-links__trend.is-down {
    color: #b42318;
}

body.lab-svc-page .lab-svc-exc-links__trend.is-flat {
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-exc-links__empty {
    padding: 28px 16px;
    text-align: center;
    color: var(--lab-muted);
}

body.lab-svc-page .lab-svc-exc-links__hint {
    margin: 0;
    font-size: 0.72rem;
    color: var(--lab-muted);
    line-height: 1.4;
}

body.lab-svc-page .lab-svc-exc-links__status {
    margin: 0;
    font-size: 0.78rem;
    color: var(--lab-ink);
}

body.lab-svc-page .lab-svc-exc-links__status.is-error {
    color: #b42318;
}

body.lab-svc-page .lab-svc-exc-links__row.is-focus .lab-svc-exc-links__sticky {
    box-shadow: inset 3px 0 0 #9fc16a;
}

body.lab-svc-page .lab-svc-exc-links__orphan {
    display: inline-block;
    margin-top: 2px;
    font-size: 0.65rem;
    font-weight: 650;
    color: #9a3412;
    line-height: 1.2;
}

body.lab-svc-page .lab-svc-exc-links__orphan-rev {
    margin-top: 4px;
}

body.lab-svc-page .lab-svc-exc-links__orphan-rev .lab-svc-exc-links__rev {
    align-items: flex-start;
}

body.lab-svc-page .lab-svc-exc-links__mixed {
    margin-left: 2px;
    font-weight: 700;
    color: var(--lab-muted);
}

/* Attractions «Связи»: status-only — icon on top, vertical label below, narrow cols */
body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__toolbar-top {
    justify-content: flex-start;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__col {
    min-width: 36px;
    max-width: 42px;
    width: 40px;
    padding: 8px 2px 6px;
    vertical-align: top;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__col-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    min-height: 0;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__logo.is-loc {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    border-radius: 6px;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__col-label {
    display: block;
    flex: 0 0 auto;
    width: 1.15rem;
    height: 7.5rem;
    overflow: hidden;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__col-name,
body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__col-name.lab-svc-exc-links__name-btn {
    display: inline-block;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    transform-origin: center center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: none;
    width: auto;
    height: 7.5rem;
    max-height: 7.5rem;
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.15;
    text-align: left;
    padding: 0;
    margin: 0;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__cell {
    padding: 2px;
    min-width: 36px;
    max-width: 42px;
    width: 40px;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__cell-inner {
    min-height: 28px;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__mark {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.35;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__cell.is-active .lab-svc-exc-links__mark {
    background: #1f7a45;
    opacity: 0.55;
}

body.lab-svc-page .lab-svc-exc-links--status .lab-svc-exc-links__cell.is-blocked .lab-svc-exc-links__mark {
    background: #b42318;
    opacity: 0.5;
}

/* Attr POP map: INFO tips must not clip inside overflow:hidden geo columns */
body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo):has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo):has(.lab-svc-staff-pop__info:hover),
body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo):has(.lab-svc-staff-pop__info:focus-visible) {
    overflow: visible;
}

body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo):has(.lab-svc-staff-pop__info.is-open) .lab-svc-staff-pop__panel,
body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo):has(.lab-svc-staff-pop__info:hover) .lab-svc-staff-pop__panel,
body.lab-svc-attr-page .lab-svc-staff-pop__main:has(.lab-svc-attr__geo):has(.lab-svc-staff-pop__info:focus-visible) .lab-svc-staff-pop__panel,
body.lab-svc-attr-page .lab-svc-attr__geo:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-attr-page .lab-svc-attr__geo:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-attr-page .lab-svc-attr__geo:has(.lab-svc-staff-pop__info:focus-visible),
body.lab-svc-attr-page .lab-svc-attr__geo-fields:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-attr-page .lab-svc-attr__geo-fields:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-attr-page .lab-svc-attr__geo-fields:has(.lab-svc-staff-pop__info:focus-visible) {
    overflow: visible;
}

body.lab-svc-attr-page .lab-svc-attr__geo-fields:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-attr-page .lab-svc-attr__geo-fields:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-attr-page .lab-svc-attr__geo-fields:has(.lab-svc-staff-pop__info:focus-visible) {
    position: relative;
    z-index: 6;
}

body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info.is-open),
body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:hover),
body.lab-svc-attr-page .lab-svc-attr__geo-fields .lab-svc-staff-pop__row:has(.lab-svc-staff-pop__info:focus-visible) {
    position: relative;
    z-index: 8;
}

/* Side tip (act__main) clips in narrow geo cols — open below the label instead */
body.lab-svc-attr-page .lab-svc-attr__geo.lab-svc-act__main .lab-svc-staff-pop__info-tip {
    left: 0;
    right: auto;
    top: calc(100% + 6px);
    bottom: auto;
    width: min(300px, 46vw);
    max-width: min(300px, 92vw);
    transform: translateY(-2px);
    z-index: 40;
}

body.lab-svc-attr-page .lab-svc-attr__geo.lab-svc-act__main .lab-svc-staff-pop__info-tip::after {
    left: 10px;
    top: -5px;
    margin-top: 0;
    border-left: 1px solid var(--lab-line);
    border-bottom: none;
    border-top: 1px solid var(--lab-line);
    border-right: none;
    transform: rotate(45deg);
}

body.lab-svc-attr-page .lab-svc-attr__geo.lab-svc-act__main .lab-svc-staff-pop__info:hover .lab-svc-staff-pop__info-tip,
body.lab-svc-attr-page .lab-svc-attr__geo.lab-svc-act__main .lab-svc-staff-pop__info:focus-visible .lab-svc-staff-pop__info-tip,
body.lab-svc-attr-page .lab-svc-attr__geo.lab-svc-act__main .lab-svc-staff-pop__info.is-open .lab-svc-staff-pop__info-tip {
    transform: translateY(0);
}

/* Panel title INFO (outside geo fields) */
body.lab-svc-attr-page .lab-svc-staff-pop__panel-head-text {
    overflow: visible;
}

body.lab-svc-attr-page .lab-svc-staff-pop__panel-title .lab-svc-staff-pop__info-tip {
    left: 0;
    top: calc(100% + 8px);
    width: min(320px, 56vw);
    max-width: 320px;
    z-index: 50;
}

/* —— LAB Service · Orders —— */
body.lab-svc-ord-page .lab-svc-ord {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body.lab-svc-ord-page .lab-svc-ord__tabs {
    margin: 0;
}

body.lab-svc-ord-page .lab-svc-ord__toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    align-items: center;
}

body.lab-svc-ord-page .lab-svc-ord__search {
    min-width: min(220px, 100%);
    flex: 1 1 180px;
    height: 36px;
    padding: 0 12px;
    border: 1px solid var(--lab-line, #e2e6ee);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink, #173b42);
    font: inherit;
    font-size: 0.875rem;
}

body.lab-svc-ord-page .lab-svc-ord__select,
body.lab-svc-ord-page .lab-svc-ord__date {
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--lab-line, #e2e6ee);
    border-radius: 10px;
    background: #fff;
    color: var(--lab-ink, #173b42);
    font: inherit;
    font-size: 0.8125rem;
}

/* Localized empty date mask (same as CRM .crm-date-field — LAB does not load crm-shared-base). */
body.lab-svc-ord-page .crm-date-field {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
}

body.lab-svc-ord-page .crm-date-field > input[type='date'].lab-svc-ord__date {
    width: 100%;
    min-width: 9.5rem;
    box-sizing: border-box;
}

body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date'] {
    color: transparent;
    caret-color: transparent;
}

body.lab-svc-ord-page .crm-date-field--has-value > input[type='date'] {
    color: inherit;
    caret-color: auto;
}

body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date']::-webkit-datetime-edit,
body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date']::-webkit-datetime-edit-fields-wrapper,
body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date']::-webkit-datetime-edit-text,
body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date']::-webkit-datetime-edit-month-field,
body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date']::-webkit-datetime-edit-day-field,
body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value) > input[type='date']::-webkit-datetime-edit-year-field {
    color: transparent;
}

body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value):focus-within > .crm-date-field__mask {
    visibility: hidden;
}

body.lab-svc-ord-page .crm-date-field:not(.crm-date-field--has-value):focus-within > input[type='date'] {
    color: inherit;
    caret-color: auto;
}

body.lab-svc-ord-page .crm-date-field__mask {
    position: absolute;
    left: 10px;
    right: 2rem;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 0.75rem;
    line-height: 1.2;
    color: #94a3b8;
}

body.lab-svc-ord-page .crm-date-field--has-value > .crm-date-field__mask {
    display: none;
}

body.lab-svc-ord-page .lab-svc-ord__date-lab {
    font-size: 0.75rem;
    color: var(--lab-muted, #64748b);
}

body.lab-svc-ord-page .lab-svc-ord__preset {
    height: 36px;
    padding: 0 12px;
    font-size: 0.8125rem;
}

body.lab-svc-ord-page .lab-svc-ord__preset.is-active {
    border-color: rgba(23, 59, 66, 0.35);
    background: rgba(23, 59, 66, 0.08);
    color: var(--lab-ink, #173b42);
    font-weight: 700;
}

/* --- LAB list pager etalon (see .cursor/rules/lab-list-pager-etalon.mdc) --- */
body.lab-svc-page .lab-svc-pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 12px;
    margin-top: 10px;
    font-size: 0.8125rem;
    color: var(--lab-muted, #64748b);
}

body.lab-svc-page .lab-svc-pager__nav {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

body.lab-svc-page .lab-svc-pager__info {
    white-space: nowrap;
}

/* Optional; hide when size is on the right (etalon). */
body.lab-svc-page .lab-svc-pager__sep {
    display: none;
}

body.lab-svc-page .lab-svc-pager__size {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 0 auto;
    cursor: pointer;
}

body.lab-svc-page .lab-svc-pager__size-lab {
    font-size: 0.75rem;
    color: var(--lab-muted, #64748b);
    white-space: nowrap;
}

body.lab-svc-page .lab-svc-pager__select {
    height: 32px;
    min-width: 3.5rem;
    padding: 0 8px;
    border: 1px solid var(--lab-line, #e2e6ee);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-ink, #173b42);
    font: inherit;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-page .lab-svc-pager__select:hover,
body.lab-svc-page .lab-svc-pager__select:focus {
    border-color: #cbd5e1;
    outline: none;
}

/* Legacy alias — orders page before shared class */
body.lab-svc-ord-page .lab-svc-ord__pager.lab-svc-pager {
    margin-top: 10px;
}

body.lab-svc-ord-page .lab-svc-ord__status {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--lab-muted, #64748b);
    line-height: 1.4;
}

/* Cells were 0.9rem (~14px) from .lab-svc-staff__table td — force −1px. */
body.lab-svc-ord-page .lab-svc-ord__table {
    font-size: 13px;
}

body.lab-svc-ord-page .lab-svc-ord__table th {
    white-space: nowrap;
    font-size: 11px;
    letter-spacing: 0.02em;
    padding-top: 8px;
    padding-bottom: 8px;
}

body.lab-svc-ord-page .lab-svc-ord__table td {
    vertical-align: top;
    font-size: 13px;
    padding-top: 8px;
    padding-bottom: 8px;
    line-height: 1.35;
}

body.lab-svc-ord-page .lab-svc-ord__type-chip {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.3;
    white-space: nowrap;
}

/* Excursion = soft green; course = soft blue (fixed, not status-dependent). */
body.lab-svc-ord-page .lab-svc-ord__type-chip.is-excursion {
    background: #dcfce7;
    color: #166534;
}

body.lab-svc-ord-page .lab-svc-ord__type-chip.is-course {
    background: #dbeafe;
    color: #1d4ed8;
}

body.lab-svc-ord-page .crm-co-product {
    max-width: 240px;
    line-height: 1.35;
}

body.lab-svc-ord-page .lab-svc-ord__order-cell {
    min-width: 280px;
    width: 34%;
    max-width: 440px;
}

body.lab-svc-ord-page .lab-svc-ord__card {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

body.lab-svc-ord-page .lab-svc-ord__thumb {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 8px;
    object-fit: cover;
    background: #f1f5f9;
    border: 1px solid var(--lab-line, #e2e6ee);
}

body.lab-svc-ord-page .lab-svc-ord__thumb--empty {
    display: inline-block;
    background: linear-gradient(145deg, #e8eef3, #f8fafc);
}

body.lab-svc-ord-page .lab-svc-ord__card-body {
    min-width: 0;
    flex: 1 1 auto;
}

body.lab-svc-ord-page .lab-svc-ord__card-no {
    font-size: 12px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    word-break: break-all;
    line-height: 1.3;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-ord-page .lab-svc-ord__card-name {
    margin-top: 2px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-ord-page .lab-svc-ord__card-meta {
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

body.lab-svc-ord-page .lab-svc-ord__prepay {
    font-weight: 700;
}

body.lab-svc-ord-page .lab-svc-ord__prepay.is-paid {
    color: #166534;
}

body.lab-svc-ord-page .lab-svc-ord__prepay.is-due {
    color: #b42318;
}

body.lab-svc-ord-page .lab-svc-ord__card-event-line {
    margin-top: 3px;
    font-size: 11px;
    color: var(--lab-muted, #64748b);
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

body.lab-svc-ord-page .lab-svc-ord__table td.crm-co-order-no {
    font-size: 12px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    word-break: break-all;
    max-width: 180px;
    line-height: 1.3;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-ord-page .crm-co-dt-sub {
    font-size: 11px;
    color: var(--lab-muted, #64748b);
    margin-top: 2px;
    line-height: 1.25;
}

body.lab-svc-ord-page .lab-svc-ord__table .oc-badge {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

body.lab-svc-ord-page .oc-pending { background: #ffedd5; color: #9a3412; }
body.lab-svc-ord-page .oc-good { background: #dcfce7; color: #166534; }
body.lab-svc-ord-page .oc-bad { background: #fee2e2; color: #991b1b; }
body.lab-svc-ord-page .oc-done { background: #dbeafe; color: #1d4ed8; }
body.lab-svc-ord-page .oc-refund { background: #f3e8ff; color: #6b21a8; }
body.lab-svc-ord-page .oc-risk { background: #fef3c7; color: #92400e; }
body.lab-svc-ord-page .oc-new { background: #e2e8f0; color: #334155; }

body.lab-svc-ord-page .crm-co-og-badge {
    display: inline-block;
    margin-top: 4px;
    padding: 2px 8px;
    border-radius: 8px;
    background: #f1f5f9;
    color: #475569;
    font-size: 0.7rem;
    font-weight: 600;
}

body.lab-svc-ord-page .lab-svc-ord__actions-cell {
    width: 1%;
    white-space: nowrap;
    vertical-align: middle;
}

body.lab-svc-ord-page .lab-svc-ord__actions-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 6px;
    max-width: 240px;
}

body.lab-svc-ord-page .lab-svc-ord__actions-row > .crm-co-btn-mini {
    flex: 1 1 auto;
    min-width: 0;
}

body.lab-svc-ord-page .lab-svc-ord__more {
    flex: 0 0 auto;
    position: relative;
    z-index: 2;
}

body.lab-svc-ord-page .lab-svc-ord__more.is-open {
    z-index: 20;
}

body.lab-svc-ord-page .lab-svc-ord__more .lab-svc-staff__more-menu {
    right: 0;
    left: auto;
    min-width: 200px;
}

body.lab-svc-ord-page .lab-svc-ord__more-danger {
    color: #991b1b;
}

body.lab-svc-ord-page .lab-svc-ord__actions-empty {
    display: inline-block;
    min-width: 0.5em;
}

body.lab-svc-ord-page .crm-co-btn-mini {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
    padding: 4px 7px;
    border: 1px solid var(--lab-line, #e2e6ee);
    border-radius: 8px;
    background: #fff;
    color: var(--lab-ink, #173b42);
    font: inherit;
    font-size: 0.65rem;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

body.lab-svc-ord-page .crm-co-btn-mini:hover:not(:disabled) {
    background: #f8fafc;
    border-color: #cbd5e1;
}

body.lab-svc-ord-page .crm-co-btn-mini:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

body.lab-svc-ord-page .lab-svc-ord__wf-disabled-wrap {
    display: inline-flex;
    max-width: 100%;
    cursor: help;
}

body.lab-svc-ord-page .lab-svc-ord__wf-disabled-wrap .crm-co-btn-mini:disabled {
    pointer-events: none;
}

body.lab-svc-ord-page .crm-co-btn-danger {
    border-color: #fecaca;
    color: #991b1b;
}

body.lab-svc-ord-page .crm-co-wf-btn__title {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
}

body.lab-svc-ord-page .crm-co-wf-btn__title .lab-svc-staff__more-ico-img {
    width: 16px;
    height: 16px;
}

body.lab-svc-ord-page .lab-svc-ord__more-danger .lab-svc-staff__more-ico-img {
    opacity: 0.9;
}

body.lab-svc-ord-page .crm-co-wf-btn__timer {
    font-size: 0.68rem;
    color: var(--lab-muted, #64748b);
}

body.lab-svc-ord-page .crm-co-wf-btn--confirm { border-color: #86efac; }
body.lab-svc-ord-page .crm-co-wf-btn--start { border-color: #93c5fd; }
body.lab-svc-ord-page .crm-co-wf-btn--complete { border-color: #6ee7b7; }
body.lab-svc-ord-page .crm-co-wf-btn--noshow { border-color: #fdba74; }
body.lab-svc-ord-page .crm-co-wf-btn--og-cancel { border-color: #fca5a5; }
body.lab-svc-ord-page .crm-co-wf-btn__timer--event { color: #1d4ed8; }
body.lab-svc-ord-page .crm-co-wf-btn__timer--hint { color: #9a3412; }
body.lab-svc-ord-page .crm-co-wf-btn__timer--noshow-auto { color: #c2410c; font-weight: 600; }

body.lab-svc-ord-page .crm-co-noshow-wrap {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

body.lab-svc-ord-page .lab-svc-ord__table tr.crm-co-row--focus td {
    background: rgba(22, 163, 74, 0.1);
}


body.lab-svc-ord-page .lab-svc-ord-comment-pop__dialog,
body.lab-svc-rev-page .lab-svc-ord-comment-pop__dialog,
body.lab-svc-att-page .lab-svc-ord-comment-pop__dialog {
    max-width: 480px;
    width: min(480px, calc(100vw - 32px));
}

body.lab-svc-ord-page .lab-svc-ord-comment-pop__body,
body.lab-svc-rev-page .lab-svc-ord-comment-pop__body,
body.lab-svc-att-page .lab-svc-ord-comment-pop__body {
    padding: 0 22px 8px;
}

body.lab-svc-ord-page .lab-svc-ord-comment-pop__ta,
body.lab-svc-rev-page .lab-svc-ord-comment-pop__ta,
body.lab-svc-att-page .lab-svc-ord-comment-pop__ta {
    display: block;
    width: 100%;
    box-sizing: border-box;
    min-height: 96px;
    padding: 10px 12px;
    border: 1px solid var(--lab-line, #e2e6ee);
    border-radius: 10px;
    font: inherit;
    font-size: 0.875rem;
    resize: vertical;
    color: var(--lab-ink, #173b42);
}

body.lab-svc-ord-page .lab-svc-ord-comment-pop__err,
body.lab-svc-rev-page .lab-svc-ord-comment-pop__err,
body.lab-svc-att-page .lab-svc-ord-comment-pop__err {
    margin: 8px 0 0;
    font-size: 0.8125rem;
    color: #b42318;
}

body.lab-svc-ord-page .lab-svc-pagehead__sub a {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* LAB Service reviews */
body.lab-svc-rev-page .lab-svc-rev__status {
    margin: 10px 0 8px;
    font-size: 0.78rem;
    color: var(--lab-muted);
}
body.lab-svc-rev-page .lab-svc-rev__status.is-err {
    color: #9c3c3c;
}
body.lab-svc-rev-page .lab-svc-rev__table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
body.lab-svc-rev-page .lab-svc-rev__table {
    font-size: 0.74rem;
    min-width: 720px;
}
body.lab-svc-rev-page .lab-svc-rev__th-actions,
body.lab-svc-rev-page .lab-svc-rev__td-actions {
    position: sticky;
    right: 0;
    z-index: 1;
    background: #fff;
    box-shadow: -6px 0 8px -6px rgba(15, 23, 42, 0.18);
}
body.lab-svc-rev-page thead .lab-svc-rev__th-actions {
    z-index: 2;
    background: #f8fafc;
}
body.lab-svc-rev-page tr.lab-svc-rev-row--unseen td:first-child {
    box-shadow: inset 3px 0 0 #3b6d8c;
}
body.lab-svc-rev-page .lab-svc-rev__author {
    font-size: 0.7rem;
    color: var(--lab-ink);
    margin-bottom: 2px;
}
body.lab-svc-rev-page .lab-svc-rev__author-lab {
    color: var(--lab-muted);
    font-weight: 600;
}
body.lab-svc-rev-page .lab-svc-rev__badge {
    display: inline-block;
    font-size: 0.62rem;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 999px;
    background: #fef3c7;
    color: #92400e;
    margin-left: 4px;
}
body.lab-svc-rev-page .lab-svc-rev__snippet {
    color: var(--lab-ink);
    line-height: 1.35;
}
body.lab-svc-rev-page .lab-svc-rev__score {
    font-weight: 700;
    white-space: nowrap;
}
body.lab-svc-rev-page .lab-svc-rev__st {
    max-width: 14rem;
}
body.lab-svc-rev-page .lab-svc-rev__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
body.lab-svc-rev-page .lab-svc-rev__chip {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 2px 8px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 0.62rem;
    font-weight: 650;
    line-height: 1.25;
    white-space: nowrap;
}
body.lab-svc-rev-page .lab-svc-rev__chip.is-empty {
    background: transparent;
    border-color: transparent;
    color: var(--lab-muted);
    font-weight: 500;
    padding: 0;
}
/* Fixed status palette (do not reuse casually) */
body.lab-svc-rev-page .lab-svc-rev__chip.is-text-pending {
    background: #fef3c7;
    border-color: #f0d48a;
    color: #92400e;
}
body.lab-svc-rev-page .lab-svc-rev__chip.is-text-published {
    background: #eaf6ee;
    border-color: #b7dcc4;
    color: #1f7a4c;
}
body.lab-svc-rev-page .lab-svc-rev__chip.is-text-rejected {
    background: #f6ecec;
    border-color: #e0bcbc;
    color: #9c3c3c;
}
body.lab-svc-rev-page .lab-svc-rev__chip.is-reply-pending {
    background: #e8f1f7;
    border-color: #b7d0e0;
    color: #3b6d8c;
}
body.lab-svc-rev-page .lab-svc-rev__chip.is-reply-published {
    background: #e8f4f2;
    border-color: #b5d8d1;
    color: #2f6f66;
}
body.lab-svc-rev-page .lab-svc-rev__chip.is-reply-rejected {
    background: #f3e8ec;
    border-color: #d9b8c4;
    color: #8a3a55;
}
body.lab-svc-rev-page .lab-svc-rev__actions {
    white-space: nowrap;
}
body.lab-svc-rev-page .lab-svc-rev__actions-row {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
body.lab-svc-rev-page .lab-svc-rev__btn {
    min-height: 32px;
    padding: 0 12px;
    font-size: 0.78rem;
    font-weight: 650;
    border-radius: 10px;
    border: 1px solid var(--lab-line);
    background: var(--lab-panel);
    color: var(--lab-ink);
    box-shadow: none;
}
body.lab-svc-rev-page .lab-svc-rev__btn:hover {
    background: rgba(23, 59, 66, 0.04);
    border-color: rgba(23, 59, 66, 0.28);
}
body.lab-svc-rev-page .lab-svc-rev__btn:focus-visible,
body.lab-svc-rev-page .lab-svc-rev__more .lab-svc-staff__more-btn:focus-visible {
    outline: 2px solid var(--lab-ink);
    outline-offset: 2px;
}
body.lab-svc-rev-page .lab-svc-rev__more {
    position: relative;
}
body.lab-svc-rev-page .lab-svc-rev__more .lab-svc-staff__more-btn {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    border-color: var(--lab-line);
    background: var(--lab-panel);
    color: var(--lab-ink);
    box-shadow: none;
}
body.lab-svc-rev-page .lab-svc-rev__more .lab-svc-staff__more-btn:hover,
body.lab-svc-rev-page .lab-svc-rev__more .lab-svc-staff__more-btn[aria-expanded='true'] {
    background: rgba(221, 237, 173, 0.45);
    border-color: rgba(23, 59, 66, 0.22);
}
body.lab-svc-rev-page .lab-svc-rev__more .lab-svc-staff__more-menu {
    right: 0;
    left: auto;
    min-width: 160px;
    z-index: 40;
    border-radius: 12px;
}
/* Open menu above sticky action cells of neighboring rows */
body.lab-svc-rev-page .lab-svc-rev__td-actions:has(.lab-svc-rev__more.is-open) {
    z-index: 6;
}
body.lab-svc-rev-page .lab-svc-rev__more.is-open {
    z-index: 7;
}
body.lab-svc-rev-page .lab-svc-rev-drawer__nick {
    margin: 0 0 8px;
    font-size: 0.8rem;
}
body.lab-svc-rev-page .lab-svc-rev-drawer__body {
    margin: 0 0 14px;
    padding: 10px 12px;
    border-radius: 10px;
    background: #f6f7f4;
    border: 1px solid var(--lab-line);
    line-height: 1.45;
    white-space: pre-wrap;
}
body.lab-svc-rev-page .lab-svc-rev-drawer__reply-lab {
    display: block;
    margin: 0 0 6px;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--lab-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
body.lab-svc-rev-page .lab-svc-rev-drawer__ta {
    width: 100%;
    box-sizing: border-box;
    min-height: 96px;
    padding: 8px 10px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    font: inherit;
    resize: vertical;
    margin-bottom: 10px;
}
body.lab-svc-rev-page .lab-svc-rev-drawer__reply-text {
    margin: 0 0 12px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #fbfcf9;
    border: 1px solid var(--lab-line);
    white-space: pre-wrap;
}
body.lab-svc-rev-page .lab-svc-rev__scores {
    margin-top: 8px;
    font-size: 0.74rem;
}
body.lab-svc-rev-page .lab-svc-rev__scores > summary {
    cursor: pointer;
    color: #3b6d8c;
    font-weight: 650;
}
body.lab-svc-rev-page .lab-svc-rev__scores-body {
    margin-top: 8px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #f1f5f9;
}
body.lab-svc-rev-page .lab-svc-rev__score-group {
    margin-bottom: 8px;
}
body.lab-svc-rev-page .lab-svc-rev__score-group-t {
    font-weight: 700;
    color: #475569;
    margin-bottom: 2px;
}
body.lab-svc-rev-page .lab-svc-rev__scores ul {
    margin: 0;
    padding-left: 16px;
}
body.lab-svc-rev-page .lab-svc-rev__inh {
    color: #94a3b8;
    font-size: 0.68rem;
}

/* LAB Service attendance — table-first layout */
body.lab-svc-att-page .lab-svc-att__toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: flex-end;
    margin: 0 0 12px;
    padding: 12px 14px;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fff;
}
body.lab-svc-att-page .lab-svc-att__field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.72rem;
    color: var(--lab-muted);
}
body.lab-svc-att-page .lab-svc-att__date,
body.lab-svc-att-page .lab-svc-att__select,
body.lab-svc-att-page .lab-svc-att__input {
    min-height: 36px;
    padding: 0 10px;
    border: 1px solid var(--lab-line);
    border-radius: 8px;
    font: inherit;
    background: #fff;
    color: var(--lab-ink);
}
body.lab-svc-att-page .lab-svc-att__select { min-width: 10.5rem; max-width: 16rem; }
body.lab-svc-att-page .lab-svc-att__toolbar-actions {
    margin-left: auto;
    display: flex;
    align-items: flex-end;
}
body.lab-svc-att-page .lab-svc-att__banner {
    margin: 0 0 14px;
    min-height: 0;
}
body.lab-svc-att-page .lab-svc-att__banner-msg {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 0.82rem;
    line-height: 1.4;
    color: var(--lab-ink);
    background: #f1f5f9;
    border: 1px solid var(--lab-line);
}
body.lab-svc-att-page .lab-svc-att__banner-msg:empty { display: none; }
body.lab-svc-att-page .lab-svc-att__banner-msg.is-err {
    color: #9c3c3c;
    background: #fef2f2;
    border-color: #fecaca;
}
body.lab-svc-att-page .lab-svc-att__banner-msg.is-ok {
    color: #166534;
    background: #ecfdf5;
    border-color: #bbf7d0;
}
body.lab-svc-att-page .lab-svc-att__banner-sync {
    margin: 6px 0 0;
    font-size: 0.74rem;
    color: #b45309;
}
body.lab-svc-att-page .lab-svc-att__banner-sync[hidden] { display: none; }
body.lab-svc-att-page .lab-svc-att__list-head {
    margin: 0 0 8px;
}
body.lab-svc-att-page .lab-svc-att__list-title {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--lab-ink);
}
body.lab-svc-att-page .lab-svc-att__list-sub {
    margin: 2px 0 0;
    font-size: 0.76rem;
    color: var(--lab-muted);
}
body.lab-svc-att-page .lab-svc-att__table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fff;
}
body.lab-svc-att-page .lab-svc-att__table {
    font-size: 0.78rem;
    min-width: 720px;
}
body.lab-svc-att-page .lab-svc-att__table th {
    background: #f8fafc;
    font-size: 0.68rem;
    letter-spacing: 0.02em;
}
body.lab-svc-att-page .lab-svc-att__table td {
    vertical-align: middle;
    padding: 10px 12px;
}
body.lab-svc-att-page .lab-svc-att__pname { font-weight: 650; color: var(--lab-ink); }
body.lab-svc-att-page .lab-svc-att__ptype { font-size: 0.68rem; color: var(--lab-muted); margin-top: 2px; }
body.lab-svc-att-page .lab-svc-att__chip {
    display: inline-flex;
    align-items: center;
    padding: 3px 9px;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 650;
    border: 1px solid transparent;
    white-space: nowrap;
}
body.lab-svc-att-page .lab-svc-att__chip--await {
    background: #eff6ff;
    border-color: #bfdbfe;
    color: #1d4ed8;
}
body.lab-svc-att-page .lab-svc-att__chip--service {
    background: #ecfdf5;
    border-color: #a7f3d0;
    color: #047857;
}
body.lab-svc-att-page .lab-svc-att__th-actions,
body.lab-svc-att-page .lab-svc-att__td-actions {
    position: sticky;
    right: 0;
    z-index: 1;
    background: #fff;
    box-shadow: -6px 0 8px -6px rgba(15, 23, 42, 0.18);
    white-space: nowrap;
}
body.lab-svc-att-page thead .lab-svc-att__th-actions {
    z-index: 2;
    background: #f8fafc;
}
body.lab-svc-att-page .lab-svc-att__btn {
    min-height: 34px;
    padding: 0 12px;
    font-weight: 650;
}
body.lab-svc-att-page .lab-svc-att__btn--in {
    background: #1e3a5f;
    border-color: #1e3a5f;
    color: #fff;
}
body.lab-svc-att-page .lab-svc-att__btn--in:hover {
    background: #152a45;
}
body.lab-svc-att-page .lab-svc-att__btn--out {
    background: #ecfdf5;
    border-color: #6ee7b7;
    color: #065f46;
}
body.lab-svc-att-page .lab-svc-att__alt {
    margin-top: 16px;
    border: 1px solid var(--lab-line);
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}
body.lab-svc-att-page .lab-svc-att__alt-sum {
    cursor: pointer;
    list-style: none;
    padding: 12px 14px;
    font-size: 0.82rem;
    font-weight: 650;
    color: var(--lab-ink);
    transition: background 160ms ease;
}
body.lab-svc-att-page .lab-svc-att__alt-sum::-webkit-details-marker { display: none; }
body.lab-svc-att-page .lab-svc-att__alt-sum:hover { background: #f8fafc; }
body.lab-svc-att-page .lab-svc-att__alt[open] .lab-svc-att__alt-sum {
    border-bottom: 1px solid var(--lab-line);
}
body.lab-svc-att-page .lab-svc-att__alt-body { padding: 12px 14px 16px; }
body.lab-svc-att-page .lab-svc-att__hint {
    margin: 0 0 12px;
    font-size: 0.76rem;
    color: var(--lab-muted);
}
body.lab-svc-att-page .lab-svc-att__scan {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
@media (max-width: 900px) {
    body.lab-svc-att-page .lab-svc-att__scan { grid-template-columns: 1fr; }
}
body.lab-svc-att-page .lab-svc-att__h {
    margin: 0 0 8px;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--lab-ink);
}
body.lab-svc-att-page .lab-svc-att__video-wrap {
    position: relative;
    background: #0f172a;
    border-radius: 10px;
    overflow: hidden;
    min-height: 160px;
}
body.lab-svc-att-page #labSvcAttVideo {
    width: 100%;
    max-height: 220px;
    display: block;
}
body.lab-svc-att-page .lab-svc-att__cam {
    margin: 6px 0 0;
    font-size: 0.72rem;
    color: var(--lab-muted);
}
body.lab-svc-att-page .lab-svc-att__pin label {
    display: block;
    font-size: 0.72rem;
    color: var(--lab-muted);
    margin: 0 0 4px;
}
body.lab-svc-att-page .lab-svc-att__pin .lab-svc-att__input,
body.lab-svc-att-page .lab-svc-att__pin .lab-svc-att__select {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 8px;
}

/* —— LAB Service messages (combat messagingPage host) —— */
body.lab-svc-page .lab-svc-chrome__msg {
    position: relative;
}
body.lab-svc-page .lab-svc-chrome__msg--unread::after {
    content: '';
    position: absolute;
    top: 6px;
    right: 6px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #dc2626;
    box-shadow: 0 0 0 2px #fff;
    pointer-events: none;
}
/* Viewport-locked inbox: page does not scroll; list/thread scroll inside; actions stay visible */
body.lab-svc-msg-page {
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-shell {
    height: 100vh;
    max-height: 100vh;
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-rail {
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-nav {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-workspace {
    height: auto;
    max-height: 100%;
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-main--messages {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    padding-bottom: 12px;
}
body.lab-svc-msg-page .lab-svc-main--messages > .lab-svc-pagehead {
    flex-shrink: 0;
    margin-bottom: 12px;
}
body.lab-svc-msg-page .lab-svc-main--messages > .lab-svc-credit {
    display: none;
}
body.lab-svc-msg-page .lab-svc-msg {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    max-height: 100%;
    background: #fff;
    border: 1px solid var(--lab-line);
    border-radius: 14px;
    padding: 10px 12px 12px;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-msg .msg-page {
    margin: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-msg .msg-layout__head.lab-svc-msg__head {
    margin: 0 0 8px;
    padding: 0;
    flex-shrink: 0;
}
body.lab-svc-msg-page .lab-svc-msg .msg-layout__head.lab-svc-msg__head .msg-page__title,
body.lab-svc-msg-page .lab-svc-msg .msg-layout__head.lab-svc-msg__head .sys-page-lead {
    display: none;
}
body.lab-svc-msg-page .lab-svc-msg .msg-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
/* Toolbar: LAB ink / ghost (not combat teal) */
body.lab-svc-msg-page .lab-svc-msg .msg-toolbar button {
    min-height: 36px;
    padding: 0 14px;
    border-radius: 10px;
    border: 1px solid var(--lab-line);
    background: var(--lab-panel);
    color: var(--lab-ink);
    font: inherit;
    font-size: 0.84rem;
    font-weight: 650;
    box-shadow: none;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}
body.lab-svc-msg-page .lab-svc-msg .msg-toolbar button:hover {
    background: rgba(23, 59, 66, 0.04);
    border-color: rgba(23, 59, 66, 0.28);
    color: var(--lab-ink);
}
body.lab-svc-msg-page .lab-svc-msg .msg-toolbar button.btn-msg-primary,
body.lab-svc-msg-page .lab-svc-msg .btn-msg-primary {
    background: var(--lab-ink);
    border-color: var(--lab-ink);
    color: #fff;
    box-shadow: none;
}
body.lab-svc-msg-page .lab-svc-msg .msg-toolbar button.btn-msg-primary:hover,
body.lab-svc-msg-page .lab-svc-msg .btn-msg-primary:hover {
    background: #0f2a30;
    border-color: #0f2a30;
    color: #fff;
    opacity: 1;
}
/* Folder switcher: same language as mcal view chips */
body.lab-svc-msg-page .lab-svc-msg .msg-folder-tabs {
    display: flex;
    gap: 2px;
    margin: 0 10px 8px;
    padding: 3px;
    border: 1px solid var(--lab-line);
    border-radius: 10px;
    background: var(--lab-soft);
    box-sizing: border-box;
}
body.lab-svc-msg-page .lab-svc-msg .msg-folder-tab {
    flex: 1;
    padding: 7px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--lab-muted);
    font: inherit;
    font-size: 0.8rem;
    font-weight: 600;
    box-shadow: none;
    transition: background 160ms ease, color 160ms ease;
}
body.lab-svc-msg-page .lab-svc-msg .msg-folder-tab:first-of-type,
body.lab-svc-msg-page .lab-svc-msg .msg-folder-tab:last-of-type {
    border-radius: 8px;
    border-right-width: 0;
}
body.lab-svc-msg-page .lab-svc-msg .msg-folder-tab--active {
    background: rgba(221, 237, 173, 0.65);
    color: var(--lab-ink);
    border-color: transparent;
    box-shadow: none;
}
body.lab-svc-msg-page .lab-svc-msg .msg-folder-tab:not(.msg-folder-tab--active):hover {
    background: transparent;
    color: var(--lab-ink);
}
/* Topic chips: ink underline instead of combat blue */
body.lab-svc-msg-page .lab-svc-msg .msg-topic-filters {
    border-bottom-color: var(--lab-line);
}
body.lab-svc-msg-page .lab-svc-msg .msg-topic-chip {
    color: var(--lab-muted);
    border-radius: 8px;
    transition: color 160ms ease, background 160ms ease, border-color 160ms ease;
}
body.lab-svc-msg-page .lab-svc-msg .msg-topic-chip:hover {
    color: var(--lab-ink);
    background: rgba(23, 59, 66, 0.04);
}
body.lab-svc-msg-page .lab-svc-msg .msg-topic-chip--active {
    color: var(--lab-ink);
    font-weight: 650;
    border-bottom-color: var(--lab-ink);
    background: transparent;
}
body.lab-svc-msg-page .lab-svc-msg .msg-list-panel__head {
    color: var(--lab-muted);
    border-bottom-color: var(--lab-line);
}
body.lab-svc-msg-page .lab-svc-msg .msg-layout {
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    max-height: none;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: none;
    border: 1px solid var(--lab-line);
}
body.lab-svc-msg-page .lab-svc-msg .msg-layout__head.lab-svc-msg__head {
    grid-column: 1 / -1;
    grid-row: 1;
}
body.lab-svc-msg-page .lab-svc-msg .msg-list-panel {
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-msg .msg-list {
    min-height: 0;
}
body.lab-svc-msg-page .lab-svc-msg .msg-thread-panel {
    background: #fff;
    min-height: 0;
    overflow: hidden;
}
body.lab-svc-msg-page .lab-svc-msg .msg-thread__body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions,
body.lab-svc-msg-page .lab-svc-msg .msg-thread-composer {
    flex-shrink: 0;
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions {
    padding: 12px 14px;
    gap: 12px 16px;
    border-top: 1px solid var(--lab-line);
    background: linear-gradient(180deg, rgba(23, 59, 66, 0.03) 0%, rgba(23, 59, 66, 0.055) 100%);
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions__main,
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions__aside {
    gap: 8px;
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions button {
    min-height: 38px;
    padding: 8px 16px;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    border-color: var(--lab-line);
    color: var(--lab-ink);
    background: #fff;
    box-shadow: 0 1px 0 rgba(23, 59, 66, 0.04);
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions button:hover {
    background: rgba(23, 59, 66, 0.04);
    border-color: rgba(23, 59, 66, 0.22);
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions button.btn-msg-primary,
body.lab-svc-msg-page .lab-svc-msg .msg-thread-composer .btn-msg-primary {
    background: var(--lab-ink, #173b42);
    border-color: var(--lab-ink, #173b42);
    color: #fff;
    box-shadow: none;
    border-radius: 10px;
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions button.btn-msg-primary:hover,
body.lab-svc-msg-page .lab-svc-msg .msg-thread-composer .btn-msg-primary:hover {
    filter: none;
    background: #0f2a30;
    border-color: #0f2a30;
    color: #fff;
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions button.btn-msg-danger {
    color: #9b2c2c;
    border-color: rgba(155, 44, 44, 0.35);
    background: #fff;
}
body.lab-svc-msg-page .lab-svc-msg .msg-order-actions button.btn-msg-danger:hover {
    background: #fdf2f2;
    border-color: rgba(155, 44, 44, 0.5);
}
@media (max-width: 900px) {
    body.lab-svc-msg-page {
        overflow: auto;
    }
    body.lab-svc-msg-page .lab-svc-shell,
    body.lab-svc-msg-page .lab-svc-workspace {
        height: auto;
        max-height: none;
        overflow: visible;
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-layout {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        height: auto;
        min-height: 0;
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-list-panel {
        grid-column: 1;
        grid-row: 2;
        max-height: min(280px, 40vh);
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-thread-panel {
        grid-column: 1;
        grid-row: 3;
        max-height: min(420px, 50vh);
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-order-actions {
        flex-direction: column;
        align-items: stretch;
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-order-actions__main,
    body.lab-svc-msg-page .lab-svc-msg .msg-order-actions__aside {
        width: 100%;
        margin-left: 0;
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-order-actions__aside {
        justify-content: stretch;
    }
    body.lab-svc-msg-page .lab-svc-msg .msg-order-actions__aside button {
        flex: 1 1 auto;
    }
}
