.fpds-topbar-sub{
  margin-left:10px;
  font-weight:normal;
  font-size:11px;
  opacity:.95;
}

.fpds-grid{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.fpds-grid .fpds-panel{
  flex:1 1 360px;
}

/* simple key/value table look */
.fpds-kv{ width:100%; }
.fpds-kv td{
  font-size:11px;
  padding:3px 4px;
  font-weight:normal;
}
.fpds-kv td.k{ color:#222; }
.fpds-kv td.v{ font-weight:bold; text-align:right; }

/* ====== Global ====== */
.fpds-body{
  margin:0;
  color:#000;
  background:#efefef;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

a{ color:#30569D; text-decoration:none; }
a:hover{ color:#C64934; text-decoration:underline; }

/* ====== Page frame (table layout on purpose) ====== */
.fpds-container{
  width:100%;
  border-collapse:collapse;
  background:#efefef;
}

.fpds-topbar{
  background: linear-gradient(#5f86c7, #2f4f8f);
  color:#fff;
  font-weight:bold;
  padding:6px 10px;
  border-bottom:2px solid #1b2c55;
}

.fpds-appname{ font-size:14px; }
.fpds-topbar-right{
  float:right;
  font-weight:normal;
  font-size:11px;
  opacity:.95;
}
.fpds-topbar-right a{ color:#fff; text-decoration:underline; }

.fpds-toolbar{
  background: linear-gradient(#d8e4f7, #b7c8e8);
  border-top:1px solid #ffffff;
  border-bottom:1px solid #6f84a8;
  padding:6px 10px;
  font-size:11px;
}

.fpds-tool{
  font-weight:bold;
  color:#0b2b66;
}
.fpds-sep{ color:#3b4a63; padding:0 6px; }

.fpds-content{
  padding:10px;
  background:
    linear-gradient(#f8f8f8, #efefef);
}

.fpds-page-title{
  font-size:16px;
  font-weight:bold;
  padding:6px 0 10px 0;
  color:#000;
}

.fpds-footer{
  background:#d0d0d0;
  border-top:1px solid #888;
  padding:6px 10px;
  font-size:11px;
  color:#222;
}

/* ====== Panels (classic “section boxes”) ====== */
.fpds-panel{
  border:1px solid #7f7f7f;
  background:#f6f6f6;
  margin:0 0 10px 0;
}

.fpds-panel-header{
  background: linear-gradient(#c7d8f5, #7aa1d7);
  color:#fff;
  font-weight:bold;
  padding:4px 8px;
  border-bottom:1px solid #3d5a8d;
  font-size:11px;
}

.fpds-panel-body{
  padding:8px;
}

/* ====== Forms ====== */
.fpds-label{
  font-weight:bold;
  font-size:11px;
  margin-right:6px;
  margin-left:6px;
  white-space:nowrap;
}

.fpds-input, .fpds-select, .fpds-textarea{
  border:1px solid #c8c8c8;
  background:#fff;
  font-size:12px;
  height:20px;
  padding:2px 4px;
  vertical-align:middle;
}

.fpds-textarea{
  height:auto;
  min-height:60px;
}

.fpds-input:focus, .fpds-select:focus, .fpds-textarea:focus{
  outline:none;
  border-color:#5f86c7;
  box-shadow: inset 0 0 0 1px rgba(95,134,199,.35);
}

.fpds-disabled{
  background:#e0e0e0 !important;
  color:#444;
}

/* required/error */
.fpds-required{ color:#ff8000; font-weight:bold; }
.fpds-error{
  border:1px solid #7f7f7f;
  background:#FFFFE0;
  padding:6px 8px;
  font-size:11px;
  color:#cc0000;
  box-shadow: 2px 2px 0 rgba(0,0,0,.25);
}
.fpds-error-field{ border-color:#cc0000 !important; }

/* ====== Tables (FPDS style) ====== */
.fpds-table{
  width:100%;
  border-collapse:collapse;
  border:1px solid #7f7f7f;
  background:#fff;
}

.fpds-th td{
  background:#0b2b66;      /* navy header */
  color:#fff;
  font-weight:bold;
  font-size:11px;
  padding:5px 6px;
  border-bottom:1px solid #000;
}

.fpds-tr td{
  font-size:11px;
  padding:4px 6px;
  border-bottom:1px solid #d0d0d0;
  color:#000;
}

.fpds-tr:nth-child(even) td{
  background:#f3f3f3;
}

.fpds-tr:hover td{
  background:#dbe8ff;
}

/* ====== Tabs (optional) ====== */
.fpds-tabs{
  display:flex;
  gap:2px;
  margin:0 0 8px 0;
}

.fpds-tab{
  padding:4px 10px;
  border:1px solid #7f7f7f;
  background: linear-gradient(#f0f0f0, #cfcfcf);
  font-size:11px;
  font-weight:bold;
  color:#000;
}

.fpds-tab.active{
  background: linear-gradient(#ffffff, #dcdcdc);
  border-bottom-color:#ffffff;
}

/* ====== The glassy FPDS pill button we made ====== */
.fpds-glass{
  position: relative;
  height: 26px;
  min-width: 68px;
  padding: 0 18px;

  font: 700 12px/26px Arial, Helvetica, sans-serif;
  color: #111;

  border-radius: 999px;
  border: 2px solid #6f6f6f;
  background:
    linear-gradient(to bottom,
      #f7f7f7 0%,
      #d2d5da 35%,
      #b8bcc3 55%,
      #e9ecef 85%,
      #ffffff 100%);

  box-shadow:
    0 3px 0 rgba(0,0,0,.35),
    0 9px 14px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.95),
    inset 0 -3px 3px rgba(0,0,0,.20),
    inset 0 0 0 1px rgba(255,255,255,.35);

  text-shadow: 0 1px 0 rgba(255,255,255,.9);
  cursor:pointer;
  user-select:none;
  -webkit-appearance:none;
  appearance:none;
}

.fpds-glass::before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:10%;
  height:42%;
  border-radius:999px;
  background: linear-gradient(to bottom,
    rgba(255,255,255,.95) 0%,
    rgba(255,255,255,.55) 35%,
    rgba(255,255,255,0) 100%);
  pointer-events:none;
}

.fpds-glass:hover{
  filter: brightness(1.03) contrast(1.03);
}

.fpds-glass:active{
  transform: translateY(2px);
}

.fpds-glass:active::before{
  opacity:.55;
}

/* secondary button option */
.fpds-secondary{
  background:
    linear-gradient(to bottom,
      #f2f2f2 0%,
      #d7d7d7 45%,
      #bfbfbf 60%,
      #e6e6e6 90%,
      #ffffff 100%);
}
