/* Shared portal-wide rules, formerly inlined per template. */

/* Canonical CSS-variable cascade. base.html loads header.css (which reads these
   variables with built-in fallbacks) before portal.css, so these defaults apply
   to every page. Templates override only what they genuinely need:
     - data_admin.html:  --row-min: 180px (denser form grids)
     - .sec-row:         --row-min: 250px (SEC report/edgar forms)
     - stamp_duty.html:  .stamp-duty-row --row-min: 260px (page-local)
     - db_admin/kyc:     --table-font-size/--input-font-size: 12px
     - sec/stamp_duty:   --input-font-size/--box-padding/--row-gap: 14px/14px/10px
     - main:             --input-font-size: 14px
     - help_doc:         --box-padding: 12px */
:root {
  --table-font-size: 13px;
  --input-font-size: 13px;
  --box-padding: 10px;
  --row-min: 220px;
  --row-gap: 8px;
}

h2 { margin-top: 24px; }

.ok { color: #0a6; font-weight: 700; }
.failed { color: #b00; font-weight: 700; }

code { background: #f3f3f3; padding: 2px 4px; border-radius: 3px; }

/* Form-field labels rendered above their input (scoped so the inline labels
   used inside grid rows on data_admin/db_admin/users/main stay untouched). */
.sec-row label,
.stamp-duty-row label,
.login-form label { display: block; margin: 8px 0; }

/* Scoped output block shared by the SEC and stamp-duty report forms; pages
   override only the max-height via ``.result-pre`` selectors. */
.result-pre {
  white-space: pre-wrap;
  background: #fafafa;
  border: 1px solid #eee;
  padding: 10px;
  overflow: auto;
}

.sec-row { --row-min: 250px; }
