/* Shared visual refinement. Uses existing dark/light tokens and control states. */
:is(.portal-app-body,.portal-auth-body,.shop-body) {
  font-variant-numeric: tabular-nums;
  --refined-panel: color-mix(in srgb,var(--color-surface) 82%,var(--color-surface-strong));
  --refined-line: color-mix(in srgb,var(--color-line-strong) 70%,transparent);
}
:is(.portal-app-body,.portal-auth-body,.shop-body) :is(h1,h2,h3) { text-wrap: balance; }
:is(.portal-app-body,.portal-auth-body,.shop-body) p { text-wrap: pretty; }
:is(.portal-app-body,.portal-auth-body,.shop-body) :is(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid var(--color-focus); outline-offset: 3px;
}
body.portal-app-body.portal-ui-v7 .workspace { padding: clamp(22px,2.6vw,42px); }
body.portal-app-body.portal-ui-v7 .portal-sidebar { background: var(--color-canvas-raised); border-right-color: var(--refined-line); }
body.portal-app-body.portal-ui-v7 .portal-sidebar__brand { padding-block: 23px 21px; }
body.portal-app-body.portal-ui-v7 .portal-sidebar__link {
  min-height: 46px; border-radius: 8px; transition: background .16s,border-color .16s;
}
body.portal-app-body.portal-ui-v7 .portal-sidebar__link.is-active {
  background: var(--color-accent-soft); border-color: color-mix(in srgb,var(--color-accent) 55%,transparent);
  box-shadow: inset 3px 0 var(--color-accent);
}
body.portal-app-body.portal-ui-v7 .portal-page-intro { gap: 24px; padding-bottom: 26px; }
body.portal-app-body.portal-ui-v7 .portal-page-title { font-weight: 650; letter-spacing: -.045em; line-height: 1.13; }
body.portal-app-body.portal-ui-v7 .portal-page-summary { max-width: 68ch; line-height: 1.75; }
.portal-app-body :is(.portal-surface,.portal-table-card,.portal-dashboard-card,.portal-admin-priority-card--customer) {
  border-color: var(--refined-line); background: var(--refined-panel); border-radius: 14px;
  box-shadow: inset 0 1px color-mix(in srgb,var(--color-ink) 4%,transparent);
}
.portal-app-body :is(.portal-surface__header,.portal-table-card__header) { padding: 24px; border-bottom-color: var(--refined-line); }
.portal-app-body :is(.portal-stat-card__value,.portal-admin-priority-card__value) { letter-spacing: -.045em; font-weight: 650; }
body.portal-app-body.portal-ui-v7 .portal-dashboard-card { padding: 24px; }
body.portal-app-body.portal-ui-v7 .portal-stat-grid { gap: 18px; }
body.portal-app-body.portal-ui-v7 .portal-table th {
  padding-block: 16px; background: var(--color-canvas-raised); color: var(--color-ink-muted);
  font-size: .72rem; letter-spacing: .06em; font-weight: 700;
}
body.portal-app-body.portal-ui-v7 .portal-table td { padding-block: 20px; vertical-align: top; border-color: var(--color-line); }
body.portal-app-body.portal-ui-v7 .portal-table tbody tr:hover { background: color-mix(in srgb,var(--color-surface-hover) 55%,transparent); }
.portal-app-body :is(.portal-button,.portal-button-primary,.portal-button-secondary) {
  min-height: 44px; border-radius: 8px; font-weight: 650;
}
:is(.portal-app-body,.portal-auth-body,.shop-body) .portal-input {
  min-height: 46px; border-radius: 8px; border-color: var(--color-line-strong);
  transition: border-color .16s,box-shadow .16s;
}
:is(.portal-app-body,.portal-auth-body,.shop-body) textarea.portal-input { min-height: 120px; }
:is(.portal-app-body,.portal-auth-body,.shop-body) .portal-input:focus {
  border-color: var(--color-focus); box-shadow: 0 0 0 3px var(--color-accent-soft);
}
body.portal-auth-body.portal-ui-v5 .portal-auth-grid { gap: clamp(36px,6vw,88px); align-items: center; }
body.portal-auth-body.portal-ui-v5 .portal-auth-panel {
  border: 1px solid var(--color-line-strong); border-radius: 18px;
  padding: clamp(26px,3.5vw,46px); background: var(--refined-panel);
  box-shadow: 0 24px 64px color-mix(in srgb,var(--color-canvas) 60%,transparent);
}
body.portal-auth-body.portal-ui-v5 .portal-auth-spotlight__title { font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
body.portal-auth-body.portal-ui-v5 .portal-auth-feature-list { gap: 0; border-top: 1px solid var(--color-line-strong); margin-top: 34px; }
body.portal-auth-body.portal-ui-v5 .portal-auth-feature { border-bottom: 1px solid var(--color-line); padding-block: 20px; }
body.portal-auth-body.portal-ui-v5 .portal-auth-form-head { margin-bottom: 28px; }
body.portal-auth-body.portal-ui-v5 .portal-auth-form-head__title { line-height: 1.2; font-weight: 650; }
body.shop-body.portal-ui-v5 .shop-header { background: #10161d; border-bottom-color: #34404c; }
body.shop-body.portal-ui-v5 .shop-page__hero { background: #111922; padding-block: clamp(52px,6vw,88px); }
body.shop-body.portal-ui-v5 .shop-page__hero-card { border-left-width: 2px; }
body.shop-body.portal-ui-v5 .shop-page__hero-card h1 { font-weight: 650; line-height: 1.08; }
body.shop-body.portal-ui-v5 .shop-page__hero-card p { max-width: 62ch; line-height: 1.75; }
body.shop-body.portal-ui-v5 .shop-page__content { padding-block: clamp(44px,5.5vw,80px); }
.shop-body :is(.shop-summary,.shop-checkout-summary) {
  background: #17212c; border: 1px solid #455567; border-top: 2px solid #ffa366;
  border-radius: 14px; padding: clamp(24px,2.6vw,34px);
  box-shadow: 0 18px 46px rgb(5 10 17 / .2);
}
.shop-body :is(.shop-summary h2,.shop-checkout-summary h2) { font-size: 1.55rem; line-height: 1.2; letter-spacing: -.035em; }
body.shop-body.portal-ui-v5 .shop-cart__item { border-color: #3e4c5c; padding-block: 30px; gap: 24px; }
body.shop-body.portal-ui-v5 .shop-cart__item h2 { font-size: clamp(1.5rem,2.3vw,2rem); letter-spacing: -.035em; }
body.shop-body.portal-ui-v5 .shop-checkout-method {
  border: 1px solid #435367; border-radius: 12px; background: #141e28;
  padding: 20px; gap: 14px; transition: border-color .16s,background .16s;
}
body.shop-body.portal-ui-v5 .shop-checkout-methods { gap: 12px !important; }
body.shop-body.portal-ui-v5 .shop-checkout-method .portal-field-note {
  color: #c2cdd8 !important; background: #1b2632; border-color: #435367;
  font-size: .8rem; line-height: 1.65;
}
body.shop-body.portal-ui-v5 .shop-checkout-method:is(.is-selected,:has(input:checked)) {
  border-color: #ffae76; background: #28231f; box-shadow: inset 3px 0 #ff9e5c;
}
body.shop-body.portal-ui-v5 .shop-checkout-method__body p { color: #bac6d1; line-height: 1.7; }
body.shop-body.portal-ui-v5 .shop-checkout-method input[type=radio] { accent-color: #80dfb2; flex: 0 0 auto; }
body.shop-body.portal-ui-v5 .shop-transfer-card { border-radius: 10px; border: 1px solid #415266; background: #111922; padding: 16px; }
body.shop-body.portal-ui-v5 .shop-checkout-summary-note { line-height: 1.75; }
body.shop-body.portal-ui-v5 .f4-checkout-unavailable-note { margin-top: 18px; color: #bdc7d2; font-size: .85rem; line-height: 1.7; }
body.shop-body.portal-ui-v5 .f4-checkout-payment-stage__head h2 { font-size: clamp(1.45rem,2.1vw,1.85rem); line-height: 1.25; }
body.shop-body.portal-ui-v5 .portal-field-note { border-radius: 6px; line-height: 1.7; }
.shop-body :is(.shop-primary-link,.shop-secondary-link) { border-radius: 8px; min-height: 46px; }
body.shop-body.portal-ui-v5 .shop-product-table__row { border-radius: 14px; border-color: #415063; background: #141d27; }
body.shop-body.portal-ui-v5 .shop-product-table__features { line-height: 1.75; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-hub { display: grid; gap: 24px; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-service { border: 1px solid var(--refined-line); border-radius: 14px; background: var(--refined-panel); padding: clamp(20px,2.5vw,30px); }
body.portal-app-body.portal-ui-v7 .portal-upgrade-service__head { display: flex; justify-content: space-between; align-items: start; gap: 18px; padding-bottom: 22px; border-bottom: 1px solid var(--color-line); }
body.portal-app-body.portal-ui-v7 .portal-upgrade-service__head h2 { margin: 8px 0; font-size: 1.4rem; line-height: 1.25; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-service__targets { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr)); gap: 16px; margin-top: 22px; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-target { display: flex; flex-direction: column; gap: 14px; padding: 22px; background: var(--color-canvas-raised); border: 1px solid var(--color-line-strong); border-radius: 10px; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-target__price { font-size: 1.65rem; font-weight: 650; letter-spacing: -.035em; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-target__features { display: flex; flex-wrap: wrap; gap: 8px; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-target form { margin-top: auto; }
body.portal-app-body.portal-ui-v7 .portal-upgrade-target .portal-button-primary { width: 100%; }
@media(min-width:1100px) {
  body.shop-body.portal-ui-v5 .shop-cart-layout { gap: clamp(28px,4vw,64px); }
}
@media(max-width:760px) {
  body.portal-app-body.portal-ui-v7 .workspace { padding: 20px 16px; }
  body.portal-app-body.portal-ui-v7 .portal-page-intro { gap: 18px; padding-bottom: 18px; }
  body.portal-app-body.portal-ui-v7 .portal-page-title { font-size: clamp(1.8rem,7vw,2.3rem); }
  body.portal-app-body.portal-ui-v7 .portal-dashboard-card { padding: 20px; }
  body.portal-app-body.portal-ui-v7 .portal-upgrade-service__head { flex-direction: column; }
  body.portal-auth-body.portal-ui-v5 .portal-auth-panel { border-radius: 12px; padding: 24px 20px; }
  body.shop-body.portal-ui-v5 .shop-summary { padding: 24px 20px; }
  body.shop-body.portal-ui-v5 .shop-checkout-method { padding: 18px 16px; }
  body.shop-body.portal-ui-v5 .shop-cart__item { gap: 20px; padding-block: 24px; }
}
@media(prefers-reduced-motion:reduce) {
  :is(.portal-app-body,.portal-auth-body,.shop-body) :is(.portal-input,.shop-checkout-method,.portal-sidebar__link) { transition: none; }
}


/* FAST4 DESIGN REVIEW 20261002: presentation only. */
/* Visual layer only: no visibility, field, route or interaction changes. */
:is(body.portal-app-body,body.portal-auth-body,body.shop-body) {
 --studio-surface: color-mix(in srgb,var(--color-surface) 90%,var(--color-canvas-raised));
 --studio-raised: color-mix(in srgb,var(--color-surface-strong) 60%,var(--color-surface));
 --studio-edge: color-mix(in srgb,var(--color-line-strong) 80%,var(--color-canvas));
 --studio-muted: var(--color-ink-muted);
 -webkit-font-smoothing: antialiased;
 font-variant-numeric: tabular-nums;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-sidebar { background: var(--color-canvas-raised); border-right-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-sidebar__link { font-weight: 550; min-height: 44px; border-radius: 7px; padding-block: 11px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-sidebar__link.is-active { background: color-mix(in srgb,var(--color-accent) 8%,var(--color-surface)); border-color: color-mix(in srgb,var(--color-accent) 35%,var(--color-line)); box-shadow: inset 3px 0 var(--color-accent); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-sidebar__group-title { font-size: .64rem; font-weight: 600; letter-spacing: .105em; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-sidebar__link svg { flex: 0 0 19px; width: 19px; height: 19px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar { border-color: var(--studio-edge); background: var(--color-canvas-raised); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .workspace { padding: clamp(22px,2.8vw,42px); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-intro { align-items: start; gap: 24px; padding-bottom: 24px; margin-bottom: 24px; border-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-title { font-size: clamp(1.7rem,2.2vw,2.1rem); font-weight: 650; letter-spacing: -.036em; line-height: 1.22; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-summary { font-size: .92rem; line-height: 1.75; max-width: 73ch; margin-top: 12px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-kicker { letter-spacing: .105em; font-size: .64rem; margin-bottom: 9px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-section-title,.portal-table-card__title) { font-weight: 620; line-height: 1.35; letter-spacing: -.025em; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-section-subtitle { font-size: .87rem; line-height: 1.7; margin-top: 8px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-surface,.portal-table-card,.portal-dashboard-card,.portal-stat-card,.portal-upgrade-service) { border-radius: 12px; border-color: var(--studio-edge); background: var(--studio-surface); box-shadow: inset 0 1px color-mix(in srgb,var(--color-ink) 3%,transparent); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-surface--soft { background: var(--color-canvas-raised); border-radius: 10px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table-card__header { padding: 24px; gap: 20px; border-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-stat-card,.portal-dashboard-card) { padding: 22px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-stat-card__value { font-size: 1.9rem; line-height: 1.2; letter-spacing: -.035em; font-weight: 650; margin-block: 12px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-stat-card__label { font-size: .72rem; font-weight: 600; letter-spacing: .025em; line-height: 1.5; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-stat-card__meta { font-size: .79rem; line-height: 1.65; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-customer-r2__signal-rail,.portal-billing-summary-grid) { gap: 12px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-button-primary,.portal-button-secondary,.portal-button-danger) { border-radius: 7px; min-height: 42px; padding: 11px 17px; font-size: .81rem; font-weight: 650; line-height: 1.4; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-button-primary { box-shadow: inset 0 1px #ffffff26; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-chip,.portal-pill,.portal-status) { border-radius: 6px; font-weight: 550; padding: 5px 9px; line-height: 1.35; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-field-note,.portal-alert) { line-height: 1.75; border-radius: 8px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-input { border-radius: 7px; min-height: 44px; padding: 12px 14px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table-wrap { border-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table th { font-family: inherit; font-size: .7rem; letter-spacing: .025em; font-weight: 650; padding: 16px 20px; line-height: 1.5; background: var(--studio-raised); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table td { padding: 19px 20px; font-size: .86rem; line-height: 1.6; border-color: var(--color-line); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table tbody tr:hover { background: color-mix(in srgb,var(--color-ink) 3%,var(--studio-surface)); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table td :is(.portal-chip,.portal-status) { font-size: .71rem; }
/* Existing server controls and native details are retained in their original order. */
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero { padding: 28px; gap: 24px; background: var(--studio-surface); border-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero .portal-section-title { font-size: 1.48rem; margin-block: 10px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero__status { padding: 18px; background: var(--color-canvas-raised); border-color: var(--studio-edge); border-radius: 9px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-live-grid { gap: 16px; margin-top: 16px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-chip-row { gap: 8px; margin-top: 20px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-chip-row .portal-chip { padding: 7px 10px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-panel { border-radius: 9px; border-color: var(--studio-edge); background: var(--color-canvas-raised); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-server-accordion > summary { padding: 16px 18px; line-height: 1.6; min-height: 54px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-server-accordion__body { padding: 20px; border-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-detail { padding: 14px 18px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-detail > span { font-family: inherit; font-size: .71rem; font-weight: 550; letter-spacing: .02em; line-height: 1.6; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-detail > strong { font-size: .88rem; font-weight: 600; line-height: 1.6; margin-top: 5px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-server-metric { padding: 16px 18px; border-color: var(--studio-edge); border-radius: 8px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-server-traffic-pills { gap: 8px; margin-block: 16px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-domain-card { border-radius: 12px; border-color: var(--studio-edge); background: var(--studio-surface); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-domain-card :is(.portal-domain-header,.portal-customer-domain-hero) { padding: 24px; background: var(--studio-surface); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-r2--domains > .portal-table-card > .portal-table-card__header { padding: 24px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-domain-accordion > summary { padding: 16px 18px; gap: 18px; line-height: 1.6; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-domain-accordion > summary small { line-height: 1.7; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page > .portal-table-card { padding: 0; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page .portal-table-card > .portal-surface { margin: 18px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page .portal-section-head { padding: 24px; gap: 20px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-feature-list { gap: 7px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-table td > .portal-webspace-feature-list { margin-top: 4px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-table .portal-page-actions { gap: 8px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-workspace :is(.portal-billing-card,.portal-billing-panel) { border-radius: 12px; border-color: var(--studio-edge); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-workspace .portal-table :is(td,th).right { text-align: right; font-variant-numeric: tabular-nums; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-workspace .portal-stat-card { background: var(--studio-surface); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-upgrade-target { background: var(--color-canvas-raised); border-color: var(--studio-edge); border-radius: 9px; padding: 24px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-upgrade-service__head { padding-bottom: 24px; }
/* Public order and authentication surfaces use the same material language. */
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-card > .portal-surface--soft { margin: 20px 24px !important; padding: 22px !important; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-control { gap: 20px; padding: 20px 28px; grid-template-columns: minmax(145px,.25fr) minmax(0,1fr); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-control .portal-page-actions { gap: 9px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-r2--domains .portal-customer-r2__signal-rail { gap: 12px; border: 0; overflow: visible; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-r2--domains .portal-stat-card { padding: 22px; border: 1px solid var(--studio-edge); border-radius: 10px; background: var(--studio-surface); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-r2--domains .portal-customer-r2__workspace { padding: 0; border: 1px solid var(--studio-edge); border-radius: 12px; background: var(--studio-surface); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-r2__workspace > .portal-section-head { padding: 24px; border-bottom: 1px solid var(--studio-edge); margin: 0; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-management-grid { margin: 0 !important; padding: 20px; gap: 20px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-customer-card > .portal-section-head { padding: 22px; background: var(--color-canvas-raised); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion-stack { padding: 20px; gap: 12px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion > summary { padding: 16px 18px; line-height: 1.6; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion__title { font-size: .86rem; font-weight: 650; line-height: 1.55; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion__title :is(strong,span) { display: block; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion__title > span { margin-top: 5px; font-size: .78rem; font-weight: 400; color: var(--studio-muted); line-height: 1.65; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-live-grid { margin: 0; gap: 12px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-live-grid { grid-template-columns: minmax(0,1.3fr) minmax(0,.6fr) minmax(0,1fr); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero__status { min-width: 0; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-live-grid > div { min-width: 0; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-live-grid :is(dt,dd) { font-family: inherit; letter-spacing: .01em; font-size: .7rem; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-live-grid dd { white-space: nowrap; overflow: visible; text-align: left; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion__meta { font-size: .78rem; line-height: 1.7; margin-top: 5px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-summary { gap: 14px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-card { padding: 22px; min-height: 126px; gap: 10px; border-radius: 10px; background: var(--studio-surface); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-card.is-active { background: color-mix(in srgb,var(--color-accent) 7%,var(--studio-surface)); }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-card__label { font-size: .76rem; line-height: 1.5; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-card strong { font-size: 1.9rem; letter-spacing: -.04em; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-credit-bar { padding: 24px; border-radius: 10px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page .portal-stat-grid { gap: 14px !important; border: 0; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page .portal-dashboard-card { border: 1px solid var(--studio-edge); border-radius: 10px; background: var(--studio-surface); padding: 22px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page > .portal-table-card > .portal-table-card__header { padding: 24px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page > .portal-table-card > div > .portal-surface > .portal-section-head { padding: 24px; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-table-card__meta { color: var(--studio-muted); font-size: .82rem; line-height: 1.75; margin-top: 9px; }
body.shop-body.portal-ui-v5 .shop-header { background: #101922; border-color: #354553; }
body.shop-body.portal-ui-v5 .shop-page__hero { min-height: 0; background: #101a24; padding-block: 64px; }
body.shop-body.portal-ui-v5 .shop-page__hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(90deg,#101a24 4%,#101a24de 46%,#101a241a),url('/images/infrastructure-editorial-20261002.jpg'); background-position: right center; background-size: cover; opacity: .64; }
body.shop-body.portal-ui-v5 .shop-page__hero-card { max-width: 900px; background: transparent; padding-block: 12px; }
body.shop-body.portal-ui-v5 .shop-page__hero-card h1 { font-size: clamp(2.4rem,4.2vw,4rem); letter-spacing: -.042em; line-height: 1.13; }
body.shop-body.portal-ui-v5 .shop-page__hero-card p { color: #bfccd8; font-size: 1rem; max-width: 67ch; line-height: 1.8; }
body.shop-body.portal-ui-v5 .shop-page__content { padding-block: 42px 64px; }
body.shop-body.portal-ui-v5 .shop-product-table__row { background: #14212c; border-color: #354d5d; border-radius: 12px; box-shadow: inset 0 1px #ffffff06; }
body.shop-body.portal-ui-v5 .shop-product-table__features { line-height: 1.7; }
body.shop-body.portal-ui-v5 .shop-product-grid { gap: 22px; }
body.shop-body.portal-ui-v5 .shop-product-card { padding: 30px; background: #14212c !important; border: 1px solid #354a5a !important; border-radius: 12px !important; box-shadow: inset 0 1px #ffffff06 !important; }
body.shop-body.portal-ui-v5 .shop-product-card__head :is(h2,h3) { font-size: clamp(1.5rem,2vw,1.9rem); line-height: 1.3; letter-spacing: -.035em; }
body.shop-body.portal-ui-v5 .shop-product-card__description { font-size: .91rem; line-height: 1.8; color: #c0ccd6; }
body.shop-body.portal-ui-v5 .shop-product-card__pricing { line-height: 1.55; }
body.shop-body.portal-ui-v5 .shop-product-card__pricing :is(strong,b) { font-size: 2.15rem; letter-spacing: -.04em; }
body.shop-body.portal-ui-v5 .shop-product-card-specs { background: #111c26; border-color: #354a5a; border-radius: 8px; }
body.shop-body.portal-ui-v5 .shop-product-card-specs > div { padding: 16px; }
body.shop-body.portal-ui-v5 :is(.shop-server-card-feature-list,.shop-nextcloud-card-feature-list) { line-height: 1.8; }
body.shop-body.portal-ui-v5 :is(.shop-summary,.shop-checkout-summary) { background: #14232f; border-color: #435b6d; border-radius: 12px; border-top: 2px solid #ffa15d; }
body.shop-body.portal-ui-v5 .shop-checkout-method { background: #15232e; border-color: #3d5364; border-radius: 10px; }
body.shop-body.portal-ui-v5 .shop-checkout-method:is(.is-selected,:has(input:checked)) { background: #272622; border-color: #ffaa6d; }
body.shop-body.portal-ui-v5 :is(.shop-primary-link,.shop-secondary-link) { border-radius: 7px; }
body.portal-auth-body.portal-ui-v5 .portal-auth-grid { gap: 54px; align-items: center; }
body.portal-auth-body.portal-ui-v5 .portal-auth-panel { background: var(--studio-surface) !important; border-radius: 14px !important; padding: 36px !important; border: 1px solid var(--studio-edge) !important; box-shadow: 0 20px 64px color-mix(in srgb,var(--color-canvas) 60%,transparent) !important; }
body.portal-auth-body.portal-ui-v5 .portal-auth-panel::before { background: transparent; }
body.portal-auth-body.portal-ui-v5 .portal-auth-spotlight__title { font-size: clamp(2.6rem,4.2vw,4rem) !important; line-height: 1.14; letter-spacing: -.044em; max-width: 17ch; }
body.portal-auth-body.portal-ui-v5 .portal-auth-form-head__title { font-size: 1.7rem; line-height: 1.3; }
body.portal-auth-body.portal-ui-v5 .portal-auth-feature { padding: 18px; }
body.portal-auth-body.portal-ui-v5 .portal-auth-feature-list { border: 1px solid var(--studio-edge); border-radius: 10px; }
@media (min-width:1100px) {
 body.shop-body.portal-ui-v5 .shop-product-card { grid-template-columns: minmax(0,1fr) minmax(260px,.38fr); align-items: start; gap: 18px 36px; }
 body.shop-body.portal-ui-v5 .shop-product-card__head { grid-column: 1 / -1; grid-row: 1; grid-template-columns: minmax(0,1fr) minmax(260px,.38fr); gap: 36px; align-items: start; }
 body.shop-body.portal-ui-v5 .shop-product-card > p { grid-column: 1; grid-row: 2; margin: 0; }
 body.shop-body.portal-ui-v5 .shop-product-card__description { grid-column: 1; grid-row: 3; max-width: 76ch; }
 body.shop-body.portal-ui-v5 .shop-product-card-specs { grid-column: 1; grid-row: 4; grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 600px; }
 body.shop-body.portal-ui-v5 :is(.shop-server-card-feature-list,.shop-nextcloud-card-feature-list) { grid-column: 1; grid-row: 5; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 24px; }
 body.shop-body.portal-ui-v5 .shop-product-card__billing { grid-column: 2; grid-row: 2 / span 3; padding: 20px; border: 1px solid #354a5a; border-radius: 9px; background: #111c26; line-height: 1.75; gap: 8px; }
 body.shop-body.portal-ui-v5 .shop-product-card__actions { grid-column: 2; grid-row: 5; align-self: end; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero { grid-template-columns: minmax(0,1fr) minmax(310px,.44fr); }
 body.portal-auth-body.portal-ui-v5:not(.portal-auth-body--register):not(.portal-auth-body--two-factor) .portal-auth-grid { width: min(1280px,calc(100% - 64px)); margin-inline: auto; grid-template-columns: minmax(0,1fr) minmax(0,.96fr); gap: 48px; }
}
@media (max-width:1024px) {
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero { padding: 22px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-title { font-size: 1.85rem; }
}
@media (max-width:760px) {
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .workspace { padding: 22px 16px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-intro { gap: 16px; margin-bottom: 20px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-title { font-size: 1.65rem; line-height: 1.25; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-page-summary { font-size: .9rem; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-table-card__header,.portal-webspace-page .portal-section-head) { padding: 20px; gap: 16px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-stat-card,.portal-dashboard-card) { padding: 18px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-button-primary,.portal-button-secondary,.portal-button-danger) { min-height: 44px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero { padding: 20px; gap: 18px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-hero .portal-section-title { font-size: 1.28rem; overflow-wrap: anywhere; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-webspace-page .portal-table-card > .portal-surface { margin: 12px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-input { font-size: 1rem; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-server-accordion > summary { padding: 16px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-card > .portal-surface--soft { margin: 16px !important; padding: 18px !important; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-server-control { padding: 20px; grid-template-columns: minmax(0,1fr); }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-management-grid { padding: 12px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-domain-accordion-stack { padding: 16px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-billing-card { padding: 18px; }
 body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-customer-r2__workspace > .portal-section-head { padding: 20px; }
 body.portal-auth-body.portal-ui-v5 .portal-auth-panel { padding: 24px !important; border-radius: 12px !important; }
 body.portal-auth-body.portal-ui-v5 .portal-auth-spotlight__title { font-size: 2.2rem !important; }
 body.portal-auth-body.portal-ui-v5 .portal-auth-form-head__title { font-size: 1.5rem; }
 body.shop-body.portal-ui-v5 .shop-page__hero { padding-block: 36px; }
 body.shop-body.portal-ui-v5 .shop-page__hero-card h1 { font-size: clamp(2rem,8vw,2.7rem); }
 body.shop-body.portal-ui-v5 .shop-product-card { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
 :is(body.portal-app-body,body.portal-auth-body,body.shop-body) :is(.portal-button-primary,.portal-button-secondary,.shop-primary-link) { transition: none; }
}
/* Light-mode state text: retain semantic colours with readable contrast. */
:root[data-portal-theme="light"] body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-status--success,.portal-chip--success) { color: #10673c !important; }
:root[data-portal-theme="light"] body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 :is(.portal-status--info,.portal-chip--info) { color: #245f9e !important; }

/* Portal header refinement: aligned controls, clear account identity. */
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__right {
  display:flex; align-items:center; gap:10px;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__display-controls {
  display:flex; align-items:center; gap:10px;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-notification-trigger,.portal-theme-switcher,.portal-language-switcher--binary,.portal-topbar__user) {
  box-sizing:border-box; height:44px!important; min-height:44px!important; max-height:44px;
  border:1px solid var(--color-line-strong)!important; border-radius:8px!important;
  background:var(--color-surface)!important; box-shadow:none!important; color:var(--color-ink);
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-notification-trigger {
  padding:0 12px!important; gap:8px; font-size:12px; font-weight:600; transform:none;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-theme-switcher,.portal-language-switcher--binary) {
  display:inline-grid!important; grid-template-rows:38px; gap:2px!important; padding:2px!important;
  align-items:center; flex:0 0 auto!important;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-theme-switcher {
  --portal-theme-option-size:40px; grid-template-columns:repeat(3,40px); width:130px; min-width:130px;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-language-switcher--binary {
  grid-template-columns:repeat(2,40px); width:88px!important; min-width:88px!important;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-theme-switcher__option,.portal-language-switcher__item) {
  display:inline-grid; place-items:center; box-sizing:border-box;
  width:40px!important; min-width:40px!important; height:38px!important; min-height:38px!important;
  padding:0!important; border:1px solid transparent; border-radius:5px; line-height:1;
  background:transparent; color:var(--color-ink-muted); box-shadow:none;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-theme-switcher__option[aria-checked="true"],.portal-language-switcher__item.is-active) {
  background:var(--color-canvas-raised); color:var(--color-ink); border-color:var(--color-line);
  box-shadow:inset 0 -2px var(--color-accent);
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__avatar { display:none!important; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__user {
  padding:4px 10px!important; gap:12px; border-color:transparent!important; background:transparent!important;
  cursor:pointer;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__user-copy {
  display:grid!important; min-width:0; max-width:180px; gap:2px; text-align:left;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__user-copy strong {
  color:var(--color-ink); font-size:12px; line-height:16px; font-weight:700;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__user-copy small {
  color:var(--color-ink-muted); font-size:11px; line-height:14px;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__account-caret {
  display:inline-block; color:var(--color-ink-muted); font-size:12px;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-topbar__user:hover,.portal-topbar__account[open] .portal-topbar__user,.portal-notification-trigger:hover,.portal-notification-trigger[aria-expanded="true"]) {
  background:var(--color-canvas-raised)!important; border-color:var(--color-line-strong)!important; box-shadow:none!important; transform:none;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(summary,button,a):focus-visible {
  outline:2px solid var(--color-focus); outline-offset:3px;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-topbar__account-menu,.portal-notification-panel) {
  width:min(420px,calc(100vw - 32px))!important; border:1px solid var(--color-line-strong)!important;
  border-radius:10px!important; background:var(--color-surface)!important;
  box-shadow:0 16px 48px #0003!important;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__account-avatar { display:none!important; }
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__account-head {
  grid-template-columns:minmax(0,1fr) auto!important;
}
body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__restriction-state {
  box-sizing:border-box; min-height:44px; border-radius:8px;
}
@media(min-width:761px) and (max-width:1100px) {
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-notification-panel {
    position:fixed!important; inset:80px 16px auto auto!important;
    width:min(420px,calc(100% - 32px))!important;
    max-height:calc(100dvh - 96px)!important;
  }
}
@media(max-width:760px) {
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar {
    display:grid!important; grid-template-columns:44px minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:44px 44px!important; gap:8px!important; padding:10px 16px!important;
    height:auto!important; min-height:109px!important; align-items:center;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__right {
    display:contents!important; height:auto!important; width:auto!important;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__left {
    display:flex!important; grid-column:1/3!important; grid-row:1!important;
    width:auto!important; min-width:0!important; gap:10px;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__left .portal-topbar__context {
    display:block!important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
    min-width:0; border:0; padding:0; font-size:11px;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__right > .portal-topbar__account {
    grid-column:3!important; grid-row:1!important; justify-self:end; width:100%; min-width:0;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__user {
    width:100%!important; min-width:0!important; padding:4px 6px!important; justify-content:flex-end; gap:6px;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__user-copy {
    max-width:116px; min-width:0;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__right > .portal-notification-center {
    grid-column:1!important; grid-row:2!important; justify-self:start; width:44px; min-width:44px;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-notification-trigger {
    width:44px!important; min-width:44px!important; padding:0!important;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__right > .portal-topbar__display-controls {
    display:flex!important; grid-column:2/-1!important; grid-row:2!important;
    justify-content:space-between; width:100%!important; min-width:0; gap:8px!important;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar__display-controls > .portal-theme-switcher:only-child { margin-left:auto; }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-topbar__restriction-state {
    grid-column:1/-1; grid-row:3; margin:0;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-topbar__account-menu,.portal-notification-panel) {
    position:fixed!important; inset:118px 16px auto auto!important;
    width:min(420px,calc(100% - 32px))!important;
    max-height:calc(100dvh - 134px)!important;
  }
}
@media(max-width:360px) {
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 { min-width:0!important; }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-theme-switcher {
    grid-template-columns:repeat(3,38px); width:124px; min-width:124px;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar .portal-language-switcher--binary {
    grid-template-columns:repeat(2,38px); width:84px!important; min-width:84px!important;
  }
  body.portal-app-body.portal-ui-v5.portal-ui-v6.portal-ui-v7 .portal-topbar :is(.portal-theme-switcher__option,.portal-language-switcher__item) {
    width:38px!important; min-width:38px!important;
  }
}
