/* German Dominion -- Economy + Admin log tabs (2026-09-01 economy wave). */
.econ-admin-note { margin: 8px 0 0; font-size: 13px; color: rgba(255,255,255,.8); }
.econ-admin-note.err { color: #ff9a8f; }
.econ-toolbar { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.econ-toolbar .econ-dirty { font-size: 12px; color: rgba(255,255,255,.55); }
.econ-group { margin-top: 14px; }
.econ-table { width: 100%; border-collapse: collapse; }
.econ-table td { padding: 8px 10px; border-top: 1px solid rgba(255,255,255,.07); vertical-align: top; }
.econ-label { width: 42%; }
.econ-label-main { font-weight: 600; }
.econ-label-meta { font-size: 11px; color: rgba(255,255,255,.45); margin-top: 2px; word-break: break-word; }
.econ-input { width: 30%; }
.econ-field { width: 100%; box-sizing: border-box; font: inherit; font-family: var(--mono, ui-monospace, monospace);
              padding: 6px 8px; border-radius: 8px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.35); color: inherit; }
.econ-field.bad { border-color: #ff6f61; }
.econ-json { min-height: 42px; resize: vertical; }
.econ-toggle { min-width: 64px; }
.econ-toggle.on { background: #2f7a3a; border-color: #3f9a4a; color: #fff; }
.econ-default { font-size: 11px; color: rgba(255,255,255,.5); font-family: var(--mono, ui-monospace, monospace); }
.econ-chip { display: inline-block; margin-left: 8px; padding: 1px 7px; border-radius: 999px; background: rgba(179,38,30,.35); color: #ffd6d2; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.econ-unlock-form { display: grid; grid-template-columns: 140px 1fr 1fr auto auto; gap: 8px; align-items: center; }
.econ-unlock-form input, .econ-unlock-form select { font: inherit; padding: 6px 8px; border-radius: 8px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.35); color: inherit; }
.econ-unlock-list { list-style: none; margin: 12px 0 0; padding: 0; max-height: 260px; overflow: auto; }
.econ-unlock-row { display: grid; grid-template-columns: 200px 1fr 160px; gap: 10px; padding: 5px 0; border-top: 1px solid rgba(255,255,255,.06); font-size: 13px; }
.econ-dim { color: rgba(255,255,255,.5); }
.econ-lookup { display: flex; gap: 8px; align-items: center; }
.econ-lookup input { font: inherit; padding: 6px 8px; border-radius: 8px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.35); color: inherit; width: 240px; }
.econ-lookup-head { display: flex; gap: 18px; flex-wrap: wrap; margin: 10px 0 6px; font-size: 13px; }
.econ-ops { list-style: none; margin: 0; padding: 0; font-family: var(--mono, ui-monospace, monospace); font-size: 12px; white-space: pre; }
.econ-ops li { padding: 2px 0; border-top: 1px solid rgba(255,255,255,.05); }
.alog-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.alog-table th { text-align: left; padding: 6px 8px; color: rgba(255,255,255,.55); font-weight: 600; border-bottom: 1px solid rgba(255,255,255,.12); }
.alog-table td { padding: 6px 8px; border-top: 1px solid rgba(255,255,255,.06); vertical-align: top; word-break: break-word; }
.alog-table .mono { font-family: var(--mono, ui-monospace, monospace); white-space: nowrap; }
.econ-before { color: #ffb4a8; }
.econ-after { color: #a8f0b0; }
.alog-toolbar { display: flex; gap: 8px; align-items: center; margin-bottom: 8px; }
.alog-toolbar input { font: inherit; padding: 6px 8px; border-radius: 8px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.35); color: inherit; width: 280px; }
@media (max-width: 900px) {
  .econ-unlock-form { grid-template-columns: 1fr 1fr; }
  .econ-unlock-row { grid-template-columns: 1fr; }
  .econ-label, .econ-input { width: auto; }
}
/* the wide editors (the species pool). The .econ-box-* card rules went with the
   mystery box, casino and event-ticket editors on 2026-09-07: nothing renders
   those class names any more. */
.econ-input-wide { width: auto; }
.econ-pool { width: 100%; border-collapse: collapse; margin-bottom: 8px; font-size: 12.5px; }
.econ-pool th { text-align: left; font-weight: 600; color: rgba(255,255,255,.55); padding: 4px 6px; border-bottom: 1px solid rgba(255,255,255,.1); }
.econ-pool td { padding: 4px 6px; border-top: 1px solid rgba(255,255,255,.06); vertical-align: middle; }
.econ-pool .econ-field { min-width: 70px; }
/* ship 2: the tool panels (market / arena) */
.econ-btn-row { display: flex; gap: 6px; white-space: nowrap; }
.econ-lookup .econ-select { width: auto; min-width: 260px; }
#econ-tools .econ-lookup-head span { font-family: var(--mono, ui-monospace, monospace); }
