/* ============================================================================
   QO7 Panel . Precision-Designsystem (Suite2-Port, 2026-06-10)
   Verbindliche Token-Quelle: webmail-app/public/css/webmail-precision.css
   (neutrale #111317-Flächen, 1px-Linien #363b49, Radien 4/8px, KEINE Glows).
   Theme: html[data-theme="dark|light"] + html[data-brand="qo7"], Key localStorage.qo7Theme.
   Ersetzt app.css (skin-2) vollständig; app.css bleibt nur als Rollback liegen.
   Gliederung: 1 Tokens , 2 Legacy-Aliase , 3 Basis , 4 Shell , 5 Auth ,
               6 Portierte Komponenten (skin-2) , 7 Responsive
   ========================================================================== */

/* ===== 1. Tokens ===== */
:root{
  --font-display:"Funnel Display",system-ui,sans-serif;
  --font-sans:"Funnel Sans",system-ui,sans-serif;
  --font-mono:"Geist Mono",ui-monospace,monospace;
  --ease:cubic-bezier(.2,.7,.2,1);
  --radius:4px; --radius-lg:8px;
  --ok:#34d3c0; --warn:#e6c46b; --err:#ff7d72; --info:#7fb4e8;
  --brand-orange:#f5a030; --brand-orange-soft:rgba(245,160,48,.10); --brand-orange-line:rgba(245,160,48,.68);
  --app-typo3:#ff8700; --app-wordpress:#21759b; --app-nextcloud:#0082c9; --app-laravel:#ff2d20; --app-git:#f05133; --app-node:var(--text);
}
:root, html[data-brand="qo7"]{ /* dark = Default */
  /* Tiefschwarz-Canvas (Marken-Schwarz #0A0B0E) + schwebende Flaechen, WCAG-AAA (Design-Audit 2026-06-19) */
  --bg:#0a0b0e; --bg-2:#101218; --bg-deep:#08090c;
  --surface:#16181d; --surface-2:#20232b; --surface-3:#262a33;
  --line:#2a2e37; --line-2:#3a404c;
  --text:#eef0f4; --text-2:#a7adb8; --text-3:#7f8590;
  --acc:#f5f6f8; --acc-2:#ffffff; --acc-ink:#0a0b0e;
  --acc-dim:rgba(245,246,248,.08); --acc-line:rgba(245,246,248,.28);
}
html[data-theme="light"]{
  --bg:#f4f5f6; --bg-2:#eef0f1; --bg-deep:#e9ebec;
  --surface:#ffffff; --surface-2:#f1f2f4; --surface-3:#e9eaec;
  --line:#e3e4e7; --line-2:#d2d4d9;
  --text:#16181d; --text-2:#54565e; --text-3:#71757d;
  --acc:#111317; --acc-2:#000000; --acc-ink:#ffffff;
  --acc-dim:rgba(17,19,23,.06); --acc-line:rgba(17,19,23,.22);
  --ok:#1f9d63; --warn:#a9762a; --err:#bb4a3d; --info:#2f6fb0;
}

/* ===== 2. Legacy-Aliase =====
   Brücke für Bestands-Views/Inline-Styles (skin-2- und Alt-Familie).
   NUR von Blade-Inline-Styles konsumieren . neues CSS nutzt kanonische Namen.
   Abbau view-weise; danach Block löschen. */
:root{
  --ink:var(--text); --ink2:var(--text-2); --ink3:var(--text-3);
  --ink-1:var(--text); --ink-2:var(--text-2); --ink-3:var(--text-3); --ink-4:var(--text-3);
  --panel:var(--surface); --panel-2:var(--surface-2); --card:var(--surface);
  --accent:var(--acc); --accent-dim:var(--acc-dim); --accent-text:var(--acc-2);
  --accent-soft:var(--acc-dim);
  --hand:var(--acc-2); --hand-f:var(--font-display);
  --sans:var(--font-sans); --head:var(--font-display); --mono:var(--font-mono);
  --danger:var(--err);
  --ok-soft:color-mix(in srgb,var(--ok) 12%,transparent);
  --warn-soft:color-mix(in srgb,var(--warn) 14%,transparent);
  --danger-soft:color-mix(in srgb,var(--err) 12%,transparent);
  --info-soft:color-mix(in srgb,var(--info) 12%,transparent);
}

/* ===== 3. Basis ===== */
*{box-sizing:border-box}
html{scroll-behavior:smooth;color-scheme:dark}
html[data-theme="light"]{color-scheme:light}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);
  font-weight:300;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
body::before{content:none}
a{color:inherit;text-decoration:none} /* wie skin-2: Links dekorieren nur gezielt in definierten Content-Bereichen */
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600}
b,strong{font-weight:600}
button{font-family:inherit}
.mono{font-family:var(--font-mono)}
.muted{color:var(--text-3)}
img{max-width:100%}
:focus-visible{outline:2px solid var(--acc-line);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.is-light{display:none}
html[data-theme="light"] .is-light{display:inline-block}
html[data-theme="light"] .is-dark{display:none}

/* ===== 4. Shell: Topbar, Navigation, Footer, Impersonation ===== */
:root{--topbar-h:72px;--side-w:266px}
.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:minmax(170px,270px) minmax(150px,210px) minmax(0,1fr) auto;align-items:center;gap:12px;
  min-height:var(--topbar-h);padding:0 24px;background:var(--surface);border-bottom:1px solid var(--line)}
.topbar-admin{grid-template-columns:minmax(170px,270px) minmax(0,1fr)}
.topbar-admin .tb-right{grid-column:2}
.brand{display:flex;align-items:center;gap:.55rem;font-family:var(--font-display);
  min-width:0;font-weight:700;font-size:1.05rem;text-decoration:none}
.brand .sq{width:13px;height:13px;border-radius:3px;background:var(--acc)}
.brand .logo-img{height:34px;width:auto;max-width:126px;object-fit:contain;flex:0 0 auto}
.brand .logo-img.is-light{display:none}
.brand .logo-img.is-dark{display:block}
html[data-theme="light"] .brand .logo-img.is-light{display:block}
html[data-theme="light"] .brand .logo-img.is-dark{display:none}
.brand-lockup{gap:12px}
.brand-divider{width:1px;height:24px;background:var(--line-2);flex:none}
.panel-url,.brand .sub{font-family:var(--font-mono);font-size:.72rem;color:var(--text-3);font-weight:400;white-space:nowrap}
.workspace-switcher{min-width:0;height:42px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);color:var(--text);
  display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:8px;align-content:center;text-align:left;padding:6px 10px;cursor:pointer}
.workspace-switcher:hover{border-color:var(--line-2);background:var(--surface-2)}
.workspace-switcher .workspace-label{font-family:var(--font-mono);font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3)}
.workspace-switcher strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25;font-weight:600}
.workspace-switcher svg{grid-row:1/3;grid-column:2;width:15px;height:15px;color:var(--text-3);align-self:center}
.workspace-switcher.is-admin{border-color:var(--acc-line);background:var(--acc-dim)}
.command-search{min-width:0;height:42px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);
  display:flex;align-items:center;gap:9px;padding:0 10px;color:var(--text-3)}
.command-search:focus-within{border-color:var(--acc-line);background:var(--surface-2)}
.command-search svg{width:16px;height:16px;flex:none}
.command-search input{min-width:0;flex:1;border:0;background:transparent;color:var(--text);outline:none;font-family:var(--font-sans);font-size:14px}
.command-search input::placeholder{color:var(--text-3)}
.command-search kbd{font-family:var(--font-mono);font-size:11px;line-height:1;border:1px solid var(--line-2);border-radius:var(--radius);padding:4px 6px;color:var(--text-3);background:var(--surface)}
.tb-right{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}
.inline-form{margin:0;display:inline-flex}
.icon-btn{position:relative;width:36px;height:36px;min-width:36px;border-radius:var(--radius);
  border:1px solid var(--line-2);background:transparent;color:var(--text);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:background-color .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease)}
.icon-btn:hover{border-color:var(--acc-line);background:var(--surface-2)}
.icon-btn svg{width:17px;height:17px}
.nbadge{position:absolute;top:-4px;right:-4px;min-width:15px;height:15px;padding:0 3px;
  background:var(--err);color:var(--bg);font-family:var(--font-mono);font-size:9.5px;
  font-weight:600;border-radius:99px;display:flex;align-items:center;justify-content:center;line-height:1}
.av{width:36px;height:36px;min-width:36px;border-radius:var(--radius);background:transparent;color:var(--text);
  border:1px solid var(--line-2);display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--font-mono);font-size:.72rem;text-decoration:none;overflow:hidden;flex-shrink:0;transition:background-color .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease)}
.av:hover{border-color:var(--acc-line);background:var(--surface-2)}
.av img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.upg{display:inline-flex;align-items:center;gap:.4rem;min-height:36px;font-family:var(--font-mono);font-size:.74rem;
  color:var(--text);background:var(--surface);border:1px solid var(--line-2);
  border-radius:var(--radius);padding:.4rem .7rem;text-decoration:none;white-space:nowrap}
.upg:hover{border-color:var(--acc)}
.upg svg{width:14px;height:14px}
.tb-link{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-mono);
  min-height:36px;font-size:.74rem;color:var(--text-2);border:1px solid var(--line-2);border-radius:var(--radius);
  padding:.4rem .7rem;text-decoration:none;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none;transition:background-color .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease)}
.tb-link:hover{color:var(--text);border-color:var(--acc-line);background:var(--surface-2)}
.tb-link svg{width:14px;height:14px}
.gnav{position:fixed;left:0;right:0;bottom:0;z-index:55;display:grid;grid-auto-flow:column;grid-auto-columns:72px;gap:0;
  min-width:0;max-width:100vw;padding:0 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);
  background:var(--surface);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-padding:8px;-webkit-overflow-scrolling:touch}
.gnav::-webkit-scrollbar{height:4px}
.gnav::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px}
.nav-group{display:contents}
.nav-title{display:none}
.gnav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:72px;min-height:58px;
  border:1px solid transparent;border-radius:var(--radius);color:var(--text-2);font-family:var(--font-mono);font-size:10px;line-height:1.1;
  padding:6px 4px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 0 auto}
.gnav a:hover{color:var(--text);background:var(--surface-2)}
.gnav a.on{color:var(--text);background:var(--acc-dim);border-color:var(--acc-line)}
.gnav a svg{width:18px;height:18px;flex:none;opacity:.78}
.gnav a.on svg,.gnav a:hover svg{opacity:1}
.gnav a.on svg{stroke:var(--acc)}
.gnav .badge{font-family:var(--font-mono);font-size:.62rem;background:var(--acc);color:var(--acc-ink);
  border-radius:99px;padding:0 .4rem;font-weight:600}
.gnav .badge.warn{background:var(--warn);color:var(--bg-deep)}
.nav-monitoring-link .nav-item-label,.nav-service-link .nav-item-label{min-width:0;overflow:hidden;text-overflow:ellipsis}
.nav-plan-badge,.monitoring-plan-badge{display:inline-flex;align-items:center;justify-content:center;max-width:82px;min-height:17px;padding:1px 6px;border:1px solid color-mix(in srgb,var(--acc) 18%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--acc) 5%,transparent);color:var(--text-2);font-family:var(--font-sans);font-size:10px;font-weight:600;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0}
.nav-plan-badge.is-empty,.monitoring-plan-badge.is-empty{border-color:var(--line);background:transparent;color:var(--text-3);font-weight:500;opacity:.68}
.gnav .nav-plan-badge,.gnav .monitoring-plan-badge{max-width:70px;min-height:15px;padding:1px 5px;border-color:var(--line);background:transparent;color:var(--text-3);font-size:9px;font-weight:500;opacity:.58}
.gnav a.on .nav-plan-badge,.gnav a.on .monitoring-plan-badge{border-color:var(--line-2);background:transparent;color:var(--text-3);opacity:.72}
.gnav .nav-plan-badge.is-empty,.gnav .monitoring-plan-badge.is-empty{border-color:var(--line);background:transparent;color:var(--text-3);opacity:.42}
.gnav a.is-disabled:not(.on){color:var(--text-3)}
.nav-badge-mobile{display:none}
.nav-label-mobile,.nav-mobile-alert-badge{display:none}
.gnav a.nav-mobile-hub{display:none}
.subnav{display:flex;gap:.2rem;padding:.45rem 1.2rem;border-bottom:1px solid var(--line);
  background:var(--surface);overflow-x:auto;scrollbar-width:thin;scroll-padding:1.2rem;-webkit-overflow-scrolling:touch}
.subnav::-webkit-scrollbar{height:4px}
.subnav::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px}
.subnav a{border:1px solid transparent;border-radius:99px;color:var(--text-2);
  min-height:32px;display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.74rem;padding:.3rem .7rem;text-decoration:none;white-space:nowrap;flex:0 0 auto}
.subnav a:hover{color:var(--text);border-color:var(--line-2)}
.subnav a.on{color:var(--acc);background:var(--acc-dim);border-color:var(--acc-line)}
.subnav-label{align-self:center;margin:0 .35rem 0 .65rem;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;flex:0 0 auto}
.subnav-label:first-child{margin-left:0}

@media(min-width:961px){
  body.has-side-nav{padding-left:0}
  body.has-side-nav .gnav{
    position:fixed;inset:var(--topbar-h) auto 0 0;z-index:45;width:var(--side-w);max-width:none;
    display:block;padding:18px 14px;
    border-right:1px solid var(--line);border-bottom:0;background:var(--surface);
    overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scroll-padding:0;
  }
  body.has-side-nav .nav-group{display:block;margin:0 0 18px}
  body.has-side-nav .nav-mobile-hub-group{display:none}
  body.has-side-nav .gnav a.nav-mobile-secondary{display:none!important}
  body.has-side-nav .gnav a.nav-desktop-hub{display:flex}
  body.has-side-nav .nav-title{display:block;margin:0 0 7px 10px;font-family:var(--font-mono);font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}
  body.has-side-nav .gnav a{
    flex-direction:row;gap:9px;
    width:100%;min-height:38px;justify-content:flex-start;border:1px solid transparent;
    border-left:2px solid transparent;border-radius:var(--radius);padding:8px 10px;
    color:var(--text-2);font-family:var(--font-sans);font-size:13.5px;font-weight:500;
  }
  body.has-side-nav .gnav a:hover{background:var(--surface-2);color:var(--text)}
  body.has-side-nav .gnav a.on{
    background:var(--acc-dim);border-color:var(--line);border-left-color:var(--brand-orange-line);color:var(--text);
  }
  body.has-side-nav .gnav a svg{width:16px;height:16px}
  body.has-side-nav .gnav .badge{margin-left:auto}
  body.has-side-nav .nav-monitoring-link .nav-item-label,
  body.has-side-nav .nav-service-link .nav-item-label{flex:1}
  body.has-side-nav .nav-plan-badge,
  body.has-side-nav .monitoring-plan-badge{margin-left:auto}
  body.has-side-nav .subnav{
    position:sticky;top:var(--topbar-h);z-index:30;margin-left:var(--side-w);padding:.55rem 1.2rem;background:var(--bg);
  }
  body.has-side-nav .wrap{
    width:min(1180px,calc(100vw - var(--side-w) - 64px));
    max-width:none;
    margin-left:calc(var(--side-w) + 32px);
    margin-right:32px;
  }
  body.has-side-nav .impbar,
  body.has-side-nav .foot{margin-left:var(--side-w)}
}
.customer-foot{margin:48px 0 0;border-top:1px solid var(--line);background:transparent}
.customer-foot .in{max-width:none;padding:18px 0;grid-template-columns:1fr auto;gap:16px}
.customer-foot .in>:last-child{grid-column:2;text-align:right}
.customer-foot .foot-links{display:inline-flex;align-items:center;gap:14px;justify-content:flex-end;flex-wrap:wrap}
body.has-side-nav .customer-foot{margin-left:0}
@media(max-width:1180px) and (min-width:961px){
  .topbar{grid-template-columns:minmax(160px,230px) minmax(140px,190px) minmax(0,1fr) auto;padding-inline:18px}
  .panel-url{display:none}
  .brand-divider{display:none}
}
@media(max-width:1080px) and (min-width:961px){
  .workspace-switcher{display:none}
  .topbar{grid-template-columns:minmax(170px,250px) minmax(0,1fr) auto}
}
@media(max-width:960px){
  :root{--topbar-h:64px}
  .topbar{grid-template-columns:1fr auto;min-height:var(--topbar-h);padding:0 12px}
  .brand .logo-img{height:31px;max-width:112px}
  .brand-divider,.panel-url,.workspace-switcher,.command-search{display:none}
  .tb-right{gap:5px}
  .tb-right .tb-link{display:none}
  .gnav{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:unset;grid-auto-columns:unset;gap:0;padding:0 6px calc(6px + env(safe-area-inset-bottom));overflow-x:hidden}
  .gnav a{width:auto;min-width:0;min-height:60px;font-size:9.5px;padding:6px 2px}
  .gnav a svg{width:17px;height:17px}
  .nav-monitoring-link,.nav-service-link{position:relative}
  .nav-monitoring-link .nav-item-label,.nav-service-link .nav-item-label{max-width:100%}
  .nav-plan-badge,.monitoring-plan-badge{max-width:46px;min-height:14px;padding:1px 5px;font-size:8px;line-height:1}
  .nav-badge-desktop{display:none}
  .nav-badge-mobile{display:inline}
  .gnav a.nav-mobile-secondary,
  body.has-side-nav .gnav a.nav-mobile-secondary,
  body.has-side-nav .gnav a.nav-desktop-hub,
  .gnav a.nav-sales-hub{display:none!important}
  .gnav a.nav-mobile-hub{display:flex!important}
  .nav-label-desktop{display:none!important}
  .nav-label-mobile{display:inline!important}
  .gnav .nav-mobile-alert-badge{display:inline-flex}
  body.has-side-nav .wrap{padding-bottom:112px}
  .corner-signet{display:none}
}
.impbar{background:var(--acc-dim);border-bottom:1px solid var(--acc-line)}
.impbar-inner{max-width:84rem;margin:0 auto;padding:.45rem 1.2rem;display:flex;align-items:center;
  gap:.6rem;font-size:.84rem}
.impbar-inner form{margin-left:auto}
.impbar-dot{width:8px;height:8px;border-radius:50%;background:var(--acc);flex-shrink:0}
.impbar-btn{font-family:var(--font-mono);font-size:.72rem;border:1px solid var(--acc-line);
  background:transparent;color:var(--acc);border-radius:var(--radius);padding:.3rem .6rem;cursor:pointer}
.impbar-btn:hover{background:var(--acc);color:var(--acc-ink)}
.foot{border-top:1px solid var(--line);background:var(--bg-2);margin-top:2.5rem}
.foot .in{max-width:84rem;margin:0 auto;padding:1.1rem 1.2rem;display:grid;
  grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;font-family:var(--font-mono);
  font-size:.74rem;color:var(--text-3)}
/* 3 Kinder: links/mittig/rechts . Mitte exakt zentriert (1fr auto 1fr).
   2 Kinder: erstes links, letztes rechts (Spalte 2 bleibt leer). */
.foot .in>:first-child{grid-column:1;text-align:left}
.foot .in>:nth-child(2):not(:last-child){grid-column:2;text-align:center}
.foot .in>:last-child{grid-column:3;text-align:right}
.foot a{color:var(--text-2);text-decoration:none}
.foot a:hover{color:var(--text)}
.legal-foot-links{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.legal-foot-links a{font-size:inherit}
.corner-signet{position:fixed;right:22px;bottom:22px;z-index:5;width:42px;height:auto;opacity:.84;filter:saturate(1.18) contrast(1.04);pointer-events:none}
body:not(.has-side-nav) .corner-signet{right:24px;bottom:30px;width:44px;opacity:.88}
body.has-side-nav .corner-signet{right:22px;bottom:22px;width:42px;opacity:.86}
.seg{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden}
.seg button,.seg a{padding:.28rem .65rem;background:transparent;border:0;color:var(--text-2);
  cursor:pointer;font-family:var(--font-mono);font-size:.72rem;text-decoration:none}
.seg button[aria-pressed="true"],.seg a.on{background:var(--acc);color:var(--acc-ink);font-weight:600}
/* Domain-Wizard #domwizard . Soft-Pill Zweckwahl (dialog-scoped override der globalen .seg; Monitoring-Caller bleiben gefuelltes Pill) */
#domwizard .seg[data-domwizard-seg]{border:0;border-radius:0;overflow:visible;gap:6px;padding-bottom:13px;border-bottom:1px solid var(--line)}
#domwizard .seg button{border:1px solid transparent;border-radius:var(--radius);padding:.34rem .7rem;transition:background .12s ease,border-color .12s ease,color .12s ease}
#domwizard .seg button:not([aria-pressed="true"]):hover{color:var(--text);border-color:var(--line-2)}
#domwizard .seg button[aria-pressed="true"]{background:var(--acc-dim);color:var(--acc);border-color:var(--acc-line);font-weight:600}
#domwizard .seg button[aria-pressed="true"]:hover{color:var(--acc);border-color:var(--acc-line)}
#domwizard .dom-wbody{gap:15px}

/* ===== 5. Auth ===== */
.auth-page{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg);color:var(--text)}
.auth-topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 clamp(18px,4vw,52px);border-bottom:1px solid var(--line);background:var(--surface)}
.auth-stage{width:min(1120px,100%);margin:0 auto;padding:clamp(56px,9vh,104px) clamp(18px,4vw,46px);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:clamp(28px,6vw,84px);align-items:start;align-content:center}
.auth-copy{min-width:0}
.auth-kicker{margin:0 0 12px;font-family:var(--font-mono);font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}
.auth-copy h1{max-width:680px;margin:0;font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:0;font-weight:650}
.auth-copy>p{max-width:540px;margin:18px 0 0;color:var(--text-2);font-size:17px;line-height:1.6}
.auth-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:560px;margin-top:34px}
.auth-metrics span{min-width:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:13px 14px;color:var(--text-3);font-size:13px}
.auth-metrics b{display:block;margin-bottom:3px;color:var(--text);font-family:var(--font-display);font-size:22px;line-height:1}
.auth-panel{width:100%;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:26px}
.auth-panel h2{margin:0;font-size:25px;line-height:1.15;letter-spacing:0}
.auth-lead{margin:8px 0 22px;color:var(--text-3);font-size:14px}
.auth-panel .field{margin-bottom:14px}
.auth-panel .field label{display:block;margin-bottom:8px;font-family:var(--font-mono);font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3)}
.auth-panel .field input{min-height:40px;border-radius:var(--radius);font-family:var(--font-sans);font-size:14px}
.auth-panel .btn-block{min-height:36px}
.auth-alert{margin:0 0 16px;border:1px solid color-mix(in srgb,var(--err) 38%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--err) 10%,transparent);color:var(--err);padding:10px 12px;font-size:13px}
.auth-note{display:grid;gap:6px;margin:20px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:14px 15px;color:var(--text-2);font-size:13.5px}
.auth-note b{color:var(--text)}
.auth-note a{color:var(--acc);text-decoration:underline;text-underline-offset:2px}
.legal{font-family:var(--font-mono);font-size:.72rem;color:var(--text-3)}
.legal a{color:var(--acc);text-decoration:underline;text-underline-offset:2px}
.auth-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;font-size:.82rem;margin:.7rem 0}
.auth-row label{display:flex;gap:.4rem;align-items:center}
.auth-row a{color:var(--text-2)}
.auth-row a:hover{color:var(--text)}
.authfoot{margin-top:1rem;font-family:var(--font-mono);font-size:.74rem;color:var(--text-3)}
.authfoot a{color:var(--acc);text-decoration:underline;text-underline-offset:2px}
.auth-legal{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding:18px;color:var(--text-3);font-family:var(--font-mono);font-size:12px;border-top:1px solid var(--line)}
.auth-legal a{color:var(--text-2);text-decoration:none}
.auth-legal a:hover{color:var(--text)}
@media(max-width:820px){
  .auth-topbar{min-height:64px;padding:0 14px}
  .auth-topbar .brand .logo-img{height:31px;max-width:112px}
  .auth-stage{display:block;align-content:start;padding:28px 16px 26px}
  .auth-copy{margin-bottom:26px}
  .auth-copy h1{font-size:31px;line-height:1.08}
  .auth-copy>p{font-size:15px;margin-top:12px}
  .auth-metrics{grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:20px}
  .auth-metrics span{padding:10px 8px;font-size:11px}
  .auth-metrics b{font-size:18px}
  .auth-panel{padding:20px}
}
@media(max-width:520px){
  .auth-topbar .panel-url,.auth-topbar .brand-divider{display:none}
  .auth-stage{padding:18px 16px 22px}
  .auth-copy{display:none}
  .auth-copy h1{font-size:25px;line-height:1.1}
  .auth-copy>p{margin-top:8px;font-size:14px;line-height:1.5}
  .auth-metrics{display:none}
  .auth-panel{max-width:360px;margin:0 auto;padding:20px}
  .auth-panel h2{font-size:24px}
  .auth-lead{margin-bottom:16px}
  .auth-panel .field{margin-bottom:13px}
  .auth-row{align-items:flex-start;flex-direction:column}
}

/* ===== 6. Portierte Komponenten (skin-2  zu  Precision) ===== */

/* Layout-Grundgerüst */
.wrap{max-width:1180px;margin:0 auto;padding:30px 22px 80px}
.u-narrow{max-width:820px}
.legal-wrap{max-width:860px}
.legal-hero{margin:0 0 24px}
.legal-hero h1{font-size:30px;font-weight:650;letter-spacing:0;line-height:1.15;margin:0}
.legal-hero p{max-width:680px;margin:10px 0 0;color:var(--text-2);font-size:14.5px;line-height:1.65}
.legal-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px;margin:0 0 28px}
.legal-status{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:6px 10px;margin:0 0 18px}
.legal-status-dot{width:7px;height:7px;border-radius:50%;background:var(--warn);flex:none}
.legal-copy{display:grid;gap:12px;color:var(--text-2);font-size:14.5px;line-height:1.7}
.legal-copy p{margin:0}
.legal-copy a{color:var(--text);font-weight:650;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.legal-copy a:hover{color:var(--acc)}

/* Seitenkopf */
.page-kicker{font-family:var(--font-mono);font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:16px}
.cmdline{font-family:var(--font-mono);font-size:13px;color:var(--text-3);margin-bottom:18px}
.cmdline .p{color:var(--acc)}
.cmdline .c{color:var(--text)}
.cmdline .greet{color:var(--text-3)}
.cmdline .caret{display:inline-block;width:8px;height:15px;background:var(--acc);margin-left:7px;vertical-align:-2px;animation:qo7blink 1.1s steps(1) infinite}
@keyframes qo7blink{50%{opacity:0}}
.hrow{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}
h1{font-size:27px;letter-spacing:0}
h1 .mono{font-family:var(--font-mono);color:var(--acc);font-weight:500}
h1 .hand{font-family:var(--font-display);color:var(--acc-2);font-weight:600;font-size:.82em;margin-left:6px}
.hsub{max-width:780px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-2);margin-top:8px;line-height:1.6}
.hsub.is-warning{color:var(--warn)}
.hsub .ok{color:var(--acc)}
.newbtn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;background:var(--acc);color:var(--acc-ink);border:1px solid var(--acc);font-family:var(--font-mono);font-weight:550;font-size:12.5px;padding:8px 13px;border-radius:var(--radius);cursor:pointer;white-space:nowrap}
.newbtn:hover{background:var(--acc-2);border-color:var(--acc-2);color:var(--acc-ink)}
.newbtn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.4}
.pagehead{display:flex;align-items:baseline;gap:10px;margin-bottom:2px}
.pagehead h2{font-family:var(--font-sans);font-weight:700;font-size:18px;letter-spacing:0;color:var(--text)}
.pagehead .note{font-family:var(--font-display);font-size:18px;color:var(--acc-2);font-weight:600;border:0;background:none;padding:0;margin:0;display:inline}
.foot-note{margin-top:36px;text-align:center;font-size:12.5px;color:var(--text-3)}
.ptitle{margin-bottom:22px}
.ptitle h1{font-size:24px;font-weight:600;letter-spacing:0}
.ptitle p{color:var(--text-2);font-size:14px;margin-top:5px}
.lead{color:var(--text-2);font-size:14px;margin:4px 0 14px;line-height:1.55}
.lead .note{font-family:var(--font-display);color:var(--acc-2);font-size:1.25em;border:0;background:none;padding:0;display:inline}
.lead .note svg{display:none}
.lbl{font-family:var(--font-mono);font-size:12px;color:var(--text-2);text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px}
.lbl::before{content:"";display:none}
.crumb{font-family:var(--font-mono);font-size:12px;color:var(--text-3);margin-bottom:16px}
.crumb a{color:var(--text-2);text-decoration:none}
.crumb a:hover{color:var(--acc)}
.sectit{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.sectit h2{font-family:var(--font-mono);font-size:12px;color:var(--text-2);text-transform:uppercase;letter-spacing:.1em;font-weight:500}
.sectit h2::before{content:"";display:none}
.cnt{font-family:var(--font-mono);font-size:12px;color:var(--text-3);text-decoration:none}
a.cnt:hover{color:var(--acc)}

/* Status-Readout */
.readout{font-family:var(--font-mono);font-size:12px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);margin-bottom:30px;display:grid;grid-template-columns:repeat(4,1fr)}
.ro{padding:14px 18px;border-right:1px solid var(--line)}
.ro:last-child{border-right:0}
.ro .k{color:var(--text-3);font-size:11px;letter-spacing:.04em;margin-bottom:6px}
.ro .v{font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:0}
.ro .v small{font-family:var(--font-mono);font-size:11px;color:var(--text-3);font-weight:400}

