/* MERIDIAN-NET v4.2.1 -- dense, tiny-font internal LOB stylesheet, circa 2011. */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: Verdana, Tahoma, Geneva, sans-serif;
  font-size: 11px;
  color: #222;
  background: #d6d9dd;
}
a { color: #0b4a8a; text-decoration: none; }
a:hover { text-decoration: underline; }
code { font-family: "Courier New", monospace; background: #eef1f3; padding: 0 2px; border: 1px solid #d5dade; font-size: 11px; }

#topbar {
  background: #1f3a5f;
  background: linear-gradient(#2a4f7d, #14293f);
  color: #eaf0f6; padding: 5px 10px; overflow: hidden;
  border-bottom: 2px solid #0a1930;
}
#brand { font-size: 15px; font-weight: bold; letter-spacing: .5px; }
#brand em { font-style: normal; font-weight: normal; font-size: 10px; color: #a9c4e2; margin-left: 8px; }
#who { float: right; font-size: 10px; color: #cdddee; padding-top: 4px; }
#who a { color: #ffd; }

#nav {
  background: #33507a;
  border-bottom: 1px solid #22375a;
  padding: 0 6px;
  white-space: nowrap;
}
#nav a {
  display: inline-block; color: #dfe8f2; padding: 5px 12px; font-size: 11px;
  border-right: 1px solid #27436b;
}
#nav a:hover { background: #45628c; text-decoration: none; }
#nav a.on { background: #eef1f3; color: #14293f; font-weight: bold; }

#main { max-width: 1120px; margin: 10px auto; background: #eef1f3; border: 1px solid #b7bfc7; padding: 12px 16px 20px; min-height: 380px; }
#footer { max-width: 1120px; margin: 6px auto 24px; color: #55606a; font-size: 10px; text-align: center; }

h1 { font-size: 16px; margin: 2px 0 10px; color: #14293f; border-bottom: 1px solid #c3ccd4; padding-bottom: 4px; }
h2 { font-size: 13px; margin: 14px 0 6px; color: #223; }
.sub { color: #6a747d; font-size: 10px; }
.hint { color: #6a747d; font-size: 10px; margin: 4px 0 8px; }
.crumbs { font-size: 10px; color: #6a747d; margin-bottom: 8px; }
.warn { color: #a11; }
.err { background: #fff4f4; border: 1px solid #e2b6b6; color: #7a1414; padding: 8px 10px; margin: 8px 0; }
.tot { margin: 8px 0; font-size: 12px; }

/* data grids */
table.grid { border-collapse: collapse; width: 100%; background: #fff; border: 1px solid #b7bfc7; }
table.grid th {
  background: #c7d2df; color: #1c3350; text-align: left; font-size: 10px;
  padding: 3px 6px; border: 1px solid #aeb9c6; white-space: nowrap;
}
table.grid td { padding: 2px 6px; border: 1px solid #d8dee4; vertical-align: top; }
table.grid.data tr:nth-child(even) td { background: #f5f7f9; }
table.grid.data tr:hover td { background: #fdf6d8; }
table.grid td.num { text-align: right; font-variant-numeric: tabular-nums; }
table.grid th.num { text-align: right; }
td.nw { white-space: nowrap; }
table.kv td:first-child { color: #55606a; width: 160px; background: #f5f7f9; }
table.kv.wide td:first-child { width: 200px; }
table.ann td { padding: 5px 6px; }
.abody { color: #333; margin-top: 3px; }

.cols { display: flex; gap: 14px; align-items: flex-start; }
.col2 { flex: 2; } .col1 { flex: 1; }
.panel { background: #fff; border: 1px solid #b7bfc7; margin-bottom: 12px; }
.panel .ph { background: #dde4ec; border-bottom: 1px solid #b7bfc7; padding: 4px 8px; font-weight: bold; color: #1c3350; font-size: 11px; }
.panel table.grid { border: 0; }
.phlink, .panel .ql { padding: 8px; }
.ql { margin: 0; }
ul.ql { list-style: square; padding: 8px 8px 8px 24px; }
ul.ql li { margin: 2px 0; }

.filterbar { background: #dde4ec; border: 1px solid #b7bfc7; padding: 6px 8px; margin-bottom: 8px; }
.filterbar label { color: #33445a; margin: 0 4px 0 8px; }
.filterbar input[type=text], .filterbar select { font-size: 11px; padding: 2px; border: 1px solid #9aa7b5; }
.filterbar .ck { font-size: 10px; }
.filterbar button, form button {
  font-size: 11px; padding: 2px 10px; margin-left: 8px; cursor: pointer;
  background: linear-gradient(#f4f7fa, #dbe3ec); border: 1px solid #8ea0b3; color: #1c3350;
}

.loading { color: #6a747d; font-style: italic; padding: 6px 0; }
.pager { margin: 8px 0; font-size: 10px; color: #55606a; }

.st { font-size: 9px; padding: 1px 5px; border: 1px solid #999; border-radius: 2px; }
.st-open, .st-partial { background: #fff0d0; border-color: #d3a94a; }
.st-closed, .st-received { background: #e3efe0; border-color: #7fae74; }
.st-cancelled { background: #eee; color: #888; }

/* login */
.loginbody { background: #24435f; background: linear-gradient(#2f5578, #13253a); height: 100vh; }
#loginbox { width: 320px; margin: 8% auto 0; background: #eef1f3; border: 1px solid #0a1930; padding: 0 0 14px; box-shadow: 0 4px 22px rgba(0,0,0,.4); }
#loginhdr { background: linear-gradient(#2a4f7d, #14293f); color: #fff; font-size: 18px; font-weight: bold; padding: 12px 16px; }
#loginsub { color: #55606a; font-size: 10px; padding: 8px 16px 2px; }
#loginbox form { padding: 8px 16px; }
#loginbox label { display: block; color: #33445a; margin: 8px 0 2px; }
#loginbox input { width: 100%; font-size: 12px; padding: 4px; border: 1px solid #9aa7b5; }
#loginbox button { width: 100%; margin: 14px 0 0; padding: 6px; font-size: 12px; }
#loginnote { color: #6a747d; font-size: 10px; padding: 4px 16px 0; }
#loginfoot { color: #9db4cc; font-size: 10px; text-align: center; margin-top: 14px; }

/* MERNET-GW middleware chrome (2016 bolt-on; nobody restyled it) */
.gwpanel { background: #fff; border: 1px solid #b7bfc7; margin-bottom: 12px; }
.gwpanel .ph { background: #e8e2d0; border-bottom: 1px solid #b7bfc7; padding: 4px 8px; font-weight: bold; color: #4a4230; font-size: 11px; }
.gwpanel ul.ql { padding: 6px 8px 6px 24px; margin: 0; }
.gwpanel .sub { padding: 2px 8px 6px; display: block; }
pre.code { background: #f4f4ee; border: 1px solid #c9c9ba; padding: 8px; font: 10px/1.5 "Courier New", monospace; overflow-x: auto; margin: 6px 0; }
