/* Customer portal foundations. Login, checkout and marketing fragments retain their own layout. */
.hw-portal-header,.hw-portal-shell {
 --portal-canvas:#f4f6fa; --portal-surface:#fff; --portal-sidebar:#f9fafc;
 --portal-border:#e1e6ed; --portal-blue:#285aa5; --portal-violet:#6c4cac; --portal-teal:#1b716b; --portal-amber:#94651e;
 --portal-shadow:0 4px 20px rgb(30 49 71 / .035);
}
.dark-mode .hw-portal-header,.dark-mode .hw-portal-shell {
 --portal-canvas:#111923; --portal-surface:#1b2735; --portal-sidebar:#15202c;
 --portal-border:#304052; --portal-blue:#94baff; --portal-violet:#c0a6f4; --portal-teal:#8fd2c2; --portal-amber:#ecc37d;
 --portal-shadow:0 4px 22px rgb(0 0 0 / .09);
}
.hw-portal-header { display:grid; grid-template-columns:248px minmax(0,1fr); height:76px; border-bottom:1px solid var(--portal-border); background:var(--portal-sidebar); color:var(--fg); font-family:var(--font-sans); }
.hw-portal-brand { display:flex; align-items:center; gap:9px; padding:14px 20px; }
.hw-portal-brand img { max-width:176px; height:auto; }
.hw-portal-header > .hw-v2-header { grid-area:auto; border:0; padding:12px 32px; background:var(--portal-surface); border-radius:20px 0 0 0; }
.hw-portal-header .hw-v2-context { font-weight:600; font-size:14px; color:var(--fg-strong); }
.hw-portal-header .hw-v2-controls { gap:16px; }
.hw-portal-dev { border:1px solid color-mix(in srgb,var(--fg-muted) 40%,transparent); border-radius:5px; padding:3px 5px; font:600 9px/1 var(--font-sans); color:var(--fg-muted); letter-spacing:.03em; }
.hw-portal-shell { grid-template-columns:248px minmax(0,1fr); background:var(--portal-canvas); min-height:calc(100svh - 76px); }
.hw-portal-shell .hw-portal-sidebar { top:0; max-height:100svh; padding:26px 16px; background:var(--portal-sidebar); border-color:var(--portal-border); min-height:calc(100svh - 76px); }
.hw-portal-caption { margin:0 12px 12px; font-size:10px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--fg-muted); }
.hw-portal-shell .hw-v2-nav-list { gap:4px; }
.hw-portal-shell .hw-v2-nav-list a,.hw-portal-shell .hw-v2-nav-list summary { min-height:44px; font-size:13px; padding:11px 12px; border-radius:9px; }
.hw-portal-shell .hw-portal-primary a { min-height:46px; font-size:14px; }
.hw-portal-shell .hw-v2-nav-list a[aria-current],.hw-portal-shell .hw-v2-nav-list summary.is-active { background:var(--accent); box-shadow:none; color:#243a4e; }
.hw-portal-shell .hw-v2-nav-list a[aria-current] i { color:inherit; }
.hw-portal-shell .hw-v2-product-name { display:block; margin-top:3px; font-size:11px; color:var(--fg-muted); font-weight:400; }
.hw-portal-secondary { margin-top:24px; padding-top:22px; border-top:1px solid var(--portal-border); }
.hw-portal-shell .hw-v2-nav-group > ul { margin-left:7px; padding-left:9px; border-left:1px solid var(--portal-border); }
.hw-portal-order { display:flex; align-items:center; justify-content:center; gap:10px; margin:24px 4px 4px; padding:12px; color:var(--fg-strong); border:1px dashed var(--border-strong); border-radius:9px; font-size:13px; font-weight:600; text-decoration:none; }
.hw-portal-order:hover { background:var(--accent); color:var(--accent-fg); border-color:var(--accent); }
.hw-portal-shell .hw-container { max-width:1480px; padding-inline:32px; }
.hw-portal-shell .hw-header-section { padding:28px 0 22px; background:radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 65%); }
.hw-portal-shell .hw-page-title h1 { font-size:clamp(26px,2.2vw,32px); font-weight:650; letter-spacing:-.035em; line-height:1.18; }
.hw-portal-shell .hw-subtitle { font-size:14px; margin-top:8px; color:var(--fg-muted); }
.hw-portal-shell .hw-db__greeting { font-size:13px; margin-bottom:7px; letter-spacing:0; }
.hw-portal-shell .card { border:1px solid var(--portal-border); border-radius:16px; background:var(--portal-surface); box-shadow:var(--portal-shadow); }
.hw-portal-shell .card-header { padding:20px 24px; background:transparent; border-color:var(--portal-border); }
.hw-portal-shell .card-header :is(h2,h3,h4,h5) { font-size:17px; font-weight:600; }
.hw-portal-shell .card-body { padding:24px; }
/* Native statistic cards need vertical spacing when Bootstrap columns stack. */
.hw-portal-shell .row:has(> [class*="col-"] > .card.hw-icon-card) { row-gap:16px; }
.hw-portal-shell .hw-tabs { gap:8px; margin-bottom:24px; border-color:var(--portal-border); }
.hw-portal-shell .hw-tab { font-size:14px; }
.hw-portal-shell .hw-v2-page-actions .btn,.hw-portal-shell .hw-page-actions .btn { font-size:13px; min-height:40px; border-radius:9px; }
.hw-portal-shell .btn-primary { box-shadow:0 2px 0 rgb(0 0 0 / .035); }
.hw-portal-shell .table { --bs-table-bg:transparent; border-color:var(--portal-border); font-size:14px; }
.hw-portal-shell .table th { background:color-mix(in srgb,var(--portal-canvas) 75%,var(--portal-surface)); padding:14px 16px; font-size:12px; font-weight:600; }
.hw-portal-shell .table td { padding:18px 16px; border-color:var(--portal-border); }
.hw-portal-shell .table tbody tr:hover { background:color-mix(in srgb,var(--portal-canvas) 50%,transparent); }
/* Keep native table actions readable without preventing ordinary cell content from wrapping. */
.hw-portal-shell .table td .btn { white-space:nowrap; overflow-wrap:normal; word-break:normal; min-width:max-content; flex-shrink:0; }
.hw-portal-shell :is(.form-control,.form-select) { border:1px solid var(--border-strong); border-radius:9px; background-color:var(--portal-surface); font-size:14px; }
.hw-portal-shell :is(.form-control,.form-select):focus { border-color:var(--fg-strong); box-shadow:0 0 0 3px color-mix(in srgb,var(--fg-strong) 12%,transparent); }
.hw-portal-shell .alert { border-radius:12px; font-size:14px; }
.hw-portal-menu-toggle { display:none; }
.hw-portal-appearance { min-height:40px; display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--portal-border); border-radius:8px; color:var(--fg-strong); background:transparent; font-family:var(--font-sans); font-size:12px; }
.hw-portal-appearance[hidden] { display:none; }
.hw-portal-shell .hw-security-compact { padding:14px 18px; font-size:13px; }
.hw-portal-shell .hw-security-compact .alert-content { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; }
.hw-portal-shell .hw-security-compact p { margin:0; flex:1 1 300px; }
.hw-portal-shell .hw-security-compact .btn { min-height:36px; font-size:12px; padding:7px 12px; }
/* Live account data, with visual weight reserved for services and outstanding tasks. */
.hw-portal-shell .hw-db__summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:16px; padding:0; margin:0 0 28px; border:0; }
.hw-portal-shell .hw-db__summary .hw-portal-stat { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:7px 12px; padding:20px; min-height:150px; border:1px solid var(--portal-border); border-radius:15px; background:var(--portal-surface); box-shadow:var(--portal-shadow); text-decoration:none; transition:transform .15s,box-shadow .15s; }
.hw-portal-shell .hw-portal-stat:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgb(20 40 65 / .09); }
.hw-portal-shell .hw-portal-stat-label { font-size:13px; font-weight:500; }
.hw-portal-shell .hw-db__summary strong { grid-column:1; font-size:32px; line-height:1.15; font-weight:650; letter-spacing:-.04em; }
.hw-portal-shell .hw-portal-stat-icon { grid-column:2; grid-row:1/3; display:grid; place-items:center; width:46px; height:46px; border-radius:13px; background:color-mix(in srgb,var(--stat-color) 10%,var(--portal-surface)); color:var(--stat-color); font-size:19px; }
.hw-portal-stat--products { --stat-color:var(--portal-blue); }
.hw-portal-stat--domains { --stat-color:var(--portal-violet); }
.hw-portal-stat--billing { --stat-color:var(--portal-amber); }
.hw-portal-stat--support { --stat-color:var(--portal-teal); }
.hw-portal-shell .hw-portal-stat-action { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; margin-top:8px; font-size:11px; color:var(--fg-muted); }
.hw-portal-shell .hw-db__layout { grid-template-columns:minmax(0,1fr) 290px; gap:0 24px; }
.hw-portal-shell .hw-db--v2 .hw-db__panel { background:var(--portal-surface); border:1px solid var(--portal-border); border-radius:16px; box-shadow:var(--portal-shadow); }
.hw-portal-shell .hw-db__panel > .hw-db__kopf { padding:22px 24px 18px; gap:12px; }
.hw-portal-shell .hw-db__panel .hw-db__kopf h2 { font-size:19px; font-weight:600; letter-spacing:-.025em; }
.hw-portal-shell .hw-db__kopf .hw-order-actions > a:first-child { font-size:12px; color:var(--fg-strong); }
.hw-portal-shell .hw-db__panel .hw-db__gitter { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:0 20px 20px; background:transparent; overflow:visible; }
.hw-portal-shell .hw-db__panel .hw-db__karte { display:flex; flex-direction:column; gap:18px; min-width:0; padding:20px; border:1px solid var(--portal-border); border-radius:13px; background:linear-gradient(145deg,color-mix(in srgb,var(--product-tone) 4%,var(--portal-surface)),var(--portal-surface)); }
.hw-portal-shell [data-hw-product-tone=blue] { --product-tone:var(--portal-blue); }
.hw-portal-shell [data-hw-product-tone=violet] { --product-tone:var(--portal-violet); }
.hw-portal-shell [data-hw-product-tone=teal] { --product-tone:var(--portal-teal); }
.hw-portal-shell [data-hw-product-tone=amber] { --product-tone:var(--portal-amber); }
.hw-portal-shell .hw-db__karte-kopf { display:flex; align-items:flex-start; gap:12px; }
.hw-portal-shell .hw-db--v2 .hw-db__marke { width:40px; height:40px; flex:0 0 40px; border-radius:11px; background:color-mix(in srgb,var(--product-tone) 11%,var(--portal-surface)); color:var(--product-tone); }
.hw-portal-shell .hw-db__karte-titel b { font-size:14px; line-height:1.4; font-weight:600; }
.hw-portal-shell .hw-db__karte-titel > span { margin-top:4px; font-size:11px; }
.hw-portal-shell .hw-db__panel .hw-db__karte-datum { padding:0; margin:0; font-size:12px; }
.hw-portal-shell .hw-db--v2 .hw-db__panel .hw-db__karte-aktionen { display:flex; align-items:center; flex-wrap:wrap; gap:12px; justify-content:space-between; margin-top:auto; padding:14px 0 0; border-top:1px solid var(--portal-border); }
.hw-portal-shell .hw-db__karte-fuss { display:block; margin:0; padding:0; border:0; }
.hw-portal-shell .hw-db__karte-fuss .hw-db__mini { min-height:36px; padding:7px 11px; font-size:12px; color:var(--fg-strong); border:1px solid var(--border-strong); border-radius:8px; background:var(--portal-surface); }
.hw-portal-shell .hw-db__karte-fuss .hw-db__mini:hover { border-color:var(--accent); background:var(--accent); color:var(--accent-fg); }
.hw-portal-shell .hw-db__ampel { padding:4px 8px; border-radius:6px; background:color-mix(in srgb,currentColor 9%,transparent); font-size:11px; }
.hw-portal-shell .hw-db__tasks { border:1px solid var(--portal-border); border-radius:16px; background:var(--portal-surface); padding:22px; margin-bottom:22px; box-shadow:var(--portal-shadow); }
.hw-portal-shell .hw-db__tasks > h2 { font-size:17px; font-weight:600; }
.hw-portal-shell .hw-db__tun:empty { display:none; }
.hw-portal-shell .hw-db--v2 .hw-db__tun { margin-bottom:0; }
.hw-portal-shell .hw-db--v2 .hw-db__lage { margin-bottom:0; font-size:13px; }
.hw-portal-shell .hw-db__context .hw-db__kopf h2 { font-size:15px; }
.hw-portal-shell .hw-db__context .hw-db__neben { gap:10px; }
.hw-portal-shell .hw-db__context .hw-db__kachel { padding:14px; border-radius:11px; border-color:var(--portal-border); background:var(--portal-surface); }
.hw-portal-shell .hw-db__kachel-txt b { font-size:13px; }
.hw-portal-shell .hw-db__kachel-txt span { font-size:12px; }
.hw-portal-shell .hw-db__hilfe { display:flex; flex-direction:column; align-items:stretch; gap:12px; border:1px solid var(--portal-border); background:var(--portal-surface); padding:20px; }
.hw-portal-shell .hw-db__hilfe-txt b { font-size:15px; }
.hw-portal-shell .hw-db__hilfe-txt span { font-size:12px; line-height:1.6; }
.hw-portal-shell .hw-db__news { padding:22px; margin-top:8px; border:1px solid var(--portal-border); border-radius:16px; background:var(--portal-surface); }
.hw-portal-shell .hw-db__news-heading h2 { font-size:18px; }
.hw-portal-shell .hw-db__news-track { gap:14px; }
.hw-portal-shell .hw-db__news-track > li { background:var(--portal-canvas); border-color:var(--portal-border); box-shadow:none; }
.hw-portal-shell :is(a,button,summary):focus-visible,.hw-portal-header :is(a,button,summary):focus-visible { outline:2px solid var(--fg-strong); outline-offset:3px; }
@media(max-width:1250px) {
 .hw-portal-shell .hw-db__layout { grid-template-columns:minmax(0,1fr) 250px; gap:0 20px; }
 .hw-portal-shell .hw-db__panel .hw-db__gitter { grid-template-columns:1fr; }
}
@media(max-width:1100px) {
 .hw-portal-header,.hw-portal-shell { grid-template-columns:220px minmax(0,1fr); }
 .hw-portal-brand { padding-inline:16px; } .hw-portal-brand img { max-width:150px; }
 .hw-portal-shell .hw-container,.hw-portal-header .hw-v2-header { padding-inline:24px; }
 .hw-portal-shell .hw-db__layout { grid-template-columns:1fr; grid-template-areas:"tasks" "content" "context"; }
 .hw-portal-shell .hw-db__panel .hw-db__gitter { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:900px) {
 .hw-portal-header { grid-template-columns:auto minmax(0,1fr); height:68px; }
 .hw-portal-brand { padding:12px 16px; } .hw-portal-brand img { width:138px; }
 .hw-portal-header > .hw-v2-header { padding:8px 16px; border-radius:0; background:transparent; min-height:56px; }
 .hw-portal-header .hw-v2-context,.hw-portal-appearance span { display:none; }
 .hw-portal-header .hw-v2-controls { width:100%; gap:8px; justify-content:flex-end; }
 .hw-portal-appearance { padding:8px; min-width:40px; justify-content:center; }
 .hw-portal-shell { display:block; min-height:70svh; }
 .hw-portal-shell .hw-portal-sidebar { position:static; padding:10px 16px; min-height:0; max-height:none; border-right:0; border-bottom:1px solid var(--portal-border); }
 .hw-portal-js .hw-portal-menu-toggle { display:flex; align-items:center; gap:10px; width:100%; padding:10px 12px; border:1px solid var(--portal-border); border-radius:8px; background:var(--portal-surface); color:var(--fg-strong); font-family:var(--font-sans); }
 .hw-portal-sidebar nav { padding-top:16px; } .hw-portal-js .hw-portal-sidebar nav { display:none; } .hw-portal-js .hw-portal-sidebar.is-open nav { display:block; }
 .hw-portal-shell .hw-container { padding-inline:20px; } .hw-portal-shell .hw-header-section { padding-top:24px; }
 .hw-portal-shell .hw-page-header { flex-wrap:wrap; gap:16px; } .hw-portal-shell .hw-v2-page-actions { width:100%; }
 .hw-portal-shell .card-body { padding:18px; }
}
@media(max-width:600px) {
 .hw-portal-header .hw-v2-language { display:block; }
 .hw-portal-header .hw-v2-icon-button { font-size:12px; }
 .hw-portal-header .hw-v2-controls { gap:4px; }
 .hw-portal-shell .hw-db__summary { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .hw-portal-shell .hw-db__summary .hw-portal-stat { padding:14px; min-height:142px; gap:8px; }
 .hw-portal-shell .hw-portal-stat-icon { width:30px; height:30px; font-size:14px; border-radius:9px; }
 .hw-portal-shell .hw-portal-stat-label { font-size:12px; }
 .hw-portal-shell .hw-portal-stat-action { font-size:10px; }
 .hw-portal-shell .hw-db__summary strong { font-size:27px; }
 .hw-portal-shell .hw-db__panel .hw-db__gitter { grid-template-columns:1fr; margin:0 14px 14px; }
 .hw-portal-shell .hw-db__panel > .hw-db__kopf { padding:18px; }
}
@media(prefers-reduced-motion:reduce) { .hw-portal-shell *, .hw-portal-header * { scroll-behavior:auto; transition:none!important; } }
/* Native product/domain groups open from their entire summary row. */
.hw-portal-primary .hw-portal-branch { position:relative; }
.hw-portal-shell .hw-portal-branch > details > summary { position:static; display:flex; align-items:center; width:100%; min-height:46px; gap:12px; padding:7px 10px; border-radius:9px; list-style:none; font-size:14px; font-weight:500; color:var(--fg-muted); cursor:pointer; }
.hw-portal-shell .hw-portal-branch-toggle > span { flex:1; min-width:0; }
.hw-portal-shell .hw-portal-branch-toggle > i:not(:last-child) { display:grid; place-items:center; width:30px; height:30px; flex:0 0 30px; font-size:17px; border-radius:8px; color:var(--fg-muted); }
.hw-portal-shell .hw-portal-branch-toggle > i:last-child { margin-left:auto; flex:0 0 18px; }
.hw-portal-branch > details > summary::-webkit-details-marker { display:none; }
.hw-portal-branch > details[open] > summary > i:last-child { transform:rotate(180deg); }
.hw-portal-branch > details > ul { padding:8px 0 8px 12px; margin-left:10px; border-left:1px solid var(--portal-border); }
.hw-portal-shell .hw-db__karte-titel b { font-size:15px; }
.hw-portal-shell .hw-portal-stat-action { font-size:12px; }
@media(max-width:1100px) {
 .hw-portal-shell .hw-db__layout { grid-template-areas:"content" "tasks" "context"; }
 .hw-portal-shell .hw-db--attention .hw-db__layout { grid-template-areas:"tasks" "content" "context"; }
}
@media(max-width:600px) {
 .hw-portal-shell .hw-db__summary:has(>a:last-child:nth-child(3)) { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .hw-portal-shell .hw-db__summary .hw-portal-stat { grid-template-columns:1fr; grid-template-rows:34px auto; min-height:110px; padding:12px; }
 .hw-portal-shell .hw-portal-stat-label { padding-right:14px; align-self:start; }
 .hw-portal-shell .hw-portal-stat-icon { position:absolute; right:10px; bottom:14px; width:24px; height:24px; font-size:12px; }
 .hw-portal-shell .hw-portal-stat-action { display:none; }
}
.hw-portal-shell .btn { border-radius:9px; }
.hw-portal-shell .btn-primary { background:var(--accent); border-color:var(--accent); color:var(--accent-fg); }
.hw-portal-shell .btn-primary:hover { background:var(--accent-hover); border-color:var(--accent-hover); color:var(--accent-fg); }
@media(max-width:1100px) {
 .hw-portal-shell .hw-db__layout { display:grid; grid-template-rows:auto; }
}

.hw-portal-language-icon { display:none; }
@media(max-width:600px) {
 .hw-portal-header .hw-v2-language > summary { width:36px; justify-content:center; padding:0; }
 .hw-portal-header .hw-v2-language > summary > span { display:none; }
 .hw-portal-header .hw-portal-language-icon { display:inline; }
 .hw-portal-header .hw-portal-brand { padding-inline:10px; gap:6px; }
 .hw-portal-header .hw-portal-brand img { width:116px; }
 .hw-portal-header > .hw-v2-header { padding-inline:8px; }
}
/* One navigation hierarchy and compact, rectangular action controls. */
.hw-portal-shell .hw-db__summary a.hw-portal-stat:hover,.hw-portal-shell .hw-db__summary a.hw-portal-stat:focus { text-decoration:none; }
.hw-portal-shell .hw-db__summary a.hw-portal-stat:hover { transform:none; border-color:var(--border-strong); }
.hw-portal-shell .hw-portal-sidebar { border-right:0; padding:24px 14px 18px; }
.hw-portal-sidebar nav { min-height:calc(100svh - 118px); display:flex; flex-direction:column; }
/* Stretch the sidebar surface through the footer; keep only its navigation sticky. */
@media(min-width:901px) {
 .hw-portal-shell { display:grid; }
 .hw-portal-shell .hw-portal-sidebar { position:relative; top:auto; align-self:stretch; max-height:none; overflow:visible; padding:0; }
 .hw-portal-shell .hw-portal-sidebar > nav { position:sticky; top:0; box-sizing:border-box; min-height:calc(100svh - 76px); max-height:100svh; overflow-y:auto; padding:24px 14px 18px; scrollbar-width:thin; scrollbar-color:var(--border-strong) transparent; }
}
.hw-portal-caption { margin:0 14px 8px; font-size:11px; font-weight:500; letter-spacing:.02em; text-transform:none; }
.hw-portal-shell .hw-portal-primary > li > a,.hw-portal-shell .hw-portal-organize > li > details > summary { min-height:46px; gap:12px; border-radius:9px; font-size:14px; font-weight:500; padding:7px 10px; }
.hw-portal-shell .hw-portal-primary > li > a > i:first-child,.hw-portal-shell .hw-portal-organize > li > details > summary > i:first-child { display:grid; place-items:center; width:30px; height:30px; flex:0 0 30px; font-size:17px; border-radius:8px; color:var(--fg-muted); }
.hw-portal-shell .hw-v2-nav-list a[aria-current],.hw-portal-shell .hw-v2-nav-list summary.is-active { background:var(--portal-surface); color:var(--fg-strong); box-shadow:0 2px 6px rgb(20 40 65 / .06); font-weight:600; }
.hw-portal-shell .hw-portal-primary > li > a[aria-current] > i:first-child { color:#2b4358; background:var(--accent); }
.hw-portal-shell .hw-portal-branch-toggle.is-active > i:not(:last-child) { color:#2b4358; background:var(--accent); }
.hw-portal-shell .hw-portal-branch > details > ul { border:0; margin:2px 0 8px 25px; padding:0 0 0 12px; }
.hw-portal-shell .hw-portal-branch > details > ul a > i { display:none; }
.hw-portal-shell .hw-portal-branch > details > ul a { font-size:12px; min-height:40px; }
.hw-portal-account-section { margin-top:28px; }
.hw-portal-workspace-extra { margin-top:4px; }
.hw-portal-shell .hw-portal-account-group > ul { border:0; margin:2px 0 8px 28px; padding:0; }
.hw-portal-shell .hw-portal-account-group > ul a { font-size:13px; min-height:40px; }
.hw-portal-shell .hw-portal-account-group > ul a > i { display:none; }
/* Account submenu badges share the label row; the legacy badge grid reserved a hidden icon column. */
.hw-portal-shell .hw-portal-account-group > ul > li > a:has(> .badge) { display:flex; align-items:center; gap:8px; }
.hw-portal-shell .hw-portal-account-group > ul > li > a:has(> .badge) > .hw-v2-link-label { flex:1 1 auto; min-width:0; }
.hw-portal-shell .hw-portal-account-group > ul > li > a > .badge { flex:0 0 auto; margin-inline-start:auto; padding:3px 6px; border-radius:4px; font-size:11px; line-height:1.2; white-space:nowrap; }
.hw-portal-more { margin-top:20px; }
.hw-portal-shell .hw-portal-more .hw-v2-nav-list a { min-height:40px; font-size:13px; }
.hw-portal-bottom { margin-top:auto; padding:28px 2px 0; }
.hw-portal-order-menu > summary { list-style:none; display:flex; align-items:center; gap:10px; min-height:40px; padding:9px 12px; border:1px solid var(--portal-border); border-radius:7px; font-size:12px; font-weight:600; color:var(--fg-strong); cursor:pointer; background:var(--portal-surface); }
.hw-portal-order-menu > summary::-webkit-details-marker { display:none; }
.hw-portal-order-menu > summary > i:last-child { margin-left:auto; }
.hw-portal-order-menu[open] > summary > i:last-child { transform:rotate(180deg); }
.hw-portal-order-menu > ul { padding-top:8px; }
.hw-portal-shell :is(.btn,.hw-db__mini,.hw-db__knopf),.hw-portal-shell .hw-db :is(.hw-db__mini,.hw-db__knopf) { border-radius:7px!important; min-height:36px; padding:8px 12px; font-size:13px; font-weight:600; line-height:1.3; }
/* Minimum touch-target heights must not leave link-button labels at the top. */
.hw-portal-shell :where(a,button).btn:where(:not([hidden])) { display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; gap:6px; }
.hw-portal-shell .hw-v2-page-actions .btn,.hw-portal-shell .hw-page-actions .btn { min-height:36px; padding:8px 12px; }
.hw-portal-shell .hw-db__karte-fuss .hw-db__mini { min-height:34px; padding:7px 12px; }
.hw-portal-shell .btn-group > .btn { border-radius:0!important; }
.hw-portal-shell .btn-group > .btn:first-child { border-radius:7px 0 0 7px!important; }
.hw-portal-shell .btn-group > .btn:last-child { border-radius:0 7px 7px 0!important; }
.hw-portal-shell .btn-group > .btn:only-child { border-radius:7px!important; }
@media(max-width:900px) {
 .hw-portal-sidebar nav { min-height:0; }
 .hw-portal-js .hw-portal-sidebar.is-open nav { display:flex; }
 .hw-portal-shell :is(.btn,.hw-db__mini,.hw-db__knopf),.hw-portal-shell .hw-db :is(.hw-db__mini,.hw-db__knopf),.hw-portal-shell .hw-v2-page-actions .btn { min-height:44px; }
}

/* Dashboard reading order: tasks, products/domains/news, then compact help. */
.hw-portal-shell .hw-db--v2 .hw-db__layout { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto; grid-template-areas:"tasks" "content" "context"; gap:24px; align-items:start; }
.hw-portal-shell .hw-db--v2 .hw-db__tasks { margin:0; }
.hw-portal-shell .hw-db--v2 .hw-db__content { display:grid; gap:24px; min-width:0; }
.hw-portal-shell .hw-db--v2 .hw-db__content > :is(.hw-db__abschnitt,.hw-db__news) { margin:0; }
.hw-portal-shell .hw-db--v2 :is(.hw-db__tasks,.hw-db__panel,.hw-db__karte,.hw-db__news,.hw-db__news-card,.hw-db__context > .hw-db__abschnitt,.hw-db__hilfe) { border-radius:7px; }
.hw-portal-shell .hw-db__task-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 24px; margin-bottom:16px; }
.hw-portal-shell .hw-db__task-heading h2 { margin:0; font-size:17px; font-weight:600; }
.hw-portal-shell .hw-db__identity { display:flex; align-items:center; flex-wrap:wrap; gap:10px 22px; font-size:13px; color:var(--fg-muted); }
.hw-portal-shell .hw-db__customer-number strong { margin-left:4px; color:var(--fg-strong); }
.hw-portal-shell .hw-db__support-pin { display:flex; align-items:center; flex-wrap:wrap; gap:8px 14px; }
.hw-portal-shell .hw-db__support-pin > span { display:flex; align-items:center; gap:8px; color:inherit; font-size:inherit; font-weight:inherit; }
.hw-portal-shell .hw-db__support-pin code { padding:5px 9px; border:1px solid var(--portal-border); border-radius:5px; background:var(--portal-canvas); color:var(--fg-strong); font:600 16px/1.3 var(--font-mono); letter-spacing:.08em; }
.hw-portal-shell .hw-db__support-pin form { margin:0; }
.hw-portal-shell .hw-db__support-pin button { min-height:36px; border-radius:7px; font-size:12px; padding:6px 8px; }
.hw-portal-shell .hw-db__tasks .hw-status--attention { margin:0 0 18px; }
.hw-portal-shell .hw-db--v2 .hw-db__context { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; align-items:start; }
.hw-portal-shell .hw-db__context > .hw-db__abschnitt,.hw-portal-shell .hw-db__context > .hw-db__hilfe { margin:0; padding:20px; border:1px solid var(--portal-border); background:var(--portal-surface); }
.hw-portal-shell .hw-db__context .hw-db__kopf { margin:0 0 14px; }
.hw-portal-shell .hw-db__context .hw-db__neben { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.hw-portal-shell .hw-db__context .hw-db__kachel { min-width:0; padding:12px; border:1px solid var(--portal-border); border-radius:7px; background:var(--portal-canvas); }
.hw-portal-shell .hw-db__context .hw-db__hilfe { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.hw-portal-shell .hw-db__context .hw-db__hilfe-txt { grid-column:1/-1; margin:0; }
.hw-portal-shell .hw-db__context .hw-db__hilfe .hw-db__knopf { margin:0; display:flex; align-items:center; justify-content:center; text-align:center; }
.hw-portal-shell .hw-db__content .hw-db__news-track { grid-template-columns:repeat(var(--hw-news-count,3),minmax(0,1fr)); }
.hw-portal-shell .hw-db__news-controls button { border-radius:7px; }
@media(min-width:641px) {
 .hw-portal-shell .hw-db--v2 .hw-db__panel .hw-db__gitter { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:900px) {
 .hw-portal-shell .hw-db--v2 .hw-db__context { grid-template-columns:minmax(0,1fr); gap:16px; }
 .hw-portal-shell .hw-db__support-pin button { min-height:44px; }
}
@media(max-width:640px) {
 .hw-portal-shell .hw-db--v2 .hw-db__layout,.hw-portal-shell .hw-db--v2 .hw-db__content { gap:18px; }
 .hw-portal-shell .hw-db__identity { align-items:flex-start; width:100%; gap:10px; }
 .hw-portal-shell .hw-db__customer-number { width:100%; }
 .hw-portal-shell .hw-db__context .hw-db__neben,.hw-portal-shell .hw-db__context .hw-db__hilfe { grid-template-columns:minmax(0,1fr); }
 .hw-portal-shell .hw-db--v2 .hw-db__panel .hw-db__gitter { grid-template-columns:minmax(0,1fr); }
}
