.psbe-panel{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:#fff;border:1px solid #dce6ec;border-radius:16px;padding:clamp(16px,3vw,30px);margin:24px 0;box-shadow:0 8px 28px rgba(19,61,104,.06);color:#19364e}
.psbe-panel *, .psbe-panel *::before,.psbe-panel *::after{box-sizing:border-box}
.psbe-panel h2{font-size:clamp(1.3rem,3vw,1.9rem);color:#124c85;margin:0 0 12px}
.psbe-panel h3{margin:28px 0 14px;font-size:1.1rem}
.psbe-panel p{line-height:1.6}
.psbe-heading{display:flex;gap:15px;align-items:start;justify-content:space-between;flex-wrap:wrap}
.psbe-eyebrow{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#36815f;margin-bottom:5px;font-weight:700}
.psbe-language,.psbe-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:8px 0 16px}
.psbe-panel label{font-size:14px;font-weight:600;display:flex;flex-direction:column;gap:7px}
.psbe-panel input,.psbe-panel select{font:inherit;padding:11px 13px;border:1px solid #cbd9e4;border-radius:9px;background:#fff;color:#1b334b;min-height:43px;max-width:100%;width:100%}
.psbe-panel button{cursor:pointer;font:inherit}
.psbe-btn{background:#095b9b;color:#fff!important;border:1px solid #095b9b;border-radius:10px;padding:10px 15px;font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-height:42px}
.psbe-btn:hover{background:#084575;color:#fff!important}
.psbe-outline{background:#fff;color:#095b9b!important}
.psbe-outline:hover{color:#fff!important}
.psbe-empty{padding:18px;background:#f6f9fc;border-radius:10px}
.psbe-notice{border-left:4px solid #388d63;padding:12px 14px;background:#f0faf4}
.psbe-tablewrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.psbe-table{border-collapse:collapse;width:100%;font-size:14px;min-width:600px}
.psbe-table th,.psbe-table td{border-bottom:1px solid #e5edf2;padding:13px 12px;text-align:left;vertical-align:middle;color:#213b52}
.psbe-table th{background:#f2f7fb;color:#164f80;font-weight:700}
.psbe-sub{display:block;color:#667d90;font-size:12px;margin-top:5px}
.psbe-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 22px;margin:20px 0}
.psbe-form>button{justify-self:start;align-self:end}
.psbe-assign{display:contents}
.psbe-assign select{min-width:160px}
.psbe-inline{display:inline-flex;margin-left:6px}
.psbe-danger{border:1px solid #c35959;color:#ae2424;background:#fff;padding:9px;border-radius:8px}
.psbe-docitem{border:1px solid #e0e7ef;padding:15px;margin:12px 0;border-radius:12px}
.psbe-qrgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:18px}
.psbe-qrcard{border:1px solid #e4ebf0;border-radius:12px;padding:18px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.psbe-qrcode{width:min(100%,190px);aspect-ratio:1;display:grid;place-items:center}
.psbe-qrcode svg{width:100%;height:100%;display:block}
.psbe-qrcard small{color:#61768b}
.psbe-qrcard a{color:#095b9b;font-weight:600}
.psbe-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.psbe-metrics>div{background:#f1f7fb;padding:18px;border-radius:10px}
.psbe-metrics strong{font-size:22px;display:block}
.psbe-metrics span{font-size:12px;color:#5d778a}
@media(max-width:680px){.psbe-form{grid-template-columns:1fr}.psbe-heading{flex-direction:column}.psbe-language{width:100%;align-items:stretch}.psbe-language label{flex:1}.psbe-panel{margin:14px 0}.psbe-metrics{grid-template-columns:1fr 1fr}.psbe-table{min-width:500px}.psbe-qrgrid{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.psbe-qrgrid,.psbe-metrics{grid-template-columns:1fr}.psbe-table{min-width:460px}}
@media print{.psbe-panel{box-shadow:none;border:none}.psbe-panel button,.psbe-form,.psbe-inline,.psbe-assign{display:none!important}.psbe-qrcard{break-inside:avoid}}
.psbe-jump{margin:18px 0;text-align:right}.psbe-jump a{background:#e8f4fc;color:#11548b;text-decoration:none;border-radius:10px;padding:12px 16px;font-weight:700;display:inline-flex}
#psbe-my-docs{scroll-margin-top:110px}
.psbe-assign{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.psbe-assign>select{flex:1;min-width:145px}.psbe-assign>button{flex:0 0 auto}
.psbe-qr-details{margin:22px 0}.psbe-qr-details>summary{list-style:none;cursor:pointer;border:1px solid #cfe0ed;background:#edf6fc;padding:15px 20px;color:#0a578f;border-radius:9px;font-weight:700}.psbe-qr-details>summary::after{content:"+";float:right}.psbe-qr-details[open]>summary::after{content:"−"}
@media(max-width:600px){.psbe-doc-table{min-width:0}.psbe-doc-table thead{display:none}.psbe-doc-table tbody,.psbe-doc-table tr,.psbe-doc-table td{display:block;width:100%}.psbe-doc-table tr{border:1px solid #e0eaf2;border-radius:12px;padding:10px 14px;margin:9px 0;background:#fbfdfe}.psbe-doc-table td{padding:5px 0;border:0}.psbe-doc-table td .psbe-btn{width:100%;margin:5px 0}.psbe-doc-table td .psbe-inline{width:100%;margin:0}.psbe-doc-table .psbe-danger{width:100%}}

/* Dashboard views for PSB Zeitportal v0.3.x */
.psbe-dashboard {
  box-sizing: border-box;
  width: min(1400px, calc(100% - 48px));
  margin: 24px auto 48px;
  color: #19364e;
}
.psbe-dashboard *,
.psbe-dashboard *::before,
.psbe-dashboard *::after { box-sizing: border-box; }
.psbe-dashboard-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 16px;
}
.psbe-dashboard-head h2 {
  font-size: clamp(22px, 2.5vw, 30px);
  line-height: 1.2;
  margin: 3px 0;
  color: #123d6a;
}
.psbe-dashboard-head p { margin: 0; color: #65798a; font-size: 14px; }
.psbe-dashboard-eyebrow { color: #027b32; font-weight: 700; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.psbe-dashboard-nav {
  display: flex;
  gap: 8px;
  align-items: center;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  margin: 0 0 20px;
  padding: 6px;
  border: 1px solid #dce6ec;
  border-radius: 14px;
  background: #f5f9fb;
}
.psbe-nav-link,
.psbe-dashboard a.psbe-nav-link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  white-space: nowrap;
  border-radius: 10px;
  border: 1px solid transparent;
  padding: 12px 16px;
  font: 700 14px/1.25 system-ui, -apple-system, 'Segoe UI', sans-serif;
  text-decoration: none;
  color: #245170;
  background: transparent;
  min-height: 45px;
  transition: background .15s ease, color .15s ease;
}
.psbe-dashboard a.psbe-nav-link:hover,
.psbe-dashboard a.psbe-nav-link:focus-visible { color: #0c528b; background: #e6f1f9; }
.psbe-dashboard a.psbe-nav-link.is-active,
.psbe-dashboard a.psbe-nav-link[aria-current="page"] { background: #075b9e; color: #fff; box-shadow: 0 3px 9px rgba(12,77,130,.14); }
.psbe-dashboard-body { min-width: 0; }
.psbe-dashboard-body > .psbz-wrap { max-width: none; width: 100%; margin: 0; }
.psbe-dashboard-body > .psbz-wrap .psbz-topbar { display: none; }
.psbe-dashboard-body > .psbe-panel { margin-top: 0; }
.psbe-dashboard .psbe-tablewrap { max-width: 100%; }
.psbe-dashboard .psbe-table td a.psbe-btn { white-space: nowrap; }
@media (max-width: 760px) {
  .psbe-dashboard { width: calc(100% - 24px); margin: 16px auto 34px; }
  .psbe-dashboard-head { margin-bottom: 12px; }
  .psbe-dashboard-nav { margin-bottom: 14px; padding: 5px; border-radius: 12px; }
  .psbe-nav-link,.psbe-dashboard a.psbe-nav-link { min-height: 43px; padding: 10px 13px; font-size: 13px; }
  .psbe-dashboard .psbe-heading { gap: 10px; }
  .psbe-dashboard .psbe-heading > a.psbe-btn { width: 100%; }
}

.psbe-dashboard a.psbe-logout { display:inline-flex;align-items:center;justify-content:center;min-height:39px;flex:0 0 auto;padding:9px 16px;border:1px solid #ccdae5;border-radius:10px;background:#fff;color:#175387;font-weight:700;text-decoration:none;font-size:13px; }
.psbe-dashboard a.psbe-logout:hover, .psbe-dashboard a.psbe-logout:focus-visible {background:#edf5fb;color:#0a528d;}

/* Entry point from the classic dashboard to the installable PSB ZeitApp. */
.psbe-dashboard .psbe-launch {text-align:right;margin:0 0 12px!important;}
.psbe-dashboard .psbe-launch a{display:inline-flex;align-items:center;border:1px solid #c4dded;padding:9px 14px;border-radius:10px;color:#075b9e;text-decoration:none;background:#eaf4fb;font-size:13px;font-weight:800;}
.psbe-dashboard .psbe-launch a:hover{background:#dceefa;}