/* Stack-Karten */
.stacks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}
/* Projekt-Gruppen mit Farb-Akzent je Gruppe. */
.stack-group{margin-bottom:18px}
.stack-group-h{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;color:var(--text-2);text-transform:uppercase;letter-spacing:.08em;font-weight:500;margin:0 0 10px}
.stack-group-h .cnt{font-size:11px;color:var(--text-3);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:1px 8px}
.stack-group-h.muted{color:var(--text-3)}
.stack-group-dot{width:10px;height:10px;border-radius:3px;background:var(--gc,var(--acc));flex:none}
.stack-group .stack{box-shadow:inset 3px 0 0 var(--gc,var(--acc))}
.stack-group-color-0{--gc:#3b82f6}
.stack-group-color-1{--gc:#10b981}
.stack-group-color-2{--gc:#e0a12f}
.stack-group-color-3{--gc:#8b5cf6}
.stack-group-color-4{--gc:#ec4899}
.stack-group-color-5{--gc:#14b8a6}
.stack-group-color-6{--gc:#ef4444}
.stack-group-color-7{--gc:#6366f1}
.storage-alert{margin-bottom:16px;border-color:color-mix(in srgb,var(--warn) 34%,var(--line));background:color-mix(in srgb,var(--warn) 10%,var(--surface))}
.storage-alert-body{padding:14px 18px;display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}
.storage-alert-icon{width:22px;height:22px;flex:none;margin-top:2px;color:var(--warn)}
.storage-alert-copy{flex:1;min-width:240px}
.storage-alert-copy b{font-size:14px;color:var(--text)}
.storage-alert-copy p{font-size:12.5px;color:var(--text-2);margin:4px 0 0;line-height:1.55}
.storage-alert .btn{flex:none}
.stack{min-width:0;min-height:194px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s var(--ease),transform .15s var(--ease),background-color .15s var(--ease)}
.stack:hover{border-color:var(--acc-line);transform:translateY(-2px)}
.stack-pending{border-style:dashed;opacity:.96}
.stack-note{padding:0 16px 14px;font-size:12px;color:var(--text-3);line-height:1.5}
.stack-h{min-height:76px;padding:16px 16px 0;display:grid;grid-template-columns:42px minmax(0,1fr) minmax(10px,auto);align-items:center;gap:12px}
.stack-ic{width:42px;height:42px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-mono);font-weight:600;font-size:13px;line-height:1;color:var(--acc);flex:none}
.stack-id{flex:1;min-width:0}
.stack-id b{font-size:15px;font-weight:600;display:block;letter-spacing:0}
.stack-id .dom{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:11.5px;color:var(--text-3)}
.led{width:8px;height:8px;border-radius:50%;flex:none;position:relative;justify-self:end}
.led.on{background:var(--ok)}
.led.dep{background:var(--warn)}
.stack-spec{flex:1;padding:14px 16px;font-family:var(--font-mono);font-size:11.5px;color:var(--text-2);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:10px}
.stack-spec span{display:flex;align-items:center;gap:6px;min-width:0}
.stack-spec .lbl{color:var(--text-3);margin:0;text-transform:none;letter-spacing:0;font-size:inherit;font-family:var(--font-mono)}
.stack-spec .lbl::before{content:""}
.stack-act{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:auto}
.act{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 8px;font-family:var(--font-mono);font-size:11px;line-height:1.15;text-align:center;color:var(--text-2);border-right:1px solid var(--line);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:clip;overflow-wrap:normal;word-break:normal;transition:background-color .14s var(--ease),color .14s var(--ease)}
.act:last-child{border-right:0}
.act:hover{background:var(--acc-dim);color:var(--acc)}
.act svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}
.stack.add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border-style:dashed;cursor:pointer;min-height:170px;color:var(--text-2)}
.stack.add:hover{border-color:var(--acc);color:var(--acc)}
.stack.add .p{width:42px;height:42px;border-radius:var(--radius);border:1px solid var(--line);display:grid;place-items:center}
.stack.add svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.stack.add b{font-size:14px;font-weight:600;font-family:var(--font-sans)}
.stack.add span{font-family:var(--font-mono);font-size:11px;color:var(--text-3)}

/* Erweiterungen zu Abschnitt 4: Avatar-Größe + Admin-Badge */
.av-lg{width:64px;height:64px;border-radius:var(--radius-lg);font-size:22px;flex:none}
.adminbadge{font-family:var(--font-mono);font-weight:700;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--acc-ink);background:var(--acc);padding:2px 6px;border-radius:var(--radius);margin-left:7px;vertical-align:middle}

/* Stack-Detailkopf & Tabs */
.stack-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.stack-head .sh-ic{width:46px;height:46px;border-radius:var(--radius-lg);background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-mono);font-weight:600;color:var(--acc)}
.stack-head h1{font-size:23px;font-weight:600;letter-spacing:0;display:flex;align-items:center;gap:10px}
.stack-head .dom{font-family:var(--font-mono);font-size:12.5px;color:var(--text-3)}
.stack-head .led{width:9px;height:9px;border-radius:50%}
.stack-head .led.on{background:var(--ok)}
.stack-head .spacer{flex:1}
.open-site{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12.5px;color:var(--text);text-decoration:none;border:1px solid var(--line);padding:8px 14px;border-radius:var(--radius)}
.open-site:hover{border-color:var(--acc);color:var(--acc)}
.open-site svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.stabs{display:flex;align-items:center;gap:2px;border-bottom:1px solid var(--line);margin-bottom:26px;position:relative;flex-wrap:wrap}
.stabs a{position:relative;padding:11px 15px;font-size:13.5px;font-weight:450;color:var(--text-2);text-decoration:none;background:none;border:0;cursor:pointer;font-family:var(--font-sans)}
.stabs a:hover{color:var(--text)}
.stabs a.on{color:var(--text);font-weight:550}
.stabs a.on::after{content:"";position:absolute;left:15px;right:15px;bottom:-1px;height:2px;background:var(--acc)}

/* Sicherheits-Checks, "Bald"-QA-Items, Gefahrenzone */
.check{display:flex;align-items:center;gap:12px;padding:14px 18px;border-top:1px solid var(--line-2)}
.check .ci{width:30px;height:30px;border-radius:var(--radius);display:grid;place-items:center;flex:none}
.check .ci svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}
.check.okk .ci{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok)}
.check.wn .ci{background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn)}
.check .ct{flex:1;min-width:0}
.check .ct b{font-size:13.5px;font-weight:600}
.check .ct p{font-size:12.5px;color:var(--text-3);margin-top:2px;line-height:1.5}
.check .fix{font-family:var(--font-mono);font-size:12px;color:var(--acc);text-decoration:none;flex:none}
.check .fix:hover{text-decoration:underline}
.qa-soon{display:flex;align-items:center;gap:11px;padding:13px 18px;border-top:1px solid var(--line-2);color:var(--text-3);font-size:13.5px}
.qa-soon .qi{width:30px;height:30px;border-radius:var(--radius);background:var(--surface-2);display:grid;place-items:center;color:var(--text-3);flex:none}
.qa-soon .qi svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9}
.qa-soon .qa-soon-badge{margin-left:auto}
.qa-actionbtn{display:flex;align-items:center;gap:11px;width:100%;background:none;border:0;border-top:1px solid var(--line-2);cursor:pointer;text-align:left;padding:13px 18px;color:var(--text);font-size:13.5px}
.qa-actionbtn:hover{background:var(--surface-2)}
.qa-actionbtn.is-locked{color:var(--text-3)}
.qa-actionbtn.is-locked .qi{color:var(--text-3)}
.qa-actionbtn.is-locked:hover{color:var(--text);background:var(--surface-2)}
.qa-actionbtn .qi{width:30px;height:30px;border-radius:var(--radius);background:var(--surface-2);display:grid;place-items:center;color:var(--acc);flex:none}
.qa-actionbtn .qi svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9}
.qa-actionbtn .qa-label{flex:1}
.qa-actionbtn .qa-plan-badge{margin-left:auto}
.qa-actionbtn .arr{margin-left:auto;color:var(--text-3)}
.qa-actionbtn .qa-plan-badge + .arr{margin-left:0}
.qa-actionbtn .arr svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.card.danger .card-h{border-bottom-color:color-mix(in srgb,var(--err) 30%,transparent)}
.card.danger .card-h h2{color:var(--err)}

/* Log-Viewer */
.logwrap{overflow:hidden}
.logtabs{display:flex;gap:2px;border-bottom:1px solid var(--line);padding:0 8px}
.logtab{background:none;border:0;cursor:pointer;font-family:var(--font-sans);font-size:13.5px;color:var(--text-2);padding:12px 14px;position:relative;display:inline-flex;align-items:center;gap:7px}
.logtab:hover{color:var(--text)}
.logtab.is-active{color:var(--text);font-weight:550}
.logtab.is-active::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--acc)}
.logtab-count{font-family:var(--font-mono);font-size:11px;color:var(--text-3);background:var(--surface-2);border-radius:var(--radius);padding:1px 6px}
.logtab-count-empty{opacity:.5}
.logfilter{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.logfilter-search-wrap{display:flex;align-items:center;gap:7px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:6px 10px;flex:1;min-width:180px}
.logfilter-search-wrap svg{stroke:var(--text-3);flex:none}
.logfilter-search{border:0;background:none;outline:none;color:var(--text);font-family:var(--font-sans);font-size:13px;flex:1}
.logfilter-chips{display:flex;gap:5px}
.chip{font-family:var(--font-mono);font-size:11.5px;border:1px solid var(--line);background:var(--surface);color:var(--text-2);border-radius:var(--radius);padding:4px 9px;cursor:pointer}
.chip:hover{border-color:var(--acc);color:var(--acc)}
.chip.is-active{background:var(--acc-dim);border-color:var(--acc);color:var(--acc)}
.logfilter-count{font-family:var(--font-mono);font-size:11.5px;color:var(--text-3);margin-left:auto}
.logbox{max-height:520px;overflow:auto;background:var(--bg);font-family:var(--font-mono);font-size:12px}
.ll{padding:4px 16px;border-bottom:1px solid var(--line-2);color:var(--text-2);white-space:pre-wrap;word-break:break-all;line-height:1.5}
.ll-2xx{color:var(--ok)}
.ll-3xx{color:var(--text-2)}
.ll-4xx{color:var(--warn)}
.ll-5xx{color:var(--err)}
.logempty{padding:40px 20px;text-align:center;color:var(--text-3);font-size:13px;line-height:1.6}

/* Datenbank-Detail-Panel */
.db-detail{padding:18px 22px}
.db-detail-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.db-detail-head svg{color:var(--acc);flex:none;fill:none;stroke:currentColor}
.db-detail-head h4{font-size:14px;font-weight:600}
.db-detail-head small{color:var(--text-3);font-size:11.5px}
.db-detail-close{margin-left:auto;background:none;border:0;cursor:pointer;color:var(--text-3)}
.db-detail-close:hover{color:var(--text)}
.db-conn{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-bottom:16px}
.db-conn-row{display:flex;flex-direction:column;gap:3px;padding:9px 0;border-bottom:1px solid var(--line-2)}
.db-conn-label{font-size:11.5px;color:var(--text-3)}
.db-conn-value{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:13px;color:var(--text)}
.db-conn-copy{background:none;border:0;cursor:pointer;color:var(--text-3);padding:2px;display:grid;place-items:center}
.db-conn-copy:hover{color:var(--acc)}
.db-conn-copy svg{fill:none;stroke:currentColor}
.db-conn-hint{font-family:var(--font-sans);font-size:11px;color:var(--text-3)}
.db-conn-pw{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;flex-wrap:wrap}
.db-conn-pw-meta{flex:1;min-width:200px}
.db-conn-pw-title{font-weight:600;font-size:13px}
.db-conn-pw-text{font-size:11.5px;color:var(--text-3);line-height:1.5;margin-top:2px}
.db-conn-pw-btn{flex:none;white-space:nowrap}
.db-health{border-top:1px solid var(--line-2);padding-top:14px;margin-bottom:14px}
.db-health-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.db-health-head svg{color:var(--acc);fill:none;stroke:currentColor}
.db-health-head b{font-size:13px}
.db-health-head small{color:var(--text-3);font-size:11.5px}
.db-health-actions{display:flex;gap:8px;flex-wrap:wrap}
.db-conn-foot{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;color:var(--text-3);line-height:1.5}
.db-conn-foot svg{color:var(--acc);flex:none;margin-top:1px;fill:none;stroke:currentColor}
.db-conn-foot code{font-family:var(--font-mono);background:var(--surface-2);padding:1px 5px;border-radius:var(--radius)}
.db-health-result{margin-top:10px;font-size:12.5px;line-height:1.55}
.db-health-result table{width:100%;border-collapse:collapse;background:var(--surface-2);border-radius:var(--radius);overflow:hidden;margin:6px 0}
.db-health-result th{text-align:left;padding:6px 10px;font-size:11px;color:var(--text-3);font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:var(--surface)}
.db-health-result td{padding:6px 10px;font-size:12px;border-top:1px solid var(--line-2)}
.db-health-result .pill-ok{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok);padding:1px 8px;border-radius:var(--radius);font-size:11px;font-weight:600}
.db-health-result .pill-warn{background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);padding:1px 8px;border-radius:var(--radius);font-size:11px;font-weight:600}
.db-health-result .pill-err{background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err);padding:1px 8px;border-radius:var(--radius);font-size:11px;font-weight:600}

/* Zugang: info-grid-Wert mit Copy, SSH-Key/Sub-User-Empty */
.ig-val{display:flex;align-items:center;gap:7px;min-width:0;font-family:var(--font-mono);font-size:13px;color:var(--text);flex-wrap:wrap}
.ig-copy{width:24px;height:24px;border-radius:var(--radius);flex:none;background:none;border:0;cursor:pointer;color:var(--text-3);display:grid;place-items:center;padding:0}
.ig-copy:hover{color:var(--acc)}
.ig-copy svg{width:13px;height:13px;fill:none;stroke:currentColor}
.subuser-empty{text-align:center;padding:34px 20px;color:var(--text-3)}
.subuser-empty-icon{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;margin:0 auto 12px;color:var(--text-3)}
.subuser-empty-icon svg{width:20px;height:20px;fill:none;stroke:currentColor}
.subuser-empty b{display:block;font-size:14px;color:var(--text);font-weight:600}
.subuser-empty p{font-size:12.5px;margin-top:6px;line-height:1.55;max-width:480px;margin-left:auto;margin-right:auto}
.access-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
.access-head h1{font-size:24px;font-weight:650;letter-spacing:0;margin:0;color:var(--text)}
.access-head p{margin-top:6px;color:var(--text-3);font-size:13px;line-height:1.5}
.access-main-card{border-color:color-mix(in srgb,var(--acc) 22%,var(--line))}
.access-root-card{border-color:color-mix(in srgb,var(--acc) 24%,var(--line));overflow:hidden}
.access-root-main{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px}
.access-kicker{display:block;margin-bottom:7px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}
.access-root-login{display:flex;align-items:center;gap:8px;min-width:0}
.access-root-login b{font-size:22px;line-height:1.2;color:var(--text);letter-spacing:0}
.access-root-main p{max-width:720px;margin-top:8px;color:var(--text-3);font-size:13px;line-height:1.5}
.access-root-actions{display:flex;align-items:center;gap:8px;flex:none}
.access-icon-btn{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);cursor:pointer}
.access-icon-btn:hover{border-color:var(--acc);color:var(--acc);background:var(--acc-dim)}
.access-icon-btn svg{width:16px;height:16px;stroke-width:2}
.access-root-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-2)}
.access-root-meta div{padding:13px 18px;border-right:1px solid var(--line-2)}
.access-root-meta div:last-child{border-right:0}
.access-root-meta span{display:block;margin-bottom:4px;font-size:11px;color:var(--text-3);font-weight:650}
.access-root-meta b{display:block;font-size:13px;color:var(--text);font-weight:650}
.access-root-meta em{display:block;margin-top:3px;font-style:normal;font-size:11.5px;color:var(--text-3);line-height:1.4}
.access-root-edit{display:flex;justify-content:space-between;gap:16px;padding:14px 18px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--acc) 5%,var(--surface))}
.access-root-edit b{font-size:13px;color:var(--text)}
.access-root-edit p{margin-top:4px;font-size:12px;color:var(--text-3);line-height:1.45}
.access-root-edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.access-overview{margin-bottom:16px}
.access-summary-card .card-h{min-height:88px}
.access-metric-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-2)}
.access-metric-row div{padding:13px 16px;border-right:1px solid var(--line-2)}
.access-metric-row div:last-child{border-right:0}
.access-metric-row b{display:block;font-size:20px;font-weight:650;color:var(--text);letter-spacing:0}
.access-metric-row span,.access-muted{display:block;margin-top:3px;font-size:11.5px;color:var(--text-3);line-height:1.4}
.access-rule-list{display:grid;gap:0;border-top:1px solid var(--line-2)}
.access-rule-list span{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line-2);font-size:12.5px;color:var(--text-2);line-height:1.45}
.access-rule-list span:last-child{border-bottom:0}
.access-card-head{align-items:flex-start}
.access-table .mono{font-family:var(--font-mono)}
.access-table td{vertical-align:top}
.access-login{font-size:13.5px;color:var(--text)}
.access-actions{white-space:nowrap}
.access-actions .btn{margin:2px 0}
.access-create-form{padding:16px 18px;background:color-mix(in srgb,var(--acc) 5%,var(--surface));border-bottom:1px solid var(--line)}
.access-create-form small{display:block;margin-top:5px;color:var(--text-3);font-size:11px;line-height:1.45}
.access-target-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.access-target-card b{display:block;font-size:13.5px;color:var(--text);font-weight:650}
.access-target-card span{display:block;margin-top:3px;font-size:12px;color:var(--text-3);line-height:1.4}
.access-folder-browser{margin-top:8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}
.access-browser-bar{display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.access-browser-bar span{font-size:12.5px;color:var(--text-2);font-family:var(--font-mono);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.access-browser-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:7px;padding:10px;max-height:230px;overflow:auto}
.access-browser-item{display:flex;align-items:center;gap:8px;text-align:left;min-height:36px;padding:8px 9px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;font-size:12.5px;line-height:1.25}
.access-browser-item:hover{border-color:var(--acc);color:var(--acc);background:var(--acc-dim)}
.access-browser-item svg{width:15px;height:15px;stroke:currentColor}
.access-browser-empty{padding:18px;color:var(--text-3);font-size:12.5px;text-align:center;grid-column:1/-1}
.access-option-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}
.access-key-fields{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.access-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.access-key-row{background:var(--surface-2);padding:14px 18px}
.access-key-row-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}
.access-key-list{display:grid;gap:7px;margin-bottom:10px}
.access-key-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.access-key-item b{display:block;font-size:12.5px}
.access-key-item span{display:block;margin-top:3px;font-size:10.5px;color:var(--text-3);word-break:break-all}
.access-add-key-form{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(260px,1.6fr) auto;gap:8px;align-items:end}
.access-project-actions{display:flex;gap:10px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--line)}
@media (max-width: 820px){
  .access-head{align-items:flex-start;flex-direction:column}
  .access-root-main,.access-root-edit{flex-direction:column}
  .access-root-meta{grid-template-columns:1fr}
  .access-root-meta div{border-right:0;border-bottom:1px solid var(--line-2)}
  .access-root-meta div:last-child{border-bottom:0}
  .access-metric-row{grid-template-columns:1fr}
  .access-metric-row div{border-right:0;border-bottom:1px solid var(--line-2)}
  .access-metric-row div:last-child{border-bottom:0}
  .access-add-key-form{grid-template-columns:1fr}
  .access-target-card{align-items:flex-start;flex-direction:column}
  .access-browser-list{grid-template-columns:1fr}
}

/* Karten & Grids */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:16px}
.card-h{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}
.card-h h2{font-size:14px;font-weight:600;letter-spacing:0;min-width:0}
.card-h p{font-size:12.5px;color:var(--text-3);margin-top:3px;font-weight:400;line-height:1.5}
.card-h .right{display:flex;align-items:center;gap:9px}
.hint{font-family:var(--font-mono);font-size:11.5px;color:var(--text-3)}
.card-b{padding:18px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kv{display:grid;grid-template-columns:1fr 1fr;gap:0}
.kv .row{padding:13px 0;border-bottom:1px solid var(--line-2);display:flex;flex-direction:column;gap:4px}
.kv .k{font-size:12px;color:var(--text-3)}
.kv .v{font-family:var(--font-mono);font-size:13px;color:var(--text)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;font-family:var(--font-mono);font-weight:550;font-size:.74rem;padding:7px 12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;text-decoration:none;line-height:1.15;white-space:nowrap}
.btn:hover{border-color:var(--acc);color:var(--acc)}
.btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9}
.btn-primary{background:var(--acc);border-color:var(--acc);color:var(--acc-ink)}
.btn-primary:hover{color:var(--acc-ink);filter:brightness(1.08)}
.btn-danger{color:var(--err);border-color:color-mix(in srgb,var(--err) 45%,transparent)}
.btn-danger:hover{color:var(--err);border-color:var(--err);background:color-mix(in srgb,var(--err) 12%,transparent)}
.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}
.btn-ghost:hover{border-color:var(--acc-line);color:var(--text)}
.btn-row{display:flex;gap:10px;flex-wrap:wrap}
.btn-sm{min-height:30px;padding:5px 10px;font-size:.7rem}
.btn-sm svg{width:13px;height:13px}
.btn-lg{min-height:40px;padding:9px 14px;font-size:.78rem}
.btn-block{width:100%;justify-content:center}
.btn-action{background:var(--surface-2);color:var(--text-3);border-color:var(--line)}
.btn-action:hover{border-color:var(--acc);color:var(--acc)}
.btn-action.is-rolling svg{animation:dice-roll .4s ease-out}
@keyframes dice-roll{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}

/* Mail: Setup Config, DNS Records, Autoresponder, Archiv Badge */
.mail-cfg{display:flex;flex-direction:column;gap:4px}
.mail-cfg-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;font-size:12.5px}
.mail-cfg-row span:first-child{color:var(--text-3);flex:none}
.mail-cfg-val{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);flex:1;min-width:0;justify-content:flex-end;text-align:right}
.mail-cfg-val b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.mail-cfg-val small{flex:none}
.mail-title{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.mail-title-copy{flex:1;min-width:240px}
.mail-promo{margin-bottom:14px;padding:11px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mail-promo-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:var(--acc);flex:none}
.mail-promo-copy{font-size:13px;color:var(--text-2)}
.mail-promo-copy b{color:var(--text)}
.mail-promo-cta{margin-left:auto;text-decoration:none}
.mail-jump{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.mail-jump-label{font-size:11.5px;color:var(--text-3)}
.mail-jump .pill{text-decoration:none}
.mail-domain-card{margin-bottom:16px}
.mail-domain-head{flex-wrap:wrap;gap:10px}
.mail-domain-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.mail-domain-title h2{margin:0}
.pill-button{cursor:pointer;background:transparent;-webkit-appearance:none;appearance:none}
.mail-domain-divider{width:1px;height:20px;background:var(--line-2);display:inline-block}
.mail-empty-action{display:flex;justify-content:center}
.mail-link-pill{text-decoration:none}
.mail-archive-book-btn{font-size:11.5px;padding:3px 9px;color:var(--acc);border-color:var(--acc);background:var(--acc-dim);font-weight:600}
.mail-row-actions{text-align:right;white-space:nowrap}
.mail-setup-summary{border-top:1px solid var(--line-2)}
.mail-setup-state{margin-left:auto}
.mail-setup-grid{margin-top:14px}
.mail-handoff{border-top:1px solid var(--line-2);margin-top:14px;padding-top:11px;display:flex;gap:10px;align-items:center;font-size:12px;color:var(--text-3);flex-wrap:wrap}
.mail-handoff span{flex:1}
.newmail-form{display:flex;align-items:center;gap:8px;padding:14px 18px;background:var(--acc-dim);flex-wrap:wrap}
.newmail-label{font-weight:600;color:var(--acc);font-size:13.5px}
.newmail-local{display:flex;align-items:center;gap:0;flex:1;min-width:200px}
.newmail-local .inp{flex:1;min-width:0;border-radius:var(--radius-lg) 0 0 var(--radius-lg);border-right:0}
.newmail-domain{padding:8px 11px;background:var(--surface-2);border:1px solid var(--line);border-left:0;border-radius:0 var(--radius-lg) var(--radius-lg) 0;color:var(--text-3);font-family:var(--font-mono);font-size:13px}
.newmail-mode{flex:0 1 auto;min-width:150px}
.newmail-forward{flex:1;min-width:180px}
.newmail-reply{flex:1 1 100%;min-width:240px;resize:vertical}
.mail-section-title{font-size:14px;font-weight:600;margin:0 0 8px}
.mail-section-copy{font-size:12.5px;color:var(--text-3);margin-bottom:10px;line-height:1.55}
.mail-warn{color:var(--warn)}
.catchall-form{display:flex;gap:6px;flex-wrap:wrap}
.catchall-input{flex:1;min-width:180px}
.catchall-reset-form{margin-top:6px}
.catchall-reset-button{font-size:11.5px;color:var(--text-2)}
.maildns-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.maildns-head .mail-section-title{margin-bottom:0}
.maildns-recheck{margin-left:auto}
.maildns-pills{display:flex;gap:6px;flex-wrap:wrap}
.maildns-recs{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.maildns-rec{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px}
.maildns-rec-h{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.maildns-rec-tag{font-size:10.5px;font-weight:700;letter-spacing:.03em;color:var(--acc);background:var(--acc-dim);padding:2px 7px;border-radius:var(--radius);flex:none}
.maildns-rec-host{font-size:11.5px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.maildns-rec-type{font-size:10.5px;color:var(--text-3);font-family:var(--font-mono);flex:none}
.maildns-rec .pwcopy{flex:none}
.maildns-rec-val{display:block;font-family:var(--font-mono);font-size:11.5px;color:var(--text);word-break:break-all;line-height:1.45}
.maildns-rec-note{display:block;font-size:11.5px;color:var(--text-3);font-style:italic;line-height:1.45}
.maildns-rec-note.is-current{margin-top:6px}
.maildns-rec-mxsplit{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.maildns-rec-mxsplit.has-gap{margin-top:6px}
.maildns-field{display:inline-flex;align-items:center;gap:6px}
.maildns-field.is-wide{flex:1;min-width:160px}
.maildns-field.is-wide .maildns-rec-val{flex:1}
.maildns-field-label{font-size:11px;color:var(--text-3)}
.note.err{border-color:var(--err)}
.note.err svg{stroke:var(--err)}
.appicon{width:1em;height:1em;display:inline-block;vertical-align:-0.14em;flex:none}
.pill .appicon{width:15px;height:15px;vertical-align:0}
.appicon-brand.appicon-typo3{color:var(--app-typo3)}
.appicon-brand.appicon-wordpress{color:var(--app-wordpress)}
.appicon-brand.appicon-nextcloud{color:var(--app-nextcloud)}
.appicon-brand.appicon-laravel{color:var(--app-laravel)}
.appicon-brand.appicon-git{color:var(--app-git)}
.ar-toggle{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-2);cursor:pointer}
.ar-range{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:var(--surface-2);padding:12px;border:1px solid var(--line);border-radius:var(--radius);margin:0}
.ar-range-item{display:flex;flex-direction:column;gap:4px}
.ar-range-item label{font-size:11.5px;color:var(--text-3)}
.mail-archive-badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10.5px;padding:2px 7px;border-radius:var(--radius);border:1px solid var(--line);color:var(--text-3);margin-left:6px}
.mail-archive-badge svg{width:11px;height:11px;fill:none;stroke:currentColor}
.mail-archive-badge-active{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}
.archive-modal-card{max-width:520px}
.archive-modal-icon{background:var(--acc-dim);color:var(--acc)}
.archive-modal-copy{margin-bottom:14px}
.archive-modal-summary{background:var(--line-2);border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:12px;font-size:13px;line-height:1.65}
.archive-modal-price-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-sans);font-weight:700;font-size:15px;color:var(--text);margin-bottom:8px;gap:12px}
.archive-modal-price-row b{color:var(--acc)}
.archive-modal-price-row span span{color:var(--text-3);font-weight:500;font-size:12px}
.archive-modal-list{list-style:none;color:var(--text-2);font-size:12.5px;padding:0;margin:0}
.archive-modal-list li{padding:2px 0}
.archive-modal-legal{font-size:12px;color:var(--text-3);line-height:1.55;margin-bottom:14px}
.archive-modal-form{display:flex;flex-direction:column;gap:8px}
.archive-modal-check{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--text-2);line-height:1.55;cursor:pointer}
.archive-modal-actions{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap;justify-content:flex-end}
.dnslist{display:flex;flex-direction:column}
.dnsrow{padding:14px 18px;border-top:1px solid var(--line-2)}
.dnsrow:first-child{border-top:0}
.dnsrow-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}
.dnsrow-title{display:flex;align-items:center;gap:9px;min-width:0}
.dnsrow-title b{font-weight:600;font-size:14px;color:var(--text)}
.dnsrow-tag{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:3px 9px;border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.04em}
.dnsrow-desc{font-size:12.5px;color:var(--text-3);line-height:1.5;margin-bottom:10px}
.dnsrow-codewrap{display:flex;flex-direction:column;gap:5px}
.dnsrow-codelabel{font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em}
.dnsrow-code{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;border-radius:var(--radius);border:1px solid var(--line-2);background:var(--surface-2)}
.dnsrow-code code{flex:1;min-width:0;font-family:var(--font-mono);font-size:12px;color:var(--text);word-break:break-all;line-height:1.5;background:transparent;padding:0;max-height:140px;overflow-y:auto}
.dnsrow-code .pwcopy{margin-top:1px;width:28px;height:28px;border-radius:var(--radius)}
.dnsrow-code .pwcopy svg{width:13px;height:13px}
.dnsrow-code.is-active{border-color:color-mix(in srgb,var(--ok) 45%,transparent);background:color-mix(in srgb,var(--ok) 12%,transparent)}
.dnsrow-code.is-todo{border-color:var(--acc-line);background:var(--acc-dim)}
.dnsrow-code.is-todo code{color:var(--acc-2)}
.dnsrow-mxsplit{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.dnsrow-mxfield{display:flex;flex-direction:column;gap:3px;min-width:0}
.dnsrow-mxfield:first-child{flex:0 0 auto}
.dnsrow-mxfield:last-child{flex:1 1 200px;min-width:0}
.dnsrow-mxkey{font-size:10.5px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;padding-left:2px}
.dnsrow-code-mxprio{min-width:0}
.dnsrow-code-mxprio code{flex:0 0 auto;padding-right:4px}

/* Tabellen & Pills */
.tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.tbl th{text-align:left;font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-3);font-weight:500;padding:10px 14px;border-bottom:1px solid var(--line)}
.tbl td{padding:13px 14px;border-bottom:1px solid var(--line-2);color:var(--text);vertical-align:middle}
.tbl tr:hover td{background:var(--surface-2)}
.tbl .mono{font-family:var(--font-mono);font-size:12.5px;color:var(--text-2)}
.pill{font-family:var(--font-mono);font-size:11px;padding:4px 9px;border-radius:var(--radius);display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);color:var(--text-2)}
.pill .d{width:6px;height:6px;border-radius:50%}
.pill:not(.ok):not(.warn):not(.acc):not(.err):not(.info) .d{display:none}
.pill.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}
.pill.ok .d{background:var(--ok)}
.pill.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}
.pill.warn .d{background:var(--warn)}
.pill.acc{color:var(--acc);border-color:var(--acc-line)}
.pill.acc .d{background:var(--acc)}
.pill.err{color:var(--err);border-color:color-mix(in srgb,var(--err) 45%,transparent)}
.pill.err .d{background:var(--err)}
.pill.info{color:var(--info);border-color:color-mix(in srgb,var(--info) 45%,transparent)}
.pill.info .d{background:var(--info)}
.state-off{font-family:var(--font-mono);font-size:12px;color:var(--text-3)}
.st{font-family:var(--font-mono);font-size:12px;display:inline-flex;align-items:center;gap:4px}
.st .d{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.st.ok,.st.on{color:var(--ok)}
.st.run{color:var(--warn)}
.st.err,.st.susp{color:var(--err)}
.st.idle{color:var(--text-3)}
/* Tickets-Listing: SLA-Breach als Inline-Warn-Indicator */
.pill.tkt-prio-urgent{background:color-mix(in srgb,var(--err) 14%,transparent);color:var(--err);border-color:color-mix(in srgb,var(--err) 30%,transparent)}
.pill.tkt-prio-high{background:color-mix(in srgb,var(--warn) 14%,transparent);color:var(--warn);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}
.pill.tkt-prio-normal{background:var(--line-2);color:var(--text-2)}
.pill.tkt-prio-low{background:transparent;color:var(--text-3)}
.tkt-sla-warn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err);border-radius:50%;border:1px solid color-mix(in srgb,var(--err) 40%,transparent)}
details.adv-card>summary{cursor:pointer;list-style:none}
details.adv-card>summary::-webkit-details-marker{display:none}
details.adv-card>summary::after{content:"";width:8px;height:8px;border-right:2px solid var(--text-3);border-bottom:2px solid var(--text-3);transform:rotate(45deg);transition:transform .15s;flex:none;margin-left:8px}
details.adv-card[open]>summary::after{transform:rotate(-135deg)}
details.adv-card>summary h2{flex:1}

