/* ═══════════════════════════════════════════════════════════════════════
   Админка: единые элементы для всех разделов /private/admin.
   Подключается в private/menuv2.php в режиме администратора.
   Префикс ad- — чтобы не пересекаться со стилями страниц.
   Шапка раздела · вкладки · фильтры · кнопки · статусы · таблица
   (на телефоне — карточки) · окно · поля · пусто · панель сохранения.
   ═══════════════════════════════════════════════════════════════════════ */

:root{
  --ad-primary:#E06020;
  --ad-primary-hover:#B84D18;
  --ad-brand:#FF7538;
  --ad-brand-light:#FFF2EC;
  --ad-ink:#212121;
  --ad-ink2:#555;
  --ad-muted:#6b7280;
  --ad-line:#e2efe2;
  --ad-line2:#eef1ee;
  --ad-field:#dfe3e8;
}

/* Окна старого образца (case-modal) в админке — белая шапка вместо жёлтой. */
body[class*="page-admin-"] .event-panel .case-modal__header{background:#fff;color:var(--ad-ink);border-bottom:1px solid var(--ad-line);}
body[class*="page-admin-"] .event-panel .case-modal__close:hover,
body[class*="page-admin-"] .event-panel .case-modal__close:focus{background:#f1f5f9!important;}

[v-cloak]{display:none;}
.ad-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* Подсказки (?) в админке: скрытая подсказка не расширяет страницу,
   на телефоне открывается полосой внизу экрана. */
body[class*="page-admin-"] .rc-hint__tip{display:none;}
body[class*="page-admin-"] .rc-hint:hover .rc-hint__tip,
body[class*="page-admin-"] .rc-hint:focus .rc-hint__tip{display:block;}

/* ── Страница и шапка раздела ── */
.ad-page{max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:18px;font-family:'Montserrat',sans-serif;color:var(--ad-ink);}
.ad-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.ad-head__title{margin:0;font-size:30px;font-weight:700;line-height:1.2;color:var(--ad-ink);}
.ad-spacer{flex:1 1 auto;}
.ad-count{font-size:14px;font-weight:700;padding:4px 10px;border-radius:999px;background:#f1f2f4;color:#4b5260;white-space:nowrap;}
.ad-count--warn{background:#fff4e0;color:#8a4b00;}
.ad-section-title{margin:0;font-size:20px;font-weight:700;line-height:1.2;color:var(--ad-ink);}

/* ── Вкладки раздела ── */
.ad-tabs{display:flex;gap:4px;padding:4px;background:#fff;border:1px solid var(--ad-line);border-radius:999px;align-self:flex-start;max-width:100%;box-sizing:border-box;overflow-x:auto;scrollbar-width:none;}
.ad-tabs::-webkit-scrollbar{display:none;}
.ad-tab{flex:0 0 auto;padding:10px 16px;border:0;border-radius:999px;background:transparent;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;color:var(--ad-ink2);text-decoration:none;white-space:nowrap;cursor:pointer;}
.ad-tab:hover{color:var(--ad-primary-hover);}
.ad-tab--active,.ad-tab[aria-current="page"]{background:var(--ad-brand-light);color:var(--ad-primary-hover);font-weight:700;}
.ad-tab__n{opacity:.7;margin-left:4px;}

/* ── Фильтры и поиск ── */
.ad-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.ad-chip{flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid var(--ad-field);border-radius:999px;background:#fff;color:#333;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;}
.ad-chip:hover{border-color:var(--ad-brand);}
.ad-chip--active{border-color:var(--ad-brand);background:var(--ad-brand-light);color:var(--ad-primary-hover);font-weight:700;}
.ad-search{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border:1px solid var(--ad-field);border-radius:30px;background:#fff;color:#8a9099;box-sizing:border-box;flex:2 1 260px;}
.ad-search:focus-within{border-color:var(--ad-brand);}
.ad-toolbar--wrap > .ad-select{flex:1 1 180px;min-width:0;}
.ad-search input{border:0;outline:none;flex:1;min-width:0;font-family:inherit;font-size:14px;background:transparent;color:var(--ad-ink);}
.ad-select{height:44px;padding:0 14px;border:1px solid var(--ad-field);border-radius:30px;background:#fff;font-family:inherit;font-size:14px;color:var(--ad-ink);}

/* ── Кнопки ── */
.ad-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:30px;background:transparent;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none;white-space:nowrap;box-sizing:border-box;transition:background .12s,border-color .12s,color .12s;}
.ad-btn:disabled{opacity:.55;cursor:default;}
.ad-btn--primary,a.ad-btn--primary{background:var(--ad-primary);border-color:var(--ad-primary);color:#fff;font-weight:700;}
.ad-btn--primary:hover:not(:disabled){background:var(--ad-primary-hover);border-color:var(--ad-primary-hover);color:#fff;}
.ad-btn--secondary,a.ad-btn--secondary{background:#fff;border-color:var(--ad-field);color:var(--ad-ink);}
.ad-btn--secondary:hover:not(:disabled){border-color:var(--ad-brand);color:var(--ad-primary-hover);}
.ad-btn--soft,a.ad-btn--soft{background:var(--ad-brand-light);color:var(--ad-primary-hover);}
.ad-btn--soft:hover:not(:disabled){background:#FFE2CC;}
.ad-btn--ghost,a.ad-btn--ghost{color:var(--ad-primary-hover);padding:0 12px;}
.ad-btn--ghost:hover:not(:disabled){background:var(--ad-brand-light);color:var(--ad-primary-hover);}
.ad-btn--danger,a.ad-btn--danger{color:#c62828;padding:0 12px;}
.ad-btn--danger:hover:not(:disabled){background:#fce4ec;color:#c62828;}
.ad-btn--sm{min-height:40px;padding:0 14px;font-size:13px;}
.ad-btn--icon{width:44px;min-width:44px;padding:0;}
.ad-btn--sm.ad-btn--icon{width:40px;min-width:40px;}

/* ── Статусы и метки ── */
.ad-badge{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;justify-self:start;font-size:12px;font-weight:700;line-height:1.3;padding:4px 10px;border-radius:999px;background:#f1f2f4;color:#4b5260;white-space:nowrap;}
.ad-badge--dot::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;}
.ad-badge--ok{background:#e7f6ec;color:#1d6b3c;}
.ad-badge--warn{background:#fff4e0;color:#8a4b00;}
.ad-badge--err{background:#fdecea;color:#a12b1f;}
.ad-badge--info{background:#eef4ff;color:#1648b8;}
.ad-tag{align-self:flex-start;font-size:12px;font-weight:600;padding:3px 9px;border-radius:6px;background:#f1f2f4;color:#4b5260;white-space:nowrap;}
.ad-tag--blue{background:#eef4ff;color:#1648b8;}
.ad-tag--green{background:#e7f6ec;color:#1d6b3c;}
.ad-tag--violet{background:#f3eefe;color:#5b3db0;}
.ad-fmt{flex:0 0 auto;font-size:10.5px;font-weight:800;padding:2px 6px;border-radius:4px;background:#e8efff;color:#1648b8;letter-spacing:.02em;}
.ad-fmt--xlsx{background:#e6f4ea;color:#1d6b3c;}
.ad-code{display:inline-flex;align-items:center;gap:5px;font-family:'Roboto Mono',Consolas,monospace;font-size:12.5px;font-weight:600;padding:4px 8px;border-radius:6px;background:var(--ad-brand-light);color:var(--ad-primary-hover);}

/* ── Карточка и таблица (на телефоне строки становятся карточками) ── */
.ad-card{background:#fff;border-radius:16px;box-shadow:0 1.5px 7px rgba(0,0,0,.06);}
.ad-table{background:#fff;border-radius:16px;box-shadow:0 1.5px 7px rgba(0,0,0,.06);overflow:hidden;font-size:14px;color:var(--ad-ink);}
.ad-table__head,.ad-row{display:grid;grid-template-columns:var(--ad-cols,minmax(0,1fr));gap:12px;align-items:center;padding:14px 20px;}
.ad-table__head{padding:12px 20px;font-size:12px;font-weight:700;color:var(--ad-muted);text-transform:uppercase;letter-spacing:.04em;}
.ad-row{border-top:1px solid var(--ad-line2);}
.ad-row:hover{background:#fcfcfd;}
.ad-row--muted{color:var(--ad-muted);}
.ad-cell{min-width:0;}
.ad-actions{display:flex;gap:2px;justify-content:flex-end;align-items:center;flex-wrap:wrap;}
.ad-mlabel{display:none;}
.ad-sub{font-size:13px;color:var(--ad-muted);}
.ad-ident{display:flex;align-items:center;gap:14px;min-width:0;}
.ad-ident__icon{width:40px;height:40px;border-radius:10px;background:var(--ad-brand-light);color:var(--ad-primary-hover);display:flex;align-items:center;justify-content:center;flex:0 0 auto;font-size:17px;}
.ad-ident__icon--muted{background:#f1f2f4;color:#8a9099;}
.ad-ident__body{display:flex;flex-direction:column;gap:5px;min-width:0;}
.ad-ident__title{font-size:15px;font-weight:700;color:var(--ad-ink);overflow-wrap:anywhere;}
.ad-file-line{display:flex;align-items:center;gap:8px;font-weight:600;overflow-wrap:anywhere;}
.ad-warn-text{display:inline-flex;align-items:center;gap:6px;color:#b45309;font-weight:600;}
.ad-empty{padding:28px 16px;text-align:center;color:var(--ad-muted);}

/* ── Окно ── */
.ad-modal{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;}
.ad-modal__dialog{background:#fff;border-radius:16px;width:100%;max-width:640px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 24px 64px rgba(0,0,0,.25);font-family:'Montserrat',sans-serif;color:var(--ad-ink);text-align:left;}
.ad-modal__dialog--wide{max-width:860px;}
.ad-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--ad-line);}
.ad-modal__title{margin:0;font-size:19px;font-weight:700;line-height:1.2;color:var(--ad-ink);}
.ad-modal__sub{font-size:14px;color:var(--ad-ink2);font-weight:500;margin-top:4px;}
.ad-modal__close{width:44px;height:44px;margin:-10px -12px -10px 0;background:none;border:0;border-radius:12px;font-size:26px;line-height:1;color:var(--ad-muted);cursor:pointer;flex:0 0 auto;}
.ad-modal__close:hover{color:var(--ad-ink);background:#f1f5f9;}
.ad-modal__body{padding:16px 24px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:18px;}
.ad-modal__footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 24px;border-top:1px solid var(--ad-line);}

/* ── Поля ── */
.ad-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
.ad-label{display:flex;align-items:center;font-size:14px;font-weight:600;color:var(--ad-ink);margin:0;}
.ad-input{height:46px;box-sizing:border-box;padding:0 14px;border:1px solid var(--ad-field);border-radius:10px;font-family:inherit;font-size:15px;color:var(--ad-ink);background:#fff;width:100%;}
.ad-input:focus{border-color:var(--ad-brand);outline:none;box-shadow:0 0 0 3px rgba(255,117,56,.18);}
select.ad-input{padding:0 10px;}
textarea.ad-input{height:auto;padding:12px 14px;resize:vertical;}
.ad-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.ad-choice{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;border:1px solid var(--ad-field);border-radius:12px;background:#fff;cursor:pointer;font-size:14px;font-weight:600;margin:0;}
.ad-choice--on{border:1.5px solid var(--ad-brand);background:#fffaf7;}
.ad-choice input{width:18px;height:18px;accent-color:var(--ad-primary);margin:0;}
.ad-drop{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 16px;border:2px dashed #d6d3d1;border-radius:14px;background:#fafafa;text-align:center;cursor:pointer;color:var(--ad-ink2);}
.ad-drop:hover,.ad-drop--over{border-color:var(--ad-brand);background:#FFF8F4;}
.ad-drop i{font-size:26px;color:var(--ad-primary);}
.ad-chosen{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid #FFD6BC;border-radius:12px;background:var(--ad-brand-light);}
.ad-chosen__icon{font-size:26px;color:var(--ad-primary);flex:0 0 auto;}
.ad-chosen__body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto;}

/* ── Сообщения, панель сохранения ── */
.ad-msg{padding:10px 14px;border-radius:12px;font-size:14px;}
.ad-msg--ok{background:#ecfdf3;color:#166534;}
.ad-msg--err{background:#fee2e2;color:#991b1b;}
.ad-warn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:#fff7ea;border:1px solid #f6dcae;font-size:13px;color:#6b4a1a;}
/* Панель сохранения — светло-серая и полупрозрачная: под ней видна размытая страница. */
.ad-savebar{position:sticky;bottom:12px;z-index:50;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 10px 10px 18px;border-radius:14px;background:rgba(228,231,235,.62);-webkit-backdrop-filter:blur(12px) saturate(1.3);backdrop-filter:blur(12px) saturate(1.3);border:1px solid rgba(0,0,0,.07);color:var(--ad-ink);box-shadow:0 8px 24px rgba(0,0,0,.10);}
.ad-savebar__text{flex:1 1 200px;font-weight:600;}
.ad-savebar .ad-btn--ghost{color:#4b5260;}
.ad-savebar .ad-btn--ghost:hover:not(:disabled){background:rgba(0,0,0,.06);color:var(--ad-ink);}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ad-savebar{background:rgba(236,238,241,.96);}}

@media (max-width:767px){
  .ad-head__title{font-size:24px;}
  .ad-head__aux{order:2;}
  .ad-toolbar{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;}
  .ad-toolbar--wrap{flex-wrap:wrap;overflow:visible;padding:0;}
  .ad-table__head{display:none;}
  .ad-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:16px;}
  .ad-actions{justify-content:flex-start;}
  .ad-mlabel{display:block;font-size:12px;font-weight:600;color:#8a9099;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;}
  .ad-grid2{grid-template-columns:minmax(0,1fr);}
  .ad-modal{padding:0;align-items:stretch;}
  .ad-modal__dialog,.ad-modal__dialog--wide{max-width:none;max-height:none;height:100%;border-radius:0;}
  .ad-modal__header{padding:12px 12px 12px 16px;}
  .ad-modal__close{margin:-6px -4px -6px 0;}
  .ad-modal__body{padding:16px;}
  .ad-modal__footer{padding:12px 16px 16px;}
  .ad-modal__footer .ad-btn--primary{flex:1 1 100%;order:9;}
  body[class*="page-admin-"] .rc-hint__tip{position:fixed;top:auto;bottom:16px;left:16px;right:16px;width:auto;max-width:none;font-size:13.5px;}
}
