/* —— Личный кабинет ICS —— */
body.cabinet{padding-bottom:72px;min-height:100vh}
.cab-top{position:sticky;top:0;z-index:30;background:rgba(var(--surface-rgb),.88);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border)}
.cab-top__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;flex-wrap:wrap}
.cab-top__right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cab-who{color:var(--muted);font-size:.88rem}
.cab-who b{color:var(--text)}
.cab-biz-select{font-size:.88rem;font-weight:600;border-radius:10px;padding:8px 2.4em 8px 12px;min-width:180px}
.cab-biz-select:focus{border-color:var(--accent)}
.form-grid select,.sub-panel .form-grid select,.add-row select{padding-right:2.4em}
.plat-select{
  font-size:.8rem;font-weight:700;min-width:122px;max-width:150px;min-height:36px;
  padding:7px 2.2em 7px 10px;border-radius:10px;width:auto}
.chan-picks{display:flex;gap:5px;flex-wrap:wrap}
.chan-picks label{
  display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;color:var(--muted);
  padding:6px 9px;border-radius:8px;border:1px solid var(--border2);cursor:pointer;user-select:none;
  background:rgba(255,255,255,.02)}
.chan-picks label:has(input:checked){color:var(--text);border-color:var(--accent);background:var(--accent-soft)}
.chan-picks input{accent-color:var(--accent);width:14px;height:14px;margin:0}
.chan-picks .ico-msg{width:20px;height:20px;border-radius:6px}
.vip-badge{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:700;padding:5px 12px;border-radius:999px;
  color:#3a2a00;background:linear-gradient(135deg,#ffd77a,#f5a623);box-shadow:0 4px 14px -6px rgba(245,166,35,.7);white-space:nowrap}

.cab-main{padding-top:28px}
.cab-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.cab-head h1{font-family:var(--head);font-size:clamp(1.35rem,2.6vw,1.75rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}
.cab-head p{color:var(--muted);font-size:.92rem;margin-top:6px;max-width:520px}

.cab-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:5px;border-radius:16px;border:1px solid var(--border);
  background:rgba(var(--surface-rgb),.55);margin-bottom:28px}
.cab-tab{flex:1 1 auto;min-width:140px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 14px;border:0;border-radius:12px;background:transparent;color:var(--muted);cursor:pointer;
  font-family:var(--font);font-weight:700;font-size:.86rem;transition:background .2s,color .2s,box-shadow .2s}
.cab-tab:hover{color:var(--text);background:rgba(255,255,255,.03)}
.cab-tab.active{color:var(--text);background:linear-gradient(135deg,rgba(77,141,255,.18),rgba(34,211,238,.08));
  box-shadow:inset 0 0 0 1px var(--accent-brd)}
.cab-tab__num{font-family:var(--head);font-size:.68rem;letter-spacing:.06em;color:var(--accent);opacity:.85}

.cab-panel{display:none;animation:cabIn .28s ease}
.cab-panel.active{display:block}
@keyframes cabIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cab-panel{animation:none}}

.cab-card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--border);
  border-radius:20px;padding:26px 24px;margin-bottom:18px}
.cab-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:20px;flex-wrap:wrap}
.cab-card__title{font-family:var(--head);font-weight:700;font-size:1.05rem}
.cab-card__sub{color:var(--muted);font-size:.88rem;margin-top:4px}

.badge{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:700;padding:6px 11px;border-radius:999px;
  border:1px solid var(--border2);color:var(--muted);white-space:nowrap}
.badge--ok{color:var(--green);border-color:rgba(126,231,135,.35);background:rgba(126,231,135,.08)}
.badge--warn{color:#ffc15e;border-color:rgba(255,193,94,.35);background:rgba(255,193,94,.1)}
.badge--off{color:var(--muted);background:rgba(255,255,255,.03)}
.badge__dot{width:7px;height:7px;border-radius:50%;background:currentColor}

.kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px}
.kv__item{min-width:0}
.kv__label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:5px}
.kv__value{font-size:.98rem;font-weight:600;word-break:break-word}
.kv__value.muted,.muted{color:var(--muted)}

.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;color:var(--muted)}
.form-grid label.full{grid-column:1/-1}
.form-grid input,.form-grid select,.form-grid textarea,.field-input{
  font-family:var(--font);font-size:.95rem;color:var(--text);background-color:rgba(255,255,255,.03);
  border:1px solid var(--border2);border-radius:12px;padding:11px 13px;outline:none;width:100%}
