.hsba-portal{--blue:#2f6fed;--blue2:#1b4fb7;--ink:#182133;--gray:#687386;--bg:#edf2f7;--line:#d8e0eb;font-family:Inter,system-ui,sans-serif;background:var(--bg);padding:28px;border-radius:26px;color:var(--ink)}
.hsba-portal-head{display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(135deg,#16233a,#2c4c77);padding:30px;border-radius:22px;color:#fff;margin-bottom:24px}.hsba-kicker{font-size:14px;letter-spacing:.2em;color:#a8c4fa}.hsba-portal-head h2{font-size:34px;margin:6px 0}.hsba-portal-head p{margin:0;color:#dce6f5}.hsba-user{background:rgba(255,255,255,.12);padding:10px 14px;border-radius:999px}
.hsba-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.hsba-project-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 12px 35px rgba(24,33,51,.07)}.hsba-project-top{display:flex;justify-content:space-between;font-size:15px;color:var(--gray)}.hsba-project-top b{color:var(--blue);background:#eaf1ff;padding:5px 9px;border-radius:999px}.hsba-project-card h3{font-size:24px;margin:18px 0 6px}.hsba-project-card>p{color:var(--gray)}.hsba-stats{display:flex;gap:12px;margin:18px 0}.hsba-stats span{background:#f4f7fb;border:1px solid var(--line);padding:10px 12px;border-radius:12px;color:var(--gray)}.hsba-stats strong{color:var(--ink)}
.hsba-docs{border-top:1px solid var(--line);padding-top:16px}.hsba-docs h4{margin:0 0 12px}.hsba-doc{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #edf1f5}.hsba-doc small{display:block;color:var(--gray);margin-top:3px}.hsba-approve{border:0;background:var(--blue);color:#fff;border-radius:10px;padding:9px 12px;cursor:pointer}.hsba-approve:hover{background:var(--blue2)}.hsba-login-note{padding:20px;border:1px solid #d8e0eb;background:#f4f7fb;border-radius:14px}
@media(max-width:800px){.hsba-portal{padding:16px}.hsba-portal-head{align-items:flex-start;flex-direction:column}.hsba-project-grid{grid-template-columns:1fr}.hsba-portal-head h2{font-size:28px}}
.hsba-project-schedule{border-top:1px solid var(--line);padding:17px 0}.hsba-section-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.hsba-section-head h4{margin:0}.hsba-section-head small{color:var(--gray)}.hsba-toggle-timeline{border:1px solid var(--line);background:#f7f9fc;color:var(--ink);padding:8px 11px;border-radius:9px;cursor:pointer}.hsba-progress{height:8px;background:#e8edf4;border-radius:999px;overflow:hidden;margin-top:13px}.hsba-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),#6594ef);border-radius:inherit}.hsba-portal-timeline{margin-top:15px}.hsba-mobile-schedule{display:grid;gap:9px}.hsba-mobile-task{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:12px;align-items:center;background:#f7f9fc;border:1px solid var(--line);border-radius:13px;padding:11px}.hsba-task-date strong,.hsba-task-date span{display:block}.hsba-task-date span{font-size:14px;color:var(--gray);margin-top:2px}.hsba-task-title{font-weight:750}.hsba-task-main small{color:var(--gray)}.hsba-task-progress{height:5px;background:#e4e9f0;border-radius:99px;overflow:hidden;margin-top:7px}.hsba-task-progress span{display:block;height:100%;background:var(--task-color);border-radius:inherit}.hsba-status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:14px;font-weight:750;background:#eef2f7;color:#536070}.hsba-status-delayed{background:#fff0ed;color:#b42318}.hsba-status-completed,.hsba-status-accepted{background:#eaf8ef;color:#18713c}.hsba-status-in_progress,.hsba-status-started{background:#eaf1ff;color:#1d55b5}.hsba-status-paused{background:#fff8df;color:#8a6400}.hsba-stats{flex-wrap:wrap}
@media(max-width:620px){.hsba-mobile-task{grid-template-columns:64px minmax(0,1fr)}.hsba-mobile-task>.hsba-status{grid-column:2;justify-self:start}.hsba-section-head{align-items:flex-start;flex-direction:column}}
.hsba-portal-login{min-height:480px;display:grid;place-items:center;background:linear-gradient(145deg,#e9eff6,#f7f9fc)}.hsba-login-card{width:min(100%,440px);background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 20px 60px rgba(24,33,51,.12)}.hsba-login-card h2{font-size:30px;margin:8px 0}.hsba-login-card p{color:var(--gray)}.hsba-login-card label{display:block;font-weight:650;margin-top:14px}.hsba-login-card input[type=text],.hsba-login-card input[type=password]{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:11px;padding:12px;margin-top:6px}.hsba-login-card .login-submit input{width:100%;border:0;background:var(--blue);color:#fff;border-radius:11px;padding:12px 16px;font-weight:750;cursor:pointer}.hsba-login-help{text-align:center;margin-bottom:0!important}.hsba-login-help a{color:var(--blue)}.hsba-user{display:flex;align-items:center;gap:10px}.hsba-user a{color:#cfe0ff;font-size:15px;text-decoration:none}.hsba-project-entry{display:flex;flex-direction:column}.hsba-card-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto;padding-top:16px;border-top:1px solid var(--line);color:var(--gray);font-size:15px}.hsba-open-project{display:inline-flex;background:var(--blue);color:#fff!important;text-decoration:none;padding:9px 12px;border-radius:10px;font-weight:700}.hsba-empty-portal{background:#fff;border:1px solid var(--line);padding:30px;border-radius:20px}.hsba-back{display:inline-flex;margin:0 0 15px;color:var(--blue);text-decoration:none;font-weight:700}.hsba-project-detail-head{display:flex;justify-content:space-between;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin-bottom:18px}.hsba-project-detail-head h2{font-size:30px;margin:6px 0}.hsba-project-detail-head p{margin:0;color:var(--gray)}.hsba-big-progress{width:110px;height:110px;border-radius:50%;background:#edf3ff;display:grid;place-items:center;align-content:center;border:8px solid #d9e6ff}.hsba-big-progress strong{font-size:27px;color:var(--blue2)}.hsba-big-progress span{font-size:14px;color:var(--gray)}.hsba-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.hsba-detail-main,.hsba-detail-side{display:grid;gap:18px;align-content:start}.hsba-detail-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.hsba-detail-panel h3{margin-top:0}.hsba-muted{color:var(--gray)}.hsba-term,.hsba-company-row{padding:11px 0;border-bottom:1px solid #edf1f5}.hsba-term strong,.hsba-term span,.hsba-company-row strong,.hsba-company-row span{display:block}.hsba-term span,.hsba-company-row span{color:var(--gray);font-size:15px;margin-top:3px}
@media(max-width:850px){.hsba-detail-grid{grid-template-columns:1fr}.hsba-project-detail-head{align-items:flex-start}.hsba-big-progress{width:86px;height:86px;border-width:6px}.hsba-big-progress strong{font-size:22px}}@media(max-width:560px){.hsba-project-detail-head{flex-direction:column}.hsba-user{align-items:flex-start;flex-direction:column}.hsba-card-footer{align-items:flex-start;flex-direction:column}}

/* v0.6.2 – Detail-Accordions */
.hsba-portal .hsba-accordion{display:block;border:1px solid #dce4eb;border-radius:12px;background:#fff;overflow:hidden;margin-bottom:10px}
.hsba-portal .hsba-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:14px}
.hsba-portal .hsba-accordion>summary::-webkit-details-marker{display:none}
.hsba-portal .hsba-accordion[open]>summary{background:#f6f9fb;border-bottom:1px solid #e2e8ee}
.hsba-portal .hsba-accordion-body{padding:14px}
.hsba-portal .hsba-chevron{margin-left:auto;color:#627788;font-weight:700;transition:transform .2s ease}
.hsba-portal .hsba-accordion[open] .hsba-chevron{transform:rotate(180deg)}
.hsba-portal .hsba-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.hsba-portal .hsba-info-grid>div{background:#f5f8fb;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:3px}
.hsba-portal .hsba-info-grid small{font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:#708392}
.hsba-portal .hsba-special-info{padding:12px;margin-top:10px;background:#f5f8fb;border-left:3px solid #2f6fed;border-radius:7px}
.hsba-portal .hsba-warning-box{background:#fff8ea;border-left-color:#d98b1d}
.hsba-portal .hsba-contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
.hsba-portal .hsba-contact-actions a{font-weight:700;text-decoration:none}
.hsba-portal .hsba-person-line{display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid #edf1f4}
.hsba-portal .hsba-term>summary>div{display:flex;flex-direction:column;gap:2px}
.hsba-portal .hsba-mobile-task>summary{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center}
@media(max-width:680px){.hsba-portal .hsba-info-grid{grid-template-columns:1fr}.hsba-portal .hsba-mobile-task>summary{grid-template-columns:auto 1fr auto}.hsba-portal .hsba-mobile-task>summary .hsba-status{grid-column:2/3;margin-top:6px}}

.hsba-doc-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hsba-download{font-weight:700;text-decoration:none}
.hsba-reject{border:1px solid #b95b5b;background:#fff;color:#963c3c;border-radius:7px;padding:7px 10px;cursor:pointer}
.hsba-reject.is-rejected{background:#963c3c;color:#fff}

/* v0.7.2 – Projektbeteiligte im Portal */
.hsba-portal .hsba-participant-card{margin:0 0 8px;border-radius:9px}
.hsba-portal .hsba-participant-card>summary{padding:12px 0;border-radius:0}
.hsba-portal .hsba-participant-card:not([open])>summary{border-bottom:1px solid #e7ebef}
.hsba-portal .hsba-participant-card[open]>summary{padding:12px;background:#f5f8fb}
.hsba-portal .hsba-participant-summary{display:flex;flex-direction:column;gap:2px;min-width:0}
.hsba-portal .hsba-participant-summary strong{font-size:18px;line-height:1.25}
.hsba-portal .hsba-participant-summary span{font-size:15px;color:#687b8a}
.hsba-portal .hsba-participant-summary small{font-size:15px;color:#334d61}
.hsba-portal .hsba-rights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}
.hsba-portal .hsba-rights-grid span{padding:8px 9px;border-radius:7px;background:#f1f4f6;color:#89949c;font-size:15px;font-weight:600}
.hsba-portal .hsba-rights-grid .is-on{background:#edf7f1;color:#28774d}
.hsba-portal .hsba-vcard{padding:7px 10px;border:1px solid #d8e1e8;border-radius:7px}
@media(max-width:600px){
  .hsba-portal .hsba-rights-grid{grid-template-columns:1fr}
}

/* v0.7.4 – Button-/Link-Fix im Portal */
.hsba-portal a{
  color: inherit !important;
}

.hsba-portal .hsba-contact-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px !important;
  width:100%;
}

.hsba-portal .hsba-contact-actions a,
.hsba-portal .hsba-vcard,
.hsba-portal .hsba-download{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:38px;
  padding:8px 12px !important;
  margin:0 !important;
  border:1px solid #d7e0e7 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#243747 !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}

.hsba-portal .hsba-contact-actions a:hover,
.hsba-portal .hsba-vcard:hover,
.hsba-portal .hsba-download:hover{
  background:#f3f7fa !important;
  color:#172a39 !important;
  text-decoration:none !important;
}

.hsba-portal .hsba-contact-actions a:focus,
.hsba-portal .hsba-vcard:focus,
.hsba-portal .hsba-download:focus{
  outline:2px solid currentColor;
  outline-offset:2px;
}

.hsba-portal .hsba-doc-actions{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

.hsba-portal .hsba-doc-actions button{
  margin:0 !important;
  min-height:38px;
  box-sizing:border-box !important;
}

@media(max-width:600px){
  .hsba-portal .hsba-contact-actions a,
  .hsba-portal .hsba-vcard,
  .hsba-portal .hsba-download{
    flex:1 1 calc(50% - 8px);
    white-space:normal !important;
    text-align:center;
  }

  .hsba-portal .hsba-doc-actions{
    justify-content:flex-start !important;
    width:100%;
  }
}

@media(max-width:420px){
  .hsba-portal .hsba-contact-actions a,
  .hsba-portal .hsba-vcard,
  .hsba-portal .hsba-download{
    flex:1 1 100%;
  }
}

/* v0.8.0 – Frontend Upload & Benachrichtigungen */
.hsba-upload-panel details{margin:0}
.hsba-frontend-upload-form{display:flex;flex-direction:column;gap:14px}
.hsba-frontend-upload-form label{display:flex;flex-direction:column;gap:6px}
.hsba-frontend-upload-form input[type="text"],
.hsba-frontend-upload-form input[type="file"],
.hsba-frontend-upload-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #d7e0e7;
  border-radius:8px;
  background:#fff;
  padding:10px 11px;
  font:inherit;
}
.hsba-upload-recipients{border:1px solid #dfe6eb;border-radius:10px;padding:12px;background:#f8fafb}
.hsba-upload-recipient-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.hsba-upload-recipient-head label{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:15px}
.hsba-upload-recipients>label{display:flex;flex-direction:row;align-items:flex-start;gap:8px;padding:8px 0;border-top:1px solid #e7ecef}
.hsba-upload-recipients>label:first-of-type{border-top:0}
.hsba-primary-action{
  align-self:flex-start;
  border:0;
  border-radius:8px;
  padding:10px 14px;
  background:#243747;
  color:#fff !important;
  font-weight:700;
  cursor:pointer;
}
.hsba-primary-action:hover{background:#172a39}
.hsba-notification-panel{margin-bottom:16px}
.hsba-notice-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#243747;color:#fff;font-size:14px;vertical-align:middle}
.hsba-notification{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid #e7ecef}
.hsba-notification:first-of-type{border-top:0}
.hsba-notification p{margin:3px 0;color:#5d7181}
.hsba-notification small{color:#84919b}
.hsba-notification.is-unread{padding-left:10px;border-left:3px solid #2f6fed;background:#f8fbff}
.hsba-notification>a{white-space:nowrap;font-size:15px;font-weight:700}
.hsba-portal-message{padding:12px 14px;margin:0 0 16px;border-radius:9px;border:1px solid}
.hsba-portal-message.is-success{background:#eef8f2;border-color:#b8dec6;color:#245f3d}
.hsba-portal-message.is-error{background:#fff4f4;border-color:#e5bcbc;color:#8b3434}
@media(max-width:600px){
  .hsba-upload-recipient-head{align-items:flex-start;flex-direction:column}
  .hsba-notification{flex-direction:column}
  .hsba-primary-action{width:100%}
}


/* =========================================================
   v0.8.1 – Portal Login / Demo / Button Fixes
========================================================= */

/* Das Portal füllt immer mindestens den sichtbaren Bildschirm. */
.hsba-portal{
  min-height:100vh;
  min-height:100dvh;
  box-sizing:border-box;
}

/* Login ebenfalls immer volle Viewport-Höhe. */
.hsba-portal.hsba-portal-login{
  min-height:100vh !important;
  min-height:100dvh !important;
  width:100%;
  box-sizing:border-box;
  display:grid;
  place-items:center;
  padding:clamp(22px,4vw,54px) !important;
  background:
    radial-gradient(circle at 20% 18%,rgba(47,111,237,.10),transparent 28%),
    linear-gradient(145deg,#e8eef5,#f7f9fc) !important;
}

/* Breitere, hochwertigere Login-Komposition */
.hsba-login-layout{
  width:min(1120px,100%);
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(380px,.72fr);
  gap:18px;
  align-items:stretch;
}

.hsba-portal-login:not(.has-demo-logins) .hsba-login-layout{
  grid-template-columns:minmax(360px,480px);
  justify-content:center;
}

.hsba-login-card{
  width:100% !important;
  min-width:0;
  margin:0;
  padding:clamp(28px,3vw,42px) !important;
  border-radius:24px !important;
  box-shadow:0 28px 75px rgba(24,33,51,.13) !important;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.hsba-login-card h2{
  font-size:36px !important;
  line-height:1.05;
  letter-spacing:-.035em;
  margin:10px 0 9px !important;
}

.hsba-login-card>p{
  font-size:18px;
  line-height:1.5;
  margin-top:0;
}

.hsba-login-card label{
  font-size:16px;
}

.hsba-login-card input[type=text],
.hsba-login-card input[type=password]{
  min-height:50px;
  font-size:17px;
  padding:12px 14px !important;
}

.hsba-login-card .login-remember{
  margin:14px 0 !important;
}

/* Login-Button gegen Theme/Elementor sicher absichern */
.hsba-portal .hsba-login-card .login-submit #wp-submit,
.hsba-portal .hsba-login-card .login-submit input[type=submit]{
  width:100% !important;
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  border-radius:10px !important;
  background:var(--blue) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:0 10px 25px rgba(47,111,237,.18);
}

.hsba-portal .hsba-login-card .login-submit #wp-submit:hover{
  background:var(--blue2) !important;
}

/* Demo-Seite links */
.hsba-demo-login-panel{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  padding:clamp(30px,4vw,50px);
  background:
    radial-gradient(circle at 80% 10%,rgba(88,132,255,.25),transparent 30%),
    linear-gradient(145deg,#14243b,#25466f);
  color:#fff;
  box-shadow:0 28px 75px rgba(24,33,51,.12);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.hsba-demo-login-panel:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 90%);
}

.hsba-demo-login-panel>*{
  position:relative;
  z-index:1;
}

.hsba-demo-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  font-size:13px;
  font-weight:850;
  letter-spacing:.12em;
  color:#c5d7ff;
}

.hsba-demo-live i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#54cf89;
  box-shadow:0 0 0 5px rgba(84,207,137,.10);
}

.hsba-demo-login-panel h2{
  margin:22px 0 15px;
  font-size:clamp(38px,4vw,58px);
  line-height:.98;
  letter-spacing:-.055em;
  color:#fff;
}

.hsba-demo-login-panel h2 span{
  color:#8ea4b6;
}

.hsba-demo-login-panel>p{
  max-width:560px;
  margin:0 0 28px;
  color:#c3d0dc;
  font-size:17px;
  line-height:1.58;
}

.hsba-demo-select-label{
  display:block;
  margin-bottom:7px;
  color:#aabed0;
  font-size:14px;
  font-weight:750;
  letter-spacing:.03em;
}

.hsba-demo-profile{
  width:100%;
  min-height:52px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:10px;
  padding:0 13px;
  background:#fff;
  color:#182133;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
}

.hsba-demo-credentials{
  margin-top:12px;
  padding:13px;
  border-radius:11px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}

.hsba-demo-credentials[hidden]{
  display:none !important;
}

.hsba-demo-credentials>div{
  display:grid;
  grid-template-columns:105px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:5px 0;
}

.hsba-demo-credentials small{
  color:#8fa6b8;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.hsba-demo-credentials strong{
  overflow-wrap:anywhere;
  color:#fff;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:15px;
}

.hsba-demo-selected-role{
  margin:9px 0 0 !important;
  color:#b8c8d5 !important;
  font-size:14px !important;
}

.hsba-demo-note{
  margin-top:20px;
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.11);
  display:flex;
  flex-direction:column;
  gap:5px;
}

.hsba-demo-note strong{
  font-size:14px;
  color:#fff;
}

.hsba-demo-note span{
  font-size:14px;
  line-height:1.5;
  color:#93a9b9;
}

/* ---------------------------------------------------------
   BUTTON FIX
   Die frühere globale a{color:inherit!important}-Regel
   darf keine echten CTA-Buttons mehr einfärben.
--------------------------------------------------------- */

.hsba-portal a.hsba-open-project,
.hsba-portal .hsba-card-footer a.hsba-open-project{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px;
  padding:9px 14px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:9px !important;
  background:var(--blue) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.hsba-portal a.hsba-open-project:hover{
  background:var(--blue2) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Abmelden im dunklen Header sichtbar halten */
.hsba-portal .hsba-user a{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:.88;
}

.hsba-portal .hsba-user a:hover{
  opacity:1;
}

/* Passwort-Link bewusst blau */
.hsba-portal .hsba-login-help a{
  color:var(--blue) !important;
  -webkit-text-fill-color:var(--blue) !important;
}

/* Projektkarten-CTA nicht von globalen Theme-Ankerfarben beeinflussen */
.hsba-portal .hsba-project-card a,
.hsba-portal .hsba-project-card a:visited{
  text-decoration:none;
}

/* Responsive */
@media(max-width:900px){
  .hsba-login-layout{
    grid-template-columns:1fr;
    max-width:640px;
  }

  .hsba-demo-login-panel{
    min-height:auto;
  }
}

@media(max-width:600px){
  .hsba-portal.hsba-portal-login{
    padding:14px !important;
    place-items:start center;
  }

  .hsba-login-card,
  .hsba-demo-login-panel{
    border-radius:18px !important;
  }

  .hsba-demo-login-panel{
    padding:26px 22px;
  }

  .hsba-demo-login-panel h2{
    font-size:38px;
  }

  .hsba-login-card h2{
    font-size:30px !important;
  }

  .hsba-demo-credentials>div{
    grid-template-columns:1fr;
    gap:3px;
  }
}


/* =========================================================
   v0.9.0 – Projektleiter Frontend-Konsole
========================================================= */

.hsba-manager-console{
  margin:0 0 18px !important;
  padding:0 !important;
  border:1px solid #d6e0e8 !important;
  border-radius:20px !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:0 14px 42px rgba(22,45,68,.07) !important;
}

.hsba-manager-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:22px !important;
  padding:24px !important;
  background:linear-gradient(135deg,#112941,#294f7c) !important;
  color:#fff !important;
}

.hsba-manager-kicker{
  display:block !important;
  margin-bottom:5px !important;
  color:#a9c7ff !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.15em !important;
}

.hsba-manager-head h3{
  margin:0 !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1.1 !important;
}

.hsba-manager-head p{
  margin:7px 0 0 !important;
  color:#d7e4ef !important;
  font-size:15px !important;
}

.hsba-manager-badge{
  flex:0 0 auto !important;
  padding:8px 11px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:700 !important;
}

.hsba-manager-tabs{
  display:flex !important;
  gap:6px !important;
  overflow-x:auto !important;
  padding:10px !important;
  border-bottom:1px solid #dde5eb !important;
  background:#f5f8fb !important;
  scrollbar-width:thin !important;
}

.hsba-portal .hsba-manager-tab,
.hsba-portal button.hsba-manager-tab{
  flex:0 0 auto !important;
  min-height:38px !important;
  padding:8px 12px !important;
  margin:0 !important;
  border:1px solid transparent !important;
  border-radius:9px !important;
  background:transparent !important;
  color:#586f80 !important;
  -webkit-text-fill-color:#586f80 !important;
  font-size:15px !important;
  font-weight:750 !important;
  line-height:1.1 !important;
  box-shadow:none !important;
  cursor:pointer !important;
  text-transform:none !important;
}

.hsba-portal .hsba-manager-tab:hover{
  border-color:#d1dde7 !important;
  background:#fff !important;
  color:#193751 !important;
  -webkit-text-fill-color:#193751 !important;
}

.hsba-portal .hsba-manager-tab.is-active{
  border-color:#2f6fed !important;
  background:#2f6fed !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-manager-panes{
  padding:20px !important;
}

.hsba-manager-pane{
  display:none !important;
}

.hsba-manager-pane.is-active{
  display:block !important;
}

.hsba-manager-pane-head{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  gap:18px !important;
  margin-bottom:18px !important;
  padding-bottom:14px !important;
  border-bottom:1px solid #e4eaef !important;
}

.hsba-manager-pane-head>div>span{
  display:block !important;
  margin-bottom:4px !important;
  color:#2f6fed !important;
  font-size:13px !important;
  font-weight:850 !important;
  letter-spacing:.13em !important;
}

.hsba-manager-pane-head h4{
  margin:0 !important;
  color:#172a39 !important;
  font-size:21px !important;
  line-height:1.15 !important;
}

.hsba-manager-pane-head small{
  color:#738695 !important;
  font-size:14px !important;
}

.hsba-manager-form{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  margin:0 !important;
}

.hsba-manager-grid{
  display:grid !important;
  gap:12px !important;
}

.hsba-manager-grid.cols-2{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.hsba-manager-grid .span-2{
  grid-column:1/-1 !important;
}

.hsba-manager-form label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  margin:0 !important;
  color:#243747 !important;
  font-size:15px !important;
  font-weight:700 !important;
}

.hsba-manager-form label>span{
  color:#5f7383 !important;
  font-size:14px !important;
  font-weight:700 !important;
}

.hsba-manager-form input[type="text"],
.hsba-manager-form input[type="email"],
.hsba-manager-form input[type="url"],
.hsba-manager-form input[type="date"],
.hsba-manager-form input[type="datetime-local"],
.hsba-manager-form input[type="number"],
.hsba-manager-form input[type="file"],
.hsba-manager-form input[type="color"],
.hsba-manager-form select,
.hsba-manager-form textarea,
.hsba-frontend-upload-form input[type="datetime-local"],
.hsba-frontend-upload-form select{
  width:100% !important;
  min-height:44px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  border:1px solid #ced9e2 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#172a39 !important;
  -webkit-text-fill-color:#172a39 !important;
  padding:9px 11px !important;
  font:inherit !important;
  font-size:15px !important;
  line-height:1.3 !important;
  outline:none !important;
  box-shadow:none !important;
}

.hsba-manager-form input[type="color"]{
  padding:5px !important;
}

.hsba-manager-form textarea{
  min-height:88px !important;
  resize:vertical !important;
}

.hsba-manager-form input:focus,
.hsba-manager-form select:focus,
.hsba-manager-form textarea:focus,
.hsba-frontend-upload-form input:focus,
.hsba-frontend-upload-form select:focus,
.hsba-frontend-upload-form textarea:focus{
  border-color:#2f6fed !important;
  box-shadow:0 0 0 3px rgba(47,111,237,.10) !important;
}

.hsba-manager-divider{
  margin-top:4px !important;
  padding-top:13px !important;
  border-top:1px solid #e5ebf0 !important;
  color:#172a39 !important;
  font-size:15px !important;
}

.hsba-manager-rights,
.hsba-manager-contacts{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  padding:12px !important;
  border:1px solid #dce5eb !important;
  border-radius:10px !important;
  background:#f7f9fb !important;
}

.hsba-manager-contacts>strong{
  width:100% !important;
  margin-bottom:3px !important;
  color:#243747 !important;
  font-size:15px !important;
}

.hsba-manager-form label.hsba-check,
.hsba-frontend-upload-form label.hsba-check{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  gap:7px !important;
  font-size:15px !important;
  font-weight:650 !important;
  cursor:pointer !important;
}

.hsba-manager-form .hsba-check input[type="checkbox"],
.hsba-frontend-upload-form .hsba-check input[type="checkbox"]{
  width:16px !important;
  min-width:16px !important;
  height:16px !important;
  min-height:16px !important;
  margin:1px 0 0 !important;
  padding:0 !important;
  accent-color:#2f6fed !important;
}

.hsba-manager-form .hsba-check span,
.hsba-frontend-upload-form .hsba-check span{
  color:#334b5d !important;
  font-size:15px !important;
}

.hsba-login-create-fields{
  padding:12px !important;
  border:1px dashed #b9c9d5 !important;
  border-radius:10px !important;
  background:#f9fbfc !important;
}

.hsba-login-create-fields[hidden],
.hsba-upload-approvers[hidden]{
  display:none !important;
}

/* Hauptbuttons – Elementor darf nichts überschreiben */
.hsba-portal .hsba-manager-submit,
.hsba-portal button.hsba-manager-submit,
.hsba-portal .hsba-primary-action,
.hsba-portal button.hsba-primary-action,
.hsba-portal input.hsba-manager-submit[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:flex-start !important;
  min-height:44px !important;
  width:auto !important;
  margin:0 !important;
  padding:10px 16px !important;
  border:1px solid #2f6fed !important;
  border-radius:9px !important;
  background:#2f6fed !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  text-decoration:none !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-portal .hsba-manager-submit:hover,
.hsba-portal button.hsba-manager-submit:hover,
.hsba-portal .hsba-primary-action:hover,
.hsba-portal button.hsba-primary-action:hover{
  border-color:#1b4fb7 !important;
  background:#1b4fb7 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-manager-list{
  margin-top:20px !important;
  border-top:1px solid #e1e8ed !important;
  padding-top:15px !important;
}

.hsba-manager-list>strong{
  display:block !important;
  margin-bottom:7px !important;
  color:#172a39 !important;
  font-size:15px !important;
}

.hsba-manager-list>div{
  display:flex !important;
  justify-content:space-between !important;
  gap:15px !important;
  padding:9px 0 !important;
  border-bottom:1px solid #edf1f4 !important;
}

.hsba-manager-list span,
.hsba-manager-list small{
  font-size:14px !important;
}

.hsba-manager-list small{
  color:#718493 !important;
  text-align:right !important;
}

.hsba-chip-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin-top:16px !important;
}

.hsba-chip-list>span{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  padding:7px 9px !important;
  border:1px solid #dce4ea !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#344c5d !important;
  font-size:14px !important;
  font-weight:700 !important;
}

.hsba-chip-list i{
  width:8px !important;
  height:8px !important;
  border-radius:50% !important;
  background:var(--chip-color,#2f6fed) !important;
}

.hsba-manager-split{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
}

.hsba-manager-split>div{
  padding:16px !important;
  border:1px solid #dce5eb !important;
  border-radius:12px !important;
  background:#fbfcfd !important;
}

.hsba-manager-split h5{
  margin:0 0 13px !important;
  color:#172a39 !important;
  font-size:18px !important;
}

.hsba-manager-upload-approval{
  margin-top:2px !important;
  padding:12px !important;
  border:1px solid #dce5eb !important;
  border-radius:10px !important;
  background:#f7f9fb !important;
}

.hsba-upload-approvers{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  margin-top:12px !important;
  padding-top:12px !important;
  border-top:1px solid #dfe6eb !important;
}

.hsba-upload-approvers>strong{
  color:#243747 !important;
  font-size:15px !important;
}

/* Bestehende Portal-Aktionen explizit absichern */
.hsba-portal a.hsba-back,
.hsba-portal a.hsba-back:visited{
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
  text-decoration:none !important;
}

.hsba-portal a.hsba-open-project,
.hsba-portal a.hsba-open-project:visited,
.hsba-portal .hsba-card-footer a.hsba-open-project,
.hsba-portal .hsba-card-footer a.hsba-open-project:visited{
  background:#2f6fed !important;
  border-color:#2f6fed !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-portal a.hsba-open-project:hover{
  background:#1b4fb7 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-portal button.hsba-approve,
.hsba-portal .hsba-approve{
  border:1px solid #2f6fed !important;
  background:#2f6fed !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-radius:8px !important;
  padding:8px 11px !important;
  font-weight:800 !important;
}

.hsba-portal button.hsba-reject,
.hsba-portal .hsba-reject{
  border:1px solid #a84b4b !important;
  background:#fff !important;
  color:#913d3d !important;
  -webkit-text-fill-color:#913d3d !important;
  border-radius:8px !important;
  padding:8px 11px !important;
  font-weight:800 !important;
}

.hsba-portal button.hsba-reject:hover{
  background:#913d3d !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-portal .hsba-notification>a,
.hsba-portal .hsba-notification>a:visited{
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
  text-decoration:none !important;
}

.hsba-portal .hsba-login-help a,
.hsba-portal .hsba-login-help a:visited{
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
}

/* Upload-Button explizit: verhindert z.B. Elementor-Pink */
.hsba-portal .hsba-upload-panel .hsba-primary-action,
.hsba-portal .hsba-upload-panel button.hsba-primary-action{
  background:#2f6fed !important;
  border:1px solid #2f6fed !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

@media(max-width:820px){
  .hsba-manager-head,
  .hsba-manager-pane-head{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .hsba-manager-grid.cols-2,
  .hsba-manager-split{
    grid-template-columns:1fr !important;
  }

  .hsba-manager-grid .span-2{
    grid-column:auto !important;
  }

  .hsba-manager-list>div{
    flex-direction:column !important;
    gap:3px !important;
  }

  .hsba-manager-list small{
    text-align:left !important;
  }

  .hsba-manager-submit,
  .hsba-primary-action{
    width:100% !important;
  }
}

@media(max-width:520px){
  .hsba-manager-panes{
    padding:14px !important;
  }

  .hsba-manager-head{
    padding:19px !important;
  }

  .hsba-manager-tabs{
    padding:8px !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.0 – HIGH-END PROJECT WORKSPACE
========================================================= */

.hsba-portal.hsba-portal-project-mode{
  --blue:#2f6fed;
  --blue2:#1b4fb7;
  --navy:#10263a;
  --navy2:#183b59;
  --ink:#172a39;
  --muted:#708392;
  --line:#dfe6eb;
  --surface:#f5f7fa;
  --card:#ffffff;
  min-height:100vh !important;
  min-height:100dvh !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:0 !important;
  background:var(--surface) !important;
  color:var(--ink) !important;
  overflow:visible !important;
}

.hsba-v100-shell{
  position:relative !important;
  display:grid !important;
  grid-template-columns:238px minmax(0,1fr) !important;
  width:100% !important;
  min-height:100vh !important;
  min-height:100dvh !important;
  background:var(--surface) !important;
  color:var(--ink) !important;
}

/* ---------------- Sidebar ---------------- */

.hsba-v100-sidebar{
  position:sticky !important;
  top:0 !important;
  align-self:start !important;
  height:100vh !important;
  height:100dvh !important;
  display:flex !important;
  flex-direction:column !important;
  padding:22px 14px 16px !important;
  border-right:1px solid var(--line) !important;
  background:#fff !important;
  z-index:40 !important;
  overflow-y:auto !important;
}

.hsba-v100-brand{
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  padding:0 9px 21px !important;
  border-bottom:1px solid #edf1f4 !important;
}

.hsba-v100-brand>span{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  background:var(--navy) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:14px !important;
  font-weight:900 !important;
}

.hsba-v100-brand>div{
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}

.hsba-v100-brand strong{
  color:var(--ink) !important;
  font-size:15px !important;
  letter-spacing:.12em !important;
}

.hsba-v100-brand small{
  color:#8c9ba6 !important;
  font-size:13px !important;
}

.hsba-v100-project-mini{
  margin:18px 5px 13px !important;
  padding:14px !important;
  border-radius:12px !important;
  background:#f5f8fb !important;
  border:1px solid #e3e9ee !important;
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}

.hsba-v100-project-mini small{
  color:var(--blue) !important;
  font-size:12px !important;
  font-weight:850 !important;
  letter-spacing:.08em !important;
}

.hsba-v100-project-mini strong{
  color:var(--ink) !important;
  font-size:15px !important;
  line-height:1.25 !important;
}

.hsba-v100-project-mini span{
  color:#758795 !important;
  font-size:13px !important;
}

.hsba-v100-nav{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}

.hsba-portal .hsba-v100-nav-item,
.hsba-portal button.hsba-v100-nav-item{
  width:100% !important;
  min-height:42px !important;
  margin:0 !important;
  padding:8px 9px !important;
  display:grid !important;
  grid-template-columns:25px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:7px !important;
  border:1px solid transparent !important;
  border-radius:9px !important;
  background:transparent !important;
  color:#617584 !important;
  -webkit-text-fill-color:#617584 !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-align:left !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-v100-nav-item i{
  color:#91a0ab !important;
  font-size:11.5px !important;
  font-style:normal !important;
  font-weight:850 !important;
}

.hsba-v100-nav-item b{
  min-width:19px !important;
  height:19px !important;
  padding:0 5px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  background:#e7edf3 !important;
  color:#506879 !important;
  -webkit-text-fill-color:#506879 !important;
  font-size:11.5px !important;
}

.hsba-portal .hsba-v100-nav-item:hover{
  border-color:#dce5eb !important;
  background:#f7f9fb !important;
  color:#2f4c63 !important;
  -webkit-text-fill-color:#2f4c63 !important;
}

.hsba-portal .hsba-v100-nav-item.is-active{
  border-color:#d8e4ff !important;
  background:#eaf1ff !important;
  color:var(--blue) !important;
  -webkit-text-fill-color:var(--blue) !important;
}

.hsba-v100-nav-item.is-active i{
  color:var(--blue) !important;
}

.hsba-v100-nav-item.is-active b{
  background:var(--blue) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-v100-sidebar-bottom{
  margin-top:auto !important;
  padding:16px 8px 0 !important;
  border-top:1px solid #edf1f4 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}

.hsba-portal .hsba-v100-sidebar-bottom a,
.hsba-portal .hsba-v100-sidebar-bottom a:visited{
  color:#647887 !important;
  -webkit-text-fill-color:#647887 !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-decoration:none !important;
}

.hsba-portal .hsba-v100-sidebar-bottom a:hover{
  color:var(--blue) !important;
  -webkit-text-fill-color:var(--blue) !important;
}

/* ---------------- Main / Topbar ---------------- */

.hsba-v100-main{
  min-width:0 !important;
  background:var(--surface) !important;
}

.hsba-v100-topbar{
  position:sticky !important;
  top:0 !important;
  z-index:30 !important;
  min-height:68px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:12px clamp(20px,2.8vw,40px) !important;
  border-bottom:1px solid rgba(31,63,85,.08) !important;
  background:rgba(255,255,255,.90) !important;
  backdrop-filter:blur(18px) !important;
}

.hsba-v100-switch{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}

.hsba-v100-switch>span{
  color:#8a9aa5 !important;
  font-size:11.5px !important;
  letter-spacing:.12em !important;
  font-weight:850 !important;
}

.hsba-v100-project-switch{
  min-width:260px !important;
  max-width:420px !important;
  border:0 !important;
  padding:0 24px 0 0 !important;
  background:transparent !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-size:15px !important;
  font-weight:800 !important;
  box-shadow:none !important;
  outline:none !important;
}

.hsba-v100-top-user{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
}

.hsba-v100-avatar{
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:var(--navy) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
}

.hsba-v100-top-user>div{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}

.hsba-v100-top-user strong{
  color:var(--ink) !important;
  font-size:14px !important;
}

.hsba-v100-top-user small{
  color:#84939e !important;
  font-size:12px !important;
}

.hsba-v100-mobile-menu,
.hsba-v100-mobile-close{
  display:none !important;
}

/* ---------------- Workspace ---------------- */

.hsba-workspace-pane{
  display:none !important;
  padding:clamp(22px,3vw,42px) !important;
  max-width:1500px !important;
  margin:0 auto !important;
}

.hsba-workspace-pane.is-active{
  display:block !important;
}

.hsba-v100-project-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:30px !important;
  margin-bottom:22px !important;
}

.hsba-v100-kicker,
.hsba-v100-page-title>span,
.hsba-v100-section-title>div>span,
.hsba-v100-minihead>div>span,
.hsba-v100-todo-head>div>span{
  color:var(--blue) !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:.13em !important;
}

.hsba-v100-project-head h2{
  margin:6px 0 4px !important;
  color:var(--ink) !important;
  font-size:clamp(28px,3vw,46px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.hsba-v100-project-head p{
  margin:0 !important;
  color:#728493 !important;
  font-size:15px !important;
}

.hsba-v100-progress{
  flex:0 0 auto !important;
  text-align:right !important;
}

.hsba-v100-progress strong{
  display:block !important;
  color:var(--ink) !important;
  font-size:38px !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
}

.hsba-v100-progress span{
  color:#82939f !important;
  font-size:13px !important;
}

/* KPI cards */
.hsba-v100-kpis{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-bottom:12px !important;
}

.hsba-portal .hsba-v100-kpis button{
  min-height:126px !important;
  padding:17px !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  border:1px solid #e1e7ec !important;
  border-radius:15px !important;
  background:#fff !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  text-align:left !important;
  text-transform:none !important;
  box-shadow:0 8px 26px rgba(17,42,62,.035) !important;
  cursor:pointer !important;
  transition:transform .2s ease,box-shadow .2s ease !important;
}

.hsba-portal .hsba-v100-kpis button:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 15px 35px rgba(17,42,62,.075) !important;
  border-color:#ced9e2 !important;
}

.hsba-v100-kpis button>span{
  color:#7e909d !important;
  -webkit-text-fill-color:#7e909d !important;
  font-size:11.5px !important;
  font-weight:850 !important;
  letter-spacing:.08em !important;
}

.hsba-v100-kpis button>strong{
  margin:10px 0 4px !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-size:35px !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
}

.hsba-v100-kpis button>small{
  margin-top:auto !important;
  color:#8b9ba6 !important;
  -webkit-text-fill-color:#8b9ba6 !important;
  font-size:12px !important;
}

.hsba-v100-overview-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.65fr) !important;
  gap:12px !important;
}

.hsba-v100-dashboard-card,
.hsba-v100-list-card,
.hsba-v100-upload-card{
  min-width:0 !important;
  border:1px solid #dfe6eb !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 9px 30px rgba(18,45,65,.035) !important;
}

.hsba-v100-dashboard-card{
  padding:18px !important;
}

.hsba-v100-list-card,
.hsba-v100-upload-card{
  padding:22px !important;
  margin-bottom:14px !important;
}

.hsba-v100-minihead,
.hsba-v100-section-title{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:20px !important;
  margin-bottom:17px !important;
}

.hsba-v100-minihead>div,
.hsba-v100-section-title>div{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}

.hsba-v100-minihead h4,
.hsba-v100-section-title h4{
  margin:0 !important;
  color:var(--ink) !important;
  font-size:17px !important;
  line-height:1.2 !important;
}

.hsba-v100-section-title small{
  color:#84949f !important;
  font-size:13px !important;
}

/* all text action buttons */
.hsba-portal .hsba-v100-text-action,
.hsba-portal button.hsba-v100-text-action{
  width:auto !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  color:var(--blue) !important;
  -webkit-text-fill-color:var(--blue) !important;
  font-size:13px !important;
  font-weight:800 !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

/* Gantt preview */
.hsba-v100-gantt-row{
  display:grid !important;
  grid-template-columns:90px minmax(0,1fr) 35px !important;
  align-items:center !important;
  gap:9px !important;
  margin:11px 0 !important;
}

.hsba-v100-gantt-row label,
.hsba-v100-gantt-row b{
  color:#405665 !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.hsba-v100-gantt-row>div{
  height:16px !important;
  overflow:hidden !important;
  border-radius:4px !important;
  background:repeating-linear-gradient(90deg,#f1f4f6,#f1f4f6 calc(25% - 1px),#e1e7ec 25%) !important;
}

.hsba-v100-gantt-row i{
  display:block !important;
  height:100% !important;
  min-width:3px !important;
  border-radius:4px !important;
  background:linear-gradient(90deg,var(--bar-color,#2f6fed),#79a5ff) !important;
}

/* Activity */
.hsba-v100-activity-item{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:9px 0 !important;
  border-top:1px solid #edf1f4 !important;
}

.hsba-v100-activity-item:first-of-type{
  border-top:0 !important;
}

.hsba-v100-activity-item>i{
  width:27px !important;
  height:27px !important;
  flex:0 0 27px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:7px !important;
  background:#edf4ff !important;
  color:var(--blue) !important;
  font-size:12px !important;
  font-style:normal !important;
}

.hsba-v100-activity-item>div{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}

.hsba-v100-activity-item strong{
  color:var(--ink) !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

.hsba-v100-activity-item span{
  color:#8998a3 !important;
  font-size:11.5px !important;
}

/* Next appointments overview */
.hsba-v100-next-term{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:10px 0 !important;
  border-top:1px solid #edf1f4 !important;
}

.hsba-v100-next-term>span{
  width:42px !important;
  height:38px !important;
  flex:0 0 42px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:9px !important;
  background:#edf4ff !important;
  color:var(--blue) !important;
  font-size:12px !important;
  font-weight:850 !important;
}

.hsba-v100-next-term>div{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}

.hsba-v100-next-term strong{
  color:var(--ink) !important;
  font-size:13px !important;
}

.hsba-v100-next-term small{
  color:#8797a2 !important;
  font-size:11.5px !important;
}

/* ---------------- Todo ---------------- */

.hsba-v100-todo-head{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:25px !important;
  margin-bottom:18px !important;
}

.hsba-v100-todo-head h3,
.hsba-v100-page-title h3{
  margin:5px 0 4px !important;
  color:var(--ink) !important;
  font-size:28px !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
}

.hsba-v100-todo-head p,
.hsba-v100-page-title p{
  margin:0 !important;
  color:#718492 !important;
  font-size:14px !important;
}

.hsba-v100-todo-counts{
  display:flex !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

.hsba-v100-todo-counts span{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:8px 10px !important;
  border:1px solid #dfe6eb !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#627786 !important;
  font-size:13px !important;
}

.hsba-v100-todo-counts span.has-alert{
  border-color:#f0c5b4 !important;
  background:#fff5ef !important;
  color:#a65430 !important;
}

.hsba-v100-todo-create{
  display:grid !important;
  grid-template-columns:minmax(260px,1.5fr) minmax(160px,.65fr) minmax(130px,.5fr) minmax(160px,.55fr) !important;
  gap:10px !important;
  padding:17px !important;
  margin-bottom:13px !important;
  border:1px solid #dce5eb !important;
  border-radius:15px !important;
  background:#fff !important;
}

.hsba-v100-todo-create .todo-title{
  grid-column:auto !important;
}

.hsba-v100-todo-create .todo-desc{
  grid-column:1/-2 !important;
}

.hsba-v100-todo-create label{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  color:#647886 !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.hsba-v100-todo-create input,
.hsba-v100-todo-create select,
.hsba-v100-todo-create textarea{
  width:100% !important;
  box-sizing:border-box !important;
  min-height:42px !important;
  margin:0 !important;
  padding:9px 10px !important;
  border:1px solid #d5dfe6 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-size:14px !important;
  box-shadow:none !important;
  outline:none !important;
}

.hsba-v100-todo-list{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}

.hsba-v100-todo-item{
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) auto !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:12px !important;
  border:1px solid #dfe6eb !important;
  border-left:3px solid #aebbc5 !important;
  border-radius:11px !important;
  background:#fff !important;
}

.hsba-v100-todo-item.priority-high{border-left-color:#e59b42 !important}
.hsba-v100-todo-item.priority-critical{border-left-color:#cc5c4d !important}
.hsba-v100-todo-item.priority-low{border-left-color:#72a57e !important}
.hsba-v100-todo-item.is-done{opacity:.58 !important}

.hsba-todo-check-form{
  margin:0 !important;
}

.hsba-portal .hsba-todo-check{
  width:25px !important;
  height:25px !important;
  min-width:25px !important;
  min-height:25px !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid #cad6df !important;
  border-radius:7px !important;
  background:#fff !important;
  color:#2f7c57 !important;
  -webkit-text-fill-color:#2f7c57 !important;
  font-size:14px !important;
  font-weight:900 !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-v100-todo-item.is-done .hsba-todo-check{
  background:#eaf7ef !important;
  border-color:#b7dcc6 !important;
}

.hsba-todo-content{
  min-width:0 !important;
}

.hsba-todo-content>strong{
  color:var(--ink) !important;
  font-size:14px !important;
}

.hsba-todo-content>p{
  margin:4px 0 0 !important;
  color:#718391 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

.hsba-todo-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:5px !important;
  margin-top:7px !important;
}

.hsba-todo-meta span{
  padding:3px 6px !important;
  border-radius:999px !important;
  background:#f2f5f7 !important;
  color:#748692 !important;
  font-size:11.5px !important;
  font-weight:700 !important;
}

.hsba-todo-meta span.overdue{
  background:#fff0ec !important;
  color:#ab4d3f !important;
}

.hsba-todo-actions{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  align-items:flex-end !important;
}

.hsba-portal .hsba-todo-actions a,
.hsba-portal .hsba-todo-actions a:visited{
  color:var(--blue) !important;
  -webkit-text-fill-color:var(--blue) !important;
  font-size:12px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.hsba-portal .hsba-todo-actions a.is-danger{
  color:#a44b44 !important;
  -webkit-text-fill-color:#a44b44 !important;
}

.hsba-v100-todo-list.is-compact .hsba-v100-todo-item{
  grid-template-columns:29px minmax(0,1fr) !important;
  padding:9px 0 !important;
  border-width:0 0 1px 0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.hsba-v100-todo-list.is-compact .hsba-v100-todo-item:last-child{
  border-bottom:0 !important;
}

.hsba-v100-todo-list.is-compact .hsba-todo-meta{
  display:none !important;
}

/* ---------------- Generic lists ---------------- */

.hsba-v100-row{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:64px !important;
  padding:11px 0 !important;
  border-top:1px solid #edf1f4 !important;
}

.hsba-v100-row:first-of-type{
  border-top:0 !important;
}

.hsba-v100-file-icon{
  width:39px !important;
  height:39px !important;
  flex:0 0 39px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:9px !important;
  background:#edf4ff !important;
  color:var(--blue) !important;
  font-size:11.5px !important;
  font-weight:900 !important;
}

.hsba-v100-task-dot{
  width:11px !important;
  height:11px !important;
  flex:0 0 11px !important;
  border-radius:50% !important;
  background:#a9b5be !important;
}
.hsba-v100-task-dot.priority-high{background:#e79b40 !important}
.hsba-v100-task-dot.priority-critical{background:#d05c4c !important}
.hsba-v100-task-dot.priority-low{background:#69a27c !important}

.hsba-v100-row-main{
  min-width:0 !important;
  flex:1 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}

.hsba-v100-row-main strong{
  color:var(--ink) !important;
  font-size:14px !important;
}

.hsba-v100-row-main span{
  color:#80919d !important;
  font-size:12px !important;
}

.hsba-v100-row-badges{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
}

.hsba-v100-row-badges span{
  padding:5px 7px !important;
  border-radius:999px !important;
  background:#f2f5f7 !important;
  color:#697d8b !important;
  font-size:11.5px !important;
  font-weight:750 !important;
}

.hsba-v100-row-badges .is-warning{
  background:#fff4e7 !important;
  color:#a7692b !important;
}
.hsba-v100-row-badges .is-success{
  background:#edf8f2 !important;
  color:#327957 !important;
}

.hsba-v100-empty-small{
  padding:18px !important;
  border:1px dashed #cfdae2 !important;
  border-radius:10px !important;
  background:#fafcfd !important;
  color:#82929d !important;
  font-size:14px !important;
  text-align:center !important;
}

/* ---------------- Forms / Upload ---------------- */

.hsba-v100-form-grid{
  display:grid !important;
  grid-template-columns:1fr 220px !important;
  gap:10px !important;
}

.hsba-v100-form-grid .span-2{
  grid-column:1/-1 !important;
}

.hsba-v100-form label,
.hsba-v100-upload-card label{
  color:#596f7f !important;
  font-size:14px !important;
  font-weight:700 !important;
}

.hsba-v100-form label>span{
  display:block !important;
  margin-bottom:5px !important;
}

.hsba-v100-form input[type="text"],
.hsba-v100-form input[type="datetime-local"],
.hsba-v100-form input[type="file"],
.hsba-v100-form textarea,
.hsba-v100-form select{
  width:100% !important;
  min-height:43px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:9px 10px !important;
  border:1px solid #d5dfe6 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
  font-size:14px !important;
  box-shadow:none !important;
}

.hsba-file-drop input[type="file"]{
  padding:11px !important;
  background:#f8fafc !important;
}

.hsba-v100-primary,
.hsba-portal button.hsba-v100-primary,
.hsba-portal .hsba-primary-action.hsba-v100-primary{
  min-height:43px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:16px !important;
  width:auto !important;
  margin:0 !important;
  padding:10px 15px !important;
  border:1px solid var(--blue) !important;
  border-radius:8px !important;
  background:var(--blue) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:14px !important;
  font-weight:850 !important;
  line-height:1.1 !important;
  text-transform:none !important;
  text-decoration:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-v100-primary:hover,
.hsba-portal button.hsba-v100-primary:hover{
  border-color:var(--blue2) !important;
  background:var(--blue2) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-portal .hsba-v100-secondary,
.hsba-portal a.hsba-v100-secondary,
.hsba-portal a.hsba-v100-secondary:visited{
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:7px 10px !important;
  border:1px solid #d5dfe6 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#29485f !important;
  -webkit-text-fill-color:#29485f !important;
  font-size:13px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

/* Elementor-proof approve/reject */
.hsba-portal button.hsba-approve,
.hsba-portal .hsba-approve{
  min-height:36px !important;
  border:1px solid var(--blue) !important;
  border-radius:8px !important;
  background:var(--blue) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  padding:7px 10px !important;
  font-size:13px !important;
  font-weight:850 !important;
  text-transform:none !important;
}

.hsba-portal button.hsba-reject,
.hsba-portal .hsba-reject{
  min-height:36px !important;
  border:1px solid #d6a8a2 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#9a4a42 !important;
  -webkit-text-fill-color:#9a4a42 !important;
  padding:7px 10px !important;
  font-size:13px !important;
  font-weight:850 !important;
  text-transform:none !important;
}

/* ---------------- Appointments / People ---------------- */

.hsba-v100-appointment,
.hsba-v100-person{
  margin:0 !important;
  border-top:1px solid #edf1f4 !important;
}

.hsba-v100-appointment>summary,
.hsba-v100-person>summary{
  list-style:none !important;
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  padding:12px 0 !important;
  cursor:pointer !important;
}

.hsba-v100-appointment>summary::-webkit-details-marker,
.hsba-v100-person>summary::-webkit-details-marker{
  display:none !important;
}

.hsba-v100-appointment>summary>div:nth-child(2),
.hsba-v100-person>summary>div:nth-child(2){
  flex:1 !important;
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}

.hsba-v100-appointment summary strong,
.hsba-v100-person summary strong{
  color:var(--ink) !important;
  font-size:14px !important;
}

.hsba-v100-appointment summary span,
.hsba-v100-person summary span{
  color:#7c8e9b !important;
  font-size:12px !important;
}

.hsba-v100-appointment summary>i,
.hsba-v100-person summary>i{
  color:#8495a0 !important;
  font-style:normal !important;
  transition:transform .2s !important;
}

.hsba-v100-appointment[open] summary>i,
.hsba-v100-person[open] summary>i{
  transform:rotate(180deg) !important;
}

.hsba-v100-datebox{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  display:grid !important;
  place-items:center !important;
  align-content:center !important;
  border-radius:9px !important;
  background:#edf4ff !important;
}

.hsba-v100-datebox strong{
  color:var(--blue) !important;
  font-size:15px !important;
}

.hsba-v100-datebox span{
  color:#6e8bbb !important;
  font-size:11.5px !important;
  text-transform:uppercase !important;
}

.hsba-v100-person-avatar{
  width:40px !important;
  height:40px !important;
  flex:0 0 40px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  background:var(--navy) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
}

.hsba-v100-appointment-body,
.hsba-v100-person-body{
  padding:5px 0 15px 55px !important;
  color:#526a7a !important;
  font-size:14px !important;
}

.hsba-v100-participant-mini{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  margin:10px 0 !important;
}

.hsba-v100-participant-mini span{
  color:#647987 !important;
  font-size:13px !important;
}

/* ---------------- Existing schedule restyled ---------------- */

.hsba-workspace-pane .hsba-mobile-schedule{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}

.hsba-workspace-pane .hsba-mobile-task.hsba-accordion{
  border:1px solid #dfe6eb !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:none !important;
}

.hsba-workspace-pane .hsba-mobile-task>summary{
  padding:13px !important;
}

.hsba-workspace-pane .hsba-task-title{
  color:var(--ink) !important;
  font-size:14px !important;
}

.hsba-workspace-pane .hsba-task-main small{
  color:#7a8d9a !important;
  font-size:12px !important;
}

.hsba-workspace-pane .hsba-task-date strong{
  color:var(--ink) !important;
  font-size:14px !important;
}

.hsba-workspace-pane .hsba-task-progress{
  height:6px !important;
}

/* ---------------- Manager console inside workspace ---------------- */

.hsba-workspace-pane[data-workspace-pane="manage"] .hsba-manager-console{
  margin:0 !important;
  box-shadow:none !important;
}

.hsba-workspace-pane[data-workspace-pane="manage"]{
  max-width:1550px !important;
}

/* Messages */
.hsba-portal-project-mode>.hsba-v100-shell .hsba-portal-message{
  margin:16px clamp(20px,2.8vw,40px) 0 !important;
}

/* ---------------------------------------------------------
   Mobile / Tablet
--------------------------------------------------------- */

@media(max-width:1100px){
  .hsba-v100-shell{
    grid-template-columns:205px minmax(0,1fr) !important;
  }

  .hsba-v100-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .hsba-v100-overview-grid{
    grid-template-columns:1fr !important;
  }

  .hsba-v100-todo-create{
    grid-template-columns:1fr 1fr !important;
  }

  .hsba-v100-todo-create .todo-desc{
    grid-column:1/-1 !important;
  }
}

@media(max-width:820px){
  .hsba-v100-shell{
    display:block !important;
  }

  .hsba-v100-sidebar{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    width:min(300px,88vw) !important;
    height:100vh !important;
    height:100dvh !important;
    transform:translateX(-105%) !important;
    transition:transform .25s ease !important;
    box-shadow:25px 0 70px rgba(17,42,62,.20) !important;
    z-index:2000 !important;
  }

  .hsba-v100-shell.is-menu-open .hsba-v100-sidebar{
    transform:translateX(0) !important;
  }

  .hsba-v100-shell.is-menu-open:after{
    content:"" !important;
    position:fixed !important;
    inset:0 !important;
    z-index:1999 !important;
    background:rgba(10,28,43,.38) !important;
    backdrop-filter:blur(2px) !important;
  }

  .hsba-v100-mobile-menu{
    display:grid !important;
    place-items:center !important;
    width:40px !important;
    height:40px !important;
    border:1px solid #dce5eb !important;
    border-radius:9px !important;
    background:#fff !important;
    color:var(--ink) !important;
    -webkit-text-fill-color:var(--ink) !important;
    font-size:18px !important;
    box-shadow:none !important;
  }

  .hsba-v100-mobile-close{
    display:grid !important;
    position:absolute !important;
    right:12px !important;
    top:12px !important;
    width:32px !important;
    height:32px !important;
    place-items:center !important;
    border:0 !important;
    border-radius:8px !important;
    background:#f2f5f7 !important;
    color:var(--ink) !important;
    -webkit-text-fill-color:var(--ink) !important;
    font-size:18px !important;
  }

  .hsba-v100-topbar{
    justify-content:flex-start !important;
  }

  .hsba-v100-top-user{
    margin-left:auto !important;
  }

  .hsba-v100-switch{
    min-width:0 !important;
  }

  .hsba-v100-project-switch{
    min-width:0 !important;
    max-width:46vw !important;
  }

  .hsba-workspace-pane{
    padding:22px 16px !important;
  }

  .hsba-v100-todo-head{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
}

@media(max-width:560px){
  .hsba-v100-top-user>div{
    display:none !important;
  }

  .hsba-v100-project-switch{
    max-width:58vw !important;
    font-size:14px !important;
  }

  .hsba-v100-project-head{
    flex-direction:column !important;
  }

  .hsba-v100-progress{
    text-align:left !important;
  }

  .hsba-v100-kpis{
    grid-template-columns:1fr 1fr !important;
    gap:7px !important;
  }

  .hsba-portal .hsba-v100-kpis button{
    min-height:105px !important;
    padding:13px !important;
  }

  .hsba-v100-kpis button>strong{
    font-size:29px !important;
  }

  .hsba-v100-todo-create{
    grid-template-columns:1fr !important;
  }

  .hsba-v100-todo-create .todo-desc{
    grid-column:auto !important;
  }

  .hsba-v100-todo-item{
    grid-template-columns:30px minmax(0,1fr) !important;
  }

  .hsba-todo-actions{
    grid-column:2 !important;
    align-items:flex-start !important;
  }

  .hsba-v100-row{
    align-items:flex-start !important;
    flex-wrap:wrap !important;
  }

  .hsba-v100-row-badges{
    width:100% !important;
    justify-content:flex-start !important;
    padding-left:51px !important;
  }

  .hsba-doc-actions{
    width:100% !important;
    padding-left:51px !important;
    justify-content:flex-start !important;
  }

  .hsba-v100-form-grid{
    grid-template-columns:1fr !important;
  }

  .hsba-v100-form-grid .span-2{
    grid-column:auto !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.0.2 – DESKTOP READABILITY / TYPOGRAPHY
   Größere UI-Schriften für 1440–2560 px Desktop-Displays
========================================================= */

.hsba-portal.hsba-portal-project-mode{
  font-size:18px !important;
}

/* Sidebar etwas großzügiger */
.hsba-v100-shell{
  grid-template-columns:260px minmax(0,1fr) !important;
}

.hsba-v100-sidebar{
  padding:24px 16px 18px !important;
}

.hsba-v100-brand{
  gap:12px !important;
  padding:0 10px 23px !important;
}

.hsba-v100-brand>span{
  width:42px !important;
  height:42px !important;
  flex-basis:42px !important;
  font-size:15px !important;
}

.hsba-v100-brand strong{
  font-size:16px !important;
}

.hsba-v100-brand small{
  font-size:14px !important;
}

.hsba-v100-project-mini{
  margin:20px 5px 15px !important;
  padding:16px !important;
}

.hsba-v100-project-mini small{
  font-size:14px !important;
}

.hsba-v100-project-mini strong{
  font-size:17px !important;
  line-height:1.28 !important;
}

.hsba-v100-project-mini span{
  font-size:14px !important;
}

/* Sidebar Navigation */
.hsba-portal .hsba-v100-nav-item,
.hsba-portal button.hsba-v100-nav-item{
  min-height:48px !important;
  grid-template-columns:27px minmax(0,1fr) auto !important;
  gap:9px !important;
  padding:10px 10px !important;
  font-size:15px !important;
}

.hsba-v100-nav-item i{
  font-size:13px !important;
}

.hsba-v100-nav-item b{
  min-width:22px !important;
  height:22px !important;
  font-size:13px !important;
}

.hsba-portal .hsba-v100-sidebar-bottom a,
.hsba-portal .hsba-v100-sidebar-bottom a:visited{
  font-size:15px !important;
}

/* Topbar */
.hsba-v100-topbar{
  min-height:76px !important;
  padding-top:14px !important;
  padding-bottom:14px !important;
}

.hsba-v100-switch>span{
  font-size:13px !important;
}

.hsba-v100-project-switch{
  min-width:320px !important;
  font-size:16px !important;
}

.hsba-v100-avatar{
  width:42px !important;
  height:42px !important;
  font-size:14px !important;
}

.hsba-v100-top-user strong{
  font-size:15px !important;
}

.hsba-v100-top-user small{
  font-size:14px !important;
}

/* Hauptbereich */
.hsba-workspace-pane{
  padding:clamp(28px,3.2vw,48px) !important;
}

.hsba-v100-kicker,
.hsba-v100-page-title>span,
.hsba-v100-section-title>div>span,
.hsba-v100-minihead>div>span,
.hsba-v100-todo-head>div>span{
  font-size:14px !important;
}

.hsba-v100-project-head{
  margin-bottom:26px !important;
}

.hsba-v100-project-head h2{
  font-size:clamp(40px,3.4vw,58px) !important;
}

.hsba-v100-project-head p{
  font-size:16px !important;
}

.hsba-v100-progress strong{
  font-size:48px !important;
}

.hsba-v100-progress span{
  font-size:14px !important;
}

/* KPI-Karten */
.hsba-v100-kpis{
  gap:12px !important;
  margin-bottom:14px !important;
}

.hsba-portal .hsba-v100-kpis button{
  min-height:145px !important;
  padding:20px !important;
  border-radius:17px !important;
}

.hsba-v100-kpis button>span{
  font-size:14px !important;
}

.hsba-v100-kpis button>strong{
  margin:12px 0 6px !important;
  font-size:44px !important;
}

.hsba-v100-kpis button>small{
  font-size:14px !important;
}

/* Dashboard Cards */
.hsba-v100-dashboard-card{
  padding:21px !important;
}

.hsba-v100-list-card,
.hsba-v100-upload-card{
  padding:25px !important;
}

.hsba-v100-minihead h4,
.hsba-v100-section-title h4{
  font-size:18px !important;
}

.hsba-v100-section-title small{
  font-size:14px !important;
}

.hsba-portal .hsba-v100-text-action,
.hsba-portal button.hsba-v100-text-action{
  font-size:14px !important;
}

/* Bauzeit Preview */
.hsba-v100-gantt-row{
  grid-template-columns:110px minmax(0,1fr) 44px !important;
  gap:11px !important;
  margin:14px 0 !important;
}

.hsba-v100-gantt-row label,
.hsba-v100-gantt-row b{
  font-size:14px !important;
}

.hsba-v100-gantt-row>div{
  height:18px !important;
}

/* Aktivität */
.hsba-v100-activity-item{
  gap:12px !important;
  padding:12px 0 !important;
}

.hsba-v100-activity-item>i{
  width:32px !important;
  height:32px !important;
  flex-basis:32px !important;
  font-size:14px !important;
}

.hsba-v100-activity-item strong{
  font-size:15px !important;
}

.hsba-v100-activity-item span{
  font-size:14px !important;
}

/* Termine im Dashboard */
.hsba-v100-next-term{
  gap:12px !important;
  padding:12px 0 !important;
}

.hsba-v100-next-term>span{
  width:48px !important;
  height:42px !important;
  flex-basis:48px !important;
  font-size:14px !important;
}

.hsba-v100-next-term strong{
  font-size:15px !important;
}

.hsba-v100-next-term small{
  font-size:13px !important;
}

/* To-dos */
.hsba-v100-todo-head h3,
.hsba-v100-page-title h3{
  font-size:34px !important;
}

.hsba-v100-todo-head p,
.hsba-v100-page-title p{
  font-size:15px !important;
}

.hsba-v100-todo-counts span{
  font-size:14px !important;
}

.hsba-v100-todo-create label{
  font-size:14px !important;
}

.hsba-v100-todo-create input,
.hsba-v100-todo-create select,
.hsba-v100-todo-create textarea{
  min-height:46px !important;
  font-size:15px !important;
}

.hsba-todo-content>strong{
  font-size:15px !important;
}

.hsba-todo-content>p{
  font-size:14px !important;
}

.hsba-todo-meta span{
  font-size:13px !important;
}

.hsba-portal .hsba-todo-actions a,
.hsba-portal .hsba-todo-actions a:visited{
  font-size:14px !important;
}

.hsba-v100-empty-small{
  font-size:15px !important;
}

/* Dokumente / Aufgaben / Freigaben */
.hsba-v100-row{
  min-height:76px !important;
  gap:14px !important;
  padding:14px 0 !important;
}

.hsba-v100-file-icon{
  width:44px !important;
  height:44px !important;
  flex-basis:44px !important;
  font-size:13px !important;
}

.hsba-v100-row-main strong{
  font-size:15px !important;
}

.hsba-v100-row-main span{
  font-size:14px !important;
}

.hsba-v100-row-badges span{
  font-size:13px !important;
  padding:6px 8px !important;
}

.hsba-v100-task-dot{
  width:13px !important;
  height:13px !important;
  flex-basis:13px !important;
}

/* Formulare */
.hsba-v100-form label,
.hsba-v100-upload-card label{
  font-size:15px !important;
}

.hsba-v100-form input[type="text"],
.hsba-v100-form input[type="datetime-local"],
.hsba-v100-form input[type="file"],
.hsba-v100-form textarea,
.hsba-v100-form select{
  min-height:47px !important;
  font-size:15px !important;
}

/* Buttons */
.hsba-v100-primary,
.hsba-portal button.hsba-v100-primary,
.hsba-portal .hsba-primary-action.hsba-v100-primary{
  min-height:47px !important;
  padding:11px 17px !important;
  font-size:15px !important;
}

.hsba-portal .hsba-v100-secondary,
.hsba-portal a.hsba-v100-secondary,
.hsba-portal a.hsba-v100-secondary:visited,
.hsba-portal button.hsba-approve,
.hsba-portal .hsba-approve,
.hsba-portal button.hsba-reject,
.hsba-portal .hsba-reject{
  font-size:14px !important;
}

/* Termine Detail */
.hsba-v100-appointment summary strong,
.hsba-v100-person summary strong{
  font-size:15px !important;
}

.hsba-v100-appointment summary span,
.hsba-v100-person summary span{
  font-size:14px !important;
}

.hsba-v100-datebox{
  width:50px !important;
  height:50px !important;
  flex-basis:50px !important;
}

.hsba-v100-datebox strong{
  font-size:16px !important;
}

.hsba-v100-datebox span{
  font-size:13px !important;
}

.hsba-v100-person-avatar{
  width:46px !important;
  height:46px !important;
  flex-basis:46px !important;
  font-size:14px !important;
}

.hsba-v100-appointment-body,
.hsba-v100-person-body{
  padding-left:62px !important;
  font-size:15px !important;
}

.hsba-v100-participant-mini span{
  font-size:14px !important;
}

/* Bauzeit Detailkarten */
.hsba-workspace-pane .hsba-task-title{
  font-size:15px !important;
}

.hsba-workspace-pane .hsba-task-main small{
  font-size:14px !important;
}

.hsba-workspace-pane .hsba-task-date strong{
  font-size:15px !important;
}

/* Projektleiter-Konsole ebenfalls etwas größer */
.hsba-manager-kicker{
  font-size:14px !important;
}

.hsba-manager-head h3{
  font-size:30px !important;
}

.hsba-manager-head p{
  font-size:16px !important;
}

.hsba-manager-badge{
  font-size:14px !important;
}

.hsba-portal .hsba-manager-tab,
.hsba-portal button.hsba-manager-tab{
  min-height:42px !important;
  font-size:15px !important;
}

.hsba-manager-pane-head>div>span{
  font-size:14px !important;
}

.hsba-manager-pane-head h4{
  font-size:24px !important;
}

.hsba-manager-pane-head small{
  font-size:15px !important;
}

.hsba-manager-form label,
.hsba-manager-form label>span{
  font-size:15px !important;
}

.hsba-manager-form input[type="text"],
.hsba-manager-form input[type="email"],
.hsba-manager-form input[type="url"],
.hsba-manager-form input[type="date"],
.hsba-manager-form input[type="datetime-local"],
.hsba-manager-form input[type="number"],
.hsba-manager-form input[type="file"],
.hsba-manager-form input[type="color"],
.hsba-manager-form select,
.hsba-manager-form textarea{
  min-height:47px !important;
  font-size:15px !important;
}

.hsba-portal .hsba-manager-submit,
.hsba-portal button.hsba-manager-submit{
  min-height:47px !important;
  font-size:15px !important;
}

/* Große Desktop-Bildschirme */
@media(min-width:1600px){
  .hsba-v100-shell{
    grid-template-columns:280px minmax(0,1fr) !important;
  }

  .hsba-v100-sidebar{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .hsba-portal .hsba-v100-nav-item,
  .hsba-portal button.hsba-v100-nav-item{
    font-size:16px !important;
  }

  .hsba-v100-project-head h2{
    font-size:54px !important;
  }

  .hsba-v100-project-head p{
    font-size:17px !important;
  }

  .hsba-v100-kpis button>span{
    font-size:14px !important;
  }

  .hsba-v100-kpis button>small{
    font-size:14px !important;
  }

  .hsba-v100-minihead h4,
  .hsba-v100-section-title h4{
    font-size:19px !important;
  }

  .hsba-v100-gantt-row label,
  .hsba-v100-gantt-row b{
    font-size:15px !important;
  }

  .hsba-v100-activity-item strong,
  .hsba-v100-next-term strong{
    font-size:15px !important;
  }
}

/* Tablet/Mobil nicht unnötig aufblasen */
@media(max-width:1100px){
  .hsba-v100-shell{
    grid-template-columns:220px minmax(0,1fr) !important;
  }

  .hsba-portal .hsba-v100-nav-item,
  .hsba-portal button.hsba-v100-nav-item{
    font-size:15px !important;
  }
}

@media(max-width:820px){
  .hsba-v100-shell{
    display:block !important;
  }

  .hsba-v100-project-head h2{
    font-size:38px !important;
  }
}

@media(max-width:560px){
  .hsba-v100-project-head h2{
    font-size:32px !important;
  }

  .hsba-v100-kpis button>strong{
    font-size:34px !important;
  }

  .hsba-portal .hsba-v100-kpis button{
    min-height:116px !important;
  }
}


/* =========================================================
   v1.0.3 – aktuelle Bauphase in der Gantt-Vorschau
========================================================= */
.hsba-v100-gantt-row{
  grid-template-columns:minmax(170px,240px) minmax(0,1fr) 44px !important;
}

.hsba-v100-gantt-row label{
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

@media(max-width:1100px){
  .hsba-v100-gantt-row{
    grid-template-columns:minmax(135px,190px) minmax(0,1fr) 42px !important;
  }
}

@media(max-width:560px){
  .hsba-v100-gantt-row{
    grid-template-columns:minmax(110px,145px) minmax(0,1fr) 38px !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.0.4 – Klickbare Aktivitäten & Termine
========================================================= */

.hsba-portal button.hsba-v100-activity-item,
.hsba-portal button.hsba-v100-next-term{
  width:100% !important;
  margin:0 !important;
  border-width:0 0 1px 0 !important;
  border-style:solid !important;
  border-color:#edf1f4 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:inherit !important;
  -webkit-text-fill-color:inherit !important;
  text-align:left !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
  font:inherit !important;
}

.hsba-portal button.hsba-v100-activity-item:last-child,
.hsba-portal button.hsba-v100-next-term:last-child{
  border-bottom:0 !important;
}

.hsba-v100-activity-item.is-clickable,
.hsba-v100-next-term.is-clickable{
  position:relative !important;
  transition:
    background .18s ease,
    padding-left .18s ease !important;
}

.hsba-portal .hsba-v100-activity-item.is-clickable:hover,
.hsba-portal .hsba-v100-next-term.is-clickable:hover{
  background:#f7faff !important;
}

.hsba-v100-activity-item.is-clickable>b,
.hsba-v100-next-term.is-clickable>b{
  flex:0 0 auto !important;
  margin-left:auto !important;
  color:#91a2ad !important;
  -webkit-text-fill-color:#91a2ad !important;
  font-size:15px !important;
  font-weight:500 !important;
}

.hsba-portal .hsba-v100-activity-item.is-clickable:hover>b,
.hsba-portal .hsba-v100-next-term.is-clickable:hover>b{
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
}

/* Ziel nach dem Klick kurz visuell hervorheben */
.hsba-v100-row.is-targeted,
.hsba-v100-appointment.is-targeted,
.hsba-mobile-task.is-targeted{
  position:relative !important;
  border-color:#2f6fed !important;
  background:#f7faff !important;
  box-shadow:0 0 0 4px rgba(47,111,237,.10) !important;
  transition:
    background .25s ease,
    box-shadow .25s ease,
    border-color .25s ease !important;
}

/* Pfeil bei Terminen rechts sauber ausrichten */
.hsba-v100-next-term{
  display:flex !important;
  align-items:center !important;
}

/* Aktivität bleibt flex – nun inkl. Pfeil */
.hsba-v100-activity-item{
  width:100% !important;
}


/* =========================================================
   HS BAUAKTE v1.0.5 – Projektaufgaben abhaken & kommentieren
========================================================= */

.hsba-v105-task-create{
  margin-bottom:14px !important;
  padding:22px !important;
  border:1px solid #dfe6eb !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 9px 30px rgba(18,45,65,.035) !important;
}

.hsba-v105-task-create-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:11px !important;
  margin-bottom:13px !important;
}

.hsba-v105-task-create-grid .span-2{
  grid-column:1/-1 !important;
}

.hsba-v105-task-create label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  color:#5e7281 !important;
  font-size:15px !important;
  font-weight:750 !important;
}

.hsba-v105-task-create input,
.hsba-v105-task-create select,
.hsba-v105-task-create textarea{
  width:100% !important;
  min-height:47px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:10px 11px !important;
  border:1px solid #d4dee6 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#172a39 !important;
  -webkit-text-fill-color:#172a39 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  box-shadow:none !important;
  outline:none !important;
}

.hsba-v105-task-create textarea{
  min-height:92px !important;
  resize:vertical !important;
}

.hsba-v105-task-create input:focus,
.hsba-v105-task-create select:focus,
.hsba-v105-task-create textarea:focus{
  border-color:#2f6fed !important;
  box-shadow:0 0 0 3px rgba(47,111,237,.10) !important;
}

.hsba-v105-task-list{
  padding-bottom:10px !important;
}

.hsba-v105-task-card{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  gap:12px !important;
  padding:16px 0 !important;
  border-top:1px solid #e9eef2 !important;
  border-left:3px solid transparent !important;
  background:#fff !important;
  transition:
    background .2s ease,
    border-color .2s ease,
    opacity .2s ease !important;
}

.hsba-v105-task-card:first-of-type{
  border-top:0 !important;
}

.hsba-v105-task-card.priority-critical{
  border-left-color:#cc5c4d !important;
  padding-left:10px !important;
}

.hsba-v105-task-card.priority-high{
  border-left-color:#e59b42 !important;
  padding-left:10px !important;
}

.hsba-v105-task-card.priority-low{
  border-left-color:#72a57e !important;
  padding-left:10px !important;
}

.hsba-v105-task-card.is-completed{
  opacity:.70 !important;
  background:#fbfcfd !important;
}

.hsba-v105-task-card.is-completed .hsba-v105-task-title-row>strong{
  text-decoration:line-through !important;
  text-decoration-thickness:1px !important;
  color:#728391 !important;
}

.hsba-v105-task-check-form{
  margin:0 !important;
  padding-top:2px !important;
}

.hsba-portal button.hsba-v105-task-check{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  min-height:30px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:1.5px solid #c7d3dc !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#2d845d !important;
  -webkit-text-fill-color:#2d845d !important;
  font-size:16px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:none !important;
  cursor:pointer !important;
  text-transform:none !important;
}

.hsba-portal button.hsba-v105-task-check:hover{
  border-color:#2f6fed !important;
  background:#f3f7ff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
}

.hsba-v105-task-card.is-completed .hsba-v105-task-check{
  border-color:#a8d3b8 !important;
  background:#eaf7ef !important;
  color:#28704e !important;
  -webkit-text-fill-color:#28704e !important;
}

.hsba-v105-task-main{
  min-width:0 !important;
}

.hsba-v105-task-title-row{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
}

.hsba-v105-task-title-row>strong{
  color:#172a39 !important;
  font-size:16px !important;
  line-height:1.35 !important;
}

.hsba-v105-task-tags{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  gap:5px !important;
}

.hsba-v105-task-tags span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:25px !important;
  padding:4px 8px !important;
  border-radius:999px !important;
  background:#f2f5f7 !important;
  color:#667a89 !important;
  -webkit-text-fill-color:#667a89 !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.hsba-v105-task-tags .status-done,
.hsba-v105-task-tags .status-accepted{
  background:#edf8f2 !important;
  color:#327957 !important;
  -webkit-text-fill-color:#327957 !important;
}

.hsba-v105-task-tags .status-in_progress{
  background:#edf4ff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
}

.hsba-v105-task-tags .is-overdue{
  background:#fff0ec !important;
  color:#a84e42 !important;
  -webkit-text-fill-color:#a84e42 !important;
}

.hsba-v105-task-main>p{
  max-width:900px !important;
  margin:7px 0 0 !important;
  color:#657987 !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.hsba-v105-task-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px 14px !important;
  margin-top:10px !important;
  color:#7c8e9b !important;
  font-size:14px !important;
}

.hsba-v105-task-meta b{
  color:#526a7a !important;
  font-weight:800 !important;
}

/* Kommentarbereich */
.hsba-v105-task-comments{
  margin-top:12px !important;
  border:1px solid #e1e8ed !important;
  border-radius:10px !important;
  background:#f9fbfc !important;
  overflow:hidden !important;
}

.hsba-v105-task-comments>summary{
  list-style:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto auto !important;
  align-items:center !important;
  gap:8px !important;
  min-height:42px !important;
  padding:9px 11px !important;
  cursor:pointer !important;
  color:#415969 !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.hsba-v105-task-comments>summary::-webkit-details-marker{
  display:none !important;
}

.hsba-v105-task-comments>summary>b{
  min-width:22px !important;
  height:22px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  background:#e9eef3 !important;
  color:#607685 !important;
  font-size:13px !important;
}

.hsba-v105-task-comments>summary>i{
  color:#82939e !important;
  font-size:15px !important;
  font-style:normal !important;
  transition:transform .2s ease !important;
}

.hsba-v105-task-comments[open]>summary>i{
  transform:rotate(180deg) !important;
}

.hsba-v105-task-comments-body{
  padding:12px !important;
  border-top:1px solid #e1e8ed !important;
  background:#fff !important;
}

.hsba-v105-comment-thread{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  margin-bottom:12px !important;
}

.hsba-v105-comment{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:9px !important;
}

.hsba-v105-comment-avatar{
  width:34px !important;
  height:34px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:9px !important;
  background:#10263a !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
}

.hsba-v105-comment-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.hsba-v105-comment-head strong{
  color:#263c4d !important;
  font-size:14px !important;
}

.hsba-v105-comment-head span{
  color:#8998a3 !important;
  font-size:13px !important;
}

.hsba-v105-comment p{
  margin:4px 0 0 !important;
  color:#5f7382 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.hsba-v105-no-comments{
  margin-bottom:10px !important;
  color:#84949f !important;
  font-size:14px !important;
}

.hsba-v105-comment-form{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:end !important;
  gap:9px !important;
  margin:0 !important;
}

.hsba-v105-comment-form label{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  color:#5e7281 !important;
  font-size:14px !important;
  font-weight:750 !important;
}

.hsba-v105-comment-form textarea{
  width:100% !important;
  min-height:72px !important;
  box-sizing:border-box !important;
  padding:9px 10px !important;
  margin:0 !important;
  border:1px solid #d4dee6 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#172a39 !important;
  -webkit-text-fill-color:#172a39 !important;
  font-size:15px !important;
  line-height:1.45 !important;
  resize:vertical !important;
  box-shadow:none !important;
  outline:none !important;
}

.hsba-v105-comment-form textarea:focus{
  border-color:#2f6fed !important;
  box-shadow:0 0 0 3px rgba(47,111,237,.10) !important;
}

/* Target aus Aktivitätsfeed */
.hsba-v105-task-card.is-targeted{
  border-color:#2f6fed !important;
  background:#f7faff !important;
  box-shadow:0 0 0 4px rgba(47,111,237,.10) !important;
}

@media(max-width:760px){
  .hsba-v105-task-create-grid{
    grid-template-columns:1fr !important;
  }

  .hsba-v105-task-create-grid .span-2{
    grid-column:auto !important;
  }

  .hsba-v105-task-title-row{
    flex-direction:column !important;
  }

  .hsba-v105-task-tags{
    justify-content:flex-start !important;
  }

  .hsba-v105-comment-form{
    grid-template-columns:1fr !important;
  }

  .hsba-v105-comment-form .hsba-v100-primary{
    width:100% !important;
  }
}

@media(max-width:520px){
  .hsba-v105-task-card{
    grid-template-columns:34px minmax(0,1fr) !important;
  }

  .hsba-v105-task-meta{
    flex-direction:column !important;
    gap:4px !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.0.6 – Freigabe mit direktem Dateizugriff
========================================================= */

.hsba-v106-approval-intro{
  margin:6px 0 0 !important;
  max-width:720px !important;
  color:#738695 !important;
  font-size:15px !important;
  line-height:1.5 !important;
}

.hsba-v106-approval-card{
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:14px !important;
  padding:17px 0 !important;
  border-top:1px solid #e8edf1 !important;
}

.hsba-v106-approval-card:first-of-type{
  border-top:0 !important;
}

.hsba-v106-approval-icon{
  width:46px !important;
  height:46px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  background:#eaf2ff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
  font-size:13px !important;
  font-weight:900 !important;
}

.hsba-v106-approval-main{
  min-width:0 !important;
}

.hsba-v106-approval-title{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}

.hsba-v106-approval-title>strong{
  color:#172a39 !important;
  font-size:16px !important;
  line-height:1.35 !important;
}

.hsba-v106-version{
  display:inline-flex !important;
  align-items:center !important;
  min-height:23px !important;
  padding:3px 7px !important;
  border-radius:999px !important;
  background:#f0f4f7 !important;
  color:#5f7484 !important;
  -webkit-text-fill-color:#5f7484 !important;
  font-size:13px !important;
  font-weight:850 !important;
}

.hsba-v106-approval-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px 14px !important;
  margin-top:8px !important;
  color:#7b8d99 !important;
  font-size:14px !important;
}

.hsba-v106-approval-meta b{
  color:#536b7a !important;
  font-weight:800 !important;
}

.hsba-v106-approval-meta .is-missing{
  color:#ad5147 !important;
  -webkit-text-fill-color:#ad5147 !important;
}

.hsba-v106-review-note{
  display:flex !important;
  align-items:flex-start !important;
  gap:7px !important;
  margin-top:10px !important;
  color:#718491 !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

.hsba-v106-review-note>i{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:#edf8f2 !important;
  color:#347956 !important;
  font-size:12px !important;
  font-style:normal !important;
  font-weight:900 !important;
}

.hsba-v106-approval-actions{
  min-width:285px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:8px !important;
}

.hsba-portal a.hsba-v106-open-file,
.hsba-portal a.hsba-v106-open-file:visited{
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  padding:10px 13px !important;
  border:1px solid #10263a !important;
  border-radius:9px !important;
  background:#10263a !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:14px !important;
  font-weight:850 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

.hsba-portal a.hsba-v106-open-file:hover{
  border-color:#1c405e !important;
  background:#1c405e !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.hsba-v106-open-file>b{
  color:#9fb4c3 !important;
  -webkit-text-fill-color:#9fb4c3 !important;
  font-size:15px !important;
}

.hsba-v106-decision-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:7px !important;
}

.hsba-portal .hsba-v106-decision-actions .hsba-approve,
.hsba-portal .hsba-v106-decision-actions .hsba-reject{
  width:100% !important;
  min-height:42px !important;
  margin:0 !important;
}

.hsba-v106-file-missing{
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:10px 13px !important;
  border:1px solid #e2b8b3 !important;
  border-radius:9px !important;
  background:#fff4f2 !important;
  color:#a84e43 !important;
  -webkit-text-fill-color:#a84e43 !important;
  font-size:14px !important;
  font-weight:850 !important;
}

@media(max-width:900px){
  .hsba-v106-approval-card{
    grid-template-columns:46px minmax(0,1fr) !important;
  }

  .hsba-v106-approval-actions{
    grid-column:2 !important;
    min-width:0 !important;
    width:100% !important;
  }
}

@media(max-width:560px){
  .hsba-v106-approval-card{
    grid-template-columns:1fr !important;
  }

  .hsba-v106-approval-icon{
    display:none !important;
  }

  .hsba-v106-approval-actions{
    grid-column:auto !important;
  }

  .hsba-v106-decision-actions{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.1.0 – PWA / INSTALL / OFFLINE
========================================================= */

.hsba-v100-top-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin-left:auto !important;
}

.hsba-pwa-install[hidden]{
  display:none !important;
}

.hsba-portal .hsba-pwa-install,
.hsba-portal button.hsba-pwa-install{
  min-height:40px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:9px 13px !important;
  border:1px solid #d5e0e8 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#27465d !important;
  -webkit-text-fill-color:#27465d !important;
  font-size:14px !important;
  font-weight:850 !important;
  line-height:1 !important;
  text-decoration:none !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-portal .hsba-pwa-install:hover{
  border-color:#2f6fed !important;
  background:#f4f8ff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
}

.hsba-pwa-network{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  margin-bottom:6px !important;
  color:#6e8392 !important;
  font-size:14px !important;
  font-weight:750 !important;
}

.hsba-pwa-network>i{
  width:8px !important;
  height:8px !important;
  flex:0 0 8px !important;
  border-radius:50% !important;
  background:#54ba7b !important;
  box-shadow:0 0 0 4px rgba(84,186,123,.10) !important;
}

.hsba-pwa-network.is-offline>i{
  background:#d28a43 !important;
  box-shadow:0 0 0 4px rgba(210,138,67,.10) !important;
}

.hsba-pwa-network.is-offline>span{
  color:#a76b32 !important;
}

/* Offline-Datei: standardmäßig unsichtbar, bis SW erfolgreich läuft */
.hsba-pwa-offline-file{
  display:none !important;
}

.hsba-pwa-supported .hsba-portal .hsba-pwa-offline-file{
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  margin:0 !important;
  padding:7px 10px !important;
  border:1px solid #d4dee6 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#526b7a !important;
  -webkit-text-fill-color:#526b7a !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-pwa-supported .hsba-portal .hsba-pwa-offline-file:before{
  content:"↓" !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
  font-size:15px !important;
  font-weight:900 !important;
}

.hsba-pwa-supported .hsba-portal .hsba-pwa-offline-file:hover{
  border-color:#9fbaf3 !important;
  background:#f6f9ff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
}

.hsba-pwa-supported .hsba-portal .hsba-pwa-offline-file.is-cached{
  border-color:#b8d9c5 !important;
  background:#edf8f2 !important;
  color:#317653 !important;
  -webkit-text-fill-color:#317653 !important;
}

.hsba-pwa-supported .hsba-portal .hsba-pwa-offline-file.is-cached:before{
  content:"✓" !important;
  color:#317653 !important;
  -webkit-text-fill-color:#317653 !important;
}

.hsba-pwa-supported .hsba-portal .hsba-pwa-offline-file.is-loading{
  opacity:.55 !important;
  pointer-events:none !important;
}

/* Installationshilfe */
.hsba-pwa-guide{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:none !important;
  place-items:center !important;
  padding:22px !important;
}

.hsba-pwa-guide.is-open{
  display:grid !important;
}

.hsba-pwa-guide-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(10,29,44,.54) !important;
  backdrop-filter:blur(7px) !important;
}

.hsba-pwa-guide-card{
  position:relative !important;
  z-index:2 !important;
  width:min(500px,100%) !important;
  padding:30px !important;
  border:1px solid #d8e2e9 !important;
  border-radius:20px !important;
  background:#fff !important;
  color:#172a39 !important;
  box-shadow:0 35px 100px rgba(10,29,44,.24) !important;
}

.hsba-pwa-guide-close{
  position:absolute !important;
  top:12px !important;
  right:12px !important;
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  min-height:34px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:9px !important;
  background:#f1f4f6 !important;
  color:#526776 !important;
  -webkit-text-fill-color:#526776 !important;
  font-size:20px !important;
  font-weight:400 !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-pwa-guide-kicker{
  color:#2f6fed !important;
  font-size:13px !important;
  font-weight:900 !important;
  letter-spacing:.14em !important;
}

.hsba-pwa-guide-card h3{
  margin:7px 34px 10px 0 !important;
  color:#172a39 !important;
  font-size:27px !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
}

.hsba-pwa-guide-card>p{
  margin:0 !important;
  color:#687d8c !important;
  font-size:15px !important;
  line-height:1.6 !important;
}

.hsba-pwa-guide-card>small{
  display:block !important;
  margin-top:18px !important;
  color:#8797a2 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.hsba-pwa-guide-steps{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-top:18px !important;
}

.hsba-pwa-guide-steps>span{
  min-height:78px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:7px !important;
  padding:11px !important;
  border:1px solid #dce5eb !important;
  border-radius:11px !important;
  background:#f8fafc !important;
  color:#4e6575 !important;
  font-size:14px !important;
  line-height:1.35 !important;
}

.hsba-pwa-guide-steps b{
  width:24px !important;
  height:24px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:7px !important;
  background:#eaf1ff !important;
  color:#2f6fed !important;
  font-size:13px !important;
}

/* Toast */
.hsba-pwa-toast{
  position:fixed !important;
  left:50% !important;
  bottom:24px !important;
  z-index:1000000 !important;
  max-width:min(520px,calc(100vw - 30px)) !important;
  transform:translate(-50%,18px) !important;
  opacity:0 !important;
  pointer-events:none !important;
  padding:11px 15px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:11px !important;
  background:#10263a !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:14px !important;
  font-weight:750 !important;
  box-shadow:0 22px 60px rgba(10,29,44,.24) !important;
  transition:opacity .2s ease,transform .2s ease !important;
}

.hsba-pwa-toast.is-visible{
  transform:translate(-50%,0) !important;
  opacity:1 !important;
}

.hsba-pwa-toast.is-success{
  background:#1f6747 !important;
}

.hsba-pwa-toast.is-warning{
  background:#8b5a2d !important;
}

.hsba-pwa-toast.is-error{
  background:#8d423b !important;
}

@media(max-width:820px){
  .hsba-v100-top-actions{
    margin-left:auto !important;
  }

  .hsba-portal .hsba-pwa-install{
    min-height:38px !important;
    padding:8px 10px !important;
    font-size:14px !important;
  }
}

@media(max-width:560px){
  .hsba-v100-top-actions .hsba-pwa-install{
    display:none !important;
  }

  .hsba-pwa-guide-card{
    padding:25px 20px !important;
  }

  .hsba-pwa-guide-steps{
    grid-template-columns:1fr !important;
  }

  .hsba-pwa-guide-steps>span{
    min-height:0 !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
  }
}

/* Standalone: Browser-App erhält etwas mehr Safe-Area-Komfort */
@media(display-mode:standalone){
  .hsba-v100-topbar{
    padding-top:max(14px,env(safe-area-inset-top)) !important;
  }

  .hsba-v100-sidebar{
    padding-bottom:max(18px,env(safe-area-inset-bottom)) !important;
  }
}

.hsba-portal .hsba-pwa-install-sidebar{
  width:100% !important;
  margin:2px 0 7px !important;
}


/* =========================================================
   HS BAUAKTE v1.1.1 – Installationsbutton-Erkennung
========================================================= */

/* Wenn die Seite sicher als installierte PWA läuft: niemals zeigen. */
html.hsba-pwa-installed .hsba-pwa-install,
html.hsba-pwa-installed button.hsba-pwa-install{
  display:none !important;
  visibility:hidden !important;
}

/*
 * Mobil gehört „App installieren“ nicht in die enge Topbar.
 * Solange die App noch nicht installiert ist, bleibt die Aktion
 * im Hamburger-/Sidebar-Menü verfügbar.
 */
@media(max-width:820px){
  .hsba-v100-top-actions > .hsba-pwa-install{
    display:none !important;
  }

  .hsba-v100-sidebar .hsba-pwa-install-sidebar:not([hidden]){
    display:inline-flex !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.1.2 – MOBILE REAL-DEVICE FIX
   iPhone / schmale Android-Geräte
========================================================= */

/* Grundsätzlich darf im Projektportal kein langer Inhalt
   die mobile Arbeitsfläche horizontal aufziehen. */
.hsba-portal.hsba-portal-project-mode,
.hsba-v100-shell,
.hsba-v100-main,
.hsba-workspace-pane,
.hsba-v100-overview-grid,
.hsba-v100-dashboard-card,
.hsba-v100-list-card,
.hsba-v100-upload-card{
  max-width:100% !important;
  min-width:0 !important;
}

.hsba-portal.hsba-portal-project-mode{
  overflow-x:hidden !important;
}

/* Lange Bezeichnungen überall sicher umbrechen */
.hsba-v100-main strong,
.hsba-v100-main p,
.hsba-v100-main span,
.hsba-v100-main small,
.hsba-v100-main label,
.hsba-v100-main h2,
.hsba-v100-main h3,
.hsba-v100-main h4{
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}

/* ---------------------------------------------------------
   AKTIVITÄT
--------------------------------------------------------- */

.hsba-portal button.hsba-v100-activity-item,
.hsba-v100-activity-item{
  box-sizing:border-box !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:normal !important;
  overflow:hidden !important;
}

.hsba-v100-activity-item>div{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
}

.hsba-v100-activity-item strong,
.hsba-v100-activity-item span{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}

.hsba-v100-activity-item.is-clickable>b{
  align-self:center !important;
}

/* ---------------------------------------------------------
   TO-DOS
--------------------------------------------------------- */

.hsba-v100-todo-item,
.hsba-todo-content,
.hsba-todo-content>strong,
.hsba-todo-content>p{
  min-width:0 !important;
  max-width:100% !important;
}

.hsba-todo-content>strong,
.hsba-todo-content>p{
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

.hsba-v100-todo-list.is-compact .hsba-v100-todo-item{
  overflow:hidden !important;
}

/* ---------------------------------------------------------
   TERMINE / DATEIEN / AUFGABEN
--------------------------------------------------------- */

.hsba-v100-next-term,
.hsba-v100-next-term>div,
.hsba-v100-row-main,
.hsba-v105-task-main,
.hsba-v105-task-title-row{
  min-width:0 !important;
  max-width:100% !important;
}

.hsba-v100-next-term strong,
.hsba-v100-next-term small,
.hsba-v100-row-main strong,
.hsba-v100-row-main span,
.hsba-v105-task-title-row>strong,
.hsba-v105-task-main>p{
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

/* ---------------------------------------------------------
   MOBILE: 820px
--------------------------------------------------------- */

@media(max-width:820px){

  /*
   * Elementor/Theme kann Buttons ein white-space:nowrap geben.
   * Für alle inhaltlichen Portal-Zeilen mobil explizit aufheben.
   */
  .hsba-portal button,
  .hsba-portal a{
    max-width:100% !important;
  }

  .hsba-v100-activity-item{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) 18px !important;
    align-items:start !important;
    column-gap:12px !important;
    width:100% !important;
    padding:13px 0 !important;
  }

  .hsba-v100-activity-item>i{
    width:38px !important;
    height:38px !important;
    flex:none !important;
  }

  .hsba-v100-activity-item>div{
    width:100% !important;
  }

  .hsba-v100-activity-item strong{
    font-size:15px !important;
    line-height:1.35 !important;
  }

  .hsba-v100-activity-item span{
    margin-top:3px !important;
    font-size:14px !important;
    line-height:1.35 !important;
  }

  .hsba-v100-activity-item.is-clickable>b{
    margin:0 !important;
    padding-top:7px !important;
    font-size:15px !important;
  }

  /* Dashboard Karten etwas weniger Innenabstand */
  .hsba-v100-dashboard-card{
    padding:18px !important;
  }

  /* kompakte To-dos */
  .hsba-v100-todo-list.is-compact .hsba-v100-todo-item{
    grid-template-columns:34px minmax(0,1fr) !important;
    gap:10px !important;
    padding:12px 0 !important;
  }

  .hsba-v100-todo-list.is-compact .hsba-todo-content>strong{
    font-size:15px !important;
    line-height:1.35 !important;
  }

  .hsba-v100-todo-list.is-compact .hsba-todo-content>p{
    font-size:14px !important;
    line-height:1.45 !important;
  }
}

/* ---------------------------------------------------------
   iPHONE / SEHR SCHMAL: 560px
--------------------------------------------------------- */

@media(max-width:560px){

  .hsba-workspace-pane{
    padding:18px 12px !important;
  }

  .hsba-v100-project-head{
    margin-bottom:20px !important;
  }

  .hsba-v100-project-head h2{
    font-size:clamp(30px,10vw,40px) !important;
    line-height:1.02 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .hsba-v100-project-head p{
    font-size:15px !important;
    line-height:1.4 !important;
  }

  .hsba-v100-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }

  .hsba-portal .hsba-v100-kpis button{
    min-width:0 !important;
    min-height:118px !important;
    padding:14px !important;
  }

  .hsba-v100-kpis button>span{
    font-size:13px !important;
    line-height:1.25 !important;
  }

  .hsba-v100-kpis button>strong{
    font-size:36px !important;
  }

  .hsba-v100-kpis button>small{
    font-size:14px !important;
  }

  /* Gantt: Name bekommt mehr Platz und darf zweizeilig werden */
  .hsba-v100-gantt-row{
    grid-template-columns:minmax(0,1.45fr) minmax(90px,1fr) 42px !important;
    gap:9px !important;
    align-items:center !important;
  }

  .hsba-v100-gantt-row label{
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    font-size:14px !important;
    line-height:1.25 !important;
  }

  .hsba-v100-gantt-row b{
    font-size:14px !important;
    text-align:right !important;
  }

  /* Aktivitätskarte exakt innerhalb des Containers */
  .hsba-v100-activity-item{
    grid-template-columns:42px minmax(0,1fr) 14px !important;
    column-gap:10px !important;
  }

  .hsba-v100-activity-item strong{
    font-size:15px !important;
    line-height:1.3 !important;
  }

  .hsba-v100-activity-item span{
    font-size:13px !important;
  }

  /* To-do Headline / Link nicht gegeneinander drücken */
  .hsba-v100-minihead{
    gap:10px !important;
  }

  .hsba-v100-minihead h4{
    font-size:17px !important;
    line-height:1.25 !important;
  }

  .hsba-portal .hsba-v100-text-action{
    flex:0 0 auto !important;
    font-size:14px !important;
    white-space:nowrap !important;
  }

  /* Termine */
  .hsba-v100-next-term{
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) 14px !important;
    gap:10px !important;
    width:100% !important;
  }

  .hsba-v100-next-term>b{
    margin:0 !important;
    align-self:center !important;
  }
}

/* ---------------------------------------------------------
   SEHR KLEIN: 390px
--------------------------------------------------------- */

@media(max-width:390px){
  .hsba-workspace-pane{
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .hsba-v100-dashboard-card{
    padding:15px !important;
  }

  .hsba-v100-kpis{
    gap:6px !important;
  }

  .hsba-portal .hsba-v100-kpis button{
    padding:12px !important;
  }

  .hsba-v100-gantt-row{
    grid-template-columns:minmax(0,1.35fr) minmax(78px,.9fr) 38px !important;
  }
}


/* =========================================================
   HS BAUAKTE v1.1.3 – MOBILE HEADER REBUILD
========================================================= */

@media(max-width:820px){

  .hsba-v100-topbar{
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) 44px !important;
    align-items:center !important;
    gap:10px !important;
    min-height:70px !important;
    padding:10px 12px !important;
    overflow:hidden !important;
  }

  .hsba-v100-mobile-menu{
    grid-column:1 !important;
    grid-row:1 !important;
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .hsba-v100-switch{
    grid-column:2 !important;
    grid-row:1 !important;
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .hsba-v100-switch>span{
    display:block !important;
    margin:0 0 3px !important;
    font-size:12px !important;
    line-height:1 !important;
    letter-spacing:.12em !important;
    white-space:nowrap !important;
  }

  .hsba-v100-project-switch{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:30px !important;
    margin:0 !important;
    padding:0 26px 0 0 !important;
    border:0 !important;
    background-color:transparent !important;
    color:#172a39 !important;
    -webkit-text-fill-color:#172a39 !important;
    font-size:15px !important;
    line-height:30px !important;
    font-weight:850 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    box-shadow:none !important;
  }

  .hsba-v100-top-actions{
    grid-column:3 !important;
    grid-row:1 !important;
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    overflow:visible !important;
  }

  .hsba-v100-top-actions>.hsba-pwa-install{
    display:none !important;
  }

  .hsba-v100-top-user{
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    margin:0 !important;
    gap:0 !important;
    display:block !important;
  }

  .hsba-v100-avatar{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    margin:0 !important;
    font-size:14px !important;
  }

  .hsba-v100-top-user>div{
    display:none !important;
  }
}

/* iPhone portrait */
@media(max-width:560px){

  .hsba-v100-topbar{
    grid-template-columns:42px minmax(0,1fr) 42px !important;
    gap:8px !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .hsba-v100-top-actions,
  .hsba-v100-top-user,
  .hsba-v100-avatar{
    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;
  }

  .hsba-v100-avatar{
    height:42px !important;
    min-height:42px !important;
  }

  .hsba-v100-project-switch{
    font-size:15px !important;
    padding-right:22px !important;
  }
}

/* sehr kleine Geräte */
@media(max-width:390px){

  .hsba-v100-topbar{
    grid-template-columns:40px minmax(0,1fr) 40px !important;
    gap:7px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }

  .hsba-v100-mobile-menu,
  .hsba-v100-top-actions,
  .hsba-v100-top-user,
  .hsba-v100-avatar{
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
  }

  .hsba-v100-mobile-menu,
  .hsba-v100-avatar{
    height:40px !important;
    min-height:40px !important;
  }

  .hsba-v100-project-switch{
    font-size:14px !important;
  }
}

/* =========================================================
   HS BAUAKTE v1.1.4 – ZUGEWIESENE TO-DOS + ERLEDIGUNGSKOMMENTAR
========================================================= */

.hsba-v114-assign-card,
.hsba-v114-sent-todos{
  margin-bottom:14px !important;
  padding:22px !important;
  border:1px solid #dfe6eb !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 9px 30px rgba(18,45,65,.035) !important;
}

.hsba-v114-assign-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:11px !important;
  align-items:end !important;
}

.hsba-v114-assign-grid .span-2{
  grid-column:span 2 !important;
}

.hsba-v114-assign-grid label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  min-width:0 !important;
  color:#5e7281 !important;
  font-size:15px !important;
  font-weight:750 !important;
}

.hsba-v114-assign-grid input,
.hsba-v114-assign-grid select,
.hsba-v114-assign-grid textarea{
  width:100% !important;
  min-width:0 !important;
  min-height:47px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:10px 11px !important;
  border:1px solid #d4dee6 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#172a39 !important;
  -webkit-text-fill-color:#172a39 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  box-shadow:none !important;
  outline:none !important;
}

.hsba-v114-assign-grid textarea{
  min-height:92px !important;
  resize:vertical !important;
}

.hsba-v114-assign-grid input:focus,
.hsba-v114-assign-grid select:focus,
.hsba-v114-assign-grid textarea:focus{
  border-color:#2f6fed !important;
  box-shadow:0 0 0 3px rgba(47,111,237,.10) !important;
}

.hsba-v114-assign-grid button[disabled]{
  opacity:.45 !important;
  pointer-events:none !important;
}

.hsba-v114-form-note{
  margin:10px 0 0 !important;
  color:#8b6b4f !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.hsba-v114-todo-title-line{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  min-width:0 !important;
}

.hsba-v114-todo-title-line>strong{
  min-width:0 !important;
  color:#172a39 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere !important;
}

.hsba-v114-assigned-badge{
  display:inline-flex !important;
  align-items:center !important;
  min-height:22px !important;
  padding:3px 7px !important;
  border-radius:999px !important;
  background:#eaf1ff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
  font-size:12px !important;
  font-weight:850 !important;
  letter-spacing:.03em !important;
}

.hsba-v100-todo-item.is-assigned{
  border-left-color:#2f6fed !important;
}

.hsba-portal button.hsba-v114-complete-toggle,
.hsba-portal button.hsba-v114-open-todo{
  width:25px !important;
  height:25px !important;
  min-width:25px !important;
  min-height:25px !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid #cad6df !important;
  border-radius:7px !important;
  background:#fff !important;
  color:#2f6fed !important;
  -webkit-text-fill-color:#2f6fed !important;
  font-size:14px !important;
  font-weight:900 !important;
  box-shadow:none !important;
  cursor:pointer !important;
  text-transform:none !important;
}

.hsba-portal button.hsba-v114-complete-toggle:hover,
.hsba-portal button.hsba-v114-open-todo:hover,
.hsba-portal button.hsba-v114-complete-toggle[aria-expanded="true"]{
  border-color:#2f6fed !important;
  background:#edf4ff !important;
}

.hsba-v114-complete-panel[hidden]{
  display:none !important;
}

.hsba-v114-complete-panel{
  margin-top:12px !important;
  padding:13px !important;
  border:1px solid #cddcf9 !important;
  border-radius:10px !important;
  background:#f7faff !important;
}

.hsba-v114-complete-panel form{
  margin:0 !important;
}

.hsba-v114-complete-panel label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  color:#4f6575 !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.hsba-v114-complete-panel textarea{
  width:100% !important;
  min-height:82px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:10px 11px !important;
  border:1px solid #cad7e2 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#172a39 !important;
  -webkit-text-fill-color:#172a39 !important;
  font-size:15px !important;
  line-height:1.5 !important;
  resize:vertical !important;
  outline:none !important;
  box-shadow:none !important;
}

.hsba-v114-complete-panel textarea:focus{
  border-color:#2f6fed !important;
  box-shadow:0 0 0 3px rgba(47,111,237,.10) !important;
}

.hsba-v114-complete-panel form>div{
  display:flex !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin-top:9px !important;
}

.hsba-portal button.hsba-v114-complete-cancel{
  min-height:43px !important;
  padding:9px 13px !important;
  margin:0 !important;
  border:1px solid #d5dfe6 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#657987 !important;
  -webkit-text-fill-color:#657987 !important;
  font-size:14px !important;
  font-weight:800 !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.hsba-v114-completion,
.hsba-v114-manager-completion{
  margin-top:11px !important;
  padding:11px 12px !important;
  border-radius:9px !important;
  background:#edf8f2 !important;
  border:1px solid #c9e4d3 !important;
}

.hsba-v114-completion>span,
.hsba-v114-manager-completion>b{
  display:block !important;
  color:#317653 !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
}

.hsba-v114-completion p,
.hsba-v114-manager-completion p{
  margin:5px 0 0 !important;
  color:#456959 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.hsba-v114-completion small,
.hsba-v114-manager-completion small{
  display:block !important;
  margin-top:5px !important;
  color:#749283 !important;
  font-size:13px !important;
}

.hsba-v114-sent-item{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:11px !important;
  padding:13px 0 !important;
  border-top:1px solid #e9eef2 !important;
}

.hsba-v114-sent-item:first-of-type{
  border-top:0 !important;
}

.hsba-v114-sent-status{
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:8px !important;
  background:#eaf1ff !important;
  color:#2f6fed !important;
  font-size:14px !important;
  font-weight:900 !important;
}

.hsba-v114-sent-item.is-done .hsba-v114-sent-status{
  background:#edf8f2 !important;
  color:#317653 !important;
}

.hsba-v114-sent-item>div:last-child{
  min-width:0 !important;
}

.hsba-v114-sent-item strong{
  display:block !important;
  color:#172a39 !important;
  font-size:15px !important;
  line-height:1.4 !important;
  overflow-wrap:anywhere !important;
}

.hsba-v114-sent-item>div>span{
  display:block !important;
  margin-top:3px !important;
  color:#7b8d99 !important;
  font-size:14px !important;
}

.hsba-v100-todo-item.is-targeted,
.hsba-v114-sent-item.is-targeted{
  background:#f7faff !important;
  box-shadow:0 0 0 4px rgba(47,111,237,.10) !important;
  border-color:#2f6fed !important;
}

@media(max-width:900px){
  .hsba-v114-assign-grid{
    grid-template-columns:1fr 1fr !important;
  }

  .hsba-v114-assign-grid .span-2{
    grid-column:1/-1 !important;
  }
}

@media(max-width:560px){
  .hsba-v114-assign-card,
  .hsba-v114-sent-todos{
    padding:16px !important;
  }

  .hsba-v114-assign-grid{
    grid-template-columns:1fr !important;
  }

  .hsba-v114-assign-grid .span-2{
    grid-column:auto !important;
  }

  .hsba-v114-assign-grid .hsba-v100-primary{
    width:100% !important;
  }

  .hsba-v114-complete-panel form>div{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .hsba-v114-complete-panel form>div>button{
    width:100% !important;
  }
}


/* =========================================================
   HS Bauakte v2.1 – White Label Frontend
========================================================= */
.hsba-v100-brand .hsba-brand-mark.has-logo{
  width:64px!important;
  height:38px!important;
  flex:0 0 64px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  border-radius:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
.hsba-v100-brand .hsba-brand-mark.has-logo img{
  display:block!important;
  max-width:100%!important;
  max-height:38px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
.hsba-login-brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:14px!important;
}
.hsba-login-brand .hsba-brand-mark{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  background:var(--navy)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  overflow:hidden!important;
}
.hsba-login-brand .hsba-brand-mark.has-logo{
  width:100px!important;
  background:transparent!important;
  border-radius:0!important;
}
.hsba-login-brand .hsba-brand-mark img{
  max-width:100%!important;
  max-height:44px!important;
  object-fit:contain!important;
}
.hsba-login-brand>div{display:flex!important;flex-direction:column!important;gap:3px!important}
.hsba-login-brand small{color:#7b8b97!important;font-size:14px!important}

.hsba-custom-footer{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-top:28px!important;
  padding:18px 0 6px!important;
  border-top:1px solid rgba(31,63,85,.12)!important;
  color:var(--gray)!important;
  font-size:14px!important;
  line-height:1.5!important;
}
.hsba-custom-footer>div,
.hsba-custom-footer nav{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
}
.hsba-custom-footer a,
.hsba-custom-footer a:visited{
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-decoration:none!important;
  font-weight:700!important;
}
.hsba-custom-footer a:hover{color:var(--blue)!important;-webkit-text-fill-color:var(--blue)!important}
.hsba-powered-by{opacity:.72!important}

html.hsba-pwa-disabled .hsba-pwa-install,
html.hsba-pwa-disabled .hsba-pwa-network{
  display:none!important;
}

@media(max-width:650px){
  .hsba-custom-footer{
    align-items:flex-start!important;
    flex-direction:column!important;
    padding-bottom:max(10px,env(safe-area-inset-bottom))!important;
  }
  .hsba-v100-brand .hsba-brand-mark.has-logo{
    width:58px!important;
    flex-basis:58px!important;
  }
}


.hsba-portal-head-brand{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.hsba-portal-head-brand .hsba-brand-mark{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
  overflow:hidden!important;
}
.hsba-portal-head-brand .hsba-brand-mark.has-logo{
  width:76px!important;
  flex-basis:76px!important;
  border-radius:0!important;
  background:transparent!important;
}
.hsba-portal-head-brand .hsba-brand-mark img{
  max-width:100%!important;
  max-height:34px!important;
  object-fit:contain!important;
}
.hsba-portal-head-brand>strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:14px!important;
  letter-spacing:.08em!important;
}


/* =========================================================
   HS Bauakte v2.2 – Benutzerprofil / Adressbuch-Sync
========================================================= */

.hsba-v220-profile-trigger{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.hsba-v220-profile-trigger:hover .hsba-v100-avatar{
  box-shadow:0 0 0 4px rgba(47,111,237,.12)!important;
}

.hsba-v220-profile-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-bottom:20px!important;
}
.hsba-v220-profile-head>div>span{
  color:var(--blue)!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.hsba-v220-profile-head h3{
  margin:6px 0 6px!important;
  color:var(--ink)!important;
  font-size:34px!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
}
.hsba-v220-profile-head p{
  max-width:720px!important;
  margin:0!important;
  color:var(--gray)!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.hsba-v220-profile-avatar{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:var(--navy)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
}

.hsba-v220-profile-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.6fr) minmax(270px,.7fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.hsba-v220-profile-card,
.hsba-v220-account-card{
  min-width:0!important;
}

.hsba-v220-profile-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.hsba-v220-profile-fields .span-2{grid-column:1/-1!important}
.hsba-v220-profile-fields label{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  min-width:0!important;
  color:#506575!important;
  font-size:14px!important;
  font-weight:800!important;
}
.hsba-v220-profile-fields input{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:9px 11px!important;
  border:1px solid #d6e0e7!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:15px!important;
  box-shadow:none!important;
}

.hsba-v220-profile-company{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  margin:16px 0!important;
  padding:13px 14px!important;
  border:1px solid #dae4eb!important;
  border-radius:11px!important;
  background:#f7fafc!important;
}
.hsba-v220-profile-company small{
  color:#8899a5!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.hsba-v220-profile-company strong{
  color:var(--ink)!important;
  font-size:15px!important;
}
.hsba-v220-profile-company span{
  color:var(--gray)!important;
  font-size:13px!important;
  line-height:1.45!important;
}
.hsba-v220-profile-company.is-warning{
  border-color:#ead8b8!important;
  background:#fffaf1!important;
}

.hsba-v220-email-settings{
  margin:22px 0 18px!important;
  padding-top:18px!important;
  border-top:1px solid #e6ecef!important;
}
.hsba-v220-switch{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin:0 0 12px!important;
  padding:12px!important;
  border:1px solid #dce5eb!important;
  border-radius:10px!important;
  background:#f8fafc!important;
}
.hsba-v220-switch input{
  width:auto!important;
  margin:3px 0 0!important;
}
.hsba-v220-switch span{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}
.hsba-v220-switch strong{
  color:var(--ink)!important;
  font-size:14px!important;
}
.hsba-v220-switch small{
  color:var(--gray)!important;
  font-size:13px!important;
}
.hsba-v220-email-types{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.hsba-v220-email-types label{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  padding:9px 10px!important;
  border:1px solid #e0e7ec!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#536a79!important;
  font-size:14px!important;
  font-weight:700!important;
}
.hsba-v220-email-types input{
  width:auto!important;
  min-width:auto!important;
  margin:0!important;
}

.hsba-v220-account-list{
  display:grid!important;
  gap:0!important;
  margin:0!important;
}
.hsba-v220-account-list>div{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  padding:11px 0!important;
  border-bottom:1px solid #edf1f4!important;
}
.hsba-v220-account-list dt{
  color:var(--gray)!important;
  font-size:13px!important;
}
.hsba-v220-account-list dd{
  margin:0!important;
  color:var(--ink)!important;
  font-size:14px!important;
  font-weight:800!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
}
.hsba-v220-account-note{
  margin:18px 0!important;
  padding:13px!important;
  border-radius:11px!important;
  background:#f4f8ff!important;
  border:1px solid #d9e6ff!important;
}
.hsba-v220-account-note strong{
  color:var(--blue)!important;
  font-size:14px!important;
}
.hsba-v220-account-note p{
  margin:5px 0 0!important;
  color:#607482!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.hsba-v220-test-mail{margin:0!important}
.hsba-v220-test-mail .hsba-v100-secondary{
  width:100%!important;
}
.hsba-v220-password-link{
  display:block!important;
  margin-top:12px!important;
  color:var(--blue)!important;
  -webkit-text-fill-color:var(--blue)!important;
  font-size:14px!important;
  font-weight:800!important;
  text-decoration:none!important;
}

@media(max-width:900px){
  .hsba-v220-profile-grid{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:560px){
  .hsba-v220-profile-head{
    align-items:flex-start!important;
  }
  .hsba-v220-profile-head h3{
    font-size:30px!important;
  }
  .hsba-v220-profile-avatar{
    width:48px!important;
    height:48px!important;
    flex-basis:48px!important;
  }
  .hsba-v220-profile-fields,
  .hsba-v220-email-types{
    grid-template-columns:1fr!important;
  }
  .hsba-v220-profile-fields .span-2{
    grid-column:auto!important;
  }
  .hsba-v220-profile-trigger{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }
}

@media(max-width:820px){
  .hsba-v220-profile-trigger{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
  }
}
@media(max-width:560px){
  .hsba-v220-profile-trigger{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }
}
@media(max-width:390px){
  .hsba-v220-profile-trigger{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.3 – BAUTAGEBUCH
========================================================= */

.hsba-v230-diary-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-bottom:20px!important;
}
.hsba-v230-diary-head>div>span{
  color:var(--blue)!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.hsba-v230-diary-head h3{
  margin:6px 0!important;
  color:var(--ink)!important;
  font-size:34px!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
.hsba-v230-diary-head p{
  max-width:800px!important;
  margin:0!important;
  color:var(--gray)!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.hsba-v230-diary-date{
  flex:0 0 auto!important;
  padding:10px 13px!important;
  border:1px solid #dce5eb!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:14px!important;
  font-weight:850!important;
}

.hsba-v230-diary-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.hsba-v230-diary-form-card,
.hsba-v230-diary-history{
  min-width:0!important;
}
.hsba-v230-diary-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
}
.hsba-v230-diary-fields .span-2{grid-column:1/-1!important}
.hsba-v230-diary-fields label,
.hsba-v230-protocol-form>label{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  min-width:0!important;
  color:#506575!important;
  font-size:14px!important;
  font-weight:800!important;
}
.hsba-v230-diary-fields input,
.hsba-v230-diary-fields select,
.hsba-v230-diary-fields textarea,
.hsba-v230-protocol-form textarea,
.hsba-v230-protocol-form select,
.hsba-v230-protocol-item-row input,
.hsba-v230-protocol-item-row select{
  width:100%!important;
  min-width:0!important;
  padding:9px 10px!important;
  border:1px solid #d6e0e7!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:14px!important;
  box-shadow:none!important;
}
.hsba-v230-diary-fields input,
.hsba-v230-diary-fields select{
  min-height:40px!important;
}
.hsba-v230-diary-fields textarea,
.hsba-v230-protocol-form textarea{
  resize:vertical!important;
  line-height:1.5!important;
}

.hsba-v230-transfer{
  margin:14px 0!important;
  border:1px solid #dfe7ec!important;
  border-radius:11px!important;
  background:#f8fafc!important;
  overflow:hidden!important;
}
.hsba-v230-transfer summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px 13px!important;
  cursor:pointer!important;
  list-style:none!important;
}
.hsba-v230-transfer summary::-webkit-details-marker{display:none!important}
.hsba-v230-transfer summary strong{
  color:var(--ink)!important;
  font-size:14px!important;
}
.hsba-v230-transfer summary span{
  color:var(--gray)!important;
  font-size:13px!important;
  text-align:right!important;
}
.hsba-v230-transfer-list{
  max-height:220px!important;
  overflow:auto!important;
  padding:0 13px 12px!important;
}
.hsba-v230-transfer-list label,
.hsba-v230-transfer-columns label{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  padding:7px 0!important;
  border-top:1px solid #edf1f4!important;
  color:#536b7a!important;
  font-size:13px!important;
  line-height:1.45!important;
}
.hsba-v230-transfer-list input,
.hsba-v230-transfer-columns input{
  flex:0 0 auto!important;
  width:auto!important;
  margin:2px 0 0!important;
}
.hsba-v230-transfer-columns{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  padding:0 13px 12px!important;
}
.hsba-v230-transfer-columns>div{
  min-width:0!important;
}
.hsba-v230-transfer-columns>div>b{
  display:block!important;
  margin-bottom:5px!important;
  color:var(--ink)!important;
  font-size:13px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.hsba-v230-transfer-columns small{
  color:#8798a4!important;
  font-size:12px!important;
}

.hsba-v230-diary-entry{
  border-top:1px solid #edf1f4!important;
}
.hsba-v230-diary-entry:first-of-type{
  border-top:0!important;
}
.hsba-v230-diary-entry>summary{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) 18px!important;
  gap:12px!important;
  align-items:center!important;
  padding:13px 0!important;
  cursor:pointer!important;
  list-style:none!important;
}
.hsba-v230-diary-entry>summary::-webkit-details-marker{display:none!important}
.hsba-v230-diary-day{
  width:50px!important;
  min-height:50px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:10px!important;
  background:#f0f5f9!important;
}
.hsba-v230-diary-day strong{
  color:var(--ink)!important;
  font-size:19px!important;
  line-height:1!important;
}
.hsba-v230-diary-day span{
  margin-top:3px!important;
  color:var(--gray)!important;
  font-size:11.5px!important;
  text-transform:uppercase!important;
}
.hsba-v230-diary-entry>summary>div:nth-child(2){
  min-width:0!important;
}
.hsba-v230-diary-entry>summary>div:nth-child(2)>strong{
  display:-webkit-box!important;
  max-width:100%!important;
  overflow:hidden!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  color:var(--ink)!important;
  font-size:14px!important;
  line-height:1.35!important;
}
.hsba-v230-diary-entry>summary>div:nth-child(2)>span{
  display:block!important;
  margin-top:4px!important;
  color:var(--gray)!important;
  font-size:12px!important;
}
.hsba-v230-diary-entry>summary>i{
  color:#8a9aa5!important;
  font-style:normal!important;
}
.hsba-v230-diary-entry-body{
  padding:0 0 16px 66px!important;
}
.hsba-v230-diary-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-bottom:12px!important;
}
.hsba-v230-diary-meta>span{
  min-width:120px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  padding:8px 10px!important;
  border:1px solid #e1e8ed!important;
  border-radius:9px!important;
  background:#fafcfd!important;
}
.hsba-v230-diary-meta small{
  color:#8a9aa5!important;
  font-size:11.5px!important;
  text-transform:uppercase!important;
}
.hsba-v230-diary-meta strong{
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v230-diary-text{
  margin:10px 0!important;
}
.hsba-v230-diary-text h5{
  margin:0 0 4px!important;
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v230-diary-text p{
  margin:0!important;
  color:#5f7280!important;
  font-size:14px!important;
  line-height:1.55!important;
}
.hsba-v230-diary-text.is-alert{
  padding:10px 12px!important;
  border:1px solid #efd6c2!important;
  border-radius:9px!important;
  background:#fff8f3!important;
}
.hsba-v230-linked-items{
  display:grid!important;
  gap:6px!important;
  margin:13px 0!important;
  padding-top:12px!important;
  border-top:1px solid #edf1f4!important;
}
.hsba-v230-linked-items>strong{
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v230-linked-items>span{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  gap:7px!important;
  align-items:center!important;
  color:#647887!important;
  font-size:12px!important;
}
.hsba-v230-linked-items i{
  width:20px!important;
  height:20px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:6px!important;
  background:#eaf1ff!important;
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-style:normal!important;
  font-weight:900!important;
}

/* =========================================================
   HS BAUAKTE v2.3 – BAUBESPRECHUNG / PROTOKOLL
========================================================= */

.hsba-v100-appointment.is-meeting{
  border-left:3px solid var(--blue)!important;
  padding-left:10px!important;
}
.hsba-v230-meeting-badge{
  display:inline-flex!important;
  align-items:center!important;
  margin-right:6px!important;
  padding:3px 6px!important;
  border-radius:999px!important;
  background:#eaf1ff!important;
  color:var(--blue)!important;
  -webkit-text-fill-color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}

.hsba-v230-protocol{
  margin-top:18px!important;
  padding:16px!important;
  border:1px solid #dbe5eb!important;
  border-radius:12px!important;
  background:#f9fbfc!important;
}
.hsba-v230-protocol-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:13px!important;
}
.hsba-v230-protocol-head>div>span{
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
}
.hsba-v230-protocol-head h5{
  margin:4px 0 0!important;
  color:var(--ink)!important;
  font-size:16px!important;
}
.hsba-v230-protocol-head>b{
  padding:5px 8px!important;
  border-radius:999px!important;
  font-size:11.5px!important;
  font-weight:850!important;
}
.hsba-v230-protocol-head>b.is-published{
  background:#eaf7ef!important;
  color:#25714c!important;
}
.hsba-v230-protocol-head>b.is-draft{
  background:#f2f4f6!important;
  color:#7b8993!important;
}
.hsba-v230-protocol-block{
  margin:10px 0!important;
  padding:11px 12px!important;
  border:1px solid #e2e9ed!important;
  border-radius:9px!important;
  background:#fff!important;
}
.hsba-v230-protocol-block.is-decision{
  border-color:#d8e5ff!important;
  background:#f5f8ff!important;
}
.hsba-v230-protocol-block>strong{
  display:block!important;
  margin-bottom:5px!important;
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v230-protocol-block>p{
  margin:0!important;
  color:#5c7180!important;
  font-size:14px!important;
  line-height:1.55!important;
}
.hsba-v230-protocol-actions{
  display:grid!important;
  gap:7px!important;
  margin:14px 0!important;
}
.hsba-v230-protocol-actions>strong{
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v230-protocol-action{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:4px 12px!important;
  padding:9px 10px!important;
  border:1px solid #e2e8ed!important;
  border-radius:9px!important;
  background:#fff!important;
}
.hsba-v230-protocol-action>span{
  color:var(--ink)!important;
  font-size:14px!important;
  font-weight:750!important;
}
.hsba-v230-protocol-action>small{
  grid-column:1!important;
  color:var(--gray)!important;
  font-size:12px!important;
}
.hsba-v230-protocol-action>i{
  grid-column:2!important;
  grid-row:1/3!important;
  align-self:center!important;
  color:#2f7b55!important;
  font-size:11.5px!important;
  font-style:normal!important;
  font-weight:850!important;
}
.hsba-v230-protocol-form{
  display:grid!important;
  gap:11px!important;
  margin-top:16px!important;
  padding-top:16px!important;
  border-top:1px solid #e1e8ed!important;
}
.hsba-v230-protocol-new-items{
  display:grid!important;
  gap:8px!important;
  margin-top:4px!important;
}
.hsba-v230-protocol-new-items>div:first-child{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}
.hsba-v230-protocol-new-items strong{
  color:var(--ink)!important;
  font-size:14px!important;
}
.hsba-v230-protocol-new-items small{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.45!important;
}
.hsba-v230-protocol-item-row{
  display:grid!important;
  grid-template-columns:minmax(150px,1.6fr) minmax(150px,1fr) 125px auto auto!important;
  gap:7px!important;
  align-items:center!important;
  padding:9px!important;
  border:1px solid #e0e7ec!important;
  border-radius:10px!important;
  background:#fff!important;
}
.hsba-v230-protocol-item-row .hsba-check{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  color:#5e7381!important;
  font-size:12px!important;
  font-weight:750!important;
}
.hsba-v230-protocol-item-row .hsba-check input{
  width:auto!important;
  min-width:auto!important;
  margin:0!important;
}
.hsba-v230-protocol-submit{
  display:flex!important;
  align-items:end!important;
  justify-content:flex-end!important;
  gap:10px!important;
}
.hsba-v230-protocol-submit>label{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  color:#5b7180!important;
  font-size:12px!important;
  font-weight:800!important;
}
.hsba-v230-protocol-submit select{
  min-width:150px!important;
  min-height:40px!important;
  border:1px solid #d6e0e7!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:14px!important;
}

/* Beteiligte → Mitschrift/Protokoll */
.hsba-v230-person-protocol{
  margin-top:16px!important;
  padding-top:14px!important;
  border-top:1px solid #e8edf0!important;
}
.hsba-v230-person-protocol>div:first-child{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  margin-bottom:8px!important;
}
.hsba-v230-person-protocol>div:first-child strong{
  color:var(--ink)!important;
  font-size:14px!important;
}
.hsba-v230-person-protocol>div:first-child span{
  color:var(--gray)!important;
  font-size:12px!important;
}
.hsba-v230-person-protocol>p{
  margin:0!important;
  color:var(--gray)!important;
  font-size:13px!important;
}
.hsba-v230-person-protocol>a{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:3px 10px!important;
  margin-top:6px!important;
  padding:9px 10px!important;
  border:1px solid #e1e8ed!important;
  border-radius:9px!important;
  background:#f9fbfc!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-decoration:none!important;
}
.hsba-v230-person-protocol>a>b{
  grid-column:1!important;
  font-size:13px!important;
}
.hsba-v230-person-protocol>a>span{
  grid-column:1!important;
  color:#607482!important;
  -webkit-text-fill-color:#607482!important;
  font-size:12px!important;
}
.hsba-v230-person-protocol>a>small{
  grid-column:2!important;
  grid-row:1/3!important;
  align-self:center!important;
  color:#83939e!important;
  -webkit-text-fill-color:#83939e!important;
  font-size:11.5px!important;
  text-align:right!important;
}

/* Mobile */
@media(max-width:1100px){
  .hsba-v230-diary-layout{
    grid-template-columns:1fr!important;
  }
  .hsba-v230-protocol-item-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 120px!important;
  }
  .hsba-v230-protocol-item-row .hsba-check{
    grid-column:auto!important;
  }
}
@media(max-width:700px){
  .hsba-v230-diary-head{
    align-items:flex-start!important;
  }
  .hsba-v230-diary-head h3{
    font-size:30px!important;
  }
  .hsba-v230-diary-fields,
  .hsba-v230-transfer-columns{
    grid-template-columns:1fr!important;
  }
  .hsba-v230-diary-fields .span-2{
    grid-column:auto!important;
  }
  .hsba-v230-diary-entry-body{
    padding-left:0!important;
  }
  .hsba-v230-protocol-item-row{
    grid-template-columns:1fr!important;
  }
  .hsba-v230-protocol-submit{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .hsba-v230-protocol-submit>label,
  .hsba-v230-protocol-submit select,
  .hsba-v230-protocol-submit .hsba-v100-primary{
    width:100%!important;
  }
  .hsba-v230-protocol-action{
    grid-template-columns:1fr!important;
  }
  .hsba-v230-protocol-action>i{
    grid-column:1!important;
    grid-row:auto!important;
  }
  .hsba-v230-person-protocol>a{
    grid-template-columns:1fr!important;
  }
  .hsba-v230-person-protocol>a>small{
    grid-column:1!important;
    grid-row:auto!important;
    text-align:left!important;
  }
}
@media(max-width:480px){
  .hsba-v230-diary-head{
    display:block!important;
  }
  .hsba-v230-diary-date{
    display:inline-flex!important;
    margin-top:10px!important;
  }
  .hsba-v230-diary-entry>summary{
    grid-template-columns:46px minmax(0,1fr) 14px!important;
    gap:9px!important;
  }
  .hsba-v230-diary-day{
    width:44px!important;
    min-height:46px!important;
  }
  .hsba-v230-protocol{
    padding:12px!important;
  }
}

.hsba-portal .hsba-v230-add-protocol-item{
  justify-self:start!important;
  min-height:34px!important;
  margin:2px 0 0!important;
  padding:7px 10px!important;
  border:1px dashed #b8c8d4!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--blue)!important;
  -webkit-text-fill-color:var(--blue)!important;
  font-size:12px!important;
  font-weight:850!important;
  text-transform:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
}


/* =========================================================
   HS Bauakte v2.3.1 – Kalenderexport
========================================================= */

.hsba-v231-calendar-actions{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
}

.hsba-portal .hsba-v231-calendar-toggle{
  min-height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:7px 10px!important;
  border:1px solid #d5e0e8!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#345469!important;
  -webkit-text-fill-color:#345469!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1!important;
  text-transform:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.hsba-portal .hsba-v231-calendar-toggle:hover,
.hsba-portal .hsba-v231-calendar-toggle[aria-expanded="true"]{
  border-color:#a9c1f2!important;
  background:#f4f8ff!important;
  color:var(--blue)!important;
  -webkit-text-fill-color:var(--blue)!important;
}

.hsba-v231-calendar-menu{
  position:absolute!important;
  z-index:999!important;
  top:calc(100% + 7px)!important;
  right:0!important;
  width:240px!important;
  padding:7px!important;
  border:1px solid #dce5eb!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(16,38,58,.16)!important;
}
.hsba-v231-calendar-menu[hidden]{
  display:none!important;
}
.hsba-v231-calendar-menu>a{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  width:100%!important;
  padding:10px!important;
  border-radius:8px!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-decoration:none!important;
}
.hsba-v231-calendar-menu>a:hover{
  background:#f4f8ff!important;
}
.hsba-v231-calendar-menu>a>strong{
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:14px!important;
}
.hsba-v231-calendar-menu>a>span{
  color:var(--gray)!important;
  -webkit-text-fill-color:var(--gray)!important;
  font-size:12px!important;
}

.hsba-v231-appointment-calendar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:14px 0!important;
  padding:11px 12px!important;
  border:1px solid #dce5eb!important;
  border-radius:10px!important;
  background:#f8fafc!important;
}
.hsba-v231-appointment-calendar>strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-todo-actions{
  align-items:center!important;
  flex-wrap:wrap!important;
}

@media(max-width:560px){
  .hsba-v231-appointment-calendar{
    align-items:stretch!important;
    flex-direction:column!important;
  }

  .hsba-v231-appointment-calendar .hsba-v231-calendar-actions,
  .hsba-v231-appointment-calendar .hsba-v231-calendar-toggle{
    width:100%!important;
  }

  .hsba-v231-calendar-menu{
    left:0!important;
    right:auto!important;
    width:min(280px,calc(100vw - 48px))!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.1 – BAUBESPRECHUNGEN / LIVE-PROTOKOLL
========================================================= */

.hsba-v241-meetings-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-bottom:20px!important;
}
.hsba-v241-meetings-head>div:first-child>span{
  color:var(--blue)!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.hsba-v241-meetings-head h3{
  margin:6px 0!important;
  color:var(--ink)!important;
  font-size:34px!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
.hsba-v241-meetings-head p{
  max-width:780px!important;
  margin:0!important;
  color:var(--gray)!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.hsba-v241-meetings-count{
  min-width:92px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:12px 14px!important;
  border:1px solid #dce5eb!important;
  border-radius:12px!important;
  background:#fff!important;
}
.hsba-v241-meetings-count strong{
  color:var(--ink)!important;
  font-size:25px!important;
  line-height:1!important;
}
.hsba-v241-meetings-count span{
  margin-top:4px!important;
  color:var(--gray)!important;
  font-size:12px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

.hsba-v241-meeting-create{
  margin-bottom:18px!important;
}
.hsba-v241-meeting-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
}
.hsba-v241-meeting-fields .span-2{
  grid-column:1/-1!important;
}
.hsba-v241-meeting-fields label{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  min-width:0!important;
  color:#526877!important;
  font-size:13px!important;
  font-weight:850!important;
}
.hsba-v241-meeting-fields input,
.hsba-v241-meeting-fields textarea,
.hsba-v241-meeting-fields select{
  width:100%!important;
  min-width:0!important;
  padding:9px 10px!important;
  border:1px solid #d6e0e7!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:14px!important;
  box-shadow:none!important;
}
.hsba-v241-meeting-fields input{
  min-height:40px!important;
}
.hsba-v241-meeting-fields textarea{
  resize:vertical!important;
  line-height:1.5!important;
}

.hsba-v241-participant-picker{
  margin:14px 0!important;
  padding:13px!important;
  border:1px solid #dfe7ec!important;
  border-radius:11px!important;
  background:#f8fafc!important;
}
.hsba-v241-participant-picker>strong{
  display:block!important;
  color:var(--ink)!important;
  font-size:14px!important;
}
.hsba-v241-participant-picker>span{
  display:block!important;
  margin-top:3px!important;
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.45!important;
}
.hsba-v241-participant-picker>div{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px!important;
  margin-top:10px!important;
}
.hsba-v241-participant-picker label{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  min-width:0!important;
  padding:9px 10px!important;
  border:1px solid #e1e8ed!important;
  border-radius:9px!important;
  background:#fff!important;
}
.hsba-v241-participant-picker input{
  width:auto!important;
  min-width:auto!important;
  margin:2px 0 0!important;
}
.hsba-v241-participant-picker label>span{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
.hsba-v241-participant-picker b{
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v241-participant-picker small{
  margin-top:2px!important;
  color:var(--gray)!important;
  font-size:11.5px!important;
  line-height:1.3!important;
}

.hsba-v241-create-items{
  margin-top:15px!important;
  padding:13px!important;
  border:1px solid #dce5eb!important;
  border-radius:11px!important;
  background:#fbfcfd!important;
}

.hsba-v241-meeting-submit{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:14px!important;
}
.hsba-v241-meeting-submit>label{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  color:#5b7180!important;
  font-size:12px!important;
  font-weight:850!important;
}
.hsba-v241-meeting-submit select{
  min-width:230px!important;
  min-height:40px!important;
  padding:8px 10px!important;
  border:1px solid #d6e0e7!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v241-meeting-card{
  border-top:1px solid #edf1f4!important;
}
.hsba-v241-meeting-card:first-of-type{
  border-top:0!important;
}
.hsba-v241-meeting-card>summary{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto 18px!important;
  gap:12px!important;
  align-items:center!important;
  padding:13px 0!important;
  list-style:none!important;
  cursor:pointer!important;
}
.hsba-v241-meeting-card>summary::-webkit-details-marker{
  display:none!important;
}
.hsba-v241-meeting-card>summary>div:nth-child(2){
  min-width:0!important;
}
.hsba-v241-meeting-card>summary>div:nth-child(2)>strong{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  color:var(--ink)!important;
  font-size:14px!important;
  line-height:1.35!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.hsba-v241-meeting-card>summary>div:nth-child(2)>span{
  display:block!important;
  margin-top:4px!important;
  color:var(--gray)!important;
  font-size:12px!important;
}
.hsba-v241-meeting-summary-state{
  padding:5px 8px!important;
  border-radius:999px!important;
  font-size:11.5px!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
.hsba-v241-meeting-summary-state.is-published{
  background:#eaf7ef!important;
  color:#287653!important;
}
.hsba-v241-meeting-summary-state.is-draft{
  background:#f1f3f5!important;
  color:#7d8b95!important;
}
.hsba-v241-meeting-card>summary>i{
  color:#8798a4!important;
  font-style:normal!important;
}
.hsba-v241-meeting-body{
  padding:0 0 16px 66px!important;
}
.hsba-v241-agenda{
  margin:10px 0!important;
  padding:11px 12px!important;
  border:1px solid #e2e9ed!important;
  border-radius:9px!important;
  background:#fff!important;
}
.hsba-v241-agenda strong{
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v241-agenda p{
  margin:5px 0 0!important;
  color:#607482!important;
  font-size:14px!important;
  line-height:1.55!important;
}

/* Live-To-do-Status im Protokoll */
.hsba-v241-protocol-todo-status{
  grid-column:1/-1!important;
  display:grid!important;
  gap:6px!important;
  margin-top:7px!important;
}
.hsba-v241-protocol-todo{
  display:grid!important;
  gap:4px!important;
  padding:9px 10px!important;
  border:1px solid #dfe7ec!important;
  border-radius:9px!important;
  background:#fff!important;
}
.hsba-v241-protocol-todo>div{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.hsba-v241-protocol-todo strong{
  color:var(--ink)!important;
  font-size:12px!important;
}
.hsba-v241-protocol-todo span{
  font-size:12px!important;
  font-weight:850!important;
}
.hsba-v241-protocol-todo p{
  margin:0!important;
  padding-top:6px!important;
  border-top:1px solid rgba(31,63,85,.08)!important;
  color:#506978!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.hsba-v241-protocol-todo.is-done{
  border-color:#cce5d7!important;
  background:#f3fbf6!important;
}
.hsba-v241-protocol-todo.is-done span{
  color:#26764f!important;
}
.hsba-v241-protocol-todo.is-open span{
  color:#a36a20!important;
}
.hsba-v241-protocol-todo.is-converted span{
  color:var(--blue)!important;
}
.hsba-v241-protocol-todo.is-planned{
  border-style:dashed!important;
  background:#f7f9fb!important;
}
.hsba-v241-protocol-todo.is-planned span{
  color:#7d8d98!important;
}

/* Terminbereich verweist nur noch auf den zentralen Protokollbereich */
.hsba-v241-meeting-linkbox{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:14px 0 2px!important;
  padding:12px!important;
  border:1px solid #d8e4ef!important;
  border-radius:10px!important;
  background:#f5f9ff!important;
}
.hsba-v241-meeting-linkbox>div{
  min-width:0!important;
}
.hsba-v241-meeting-linkbox strong{
  display:block!important;
  color:var(--ink)!important;
  font-size:13px!important;
}
.hsba-v241-meeting-linkbox span{
  display:block!important;
  margin-top:3px!important;
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.4!important;
}

/* Beteiligte: Hinweis aus erledigtem Protokoll-To-do */
.hsba-v230-person-protocol>a>em{
  grid-column:1/-1!important;
  margin-top:4px!important;
  padding:6px 8px!important;
  border-radius:7px!important;
  background:#f1f9f4!important;
  color:#3f6f56!important;
  -webkit-text-fill-color:#3f6f56!important;
  font-size:12px!important;
  font-style:normal!important;
  line-height:1.4!important;
}

@media(max-width:900px){
  .hsba-v241-meeting-fields,
  .hsba-v241-participant-picker>div{
    grid-template-columns:1fr!important;
  }
  .hsba-v241-meeting-fields .span-2{
    grid-column:auto!important;
  }
}
@media(max-width:700px){
  .hsba-v241-meetings-head{
    align-items:flex-start!important;
  }
  .hsba-v241-meetings-head h3{
    font-size:30px!important;
  }
  .hsba-v241-meetings-count{
    min-width:72px!important;
  }
  .hsba-v241-meeting-submit{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .hsba-v241-meeting-submit>label,
  .hsba-v241-meeting-submit select,
  .hsba-v241-meeting-submit .hsba-v100-primary{
    width:100%!important;
  }
  .hsba-v241-meeting-body{
    padding-left:0!important;
  }
  .hsba-v241-meeting-card>summary{
    grid-template-columns:48px minmax(0,1fr) 14px!important;
  }
  .hsba-v241-meeting-summary-state{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:2px!important;
  }
  .hsba-v241-meeting-card>summary>i{
    grid-column:3!important;
    grid-row:1/3!important;
  }
  .hsba-v241-meeting-linkbox{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .hsba-v241-meeting-linkbox .hsba-v100-primary{
    width:100%!important;
  }
}
@media(max-width:480px){
  .hsba-v241-meetings-head{
    display:block!important;
  }
  .hsba-v241-meetings-count{
    width:max-content!important;
    margin-top:10px!important;
  }
  .hsba-v241-meeting-card>summary{
    gap:8px!important;
  }
  .hsba-v241-protocol-todo>div{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:3px!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.2 – Baubesprechung UI/UX Feinschliff
   Fokus: größere Felder + deutlich erkennbare Protokollpunkte
========================================================= */

.hsba-v242-meeting-form{
  display:grid!important;
  gap:18px!important;
}

.hsba-v242-form-section{
  padding:20px!important;
  border:1px solid #dbe5ec!important;
  border-radius:14px!important;
  background:#fff!important;
}

.hsba-v242-form-section.is-protocol{
  border:2px solid #c9d9f8!important;
  background:#f8faff!important;
}

.hsba-v242-form-section-head{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:16px!important;
  padding-bottom:13px!important;
  border-bottom:1px solid #e7edf1!important;
}

.hsba-v242-form-section-head>span{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:var(--navy)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
}

.hsba-v242-form-section-head>div{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v242-form-section-head strong{
  color:var(--ink)!important;
  font-size:16px!important;
  line-height:1.2!important;
}

.hsba-v242-form-section-head small{
  color:var(--gray)!important;
  font-size:13px!important;
  line-height:1.4!important;
}

.hsba-v242-meeting-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}

.hsba-v242-meeting-fields .span-2{
  grid-column:1/-1!important;
}

.hsba-v242-meeting-fields label,
.hsba-v242-notes-grid label,
.hsba-v242-guest-row label,
.hsba-v242-point-card label{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  min-width:0!important;
  color:#425a6a!important;
  font-size:14px!important;
  font-weight:850!important;
}

.hsba-v242-meeting-fields input,
.hsba-v242-meeting-fields select,
.hsba-v242-meeting-fields textarea,
.hsba-v242-notes-grid textarea,
.hsba-v242-guest-row input,
.hsba-v242-point-card input[type="text"],
.hsba-v242-point-card input[type="date"],
.hsba-v242-point-card select,
.hsba-v242-point-card textarea{
  width:100%!important;
  min-width:0!important;
  border:1px solid #cbd8e2!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:15px!important;
  line-height:1.45!important;
  box-shadow:none!important;
}

.hsba-v242-meeting-fields input,
.hsba-v242-meeting-fields select,
.hsba-v242-guest-row input,
.hsba-v242-point-card input[type="text"],
.hsba-v242-point-card input[type="date"],
.hsba-v242-point-card select{
  min-height:50px!important;
  padding:11px 13px!important;
}

.hsba-v242-meeting-fields textarea{
  min-height:120px!important;
  padding:13px!important;
  resize:vertical!important;
}

.hsba-v242-notes-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}

.hsba-v242-notes-grid textarea{
  min-height:170px!important;
  padding:13px!important;
  resize:vertical!important;
}

/* Teilnehmer */
.hsba-v242-participant-tools{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:end!important;
  margin-bottom:12px!important;
}

.hsba-v242-participant-search{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  color:#425a6a!important;
  font-size:13px!important;
  font-weight:850!important;
}

.hsba-v242-participant-search input{
  width:100%!important;
  min-height:46px!important;
  padding:10px 12px!important;
  border:1px solid #cbd8e2!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v242-selected-count{
  min-width:86px!important;
  min-height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:8px 12px!important;
  border:1px solid #dbe4ea!important;
  border-radius:10px!important;
  background:#f7f9fb!important;
}

.hsba-v242-selected-count strong{
  color:var(--blue)!important;
  font-size:17px!important;
}

.hsba-v242-selected-count span{
  color:var(--gray)!important;
  font-size:12px!important;
  font-weight:800!important;
}

.hsba-v242-participant-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
}

.hsba-v242-participant-card{
  display:grid!important;
  grid-template-columns:auto 38px minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  min-height:64px!important;
  padding:10px 12px!important;
  border:1px solid #d9e3ea!important;
  border-radius:11px!important;
  background:#fff!important;
  cursor:pointer!important;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease!important;
}

.hsba-v242-participant-card:hover{
  border-color:#b9c9d7!important;
  box-shadow:0 6px 16px rgba(16,38,58,.05)!important;
}

.hsba-v242-participant-card.is-selected{
  border-color:#9bb7ef!important;
  background:#f5f8ff!important;
}

.hsba-v242-participant-card[hidden]{
  display:none!important;
}

.hsba-v242-participant-card>input{
  width:auto!important;
  margin:0!important;
}

.hsba-v242-participant-avatar{
  width:36px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:#eef3f7!important;
  color:var(--ink)!important;
  font-size:12px!important;
  font-weight:900!important;
}

.hsba-v242-participant-copy{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v242-participant-copy b{
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v242-participant-copy small{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.35!important;
}

.hsba-v242-participant-card>i{
  color:#81919c!important;
  font-size:11.5px!important;
  font-style:normal!important;
  font-weight:850!important;
  text-transform:uppercase!important;
}

/* Externe Teilnehmer */
.hsba-v242-guest-box{
  margin-top:14px!important;
  padding:14px!important;
  border:1px dashed #c3d1db!important;
  border-radius:11px!important;
  background:#fafcfd!important;
}

.hsba-v242-guest-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:10px!important;
}

.hsba-v242-guest-head>div{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}

.hsba-v242-guest-head strong{
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v242-guest-head span,
.hsba-v242-guest-box>p{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.hsba-portal .hsba-v242-add-guest{
  flex:0 0 auto!important;
  min-height:38px!important;
  padding:8px 11px!important;
  border:1px solid #c9d7e1!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--blue)!important;
  -webkit-text-fill-color:var(--blue)!important;
  font-size:12px!important;
  font-weight:850!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v242-guest-list{
  display:grid!important;
  gap:8px!important;
}

.hsba-v242-guest-row{
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr auto!important;
  gap:8px!important;
  align-items:end!important;
  padding:10px!important;
  border:1px solid #e1e8ed!important;
  border-radius:10px!important;
  background:#fff!important;
}

.hsba-portal .hsba-v242-remove-guest,
.hsba-portal .hsba-v242-remove-point{
  min-height:38px!important;
  padding:7px 9px!important;
  border:0!important;
  border-radius:8px!important;
  background:#f6f0f0!important;
  color:#935a5a!important;
  -webkit-text-fill-color:#935a5a!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

/* =========================================================
   Protokollpunkt-Builder – bewusst deutlich sichtbarer
========================================================= */

.hsba-v242-point-builder{
  display:grid!important;
  gap:13px!important;
}

.hsba-v242-point-builder-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}

.hsba-v242-point-builder-head>div{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v242-point-builder-head>div>span{
  color:var(--blue)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
}

.hsba-v242-point-builder-head h4{
  margin:0!important;
  color:var(--ink)!important;
  font-size:18px!important;
}

.hsba-v242-point-builder-head p{
  max-width:760px!important;
  margin:2px 0 0!important;
  color:var(--gray)!important;
  font-size:13px!important;
  line-height:1.45!important;
}

.hsba-portal .hsba-v242-add-point{
  min-height:42px!important;
  padding:9px 13px!important;
  border:1px solid var(--blue)!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--blue)!important;
  -webkit-text-fill-color:var(--blue)!important;
  font-size:13px!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v242-point-list{
  display:grid!important;
  gap:15px!important;
}

.hsba-v242-point-card{
  position:relative!important;
  display:grid!important;
  gap:13px!important;
  padding:18px!important;
  border:2px solid #d4dee6!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(16,38,58,.045)!important;
}

.hsba-v242-point-card::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:4px!important;
  border-radius:14px 0 0 14px!important;
  background:#c6d3dd!important;
}

.hsba-v242-point-card.has-person{
  border-color:#bfd0e1!important;
}

.hsba-v242-point-card.has-todo{
  border-color:#9db9ee!important;
  box-shadow:0 10px 28px rgba(47,111,237,.09)!important;
}

.hsba-v242-point-card.has-todo::before{
  background:var(--blue)!important;
}

.hsba-v242-point-card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding-bottom:10px!important;
  border-bottom:1px solid #e8edf1!important;
}

.hsba-v242-point-card-head>span{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  color:#81919c!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
}

.hsba-v242-point-card-head b{
  min-width:28px!important;
  height:25px!important;
  display:grid!important;
  place-items:center!important;
  padding:0 6px!important;
  border-radius:7px!important;
  background:var(--navy)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:13px!important;
}

.hsba-v242-point-title input{
  min-height:54px!important;
  font-size:16px!important;
  font-weight:800!important;
}

.hsba-v242-point-text textarea{
  min-height:128px!important;
  padding:13px!important;
  resize:vertical!important;
}

.hsba-v242-point-meta{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) minmax(180px,.5fr)!important;
  gap:10px!important;
}

.hsba-v242-point-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  padding-top:2px!important;
}

.hsba-v242-switch{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:9px!important;
  min-height:56px!important;
  padding:10px 11px!important;
  border:1px solid #dce5eb!important;
  border-radius:10px!important;
  background:#f8fafc!important;
}

.hsba-v242-switch>input{
  width:auto!important;
  min-width:auto!important;
  margin:3px 0 0!important;
}

.hsba-v242-switch>span{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v242-switch strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v242-switch small{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.35!important;
}

.hsba-v242-point-hint{
  margin:0!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  background:#fff8ec!important;
  color:#8a6831!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.hsba-v242-point-hint[hidden]{
  display:none!important;
}

/* =========================================================
   Darstellung gespeicherter Protokollpunkte
========================================================= */

.hsba-v242-protocol-points{
  display:grid!important;
  gap:11px!important;
  margin:16px 0!important;
}

.hsba-v242-protocol-points-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}

.hsba-v242-protocol-points-head>div{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}

.hsba-v242-protocol-points-head span{
  color:var(--blue)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
}

.hsba-v242-protocol-points-head strong{
  color:var(--gray)!important;
  font-size:12px!important;
}

.hsba-v242-protocol-point{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:13px!important;
  padding:15px!important;
  border:2px solid #d8e2e9!important;
  border-radius:13px!important;
  background:#fff!important;
}

.hsba-v242-protocol-point.is-done{
  border-color:#b9dcc8!important;
  background:#f7fcf9!important;
}

.hsba-v242-protocol-point-index{
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  background:var(--navy)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
}

.hsba-v242-protocol-point.is-done .hsba-v242-protocol-point-index{
  background:#327356!important;
}

.hsba-v242-protocol-point-main{
  min-width:0!important;
}

.hsba-v242-protocol-point-title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
}

.hsba-v242-protocol-point-title>strong{
  color:var(--ink)!important;
  font-size:15px!important;
  line-height:1.35!important;
}

.hsba-v242-protocol-point-title>span{
  flex:0 0 auto!important;
  padding:5px 7px!important;
  border-radius:999px!important;
  background:#e8f6ee!important;
  color:#286c4b!important;
  font-size:11.5px!important;
  font-weight:900!important;
}

.hsba-v242-protocol-point-title>span.is-open{
  background:#fff5e8!important;
  color:#9a6826!important;
}

.hsba-v242-protocol-point-main>p{
  margin:7px 0 0!important;
  color:#556c7b!important;
  font-size:14px!important;
  line-height:1.55!important;
}

.hsba-v242-protocol-point-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:10px!important;
}

.hsba-v242-protocol-point-meta>span{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  min-width:150px!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  background:#f7f9fb!important;
}

.hsba-v242-protocol-point-meta small{
  color:#8999a4!important;
  font-size:11.5px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}

.hsba-v242-protocol-point-meta strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v242-guest-summary{
  margin:12px 0!important;
  padding:11px!important;
  border:1px solid #e0e7ec!important;
  border-radius:10px!important;
  background:#fafcfd!important;
}

.hsba-v242-guest-summary>strong{
  display:block!important;
  margin-bottom:7px!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v242-guest-summary>div{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}

.hsba-v242-guest-summary span{
  display:flex!important;
  flex-direction:column!important;
  padding:6px 8px!important;
  border-radius:8px!important;
  background:#fff!important;
  border:1px solid #e5eaee!important;
}

.hsba-v242-guest-summary b{
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v242-guest-summary small{
  color:var(--gray)!important;
  font-size:11.5px!important;
}

.hsba-v242-edit-head{
  margin:20px 0 12px!important;
  padding-top:18px!important;
  border-top:1px solid #e2e9ed!important;
}

.hsba-v242-edit-head>div{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}

.hsba-v242-edit-head span{
  color:var(--blue)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
}

.hsba-v242-edit-head strong{
  color:var(--ink)!important;
  font-size:16px!important;
}

.hsba-v242-edit-head small{
  color:var(--gray)!important;
  font-size:13px!important;
}

.hsba-v242-free-notes{
  margin-top:14px!important;
  border:1px solid #dfe7ec!important;
  border-radius:10px!important;
  background:#fafcfd!important;
  overflow:hidden!important;
}

.hsba-v242-free-notes>summary{
  padding:12px 13px!important;
  color:var(--ink)!important;
  font-size:13px!important;
  font-weight:850!important;
  cursor:pointer!important;
}

.hsba-v242-free-notes>div{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  padding:0 13px 13px!important;
}

.hsba-v242-free-notes label{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  color:#506575!important;
  font-size:13px!important;
  font-weight:800!important;
}

.hsba-v242-free-notes textarea{
  width:100%!important;
  min-height:150px!important;
  padding:12px!important;
  border:1px solid #cbd8e2!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:14px!important;
  resize:vertical!important;
}

/* Footer */
.hsba-v242-form-footer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:12px!important;
  align-items:end!important;
  padding:15px 16px!important;
  border:1px solid #d6e2ed!important;
  border-radius:12px!important;
  background:#f6f9fd!important;
}

.hsba-v242-form-footer>div{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}

.hsba-v242-form-footer>div strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v242-form-footer>div span{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.hsba-v242-form-footer>label{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  color:#506575!important;
  font-size:12px!important;
  font-weight:800!important;
}

.hsba-v242-form-footer select{
  min-width:225px!important;
  min-height:42px!important;
  padding:8px 10px!important;
  border:1px solid #cbd8e2!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:14px!important;
}

/* Responsive */
@media(max-width:900px){
  .hsba-v242-participant-grid,
  .hsba-v242-meeting-fields,
  .hsba-v242-notes-grid,
  .hsba-v242-free-notes>div{
    grid-template-columns:1fr!important;
  }

  .hsba-v242-meeting-fields .span-2{
    grid-column:auto!important;
  }

  .hsba-v242-guest-row{
    grid-template-columns:1fr 1fr!important;
  }

  .hsba-v242-point-meta,
  .hsba-v242-point-actions{
    grid-template-columns:1fr!important;
  }

  .hsba-v242-form-footer{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }

  .hsba-v242-form-footer select,
  .hsba-v242-form-footer .hsba-v100-primary{
    width:100%!important;
  }
}

@media(max-width:600px){
  .hsba-v242-form-section{
    padding:14px!important;
  }

  .hsba-v242-form-section-head{
    align-items:flex-start!important;
  }

  .hsba-v242-participant-tools{
    grid-template-columns:1fr!important;
  }

  .hsba-v242-selected-count{
    width:max-content!important;
  }

  .hsba-v242-guest-head,
  .hsba-v242-point-builder-head{
    align-items:stretch!important;
    flex-direction:column!important;
  }

  .hsba-v242-guest-row{
    grid-template-columns:1fr!important;
  }

  .hsba-v242-point-card{
    padding:14px!important;
  }

  .hsba-v242-protocol-point{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:10px!important;
    padding:12px!important;
  }

  .hsba-v242-protocol-point-index{
    width:40px!important;
    height:40px!important;
    font-size:14px!important;
  }

  .hsba-v242-protocol-point-title{
    flex-direction:column!important;
    gap:7px!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.3 – Baubesprechung Lifecycle / Planung
========================================================= */

.hsba-v243-plan-editor{
  margin:14px 0!important;
  border:1px solid #d9e4eb!important;
  border-radius:12px!important;
  background:#fbfcfd!important;
  overflow:hidden!important;
}

.hsba-v243-plan-editor>summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:13px 14px!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v243-plan-editor>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v243-plan-editor>summary>div{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  min-width:0!important;
}

.hsba-v243-plan-editor>summary span{
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
}

.hsba-v243-plan-editor>summary strong{
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v243-plan-editor>summary small{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.hsba-v243-plan-editor>summary>b{
  flex:0 0 auto!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:#eef4ff!important;
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:900!important;
}

.hsba-v243-plan-form{
  display:grid!important;
  gap:15px!important;
  padding:0 14px 14px!important;
  border-top:1px solid #e7edf1!important;
}

.hsba-v243-plan-form>.hsba-v242-meeting-fields{
  padding-top:14px!important;
}

.hsba-v243-plan-participants{
  display:grid!important;
  gap:10px!important;
  padding-top:2px!important;
}

.hsba-v243-plan-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px 13px!important;
  border:1px solid #dce5eb!important;
  border-radius:10px!important;
  background:#f6f9fd!important;
}

.hsba-v243-plan-actions>div{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}

.hsba-v243-plan-actions strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v243-plan-actions span{
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.hsba-v243-delete-form,
.hsba-v243-delete-locked{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  margin:0 14px 14px!important;
  padding:12px 13px!important;
  border-radius:10px!important;
}

.hsba-v243-delete-form{
  border:1px solid #ecd2d2!important;
  background:#fff8f8!important;
}

.hsba-v243-delete-locked{
  border:1px solid #dce5eb!important;
  background:#f4f6f8!important;
}

.hsba-v243-delete-form>div,
.hsba-v243-delete-locked{
  min-width:0!important;
}

.hsba-v243-delete-form strong,
.hsba-v243-delete-locked strong{
  display:block!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v243-delete-form span,
.hsba-v243-delete-locked span{
  display:block!important;
  margin-top:3px!important;
  color:var(--gray)!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.hsba-portal .hsba-v243-delete-form button{
  min-height:38px!important;
  padding:8px 11px!important;
  border:1px solid #d8aaaa!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#a64f4f!important;
  -webkit-text-fill-color:#a64f4f!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-portal-message.is-error{
  border-color:#eccaca!important;
  background:#fff5f5!important;
  color:#8d4545!important;
}

@media(max-width:700px){
  .hsba-v243-plan-actions,
  .hsba-v243-delete-form,
  .hsba-v243-delete-locked{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }

  .hsba-v243-plan-actions .hsba-v100-primary,
  .hsba-v243-delete-form button{
    width:100%!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.5 – Meeting Löschen sichtbar
========================================================= */
.hsba-v245-meeting-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  margin:12px 0!important;
  padding:10px!important;
  border:1px solid #dfe7ec!important;
  border-radius:10px!important;
  background:#f8fafc!important;
}

.hsba-portal .hsba-v245-open-plan{
  min-height:38px!important;
  padding:8px 11px!important;
  border:1px solid #c9d7e1!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:12px!important;
  font-weight:850!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v245-delete-direct{
  margin:0!important;
}

.hsba-portal .hsba-v245-delete-direct button{
  min-height:38px!important;
  padding:8px 11px!important;
  border:1px solid #d9aaaa!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#a54e4e!important;
  -webkit-text-fill-color:#a54e4e!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v245-delete-lock{
  padding:7px 9px!important;
  border-radius:999px!important;
  background:#eef1f3!important;
  color:#7a8993!important;
  font-size:11.5px!important;
  font-weight:850!important;
}

@media(max-width:600px){
  .hsba-v245-meeting-actions{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .hsba-v245-meeting-actions>*,
  .hsba-v245-open-plan,
  .hsba-v245-delete-direct,
  .hsba-v245-delete-direct button{
    width:100%!important;
  }
  .hsba-v245-delete-lock{
    text-align:center!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.6 – Mehrfach-Verantwortliche
========================================================= */

.hsba-v246-responsible-field{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  min-width:0!important;
}

.hsba-v246-responsible-field>span{
  color:#425a6a!important;
  font-size:14px!important;
  font-weight:850!important;
}

.hsba-v246-multi-person{
  position:relative!important;
  min-width:0!important;
}

.hsba-portal .hsba-v246-multi-toggle{
  width:100%!important;
  min-height:50px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 16px!important;
  gap:9px!important;
  align-items:center!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid #cbd8e2!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-align:left!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v246-multi-toggle .hsba-v246-multi-label{
  min-width:0!important;
  overflow:hidden!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:14px!important;
  font-weight:700!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v246-multi-toggle>b{
  padding:5px 7px!important;
  border-radius:999px!important;
  background:#eef3f7!important;
  color:#5e7382!important;
  -webkit-text-fill-color:#5e7382!important;
  font-size:11.5px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

.hsba-v246-multi-toggle>i{
  color:#7c909f!important;
  -webkit-text-fill-color:#7c909f!important;
  font-size:14px!important;
  font-style:normal!important;
  transition:transform .15s ease!important;
}

.hsba-v246-multi-toggle[aria-expanded="true"]{
  border-color:#91afe9!important;
  box-shadow:0 0 0 3px rgba(47,111,237,.08)!important;
}

.hsba-v246-multi-toggle[aria-expanded="true"]>i{
  transform:rotate(180deg)!important;
}

.hsba-v246-multi-panel{
  position:absolute!important;
  z-index:1000!important;
  top:calc(100% + 6px)!important;
  left:0!important;
  right:0!important;
  max-height:310px!important;
  overflow:auto!important;
  padding:8px!important;
  border:1px solid #cbd8e2!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(16,38,58,.16)!important;
}

.hsba-v246-multi-panel[hidden]{
  display:none!important;
}

.hsba-v246-multi-options{
  display:grid!important;
  gap:5px!important;
}

.hsba-v246-person-option{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:9px!important;
  align-items:flex-start!important;
  padding:9px 10px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  background:#fff!important;
  cursor:pointer!important;
}

.hsba-v246-person-option:hover{
  border-color:#e0e8ee!important;
  background:#f8fafc!important;
}

.hsba-v246-person-option:has(input:checked){
  border-color:#b8cdf5!important;
  background:#f3f7ff!important;
}

.hsba-v246-person-option>input{
  width:auto!important;
  min-width:auto!important;
  margin:3px 0 0!important;
}

.hsba-v246-person-option>span{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  min-width:0!important;
}

.hsba-v246-person-option strong{
  color:var(--ink)!important;
  font-size:13px!important;
  line-height:1.35!important;
}

.hsba-v246-person-option small{
  color:var(--gray)!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}

.hsba-v246-multi-empty{
  margin-top:7px!important;
  padding:8px 9px!important;
  border-top:1px solid #e7edf1!important;
  color:#85949e!important;
  font-size:11.5px!important;
}

.hsba-v246-selected-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  margin-top:7px!important;
}

.hsba-v246-selected-chips:empty{
  display:none!important;
}

.hsba-v246-selected-chips>span{
  max-width:100%!important;
  padding:5px 7px!important;
  overflow:hidden!important;
  border:1px solid #d8e4f7!important;
  border-radius:999px!important;
  background:#f5f8ff!important;
  color:#3c5f9b!important;
  -webkit-text-fill-color:#3c5f9b!important;
  font-size:11.5px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v246-responsible-summary{
  min-width:240px!important;
}

.hsba-v246-responsible-summary>strong{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  margin-top:3px!important;
}

.hsba-v246-responsible-summary i{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 7px!important;
  border-radius:999px!important;
  background:#eef4ff!important;
  color:#365d9c!important;
  -webkit-text-fill-color:#365d9c!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:800!important;
}

@media(max-width:700px){
  .hsba-v246-multi-panel{
    position:fixed!important;
    z-index:100000!important;
    top:auto!important;
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
    max-height:min(65vh,520px)!important;
    border-radius:14px!important;
  }

  .hsba-v246-multi-toggle{
    grid-template-columns:minmax(0,1fr) auto 14px!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.7 – Eigenes To-do im Protokoll
========================================================= */
.hsba-v241-protocol-todo.is-mine{
  border-color:#a9c2ef!important;
  background:#f5f8ff!important;
  box-shadow:0 6px 18px rgba(47,111,237,.07)!important;
}

.hsba-v247-protocol-todo-line{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:10px!important;
  align-items:center!important;
}

.hsba-v241-protocol-todo.is-mine .hsba-v247-protocol-todo-line>strong{
  color:#244f95!important;
  font-weight:900!important;
}

.hsba-v247-todo-state{
  white-space:nowrap!important;
}

.hsba-v247-open-own-todo{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:7px 10px!important;
  border:1px solid var(--blue)!important;
  border-radius:8px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.hsba-v247-open-own-todo:hover{
  transform:translateY(-1px)!important;
  filter:brightness(.97)!important;
}

@media(max-width:700px){
  .hsba-v247-protocol-todo-line{
    grid-template-columns:1fr auto!important;
  }

  .hsba-v247-open-own-todo{
    grid-column:1/-1!important;
    width:100%!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.8 – PDF Export & revisionssicherer Nachweis
========================================================= */

.hsba-v248-diary-head-actions,
.hsba-v248-protocol-head-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}

.hsba-v248-pdf-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:8px 11px!important;
  border:1px solid #c8d7e2!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.hsba-v248-pdf-btn:hover{
  border-color:#9eb5c7!important;
  box-shadow:0 5px 14px rgba(16,38,58,.06)!important;
}

.hsba-v248-record-meta{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:14px!important;
}

.hsba-v248-record-meta>span{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:7px!important;
  align-items:center!important;
  padding:9px 10px!important;
  border:1px solid #dfe7ec!important;
  border-radius:9px!important;
  background:#f8fafc!important;
}

.hsba-v248-record-meta small{
  color:#84949f!important;
  font-size:11.5px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}

.hsba-v248-record-meta strong{
  min-width:0!important;
  overflow:hidden!important;
  color:var(--ink)!important;
  font-size:13px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v248-record-meta i{
  color:#6d7f8b!important;
  font-size:12px!important;
  font-style:normal!important;
  white-space:nowrap!important;
}

.hsba-v248-record-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:10px!important;
}

.hsba-v248-edit-record{
  margin-top:12px!important;
  border:1px solid #dfe7ec!important;
  border-radius:10px!important;
  background:#fbfcfd!important;
  overflow:hidden!important;
}

.hsba-v248-edit-record>summary{
  padding:11px 12px!important;
  color:var(--ink)!important;
  font-size:13px!important;
  font-weight:850!important;
  cursor:pointer!important;
}

.hsba-v248-edit-record>form{
  display:grid!important;
  gap:12px!important;
  padding:0 12px 12px!important;
}

.hsba-v248-audit{
  margin-top:12px!important;
  border:1px solid #d9e4eb!important;
  border-radius:10px!important;
  background:#fff!important;
  overflow:hidden!important;
}

.hsba-v248-audit>summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:11px 12px!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v248-audit>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v248-audit>summary>div{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v248-audit>summary span{
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
}

.hsba-v248-audit>summary strong{
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v248-audit>summary>b{
  padding:5px 7px!important;
  border-radius:999px!important;
  background:#eef3f7!important;
  color:#647987!important;
  font-size:11.5px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

.hsba-v248-audit-list{
  display:grid!important;
  gap:0!important;
  padding:0 12px 12px!important;
  border-top:1px solid #e7edf1!important;
}

.hsba-v248-audit-list>article{
  display:grid!important;
  grid-template-columns:12px minmax(0,1fr)!important;
  gap:9px!important;
  padding:11px 0!important;
  border-bottom:1px solid #edf1f4!important;
}

.hsba-v248-audit-list>article:last-child{
  border-bottom:0!important;
}

.hsba-v248-audit-dot{
  width:8px!important;
  height:8px!important;
  margin-top:4px!important;
  border-radius:999px!important;
  background:var(--blue)!important;
  box-shadow:0 0 0 3px rgba(47,111,237,.10)!important;
}

.hsba-v248-audit-list article>div:last-child{
  min-width:0!important;
}

.hsba-v248-audit-list strong{
  display:block!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v248-audit-list span{
  display:block!important;
  margin-top:2px!important;
  color:#788b98!important;
  font-size:12px!important;
}

.hsba-v248-audit-list ul{
  display:grid!important;
  gap:4px!important;
  margin:7px 0 0!important;
  padding:0!important;
  list-style:none!important;
}

.hsba-v248-audit-list li{
  padding:6px 8px!important;
  border-radius:7px!important;
  background:#f7f9fb!important;
  color:#536b7a!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.hsba-v248-audit-list small{
  display:inline-block!important;
  margin-top:6px!important;
  color:#9aa7af!important;
  font-size:11px!important;
  letter-spacing:.04em!important;
}

@media(max-width:700px){
  .hsba-v248-diary-head-actions,
  .hsba-v248-protocol-head-actions{
    width:100%!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
  }

  .hsba-v248-pdf-btn{
    width:100%!important;
  }

  .hsba-v248-record-meta{
    grid-template-columns:1fr!important;
  }

  .hsba-v248-record-meta>span{
    grid-template-columns:1fr!important;
    gap:2px!important;
  }

  .hsba-v248-record-meta i{
    white-space:normal!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.4.9 – Projektablage / Ordner / Suche
========================================================= */
.hsba-v249-files{
  display:grid!important;
  gap:14px!important;
}

.hsba-v249-files-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,420px)!important;
  gap:18px!important;
  align-items:end!important;
  padding:18px!important;
  border:1px solid #dfe7ec!important;
  border-radius:14px!important;
  background:#fff!important;
}

.hsba-v249-files-head>div:first-child>span{
  display:block!important;
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:950!important;
  letter-spacing:.1em!important;
}

.hsba-v249-files-head h3{
  margin:4px 0 3px!important;
  color:var(--ink)!important;
  font-size:24px!important;
  line-height:1.05!important;
}

.hsba-v249-files-head p{
  margin:0!important;
  color:#71838f!important;
  font-size:13px!important;
}

.hsba-v249-search{
  position:relative!important;
}

.hsba-v249-search-input{
  width:100%!important;
  min-height:46px!important;
  padding:0 42px 0 14px!important;
  border:1px solid #cbd8e2!important;
  border-radius:11px!important;
  background:#f9fbfc!important;
  color:var(--ink)!important;
  font-size:14px!important;
  outline:none!important;
}

.hsba-v249-search-input:focus{
  border-color:#91afe9!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(47,111,237,.08)!important;
}

.hsba-v249-search-clear{
  position:absolute!important;
  top:50%!important;
  right:8px!important;
  width:30px!important;
  height:30px!important;
  transform:translateY(-50%)!important;
  border:0!important;
  border-radius:8px!important;
  background:#eef3f7!important;
  color:#607482!important;
  -webkit-text-fill-color:#607482!important;
  font-size:17px!important;
  font-weight:700!important;
  cursor:pointer!important;
}

.hsba-v249-file-layout{
  display:grid!important;
  grid-template-columns:230px minmax(0,1fr)!important;
  min-height:500px!important;
  border:1px solid #dfe7ec!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:visible!important;
}

.hsba-v249-folder-sidebar{
  padding:14px!important;
  border-right:1px solid #e4eaef!important;
  border-radius:14px 0 0 14px!important;
  background:#f8fafc!important;
}

.hsba-v249-folder-sidebar-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-bottom:9px!important;
  padding:0 3px!important;
}

.hsba-v249-folder-sidebar-head strong{
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v249-folder-sidebar-head small{
  color:#8b99a3!important;
  font-size:11px!important;
}

.hsba-v249-folder-tree{
  display:grid!important;
  gap:2px!important;
}

.hsba-portal .hsba-v249-folder-tree-item{
  width:100%!important;
  min-height:36px!important;
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr) auto!important;
  gap:7px!important;
  align-items:center!important;
  padding:7px 8px 7px calc(8px + (var(--folder-depth,0) * 12px))!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#536a79!important;
  -webkit-text-fill-color:#536a79!important;
  text-align:left!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v249-folder-tree-item:hover,
.hsba-v249-folder-tree-item.is-active{
  background:#eaf1ff!important;
  color:#2856a5!important;
  -webkit-text-fill-color:#2856a5!important;
}

.hsba-v249-folder-tree-item span{
  min-width:0!important;
  overflow:hidden!important;
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v249-folder-tree-item b{
  min-width:21px!important;
  padding:3px 5px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.85)!important;
  color:#768894!important;
  -webkit-text-fill-color:#768894!important;
  font-size:11px!important;
  text-align:center!important;
}

.hsba-v249-folder-icon{
  color:#d59a34!important;
  -webkit-text-fill-color:#d59a34!important;
  font-size:14px!important;
  font-style:normal!important;
}

.hsba-v249-new-folder{
  margin-top:12px!important;
  border-top:1px solid #e1e8ed!important;
  padding-top:10px!important;
}

.hsba-v249-new-folder>summary{
  color:var(--blue)!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v249-new-folder form{
  display:grid!important;
  gap:7px!important;
  margin-top:9px!important;
}

.hsba-v249-new-folder label{
  display:grid!important;
  gap:4px!important;
}

.hsba-v249-new-folder label span{
  color:#71838f!important;
  font-size:11.5px!important;
  font-weight:800!important;
}

.hsba-v249-new-folder input{
  width:100%!important;
  min-height:37px!important;
  padding:7px 9px!important;
  border:1px solid #cad8e2!important;
  border-radius:8px!important;
  font-size:12px!important;
}

.hsba-portal .hsba-v249-new-folder button{
  min-height:35px!important;
  border:0!important;
  border-radius:8px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v249-file-main{
  min-width:0!important;
  padding:16px!important;
}

.hsba-v249-breadcrumb{
  min-height:28px!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  overflow:auto!important;
  margin-bottom:10px!important;
}

.hsba-portal .hsba-v249-breadcrumb button{
  flex:0 0 auto!important;
  padding:3px 5px!important;
  border:0!important;
  background:transparent!important;
  color:#758794!important;
  -webkit-text-fill-color:#758794!important;
  font-size:11.5px!important;
  font-weight:800!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v249-breadcrumb button:last-child{
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
}

.hsba-v249-breadcrumb i{
  color:#a6b2ba!important;
  font-size:13px!important;
  font-style:normal!important;
}

.hsba-v249-folder-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:12px!important;
  padding-bottom:12px!important;
  border-bottom:1px solid #e7edf1!important;
}

.hsba-v249-folder-toolbar>div:first-child{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v249-folder-toolbar strong{
  color:var(--ink)!important;
  font-size:15px!important;
}

.hsba-v249-folder-toolbar span{
  color:#8796a1!important;
  font-size:11.5px!important;
}

.hsba-portal .hsba-v249-trigger-folder{
  min-height:34px!important;
  padding:7px 10px!important;
  border:1px solid #cbd8e2!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v249-search-state{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 10px!important;
  padding:9px 10px!important;
  border:1px solid #cbdcf8!important;
  border-radius:9px!important;
  background:#f3f7ff!important;
}

.hsba-v249-search-state[hidden]{display:none!important}
.hsba-v249-search-state strong{color:#315eaa!important;font-size:12px!important}
.hsba-v249-search-state span{color:#6882a9!important;font-size:11.5px!important}

.hsba-v249-folder-cards{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin-bottom:11px!important;
}

.hsba-v249-folder-card{
  position:relative!important;
  min-width:0!important;
  border:1px solid #dce5eb!important;
  border-radius:10px!important;
  background:#fbfcfd!important;
}

.hsba-v249-folder-card[hidden]{display:none!important}

.hsba-portal .hsba-v249-folder-open-card{
  width:100%!important;
  min-height:76px!important;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) 14px!important;
  gap:8px!important;
  align-items:center!important;
  padding:10px 32px 10px 10px!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-align:left!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.hsba-v249-folder-open-card:hover{
  background:#f3f7ff!important;
}

.hsba-v249-folder-open-card>i{
  color:#d99b32!important;
  -webkit-text-fill-color:#d99b32!important;
  font-size:17px!important;
  font-style:normal!important;
}

.hsba-v249-folder-open-card>span{
  min-width:0!important;
}

.hsba-v249-folder-open-card strong{
  display:block!important;
  overflow:hidden!important;
  color:var(--ink)!important;
  font-size:13px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v249-folder-open-card small{
  display:block!important;
  margin-top:3px!important;
  overflow:hidden!important;
  color:#8997a1!important;
  font-size:11px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v249-folder-open-card>b{
  color:#90a0aa!important;
  -webkit-text-fill-color:#90a0aa!important;
  font-size:14px!important;
}

.hsba-v249-folder-menu{
  position:absolute!important;
  z-index:20!important;
  top:7px!important;
  right:7px!important;
}

.hsba-v249-folder-menu>summary{
  width:25px!important;
  height:25px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:7px!important;
  color:#80909b!important;
  font-size:12px!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v249-folder-menu>summary::-webkit-details-marker{display:none!important}
.hsba-v249-folder-menu[open]>summary{background:#e9eef2!important}

.hsba-v249-folder-menu>div{
  position:absolute!important;
  right:0!important;
  top:30px!important;
  width:220px!important;
  padding:9px!important;
  border:1px solid #d6e0e7!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(16,38,58,.15)!important;
}

.hsba-v249-folder-menu form{
  display:grid!important;
  gap:6px!important;
  margin:0 0 7px!important;
}

.hsba-v249-folder-menu form:last-child{margin-bottom:0!important}

.hsba-v249-folder-menu input{
  min-height:34px!important;
  padding:7px 8px!important;
  border:1px solid #cad8e2!important;
  border-radius:7px!important;
  font-size:12px!important;
}

.hsba-portal .hsba-v249-folder-menu button{
  min-height:32px!important;
  border:0!important;
  border-radius:7px!important;
  background:#eef3f7!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  font-size:11.5px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-portal .hsba-v249-folder-menu button.is-danger{
  background:#fff1f1!important;
  color:#a55353!important;
  -webkit-text-fill-color:#a55353!important;
}

.hsba-v249-file-list{
  display:grid!important;
  gap:6px!important;
}

.hsba-v249-file-row{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto minmax(180px,auto)!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px!important;
  border:1px solid #e0e7ec!important;
  border-radius:10px!important;
  background:#fff!important;
}

.hsba-v249-file-row[hidden]{display:none!important}

.hsba-v249-file-type{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:#eef3f7!important;
  color:#4e6575!important;
  font-size:11.5px!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
}

.hsba-v249-file-copy{
  min-width:0!important;
}

.hsba-v249-file-copy strong{
  display:block!important;
  overflow:hidden!important;
  color:var(--ink)!important;
  font-size:13px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v249-file-copy span,
.hsba-v249-file-copy small{
  display:block!important;
  margin-top:2px!important;
  overflow:hidden!important;
  color:#85949e!important;
  font-size:11.5px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v249-file-copy small{
  color:#6f86a0!important;
}

.hsba-v249-file-badges{
  display:flex!important;
  gap:5px!important;
  flex-wrap:wrap!important;
}

.hsba-v249-file-badges span{
  padding:5px 6px!important;
  border-radius:999px!important;
  background:#eef3f7!important;
  color:#667a88!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v249-file-badges span.is-warning{
  background:#fff4df!important;
  color:#91631e!important;
}

.hsba-v249-file-badges span.is-success{
  background:#edf8f2!important;
  color:#3f755a!important;
}

.hsba-v249-file-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  flex-wrap:wrap!important;
}

.hsba-v249-file-actions>a,
.hsba-v249-file-actions>button,
.hsba-v249-file-move>summary{
  min-height:31px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:6px 8px!important;
  border:1px solid #d5e0e7!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#536b79!important;
  -webkit-text-fill-color:#536b79!important;
  font-size:11.5px!important;
  font-weight:900!important;
  text-decoration:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
  list-style:none!important;
}

.hsba-v249-file-move{
  position:relative!important;
}

.hsba-v249-file-move>summary::-webkit-details-marker{display:none!important}

.hsba-v249-file-move form{
  position:absolute!important;
  z-index:30!important;
  right:0!important;
  top:36px!important;
  width:250px!important;
  display:grid!important;
  gap:7px!important;
  padding:9px!important;
  border:1px solid #d5e0e7!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(16,38,58,.14)!important;
}

.hsba-v249-file-move select{
  min-height:34px!important;
  width:100%!important;
  border:1px solid #cad8e2!important;
  border-radius:7px!important;
  font-size:12px!important;
}

.hsba-portal .hsba-v249-file-move form button{
  min-height:32px!important;
  border:0!important;
  border-radius:7px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:11.5px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v249-empty-folder,
.hsba-v249-empty-search{
  padding:34px 16px!important;
  border:1px dashed #cedae2!important;
  border-radius:10px!important;
  color:#8796a0!important;
  font-size:13px!important;
  text-align:center!important;
}

.hsba-v249-empty-folder[hidden],
.hsba-v249-empty-search[hidden]{display:none!important}

@media(max-width:1050px){
  .hsba-v249-folder-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .hsba-v249-file-row{
    grid-template-columns:42px minmax(0,1fr) auto!important;
  }

  .hsba-v249-file-actions{
    grid-column:2/-1!important;
    justify-content:flex-start!important;
  }
}

@media(max-width:760px){
  .hsba-v249-files-head{
    grid-template-columns:1fr!important;
  }

  .hsba-v249-file-layout{
    grid-template-columns:1fr!important;
  }

  .hsba-v249-folder-sidebar{
    border-right:0!important;
    border-bottom:1px solid #e4eaef!important;
    border-radius:14px 14px 0 0!important;
  }

  .hsba-v249-folder-tree{
    max-height:210px!important;
    overflow:auto!important;
  }

  .hsba-v249-folder-cards{
    grid-template-columns:1fr!important;
  }

  .hsba-v249-file-row{
    grid-template-columns:38px minmax(0,1fr)!important;
  }

  .hsba-v249-file-type{
    width:38px!important;
    height:38px!important;
  }

  .hsba-v249-file-badges,
  .hsba-v249-file-actions{
    grid-column:1/-1!important;
    justify-content:flex-start!important;
  }

  .hsba-v249-file-move form{
    position:fixed!important;
    z-index:100000!important;
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:12px!important;
    width:auto!important;
  }

  .hsba-v249-folder-menu>div{
    position:fixed!important;
    z-index:100000!important;
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:12px!important;
    width:auto!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.5.0 – Ordnerrechte, Freigabe-Automatik & Nachfassen
========================================================= */

.hsba-v249-folder-open-card strong em{
  display:inline-flex!important;
  align-items:center!important;
  margin-left:5px!important;
  padding:3px 5px!important;
  border-radius:999px!important;
  background:#eef3f7!important;
  color:#617786!important;
  -webkit-text-fill-color:#617786!important;
  font-size:11px!important;
  font-style:normal!important;
  font-weight:900!important;
  vertical-align:middle!important;
}

.hsba-v249-folder-open-card strong em.is-system{
  background:#eaf1ff!important;
  color:#315fae!important;
  -webkit-text-fill-color:#315fae!important;
  letter-spacing:.05em!important;
}

.hsba-v249-folder-card.is-restricted{
  border-color:#c8d8ef!important;
  background:#fbfdff!important;
}

.hsba-v250-folder-menu-label{
  color:#748793!important;
  font-size:11px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}

.hsba-v250-folder-access-form{
  padding-top:8px!important;
  border-top:1px solid #e7edf1!important;
}

.hsba-v250-folder-access-head{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

.hsba-v250-folder-access-head strong{
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v250-folder-access-head small{
  color:#84939e!important;
  font-size:11px!important;
  line-height:1.4!important;
}

.hsba-v250-folder-access-list{
  display:grid!important;
  gap:4px!important;
  max-height:180px!important;
  overflow:auto!important;
  padding:6px!important;
  border:1px solid #e0e7ec!important;
  border-radius:7px!important;
  background:#f8fafc!important;
}

.hsba-v250-folder-access-list label{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:7px!important;
  align-items:start!important;
  padding:4px 3px!important;
  cursor:pointer!important;
}

.hsba-v250-folder-access-list input{
  width:auto!important;
  min-height:auto!important;
  margin:2px 0 0!important;
}

.hsba-v250-folder-access-list span{
  color:#536b79!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}

.hsba-v250-system-note{
  padding:7px 8px!important;
  border-radius:7px!important;
  background:#f2f6fd!important;
  color:#617a9f!important;
  font-size:11px!important;
  line-height:1.4!important;
}

.hsba-v250-auto-folder{
  display:inline-flex!important;
  align-items:center!important;
  min-height:31px!important;
  padding:6px 8px!important;
  border:1px solid #c7d9f6!important;
  border-radius:7px!important;
  background:#f3f7ff!important;
  color:#456ca9!important;
  -webkit-text-fill-color:#456ca9!important;
  font-size:11.5px!important;
  font-weight:900!important;
}

.hsba-v250-followups{
  margin:16px 0 18px!important;
  padding:16px!important;
  border:1px solid #dce5ec!important;
  border-radius:14px!important;
  background:#f8fafc!important;
}

.hsba-v250-followups-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:12px!important;
}

.hsba-v250-followups-head>div{
  min-width:0!important;
}

.hsba-v250-followups-head span{
  display:block!important;
  color:var(--blue)!important;
  font-size:11.5px!important;
  font-weight:950!important;
  letter-spacing:.1em!important;
}

.hsba-v250-followups-head h4{
  margin:3px 0!important;
  color:var(--ink)!important;
  font-size:17px!important;
}

.hsba-v250-followups-head p{
  margin:0!important;
  color:#748691!important;
  font-size:12px!important;
}

.hsba-v250-followups-head>b{
  flex:0 0 auto!important;
  padding:6px 8px!important;
  border-radius:999px!important;
  background:#fff0e5!important;
  color:#9a5c26!important;
  font-size:11.5px!important;
  font-weight:950!important;
}

.hsba-v250-followup-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

.hsba-v250-followup-column{
  min-width:0!important;
  display:grid!important;
  align-content:start!important;
  gap:7px!important;
}

.hsba-v250-followup-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:0 2px 3px!important;
}

.hsba-v250-followup-title strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v250-followup-title span{
  color:#85949e!important;
  font-size:11.5px!important;
}

.hsba-v250-followup-card{
  display:grid!important;
  gap:8px!important;
  padding:11px!important;
  border:1px solid #dfe7ec!important;
  border-radius:10px!important;
  background:#fff!important;
}

.hsba-v250-followup-card.is-overdue{
  border-color:#efc7c4!important;
  background:#fffafa!important;
}

.hsba-v250-followup-card-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:8px!important;
}

.hsba-v250-followup-card-top small{
  display:block!important;
  color:#8796a1!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
}

.hsba-v250-followup-card-top strong{
  display:block!important;
  margin-top:2px!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v250-followup-card-top>b{
  flex:0 0 auto!important;
  padding:4px 6px!important;
  border-radius:999px!important;
  background:#fff0ef!important;
  color:#ad554e!important;
  font-size:11px!important;
  font-weight:950!important;
}

.hsba-v250-responsible{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:3px 7px!important;
  align-items:center!important;
}

.hsba-v250-responsible>span{
  color:#8796a1!important;
  font-size:11px!important;
  font-weight:800!important;
}

.hsba-v250-responsible>strong{
  color:#35536a!important;
  font-size:12px!important;
}

.hsba-v250-responsible>small{
  grid-column:2!important;
  color:#8796a1!important;
  font-size:11px!important;
}

.hsba-v250-due{
  color:#71838f!important;
  font-size:11.5px!important;
}

.hsba-v250-followup-empty{
  padding:18px 12px!important;
  border:1px dashed #d3dde4!important;
  border-radius:9px!important;
  color:#8a99a3!important;
  font-size:12px!important;
  text-align:center!important;
  background:#fff!important;
}

.hsba-v250-reminder-form{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:6px!important;
  align-items:stretch!important;
  margin-top:2px!important;
}

.hsba-v250-reminder-form textarea{
  width:100%!important;
  min-height:52px!important;
  resize:vertical!important;
  padding:7px 8px!important;
  border:1px solid #ccd9e2!important;
  border-radius:7px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}

.hsba-portal .hsba-v250-reminder-form button{
  min-height:36px!important;
  padding:7px 9px!important;
  border:0!important;
  border-radius:7px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:11.5px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}

.hsba-v106-approval-card .hsba-v250-reminder-form{
  width:100%!important;
  grid-column:1/-1!important;
  margin-top:7px!important;
}

.hsba-v114-sent-item .hsba-v250-reminder-form{
  margin-top:8px!important;
}

.hsba-v250-approval-responsible{
  color:#385977!important;
}

@media(max-width:900px){
  .hsba-v250-followup-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:700px){
  .hsba-v250-reminder-form{
    grid-template-columns:1fr!important;
  }

  .hsba-portal .hsba-v250-reminder-form button{
    width:100%!important;
  }
}


.hsba-v250-approval-folder-note{
  margin:7px 0 0!important;
  padding:8px 9px!important;
  border:1px solid #cbdcf7!important;
  border-radius:8px!important;
  background:#f4f7ff!important;
  color:#5d7398!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}

.hsba-v250-approval-folder-note b{
  color:#315eaa!important;
  font-weight:900!important;
}


.hsba-v250-self-todo{
  margin-top:6px!important;
  padding:7px 8px!important;
  border-radius:7px!important;
  background:#eef3f7!important;
  color:#718490!important;
  font-size:11.5px!important;
  font-weight:800!important;
}


/* =========================================================
   HS BAUAKTE v2.5.1 – Dynamischer Bauzeitenplan
========================================================= */

.hsba-v251-schedule{
  display:grid!important;
  gap:12px!important;
}

.hsba-v251-schedule-empty{
  padding:28px 18px!important;
  border:1px dashed #d1dce4!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#7b8d99!important;
  font-size:13px!important;
  text-align:center!important;
}

.hsba-v251-schedule-summary{
  display:grid!important;
  grid-template-columns:minmax(220px,1.5fr) repeat(5,minmax(90px,.55fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}

.hsba-v251-schedule-summary-main,
.hsba-v251-schedule-metric{
  padding:13px!important;
  border:1px solid #dfe7ec!important;
  border-radius:11px!important;
  background:#fff!important;
}

.hsba-v251-schedule-summary-main>span{
  display:block!important;
  color:var(--blue)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}

.hsba-v251-schedule-summary-main>strong{
  display:block!important;
  margin-top:4px!important;
  color:var(--ink)!important;
  font-size:24px!important;
  line-height:1!important;
}

.hsba-v251-schedule-summary-main>small{
  display:block!important;
  margin-top:4px!important;
  color:#81909b!important;
  font-size:11px!important;
}

.hsba-v251-summary-progress{
  height:5px!important;
  margin-top:10px!important;
  border-radius:999px!important;
  overflow:hidden!important;
  background:#edf2f6!important;
}

.hsba-v251-summary-progress i{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:var(--blue)!important;
}

.hsba-v251-schedule-metric{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:8px!important;
}

.hsba-v251-schedule-metric small{
  color:#81919c!important;
  font-size:11px!important;
  line-height:1.35!important;
}

.hsba-v251-schedule-metric strong{
  color:var(--ink)!important;
  font-size:20px!important;
  line-height:1!important;
}

.hsba-v251-schedule-metric.is-delay{
  border-color:#efc8c4!important;
  background:#fffafa!important;
}

.hsba-v251-schedule-metric.is-delay strong{
  color:#a7544e!important;
}

.hsba-v251-schedule-metric.is-risk{
  border-color:#ecd4aa!important;
  background:#fffaf0!important;
}

.hsba-v251-schedule-metric.is-risk strong{
  color:#9b6b24!important;
}

.hsba-v251-schedule-metric.is-done{
  border-color:#cce3d7!important;
  background:#f7fcf9!important;
}

.hsba-v251-schedule-metric.is-done strong{
  color:#3f785a!important;
}

.hsba-v251-schedule-manager-note{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  padding:10px 12px!important;
  border:1px solid #c8d9f5!important;
  border-radius:10px!important;
  background:#f4f7ff!important;
}

.hsba-v251-schedule-manager-note strong{
  color:#315ea8!important;
  font-size:12px!important;
}

.hsba-v251-schedule-manager-note span{
  color:#647a9e!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}

.hsba-v251-schedule-list{
  display:grid!important;
  gap:7px!important;
}

.hsba-v251-schedule-item{
  border:1px solid #dde5eb!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:visible!important;
}

.hsba-v251-schedule-item.is-delayed,
.hsba-v251-schedule-item.has-delay{
  border-left:4px solid #c8685f!important;
}

.hsba-v251-schedule-item.is-paused{
  border-left:4px solid #b58a47!important;
}

.hsba-v251-schedule-item.is-in_progress{
  border-left:4px solid var(--blue)!important;
}

.hsba-v251-schedule-item.is-completed{
  border-left:4px solid #4f8a69!important;
}

.hsba-v251-schedule-item>summary{
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr) auto 18px!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v251-schedule-item>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v251-schedule-date{
  display:grid!important;
  gap:2px!important;
}

.hsba-v251-schedule-date strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v251-schedule-date span{
  color:#84949f!important;
  font-size:11.5px!important;
}

.hsba-v251-schedule-date b{
  display:inline-flex!important;
  width:max-content!important;
  margin-top:3px!important;
  padding:3px 5px!important;
  border-radius:999px!important;
  background:#fff0ef!important;
  color:#a85851!important;
  font-size:11px!important;
  font-weight:950!important;
}

.hsba-v251-schedule-date b.is-early{
  background:#edf8f2!important;
  color:#47795d!important;
}

.hsba-v251-schedule-main{
  min-width:0!important;
}

.hsba-v251-schedule-title{
  overflow:hidden!important;
  color:var(--ink)!important;
  font-size:14px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v251-schedule-main>small{
  display:block!important;
  margin-top:2px!important;
  overflow:hidden!important;
  color:#81919c!important;
  font-size:11.5px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v251-schedule-main>p{
  margin:5px 0 0!important;
  color:#617683!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}

.hsba-v251-schedule-progress{
  height:4px!important;
  margin-top:7px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:#edf2f5!important;
}

.hsba-v251-schedule-progress span{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:var(--task-color,var(--blue))!important;
}

.hsba-v251-schedule-state{
  min-width:105px!important;
  display:grid!important;
  justify-items:end!important;
  gap:4px!important;
}

.hsba-v251-schedule-state>b{
  color:#657986!important;
  font-size:11.5px!important;
}

.hsba-v251-schedule-state>em{
  padding:3px 5px!important;
  border-radius:999px!important;
  background:#fff2e1!important;
  color:#966522!important;
  font-size:11px!important;
  font-style:normal!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

.hsba-v251-schedule-body{
  display:grid!important;
  gap:10px!important;
  padding-top:2px!important;
}

.hsba-v251-schedule-plan-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
}

.hsba-v251-schedule-plan-grid>div{
  min-width:0!important;
  display:grid!important;
  gap:3px!important;
  padding:10px!important;
  border:1px solid #e0e7ec!important;
  border-radius:9px!important;
  background:#fafcfd!important;
}

.hsba-v251-schedule-plan-grid>div.is-changed{
  border-color:#d9c69d!important;
  background:#fffaf1!important;
}

.hsba-v251-schedule-plan-grid small{
  color:#8796a1!important;
  font-size:11px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.hsba-v251-schedule-plan-grid strong{
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v251-schedule-plan-grid span{
  color:#7b8e9a!important;
  font-size:11px!important;
}

.hsba-v251-schedule-update,
.hsba-v251-schedule-impact,
.hsba-v251-schedule-next{
  padding:10px 11px!important;
  border:1px solid #dce5eb!important;
  border-radius:9px!important;
  background:#f9fbfc!important;
}

.hsba-v251-schedule-update{
  border-color:#cbdcf7!important;
  background:#f5f8ff!important;
}

.hsba-v251-schedule-next{
  border-color:#cde2d7!important;
  background:#f6fbf8!important;
}

.hsba-v251-schedule-impact{
  border-color:#dfd7c4!important;
  background:#fcfaf5!important;
}

.hsba-v251-schedule-update strong,
.hsba-v251-schedule-impact strong,
.hsba-v251-schedule-next strong{
  display:block!important;
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v251-schedule-update p,
.hsba-v251-schedule-impact p,
.hsba-v251-schedule-next p{
  margin:5px 0 0!important;
  color:#5f7482!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}

.hsba-v251-schedule-updated{
  color:#8897a1!important;
  font-size:11px!important;
}

.hsba-v251-schedule-updated b{
  color:#617785!important;
}

.hsba-v251-schedule-editor{
  margin-top:2px!important;
  border:1px solid #cedcf0!important;
  border-radius:10px!important;
  background:#f8faff!important;
  overflow:hidden!important;
}

.hsba-v251-schedule-editor>summary{
  padding:10px 11px!important;
  color:#315fa9!important;
  font-size:12px!important;
  font-weight:900!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v251-schedule-editor>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v251-schedule-edit-form{
  display:grid!important;
  gap:10px!important;
  padding:0 11px 11px!important;
}

.hsba-v251-schedule-edit-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}

.hsba-v251-schedule-edit-grid label{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
}

.hsba-v251-schedule-edit-grid label.span-2{
  grid-column:1/-1!important;
}

.hsba-v251-schedule-edit-grid label>span{
  color:#637886!important;
  font-size:11.5px!important;
  font-weight:850!important;
}

.hsba-v251-schedule-edit-grid input,
.hsba-v251-schedule-edit-grid select,
.hsba-v251-schedule-edit-grid textarea{
  width:100%!important;
  min-height:38px!important;
  padding:7px 8px!important;
  border:1px solid #cad7e1!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:12px!important;
  outline:none!important;
}

.hsba-v251-schedule-edit-grid textarea{
  min-height:64px!important;
  resize:vertical!important;
}

.hsba-portal .hsba-v251-schedule-save{
  justify-self:start!important;
  min-height:38px!important;
  padding:8px 11px!important;
  border:0!important;
  border-radius:8px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:11.5px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v251-manager-schedule-list{
  display:grid!important;
  gap:7px!important;
  margin-top:18px!important;
}

.hsba-v251-manager-schedule-row{
  border:1px solid #dfe7ec!important;
  border-radius:9px!important;
  background:#fbfcfd!important;
  overflow:hidden!important;
}

.hsba-v251-manager-schedule-row>summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:10px 11px!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v251-manager-schedule-row>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v251-manager-schedule-row>summary>div{
  min-width:0!important;
}

.hsba-v251-manager-schedule-row>summary strong{
  display:block!important;
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v251-manager-schedule-row>summary span{
  display:block!important;
  margin-top:2px!important;
  color:#7e8f9a!important;
  font-size:11px!important;
}

.hsba-v251-manager-schedule-row>summary>b{
  color:var(--blue)!important;
  font-size:11.5px!important;
}

.hsba-v251-manager-schedule-row .hsba-v251-schedule-edit-form{
  padding:0 11px 11px!important;
}

@media(max-width:1050px){
  .hsba-v251-schedule-summary{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .hsba-v251-schedule-summary-main{
    grid-column:1/-1!important;
  }

  .hsba-v251-schedule-plan-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:720px){
  .hsba-v251-schedule-summary{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .hsba-v251-schedule-item>summary{
    grid-template-columns:1fr auto!important;
    gap:8px!important;
  }

  .hsba-v251-schedule-date,
  .hsba-v251-schedule-main{
    grid-column:1!important;
  }

  .hsba-v251-schedule-state{
    grid-column:2!important;
    grid-row:1/3!important;
  }

  .hsba-v251-schedule-item>summary>.hsba-chevron{
    display:none!important;
  }

  .hsba-v251-schedule-plan-grid,
  .hsba-v251-schedule-edit-grid{
    grid-template-columns:1fr!important;
  }

  .hsba-v251-schedule-edit-grid label.span-2{
    grid-column:auto!important;
  }

  .hsba-v251-schedule-manager-note{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.5.2 – Abhängigkeiten, Risiko & Folgeverschiebung
========================================================= */

.hsba-v251-schedule-summary{
  grid-template-columns:minmax(220px,1.5fr) repeat(6,minmax(82px,.5fr))!important;
}

.hsba-v251-schedule-metric.is-critical{
  border-color:#e8c3c3!important;
  background:#fff7f7!important;
}

.hsba-v251-schedule-metric.is-critical strong{
  color:#a34848!important;
}

.hsba-v251-schedule-item.risk-critical{
  box-shadow:inset 0 0 0 1px rgba(176,70,70,.08)!important;
}

.hsba-v251-schedule-item.risk-watch{
  box-shadow:inset 0 0 0 1px rgba(180,132,54,.06)!important;
}

.hsba-v252-risk{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 5px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-style:normal!important;
  font-weight:950!important;
  white-space:nowrap!important;
}

.hsba-v252-risk.is-critical{
  background:#fff0ef!important;
  color:#a64e49!important;
}

.hsba-v252-risk.is-watch{
  background:#fff5e5!important;
  color:#93641e!important;
}

.hsba-v252-dependency-conflict{
  padding:10px 11px!important;
  border:1px solid #e9c5a0!important;
  border-radius:9px!important;
  background:#fff9f1!important;
}

.hsba-v252-dependency-conflict strong{
  display:block!important;
  color:#8f5d20!important;
  font-size:12px!important;
}

.hsba-v252-dependency-conflict p{
  margin:5px 0 0!important;
  color:#705f49!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}

.hsba-v252-dependents{
  display:grid!important;
  gap:6px!important;
}

.hsba-v252-dependents>strong{
  color:#607683!important;
  font-size:11.5px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.hsba-v252-dependents>div{
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}

.hsba-v252-dependents span{
  min-width:150px!important;
  display:grid!important;
  gap:2px!important;
  padding:7px 8px!important;
  border:1px solid #dde6ec!important;
  border-radius:8px!important;
  background:#fafcfd!important;
  color:#4f6877!important;
  font-size:11.5px!important;
  font-weight:850!important;
}

.hsba-v252-dependents small{
  color:#8a99a3!important;
  font-size:11px!important;
  font-weight:600!important;
}

.hsba-v252-shift-preview{
  display:grid!important;
  gap:8px!important;
  padding:11px!important;
  border:1px solid #d6c39c!important;
  border-radius:10px!important;
  background:#fffaf1!important;
}

.hsba-v252-shift-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  align-items:flex-start!important;
}

.hsba-v252-shift-head>div{
  min-width:0!important;
}

.hsba-v252-shift-head span{
  display:block!important;
  color:#98702d!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}

.hsba-v252-shift-head strong{
  display:block!important;
  margin-top:2px!important;
  color:#4c4335!important;
  font-size:13px!important;
}

.hsba-v252-shift-head small{
  display:block!important;
  margin-top:3px!important;
  color:#83735c!important;
  font-size:11px!important;
  line-height:1.4!important;
}

.hsba-v252-shift-head>b{
  flex:0 0 auto!important;
  padding:5px 7px!important;
  border-radius:999px!important;
  background:#fff0d6!important;
  color:#8e601f!important;
  font-size:11.5px!important;
  font-weight:950!important;
}

.hsba-v252-shift-list{
  display:grid!important;
  gap:4px!important;
}

.hsba-v252-shift-list article{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 45px!important;
  gap:8px!important;
  align-items:center!important;
  padding:7px 8px 7px calc(8px + (var(--shift-level,0) * 10px))!important;
  border:1px solid #eadfc8!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.75)!important;
}

.hsba-v252-shift-list article>div:first-child{
  min-width:0!important;
}

.hsba-v252-shift-list article>div:first-child strong{
  display:block!important;
  overflow:hidden!important;
  color:#4d5f6a!important;
  font-size:11.5px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v252-shift-list article>div:first-child span{
  display:block!important;
  margin-top:2px!important;
  color:#8b938f!important;
  font-size:11px!important;
}

.hsba-v252-shift-dates{
  display:grid!important;
  gap:2px!important;
  justify-items:end!important;
}

.hsba-v252-shift-dates s{
  color:#a19a91!important;
  font-size:11px!important;
}

.hsba-v252-shift-dates strong{
  color:#72521f!important;
  font-size:11px!important;
}

.hsba-v252-shift-list article>b{
  justify-self:end!important;
  padding:4px 5px!important;
  border-radius:999px!important;
  background:#fff0d6!important;
  color:#8c5d1d!important;
  font-size:11px!important;
  font-weight:950!important;
}

.hsba-v252-shift-form{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  padding-top:2px!important;
}

.hsba-v252-shift-form .hsba-check{
  flex:1 1 250px!important;
}

.hsba-portal .hsba-v252-shift-form button{
  min-height:36px!important;
  padding:7px 10px!important;
  border:0!important;
  border-radius:8px!important;
  background:#8d6428!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:11.5px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

@media(max-width:1100px){
  .hsba-v251-schedule-summary{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .hsba-v251-schedule-summary-main{
    grid-column:1/-1!important;
  }
}

@media(max-width:720px){
  .hsba-v252-shift-list article{
    grid-template-columns:1fr auto!important;
  }

  .hsba-v252-shift-dates{
    grid-column:1!important;
    justify-items:start!important;
  }

  .hsba-v252-shift-list article>b{
    grid-column:2!important;
    grid-row:1/3!important;
  }

  .hsba-v252-shift-form{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .hsba-portal .hsba-v252-shift-form button{
    width:100%!important;
  }
}


.hsba-v252-gantt{
  display:grid!important;
  gap:8px!important;
  padding:11px!important;
  border:1px solid #dfe7ec!important;
  border-radius:11px!important;
  background:#fff!important;
}

.hsba-v252-gantt-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:10px!important;
}

.hsba-v252-gantt-head>div{
  display:grid!important;
  gap:2px!important;
}

.hsba-v252-gantt-head strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v252-gantt-head span,
.hsba-v252-gantt-head small{
  color:#81919c!important;
  font-size:11px!important;
}

.hsba-v252-gantt-body{
  position:relative!important;
  display:grid!important;
  gap:5px!important;
  padding-top:4px!important;
}

.hsba-v252-gantt-row{
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  min-height:21px!important;
}

.hsba-v252-gantt-row>span{
  overflow:hidden!important;
  color:#627785!important;
  font-size:11.5px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v252-gantt-track{
  position:relative!important;
  height:11px!important;
  border-radius:999px!important;
  background:
    repeating-linear-gradient(
      to right,
      #f3f6f8 0,
      #f3f6f8 calc(10% - 1px),
      #e6ecef calc(10% - 1px),
      #e6ecef 10%
    )!important;
  overflow:hidden!important;
}

.hsba-v252-gantt-track>i{
  position:absolute!important;
  left:var(--left)!important;
  top:2px!important;
  width:var(--width)!important;
  height:7px!important;
  border-radius:999px!important;
  background:var(--bar)!important;
  opacity:.82!important;
}

.hsba-v252-gantt-track>i.risk-critical{
  box-shadow:0 0 0 2px rgba(169,68,68,.25)!important;
}

.hsba-v252-gantt-track>i.status-completed{
  opacity:.4!important;
}

.hsba-v252-today{
  position:absolute!important;
  z-index:4!important;
  left:calc(150px + 8px + ((100% - 158px) * var(--today) / 100))!important;
  top:0!important;
  bottom:0!important;
  width:1px!important;
  background:#d76458!important;
  pointer-events:none!important;
}

.hsba-v252-today>b{
  position:absolute!important;
  top:-15px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  padding:2px 4px!important;
  border-radius:999px!important;
  background:#fff0ef!important;
  color:#a64e47!important;
  font-size:11px!important;
  font-style:normal!important;
  white-space:nowrap!important;
}

@media(max-width:720px){
  .hsba-v252-gantt{
    overflow-x:auto!important;
  }

  .hsba-v252-gantt-head,
  .hsba-v252-gantt-body{
    min-width:650px!important;
  }

  .hsba-v252-gantt-row{
    grid-template-columns:135px minmax(0,1fr)!important;
  }

  .hsba-v252-today{
    left:calc(135px + 8px + ((100% - 143px) * var(--today) / 100))!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.5.3 – Projekt-Steckbrief & Projektorganisation
========================================================= */

.hsba-v253-project-profile{
  display:grid!important;
  gap:10px!important;
  margin:14px 0!important;
  padding:15px!important;
  border:1px solid #dfe7ec!important;
  border-radius:14px!important;
  background:#fff!important;
}

.hsba-v253-project-profile-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
}

.hsba-v253-project-profile-head>div:first-child{
  min-width:0!important;
}

.hsba-v253-project-profile-head span{
  display:block!important;
  color:var(--blue)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
}

.hsba-v253-project-profile-head h4{
  margin:3px 0 0!important;
  color:var(--ink)!important;
  font-size:17px!important;
  line-height:1.08!important;
}

.hsba-v253-project-profile-actions{
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}

.hsba-v253-project-profile-actions a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  padding:7px 9px!important;
  border:1px solid #cfdae3!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#4f6b7c!important;
  font-size:11.5px!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.hsba-v253-project-profile-actions a:hover{
  border-color:#a9c1eb!important;
  color:#315fa9!important;
}

.hsba-v253-project-profile-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
}

.hsba-v253-project-profile-grid article{
  min-width:0!important;
  display:grid!important;
  align-content:start!important;
  gap:3px!important;
  min-height:86px!important;
  padding:10px!important;
  border:1px solid #e1e8ed!important;
  border-radius:9px!important;
  background:#fafcfd!important;
}

.hsba-v253-project-profile-grid small{
  color:#8796a1!important;
  font-size:11px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.hsba-v253-project-profile-grid strong{
  color:var(--ink)!important;
  font-size:12px!important;
  line-height:1.35!important;
}

.hsba-v253-project-profile-grid span{
  color:#708491!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}

.hsba-v253-project-roles{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:6px!important;
  padding-top:2px!important;
}

.hsba-v253-project-roles>div{
  min-width:0!important;
  display:grid!important;
  align-content:start!important;
  gap:2px!important;
  padding:9px!important;
  border:1px solid #dfe6ec!important;
  border-radius:8px!important;
  background:#fff!important;
}

.hsba-v253-project-roles small{
  color:#718493!important;
  font-size:11px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.hsba-v253-project-roles strong{
  overflow:hidden!important;
  color:#35546c!important;
  font-size:12px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v253-project-roles span{
  overflow:hidden!important;
  color:#8b99a3!important;
  font-size:11px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v253-site-note{
  padding:10px 11px!important;
  border:1px solid #e5d7b9!important;
  border-radius:9px!important;
  background:#fffaf1!important;
}

.hsba-v253-site-note strong{
  display:block!important;
  color:#745822!important;
  font-size:11.5px!important;
}

.hsba-v253-site-note p{
  margin:4px 0 0!important;
  color:#6f6758!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}

.hsba-v253-commercial{
  border:1px solid #dfe7ec!important;
  border-radius:9px!important;
  background:#f8fafc!important;
  overflow:hidden!important;
}

.hsba-v253-commercial>summary{
  padding:9px 10px!important;
  color:#5b7180!important;
  font-size:11.5px!important;
  font-weight:900!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v253-commercial>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v253-commercial>div{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  padding:0 10px 10px!important;
}

.hsba-v253-commercial span{
  display:grid!important;
  gap:3px!important;
  padding:8px!important;
  border-radius:7px!important;
  background:#fff!important;
}

.hsba-v253-commercial small{
  color:#8998a2!important;
  font-size:11px!important;
  font-weight:850!important;
  text-transform:uppercase!important;
}

.hsba-v253-commercial strong{
  color:#4e6676!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  white-space:pre-line!important;
}

.hsba-v253-role-hint{
  padding:8px 9px!important;
  border:1px solid #d4e0f2!important;
  border-radius:8px!important;
  background:#f6f9ff!important;
  color:#667b9b!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}

.hsba-manager-grid label>small{
  color:#8a98a2!important;
  font-size:11px!important;
  line-height:1.4!important;
}

@media(max-width:1100px){
  .hsba-v253-project-profile-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .hsba-v253-project-roles{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:720px){
  .hsba-v253-project-profile-head{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .hsba-v253-project-profile-actions{
    justify-content:flex-start!important;
  }

  .hsba-v253-project-profile-grid,
  .hsba-v253-commercial>div{
    grid-template-columns:1fr!important;
  }

  .hsba-v253-project-roles{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.5.4 – Global Typography / gesamte App
   Ziel: normale Desktop-Lesbarkeit statt Mikrotypografie.
========================================================= */

.hsba-portal{
  font-size:15px!important;
  line-height:1.45!important;
}

/* Form controls bleiben überall lesbar – Projektverwaltung, Uploads,
   Bautagebuch, Bauzeit, Besprechungen, To-dos, Freigaben, Profil. */
.hsba-portal input:not([type="checkbox"]):not([type="radio"]),
.hsba-portal select,
.hsba-portal textarea{
  font-size:14px!important;
  line-height:1.4!important;
}

.hsba-portal input:not([type="checkbox"]):not([type="radio"]),
.hsba-portal select{
  min-height:40px!important;
}

.hsba-portal textarea{
  min-height:76px!important;
}

/* Lesbare Formularbezeichnungen in der kompletten Projektleiter-Konsole. */
.hsba-manager-grid label>span,
.hsba-v251-schedule-edit-grid label>span,
.hsba-upload-approvers>strong,
.hsba-upload-recipient-head strong,
.hsba-manager-contacts>strong{
  font-size:12px!important;
  line-height:1.35!important;
}

.hsba-manager-grid label>small,
.hsba-v253-role-hint,
.hsba-muted{
  font-size:12px!important;
  line-height:1.45!important;
}

/* Kleine Aktionsbuttons waren teils 7–9 px. */
.hsba-portal .hsba-manager-submit,
.hsba-portal .hsba-primary-action,
.hsba-portal .hsba-v251-schedule-save,
.hsba-portal .hsba-v252-shift-form button,
.hsba-portal .hsba-v250-reminder-form button,
.hsba-portal .hsba-v106-open-file,
.hsba-portal .hsba-v100-text-action,
.hsba-portal button.hsba-v100-text-action{
  font-size:13px!important;
  line-height:1.25!important;
}

/* Übersicht / Projekt-Steckbrief */
.hsba-v253-project-profile{
  gap:14px!important;
  padding:18px!important;
}

.hsba-v253-project-profile-head span{
  font-size:11px!important;
}

.hsba-v253-project-profile-head h4{
  font-size:20px!important;
}

.hsba-v253-project-profile-actions a{
  min-height:38px!important;
  padding:8px 11px!important;
  font-size:12px!important;
}

.hsba-v253-project-profile-grid{
  gap:10px!important;
}

.hsba-v253-project-profile-grid article{
  min-height:112px!important;
  gap:5px!important;
  padding:13px!important;
}

.hsba-v253-project-profile-grid small{
  font-size:11px!important;
}

.hsba-v253-project-profile-grid strong{
  font-size:14px!important;
}

.hsba-v253-project-profile-grid span{
  font-size:12px!important;
}

.hsba-v253-project-roles{
  gap:9px!important;
}

.hsba-v253-project-roles>div{
  min-height:78px!important;
  gap:4px!important;
  padding:11px!important;
}

.hsba-v253-project-roles small{
  font-size:10.5px!important;
}

.hsba-v253-project-roles strong{
  font-size:13px!important;
}

.hsba-v253-project-roles span{
  font-size:11.5px!important;
}

.hsba-v253-site-note{
  padding:12px 13px!important;
}

.hsba-v253-site-note strong{
  font-size:13px!important;
}

.hsba-v253-site-note p{
  font-size:12px!important;
}

/* KPI und Dashboard */
.hsba-v100-kpis button>span{
  font-size:11px!important;
}

.hsba-v100-kpis button>small{
  font-size:12px!important;
}

.hsba-v100-minihead h4,
.hsba-v100-section-title h4{
  font-size:18px!important;
}

.hsba-v100-minihead>div>span,
.hsba-v100-section-title>div>span{
  font-size:11px!important;
}

.hsba-v100-gantt-row{
  grid-template-columns:150px minmax(0,1fr) 44px!important;
  gap:12px!important;
}

.hsba-v100-gantt-row label,
.hsba-v100-gantt-row b{
  font-size:13px!important;
}

.hsba-v100-activity-item strong{
  font-size:13px!important;
}

.hsba-v100-activity-item span{
  font-size:11.5px!important;
}

/* Sidebar / Topbar */
.hsba-v100-nav-item,
.hsba-portal button.hsba-v100-nav-item{
  min-height:44px!important;
  font-size:14px!important;
}

.hsba-v100-nav-item i{
  font-size:10px!important;
}

.hsba-v100-nav-item b{
  font-size:10px!important;
}

.hsba-v100-project-mini small{
  font-size:11px!important;
}

.hsba-v100-project-mini strong{
  font-size:14px!important;
}

.hsba-v100-project-mini span{
  font-size:12px!important;
}

.hsba-v100-switch>span{
  font-size:10px!important;
}

.hsba-v100-project-switch{
  font-size:14px!important;
}

.hsba-v100-top-user strong{
  font-size:13px!important;
}

.hsba-v100-top-user small{
  font-size:11px!important;
}

.hsba-v100-project-head p{
  font-size:15px!important;
}

.hsba-v100-progress span{
  font-size:12px!important;
}

/* Bauzeit – auch Gantt, Abhängigkeiten und Folgeverschiebungen. */
.hsba-v251-schedule-summary-main>span,
.hsba-v251-schedule-metric small,
.hsba-v252-gantt-head span,
.hsba-v252-gantt-head small,
.hsba-v252-gantt-row>span,
.hsba-v252-dependency-conflict p,
.hsba-v252-dependents span,
.hsba-v252-dependents small,
.hsba-v252-shift-head span,
.hsba-v252-shift-head small,
.hsba-v252-shift-list article>div:first-child span,
.hsba-v252-shift-dates s,
.hsba-v252-shift-dates strong{
  font-size:11px!important;
}

.hsba-v251-schedule-summary-main>small,
.hsba-v251-schedule-plan-grid span,
.hsba-v251-schedule-updated,
.hsba-v251-schedule-date span{
  font-size:12px!important;
}

.hsba-v251-schedule-title,
.hsba-v251-schedule-plan-grid strong,
.hsba-v252-gantt-head strong,
.hsba-v252-dependency-conflict strong,
.hsba-v252-dependents>strong,
.hsba-v252-shift-list article>div:first-child strong{
  font-size:13px!important;
}

.hsba-v251-schedule-main>small,
.hsba-v251-schedule-main>p,
.hsba-v251-schedule-update p,
.hsba-v251-schedule-impact p,
.hsba-v251-schedule-next p{
  font-size:12px!important;
}

/* Dokumente / Aufgaben / Termine / Freigaben / Beteiligte / To-dos:
   gemeinsame Informations- und Meta-Typografie. */
.hsba-portal .hsba-info-grid small,
.hsba-portal .hsba-info-grid span,
.hsba-portal .hsba-todo-meta,
.hsba-portal .hsba-v106-approval-meta,
.hsba-portal .hsba-v100-person-body,
.hsba-portal .hsba-v249-file-row small,
.hsba-portal .hsba-v249-folder-open-card small,
.hsba-portal .hsba-v230-person-protocol small{
  font-size:12px!important;
  line-height:1.45!important;
}

.hsba-portal .hsba-info-grid strong,
.hsba-portal .hsba-v100-person strong,
.hsba-portal .hsba-v249-file-row strong,
.hsba-portal .hsba-v249-folder-open-card strong,
.hsba-portal .hsba-v106-approval-title strong,
.hsba-portal .hsba-todo-title{
  font-size:14px!important;
  line-height:1.35!important;
}

/* Mobile/Tablet: nicht wieder auf Mikrogrößen zurückfallen. */
@media(max-width:900px){
  .hsba-portal{
    font-size:15px!important;
  }

  .hsba-v100-nav-item,
  .hsba-portal button.hsba-v100-nav-item{
    font-size:15px!important;
    min-height:48px!important;
  }

  .hsba-portal input:not([type="checkbox"]):not([type="radio"]),
  .hsba-portal select,
  .hsba-portal textarea{
    font-size:16px!important; /* verhindert iOS-Zoom und ist mobil besser lesbar */
  }

  .hsba-v253-project-profile-grid strong{
    font-size:15px!important;
  }

  .hsba-v253-project-profile-grid span,
  .hsba-v253-site-note p{
    font-size:13px!important;
  }
}


/* HS BAUAKTE v2.5.5 – Projekt-Steckbrief einklappbar */
.hsba-v253-project-profile{overflow:hidden!important}
.hsba-v253-project-profile>summary{list-style:none!important}
.hsba-v253-project-profile>summary::-webkit-details-marker{display:none!important}
.hsba-v253-project-profile-summary{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1.9fr) auto!important;align-items:center!important;gap:16px!important;padding:16px 18px!important;cursor:pointer!important;background:#fff!important}
.hsba-v253-project-profile-summary:hover{background:#f8fbff!important}
.hsba-v253-project-profile-summary-head{display:grid!important;gap:2px!important;min-width:0!important}
.hsba-v253-project-profile-summary-head span{color:var(--blue)!important;font-size:11px!important;font-weight:950!important;letter-spacing:.08em!important}
.hsba-v253-project-profile-summary-head strong{color:var(--ink)!important;font-size:18px!important;line-height:1.15!important}
.hsba-v253-project-profile-summary-head small{color:#82919c!important;font-size:12px!important;line-height:1.4!important}
.hsba-v253-project-profile-summary-meta{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;min-width:0!important}
.hsba-v253-project-profile-summary-meta span{display:inline-flex!important;align-items:center!important;min-height:34px!important;padding:6px 10px!important;border:1px solid #dde6ee!important;border-radius:999px!important;background:#fafcfe!important;color:#577082!important;font-size:12px!important;line-height:1.35!important}
.hsba-v253-project-profile-chevron{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;border:1px solid #d8e1e8!important;border-radius:999px!important;background:#fff!important;color:#36536a!important;font-style:normal!important;font-size:16px!important;transition:transform .18s ease!important}
.hsba-v253-project-profile[open] .hsba-v253-project-profile-chevron{transform:rotate(180deg)!important}
.hsba-v253-project-profile-content{display:grid!important;gap:14px!important;padding:0 18px 18px!important;border-top:1px solid #e7edf2!important}
@media(max-width:1100px){.hsba-v253-project-profile-summary{grid-template-columns:1fr!important;align-items:start!important}}
@media(max-width:720px){.hsba-v253-project-profile-summary{padding:14px!important;gap:12px!important}.hsba-v253-project-profile-content{padding:0 14px 14px!important}}


/* =========================================================
   HS BAUAKTE v2.5.6 – To-do-Erinnerungen / Nachverfolgung
========================================================= */
.hsba-v256-reminder-alert{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;
  margin:12px 0 16px!important;padding:14px 16px!important;border:1px solid #bfd4fb!important;border-radius:11px!important;background:#f3f7ff!important;
}
.hsba-v256-reminder-alert span{display:block!important;color:#2f6fed!important;font-size:11px!important;font-weight:950!important;letter-spacing:.08em!important}
.hsba-v256-reminder-alert strong{display:block!important;margin-top:2px!important;color:#173b68!important;font-size:16px!important}
.hsba-v256-reminder-alert p{margin:3px 0 0!important;color:#60758a!important;font-size:13px!important;line-height:1.45!important}
.hsba-v256-reminder-alert>b{display:flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;border-radius:999px!important;background:#2f6fed!important;color:#fff!important;font-size:20px!important}

.hsba-v256-reminder-history{display:grid!important;gap:7px!important;margin:10px 0!important}
.hsba-v256-reminder-history-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
.hsba-v256-reminder-history-head strong{color:#2f4e64!important;font-size:13px!important}
.hsba-v256-reminder-history-head span{color:#7c8d99!important;font-size:11px!important}
.hsba-v256-reminder-entry{display:grid!important;gap:7px!important;padding:11px 12px!important;border:1px solid #dce5eb!important;border-left:3px solid #8ca3b5!important;border-radius:9px!important;background:#fbfcfd!important}
.hsba-v256-reminder-entry.is-new{border-color:#b8cef7!important;border-left-color:#2f6fed!important;background:#f4f8ff!important}
.hsba-v256-reminder-entry-top{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important}
.hsba-v256-reminder-entry-top>div{min-width:0!important}
.hsba-v256-reminder-entry-top span{display:block!important;color:#2f6fed!important;font-size:10px!important;font-weight:950!important;letter-spacing:.06em!important}
.hsba-v256-reminder-entry-top strong{display:block!important;margin-top:2px!important;color:#18384e!important;font-size:13px!important}
.hsba-v256-reminder-entry-top time{flex:0 0 auto!important;color:#7f8f9a!important;font-size:11px!important}
.hsba-v256-reminder-entry>p{margin:0!important;color:#344f61!important;font-size:14px!important;line-height:1.5!important;white-space:normal!important}
.hsba-v256-reminder-delivery{display:flex!important;flex-wrap:wrap!important;gap:6px 12px!important;color:#778995!important;font-size:11px!important}
.hsba-v256-reminder-delivery b{color:#526b7c!important;font-weight:850!important}
.hsba-v256-reminder-read{justify-self:start!important;display:inline-flex!important;align-items:center!important;min-height:32px!important;padding:6px 9px!important;border:1px solid #bfd1ef!important;border-radius:7px!important;background:#fff!important;color:#2f6fed!important;font-size:12px!important;font-weight:850!important;text-decoration:none!important}
.hsba-v256-reminder-read:hover{background:#edf4ff!important}
.hsba-v256-reminder-history.is-manager .hsba-v256-reminder-entry{background:#fafcfd!important}

@media(max-width:720px){
  .hsba-v256-reminder-alert{align-items:flex-start!important}
  .hsba-v256-reminder-entry-top{display:grid!important;grid-template-columns:1fr!important}
  .hsba-v256-reminder-entry-top time{justify-self:start!important}
}


/* =========================================================
   HS BAUAKTE v2.5.7 – Sidebar Layout / niedrige Viewports
   Der komplette Sidebar-Inhalt scrollt nicht mehr als ein Block.
   Nur die Navigation scrollt; Kopf und Fuß bleiben stabil sichtbar.
========================================================= */

.hsba-v100-sidebar{
  box-sizing:border-box!important;
  overflow:hidden!important;
}

.hsba-v100-brand,
.hsba-v100-project-mini,
.hsba-v100-sidebar-bottom{
  flex:0 0 auto!important;
}

.hsba-v100-nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:#d5dee5 transparent!important;
  padding-right:3px!important;
}

.hsba-v100-nav::-webkit-scrollbar{
  width:5px!important;
}
.hsba-v100-nav::-webkit-scrollbar-track{
  background:transparent!important;
}
.hsba-v100-nav::-webkit-scrollbar-thumb{
  border-radius:999px!important;
  background:#d5dee5!important;
}
.hsba-v100-nav:hover::-webkit-scrollbar-thumb{
  background:#bfcbd4!important;
}

.hsba-v100-sidebar-bottom{
  margin-top:10px!important;
  padding-top:12px!important;
  background:#fff!important;
}

/* Desktop/Laptop mit geringer Höhe:
   Navigation bleibt vollständig bedienbar, ohne dass Online/App/Logout
   irgendwo mitten in der Sidebar hängen oder abgeschnitten werden. */
@media(min-width:821px) and (max-height:900px){
  .hsba-v100-sidebar{
    padding-top:14px!important;
    padding-bottom:10px!important;
  }

  .hsba-v100-brand{
    gap:9px!important;
    padding-bottom:12px!important;
  }

  .hsba-v100-brand>span{
    width:36px!important;
    height:36px!important;
    flex-basis:36px!important;
  }

  .hsba-v100-brand strong{
    font-size:15px!important;
  }

  .hsba-v100-brand small{
    font-size:12px!important;
  }

  .hsba-v100-project-mini{
    margin:10px 4px 8px!important;
    padding:10px 11px!important;
    gap:2px!important;
  }

  .hsba-v100-project-mini small{
    font-size:11px!important;
  }

  .hsba-v100-project-mini strong{
    font-size:14px!important;
    line-height:1.2!important;
  }

  .hsba-v100-project-mini span{
    font-size:12px!important;
  }

  .hsba-v100-nav{
    gap:1px!important;
  }

  .hsba-portal .hsba-v100-nav-item,
  .hsba-portal button.hsba-v100-nav-item{
    min-height:39px!important;
    padding:6px 8px!important;
    font-size:14px!important;
  }

  .hsba-v100-nav-item i{
    font-size:11px!important;
  }

  .hsba-v100-nav-item b{
    min-width:20px!important;
    height:20px!important;
    font-size:11px!important;
  }

  .hsba-v100-sidebar-bottom{
    gap:5px!important;
    margin-top:7px!important;
    padding:9px 6px 0!important;
  }

  .hsba-pwa-network{
    margin-bottom:2px!important;
    font-size:12px!important;
  }

  .hsba-portal .hsba-pwa-install,
  .hsba-portal button.hsba-pwa-install{
    min-height:36px!important;
    padding:7px 10px!important;
    font-size:12px!important;
  }

  .hsba-portal .hsba-v100-sidebar-bottom a,
  .hsba-portal .hsba-v100-sidebar-bottom a:visited{
    font-size:13px!important;
  }
}

/* Sehr niedrige Notebook-/Browserfenster:
   Projektstatus und Untertitel sparen Höhe, ohne wichtige Navigation
   oder die Projektbezeichnung zu entfernen. */
@media(min-width:821px) and (max-height:720px){
  .hsba-v100-brand small,
  .hsba-v100-project-mini span{
    display:none!important;
  }

  .hsba-v100-project-mini{
    margin-top:7px!important;
    margin-bottom:6px!important;
  }

  .hsba-portal .hsba-v100-nav-item,
  .hsba-portal button.hsba-v100-nav-item{
    min-height:36px!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
  }
}

/* Im mobilen Drawer ebenfalls: Kopf und Fuß bleiben stehen,
   nur die lange Navigation kann scrollen. */
@media(max-width:820px){
  .hsba-v100-sidebar{
    overflow:hidden!important;
  }

  .hsba-v100-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .hsba-v100-sidebar-bottom{
    padding-bottom:max(4px,env(safe-area-inset-bottom))!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.5.8 – To-do Dialog, Rückfragen & Nachweise
========================================================= */

.hsba-v258-status{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#eef3f7!important;
  color:#587080!important;
  font-size:11px!important;
  font-weight:900!important;
}

.hsba-v258-status.is-in_progress{
  background:#eaf2ff!important;
  color:#315fa9!important;
}

.hsba-v258-status.is-question{
  background:#fff2df!important;
  color:#96611e!important;
}

.hsba-v258-status.is-review{
  background:#f0eaff!important;
  color:#6948a8!important;
}

.hsba-v258-status.is-done{
  background:#eaf7ef!important;
  color:#34724f!important;
}

.hsba-v258-review-check{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f0eaff!important;
  color:#6948a8!important;
  font-weight:950!important;
  cursor:default!important;
}

.hsba-v258-thread{
  display:grid!important;
  gap:8px!important;
  margin-top:12px!important;
}

.hsba-v258-thread-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}

.hsba-v258-thread-head strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v258-thread-head span{
  color:#84939d!important;
  font-size:11px!important;
}

.hsba-v258-thread-entry{
  display:grid!important;
  gap:7px!important;
  padding:12px 13px!important;
  border:1px solid #dce5eb!important;
  border-left:3px solid #b9c8d3!important;
  border-radius:9px!important;
  background:#fff!important;
}

.hsba-v258-thread-entry.type-question{
  border-left-color:#d49b3d!important;
  background:#fffaf1!important;
}

.hsba-v258-thread-entry.type-completion{
  border-left-color:#7457b8!important;
  background:#fbf9ff!important;
}

.hsba-v258-thread-entry.type-review_approved{
  border-left-color:#4f8b69!important;
  background:#f7fcf9!important;
}

.hsba-v258-thread-entry.type-review_returned{
  border-left-color:#c66b61!important;
  background:#fff9f8!important;
}

.hsba-v258-thread-entry-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}

.hsba-v258-thread-entry-top>div{
  display:grid!important;
  gap:2px!important;
}

.hsba-v258-thread-entry-top span{
  color:var(--blue)!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
}

.hsba-v258-thread-entry-top strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v258-thread-entry-top time{
  color:#8b99a3!important;
  font-size:11px!important;
  white-space:nowrap!important;
}

.hsba-v258-thread-entry>p{
  margin:0!important;
  color:#506775!important;
  font-size:13px!important;
  line-height:1.5!important;
}

.hsba-v258-thread-files{
  display:flex!important;
  gap:7px!important;
  flex-wrap:wrap!important;
}

.hsba-v258-thread-files a{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:7px!important;
  align-items:center!important;
  min-width:220px!important;
  max-width:100%!important;
  padding:8px 9px!important;
  border:1px solid #dbe5ec!important;
  border-radius:8px!important;
  background:#f8fafc!important;
  color:#405d70!important;
  text-decoration:none!important;
}

.hsba-v258-thread-files a:hover{
  border-color:#aac2e8!important;
  background:#f4f8ff!important;
}

.hsba-v258-thread-files span{
  font-size:14px!important;
}

.hsba-v258-thread-files strong{
  overflow:hidden!important;
  font-size:12px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v258-thread-files small{
  color:#8a99a3!important;
  font-size:10.5px!important;
}

.hsba-v258-thread-form{
  display:grid!important;
  gap:9px!important;
  margin-top:12px!important;
  padding:12px!important;
  border:1px solid #d3dfeb!important;
  border-radius:10px!important;
  background:#f8fbff!important;
}

.hsba-v258-thread-form-head{
  display:grid!important;
  gap:2px!important;
}

.hsba-v258-thread-form-head strong{
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v258-thread-form-head small{
  color:#7f909c!important;
  font-size:11px!important;
}

.hsba-v258-thread-form-grid{
  display:grid!important;
  grid-template-columns:170px minmax(0,1fr)!important;
  gap:8px!important;
}

.hsba-v258-thread-form-grid label{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
}

.hsba-v258-thread-form-grid label.span-2{
  grid-column:1/-1!important;
}

.hsba-v258-thread-form-grid label>span{
  color:#627987!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v258-thread-form-grid label>small{
  color:#8997a1!important;
  font-size:10.5px!important;
}

.hsba-v258-thread-form-grid select,
.hsba-v258-thread-form-grid textarea,
.hsba-v258-thread-form-grid input[type="file"]{
  width:100%!important;
  border:1px solid #c9d7e2!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v258-thread-form-grid select{
  min-height:40px!important;
  padding:7px 8px!important;
}

.hsba-v258-thread-form-grid textarea{
  min-height:80px!important;
  padding:8px 9px!important;
  resize:vertical!important;
}

.hsba-v258-thread-form-grid input[type="file"]{
  min-height:42px!important;
  padding:7px!important;
}

.hsba-portal .hsba-v258-thread-submit{
  justify-self:start!important;
  min-height:38px!important;
  padding:8px 11px!important;
  border:0!important;
  border-radius:8px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v258-submitted{
  display:grid!important;
  gap:5px!important;
  margin-top:12px!important;
  padding:12px 13px!important;
  border:1px solid #d9cff0!important;
  border-left:3px solid #7457b8!important;
  border-radius:9px!important;
  background:#fbf9ff!important;
}

.hsba-v258-submitted>span{
  color:#6948a8!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.05em!important;
}

.hsba-v258-submitted>p{
  margin:0!important;
  color:#544a68!important;
  font-size:13px!important;
  line-height:1.5!important;
}

.hsba-v258-submitted>small{
  color:#8b819d!important;
  font-size:11px!important;
}

.hsba-v258-review-box{
  display:grid!important;
  gap:10px!important;
  margin-top:12px!important;
  padding:13px!important;
  border:1px solid #d7ccee!important;
  border-radius:10px!important;
  background:#fbf9ff!important;
}

.hsba-v258-review-box>div:first-child{
  display:grid!important;
  gap:3px!important;
}

.hsba-v258-review-box>div:first-child>span{
  color:#704eae!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
}

.hsba-v258-review-box>div:first-child>strong{
  color:#43385b!important;
  font-size:14px!important;
}

.hsba-v258-review-box>div:first-child>p{
  margin:0!important;
  color:#776d86!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.hsba-v258-review-box form{
  display:grid!important;
  gap:8px!important;
}

.hsba-v258-review-box label{
  display:grid!important;
  gap:4px!important;
}

.hsba-v258-review-box label>span{
  color:#6f6480!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v258-review-box textarea{
  width:100%!important;
  min-height:74px!important;
  padding:8px 9px!important;
  border:1px solid #cfc3e6!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:13px!important;
  resize:vertical!important;
}

.hsba-v258-review-box form>div{
  display:flex!important;
  gap:7px!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
}

.hsba-v258-review-box button{
  min-height:38px!important;
  padding:8px 11px!important;
  border-radius:8px!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v258-review-box button.is-return{
  border:1px solid #d5a8a3!important;
  background:#fff!important;
  color:#a54d46!important;
}

.hsba-v258-review-box button.is-approve{
  border:0!important;
  background:#3f805c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

.hsba-v114-complete-panel input[type="file"]{
  width:100%!important;
  min-height:42px!important;
  padding:7px!important;
  border:1px solid #cbd8e2!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:12px!important;
}

.hsba-v114-complete-panel label>small{
  color:#8796a1!important;
  font-size:10.5px!important;
}

@media(max-width:760px){
  .hsba-v258-thread-form-grid{
    grid-template-columns:1fr!important;
  }

  .hsba-v258-thread-form-grid label.span-2{
    grid-column:auto!important;
  }

  .hsba-v258-thread-files a{
    min-width:100%!important;
  }

  .hsba-v258-review-box form>div{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .hsba-v258-review-box button{
    width:100%!important;
  }
}


.hsba-v258-approved-check{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#eaf7ef!important;
  color:#34724f!important;
  font-weight:950!important;
  cursor:default!important;
}

/* =========================================================
   HS BAUAKTE v2.5.9 – Bauzeit: Abschnitte, Zoom & verschiebbares Zeitfenster
========================================================= */

.hsba-v259-plan-tools{
  display:grid!important;
  gap:10px!important;
  padding:13px!important;
  border:1px solid #cfdef3!important;
  border-radius:11px!important;
  background:#f7faff!important;
}

.hsba-v259-plan-tools-head>div{
  display:grid!important;
  gap:2px!important;
}

.hsba-v259-plan-tools-head span{
  color:var(--blue)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.07em!important;
}

.hsba-v259-plan-tools-head strong{
  color:var(--ink)!important;
  font-size:15px!important;
}

.hsba-v259-plan-tools-head small{
  color:#718695!important;
  font-size:11px!important;
}

.hsba-v259-plan-tool-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}

.hsba-v259-tool{
  border:1px solid #d6e1eb!important;
  border-radius:9px!important;
  background:#fff!important;
  overflow:hidden!important;
}

.hsba-v259-tool>summary{
  padding:10px 11px!important;
  list-style:none!important;
  color:#315fa8!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.hsba-v259-tool>summary::-webkit-details-marker{display:none!important}

.hsba-v259-tool form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  padding:0 11px 11px!important;
}

.hsba-v259-tool label{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}

.hsba-v259-tool label>span{
  color:#637987!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v259-tool input,
.hsba-v259-tool select{
  width:100%!important;
  min-height:39px!important;
  padding:7px 8px!important;
  border:1px solid #cbd8e2!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v259-tool button{
  grid-column:1/-1!important;
  justify-self:start!important;
  min-height:38px!important;
  padding:8px 11px!important;
  border:0!important;
  border-radius:8px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

/* Zoom-/Pan-Kalender */
.hsba-v259-gantt{
  display:grid!important;
  gap:8px!important;
  padding:13px!important;
  border:1px solid #dce5eb!important;
  border-radius:11px!important;
  background:#fff!important;
  overflow:hidden!important;
}

.hsba-v259-gantt-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:14px!important;
}

.hsba-v259-gantt-title{
  display:grid!important;
  gap:2px!important;
}

.hsba-v259-gantt-title>span{
  color:var(--blue)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.07em!important;
}

.hsba-v259-gantt-title>strong{
  color:var(--ink)!important;
  font-size:15px!important;
}

.hsba-v259-gantt-title>small{
  color:#758895!important;
  font-size:11px!important;
}

.hsba-v259-gantt-controls{
  display:flex!important;
  align-items:end!important;
  gap:5px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}

.hsba-v259-gantt-controls button{
  min-width:36px!important;
  min-height:36px!important;
  padding:6px 9px!important;
  border:1px solid #cad8e3!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#476477!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v259-gantt-controls button:hover:not(:disabled){
  border-color:#9db9e3!important;
  color:#315fa8!important;
  background:#f7faff!important;
}

.hsba-v259-gantt-controls button:disabled{
  opacity:.42!important;
  cursor:default!important;
}

.hsba-v259-gantt-controls label{
  display:grid!important;
  gap:2px!important;
  margin-left:4px!important;
}

.hsba-v259-gantt-controls label>span{
  color:#83939e!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v259-gantt-controls select{
  min-height:36px!important;
  padding:6px 28px 6px 8px!important;
  border:1px solid #cad8e3!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#425f72!important;
  font-size:12px!important;
  font-weight:800!important;
}

.hsba-v259-gantt-note{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:6px 8px!important;
  border-radius:7px!important;
  background:#f8fafc!important;
}

.hsba-v259-gantt-note>span{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  color:#a34c45!important;
  font-size:11.5px!important;
  font-weight:900!important;
}

.hsba-v259-gantt-note>span i{
  display:block!important;
  width:2px!important;
  height:15px!important;
  background:#d85e54!important;
}

.hsba-v259-gantt-note small{
  color:#80909b!important;
  font-size:11.5px!important;
  text-align:right!important;
}

.hsba-v259-gantt-body{
  display:grid!important;
  gap:8px!important;
  cursor:grab!important;
  touch-action:pan-y!important;
}

.hsba-v259-gantt-body.is-dragging{
  cursor:grabbing!important;
  user-select:none!important;
}

.hsba-v259-gantt-section{
  display:grid!important;
  gap:4px!important;
}

.hsba-v259-gantt-section-title{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:10px!important;
  padding:5px 0 3px!important;
  border-bottom:1px solid #e8edf1!important;
}

.hsba-v259-gantt-section-title strong{
  color:#3f596b!important;
  font-size:11px!important;
  font-weight:900!important;
}

.hsba-v259-gantt-section-title span{
  color:#8998a2!important;
  font-size:11px!important;
}

.hsba-v259-gantt-row{
  display:grid!important;
  grid-template-columns:180px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  min-height:23px!important;
}

.hsba-v259-gantt-row>span{
  overflow:hidden!important;
  color:#5f7584!important;
  font-size:11.5px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.hsba-v259-gantt-track{
  position:relative!important;
  height:14px!important;
  border-radius:4px!important;
  background:
    repeating-linear-gradient(to right,#f4f7f9 0,#f4f7f9 calc(10% - 1px),#e6ecef calc(10% - 1px),#e6ecef 10%)!important;
  overflow:visible!important;
}

.hsba-v259-gantt-bar{
  position:absolute!important;
  z-index:2!important;
  top:3px!important;
  left:0;
  width:1%;
  height:8px!important;
  border-radius:999px!important;
  background:var(--bar)!important;
  opacity:.86!important;
}

.hsba-v259-gantt-bar.risk-critical{
  box-shadow:0 0 0 2px rgba(169,68,68,.23)!important;
}

.hsba-v259-gantt-bar.status-completed{
  opacity:.42!important;
}

/* Heute-Linie sitzt IN jeder echten Timeline-Spur. Dadurch gibt es keinen
   fehleranfälligen Pixel-Offset zur linken Beschriftung mehr. */
.hsba-v259-gantt-today{
  position:absolute!important;
  z-index:5!important;
  top:-3px!important;
  bottom:-3px!important;
  width:2px!important;
  transform:translateX(-1px)!important;
  background:#d85e54!important;
  pointer-events:none!important;
}

.hsba-v259-gantt-today b{
  display:none!important;
  position:absolute!important;
  left:50%!important;
  bottom:calc(100% + 5px)!important;
  transform:translateX(-50%)!important;
  padding:2px 5px!important;
  border-radius:999px!important;
  background:#fff0ef!important;
  color:#a54c45!important;
  font-size:11px!important;
  font-weight:950!important;
  white-space:nowrap!important;
}

.hsba-v259-gantt-today.is-label b{
  display:block!important;
}

.hsba-v259-gantt-empty{
  padding:24px 12px!important;
  border:1px dashed #d3dde4!important;
  border-radius:8px!important;
  color:#85949e!important;
  font-size:12px!important;
  text-align:center!important;
}

/* Gliederung der langen Vorgangsliste */
.hsba-v259-sectioned-list{
  gap:10px!important;
}

.hsba-v259-schedule-section{
  border:1px solid #d8e2e9!important;
  border-radius:11px!important;
  background:#fff!important;
  overflow:hidden!important;
}

.hsba-v259-schedule-section>summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 20px!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px 13px!important;
  list-style:none!important;
  cursor:pointer!important;
  background:#f8fafc!important;
}
.hsba-v259-schedule-section>summary::-webkit-details-marker{display:none!important}

.hsba-v259-schedule-section>summary>div:first-child{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}

.hsba-v259-schedule-section>summary>div:first-child>span{
  color:var(--blue)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
}

.hsba-v259-schedule-section>summary>div:first-child>strong{
  color:var(--ink)!important;
  font-size:14px!important;
}

.hsba-v259-schedule-section>summary>div:first-child>small{
  color:#80909b!important;
  font-size:11.5px!important;
}

.hsba-v259-section-summary-meta{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}

.hsba-v259-section-summary-meta span,
.hsba-v259-section-summary-meta b{
  padding:4px 6px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#718591!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v259-section-summary-meta b{
  background:#eaf2ff!important;
  color:#315fa8!important;
}

.hsba-v259-schedule-section>summary>i{
  color:#607686!important;
  font-size:15px!important;
  font-style:normal!important;
  transition:transform .18s ease!important;
}

.hsba-v259-schedule-section[open]>summary>i{
  transform:rotate(180deg)!important;
}

.hsba-v259-schedule-section-body{
  display:grid!important;
  gap:7px!important;
  padding:8px!important;
}

.hsba-v259-section-manage{
  border:1px dashed #c8d7e4!important;
  border-radius:8px!important;
  background:#f9fbfd!important;
}

.hsba-v259-section-manage>summary{
  padding:7px 9px!important;
  list-style:none!important;
  color:#5f7787!important;
  font-size:11.5px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.hsba-v259-section-manage>summary::-webkit-details-marker{display:none!important}

.hsba-v259-section-manage>div{
  display:grid!important;
  gap:6px!important;
  padding:0 9px 9px!important;
}

.hsba-v259-section-manage form{
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}

.hsba-v259-section-manage input{
  flex:1 1 180px!important;
  min-height:36px!important;
  padding:6px 8px!important;
  border:1px solid #cbd8e2!important;
  border-radius:7px!important;
  background:#fff!important;
  font-size:11.5px!important;
}

.hsba-v259-section-manage button{
  min-height:36px!important;
  padding:6px 9px!important;
  border:1px solid #b8cbe1!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#44657a!important;
  font-size:11.5px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.hsba-v259-section-manage button.is-danger{
  border-color:#e2b4b0!important;
  color:#a14f48!important;
}

@media(max-width:900px){
  .hsba-v259-plan-tool-grid{
    grid-template-columns:1fr!important;
  }

  .hsba-v259-gantt-head,
  .hsba-v259-gantt-note{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .hsba-v259-gantt-controls{
    justify-content:flex-start!important;
  }

  .hsba-v259-gantt-note small{
    text-align:left!important;
  }

  .hsba-v259-gantt{
    overflow-x:auto!important;
  }

  .hsba-v259-gantt-head,
  .hsba-v259-gantt-note,
  .hsba-v259-gantt-body{
    min-width:700px!important;
  }

  .hsba-v259-gantt-row{
    grid-template-columns:150px minmax(0,1fr)!important;
  }
}

@media(max-width:700px){
  .hsba-v259-tool form{
    grid-template-columns:1fr!important;
  }

  .hsba-v259-schedule-section>summary{
    grid-template-columns:1fr 20px!important;
  }

  .hsba-v259-section-summary-meta{
    grid-column:1!important;
    justify-content:flex-start!important;
  }

  .hsba-v259-schedule-section>summary>i{
    grid-column:2!important;
    grid-row:1/3!important;
  }
}

.hsba-v259-empty-section-note{
  padding:14px 12px!important;
  border:1px dashed #d3dee6!important;
  border-radius:8px!important;
  background:#fbfcfd!important;
  color:#81919c!important;
  font-size:11.5px!important;
  text-align:center!important;
}


/* =========================================================
   HS BAUAKTE v2.6.0 – Wiederkehrende To-dos & Termine
========================================================= */

.hsba-v260-recurrence-note{
  padding:10px 11px!important;
  border:1px solid #ccdcf2!important;
  border-radius:9px!important;
  background:#f5f8ff!important;
  color:#60789a!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.hsba-v260-recurrence-row{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  margin-top:7px!important;
}

.hsba-v260-recurrence-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:26px!important;
  padding:4px 8px!important;
  border:1px solid #c9daf4!important;
  border-radius:999px!important;
  background:#f3f7ff!important;
  color:#315fa9!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.2!important;
}

.hsba-v260-recurrence-stop{
  display:inline-flex!important;
  align-items:center!important;
  min-height:26px!important;
  padding:4px 8px!important;
  border:1px solid #dfb6b1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#a34f48!important;
  font-size:11px!important;
  font-weight:850!important;
  text-decoration:none!important;
}

.hsba-v260-recurrence-stop:hover{
  background:#fff7f6!important;
}

.hsba-v260-recurrence-manage{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin-top:10px!important;
  padding:9px 10px!important;
  border:1px solid #d5e0ef!important;
  border-radius:9px!important;
  background:#f8faff!important;
}

.hsba-v260-recurrence-manage>small{
  flex:1 1 260px!important;
  color:#7e8f9c!important;
  font-size:11px!important;
  line-height:1.4!important;
}

.hsba-v100-appointment summary .hsba-v260-recurrence-row{
  margin-top:5px!important;
}

.hsba-v100-appointment summary .hsba-v260-recurrence-badge{
  min-height:22px!important;
  padding:3px 7px!important;
  font-size:10.5px!important;
}

@media(max-width:720px){
  .hsba-v260-recurrence-manage{
    align-items:flex-start!important;
  }

  .hsba-v260-recurrence-stop{
    min-height:34px!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.6.1 – Bauzeitenplan UI-Rebuild
========================================================= */

/* Wichtig: ältere display:grid !important Regeln dürfen [hidden] nicht aushebeln. */
.hsba-v261-gantt [hidden]{
  display:none!important;
}

/* -------------------------
   Funktionale Zeitachse
------------------------- */

.hsba-v261-gantt{
  --hsba-gantt-label:180px;
  --hsba-gantt-gap:9px;
}

.hsba-v261-gantt-controls{
  align-items:flex-end!important;
}

.hsba-v261-gantt-controls label input[type="date"]{
  min-height:36px!important;
  padding:6px 8px!important;
  border:1px solid #cad8e3!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#425f72!important;
  font-size:12px!important;
  font-weight:800!important;
}

.hsba-v261-window-bar{
  display:grid!important;
  grid-template-columns:auto minmax(140px,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:8px 10px!important;
  border:1px solid #e0e7ec!important;
  border-radius:8px!important;
  background:#fafcfd!important;
}

.hsba-v261-window-bar>span{
  color:#627988!important;
  font-size:11px!important;
  font-weight:900!important;
}

.hsba-v261-window-bar>small{
  color:#738895!important;
  font-size:11px!important;
  white-space:nowrap!important;
}

.hsba-v261-window-bar input[type="range"]{
  width:100%!important;
  accent-color:var(--blue)!important;
  cursor:ew-resize!important;
}

.hsba-v261-window-bar input[type="range"]:disabled{
  opacity:.35!important;
  cursor:default!important;
}

.hsba-v261-gantt-body{
  position:relative!important;
  display:grid!important;
  gap:8px!important;
}

.hsba-v261-gantt-axis{
  display:grid!important;
  grid-template-columns:var(--hsba-gantt-label) minmax(0,1fr)!important;
  gap:var(--hsba-gantt-gap)!important;
  align-items:end!important;
  min-height:38px!important;
  position:relative!important;
  z-index:7!important;
  background:#fff!important;
}

.hsba-v261-gantt-axis>span{
  color:#80909b!important;
  font-size:10.5px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.hsba-v261-gantt-axis-track{
  position:relative!important;
  height:34px!important;
  border-bottom:1px solid #dce4ea!important;
}

.hsba-v261-axis-tick{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  transform:translateX(-50%)!important;
  display:grid!important;
  align-content:end!important;
  justify-items:center!important;
  gap:0!important;
  pointer-events:none!important;
}

.hsba-v261-axis-tick:first-child{
  transform:none!important;
  justify-items:start!important;
}

.hsba-v261-axis-tick:last-child{
  transform:translateX(-100%)!important;
  justify-items:end!important;
}

.hsba-v261-axis-tick>i{
  position:absolute!important;
  left:50%!important;
  bottom:-1px!important;
  width:1px!important;
  height:10px!important;
  background:#cfd9e0!important;
}

.hsba-v261-axis-tick:first-child>i{
  left:0!important;
}

.hsba-v261-axis-tick:last-child>i{
  left:100%!important;
}

.hsba-v261-axis-tick>b{
  color:#526b7b!important;
  font-size:10.5px!important;
  font-weight:900!important;
}

.hsba-v261-axis-tick>small{
  color:#96a2aa!important;
  font-size:9.5px!important;
  line-height:1.15!important;
}

.hsba-v261-gantt .hsba-v259-gantt-row{
  grid-template-columns:var(--hsba-gantt-label) minmax(0,1fr)!important;
  gap:var(--hsba-gantt-gap)!important;
}

.hsba-v261-gantt .hsba-v259-gantt-track{
  overflow:hidden!important;
  background:
    repeating-linear-gradient(
      to right,
      #f4f7f9 0,
      #f4f7f9 calc(10% - 1px),
      #e4eaee calc(10% - 1px),
      #e4eaee 10%
    )!important;
}

/* Eine einzige Heute-Linie über die gesamte sichtbare Timeline. */
.hsba-v261-gantt-today{
  position:absolute!important;
  z-index:6!important;
  bottom:0!important;
  width:2px!important;
  transform:translateX(-1px)!important;
  background:#df5b50!important;
  pointer-events:none!important;
}

.hsba-v261-gantt-today>b{
  position:absolute!important;
  top:-19px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  background:#fff0ef!important;
  color:#a64842!important;
  font-size:10.5px!important;
  font-weight:950!important;
  white-space:nowrap!important;
  box-shadow:0 1px 2px rgba(62,48,46,.08)!important;
}

/* Die alten Zeilen-Marker werden in 2.6.1 nicht mehr gerendert. */
.hsba-v261-gantt .hsba-v259-gantt-today{
  display:none!important;
}

.hsba-v261-gantt .hsba-v259-gantt-empty{
  margin-top:5px!important;
}

/* -------------------------
   Teilvorgang direkt im Abschnitt
------------------------- */

.hsba-v261-section-add{
  border:1px solid #c8d9f3!important;
  border-radius:9px!important;
  background:#f7faff!important;
  overflow:hidden!important;
}

.hsba-v261-section-add>summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:9px 11px!important;
  list-style:none!important;
  cursor:pointer!important;
}

.hsba-v261-section-add>summary::-webkit-details-marker{
  display:none!important;
}

.hsba-v261-section-add>summary>span{
  color:#315fa8!important;
  font-size:12px!important;
  font-weight:950!important;
}

.hsba-v261-section-add>summary>small{
  color:#7d8f9b!important;
  font-size:11px!important;
}

.hsba-v261-section-add form{
  display:grid!important;
  gap:10px!important;
  padding:0 11px 11px!important;
}

.hsba-v261-section-add-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}

.hsba-v261-section-add-grid label{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
}

.hsba-v261-section-add-grid label.span-2{
  grid-column:1/-1!important;
}

.hsba-v261-section-add-grid label>span{
  color:#5f7685!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v261-section-add-grid label>small{
  color:#8b99a2!important;
  font-size:10.5px!important;
  line-height:1.35!important;
}

.hsba-v261-section-add-grid input,
.hsba-v261-section-add-grid select{
  width:100%!important;
  min-height:39px!important;
  padding:7px 8px!important;
  border:1px solid #cad8e2!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:12px!important;
}

.hsba-v261-section-add-actions{
  display:flex!important;
  justify-content:flex-end!important;
}

.hsba-v261-section-add-actions button{
  min-height:38px!important;
  padding:8px 11px!important;
  border:0!important;
  border-radius:8px!important;
  background:var(--blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

/* Abschnitt bearbeiten ist jetzt sekundär; Teilvorgang hinzufügen steht zuerst. */
.hsba-v259-section-manage{
  background:#fbfcfd!important;
}

/* Erfolgssprung: der bearbeitete Abschnitt bleibt sichtbar. */
.hsba-v259-schedule-section[id]{
  scroll-margin-top:100px!important;
}

@media(max-width:900px){
  .hsba-v261-gantt{
    --hsba-gantt-label:150px;
  }

  .hsba-v261-window-bar{
    grid-template-columns:1fr!important;
  }

  .hsba-v261-window-bar>small{
    white-space:normal!important;
  }
}

@media(max-width:700px){
  .hsba-v261-section-add-grid{
    grid-template-columns:1fr!important;
  }

  .hsba-v261-section-add-grid label.span-2{
    grid-column:auto!important;
  }

  .hsba-v261-section-add>summary{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .hsba-v261-section-add-actions button{
    width:100%!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.6.2 – To-do Datum / Uhrzeit
========================================================= */

.hsba-v262-due-pair{
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(130px,.75fr)!important;
  gap:8px!important;
  min-width:0!important;
}

.hsba-v262-due-pair label{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}

.hsba-v262-due-pair label>span{
  color:#5f7685!important;
  font-size:11px!important;
  font-weight:850!important;
}

.hsba-v262-due-pair input,
.hsba-v262-due-pair select{
  width:100%!important;
  min-height:40px!important;
  padding:7px 8px!important;
  border:1px solid #cad8e2!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v262-due-pair select{
  cursor:pointer!important;
}

[data-todo-series-end][hidden],
[data-todo-recurrence-note][hidden]{
  display:none!important;
}

@media(max-width:700px){
  .hsba-v262-due-pair{
    grid-template-columns:1fr!important;
  }

  .hsba-v262-due-pair input,
  .hsba-v262-due-pair select{
    font-size:16px!important;
  }
}


/* =========================================================
   HS BAUAKTE v2.6.4 – KW-Filter & Freigabe-To-dos
========================================================= */

/* KW-Filter muss auch die lange Detailansicht wirklich ausblenden können. */
[data-schedule-detail-row][hidden],
[data-schedule-list-section][hidden]{
  display:none!important;
}

.hsba-v261-gantt-controls label select[data-gantt-kw]{
  min-width:190px!important;
}

.hsba-v264-upload-approval{
  margin-top:14px!important;
  padding:13px!important;
  border:1px solid #cddbf0!important;
  border-radius:10px!important;
  background:#f7faff!important;
}

.hsba-v264-upload-approval>.hsba-check{
  align-items:flex-start!important;
}

.hsba-v264-upload-approval>.hsba-check>span{
  display:grid!important;
  gap:3px!important;
}

.hsba-v264-upload-approval>.hsba-check strong{
  color:#244f90!important;
  font-size:13px!important;
}

.hsba-v264-upload-approval>.hsba-check small{
  color:#71879a!important;
  font-size:11px!important;
  line-height:1.4!important;
}

.hsba-v264-approval-options{
  margin-top:11px!important;
  padding-top:11px!important;
  border-top:1px solid #dbe5f2!important;
}

.hsba-v264-approval-options>label{
  display:grid!important;
  gap:4px!important;
  max-width:320px!important;
}

.hsba-v264-approval-options>label>span{
  color:#526d80!important;
  font-size:11px!important;
  font-weight:900!important;
}

.hsba-v264-approval-options input[type="date"]{
  min-height:40px!important;
  padding:7px 8px!important;
  border:1px solid #c7d6e3!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

.hsba-v264-approval-todo-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:23px!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#fff0da!important;
  color:#8c5a16!important;
  font-size:10.5px!important;
  font-weight:900!important;
}

.hsba-v264-approval-todo-check{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff0da!important;
  color:#8c5a16!important;
  font-weight:950!important;
}

.hsba-portal .hsba-v264-approval-action{
  font-weight:900!important;
  color:#2f6fed!important;
  -webkit-text-fill-color:#2f6fed!important;
}

@media(max-width:760px){
  .hsba-v261-gantt-controls label select[data-gantt-kw]{
    min-width:0!important;
    width:100%!important;
  }

  .hsba-v264-approval-options>label{
    max-width:none!important;
  }
}


.hsba-upload-recipients label.is-disabled-for-approval{
  opacity:.48!important;
}

.hsba-upload-recipients label.is-disabled-for-approval span::after{
  content:" · für Freigabe nicht verfügbar"!important;
  font-size:10px!important;
  color:#9a6d67!important;
}


/* =========================================================
   HS BAUAKTE v2.6.5 – Einklappbare große Eingabebereiche
========================================================= */

.hsba-v265-collapse-head{
  position:relative!important;
  padding-right:116px!important;
}

.hsba-v265-collapse-toggle{
  position:absolute!important;
  top:50%!important;
  right:0!important;
  transform:translateY(-50%)!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:34px!important;
  padding:5px 8px 5px 10px!important;
  border:1px solid #cfdae5!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#526c7e!important;
  -webkit-text-fill-color:#526c7e!important;
  cursor:pointer!important;
}

.hsba-v265-collapse-toggle small{
  font-size:10.5px!important;
  font-weight:850!important;
}

.hsba-v265-collapse-toggle span{
  display:inline-flex!important;
  width:21px!important;
  height:21px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:6px!important;
  background:#edf4ff!important;
  color:#2f6fed!important;
  -webkit-text-fill-color:#2f6fed!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:900!important;
}

.hsba-v265-collapsible-field.is-collapsed > :not(.hsba-v100-section-title):not(.hsba-manager-pane-head):not(.hsba-v242-edit-head){
  display:none!important;
}

/* Manager-Tab bleibt als kompakte Kopfzeile sichtbar. */
.hsba-manager-pane.hsba-v265-collapsible-field{
  padding-top:0!important;
}

.hsba-manager-pane.hsba-v265-collapsible-field>.hsba-manager-pane-head{
  margin-bottom:0!important;
  min-height:58px!important;
}

/* Eigenes To-do */
.hsba-v265-standalone-collapsible{
  display:block!important;
}

.hsba-v265-standalone-toggle{
  width:100%!important;
  min-height:58px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:15px!important;
  padding:11px 14px!important;
  border:1px solid #d2dee7!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-align:left!important;
  cursor:pointer!important;
}

.hsba-v265-standalone-toggle>span{
  display:grid!important;
  gap:2px!important;
}

.hsba-v265-standalone-toggle b{
  font-size:13px!important;
  font-weight:900!important;
}

.hsba-v265-standalone-toggle small{
  color:#81919c!important;
  font-size:11px!important;
}

.hsba-v265-standalone-toggle i{
  width:26px!important;
  height:26px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:7px!important;
  background:#edf4ff!important;
  color:#2f6fed!important;
  font-size:18px!important;
  font-style:normal!important;
  font-weight:900!important;
}

.hsba-v265-standalone-collapsible.is-collapsed>.hsba-v100-todo-create{
  display:none!important;
}

.hsba-v265-standalone-collapsible:not(.is-collapsed)>.hsba-v265-standalone-toggle{
  margin-bottom:9px!important;
}

/* Schritte in Neue Baubesprechung */
.hsba-v265-step-collapsible>.hsba-v242-form-section-head{
  position:relative!important;
  padding-right:42px!important;
  cursor:pointer!important;
}

.hsba-v265-step-toggle{
  position:absolute!important;
  right:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:28px!important;
  height:28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #cedae5!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#2f6fed!important;
  -webkit-text-fill-color:#2f6fed!important;
  cursor:pointer!important;
}

.hsba-v265-step-toggle span{
  font-size:17px!important;
  line-height:1!important;
  font-weight:900!important;
}

.hsba-v265-step-collapsible.is-collapsed > :not(.hsba-v242-form-section-head){
  display:none!important;
}

.hsba-v265-step-collapsible.is-collapsed{
  padding-bottom:10px!important;
}

/* Meeting-Abschluss */
.hsba-v265-meeting-actions{
  align-items:center!important;
  flex-wrap:wrap!important;
}

.hsba-v265-close-meeting button{
  border-color:#9bc9b2!important;
  background:#effaf4!important;
  color:#24734a!important;
  -webkit-text-fill-color:#24734a!important;
  font-weight:900!important;
}

.hsba-v265-reopen-meeting button{
  border-color:#c9d8e5!important;
  background:#fff!important;
  color:#466476!important;
  -webkit-text-fill-color:#466476!important;
  font-weight:850!important;
}

.hsba-v265-closed-state{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}

.hsba-v265-closed-state strong{
  display:inline-flex!important;
  min-height:27px!important;
  align-items:center!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:#eaf8ef!important;
  color:#237047!important;
  font-size:11px!important;
  font-weight:950!important;
}

.hsba-v265-closed-state span{
  color:#758895!important;
  font-size:11px!important;
}

.hsba-v241-meeting-card.is-closed{
  border-left:3px solid #58a879!important;
}

.hsba-v265-protocol-closed{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:15px!important;
  margin-top:13px!important;
  padding:12px 13px!important;
  border:1px solid #b9ddc7!important;
  border-radius:9px!important;
  background:#f3fbf6!important;
}

.hsba-v265-protocol-closed>div{
  display:grid!important;
  gap:3px!important;
}

.hsba-v265-protocol-closed span{
  color:#39805a!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.05em!important;
}

.hsba-v265-protocol-closed strong{
  color:#244c36!important;
  font-size:13px!important;
}

.hsba-v265-protocol-closed p{
  margin:0!important;
  color:#61766a!important;
  font-size:11px!important;
  line-height:1.45!important;
}

.hsba-v265-protocol-closed>small{
  color:#758b7e!important;
  font-size:10.5px!important;
  white-space:nowrap!important;
}

@media(max-width:720px){
  .hsba-v265-collapse-head{
    padding-right:46px!important;
  }

  .hsba-v265-collapse-toggle{
    right:0!important;
    min-width:34px!important;
    padding:5px 6px!important;
  }

  .hsba-v265-collapse-toggle small{
    display:none!important;
  }

  .hsba-v265-protocol-closed{
    display:grid!important;
  }

  .hsba-v265-protocol-closed>small{
    white-space:normal!important;
  }
}


.hsba-v265-meeting-closed-badge{
  display:inline-flex!important;
  align-items:center!important;
  margin-right:5px!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  background:#eaf8ef!important;
  color:#237047!important;
  font-size:9.5px!important;
  font-weight:950!important;
}


.hsba-v265-close-wait{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:#f1f4f6!important;
  color:#7b8b96!important;
  font-size:10.5px!important;
  font-weight:800!important;
}
