
.public-page{min-height:100vh;background:#151b23;color:#eef2f7;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.public-shell{width:100%;max-width:1800px;margin:auto;padding:22px 28px}.public-header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 24px;background:#242d39;border:1px solid #3b4655;border-radius:22px}.public-logos{display:flex;align-items:center;gap:28px}.public-logos img{object-fit:contain}.public-logos img:nth-child(1){width:190px;max-height:72px}.public-logos img:nth-child(2){width:145px;max-height:86px}.public-logos img:nth-child(3){width:180px;max-height:94px}.public-actions{display:flex;gap:10px;flex-wrap:wrap}.public-actions a,.public-actions button{border:1px solid #556170;background:#303a47;color:#fff;border-radius:11px;padding:10px 14px;text-decoration:none;font-weight:700}.public-actions .accent{background:#ff9f0a;border-color:#ff9f0a;color:#171b20}.public-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:26px;margin-top:26px;width:100%}.public-nav{background:#242d39;border:1px solid #3b4655;border-radius:22px;padding:20px;height:max-content;position:sticky;top:18px}.public-nav h2{font-size:12px;letter-spacing:1.7px;text-transform:uppercase;color:#9aa6b4;margin:4px 10px 16px}.public-nav a{display:flex;align-items:center;gap:13px;color:#e8edf3;text-decoration:none;padding:13px 14px;border-radius:12px;margin:4px 0;font-weight:650}.public-nav a:hover,.public-nav a.active{background:#ff9f0a;color:#171b20}.public-main{min-width:0}.public-hero{position:relative;min-height:280px;border-radius:22px;overflow:hidden;border:1px solid #46515e;background:#222}.public-hero img{width:100%;height:100%;position:absolute;object-fit:cover}.public-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,12,16,.9),rgba(9,12,16,.24))}.public-hero-content{position:relative;z-index:1;padding:54px;max-width:760px}.public-hero h1{font-size:clamp(34px,5vw,62px);line-height:1;margin:10px 0}.public-hero p{font-size:19px;color:#e3e9ef}.kicker{display:inline-block;background:#ff9f0a;color:#171b20;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase}.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.portal-card{display:block;background:#242d39;border:1px solid #3b4655;border-radius:18px;padding:20px;color:#eef2f7;text-decoration:none}.portal-card:hover{border-color:#ff9f0a}.portal-card h2,.portal-card h3{margin:7px 0}.portal-card p{color:#aeb9c7;margin-bottom:0}.portal-card img{width:100%;height:210px;object-fit:cover;border-radius:13px;margin-bottom:14px}.full{grid-column:1/-1}.section-heading{margin:28px 2px 12px}.item-list{display:grid;gap:14px}.item{background:#242d39;border:1px solid #3b4655;border-radius:17px;padding:19px}.item h3{margin:0 0 8px}.item-meta{color:#ffb13b;font-weight:700;font-size:13px}.empty{padding:28px;background:#242d39;border:1px dashed #546171;border-radius:18px;color:#aeb9c7}.legal-card{background:#242d39;color:#eef2f7;border:1px solid #3b4655;border-radius:22px;padding:clamp(22px,4vw,52px);line-height:1.65}.legal-card h1,.legal-card h2,.legal-card h3{color:#fff}.legal-card a{color:#ffb13b}.public-footer{margin:30px 0 8px;text-align:center;color:#8f9baa}.public-footer a{color:#cbd3dc;margin:0 8px}@media(max-width:900px){.public-layout{grid-template-columns:1fr}.public-nav{position:static}.public-logos{gap:12px}.public-logos img:nth-child(1){width:145px}.public-logos img:nth-child(2){width:100px}.public-logos img:nth-child(3){width:120px}.public-header{align-items:flex-start;flex-direction:column}.content-grid{grid-template-columns:1fr}.public-hero-content{padding:34px 26px}.public-nav{display:grid;grid-template-columns:repeat(2,1fr)}.public-nav h2{grid-column:1/-1}}@media(max-width:520px){.public-shell{padding:10px}.public-nav{grid-template-columns:1fr}.public-logos{width:100%;justify-content:space-between}.public-logos img:nth-child(1){width:120px}.public-logos img:nth-child(2){width:75px}.public-logos img:nth-child(3){width:95px}}

/* V8: Alte weiße Inhaltskarten an das dunkle Portal anpassen */
.intro-card,.info-card,.content-card,.notice,.filter-card,.partner-card,.thanks,.knowledge-card,.ban-card{background:#242d39!important;color:#eef2f7!important;border-color:#3b4655!important}.intro-card h1,.intro-card h2,.info-card h1,.info-card h2,.content-card h1,.content-card h2,.knowledge-card h1,.knowledge-card h2,.ban-card h1,.ban-card h2{color:#fff!important}.intro-card p,.info-card p,.content-card p,.notice p,.knowledge-card p,.ban-card p{color:#c4ced9!important}

/* V9: Bilder vollständig darstellen und Navigation vereinheitlichen */
.public-logos a{display:flex;align-items:center;justify-content:center;text-decoration:none}
.public-hero{background:#0f141b;min-height:360px}
.public-hero img{object-fit:contain!important;object-position:center!important;background:#0f141b}
.public-hero:after{background:linear-gradient(90deg,rgba(9,12,16,.84),rgba(9,12,16,.08),rgba(9,12,16,.15))}
.portal-card img,.poster{object-fit:contain!important;background:#151b23}
.item-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.item-actions a{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:10px;background:#ff9f0a;color:#171b20;text-decoration:none;font-weight:800}
.item-actions a.secondary{background:#303a47;color:#fff;border:1px solid #556170}
.job-company{font-size:1.2rem;color:#fff;font-weight:900;margin-bottom:4px}
.job-title{font-size:1.05rem;color:#ffb13b;margin:0 0 8px}
.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;margin:12px 0;color:#c8d1dc}
.section-card,.check-item,.law-card{background:#1c2530!important;color:#eef2f7!important;border:1px solid #3b4655!important;border-radius:14px}
.section-card{padding:20px;margin:16px 0}.check-grid,.law-grid{display:grid;gap:12px}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-item{display:flex;gap:12px;padding:14px}.law-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.law-card{padding:16px}.law-title{display:block;color:#ffb13b;font-weight:900;margin-bottom:7px}.sub-info,.legal-ref{display:block;color:#9eabb9;margin-top:5px}.reset-btn,.main-button{display:inline-flex;margin-top:14px;padding:10px 14px;border:0;border-radius:10px;background:#ff9f0a;color:#171b20;text-decoration:none;font-weight:800}
@media(max-width:700px){.public-hero{min-height:300px}.details-grid,.check-grid,.law-grid{grid-template-columns:1fr}}

/* V10: volle Seitenbreite und übersichtlichere Fahrverbote */
.public-main{width:100%}
.table-card{background:transparent!important;padding:0!important}
.ban-table{width:100%;border-collapse:separate!important;border-spacing:0 12px!important}
.ban-table thead th{padding:10px 18px;color:#aeb9c7;border:0!important}
.ban-table tbody tr{background:#242d39;box-shadow:0 0 0 1px #3b4655;border-radius:14px}
.ban-table tbody td{padding:18px!important;border:0!important;vertical-align:top}
.ban-table tbody td:first-child{border-radius:14px 0 0 14px;min-width:120px;color:#ffb13b;font-weight:900}
.ban-table tbody td:last-child{border-radius:0 14px 14px 0}
.region-info{display:block;margin-top:6px;color:#9eabb9}
@media(max-width:700px){.public-shell{padding:10px}.ban-table thead{display:none}.ban-table,.ban-table tbody,.ban-table tr,.ban-table td{display:block;width:100%}.ban-table tbody tr{margin-bottom:14px;padding:8px}.ban-table tbody td{padding:8px 12px!important}.ban-table tbody td:first-child,.ban-table tbody td:last-child{border-radius:0}.ban-table tbody td:first-child{font-size:18px}}

.job-public-card{position:relative;overflow:hidden}.job-public-card.top-job-public{border:2px solid #ff9f0a;background:linear-gradient(120deg,rgba(255,159,10,.14),#242d39 38%);box-shadow:0 10px 32px rgba(255,159,10,.12)}.top-job-ribbon{position:absolute;top:0;right:0;background:#ff9f0a;color:#171b20;padding:8px 14px;border-radius:0 15px 0 14px;font-size:12px;font-weight:900}.job-public-head{display:flex;align-items:center;gap:16px;padding-right:95px;margin-bottom:10px}.job-public-logo{width:84px;height:64px;flex:0 0 84px;border-radius:12px;background:#fff;border:1px solid #596575;padding:5px;display:grid;place-items:center;overflow:hidden}.job-public-logo img{width:100%;height:100%;object-fit:contain}.top-job-public .job-company{color:#fff}.top-job-public .job-title{color:#ffb13b;font-size:1.18rem}@media(max-width:600px){.job-public-head{align-items:flex-start;padding-right:0;padding-top:34px}.job-public-logo{width:68px;height:56px;flex-basis:68px}}

/* V21: gemeinsames Master-Layout für alle Portal-Seiten */
:root{
  --e4t-shell-max: none;
  --e4t-shell-gutter: clamp(10px,2vw,32px);
  --e4t-sidebar-width: 300px;
  --e4t-layout-gap: clamp(16px,1.7vw,28px);
}
html,body{width:100%;max-width:none;overflow-x:hidden}
.public-page{margin:0;width:100%}
.public-shell{
  width:100%;
  max-width:var(--e4t-shell-max)!important;
  margin:0!important;
  padding:22px var(--e4t-shell-gutter)!important;
  box-sizing:border-box;
}
.public-header,.public-layout,.public-footer{width:100%;max-width:none!important}
.public-layout{
  grid-template-columns:var(--e4t-sidebar-width) minmax(0,1fr)!important;
  gap:var(--e4t-layout-gap)!important;
  align-items:start;
}
.public-main{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
}
.public-main>*{max-width:none}
.public-main .container,.public-main .container-sm,.public-main .container-md,.public-main .container-lg,.public-main .container-xl,.public-main .container-xxl{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.toolbar-card,.event-list,.friend-grid,.content-grid,.item-list,.legal-card,.charity-grid,.shop-grid,.sponsor-grid,.knowledge-grid,.news-grid,.jobs-grid,.ban-table,.table-card{
  width:100%;max-width:none!important;
}
.master-content-card{background:#242d39;border:1px solid #3b4655;border-radius:22px;padding:clamp(20px,3vw,38px)}
@media(max-width:1100px){:root{--e4t-sidebar-width:250px}}
@media(max-width:900px){
  .public-layout{grid-template-columns:1fr!important}
  .public-shell{padding:10px!important}
}