.form-grid select{padding-right:2.4em;background-color:var(--panel2)}
.form-grid textarea{min-height:96px;resize:vertical}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.field-input:focus{border-color:var(--accent)}
.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.form-hint{font-size:.8rem;color:var(--faint);margin-top:10px;line-height:1.45}
.form-msg{font-size:.86rem;margin-top:10px}
.form-msg.ok{color:var(--green)}
.form-msg.err{color:var(--red)}

/* messengers */
.msg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.msg-col{display:flex;flex-direction:column;gap:14px;background:linear-gradient(180deg,var(--panel2),var(--panel));
  border:1px solid var(--border);border-radius:20px;padding:22px 20px;min-height:100%}
.msg-col__brand{display:flex;align-items:center;gap:12px}
.msg-col__icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex-shrink:0;
  overflow:hidden;border:0;box-shadow:0 8px 20px -10px rgba(0,0,0,.55)}
.msg-col__icon svg{width:100%;height:100%;display:block}
.msg-col__icon--wa{background:#fff}
.msg-col__icon--tg,.msg-col__icon--max{background:transparent}

/* compact messenger icons (buttons, table) */
.ico-msg{width:18px;height:18px;display:inline-block;flex-shrink:0;border-radius:5px;
  background-size:contain;background-repeat:no-repeat;background-position:center;vertical-align:middle}
.ico-msg--tg{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='120' y1='0' x2='120' y2='240'%3E%3Cstop offset='0' stop-color='%2337bbfe'/%3E%3Cstop offset='1' stop-color='%23007dbb'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='120' cy='120' r='120' fill='url(%23g)'/%3E%3Cpath d='M180 68 54 116c-8 3-8 8-1 10l32 10 12 39c2 4 3 5 6 5 3 0 4-1 6-3l17-16 34 25c6 3 10 2 12-6l22-104c2-9-3-13-10-10z' fill='%23fff'/%3E%3C/svg%3E")}
.ico-msg--wa{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'%3E%3Ccircle cx='120' cy='120' r='120' fill='%23fff'/%3E%3Cpath fill='%2325d366' d='M120 28a92 92 0 0 0-79 139l-13 46 47-12A92 92 0 1 0 120 28zm0 20a72 72 0 1 1-38 133l-3-2-27 7 7-26-2-3A72 72 0 0 1 120 48z'/%3E%3Cpath fill='%2325d366' d='M96 74c-2-4-4-4-6-4h-5c-2 0-5 1-8 4-3 3-10 10-10 25s10 28 12 30c2 3 20 32 50 43 25 9 30 7 35 7 5-1 16-7 18-13 2-6 2-12 2-13-1-1-2-2-5-3l-19-9c-3-1-5-2-7 1l-8 10c-1 2-3 2-5 1-3-1-13-5-24-15-9-8-15-18-17-21-1-2 0-4 1-5l4-5c1-2 2-3 3-5 1-2 0-4 0-5z'/%3E%3C/svg%3E")}
.ico-msg--max{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'%3E%3Cdefs%3E%3ClinearGradient id='m' x1='20' y1='20' x2='220' y2='220'%3E%3Cstop offset='0' stop-color='%232ab6f6'/%3E%3Cstop offset='.55' stop-color='%234d5cf0'/%3E%3Cstop offset='1' stop-color='%239b3ff0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='8' y='8' width='224' height='224' rx='56' fill='url(%23m)'/%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M120 46c-42 0-74 30-74 71 0 24 12 44 32 57v18c0 3 3 4 5 3l20-12c5 1 11 2 17 2 42 0 74-30 74-71s-32-71-74-71zm0 42a29 29 0 1 1 0 58 29 29 0 0 1 0-58z'/%3E%3C/svg%3E")}
.msg-col h3{font-family:var(--head);font-size:1rem;font-weight:700}
.msg-col__status{font-size:.82rem;color:var(--muted)}
.msg-col__status.on{color:var(--green);font-weight:600}
.msg-steps{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1}
.msg-steps li{display:flex;gap:10px;font-size:.86rem;color:var(--muted);line-height:1.4}
.msg-steps b{flex-shrink:0;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;
  font-size:.72rem;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-brd)}
.msg-col__actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}
.msg-col--soon{opacity:.72}
.msg-col__soon-note{margin:0;font-size:.9rem;color:var(--muted);line-height:1.45;flex:1}
.msg-steps code{font-family:ui-monospace,monospace;font-size:.78rem;color:var(--cyan);background:var(--deep);
  padding:1px 6px;border-radius:5px}

/* database */
.db-ways{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;margin-bottom:18px}
.crm-list{display:grid;gap:10px;margin:14px 0}
.crm-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;
  border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.02)}
