/* tool-theme.css — Damage Calculator tool colors (theme tokens match the site).
   Replaces dark-theme.css of the original tool. Only colors/looks, no logic. */
:root {
  --bg-primary:#050f0a; --bg-secondary:#0a1a10; --bg-card:#0d2018; --bg-card-hover:#123023;
  --green-primary:#00e676; --green-secondary:#00c853; --green-dim:#1a4d35; --green-glow:rgba(0,230,118,.12);
  --text-primary:#e8f5e9; --text-secondary:#81c784; --text-muted:#4caf50;
  --btn-text:#04140b; --border:rgba(0,230,118,.18); --danger:#ff5252;
}
html[data-theme="light"] {
  --bg-primary:#f5faf7; --bg-secondary:#eaf4ee; --bg-card:#ffffff; --bg-card-hover:#f2f9f4;
  --green-primary:#00a152; --green-secondary:#008f47; --green-dim:#d7ecdf; --green-glow:rgba(0,200,83,.10);
  --text-primary:#0d2018; --text-secondary:#1a4d35; --text-muted:#2e7d52;
  --btn-text:#ffffff; --border:rgba(0,180,90,.2);
}

/* base */
html, body { min-height:0 !important; margin:0; background:var(--bg-card) !important; color:var(--text-primary) !important; }
body { background-image:none !important; padding:6px 0 0; }
a, a:visited, a.links-lighten, a.links-lighten:visited { color:var(--green-primary); }
a:hover, a.links-lighten:hover { color:var(--green-secondary); }
label:not(.btn), .search-label, a.collapsible-link { color:var(--text-primary); }
th { color:var(--text-secondary); }
.title-text, legend { color:var(--green-primary); }
.small-text, .result-move-header { color:var(--text-secondary); }

/* panels */
fieldset { background:var(--bg-secondary) !important; border:1px solid var(--border) !important; border-radius:var(--radius-sm,12px); }
legend { border:0; }

/* buttons */
.btn {
  background:var(--bg-secondary); color:var(--text-primary); text-shadow:none;
  border:1px solid var(--border); box-shadow:0 1px 2px rgba(0,0,0,.25);
}
.btn:hover, .btn:focus, .visually-hidden:focus + .btn {
  background:var(--bg-card-hover); color:var(--green-primary); border-color:var(--green-primary);
}
.btn:active, .visually-hidden[type=checkbox]:checked + .btn:active { background:var(--green-dim); color:var(--text-primary); }
.visually-hidden:checked + .btn,
.visually-hidden:checked + .btn:hover,
.visually-hidden[type=radio]:checked + .btn,
.visually-hidden[type=radio]:checked + .btn:hover {
  background:linear-gradient(135deg,var(--green-primary),var(--green-secondary));
  color:var(--btn-text); border-color:var(--green-primary); text-shadow:none; box-shadow:0 0 0 3px var(--green-glow);
}
.visually-hidden:disabled + .btn { color:var(--text-muted); opacity:.55; }
.visually-hidden:focus-visible + .btn { outline:2px solid var(--green-primary); }
.locked-move:checked + .btn, .locked-move:checked + .btn:hover,
.locked-weather:checked + .btn, .locked-weather:checked + .btn:hover { background:var(--green-dim); color:var(--text-primary); }

/* plain buttons (Export / Import / Clear) */
button, .bs-btn, .bs-btn-default {
  background:var(--bg-secondary); color:var(--text-primary); border:1px solid var(--border);
  border-radius:8px; padding:3px 12px; cursor:pointer; font-family:inherit; font-size:inherit; text-shadow:none;
}
button:hover, .bs-btn:hover, .bs-btn-default:hover, .bs-btn:focus, .bs-btn-default:focus {
  background:var(--green-primary); color:var(--btn-text); border-color:var(--green-primary);
}

/* inputs / selects */
select, input, textarea {
  background:var(--bg-card); color:var(--text-primary); text-shadow:none;
  border:1px solid var(--border); border-radius:6px; box-shadow:none;
}
select { background-image:none; }
select:hover, select:focus, input:focus, textarea:focus {
  background:var(--bg-card-hover); border-color:var(--green-primary); outline:none; color:var(--text-primary);
}
input::placeholder, textarea::placeholder { color:var(--text-muted); }
option { background:var(--bg-card); color:var(--text-primary); }
input[type=checkbox] { accent-color:var(--green-primary); }

/* select2 */
.select2-container .select2-choice {
  background:var(--bg-card); background-image:none; color:var(--text-primary);
  border:1px solid var(--border); box-shadow:none; text-shadow:none;
}
.select2-container .select2-choice:hover { background:var(--bg-card-hover); border-color:var(--green-primary); }
.select2-container-active .select2-choice, .select2-container-active .select2-choice:hover { border-color:var(--green-primary); box-shadow:0 0 0 3px var(--green-glow); }
.select2-container .select2-choice .select2-arrow { background:none; border-left:0; }
.select2-dropdown-open .select2-choice { background:var(--bg-card); background-image:none; box-shadow:none; }
.select2-drop { background:var(--bg-card); color:var(--text-primary); border:1px solid var(--green-primary); box-shadow:0 8px 24px rgba(0,0,0,.35); }
.select2-drop-active { border-color:var(--green-primary); }
.select2-search input, input.select2-input { background-color:var(--bg-secondary); color:var(--text-primary); border:1px solid var(--border); }
.select2-results .select2-highlighted { background:var(--green-primary); color:var(--btn-text); }
.select2-results .select2-no-results, .select2-results .select2-searching, .select2-results .select2-selection-limit,
.select2-results .select2-disabled, .select2-results .select2-disabled.select2-highlighted, .select2-more-results { background:var(--bg-secondary) !important; color:var(--text-muted); }
.select2-results li em { background:var(--green-glow); color:var(--text-primary); }
.select2-default { color:var(--text-muted) !important; }
.select2-container-disabled .select2-choice { background:var(--bg-secondary); }

/* result text + tooltip */
.big-text, #mainResult { color:var(--text-primary); }
#tooltipText { background:var(--green-primary); color:var(--btn-text); }
#tooltipText::after { border-top-color:var(--green-primary); }

/* tables used by One vs All / All vs One / Random pages (Bootstrap + DataTables) */
table.dataTable, .dataTables_wrapper, .dataTables_info, .dataTables_paginate, .dataTables_filter, .dataTables_length { color:var(--text-primary) !important; }
tr.odd, tr.even { background-color:var(--bg-card) !important; }
tr.odd td, tr.even td { border-color:var(--border); }
td.sorting_1 { background-color:var(--bg-secondary) !important; }
table.dataTable thead th, table thead th { color:var(--green-primary); border-color:var(--border); }
.table, .table td, .table th { border-color:var(--border); }
.panel, .panel-default, .panel-heading, .panel-body { color:var(--text-primary); border-color:var(--border); }

/* credit line */
.credits { padding:14px 20px 10px; max-width:none; text-align:center; font-size:.85em; color:var(--text-muted); }
.credits a, .credits a:visited { color:var(--text-secondary); }
.credits a:hover { color:var(--green-primary); }
.credits ul { display:none; }
