/* assets/style.css */
:root {
  --green: #1f9d55; /* Grundfarbe grün */
  --green-600: #15803d;
  --bg: #0b1b12;
  --panel: #0f2418;
  --text: #e6f6ec;
  --muted: #a7d8bf;
  --shadow: rgba(0,0,0,0.4);
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji';
  background: linear-gradient(180deg, var(--bg), #0e2017 40%, #0a1a12 100%);
  color: var(--text);
  min-height: 100vh;
  display: grid;
  grid-template-columns: 280px 1fr;
}

a { color: var(--muted); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Collapsible sidebar */
.nav-toggle { display: none; }
.hamburger {
  display: none;
  position: fixed; top: 14px; left: 14px;
  font-size: 28px; padding: 6px 10px;
  background: var(--green);
  color: white;
  border-radius: 8px;
  z-index: 1001;
  box-shadow: 0 6px 16px var(--shadow);
  cursor: pointer;
}

.sidebar {
  position: sticky; top: 0;
  height: 100vh;
  background: var(--panel);
  padding: 20px;
  box-shadow: 6px 0 20px var(--shadow);
}

.brand { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.logo { width: 36px; height: 36px; border-radius: 10px; background: var(--green); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; }
.brand-text { font-weight: 700; letter-spacing: .3px; }

.menu { display: grid; gap: 8px; }
.menu a {
  padding: 10px 12px;
  border-radius: 10px;
  background: transparent;
  transition: background .2s, transform .05s;
}
.menu a:hover { background: #11311f; transform: translateY(-1px); }
.menu a:active { transform: translateY(0); }

.content {
  min-height: 100vh;
  padding: 32px;
}

/* Cards & layout */
.card {
  background: rgba(17, 49, 31, 0.8);
  border: 1px solid #174a2a;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 10px 30px var(--shadow);
  margin-bottom: 20px;
}

.btn {
  display: inline-block;
  padding: 10px 14px;
  border-radius: 12px;
  background: var(--green);
  color: white;
  border: none;
  cursor: pointer;
  font-weight: 700;
  transition: transform .05s, filter .2s;
}
.btn:hover { filter: brightness(1.05); }
.btn:active { transform: translateY(1px); }
.btn-secondary { background: #134e30; }

.input, .textarea, .select {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #174a2a;
  background: #0b2015;
  color: var(--text);
}

/* Footer */
.footer { margin-top: 40px; color: #cde7d6; opacity: .9; }

/* Responsive */
@media (max-width: 900px) {
  body { grid-template-columns: 1fr; }
  .hamburger { display: block; }
  .sidebar {
    position: fixed; left: -290px; top: 0; bottom: 0; width: 260px;
    transition: left .2s;
    z-index: 1000;
  }
  .nav-toggle:checked ~ .sidebar { left: 0; }
  .nav-toggle:checked ~ .content { filter: blur(0); }
  .content { padding-top: 72px; }
}