.crm-item b{font-size:.92rem}
.crm-item span{display:block;font-size:.78rem;color:var(--muted);margin-top:2px}
.dropzone{border:1.5px dashed var(--border2);border-radius:18px;padding:36px 22px;text-align:center;
  background:rgba(255,255,255,.015);cursor:pointer;transition:border-color .2s,background .2s}
.dropzone:hover,.dropzone.drag{border-color:var(--accent);background:var(--accent-soft)}
.dropzone strong{display:block;font-size:1rem;margin-bottom:6px}
.dropzone p{color:var(--muted);font-size:.88rem}
.dropzone .links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.sync-line{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  margin-bottom:14px;font-size:.86rem;color:var(--muted)}

.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:16px}
table.cab-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:720px}
.cab-table th,.cab-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}
.cab-table th{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-weight:700;background:var(--panel)}
.cab-table tbody tr:hover{background:rgba(255,255,255,.02)}
.chip{display:inline-block;font-size:.7rem;padding:3px 9px;border-radius:999px;border:1px solid var(--border2);color:var(--muted)}
.chip[data-src="landing"]{color:var(--accent);border-color:var(--accent-brd)}
.chip[data-src="excel"]{color:var(--green);border-color:rgba(126,231,135,.3)}
.chip[data-src="1c"],.chip[data-src="bitrix24"]{color:#5eb0ff;border-color:rgba(94,176,255,.35)}
.chip[data-src="api"]{color:var(--cyan);border-color:rgba(34,211,238,.3)}
.chip[data-src="telegram_bot"]{color:#7ee787;border-color:rgba(126,231,135,.35)}
.empty{padding:48px;text-align:center;color:var(--muted)}
.del{background:none;border:0;color:var(--red);cursor:pointer;font-size:1rem;opacity:.65}
.del:hover{opacity:1}
.act-row{display:flex;gap:8px;align-items:center}
.checks{display:flex;gap:8px;flex-wrap:wrap}
.bots{display:flex;gap:10px;flex-wrap:wrap}
.bots label{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--muted);cursor:pointer;user-select:none}
.bots input{accent-color:var(--accent);width:15px;height:15px}

.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:14px}
.toolbar input[type=search]{flex:1;min-width:200px}

/* templates */
.tpl-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.tpl-vars{display:flex;flex-wrap:wrap;gap:6px}
.tpl-var{font-size:.74rem;font-weight:700;padding:5px 9px;border-radius:8px;border:1px solid var(--accent-brd);
  color:var(--accent);background:var(--accent-soft);font-family:ui-monospace,monospace}
.tpl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tpl-card{border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,var(--panel2),var(--panel));
  padding:20px;display:flex;flex-direction:column;gap:12px}
.tpl-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.tpl-card h3{font-family:var(--head);font-size:.95rem;font-weight:700}
.tpl-card__body{font-size:.9rem;color:var(--muted);line-height:1.5;white-space:pre-wrap;flex:1}
.tpl-card__actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.switch{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none;font-size:.8rem;color:var(--muted);font-weight:600}
.switch input{position:absolute;opacity:0;width:0;height:0}
.switch__track{width:40px;height:22px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--border2);
  position:relative;transition:background .2s}
.switch__track::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;
  background:var(--text);transition:transform .2s}
.switch input:checked + .switch__track{background:rgba(126,231,135,.25);border-color:rgba(126,231,135,.45)}
.switch input:checked + .switch__track::after{transform:translateX(18px);background:var(--green)}
.switch input:focus-visible + .switch__track{outline:2px solid var(--accent);outline-offset:2px}

.modal-back{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.55);display:grid;place-items:center;padding:20px}
.modal{width:100%;max-width:520px;background:var(--panel);border:1px solid var(--border2);border-radius:20px;padding:24px}
.modal--wide{max-width:560px}
.form-grid--2{grid-template-columns:1fr 1fr}
.form-grid__full{grid-column:1/-1}
.modal h3{font-family:var(--head);font-size:1.1rem;margin-bottom:14px}
.modal[hidden],.modal-back[hidden]{display:none!important}
/* .btn задаёт display:inline-flex и перекрывает HTML hidden */
#siteAdminLink[hidden],.vip-badge[hidden]{display:none!important}

