/* Lumina System — presentation layer for the Host Luma customer portal.
   Loaded after portal.css so existing templates and behaviour remain intact. */
:root {
  --lumina-bg: #f9f9ff;
  --lumina-surface: #ffffff;
  --lumina-surface-low: #f2f3fd;
  --lumina-surface-container: #ecedf7;
  --lumina-surface-high: #e6e7f2;
  --lumina-ink: #191b23;
  --lumina-muted: #424754;
  --lumina-outline: #727785;
  --lumina-line: #c2c6d6;
  --lumina-primary: #0058be;
  --lumina-primary-hover: #004a9f;
  --lumina-primary-soft: #d8e2ff;
  --lumina-primary-active: #eff4ff;
  --lumina-success: #1f7a45;
  --lumina-success-bg: #ddf5e6;
  --lumina-warning: #924700;
  --lumina-warning-bg: #ffdcc6;
  --lumina-danger: #ba1a1a;
  --lumina-danger-bg: #ffdad6;
  --font-display: Geist, Inter, "Segoe UI", sans-serif;
  --font-body: Inter, "Segoe UI", Arial, sans-serif;
  --font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;
  --bg: var(--lumina-bg);
  --surface: var(--lumina-surface);
  --surface-2: var(--lumina-surface-low);
  --ink: var(--lumina-ink);
  --text: var(--lumina-muted);
  --muted: var(--lumina-muted);
  --faint: #727785;
  --line: var(--lumina-line);
  --line-2: var(--lumina-line);
  --brand: var(--lumina-primary);
  --brand-50: var(--lumina-primary-active);
  --brand-100: var(--lumina-primary-soft);
  --brand-ink: #ffffff;
  --ok: var(--lumina-success);
  --ok-bg: var(--lumina-success-bg);
  --ok-line: #a9d9ba;
  --warn: var(--lumina-warning);
  --warn-bg: var(--lumina-warning-bg);
  --warn-line: #f0b489;
  --bad: var(--lumina-danger);
  --bad-bg: var(--lumina-danger-bg);
  --bad-line: #f1a9a3;
  --radius: 16px;
  --shadow: none;
  --shadow-lg: 0 4px 12px rgba(25, 27, 35, .05);
}

html { background: var(--lumina-bg); }
body { background: var(--lumina-bg); color: var(--lumina-ink); font-family: var(--font-body); font-size: 16px; line-height: 1.5; }
h1, h2, h3, h4, h5, h6, .page-head h1, .hosting-page-head h1, .topbar-title { font-family: var(--font-display); color: var(--lumina-ink); letter-spacing: -.02em; }

/* Application frame */
.sidebar { width: 260px; padding: 24px 16px; background: var(--lumina-surface); border-color: var(--lumina-line); }
.sidebar-brand { padding: 8px 12px 28px; }
.sidebar-brand img { height: 30px; }
.nav { gap: 4px; }
.nav-item { position: relative; min-height: 44px; gap: 12px; padding: 10px 14px; border-radius: 8px; color: var(--lumina-muted); font-family: var(--font-body); font-size: 14px; font-weight: 500; }
.nav-item:hover { background: var(--lumina-surface-low); color: var(--lumina-ink); }
.nav-item.is-active { background: var(--lumina-primary-active); color: var(--lumina-primary); font-weight: 600; }
.nav-item.is-active::before { content: ""; position: absolute; left: -16px; top: 8px; bottom: 8px; width: 2px; border-radius: 0 2px 2px 0; background: var(--lumina-primary); }
.nav-ico, .nav-signout svg { width: 18px; height: 18px; stroke-width: 1.7; }
.sidebar-foot { border-color: var(--lumina-line); padding-top: 16px; margin-top: 16px; }
.main { margin-left: 260px; min-height: 100vh; }
.topbar { min-height: 72px; padding: 0 40px; background: rgba(255,255,255,.88); border-color: var(--lumina-line); backdrop-filter: blur(12px); }
.topbar-title { font-size: 16px; font-weight: 600; }
.acc-email { color: var(--lumina-muted); font-family: var(--font-mono); font-size: 11px; letter-spacing: .02em; }
.acc-avatar { width: 34px; height: 34px; background: var(--lumina-primary); font-family: var(--font-display); font-size: 13px; }
.content { max-width: 1280px; padding: 40px; }

