/* VGW – interner Bereich Aufsichtsrat */
.vgw-intern { --rot: var(--wp--preset--color--vgw-rot, #E30513); --grau: var(--wp--preset--color--hellgrau, #F2F2F2); --linie: var(--wp--preset--color--linie, #DCDCDE); --text2: var(--wp--preset--color--grau, #6A6A6A); }
.vgw-intern__klein { font-size: var(--wp--preset--font-size--small); color: var(--text2); margin: .2rem 0 0; }
.vgw-intern__hinweis { background: #fdecee; border-left: 3px solid var(--rot); padding: .6rem .9rem; }

/* Anmeldung */
.vgw-intern__anmeldung { max-width: 30rem; background: var(--grau); border-top: 4px solid var(--rot); padding: var(--wp--preset--spacing--40); }
.vgw-intern__anmeldung h2 { margin-top: 0; }
.vgw-intern__anmeldung form p { margin: 0 0 1rem; }
.vgw-intern__anmeldung label { display: block; font-size: var(--wp--preset--font-size--small); margin-bottom: .3rem; }
.vgw-intern__anmeldung input[type="text"],
.vgw-intern__anmeldung input[type="password"] { width: 100%; box-sizing: border-box; font: inherit; padding: .65rem .75rem; border: 1px solid #b9b9bd; background: #fff; }
.vgw-intern__anmeldung input[type="text"]:focus,
.vgw-intern__anmeldung input[type="password"]:focus { outline: 2px solid var(--rot); border-color: var(--rot); }
.vgw-intern__anmeldung .login-remember label { display: flex; gap: .5rem; align-items: center; }
.vgw-intern__anmeldung input[type="submit"] { font: inherit; cursor: pointer; background: var(--rot); color: #fff; border: 0; padding: .75rem 1.6rem; }
.vgw-intern__anmeldung input[type="submit"]:hover { background: var(--wp--preset--color--vgw-rot-dunkel, #B8040F); }

/* Kopf */
.vgw-intern__kopf { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; padding-bottom: .8rem; border-bottom: 1px solid var(--linie); margin-bottom: 1.2rem; }
.vgw-intern__kopf p { margin: 0; }
.vgw-intern__abmelden { border: 1.5px solid var(--rot); color: var(--rot); padding: .35rem .9rem; text-decoration: none; background: none !important; }
.vgw-intern__abmelden:hover { background: var(--rot) !important; color: #fff !important; }

/* Jahresnavigation */
.vgw-intern__jahre { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.5rem; }
.vgw-intern__jahre a { padding: .3rem .85rem; border-radius: 999px; background: var(--grau); color: inherit; text-decoration: none; background-image: none !important; font-size: var(--wp--preset--font-size--small); }
.vgw-intern__jahre a:hover { background: var(--rot); color: #fff !important; }

/* Jahr (aufklappbar) */
.vgw-intern__jahr { border-top: 1px solid var(--linie); }
.vgw-intern__jahr:last-of-type { border-bottom: 1px solid var(--linie); }
.vgw-intern__jahr > summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: baseline; padding: 1rem 0; font-size: var(--wp--preset--font-size--x-large); }
.vgw-intern__jahr > summary::-webkit-details-marker { display: none; }
.vgw-intern__jahr > summary::after { content: "+"; color: var(--rot); font-size: 1.6rem; margin-left: 1rem; }
.vgw-intern__jahr[open] > summary::after { content: "–"; }
.vgw-intern__anzahl { margin-left: auto; font-size: var(--wp--preset--font-size--small); color: var(--text2); }
.vgw-intern__sitzungen { display: grid; gap: 1rem; padding-bottom: 1.5rem; }

/* Sitzung */
.vgw-intern__sitzung { display: grid; grid-template-columns: 5.5rem 1fr; gap: 1.2rem; background: var(--grau); padding: 1.1rem 1.2rem; border-left: 4px solid var(--rot); }
.vgw-intern__datum { text-align: center; background: #fff; padding: .5rem .3rem; align-self: start; }
.vgw-intern__datum .tag { display: block; font-size: 2rem; line-height: 1; color: var(--rot); }
.vgw-intern__datum .monat { display: block; font-size: var(--wp--preset--font-size--small); color: var(--text2); margin-top: .25rem; }
.vgw-intern__inhalt h3 { margin: 0; font-size: var(--wp--preset--font-size--large); }
.vgw-intern__dokumente { list-style: none; padding: 0; margin: .8rem 0 0; }
.vgw-intern__dokumente li { display: flex; align-items: center; gap: .8rem; padding: .55rem .7rem; background: #fff; }
.vgw-intern__dokumente li + li { margin-top: .4rem; }
.vgw-intern__pdf { flex: none; font-size: .7rem; letter-spacing: .05em; color: #fff; background: var(--rot); padding: .2rem .4rem; }
.vgw-intern__titel { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.vgw-intern__aktionen { display: flex; gap: .4rem; flex: none; }
.vgw-intern__aktionen a { font-size: var(--wp--preset--font-size--small); padding: .3rem .7rem; border: 1px solid var(--linie); color: inherit; text-decoration: none; background-image: none !important; }
.vgw-intern__aktionen a:hover { border-color: var(--rot); color: var(--rot); }
.vgw-intern__aktionen a:last-child { background: var(--rot) !important; border-color: var(--rot); color: #fff; }
.vgw-intern__aktionen a:last-child:hover { background: var(--wp--preset--color--vgw-rot-dunkel, #B8040F) !important; color: #fff; }

@media (max-width: 640px) {
	.vgw-intern__sitzung { grid-template-columns: 1fr; }
	.vgw-intern__datum { display: flex; gap: .5rem; align-items: baseline; justify-self: start; padding: .3rem .6rem; }
	.vgw-intern__datum .tag { font-size: 1.3rem; }
	.vgw-intern__dokumente li { flex-wrap: wrap; }
	.vgw-intern__aktionen { width: 100%; }
}

/* Gremium: Filter und Kennzeichnung */
.vgw-intern__filter { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0 0 .8rem; }
.vgw-intern__filter a { padding: .3rem .8rem; border: 1px solid var(--linie); color: inherit; text-decoration: none; background-image: none !important; font-size: var(--wp--preset--font-size--small); }
.vgw-intern__filter a:hover { border-color: var(--rot); color: var(--rot); }
.vgw-intern__filter a[aria-current="true"] { background: var(--rot); border-color: var(--rot); color: #fff; }
.vgw-intern__gremium { display: inline-block; font-size: .75rem; letter-spacing: .04em; text-transform: uppercase; color: var(--rot); margin-bottom: .2rem; }
.vgw-intern__datum .tag--monat { font-size: 1.35rem; text-transform: uppercase; padding-top: .3rem; }

/* Ersteinrichtung & Zugangsdaten (1.2.0) */
.vgw-intern__hinweis--ok { background: #e8f5ec; border-left-color: #1e7b34; }
.vgw-intern input[type="email"] { width: 100%; box-sizing: border-box; font: inherit; padding: .65rem .75rem; border: 1px solid #b9b9bd; background: #fff; }
.vgw-intern input[type="email"]:focus { outline: 2px solid var(--rot); border-color: var(--rot); }
.vgw-intern__einrichtung { max-width: 34rem; }
.vgw-intern__inline { display: inline; margin: 0; }
.vgw-intern__inline button { font: inherit; background: none; border: 0; padding: 0; color: var(--rot); text-decoration: underline; cursor: pointer; }
.vgw-intern__zugang { margin-top: 2.5rem; border-top: 1px solid var(--linie); }
.vgw-intern__zugang > summary { cursor: pointer; padding: 1rem 0; font-size: var(--wp--preset--font-size--large); }
.vgw-intern__zugang-formulare { display: grid; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap: 1.5rem; padding-bottom: 1.5rem; }
.vgw-intern__zugang-formulare form { background: var(--grau); padding: 1.2rem 1.4rem; border-top: 3px solid var(--rot); }
.vgw-intern__zugang-formulare h3 { margin: 0 0 .8rem; font-size: 1.1rem; }
.vgw-intern__zugang-formulare p { margin: 0 0 .8rem; }
.vgw-intern__zugang-formulare label { display: block; font-size: var(--wp--preset--font-size--small); }
.vgw-intern__zugang-formulare input[type="password"] { width: 100%; box-sizing: border-box; font: inherit; padding: .55rem .7rem; border: 1px solid #b9b9bd; background: #fff; margin-top: .25rem; }
.vgw-intern__zugang-formulare input[type="email"] { margin-top: .25rem; padding: .55rem .7rem; }
.vgw-intern__zugang-formulare button { font: inherit; cursor: pointer; background: var(--rot); color: #fff; border: 0; padding: .6rem 1.2rem; }

/* Anmeldung mit Code (1.3.0) */
.vgw-intern__zugang-formulare button.vgw-intern__linkknopf { background: none; color: var(--rot); padding: 0; text-decoration: underline; }

/* Zugangsdaten oben (1.3.1) */
.vgw-intern__kopf-links { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; }
.vgw-intern__zugang-link { color: var(--rot); }
.vgw-intern__hinweis--info { background: #f3f4f6; border-left-color: #6b7280; }
.vgw-intern__hinweis + .vgw-intern__hinweis { margin-top: .6rem; }
.vgw-intern__zugang { margin: 0 0 1.5rem; border-top: 0; border-bottom: 1px solid var(--linie); }
.vgw-intern__zugang > summary { padding: .7rem 0; font-size: var(--wp--preset--font-size--medium); }
