/* «Синхронизация с МоимСкладом» (sync.js). Uses the shared Journey tokens only. */
#sync .stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
#sync .stat strong.sync-state { font-size:var(--journey-type-body-size); letter-spacing:0; margin:16px 0 14px; }
#sync .stat strong.sync-state .badge { font-size:var(--journey-type-footnote-size); padding:7px 10px; }
#sync .stat strong.sync-version { font-size:var(--journey-type-body-size); letter-spacing:0; overflow-wrap:anywhere; margin:16px 0 14px; }
#sync .panel { margin-bottom:22px; }
#sync .panel-head { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:8px 16px; }
#sync td small { display:block; margin-top:3px; font-size:var(--journey-type-caption-size); color:var(--journey-color-text-secondary); }
#sync .sync-changes { max-width:260px; }
.sync-actions { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
.sync-actions .primary:disabled { cursor:not-allowed; }
.sync-alert { padding:14px 18px; border-radius:8px; margin-bottom:18px; font-size:var(--journey-type-footnote-size); line-height:1.5; border:1px solid var(--journey-color-border-subtle); }
.sync-alert.warning { border-left:3px solid var(--journey-color-status-warning-fg); background:var(--journey-color-status-warning-bg); color:var(--journey-color-status-warning-fg); }
.sync-alert.error { border-left:3px solid var(--journey-color-status-error-fg); background:var(--journey-color-status-error-bg); color:var(--journey-color-status-error-fg); }
.sync-issues { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:8px; }
.sync-issues li { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; border-radius:8px; background:var(--journey-color-bg-subtle); font-size:var(--journey-type-caption-size); }
.sync-issues li.blocking { background:var(--journey-color-status-warning-bg); color:var(--journey-color-status-warning-fg); }
.sync-issues li strong { font-variant-numeric:tabular-nums; }
@media(max-width:900px){ #sync .stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px){ .sync-actions { justify-content:flex-start; } #sync .page-heading { flex-direction:column; align-items:flex-start; } }
/* «Состояние системы» (system.js) reuses the panel, stat and alert styles above. */
#system .stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
#system .stat strong.system-mode { font-size:var(--journey-type-body-size); letter-spacing:0; margin:16px 0 14px; }
#system .stat strong.system-mode .badge { font-size:var(--journey-type-footnote-size); padding:7px 10px; }
#system .stat strong.system-time { font-size:var(--journey-type-body-size); letter-spacing:0; margin:16px 0 14px; }
#system .panel { margin-bottom:22px; }
#system td small { display:block; margin-top:3px; font-size:var(--journey-type-caption-size); color:var(--journey-color-text-secondary); }
#system .system-detail { max-width:360px; font-size:var(--journey-type-footnote-size); }
#system .system-env { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; overflow-wrap:anywhere; }
#system .system-error { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:var(--journey-type-caption-size); color:var(--journey-color-status-error-fg); }
@media(max-width:900px){ #system .stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
/* The «Тестовый стенд» badge belongs to the synthetic stand only (body[data-mode] from auth-options, app.js). */
body[data-mode="staging"] .demo-badge, body[data-mode="production"] .demo-badge { display:none; }