/* Ticket-Maßnahmen: Kunden-Dropdown im Ticket-Detail
   (portiert aus suite2-4 app.css .tk-menu-wrap/.tk-menu/.qa-select, tokenisiert) */
.qa-select{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-lg);color:var(--text);font-family:var(--font-mono);font-size:12.5px;padding:6px 9px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.qa-select:hover,.qa-select[aria-expanded="true"]{border-color:var(--acc-line);color:var(--acc)}
.tk-menu-wrap{position:relative;margin-left:auto}
.tk-menu{position:absolute;top:115%;right:0;min-width:13rem;max-width:calc(100vw - 20px);max-height:calc(100vh - 90px);overflow-y:auto;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-lg);box-shadow:0 14px 34px -14px rgba(0,0,0,.5);padding:5px;display:none;z-index:25}
.tk-menu.open{display:block}
.tk-menu a,.tk-menu button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;color:var(--text-2);font-family:var(--font-sans);font-size:13px;padding:8px 10px;border-radius:var(--radius);cursor:pointer;text-decoration:none}
.tk-menu a:hover,.tk-menu button:hover{background:var(--surface-2);color:var(--text)}
.tk-menu a svg,.tk-menu button svg{color:var(--text-3);flex:none}

.admin-ticket-crumb{margin-bottom:16px}
.admin-ticket-head{align-items:flex-start;gap:18px;margin-bottom:18px}
.admin-ticket-title{display:grid;gap:8px;min-width:0;flex:1}
.admin-ticket-title h1{margin:0;line-height:1.12;overflow-wrap:anywhere;word-break:normal}
.admin-ticket-number{display:inline-flex;width:max-content;max-width:100%;padding:3px 8px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface-2);color:var(--text-3);font-size:12.5px;line-height:1.2;overflow-wrap:anywhere}
.admin-ticket-state{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap;min-width:0}
.admin-ticket-flash{margin-top:0;margin-bottom:16px}
.admin-ticket-list-head{align-items:flex-start;margin-bottom:16px}
.admin-ticket-list-title{min-width:0}
.admin-ticket-list-sub{display:flex;gap:10px;flex-wrap:wrap}
.admin-ticket-list-sub span{display:inline-flex;color:var(--text-2)}
.admin-ticket-list-actionsbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.admin-ticket-settings-btn{min-width:36px}
.admin-ticket-create-btn{min-width:148px}
.admin-ticket-list-filter-card{margin-bottom:16px;overflow:hidden}
.admin-ticket-filter-actions{gap:8px;flex-wrap:wrap}
.admin-ticket-filter-row{padding:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:8px}
.tkt-filter{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 10px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);font-size:12.5px;color:var(--text-2);text-decoration:none;font-weight:600;transition:border-color .12s,color .12s,background-color .12s}
.tkt-filter:hover{border-color:var(--acc-line);color:var(--acc)}
.tkt-filter.is-active{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}
.tkt-filter-count{background:rgba(255,255,255,.18);padding:1px 7px;border-radius:var(--radius);font-size:11px;font-weight:700;color:inherit}
.tkt-filter.is-active .tkt-filter-count{background:rgba(255,255,255,.28)}
html[data-theme="light"] .tkt-filter-count{background:rgba(0,0,0,.10)}
.tkt-filter-urgent{border-color:color-mix(in srgb,var(--err) 40%,transparent);color:var(--err)}
.tkt-filter-warn{border-color:color-mix(in srgb,var(--warn) 40%,transparent);color:var(--warn)}
.admin-ticket-new-form{padding:14px 22px;background:var(--acc-dim);border-top:1px solid var(--acc-line)}
.admin-ticket-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:10px}
.admin-ticket-body-field{margin-bottom:12px}
.admin-ticket-form-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.admin-ticket-table-card{overflow:hidden}
.admin-ticket-table th,.admin-ticket-table td{vertical-align:middle}
.admin-ticket-actions-head{text-align:right}
.admin-ticket-row{cursor:pointer}
.admin-ticket-table-number{font-size:11.5px;color:var(--text-3)}
.admin-ticket-table-subject>div{display:flex;align-items:center;gap:8px;min-width:0}
.admin-ticket-table-subject b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-ticket-table small{color:var(--text-3)}
.admin-ticket-list-actions{text-align:right;white-space:nowrap}
.admin-ticket-inline-form{display:inline;margin:0}
.admin-ticket-icon-btn{width:30px;height:30px;padding:0;justify-content:center}
.admin-ticket-icon-btn.is-ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 55%,transparent)}
.admin-ticket-icon-btn.is-danger{color:var(--err);border-color:color-mix(in srgb,var(--err) 35%,transparent)}
.admin-ticket-empty{text-align:center;padding:24px;color:var(--text-3)}
.ticket-settings-head{margin-bottom:18px}
.ticket-settings-sub{display:flex;gap:10px;flex-wrap:wrap}
.ticket-settings-sub span{color:var(--text-2)}
.ticket-settings-card{margin-top:16px}
.ticket-settings-card.is-section{margin-top:24px}
.ticket-settings-head-note{font-size:12px}
.ticket-settings-width{width:200px}
.ticket-settings-hours{width:100%}
.ticket-settings-muted{color:var(--text-3)}
.ticket-settings-meta{color:var(--text-3);font-size:11px}
.ticket-settings-rule{color:var(--text-2);line-height:1.5}
.ticket-settings-note{padding:12px 18px;border-top:1px solid var(--line-2);font-size:12px;color:var(--text-3);line-height:1.5}
.ticket-settings-body{padding:18px 22px;display:grid;gap:12px}
.ticket-settings-grid,.ticket-settings-grid-wide,.ticket-settings-grid-three{display:grid;gap:14px}
.ticket-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ticket-settings-grid-wide{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.ticket-settings-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}
.ticket-settings-body-field{margin-top:10px}
.ticket-settings-info{padding:10px 12px;background:var(--surface-2);border-radius:var(--radius);font-size:12px;color:var(--text-3);line-height:1.5}
.ticket-settings-info.is-accent{background:var(--acc-dim);border:1px solid var(--acc-line);color:var(--text-2)}
.ticket-settings-savebar{margin-top:16px}
.ticket-settings-panel-form{padding:14px 22px;background:var(--acc-dim);border-top:1px solid var(--acc-line)}
.ticket-settings-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;flex-wrap:wrap}
.ticket-settings-table .admin-field .inp,.ticket-settings-body .admin-field .inp,.ticket-settings-panel-form .admin-field .inp{width:100%}
.ticket-settings-state-head{width:80px;text-align:center}
.ticket-settings-actions-head{text-align:right}
.ticket-settings-state-cell{text-align:center}
.ticket-settings-actions{text-align:right;white-space:nowrap;display:flex;gap:6px;justify-content:flex-end;align-items:center}
.ticket-settings-state-btn{padding:4px 10px;white-space:nowrap}
.ticket-settings-state-btn.is-active{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 55%,transparent)}
.ticket-settings-state-btn.is-inactive{color:var(--text-3)}
.ticket-settings-edit-cell{padding:0;background:var(--acc-dim);border-top:1px solid var(--acc-line);border-bottom:1px solid var(--acc-line)}
.ticket-settings-pill-row{display:flex;gap:5px;flex-wrap:wrap}
.ticket-settings-codearea{width:100%;font-family:var(--font-mono);font-size:12px;resize:vertical}
.ticket-settings-help{display:block;margin-top:6px;font-size:11px;color:var(--text-3);line-height:1.45}
.ticket-settings-narrow{max-width:300px;margin-bottom:10px}
.tkt-auto-pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;padding:3px 8px;border-radius:var(--radius);font-weight:600;white-space:nowrap;border:1px solid var(--line);color:var(--text-2);background:var(--surface-2)}
.tkt-auto-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor}
.tkt-auto-pill.is-auto-assign{color:var(--info);border-color:color-mix(in srgb,var(--info) 35%,transparent);background:color-mix(in srgb,var(--info) 12%,transparent)}
.tkt-auto-pill.is-auto-reply{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 35%,transparent);background:color-mix(in srgb,var(--warn) 12%,transparent)}
.tkt-auto-pill.is-sla-escalation{color:var(--err);border-color:color-mix(in srgb,var(--err) 35%,transparent);background:color-mix(in srgb,var(--err) 12%,transparent)}
.tkt-auto-pill.is-auto-close{color:var(--text-3)}
.ticket-auto-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:10px}
.ticket-auto-grid-name{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.ticket-auto-wide{grid-column:auto}
.ticket-auto-type-block{margin-bottom:14px}
.ticket-auto-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg)}
.ticket-auto-tab{padding:10px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;border-right:1px solid var(--line);text-align:center;color:var(--text-2)}
.ticket-auto-tab:last-child{border-right:0}
.ticket-auto-tab.is-selected{background:var(--acc-dim);box-shadow:inset 0 -2px 0 var(--acc)}
.ticket-auto-tab b{font-size:12.5px;color:var(--text)}
.ticket-auto-tab small{font-size:10.5px;color:var(--text-3)}
.ticket-auto-radio{position:absolute;opacity:0;pointer-events:none}
.ticket-auto-fields h4{font-size:12px;color:var(--text-3);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin:14px 0 8px}
.ticket-auto-fields h4:first-child{margin-top:8px}
.ticket-auto-activate{margin-top:14px}
.admin-ticket-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-template-areas:"main side";gap:18px;align-items:start}
.admin-ticket-main{grid-area:main;display:grid;gap:16px;min-width:0}
.admin-ticket-side{grid-area:side;display:grid;gap:16px;min-width:0}
.admin-ticket-card{min-width:0;margin-bottom:0}
.admin-ticket-card .card-h h2 small{color:var(--text-3);font-weight:400}
.admin-ticket-card-body{padding:14px 18px}
.admin-ticket-card-body .admin-field{margin-bottom:12px}
.admin-ticket-side-form{display:grid;gap:10px;padding:14px 18px}
.admin-ticket-side-form .inp,.admin-ticket-link-form .inp,.admin-ticket-card-body .inp{width:100%}
.admin-ticket-full-btn{width:100%;justify-content:center}
.admin-ticket-watch-form{display:grid;gap:8px;padding:0 18px 14px}
.admin-ticket-watch-form .is-watching{color:var(--acc);border-color:var(--acc-line)}
.admin-ticket-watch-form small{font-size:11px;color:var(--text-3);line-height:1.45}
.admin-ticket-watchers{padding:12px 18px 14px;border-top:1px solid var(--line-2);font-size:12.5px;color:var(--text-2)}
.admin-ticket-section-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);font-weight:600;margin:8px 0 6px}
.admin-ticket-customer{padding:14px 18px;font-size:13px;line-height:1.6;min-width:0}
.admin-ticket-customer-row{display:flex;align-items:center;gap:8px;min-width:0}
.admin-ticket-customer-link,.admin-ticket-author-link{font-weight:700;color:var(--text);min-width:0;overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px}
.admin-ticket-muted{color:var(--text-3)}
.admin-ticket-reporter-mail{color:var(--text-3);font-size:12px;overflow-wrap:anywhere}
.admin-ticket-suggestion{border:1px solid var(--line-2);border-radius:var(--radius-lg);padding:10px 12px;margin:0 0 12px;background:var(--surface-2)}
.admin-ticket-suggestion-head{display:flex;align-items:center;gap:7px;color:var(--text-3);font-size:12px;font-weight:600;margin-bottom:6px}
.admin-ticket-suggestion-title{font-size:13px;font-weight:700;color:var(--text);overflow-wrap:anywhere}
.admin-ticket-link-form{display:grid;gap:8px;margin-top:8px}
.admin-ticket-error{color:var(--err);font-size:12px}
.admin-ticket-sla{display:grid;gap:12px;padding:14px 18px;font-size:12.5px;line-height:1.55}
.admin-ticket-sla-row{display:grid;gap:2px}
.admin-ticket-sla-row span{color:var(--text-3)}
.admin-ticket-sla-row small.is-ok{color:var(--ok)}
.admin-ticket-sla-row small.is-error{color:var(--err)}
.admin-ticket-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}
.tkt-qa-form{margin:0;min-width:0}
.tkt-shortcut{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;min-height:74px;padding:10px 8px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;font-size:11.5px;color:var(--text-2);font-weight:600;transition:border-color .12s,color .12s,background-color .12s}
.tkt-shortcut:hover{border-color:var(--acc-line);color:var(--acc);background:var(--acc-dim)}
.tkt-shortcut svg{color:var(--acc);flex:none}
.tkt-shortcut span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.admin-ticket-help{display:block;margin-top:10px;font-size:11.5px;color:var(--text-3);line-height:1.4}
.admin-ticket-thread{padding:18px 22px}
.tkt-comment{padding:12px 14px;border-bottom:1px solid var(--line-2);margin-bottom:10px;min-width:0}
.tkt-comment:last-child{border-bottom:0;margin-bottom:0}
.tkt-comment-head{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;flex-wrap:wrap;min-width:0}
.tkt-comment-head b{color:var(--text)}
.tkt-comment-head small{color:var(--text-3)}
.tkt-comment-body{font-size:13.5px;color:var(--text-2);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.tkt-comment-internal{background:color-mix(in srgb,var(--warn) 10%,transparent);border-radius:var(--radius)}
.tkt-comment-system{background:var(--line-2);border-radius:var(--radius);font-family:var(--font-mono);font-size:12.5px}
.tkt-comment-initial{background:var(--surface-2);padding:10px 14px}
.tkt-comment-initial small{color:var(--text-3);display:block;margin-bottom:4px}
.admin-ticket-reply-form{border-top:1px solid var(--line-2);padding:14px 22px}
.u-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.admin-ticket-textarea{width:100%;resize:vertical}
.admin-ticket-counter{display:flex;justify-content:flex-end;margin-top:3px}
.admin-ticket-counter small{font-size:11px;color:var(--text-3);font-family:var(--font-mono)}
.admin-ticket-file-picker{margin-top:12px}
.admin-ticket-reply-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:12px;flex-wrap:wrap}
.admin-ticket-check{display:flex;gap:6px;align-items:center;font-size:12.5px;cursor:pointer;color:var(--text-2)}
.admin-ticket-macros{padding:14px 22px;display:flex;flex-wrap:wrap;gap:8px}
.admin-ticket-events{padding:14px 22px}
.admin-ticket-events div{display:grid;grid-template-columns:118px minmax(0,1fr);gap:10px;font-size:12.5px;color:var(--text-3);padding:6px 0;border-bottom:1px solid var(--line-2)}
.admin-ticket-events div:last-child{border-bottom:0}
.admin-ticket-events span{color:var(--text-2);overflow-wrap:anywhere}
.tkt-att-block{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.tkt-att{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--bg);min-width:0}
.tkt-att.is-infected{border-color:color-mix(in srgb,var(--err) 45%,transparent);background:color-mix(in srgb,var(--err) 6%,transparent)}
.tkt-att-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-3)}
.tkt-att-icon svg{width:22px;height:22px}
.tkt-att-meta{flex:1;min-width:0}
.tkt-att-name{font-size:13px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}
.tkt-att-name a{color:var(--acc-2);text-decoration:none}
.tkt-att-name a:hover{text-decoration:underline}
.tkt-att-file-muted{color:var(--text-3)}
.tkt-att-sub{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:2px;color:var(--text-3)}
.tkt-att-status{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600}
.tkt-att-status.is-clean{color:var(--ok)}
.tkt-att-status.is-infected,.tkt-att-status.is-error{color:var(--err)}
.tkt-att-status.is-pending{color:var(--warn)}
.tkt-att-scanner{font-size:10.5px;color:var(--text-3)}
.tkt-att-warn{margin-top:6px;padding:6px 8px;background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err);border-radius:var(--radius);font-size:11.5px;line-height:1.4}
.tkt-att-spinner{animation:rotate 1.6s linear infinite}
@keyframes rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@media(max-width:900px){
  .admin-ticket-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"side" "main"}
  .admin-ticket-side,.admin-ticket-main{min-width:0}
}
@media(max-width:700px){
  .admin-ticket-head{align-items:stretch;gap:12px}
  .admin-ticket-filter-actions{width:100%;display:grid;grid-template-columns:1fr}
  .admin-ticket-filter-actions .btn{width:100%;justify-content:center}
  .admin-ticket-filter-row{padding:12px 14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .tkt-filter{justify-content:center;min-width:0}
  .admin-ticket-new-form{padding:14px}
  .admin-ticket-form-grid{grid-template-columns:1fr}
  .admin-ticket-form-actions{display:grid;grid-template-columns:1fr}
  .admin-ticket-form-actions .btn{width:100%;justify-content:center}
  .ticket-settings-grid,.ticket-settings-grid-wide,.ticket-settings-grid-three,.ticket-auto-grid,.ticket-auto-grid-name{grid-template-columns:1fr}
  .ticket-settings-body,.ticket-settings-panel-form{padding:14px}
  .ticket-settings-form-actions{display:grid;grid-template-columns:1fr}
  .ticket-settings-form-actions .btn{width:100%;justify-content:center}
  .ticket-settings-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));white-space:normal}
  .ticket-settings-actions .btn,.ticket-settings-actions form{width:100%;justify-content:center}
  .ticket-settings-state-cell{width:100%;text-align:left}
  .ticket-settings-state-btn{width:100%;justify-content:center}
  .ticket-settings-pill-row{width:100%;justify-content:flex-start}
  .ticket-auto-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ticket-auto-tab:nth-child(2){border-right:0}
  .ticket-auto-tab:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .tbl-cards > tbody > tr > td.admin-ticket-table-subject{align-items:flex-start;flex-direction:column;text-align:left}
  .admin-ticket-table-subject>div{width:100%}
  .admin-ticket-table-subject b{white-space:normal;overflow-wrap:anywhere}
  .admin-ticket-list-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;white-space:normal}
  .admin-ticket-inline-form,.admin-ticket-icon-btn{width:100%}
  .admin-ticket-state{justify-content:flex-start}
  .admin-ticket-number{width:100%}
  .admin-ticket-card-body,.admin-ticket-thread,.admin-ticket-reply-form,.admin-ticket-macros,.admin-ticket-events{padding-left:14px;padding-right:14px}
  .admin-ticket-side-form,.admin-ticket-watch-form,.admin-ticket-customer,.admin-ticket-sla{padding-left:14px;padding-right:14px}
  .admin-ticket-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-ticket-reply-footer{display:grid;grid-template-columns:1fr;align-items:stretch}
  .admin-ticket-reply-footer .btn{width:100%;justify-content:center}
  .admin-ticket-customer-row{align-items:flex-start;flex-wrap:wrap}
  .admin-ticket-customer-row .tk-menu-wrap{margin-left:0;width:100%}
  .admin-ticket-customer-row .qa-select{width:100%;justify-content:space-between}
  .tk-menu{left:0;right:auto;width:min(18rem,calc(100vw - 48px))}
  .admin-ticket-events div{grid-template-columns:1fr;gap:3px}
  .tkt-comment-head{gap:6px}
  .tkt-att{gap:8px}
  .tkt-att-icon{width:28px;height:28px}
}

/* Domains: Aktions-Dropdown (details/summary) */
.dom-actions{position:relative;display:inline-block}
.dom-actions-summary{list-style:none;cursor:pointer;font-family:var(--font-mono);font-size:12px;color:var(--text-2);display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.dom-actions-summary:hover{border-color:var(--acc);color:var(--acc)}
.dom-actions-summary::-webkit-details-marker{display:none}
.dom-actions[open] .dom-actions-summary{border-color:var(--acc);color:var(--acc)}
/* position:fixed  zu  entkommt dem overflow-Clip des .u-scroll-x-Wrappers; top/left setzt app.js */
.dom-actions-menu{position:fixed;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:8px;width:320px;max-width:92vw;z-index:1000;box-shadow:0 14px 34px -14px rgba(0,0,0,.5);text-align:left;overflow-y:auto}
.dom-actions-section{padding:8px 6px}
.dom-actions-label{font-size:12.5px;font-weight:500;margin-bottom:6px;display:flex;align-items:center;gap:6px;color:var(--text)}
.dom-actions-select{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:7px 10px;font-size:13px;color:var(--text);margin-bottom:6px;font-family:var(--font-sans)}
.dom-actions-btn{display:flex;width:100%;box-sizing:border-box;justify-content:center}
.dom-actions-remove{width:100%;background:none;border:0;cursor:pointer;text-align:left;display:flex;align-items:center;gap:6px;color:var(--err);font-size:12.5px;padding:4px 0}
/* Mail-Partial-Bibliothek (U1): Menü-Einträge im Postfach-Aktionen-Dropdown (Button + Link einheitlich) */
.dom-actions-item{display:flex;align-items:center;gap:7px;width:100%;box-sizing:border-box;background:none;border:0;cursor:pointer;font-family:var(--font-sans);font-size:12.5px;font-weight:500;color:var(--text);padding:7px 8px;border-radius:var(--radius);text-align:left;text-decoration:none}
.dom-actions-item:hover{background:var(--surface-2);color:var(--acc)}
.dom-actions-item.danger{color:var(--err)}
.dom-actions-item.danger:hover{background:var(--surface-2);color:var(--err)}
.dom-actions-item svg{width:13px;height:13px;flex:none}
.dom-actions-item .pill{margin-left:auto}
.dom-actions-sep{border-top:1px solid var(--line-2);margin:2px 6px}
.dom-actions-menu form{margin:0}
/* Domain-Anker der Mail-Zentrale: Deep-Link #domain-<slug> nicht unter der Topbar verstecken */
.mail-domain-card{scroll-margin-top:84px}

/* Domains: Verzeichnis-Browser */
.fb-wrap{max-width:100%}
.fbrowser{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface-2)}
.fb-bar{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--surface)}
.fb-up{background:none;border:1px solid var(--line);border-radius:var(--radius);padding:4px;cursor:pointer;color:var(--text-2);display:grid;place-items:center}
.fb-up:disabled{opacity:.4;cursor:default}
.fb-crumb{font-family:var(--font-mono);font-size:12px;color:var(--text-2)}
.fb-list{max-height:210px;overflow-y:auto;padding:6px}
.fb-item{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;cursor:pointer;text-align:left;padding:8px 10px;border-radius:var(--radius);color:var(--text);font-size:13px;font-family:var(--font-mono)}
.fb-item:hover{background:var(--surface)}
.fb-ico{color:var(--acc);display:grid;place-items:center}
.fb-empty{padding:14px;font-size:12.5px;color:var(--text-3);text-align:center}
.fb-selected{margin-top:8px;font-size:12.5px;color:var(--text-2)}
.fb-selected code{font-family:var(--font-mono);color:var(--acc)}
.fb-manual{margin-top:8px;font-size:12.5px;color:var(--text-2)}
.fb-manual summary{cursor:pointer}
.fb-manual .inp{margin-top:6px}
.dhelp-ic{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--acc-dim);color:var(--acc);display:grid;place-items:center;flex:none}
.dhelp-ic svg{width:20px;height:20px}

/* Pakete / Preis-Karten */
.pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:8px}
.pkg-card{position:relative;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:22px 20px;display:flex;flex-direction:column}
.pkg-card.is-popular{border-color:var(--acc)}
.pkg-card.is-current{border-color:var(--ok)}
.pkg-badge-pop{position:absolute;top:-10px;left:20px;background:var(--acc);color:var(--acc-ink);font-family:var(--font-mono);font-size:11px;padding:3px 10px;border-radius:var(--radius)}
.pkg-head h3{font-size:18px;font-weight:600;letter-spacing:0}
.pkg-sub{font-size:12.5px;color:var(--text-3);margin-top:2px}
.pkg-price{margin:16px 0 4px}
.pkg-price-num{font-size:30px;font-weight:600;letter-spacing:0}
.pkg-price-unit{display:block;font-size:11.5px;color:var(--text-3);margin-top:2px}
.pkg-recommend{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-2);padding:10px 0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);margin:14px 0}
.pkg-recommend svg{width:16px;height:16px;flex:none;stroke:var(--acc)}
.pkg-features{list-style:none;display:flex;flex-direction:column;gap:9px;margin:4px 0 18px;flex:1}
.pkg-features li{display:flex;align-items:flex-start;gap:9px;font-size:13px}
.pkg-features svg{width:16px;height:16px;flex:none;margin-top:1px}
.pkg-btn{width:100%;justify-content:center}

/* Neuer-Stack-Wizard */
.creator{max-width:1180px;margin:0 auto;padding:30px 22px 80px}
body.has-side-nav .creator{width:min(1180px,calc(100vw - var(--side-w) - 64px));max-width:none;margin-left:calc(var(--side-w) + 32px);margin-right:32px}
.creator h1{font-size:27px;font-weight:600;letter-spacing:0;margin-top:6px}
.creator-crumb{display:flex;align-items:center;gap:9px;margin-bottom:10px;font-family:var(--font-mono);font-size:12px;color:var(--text-3)}
.creator-crumb a{color:var(--text-2);text-decoration:none}
.creator-crumb a:hover{color:var(--text)}
.creator-crumb span{color:var(--text-3)}
.creator-error{border-color:var(--err);display:block}
.creator-error ul{margin:6px 0 0;padding-left:18px}
.creator-help{margin:-6px 0 14px}
.step{display:flex;align-items:center;gap:10px;margin:24px 0 6px}
.step-spaced{margin-top:24px}
.step .n{width:24px;height:24px;border-radius:var(--radius);background:var(--acc-dim);color:var(--acc);display:grid;place-items:center;font-family:var(--font-mono);font-weight:600;font-size:12px;flex:none}
.step h3{font-size:15px;font-weight:600}
.choices{display:grid;gap:12px;margin-bottom:8px}
.choices-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.choice{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;transition:.15s}
.choice:hover{border-color:var(--acc)}
.choice.sel{border-color:var(--acc);background:var(--acc-dim)}
.choice .ic{width:42px;height:42px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;color:var(--text);flex:none}
.choice.sel .ic{color:var(--acc);border-color:var(--acc)}
.choice .ic svg{width:24px;height:24px}
.choice b{font-size:14px;font-weight:600}
.choice p{font-size:12px;color:var(--text-3);margin-top:1px}
.tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:8px}
.tpl{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden;cursor:pointer;transition:.15s}
.tpl:hover{border-color:var(--acc)}
.tpl.sel{border-color:var(--acc)}
.tpl .thumb{height:64px;display:grid;place-items:center;background:var(--surface-2);border-bottom:1px solid var(--line)}
.tpl .meta{padding:10px 12px}
.tpl .meta b{font-size:13px;font-weight:600;display:block}
.tpl .meta span{font-size:11.5px;color:var(--text-3)}
.tpl.sel .meta b{color:var(--acc)}
.tpl-number{font-weight:800;font-size:22px;color:var(--text-2)}
.tpl-number-primary{color:var(--text)}
.tpl-number-laravel{color:#ff4b36}
.tpl-number-nextcloud{color:#0f8fc6}
.tpl-number-git{color:#f05133}
.tpl-number-small{font-size:18px}
/* App-Icons in Install- und Wizard-Karten. Markenfarben bleiben erhalten. */
.ic.ic-app{display:grid;place-items:center;background:var(--acc-dim);color:var(--acc);border-radius:var(--radius);overflow:hidden}
.ic.ic-app svg{width:74%;height:74%;display:block;object-fit:contain}
.ic.ic-app .ic-text{font-family:var(--font-display);font-weight:800;font-size:15px;letter-spacing:0;line-height:1}
.ic.ic-app.ic-typo3{color:var(--app-typo3);background:color-mix(in srgb,var(--app-typo3) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--app-typo3) 32%,var(--line))}
.ic.ic-app.ic-wordpress{color:var(--app-wordpress);background:color-mix(in srgb,var(--app-wordpress) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--app-wordpress) 32%,var(--line))}
.ic.ic-app.ic-git{color:var(--app-git);background:color-mix(in srgb,var(--app-git) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--app-git) 32%,var(--line))}
.ic.ic-app.ic-nextcloud{color:var(--app-nextcloud);background:color-mix(in srgb,var(--app-nextcloud) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--app-nextcloud) 32%,var(--line))}
.ic.ic-app.ic-laravel{color:var(--app-laravel);background:color-mix(in srgb,var(--app-laravel) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--app-laravel) 32%,var(--line))}
.ic.ic-app.ic-node{color:var(--app-node);background:var(--surface-2);border-color:var(--line)}
.choice.sel .ic.ic-app.ic-typo3{color:var(--app-typo3);border-color:var(--app-typo3);background:color-mix(in srgb,var(--app-typo3) 14%,var(--surface-2))}
.choice.sel .ic.ic-app.ic-wordpress{color:var(--app-wordpress);border-color:var(--app-wordpress);background:color-mix(in srgb,var(--app-wordpress) 14%,var(--surface-2))}
.choice.sel .ic.ic-app.ic-git{color:var(--app-git);border-color:var(--app-git);background:color-mix(in srgb,var(--app-git) 14%,var(--surface-2))}
.choice.sel .ic.ic-app.ic-nextcloud{color:var(--app-nextcloud);border-color:var(--app-nextcloud);background:color-mix(in srgb,var(--app-nextcloud) 14%,var(--surface-2))}
.choice.sel .ic.ic-app.ic-laravel{color:var(--app-laravel);border-color:var(--app-laravel);background:color-mix(in srgb,var(--app-laravel) 14%,var(--surface-2))}
.dhelp{margin:4px 0 16px}
.creator-dhelp{padding:0 18px 14px}
.dhelp-label{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:8px}
.dhelp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.dhelp-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:14px 16px}
.dhelp-card-head{display:flex;gap:11px;align-items:flex-start}
.dhelp-card-title{font-size:13.5px;font-weight:600;display:block}
.dhelp-card-desc{font-size:12px;color:var(--text-3);margin-top:2px;line-height:1.45}
.dhelp-card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.dhelp-chip{font-family:var(--font-mono);font-size:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--text-2);border-radius:var(--radius);padding:5px 10px;cursor:pointer}
.dhelp-chip:hover{border-color:var(--acc);color:var(--acc)}
.dhelp-chip-strong{border-color:var(--acc);color:var(--acc)}
.createbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px}
.creator-createbar{margin-top:24px}
.createbar-toggle{margin-right:auto}
.createbar.is-live{border-top-color:color-mix(in srgb,var(--err) 45%,transparent)}
.createbar.is-live .install-modeswitch-label{color:var(--err);font-weight:600}
.install-modeswitch{display:flex;align-items:center;gap:9px;cursor:pointer;font-size:12.5px;color:var(--text-2)}
.install-modeswitch input{display:none}
.install-modeswitch-track{width:38px;height:22px;border-radius:22px;background:var(--line);position:relative;transition:.2s;flex:none}
.install-modeswitch-thumb{position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.2s}
.install-modeswitch input:checked + .install-modeswitch-track{background:var(--acc)}
.install-modeswitch input:checked + .install-modeswitch-track .install-modeswitch-thumb{transform:translateX(16px)}
.install-modeswitch-label{font-size:13px;color:var(--text-2);line-height:1.4}
.tip{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;font-size:12.5px;color:var(--text-2);line-height:1.55}
.creator-tip{margin-bottom:14px}
.creator-path-input{margin-top:8px;font-size:12.5px}
.qa-soon-badge{background:var(--acc-dim);color:var(--acc);font-size:9.5px;padding:1px 6px;border-radius:var(--radius);text-transform:uppercase;font-weight:700;letter-spacing:.3px}