.integ-box{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.integ-copy{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;margin-bottom:10px}
.integ-copy code{flex:1 1 220px;min-width:0;padding:11px 13px;border-radius:10px;border:1px solid var(--border2);
  background:var(--deep);font-family:ui-monospace,monospace;font-size:.8rem;color:var(--cyan);word-break:break-all}
.mini-btn{padding:9px 12px;border-radius:10px;border:1px solid var(--border2);background:var(--panel2);color:var(--text);
  font-family:var(--font);font-size:.8rem;font-weight:600;cursor:pointer}
.mini-btn:hover{border-color:var(--accent);color:var(--accent)}

/* theme picker */
.theme-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.theme-pick__card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;
  padding:20px 18px;border-radius:18px;border:1px solid var(--border);background:rgba(255,255,255,.02);
  color:var(--muted);cursor:pointer;font-family:var(--font);transition:border-color .2s,background .2s,transform .2s}
.theme-pick__card:hover{border-color:var(--accent-brd);color:var(--text);transform:translateY(-2px)}
.theme-pick__card.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text);
  box-shadow:inset 0 0 0 1px var(--accent-brd)}
.theme-pick__card strong{font-size:1rem;font-weight:700;color:var(--text)}
.theme-pick__card>span:last-child{font-size:.84rem;line-height:1.4}
.theme-pick__swatches{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.theme-pick__swatches .theme-swatch{width:22px;height:22px}

/* bot ops (merged from bot admin) */
.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.scard{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--border);
  border-radius:14px;padding:18px 16px}
.scard b{display:block;font-family:var(--head);font-size:1.5rem;line-height:1;margin-bottom:6px}
.scard span{font-size:.78rem;color:var(--muted)}
.sub-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.sub-tabs button{padding:8px 12px;border-radius:10px;border:1px solid var(--border2);background:var(--panel2);
  color:var(--muted);font-family:var(--font);font-weight:700;font-size:.8rem;cursor:pointer}
.sub-tabs button.active{color:var(--accent);border-color:var(--accent-brd);background:var(--accent-soft)}
.sub-panel{display:none}.sub-panel.active{display:block}
.plat-seg{display:flex;gap:6px;flex-wrap:wrap}
.plat-seg button{flex:1;min-width:90px;padding:10px 12px;border-radius:10px;border:1px solid var(--border2);
  background:rgba(255,255,255,.03);color:var(--muted);font-family:var(--font);font-weight:700;font-size:.82rem;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:8px}
.plat-seg button:hover{color:var(--text);border-color:var(--accent-brd)}
.plat-seg button.active{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}
.plat-seg .ico-msg{width:20px;height:20px;border-radius:6px}
.add-row{display:grid;grid-template-columns:1.2fr 1fr auto;gap:10px;align-items:end}
.add-row .plat-wrap,.add-row .tg-extra{grid-column:1/-1}
.add-row>label,.add-row .tg-extra label{
  display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;color:var(--muted);min-width:0}
.add-row input,.sub-panel .form-grid input,.sub-panel .form-grid select,.toolbar .field-input{
  font-family:var(--font);font-size:.95rem;color:var(--text);background-color:rgba(255,255,255,.03);
  border:1px solid var(--border2);border-radius:12px;padding:11px 13px;outline:none;width:100%;
  box-sizing:border-box;min-height:44px}
.sub-panel .form-grid select{padding-right:2.4em;background-color:var(--panel2)}
.add-row input::placeholder,.form-grid input::placeholder,.field-input::placeholder{
  color:var(--faint);opacity:.85}
.add-row input:focus,.sub-panel .form-grid input:focus,.sub-panel .form-grid select:focus,.toolbar .field-input:focus{
  border-color:var(--accent)}
.import-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px;padding:12px 14px;
  border:1px dashed var(--border2);border-radius:14px;background:rgba(255,255,255,.015)}