/* Type, labels and shared components */
.page-head, .hosting-page-head { margin-bottom: 32px; }
.page-head h1, .hosting-page-head h1 { font-size: 32px; line-height: 40px; font-weight: 600; }
.page-head p, .hosting-page-head p { margin-top: 8px; color: var(--lumina-muted); font-size: 16px; line-height: 24px; }
.eyebrow, .stat .stat-label, .metric-label, .command-label, .resource-card small, .field label { color: var(--lumina-muted); font-family: var(--font-mono); font-size: 11px; font-weight: 500; letter-spacing: .05em; }
.eyebrow { color: var(--lumina-primary); }
.card, .host-card, .command-metric, .command-actions, .hosting-panel, .resource-card, .perf-panel, .metric-strip, .stat { background: var(--lumina-surface); border-color: var(--lumina-line); border-radius: 16px; box-shadow: none; }
.card, .host-card, .command-metric, .command-actions, .stat { box-shadow: none !important; }
.card-link:hover, .host-card:hover { border-color: var(--lumina-outline); box-shadow: var(--shadow-lg) !important; transform: none; }
.card-ico, .host-icon, .command-icon, .panel-heading span, .resource-card > span, .perf-row > span, .empty-ico { background: var(--lumina-primary-soft); color: var(--lumina-primary); border-radius: 8px; }
.card h3, .host-title-wrap h3, .host-name-block strong, .panel-heading h3 { font-family: var(--font-display); color: var(--lumina-ink); font-weight: 600; }
.card .card-desc, .host-title-wrap p, .host-name-block span, .section-title-row p { color: var(--lumina-muted); }
.drow, .perf-row, .metric-item { background: var(--lumina-surface-low); border-color: var(--lumina-line); border-radius: 8px; }
.drow strong, .perf-row strong, .overview-list dt { color: var(--lumina-muted); font-family: var(--font-mono); font-size: 11px; font-weight: 500; letter-spacing: .03em; }
.drow span, .perf-row span, .overview-list dd, .metric-value, .resource-card strong { color: var(--lumina-ink); }