/* Formulare */
.field{margin-bottom:16px}
.field label{display:block;font-size:12.5px;color:var(--text-2);margin-bottom:7px}
.field-last{margin-bottom:0}
.field-help{display:block;margin-top:6px;font-size:11.5px;color:var(--text-3);line-height:1.45}
.inp-mono{font-family:var(--font-mono)}
.password-field{position:relative}
.password-field .inp{padding-right:96px}
.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);min-height:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-family:var(--font-mono);font-size:11px;font-weight:600;padding:5px 10px;cursor:pointer}
.password-toggle:hover{border-color:var(--acc);color:var(--text)}
.password-strength{margin-top:8px;height:4px;background:var(--line-2);border-radius:2px;overflow:hidden}
.password-strength-bar{height:100%;width:0;background:var(--err);transition:width .2s,background .2s}
@media(max-width:960px){
  body.has-side-nav .creator{width:auto;margin:0;padding:22px 16px 112px}
  .choices-2{grid-template-columns:1fr}
  .customer-foot .in{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
  .customer-foot .foot-links{justify-content:flex-start;gap:10px 14px}
}
.inp{width:100%;min-height:40px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:10px 13px;font-family:var(--font-sans);font-size:14px;color:var(--text)}
.inp:focus{outline:none;border-color:var(--acc)}
select.inp,textarea.inp{font-family:var(--font-sans)}
/* Custom-Look für ALLE Selects (Sven 2026-06-11: native OS-Dropdowns brachen das
   Precision-Design). appearance:none entfernt den nativen Pfeil; eigener Chevron als
   SVG-Background (neutrales Grau, liest auf hell+dunkel). Das GESCHLOSSENE Control ist
   damit voll im Design; die geöffnete Optionsliste rendert das OS (cross-browser nicht
   stylebar . wie bei Stripe/Linear/GitHub). Chevron-Farbe wird im Dark-Block nachgezogen. */
select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}
select::-ms-expand{display:none}
select:hover{border-color:var(--line-2)}
/* Chevron + Padding an der HÖHER-spezifischen select.<klasse>-Regel, damit sie das
   `background`-Shorthand von .inp (setzt background-image:none) gewinnt. */
select.inp,select.dom-actions-select,select.fm-edsel{
  padding-right:34px;background-repeat:no-repeat;background-position:right 11px center;background-size:16px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238c95a0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}
/* Feld mit eingelassenem Aktions-Button (z. B. Passwort-Würfel im Register-Form).
   Positionierung hier gescoped, weil .btn-action global der Skin-2-Button-Modifier ist. */
.field.has-action{position:relative}
.field.has-action .inp{padding-right:42px}
.field.has-action .btn-action{position:absolute;right:6px;bottom:6px;width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--text-3);display:grid;place-items:center;cursor:pointer;transition:border-color .15s,color .15s}
.field.has-action .btn-action:hover{border-color:var(--acc);color:var(--acc)}
.field.has-action .btn-action svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
.pwcopy{background:none;border:0;cursor:pointer;color:var(--text-3);display:grid;place-items:center;padding:4px}
.pwcopy:hover{color:var(--acc)}
.pwcopy.copied{color:var(--ok)}
.pwcopy svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.ta{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:10px 13px;font-family:var(--font-sans);font-size:14px;color:var(--text);min-height:90px;resize:vertical}
.ta:focus{outline:none;border-color:var(--acc)}
.laravel-env-editor{display:grid;gap:14px}
.laravel-env-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
.laravel-env-copy p{margin:0;color:var(--text-2);font-size:13px;line-height:1.6;max-width:760px}
.laravel-env-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.laravel-env-status{min-height:18px;font-size:12px;color:var(--text-3);line-height:1.5}
.laravel-env-status.is-error{color:var(--err)}
.laravel-env-status.is-ok{color:var(--ok)}
.laravel-env-textarea{min-height:340px;font-family:var(--font-mono);font-size:12.5px;line-height:1.55;tab-size:2;white-space:pre;overflow:auto;resize:vertical}
.laravel-env-textarea:disabled{opacity:.72;cursor:wait}
.laravel-env-textarea[hidden]{display:none}
@media(max-width:700px){.laravel-env-copy{grid-template-columns:1fr}.laravel-env-actions .btn{width:100%;justify-content:center}}
.note{display:flex;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2);font-size:13px;color:var(--text-2);line-height:1.55;margin-bottom:16px}
.note svg{width:18px;height:18px;flex:none;margin-top:1px;fill:none;stroke:var(--acc);stroke-width:1.9}
.note.acc{border-color:var(--acc-line)}
.note b{color:var(--text)}
.frow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border-top:1px solid var(--line-2)}
.frow:first-of-type{border-top:0}
.frow .fl{display:flex;flex-direction:column;gap:2px;min-width:0}
.frow .fl b{font-size:13.5px;font-weight:600}
.frow .fl span{font-size:12px;color:var(--text-3)}
.frow .inp,.frow select.inp{width:auto;flex:0 1 300px;min-width:0}
.frow .btn{flex:none}
/* Mein Paket „Zusatz buchen" . ruhiger Control-Stack je Add-on-Zeile (Quiet Rows; Akzent nur Hover-Rand + :checked-Haken) */
.addon-ctrl{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex:none;margin:0}
.addon-ctrl label{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-3);font-family:var(--font-mono);cursor:pointer;line-height:1.3;white-space:nowrap;user-select:none}
.addon-ctrl input[type="checkbox"]{accent-color:var(--acc)}
.addon-ctrl select.inp{flex:none;width:auto;min-width:170px}
.price{font-family:var(--font-mono)}
.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none}
@media (max-width:560px){.addon-ctrl{align-items:stretch;width:100%}.addon-ctrl select.inp{width:100%;min-width:0}.addon-ctrl .btn{justify-content:center}.addon-ctrl label{justify-content:flex-start;white-space:normal}}
.switch{position:relative;display:inline-block;width:42px;height:24px;flex:none}
.switch input{opacity:0;width:0;height:0;position:absolute}
.switch .slider{position:absolute;inset:0;background:var(--line);border-radius:24px;transition:.2s;cursor:pointer}
.switch .slider::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.switch input:checked + .slider{background:var(--acc)}
.switch input:checked + .slider::before{transform:translateX(18px)}
/* QO7-Checkbox: native Checkbox durch design-konformes Quadrat ersetzt
   (Häkchen als ::before-Winkel in var(--acc-ink) . funktioniert in beiden Themes;
   Fokus-Ring kommt vom globalen :focus-visible in Abschnitt 3). */
input[type="checkbox"]:not(.switch input):not(.install-modeswitch input){appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:none;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface-2);cursor:pointer;display:inline-grid;place-content:center;vertical-align:middle;margin:0;transition:background .12s,border-color .12s}
input[type="checkbox"]:not(.switch input):not(.install-modeswitch input):hover{border-color:var(--acc)}
input[type="checkbox"]:not(.switch input):not(.install-modeswitch input):checked{background:var(--acc);border-color:var(--acc)}
input[type="checkbox"]:not(.switch input):not(.install-modeswitch input):checked::before{content:"";width:9px;height:5px;border-left:2px solid var(--acc-ink);border-bottom:2px solid var(--acc-ink);transform:rotate(-45deg) translate(1px,-1px)}
input[type="checkbox"]:not(.switch input):not(.install-modeswitch input):disabled{opacity:.55;cursor:not-allowed}
/* Radios im selben Skin wie Checkboxen (2026-06-13: waren nativ-blau  zu  Bruch
   neben akzentfarbenen Checkboxen, „Neuer Kunde"-Formular). Rund + Akzent-Punkt. */
input[type="radio"]{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:none;border:1px solid var(--line-2);border-radius:50%;background:var(--surface-2);cursor:pointer;display:inline-grid;place-content:center;vertical-align:middle;margin:0;transition:background .12s,border-color .12s}
input[type="radio"]:hover{border-color:var(--acc)}
input[type="radio"]:checked{border-color:var(--acc)}
input[type="radio"]:checked::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--acc)}
input[type="radio"]:disabled{opacity:.55;cursor:not-allowed}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding:4px 18px 10px;background:none;border-radius:0}
.info-grid .ig{padding:11px 0;border-top:1px solid var(--line-2);display:flex;flex-direction:column;gap:3px;background:none}
.info-grid .ig span{font-size:12px;color:var(--text-3)}
.info-grid .ig b{font-family:var(--font-mono);font-size:13px}
.rowact{font-family:var(--font-mono);font-size:12px;color:var(--acc);text-decoration:none;flex:none;display:inline-flex;align-items:center;gap:5px}
.rowact:hover{text-decoration:underline}
.inp-date{font-family:var(--font-sans);font-size:13.5px;padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);min-width:140px;line-height:1.3;transition:border-color .15s;cursor:pointer}
.inp-date:hover{border-color:var(--acc)}
.inp-date:focus{outline:none;border-color:var(--acc)}
.inp-date::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7;padding:2px;transition:opacity .15s}
.inp-date:hover::-webkit-calendar-picker-indicator{opacity:1}

/* Hilfe: Artikel, Empty, Bewertung, Suche, QA-Liste */
.article-body{font-size:14.5px;line-height:1.7;color:var(--text-2)}
.article-body h2{font-size:20px;font-weight:600;color:var(--text);margin:22px 0 8px;letter-spacing:0}
.article-body h3{font-size:16px;font-weight:600;color:var(--text);margin:18px 0 6px}
.article-body h4{font-size:14px;font-weight:600;color:var(--text);margin:14px 0 5px}
.article-body p{margin:0 0 12px}
.article-body ul,.article-body ol{margin:0 0 12px 22px}
.article-body li{margin-bottom:5px}
.article-body a{color:var(--acc);text-decoration:underline}
.article-body blockquote{border-left:3px solid var(--acc);padding:4px 0 4px 14px;margin:0 0 12px;color:var(--text-2)}
.article-body code{font-family:var(--font-mono);font-size:.9em;background:var(--surface-2);padding:1px 5px;border-radius:var(--radius)}
.article-body pre{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;overflow:auto;font-family:var(--font-mono);font-size:12.5px;margin:0 0 12px}
.article-body hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.empty{text-align:center;padding:50px 20px;color:var(--text-3)}
.empty > svg{width:34px;height:34px;fill:none;stroke:var(--text-3);stroke-width:1.5;margin-bottom:12px}
.rate{display:inline-flex;gap:6px}
.rate svg{width:30px;height:30px;fill:none;stroke:var(--text-3);stroke-width:1.6;cursor:pointer;transition:color .12s var(--ease),stroke .12s var(--ease),transform .12s var(--ease)}
.rate svg:hover,.rate svg.on{stroke:var(--acc);fill:var(--acc)}
.bigsearch{display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2);margin-bottom:18px;font-family:var(--font-mono)}
.bigsearch:focus-within{border-color:var(--acc)}
.bigsearch .bs-prompt{flex:none;font-size:13px;color:var(--text-3);white-space:nowrap;user-select:none}
.bigsearch .bs-prompt b{color:var(--text-2);font-weight:400}
.bigsearch .bs-prompt .sign{color:var(--acc);font-weight:700}
.bigsearch svg{width:16px;height:16px;fill:none;stroke:var(--text-3);stroke-width:2;flex:none}
.bigsearch input{flex:1;border:0;background:none;color:var(--text);font-family:var(--font-mono);font-size:13.5px;outline:none;caret-color:var(--acc)}
.bigsearch input::placeholder{color:var(--text-3)}
.qa{display:flex;flex-direction:column}
.qa a{display:flex;align-items:center;gap:11px;padding:13px 18px;border-top:1px solid var(--line-2);color:var(--text);text-decoration:none;font-size:13.5px}
.qa a:first-child{border-top:0}
.qa a:hover{background:var(--surface-2)}
.qa .qi{width:30px;height:30px;border-radius:var(--radius);background:var(--surface-2);display:grid;place-items:center;color:var(--acc);flex:none}
.qa .qi svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9}
.qa .arr{margin-left:auto;color:var(--text-3)}
.qa .arr svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}

/* Admin: KPI-Karten, Hilfe-Center, Ressourcen-Balken, Plan-Quick */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px}
.kpi .ic{width:36px;height:36px;border-radius:var(--radius-lg);display:grid;place-items:center;margin-bottom:12px;background:var(--acc-dim);color:var(--acc)}
.kpi .ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.kpi h3{font-family:var(--font-display);font-weight:600;font-size:26px;letter-spacing:0;line-height:1;color:var(--text)}
.kpi .l{color:var(--text-2);font-size:13px;margin-top:5px}
.arow2{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}
.admin-help-wrap{max-width:1000px}
.admin-help-flash{margin-top:0;margin-bottom:16px}
.admin-help-card{margin-bottom:16px}
.admin-help-card-note{font-size:12px}
.admin-help-category-form{display:flex;gap:8px;align-items:center;flex:1;min-width:0;margin:0}
.admin-help-name{flex:1;min-width:0}
.admin-help-sort{width:74px}
.admin-help-count{font-size:12px;white-space:nowrap}
.u-form-inline{display:inline-flex;margin:0}
.u-ta-c{text-align:center}
.admin-help-create-form{display:flex;gap:8px;align-items:center;padding:14px 18px;border-top:1px solid var(--line-2);background:var(--acc-dim)}
.admin-help-create-form .inp{flex:1;min-width:0}
.admin-help-empty{padding:14px 18px;font-size:13px;color:var(--text-3)}
.admin-help-empty-panel{padding:40px 22px;text-align:center;color:var(--text-3)}
.admin-help-empty-panel p{margin-bottom:14px}
.admin-help-edit-wrap{max-width:840px}
.admin-help-edit-form{display:grid;gap:16px}
.admin-help-edit-category{display:grid;grid-template-columns:minmax(200px,1fr) auto minmax(160px,1fr);gap:8px;align-items:center}
.admin-help-edit-or{font-size:12px;color:var(--text-3);white-space:nowrap}
.admin-help-sort-field{max-width:180px}
.admin-help-edit-sort{max-width:100px}
.admin-help-publish-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line-2);border-radius:var(--radius-lg);padding:12px 14px}
.admin-help-publish-row b{display:block;color:var(--text);font-size:13.5px}
.admin-help-publish-row small{display:block;color:var(--text-3);font-size:12px;line-height:1.45;margin-top:2px}
.admin-help-wys{margin-top:4px}
.admin-help-attachments-list{display:grid;gap:6px;margin-bottom:10px}
.admin-help-attachment{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2)}
.admin-help-attachment-icon{width:15px;height:15px;flex:none;color:var(--text-3)}
.admin-help-attachment-name{min-width:0;color:var(--text);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-help-attachment-size{font-size:11.5px;color:var(--text-3);white-space:nowrap}
.admin-help-edit-actions{padding:14px 18px;border-top:1px solid var(--line-2);display:flex;gap:10px;justify-content:flex-end}
.wys{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}
.wys-toolbar{display:flex;align-items:center;gap:3px;flex-wrap:wrap;padding:7px 8px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.wys-toolbar button{background:none;border:1px solid transparent;border-radius:var(--radius);padding:5px 9px;cursor:pointer;color:var(--text-2);font-size:13px;font-family:var(--font-sans);min-width:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px}
.wys-toolbar button:hover{background:var(--surface);border-color:var(--line);color:var(--text)}
.wys-toolbar svg{width:14px;height:14px}
.wys-sep{width:1px;height:18px;background:var(--line);margin:0 3px}
.wys-area{min-height:240px;padding:14px 16px;font-size:14.5px;line-height:1.6;color:var(--text);outline:none}
.wys-area:focus{box-shadow:inset 0 0 0 2px var(--acc-dim)}
.wys-area h2{font-size:20px;font-weight:700;margin:14px 0 6px}
.wys-area h3{font-size:16px;font-weight:700;margin:12px 0 5px}
.wys-area p{margin:0 0 10px}
.wys-area ul,.wys-area ol{margin:0 0 10px 22px}
.wys-area a{color:var(--acc);text-decoration:underline}
.wys-area:empty::before{content:"Schreibe hier den Hilfe Artikel";color:var(--text-3)}
.hc-cat{margin-bottom:16px}
.hc-cat .card-h .cnt{font-family:var(--font-mono);font-size:11px;color:var(--text-3);text-transform:none;letter-spacing:0}
.hc-art{display:flex;align-items:center;gap:14px;padding:13px 18px;border-top:1px solid var(--line-2)}
.hc-art:first-of-type{border-top:0}
.hc-art .hc-t{flex:1;min-width:0}
.hc-art .hc-t b{font-weight:600;font-size:14px;color:var(--text);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc-art .hc-slug{font-family:var(--font-mono);font-size:11.5px;color:var(--text-3);margin-top:2px}
.hc-art .hc-slug-extra::before{content:", "}
.hc-art .hc-sort{font-family:var(--font-mono);font-size:11.5px;color:var(--text-3);flex:none}
.hc-art .hc-actions{display:flex;gap:6px;align-items:center;white-space:nowrap;flex:none}
.resbar{display:grid;grid-template-columns:80px 1fr 100px 180px;gap:14px;align-items:center;font-size:13px}
.resbar-label{font-weight:600;color:var(--text-2)}
.resbar-track{height:8px;border-radius:20px;background:var(--line-2);overflow:hidden}
.resbar-track i{display:block;height:100%;border-radius:20px;transition:width .3s}
.resbar-val{text-align:right;color:var(--text);font-weight:600}
.resbar-sub{font-size:12px;color:var(--text-3)}
.plan-quick{position:relative;display:inline-block;vertical-align:middle}
.plan-quick > summary{list-style:none;cursor:pointer}
.plan-quick > summary::-webkit-details-marker{display:none}
.plan-quick-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:50;min-width:240px;max-width:calc(100vw - 20px);max-height:calc(100vh - 90px);overflow-y:auto;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 14px 34px -14px rgba(0,0,0,.5)}
.plan-quick[open] > summary{background:var(--acc-dim);color:var(--acc);border-color:var(--acc)}

/* Mailgateway */
.mailgw-card-gap{margin-bottom:14px}
.mailgw-card-warn{border-color:color-mix(in srgb,var(--warn) 45%,transparent)}
.mailgw-banner-inline{margin-top:0;margin-bottom:14px}
.mailgw-banner{padding:11px 18px;display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid var(--line-2);background:var(--surface)}
.mailgw-banner.is-available{background:color-mix(in srgb,var(--acc) 5%,transparent)}
.mailgw-banner.is-active{background:color-mix(in srgb,var(--ok) 6%,transparent)}
.mailgw-banner.is-pending{background:color-mix(in srgb,var(--warn) 7%,transparent)}
.mailgw-banner-icon{width:16px;height:16px;flex:none;margin-top:2px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mailgw-banner.is-available .mailgw-banner-icon{color:var(--acc)}
.mailgw-banner.is-active .mailgw-banner-icon{color:var(--ok)}
.mailgw-banner.is-pending .mailgw-banner-icon{color:var(--warn)}
.mailgw-banner-copy{display:grid;gap:2px;min-width:0;font-size:12.5px;line-height:1.5;color:var(--text-2)}
.mailgw-banner-copy b{color:var(--text);font-weight:600}
.mailgw-api-alert{padding:12px 18px;display:flex;align-items:center;gap:10px;color:var(--warn);font-weight:600;font-size:13px}
.mailgw-api-alert svg{flex:none}
.mailgw-empty-title{display:block;color:var(--text)}
.mailgw-empty-copy{margin-top:6px}
.mailgw-stats{padding:12px 18px;border-top:1px solid var(--line-2);display:flex;gap:18px 22px;flex-wrap:wrap;font-size:12.5px;color:var(--text-2);align-items:center}
.mailgw-stats b{color:var(--text);font-weight:600}
.mailgw-stats-title{font-weight:600;color:var(--text-3)}
.mailgw-stats small{flex:1 1 100%;color:var(--text-3);font-size:11px;line-height:1.45}
.mailgw-form{padding:14px 18px;display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.mailgw-field{flex:1 1 240px;display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--text-3)}
.mailgw-field.is-wide{flex-basis:280px;flex-grow:2}
.mailgw-form-note{flex:1 1 100%;color:var(--text-3);font-size:11.5px;line-height:1.5}
.mailgw-muted{color:var(--text-3)}
.mailgw-row-note{color:var(--text-3);font-size:12px}
.mailgw-note{display:block;color:var(--text-3)}
.mailgw-ts{font-size:12px;color:var(--text-2)}
.pill-sm{font-size:10.5px}
.pill-xs{font-size:10px}
.pill-icon{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ro .v.is-accent{color:var(--acc)}
.mail-archive-card-gap{margin-top:14px}
.mail-archive-form{padding:18px}
.mail-archive-form-grid{display:grid;gap:10px;grid-template-columns:1.4fr 1.6fr .7fr .9fr 1fr .9fr;grid-template-areas:"customer mail price tier note action";align-items:start}
.mail-archive-area-customer{grid-area:customer}
.mail-archive-area-mail{grid-area:mail}
.mail-archive-area-price{grid-area:price}
.mail-archive-area-tier{grid-area:tier}
.mail-archive-area-note{grid-area:note}
.mail-archive-area-action{grid-area:action;display:flex;align-items:flex-end;align-self:stretch}
.mail-archive-form-field label{display:block;font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-bottom:4px}
.mail-archive-form-field .inp{width:100%}
.mail-archive-mono-input{font-family:var(--font-mono);font-size:12.5px}
.mail-archive-submit{min-height:38px;width:100%;justify-content:center}
.mail-archive-note{padding:0 18px 14px;font-size:12px;color:var(--text-3);line-height:1.55}
.mail-archive-note b{color:var(--text-2)}
.mail-archive-filter{padding:12px 14px;margin-top:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mail-archive-search{display:flex;align-items:center;gap:8px;flex:1 1 240px;min-width:0;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:6px 10px}
.mail-archive-search svg{flex:none;color:var(--text-3)}
.mail-archive-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:var(--font-mono);font-size:13px;color:var(--text)}
.mail-archive-status-select{max-width:180px}
.mail-archive-address{font-size:12.5px}
.mail-archive-mini-form{display:inline-flex;align-items:center;gap:4px;margin:0}
.mail-archive-mini-form.is-end{justify-content:flex-end}
.mail-archive-price-input{width:74px;text-align:right;font-family:var(--font-mono);font-size:12px;padding:4px 6px;height:28px}
.mail-archive-unit{font-family:var(--font-mono);font-size:12px;color:var(--text-3)}
.mail-archive-save-btn{height:28px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center}
.mail-archive-tier-select{width:96px;font-size:12px;padding:4px 6px;height:28px}
.mail-archive-retention-select{width:104px;font-size:12px;padding:4px 6px;height:28px}
.mail-archive-check{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-2);white-space:nowrap;cursor:pointer}
.mail-archive-actions{display:inline-flex;gap:6px;align-items:center;justify-content:flex-end}
.mail-archive-action-btn{height:30px}
.mail-archive-icon-btn{height:30px;width:30px;padding:0;display:inline-grid;place-items:center}
.mail-archive-pagination{padding:12px 18px;border-top:1px solid var(--line-2);display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--text-3);flex-wrap:wrap;gap:8px}
.mail-archive-workflow{margin-top:14px;padding:14px 18px;font-size:13px;color:var(--text-2);line-height:1.6}
.mail-archive-workflow b{color:var(--text)}
.mail-archive-foot{margin-top:32px}
.mail-archive-link{color:var(--acc)}
.fn-ref{display:inline-block;vertical-align:super;margin-left:2px;font-family:var(--font-sans);font-size:10px;font-weight:700;color:var(--acc);line-height:1}
.legal-footnotes{margin-top:22px;border-top:1px solid var(--line);padding:14px 2px 0;color:var(--text-3)}
.legal-footnotes h2{font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);margin:0 0 8px}
.legal-footnotes ol{margin:0;padding-left:18px;display:grid;gap:6px}
.legal-footnotes li{font-size:11.5px;line-height:1.55;padding-left:2px}
.legal-footnotes.is-compact{margin-top:16px;padding-top:12px}
.legal-footnotes.is-compact li{font-size:11px}
.panel-legal-footnotes{margin-bottom:18px}
.archive-management-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.archive-management-stat{padding:14px 16px;margin:0}
.archive-management-stat span{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin-bottom:6px}
.archive-management-stat b{display:block;font-family:var(--font-display);font-size:24px;line-height:1.05;color:var(--text)}
.archive-management-stat small{display:block;color:var(--text-3);font-size:12px;margin-top:5px}
.archive-source-grid{align-items:start}
.archive-managed-table .external-archive-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.archive-journaling-card{margin-bottom:14px}
.archive-journaling-body{display:grid;gap:14px}
.archive-journaling-copy{display:grid;gap:6px;color:var(--text-2);font-size:13px;line-height:1.6}
.archive-journaling-copy b{color:var(--text);font-size:13.5px}
.archive-journaling-copy p{margin:0}
.archive-journaling-list{display:grid;gap:8px}
.archive-journaling-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:10px 12px}
.archive-journaling-request{margin:0;display:flex;justify-content:flex-start}
@media(max-width:1080px){.mail-archive-form-grid{grid-template-columns:1fr 1fr;grid-template-areas:"customer customer" "mail mail" "price tier" "note note" "action action"}}
@media(max-width:900px){.archive-management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-source-grid{grid-template-columns:1fr}}
@media(max-width:700px){.mail-archive-filter{align-items:stretch}.mail-archive-search,.mail-archive-status-select,.mail-archive-filter .btn{width:100%;max-width:none}.mail-archive-mini-form,.mail-archive-mini-form.is-end{width:100%;justify-content:flex-start;flex-wrap:wrap}.mail-archive-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.mail-archive-save-btn{min-width:34px}.mail-archive-pagination{align-items:flex-start;flex-direction:column}.archive-managed-table .external-archive-actions{justify-content:flex-start}.archive-journaling-request .btn{width:100%;justify-content:center}}
@media(max-width:600px){.mail-archive-form-grid{grid-template-columns:1fr;grid-template-areas:"customer" "mail" "price" "tier" "note" "action"}}
@media(max-width:560px){.archive-management-grid{grid-template-columns:1fr}}

