/* Brown theme. Palette: espresso #3e2518, brown #6b4226, caramel #a8703a, cream #f7f0e8 */
:root {
  --brown-900: #3e2518;
  --brown-700: #6b4226;
  --brown-600: #7d4e2d;
  --brown-500: #a8703a;
  --brown-100: #efe2d3;
  --cream: #f7f0e8;
  --bs-primary: #6b4226;
  --bs-primary-rgb: 107, 66, 38;
  --bs-link-color: #6b4226;
  --bs-link-color-rgb: 107, 66, 38;
  --bs-link-hover-color: #3e2518;
  --bs-link-hover-color-rgb: 62, 37, 24;
  --bs-body-bg: #f7f0e8;
  --bs-body-color: #3b2a20;
  --bs-border-color: #e1d2c1;
}
body { background: var(--cream); color: #3b2a20; }
.navbar.bg-primary { background: linear-gradient(90deg, var(--brown-900), var(--brown-700)) !important; }

.card { border: 0; border-radius: 16px; box-shadow: 0 5px 24px rgba(62, 37, 24, .09); }
.hero { background: linear-gradient(120deg, var(--brown-900), var(--brown-500)); color: #fff; border-radius: 18px; padding: 28px; }
.stat { font-size: 2rem; font-weight: 700; color: var(--brown-700); }
.table { vertical-align: middle; --bs-table-bg: transparent; }
.table > thead { background: var(--brown-100); color: var(--brown-900); }
.qr { max-width: 220px; width: 100%; height: auto; image-rendering: pixelated; }
.form-control, .form-select, .btn { border-radius: 9px; }
.hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }

/* Buttons */
.btn-primary {
  --bs-btn-bg: #6b4226; --bs-btn-border-color: #6b4226; --bs-btn-color: #fff;
  --bs-btn-hover-bg: #54331c; --bs-btn-hover-border-color: #54331c; --bs-btn-hover-color: #fff;
  --bs-btn-active-bg: #3e2518; --bs-btn-active-border-color: #3e2518; --bs-btn-active-color: #fff;
  --bs-btn-disabled-bg: #6b4226; --bs-btn-disabled-border-color: #6b4226;
  --bs-btn-focus-shadow-rgb: 107, 66, 38;
}
.btn-outline-primary {
  --bs-btn-color: #6b4226; --bs-btn-border-color: #6b4226;
  --bs-btn-hover-bg: #6b4226; --bs-btn-hover-border-color: #6b4226; --bs-btn-hover-color: #fff;
  --bs-btn-active-bg: #54331c; --bs-btn-active-border-color: #54331c; --bs-btn-active-color: #fff;
  --bs-btn-focus-shadow-rgb: 107, 66, 38;
}
.btn-outline-secondary {
  --bs-btn-color: #7a6455; --bs-btn-border-color: #a89483;
  --bs-btn-hover-bg: #7a6455; --bs-btn-hover-border-color: #7a6455;
  --bs-btn-active-bg: #5e4a3d; --bs-btn-active-border-color: #5e4a3d;
}
.btn-outline-light:hover { color: var(--brown-900); }
.btn-light { color: var(--brown-900); }
.btn-link { color: var(--brown-700); }

/* Forms */
.form-control:focus, .form-select:focus { border-color: var(--brown-500); box-shadow: 0 0 0 .25rem rgba(168, 112, 58, .25); }
.form-check-input:checked { background-color: #6b4226; border-color: #6b4226; }
.form-check-input:focus { border-color: var(--brown-500); box-shadow: 0 0 0 .25rem rgba(168, 112, 58, .25); }
.form-control[readonly] { background: var(--brown-100); }
a { color: var(--brown-700); }
a:hover { color: var(--brown-900); }
details > summary { cursor: pointer; color: var(--brown-700); }

/* Alerts in the same warm family */
.alert-info { --bs-alert-bg: #f3e6d6; --bs-alert-border-color: #e3cdb3; --bs-alert-color: #5a3a22; }
.alert-warning { --bs-alert-bg: #fbefd2; --bs-alert-border-color: #f0dba6; --bs-alert-color: #6d4c0f; }
.text-success { color: #5b7a3a !important; }

/* Printing: hide navigation and controls, clean sheets */
.page-break { break-after: page; page-break-after: always; }
.page-break:last-child { break-after: auto; page-break-after: auto; }
.qr-sheet { padding: 24px 0 40px; }
.qr-sheet .qr-big { max-width: 380px; }
@media print {
  .no-print, .navbar { display: none !important; }
  body { background: #fff !important; color: #000; }
  main.container { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
  .print-sheet { margin-bottom: 0 !important; }
  .print-table, .print-table th, .print-table td { border-color: #555 !important; }
  .print-table th { background: #e9ddd0 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-table tr { break-inside: avoid; }
  .print-table thead { display: table-header-group; }
  .qr-sheet .qr-big { max-width: 420px; }
  a { color: inherit; text-decoration: none; }
}
