/* app.css unified (regenerated) 2025-09-17T10:50:30.992829Z */


/* === Forms & Tables base (safe consolidation) === */
.vx-table{
  width: 100%;
  table-layout: fixed;
}.vx-cell label{
  margin: 6px 0;
  font-size: 12px;
}.vx-cell .input, .vx-cell select, .vx-cell textarea{
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}/* === End Forms & Tables base === */
:root{
  --bg:#0b1016; --panel:#0f1723; --ink:#eaf2ff; --muted:#8ea1bf;
  --line:#1b2a44; --tile:#131d2b; --tile2:#172234;
  --accent:#2e6bff; --ok:#2abf77; --warn:#c9a227; --silver:#808a9a; --danger:#d63a3a;
  --gp:#1a2435; --tpN:#a33232; --tpS:#6c7586; --tpG:#d8b84a;
}*{box-sizing:border-box}html, body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 system-ui,Segoe UI,Roboto,Arial}header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#0a1420;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.title{font-weight:800;letter-spacing:.35px}.tab.active{color:var(--ink);background:#162238}.wrap{max-width:1120px;margin:18px auto;padding:0 14px;display:grid;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:0 10px 24px rgba(0,0,0,.35)}.panel h1{margin:0 0 8px;font-size:18px}.row{display:flex;gap:16px;flex-wrap:wrap}.col{flex:1 1 280px;min-width:260px}label{display:block;color:var(--muted);margin:8px 0 6px;font-size:12px}.input{width:100%;height:40px;border:1px solid var(--line);background:#0e1726;color:var(--ink);border-radius:10px;padding:0 12px}.input:focus{border-color:#2e6bff;box-shadow:0 0 0 2px rgba(46,107,255,.2)}.checkbox{display:flex;align-items:center;gap:8px;margin:6px 0}.checkbox input{accent-color:#2e6bff}.btn{height:38px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:#101a28;color:var(--ink);cursor:pointer}.btn.primary{background:#172447;border-color:#22345c}.btn.primary:hover{background:#1d2c59}.btn.danger{background:#3a1a21;border-color:#6a2734}.right{display:flex;justify-content:flex-end;gap:10px}.table{width:100%;border-collapse:collapse}.table th, .table td{border-bottom:1px dashed var(--line);padding:8px 6px;font-size:13px}/* Calendar */
.kc-cal-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin:4px 0 10px}.kc-cal-title{text-align:center;font-weight:800}.kc-cal-nav{display:flex}.kc-cal-nav.left{justify-content:flex-start}.kc-cal-nav.right{justify-content:flex-end}.kc-cal-nav button{min-width:92px;height:34px;border-radius:10px;border:1px solid var(--line);background:#101a28;color:var(--ink);cursor:pointer}.kc-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.kc-day.inactive{opacity:.35;cursor:default
}.kc-day.gp{background:var(--gp)
}.kc-slots-sub{text-align:center;color:var(--muted);margin:0 0 10px}.kc-slot.busy{opacity:.4;pointer-events:none}.modal-back{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);align-items:center;justify-content:center;z-index:20}.modal{background:#0f1726;border:1px solid var(--line);border-radius:14px;padding:16px;max-width:420px;width:92%}.modal .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}
/* TP active row */
.table tr.active{ background:#1d2a3f; }*{box-sizing:border-box}html, body{margin:0;padding:0;background:var(--bg);color:var(--ink);
  font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial}a{color:inherit;text-decoration:none}.container{max-width:1080px;margin:24px auto;padding:0 16px}h1{font-size:26px;margin:0 0 12px}h2{font-size:18px;margin:24px 0 8px;color:var(--muted)}.kc-header .wrap{max-width:1160px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:16px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.input{padding:10px 12px;border-radius:10px;border:1px solid #253046;background:#0e131b;color:var(--ink);outline:none}.input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.25)}/* Utilities & Layout */
.container{max-width:1160px;margin:24px auto;padding:0 16px}.row{display:flex;gap:12px;flex-wrap:wrap}.col{flex:1 1 0;min-width:220px}.input{display:inline-block;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:#0f1723;color:var(--ink)}.input:disabled{opacity:.6;cursor:not-allowed}/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid var(--line);
  background:#101a28;color:var(--ink);cursor:pointer;transition:.15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.25)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn.primary{background:var(--accent);color:#fff;border-color:transparent}.btn.danger{background:var(--danger);color:#fff;border-color:transparent}/* Header */
.kc-header{position:sticky;top:0;z-index:2000;background:linear-gradient(180deg,#141927 0%, #101523 100%);
  border-bottom:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.35)}.kc-header .wrap{max-width:1160px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:16px}.kc-header .inner{max-width:1160px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:16px}.kc-header .brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.2px}.kc-header .nav a{display:inline-block;padding:8px 10px;border-radius:10px;color:var(--muted)}.kc-header .nav a[aria-disabled="true"]{opacity:.5;pointer-events:none}/* === No duplicate selectors found to merge from kc-admin-calendar.css === */

/* === merged kc-admin-calendar.css === */
/* midDraft */
#midDraft .vx-table{width:100%; table-layout:fixed; border-collapse:separate; border-spacing:16px 14px;}#midDraft .vx-table td{vertical-align:top; min-width:0;}#midDraft .vx-cell label{display:block;margin:6px 0 6px;color:var(--muted);font-size:12px}#midDraft .vx-table td{vertical-align:bottom !important;}/* gpSection */
/* GP table layout (scoped like TP) */
#gpSection .vx-table{width:100%; table-layout:fixed; border-collapse:separate; border-spacing:16px 14px;}#gpSection .vx-table td{vertical-align:top; min-width:0;}#gpSection .vx-cell label{display:block;margin:6px 0 6px;color:var(--muted);font-size:12px}#gpSection .pair{display:flex; gap:8px; align-items:center; flex-wrap:nowrap;}#gpSection .buttons{display:flex; gap:12px; justify-content:flex-end; margin-top:16px}/* tpSection */
/* TP table layout (scoped) */
#tpSection .vx-table{width:100%; table-layout:fixed; border-collapse:separate; border-spacing:16px 14px;}#tpSection .vx-table td{vertical-align:top; min-width:0;}#tpSection .vx-table .valign-bottom{vertical-align:bottom;}#tpSection .vx-cell label{display:block;margin:6px 0 6px;color:var(--muted);font-size:12px}#tpSection .pair{display:flex; gap:0; align-items:baseline; flex-wrap:nowrap;}#tpSection .pair > span{ display:inline-block; margin-right:40pt; white-space:nowrap; }#tpSection .buttons{display:flex; gap:12px; justify-content:flex-end; margin-top:16px}/* responsive */
/* Mobile-only: detach table layout and stack cells full-width (<=640px) */


/* === BEGIN: merged from index.css === */
#inputDraft .vx-cell .input{
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  text-align: left !important;
}#inputDraft .vx-table{
  width: 100%;
  table-layout: fixed;
}#inputDraft .vx-cell{
  text-align: left;
}#client-form .buttons{
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 16px;
}/* === Consolidated mobile (<=640px) rules === */
@media (max-width: 640px){
/* Turn tables into 1-col grids */
  #tpSection .vx-table,
  #gpSection .vx-table,
  #midDraft .vx-table {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px 0;
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
  }
  /* Let table rows disappear as containers; their cells flow into the grid */
  #tpSection .vx-table tr,
  #gpSection .vx-table tr,
  #midDraft .vx-table tr {
    display: contents;
  }
  /* Each cell becomes a block spanning full width */
  #tpSection .vx-table td,
  #gpSection .vx-table td,
  #midDraft .vx-table td {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    vertical-align: top;
  }
  /* Nice spacing inside cells */
  #tpSection .vx-cell,
  #gpSection .vx-cell,
  #midDraft .vx-cell {
    padding: 10px 0;
  }
  /* Inputs/selects should stretch */
  #tpSection .vx-cell .input,
  #gpSection .vx-cell .input,
  #midDraft .vx-cell .input,
  #tpSection .vx-cell select,
  #gpSection .vx-cell select,
  #midDraft .vx-cell select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  /* Pairs (like Silver/Gold) stack so fields can go full width */
  #tpSection .vx-cell .pair,
  #gpSection .vx-cell .pair,
  #midDraft .vx-cell .pair {
    display: block;
  }
  /* Keep action buttons aligned to the right */
  #tpSection .buttons,
  #gpSection .buttons {
    justify-content: flex-end;
  }

