/* ===== shared warm-beige theme for menu pages (NOT Reports) ===== */
/* This file is included on every page EXCEPT Reports (see default.ctp), so selectors are global. */

.content-wrapper { padding-top: 10px; }

/* boxes */
.box {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 4px 16px var(--theme-shadow);
  border: 1px solid var(--theme-border);
  margin-bottom: 18px;
}
.box.box-primary {
  border-top: 3px solid var(--theme-accent-medium);
}
.box-header {
  padding: 15px 18px;
  background: var(--theme-surface-soft);
  border-bottom: 1px solid var(--theme-border);
  border-radius: 10px 10px 0 0;
}
.box-header .box-title {
  font-weight: 700;
  color: var(--theme-heading);
}
.box-header .box-title i {
  color: var(--theme-accent-medium);
  margin-right: 5px;
}
.box-tools .btn { color: var(--theme-accent-dark); }

/* headers */
.content-header h1 { color: var(--theme-heading); }
.content-header h1 small { color: var(--theme-muted); }
h3, h4, h5 { color: var(--theme-heading); }

/* form controls */
.form-control {
  border-color: var(--theme-border-strong);
  border-radius: 6px;
  box-shadow: none;
}
.form-control:focus {
  border-color: var(--theme-accent-medium);
  box-shadow: 0 0 0 3px var(--theme-focus);
}
.input-group-addon {
  background-color: var(--theme-accent-medium);
  border-color: var(--theme-accent-medium);
  color: #fff;
  min-width: 34px;
  text-align: center;
}
label { color: var(--theme-muted); font-weight: 600; }
.select2-container .select2-selection--single {
  border-color: var(--theme-border-strong);
  border-radius: 6px;
  box-shadow: none;
}
.select2-container .select2-selection--single .select2-selection__rendered { color: var(--theme-text); }
.select2-container--default.select2-container--open .select2-selection--single {
  border-color: var(--theme-accent-medium);
  box-shadow: 0 0 0 3px var(--theme-focus);
}
.select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: var(--theme-accent-medium); }

/* tables */
table > thead > tr > th {
  padding: 12px;
  background-color: var(--theme-accent-deep);
  color: var(--theme-surface);
  border-bottom: 1px solid var(--theme-accent-border);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .4px;
  vertical-align: middle;
  white-space: nowrap;
}
table > tbody tr:hover { background-color: var(--theme-surface-muted); }
table > tbody tr td {
  vertical-align: middle;
  border-color: var(--theme-border-soft);
}
table a:not(.btn) { color: var(--theme-accent-dark); font-weight: 600; }

/* buttons */
.btn-primary,
a.btn-primary {
  border-color: var(--theme-accent);
  background-color: var(--theme-accent);
  box-shadow: 0 3px 9px var(--theme-shadow);
}
.btn-primary:hover,
.btn-primary:focus { background-color: var(--theme-accent-dark) !important; }
.btn-success { background-color: var(--theme-sage); border-color: var(--theme-sage-dark); }
.btn-success:hover { background-color: var(--theme-sage-dark) !important; }
.btn-warning { background-color: var(--theme-gold); border-color: var(--theme-gold-dark); color: #fff; }
.btn-warning:hover { background-color: var(--theme-gold-dark) !important; }
.btn-danger { background-color: var(--theme-terracotta); border-color: var(--theme-terracotta-dark); }
.btn-info { background-color: var(--theme-accent-medium); border-color: var(--theme-accent); }
.pos-action-btn,
.back-btn {
  height: 34px;
  font-size: 15px;
  font-weight: 700;
  border-radius: 6px;
  box-shadow: 0 2px 6px var(--theme-accent-shadow);
}
.pos-action-btn:focus,
.back-btn:focus {
  outline: 3px solid var(--theme-focus);
  outline-offset: 1px;
}
.btn-xs {
  border-radius: 24px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 600;
}

/* modal styling */
.modal-header { background: var(--theme-accent-deep); color: var(--theme-surface); }
.modal-header .close { color: var(--theme-surface); opacity: .9; }
.modal-header .close:hover { color: var(--theme-surface); opacity: 1; }
.modal-header .modal-title { color: var(--theme-surface); }
.modal-body .box,
.modal-body .box.box-primary { border-top-color: var(--theme-accent-medium); }
.modal-body .input-group-addon { background: var(--theme-accent-medium); border-color: var(--theme-accent-medium); color: #fff; }
.modal-body .btn-success { background: var(--theme-sage-soft); border-color: var(--theme-sage-dark); }
.modal-body label { color: var(--theme-muted); }

/* pagination + dataTables */
.next_btn,
.previous_btn,
.pagination>li>a,
.pagination>li>span:focus,
.pagination>li>a:focus {
  background: var(--theme-accent-medium);
  border-color: var(--theme-accent-medium) !important;
  color: #fff;
}
.next_btn:hover,
.previous_btn:hover,
.pagination>li>a:hover,
.pagination>li>span:hover { background-color: var(--theme-accent-dark); }
.dataTables_filter label,
.dataTables_length label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--theme-muted);
  font-weight: 600;
}
.pagination .current { background-color: var(--theme-accent-medium) !important; border-color: var(--theme-accent-medium) !important; }

@media (max-width: 767px) {
  .box-header { padding: 13px 14px; }
}