/* Customer external archive */
.external-archive-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}
.external-archive-head-copy{min-width:240px;max-width:720px}
.external-archive-intro{margin-bottom:14px;padding:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.external-archive-intro-copy{max-width:640px;font-size:13.5px;line-height:1.65;color:var(--text-2);display:grid;gap:6px}
.external-archive-intro-copy b{color:var(--text)}
.external-archive-price{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px;text-align:center;min-width:170px}
.external-archive-price strong{display:block;font-family:var(--font-display);font-weight:650;font-size:22px;line-height:1.05;color:var(--acc)}
.external-archive-price span{display:block;font-size:11.5px;color:var(--text-3);margin-top:4px}
.external-archive-pending{margin-bottom:14px;border-color:var(--acc-line);background:var(--acc-dim);padding:16px}
.external-archive-pending-body{display:flex;gap:12px;align-items:flex-start}
.external-archive-pending-body svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--acc)}
.external-archive-pending-copy{display:grid;gap:2px;font-size:13px;line-height:1.6;color:var(--text-2)}
.external-archive-pending-copy b{color:var(--text)}
.external-archive-card{margin-bottom:14px}
.external-archive-table .mono{font-size:12.5px}
.external-archive-server{color:var(--text-2)}
.external-archive-server-note{color:var(--text-3);font-size:11.5px}
.external-archive-actions{text-align:right;white-space:nowrap}
.external-archive-form{display:flex;flex-direction:column;gap:12px}
.external-archive-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.external-archive-field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-2)}
.external-archive-port-row{display:flex;gap:8px}
.external-archive-port-row select{flex:1}
.external-archive-port{width:96px;flex:none}
.external-archive-test-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.external-archive-result{font-size:12.5px;line-height:1.5;color:var(--text-3);display:inline-flex;align-items:center;gap:5px}
.external-archive-result.is-ok{color:var(--ok)}
.external-archive-result.is-warn{color:var(--warn)}
.external-archive-result.is-err{color:var(--err)}
.external-archive-result.is-wait{color:var(--text-3)}
.external-archive-result-icon{width:14px;height:14px;flex:none}
.external-archive-legal{font-size:12px;color:var(--text-3);line-height:1.55;border-top:1px solid var(--line);padding-top:12px}
.external-archive-legal a{color:var(--text-2);text-decoration:underline;text-underline-offset:2px}
.external-archive-consent{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--text-2);line-height:1.55;cursor:pointer}
.external-archive-submit{display:flex;justify-content:flex-end}
@media(max-width:700px){
  .external-archive-head{align-items:flex-start}
  .external-archive-head .btn,.external-archive-submit .btn,.external-archive-test-row .btn{width:100%;justify-content:center}
  .external-archive-price{width:100%;text-align:left}
  .external-archive-port-row{display:grid;grid-template-columns:minmax(0,1fr) 96px}
}

/* Account and contact screens */
.account-flash{margin-top:0;margin-bottom:16px}
.account-avatar-row{align-items:center}
.account-avatar-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.account-avatar-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}
.account-actions-end{justify-content:flex-end;margin-top:4px}
.kontakt-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:16px;align-items:start}
.contact-form-error{margin:0 18px 12px}
.contact-textarea-field{padding:14px 18px}
.contact-textarea-field label{display:block;font-size:12.5px;color:var(--text-2);margin-bottom:7px}
@media(max-width:820px){.kontakt-grid{grid-template-columns:1fr}}

/* Billing */
.billing-card{margin-bottom:20px}
.billing-support-body{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.billing-support-body p{max-width:720px;color:var(--text-2);font-size:13.5px;line-height:1.6}
.billing-empty-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.invoice-empty-panel{padding-top:42px;padding-bottom:42px}
.contract-cancel-entry{margin-bottom:16px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:color-mix(in srgb,var(--surface) 88%,var(--acc-dim));border-color:var(--line)}
.contract-cancel-entry-copy{min-width:0}
.contract-cancel-entry h2{font-size:15px;font-weight:650;margin:0 0 4px}
.contract-cancel-entry p{margin:0;color:var(--text-2);font-size:13px;line-height:1.55;max-width:780px}
.contract-list{padding:14px 18px;display:grid;gap:10px}
.contract-item{border:1px solid var(--line-2);border-radius:var(--radius-lg);padding:12px 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.contract-name{color:var(--text);font-weight:600}
.contract-meta{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:6px 12px;flex-wrap:wrap;color:var(--text-3);font-size:13px;text-align:right}
.contract-list-expanded{padding:18px;gap:14px}
.contract-item-detailed{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;padding:18px;gap:18px}
.contract-main{min-width:0;display:grid;gap:12px}
.contract-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.contract-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}
.contract-facts div,.contract-summary-list div,.admin-contract-cancel-summary dl div{min-width:0}
.contract-facts dt,.contract-summary-list dt,.admin-contract-cancel-summary dt{font-family:var(--font-mono);font-size:10.5px;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin-bottom:4px}
.contract-facts dd,.contract-summary-list dd,.admin-contract-cancel-summary dd{margin:0;color:var(--text);font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.contract-note{margin:0;color:var(--text-3);font-size:13px;line-height:1.55}
.contract-actions{display:flex;align-items:flex-start;justify-content:flex-end;min-width:168px}
.contract-cancel-link{min-width:150px}
.contract-status-note{font-size:12.5px;color:var(--text-3);text-align:right}
.contract-cancel-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}
.contract-cancel-form{padding:18px;display:grid;gap:16px}
.contract-cancel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contract-cancel-wide{grid-column:1/-1}
.contract-cancel-confirm{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2);padding:12px 13px;color:var(--text-2);font-size:13px;line-height:1.5;cursor:pointer}
.contract-cancel-confirm input{margin-top:2px}
.contract-cancel-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line-2);padding-top:16px}
.contract-cancel-submit{min-width:150px}
.contract-cancel-summary{position:sticky;top:calc(var(--topbar-h) + 16px);margin-bottom:20px}
.contract-summary-list{padding:16px 18px;margin:0;display:grid;gap:14px}
.contract-summary-note{padding:0 18px 18px;margin:0;color:var(--text-3);font-size:12.5px;line-height:1.6}
.contract-footnotes{border-top:1px solid var(--line);margin:24px 0 0;padding-top:14px;color:var(--text-3);font-size:11.5px;line-height:1.55}
.contract-footnotes p{margin:0 0 6px}
.contract-footnotes sup{color:var(--acc);font-weight:700;margin-right:4px}
.admin-ticket-contract-card{border-color:var(--acc-line);background:var(--surface)}
.admin-contract-cancel-summary dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}
.admin-contract-cancel-form{margin-top:14px}
@media(max-width:900px){.contract-cancel-layout{grid-template-columns:1fr}.contract-cancel-summary{position:static}.contract-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-contract-cancel-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.contract-cancel-entry{display:grid;gap:12px}.contract-cancel-entry .btn{width:100%;justify-content:center}.contract-item{align-items:flex-start}.contract-meta{width:100%;margin-left:0;justify-content:flex-start;text-align:left}.billing-support-body{align-items:stretch}.billing-support-body .btn,.billing-empty-actions .btn{width:100%;justify-content:center}.contract-item-detailed{grid-template-columns:1fr;padding:14px}.contract-facts,.contract-cancel-grid,.admin-contract-cancel-summary dl{grid-template-columns:1fr}.contract-actions{width:100%;min-width:0;justify-content:stretch}.contract-actions .btn,.contract-cancel-actions .btn,.contract-cancel-actions button{width:100%;justify-content:center}.contract-status-note{text-align:left}.contract-cancel-form{padding:14px}}

/* Utilities */
.u-ink{color:var(--text)}
.u-ink3{color:var(--text-3)}
.u-accent{color:var(--acc)}
.u-link{color:var(--text-2);text-decoration:none}
.u-scroll-x{overflow-x:auto}
.u-mt-12{margin-top:12px}
.u-mt-16{margin-top:16px}
.u-fs-16{font-size:16px}
.u-fw-500{font-weight:500}
.u-fw-600{font-weight:600}
.u-row{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:14px}
.u-row-end{padding:0 18px 18px;display:flex;justify-content:flex-end}
.u-foot-row{max-width:1120px;margin:0 auto;padding:20px 28px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-size:13px;color:var(--text-3)}
.u-hand-r{margin-left:auto;font-family:var(--font-display);font-size:15px;color:var(--acc)}
.u-sep-top{border-top:1px solid var(--line);margin-top:40px}
.u-meta{font-size:13px;color:var(--text-3)}
.u-full-c{width:100%;justify-content:center}

/* Stack-Overview: 2-Spalten-Layout, Systemcheck-Ring, Warn-Items */
.ovgrid{display:grid;grid-template-columns:320px 1fr;gap:16px}
.ovcol{display:flex;flex-direction:column;gap:16px;min-width:0}
.ring-card{padding:24px 18px 20px;text-align:center;position:relative}
.ring{width:140px;height:140px;margin:4px auto 14px;position:relative}
.ring svg{transform:rotate(-90deg)}
.ring .val{position:absolute;inset:0;display:grid;place-items:center}
.ring .val b{font-family:var(--font-display);font-weight:600;font-size:28px;letter-spacing:0;line-height:1;color:var(--text)}
.ring .val span{font-size:11px;color:var(--text-3);display:block;margin-top:3px}
.ring-note{font-family:var(--font-display);font-size:18px;color:var(--acc-2);font-weight:600}
.ring-doodle{position:absolute;top:18px;right:30px;width:20px;height:20px;color:var(--acc);opacity:.7;transform:rotate(12deg)}
.warn-item{display:flex;gap:12px;padding:14px 18px;border-top:1px solid var(--line-2);align-items:flex-start}
.warn-item:first-of-type{border-top:0}
.warn-item .wi{width:30px;height:30px;border-radius:var(--radius);background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);display:grid;place-items:center;flex:none}
.warn-item .wi svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
.warn-item .wt b{font-weight:600;font-size:14px;color:var(--text)}
.warn-item .wt p{font-size:13px;color:var(--text-2);margin-top:1px}
.warn-item .fix{margin-left:auto;font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;text-decoration:none;align-self:center}
.warn-item .fix:hover{color:var(--acc)}
.warn-item.ok .wi{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok)}

/* Welcome-Card (einmalige Backend-Credentials) */
.welcome-card{margin:0 0 22px;padding:20px 24px;background:var(--acc-dim);border:1px solid var(--acc-line);border-radius:var(--radius-lg)}
.welcome-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}
.welcome-head h2{font-family:var(--font-sans);font-size:18px;font-weight:700;margin:0 0 4px;color:var(--text)}
.welcome-head p{margin:0;font-size:13px;color:var(--text-2);line-height:1.5}
.welcome-icon{flex:none;width:36px;height:36px;border-radius:50%;background:var(--acc);color:var(--acc-ink);display:flex;align-items:center;justify-content:center}
.welcome-icon svg{width:18px;height:18px;fill:none;stroke:currentColor}
.welcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;max-width:780px}
.welcome-row{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--line)}
.welcome-row-pw{grid-column:1/-1;background:color-mix(in srgb,var(--warn) 12%,transparent);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}
.welcome-label{flex:none;min-width:90px;font-size:11.5px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}
.welcome-value{flex:1;display:flex;align-items:center;gap:8px;min-width:0}
.welcome-value code,.welcome-value a{font-family:var(--font-mono);font-size:13px;color:var(--text);background:none;padding:0;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.welcome-value a{text-decoration:none;color:var(--acc)}
.welcome-value a:hover{text-decoration:underline}
.welcome-copy{flex:none;background:none;border:0;padding:4px 6px;cursor:pointer;color:var(--text-3);border-radius:var(--radius);transition:color .12s,background .12s}
.welcome-copy svg{fill:none;stroke:currentColor}
.welcome-copy:hover{color:var(--acc);background:var(--acc-dim)}
.welcome-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--acc) 20%,transparent)}
.welcome-foot small{font-size:12px;color:var(--text-2);line-height:1.5}

/* Install-Erfolg (Dry-Run-OK) */
.install-success-body{padding:32px 28px 24px;text-align:center;max-width:520px;margin:0 auto}
.install-success-icon{width:64px;height:64px;border-radius:50%;background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok);display:grid;place-items:center;margin:0 auto 18px}
.install-success-icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:2.4}
.install-success-body h3{font-family:var(--font-sans);font-weight:700;font-size:20px;color:var(--text);margin-bottom:10px;letter-spacing:0}
.install-success-body p{font-size:14px;color:var(--text-2);line-height:1.6;margin-bottom:8px}
.install-success-body .install-success-meta{color:var(--text-3);font-size:13px;margin-top:14px;font-style:italic}
.install-success-actions{padding:14px 20px;border-top:1px solid var(--line-2);display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center;background:var(--surface-2)}
.install-success-hint{font-size:12.5px;color:var(--text-3)}

/* Install-Progress (Live-Polling) */
.install-progress{overflow:hidden}
.install-progress-body{display:flex;align-items:flex-start;gap:18px;padding:24px}
.install-progress-icon{flex:none;width:54px;height:54px;border-radius:var(--radius-lg);background:var(--acc-dim);color:var(--acc);display:grid;place-items:center}
.install-progress-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2}
.install-progress-body b{font-family:var(--font-sans);font-weight:700;font-size:16px;color:var(--text);display:inline-flex;align-items:center;gap:6px}
.install-progress-body p{font-size:13.5px;color:var(--text-2);margin:4px 0 8px;line-height:1.55}
.install-progress-body small{font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}
.install-progress-fail .install-progress-icon{background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err)}
.install-spinner{width:26px;height:26px;border:3px solid var(--acc-dim);border-top-color:var(--acc);border-radius:50%;animation:spin .9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.install-progress-dots{display:inline-flex;gap:2px;margin-left:1px}
.install-progress-dots span{width:4px;height:4px;border-radius:50%;background:var(--text-3);animation:dots 1.4s ease-in-out infinite}
.install-progress-dots span:nth-child(2){animation-delay:.2s}
.install-progress-dots span:nth-child(3){animation-delay:.4s}
@keyframes dots{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}

/* 7-Schritte-Provisioning-Liste */
.prov-steps{list-style:none;margin:0;padding:14px 20px;border-top:1px solid var(--line-2);display:flex;flex-direction:column;gap:6px}
.prov-step{display:flex;align-items:center;gap:11px;padding:7px 10px;border-radius:var(--radius);font-size:13px;color:var(--text-3);transition:background .15s,color .15s}
.prov-step-icon{flex:none;width:22px;height:22px;display:grid;place-items:center;position:relative;border:1.5px solid var(--line);border-radius:50%;background:var(--surface-2);transition:border-color .15s,background .15s}
.prov-step-icon > *{position:absolute;inset:0;display:grid;place-items:center}
.prov-step-check{width:12px;height:12px;color:var(--acc-ink);opacity:0;transform:scale(.6);transition:opacity .15s,transform .15s;fill:none;stroke:currentColor}
.prov-step-spinner{width:13px;height:13px;border:2px solid color-mix(in srgb,var(--acc) 30%,transparent);border-top-color:var(--acc);border-radius:50%;animation:spin .9s linear infinite;opacity:0}
.prov-step-dot{width:6px;height:6px;border-radius:50%;background:var(--text-3);opacity:1;transition:opacity .15s}
.prov-step.is-complete{color:var(--text-2)}
.prov-step.is-complete .prov-step-icon{background:var(--acc);border-color:var(--acc)}
.prov-step.is-complete .prov-step-check{opacity:1;transform:scale(1)}
.prov-step.is-complete .prov-step-dot{opacity:0}
.prov-step.is-current{background:var(--acc-dim);color:var(--acc);font-weight:600}
.prov-step.is-current .prov-step-icon{border-color:var(--acc);background:var(--surface-2)}
.prov-step.is-current .prov-step-spinner{opacity:1}
.prov-step.is-current .prov-step-dot{opacity:0}
.prov-step.is-failed{background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err);font-weight:600}
.prov-step.is-failed .prov-step-icon{border-color:var(--err);background:var(--surface)}
.prov-step.is-failed .prov-step-check{opacity:0}
.prov-step.is-failed .prov-step-spinner{opacity:0}
.prov-step.is-failed .prov-step-dot{opacity:1;background:var(--err);width:8px;height:8px}

/* Status-/Fehler-Banner im Install-Form */
.ov-banner-ok{margin-top:20px;padding:11px 16px;background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 35%,transparent);color:var(--ok);border-radius:var(--radius-lg);font-size:13.5px}
.ov-banner-err{margin-top:20px;padding:11px 16px;background:color-mix(in srgb,var(--err) 12%,transparent);border:1px solid color-mix(in srgb,var(--err) 40%,transparent);color:var(--err);border-radius:var(--radius-lg);font-size:13.5px}

/* Toast (app.js showToast) */
.toast{position:fixed;bottom:24px;right:24px;background:var(--text);color:var(--bg);padding:11px 16px 11px 14px;border-radius:var(--radius-lg);font-size:13px;font-weight:500;box-shadow:0 14px 34px -14px rgba(0,0,0,.5);z-index:200;opacity:0;transform:translateY(8px);transition:opacity .22s,transform .22s;max-width:340px;line-height:1.4}
.toast.is-show{opacity:1;transform:translateY(0)}
.toast-info{border-left:3px solid var(--acc);padding-left:13px}

/* PW-Modal (app.js DB-Zugangsdaten) */
.pwmodal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px}
/* hidden MUSS gewinnen . sonst steht jedes permanent gerenderte Modal (z. B.
   Archiv-Buchung im Stack-Mail-Tab) dauerhaft offen und JS-Toggles wirken nicht. */
.pwmodal[hidden]{display:none}
.pwmodal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(2px)}
.pwmodal-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px;max-width:480px;width:100%;box-shadow:0 14px 34px -14px rgba(0,0,0,.5);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto}
.pwmodal-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.pwmodal-icon{width:42px;height:42px;border-radius:var(--radius-lg);background:var(--acc-dim);color:var(--acc-2);display:grid;place-items:center;flex:none}
.pwmodal-icon svg{width:22px;height:22px}
.pwmodal-card h3{font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--text);letter-spacing:0}
.pwmodal-card > p{font-size:13.5px;color:var(--text-2);line-height:1.55;margin:0 0 16px}
.pwmodal-input{width:100%;box-sizing:border-box;margin:0 0 16px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-family:var(--font-mono);font-size:13px;outline:none}
.pwmodal-input:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-dim)}
.pwmodal-pwbox{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:var(--radius-lg);background:var(--acc-dim);border:1px dashed var(--acc);margin-bottom:18px}
.pwmodal-pwbox code{flex:1;min-width:0;font-family:var(--font-mono);font-size:16px;color:var(--acc-2);font-weight:600;letter-spacing:1px;word-break:break-all;background:transparent;padding:0}
.pwmodal-pwbox .pwcopy{width:34px;height:34px;border-radius:var(--radius);flex:none}
.pwmodal-pwbox .pwcopy svg{width:15px;height:15px}
.pwmodal-actions{display:flex;justify-content:flex-end;gap:10px}
.mail-modal-card-wide{max-width:560px}
.mail-modal-card-xl{max-width:620px}
.mail-modal-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0 0 14px}
.mail-modal-form-tight{margin-bottom:8px}
.mail-modal-form-gap{margin:8px 0 14px}
.mail-modal-form-spaced{margin:0 0 14px}
.mail-modal-stack{display:grid;gap:8px;margin-bottom:14px}
.mail-modal-input-grow{flex:1 1 220px;min-width:0}
.mail-modal-input-grow.is-sm{flex-basis:140px}
.mail-modal-danger-small{font-size:11.5px}
.mail-modal-textarea{resize:vertical}
.mail-modal-note{font-size:11px;color:var(--text-3);margin:0;line-height:1.45}
.mail-modal-submit-start{justify-self:start}
.mail-modal-domain{color:var(--text-3);font-size:12.5px;white-space:nowrap}
.mail-modal-member-row{display:flex;align-items:center;gap:8px;font-size:12.5px;margin-bottom:5px;flex-wrap:wrap}
.mail-modal-push-form{margin:0 0 0 auto}
.mail-modal-empty{font-size:12px;color:var(--text-3);margin-bottom:6px}
.mail-modal-group-row{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;margin-bottom:8px;flex-wrap:wrap}
.mail-modal-group-pill{gap:5px}
.mail-modal-group-pill svg{width:10px;height:10px;flex:none}
.mail-modal-group-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;flex:1 1 200px;min-width:0;margin:0}
.mail-modal-check{display:inline-flex;align-items:center;gap:4px}
.mail-modal-empty-inline{font-size:12px;color:var(--text-3)}
.mail-modal-color{width:48px;padding:2px}
.mail-modal-rights{width:150px}
.mail-modal-package-select{min-width:200px}
.mail-modal-small-label{font-size:11.5px;color:var(--text-3);white-space:nowrap}
.mail-modal-extra-input{width:62px}
.mail-modal-plan-note{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding:10px 12px;background:var(--surface-2);border-radius:var(--radius-lg);border:1px solid var(--line)}
.mail-modal-plan-note > span:last-child{font-size:11.5px;color:var(--text-3);line-height:1.45}
.mail-modal-plan-note b{color:var(--text-2)}
.mail-modal-section-title{display:block;color:var(--text-2);margin-bottom:6px;font-size:12.5px}
.mail-modal-password-note{margin:10px 0 14px;font-size:11.5px;color:var(--text-3);line-height:1.45}
.mail-modal-password-note b{color:var(--text-2)}
@media(max-width:640px){
  .pwmodal{padding:12px}
  .pwmodal-card{padding:20px;max-height:calc(100dvh - 24px)}
  .mail-modal-form,.mail-modal-form-gap,.mail-modal-form-tight{align-items:stretch}
  .mail-modal-form .inp,.mail-modal-form .btn,.mail-modal-stack .btn,.mail-modal-group-form .btn{width:100%;justify-content:center}
  .mail-modal-input-grow,.mail-modal-input-grow.is-sm{flex-basis:100%;width:100%}
  .mail-modal-push-form{margin-left:0;width:100%}
  .mail-modal-member-row,.mail-modal-group-row{align-items:stretch}
  .mail-modal-member-row .btn,.mail-modal-group-row .btn{width:100%;justify-content:center}
  .mail-modal-rights,.mail-modal-package-select{width:100%;min-width:0}
  .pwmodal-actions{justify-content:stretch}
  .pwmodal-actions .btn{flex:1 1 auto;justify-content:center}
}
.db-reset-ack{background:color-mix(in srgb,var(--warn) 12%,transparent);border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);color:var(--text)}

/* File-Picker (Drag&Drop, app.js-Hooks drag-over/has-files) */
.filepicker{display:flex;flex-direction:column;gap:8px}
.filepicker-drop{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg);border:2px dashed var(--line);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .15s ease,background .15s ease;user-select:none}
.filepicker-drop:hover,.filepicker-drop.drag-over{border-color:var(--acc);background:var(--acc-dim)}
.filepicker-drop.has-files{padding:10px 14px}
.filepicker-drop.has-files .filepicker-icon svg{width:18px;height:18px}
.filepicker-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--acc-dim);color:var(--acc-2);border-radius:50%}
.filepicker-drop.has-files .filepicker-icon{width:32px;height:32px}
.filepicker-text{flex:1;font-size:13.5px;line-height:1.4}
.filepicker-text b{color:var(--text);font-weight:600}
.filepicker-or{color:var(--text-3);font-weight:400}
.filepicker-text small{display:block;color:var(--text-3);font-size:11.5px;margin-top:2px}
.filepicker-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}
.filepicker-item{display:flex;align-items:center;gap:10px;padding:7px 12px;background:var(--surface-2);border-radius:var(--radius);font-size:13px}
.filepicker-item svg{flex-shrink:0;color:var(--text-3)}
.filepicker-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);font-weight:500}
.filepicker-item-size{color:var(--text-3);font-family:var(--font-mono);font-size:11.5px;flex-shrink:0}
.filepicker-item-rm{flex-shrink:0;background:none;border:none;cursor:pointer;width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:var(--text-3);border-radius:50%;transition:color .12s ease,background .12s ease;padding:0}
.filepicker-item-rm:hover{background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err)}
.filepicker-err{padding:7px 12px;background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err);border-radius:var(--radius);font-size:12px}

/* Backup-Spinner-Modal (app.js, Vollbild während Snapshot) */
.bkspin{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:20px}
.bkspin-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px)}
.bkspin-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:36px 32px;max-width:460px;width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;text-align:center;box-shadow:0 14px 34px -14px rgba(0,0,0,.5)}
.bkspin-ring{width:64px;height:64px;margin:0 auto 18px;display:grid;place-items:center}
.bkspin-ring svg{width:64px;height:64px;animation:bkspin-rotate 1.2s linear infinite}
@keyframes bkspin-rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.bkspin-card h3{font-family:var(--font-display);font-weight:700;font-size:20px;color:var(--text);margin:0 0 10px}
.bkspin-card p{font-size:13px;color:var(--text-2);line-height:1.55;margin:0 0 18px}
.bkspin-progress{height:8px;background:var(--line-2);border-radius:4px;overflow:hidden;margin:4px 0 18px;position:relative}
.bkspin-progress-bar{position:absolute;top:0;left:0;height:100%;width:0;background:linear-gradient(90deg,var(--acc),var(--ok));border-radius:4px;animation:bkspin-fill 45s linear forwards}
@keyframes bkspin-fill{0%{width:5%}20%{width:30%}50%{width:60%}80%{width:85%}100%{width:95%}}
.bkspin-steps{display:flex;justify-content:space-between;gap:8px;padding:14px 0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);margin-bottom:4px}
.bkspin-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11.5px;font-weight:600}
.bkspin-step-dot{width:14px;height:14px;border-radius:50%;background:var(--line);position:relative;flex:none}
.bkspin-step-1{color:var(--acc-2);animation:bkspin-s1-text 12s linear forwards}
.bkspin-step-1 .bkspin-step-dot{background:var(--acc);animation:bkspin-s1-dot 12s linear forwards}
.bkspin-step-2{color:var(--text-3);animation:bkspin-s2-text 24s linear forwards}
.bkspin-step-2 .bkspin-step-dot{animation:bkspin-s2-dot 24s linear forwards}
.bkspin-step-3{color:var(--text-3);animation:bkspin-s3-text 24s linear forwards}
.bkspin-step-3 .bkspin-step-dot{animation:bkspin-s3-dot 24s linear forwards}
@keyframes bkspin-s1-dot{0%,80%{background:var(--acc)}100%{background:var(--ok)}}
@keyframes bkspin-s1-text{0%,80%{color:var(--acc-2)}100%{color:var(--ok)}}
@keyframes bkspin-s2-dot{0%,40%{background:var(--line)}45%,90%{background:var(--acc)}100%{background:var(--ok)}}
@keyframes bkspin-s2-text{0%,40%{color:var(--text-3)}45%,90%{color:var(--acc-2)}100%{color:var(--ok)}}
@keyframes bkspin-s3-dot{0%,90%{background:var(--line)}95%,100%{background:var(--acc)}}
@keyframes bkspin-s3-text{0%,90%{color:var(--text-3)}95%,100%{color:var(--acc-2)}}

/* QO7-Datepicker-Popup (datepicker.js) */
.qo7-dp-input{cursor:pointer;caret-color:transparent}
.qo7-dp-popup{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 14px 34px -14px rgba(0,0,0,.5);padding:12px;width:268px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:auto;font-family:var(--font-sans);color:var(--text);user-select:none;animation:qo7-dp-pop .12s ease-out}
@keyframes qo7-dp-pop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.qo7-dp-head{display:flex;align-items:center;gap:4px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--line-2)}
.qo7-dp-title{flex:1;text-align:center;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--text);letter-spacing:.01em}
.qo7-dp-nav{flex:none;width:28px;height:28px;display:grid;place-items:center;background:none;border:1px solid transparent;border-radius:var(--radius);color:var(--text-2);font-size:18px;line-height:1;cursor:pointer;transition:background .12s,color .12s,border-color .12s;font-family:var(--font-sans)}
.qo7-dp-nav:hover{background:var(--line-2);color:var(--acc);border-color:var(--line)}
.qo7-dp-today{flex:none;width:24px;height:24px;display:grid;place-items:center;background:none;border:1px solid transparent;border-radius:50%;color:var(--text-3);cursor:pointer;font-size:10px;line-height:1;transition:background .12s,color .12s}
.qo7-dp-today:hover{background:var(--acc-dim);color:var(--acc)}
.qo7-dp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}
.qo7-dp-weekdays span{text-align:center;font-size:10.5px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;padding:3px 0}
.qo7-dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.qo7-dp-day{aspect-ratio:1/1;display:grid;place-items:center;background:none;border:1px solid transparent;border-radius:var(--radius);color:var(--text);font-size:12.5px;font-weight:500;cursor:pointer;transition:background .1s,color .1s,border-color .1s;font-family:var(--font-sans)}
.qo7-dp-day:hover:not(:disabled){background:var(--acc-dim);color:var(--acc-2);border-color:var(--acc-line)}
.qo7-dp-day.is-today{color:var(--acc);font-weight:700;border-color:color-mix(in srgb,var(--acc) 30%,transparent)}
.qo7-dp-day.is-selected{background:var(--acc);color:var(--acc-ink);font-weight:700;border-color:transparent}
.qo7-dp-day.is-selected:hover{background:var(--acc);color:var(--acc-ink)}
.qo7-dp-day-other{color:var(--text-3);opacity:.4}
.qo7-dp-day.is-disabled{color:var(--text-3);opacity:.35;cursor:not-allowed}