.import-row p{flex:1;min-width:180px;margin:0;font-size:.84rem;color:var(--muted);line-height:1.4}
.bay-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.slot-strip{margin-top:12px}
.slot-strip .slots{display:flex;flex-wrap:wrap;gap:8px}
.bay-card{border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,var(--panel2),var(--panel));padding:16px}
.bay-card h3{margin:0 0 8px;font-size:1rem}
.bay-card .count{font-size:.8rem;color:var(--muted);margin-bottom:12px}
.slots{display:flex;flex-wrap:wrap;gap:6px}
.slot{font-size:.78rem;padding:6px 9px;border-radius:8px;border:1px solid var(--border2);
  background:rgba(126,231,135,.08);color:var(--green);cursor:pointer;font-family:var(--font)}
.slot:hover{border-color:var(--green)}
.slot.is-active{
  background:rgba(126,231,135,.22);
  border-color:var(--green);
  color:var(--green);
  box-shadow:0 0 0 1px rgba(126,231,135,.28);
  font-weight:700;
}
.act-row{display:flex;gap:8px;align-items:center}
.checks{display:flex;gap:8px;flex-wrap:wrap}
.bots{display:flex;gap:10px;flex-wrap:wrap}
.bots label{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--muted);cursor:pointer;user-select:none}
.bots input{accent-color:var(--accent);width:15px;height:15px}
.mini{background:none;border:0;color:var(--accent);cursor:pointer;font-size:.8rem;font-weight:600;opacity:.85}
.mini:hover,.del:hover{opacity:1}
.del{background:none;border:0;color:var(--red);cursor:pointer;font-size:.95rem;opacity:.7}
.path-line{font-size:.8rem;color:var(--muted);margin:0 0 12px;word-break:break-all}
.path-line code{color:var(--cyan);font-family:ui-monospace,monospace;font-size:.78rem}
.check-row{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}
.remind-settings{display:flex;flex-direction:column;gap:10px;margin:14px 0 4px}
.remind-settings__row{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;
  padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);
}
.remind-settings__row--slots{flex-direction:column;align-items:stretch;gap:8px}
.remind-settings__on{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;font-weight:600;min-width:140px}
.remind-settings__when{color:var(--muted);font-size:.84rem}
.remind-settings__row > span{font-size:.84rem;color:var(--muted)}
.remind-strip{margin-top:0}
.remind-cell{display:flex;flex-direction:column;gap:10px;min-width:220px;max-width:460px}
.remind-line{display:flex;flex-direction:column;align-items:stretch;gap:6px;font-size:.78rem;font-weight:600;white-space:normal}
.remind-line__head{display:flex;align-items:center;gap:8px}
.remind-line__head span{color:var(--muted);font-weight:500}
.remind-cell .slots{gap:5px}
.remind-cell .slot{padding:5px 8px;font-size:.72rem}
.msg{font-size:.85rem}.msg.ok{color:var(--green)}.msg.err{color:var(--red)}

@media(max-width:980px){
  .msg-grid,.db-ways,.tpl-grid,.kv,.form-grid,.theme-pick,.stat-row{grid-template-columns:1fr 1fr}
  .add-row{grid-template-columns:1fr}
  .cab-tabs{
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    gap:4px;
  }
  .cab-tabs::-webkit-scrollbar{display:none}
  .cab-tab{flex:0 0 auto;min-width:auto;white-space:nowrap;padding:11px 14px}
}
@media(max-width:720px){
  body.cabinet{padding-bottom:max(24px,env(safe-area-inset-bottom))}
  .cab-top__inner{
    padding:10px 0;
    gap:10px;
    align-items:center;
  }
  .cab-top__right{
    width:100%;
    gap:8px;
    justify-content:flex-start;
  }
  .cab-biz-select{flex:1 1 auto;min-width:0;max-width:100%}
  .cab-who{display:none}
  .cab-main{padding-top:18px;padding-bottom:max(24px,env(safe-area-inset-bottom))}
  .cab-head{margin-bottom:16px}
  .cab-head p{font-size:.86rem}
  .cab-card{padding:18px 14px;border-radius:16px;margin-bottom:14px}
  .cab-card__head{gap:10px;margin-bottom:14px}
  .cab-card__title{font-size:.98rem}
  .form-actions .btn,.cab-card__head .btn{min-height:44px}
  .table-wrap{
    margin-left:-14px;margin-right:-14px;
    border-radius:0;border-left:0;border-right:0;
    -webkit-overflow-scrolling:touch;
  }
  table.cab-table{min-width:860px;font-size:.8rem}
  .cab-table th,.cab-table td{padding:10px 10px}
  .modal-back{padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}
  .modal,.modal--wide{max-width:100%;padding:18px 14px;border-radius:16px;max-height:calc(100vh - 24px);overflow:auto}
  .remind-settings__row{flex-direction:column;align-items:stretch;gap:8px}
  .remind-settings__on{min-width:0}
  .remind-cell{min-width:0;max-width:none}
  .plat-seg button{min-width:calc(50% - 6px);flex:1 1 calc(50% - 6px)}
  .integ-copy{flex-wrap:wrap}
  .integ-copy code{font-size:.82rem;word-break:break-all}
  .msg-col{padding:18px 14px}
  .msg-steps{font-size:.86rem}
  .toolbar{flex-direction:column;align-items:stretch}
  .toolbar .field-input{width:100%}
  .sub-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}
  .sub-tabs button{flex:0 0 auto;white-space:nowrap}
}
@media(max-width:640px){
  .stat-row,.msg-grid,.db-ways,.tpl-grid,.kv,.form-grid,.theme-pick{grid-template-columns:1fr}
  .cab-tab__num{display:none}
  .vip-badge{font-size:.7rem;padding:4px 9px}
  .add-row .btn{width:100%}
  .act-row{flex-wrap:wrap}
  .checks,.bots{flex-direction:column;align-items:flex-start}
}
@media(max-width:420px){
  .brand__txt span{display:none}
  .cab-top__right .btn{padding:8px 10px;font-size:.78rem}
  .plat-seg button{min-width:100%;flex:1 1 100%}
}

