/* connect.css — Kopf, Anmeldung, Startkacheln. Baut auf basis.css und komponenten.css aus dem Portal auf (SPEC 3). */
.cn-kopf { gap: 1rem; }
.cn-marke { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 1.1rem; letter-spacing: 0.02em; }
.cn-logo { display: inline-grid; place-items: center; width: 1.8rem; height: 1.8rem; border-radius: 6px; background: #fff; color: var(--akzent); font-weight: 800; }
.cn-kopf .instanz-tag { margin-left: 0; }
.cn-konto { display: flex; align-items: center; gap: 0.75rem; margin: 0 0 0 auto; color: #eee; }
.cn-abmelden { background: transparent; border: 1px solid rgba(255,255,255,0.5); color: #fff; padding: 0.3rem 0.8rem; border-radius: 6px; cursor: pointer; }
.cn-abmelden:hover { background: rgba(255,255,255,0.12); }
main.cn-anmeldung { display: grid; place-items: center; min-height: 60vh; }
.cn-anmeldeform { display: grid; gap: 0.9rem; width: min(24rem, 100%); padding: 1.5rem; }
.cn-anmeldeform h1 { margin: 0 0 0.3rem; font-size: 1.4rem; }
.cn-anmeldeform label { display: grid; gap: 0.3rem; font-weight: 600; }
.cn-anmeldeform input { font: inherit; padding: 0.55rem 0.7rem; border: 1px solid var(--rand); border-radius: 6px; }
.cn-anmeldeform button { min-height: 2.8rem; }
.cn-fehler { margin: 0; color: var(--ueberfaellig-fg); font-weight: 600; }
.cn-kacheln { list-style: none; padding: 0; margin: 1rem 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 1rem; }
.cn-kachel { display: grid; gap: 0.4rem; padding: 1.1rem 1.2rem; color: inherit; text-decoration: none; border-left: 4px solid var(--akzent); }
.cn-kachel:hover { box-shadow: 0 2px 10px rgb(0 0 0 / 0.08); }
.cn-kachel strong { font-size: 1.15rem; color: var(--akzent); }
.cn-kachel span { color: var(--muted); }
@media (max-width: 40rem) { .cn-konto span { display: none; } }
.instanz-tag { display: inline-block; padding: 0.1rem 0.5rem; border-radius: 4px; background: #c62828; color: #fff; font-weight: 700; font-size: 0.8rem; letter-spacing: 0.04em; }
