/* styles.css
 * Shared styling for view_recipes.php and mead_recipes.php
 */
:root { color-scheme: dark light; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; margin: 16px; }
.wrap { max-width: 1500px; margin: 0 auto; }
h1 { margin: 0 0 10px 0; font-size: 20px; }
.toolbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 0 0 14px 0; }
.toolbar .search { display: flex; gap: 8px; align-items: center; flex: 1 1 360px; }
.toolbar input[type="search"] {
  width: 100%; max-width: 640px; padding: 9px 10px; border-radius: 10px;
  border: 1px solid rgba(127,127,127,.45); background: Canvas; color: CanvasText; outline: none;
}
.toolbar input[type="search"]:focus { border-color: rgba(127,127,127,.8); box-shadow: 0 0 0 3px rgba(127,127,127,.15); }
.pill {
  display: inline-flex; gap: 6px; align-items: center; padding: 6px 10px;
  border: 1px solid rgba(127,127,127,.35); border-radius: 999px; font-size: 12px; opacity: .9;
  user-select: none; white-space: nowrap;
}
.meta { margin: 0 0 10px 0; opacity: .85; font-size: 12px; }
.small { font-size: 12px; opacity: .9; }
.muted { opacity: .75; }
table { border-collapse: collapse; width: 100%; }
thead th { position: sticky; top: 0; background: Canvas; z-index: 2; cursor: pointer; user-select: none; }
th, td { border: 1px solid rgba(127,127,127,.35); padding: 8px 10px; vertical-align: top; }
th { text-align: left; font-weight: 650; font-size: 13px; }
td { font-size: 13px; }
tr:nth-child(even) td { background: rgba(127,127,127,.08); }
a { text-decoration: none; }
a:hover { text-decoration: underline; }
.sort-indicator { margin-left: 6px; opacity: .75; font-size: 11px; }
th.sorted .sort-indicator { opacity: 1; }
.hidden { display: none !important; }
.no-results { padding: 14px 10px; border: 1px dashed rgba(127,127,127,.45); border-radius: 12px; margin-top: 12px; }
.icon-cell { white-space: nowrap; }
.icon-img { display: inline-block; width: 28px; height: 28px; object-fit: contain; vertical-align: middle; }
.icon-fallback { font-size: 12px; opacity: .85; }
