/*
 * SAMARIA production primitives.
 * Load after brand-foundation.css. Feature screens consume these semantic
 * classes; legacy layout selectors remain in compatibility sheets until their
 * family has completed migration.
 */

:root {
  --samaria-radius-sm: 6px;
  --samaria-radius-md: 10px;
  --samaria-radius-lg: 14px;
  --samaria-space-1: 4px;
  --samaria-space-2: 8px;
  --samaria-space-3: 12px;
  --samaria-space-4: 16px;
  --samaria-space-5: 24px;
  --samaria-space-6: 32px;
  --samaria-shadow-card: 0 8px 24px rgba(7,17,31,.06);
}

*, *::before, *::after { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: clip; }
img, svg, canvas, video { max-width: 100%; }

.samaria-page {
  width: min(100%, 1280px);
  margin: 0 auto;
  padding: var(--samaria-space-6);
}
.samaria-page__eyebrow {
  margin: 0 0 var(--samaria-space-2);
  color: var(--samaria-blue-700);
  font: 600 12px/1.3 var(--samaria-font-body);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.samaria-page__title { margin: 0; font: 600 32px/1.15 var(--samaria-font-display); color: var(--samaria-ink); }
.samaria-page__intro { max-width: 72ch; margin: var(--samaria-space-2) 0 0; color: var(--samaria-ink-muted); font: 400 16px/1.5 var(--samaria-font-body); }

.samaria-card { min-width: 0; padding: var(--samaria-space-5); background: var(--samaria-surface); border: 1px solid var(--samaria-border); border-radius: var(--samaria-radius-lg); box-shadow: var(--samaria-shadow-card); }
.samaria-actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--samaria-space-2); }
.samaria-button { min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:10px 16px; border:1px solid transparent; border-radius:var(--samaria-radius-sm); font:500 14px/1.2 var(--samaria-font-body); cursor:pointer; text-decoration:none; }
.samaria-button--primary { color:#fff; background:var(--samaria-action-gradient); box-shadow:var(--samaria-action-shadow); }
.samaria-button--secondary { color:var(--samaria-blue-700); background:var(--samaria-surface); border-color:var(--samaria-blue-700); }
.samaria-button:focus-visible, .samaria-filter:focus-visible, .samaria-register__row:focus-visible { outline:0; box-shadow:var(--samaria-focus-ring); }
.samaria-button:disabled { opacity:.45; cursor:not-allowed; }

.samaria-filter { min-height:40px; padding:8px 12px; color:var(--samaria-ink); background:var(--samaria-surface); border:1px solid var(--samaria-border); border-radius:999px; font:500 14px/1.2 var(--samaria-font-body); }
.samaria-filter[aria-pressed="true"] { color:#fff; background:var(--samaria-blue-700); border-color:var(--samaria-blue-700); }

.samaria-register { width:100%; border-collapse:collapse; color:var(--samaria-ink); font:400 14px/1.45 var(--samaria-font-body); }
.samaria-register th { padding:10px 12px; color:var(--samaria-ink-muted); border-bottom:1px solid var(--samaria-border); font:600 12px/1.25 var(--samaria-font-body); letter-spacing:.05em; text-align:left; text-transform:uppercase; }
.samaria-register td { padding:14px 12px; vertical-align:top; border-bottom:1px solid var(--samaria-border); }
.samaria-register__row { cursor:pointer; }
.samaria-register__row:hover { background:#f5f9fb; }
.samaria-reference { color:var(--samaria-ink-muted); font:400 13px/1.35 var(--samaria-font-mono); }
.samaria-summary { color:var(--samaria-ink); font:400 14px/1.45 var(--samaria-font-body); }
.samaria-date, .samaria-time { display:block; font:400 13px/1.35 var(--samaria-font-body); }
.samaria-time { margin-top:3px; color:var(--samaria-ink-muted); }

@media (max-width: 900px) {
  body.min-h-screen.flex, body.flex { display:block !important; width:100% !important; }
  body > #sidebar { display:none !important; }
  body > .flex-1, body > div.flex-1, body > [style*="margin-left:256px"] { width:100% !important; max-width:100% !important; min-width:0 !important; margin-left:0 !important; }
  main { max-width:100%; min-width:0; }
  .samaria-page { padding:var(--samaria-space-4); }
}
@media (max-width: 720px) {
  .samaria-page__title { font-size:28px; }
  .samaria-page__intro { font-size:16px; }
  .samaria-card { padding:var(--samaria-space-4); }
  .samaria-actions > * { max-width:100%; }
  .samaria-register-wrap { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .samaria-register { min-width:640px; }
  .ops-tabs,.ev-tabs,.seg,[role="tablist"] { display:flex !important; flex-wrap:nowrap !important; gap:8px !important; max-width:100%; overflow-x:auto; }
  .ops-tab,.ev-tab,.seg button,[role="tab"] { flex:0 0 auto; white-space:nowrap; }
}