.btn { min-height: 40px; padding: 9px 16px; border-radius: 8px; font-family: var(--font-body); font-weight: 600; font-size: 14px; transition: background .15s ease, border-color .15s ease, box-shadow .15s ease; }
.btn-primary { background: var(--lumina-primary); box-shadow: none; }
.btn-primary:hover { background: var(--lumina-primary-hover); box-shadow: 0 4px 12px rgba(0, 88, 190, .2); transform: none; }
.btn-ghost, .btn-soft, .command-actions .btn { background: var(--lumina-surface); border-color: var(--lumina-line); color: var(--lumina-ink); }
.btn-ghost:hover, .btn-soft:hover:not(:disabled), .command-actions .btn:hover { background: var(--lumina-surface-low); color: var(--lumina-ink); }
.badge, .summary-chip, .summary-date, .expand-label, .perf-score { border-radius: 9999px; font-family: var(--font-mono); font-size: 11px; font-weight: 500; letter-spacing: .02em; }
.badge-ok { background: var(--lumina-success-bg); color: var(--lumina-success); border-color: #a9d9ba; }
.badge-warn { background: var(--lumina-warning-bg); color: var(--lumina-warning); border-color: #f0b489; }
.badge-bad { background: var(--lumina-danger-bg); color: var(--lumina-danger); border-color: #f1a9a3; }
.badge-soon, .summary-date { background: var(--lumina-surface-low); color: var(--lumina-muted); border-color: var(--lumina-line); }
.summary-chip, .perf-score { background: var(--lumina-primary-soft); color: var(--lumina-primary); border-color: #adc6ff; }

/* Forms, notices and overlays */
input, select, textarea, .field input { border-color: var(--lumina-line); border-radius: 8px; color: var(--lumina-ink); font-family: var(--font-body); }
input:focus, select:focus, textarea:focus, .field input:focus { border-color: var(--lumina-primary); box-shadow: 0 0 0 3px rgba(0, 88, 190, .14); }
input::placeholder, textarea::placeholder { color: var(--lumina-outline); font-family: var(--font-mono); font-size: 13px; }
.notice { border-radius: 8px; }
.notice.ok { background: var(--lumina-success-bg); color: var(--lumina-success); border-color: #a9d9ba; }
.notice.bad { background: var(--lumina-danger-bg); color: var(--lumina-danger); border-color: #f1a9a3; }
.auth-wrap { background: var(--lumina-bg); }
.auth-card { max-width: 440px; padding: 40px; background: var(--lumina-surface); border-color: var(--lumina-line); border-radius: 16px; box-shadow: 0 4px 12px rgba(25, 27, 35, .05); }
.auth-card .brand { height: 30px; margin-bottom: 32px; }
.auth-card h1 { font-family: var(--font-display); font-size: 32px; line-height: 40px; font-weight: 600; letter-spacing: -.02em; }
.auth-card .sub { color: var(--lumina-muted); font-size: 16px; line-height: 24px; margin: 12px 0 28px; }
.auth-hint { color: var(--lumina-muted); font-size: 13px; }

.app-domain-dialog, .modal-dialog, .portal-modal { border-color: var(--lumina-line); border-radius: 16px; box-shadow: 0 12px 32px rgba(25, 27, 35, .14); }
:focus-visible { outline: 3px solid rgba(0, 88, 190, .2); outline-offset: 2px; border-radius: 8px; }

@media (max-width: 860px) {
  .sidebar { width: 260px; padding: 20px 16px; }
  .main { margin-left: 0; }
  .nav-item.is-active::before { left: -16px; }
  .topbar { min-height: 64px; padding: 0 16px; }
  .content { padding: 24px 16px; }
  .page-head h1, .hosting-page-head h1, .auth-card h1 { font-size: 24px; line-height: 32px; letter-spacing: -.01em; }
}

@media (max-width: 520px) {
  .acc-email { display: none; }
  .auth-wrap { align-items: flex-start; padding: 16px; }
  .auth-card { margin-top: 32px; padding: 28px 24px; }
}

/* Projects-first screens from the accepted portal prototype. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.topbar-search { display:block; width:min(340px,34vw); margin-left:20px; }
.topbar-search input, .projects-toolbar input, .projects-toolbar select { width:100%; min-height:40px; padding:0 14px; border:1px solid #d8dce7; border-radius:999px; background:#f7f8fb; color:#191b23; font-family:var(--font-body); font-size:13px; }
.topbar-search input { background:#f4f5f8; }
.topbar-title { display:none; }
.project-page-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:24px; }
.project-page-head h1 { margin:0; font-size:32px; line-height:40px; font-weight:600; }
.project-page-head p { margin:6px 0 0; color:#424754; font-size:16px; }
.projects-toolbar { display:flex; align-items:center; gap:10px; margin:0 0 18px; }
.projects-toolbar label { flex:1; max-width:420px; }
.projects-toolbar select { width:auto; border-radius:8px; background:#fff; }
.projects-summary { display:flex; gap:10px; margin-bottom:20px; color:#575e70; font-family:var(--font-mono); font-size:11px; }
.projects-summary span { padding:5px 9px; border:1px solid #d8dce7; border-radius:999px; background:#fff; }
.projects-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.projects-grid--home { grid-template-columns:repeat(3,minmax(0,1fr)); }
.project-card { min-height:290px; padding:20px; border:1px solid #cfd5e3; border-radius:14px; background:#fff; display:flex; flex-direction:column; }
.project-card:hover { border-color:#82b0ff; box-shadow:0 4px 12px rgba(0,0,0,.05); }
.project-card__top { display:flex; align-items:start; justify-content:space-between; }
.project-card__icon { width:40px; height:40px; display:grid; place-items:center; color:#0058be; background:#edf3ff; border-radius:10px; }
.project-card__icon svg { width:20px; height:20px; }
.project-state { display:inline-flex; align-items:center; gap:5px; padding:4px 8px; border-radius:999px; background:#dcfce7; color:#167a42; font-family:var(--font-mono); font-size:10px; text-transform:uppercase; letter-spacing:.04em; }
.project-state i { width:5px; height:5px; border-radius:50%; background:currentColor; }
.project-state--provisioning { color:#9a6400; background:#fff3c4; }.project-state--attention { color:#ba1a1a; background:#ffdad6; }
.project-card h2 { margin:22px 0 4px; font-size:21px; line-height:28px; font-weight:600; }.project-card__service { margin:0; color:#697083; font-family:var(--font-mono); font-size:11px; text-transform:uppercase; letter-spacing:.05em; }
.project-card__facts { display:grid; gap:10px; margin:24px 0 18px; }.project-card__facts div { display:grid; grid-template-columns:78px 1fr; gap:8px; }.project-card__facts dt { color:#575e70; font-size:12px; }.project-card__facts dd { margin:0; overflow:hidden; color:#0058be; font-family:var(--font-mono); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.project-card__facts .is-active,.project-card__facts .is-verified { color:#16874b; }
.project-card__manage { display:flex; align-items:center; gap:7px; margin-top:auto; color:#0058be; font-size:13px; font-weight:600; }.project-card__manage svg { width:15px; height:15px; }
.projects-empty { min-height:260px; display:grid; place-content:center; justify-items:center; gap:10px; padding:28px; border:1px dashed #b8c6df; border-radius:14px; color:#424754; text-align:center; }.projects-empty>span { display:grid; width:46px; height:46px; place-items:center; border-radius:50%; background:#edf3ff; color:#0058be; }.projects-empty svg { width:22px; }.projects-empty h2 { margin:6px 0 0; font-size:22px; }.projects-empty p { max-width:360px; margin:0 0 8px; }
.home-page-head { display:flex; align-items:end; justify-content:space-between; gap:20px; }.home-page-head h1 { font-size:30px; }.home-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:24px 0 34px; }.home-stat { min-height:112px; padding:18px 20px; border:1px solid #cfd5e3; border-radius:12px; background:#fff; }.home-stat span { display:block; color:#575e70; font-family:var(--font-mono); font-size:11px; text-transform:uppercase; letter-spacing:.04em; }.home-stat strong { display:block; margin:8px 0 4px; color:#191b23; font-family:var(--font-display); font-size:24px; }.home-stat small { color:#575e70; font-size:12px; }.home-projects-heading { align-items:center; margin-top:34px; }.home-projects-heading>a { color:#0058be; font-size:13px; font-weight:600; }
.domain-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:0 0 20px; }.domain-overview div { padding:16px 18px; border:1px solid #cfd5e3; border-radius:12px; background:#fff; }.domain-overview span { display:block; color:#575e70; font-family:var(--font-mono); font-size:11px; text-transform:uppercase; }.domain-overview strong { display:block; margin-top:7px; font-family:var(--font-display); font-size:24px; }.domain-table-wrap { overflow-x:auto; border:1px solid #cfd5e3; border-radius:12px; background:#fff; }.domain-table { width:100%; min-width:760px; border-collapse:collapse; }.domain-table th { padding:15px 20px; color:#575e70; background:#f7f8fb; font-family:var(--font-mono); font-size:11px; letter-spacing:.04em; text-align:left; text-transform:uppercase; }.domain-table td { padding:17px 20px; border-top:1px solid #e6e8f0; color:#424754; font-size:13px; }.domain-table td strong,.domain-table td small { display:block; }.domain-table td strong { color:#191b23; font-size:14px; }.domain-table td small { margin-top:3px; color:#727785; font-size:11px; }.table-status { display:inline-flex; padding:4px 8px; border-radius:999px; background:#f2f3fd; color:#575e70; font-family:var(--font-mono); font-size:11px; }.table-status.is-ok { background:#dcfce7; color:#167a42; }
@media (max-width: 980px) { .projects-grid,.projects-grid--home { grid-template-columns:repeat(2,minmax(0,1fr)); }.home-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.topbar-search { width:min(300px,42vw); } }
@media (max-width: 620px) { .topbar-search { display:none; }.project-page-head { align-items:start; flex-direction:column; }.projects-toolbar { align-items:stretch; flex-wrap:wrap; }.projects-toolbar label { flex-basis:100%; max-width:none; }.projects-toolbar select { flex:1; }.projects-grid,.projects-grid--home,.home-stat-grid,.domain-overview { grid-template-columns:1fr; }.project-card { min-height:auto; }.home-page-head { align-items:start; flex-direction:column; } }

/* Universal component pass: legacy functional surfaces inherit the same project UI. */

/* Projects list workspace: compact, scan-first and intentionally not a card grid. */
.project-page-head--list{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px;}.project-page-head--list h1{margin:0;font-size:32px;line-height:1.1;}.project-page-head--list p{margin:7px 0 0;color:#5d6475;}
.project-filters{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:0 0 18px;border-bottom:1px solid #dfe5ee;}.project-filters label{flex:1;max-width:470px;}.project-filters input,.project-filters select{width:100%;height:42px;padding:0 13px;border:1px solid #cfd8e6;border-radius:8px;background:#fff;color:#252a36;font:inherit;font-size:13px;}.project-filters select{width:auto;min-width:165px;}.project-filters input:focus,.project-filters select:focus{outline:3px solid rgba(0,88,190,.14);border-color:#0b68d5;}
.project-list{border-top:1px solid #dfe5ee;}.project-list__head,.project-row>summary{display:grid;grid-template-columns:minmax(210px,1.65fr) minmax(125px,.8fr) minmax(180px,1.2fr) minmax(110px,.7fr) minmax(90px,.5fr);align-items:center;column-gap:18px;}.project-list__head{padding:12px 14px;color:#687286;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;}.project-list__head span:last-child{text-align:right;letter-spacing:0;text-transform:none;}
.project-row{border-bottom:1px solid #e3e8f0;background:#fff;}.project-row>summary{min-height:76px;padding:12px 14px;cursor:pointer;list-style:none;}.project-row>summary::-webkit-details-marker{display:none;}.project-row>summary:hover{background:#fafcff;}.project-row>summary:focus-visible{outline:3px solid #9bc3fb;outline-offset:-3px;}.project-row[open]>summary{border-bottom:1px solid #e0e7f0;background:#f8fbff;}.project-row__project{display:flex;align-items:center;min-width:0;gap:11px;}.project-row__icon{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:9px;background:#edf3ff;color:#0969d7;}.project-row__icon svg{width:18px;height:18px;}.project-row__project strong{display:block;overflow:hidden;color:#1f2633;font-size:14px;line-height:20px;text-overflow:ellipsis;white-space:nowrap;}.project-row__project small{display:block;overflow:hidden;margin-top:2px;color:#788398;font-size:11px;text-overflow:ellipsis;white-space:nowrap;}.project-row__service,.project-row__domain{overflow:hidden;color:#4f596d;font-size:13px;text-overflow:ellipsis;white-space:nowrap;}.project-row__domain{color:#075fc6;font-family:var(--font-mono);font-size:12px;}.project-row__state{display:inline-flex;align-items:center;gap:6px;width:max-content;color:#237a49;font-size:12px;font-weight:750;white-space:nowrap;}.project-row__state i,.project-readiness__items i{width:6px;height:6px;border-radius:50%;background:currentColor;}.project-row__state--provisioning{color:#a26500;}.project-row__state--ready{color:#315ea8;}.project-row__state--paused{color:#875900;}.project-row__state--attention{color:#ba1a1a;}.project-row__toggle{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:#075fc6;font-size:12px;font-weight:750;}.project-row__toggle svg{width:15px;height:15px;transition:transform .16s ease;}.project-row[open] .project-row__toggle svg{transform:rotate(180deg);}
.project-row__details{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(140px,.8fr) auto;align-items:center;gap:20px;padding:16px 14px 17px 59px;background:#f8fbff;}.project-readiness>span,.project-row__detail-copy>span{display:block;margin-bottom:7px;color:#687286;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;}.project-readiness__items{display:flex;align-items:center;gap:9px;}.project-readiness__items span{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #bce5ca;border-radius:999px;background:#ecfbf1;color:#267a48;font-size:12px;font-weight:700;}.project-readiness__items .is-pending{border-color:#f0ce98;background:#fff7e8;color:#a26500;}.project-row__detail-copy strong{color:#2a3343;font-size:13px;}.project-row__details .btn{justify-self:end;min-height:38px;}
@media(max-width:820px){.project-list__head{display:none;}.project-row>summary{grid-template-columns:minmax(0,1fr) auto auto;gap:12px;}.project-row__service,.project-row__domain{display:none;}.project-row__details{grid-template-columns:1fr auto;padding-left:14px;}.project-row__detail-copy{display:none;}}
@media(max-width:560px){.project-page-head--list{align-items:flex-start;flex-direction:column;}.project-page-head--list .btn{width:100%;justify-content:center;}.project-filters{align-items:stretch;flex-wrap:wrap;}.project-filters label{flex-basis:100%;max-width:none;}.project-filters select{flex:1;}.project-row>summary{min-height:68px;padding:10px 12px;}.project-row__state{display:none;}.project-row__details{grid-template-columns:1fr;padding:13px 12px;gap:13px;}.project-readiness__items{flex-wrap:wrap;}.project-row__details .btn{width:100%;justify-self:stretch;justify-content:center;}}

/* Approved table anatomy: a disclosure column plus project, type, domain, status and action. */
.project-filters label{max-width:355px;}.project-filters select{min-width:155px;}.project-list__head,.project-row>summary{grid-template-columns:34px minmax(210px,1.5fr) minmax(120px,.75fr) minmax(180px,1.15fr) minmax(110px,.7fr) minmax(76px,.45fr);}.project-list__head span:last-child{text-align:left;}.project-row__chevron{display:grid;width:20px;height:20px;place-items:center;color:#536075;}.project-row__chevron svg{width:15px;height:15px;transition:transform .16s ease;}.project-row[open] .project-row__chevron svg{transform:rotate(90deg);}.project-row__toggle{justify-content:flex-start;min-width:0;padding:8px 10px;border:1px solid #cfd8e6;border-radius:7px;color:#283247;font-weight:700;}.project-row[open] .project-row__toggle{border-color:#b9cff0;background:#fff;color:#075fc6;}.project-row__details{grid-template-columns:minmax(120px,.7fr) minmax(240px,1.4fr) minmax(130px,.75fr) auto;padding-left:48px;}.project-row__details .project-row__state{font-size:13px;}.project-readiness__bar{width:100%;height:6px;margin:4px 0 6px;overflow:hidden;border-radius:999px;background:#e1e7ef;}.project-readiness__bar i{display:block;width:50%;height:100%;border-radius:inherit;background:#e89c39;}.project-readiness__bar.is-complete i{width:100%;background:#25a66a;}.project-readiness small{color:#748097;font-size:12px;}.project-readiness__items{display:none;}
@media(max-width:820px){.project-list__head{display:none;}.project-row>summary{grid-template-columns:26px minmax(0,1fr) auto auto;}.project-row__service,.project-row__domain{display:none;}.project-row__details{grid-template-columns:minmax(120px,.8fr) minmax(190px,1.3fr) auto;padding-left:14px;}.project-row__detail-copy:last-of-type{display:none;}}
@media(max-width:560px){.project-filters select{min-width:0;}.project-row__chevron{display:none;}.project-row>summary{grid-template-columns:minmax(0,1fr) auto;}.project-row__state{display:none;}.project-row__details{grid-template-columns:1fr;padding:13px 12px;}.project-row__detail-copy:last-of-type{display:block;}}
button, input, select, textarea { font:inherit; }
input:not([type="checkbox"]):not([type="radio"]), select, textarea, .wp-field input, .wp-field select, .app-domain-dialog input, .app-github-source-form select {
  min-height:42px; border:1px solid #c2c6d6; border-radius:8px; background:#fff; color:#191b23; box-shadow:none;
}
textarea { min-height:104px; padding:11px 13px; resize:vertical; }
input:not([type="checkbox"]):not([type="radio"]), select { padding:0 13px; }
input:focus, select:focus, textarea:focus { border-color:#0058be; box-shadow:0 0 0 3px rgba(0,88,190,.14); outline:0; }
label, .wp-field-label, .field label { color:#424754; font-family:var(--font-mono); font-size:11px; font-weight:500; letter-spacing:.04em; }
fieldset { min-width:0; border:0; padding:0; margin:0; }

/* Every form action shares the supplied crisp, low-elevation control language. */
.btn, button.btn, input[type="submit"], input[type="button"] { min-height:42px; border-radius:8px; box-shadow:none; font-family:var(--font-body); font-size:14px; font-weight:600; }
.btn-primary, button.btn-primary { background:#0058be; border-color:#0058be; color:#fff; }
.btn-primary:hover:not(:disabled), button.btn-primary:hover:not(:disabled) { background:#004a9f; border-color:#004a9f; box-shadow:0 4px 12px rgba(0,88,190,.18); }
.btn-ghost, .btn-soft, .btn-secondary { background:#fff; border-color:#c2c6d6; color:#191b23; }
.btn-ghost:hover:not(:disabled), .btn-soft:hover:not(:disabled), .btn-secondary:hover:not(:disabled) { background:#f2f3fd; border-color:#727785; }
.btn:disabled, button:disabled, [aria-disabled="true"] { opacity:.5; box-shadow:none!important; }

/* Shared panels, notices, cards, and tables. */
.support-card, .settings-card, .billing-card, .domain-card, .host-card, .wp-site-card, .wp-primary-site-card, .wp-sub-card, .wp-stat-panel, .wp-create-panel, .wp-review-card, .app-control-hero, .app-url-panel, .app-deployment-history, .app-auto-deploy-panel, .app-welcome, .app-welcome-choice, .hosting-panel, .hc-panels, .resource-panel, .timeline-panel, .perf-panel, .quick-actions-panel, .domain-managed {
  background:#fff!important; border:1px solid #c2c6d6!important; border-radius:16px!important; box-shadow:none!important;
}
.support-card:hover, .settings-card:hover, .billing-card:hover, .wp-site-card:hover, .wp-sub-card:hover, .app-welcome-choice:hover { border-color:#727785!important; box-shadow:0 4px 12px rgba(25,27,35,.05)!important; }
.panel-heading, .settings-card-head, .wp-panel-title, .wp-sites-section-header, .app-history-item summary { border-color:#e1e2ec!important; }
.notice, .endpoint-error, .host-alert, .billing-alert, .wp-limit-note, .wp-register-note { border-radius:8px!important; }
.notice.ok, .health-pill.is-good, .table-status.is-ok { background:#ddf5e6!important; color:#1f7a45!important; border-color:#a9d9ba!important; }
.notice.bad, .health-pill.is-warn, .endpoint-error { background:#ffdad6!important; color:#93000a!important; border-color:#f1a9a3!important; }

table { border-collapse:separate; border-spacing:0; }
.wp-sites-table-wrap, .app-history-list, .timeline-panel { border:1px solid #c2c6d6; border-radius:12px; background:#fff; overflow:auto; }
.wp-sites-table th, .wp-sites-table td, .app-history-item, .timeline-panel > * { border-color:#e1e2ec!important; }
.wp-sites-table th { background:#f7f8fb; color:#575e70; font-family:var(--font-mono); font-size:11px; letter-spacing:.04em; text-transform:uppercase; }

/* Hosting and WordPress: retain existing tabs/actions with the new restrained control-centre treatment. */
.hosting-command, .hosting-expanded-grid, .hc-overview, .hosting-wp-stats, .wp-review-summary, .wp-choice-grid, .wp-sub-grid { gap:16px; }
.command-metric, .command-actions, .wp-metric, .wp-stat, .resource-card { border:1px solid #c2c6d6!important; border-radius:12px!important; background:#fff!important; box-shadow:none!important; }
.command-metric, .wp-metric, .wp-stat { min-height:108px; }
.hc-header, .host-control-hero, .wp-wizard-hero, .wp-manage-head { background:#fff!important; border:1px solid #c2c6d6!important; border-radius:16px!important; box-shadow:none!important; }
.hc-tab, .wp-segment-options label, .wp-choice, .wp-suggestion { border-color:#c2c6d6!important; border-radius:8px!important; background:#fff!important; }
.hc-tab.is-active, .wp-segment-options input:checked + label, .wp-choice.is-selected { background:#eff4ff!important; border-color:#0058be!important; color:#0058be!important; }
.wp-wizard-stage, .wp-create-wizard, .wp-wizard-panel { background:#fff!important; }
.wp-wizard-steps i, .wp-usage-meter, .resource-bar { background:#e1e2ec!important; }
.wp-wizard-steps .is-active, .wp-usage-meter i, .resource-bar i { background:#0058be!important; }
.wp-site-card-actions .btn, .wp-primary-actions .btn, .manage-actions .btn, .action-toolbar .btn { box-shadow:none!important; }

/* App workspace, GitHub, deployment, and custom-domain forms. */
.app-command-bar { background:#f2f3fd!important; border-color:#c2c6d6!important; }
.app-control-icon, .app-welcome-mark, .settings-ico, .support-hero-ico, .wp-empty-icon { background:#d8e2ff!important; color:#0058be!important; border-radius:10px!important; }
.app-history-item, .app-history-detail, .app-domain-panel, .app-github-source-form { border-color:#e1e2ec!important; background:#fff!important; }
.app-toggle-track { background:#c2c6d6!important; }.app-toggle input:checked + .app-toggle-track { background:#0058be!important; }
.app-domain-modal, .app-domain-backdrop, .portal-modal, .portal-modal-backdrop { background:rgba(25,27,35,.28)!important; }
.app-domain-dialog, .portal-modal-dialog { max-width:620px; border:1px solid #c2c6d6!important; border-radius:16px!important; background:#fff!important; box-shadow:0 12px 32px rgba(25,27,35,.14)!important; }
.app-domain-dialog h2, .portal-modal-title { font-family:var(--font-display); font-weight:600; }
.domain-wizard-steps span { border-color:#c2c6d6!important; background:#fff!important; color:#575e70!important; }.domain-wizard-steps span.is-active { background:#0058be!important; border-color:#0058be!important; color:#fff!important; }

/* Billing, Support, Settings and authentication form surfaces. */
.billing-plan-row, .settings-list, .support-hours, .settings-points, .settings-legal { border-color:#e1e2ec!important; }
.billing-price, .settings-copy strong, .support-card h2, .settings-card h2 { color:#191b23!important; font-family:var(--font-display); }
.support-hero { background:#fff!important; border:1px solid #c2c6d6!important; border-radius:16px!important; box-shadow:none!important; }
.support-grid, .settings-grid { gap:16px; }
.auth-card, .github-callback-card { border-color:#c2c6d6!important; border-radius:16px!important; box-shadow:0 4px 12px rgba(25,27,35,.05)!important; }

/* Authentication: make the two sign-in choices feel intentional and equally clear. */
.auth-email-form .btn { margin-top:18px; }
.auth-method-divider { display:flex; align-items:center; gap:12px; margin:24px 0 16px; color:#727785; font-family:var(--font-mono); font-size:11px; line-height:1; text-transform:uppercase; letter-spacing:.08em; }
.auth-method-divider::before, .auth-method-divider::after { content:""; height:1px; flex:1; background:#e1e2ec; }
.auth-method-divider span { padding:0 2px; }
.auth-method-alt { min-height:44px; margin-top:0!important; border-color:#aeb7c9; }
.auth-method-alt:hover:not(:disabled) { border-color:#727785; }
.auth-hint { margin-top:24px!important; padding-top:18px; border-top:1px solid #e1e2ec; line-height:1.45; }
@media (max-width:520px) { .auth-method-divider { margin-top:22px; } .auth-hint { margin-top:22px!important; } }

/* Responsive form and workspace containment. */
@media (max-width: 900px) { .hosting-command, .hosting-expanded-grid, .hc-overview, .settings-grid, .support-grid { grid-template-columns:1fr!important; }.command-actions { grid-column:auto!important; } }
@media (max-width: 620px) { .action-toolbar, .manage-actions, .wp-wizard-actions, .support-hero-actions { align-items:stretch!important; flex-direction:column!important; }.action-toolbar .btn, .manage-actions .btn, .wp-wizard-actions .btn, .support-hero-actions .btn, .billing-portal-form .btn { width:100%; }.app-command-bar { grid-template-columns:1fr!important; }.app-command-bar .btn { width:100%; }.wp-sites-table-wrap { margin-inline:-2px; }.app-domain-dialog, .portal-modal-dialog { width:calc(100% - 24px)!important; max-height:calc(100vh - 24px); } }


/* Portal refinement: consistent density, calmer hierarchy, and fewer duplicate summaries. */
body:has(.home-page-head) .hosting-command[aria-label="Account overview"]{display:none!important;}
.home-page-head{margin-bottom:20px!important;}
.home-page-head h1,.project-page-head--list h1,.page-head h1{letter-spacing:-.035em;}
.home-stat-grid{gap:14px!important;margin:0 0 28px!important;}
.home-stat{min-height:104px!important;padding:17px 19px!important;border-color:#d9e1ed!important;border-radius:13px!important;}
.home-stat strong{font-size:25px!important;letter-spacing:-.025em;}
.home-projects-heading{margin-top:0!important;margin-bottom:14px!important;}
.projects-grid--home{gap:14px!important;}
.projects-grid--home .project-card{min-height:244px!important;padding:20px!important;border-color:#d9e1ed!important;border-radius:13px!important;box-shadow:none!important;}
.projects-grid--home .project-card__facts{margin:18px 0!important;}
.projects-grid--home .project-card__manage{padding-top:1px;}
.project-page-head--list{margin-bottom:20px!important;}
.project-filters{margin-bottom:14px!important;padding-bottom:14px!important;}
.project-list{border-top-color:#dbe3ed!important;}
.project-row>summary{min-height:70px!important;}
.project-row__details{background:#f8fbff!important;}
.domain-managed{gap:15px!important;padding:17px 19px!important;border-color:#d7e0ec!important;border-radius:13px!important;}
.domain-managed .managed-ico{width:38px!important;height:38px!important;border-radius:10px!important;}
.domain-managed .managed-text strong{font-size:14px!important;}
.domain-managed .managed-text p{font-size:12.5px!important;line-height:1.42!important;}
.billing-portal-form .btn{min-height:40px!important;padding:9px 13px!important;font-size:13px!important;}
.billing-grid{gap:14px!important;}
.billing-card{min-height:185px!important;padding:18px!important;border-color:#d9e1ed!important;border-radius:13px!important;box-shadow:none!important;}
@media(max-width:760px){
  .home-stat-grid{margin-bottom:22px!important;}
  .projects-grid--home .project-card{min-height:0!important;}
  .domain-managed{align-items:flex-start!important;flex-direction:column!important;}
  .billing-portal-form,.billing-portal-form .btn{width:100%!important;}
}


/* Final hosting composition guard: expanded accounts have one identity header, not two. */
.hosting-workspace:not([data-apps-root]) .host-card.is-expanded > .host-summary{display:none!important;}
.hosting-workspace:not([data-apps-root]) .host-card.is-expanded > .hosting-details{display:block!important;}


/* Portal clarity polish: keep collapsed hosting cards truly compact. */
.hosting-workspace:not([data-apps-root]) .host-card > .hosting-details{display:none!important;opacity:0!important;}
.hosting-workspace:not([data-apps-root]) .host-card.is-expanded > .hosting-details{display:block!important;opacity:1!important;}
.hosting-workspace:not([data-apps-root]) .host-card.is-expanded > .host-summary{display:none!important;}

/* Make support choices visibly actionable without adding visual noise. */
.support-card{display:flex!important;flex-direction:column!important;}
.support-card-action{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:18px;color:#075fc8;font-size:13px;font-weight:700;line-height:1.2;}
.support-card-action svg{width:15px;height:15px;flex:0 0 auto;}
.support-card:hover .support-card-action{color:#004aa6;}

/* Keep transitional domain states calm, clear and consistent. */
.domain-table .table-status.is-pending{background:#f4f7fb;border-color:#e0e7f1;color:#536174;}


/* Managed WordPress V2: faster routes to the few actions customers use most. */
.dashboard-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:0 0 34px;padding:18px 20px;border:1px solid #d9e1ed;border-radius:13px;background:#fff;}
.dashboard-quick-actions h2{margin:0;color:#191b23;font-family:var(--font-display);font-size:18px;letter-spacing:-.02em;}.dashboard-quick-actions p{margin:4px 0 0;color:#667085;font-size:13px;}.dashboard-quick-actions__list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;}.dashboard-quick-actions__list .btn{min-height:38px;white-space:nowrap;}
.domain-table td{vertical-align:middle;}.domain-table td small+small{margin-top:4px;color:#667085;}.domain-muted{color:#667085;font-size:12px;}.domain-actions{display:flex;flex-wrap:wrap;gap:8px;}.domain-actions .btn{min-height:34px;white-space:nowrap;}
@media(max-width:900px){.dashboard-quick-actions{align-items:flex-start;flex-direction:column;}.dashboard-quick-actions__list{justify-content:flex-start;}}@media(max-width:620px){.dashboard-quick-actions{margin-bottom:24px;padding:16px;}.dashboard-quick-actions__list{width:100%;}.dashboard-quick-actions__list .btn{flex:1 1 calc(50% - 5px);justify-content:center;}.domain-actions{min-width:185px;}}


/* Account portal: shared account surfaces label product ownership without merging workspaces. */
.home-stat-grid--account{grid-template-columns:repeat(3,minmax(0,1fr));}
.billing-product{display:block;margin:7px 0 1px;color:#075fc6;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;}
.billing-renewal{display:block;margin-top:11px;color:#727785;font-size:12px;}
.account-search-form{max-width:760px;}
.account-search-form label{max-width:none;}
.account-search-results{max-width:920px;}
.account-search-section{margin-top:30px;}
.account-search-list{overflow:hidden;border:1px solid #d9e1ed;border-radius:12px;background:#fff;}
.account-search-row{display:grid;grid-template-columns:125px minmax(180px,1fr) minmax(160px,1fr) auto;align-items:center;gap:14px;padding:16px 18px;border-top:1px solid #e6eaf1;color:#1f2633;text-decoration:none;}
.account-search-row:first-child{border-top:0;}.account-search-row:hover{background:#f8fbff;}.account-search-row strong{font-size:14px;}.account-search-row small{overflow:hidden;color:#075fc6;font-family:var(--font-mono);font-size:12px;text-overflow:ellipsis;white-space:nowrap;}.account-search-row>span:last-child{color:#075fc6;font-size:12px;font-weight:700;white-space:nowrap;}
.account-search-type{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#eaf3ff;color:#075fc6;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;}.account-search-type--ai{background:#f0edff;color:#5b3ec8;}.account-search-empty{margin:12px 0;color:#687286;font-size:13px;}
@media(max-width:980px){.home-stat-grid--account{grid-template-columns:repeat(2,minmax(0,1fr));}.account-search-row{grid-template-columns:120px minmax(0,1fr) auto;}.account-search-row small{display:none;}}
@media(max-width:620px){.home-stat-grid--account{grid-template-columns:1fr;}.account-search-row{grid-template-columns:1fr auto;gap:8px;padding:14px;}.account-search-row .account-search-type{grid-column:1/-1;}.account-search-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}}

.support-topic-form{display:flex;align-items:end;flex-wrap:wrap;gap:9px;margin:14px 0 2px;}.support-topic-form label{flex-basis:100%;}.support-topic-form select{min-width:185px;}.support-topic-form .btn{min-height:42px;}
@media(max-width:620px){.support-topic-form{align-items:stretch;flex-direction:column;}.support-topic-form select,.support-topic-form .btn{width:100%;}}
