/*
  SPRINGWERK – Portal/Admin UI helpers
  Ziel: Inline-Styles aus PHP-Views entfernen, ohne Business-Logik anzufassen.
*/

/* Hero alignment for portal/admin pages */
.heroText.sw-heroText-left{
  text-align:left;
  max-width:100%;
  margin:0;
}

/* compact hero subline (no big auto-margins) */
.heroText.sw-heroText-left .sub{
  margin:0;
}

/* Full width form cards (default .form is max-width:720px) */
.form.full{ max-width:100%; }

/* Single-column form rows (default .formRow is 2 cols) */
.formRow.one{ grid-template-columns:1fr; }

/* Force one-column grid on desktop */
.grid.one{ grid-template-columns:1fr; }

/* Scroll wrapper for wide tables */
.sw-tableWrap{ overflow:auto; }

/* Right aligned + no-wrap cells */
.sw-tright{ text-align:right; white-space:nowrap; }

/* Small button padding for table actions */
.btn.sw-btn-sm{ padding:8px 12px; border-radius:12px; }

/* Active card highlight (used in partner packages) */
.card.sw-card-active{
  border-color:rgba(79,138,106,.55);
  background:rgba(79,138,106,.10);
}

/* Simple utility helpers */
.sw-m0{ margin:0 !important; }
.sw-mt8{ margin-top:8px !important; }
.sw-mt10{ margin-top:10px !important; }
.sw-mt16{ margin-top:16px !important; }
.sw-mt18{ margin-top:18px !important; }
.sw-mb8{ margin-bottom:8px !important; }
.sw-mb10{ margin-bottom:10px !important; }
.sw-mb12{ margin-bottom:12px !important; }
.sw-ml8{ margin-left:8px !important; }

.sw-op90{ opacity:.9; }
.sw-op85{ opacity:.85; }
.sw-op80{ opacity:.8; }

/* Muted paragraph helper */
.sw-mutedP{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

/* Lists used in portal pages */
.sw-list{
  margin:0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.6;
}

/* Fixed-height spacers */
.sw-spacer8{ height:8px; }
.sw-spacer10{ height:10px; }
.sw-spacer12{ height:12px; }
.sw-spacer14{ height:14px; }
.sw-spacer16{ height:16px; }
.sw-spacer18{ height:18px; }


/* Muted paragraph (secondary) */
.sw-mutedP2{ margin:0; color:var(--muted2); line-height:1.6; }

.sw-mt12{ margin-top:12px !important; }
.sw-mt34{ margin-top:34px !important; }
.form.sw-max520{ max-width:520px; }


/* Error notice variant (e.g. admin login) */
.notice.sw-notice-error{
  border-color:rgba(231,76,60,.35);
  border-left-color:rgba(231,76,60,.6);
}

/* Admin DB inventory helpers */
.form.sw-max980{ max-width:980px; }
.notice.sw-notice-ok{ border-color:rgba(46,204,113,.35); border-left-color:rgba(46,204,113,.55); }
.sw-inlineForm{ display:flex; gap:10px; align-items:center; margin:0; flex-wrap:wrap; }
.sw-mb14{ margin-bottom:14px !important; }
textarea.sw-minh90{ min-height:90px; }
/* Partner admin: release list panel */
.sw-panel{
  border:1px solid var(--border);
  border-radius:14px;
  padding:10px;
  background:rgba(0,0,0,.12);
  max-height:260px;
  overflow:auto;
}
.sw-docLabel{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0 0 10px;
  color:var(--text);
}
.sw-check{
  width:18px;
  height:18px;
  margin-top:2px;
}
.sw-row-expired{ opacity:.65; }
.sw-op75{ opacity:.75; }
.sw-op70{ opacity:.7; }
/* Admin quotes UI helpers */
.sw-actionsEnd{ display:flex; gap:18px; justify-content:flex-end; margin-top:10px; flex-wrap:wrap; }
.sw-actionsWrap{ display:flex; gap:10px; flex-wrap:wrap; }
.hr.sw-hr, .sw-hr{ margin:16px 0; opacity:.2; border-color:rgba(255,255,255,.12); }
form.sw-inline{ display:inline; }
/* Mail test helpers */
.sw-spanAll{ grid-column:1/-1; }
.sw-codeBox{ padding:10px 12px; border:1px solid rgba(255,255,255,.18); border-radius:10px; }
.sw-formGrid{ display:grid; gap:12px; max-width:720px; }
.sw-fieldLabel{ font-size:12px; opacity:.85; margin-bottom:6px; }
.sw-in{ width:100%; padding:12px; border-radius:10px; border:1px solid rgba(255,255,255,.18); background:rgba(0,0,0,.15); color:var(--text); }
.btn.sw-max260{ max-width:260px; }
.sw-mt6{ margin-top:6px !important; }
.sw-hr{ border:0; border-top:1px solid rgba(255,255,255,.12); }
.sw-hr-strong{ margin:18px 0 !important; opacity:1 !important; }
