:root {
  --myr-green: #4f7030;
  --myr-olive: #706730;
  --myr-ink: #10130d;
  --myr-paper: #f4f1e8;
  --myr-panel: #ffffff;
  --myr-line: #d7d1bf;
  --myr-danger: #b33d28;
}

* { box-sizing: border-box; }
html { font-size: 16px; }
body {
  margin: 0;
  background: linear-gradient(180deg, rgba(79, 112, 48, 0.08), rgba(112, 103, 48, 0.02)), var(--myr-paper);
  color: var(--myr-ink);
  font-family: Georgia, "Times New Roman", serif;
}
a { color: inherit; }
.page-shell { max-width: 1100px; margin: 0 auto; min-height: 100vh; display: flex; flex-direction: column; }
.site-header { background: linear-gradient(135deg, var(--myr-green), #698d43); color: #fff; padding: 1.4rem 1.5rem 1.1rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.site-brand { display: flex; align-items: center; gap: 1rem; }
.brand-logo { height: 4rem; width: auto; background: #fff; padding: .25rem .4rem; }
.brand-title { font-size: 2rem; font-weight: 700; }
.top-actions { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: .75rem; }
.top-actions a, .top-actions button { border: 1px solid rgba(255,255,255,.45); background: rgba(255,255,255,.1); color: #fff; padding: .55rem .85rem; text-decoration: none; cursor: pointer; font: inherit; }
.main-nav { display: flex; flex-wrap: wrap; background: #000; }
.main-nav a { color: #fff; text-decoration: none; padding: .8rem 1rem; border-right: 1px solid #fff; }
.main-nav a:hover { background: var(--myr-olive); }
.content-shell { padding: 1.5rem 0; flex: 1; }
.hero-card, .panel-card, .data-card, .form-card { background: var(--myr-panel); border: 1px solid var(--myr-line); box-shadow: 0 10px 30px rgba(16, 19, 13, .06); }
.hero-card { display: grid; grid-template-columns: 1.6fr 1fr; gap: 1.5rem; padding: 1.5rem; }
.hero-block { display: flex; flex-direction: column; justify-content: center; gap: 1rem; }
.hero-block h1 { margin: 0; font-size: 2.4rem; }
.hero-actions, .inline-actions, .toolbar { display: flex; flex-wrap: wrap; gap: .75rem; }
.btn-primary, .btn-secondary, button { display: inline-block; border: none; text-decoration: none; padding: .8rem 1rem; cursor: pointer; font: inherit; }
.btn-primary, button { background: var(--myr-green); color: #fff; }
.btn-secondary { background: #ebe4cf; color: var(--myr-ink); }
.stats-grid, .panel-grid, .dashboard-metrics { display: grid; gap: 1rem; }
.stats-grid article, .dashboard-metrics article { background: #f7f4ec; border: 1px solid var(--myr-line); padding: 1rem; }
.stats-grid strong, .dashboard-metrics strong { display: block; font-size: 1.3rem; }
.panel-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 1.5rem; }
.panel-card, .data-card, .form-card { padding: 1.25rem; }
.feature-list, .unstyled-list { margin: 0; padding-left: 1rem; }
.flash { margin-top: 1rem; padding: .9rem 1rem; }
.flash-success { background: #edf5e5; border: 1px solid #b7cf9d; }
.flash-error { background: #f9e6e2; border: 1px solid #d7a499; }
.dashboard-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 1rem; }
.data-table { width: 100%; border-collapse: collapse; }
.data-table th, .data-table td { border-bottom: 1px solid var(--myr-line); text-align: left; padding: .75rem .5rem; vertical-align: top; }
.data-table th { background: #f7f4ec; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.field { display: flex; flex-direction: column; gap: .35rem; }
.field.full { grid-column: 1 / -1; }
input, select, textarea { width: 100%; padding: .8rem; border: 1px solid #b9b19f; background: #fff; font: inherit; }
.search-bar { display: flex; gap: .75rem; margin-bottom: 1rem; }
.search-bar input { flex: 1; }
.site-footer { background: #000; color: #fff; text-align: center; padding: .9rem 1rem; font-size: .9rem; }
.text-danger { color: var(--myr-danger); }
@media (max-width: 900px) {
  .hero-card, .panel-grid, .dashboard-metrics, .form-grid { grid-template-columns: 1fr; }
}
