:root {
    --vz-bg: #d3dfec;
    --vz-text: #1a1a1a;
    --vz-card-bg: #ffffff;
    --vz-border: #7a9ac4;
    --vz-radius: 4px;
    --vz-topbar-bg: linear-gradient(180deg, #4a76a8 0%, #22508f 100%);
    --vz-topbar-text: #ffffff;
    --vz-accent: linear-gradient(180deg, #5f8fd4, #2b5aa5);
    --vz-link: #2b5aa5;
    --vz-font: Tahoma, Verdana, Arial, sans-serif;
}

body {
    background: var(--vz-bg);
    font-size: 13px;
}
h1 { font-size: 1.5em; }

.vz-topbar {
    border-bottom: 3px solid #163a6e;
    box-shadow: 0 2px 4px rgba(0,0,0,.25);
}
.vz-logo { text-shadow: 0 1px 2px rgba(0,0,0,.4); font-size: 1.3em; }

/* Klassisches "Kasten"-Layout: jede Karte bekommt eine blaue Titelleiste,
   die randlos bis an die Kartenkante reicht - genau wie bei alten
   Community-Portalen aus den 2000ern. */
.vz-card {
    border: 1px solid var(--vz-border);
    border-radius: var(--vz-radius);
    box-shadow: 0 1px 3px rgba(0,0,0,.12);
    padding-top: 0;
    overflow: hidden;
}
.vz-card > h1:first-child,
.vz-card > h3:first-child {
    margin: 0 0 12px 0;
    padding: 8px 14px;
    background: linear-gradient(180deg, #6f9bd8, #3a6bb0);
    color: #fff;
    font-size: 1em;
    font-weight: bold;
    text-shadow: 0 1px 1px rgba(0,0,0,.3);
    border-bottom: 1px solid #1e4d8f;
}
.vz-card > h1:first-child { font-size: 1.15em; }
.vz-card { padding-left: 14px; padding-right: 14px; padding-bottom: 14px; }

.vz-comment {
    border-top: 1px solid #dbe6f3;
    background: #f7fafd;
    margin: 0 -14px;
    padding: 8px 14px;
}
.vz-comment:nth-child(even) { background: #eef4fb; }
.vz-comment:first-child { border-top: none; }

/* Rechteckige, kräftig gerahmte Glossy-Buttons statt Pillen */
.vz-btn {
    background: var(--vz-accent);
    border: 1px solid #163a6e;
    border-radius: 4px;
    box-shadow: 0 1px 0 rgba(255,255,255,.4) inset;
    text-shadow: 0 -1px 0 rgba(0,0,30,.3);
    font-weight: bold;
}
.vz-btn.secondary {
    background: linear-gradient(180deg, #f5f5f5, #d5d5d5);
    color: #333; border-color: #999; text-shadow: 0 1px 0 #fff;
}
.vz-btn.danger { background: linear-gradient(180deg, #e57a70, #c0342a); border-color: #7a1a13; }

.vz-feed-name { color: #163a6e; font-weight: 700; }
.vz-avatar { border: 2px solid #fff; box-shadow: 0 0 0 1px #a9c3e2; }

input[type=text], input[type=email], input[type=password], input[type=date],
textarea, select {
    border: 1px solid #7a9ac4;
    border-radius: 3px;
    box-shadow: 0 1px 2px rgba(0,0,0,.1) inset;
}

.vz-badge { background: #d8362a; }
.vz-topbar-inner { padding: 8px 16px; }
