body {
  background-color: #121212;
  color: #e0e0e0;
  font-family: "Segoe UI", "微軟正黑體", sans-serif;
  margin: 0;
  padding: 0;
}

h3, h4 { color: #00bfff; }
button, .btn {
  border-radius: 6px;
  font-weight: 500;
}
#main {
  display: flex;
  height: 100vh;
}
#leftPanel {
  width: 50%;
  background-color: #1e1e1e;
  padding: 20px;
  overflow-y: auto;
  border-right: 2px solid #00bfff33;
}
#rightPanel {
  width: 50%;
  display: flex;
  flex-direction: column;
  background-color: #000;
}
#statPanel {
  /* 右側統計合併區塊美化 */
  min-height: 62px;
  margin-bottom: 6px;
}
#threeContainer {
  flex: 1;
  border: 1px solid #333;
}
#summary {
  background-color: #1e1e1e;
  color: #ccc;
  padding: 10px;
  border-top: 1px solid #00bfff44;
}
input[type=number], input[type=text] {
  background-color: #2a2a2a;
  border: 1px solid #444;
  color: #eee;
}
input:focus {
  border-color: #00bfff;
  box-shadow: none;
  background-color: #333;
}
.table-dark {
  background-color: #2a2a2a !important;
}
.btn-primary { background-color: #00bfff; border-color: #00bfff; }
.btn-danger { background-color: #ff5555; border-color: #ff5555; }
.btn-success { background-color: #22bb66; border-color: #22bb66; }
.btn-secondary { background-color: #444; border-color: #555; color:#eee; }
.alert-dark {
  background-color: #1e1e1e;
  border: 1px solid #00bfff44;
}
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-thumb { background: #00bfff55; border-radius: 4px; }

#cargoTableContainer {
  max-height: 350px;
  overflow-y: auto;
  border: 1px solid #444;
  border-radius: 4px;
}
#cargoTableContainer thead {
  position: sticky;
  top: 0;
  background: #2a2a2a;
  z-index: 10;
  border-bottom: 2px solid #00bfff;
}
#cargoTableContainer th { text-align: center; }

#pdfTitle {
  position: absolute;
  left: -9999px;
  background: white;
  padding: 20px;
  font-size: 24px;
  color: #00bfff;
  font-weight: bold;
}