/* ===== Schedule grid ===== */
.sched-toolbar{flex-wrap:wrap;gap:8px;margin-bottom:12px}
.sched-scroll{overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:14px;background:var(--panel)}
.sched-table{min-width:max(100%, calc(90px + var(--bay-cols, 3) * 140px));display:flex;flex-direction:column}
.sched-head{display:grid;grid-template-columns:72px repeat(var(--bay-cols, 3), minmax(120px, 1fr));position:sticky;top:0;z-index:3;background:var(--head, var(--panel));border-bottom:1px solid var(--border)}
.sched-time-h,.sched-bay-h{padding:10px 8px;font-size:.78rem;font-weight:700;text-align:center}
.sched-body{display:grid;grid-template-columns:72px repeat(var(--bay-cols, 3), minmax(120px, 1fr));position:relative}
.sched-times{position:relative}
.sched-time{font-size:.72rem;color:var(--muted);padding:0 6px;display:flex;align-items:flex-start;justify-content:flex-end;border-top:1px dashed color-mix(in srgb, var(--border) 70%, transparent);box-sizing:border-box}
.sched-col{position:relative;border-left:1px solid var(--border);background:repeating-linear-gradient(to bottom, transparent, transparent calc(var(--row-h, 28px) - 1px), color-mix(in srgb, var(--border) 55%, transparent) var(--row-h, 28px))}
.sched-slot{position:absolute;left:0;right:0;width:100%;border:0;margin:0;padding:0;cursor:pointer;background:color-mix(in srgb, #2f9e68 12%, transparent)}
.sched-slot:hover{background:color-mix(in srgb, #2f9e68 28%, transparent)}
.sched-block{position:absolute;left:4px;right:4px;z-index:2;border:0;border-radius:8px;padding:4px 6px;text-align:left;cursor:pointer;background:color-mix(in srgb, var(--accent, #3b82f6) 82%, #1e293b);color:#fff;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.15)}
.sched-block strong{display:block;font-size:.72rem;line-height:1.2}
.sched-block span{display:block;font-size:.68rem;opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sched-empty{padding:28px;text-align:center;color:var(--muted)}
.hours-week{display:grid;gap:8px}
.hours-day{display:grid;grid-template-columns:36px auto 1fr 1fr;gap:8px;align-items:center;font-size:.85rem}
.ex-list{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.ex-item{display:flex;gap:10px;align-items:center;font-size:.86rem}
.nr-list{display:flex;flex-direction:column;gap:12px}
.nr-card{border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.nr-card__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:8px}
.staff-row,.staff-admin{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}
.staff-admin{flex-direction:column;align-items:stretch}
.staff-admin__head{display:flex;gap:10px;align-items:baseline}
.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 12px;margin:8px 0}
.perm-check{font-size:.82rem;display:flex;gap:6px;align-items:center}
