/* App-only additions on top of meridian.css and orchestrator.css (both vendored, not
   edited). Only Meridian tokens are used, so the theme stays in one place. */

/* ---------- Flash messages (TempData) and validation ---------- */
.flash { border-radius: var(--r-btn); padding: 9px 12px; font-size: 12.5px; margin-bottom: 16px; border: 1px solid transparent; }
.flash:empty, .flash.validation-summary-valid { display: none; }
.flash ul { margin: 0; padding-left: 16px; }
.flash-ok { background: var(--ok-lt); color: var(--ok); border-color: var(--ok); }
.flash-err { background: var(--err-lt); color: var(--err); border-color: var(--err-bd); }
.ferr { font-size: 11px; color: var(--err); }

/* ---------- Split list/editor pages (templates, scripts): shared partials in Features/Shared/Templates ---------- */
.flash-warn { background: var(--warn-lt); color: var(--warn); border-color: var(--warn); margin: 10px 0 0; }
a.split-item { display: block; text-decoration: none; color: inherit; }
.chip-x { background: transparent; border: none; color: inherit; cursor: pointer; padding: 0 0 0 5px; font-size: 13px; line-height: 1; }
.var-add { display: flex; gap: 8px; align-items: center; margin-top: 8px; max-width: 320px; }
.rule-grid-err { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 2px; }

/* ---------- Sidebar footer sign-out ---------- */
.sb-footer form { margin-left: auto; }
.sb-logout { background: transparent; border: none; color: inherit; opacity: .7; font: inherit; font-size: 11px; cursor: pointer; padding: 4px 6px; }
.sb-logout:hover { opacity: 1; text-decoration: underline; }

/* ---------- Anonymous pages (sign in) ---------- */
.auth-body { background: var(--bg); min-height: 100vh; display: flex; align-items: center; justify-content: center; }
.auth-shell { width: 100%; max-width: 380px; padding: 16px; }
.auth-logo { justify-content: center; margin-bottom: 18px; }
.auth-logo .sb-name, .auth-logo .sb-env { color: var(--text-1); }
.auth-logo .sb-mark { background: var(--sa-accent); }
.auth-form { display: flex; flex-direction: column; gap: 14px; }
.auth-check { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--text-2); }
.auth-submit { width: 100%; justify-content: center; }
