/* App-spezifisches CSS - nur hier, nicht in web-style/ (Buglog #12250-Folge):
 * eine Kundeninstanz (novatech-cloud) teilt sich web-style/ mit jedem anderen
 * Mantik-Projekt - ein fest stehendes Seitenmenue gehoert nicht dorthin, ohne
 * dass novatech das mitentscheidet. Tokens kommen aus mantik/tokens.css
 * (--surface, --text, --border, --accent, ...), keine eigenen Farben. */

body { margin: 0; }

/* --- Persistentes Seitenmenue (Betreiber-Vorgabe 22.10.2026: "genauso wie
 * das alte [Vereinskreis]" - das Vorbild hat ein festes Menue links statt
 * nur der flachen Kachel-Uebersicht; Werte aus Dienste/vereinskreis/web/
 * static/app.css uebernommen, auf circlebase-Tokens umgesetzt). ------------ */
.app-layout {
  display: flex;
  min-height: 100vh;
}
.app-sidebar {
  display: none;
}
.app-main {
  flex: 1;
  min-width: 0;
}
@media (min-width: 768px) {
  .app-layout { flex-direction: row; }
  .app-sidebar {
    display: flex;
    flex-direction: column;
    width: 240px;
    flex-shrink: 0;
    height: 100vh;
    box-sizing: border-box;
    overflow-y: auto;
    background: var(--surface);
    border-right: 1px solid var(--border);
    padding: var(--space-4) 0;
    position: sticky;
    top: 0;
    align-self: flex-start;
  }
}
.sidebar-brand {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: 0 var(--space-4) var(--space-3);
  border-bottom: 1px solid var(--border);
  margin-bottom: var(--space-2);
  font-weight: 700;
  font-size: var(--font-size-lg);
  color: var(--text);
}
.sidebar-nav-item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-4);
  color: var(--text-soft);
  text-decoration: none;
  font-weight: 500;
  font-size: var(--font-size-sm);
  cursor: pointer;
  border: none;
  background: transparent;
  width: 100%;
  text-align: left;
  transition: background 0.15s, color 0.15s;
}
.sidebar-nav-item:hover { background: var(--accent-soft); color: var(--accent); }
.sidebar-nav-item.active { background: var(--accent-soft); color: var(--accent); font-weight: 700; }
.sidebar-nav-icon { font-size: var(--font-size-lg); width: 28px; text-align: center; }
.sidebar-user {
  margin-top: auto;
  padding: var(--space-3) var(--space-4);
  border-top: 1px solid var(--border);
  font-size: var(--font-size-xs);
  color: var(--text-mute);
}

/* --- Begruessung (gleiches Vorbild: Vereinskreis zeigt "Hallo!" als grosse
 * Ueberschrift ueber der Startseite, nicht nur in der schmalen Kopfzeile). */
.m-greeting {
  font-size: var(--font-size-2xl);
  font-weight: 700;
  color: var(--text);
  margin: var(--space-2) 0 var(--space-4);
}