#inputDraft .vx-table {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px 0;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

#inputDraft .vx-table tr {
  display: contents;
}

#inputDraft .vx-table td {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  vertical-align: top;
}

#inputDraft .vx-cell {
  padding: 10px 0;
}

#inputDraft .vx-cell .input,
  #inputDraft .vx-cell select,
  #inputDraft .vx-cell textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}
.chip-day { display:inline-block; padding:2px 8px; border-radius:999px; font-size:12px; border:1px solid #ddd; }
.chip-day.gp-weekdays { background:#eef5ff; }
.chip-day.gp-saturday { background:#fff6e6; }
.chip-day.gp-sunday   { background:#ffe9e9; }
.chip-day.tpN         { background:#eef9f1; }
.chip-day.tpS         { background:#f0f0ff; }
.chip-day.tpG         { background:#fff0b3; }


}/* === additions: toggle row and manual field (2025-09-21) === */
.row-tight{ margin-top: 6px; margin-bottom: 6px; display:flex; align-items:center; }.chk{ display:flex; gap:8px; align-items:center; user-select:none; }#manualBrandField .hint{ display:block; font-size:12px; opacity:.6; margin-top:6px; }input[disabled]{ opacity:.6; cursor:not-allowed; }======
/* ===== THEME-SAFE PATCH (light vs dark), minimal scope ===== */

:root{
  /* при желании можем вынести радиусы в токены */
  --radius-modal: 12px;
  --radius-toast: 10px;
}

/* Модалка (карточка) */
.modal, .modal-dialog, .modal__panel, .kc-modal, .soft-modal, .soft-dialog {
  border-radius: var(--radius-modal) !important;
  overflow: hidden; /* чтобы внутренности тоже скруглялись */
  background: var(--panel);
  color: var(--ink);
  border: 1px solid var(--line);
  box-shadow: 0 24px 64px rgba(0,0,0,.45);
}

/* Бэкдроп */
.modal-backdrop, .modal__backdrop, .soft-backdrop, .overlay, .kc-overlay {
  background: rgba(0,0,0,.45) !important;
}

/* Кнопка ОК/primary в модалке (если есть общий класс) */
.modal .btn.primary, .soft-modal .btn.primary, .kc-modal .btn.primary {
  border-radius: 12px;
}

/* Угловой «баббл»-тост, если он есть */
.toast, .toast-bubble, #kc-toast-host-bubble > div {
  border-radius: var(--radius-toast) !important;
}
/* === smoke layout (moved from inline) === */
.grid-panels{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.grid-panels .span-2{ grid-column: 1 / -1; }
@media (max-width: 820px){ .grid-panels{ grid-template-columns: 1fr; } .grid-panels .span-2{ grid-column: auto; } }
.panel + .grid-panels{ margin-top:16px; }

/* === smoke outputs === */
pre.panel-like, .panel-like{
  background: var(--kc-slot-bg);
  color: var(--kc-slot-fg);
  border: 1px solid var(--line);
  border-radius: 14px;
}
====
/* 1) Подсказка нативным контролам: какая тема активна */
html[data-theme="white"] { color-scheme: light; }
html[data-theme="black"] { color-scheme: dark; }

/* 2) Базовый вид полей под тему (если ещё нет) */
input[type="date"],
input[type="datetime-local"] {
  background: var(--field);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 10px;
}

/* 3) Убираем тёмную «внутреннюю плашку» у subfields WebKit */
input[type="date"]::-webkit-datetime-edit,
input[type="date"]::-webkit-datetime-edit-fields-wrapper,
input[type="date"]::-webkit-datetime-edit-text,
input[type="date"]::-webkit-datetime-edit-day-field,
input[type="date"]::-webkit-datetime-edit-month-field,
input[type="date"]::-webkit-datetime-edit-year-field,
input[type="datetime-local"]::-webkit-datetime-edit,
input[type="datetime-local"]::-webkit-datetime-edit-fields-wrapper,
input[type="datetime-local"]::-webkit-datetime-edit-text,
input[type="datetime-local"]::-webkit-datetime-edit-hour-field,
input[type="datetime-local"]::-webkit-datetime-edit-minute-field,
input[type="datetime-local"]::-webkit-datetime-edit-second-field,
input[type="datetime-local"]::-webkit-datetime-edit-ampm-field {
  background: transparent;
  color: var(--ink);
}

/* 4) Иконка календаря — чтоб не «чернела» в тёмной теме */
html[data-theme="black"] input[type="date"]::-webkit-calendar-picker-indicator,
html[data-theme="black"] input[type="datetime-local"]::-webkit-calendar-picker-indicator {
  filter: invert(1) brightness(1.2);
}

/* Универсальный заголовок секции / таблицы (для панели менеджера, ТП и других страниц) */
.section-title {
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    margin: 18px 0 24px;
    color: var(--text);
    letter-spacing: 0.3px;
}

