@import url("../plugins/themify-icons/themify-icons.css");

/* IVÖ Serviceportal 2026: kühles, technisches Interface */
:root {
  --portal-ink: #1b2330;
  --portal-muted: #657083;
  --portal-bg: #eef1f5;
  --portal-panel: #f7f8fa;
  --portal-line: rgba(27, 35, 48, .1);
  --portal-bordeaux: #7b3738;
  --portal-bordeaux-dark: #532326;
  --portal-dark: #171d28;
}

body.member-area,
body.login-page { background: var(--portal-bg); color: var(--portal-ink); }
.member-area .navigation,
.login-page .navigation { border-bottom: 1px solid var(--portal-line); box-shadow: 0 4px 18px rgba(22, 28, 38, .05); }
.member-area .container.shadow.section-sm.rounded {
  background: #fff;
  border: 1px solid rgba(27, 35, 48, .08);
  border-radius: 14px !important;
  box-shadow: 0 16px 44px rgba(22, 28, 38, .08) !important;
}
.member-area .member-page-title { color: var(--portal-ink); }
.member-area .member-page-subtitle { color: var(--portal-muted); }
.portal-kicker {
  display: inline-flex;
  color: var(--portal-bordeaux);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.portal-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin: 24px 0 18px;
  padding: 30px;
  overflow: hidden;
  position: relative;
  color: #fff;
  border-radius: 14px;
  background: linear-gradient(130deg, #171d28 0%, #293242 62%, #662e31 100%);
  box-shadow: 0 18px 42px rgba(22, 28, 38, .18);
}
.portal-hero::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -90px;
  top: -150px;
  border: 42px solid rgba(255, 255, 255, .06);
  border-radius: 50%;
}
.portal-hero-copy { position: relative; z-index: 1; max-width: 610px; }
.portal-hero h2 { margin: 8px 0; color: #fff; font-size: clamp(24px, 3vw, 34px); line-height: 1.18; }
.portal-hero p { margin: 0; color: #cbd2dc; line-height: 1.6; }
.portal-hero .portal-kicker { color: #e6b9bb; }
.portal-hero-actions { display: flex; gap: 10px; flex: 0 0 auto; position: relative; z-index: 1; }
.portal-hero .btn { white-space: nowrap; border-radius: 8px; }
.portal-hero .btn-outline-light { color: #fff; border-color: rgba(255, 255, 255, .45); }

.portal-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 28px;
}
.portal-editor-callout { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 30px; padding:20px 22px; background:#fff; border:1px solid rgba(123,55,56,.2); border-radius:10px; }
.portal-editor-callout h2 { margin:4px 0; font-size:20px; }
.portal-editor-callout p { margin:0; color:var(--portal-muted); font-size:13px; }
@media(max-width:767.98px){.portal-editor-callout{align-items:flex-start;flex-direction:column}.portal-editor-callout .btn{width:100%}}
.portal-stat {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  color: var(--portal-ink) !important;
  background: var(--portal-panel);
  border: 1px solid var(--portal-line);
  border-radius: 10px;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.portal-stat:hover { transform: translateY(-2px); border-color: rgba(123, 55, 56, .35); background: #fff; }
.portal-stat-icon,
.portal-service-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  color: var(--portal-bordeaux);
  background: rgba(123, 55, 56, .09);
  border-radius: 9px;
  font-size: 18px;
}
.portal-stat span:last-child { min-width: 0; }
.portal-stat strong,
.portal-stat small { display: block; }
.portal-stat strong { font-size: 14px; }
.portal-stat small { color: var(--portal-muted); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.member-area .menu-tile {
  border-radius: 9px;
  border-color: var(--portal-line);
  box-shadow: 0 3px 12px rgba(22, 28, 38, .035);
}
.member-area .menu-tile:hover { transform: translateY(-2px); border-color: rgba(123, 55, 56, .3); background: #fbfcfd; }
.member-area .member-section-title { color: #4b5668; }
.member-area .member-section-line { background: var(--portal-line); }
.member-area .btn-soft { border-radius: 7px; }

.portal-service-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.portal-service-card {
  display: flex;
  gap: 14px;
  padding: 20px;
  border: 1px solid var(--portal-line);
  border-radius: 10px;
  background: var(--portal-panel);
}
.portal-service-card h3 { margin: 0 0 5px; font-size: 16px; }
.portal-service-card p { margin: 0 0 8px; color: var(--portal-muted); font-size: 13px; line-height: 1.55; }
.portal-service-card a { font-size: 13px; font-weight: 700; }
.portal-service-card-dark { background: #202735; color: #fff; }
.portal-service-card-dark h3 { color: #fff; }
.portal-service-card-dark p { color: #b9c1cd; }
.portal-service-card-dark a { color: #e6b9bb; }
.portal-service-card-dark .portal-service-icon { color: #fff; background: rgba(255, 255, 255, .09); }

.admin-stats {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0;
}
.admin-stat {
  display: block;
  padding: 16px;
  color: var(--portal-ink) !important;
  background: var(--portal-panel);
  border: 1px solid var(--portal-line);
  border-radius: 10px;
  transition: transform .15s ease, border-color .15s ease;
}
.admin-stat:hover { transform: translateY(-2px); border-color: rgba(123, 55, 56, .35); }
.admin-stat span,
.admin-stat small { display: block; color: #6c7789; font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.admin-stat strong { display: block; margin: 5px 0 2px; color: var(--portal-ink); font-size: 30px; line-height: 1; }
.admin-stat small { text-transform: none; letter-spacing: 0; }
.admin-card { border-radius: 10px; box-shadow: 0 5px 18px rgba(22, 28, 38, .04); }
.admin-card-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.admin-eyebrow { display: block; margin-bottom: 3px; color: var(--portal-bordeaux); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.admin-filter { display: flex; align-items: center; gap: 10px; padding: 12px; margin-bottom: 16px; background: var(--portal-panel); border-radius: 9px; }
.admin-search { position: relative; flex: 1; }
.admin-search i { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: #7a8494; }
.admin-search input,
.admin-filter select { width: 100%; height: 40px; border: 1px solid rgba(27, 35, 48, .14); border-radius: 7px; background: #fff; color: var(--portal-ink); }
.admin-search input { padding: 0 12px 0 38px; }
.admin-filter select { width: auto; min-width: 170px; padding: 0 10px; }
.admin-filter-reset { font-size: 13px; white-space: nowrap; }
.admin-empty { padding: 40px !important; text-align: center; color: #6c7789; }
.admin-table td,
.admin-table th { max-width: 280px; overflow-wrap: anywhere; }

.login-page .login-section { background: radial-gradient(900px 420px at 110% -20%, rgba(123, 55, 56, .13), transparent 60%), linear-gradient(145deg, #f6f8fb, #e9edf3); }
.login-intro { margin-bottom: 28px; }
.login-intro h1 { margin: 12px 0 10px; color: var(--portal-dark); font-size: clamp(30px, 5vw, 44px); }
.login-intro p { max-width: 620px; margin: 0 auto; color: var(--portal-muted); }
.login-page .login-card { border-radius: 12px !important; border: 1px solid var(--portal-line); box-shadow: 0 20px 55px rgba(22, 28, 38, .12) !important; }
.access-update[hidden] { display: none; }
.access-update { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: 20px; }
.access-update-backdrop { position: absolute; inset: 0; background: rgba(14, 18, 25, .72); backdrop-filter: blur(7px); }
.access-update-dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 650px);
  padding: 34px 36px 28px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 15px;
  box-shadow: 0 30px 90px rgba(0,0,0,.3);
}
.access-update-dialog::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: var(--portal-bordeaux); }
.access-update-close { position: absolute; right: 15px; top: 15px; width: 38px; height: 38px; padding: 0; color: #566173; background: #f1f3f6; border: 0; border-radius: 50%; cursor: pointer; }
.access-update-head { display:flex; align-items:center; gap:16px; padding-right:38px; margin-bottom:16px; }
.access-update-icon { display: inline-flex; align-items: center; justify-content: center; flex:0 0 54px; width:54px; height:54px; color:#fff; background:linear-gradient(135deg,var(--portal-bordeaux),var(--portal-bordeaux-dark)); border-radius:12px; font-size:22px; }
.access-update-dialog h2 { margin:4px 0 0; color:var(--portal-ink); font-size:clamp(25px,5vw,34px); line-height:1.15; }
.access-update-dialog > p { color: var(--portal-muted); line-height: 1.7; }
.access-update-steps { display:grid; gap:8px; padding:0; margin:20px 0; }
.access-update-step { display:grid; grid-template-columns:30px minmax(0,1fr); align-items:center; gap:12px; min-width:0; padding:11px 14px; background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:9px; }
.access-update-step > span { display:grid; place-items:center; width:30px; height:30px; color:#fff; background:var(--portal-bordeaux); border-radius:50%; font-size:12px; font-weight:800; }
.access-update-step > div { min-width:0; }
.access-update-steps strong,.access-update-steps small { display:block; }
.access-update-steps strong { color:var(--portal-ink); font-size:13px; line-height:1.35; }
.access-update-steps small { margin-top:2px; color:var(--portal-muted); font-size:10px; line-height:1.45; }
.access-update-note { display:flex; gap:13px; padding:13px 15px; margin:18px 0; background:#fbf6f6; border:1px solid rgba(123,55,56,.16); border-radius:9px; }
.access-update-note i { flex: 0 0 auto; margin-top: 4px; color: var(--portal-bordeaux); font-size: 19px; }
.access-update-note p { margin: 0; color: #4f5a6c; font-size: 14px; line-height: 1.6; }
.access-update-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.access-update-actions .btn { display:flex; align-items:center; justify-content:center; min-height:44px; white-space:normal; }
.access-update-contact { margin:14px 0 0!important; text-align:center; font-size:11px; }
body.modal-open { overflow: hidden; }
.login-page footer,
.member-area footer { background: var(--portal-dark); }
.login-page footer small.text-light,
.member-area footer small.text-light { color: #aeb7c5 !important; }
.login-page footer .navbar-brand,
.member-area footer .navbar-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  margin: 0;
  background: #f8f9fb;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
}
.login-page footer .navbar-brand img,
.member-area footer .navbar-brand img {
  display: block;
  border-radius: 0;
}

@media (max-width: 991.98px) {
  .portal-hero { align-items: flex-start; flex-direction: column; }
  .portal-stats { grid-template-columns: 1fr; }
  .portal-service-grid { grid-template-columns: 1fr; }
  .admin-stats { grid-template-columns: repeat(2, 1fr); }
  .admin-filter { align-items: stretch; flex-direction: column; }
  .admin-filter select { width: 100%; }
  .admin-actions { min-width: 210px; }
}

@media (max-width: 1199.98px) {
  .portal-hero { align-items: flex-start; flex-direction: column; }
  .portal-hero-actions { flex-wrap: wrap; }
}

@media (max-width: 767.98px) {
  .admin-card .table-responsive { overflow: visible; }
  .admin-table,
  .admin-table tbody,
  .admin-table tr,
  .admin-table td { display: block; width: 100%; }
  .admin-table thead { display: none; }
  .admin-table tr {
    margin-bottom: 14px;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid var(--portal-line);
    border-radius: 9px;
  }
  .admin-table tr.admin-self { background: rgba(123, 55, 56, .045); }
  .admin-table td {
    display: grid;
    grid-template-columns: minmax(105px, 38%) 1fr;
    gap: 12px;
    max-width: none;
    padding: 9px 0;
    text-align: left !important;
    border-top: 1px solid rgba(27, 35, 48, .07);
  }
  .admin-table td:first-child { border-top: 0; }
  .admin-table td::before {
    content: attr(data-label);
    color: #6c7789;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
  .admin-actions { min-width: 0; }
  .admin-actions form { margin: 2px 4px 2px 0; }
}

.editor-thumb { width:100%; max-height:180px; margin-bottom:14px; object-fit:cover; border-radius:8px; }
.editor-logo { max-width:150px; max-height:70px; margin:0 0 12px; object-fit:contain; }
.portal-news-image { width:100%; max-height:280px; margin-bottom:18px; object-fit:cover; border-radius:9px; }

/* Mitglieder-Dashboard */
.portal-side-nav { position:sticky; top:105px; }
.portal-nav-group + .portal-nav-group { margin-top:20px; }
.portal-nav-label { display:block; margin:0 0 7px 13px; color:#8992a0; font-size:10px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.portal-nav-group .sidenav { margin:0; }
.portal-nav-management { padding-top:17px; border-top:1px solid var(--portal-line); }
.portal-mobile-menu > summary { display:none; }
.portal-dashboard-head { margin-bottom:22px; }
.dashboard-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); align-items:center; gap:28px; margin-bottom:18px; padding:28px 30px; color:#fff; background:linear-gradient(135deg,#1b2330,#293344); border-radius:12px; }
.dashboard-label { display:block; color:#a46a6c; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.dashboard-hero .dashboard-label { color:#e6b9bb; }
.dashboard-hero h2 { margin:7px 0 6px; color:#fff; font-size:clamp(23px,3vw,31px); }
.dashboard-hero p { margin:0; color:#c7ced8; font-size:14px; line-height:1.6; }
.dashboard-search { position:relative; display:flex; align-items:center; padding:5px; background:#fff; border-radius:9px; box-shadow:0 12px 30px rgba(0,0,0,.16); }
.dashboard-search i { margin-left:12px; color:#7b3738; }
.dashboard-search input { min-width:0; flex:1; height:42px; padding:0 10px; border:0; outline:0; }
.dashboard-search button { height:38px; padding:0 15px; color:#fff; background:#7b3738; border:0; border-radius:7px; font-size:12px; font-weight:700; }
.dashboard-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:24px; }
.dashboard-metrics a { display:flex; align-items:center; min-width:0; gap:11px; padding:14px; color:var(--portal-ink); background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:9px; }
.dashboard-metrics a:hover { background:#fff; border-color:rgba(123,55,56,.32); }
.dashboard-metric-icon { display:flex; align-items:center; justify-content:center; flex:0 0 36px; width:36px; height:36px; color:#7b3738; background:#fff; border-radius:8px; }
.dashboard-metrics span:last-child { min-width:0; }
.dashboard-metrics small,.dashboard-metrics strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-metrics small { color:var(--portal-muted); font-size:10px; }
.dashboard-metrics strong { margin-top:2px; font-size:12px; }
.dashboard-tasks { display:grid; grid-template-columns:190px minmax(0,1fr); gap:20px; margin-bottom:18px; padding:18px 20px; background:#fff; border:1px solid var(--portal-line); border-left:4px solid #7b3738; border-radius:10px; }
.dashboard-tasks h2 { margin:4px 0 0; font-size:17px; }
.dashboard-task-list { display:grid; gap:7px; }
.dashboard-task-list a { display:grid; grid-template-columns:30px minmax(0,1fr) 16px; align-items:center; gap:10px; padding:9px 11px; color:var(--portal-ink); background:var(--portal-panel); border-radius:8px; }
.dashboard-task-list a:hover { background:#f4eded; }
.dashboard-task-list > a > i:first-child { color:#7b3738; font-size:17px; }
.dashboard-task-list > a > i:last-child { color:var(--portal-muted); font-size:10px; }
.dashboard-task-list strong,.dashboard-task-list small { display:block; }
.dashboard-task-list strong { font-size:12px; }
.dashboard-task-list small { margin-top:2px; color:var(--portal-muted); font-size:10px; line-height:1.35; }
.profile-company { display:grid; grid-template-columns:64px minmax(0,1fr) 24px; align-items:center; gap:15px; margin-bottom:14px; padding:15px 18px; background:#f7f2f2; border:1px solid rgba(123,55,56,.18); border-radius:10px; }
.profile-company img { width:58px; height:44px; object-fit:contain; background:#fff; border-radius:6px; }
.profile-company small,.profile-company strong,.profile-company em { display:block; }
.profile-company small { color:#7b3738; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.profile-company strong { margin-top:2px; font-size:14px; }
.profile-company em { margin-top:2px; color:var(--portal-muted); font-size:10px; font-style:normal; }
.profile-company > i { color:#7b3738; }
.dashboard-columns { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:28px; }
.dashboard-panel { min-width:0; padding:20px; background:#fff; border:1px solid var(--portal-line); border-radius:11px; }
.dashboard-panel-head,.dashboard-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:15px; }
.dashboard-panel-head h2,.dashboard-section-head h2 { margin:3px 0 0; color:var(--portal-ink); font-size:18px; }
.dashboard-panel-head > a { flex:0 0 auto; color:#7b3738; font-size:11px; font-weight:700; }
.dashboard-feed { display:grid; gap:8px; }
.dashboard-feed-item,.dashboard-event { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:start; gap:12px; padding:11px 0; color:var(--portal-ink); border-top:1px solid var(--portal-line); }
.dashboard-feed-item:first-child,.dashboard-event:first-child { border-top:0; }
.dashboard-feed-date { padding-top:4px; color:#7b3738; font-size:11px; font-weight:800; }
.dashboard-feed-item small,.dashboard-event small { display:block; margin-bottom:3px; color:var(--portal-muted); font-size:10px; }
.dashboard-feed-item strong,.dashboard-event strong { display:block; font-size:13px; line-height:1.35; }
.dashboard-feed-item p { margin:4px 0 0; color:var(--portal-muted); font-size:11px; line-height:1.45; }
.dashboard-event-date { display:flex; align-items:center; flex-direction:column; padding:6px; color:#fff; background:#7b3738; border-radius:7px; font-size:9px; line-height:1; }
.dashboard-event-date strong { margin-bottom:3px; color:#fff; font-size:19px; }
.dashboard-event em { display:inline-block; margin-top:5px; color:#43815c; font-size:10px; font-style:normal; font-weight:700; }
.dashboard-empty { margin:0; padding:20px 0; color:var(--portal-muted); font-size:13px; }
.dashboard-section { margin-bottom:26px; }
.dashboard-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.dashboard-tool-grid > a { display:flex; align-items:center; min-width:0; gap:13px; padding:17px; color:var(--portal-ink); background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:9px; }
.dashboard-tool-grid > a:hover { transform:translateY(-2px); background:#fff; border-color:rgba(123,55,56,.3); }
.dashboard-tool-grid > a > i { flex:0 0 auto; color:#7b3738; font-size:21px; }
.dashboard-tool-grid span { min-width:0; }
.dashboard-tool-grid strong,.dashboard-tool-grid small { display:block; }
.dashboard-tool-grid strong { font-size:13px; }
.dashboard-tool-grid small { margin-top:3px; color:var(--portal-muted); font-size:10px; line-height:1.35; }
.dashboard-management { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 22px; padding:21px 23px; background:#f7f2f2; border:1px solid rgba(123,55,56,.18); border-radius:10px; }
.dashboard-management h2 { margin:4px 0; font-size:19px; }
.dashboard-management p { margin:0; color:var(--portal-muted); font-size:12px; }
.dashboard-management-actions { display:flex; flex:0 0 auto; gap:8px; }
.dashboard-footer-links { display:flex; flex-wrap:wrap; gap:8px; padding:14px 0 4px; border-top:1px solid var(--portal-line); }
.dashboard-footer-links a { padding:8px 11px; color:var(--portal-muted); background:var(--portal-panel); border-radius:7px; font-size:11px; font-weight:700; }
.dashboard-footer-links a:hover { color:#7b3738; }
@media(max-width:1199.98px){.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-tool-grid{grid-template-columns:1fr 1fr}}
@media(max-width:991.98px){.portal-side-nav{position:static}.dashboard-hero{grid-template-columns:1fr}.dashboard-columns{grid-template-columns:1fr}.dashboard-tasks{grid-template-columns:1fr}}
@media(max-width:575.98px){.dashboard-hero{padding:22px 18px}.dashboard-search{align-items:stretch;flex-direction:column;padding:9px}.dashboard-search i{display:none}.dashboard-search button{width:100%}.dashboard-metrics,.dashboard-tool-grid{grid-template-columns:1fr}.dashboard-management{align-items:flex-start;flex-direction:column}.dashboard-management-actions{width:100%;flex-direction:column}.dashboard-management-actions .btn{width:100%}.dashboard-panel{padding:16px}.dashboard-feed-item,.dashboard-event{grid-template-columns:42px minmax(0,1fr)}}
.portal-global-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-bottom:22px;padding:14px;background:var(--portal-panel);border:1px solid var(--portal-line);border-radius:9px}.portal-search-result{display:block;color:var(--portal-ink)}.portal-notification.is-unread{border-left:4px solid var(--portal-bordeaux);background:#fffafa}@media(max-width:575.98px){.portal-global-search{grid-template-columns:1fr}}
.system-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}.system-action-grid a{display:block;color:var(--portal-ink)}.system-action-grid p{margin:0;color:var(--portal-muted);font-size:13px}@media(max-width:575.98px){.system-action-grid{grid-template-columns:1fr}}
.admin-crm-link{display:flex!important;align-items:center;gap:4px;min-width:220px}.admin-crm-link select{min-width:0;max-width:180px;height:31px;border:1px solid var(--portal-line);border-radius:5px;font-size:10px}
.crm-file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.crm-entry{margin-top:12px;padding:12px;background:var(--portal-panel);border:1px solid var(--portal-line);border-radius:8px}.crm-entry strong,.crm-entry small{display:block}.crm-entry small{margin:3px 0 8px;color:var(--portal-muted);font-size:10px}.crm-entry p{font-size:12px}.crm-entry.is-done{opacity:.55}@media(max-width:991.98px){.crm-file-grid{grid-template-columns:1fr}}

.portal-filter { display:grid; grid-template-columns:minmax(0,1fr) 180px 130px auto; gap:10px; margin-bottom:22px; padding:14px; background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:10px; }
.portal-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:16px; }
.portal-actions form { margin:0; }
.editor-tabs { display:flex; flex-wrap:wrap; gap:7px; margin:0 0 24px; padding:7px; background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:10px; }
.editor-tabs a { padding:9px 14px; color:var(--portal-muted); border-radius:7px; font-size:13px; font-weight:700; }
.editor-tabs a.active { color:#fff; background:var(--portal-bordeaux); }
.editor-grid { display:grid; grid-template-columns:minmax(380px,1fr) minmax(0,1.1fr); align-items:start; gap:24px; }
.editor-grid > form { position:sticky; top:112px; }
.editor-list { display:grid; gap:12px; min-width:0; }
@media(max-width:991.98px){.portal-filter{grid-template-columns:1fr 1fr}.editor-grid{grid-template-columns:1fr}.editor-grid>form{position:static}}
@media(max-width:575.98px){.portal-filter{grid-template-columns:1fr}.editor-tabs a{flex:1 1 42%;text-align:center}}

@media (max-width: 575.98px) {
  .portal-hero { padding: 22px 18px; }
  .portal-hero-actions { width: 100%; flex-direction: column; }
  .portal-hero-actions .btn { width: 100%; }
  .admin-wrap { padding-left: 1rem; padding-right: 1rem; }
  .admin-stats { grid-template-columns: 1fr; }
  .admin-card-head { align-items: flex-start; flex-direction: column; }
  .admin-card { padding: 1rem; }
  .login-page .login-card { padding: 1.75rem 1.25rem; }
  .access-update { padding: 12px; }
  .access-update-dialog { max-height: calc(100vh - 24px); padding:26px 20px 20px; overflow-y:auto; }
  .access-update-head { align-items:flex-start; gap:12px; padding-right:28px; }
  .access-update-icon { flex-basis:44px; width:44px; height:44px; }
  .access-update-steps { gap:7px; }
  .access-update-step { grid-template-columns:28px minmax(0,1fr); gap:10px; padding:9px 11px; }
  .access-update-step > span { width:28px; height:28px; }
  .access-update-actions { grid-template-columns:1fr; }
  .admin-table td { grid-template-columns: 1fr; gap: 5px; }
}

/* Ruhigere Portal-Hierarchie */
.member-area .portal-hero {
  align-items: center;
  margin: 0 0 20px;
  padding: 24px 26px;
  border-radius: 11px;
  background: linear-gradient(125deg, #1b2230, #323b4a 72%, #603033);
  box-shadow: 0 12px 30px rgba(22,28,38,.13);
}

.member-area .portal-hero::after {
  width: 210px;
  height: 210px;
  top: -145px;
  border-width: 34px;
}

.member-area .portal-hero h2 {
  margin: 6px 0;
  font-size: clamp(23px, 2.5vw, 31px);
}

.member-area .portal-hero p {
  max-width: 720px;
  font-size: 13.5px;
}

.member-area .portal-stats {
  gap: 10px;
  margin-bottom: 30px;
}

.member-area .portal-stat {
  padding: 13px 14px;
  border-radius: 9px;
  box-shadow: none;
}

.member-area .portal-stat-icon,
.member-area .portal-service-icon {
  width: 38px;
  height: 38px;
  flex-basis: 38px;
  font-size: 16px;
}

.member-area .portal-stat small {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.4;
}

.member-area .portal-service-grid {
  gap: 12px;
}

.member-area .portal-service-card {
  min-width: 0;
  padding: 17px;
  border-radius: 9px;
}

.member-area .portal-service-card > div {
  min-width: 0;
}

.member-area .portal-service-card a {
  overflow-wrap: anywhere;
}

@media (max-width: 991.98px) {
  .portal-side-nav { margin-bottom:22px; }
  .portal-mobile-menu {
    overflow:hidden;
    background:#fff;
    border:1px solid var(--portal-line);
    border-radius:12px;
    box-shadow:0 8px 22px rgba(22,28,38,.055);
  }
  .portal-mobile-menu > summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:14px 16px;
    color:var(--portal-ink);
    cursor:pointer;
    list-style:none;
    font-size:13px;
    font-weight:800;
  }
  .portal-mobile-menu > summary::-webkit-details-marker { display:none; }
  .portal-mobile-menu > summary span { display:inline-flex; align-items:center; gap:8px; min-width:0; }
  .portal-mobile-menu > summary i { color:var(--portal-bordeaux); }
  .portal-mobile-menu > summary > i { transition:transform .18s ease; }
  .portal-mobile-menu[open] > summary > i { transform:rotate(180deg); }
  .portal-nav-content { display:none; padding:12px; border:1px solid var(--portal-line); border-top:0; border-radius:0 0 12px 12px; background:#fff; }
  .portal-mobile-menu[open] + .portal-nav-content { display:block; }
  .portal-nav-group + .portal-nav-group { margin-top:14px; }
  .member-area section.pt-5 .sidenav { margin-bottom:0; padding:6px; }
}

@media (max-width: 767.98px) {
  .member-area .portal-hero { padding: 21px 18px; }
  .member-area .portal-hero-actions { width: 100%; }
  .member-area .portal-hero-actions .btn { flex: 1 1 auto; white-space: normal; }
}
.editor-tabs a[href="?tab=offices"] { display:none; }

/* Einheitliche Topbar-Navigation (Partial topbar_intern.php) */
.member-topnav { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }

/* Einheitliches Backoffice */
.backoffice-nav { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:58px; padding:0 max(20px,calc((100vw - 1140px)/2)); color:#d8dee7; background:#1b2330; border-bottom:1px solid rgba(255,255,255,.08); }
.backoffice-nav-label { display:flex; align-items:center; gap:9px; flex:0 0 auto; color:#fff; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.backoffice-nav-label i { color:#e1afb1; }
.backoffice-nav-links { display:flex; align-items:stretch; gap:3px; min-width:0; overflow-x:auto; scrollbar-width:none; }
.backoffice-nav-links::-webkit-scrollbar { display:none; }
.backoffice-nav-links a { display:flex; align-items:center; gap:7px; padding:19px 13px 16px; color:#bfc7d2; border-bottom:3px solid transparent; font-size:12px; font-weight:700; white-space:nowrap; }
.backoffice-nav-links a:hover,.backoffice-nav-links a.active { color:#fff; background:rgba(255,255,255,.045); border-bottom-color:#b96e71; }
.backoffice-page main > .pt-5,.backoffice-nav + main > .pt-5 { padding-top:32px!important; }
.backoffice-head { padding-bottom:18px; border-bottom:1px solid var(--portal-line); }
.backoffice-page .admin-card,.backoffice-nav + main .admin-card { border-color:rgba(27,35,48,.09); box-shadow:0 7px 22px rgba(22,28,38,.045); }
.backoffice-page .system-action-grid .admin-card,.backoffice-nav + main .system-action-grid .admin-card { position:relative; margin-bottom:0; overflow:hidden; transition:transform .18s ease,border-color .18s ease; }
.backoffice-page .system-action-grid .admin-card:hover,.backoffice-nav + main .system-action-grid .admin-card:hover { transform:translateY(-2px); border-color:rgba(123,55,56,.32); }

@media(max-width:767.98px){
  .backoffice-nav { align-items:stretch; flex-direction:column; gap:0; padding:10px 12px 0; }
  .backoffice-nav-label { padding:3px 5px 8px; }
  .backoffice-nav-links { width:100%; }
  .backoffice-nav-links a { padding:12px 10px 10px; }
  .admin-action-panel { position:fixed; left:16px; right:16px; top:auto; bottom:16px; width:auto; max-width:none; max-height:70vh; overflow-y:auto; box-sizing:border-box; box-shadow:0 20px 55px rgba(22,28,38,.24); }
}

/* Zurück-Link in der Katalog-Kategorieansicht (dokumente.php) */
.portal-back { display:inline-flex; align-items:center; gap:7px; min-height:22px; margin-bottom:8px; color:var(--portal-bordeaux); font-weight:700; font-size:12px; line-height:1; letter-spacing:.05em; text-transform:uppercase; }
.portal-back i { display:inline-flex; align-items:center; justify-content:center; width:14px; height:14px; font-size:13px; line-height:1; }
.portal-back span { display:inline-flex; align-items:center; min-height:14px; line-height:1; }
.portal-back:hover { color:var(--portal-ink); text-decoration:none; }

/* Dashboard 2026: Fokus statt Kartenwand */
.dashboard-welcome {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);
  gap:30px;
  align-items:stretch;
  margin-bottom:18px;
  padding:30px;
  color:#fff;
  background:
    radial-gradient(circle at 92% 15%,rgba(185,110,113,.24),transparent 30%),
    linear-gradient(135deg,#18202c 0%,#293444 72%,#532e31 100%);
  border-radius:16px;
  box-shadow:0 18px 42px rgba(22,28,38,.16);
}
.dashboard-welcome-copy { min-width:0; }
.dashboard-welcome-meta { display:flex; align-items:center; gap:12px; }
.dashboard-welcome .dashboard-label { color:#e5b6b8; }
.dashboard-role { padding:4px 8px; color:#e7ebf1; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.12); border-radius:20px; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.dashboard-welcome h1 { margin:10px 0 7px; color:#fff; font-size:clamp(27px,3.6vw,39px); line-height:1.12; }
.dashboard-welcome p { margin:0 0 20px; color:#c5cdd8; font-size:13px; line-height:1.6; }
.dashboard-welcome .dashboard-search { max-width:570px; box-shadow:none; }
.dashboard-pulse { display:grid; grid-template-columns:1fr; gap:1px; overflow:hidden; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.12); border-radius:12px; }
.dashboard-pulse a { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:2px 12px; padding:15px 17px; color:#fff; background:rgba(18,24,34,.62); }
.dashboard-pulse a:hover { background:rgba(255,255,255,.07); }
.dashboard-pulse span { min-width:0; color:#d2d8e1; font-size:11px; font-weight:700; }
.dashboard-pulse span i { width:18px; color:#e1afb1; }
.dashboard-pulse strong { grid-row:span 2; font-size:23px; line-height:1; }
.dashboard-pulse small { color:#8f99a8; font-size:9px; }
.dashboard-focus-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); align-items:start; gap:14px; margin-bottom:16px; }
.dashboard-focus-grid .dashboard-panel,.dashboard-compact-panel { min-width:0; background:#fff; border:1px solid var(--portal-line); border-radius:12px; }
.dashboard-news-panel { padding:22px 24px; }
.dashboard-side-stack { display:grid; gap:14px; }
.dashboard-compact-panel { padding:18px; }
.dashboard-compact-panel .dashboard-panel-head { margin-bottom:8px; }
.dashboard-compact-panel .dashboard-panel-head h2 { font-size:16px; }
.dashboard-next { background:#faf7f7; border-color:rgba(123,55,56,.14); }
.dashboard-tools { margin:0 0 18px; overflow:hidden; background:#fff; border:1px solid var(--portal-line); border-radius:12px; }
.dashboard-tools > summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 19px; cursor:pointer; list-style:none; }
.dashboard-tools > summary::-webkit-details-marker { display:none; }
.dashboard-tools > summary > span { display:flex; align-items:center; gap:13px; min-width:0; }
.dashboard-tools > summary > span > i { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; color:var(--portal-bordeaux); background:#f7eeee; border-radius:9px; }
.dashboard-tools summary strong,.dashboard-tools summary small { display:block; }
.dashboard-tools summary strong { color:var(--portal-ink); font-size:14px; }
.dashboard-tools summary small { margin-top:2px; color:var(--portal-muted); font-size:10px; }
.dashboard-tools-arrow { color:var(--portal-muted); transition:transform .18s ease; }
.dashboard-tools[open] .dashboard-tools-arrow { transform:rotate(180deg); }
.dashboard-tools .dashboard-tool-grid { padding:0 18px 18px; }
.dashboard-management { padding:17px 19px; }

/* Benutzerverwaltung: ruhiges Command Center */
.backoffice-command,
.backoffice-page .workspace-command {
  display:block;
  margin-bottom:16px;
  padding:0;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(130deg,#18202c,#293444 72%,#583033);
  border-radius:15px;
  box-shadow:0 16px 38px rgba(22,28,38,.14);
}
.backoffice-command-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:27px 28px 22px;
}
.backoffice-page .workspace-command > div:first-child { padding:27px 28px 22px; }
.backoffice-command .admin-eyebrow,
.backoffice-page .workspace-command .admin-eyebrow { color:#e2afb1; }
.backoffice-command h1,
.backoffice-page .workspace-command h1 { margin:5px 0; color:#fff; font-size:clamp(25px,3.4vw,36px); line-height:1.15; }
.backoffice-command p,
.backoffice-page .workspace-command p { margin:0; color:#c4ccd7; font-size:13px; line-height:1.55; }
.backoffice-command-badge { display:inline-flex; align-items:center; gap:8px; flex:0 0 auto; padding:8px 11px; color:#e8ecf2; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:8px; font-size:11px; font-weight:700; }
.backoffice-command-badge:hover { color:#fff; background:rgba(255,255,255,.13); }
.backoffice-command-badge i { color:#e2afb1; }
.backoffice-command-stats,
.backoffice-page .workspace-command-stats {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  margin:0;
  overflow:visible;
  background:transparent;
  border:0;
  border-top:1px solid rgba(255,255,255,.1);
  border-radius:0;
}
.backoffice-command-stats > a,
.backoffice-command-stats > div,
.backoffice-page .workspace-command-stats > a {
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  margin:0;
  padding:15px 19px;
  color:#d5dbe4;
  text-align:left;
  background:rgba(10,14,20,.18);
  border:0;
  border-right:1px solid rgba(255,255,255,.08);
  border-radius:0;
}
.backoffice-command-stats > :last-child,
.backoffice-page .workspace-command-stats > :last-child { border-right:0; }
.backoffice-command-stats > a:hover,
.backoffice-page .workspace-command-stats > a:hover { color:#fff; background:rgba(255,255,255,.055); }
.backoffice-command-stats strong,
.backoffice-page .workspace-command-stats strong { display:block; color:#fff; font-size:22px; line-height:1; }
.backoffice-command-stats span,
.backoffice-command-stats small,
.backoffice-page .workspace-command-stats span { display:block; color:#d5dbe4; font-size:10px; font-weight:700; }
.backoffice-command-stats small { margin-top:3px; color:#9da7b5; }
.backoffice-command-stats > div > i { display:grid; place-items:center; flex:0 0 34px; width:34px; height:34px; color:#e2afb1; background:rgba(255,255,255,.08); border-radius:8px; }
.backoffice-command .system-overview { margin-bottom:0; }
.backoffice-command .system-overview .is-warning { background:rgba(166,103,33,.18); border-color:rgba(255,255,255,.08); }
.backoffice-command .system-overview .is-warning > i { color:#f0b86d; background:rgba(240,184,109,.12); }
.admin-command { margin-bottom:16px; overflow:hidden; color:#fff; background:linear-gradient(130deg,#18202c,#293444 72%,#583033); border-radius:15px; box-shadow:0 16px 38px rgba(22,28,38,.14); }
.admin-command-head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:27px 28px 22px; }
.admin-command .admin-eyebrow { color:#e2afb1; }
.admin-command h1 { margin:5px 0 5px; color:#fff; font-size:clamp(25px,3.4vw,36px); }
.admin-command p { margin:0; color:#c4ccd7; font-size:13px; }
.admin-command-user { display:inline-flex; align-items:center; gap:8px; flex:0 0 auto; padding:8px 11px; color:#e8ecf2; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:8px; font-size:11px; font-weight:700; }
.admin-command-user i { color:#e2afb1; }
.admin-command-stats { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.1); }
.admin-command-stats a { display:flex; align-items:baseline; gap:9px; padding:15px 19px; color:#d5dbe4; background:rgba(10,14,20,.18); border-right:1px solid rgba(255,255,255,.08); }
.admin-command-stats a:last-child { border-right:0; }
.admin-command-stats a:hover { background:rgba(255,255,255,.055); }
.admin-command-stats strong { color:#fff; font-size:22px; }
.admin-command-stats span { font-size:10px; font-weight:700; }
.admin-command-stats .has-alert strong { color:#f0b86d; }
.admin-create-disclosure { margin-bottom:16px; overflow:hidden; background:#fff; border:1px solid var(--portal-line); border-radius:11px; }
.admin-create-disclosure > summary { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:13px; padding:15px 18px; cursor:pointer; list-style:none; }
.admin-create-disclosure > summary::-webkit-details-marker { display:none; }
.admin-create-summary-icon { display:grid; place-items:center; width:40px; height:40px; color:#fff; background:var(--portal-bordeaux); border-radius:9px; }
.admin-create-disclosure summary strong,.admin-create-disclosure summary small { display:block; }
.admin-create-disclosure summary strong { color:var(--portal-ink); font-size:14px; }
.admin-create-disclosure summary small { margin-top:2px; color:var(--portal-muted); font-size:10px; }
.admin-create-summary-action { color:var(--portal-bordeaux); font-size:11px; font-weight:800; }
.admin-create-summary-action i { display:inline-block; margin-left:5px; transition:transform .18s ease; }
.admin-create-disclosure[open] .admin-create-summary-action i { transform:rotate(180deg); }
.admin-create-disclosure .admin-create-grid { padding:18px; background:var(--portal-panel); border-top:1px solid var(--portal-line); }
.admin-create-note { margin:0; padding:0 18px 16px; color:var(--portal-muted); background:var(--portal-panel); font-size:10px; }
.admin-create-note i { margin-right:5px; color:var(--portal-bordeaux); }
.admin-directory { margin-bottom:0; padding:22px; }
.admin-directory .admin-card-head { margin-bottom:14px; }
.admin-directory .admin-card-head h2 { color:var(--portal-ink); }
.admin-count { display:inline-grid; place-items:center; min-width:27px; height:27px; margin-left:5px; padding:0 7px; color:#fff; background:var(--portal-bordeaux); border-radius:20px; font-size:11px; vertical-align:middle; }
.admin-directory .admin-filter { border:1px solid var(--portal-line); }
.admin-directory .admin-table th { padding-top:12px; padding-bottom:12px; color:#7b8492; font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.admin-directory .admin-table td { padding-top:14px; padding-bottom:14px; border-color:rgba(27,35,48,.07); }

@media(max-width:991.98px){
  .dashboard-welcome,.dashboard-focus-grid { grid-template-columns:1fr; }
  .dashboard-pulse { grid-template-columns:repeat(3,1fr); }
  .dashboard-pulse a { grid-template-columns:1fr; }
  .dashboard-pulse strong { grid-row:auto; }
  .admin-command-stats { grid-template-columns:1fr 1fr; }
  .backoffice-command-stats,.backoffice-page .workspace-command-stats { grid-template-columns:1fr 1fr; }
  .backoffice-command-stats > :nth-child(2),.backoffice-page .workspace-command-stats > :nth-child(2) { border-right:0; }
  .backoffice-command-stats > :nth-child(-n+2),.backoffice-page .workspace-command-stats > :nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.08); }
  .admin-command-stats a:nth-child(2) { border-right:0; }
  .admin-command-stats a:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.08); }
}
@media(max-width:575.98px){
  .dashboard-welcome { padding:22px 18px; }
  .dashboard-welcome h1 { font-size:28px; }
  .dashboard-pulse { grid-template-columns:1fr; }
  .dashboard-pulse a { grid-template-columns:minmax(0,1fr) auto; }
  .dashboard-pulse strong { grid-row:span 2; }
  .dashboard-news-panel,.dashboard-compact-panel { padding:16px; }
  .dashboard-tools > summary { padding:14px; }
  .dashboard-tools .dashboard-tool-grid { padding:0 14px 14px; }
  .admin-command-head { flex-direction:column; padding:22px 19px 18px; }
  .backoffice-command-head { flex-direction:column; padding:22px 19px 18px; }
  .backoffice-page .workspace-command > div:first-child { padding:22px 19px 18px; }
  .backoffice-command-stats > a,.backoffice-command-stats > div,.backoffice-page .workspace-command-stats > a { padding:13px 15px; }
  .admin-command-stats a { flex-direction:column; gap:2px; padding:13px 15px; }
  .admin-create-disclosure > summary { grid-template-columns:38px minmax(0,1fr); padding:13px; }
  .admin-create-summary-action { grid-column:2; }
  .admin-directory { padding:16px; }
}

/* Gemeinsame Redaktion-, CRM- und Systemansicht */
.backoffice-nav + main .member-topbar {
  align-items:flex-start;
  margin:0 0 20px;
  padding:0 0 20px;
  border-bottom:1px solid var(--portal-line);
}
.backoffice-nav + main .member-topbar h1 { margin-top:0; font-size:clamp(25px,3vw,34px); }
.backoffice-nav + main .editor-tabs { position:sticky; z-index:8; top:86px; box-shadow:0 7px 18px rgba(22,28,38,.05); }
.backoffice-nav + main .editor-list .member-card { border-color:rgba(27,35,48,.09); border-radius:10px; box-shadow:0 5px 16px rgba(22,28,38,.035); }
.editor-pagination { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:22px; padding:14px 16px; color:var(--portal-muted); background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:10px; font-size:11px; }
.editor-pagination div { display:flex; align-items:center; gap:12px; }
.editor-pagination a { padding:7px 10px; color:var(--portal-bordeaux); background:#fff; border:1px solid var(--portal-line); border-radius:7px; font-weight:700; }
.editor-pagination strong { color:var(--portal-ink); font-size:11px; }
@media(max-width:767.98px){
  .backoffice-nav + main .editor-tabs { position:static; }
  .editor-pagination { align-items:flex-start; flex-direction:column; }
  .editor-pagination div { width:100%; justify-content:space-between; }
}

/* Redaktion und Mitglieder-CRM */
.workspace-command { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:26px; margin-bottom:16px; padding:26px 28px; color:#fff; background:linear-gradient(132deg,#18202c,#293444 70%,#583033); border-radius:15px; box-shadow:0 16px 38px rgba(22,28,38,.14); }
.workspace-command .admin-eyebrow { color:#e2afb1; }
.workspace-command h1 { margin:5px 0; color:#fff; font-size:clamp(25px,3.3vw,35px); }
.workspace-command p { margin:0; color:#c6ced8; font-size:13px; }
.workspace-command-stats { display:grid; grid-template-columns:repeat(4,82px); gap:1px; overflow:hidden; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.11); border-radius:11px; }
.workspace-command-stats a { padding:13px 10px; text-align:center; color:#d4dbe4; background:rgba(13,18,26,.42); }
.workspace-command-stats a:hover { background:rgba(255,255,255,.07); }
.workspace-command-stats strong,.workspace-command-stats span { display:block; }
.workspace-command-stats strong { color:#fff; font-size:21px; }
.workspace-command-stats span { margin-top:2px; font-size:9px; font-weight:700; }
.workspace-filter { display:grid; grid-template-columns:minmax(240px,1fr) 190px 145px auto auto; align-items:center; gap:8px; margin:0 0 18px; padding:11px; background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:10px; }
.workspace-filter-search { position:relative; min-width:0; }
.workspace-filter-search i { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:#7c8695; }
.workspace-filter input,.workspace-filter select { width:100%; height:40px; padding:0 10px; color:var(--portal-ink); background:#fff; border:1px solid rgba(27,35,48,.14); border-radius:7px; }
.workspace-filter-search input { padding-left:36px; }
.workspace-filter > a { color:var(--portal-bordeaux); font-size:11px; font-weight:700; white-space:nowrap; }
.backoffice-page .editor-grid > form.admin-card {
  box-sizing:border-box;
  padding:28px 30px 30px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(27,35,48,.1);
  border-top:4px solid var(--portal-bordeaux);
  border-radius:16px;
  box-shadow:0 12px 32px rgba(22,28,38,.075);
}
.backoffice-page .editor-grid > form.admin-card h2 {
  margin:0 0 22px;
  padding:0 0 18px;
  color:var(--portal-ink);
  border-bottom:1px solid var(--portal-line);
  font-size:21px;
  font-weight:750;
  line-height:1.25;
}
.backoffice-page .editor-grid > form.admin-card .form-control {
  min-height:46px;
  margin-bottom:14px !important;
  padding:10px 13px;
  color:var(--portal-ink);
  background:#fbfcfd;
  border:1px solid rgba(27,35,48,.14);
  border-radius:10px;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.backoffice-page .editor-grid > form.admin-card textarea.form-control {
  min-height:92px;
  line-height:1.55;
  resize:vertical;
}
.backoffice-page .editor-grid > form.admin-card .form-control:focus {
  background:#fff;
  border-color:rgba(123,55,56,.55);
  box-shadow:0 0 0 3px rgba(123,55,56,.09);
}
.backoffice-page .editor-grid > form.admin-card > label {
  display:block;
  margin:3px 0 8px;
  color:var(--portal-ink);
  font-size:11px;
  font-weight:800;
  letter-spacing:.035em;
}
.backoffice-page .editor-grid > form.admin-card .form-control-file {
  width:100%;
  margin:0 0 16px !important;
  padding:12px;
  color:var(--portal-muted);
  background:var(--portal-panel);
  border:1px dashed rgba(123,55,56,.28);
  border-radius:10px;
  font-size:12px;
}
.backoffice-page .editor-grid > form.admin-card .form-row {
  margin-right:-6px;
  margin-left:-6px;
}
.backoffice-page .editor-grid > form.admin-card .form-row > [class*="col"] {
  padding-right:6px;
  padding-left:6px;
}
.backoffice-page .editor-grid > form.admin-card > .btn {
  min-height:42px;
  margin-top:4px;
  padding-right:20px;
  padding-left:20px;
  border-radius:9px;
}
.event-type-help { margin:-5px 0 15px; padding:10px 12px; color:var(--portal-muted); background:var(--portal-panel); border-left:3px solid var(--portal-bordeaux); border-radius:0 8px 8px 0; font-size:10px; line-height:1.55; }
.event-registration-fields { margin:2px 0 14px; padding:15px 15px 1px; background:#faf7f7; border:1px solid rgba(123,55,56,.13); border-radius:10px; }
.event-registration-fields[hidden] { display:none!important; }
.backoffice-page .editor-list { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.backoffice-page .editor-list .member-card { height:100%; }
.backoffice-page .editor-list .member-card-body { height:100%; padding:18px; }
.backoffice-page .editor-list .member-card-title { font-size:15px; line-height:1.35; }
.backoffice-page .editor-list .member-card p { color:var(--portal-muted); font-size:11px; line-height:1.5; }
.backoffice-page .editor-logo { width:100px; height:54px; padding:5px; background:#fff; border:1px solid var(--portal-line); }

/* Systemzentrale */
.system-command { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:14px; padding:27px 28px; color:#fff; background:linear-gradient(132deg,#18202c,#293444 72%,#533033); border-radius:15px; box-shadow:0 16px 38px rgba(22,28,38,.14); }
.system-command .admin-eyebrow { color:#e2afb1; }
.system-command h1 { margin:5px 0; color:#fff; font-size:clamp(25px,3.3vw,35px); }
.system-command p { margin:0; color:#c6ced8; font-size:13px; }
.system-overview { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; margin-bottom:16px; }
.system-overview > div { display:flex; align-items:center; gap:12px; padding:14px 15px; background:#fff; border:1px solid var(--portal-line); border-radius:10px; }
.system-overview > div > i { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; color:var(--portal-bordeaux); background:#f7eeee; border-radius:8px; }
.system-overview strong,.system-overview small { display:block; }
.system-overview strong { color:var(--portal-ink); font-size:18px; line-height:1; }
.system-overview small { margin-top:3px; color:var(--portal-muted); font-size:9px; }
.system-overview .is-warning { border-color:rgba(200,130,46,.35); background:#fffaf1; }
.system-overview .is-warning > i { color:#a86721; background:#f9ecd9; }
.system-create-disclosure { border-radius:11px; }
.system-notice-form { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; padding:22px 24px 20px; overflow:hidden; background:var(--portal-panel); border-top:1px solid var(--portal-line); }
.system-notice-form .system-form-field:nth-of-type(1),.system-notice-form .system-form-field:nth-of-type(2),.system-notice-form .system-form-action { grid-column:1/-1; }
.system-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:15px; }
.system-section-head h2,.system-section-title h2 { margin:3px 0 0; color:var(--portal-ink); font-size:18px; }
.system-section-head > i { color:var(--portal-bordeaux); font-size:22px; }
.system-form-field { margin-bottom:16px; }
.system-form-field > label { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 0 7px; color:var(--portal-ink); font-size:11px; font-weight:800; }
.system-form-field > label span { color:var(--portal-muted); font-size:8px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.system-notice-form .form-control { min-height:45px; margin:0; padding:10px 12px; color:var(--portal-ink); background:#fbfcfd; border:1px solid rgba(27,35,48,.14); border-radius:9px; box-shadow:none; font-size:12px; transition:border-color .18s ease,box-shadow .18s ease,background .18s ease; }
.system-notice-form textarea.form-control { min-height:116px; line-height:1.55; resize:vertical; }
.system-notice-form .form-control:focus { background:#fff; border-color:rgba(123,55,56,.55); box-shadow:0 0 0 3px rgba(123,55,56,.09); }
.system-form-field > small { display:block; margin-top:6px; color:var(--portal-muted); font-size:9px; line-height:1.45; }
.system-input-icon { position:relative; }
.system-input-icon > i { position:absolute; z-index:1; left:13px; top:50%; transform:translateY(-50%); color:#858f9d; font-size:13px; pointer-events:none; }
.system-input-icon .form-control { padding-left:37px; }
.system-form-action { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:22px; padding-top:18px; border-top:1px solid var(--portal-line); }
.system-form-action > span { color:var(--portal-muted); font-size:9px; line-height:1.4; }
.system-form-action > span i { margin-right:5px; color:var(--portal-bordeaux); }
.system-form-action .btn { flex:0 0 auto; padding:11px 15px; font-size:11px; }
.system-count { display:grid; place-items:center; min-width:28px; height:28px; padding:0 8px; color:#fff; background:var(--portal-bordeaux); border-radius:20px; font-size:10px; font-weight:800; }
.system-notice-list { max-height:470px; margin-bottom:16px; overflow-y:auto; }
.system-directory-note { color:var(--portal-muted); font-size:10px; font-weight:700; }
.system-notice { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:14px; padding:12px 0; border-top:1px solid var(--portal-line); }
.system-notice:first-of-type { border-top:0; }
.system-notice small,.system-notice strong { display:block; }
.system-notice small { color:var(--portal-muted); font-size:9px; }
.system-notice strong { margin-top:3px; color:var(--portal-ink); font-size:13px; }
.system-notice p { margin:5px 0 0; color:var(--portal-muted); font-size:11px; line-height:1.45; }
.system-empty { display:flex; align-items:center; justify-content:center; flex-direction:column; min-height:180px; color:var(--portal-muted); text-align:center; }
.system-empty i { margin-bottom:10px; color:#a6afbb; font-size:28px; }
.system-empty strong,.system-empty small { display:block; }
.system-empty strong { color:var(--portal-ink); font-size:13px; }
.system-empty small { margin-top:3px; font-size:10px; }
.system-empty.compact { min-height:100px; }
.system-export-section { margin-bottom:16px; }
.system-section-title { margin-bottom:11px; }
.system-export-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.system-export-grid > a { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:13px; padding:17px; color:var(--portal-ink); background:#fff; border:1px solid var(--portal-line); border-radius:10px; }
.system-export-grid > a:hover { transform:translateY(-2px); border-color:rgba(123,55,56,.3); box-shadow:0 8px 22px rgba(22,28,38,.06); }
.system-export-grid > a > i { display:grid; place-items:center; width:42px; height:42px; color:#fff; background:var(--portal-ink); border-radius:9px; font-size:17px; }
.system-export-grid strong,.system-export-grid small { display:block; }
.system-export-grid strong { font-size:13px; }
.system-export-grid small { margin-top:3px; color:var(--portal-muted); font-size:10px; }
.system-export-grid em { color:var(--portal-bordeaux); font-size:10px; font-style:normal; font-weight:800; }
.system-reminders { margin-bottom:20px; }
.system-audit { margin-bottom:0; }
.system-audit-body { padding:0 18px 18px; background:var(--portal-panel); border-top:1px solid var(--portal-line); }
.system-audit-filter { display:grid; grid-template-columns:minmax(0,1fr) 180px auto auto; gap:8px; padding:13px 0; }
.system-audit-filter input,.system-audit-filter select { height:38px; padding:0 10px; background:var(--portal-panel); border:1px solid var(--portal-line); border-radius:7px; }
.system-audit-filter > a { align-self:center; color:var(--portal-bordeaux); font-size:10px; font-weight:700; }

/* Abschließende Angleichung aller vier Backoffice-Bereiche */
.backoffice-command.system-command { display:block; padding:0; background:linear-gradient(130deg,#18202c,#293444 72%,#583033); }
.backoffice-command .backoffice-command-stats.system-overview { gap:0; margin:0; }
.backoffice-command .backoffice-command-stats.system-overview > div {
  display:flex;
  align-items:baseline;
  gap:9px;
  padding:15px 19px;
  color:#d5dbe4;
  background:rgba(10,14,20,.18);
  border:0;
  border-right:1px solid rgba(255,255,255,.08);
  border-radius:0;
}
.backoffice-command .backoffice-command-stats.system-overview > div:last-child { border-right:0; }
.backoffice-command .backoffice-command-stats.system-overview strong { color:#fff; font-size:22px; }
.backoffice-command .backoffice-command-stats.system-overview span { color:#d5dbe4; font-size:10px; font-weight:700; }

/* CRM-Einzelakte */
.crm-file-grid .admin-card { margin:0; border-top:4px solid transparent; }
.crm-file-grid .admin-card:nth-child(1) { border-top-color:#7b3738; }
.crm-file-grid .admin-card:nth-child(2) { border-top-color:#53657c; }
.crm-file-grid .admin-card:nth-child(3) { border-top-color:#9a6a35; }
.crm-file-grid .admin-card > h2 { margin-bottom:15px; color:var(--portal-ink); }

@media(max-width:1199.98px){
  .workspace-command { grid-template-columns:1fr; }
  .workspace-command-stats { grid-template-columns:repeat(4,1fr); }
  .workspace-filter { grid-template-columns:minmax(220px,1fr) 170px 130px auto; }
  .workspace-filter > a { grid-column:1/-1; }
}
@media(max-width:991.98px){
  .backoffice-page .editor-list { grid-template-columns:1fr; }
  .system-overview { grid-template-columns:1fr 1fr; }
}
@media(max-width:767.98px){
  .workspace-command,.system-command { padding:21px 18px; }
  .workspace-command-stats { grid-template-columns:1fr 1fr; }
  .workspace-filter { grid-template-columns:1fr; }
  .system-command { flex-direction:column; }
  .system-export-grid { grid-template-columns:1fr; }
  .system-audit-filter { grid-template-columns:1fr; }
  .system-notice-form { grid-template-columns:1fr; padding:20px 16px; }
  .system-notice-form .system-form-field { grid-column:1; }
  .system-form-action { align-items:stretch; flex-direction:column; }
  .system-form-action .btn { width:100%; }
  .backoffice-page .editor-grid > form.admin-card { padding:22px 18px 24px; border-radius:13px; }
}
@media(max-width:420px){
  .system-overview { grid-template-columns:1fr; }
  .backoffice-command .system-overview { grid-template-columns:1fr 1fr; }
  .workspace-command-stats a { padding:11px 8px; }
  .system-export-grid > a { grid-template-columns:38px minmax(0,1fr); }
  .system-export-grid em { grid-column:2; }
}

/* Archivierte Mitgliederbefragung */
.survey-intro { margin-bottom:24px; }
.survey-intro .member-card { overflow:hidden; background:linear-gradient(120deg,#f8f3f3,#fff); border-color:rgba(123,55,56,.16); }
.survey-intro .member-card-body { padding:23px 25px; }
.survey-intro .member-card-title { margin-bottom:8px; color:var(--portal-ink); font-size:19px; }
.survey-intro .member-card-text { max-width:760px; margin-bottom:0; color:var(--portal-muted); line-height:1.7; }
.survey-section-head { align-items:flex-end; margin-bottom:14px; }
.survey-section-head .member-section-title { margin:3px 0 0; color:var(--portal-ink); font-size:20px; }
.survey-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.survey-grid .member-card { min-width:0; height:100%; margin:0; border-color:var(--portal-line); border-radius:10px; box-shadow:0 4px 14px rgba(22,28,38,.035); }
.survey-grid .member-card-body { height:100%; padding:18px; }
.survey-grid .member-qhead { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:12px; margin-bottom:11px; }
.survey-grid .member-qnum { display:grid; place-items:center; width:38px; height:38px; margin:0; color:#fff; background:linear-gradient(135deg,var(--portal-bordeaux),var(--portal-bordeaux-dark)); border-radius:9px; font-size:11px; font-weight:800; line-height:1; }
.survey-grid .member-card-title { margin:0; color:var(--portal-ink); font-size:14px; line-height:1.35; }
.survey-grid .member-card-text { margin:0; color:var(--portal-muted); font-size:11px; line-height:1.6; }
@media(max-width:767.98px){
  .survey-grid { grid-template-columns:1fr; }
  .survey-intro .member-card-body { padding:19px; }
}