/* Responsive (portierte skin-2-Breakpoints) */
@media(max-width:860px){
  .readout{grid-template-columns:1fr 1fr}
  .ovgrid{grid-template-columns:1fr}
  .kpis{grid-template-columns:1fr 1fr}
  .arow2{grid-template-columns:1fr}
  .resbar{grid-template-columns:60px 1fr 80px;gap:10px}
  .resbar-sub{display:none}
}
@media(max-width:1320px) and (min-width:821px){
  .stacks{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .grid2,.stacks,.readout{grid-template-columns:1fr}
  .wrap{padding:24px 16px 60px}
  body.has-side-nav .creator{width:auto;margin:0;padding:24px 16px 112px}
  .creator h1{font-size:25px}
  .choices-2{grid-template-columns:1fr}
  .creator-dhelp{padding:0 14px 14px}
  .password-field .inp{padding-right:92px}
  .creator .createbar{display:grid;grid-template-columns:1fr;gap:10px}
  .creator .createbar-toggle{margin-right:0}
  .creator .createbar .btn{width:100%;justify-content:center}
  .legal-wrap{padding-top:24px}
  .legal-hero{margin-bottom:18px}
  .legal-hero h1{font-size:28px}
  .legal-panel{padding:18px 16px;margin-bottom:24px}
  .foot .in{grid-template-columns:1fr;gap:10px;padding:18px 16px;text-align:left}
  .foot .in>:first-child,
  .foot .in>:nth-child(2):not(:last-child),
  .foot .in>:last-child{grid-column:auto;text-align:left}
  .legal-foot-links{justify-content:flex-start;gap:12px}
  .pkg-grid{grid-template-columns:1fr}
  .frow{flex-direction:column;align-items:stretch;gap:8px}
  .frow .inp,.frow select.inp{flex:1 1 auto}
  .info-grid{grid-template-columns:1fr}
  .brand .sub{display:none}
  .upg,.tb-link{min-width:36px;padding:.38rem .55rem}
  .upg{font-size:0;gap:0}
  .upg svg{width:16px;height:16px}
  .tb-link{font-size:0;gap:0}
  .tb-link svg{width:16px;height:16px}
  .subnav{padding:.45rem .75rem}
  .hrow{align-items:stretch;flex-direction:column;gap:14px}
  .newbtn{width:100%}
  .readout{margin-bottom:24px}
  .stack-h{grid-template-columns:42px minmax(0,1fr);grid-template-areas:"icon title" "icon status";align-items:start}
  .stack-ic{grid-area:icon}
  .stack-id{grid-area:title}
  .stack-h .pill,.stack-h .led{grid-area:status;justify-self:start;margin-top:8px}
  .stack-spec{grid-template-columns:1fr;gap:8px}
  .stack-act{grid-template-columns:repeat(2,1fr)}
  .act:nth-child(2){border-right:0}
  .act:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .monitoring-suite-nav{width:100%;margin-bottom:18px}
  .monitoring-suite-nav a{flex:1;justify-content:center}
  .seo-title{align-items:flex-start}
  .seo-title .nav-plan-badge{align-self:flex-start}
  .seo-readout-grid,.seo-domain-grid,.seo-detail-grid{grid-template-columns:1fr}
  .seo-domain-card{min-height:0}
  .seo-domain-body{grid-template-columns:1fr}
  .seo-score{min-height:72px}
  .seo-domain-actions{justify-content:stretch}
  .seo-domain-actions .btn{width:100%;justify-content:center}
  .seo-locked-card .card-b{align-items:stretch}
  .seo-request-form,.seo-request-form .btn{width:100%;justify-content:center}
}
@media(max-width:640px){
  .db-conn{grid-template-columns:1fr}
  .welcome-grid{grid-template-columns:1fr}
  .toast{left:14px;right:14px;bottom:14px;max-width:none}
  .seo-domain-metrics{grid-template-columns:1fr 1fr}
  .seo-check-summary{grid-template-columns:1fr}
  .seo-check-summary div{border-right:0;border-bottom:1px solid var(--line)}
  .seo-check-summary div:last-child{border-bottom:0}
  .seo-finding-row{grid-template-columns:1fr;gap:10px;padding:14px}
  .seo-finding-state{width:max-content;min-width:76px}
  .seo-finding-head{display:grid;gap:4px}
  .seo-finding-head span{white-space:normal}
  .seo-settings-form .btn-row .btn{width:100%;justify-content:center}
}
/* Tabellen als gestapelte Karten auf Mobile (Opt-in .tbl-cards, Titel aus data-label) */
@media(max-width:640px){
  .tbl-cards > thead{display:none}
  .tbl-cards,.tbl-cards > tbody,.tbl-cards > tbody > tr,.tbl-cards > tbody > tr > td{display:block;width:100%}
  .tbl-cards > tbody > tr{border:1px solid var(--line-2);border-radius:var(--radius-lg);margin:0 0 12px;padding:4px 0}
  .tbl-cards > tbody > tr:last-child{margin-bottom:0}
  .tbl-cards > tbody > tr > td{border:0;padding:10px 16px;display:grid;grid-template-columns:minmax(96px,118px) minmax(0,1fr);align-items:start;gap:10px 14px;text-align:left;font-size:13px}
  .tbl-cards > tbody > tr > td::before{content:attr(data-label);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);text-align:left;min-width:0;white-space:normal;overflow-wrap:anywhere;padding-top:2px}
  .tbl-cards > tbody > tr > td.no-label{display:block;text-align:left;white-space:normal}
  .tbl-cards > tbody > tr > td.no-label::before{display:none}
  .tbl-cards > tbody > tr > td.external-archive-actions{display:flex;justify-content:flex-start;gap:8px;flex-wrap:wrap}
  .tbl-cards > tbody > tr > td.external-archive-actions .btn{width:100%;justify-content:center}
  .tbl-cards > tbody > tr > td[colspan]{display:block;text-align:left}
  .tbl-cards > tbody > tr > td[colspan]::before{display:none}
  .card-h{display:grid;grid-template-columns:1fr;align-items:start;gap:6px;padding:14px}
  .card-h .right,.card-h .admin-card-note,.card-h > span,.card-h > a{justify-self:start;text-align:left}
  .card-h > a.btn,.card-h > a.newbtn{width:100%;justify-content:center}
}

/* ===== 7. Motion ===== */
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ===== Monitoring (M-2) =====
   #15 . Board (Gruppen-Karten) + Check-Detail. NUR Skin-Tokens (light+dark
   über die Token-Ebenen). `.bars` = Port der Suite2-Sparkline (Design-Quelle
   app.css Z. 133 135), bewusst OHNE Glow (Precision-Linie: keine Glows). */
.subnav a svg{width:13px;height:13px;vertical-align:-2px;margin-right:5px}
.hsub .err{color:var(--err)}
.mon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(480px,100%),1fr));gap:16px;align-items:start}
.mon-grid .card{margin-bottom:0}
.mon-meta{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-end;padding:14px 18px;border-bottom:1px solid var(--line)}
.mon-stat{display:flex;flex-direction:column;gap:4px;min-width:84px}
.mon-stat .k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}
.mon-stat .v{font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:0;color:var(--text);line-height:1.15}
.mon-stat .v.sm{font-family:var(--font-mono);font-size:12.5px;font-weight:500}
.mon-stat .v small{display:block;font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);font-weight:400;margin-top:2px}
.mon-stat.grow{flex:1 1 160px;min-width:160px}
.admin-monitor-board{display:grid;grid-template-columns:1fr;gap:18px}
.admin-monitor-group{margin-bottom:0;overflow:visible}
.admin-monitor-group-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;padding:18px 20px;border-bottom:1px solid var(--line)}
.admin-monitor-group-title{min-width:0}
.admin-monitor-group-title span{display:block;margin-bottom:5px;color:var(--text-3);font-size:12px;font-weight:650}
.admin-monitor-group-title h2{font-size:18px;line-height:1.2;margin:0;color:var(--text)}
.admin-monitor-group-title p{max-width:700px;margin:7px 0 0;color:var(--text-2);font-size:13.5px;line-height:1.5}
.admin-monitor-group-status{display:grid;justify-items:end;gap:6px;text-align:right}
.admin-monitor-group-status small{color:var(--text-3);font-size:12px;font-weight:550}
.admin-monitor-group-meta{background:color-mix(in srgb,var(--surface-2) 42%,transparent)}
.admin-monitor-check-list{display:grid}
.admin-monitor-check-row{display:grid;grid-template-columns:minmax(260px,1.45fr) 126px minmax(140px,.62fr) minmax(150px,.62fr);gap:16px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line-2);min-width:0}
.admin-monitor-check-list.has-actions .admin-monitor-check-row{grid-template-columns:minmax(260px,1.45fr) 126px minmax(140px,.62fr) minmax(150px,.62fr) minmax(126px,auto)}
.admin-monitor-check-row:last-child{border-bottom:0}
.admin-monitor-check-row:hover{background:color-mix(in srgb,var(--surface-2) 42%,transparent)}
.admin-monitor-check-main{display:grid;gap:4px;min-width:0;color:inherit;text-decoration:none}
.admin-monitor-check-title{display:flex;align-items:center;gap:8px;min-width:0}
.admin-monitor-check-title b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;color:var(--text)}
.admin-monitor-check-status{display:grid;justify-items:start;gap:3px}
.admin-monitor-check-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.admin-monitor-check-numbers span{display:grid;gap:2px;min-width:0}
.admin-monitor-check-numbers small{color:var(--text-3);font-size:11px;font-weight:650}
.admin-monitor-check-numbers b{color:var(--text-2);font-size:13px;font-weight:600;white-space:nowrap}
.admin-monitor-check-bars{min-width:0}
.admin-monitor-check-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.admin-monitor-check-actions .mon-fix-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.monitoring-title{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.monitoring-title-copy{flex:1;min-width:240px}
.monitoring-title-stat{text-align:right}
.monitoring-title-stat .v small{display:inline;margin-top:0}
.monitoring-add-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.monitoring-domain-select{flex:1;min-width:220px}
.monitoring-help{margin-top:8px;font-size:12.5px}
.monitoring-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.monitoring-actions{display:flex;gap:8px;align-items:center}
.monitoring-suite-nav{display:flex;align-items:center;gap:8px;margin:0 0 22px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);width:max-content;max-width:100%;overflow-x:auto}
.monitoring-suite-nav a{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 11px;border-radius:var(--radius);color:var(--text-2);text-decoration:none;font-size:12.5px;font-weight:600;white-space:nowrap}
.monitoring-suite-nav a:hover{background:var(--surface-2);color:var(--text)}
.monitoring-suite-nav a.on{background:var(--acc-dim);color:var(--acc);box-shadow:inset 2px 0 0 var(--brand-orange)}
.monitoring-suite-nav a.is-muted:not(.on){color:var(--text-3)}
.monitoring-suite-nav svg{width:15px;height:15px;flex:none}
.seo-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.seo-title>div{min-width:0;flex:1}
.seo-title .nav-plan-badge{min-height:24px;padding:4px 10px;font-size:11px}
.seo-locked-card{border-color:var(--acc-line);background:color-mix(in srgb,var(--acc) 5%,var(--surface))}
.seo-locked-card .card-b{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.seo-locked-copy{display:flex;align-items:flex-start;gap:13px;min-width:260px;flex:1}
.seo-locked-copy h2{font-size:15px;font-weight:650;margin:0 0 4px}
.seo-locked-copy p{font-size:13px;color:var(--text-2);line-height:1.55;margin:0;max-width:680px}
.seo-icon-box{width:38px;height:38px;border:1px solid var(--acc-line);border-radius:var(--radius);background:var(--acc-dim);color:var(--acc);display:grid;place-items:center;flex:none}
.seo-icon-box svg{width:19px;height:19px}
.seo-request-form{margin:0;display:flex;justify-content:flex-end}
.seo-readout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:0 0 24px}
.seo-readout-card{margin:0;padding:18px}
.seo-readout-card span{display:block;font-size:12px;font-weight:650;color:var(--text-3);margin-bottom:9px}
.seo-readout-card strong{display:block;font-size:25px;font-weight:650;line-height:1.1;color:var(--text);letter-spacing:0;overflow-wrap:anywhere}
.seo-readout-card small{display:block;margin-top:8px;color:var(--text-3);font-size:12.5px;line-height:1.4}
.seo-section-title{margin-top:6px}
.seo-domain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:14px;align-items:stretch}
.seo-domain-card{margin:0;display:flex;flex-direction:column;min-height:218px;overflow:hidden}
.seo-domain-card.is-muted{opacity:.72}
.seo-domain-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid var(--line)}
.seo-domain-head h3{font-size:15.5px;font-weight:650;margin:0;overflow-wrap:anywhere;line-height:1.3}
.seo-domain-head p{font-size:12px;color:var(--text-3);margin:4px 0 0;line-height:1.35}
.seo-domain-body{display:grid;grid-template-columns:94px minmax(0,1fr);gap:16px;padding:16px 18px;flex:1}
.seo-score{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:10px;display:grid;align-content:center;min-height:82px}
.seo-score span{font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}
.seo-score strong{font-size:25px;line-height:1.05;font-weight:650;color:var(--text);margin-top:6px}
.seo-score.is-good strong{color:var(--ok)}
.seo-score.is-warn strong{color:var(--warn)}
.seo-score.is-bad strong{color:var(--err)}
.seo-score.is-open strong{font-size:17px;color:var(--text-3)}
.seo-domain-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:center}
.seo-domain-metrics span{min-height:32px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface-2);display:flex;align-items:center;padding:6px 9px;font-size:12px;color:var(--text-2);line-height:1.25}
.seo-domain-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:10px 18px;color:var(--text-3);font-size:12px;line-height:1.35;flex-wrap:wrap}
.seo-domain-actions{padding:0 18px 16px;display:flex;justify-content:flex-end}
.seo-detail-grid{align-items:stretch}
.seo-settings-form{display:grid;gap:14px}
.seo-settings-form .admin-field{display:grid;gap:6px}
.seo-settings-form .admin-field span{font-size:12px;font-weight:650;color:var(--text-2)}
.seo-settings-form .admin-field small{font-size:11.5px;color:var(--text-3);line-height:1.45}
.seo-check-row{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);cursor:pointer}
.seo-check-row span{display:grid;gap:2px;min-width:0}
.seo-check-row b{font-size:13px;font-weight:650;color:var(--text)}
.seo-check-row small{font-size:12px;color:var(--text-3);line-height:1.45}
.seo-check-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.seo-check-summary div{padding:15px 18px;border-right:1px solid var(--line)}
.seo-check-summary div:last-child{border-right:0}
.seo-check-summary span{display:block;font-size:11px;font-weight:650;color:var(--text-3);margin-bottom:7px}
.seo-check-summary strong{font-size:24px;line-height:1;font-weight:650;color:var(--text)}
.seo-small-copy{font-size:13px;color:var(--text-2);line-height:1.55}
.seo-findings-list{display:grid}
.seo-finding-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;padding:15px 18px;border-top:1px solid var(--line-2)}
.seo-finding-row:first-child{border-top:0}
.seo-finding-state{display:inline-flex;align-items:center;justify-content:center;width:78px;height:28px;border:1px solid var(--line);border-radius:var(--radius);font-size:11px;font-weight:700;color:var(--text-2);background:var(--surface-2)}
.seo-finding-row.is-error .seo-finding-state{color:var(--err);border-color:color-mix(in srgb,var(--err) 38%,transparent);background:color-mix(in srgb,var(--err) 9%,transparent)}
.seo-finding-row.is-warn .seo-finding-state{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent);background:color-mix(in srgb,var(--warn) 10%,transparent)}
.seo-finding-row.is-info .seo-finding-state{color:var(--info);border-color:color-mix(in srgb,var(--info) 38%,transparent);background:color-mix(in srgb,var(--info) 9%,transparent)}
.seo-finding-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}
.seo-finding-head b{font-size:13.5px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}
.seo-finding-head span{font-size:11px;color:var(--text-3);white-space:nowrap}
.seo-finding-row p{font-size:12px;color:var(--text-3);margin:3px 0 0;overflow-wrap:anywhere}
.seo-finding-row small{display:block;margin-top:7px;font-size:12.5px;color:var(--text-2);line-height:1.5}
.admin-monitoring-sub{display:flex;gap:8px 14px;flex-wrap:wrap;align-items:center}
.admin-monitoring-sub span{display:inline-flex}
.admin-monitor-card{margin-bottom:14px}
.admin-monitor-card-sub{display:block;margin-top:3px;color:var(--text-3);font-weight:400;font-size:12px;line-height:1.45}
.admin-monitor-provision-form{padding:14px 18px;display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.admin-monitor-field{display:grid;gap:5px;font-size:12px;color:var(--text-3);font-weight:600}
.admin-monitor-customer-input{width:160px}
.admin-monitor-domain-input{width:200px}
.admin-monitor-or{font-size:12px;color:var(--text-3);font-weight:600;padding-bottom:9px}
.admin-monitor-note{margin:0 18px 12px}
.admin-monitor-note.is-error{margin-bottom:16px;border-color:var(--err)}
.admin-monitor-empty{padding:0 18px 16px;color:var(--text-3);font-size:13px}
.admin-monitor-domain-form{padding:0 18px 16px}
.admin-monitor-domain-list{display:grid;gap:7px;margin-bottom:12px}
.admin-monitor-domain-option{display:flex;gap:9px;align-items:center;font-size:13px;min-width:0}
.admin-monitor-domain-option.is-disabled{opacity:.5}
.admin-monitor-domain-option .mono{min-width:0;overflow:hidden;text-overflow:ellipsis}
.pill-xs{font-size:10px}
.admin-team-flash{margin-top:0;margin-bottom:16px}
.admin-team-card .card-h{gap:12px}
.admin-team-card .card-h .right{gap:8px;flex-wrap:wrap;justify-content:flex-end}
.admin-team-new-btn{margin-left:0}
.admin-team-new-panel{background:var(--acc-dim);padding:18px 22px;border-bottom:1px solid var(--acc-line)}
.admin-team-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.admin-field{display:grid;gap:4px;font-size:12px;color:var(--text-3);font-weight:600}
.admin-field .inp{width:100%}
.admin-team-note,.admin-team-manual{margin-bottom:14px}
.admin-team-note textarea{resize:vertical}
.admin-team-radio-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.admin-radio{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);cursor:pointer}
.admin-radio-hint{color:var(--text-3);font-style:normal;margin-left:4px}
.admin-team-form-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.admin-team-person{min-width:0}
.admin-team-person b{display:inline;font-weight:600;color:var(--text)}
.admin-team-self{font-size:11px;color:var(--acc);font-weight:600;margin-left:5px}
.admin-team-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--text-3);margin-top:2px;min-width:0}
.admin-team-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.admin-team-last-login{color:var(--text-3);font-size:12.5px}
.admin-team-action-cell{text-align:right}
.admin-team-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.admin-team-self-note{color:var(--text-3);font-size:11px}
.admin-team-empty{text-align:center;padding:24px;color:var(--text-3)}
.admin-team-permissions{margin-top:14px;background:var(--surface-2)}
.admin-team-permissions-body{padding:14px 18px;font-size:13px;color:var(--text-2);line-height:1.65}
.admin-team-permissions-title{color:var(--text);display:block;margin-bottom:6px}
.admin-team-permission-table{width:100%;min-width:380px;font-size:12.5px;border-collapse:collapse}
.admin-team-permission-table tr{border-bottom:1px solid var(--line-2)}
.admin-team-permission-table thead tr{border-bottom-color:var(--line)}
.admin-team-permission-table th,.admin-team-permission-table td{padding:6px 8px}
.admin-team-permission-table th{text-align:left;color:var(--text-2);font-weight:600}
.admin-team-permission-state{font-family:var(--font-mono);font-size:11px}
.admin-team-permission-state.is-yes{color:var(--ok)}
.admin-team-permission-state.is-no{color:var(--text-3)}
.admin-roles-lead{color:var(--text-2);font-size:14px;margin:0 0 18px;max-width:780px;line-height:1.6}
.admin-roles-flash{margin-top:0;margin-bottom:16px}
.admin-role-new-form{padding:14px 22px;background:var(--acc-dim);border-top:1px solid var(--acc-line)}
.admin-role-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:12px;align-items:end}
.admin-role-code{font-size:11px;color:var(--text-3)}
.admin-role-desc{color:var(--text-3)}
.admin-role-perm{font-size:12.5px}
.admin-role-action-cell{text-align:right}
.admin-role-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.admin-role-note{padding:12px 18px;border-top:1px solid var(--line-2);font-size:12px;color:var(--text-3);line-height:1.6}
.admin-role-note b{color:var(--text-2)}
.admin-role-edit-code{background:var(--line-2);color:var(--text-3)}
.admin-role-description-field{margin-top:14px}
.admin-role-description{resize:vertical}
.admin-role-option-list{padding:6px 8px}
.admin-role-option{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line-2);cursor:pointer}
.admin-role-option:last-of-type{border-bottom:0}
.admin-role-option input{margin-top:3px}
.admin-role-option b{display:block;color:var(--text);font-size:13.5px}
.admin-role-option small{display:block;color:var(--text-3);font-size:12px;line-height:1.45;margin-top:2px}
.admin-role-super-note{padding:8px 14px 12px;font-size:11.5px;color:var(--text-3)}
.admin-role-edit-table .admin-role-check-head{width:120px;text-align:center}
.admin-role-edit-table .admin-role-check-head.is-wide{width:140px}
.admin-role-permission-desc{font-size:11.5px;color:var(--text-3);line-height:1.4}
.admin-role-check-cell{text-align:center}
.admin-role-edit-note{padding:12px 18px;border-top:1px solid var(--line-2);font-size:12px;color:var(--text-3);line-height:1.6}
.admin-role-edit-note b{color:var(--text-2)}
.admin-role-createbar{margin-top:24px}
.admin-server-node-link{margin-left:0}
.admin-server-monitor-card{margin-top:16px}
.admin-server-monitor-body{padding:14px 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.admin-server-monitor-icon{flex:none;color:var(--acc)}
.admin-server-copy{flex:1;min-width:220px;font-size:13px;color:var(--text-2);line-height:1.55;display:grid;gap:2px}
.admin-server-copy b{color:var(--text)}
.admin-server-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.admin-server-stat{padding:18px 22px;color:var(--text-3);font-size:13px}
.admin-server-value{font-family:var(--font-sans);font-weight:800;font-size:32px;letter-spacing:0;color:var(--text);line-height:1}
.admin-server-copy-block{padding:0 22px 16px;font-size:13px;color:var(--text-2);line-height:1.6}
.admin-server-muted-card{margin-top:16px;background:var(--surface-2)}
.admin-server-muted-card .admin-server-copy-block{padding:14px 18px;color:var(--text-3);font-size:12.5px}
.admin-server-muted-card b{color:var(--text-2)}
.admin-php-flash{margin:0 18px 4px;padding:9px 12px;border-radius:var(--radius);font-size:12.5px}
.admin-php-flash.is-ok{background:var(--acc-dim);color:var(--text)}
.admin-php-flash.is-error{background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err)}
.admin-php-body{padding:8px 18px 16px;overflow-x:auto}
.admin-php-note{font-size:12px;color:var(--text-3);margin-bottom:12px;line-height:1.55}
.admin-php-table{font-size:12.5px}
.admin-php-plan{white-space:nowrap}
.admin-php-plan small{display:block;color:var(--text-3);font-size:10.5px}
.admin-php-plan .admin-php-drift{margin-top:5px;color:var(--warn);white-space:normal;line-height:1.35}
.admin-php-input{width:80px;padding:5px 7px;font-size:12px}
.admin-php-input.is-wide{width:170px}
.admin-php-current{display:block;margin-top:5px;color:var(--warn);font-family:var(--font-mono);font-size:10.5px;line-height:1.35;overflow-wrap:anywhere}
.admin-php-actions{text-align:right;white-space:nowrap}
.admin-subapps-summary{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.admin-subapps-flash{border:1px solid transparent;border-radius:var(--radius-lg);margin-bottom:14px;padding:12px 18px;font-weight:600;display:flex;align-items:center;gap:8px}
.admin-subapps-flash.is-ok{border-color:color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok)}
.admin-subapps-flash.is-error{border-color:color-mix(in srgb,var(--err) 45%,transparent);color:var(--err)}
.admin-subapp-card{margin-bottom:16px}
.admin-subapp-domain{color:var(--text-3);font-weight:500;font-size:13px;margin-left:6px}
.admin-subapp-actions{gap:8px;flex-wrap:wrap}
.admin-subapp-info{font-weight:500}
.admin-subapp-muted{color:var(--text-3)}
.admin-subapp-action-row{padding:2px 22px 10px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.admin-subapp-action-row.is-tight{padding-top:0;padding-bottom:14px}
.admin-subapp-copy{font-size:12.5px;color:var(--text-3);line-height:1.5}
.admin-subapp-section{padding:4px 22px 18px}
.admin-subapp-section-title{font-size:12px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.admin-subapp-ip-list{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}
.admin-subapp-ip-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.admin-subapp-ip-form-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.admin-subapp-ip-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.admin-subapp-ip-input{padding:8px 11px;border:1px solid var(--line);border-radius:var(--radius);font-size:13px;color:var(--text);background:transparent}
.admin-subapp-unavailable{padding:4px 22px 18px;color:var(--text-3);font-size:13px;line-height:1.5}
.admin-detail-title{flex:1;min-width:280px}
.admin-detail-title h1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.admin-backlink{display:inline-flex;align-items:center;gap:7px;color:var(--text-2);text-decoration:none}
.admin-backlink:hover{color:var(--acc)}
.admin-meta-list{display:flex;align-items:center;gap:6px 12px;flex-wrap:wrap}
.admin-meta-list span{display:inline-flex;align-items:center;min-width:0}
.admin-meta-list .mono{overflow-wrap:anywhere}
.admin-flash{margin-top:0;margin-bottom:14px}
.admin-card-spaced-sm{margin-bottom:14px}
.admin-card-spaced{margin-bottom:16px}
.admin-card-spaced-lg{margin-bottom:24px}
.admin-card-body{padding:14px 18px}
.admin-card-body-lg{padding:18px 22px}
.admin-card-note{color:var(--text-3);font-size:12px;line-height:1.55}
.admin-muted{color:var(--text-3)}
.admin-muted-strong{color:var(--text-2)}
.u-ok{color:var(--ok)}
.admin-inline-link{color:var(--accent);font-weight:600;text-decoration:none}
.admin-inline-link:hover{text-decoration:underline;text-underline-offset:3px}
.admin-status-card.is-error{background:color-mix(in srgb,var(--err) 12%,transparent);border-color:color-mix(in srgb,var(--err) 35%,transparent)}
.admin-status-card.is-warn{background:color-mix(in srgb,var(--warn) 12%,transparent);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}
.admin-status-card.is-ok{background:color-mix(in srgb,var(--ok) 12%,transparent);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}
.admin-jobs-head{margin-bottom:14px}
.admin-jobs-state{margin-top:8px}
.admin-jobs-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}
.admin-jobs-kpi{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;padding:14px 16px;margin-bottom:0;min-width:0}
.admin-jobs-kpi-icon{width:36px;height:36px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;color:var(--acc);flex:none}
.admin-jobs-kpi-icon svg{width:18px;height:18px;stroke-width:2}
.admin-jobs-kpi-value{font-family:var(--font-sans);font-weight:700;font-size:24px;color:var(--text);line-height:1}
.admin-jobs-kpi-label{font-size:12.5px;color:var(--text-2);line-height:1.35;margin-top:4px}
.admin-jobs-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;font-size:12.5px;color:var(--text-2);line-height:1.6}
.admin-jobs-note svg{width:16px;height:16px;color:var(--warn);margin-top:2px}
.admin-jobs-empty{padding:18px;color:var(--text-2);line-height:1.7}
.admin-jobs-table b{font-weight:600}
.admin-jobs-muted{color:var(--text-3)}
.admin-jobs-error{max-width:520px;color:var(--text-2);overflow-wrap:anywhere}
.admin-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}
.admin-kpi-card{padding:14px 18px}
.admin-kpi-label{font-size:11.5px;color:var(--text-3);font-weight:650;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.admin-kpi-value{font-family:var(--font-sans);font-weight:700;font-size:20px;color:var(--text);line-height:1.2}
.admin-kpi-value.is-ok{color:var(--ok)}
.admin-kpi-value.is-error{color:var(--err)}
.admin-kpi-value.is-muted{color:var(--text-3)}
.admin-kpi-sub{font-size:12px;color:var(--text-3);margin-top:3px;line-height:1.45}
.admin-status-line{display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-weight:700;font-size:20px;line-height:1.2}
.admin-status-line svg{width:20px;height:20px;flex:none}
.admin-status-line.is-small{font-size:14px}
.admin-status-line.is-small svg{width:16px;height:16px}
.admin-status-line.is-ok{color:var(--ok)}
.admin-status-line.is-error{color:var(--err)}
.admin-system-note{margin-top:10px;padding:8px 10px;background:var(--line-2);border-radius:var(--radius);font-size:12px;color:var(--text-3);line-height:1.45;display:flex;align-items:flex-start;gap:8px}
.admin-system-note svg{flex:none;margin-top:1px}
.admin-state-line{font-family:var(--font-sans);font-weight:700;font-size:16px;line-height:1.35;color:var(--text)}
.admin-state-line.is-warn{color:var(--warn)}
.admin-state-line.is-ok{color:var(--ok)}
.admin-state-line small{font-size:12.5px;font-weight:400;color:var(--text-3)}
.admin-note-box{flex:1;min-width:200px;font-size:12.5px;color:var(--text-2);padding:6px 10px;background:var(--surface-2);border-radius:var(--radius);line-height:1.45}
.admin-note-box b{color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:.03em}
.admin-card-title{display:flex;align-items:center;gap:8px}
.admin-card-title svg{width:16px;height:16px;flex:none}
.admin-card-subtitle{color:var(--text-3);font-size:12px;line-height:1.5}
.admin-form-inline{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.admin-form-inline.is-compact{gap:8px}
.admin-form-grid{display:grid;gap:14px}
.admin-form-grid.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-form-grid.is-address{grid-template-columns:120px minmax(0,1fr) minmax(0,1fr);margin-bottom:14px}
.admin-form-grid.is-controls{grid-template-columns:160px minmax(0,1fr) auto;gap:12px;align-items:end}
.admin-form-field{display:grid;gap:4px;font-size:12px;color:var(--text-3);font-weight:600}
.admin-form-field.is-narrow{max-width:340px}
.admin-form-field .inp{width:100%}
.admin-form-field textarea.inp{resize:vertical}
.admin-form-field small{font-weight:400;color:var(--text-3)}
.admin-form-action{justify-self:start}
.admin-required{color:var(--err)}
.kunden-new-card-subtitle{font-weight:500;color:var(--text-3);font-size:12px;margin-left:6px}
.kunden-new-address-main{margin-bottom:14px}
.kunden-new-copy{color:var(--text-2);font-size:13px;line-height:1.55;margin-bottom:12px}
.kunden-new-radio-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:10px}
.kunden-new-manual{margin-top:8px}
.kunden-new-manual .inp{width:100%;max-width:340px}
.kunden-new-welcome{margin-top:14px;padding-top:14px;border-top:1px solid var(--line-2)}
.kunden-new-actions{margin-bottom:24px}
.manea-warning{margin-bottom:14px;background:color-mix(in srgb,var(--warn) 7%,transparent);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}
.manea-warning-body{padding:14px 18px;display:flex;gap:12px;align-items:flex-start}
.manea-warning-icon{width:20px;height:20px;flex:none;margin-top:1px;stroke:var(--warn);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.manea-warning-copy{font-size:13px;color:var(--text-2);line-height:1.6}
.manea-warning-copy b{color:var(--text)}
.manea-search{margin-bottom:14px}
.manea-search-body{padding:12px 18px;display:flex;gap:10px;align-items:center}
.manea-search-body .inp{flex:1;min-width:0}
.manea-create-grid{padding:12px 18px;display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:10px;align-items:center}
.manea-readout{margin-bottom:16px}
.manea-provision-card{margin-bottom:16px}
.manea-provision-list{display:grid}
.manea-provision-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 18px;border-top:1px solid var(--line-2)}
.manea-provision-row:first-child{border-top:0}
.manea-provision-main{min-width:0}
.manea-provision-main b{display:block;margin-bottom:4px}
.manea-provision-main .admin-muted{display:flex;gap:10px;flex-wrap:wrap;line-height:1.55}
.manea-provision-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.manea-workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}
.manea-workflow-card{padding:16px 18px}
.manea-workflow-card h2{font-size:15px;margin:0 0 6px}
.manea-workflow-card p{margin:0;color:var(--text-2);font-size:13px;line-height:1.55}
.manea-account-table .manea-group-row td{background:var(--surface-2);color:var(--text);font-weight:700;padding:10px 18px}
.manea-group-row small{color:var(--text-3);font-weight:500;margin-left:8px}
.manea-meta-block{display:block}
.manea-date{font-size:12.5px}
.manea-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.manea-status-stack{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.manea-inline-pill{margin-top:6px}
.manea-next-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap}
.manea-note-card{margin-top:14px;background:var(--surface-2)}
.manea-note-body{padding:12px 18px;font-size:12.5px;color:var(--text-3);line-height:1.6}
.manea-link{color:var(--acc)}
.kunden-list-newbtn{flex:none}
.kunden-role-note{margin-bottom:14px;background:var(--surface-2)}
.kunden-role-note-body{padding:14px 18px;font-size:13px;color:var(--text-2);line-height:1.65;display:grid;gap:6px}
.kunden-role-note-body b{color:var(--text)}
.kunden-self{font-size:11px;color:var(--acc);font-weight:600}
.kunden-role-cell,.kunden-mapping-cell{text-align:left}
.kunden-role-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:6px;align-items:stretch}
.kunden-role-select{min-width:0;font-size:12px;padding:8px 10px}
.kunden-role-save{width:42px;min-width:42px;padding:0;font-size:11.5px}
.kunden-row-note{display:block;margin-top:4px;color:var(--text-3);font-size:11px}
.kunden-row-note.is-accent{color:var(--acc)}
.kunden-mapping-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}
.kunden-mapping-select{min-width:0}
.kunden-role-form .inp,.kunden-role-form .btn,.kunden-mapping-form .inp,.kunden-mapping-form .btn{min-height:40px}
.kunden-mapping-form .btn{min-width:112px}
.kunden-card-top{margin-top:16px}
.kunden-col-id{width:60px}
.kunden-col-sm{width:110px}
.kunden-col-projects{width:80px}
.kunden-col-status{width:90px}
.kunden-col-actions{width:140px}
.kunden-login-link{font-weight:700;color:var(--acc);text-decoration:none}
.kunden-name{font-size:12.5px;color:var(--text-2);line-height:1.4;margin-top:2px}
.kunden-email{font-size:11.5px;color:var(--text-3);line-height:1.3}
.kunden-plan{white-space:nowrap}
.kunden-actions{display:inline-flex;gap:6px;align-items:center}
.kunden-impersonate-btn{color:var(--acc);border-color:var(--acc)}
.admin-flex-grow{flex:1;min-width:220px}
.admin-flex-grow.is-copy{font-size:13px;color:var(--text-2);line-height:1.55}
.admin-flex-grow.is-copy b{color:var(--text)}
.admin-copy-hint{display:block;color:var(--text-3);font-size:12px;margin-top:2px;line-height:1.5}
.admin-option-list{padding:14px 18px;display:grid;gap:10px}
.admin-option-row{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border:1px solid var(--line-2);border-radius:var(--radius-lg);cursor:pointer;min-width:0}
.admin-option-row input{margin-top:3px;flex:none}
.admin-option-title{color:var(--text);font-size:13.5px;font-weight:650}
.admin-option-copy{display:block;color:var(--text-3);font-size:12px;line-height:1.45;margin-top:2px}
.admin-pill-tight{font-size:10px;margin-left:6px}
.admin-push-end{margin-left:auto}
.admin-empty-block{padding:14px 18px;color:var(--text-3);font-size:13px;line-height:1.5}
.admin-empty-block p{margin:0}
.admin-detail-list{display:grid;gap:8px}
.admin-detail-item{border:1px solid var(--line-2);border-radius:var(--radius-lg);padding:10px 12px;display:grid;gap:8px;min-width:0}
.admin-detail-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;min-width:0}
.admin-detail-row .mono{overflow-wrap:anywhere}
.admin-detail-meta{color:var(--text-3);font-size:12px;line-height:1.5}
.admin-detail-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.admin-border-top-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line-2);padding-top:12px;margin-top:2px}
.admin-border-top-grid{display:grid;gap:8px;border-top:1px solid var(--line-2);padding-top:12px;margin-top:2px}
.admin-flex-input{flex:1;min-width:230px}
.admin-form-error{color:var(--err);font-size:12px}
.bestellung-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;font-size:12.5px;color:var(--text-2);line-height:1.6}
.bestellung-note-icon{width:16px;height:16px;margin-top:2px;color:var(--acc);flex:none}
.bestellung-field-note{margin-top:10px}
.bestellung-notes{resize:vertical}
.bestellung-createbar{margin-bottom:24px}
.admin-orders-newbtn{flex:none}
.admin-orders-flash{margin-top:0;margin-bottom:14px}
.admin-orders-filter{margin-bottom:16px}
.admin-orders-filter-link{text-decoration:none;padding:7px 13px}
.admin-orders-card{overflow:hidden}
.admin-order-row{display:grid;grid-template-columns:minmax(0,1fr) 90px 110px auto;gap:18px;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line);scroll-margin-top:90px}
.admin-order-row:last-child{border-bottom:0}
.admin-order-row:target,.admin-order-row.order-target{background:color-mix(in srgb,var(--acc) 12%,transparent);box-shadow:inset 3px 0 0 var(--acc)}
.admin-order-main{min-width:0}
.admin-order-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:700;font-size:14.5px;min-width:0}
.admin-order-badges{display:inline-flex;gap:6px;flex-wrap:wrap;align-items:center}
.admin-order-badge{font-size:10px}
.admin-order-meta{display:flex;align-items:center;gap:4px 12px;flex-wrap:wrap;font-size:12.5px;color:var(--text-3);margin-top:2px;line-height:1.45}
.admin-order-meta b{color:var(--text-2)}
.admin-order-risk{text-align:center}
.admin-order-risk-label{font-size:11px;color:var(--text-3)}
.admin-order-risk-value{font-weight:700;color:var(--text-3)}
.admin-order-risk-value.is-ok{color:var(--ok)}
.admin-order-risk-value.is-warn{color:var(--warn)}
.admin-order-risk-value.is-error{color:var(--err)}
.admin-order-date{text-align:right;font-size:11.5px;color:var(--text-3);min-width:90px}
.admin-order-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap}
.admin-order-state{font-size:11px}
.admin-orders-empty{padding:30px 22px;text-align:center;color:var(--text-3);font-size:14px}
.admin-orders-note{font-size:12px;color:var(--text-3);margin-top:12px;line-height:1.6}
.admin-inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px}
.admin-select-action{display:flex;gap:6px;align-items:center}
.admin-select-action select.inp{font-size:12px;padding:4px 8px;min-width:140px}
.admin-select-action.is-wide select.inp{min-width:150px}
.admin-contract-select{flex:1;min-width:260px}
.admin-input-price{width:130px}
.admin-input-qty{width:90px}
.admin-input-auto{width:auto}
.admin-input-note{flex:1;min-width:200px}
.admin-table-action-cell{text-align:right;white-space:nowrap}
.admin-table-empty{text-align:center;padding:24px;color:var(--text-3)}
.seo-panel{margin-bottom:16px}
.seo-panel-top{margin-top:16px}
.seo-score-body{display:flex;gap:28px;flex-wrap:wrap;align-items:center}
.seo-score-main{min-width:120px}
.seo-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em}
.seo-label.is-spaced{margin-bottom:6px}
.seo-score-value{font-size:34px;font-weight:700;line-height:1;color:var(--seo-score-color,var(--text))}
.seo-score-value.is-empty{font-size:20px;color:var(--text-3)}
.seo-score-unit{font-size:16px;color:var(--text-3);font-weight:500}
.seo-tone-ok{--seo-score-color:var(--ok);color:var(--ok)}
.seo-tone-warn{--seo-score-color:var(--warn);color:var(--warn)}
.seo-tone-error{--seo-score-color:var(--err);color:var(--err)}
.seo-tone-muted{--seo-score-color:var(--text-3);color:var(--text-3)}
.seo-score-breakdown{display:flex;gap:16px;flex-wrap:wrap}
.seo-score-item b{display:block;color:var(--seo-score-color,var(--text));font-size:15px}
.seo-actions{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.seo-actions form{margin:0}
.seo-tier-form{display:flex;gap:6px;align-items:center}
.seo-tier-select{flex:0 1 150px}
.seo-meta-bar{padding:9px 18px;border-top:1px solid var(--line);font-size:12px;color:var(--text-3)}
.seo-include-gap{margin:-4px 0 12px}
.seo-metric-body{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}
.seo-metric{min-width:110px}
.seo-metric.is-grow{flex:1;min-width:260px}
.seo-metric-value{font-size:22px;font-weight:700;color:var(--seo-score-color,var(--text));line-height:1.25}
.seo-metric-value small{font-size:12px;color:var(--text-3);font-weight:500}
.seo-metric-note{font-size:11.5px;color:var(--text-3);line-height:1.5;margin-top:2px}
.seo-pill-list{display:flex;gap:6px;flex-wrap:wrap}
.seo-note-row{padding:10px 18px;border-top:1px solid var(--line-2);font-size:12.5px;color:var(--text-3);line-height:1.55}
.seo-line-row{padding:8px 18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:center}
.seo-line-row.is-muted{opacity:.5}
.seo-path{font-family:var(--font-mono);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}
.seo-path-meta{color:var(--text-3);font-size:12px;flex:none}
.seo-publish-state{flex:none;font-size:11px;font-weight:600;color:var(--text-3)}
.seo-publish-state.is-live{color:var(--ok)}
.seo-inline-actions{display:flex;gap:6px;flex:none;align-items:center;flex-wrap:wrap}
.seo-mini-form{margin:0;display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.seo-form-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.seo-input-short{font-size:12px;padding:4px 8px;width:160px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--text)}
.seo-button-mini{font-size:12px;padding:5px 11px}
.seo-code-preview{margin:10px 0 0;padding:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);font-size:11px;line-height:1.5;overflow:auto;max-height:320px;white-space:pre-wrap}
.seo-copy{font-size:12.5px;color:var(--text-2);line-height:1.6}
.seo-copy.is-muted{color:var(--text-3)}
.seo-between{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.seo-stat-row{border-top:1px solid var(--line);display:flex;gap:26px;flex-wrap:wrap}
.seo-stat b{font-size:21px}
.seo-table-scroll{overflow-x:auto}
.seo-table-compact{width:100%;font-size:12.5px}
.seo-finding-row{padding:13px 18px;border-top:1px solid var(--line);display:flex;gap:14px;align-items:flex-start}
.seo-finding-row>.pill{flex:none;margin-top:1px}
.seo-row-main{flex:1;min-width:0}
.seo-danger-actions{margin-top:16px;text-align:right}
.seo-index-engine{margin-top:8px}
.seo-index-form{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.seo-index-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-3)}
.seo-index-domain-input{flex:0 1 220px}
.seo-index-id-input{flex:0 1 140px}
.seo-index-tier-input{flex:0 1 160px}
.seo-index-state{opacity:.6}
.seo-index-gsc-row{border-top:1px solid var(--line);display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px}
.seo-index-push-form{margin:0 0 0 auto}
.seo-index-gsc-form{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.seo-index-json{font-family:var(--font-mono);font-size:11.5px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--text);resize:vertical}
.seo-index-table{width:100%;border-collapse:collapse;font-size:13.5px}
.seo-index-table thead tr{text-align:left;color:var(--text-3);font-size:12px}
.seo-index-table th{padding:11px 8px}
.seo-index-table th:first-child{padding-left:18px}
.seo-index-table th:last-child{padding-right:18px}
.seo-index-table td{padding:12px 8px}
.seo-index-table td:first-child{padding-left:18px}
.seo-index-table td:last-child{padding-right:18px}
.seo-index-domain-link{font-weight:600;color:var(--text)}
.seo-index-pill{margin-right:4px}
@media(max-width:700px){.seo-index-form{align-items:stretch}.seo-index-field,.seo-index-form .btn,.seo-index-domain-input,.seo-index-id-input,.seo-index-tier-input{width:100%;flex-basis:auto}.seo-index-gsc-row{align-items:stretch}.seo-index-gsc-row .btn,.seo-index-push-form,.seo-index-gsc-row form{width:100%;margin-left:0}.seo-index-gsc-row .btn{justify-content:center}}
.statusband{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0}
.sb-item{display:flex;flex-direction:column;gap:3px;padding:14px 18px;text-decoration:none;border-left:1px solid var(--line-2)}
.sb-item:first-child{border-left:0}
.sb-item .sb-num{font-family:var(--font-display,inherit);font-weight:600;font-size:22px;letter-spacing:0;color:var(--text)}
.sb-item .sb-num.is-ok{color:var(--ok)}
.sb-item .sb-num.is-warn{color:var(--warn)}
.sb-item .sb-num.is-error{color:var(--err)}
.sb-item .sb-num.is-accent{color:var(--acc)}
.sb-item .sb-lbl{font-size:12px;color:var(--text-3)}
.sb-item:hover .sb-lbl{color:var(--text-2)}
.dcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px;margin-bottom:8px}
.dcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);display:flex;flex-direction:column;margin:0}
.dcard.is-accent{border-color:var(--acc-line)}
.dcard .dc-h{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}
.dcard .dc-h .ic{width:34px;height:34px;border-radius:var(--radius);background:var(--acc-dim);color:var(--acc);display:grid;place-items:center;flex:none}
.dcard .dc-h .ic svg{width:17px;height:17px}
.dcard .dc-h h2{font-size:14px;font-weight:600;letter-spacing:0;color:var(--text)}
.dcard .dc-h h2.has-pill{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dcard .dc-h small{display:block;font-size:11.5px;color:var(--text-3);font-weight:400;margin-top:1px;line-height:1.45}
.dcard .dc-kpi{display:flex;gap:22px;padding:12px 18px 4px;flex-wrap:wrap}
.dcard .dc-kpi b{display:block;font-size:21px;font-weight:600;letter-spacing:0;color:var(--text);line-height:1.1}
.dcard .dc-kpi b.is-error{color:var(--err)}
.dcard .dc-kpi span{font-size:11.5px;color:var(--text-3)}
.dcard .dc-links{margin-top:auto;padding:8px 18px 14px}
.dcard .dc-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;border-top:1px solid var(--line-2);text-decoration:none;color:var(--text-2);font-size:13px}
.dcard .dc-links a:first-child{border-top:0}
.dcard .dc-links a:hover{color:var(--acc)}
.dcard .dc-links a svg{width:13px;height:13px;color:var(--text-3);flex:none}
.dcard .dc-links a:hover svg{color:var(--acc)}
.dc-open{padding:4px 18px 0}
.dc-open .btn{width:100%;justify-content:center}
.dc-offline-list{padding:4px 18px 0;display:flex;gap:6px;flex-wrap:wrap}
.admin-alert-card{margin-bottom:14px;padding:0}
.admin-alert-card.is-error{background:color-mix(in srgb,var(--err) 7%,transparent);border-color:color-mix(in srgb,var(--err) 30%,transparent)}
.admin-alert-card.is-warn{background:color-mix(in srgb,var(--warn) 7%,transparent);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}
.admin-alert-head{padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--line-2)}
.admin-alert-main{display:flex;align-items:center;gap:10px;flex:1;min-width:200px}
.admin-alert-main svg{flex:none}
.admin-alert-title{font-size:14px;color:var(--text)}
.admin-alert-meta{font-size:12px;color:var(--text-3);margin-top:1px;display:flex;gap:8px;flex-wrap:wrap}
.admin-alert-meta .is-error{color:var(--err);font-weight:600}
.admin-alert-meta .is-warn{color:var(--warn);font-weight:600}
.admin-alert-list{padding:6px 18px 12px}
.admin-alert-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line-2);font-size:13px}
.admin-alert-row svg{flex:none}
.admin-alert-row-title{flex:1;color:var(--text-2)}
.admin-alert-time{color:var(--text-3);white-space:nowrap}
.admin-section-title{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin:26px 0 12px}
.admin-chip-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.admin-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 7px;border-radius:999px;font-weight:600;background:var(--line-2);color:var(--text-3)}
.admin-chip::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.9}
.admin-chip.is-typo3{background:color-mix(in srgb,var(--app-typo3) 12%,transparent);color:var(--app-typo3)}
.admin-chip.is-wordpress{background:color-mix(in srgb,var(--app-wordpress) 12%,transparent);color:var(--app-wordpress)}
.admin-chip.is-nextcloud{background:color-mix(in srgb,var(--app-nextcloud) 12%,transparent);color:var(--app-nextcloud)}
.admin-chip.is-laravel{background:color-mix(in srgb,var(--app-laravel) 12%,transparent);color:var(--app-laravel)}
.admin-chip.is-git{background:color-mix(in srgb,var(--app-git) 12%,transparent);color:var(--app-git)}
.admin-chart-body{padding:18px 22px}
.admin-chart-list{display:grid;gap:14px}
.admin-chart-row{display:grid;gap:6px}
.admin-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}
.admin-chart-head b{font-weight:600;color:var(--text)}
.admin-chart-value{font-family:var(--font-mono);font-size:12.5px;color:var(--text-2)}
.admin-chart-value b{font-size:14px;color:var(--text)}
.admin-chart-value.is-accent b{color:var(--acc)}
.admin-meter{width:100%;height:9px;display:block}
.admin-meter::-webkit-meter-bar{background:var(--line-2);border:0;border-radius:999px}
.admin-meter::-webkit-meter-optimum-value{background:var(--acc);border-radius:999px}
.admin-meter::-moz-meter-bar{background:var(--acc);border-radius:999px}
.admin-growth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:12px;padding:18px 22px}
.admin-growth-item{display:grid;gap:6px;align-content:end;text-align:center}
.admin-growth-count{font-family:var(--font-mono);font-size:12.5px;color:var(--text)}
.admin-growth-count.is-muted{color:var(--text-3)}
.admin-growth-label{font-size:11px;color:var(--text-3)}
.admin-details{margin-bottom:14px}
.admin-details-summary{padding:12px 18px;cursor:pointer;font-weight:600;font-size:14px}
.admin-panel-form{padding:0 18px 16px;display:grid;gap:10px}
.admin-form-row{display:flex;gap:10px;flex-wrap:wrap}
.admin-form-row .inp{min-width:0}
.admin-field-flex{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--text-3);font-weight:600}
.admin-field-flex.is-sm{flex:1 1 150px}
.admin-field-flex.is-md{flex:2 1 240px}
.admin-field-flex.is-lg{flex:2 1 220px}
.admin-checkbox-row{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-2)}
.admin-btn-start{justify-self:start}
.admin-table-compact{font-size:12.5px}
.admin-cell-center{text-align:center}
.admin-cell-right{text-align:right;white-space:nowrap}
.admin-number-input{width:74px;display:inline-block;text-align:right}
.admin-details-count{color:var(--text-3);font-weight:400}
.admin-divider-form{display:grid;gap:8px;border-top:1px solid var(--line-2);padding-top:12px}
.admin-filterbar{padding:10px 14px;margin-bottom:14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.admin-filter-count{opacity:.7;margin-left:4px}
.alert-row.is-error td{background:color-mix(in srgb,var(--err) 5%,transparent)}
.alert-row.is-warn td{background:color-mix(in srgb,var(--warn) 5%,transparent)}
.alert-col-status{width:32px}
.alert-col-type{width:110px}
.alert-col-time{width:140px}
.alert-col-action{width:200px}
.alert-title{color:var(--text)}
.alert-title-link{font-weight:750;text-decoration:none}
.alert-title-link:hover{color:var(--acc)}
.alert-title.is-muted{color:var(--text-3)}
.alert-copy{color:var(--text-3);line-height:1.4}
.alert-source{color:var(--text-3);font-family:var(--font-mono);font-size:11px}
.alert-icon{stroke:currentColor}
.alert-icon.is-error{color:var(--err)}
.alert-icon.is-warn{color:var(--warn)}
.alert-icon.is-info{color:var(--acc)}
.alert-closed{color:var(--ok);display:inline-flex;align-items:center;gap:4px}
.alert-empty{text-align:center;padding:32px;color:var(--text-3)}
.alert-empty svg{margin-bottom:8px;opacity:.5}
@media(max-width:560px){.monitoring-title-stat{text-align:left}.monitoring-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:700px){
  .subnav{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:5px;padding:7px 12px;scroll-padding:12px}
  .subnav a{min-height:30px;font-size:11px;padding:4px 9px}
  .subnav-label{display:none}
  .hrow{align-items:stretch;flex-direction:column;gap:14px}
  .hrow .newbtn,.hrow .btn{width:100%}
  .hc-art{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;align-items:start;padding:13px 14px}
  .hc-art .hc-t{min-width:0}
  .hc-art .pill{justify-self:start}
  .hc-art .hc-actions{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;white-space:normal;width:100%}
  .hc-art .hc-actions .btn,.hc-art .hc-actions form{width:100%}
  .hc-art .hc-actions .btn{justify-content:center}
  .hc-art .hc-actions a:first-child{grid-column:1 / -1}
  .hc-art.is-category{grid-template-columns:auto minmax(0,1fr)}
  .admin-help-category-form{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px;width:100%}
  .admin-help-category-form .admin-help-count{grid-column:1 / 2;align-self:center}
  .admin-help-category-form .btn{grid-column:2 / 3;width:100%;justify-content:center}
  .admin-help-delete-form{grid-column:1 / -1;width:100%}
  .admin-help-delete-form .btn{width:100%;justify-content:center}
  .admin-help-create-form{display:grid;grid-template-columns:1fr;gap:8px;padding:14px}
  .admin-help-create-form .btn{width:100%;justify-content:center}
  .admin-help-edit-category{grid-template-columns:1fr}
  .admin-help-edit-or{white-space:normal}
  .admin-help-attachment{grid-template-columns:auto minmax(0,1fr) auto}
  .admin-help-attachment-size{grid-column:2 / 3}
  .admin-help-edit-actions{display:grid;grid-template-columns:1fr}
  .admin-help-edit-actions .btn{width:100%;justify-content:center}
  .admin-monitor-provision-form{display:grid;grid-template-columns:1fr;gap:10px;padding:14px}
  .admin-monitor-customer-input,.admin-monitor-domain-input{width:100%}
  .admin-monitor-or{padding:0}
  .admin-monitor-domain-option{align-items:flex-start}
  .admin-monitor-domain-option .pill{margin-left:auto}
  .admin-monitor-group-head{grid-template-columns:1fr;padding:15px 14px}
  .admin-monitor-group-status{justify-items:start;text-align:left}
  .admin-monitor-group-meta{padding:13px 14px;gap:14px}
  .admin-monitor-check-row,.admin-monitor-check-list.has-actions .admin-monitor-check-row{grid-template-columns:1fr;gap:10px;padding:13px 14px}
  .admin-monitor-check-title{align-items:flex-start;flex-wrap:wrap}
  .admin-monitor-check-title b{white-space:normal}
  .admin-monitor-check-status,.admin-monitor-check-actions{justify-content:flex-start;justify-items:start}
  .admin-monitor-check-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-monitor-check-bars{max-width:100%}
  .admin-team-head{margin-bottom:18px}
  .admin-team-card .card-h{display:grid;grid-template-columns:1fr;align-items:flex-start;gap:10px;padding:14px}
  .admin-team-card .card-h .right{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .admin-team-card .card-h .right .pill{justify-self:start;align-self:center}
  .admin-team-new-btn{grid-column:auto;width:100%;justify-content:center;min-height:36px}
  .admin-team-new-panel{padding:14px}
  .admin-team-form-grid{grid-template-columns:1fr}
  .admin-team-form-actions .btn{flex:1 1 130px;justify-content:center}
  .admin-team-radio-row{display:grid;gap:10px}
  .tbl-cards > tbody > tr > td.admin-team-person-cell{align-items:flex-start;flex-direction:column;text-align:left;gap:6px}
  .admin-team-person{width:100%}
  .admin-team-meta{display:grid;gap:2px;width:100%}
  .admin-team-action-cell{width:100%}
  .admin-team-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-team-actions .btn{width:100%;justify-content:center}
  .admin-role-form-grid{grid-template-columns:1fr}
  .admin-role-form-grid .btn{width:100%;justify-content:center}
  .admin-role-action-cell{width:100%}
  .admin-role-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-role-actions .btn{width:100%;justify-content:center}
  .admin-role-createbar{display:grid;grid-template-columns:1fr}
  .admin-role-createbar .btn{width:100%;justify-content:center}
  .admin-server-grid{grid-template-columns:1fr}
  .admin-server-monitor-body .btn{width:100%;justify-content:center}
  .admin-php-input{width:100%;max-width:150px}
  .admin-php-input.is-wide{max-width:240px}
  .admin-php-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-php-actions .btn{width:100%;justify-content:center}
  .admin-subapps-summary{justify-content:flex-start}
  .admin-subapp-actions{width:100%;justify-content:flex-start}
  .admin-subapp-actions .btn{width:100%;justify-content:center}
  .admin-subapp-action-row .btn,.admin-subapp-ip-form-row .btn{width:100%;justify-content:center}
  .admin-subapp-ip-form,.admin-subapp-ip-input{width:100%}
  .admin-kpi-grid{grid-template-columns:1fr 1fr}
  .admin-jobs-kpi-grid{grid-template-columns:1fr}
  .admin-jobs-kpi{padding:13px 14px}
  .admin-jobs-table .admin-jobs-error{max-width:none}
  .admin-form-grid.is-two,.admin-form-grid.is-address,.admin-form-grid.is-controls{grid-template-columns:1fr}
  .admin-form-action,.admin-form-inline .btn,.admin-border-top-form .btn{width:100%;justify-content:center}
  .admin-form-inline{align-items:stretch}
  .admin-detail-actions,.admin-border-top-form{display:grid;grid-template-columns:1fr;align-items:stretch}
  .admin-detail-actions .btn,.admin-border-top-form .btn{width:100%;justify-content:center}
  .bestellung-createbar{display:grid;grid-template-columns:1fr}
  .bestellung-createbar .btn{width:100%;justify-content:center}
  .admin-order-row{grid-template-columns:1fr;gap:10px;padding:14px}
  .admin-order-risk,.admin-order-date{text-align:left}
  .admin-order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}
  .admin-order-actions form,.admin-order-actions .btn,.admin-order-actions .pill{width:100%;justify-content:center}
  .kunden-new-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
  .kunden-new-actions .btn{width:100%;justify-content:center}
  .manea-search-body{display:grid;grid-template-columns:1fr}
  .manea-search-body .btn{width:100%;justify-content:center}
  .manea-create-grid{grid-template-columns:1fr}
  .manea-create-grid .btn{width:100%;justify-content:center}
  .manea-workflow-grid{grid-template-columns:1fr}
  .manea-provision-row{grid-template-columns:1fr}
  .manea-provision-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}
  .manea-provision-actions form,.manea-provision-actions .btn{width:100%;justify-content:center}
  .manea-actions{width:100%;display:grid;grid-template-columns:1fr}
  .manea-actions .btn{width:100%;justify-content:center}
  .manea-next-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}
  .manea-next-actions form,.manea-next-actions .btn{width:100%;justify-content:center}
  .manea-account-table .manea-group-row td{display:block}
  .manea-account-table .manea-group-row td::before{display:none}
  .tbl-cards > tbody > tr > td.kunden-role-cell,.tbl-cards > tbody > tr > td.kunden-mapping-cell{grid-template-columns:1fr}
  .tbl-cards > tbody > tr > td.kunden-role-cell::before,.tbl-cards > tbody > tr > td.kunden-mapping-cell::before{padding-top:0}
  .kunden-role-cell .pill{justify-self:start}
  .kunden-role-form,.kunden-mapping-form{width:100%;grid-template-columns:minmax(0,1fr) auto}
  .kunden-mapping-form .btn{min-width:104px}
  .kunden-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .kunden-actions .btn{width:100%;justify-content:center}
  .admin-select-action{width:100%}
  .admin-select-action select.inp{flex:1;min-width:0}
}
@media(max-width:380px){
  .kunden-role-form,.kunden-mapping-form{grid-template-columns:1fr}
  .kunden-role-form .btn,.kunden-mapping-form .btn{width:100%;justify-content:center}
  .kunden-role-save{width:100%}
}
/* Sparkline/Balken-Chart (Höhen-% kommen als erlaubte Inline-Styles aus _bars) */
.bars{display:flex;align-items:flex-end;gap:3px;height:44px}
.bars i{flex:1;background:var(--acc-line);border-radius:2px 2px 0 0;min-height:3px}
.bars i.hl{background:var(--acc)}
.bars i.dn{background:var(--err)}
.bars i.na{background:var(--line)}
.bars.sm{height:20px;gap:2px;width:110px;flex:none}
.bars.lg{height:120px;gap:2px}
.mon-axis{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);margin-top:6px}
/* Kopf/Zeilen */
.mon-h1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mon-type-tag{min-width:0;padding:2px 7px;font-size:10px;vertical-align:1px}
.mon-check-sub{display:block;font-size:11px;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mon-until{display:block;font-size:10.5px;margin-top:2px}
.mon-note{font-size:13px}
.mon-empty b{display:block;color:var(--text);font-size:14px}
.mon-empty p{font-size:12.5px;margin-top:6px}
/* Flash-Karten (ok/err) . Klassen statt Inline-Styles */
.mon-flash{margin-bottom:14px}
.mon-flash .fm{padding:12px 18px;font-weight:600;display:flex;align-items:center;gap:8px}
.mon-flash .fm svg{width:16px;height:16px;flex:none}
.mon-flash.ok{border-color:color-mix(in srgb,var(--ok) 45%,transparent)}
.mon-flash.ok .fm{color:var(--ok)}
.mon-flash.err{border-color:color-mix(in srgb,var(--err) 45%,transparent)}
.mon-flash.err .fm{color:var(--err)}
/* Pause-Dialog (details/.plan-quick mit nativem Select .inp) */
.mon-pause-menu{text-align:left}
.mon-pause-menu form{display:flex;flex-direction:column;gap:8px;margin:0}
.mon-pause-label{font-size:12.5px;font-weight:600;color:var(--text)}
.mon-pause-hint{font-size:11px;color:var(--text-3);line-height:1.5}
/* Letzte Fehl-Läufe (Roh-Detail-Texte) */
.mon-fails{display:flex;flex-direction:column}
.mon-fail{display:flex;gap:12px;align-items:flex-start;padding:10px 18px;border-top:1px solid var(--line-2);font-size:12.5px}
.mon-fail:first-child{border-top:0}
.mon-fail-time{flex:none;color:var(--text-3);font-size:11.5px;padding-top:1px}
.mon-fail-detail{color:var(--text-2);font-family:var(--font-mono);font-size:12px;word-break:break-word;line-height:1.5}
/* kleine Utilities des Monitoring-Blocks */
.u-ta-r{text-align:right}
.u-form-inline{display:inline;margin:0}
/* ---------- Domain-Portal: Schnellleiste + Wizard-Panes (2026-06-20) ---------- */
.dom-launch{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
@media(max-width:720px){.dom-launch{display:grid;grid-template-columns:1fr 1fr}}
.dom-wpane[hidden]{display:none}
/* ---------- Modale Dialoge (P1d/P2a, 2026-06-13) ----------
   <dialog class="card">: .card-Margins kippen das margin:auto des UA-Stylesheets
   (Dialog klebte am unteren Rand . Sven-Review). Zentrierung erzwingen + Backdrop. */
dialog.card{margin:auto;max-height:88vh;overflow:auto}
dialog.card::backdrop{background:rgba(8,10,14,.55)}

@media(max-width:700px){
  .admin-ticket-list-head{gap:12px}
  .admin-ticket-list-actionsbar{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:stretch}
  .hrow .admin-ticket-list-actionsbar .btn{width:auto}
  .admin-ticket-settings-btn{width:44px;min-width:44px;min-height:38px;padding:0}
  .admin-ticket-settings-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .admin-ticket-create-btn{width:100%;min-width:0;min-height:38px}
  .admin-ticket-filter-row{padding:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .tkt-filter{min-height:38px;padding:7px 8px}
}

/* Stack detail layout */
.stack-detail-shell{padding-top:28px;padding-bottom:0}
.stack-detail-content{padding-top:8px}
.project-crumb{margin-bottom:18px}
.stack-detail-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:18px;
  margin-bottom:18px;
}
.stack-detail-main{
  min-width:0;
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.stack-detail-title{min-width:0}
.stack-detail-titleline{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}
.stack-detail-titleline h1{
  min-width:0;
  max-width:100%;
  display:flex;
  align-items:center;
  gap:9px;
  font-size:24px;
  line-height:1.16;
}
.stack-detail-pill{min-height:26px}
.stack-detail-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.stack-detail-note{margin:10px 0 0}
.note-error{border-color:var(--err)}
.note-error svg{stroke:var(--err)}
body.has-side-nav .stack-detail-tabs,
.stack-detail-tabs{
  position:static;
  top:auto;
  z-index:auto;
  margin:18px 0 0;
  padding:0 0 12px;
  border-bottom:1px solid var(--line);
  background:transparent;
  scroll-padding:0;
}
.stack-detail-tabs a{min-height:30px}
.change-request-dialog{
  max-width:480px;
  width:92%;
  padding:0;
  border:1px solid var(--line-2);
}
.change-request-form{
  padding:14px 18px;
  display:grid;
  gap:10px;
}
.change-request-field{
  display:grid;
  gap:5px;
  font-size:12.5px;
  color:var(--text-2);
}
.change-request-hint{
  font-size:11.5px;
  color:var(--text-3);
  line-height:1.5;
}
.change-request-actions{
  display:flex;
  gap:8px;
  justify-content:flex-end;
}
.project-settings-card{overflow:hidden}
.project-setting-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,420px);
  gap:18px;
  align-items:center;
}
.project-setting-row .fl span{max-width:700px;line-height:1.5}
.project-setting-control,
.project-setting-actions{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.project-setting-control .project-setting-input,
.project-setting-actions .project-setting-input{
  width:100%;
  max-width:320px;
  flex:1 1 220px;
}
.project-setting-confirm .project-setting-input{max-width:240px}
.project-setting-actions .pill{flex:none}
.project-setting-actions .btn,
.project-setting-control .btn{min-height:30px}
.project-setting-single-action{margin:0}
.project-setting-footer{
  display:flex;
  justify-content:flex-end;
  padding:0 18px 14px;
}
.project-inline-note{margin:14px 18px 0}
.project-inline-note.is-compact{margin:0 18px}
.project-card-note{
  padding:12px 18px;
  border-top:1px solid var(--line-2);
  font-size:12.5px;
  color:var(--text-3);
  line-height:1.6;
}
.project-card-link{font-weight:600}
.project-danger-card{margin-top:20px}
.app-release-value{
  font-size:11.5px;
  overflow-wrap:anywhere;
}
.app-status-ok{color:var(--ok)}
.app-status-err{color:var(--err)}
.qa-form{margin:0}
.project-card-meta{
  font-size:12px;
  color:var(--text-3);
  margin-bottom:8px;
}
.env-key-list{
  display:flex;
  gap:5px;
  flex-wrap:wrap;
}
.env-key-pill{font-size:11px}

@media(max-width:900px){
  .stack-detail-head{grid-template-columns:1fr;gap:14px}
  .stack-detail-actions{justify-content:flex-start}
  .stack-detail-actions .btn{flex:1 1 180px}
  .project-setting-row{grid-template-columns:1fr;gap:10px}
  .project-setting-control,
  .project-setting-actions{justify-content:flex-start}
  .project-setting-control .project-setting-input,
  .project-setting-actions .project-setting-input,
  .project-setting-confirm .project-setting-input{max-width:none}
  .project-setting-footer{justify-content:stretch}
  .project-setting-footer .btn{width:100%}
}

@media(max-width:560px){
  .stack-detail-shell{padding-top:22px}
  .stack-detail-main{grid-template-columns:42px minmax(0,1fr);gap:12px}
  .stack-detail-titleline h1{font-size:22px}
  .stack-detail-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .stack-detail-actions .btn,
  .project-setting-actions .btn,
  .project-setting-control .btn,
  .change-request-actions .btn{width:100%;justify-content:center}
  .project-setting-actions,
  .project-setting-control,
  .project-setting-confirm{display:grid;grid-template-columns:1fr;align-items:stretch}
  .project-setting-actions .pill{justify-self:start}
  .change-request-actions{display:grid;grid-template-columns:1fr;gap:8px}
}

/* ===== 8. Panel Typography Pass =====
   UI stays sans. Mono is reserved for real technical values, logs, code and secrets. */
:root{
  --font-ui:var(--font-sans);
  --font-data:var(--font-mono);
}
.panel-url,
.brand .sub,
.workspace-switcher .workspace-label,
.upg,
.tb-link,
.gnav a,
.gnav .badge,
.subnav a,
.subnav-label,
body.has-side-nav .nav-title,
.impbar-btn,
.foot .in,
.seg button,
.seg a,
.auth-kicker,
.auth-panel .field label,
.legal,
.authfoot,
.auth-legal,
.legal-status,
.page-kicker,
.cmdline,
.hsub,
.newbtn,
.lbl,
.crumb,
.sectit h2,
.cnt,
.readout,
.ro .v small,
.stack-group-h,
.stack-spec,
.stack-spec .lbl,
.act,
.stack.add span,
.adminbadge,
.open-site,
.check .fix,
.logtab-count,
.chip,
.logfilter-count,
.hint,
.btn,
.pill,
.state-off,
.st,
.qa-select,
.admin-ticket-section-label,
.dom-actions-summary,
.fb-crumb,
.fb-item,
.pkg-badge-pop,
.creator-crumb,
.step .n,
.dhelp-label,
.dhelp-chip,
.password-toggle,
.addon-ctrl label,
.price,
.rowact,
.bigsearch,
.bigsearch input,
.mail-archive-badge,
.dnsrow-tag,
.tbl th,
.hc-cat .card-h .cnt{
  font-family:var(--font-ui);
  letter-spacing:0;
}
.page-kicker,
.auth-kicker,
.auth-panel .field label,
.legal-status,
.lbl,
.sectit h2,
.stack-group-h,
.tbl th,
.dnsrow-codelabel,
.dhelp-label,
.admin-ticket-section-label,
.ticket-auto-fields h4,
body.has-side-nav .nav-title{
  text-transform:none;
  letter-spacing:0;
}
h1 .mono{
  font-family:inherit;
  color:inherit;
  font-weight:inherit;
}
.page-kicker{
  font-size:12px;
  line-height:1.2;
  color:var(--text-3);
  margin-bottom:12px;
}
.cmdline{
  font-size:12px;
  color:var(--text-3);
  margin-bottom:12px;
}
.cmdline .p,
.cmdline .c,
.cmdline .greet{color:inherit}
.cmdline .caret{display:none}
.hsub{
  font-size:13.5px;
  line-height:1.55;
  color:var(--text-2);
}
.newbtn,
.btn{
  font-size:13px;
  font-weight:650;
}
.btn-sm{font-size:12px}
.nav-title{
  font-weight:650;
}
.stack-group-h{
  font-size:13px;
  font-weight:650;
}
.stack-ic,
.stack-head .sh-ic,
.choice .ic .ic-text{
  font-family:var(--font-ui);
}
.stack-id .dom,
.stack-head .dom{
  font-family:var(--font-ui);
  font-size:12.5px;
}
.stack-spec{
  font-size:12.5px;
  color:var(--text-2);
}
.stack-spec .lbl{
  font-size:12px;
  color:var(--text-3);
  font-weight:550;
}
.act{
  font-size:12px;
  min-height:50px;
  font-weight:600;
}
.readout{font-size:13px}
.ro .k{
  text-transform:none;
  letter-spacing:0;
  font-size:12px;
}
.foot .in{font-size:12.5px}
.tbl th{
  font-size:12px;
  font-weight:650;
}
.pill{font-size:11.5px}
.hint{font-size:12px}
.bigsearch .bs-prompt{display:none}
.bigsearch input{font-size:14px}
.mono,
code,
pre,
kbd,
.logbox,
.ll,
.db-conn-value,
.ig-val,
.kv .v,
.mail-cfg-val,
.newmail-domain,
.maildns-rec-type,
.maildns-rec-val,
.dnsrow-code code,
.fb-selected code,
.ticket-settings-codearea,
.tkt-comment-system,
.inp-mono,
.secret{
  font-family:var(--font-data);
}

/* ===== 9. Panel Typography Detox R2 =====
   Normal product UI must feel like an app, not like a terminal. */
.panel-url,
.brand .sub,
.workspace-switcher .workspace-label,
.command-search kbd,
.nbadge,
.av,
.upg,
.tb-link,
.gnav a,
.gnav .badge,
.subnav a,
.subnav-label,
body.has-side-nav .nav-title,
.impbar,
.impbar-inner,
.impbar-btn,
.auth-kicker,
.auth-panel .field label,
.legal,
.authfoot,
.auth-legal,
.legal-status,
.page-kicker,
.cmdline,
.hsub,
.newbtn,
.lbl,
.crumb,
.sectit h2,
.cnt,
.readout,
.ro .k,
.ro .v small,
.stack-group-h,
.stack-group-h .cnt,
.stack-spec,
.stack-spec .lbl,
.act,
.stack.add span,
.adminbadge,
.open-site,
.check .fix,
.logtab-count,
.chip,
.logfilter-count,
.hint,
.btn,
.pill,
.state-off,
.st,
.qa-select,
.admin-ticket-section-label,
.dom-actions-summary,
.pkg-badge-pop,
.creator-crumb,
.step .n,
.dhelp-label,
.dhelp-chip,
.password-toggle,
.addon-ctrl label,
.price,
.rowact,
.mail-archive-badge,
.dnsrow-tag,
.tbl th,
.hc-cat .card-h .cnt,
.admin-section-title,
.admin-kpi-label,
.admin-chart-value,
.admin-growth-count,
.alert-source,
.mon-axis,
.admin-team-permission-state,
.admin-subapp-section-title,
.contract-facts dt,
.contract-summary-list dt,
.admin-contract-cancel-summary dt,
.archive-management-stat span{
  font-family:var(--font-ui);
  letter-spacing:0;
}
.workspace-switcher .workspace-label,
.subnav-label,
body.has-side-nav .nav-title,
.auth-kicker,
.auth-panel .field label,
.legal-status,
.page-kicker,
.lbl,
.sectit h2,
.stack-group-h,
.tbl th,
.dnsrow-codelabel,
.dhelp-label,
.admin-ticket-section-label,
.ticket-auto-fields h4,
.admin-section-title,
.admin-kpi-label,
.admin-subapp-section-title,
.contract-facts dt,
.contract-summary-list dt,
.admin-contract-cancel-summary dt,
.archive-management-stat span{
  text-transform:none;
  letter-spacing:0;
}
.panel-url,
.brand .sub{
  font-size:12px;
  font-weight:500;
}
.workspace-switcher .workspace-label{
  font-size:10.5px;
  font-weight:650;
}
.command-search kbd{
  font-size:11px;
  font-weight:650;
  padding:3px 6px;
}
.av{
  font-size:12px;
  font-weight:650;
  border-radius:var(--radius);
}
.upg,
.tb-link,
.impbar-btn{
  font-size:13px;
  font-weight:650;
}
.gnav a{
  font-weight:600;
  letter-spacing:0;
}
.subnav a{
  font-size:13px;
  font-weight:650;
}
.subnav-label{
  font-size:11px;
  font-weight:650;
}
.hsub > .ok:first-child,
.hsub > .warn:first-child,
.hsub > .err:first-child{
  display:none;
}
.cmdline{
  display:none;
}
.kpi .l,
.sb-lbl,
.dc-kpi span,
.admin-muted,
.u-meta{
  font-family:var(--font-ui);
  letter-spacing:0;
}
.pill:not(.mono),
.btn,
.newbtn{
  letter-spacing:0;
}
.mono,
code,
pre,
kbd,
.logbox,
.ll,
.db-conn-value,
.ig-val,
.kv .v,
.mail-cfg-val,
.newmail-domain,
.maildns-rec-type,
.maildns-rec-val,
.dnsrow-code code,
.fb-selected code,
.ticket-settings-codearea,
.tkt-comment-system,
.inp-mono,
.secret,
.fm-crumb,
.fm-lang,
.fm-octal,
.CodeMirror,
.CodeMirror-dialog input,
.CodeMirror-hints{
  font-family:var(--font-data);
}

/* UI values that were historically marked as .mono but should read like product UI. */
.ig-val,
.kv .v,
h2.mono,
.mail-domain-title,
.card-h h2 .mono.muted,
.card-h h2 .seo-index-state,
.admin-filter-count,
.admin-order-risk-value,
.admin-subapp-domain,
.external-archive-server,
.admin-ticket-number,
.admin-ticket-table-number,
.ticket-meta-id,
.kunden-login-link,
.app-release-value,
td.mono[data-label="Nr"],
td.mono[data-label="Nr."],
td.mono[data-label="Priorität"],
td.mono[data-label="Aktualisiert"],
td.mono[data-label="Version"],
td.mono[data-label="Größe"],
td.mono[data-label="Im Einsatz"],
td.mono[data-label="Gehört zu"],
td.mono[data-label="Domain"],
td.mono[data-label="Adresse"],
td.mono[data-label="Mail"],
td.mono[data-label="Login"],
td.mono[data-label="Kunde"],
td.mono[data-label="Eingegangen"],
td.mono[data-label="Beginn"],
td.mono[data-label="Ende"],
td.mono[data-label="Dauer"],
td.mono[data-label="Zeit"],
td.mono[data-label="Erstellt"],
td.mono[data-label="Registriert"],
td.mono[data-label="Ziel"],
td.mono[data-label="Warteschlange"],
td.mono[data-label="Queue"],
td.mono[data-label="Ref"],
.mono.u-accent,
a.mono.u-accent,
.dom.mono,
.mail-archive-address,
.admin-ticket-muted,
.admin-ticket-reporter-mail,
.admin-role-code,
.admin-filter-count,
.admin-growth-count,
.admin-chart-value,
.mon-check-sub,
.mon-fail-time,
.seo-index-state,
.seo-metric-note,
.tkt-att-scanner{
  font-family:var(--font-ui);
  letter-spacing:0;
}
.ig-val code,
.ig-val .mono,
.kv .v code,
.kv .v .mono{
  font-family:var(--font-data);
}
.ticket-meta-id{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:2px 8px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface-2);
  color:var(--text-2);
  font-size:12px;
  font-weight:650;
}

/* Stack creation page: keep the wizard in the same content column as the rest of the panel. */
@media (min-width:961px){
  body.has-side-nav .creator{
    --creator-gutter:clamp(32px,2.4vw,44px);
    width:min(1180px,calc(100vw - var(--side-w) - var(--creator-gutter) - var(--creator-gutter)));
    max-width:none;
    margin-left:calc(var(--side-w) + var(--creator-gutter));
    margin-right:var(--creator-gutter);
    padding-left:0;
    padding-right:0;
  }
}
.creator .choices{
  align-items:stretch;
}
.creator .choice{
  min-height:78px;
  padding:13px 14px;
}
.creator .choice > div:last-child{
  min-width:0;
}
.creator .choice p{
  line-height:1.35;
}
.creator .lead .mono{
  font-family:var(--font-ui);
}
@media (max-width:960px){
  body.has-side-nav .creator{
    width:auto;
    margin:0;
    padding:24px 16px 112px;
  }
  .creator .choice{
    min-height:72px;
  }
}

/* ===== 10. Panel Typography Detox R3 =====
   Legacy .mono is no longer allowed to make normal UI feel like a terminal.
   Mono remains only for raw technical values, code, logs, DNS, passwords and editors. */
:root{
  --font-data:var(--font-ui);
}
code,
pre,
kbd,
.logbox,
.ll,
.secret,
.CodeMirror,
.CodeMirror-dialog input,
.CodeMirror-hints,
.ticket-settings-codearea,
.seo-index-json,
.maildns-rec-val,
.dnsrow-code code,
.dnsrow-codelabel,
.pwmodal-pwbox code,
.pwmodal-input,
.inp-mono,
.fm-crumb,
.fm-octal,
.fm-lang,
.fb-selected code,
.db-conn-foot code,
.article-body code,
.article-body pre,
.welcome-value code,
.welcome-value a,
.mon-fail-detail,
.filepicker-item-size,
.mail-archive-price-input,
.mail-archive-unit,
.mail-archive-mono-input,
.mail-archive-search input{
  font-family:var(--font-mono);
}
.mono,
.tbl .mono,
.panel-url,
.brand .sub,
.workspace-switcher .workspace-label,
.upg,
.tb-link,
.gnav a,
.subnav a,
.page-kicker,
.hsub,
.crumb,
.readout,
.stack-group-h,
.stack-spec,
.stack-id .dom,
.stack-head .dom,
.act,
.btn,
.pill,
.hint,
.price,
.state-off,
.st,
.qa-select,
.dom-actions-summary,
.archive-management-stat span,
.contract-facts dt,
.contract-summary-list dt,
.admin-contract-cancel-summary dt,
.admin-chart-value,
.admin-growth-count,
.alert-source,
.mon-axis,
.mon-stat .k,
.mon-stat .v.sm,
.mon-stat .v small{
  font-family:var(--font-ui);
  letter-spacing:0;
}
.page-kicker,
.hsub,
.crumb,
.readout,
.stack-group-h,
.stack-spec,
.tbl th,
.pill,
.btn,
.subnav a,
.gnav a{
  font-variant-ligatures:normal;
}
.tbl th,
.stack-group-h,
.archive-management-stat span,
.contract-facts dt,
.contract-summary-list dt,
.admin-contract-cancel-summary dt,
.mon-stat .k{
  text-transform:none;
  letter-spacing:0;
}
.btn,
.newbtn,
.dom-actions-summary,
.act{
  font-size:13px;
  font-weight:650;
}
.btn-sm{
  font-size:12.5px;
}
.pill{
  font-size:12px;
  font-weight:600;
}
.stack-spec,
.stack-spec .lbl{
  font-size:12.5px;
  line-height:1.35;
}
.stack-actions .act,
.act{
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
}
code.mono,
pre.mono,
kbd.mono,
.secret.mono,
.pwmodal-pwbox .mono,
.maildns-rec-val.mono,
.dnsrow-code .mono,
.fm-crumb .mono,
.CodeMirror .mono{
  font-family:var(--font-mono);
}

/* ===== 11. Product Price Admin Cleanup ===== */
.product-price-subtitle,
.product-price-note,
.product-price-row-subtitle,
.product-price-scope{
  color:var(--ink3);
}
.product-price-subtitle{
  font-size:12px;
}
.product-price-flash{
  margin:0 18px 4px;
  padding:9px 12px;
  border-radius:var(--radius);
  background:var(--acc-dim);
  color:var(--text);
  font-size:12.5px;
}
.product-price-form{
  padding:8px 18px 16px;
}
.product-price-note{
  margin:0 0 12px;
  font-size:12px;
  line-height:1.55;
}
.product-price-table{
  max-width:620px;
  font-size:13px;
}
.product-price-row-subtitle{
  display:block;
  margin-top:2px;
}
.product-price-input{
  width:110px;
  padding:5px 7px;
  font-family:var(--font-ui);
}
.product-price-input.is-small{
  width:90px;
}
.product-price-range{
  display:flex;
  gap:8px;
  align-items:center;
}
.product-price-range span{
  color:var(--ink3);
}
.product-price-actions{
  margin-top:14px;
}
.product-price-scope-card{
  margin-top:16px;
  background:var(--surface-2);
}
.product-price-scope{
  padding:14px 18px;
  font-size:12.5px;
  line-height:1.6;
}
.product-price-scope > b{
  display:block;
  margin-bottom:4px;
  color:var(--ink2);
}
.product-price-scope p{
  margin:0;
}
.product-price-scope p + p{
  margin-top:4px;
}
.product-price-scope span{
  color:var(--ink2);
  font-weight:700;
}
.product-price-scope a{
  font-weight:600;
}

/* ===== 12. Light Mode Surface Cleanup =====
   Weniger graue Kaesten: Light UI trennt ueber Raum, Linien und echte Statusfarben. */
html[data-theme="light"]{
  --bg:#fafafa;
  --bg-2:#f7f8f9;
  --bg-deep:#f2f3f4;
  --surface-2:#ffffff;
  --surface-3:#f7f8f9;
  --line:#e7e8eb;
  --line-2:#d8dbe1;
  --acc-dim:rgba(17,19,23,.035);
  --acc-line:rgba(17,19,23,.18);
}
html[data-theme="light"] .topbar,
html[data-theme="light"] body.has-side-nav .gnav,
html[data-theme="light"] .subnav{
  background:#fff;
}
html[data-theme="light"] .workspace-switcher,
html[data-theme="light"] .command-search,
html[data-theme="light"] .inp,
html[data-theme="light"] .ta,
html[data-theme="light"] .btn:not(.btn-primary):not(.btn-danger),
html[data-theme="light"] .icon-btn,
html[data-theme="light"] .tb-link,
html[data-theme="light"] .av,
html[data-theme="light"] .card,
html[data-theme="light"] .dcard,
html[data-theme="light"] .readout{
  background:#fff;
}
html[data-theme="light"] .card,
html[data-theme="light"] .dcard,
html[data-theme="light"] .readout{
  border-color:#e3e5e8;
  box-shadow:0 1px 0 rgba(17,19,23,.025);
}
html[data-theme="light"] .workspace-switcher:hover,
html[data-theme="light"] .command-search:focus-within,
html[data-theme="light"] .icon-btn:hover,
html[data-theme="light"] .tb-link:hover,
html[data-theme="light"] .av:hover,
html[data-theme="light"] .btn:not(.btn-primary):not(.btn-danger):hover,
html[data-theme="light"] .tbl tr:hover td,
html[data-theme="light"] .qa-actionbtn:hover,
html[data-theme="light"] .tk-menu a:hover,
html[data-theme="light"] .tk-menu button:hover{
  background:#f8f9fa;
}
html[data-theme="light"] body.has-side-nav .gnav a.on{
  background:#fff;
  border-color:#e2e4e8;
  border-left-color:var(--brand-orange-line);
}
html[data-theme="light"] body.has-side-nav .gnav a:hover{
  background:#f8f9fa;
}
html[data-theme="light"] .stack-group-h .cnt,
html[data-theme="light"] .logtab-count,
html[data-theme="light"] .dnsrow-tag,
html[data-theme="light"] .admin-ticket-number,
html[data-theme="light"] .tkt-auto-pill{
  background:#fff;
  border-color:#e2e4e8;
}
html[data-theme="light"] .pill.tkt-prio-normal{
  background:#fff;
  color:var(--text-2);
  border-color:#d9dde3;
}
html[data-theme="light"] .pill.tkt-prio-low,
html[data-theme="light"] .pill:not(.ok):not(.warn):not(.acc):not(.err):not(.info):not(.tkt-prio-urgent):not(.tkt-prio-high):not(.tkt-prio-normal){
  background:#fff;
  border-color:#e1e3e7;
}
html[data-theme="light"] .admin-ticket-list-filter-card{
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}
html[data-theme="light"] .admin-ticket-filter-row{
  padding:0;
}
html[data-theme="light"] .tkt-filter{
  background:#fff;
  border-color:#e0e3e8;
  color:var(--text-2);
  box-shadow:0 1px 0 rgba(17,19,23,.02);
}
html[data-theme="light"] .tkt-filter:hover{
  background:#fff;
  border-color:#b8bec8;
  color:var(--text);
}
html[data-theme="light"] .tkt-filter.is-active{
  background:var(--acc);
  border-color:var(--acc);
  color:var(--acc-ink);
  box-shadow:none;
}
html[data-theme="light"] .tkt-filter-warn:not(.is-active){
  background:color-mix(in srgb,var(--warn) 4%,#fff);
  border-color:color-mix(in srgb,var(--warn) 28%,#e0e3e8);
  color:#92651f;
}
html[data-theme="light"] .tkt-filter-urgent:not(.is-active){
  background:color-mix(in srgb,var(--err) 4%,#fff);
  border-color:color-mix(in srgb,var(--err) 30%,#e0e3e8);
  color:#b4493e;
}
html[data-theme="light"] .tkt-filter-count{
  background:#fff;
  border:1px solid #e0e3e8;
  color:inherit;
}
html[data-theme="light"] .tkt-filter.is-active .tkt-filter-count{
  background:rgba(255,255,255,.22);
  border-color:rgba(255,255,255,.26);
}
html[data-theme="light"] .admin-ticket-table-card{
  background:#fff;
}
html[data-theme="light"] .admin-ticket-table th{
  color:#737780;
}
html[data-theme="light"] .admin-ticket-icon-btn.is-ok{
  background:#fff;
  border-color:color-mix(in srgb,var(--ok) 42%,#d8dbe1);
}
html[data-theme="light"] .admin-ticket-icon-btn.is-danger{
  background:#fff;
  border-color:color-mix(in srgb,var(--err) 38%,#d8dbe1);
}
html[data-theme="light"] .note,
html[data-theme="light"] .ticket-settings-info,
html[data-theme="light"] .admin-ticket-suggestion,
html[data-theme="light"] .tkt-shortcut,
html[data-theme="light"] .bigsearch,
html[data-theme="light"] .mail-archive-search,
html[data-theme="light"] .archive-journaling-item,
html[data-theme="light"] .external-archive-price,
html[data-theme="light"] .contract-cancel-confirm,
html[data-theme="light"] .product-price-scope-card{
  background:#fff;
  border-color:#e3e5e8;
}

/* ===== 13. Toolkit Auto Updates ===== */
.toolkit-auto-card{
  margin-bottom:16px;
}
.toolkit-auto-head{
  align-items:flex-start;
  gap:18px;
}
.toolkit-auto-head h2{
  margin:0;
}
.toolkit-auto-head p{
  margin:5px 0 0;
  color:var(--ink3);
  font-size:13px;
  line-height:1.45;
}
.toolkit-auto-body{
  padding:16px 18px 18px;
}
.toolkit-auto-switch{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:12px;
  align-items:center;
  margin:0 0 16px;
  cursor:pointer;
}
.toolkit-auto-switch input[type="checkbox"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.toolkit-auto-switch-ui{
  position:relative;
  width:44px;
  height:26px;
  border:1px solid var(--line-2);
  border-radius:999px;
  background:var(--surface-3);
  transition:background .16s ease,border-color .16s ease;
}
.toolkit-auto-switch-ui::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--ink3);
  box-shadow:0 1px 2px rgba(0,0,0,.18);
  transition:transform .16s ease,background .16s ease;
}
.toolkit-auto-switch input[type="checkbox"]:checked + .toolkit-auto-switch-ui{
  background:color-mix(in srgb,var(--ok) 18%,var(--surface-2));
  border-color:color-mix(in srgb,var(--ok) 48%,var(--line-2));
}
.toolkit-auto-switch input[type="checkbox"]:checked + .toolkit-auto-switch-ui::after{
  transform:translateX(18px);
  background:var(--ok);
}
.toolkit-auto-switch b{
  display:block;
  color:var(--ink2);
  font-size:14px;
}
.toolkit-auto-switch small{
  display:block;
  margin-top:3px;
  color:var(--ink3);
  font-size:12.5px;
  line-height:1.45;
}
.toolkit-auto-grid{
  display:grid;
  grid-template-columns:1.3fr .9fr .9fr;
  gap:12px;
}
.toolkit-auto-grid label{
  display:grid;
  gap:6px;
  min-width:0;
}
.toolkit-auto-grid label > span{
  color:var(--ink3);
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.toolkit-auto-grid .inp{
  width:100%;
}
.toolkit-auto-foot{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:16px;
}
.toolkit-auto-meta{
  color:var(--ink3);
  font-size:12.5px;
  line-height:1.45;
}
.toolkit-auto-meta span{
  color:var(--ink2);
  font-weight:700;
}
.toolkit-auto-error{
  margin:0 0 14px;
  border-color:var(--err);
}
.toolkit-auto-error svg{
  stroke:var(--err);
}

@media (max-width: 820px){
  .toolkit-auto-grid{
    grid-template-columns:1fr;
  }
  .toolkit-auto-foot{
    align-items:stretch;
    flex-direction:column;
  }
  .toolkit-auto-foot .btn{
    width:100%;
  }
}
