:root {
  --bg: #f5f7fb;
  --bg-2: #eef2ff;
  --surface: #ffffff;
  --surface-2: #fbfcff;
  --ink: #0f172a;
  --muted: #64748b;
  --line: #e2e8f0;
  --brand: #5b5cf6;
  --brand-2: #16c7b7;
  --brand-dark: #3730a3;
  --danger: #b42318;
  --success: #027a48;
  --warning: #b54708;
  --radius: 22px;
  --shadow: 0 22px 70px rgba(15, 23, 42, .08);
  --shadow-small: 0 12px 28px rgba(15, 23, 42, .06);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ink); background:
  radial-gradient(circle at top left, rgba(91, 92, 246, .15), transparent 35%),
  radial-gradient(circle at top right, rgba(22, 199, 183, .12), transparent 32%),
  var(--bg); }
a { color: var(--brand); text-decoration: none; }
a:hover { text-decoration: none; color: var(--brand-dark); }
h1, h2, h3, h4, p { margin-top: 0; }
h1 { font-size: clamp(2.15rem, 5vw, 4.4rem); line-height: .95; letter-spacing: -.06em; margin-bottom: 14px; max-width: 960px; }
h2 { font-size: clamp(1.2rem, 2vw, 1.6rem); letter-spacing: -.03em; margin-bottom: 8px; }
h3 { font-size: 1.08rem; letter-spacing: -.02em; margin-bottom: 10px; }
h4 { margin: 16px 0 8px; }
p { line-height: 1.65; }
button, input, textarea, select { font: inherit; }
.topbar { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 28px; background: rgba(255,255,255,.88); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(226,232,240,.86); }
.brand { display: inline-flex; align-items: center; gap: 11px; font-weight: 900; letter-spacing: -.03em; color: var(--ink); }
.brand:hover { color: var(--ink); }
.brand.large { font-size: 1.1rem; margin-bottom: 26px; }
.brand-mark { width: 38px; height: 38px; display: inline-grid; place-items: center; border-radius: 13px; background: linear-gradient(135deg, var(--brand), var(--brand-2)); color: #fff; font-size: .83rem; font-weight: 1000; box-shadow: 0 14px 28px rgba(91,92,246,.25); }
.nav { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.nav a, .link-button { border: 0; background: transparent; color: var(--muted); padding: 9px 12px; border-radius: 999px; font-weight: 800; cursor: pointer; }
.nav a:hover, .nav a.active, .link-button:hover { color: var(--ink); background: #eef2ff; }
.shell { width: min(1240px, calc(100% - 32px)); margin: 28px auto 58px; }
.hero-card, .project-hero, .page-head, .report-header, .panel, .login-card { background: rgba(255,255,255,.92); border: 1px solid rgba(226,232,240,.92); border-radius: var(--radius); box-shadow: var(--shadow); }
.hero-card, .project-hero, .page-head, .report-header { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: clamp(28px, 4vw, 48px); margin-bottom: 20px; overflow: hidden; position: relative; }
.hero-card:before, .project-hero:before { content: ""; position: absolute; inset: auto -110px -150px auto; width: 340px; height: 340px; border-radius: 50%; background: rgba(22,199,183,.14); }
.hero-dark { color: #fff; background: linear-gradient(135deg, #111827, #312e81 58%, #0f766e); border-color: rgba(255,255,255,.12); }
.hero-dark .muted, .hero-dark p { color: rgba(255,255,255,.78); }
.hero-dark .eyebrow { color: #a7f3d0; }
.page-head { display: block; }
.compact-head { display: flex; }
.eyebrow { color: var(--brand); text-transform: uppercase; letter-spacing: .16em; font-size: .74rem; font-weight: 1000; margin-bottom: 12px; }
.muted { color: var(--muted); }
.small { font-size: .86rem; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 14px; background: var(--brand); color: #fff; padding: 12px 17px; font-weight: 900; box-shadow: 0 15px 28px rgba(91,92,246,.22); cursor: pointer; white-space: nowrap; }
.button:hover { color: #fff; background: var(--brand-dark); }
.button.secondary { background: #eef2ff; color: var(--brand-dark); box-shadow: none; }
.button.bright { background: linear-gradient(135deg, #7c3aed, #06b6d4); color: #fff; }
.button.tiny { padding: 8px 11px; font-size: .84rem; border-radius: 11px; }
.button.danger { background: var(--danger); }
.button.wide { width: 100%; }
.flash { padding: 14px 16px; border-radius: 14px; margin-bottom: 18px; font-weight: 800; background: #ecfdf5; color: #047857; border: 1px solid #bbf7d0; }
.flash.error, .alert { background: #fff1f2; color: var(--danger); border: 1px solid #fecdd3; }
.alert { padding: 12px 14px; border-radius: 13px; margin-bottom: 16px; font-weight: 800; }
.stats-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.stats-grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.stats-grid.five { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.stat { background: rgba(255,255,255,.94); border: 1px solid var(--line); border-radius: 18px; padding: 21px; box-shadow: var(--shadow-small); }
.stat span { display: block; color: var(--muted); font-size: .82rem; font-weight: 900; margin-bottom: 10px; text-transform: uppercase; letter-spacing: .08em; }
.stat strong { display: block; font-size: clamp(1.7rem, 3vw, 2.7rem); letter-spacing: -.05em; }
.stat small { display: block; color: var(--muted); margin-top: 5px; }
.dashboard-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 20px; margin-bottom: 20px; }
.span-2 { grid-column: auto; }
.panel { padding: 26px; margin-bottom: 20px; }
.panel.narrow { width: min(820px, 100%); margin-left: auto; margin-right: auto; }
.panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.panel-head.compact { margin-bottom: 10px; }
.client-list { display: grid; gap: 12px; }
.client-row { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; padding: 15px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-2); color: var(--ink); transition: transform .15s ease, border-color .15s ease; }
.client-row:hover { transform: translateY(-2px); border-color: rgba(91,92,246,.45); color: var(--ink); }
.client-row small { display: block; color: var(--muted); margin-top: 4px; }
.client-avatar { width: 46px; height: 46px; border-radius: 15px; display: grid; place-items: center; background: #eef2ff; color: var(--brand-dark); font-weight: 1000; }
.score-ring, .score { display: inline-flex; min-width: 54px; align-items: center; justify-content: center; padding: 7px 11px; border-radius: 999px; background: #ecfdf5; color: var(--success); font-weight: 1000; }
.score-ring { min-width: 66px; height: 44px; }
.timeline { list-style: none; padding: 0; margin: 0; display: grid; gap: 15px; }
.timeline li { border-left: 3px solid #c7d2fe; padding-left: 13px; }
.timeline small { display: block; color: var(--muted); margin-top: 4px; }
.subnav { display: flex; gap: 8px; flex-wrap: wrap; padding: 8px; background: rgba(255,255,255,.78); border: 1px solid var(--line); border-radius: 999px; margin-bottom: 20px; box-shadow: var(--shadow-small); }
.subnav a { color: var(--muted); font-weight: 900; padding: 10px 14px; border-radius: 999px; }
.subnav a.active, .subnav a:hover { background: var(--ink); color: #fff; }
.project-actions { display: flex; gap: 10px; flex-wrap: wrap; position: relative; z-index: 1; }
.callout { border: 1px solid #c7d2fe; border-radius: 18px; background: linear-gradient(135deg, #eef2ff, #f8fafc); padding: 20px; margin-bottom: 18px; }
.callout.subtle { background: #f8fafc; border-color: var(--line); }
.kanban, .card-grid { display: grid; gap: 15px; }
.card-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.card-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mini-card, .brief-card, .feature-card { border: 1px solid var(--line); border-radius: 18px; background: var(--surface-2); padding: 18px; }
.mini-card.tall, .brief-card { min-height: 240px; }
.feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.feature-card { color: var(--ink); min-height: 220px; transition: transform .15s ease, border-color .15s ease; }
.feature-card:hover { transform: translateY(-3px); border-color: rgba(91,92,246,.45); color: var(--ink); }
.feature-card span { display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; border-radius: 12px; background: #eef2ff; color: var(--brand-dark); font-weight: 1000; margin-bottom: 26px; }
.split { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.chip, .status-pill { display: inline-flex; align-items: center; min-height: 28px; border-radius: 999px; padding: 5px 10px; background: #eef2ff; color: var(--brand-dark); font-size: .78rem; font-weight: 1000; }
.status-pill { background: #fef3c7; color: var(--warning); }
.tag-list { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 15px 0; list-style: none; }
.tag-list li { background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 7px 10px; color: var(--ink); font-weight: 750; font-size: .9rem; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { text-align: left; padding: 14px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
th { color: var(--muted); text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; }
.clean-list { line-height: 1.8; }
.pipeline { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.pipeline div { border: 1px solid var(--line); border-radius: 16px; background: var(--surface-2); padding: 16px; }
.pipeline span { display: inline-grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--ink); color: #fff; font-weight: 1000; margin-bottom: 12px; }
.pipeline small { display: block; color: var(--muted); margin-top: 5px; }
.grid-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.grid-form .full, .form-actions { grid-column: 1 / -1; }
label { display: grid; gap: 7px; font-weight: 900; }
input, textarea, select { width: 100%; border: 1px solid var(--line); border-radius: 14px; background: #fff; color: var(--ink); padding: 12px 13px; outline: none; }
input:focus, textarea:focus, select:focus { border-color: var(--brand); box-shadow: 0 0 0 4px rgba(91,92,246,.12); }
textarea { resize: vertical; }
.form-actions { display: flex; gap: 10px; align-items: center; }
.empty { text-align: center; padding: 40px 20px; border: 1px dashed #cbd5e1; border-radius: 18px; background: #f8fafc; }
.danger-zone { border-color: #fecdd3; }
pre { white-space: pre-wrap; overflow: auto; background: #0f172a; color: #e2e8f0; padding: 16px; border-radius: 16px; }
.login-wrap { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.login-card { width: min(480px, 100%); padding: 34px; }
.login-card h1 { font-size: clamp(2rem, 4vw, 3.1rem); }
.stack { display: grid; gap: 16px; }
.footer { width: min(1240px, calc(100% - 32px)); margin: 0 auto 28px; color: var(--muted); font-size: .9rem; }
.portal-body { background: #f8fafc; }
.portal-shell { width: min(1120px, calc(100% - 32px)); margin: 26px auto 50px; }
.portal-hero { display: flex; justify-content: space-between; gap: 22px; align-items: center; color: #fff; padding: 42px; border-radius: 28px; background: linear-gradient(135deg, var(--brand), #0f172a); margin-bottom: 20px; }
.portal-hero .eyebrow { color: #dbeafe; }
.portal-hero p { color: rgba(255,255,255,.82); }
.portal-client { background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.2); border-radius: 18px; padding: 18px; min-width: 220px; }
.portal-client span { display: block; color: rgba(255,255,255,.75); margin-top: 5px; }
.portal-footer { color: var(--muted); text-align: center; margin: 24px 0; }
@media (max-width: 1050px) {
  .dashboard-grid, .stats-grid.four, .stats-grid.five, .feature-grid, .pipeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .card-grid.three { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .topbar, .hero-card, .project-hero, .report-header, .compact-head, .portal-hero { align-items: flex-start; flex-direction: column; }
  .stats-grid, .stats-grid.four, .stats-grid.five, .dashboard-grid, .card-grid.two, .feature-grid, .pipeline, .grid-form { grid-template-columns: 1fr; }
  .shell, .portal-shell { width: min(100% - 20px, 1240px); }
  .subnav { border-radius: 18px; }
  .subnav a { flex: 1 1 auto; text-align: center; }
  h1 { letter-spacing: -.04em; }
}
@media print {
  body { background: #fff; }
  .no-print, .footer, .topbar, .subnav { display: none !important; }
  .shell { width: 100%; margin: 0; }
  .panel, .stat, .report-header { box-shadow: none; break-inside: avoid; }
}

/* RankPJ audit engine additions */
.score-hero {
  display: grid;
  place-items: center;
  width: 132px;
  height: 132px;
  margin: 14px 0;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, rgba(255,255,255,.9), rgba(91,92,246,.12)), var(--bg-2);
  border: 1px solid rgba(91, 92, 246, .22);
  color: var(--brand-dark);
  font-size: 2.1rem;
  font-weight: 900;
  letter-spacing: -.04em;
  box-shadow: var(--shadow-small);
}
.audit-callout { border-left: 5px solid var(--brand); }
.audit-summary-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}
.audit-summary-strip span {
  display: grid;
  gap: 3px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--surface-2);
}
.audit-summary-strip strong { font-size: 1.55rem; letter-spacing: -.04em; }
.audit-summary-strip small { color: var(--muted); }
.issue-list { display: grid; gap: 12px; }
.issue-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--surface-2);
}
.issue-card p { margin: 5px 0 0; color: var(--muted); }
.severity {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  padding: 6px 9px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
  background: #eef2ff;
  color: var(--brand-dark);
}
.issue-card.critical .severity { background: #fee4e2; color: var(--danger); }
.issue-card.high .severity { background: #fff4e5; color: var(--warning); }
.issue-card.medium .severity { background: #eef2ff; color: var(--brand-dark); }
.issue-card.low .severity { background: #ecfdf3; color: var(--success); }
[data-loading] button[disabled] { opacity: .72; cursor: wait; }
@media (max-width: 780px) {
  .audit-summary-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .issue-card { flex-direction: column; }
}

/* RankPJ 1.3 content operations additions */
.draft-board {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}
.draft-column {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.98));
  padding: 12px;
  min-height: 250px;
}
.draft-column-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  padding: 6px 5px 10px;
  border-bottom: 1px solid var(--line);
}
.draft-column-head span {
  display: inline-grid;
  place-items: center;
  min-width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #eef2ff;
  color: var(--brand-dark);
  font-weight: 1000;
}
.draft-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  padding: 15px;
  box-shadow: 0 10px 22px rgba(15,23,42,.04);
}
.draft-card h3 a { color: var(--ink); }
.draft-card h3 a:hover { color: var(--brand); }
.draft-actions {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 12px;
}
.draft-actions form { margin: 0; }
.draft-body {
  min-height: 520px;
  line-height: 1.55;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: .95rem;
}
@media (max-width: 1100px) {
  .draft-board { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .draft-board { grid-template-columns: 1fr; }
}

/* RankPJ 1.4 backlink outreach CRM additions */
.outreach-board {
  display: grid;
  grid-template-columns: repeat(6, minmax(210px, 1fr));
  gap: 14px;
  align-items: start;
  overflow-x: auto;
  padding-bottom: 6px;
}
.outreach-column {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.98));
  padding: 12px;
  min-height: 230px;
}
.outreach-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  padding: 15px;
  box-shadow: 0 10px 22px rgba(15,23,42,.04);
}
.outreach-card h3 a { color: var(--ink); }
.outreach-card h3 a:hover { color: var(--brand); }
.outreach-card p { margin-top: 7px; }
@media (max-width: 1100px) {
  .outreach-board { grid-template-columns: repeat(3, minmax(220px, 1fr)); }
}
@media (max-width: 720px) {
  .outreach-board { grid-template-columns: 1fr; overflow-x: visible; }
}

/* RankPJ 1.5 AI visibility tracker additions */
.visibility-board {
  display: grid;
  grid-template-columns: repeat(6, minmax(230px, 1fr));
  gap: 14px;
  align-items: start;
  overflow-x: auto;
  padding-bottom: 6px;
}
.visibility-column {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.98));
  padding: 12px;
  min-height: 245px;
}
.visibility-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  padding: 15px;
  box-shadow: 0 10px 22px rgba(15,23,42,.04);
}
.visibility-card.strong { border-color: rgba(16,185,129,.35); }
.visibility-card.weak { border-color: rgba(239,68,68,.35); }
.visibility-card h3 a { color: var(--ink); }
.visibility-card h3 a:hover { color: var(--brand); }
.visibility-card p { margin-top: 7px; }
@media (max-width: 1100px) {
  .visibility-board { grid-template-columns: repeat(3, minmax(230px, 1fr)); }
}
@media (max-width: 720px) {
  .visibility-board { grid-template-columns: 1fr; overflow-x: visible; }
}

/* RankPJ reporting center additions */
.report-cover {
  background:
    radial-gradient(circle at top right, rgba(22,199,183,.12), transparent 32%),
    linear-gradient(135deg, #ffffff, #eef2ff);
}
.report-cover h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.05; letter-spacing: -.05em; max-width: 980px; }
.report-meter { width: 100%; height: 12px; border-radius: 999px; background: #e2e8f0; overflow: hidden; margin: 16px 0 8px; }
.report-meter span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(135deg, var(--brand), var(--brand-2)); }
.inline-form { display: inline-flex; margin: 0 0 0 6px; }
@media print {
  .report-cover { background: #fff; }
  .button, form { display: none !important; }
}

/* RankPJ 1.7 team access additions */
.checkbox-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.checkbox-card {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface-2);
  padding: 12px;
  font-weight: 700;
}
.checkbox-card input { width: auto; margin-top: 4px; }
.checkbox-card small { display: block; color: var(--muted); font-weight: 600; margin-top: 3px; }
.stack-list { display: grid; gap: 12px; }
.table-actions { text-align: right; white-space: nowrap; }
code { background: #eef2ff; color: var(--brand-dark); border-radius: 8px; padding: 2px 6px; font-weight: 800; }
@media (max-width: 720px) {
  .checkbox-grid { grid-template-columns: 1fr; }
}

/* RankPJ 1.8 publishing integrations */
.publish-board {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}
.publish-column {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.98));
  padding: 12px;
  min-height: 240px;
}
.publish-card,
.publish-job-card {
  position: relative;
  overflow: hidden;
}
.publish-card:before,
.publish-job-card:before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--brand), var(--brand-2));
}
.publish-job-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  padding: 15px 15px 15px 18px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
}
.publish-job-card h3,
.publish-card h3 { margin-top: 6px; }
@media (max-width: 1180px) {
  .publish-board { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .publish-board { grid-template-columns: 1fr; }
}

.package-price {
  font-size: 2.1rem;
  font-weight: 900;
  letter-spacing: -0.04em;
  margin: 0.35rem 0;
}
.package-price small {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--muted);
  margin-left: 0.25rem;
}
.package-card .clean-list {
  margin-top: 0.9rem;
}
.clean-list.compact li {
  margin: 0.25rem 0;
}
.usage-list {
  display: grid;
  gap: 1rem;
}
.usage-list div {
  padding: 0.85rem;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface-2);
}
.usage-list span,
.usage-list strong {
  display: block;
}
.usage-list strong {
  font-size: 1.3rem;
  margin: 0.1rem 0 0.45rem;
}
meter {
  width: 100%;
  height: 0.7rem;
}
.inline-actions {
  display: flex;
  gap: 0.35rem;
  flex-wrap: wrap;
  align-items: center;
}
.mini-delete {
  margin-top: 1rem;
}
.callout.subtle {
  background: var(--surface-2);
  border-color: var(--line);
}
.grid-form.one-col {
  grid-template-columns: 1fr;
}
.progress-track { width: 100%; height: 14px; border-radius: 999px; background: #e2e8f0; overflow: hidden; margin: 18px 0; }
.progress-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--brand), var(--brand-2)); min-width: 3%; transition: width .25s ease; }
.onboarding-board { grid-template-columns: repeat(5, minmax(230px, 1fr)); }
.task-card.critical { border-color: rgba(180, 35, 24, .25); box-shadow: 0 10px 28px rgba(180,35,24,.08); }
.danger-text { color: var(--danger); }
.checkbox-line { display: flex; align-items: center; gap: 10px; padding: 13px 0; font-weight: 800; color: var(--ink); }
.checkbox-line input { width: auto; }
.audit-summary-strip.compact { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 1180px) { .onboarding-board { grid-template-columns: repeat(2, minmax(240px, 1fr)); } }
@media (max-width: 720px) { .onboarding-board { grid-template-columns: 1fr; } }

/* RankPJ 2.1.0 intake builder */
.code-box {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #0f172a;
  color: #e2e8f0;
  padding: 14px 16px;
  overflow-x: auto;
  font-size: 0.92rem;
}
.code-box code { color: inherit; }
.portal-shell .grid-form h2.full { margin-top: 8px; }
.portal-shell .grid-form small { display: block; margin: 6px 0; }

/* RankPJ 2.2 notification and activity center additions */
.action-center-grid { align-items: start; }
.action-list { display: grid; gap: 14px; }
.action-list.mini { gap: 10px; }
.action-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: start;
  padding: 17px;
  border: 1px solid var(--line);
  border-left: 6px solid #c7d2fe;
  border-radius: 18px;
  background: var(--surface-2);
  color: var(--ink);
  box-shadow: 0 8px 22px rgba(15,23,42,.04);
}
.action-list.mini .action-item {
  display: block;
  padding: 14px;
  border-left-width: 5px;
}
.action-item:hover { color: var(--ink); border-color: rgba(91,92,246,.45); }
.action-item.critical { border-left-color: var(--danger); background: #fff7f7; }
.action-item.high { border-left-color: var(--warning); background: #fffbeb; }
.action-item.medium { border-left-color: var(--brand); }
.action-item.low { border-left-color: var(--success); }
.action-item h3 { margin: 9px 0 6px; }
.action-item p { margin-bottom: 8px; color: var(--muted); }
.action-meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.action-buttons { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.action-buttons form { margin: 0; }
.pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border-radius: 999px;
  padding: 5px 10px;
  background: #111827;
  color: #fff;
  font-size: .76rem;
  font-weight: 1000;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.workflow-list { display: grid; gap: 10px; }
.workflow-list div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--surface-2);
}
.workflow-list span {
  display: inline-grid;
  place-items: center;
  min-width: 32px;
  border-radius: 999px;
  background: #eef2ff;
  color: var(--brand-dark);
  font-weight: 1000;
}
.muted-actions { display: grid; gap: 10px; }
.muted-action {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #f8fafc;
}
.muted-action button { justify-self: start; }
.activity-log { grid-template-columns: repeat(2, minmax(0, 1fr)); display: grid; }
@media (max-width: 760px) {
  .action-item { grid-template-columns: 1fr; }
  .action-buttons { justify-content: flex-start; }
  .activity-log { grid-template-columns: 1fr; }
}

/* RankPJ 2.3.0 admin analytics dashboard */
.analytics-grid { align-items: start; }
.analytics-bars { display: grid; gap: 16px; }
.analytics-bar-row { display: grid; gap: 8px; }
.analytics-bar-row div:first-child { display: flex; justify-content: space-between; gap: 12px; align-items: end; }
.analytics-bar-row small { color: var(--muted); }
.bar-track { width: 100%; height: 12px; border-radius: 999px; background: #e2e8f0; overflow: hidden; }
.bar-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--brand), var(--brand-2)); min-width: 3%; }
.stats-grid.six { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.analytics-velocity .stat strong { font-size: clamp(1.5rem, 2.4vw, 2.25rem); }
.analytics-growth-card { min-height: 290px; }
.analytics-growth-card ul { margin-bottom: 0; }
@media (max-width: 1180px) {
  .stats-grid.six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .stats-grid.five { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .stats-grid.six, .stats-grid.five { grid-template-columns: 1fr; }
}
.status-pill.good { background: #ecfdf5; color: var(--success); }
.status-pill.danger-pill { background: #fff1f2; color: var(--danger); }
.status-pill.info-pill { background: #e0f2fe; color: #0369a1; }

/* RankPJ 2.5 multi-page crawler additions */
.tight-form {
  align-items: end;
  margin-bottom: 18px;
}
.compact-issues .issue-card {
  padding: 12px;
}
.issue-card.critical {
  border-color: #fecdd3;
  background: #fff7f7;
}
.issue-card.high {
  border-color: #fed7aa;
  background: #fffaf3;
}
.issue-card.medium {
  border-color: #c7d2fe;
  background: #f8faff;
}
.issue-card.low {
  border-color: #bbf7d0;
  background: #f8fffb;
}
.table-wrap td small {
  display: inline-block;
  margin-top: 4px;
}
@media (max-width: 860px) {
  .tight-form { align-items: stretch; }
}

/* RankPJ proposal generator additions */
.proposal-card, .proposal-price-card {
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  padding: 22px;
  box-shadow: var(--shadow-small);
}
.proposal-price-card { margin-bottom: 18px; }
.package-price {
  font-size: clamp(1.7rem, 3vw, 2.6rem);
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -.06em;
  color: var(--ink);
  margin: 14px 0;
}
.package-price small {
  font-size: .9rem;
  color: var(--muted);
  letter-spacing: 0;
  margin-left: 4px;
}
.proposal-preview {
  position: sticky;
  top: 92px;
  align-self: start;
}
.inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
@media print {
  .proposal-preview, .mini-delete { display: none !important; }
  .print-only-friendly { display: block; }
}

/* RankPJ 2.8 campaign calendar */
.timeline-list{display:grid;gap:18px}.timeline-week{border-left:3px solid rgba(91,92,246,.35);padding-left:16px}.timeline-week h3{margin:0 0 12px}.timeline-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--panel-soft);margin-bottom:12px}.timeline-card h3{margin:8px 0}.timeline-card .inline-actions{justify-content:flex-end;max-width:360px}.checkbox-row{display:flex!important;align-items:center;gap:10px}.checkbox-row input{width:auto!important}@media (max-width:900px){.timeline-card{grid-template-columns:1fr}.timeline-card .inline-actions{justify-content:flex-start;max-width:none}}

/* RankPJ 2.9 publishing connector hardening */
.checklist-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}
.check-row {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  background: var(--card);
  display: grid;
  gap: 6px;
}
.check-row strong { font-size: 0.92rem; }
.check-row span { color: var(--muted); font-size: 0.9rem; }
.check-row.pass { border-color: rgba(22, 163, 74, .35); background: rgba(22, 163, 74, .06); }
.check-row.fail { border-color: rgba(220, 38, 38, .35); background: rgba(220, 38, 38, .06); }
.checkbox-row {
  display: flex !important;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
  font-weight: 700;
}
.checkbox-row input { width: auto; }
.flash.warning { background: #fff7ed; border-color: #fed7aa; color: #9a3412; }
@media (max-width: 760px) {
  .checklist-grid { grid-template-columns: 1fr; }
}

/* RankPJ 3.0 data center additions */
.stats-grid.six { grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 1050px) { .stats-grid.six { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 760px) { .stats-grid.six { grid-template-columns: 1fr; } }

/* 3.2.0 automation rules */
.full-button { width: 100%; justify-content: center; }
.grid-form label.check { grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 10px; font-weight: 700; }
.grid-form label.check input { width: auto; }
.code-block { white-space: pre-wrap; overflow: auto; background: #0f172a; color: #e2e8f0; border-radius: 16px; padding: 18px; font-size: .9rem; line-height: 1.55; }

/* RankPJ 4.4 client portal upgrade */
.portal-hero-upgraded {
  background:
    radial-gradient(circle at 10% 10%, rgba(255,255,255,.22), transparent 28%),
    linear-gradient(135deg, var(--brand), #111827 58%, #0f766e);
}
.portal-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.portal-health-card { min-width: 250px; text-align: left; }
.portal-health-card .portal-score {
  display: grid;
  place-items: center;
  width: 116px;
  height: 116px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: rgba(255,255,255,.17);
  border: 1px solid rgba(255,255,255,.27);
  color: #fff;
  font-size: 2.35rem;
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -.07em;
}
.portal-health-card strong { display: block; font-size: 1.5rem; margin-bottom: 5px; }
.portal-health-card small { display: block; color: rgba(255,255,255,.68); margin-top: 4px; }
.portal-executive-card {
  border-color: rgba(91,92,246,.18);
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(238,242,255,.72));
}
.portal-score-grid { margin-bottom: 20px; }
.portal-pillar { position: relative; overflow: hidden; }
.portal-pillar:after {
  content: "";
  position: absolute;
  inset: auto -30px -48px auto;
  width: 108px;
  height: 108px;
  border-radius: 50%;
  background: rgba(91,92,246,.09);
}
.portal-pillar.tone-success { border-color: rgba(2,122,72,.22); }
.portal-pillar.tone-brand { border-color: rgba(91,92,246,.24); }
.portal-pillar.tone-warning { border-color: rgba(181,71,8,.24); }
.portal-pillar.tone-danger { border-color: rgba(180,35,24,.24); }
.tone-success { background: #ecfdf3 !important; color: var(--success) !important; }
.tone-brand { background: #eef2ff !important; color: var(--brand-dark) !important; }
.tone-warning { background: #fff4e5 !important; color: var(--warning) !important; }
.tone-danger { background: #fee4e2 !important; color: var(--danger) !important; }
.progress-track { width: 100%; height: 12px; border-radius: 999px; background: #e2e8f0; overflow: hidden; margin: 15px 0 0; }
.progress-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--brand), var(--brand-2)); }
.progress-track.mini { height: 8px; margin-top: 12px; }
.portal-summary-strip { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.portal-summary-strip em { color: var(--muted); font-style: normal; font-size: .75rem; }
.client-action-card { border-color: rgba(91,92,246,.22); }
.alert-panel { border-color: rgba(181,71,8,.25); background: linear-gradient(135deg, #fff, #fffbeb); }
@media (max-width: 1050px) {
  .portal-summary-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .portal-health-card .portal-score { width: 96px; height: 96px; font-size: 1.95rem; }
  .portal-summary-strip { grid-template-columns: 1fr; }
}

/* RankPJ 4.8.1 Follow-Up UI polish */
.rp-followups-page,
.rp-followup-record-page {
  display: grid;
  gap: 1.25rem;
}

.rp-followups-hero {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  flex-wrap: wrap;
}

.rp-followups-hero-copy {
  max-width: 720px;
}

.rp-followups-actions,
.rp-form-actions,
.rp-followups-empty-actions {
  display: flex;
  align-items: center;
  gap: .75rem;
  flex-wrap: wrap;
}

.rp-followups-actions form,
.rp-followups-empty-actions form {
  margin: 0;
}

.rp-followups-scoreboard {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.rp-followups-metric small {
  display: block;
  margin-top: .25rem;
  opacity: .72;
}

.rp-followups-heading {
  align-items: flex-start;
  gap: 1rem;
}

.rp-followups-list {
  display: grid;
  gap: .9rem;
}

.rp-followups-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
  gap: 1rem;
  padding: 1rem;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
}

.rp-followups-row-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .35rem;
}

.rp-followups-row-title h3 {
  margin: 0;
  line-height: 1.2;
}

.rp-followups-row-main p {
  margin-bottom: 0;
}

.rp-followups-row-meta {
  display: grid;
  align-content: start;
  gap: .55rem;
  font-size: .92rem;
}

.rp-followups-preview {
  margin-top: .75rem;
  padding: .75rem;
  border-radius: 12px;
  background: rgba(15, 23, 42, .04);
}

.rp-followups-preview strong {
  display: block;
  margin-bottom: .25rem;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.rp-followups-empty {
  text-align: left;
}

.rp-followup-form textarea,
.rp-copy-panel textarea {
  width: 100%;
  resize: vertical;
}

.rp-delete-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

@media (max-width: 900px) {
  .rp-followups-scoreboard {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rp-followups-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .rp-followups-scoreboard {
    grid-template-columns: 1fr;
  }

  .rp-followups-hero,
  .rp-followups-actions,
  .rp-form-actions {
    align-items: stretch;
  }

  .rp-followups-actions .button,
  .rp-form-actions .button,
  .rp-followups-actions form,
  .rp-form-actions form {
    width: 100%;
  }
}

/* RankPJ 5.1.0 Workspace Dashboard Polish */
.workspace-nav-polished {
  margin: 1rem 0 1.25rem;
  padding: .72rem;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 20px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 18px 46px rgba(15, 23, 42, .06);
}

.workspace-nav-polished .project-workspace-nav__inner {
  display: flex;
  align-items: center;
  gap: .55rem;
  flex-wrap: wrap;
}

.workspace-nav-polished a,
.workspace-nav-polished summary {
  color: #1f2937;
  text-decoration: none;
  font-weight: 750;
  font-size: .92rem;
}

.workspace-nav-polished .project-workspace-nav__overview,
.workspace-nav-polished summary {
  min-height: 2.45rem;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .62rem .85rem;
  border: 1px solid rgba(15, 23, 42, .09);
  border-radius: 999px;
  background: #f8fafc;
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}

.workspace-nav-polished .project-workspace-nav__overview:hover,
.workspace-nav-polished summary:hover {
  transform: translateY(-1px);
  border-color: rgba(37, 99, 235, .28);
  background: #fff;
}

.workspace-nav-polished .project-workspace-nav__overview.active,
.workspace-nav-polished .project-workspace-nav-group[open] > summary,
.workspace-nav-polished .project-workspace-nav-group.is-active > summary {
  color: #0f172a;
  border-color: rgba(37, 99, 235, .32);
  background: linear-gradient(180deg, #eff6ff, #ffffff);
  box-shadow: inset 0 0 0 1px rgba(37, 99, 235, .06);
}

.workspace-nav-polished summary::-webkit-details-marker { display: none; }

.workspace-nav-polished summary small {
  display: inline-grid;
  place-items: center;
  min-width: 1.35rem;
  height: 1.35rem;
  padding: 0 .25rem;
  border-radius: 999px;
  color: #64748b;
  background: #e2e8f0;
  font-size: .72rem;
  font-weight: 800;
}

.workspace-nav-polished .project-workspace-nav-group { position: relative; }

.workspace-nav-polished .project-workspace-nav-menu {
  position: absolute;
  z-index: 50;
  top: calc(100% + .5rem);
  left: 0;
  width: min(23rem, calc(100vw - 2rem));
  padding: .65rem;
  border: 1px solid rgba(15, 23, 42, .1);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .16);
}

.workspace-nav-polished .project-workspace-nav-menu__note {
  display: block;
  padding: .25rem .45rem .55rem;
  color: #64748b;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.workspace-nav-polished .project-workspace-nav-menu a {
  display: flex;
  justify-content: space-between;
  gap: .8rem;
  padding: .68rem .75rem;
  border-radius: 12px;
  color: #334155;
  font-weight: 700;
}

.workspace-nav-polished .project-workspace-nav-menu a:hover,
.workspace-nav-polished .project-workspace-nav-menu a.active {
  color: #0f172a;
  background: #f1f5f9;
}

.workspace-nav-polished .project-workspace-nav-menu a.active::after {
  content: 'Current';
  color: #2563eb;
  font-size: .73rem;
  font-weight: 800;
}

.workspace-home-shell {
  display: grid;
  gap: 1rem;
  margin: 0 0 1.25rem;
}

.workspace-home-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(12rem, 16rem);
  gap: 1rem;
  align-items: stretch;
  padding: 1.1rem;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 18px 46px rgba(15, 23, 42, .055);
}

.workspace-home-hero h2 {
  margin: .1rem 0 .35rem;
  color: #0f172a;
  font-size: clamp(1.35rem, 2vw, 2rem);
  line-height: 1.1;
}

.workspace-home-hero p {
  max-width: 64rem;
  margin: 0;
  color: #475569;
}

.workspace-health-card {
  display: grid;
  align-content: center;
  gap: .25rem;
  padding: 1rem;
  border-radius: 20px;
  color: #0f172a;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, .08);
  text-align: center;
}

.workspace-health-card span,
.workspace-health-card small,
.workspace-section-card span,
.workspace-action-strip small {
  color: #64748b;
  font-weight: 800;
}

.workspace-health-card strong {
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1;
}

.workspace-action-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .8rem;
}

.workspace-action-strip a,
.workspace-section-card {
  display: grid;
  gap: .35rem;
  min-width: 0;
  padding: 1rem;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 12px 34px rgba(15, 23, 42, .045);
  color: #0f172a;
  text-decoration: none;
}

.workspace-action-strip a:hover,
.workspace-section-card:hover {
  transform: translateY(-1px);
  border-color: rgba(37, 99, 235, .22);
}

.workspace-action-strip span {
  display: inline-grid;
  place-items: center;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 999px;
  color: #1d4ed8;
  background: #dbeafe;
  font-weight: 900;
}

.workspace-action-strip strong,
.workspace-section-card strong {
  color: #0f172a;
  line-height: 1.25;
}

.workspace-section-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .8rem;
}

.workspace-section-card span {
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: .75rem;
}

@media (max-width: 980px) {
  .workspace-home-hero,
  .workspace-action-strip,
  .workspace-section-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .workspace-nav-polished .project-workspace-nav__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .workspace-nav-polished .project-workspace-nav__overview,
  .workspace-nav-polished summary {
    width: 100%;
    justify-content: space-between;
    border-radius: 14px;
  }

  .workspace-nav-polished .project-workspace-nav-group { position: static; }

  .workspace-nav-polished .project-workspace-nav-menu {
    position: static;
    width: 100%;
    margin-top: .45rem;
    grid-column: 1 / -1;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .04);
  }

  .workspace-home-hero,
  .workspace-action-strip,
  .workspace-section-grid {
    grid-template-columns: 1fr;
  }
}

/* RankPJ 5.3.5 Approvals UI/UX Cleanup */
.approvals-page-v535,
.approval-task-page-v535 { padding-bottom: 3rem; }

.approval-hero-v535,
.approval-task-hero-v535 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 24px;
}
.approval-hero-copy-v535 { max-width: 780px; }
.approval-hero-copy-v535 h1,
.approval-task-hero-v535 h1 { margin-bottom: .45rem; }
.approval-hero-copy-v535 p,
.approval-task-hero-v535 p { color: var(--muted, #64748b); line-height: 1.6; margin: 0; }
.approval-hero-actions-v535 { display: flex; align-items: center; justify-content: flex-end; gap: .65rem; flex-wrap: wrap; }
.approval-hero-actions-v535 form { margin: 0; }

.approval-stats-v535 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.approval-stats-v535 article {
  background: var(--panel, #fff);
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 20px;
  padding: 1rem;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .055);
}
.approval-stats-v535 span { display: block; color: var(--muted, #64748b); font-size: .76rem; letter-spacing: .07em; text-transform: uppercase; font-weight: 800; }
.approval-stats-v535 strong { display: block; font-size: 2rem; line-height: 1; margin: .45rem 0 .28rem; color: var(--text, #0f172a); }
.approval-stats-v535 small { color: var(--muted, #64748b); }

.approval-layout-v535,
.approval-editor-layout-v535 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 1rem;
  align-items: start;
}
.approval-section-heading-v535 { margin-bottom: 1rem; }
.approval-section-heading-v535 h2,
.approval-next-action-v535 h2,
.approval-guide-v535 h2,
.approval-editor-side-v535 h2 { margin: .25rem 0 .4rem; }

.approval-card-list-v535 { display: grid; gap: .9rem; }
.approval-card-v535 {
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 22px;
  padding: 1rem;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98));
  box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
  border-left: 5px solid #cbd5e1;
}
.approval-card-v535.priority-high,
.approval-card-v535.priority-urgent,
.approval-card-v535.status-blocked,
.approval-card-v535.status-changes_requested { border-left-color: #f97316; }
.approval-card-v535.status-approved,
.approval-card-v535.status-done { border-left-color: #22c55e; }
.approval-card-v535.status-needs_client_review { border-left-color: #3b82f6; }
.approval-card-main-v535 { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.approval-card-title-v535 h3 { margin: .3rem 0 .35rem; font-size: 1.08rem; line-height: 1.25; }
.approval-card-title-v535 p { margin: 0; color: var(--muted, #64748b); line-height: 1.55; }
.approval-type-v535,
.approval-status-v535 {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 800;
  text-transform: capitalize;
}
.approval-type-v535 { padding: .24rem .58rem; border: 1px solid var(--border, #e5e7eb); color: #475569; background: #fff; }
.approval-status-v535 { white-space: nowrap; padding: .34rem .7rem; background: #eef2ff; color: #3730a3; }
.status-approved .approval-status-v535,
.status-done .approval-status-v535 { background: #dcfce7; color: #166534; }
.status-needs_client_review .approval-status-v535,
.status-pending .approval-status-v535 { background: #fef3c7; color: #92400e; }
.status-blocked .approval-status-v535,
.status-changes_requested .approval-status-v535 { background: #fee2e2; color: #991b1b; }

.approval-meta-v535 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
  margin: .95rem 0;
}
.approval-meta-v535 span {
  border: 1px solid var(--border, #e5e7eb);
  background: #f8fafc;
  border-radius: 14px;
  padding: .62rem;
}
.approval-meta-v535 small { display: block; color: var(--muted, #64748b); font-size: .72rem; letter-spacing: .05em; text-transform: uppercase; font-weight: 800; }
.approval-meta-v535 strong { display: block; color: var(--text, #0f172a); margin-top: .12rem; text-transform: capitalize; font-size: .88rem; }
.approval-card-actions-v535 { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; }

.approval-empty-v535 {
  text-align: center;
  border: 1px dashed var(--border, #cbd5e1);
  border-radius: 22px;
  padding: 2rem 1rem;
  background: #f8fafc;
}
.approval-empty-icon-v535 {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: #dcfce7;
  color: #166534;
  font-weight: 900;
  margin-bottom: .75rem;
}
.approval-empty-v535 p { max-width: 620px; margin: .5rem auto 1rem; color: var(--muted, #64748b); }

.approval-sidebar-v535,
.approval-editor-side-v535 { display: grid; gap: 1rem; }
.approval-guide-v535 ol,
.approval-editor-side-v535 ul { margin: .75rem 0 0; padding-left: 1.2rem; color: var(--muted, #64748b); line-height: 1.7; }
.approval-next-action-v535 .button,
.approval-guide-v535 .button { margin-top: .75rem; }

.approval-editor-v535 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.approval-form-section-v535 { grid-column: 1 / -1; }
.approval-field-v535 { display: grid; gap: .4rem; }
.approval-field-v535 span { font-weight: 800; color: var(--text, #0f172a); }
.approval-field-v535 small { color: var(--muted, #64748b); font-weight: 700; }
.approval-field-v535 input,
.approval-field-v535 select,
.approval-field-v535 textarea {
  width: 100%;
  border: 1px solid var(--border, #dbe3ef);
  border-radius: 14px;
  padding: .78rem .88rem;
  background: #fff;
  color: var(--text, #0f172a);
}
.approval-field-v535 textarea { resize: vertical; }
.approval-field-v535.span-2,
.approval-checkbox-v535.span-2,
.approval-save-bar-v535.span-2 { grid-column: 1 / -1; }
.approval-checkbox-v535 {
  display: flex;
  gap: .8rem;
  align-items: flex-start;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 16px;
  padding: .85rem;
  background: #f8fafc;
}
.approval-checkbox-v535 input { margin-top: .25rem; }
.approval-checkbox-v535 strong,
.approval-checkbox-v535 small { display: block; }
.approval-checkbox-v535 small { color: var(--muted, #64748b); margin-top: .15rem; }
.approval-save-bar-v535 { display: flex; justify-content: flex-end; gap: .65rem; border-top: 1px solid var(--border, #e5e7eb); padding-top: 1rem; }
.approval-delete-v535 { border-color: #fecaca; }
.approval-delete-v535 h2 { color: #991b1b; }

@media (max-width: 1020px) {
  .approval-layout-v535,
  .approval-editor-layout-v535 { grid-template-columns: 1fr; }
  .approval-stats-v535 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .approval-hero-v535,
  .approval-task-hero-v535 { display: block; }
  .approval-hero-actions-v535 { justify-content: flex-start; margin-top: 1rem; }
  .approval-stats-v535,
  .approval-meta-v535,
  .approval-editor-v535 { grid-template-columns: 1fr; }
  .approval-field-v535.span-2,
  .approval-checkbox-v535.span-2,
  .approval-save-bar-v535.span-2 { grid-column: auto; }
  .approval-card-main-v535 { display: block; }
  .approval-status-v535 { margin-top: .7rem; }
  .approval-save-bar-v535 { justify-content: stretch; flex-direction: column; }
  .approval-save-bar-v535 .button { width: 100%; text-align: center; justify-content: center; }
}

/* RankPJ 5.3.6 Documents UI/UX Cleanup */
.documents-page-v536,
.document-record-page-v536 {
  display: grid;
  gap: 1.35rem;
}

.documents-hero-v536,
.document-record-hero-v536 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.5rem;
  padding: 1.35rem;
}

.documents-hero-v536 h1,
.document-record-hero-v536 h1 {
  margin: .15rem 0 .35rem;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.05;
}

.documents-hero-v536 p,
.document-record-hero-v536 p {
  max-width: 760px;
  margin: 0;
}

.documents-actions-v536 {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .65rem;
}

.documents-actions-v536 form {
  margin: 0;
}

.documents-stats-v536 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
}

.documents-stats-v536 article {
  background: var(--surface, #fff);
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 18px;
  padding: 1rem;
  box-shadow: 0 14px 35px rgba(15, 23, 42, .06);
}

.documents-stats-v536 span,
.document-meta-v536 small,
.documents-card-list-v536 small {
  display: block;
  color: var(--muted, #64748b);
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.documents-stats-v536 strong {
  display: block;
  margin-top: .15rem;
  font-size: 1.7rem;
  line-height: 1;
}

.documents-stats-v536 small {
  color: var(--muted, #64748b);
}

.documents-layout-v536,
.document-editor-layout-v536 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 1rem;
  align-items: start;
}

.documents-board-v536,
.document-editor-v536 {
  padding: 1.25rem;
}

.documents-section-heading-v536,
.document-form-section-v536 {
  margin-bottom: 1rem;
}

.documents-section-heading-v536 h2,
.documents-sidebar-v536 h2,
.document-editor-side-v536 h2,
.document-form-section-v536 h2 {
  margin: .1rem 0 .35rem;
}

.documents-empty-v536 {
  text-align: center;
  border: 1px dashed var(--border, #cbd5e1);
  border-radius: 20px;
  padding: 2rem;
  background: linear-gradient(180deg, rgba(248,250,252,.9), rgba(255,255,255,.95));
}

.documents-empty-icon-v536 {
  width: 54px;
  height: 54px;
  display: inline-grid;
  place-items: center;
  border-radius: 18px;
  margin-bottom: .75rem;
  background: var(--soft, #eef2ff);
  font-size: 1.4rem;
  font-weight: 800;
}

.documents-card-list-v536 {
  display: grid;
  gap: .85rem;
}

.document-card-v536 {
  display: grid;
  gap: .8rem;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 20px;
  padding: 1rem;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .05);
}

.document-card-top-v536 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
}

.document-type-v536,
.document-status-v536 {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .3rem .65rem;
  font-size: .76rem;
  font-weight: 800;
  text-transform: capitalize;
}

.document-type-v536 {
  background: #f1f5f9;
  color: #334155;
}

.document-status-v536 {
  background: #ecfdf5;
  color: #047857;
}

.document-card-v536.status-draft .document-status-v536,
.document-card-v536.status-needs_review .document-status-v536,
.document-card-v536.status-pending .document-status-v536 {
  background: #fff7ed;
  color: #c2410c;
}

.document-card-v536 h3 {
  margin: 0;
  font-size: 1.1rem;
}

.document-card-v536 p {
  margin: 0;
}

.document-meta-v536 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}

.document-meta-v536 span {
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 14px;
  padding: .7rem;
  background: #f8fafc;
}

.document-actions-v536 {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.documents-sidebar-v536,
.document-editor-side-v536 {
  display: grid;
  gap: .85rem;
}

.documents-next-v536,
.documents-guide-v536,
.document-editor-side-v536 .panel {
  padding: 1rem;
}

.documents-guide-v536 ul,
.document-editor-side-v536 ul {
  margin: .6rem 0 0;
  padding-left: 1.1rem;
}

.document-editor-v536 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
}

.document-field-v536,
.document-checkbox-v536 {
  display: grid;
  gap: .4rem;
}

.document-field-v536 span,
.document-checkbox-v536 span strong {
  font-weight: 800;
}

.document-field-v536 small,
.document-checkbox-v536 small {
  display: block;
  color: var(--muted, #64748b);
  font-weight: 600;
}

.document-field-v536 input,
.document-field-v536 select,
.document-field-v536 textarea {
  width: 100%;
  border: 1px solid var(--border, #dbe3ef);
  border-radius: 14px;
  padding: .78rem .85rem;
  background: #fff;
}

.document-field-v536 textarea {
  resize: vertical;
}

.document-checkbox-v536 {
  grid-template-columns: auto 1fr;
  align-items: start;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 16px;
  padding: .9rem;
  background: #f8fafc;
}

.document-checkbox-v536 input {
  margin-top: .2rem;
}

.document-save-bar-v536 {
  display: flex;
  justify-content: flex-end;
  gap: .65rem;
  border-top: 1px solid var(--border, #e5e7eb);
  padding-top: 1rem;
}

.document-delete-v536 {
  border-color: #fecaca !important;
}

.span-2 {
  grid-column: span 2;
}

@media (max-width: 980px) {
  .documents-layout-v536,
  .document-editor-layout-v536 {
    grid-template-columns: 1fr;
  }

  .documents-stats-v536 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .documents-hero-v536,
  .document-record-hero-v536 {
    flex-direction: column;
  }

  .documents-actions-v536 {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .documents-stats-v536,
  .document-editor-v536,
  .document-meta-v536 {
    grid-template-columns: 1fr;
  }

  .span-2 {
    grid-column: span 1;
  }

  .documents-actions-v536,
  .document-actions-v536,
  .document-save-bar-v536 {
    flex-direction: column;
  }

  .documents-actions-v536 .button,
  .document-actions-v536 .button,
  .document-save-bar-v536 .button {
    width: 100%;
    text-align: center;
  }
}

/* RankPJ 5.3.7 Onboarding UI/UX Cleanup */
.onboarding-page-v537,
.onboarding-record-page-v537 { padding-bottom: 3rem; }

.onboarding-hero-v537,
.onboarding-task-hero-v537 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 24px;
}
.onboarding-hero-copy-v537 { max-width: 760px; }
.onboarding-hero-copy-v537 h1,
.onboarding-task-hero-v537 h1 { margin-bottom: .45rem; }
.onboarding-hero-copy-v537 p,
.onboarding-task-hero-v537 p { color: var(--muted, #64748b); line-height: 1.6; margin: 0; }
.onboarding-readiness-v537 {
  min-width: 190px;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 22px;
  padding: 1rem;
  background: linear-gradient(180deg, #f8fafc, #fff);
  text-align: center;
}
.onboarding-readiness-v537 span,
.onboarding-stats-v537 span,
.onboarding-section-heading-v537 .eyebrow,
.onboarding-guide-v537 .eyebrow { color: var(--muted, #64748b); }
.onboarding-readiness-v537 strong { display: block; font-size: 2.4rem; line-height: 1; margin: .35rem 0; color: var(--text, #0f172a); }
.onboarding-readiness-v537 small { color: var(--muted, #64748b); }

.onboarding-stats-v537 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.onboarding-stats-v537 article {
  background: var(--panel, #fff);
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 20px;
  padding: 1rem;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .055);
}
.onboarding-stats-v537 span { display: block; font-size: .76rem; letter-spacing: .07em; text-transform: uppercase; font-weight: 800; }
.onboarding-stats-v537 strong { display: block; font-size: 2rem; line-height: 1; margin: .45rem 0 .28rem; color: var(--text, #0f172a); }
.onboarding-stats-v537 small { color: var(--muted, #64748b); }

.onboarding-layout-v537,
.onboarding-editor-layout-v537 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 1rem;
  align-items: start;
}
.onboarding-primary-v537,
.onboarding-sidebar-v537,
.onboarding-editor-side-v537 { display: grid; gap: 1rem; }

.onboarding-next-v537 {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
}
.onboarding-next-v537 h2,
.onboarding-guide-v537 h2,
.onboarding-editor-side-v537 h2 { margin: .25rem 0 .4rem; }
.onboarding-next-v537 p { color: var(--muted, #64748b); line-height: 1.6; margin: 0; }
.onboarding-next-meta-v537 { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .85rem; }
.onboarding-next-meta-v537 span {
  border: 1px solid var(--border, #e5e7eb);
  background: #f8fafc;
  border-radius: 999px;
  padding: .35rem .65rem;
  font-size: .85rem;
  text-transform: capitalize;
}
.onboarding-hero-actions-v537 { display: flex; gap: .65rem; flex-wrap: wrap; align-items: center; justify-content: flex-end; }
.onboarding-hero-actions-v537 form { margin: 0; }

.onboarding-pillars-v537 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .8rem;
}
.onboarding-pillars-v537 article {
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 18px;
  padding: .85rem;
  background: #fff;
}
.onboarding-pillars-v537 article > div:first-child { display: flex; justify-content: space-between; gap: .5rem; align-items: center; }
.onboarding-pillars-v537 span { color: var(--muted, #64748b); font-weight: 800; text-transform: capitalize; }
.onboarding-pillars-v537 strong { color: var(--text, #0f172a); }
.onboarding-progress-v537 {
  height: .55rem;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
  margin: .75rem 0 .45rem;
}
.onboarding-progress-v537 span { display: block; height: 100%; background: #2563eb; border-radius: 999px; }
.onboarding-pillars-v537 small { color: var(--muted, #64748b); }

.onboarding-section-heading-v537 { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; margin-bottom: 1rem; }
.onboarding-section-heading-v537 h2 { margin: .25rem 0 .35rem; }
.onboarding-card-list-v537 { display: grid; gap: .9rem; }
.onboarding-card-v537 {
  border: 1px solid var(--border, #e5e7eb);
  border-left: 5px solid #cbd5e1;
  border-radius: 22px;
  padding: 1rem;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98));
  box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}
.onboarding-card-v537.priority-high,
.onboarding-card-v537.priority-urgent,
.onboarding-card-v537.status-missing { border-left-color: #f97316; }
.onboarding-card-v537.status-requested { border-left-color: #3b82f6; }
.onboarding-card-v537.status-received,
.onboarding-card-v537.status-in_review { border-left-color: #a855f7; }
.onboarding-card-v537.status-completed,
.onboarding-card-v537.status-not_needed { border-left-color: #22c55e; }
.onboarding-card-main-v537 { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.onboarding-card-main-v537 h3 { margin: .3rem 0 .35rem; font-size: 1.08rem; line-height: 1.25; }
.onboarding-card-main-v537 p { margin: 0; color: var(--muted, #64748b); line-height: 1.55; }
.onboarding-category-v537,
.onboarding-status-v537 {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 800;
  text-transform: capitalize;
}
.onboarding-category-v537 { padding: .24rem .58rem; border: 1px solid var(--border, #e5e7eb); color: #475569; background: #fff; }
.onboarding-status-v537 { white-space: nowrap; padding: .34rem .7rem; background: #fef3c7; color: #92400e; }
.status-requested .onboarding-status-v537 { background: #dbeafe; color: #1d4ed8; }
.status-received .onboarding-status-v537,
.status-in_review .onboarding-status-v537 { background: #f3e8ff; color: #7e22ce; }
.status-completed .onboarding-status-v537,
.status-not_needed .onboarding-status-v537 { background: #dcfce7; color: #166534; }
.onboarding-next-action-v537 {
  margin: .9rem 0;
  border: 1px solid #dbeafe;
  background: #eff6ff;
  color: #1e3a8a;
  border-radius: 16px;
  padding: .75rem .85rem;
  line-height: 1.5;
}
.onboarding-meta-v537 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
  margin: .95rem 0;
}
.onboarding-meta-v537 span {
  border: 1px solid var(--border, #e5e7eb);
  background: #f8fafc;
  border-radius: 14px;
  padding: .62rem;
}
.onboarding-meta-v537 small { display: block; color: var(--muted, #64748b); font-size: .72rem; letter-spacing: .05em; text-transform: uppercase; font-weight: 800; }
.onboarding-meta-v537 strong { display: block; color: var(--text, #0f172a); margin-top: .12rem; text-transform: capitalize; font-size: .88rem; }
.onboarding-card-actions-v537 { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; }
.onboarding-card-actions-v537 form { margin: 0; }

.onboarding-empty-v537 {
  text-align: center;
  border: 1px dashed var(--border, #cbd5e1);
  border-radius: 22px;
  padding: 2rem 1rem;
  background: #f8fafc;
}
.onboarding-empty-icon-v537 {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: #dbeafe;
  color: #1d4ed8;
  font-weight: 900;
  margin-bottom: .75rem;
}
.onboarding-empty-v537 p { max-width: 620px; margin: .5rem auto 1rem; color: var(--muted, #64748b); }
.onboarding-guide-v537 ol,
.onboarding-editor-side-v537 ul { margin: .75rem 0 0; padding-left: 1.2rem; color: var(--muted, #64748b); line-height: 1.7; }
.onboarding-side-actions-v537 { display: grid; gap: .5rem; margin-top: .8rem; }

.onboarding-editor-v537 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.onboarding-form-section-v537 { grid-column: 1 / -1; }
.onboarding-form-section-v537 h2 { margin: .25rem 0 0; }
.onboarding-field-v537 { display: grid; gap: .4rem; }
.onboarding-field-v537 span { font-weight: 800; color: var(--text, #0f172a); }
.onboarding-field-v537 small { color: var(--muted, #64748b); font-weight: 700; }
.onboarding-field-v537 input,
.onboarding-field-v537 select,
.onboarding-field-v537 textarea {
  width: 100%;
  border: 1px solid var(--border, #dbe3ef);
  border-radius: 14px;
  padding: .78rem .88rem;
  background: #fff;
  color: var(--text, #0f172a);
}
.onboarding-field-v537 textarea { resize: vertical; }
.onboarding-field-v537.span-2,
.onboarding-save-bar-v537.span-2 { grid-column: 1 / -1; }
.onboarding-save-bar-v537 { display: flex; justify-content: flex-end; gap: .65rem; border-top: 1px solid var(--border, #e5e7eb); padding-top: 1rem; }
.onboarding-delete-v537 { border-color: #fecaca; }
.onboarding-delete-v537 h2 { color: #991b1b; }

@media (max-width: 1100px) {
  .onboarding-pillars-v537 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .onboarding-layout-v537,
  .onboarding-editor-layout-v537 { grid-template-columns: 1fr; }
  .onboarding-stats-v537 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .onboarding-hero-v537,
  .onboarding-task-hero-v537,
  .onboarding-next-v537,
  .onboarding-section-heading-v537 { display: block; }
  .onboarding-hero-actions-v537 { justify-content: flex-start; margin-top: 1rem; }
  .onboarding-stats-v537,
  .onboarding-pillars-v537,
  .onboarding-meta-v537,
  .onboarding-editor-v537 { grid-template-columns: 1fr; }
  .onboarding-field-v537.span-2,
  .onboarding-save-bar-v537.span-2 { grid-column: auto; }
  .onboarding-card-main-v537 { display: block; }
  .onboarding-status-v537 { margin-top: .7rem; }
  .onboarding-save-bar-v537 { justify-content: stretch; flex-direction: column; }
  .onboarding-save-bar-v537 .button { width: 100%; text-align: center; justify-content: center; }
}

/* RankPJ 5.3.8 Follow-Ups UI/UX Cleanup */
.rp-clean-hero{display:flex;justify-content:space-between;gap:1.25rem;align-items:flex-start;margin-bottom:1rem}.rp-clean-hero h1{margin:.2rem 0 .35rem}.rp-clean-actions,.rp-clean-inline-actions,.rp-clean-empty-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.rp-clean-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem;margin:1rem 0}.rp-clean-metric{min-height:105px}.rp-clean-next-action{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem}.rp-clean-next-action h2{margin:.15rem 0 .35rem}.rp-clean-panel{margin-top:1rem}.rp-clean-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.rp-clean-empty{text-align:left;padding:2rem;border:1px dashed rgba(148,163,184,.45);border-radius:18px;background:rgba(248,250,252,.72)}.rp-followup-card-list{display:grid;gap:.9rem}.rp-followup-card{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:1rem;padding:1.1rem;border:1px solid rgba(148,163,184,.28);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.92));box-shadow:0 10px 26px rgba(15,23,42,.055)}.rp-followup-card.priority-high,.rp-followup-card.priority-urgent{border-color:rgba(245,158,11,.45)}.rp-followup-title-row{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.rp-followup-title-row h3{margin:.1rem 0 .3rem}.rp-followup-description{margin:.45rem 0}.rp-followup-message-preview{margin-top:.75rem;padding:.85rem;border-radius:16px;background:rgba(241,245,249,.75);border:1px solid rgba(203,213,225,.55)}.rp-followup-message-preview strong{display:block;margin-bottom:.3rem}.rp-followup-message-preview p{margin:0;color:#475569;line-height:1.55}.rp-followup-card-side{display:flex;flex-direction:column;justify-content:space-between;gap:1rem}.rp-followup-meta-stack{display:grid;gap:.55rem}.rp-followup-meta-stack span{display:flex;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;border-radius:12px;background:rgba(255,255,255,.78);border:1px solid rgba(226,232,240,.85);font-size:.92rem}.rp-followup-meta-stack strong{color:#475569;font-weight:700}.rp-followup-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.rp-clean-two-column{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:1rem;align-items:start}.rp-form-section-heading{border-bottom:1px solid rgba(226,232,240,.85);padding-bottom:.8rem;margin-bottom:.25rem}.rp-form-section-heading h2{margin:.15rem 0 .25rem}.rp-followup-clean-form label span{font-weight:700;color:#334155}.rp-copy-writing-field textarea{font-size:1rem;line-height:1.6}.rp-followup-helper-panel{position:sticky;top:1rem}.rp-followup-helper-panel h2{margin:.2rem 0 .45rem}.rp-helper-checklist{display:grid;gap:.55rem;margin-top:1rem}.rp-helper-checklist span{padding:.7rem .75rem;border-radius:14px;background:rgba(240,253,244,.65);border:1px solid rgba(187,247,208,.75);color:#166534;font-weight:700}.rp-copy-panel-mini{margin-top:1rem}.rp-copy-panel-mini textarea{width:100%;margin-top:.55rem;border-radius:14px;background:#f8fafc}.rp-delete-panel{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;border-color:rgba(248,113,113,.35)}
@media (max-width: 980px){.rp-clean-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-followup-card,.rp-clean-two-column{grid-template-columns:1fr}.rp-followup-card-side{border-top:1px solid rgba(226,232,240,.85);padding-top:.9rem}.rp-followup-card-actions{justify-content:flex-start}.rp-followup-helper-panel{position:static}.rp-clean-next-action,.rp-clean-hero{flex-direction:column;align-items:stretch}}@media (max-width: 620px){.rp-clean-summary-grid{grid-template-columns:1fr}.rp-followup-title-row,.rp-clean-heading,.rp-delete-panel{flex-direction:column;align-items:flex-start}.rp-clean-actions .button,.rp-clean-inline-actions .button,.rp-clean-empty-actions .button{width:100%;text-align:center}.rp-clean-inline-actions form,.rp-clean-empty-actions form{width:100%}.rp-followup-meta-stack span{display:grid;gap:.2rem}.rp-followup-card{padding:.9rem;border-radius:16px}}


/* RankPJ 5.3.9 Client Portal Visibility and UI Cleanup */
.portal-callout-v539{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:20px;border:1px solid #dbeafe;background:linear-gradient(135deg,#eff6ff,#ffffff);border-radius:22px;box-shadow:0 12px 34px rgba(37,99,235,.08)}
.portal-callout-v539 h3{margin:2px 0 6px;font-size:22px;color:#0f172a}.portal-callout-v539 p{margin:0;color:#475569;line-height:1.55;max-width:780px}.workspace-action-strip-v539{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.workspace-nav-v539 .project-workspace-nav-menu a[href$="/portal"]{font-weight:900;background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.client-portal-body-v539{background:#f8fafc;color:#0f172a}.portal-shell-v539{max-width:1180px;margin:0 auto;padding:28px 18px 46px}.portal-hero-v539{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:26px;padding:28px;box-shadow:0 18px 44px rgba(15,23,42,.07)}.portal-hero-v539 h1{margin:0;font-size:clamp(32px,4vw,52px);line-height:1.02}.portal-hero-v539 p{max-width:720px;color:#475569;line-height:1.65;margin:12px 0 0}.portal-score-v539{min-width:170px;text-align:center;background:#0f172a;color:#fff;border-radius:22px;padding:20px}.portal-score-v539 span,.portal-score-v539 small{display:block;color:#cbd5e1;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.06em}.portal-score-v539 strong{display:block;font-size:42px;margin:8px 0;color:#fff}.portal-action-strip-v539{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.portal-action-strip-v539 a,.portal-action-strip-v539 button{display:block;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:16px;text-decoration:none;color:#0f172a;box-shadow:0 10px 28px rgba(15,23,42,.05);cursor:pointer;font:inherit}.portal-action-strip-v539 strong,.portal-action-strip-v539 small{display:block}.portal-action-strip-v539 small{color:#64748b;margin-top:4px}.portal-grid-v539{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:14px;margin:18px 0}.portal-card-v539,.portal-panel-v539,.portal-pillars-v539 article{background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:20px;box-shadow:0 12px 34px rgba(15,23,42,.06)}.portal-card-v539 span{display:block;color:#64748b;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.06em}.portal-card-v539 strong{display:block;font-size:34px;margin:8px 0;color:#0f172a}.portal-card-v539 small{color:#64748b}.portal-card-main-v539 h2{margin:3px 0 10px}.portal-card-main-v539 p{color:#475569;line-height:1.6}.portal-mini-actions-v539{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.portal-two-col-v539{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.portal-panel-head-v539{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.portal-panel-head-v539 h2{margin:0}.portal-panel-head-v539 a{font-weight:800}.portal-list-v539{display:grid;gap:10px}.portal-list-item-v539{display:flex;justify-content:space-between;gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:15px;padding:12px}.portal-list-item-v539 small{color:#64748b;text-align:right}.portal-empty-v539{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:18px;padding:18px;color:#64748b}.portal-pillars-v539{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.portal-pillars-v539 span{font-weight:900;color:#0f172a}.portal-pillars-v539 p{color:#64748b;line-height:1.5}.portal-helper-shell-v539{min-height:100vh;display:grid;place-items:center;background:#f8fafc;padding:24px}.portal-helper-card-v539{max-width:760px;width:100%;background:#fff;border:1px solid #e2e8f0;border-radius:26px;padding:28px;box-shadow:0 18px 44px rgba(15,23,42,.08)}.portal-helper-card-v539 h1{margin:0 0 12px;font-size:clamp(30px,4vw,48px)}.portal-helper-card-v539 p{color:#475569;line-height:1.65}.portal-helper-next-v539{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;padding:18px;margin:18px 0}.portal-helper-next-v539 code{display:inline-block;background:#e2e8f0;border-radius:999px;padding:6px 10px;margin:4px;font-size:13px}.portal-helper-actions-v539{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}@media(max-width:850px){.portal-callout-v539,.portal-hero-v539{display:block}.portal-callout-v539 .button{margin-top:14px}.portal-score-v539{margin-top:18px}.portal-action-strip-v539,.portal-grid-v539,.portal-two-col-v539,.portal-pillars-v539{grid-template-columns:1fr}.portal-list-item-v539{display:block}.portal-list-item-v539 small{text-align:left;display:block;margin-top:4px}}

/* RankPJ 5.4.0 Client Workspace Dashboard Final Cleanup */
.workspace-final-v540{margin:22px 0 30px;display:grid;gap:18px}.workspace-final-hero-v540{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px;border:1px solid #e2e8f0;background:linear-gradient(135deg,#ffffff,#f8fafc);border-radius:26px;box-shadow:0 18px 44px rgba(15,23,42,.07)}.workspace-final-hero-copy-v540 h2{font-size:clamp(30px,4vw,48px);line-height:1.03;margin:4px 0 10px;color:#0f172a}.workspace-final-hero-copy-v540 p{margin:0;max-width:780px;color:#475569;line-height:1.6}.workspace-final-score-v540{min-width:148px;text-align:center;border-radius:24px;padding:18px;background:#0f172a;color:#fff}.workspace-final-score-v540 span,.workspace-final-score-v540 small{display:block;color:#cbd5e1;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.06em}.workspace-final-score-v540 strong{display:block;color:#fff;font-size:40px;line-height:1;margin:8px 0}.workspace-final-priority-v540{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.priority-card-v540{display:block;text-decoration:none;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:20px;box-shadow:0 12px 34px rgba(15,23,42,.055);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.priority-card-v540:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(15,23,42,.09);border-color:#bfdbfe}.priority-card-v540 span{display:inline-block;font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:5px 9px;margin-bottom:12px}.priority-card-v540 strong{display:block;font-size:18px;margin-bottom:7px}.priority-card-v540 small{display:block;color:#64748b;line-height:1.45}.priority-card-v540.urgent{border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,#ffffff)}.priority-card-v540.urgent span{color:#c2410c;background:#ffedd5;border-color:#fed7aa}.workspace-final-flow-v540{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workspace-final-flow-v540 article{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:22px;box-shadow:0 12px 34px rgba(15,23,42,.055)}.workspace-final-flow-v540 h3{margin:2px 0 8px;font-size:22px;color:#0f172a}.workspace-final-flow-v540 p{margin:0;color:#64748b;line-height:1.5;max-width:520px}.workspace-mini-links-v540{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;min-width:245px}.workspace-mini-links-v540 a{display:inline-block;text-decoration:none;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 11px;font-weight:800;font-size:13px}.workspace-mini-links-v540 a:hover{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.workspace-final-note-v540{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;padding:14px 18px;color:#475569}.workspace-final-note-v540 strong{color:#0f172a}.workspace-section-grid,.workspace-action-strip{display:none!important}@media(max-width:1050px){.workspace-final-priority-v540{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-final-flow-v540{grid-template-columns:1fr}.workspace-final-flow-v540 article{display:block}.workspace-mini-links-v540{justify-content:flex-start;margin-top:16px;min-width:0}}@media(max-width:720px){.workspace-final-hero-v540{display:block;padding:20px}.workspace-final-score-v540{margin-top:16px}.workspace-final-priority-v540{grid-template-columns:1fr}.workspace-final-flow-v540 article{padding:18px}.workspace-mini-links-v540 a{font-size:12px}.workspace-final-note-v540{display:block}}

/* RankPJ 5.3.8 Follow-Ups UI/UX Cleanup */
.rp-clean-hero{display:flex;justify-content:space-between;gap:1.25rem;align-items:flex-start;margin-bottom:1rem}.rp-clean-hero h1{margin:.2rem 0 .35rem}.rp-clean-actions,.rp-clean-inline-actions,.rp-clean-empty-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.rp-clean-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem;margin:1rem 0}.rp-clean-metric{min-height:105px}.rp-clean-next-action{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem}.rp-clean-next-action h2{margin:.15rem 0 .35rem}.rp-clean-panel{margin-top:1rem}.rp-clean-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.rp-clean-empty{text-align:left;padding:2rem;border:1px dashed rgba(148,163,184,.45);border-radius:18px;background:rgba(248,250,252,.72)}.rp-followup-card-list{display:grid;gap:.9rem}.rp-followup-card{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:1rem;padding:1.1rem;border:1px solid rgba(148,163,184,.28);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.92));box-shadow:0 10px 26px rgba(15,23,42,.055)}.rp-followup-card.priority-high,.rp-followup-card.priority-urgent{border-color:rgba(245,158,11,.45)}.rp-followup-title-row{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.rp-followup-title-row h3{margin:.1rem 0 .3rem}.rp-followup-description{margin:.45rem 0}.rp-followup-message-preview{margin-top:.75rem;padding:.85rem;border-radius:16px;background:rgba(241,245,249,.75);border:1px solid rgba(203,213,225,.55)}.rp-followup-message-preview strong{display:block;margin-bottom:.3rem}.rp-followup-message-preview p{margin:0;color:#475569;line-height:1.55}.rp-followup-card-side{display:flex;flex-direction:column;justify-content:space-between;gap:1rem}.rp-followup-meta-stack{display:grid;gap:.55rem}.rp-followup-meta-stack span{display:flex;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;border-radius:12px;background:rgba(255,255,255,.78);border:1px solid rgba(226,232,240,.85);font-size:.92rem}.rp-followup-meta-stack strong{color:#475569;font-weight:700}.rp-followup-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.rp-clean-two-column{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:1rem;align-items:start}.rp-form-section-heading{border-bottom:1px solid rgba(226,232,240,.85);padding-bottom:.8rem;margin-bottom:.25rem}.rp-form-section-heading h2{margin:.15rem 0 .25rem}.rp-followup-clean-form label span{font-weight:700;color:#334155}.rp-copy-writing-field textarea{font-size:1rem;line-height:1.6}.rp-followup-helper-panel{position:sticky;top:1rem}.rp-followup-helper-panel h2{margin:.2rem 0 .45rem}.rp-helper-checklist{display:grid;gap:.55rem;margin-top:1rem}.rp-helper-checklist span{padding:.7rem .75rem;border-radius:14px;background:rgba(240,253,244,.65);border:1px solid rgba(187,247,208,.75);color:#166534;font-weight:700}.rp-copy-panel-mini{margin-top:1rem}.rp-copy-panel-mini textarea{width:100%;margin-top:.55rem;border-radius:14px;background:#f8fafc}.rp-delete-panel{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;border-color:rgba(248,113,113,.35)}
@media (max-width: 980px){.rp-clean-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-followup-card,.rp-clean-two-column{grid-template-columns:1fr}.rp-followup-card-side{border-top:1px solid rgba(226,232,240,.85);padding-top:.9rem}.rp-followup-card-actions{justify-content:flex-start}.rp-followup-helper-panel{position:static}.rp-clean-next-action,.rp-clean-hero{flex-direction:column;align-items:stretch}}@media (max-width: 620px){.rp-clean-summary-grid{grid-template-columns:1fr}.rp-followup-title-row,.rp-clean-heading,.rp-delete-panel{flex-direction:column;align-items:flex-start}.rp-clean-actions .button,.rp-clean-inline-actions .button,.rp-clean-empty-actions .button{width:100%;text-align:center}.rp-clean-inline-actions form,.rp-clean-empty-actions form{width:100%}.rp-followup-meta-stack span{display:grid;gap:.2rem}.rp-followup-card{padding:.9rem;border-radius:16px}}
/* RankPJ 5.3.7 Onboarding UI/UX Cleanup */
.onboarding-page-v537,
.onboarding-record-page-v537 { padding-bottom: 3rem; }

.onboarding-hero-v537,
.onboarding-task-hero-v537 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 24px;
}
.onboarding-hero-copy-v537 { max-width: 760px; }
.onboarding-hero-copy-v537 h1,
.onboarding-task-hero-v537 h1 { margin-bottom: .45rem; }
.onboarding-hero-copy-v537 p,
.onboarding-task-hero-v537 p { color: var(--muted, #64748b); line-height: 1.6; margin: 0; }
.onboarding-readiness-v537 {
  min-width: 190px;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 22px;
  padding: 1rem;
  background: linear-gradient(180deg, #f8fafc, #fff);
  text-align: center;
}
.onboarding-readiness-v537 span,
.onboarding-stats-v537 span,
.onboarding-section-heading-v537 .eyebrow,
.onboarding-guide-v537 .eyebrow { color: var(--muted, #64748b); }
.onboarding-readiness-v537 strong { display: block; font-size: 2.4rem; line-height: 1; margin: .35rem 0; color: var(--text, #0f172a); }
.onboarding-readiness-v537 small { color: var(--muted, #64748b); }

.onboarding-stats-v537 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.onboarding-stats-v537 article {
  background: var(--panel, #fff);
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 20px;
  padding: 1rem;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .055);
}
.onboarding-stats-v537 span { display: block; font-size: .76rem; letter-spacing: .07em; text-transform: uppercase; font-weight: 800; }
.onboarding-stats-v537 strong { display: block; font-size: 2rem; line-height: 1; margin: .45rem 0 .28rem; color: var(--text, #0f172a); }
.onboarding-stats-v537 small { color: var(--muted, #64748b); }

.onboarding-layout-v537,
.onboarding-editor-layout-v537 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 1rem;
  align-items: start;
}
.onboarding-primary-v537,
.onboarding-sidebar-v537,
.onboarding-editor-side-v537 { display: grid; gap: 1rem; }

.onboarding-next-v537 {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
}
.onboarding-next-v537 h2,
.onboarding-guide-v537 h2,
.onboarding-editor-side-v537 h2 { margin: .25rem 0 .4rem; }
.onboarding-next-v537 p { color: var(--muted, #64748b); line-height: 1.6; margin: 0; }
.onboarding-next-meta-v537 { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .85rem; }
.onboarding-next-meta-v537 span {
  border: 1px solid var(--border, #e5e7eb);
  background: #f8fafc;
  border-radius: 999px;
  padding: .35rem .65rem;
  font-size: .85rem;
  text-transform: capitalize;
}
.onboarding-hero-actions-v537 { display: flex; gap: .65rem; flex-wrap: wrap; align-items: center; justify-content: flex-end; }
.onboarding-hero-actions-v537 form { margin: 0; }

.onboarding-pillars-v537 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .8rem;
}
.onboarding-pillars-v537 article {
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 18px;
  padding: .85rem;
  background: #fff;
}
.onboarding-pillars-v537 article > div:first-child { display: flex; justify-content: space-between; gap: .5rem; align-items: center; }
.onboarding-pillars-v537 span { color: var(--muted, #64748b); font-weight: 800; text-transform: capitalize; }
.onboarding-pillars-v537 strong { color: var(--text, #0f172a); }
.onboarding-progress-v537 {
  height: .55rem;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
  margin: .75rem 0 .45rem;
}
.onboarding-progress-v537 span { display: block; height: 100%; background: #2563eb; border-radius: 999px; }
.onboarding-pillars-v537 small { color: var(--muted, #64748b); }

.onboarding-section-heading-v537 { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; margin-bottom: 1rem; }
.onboarding-section-heading-v537 h2 { margin: .25rem 0 .35rem; }
.onboarding-card-list-v537 { display: grid; gap: .9rem; }
.onboarding-card-v537 {
  border: 1px solid var(--border, #e5e7eb);
  border-left: 5px solid #cbd5e1;
  border-radius: 22px;
  padding: 1rem;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98));
  box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}
.onboarding-card-v537.priority-high,
.onboarding-card-v537.priority-urgent,
.onboarding-card-v537.status-missing { border-left-color: #f97316; }
.onboarding-card-v537.status-requested { border-left-color: #3b82f6; }
.onboarding-card-v537.status-received,
.onboarding-card-v537.status-in_review { border-left-color: #a855f7; }
.onboarding-card-v537.status-completed,
.onboarding-card-v537.status-not_needed { border-left-color: #22c55e; }
.onboarding-card-main-v537 { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.onboarding-card-main-v537 h3 { margin: .3rem 0 .35rem; font-size: 1.08rem; line-height: 1.25; }
.onboarding-card-main-v537 p { margin: 0; color: var(--muted, #64748b); line-height: 1.55; }
.onboarding-category-v537,
.onboarding-status-v537 {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 800;
  text-transform: capitalize;
}
.onboarding-category-v537 { padding: .24rem .58rem; border: 1px solid var(--border, #e5e7eb); color: #475569; background: #fff; }
.onboarding-status-v537 { white-space: nowrap; padding: .34rem .7rem; background: #fef3c7; color: #92400e; }
.status-requested .onboarding-status-v537 { background: #dbeafe; color: #1d4ed8; }
.status-received .onboarding-status-v537,
.status-in_review .onboarding-status-v537 { background: #f3e8ff; color: #7e22ce; }
.status-completed .onboarding-status-v537,
.status-not_needed .onboarding-status-v537 { background: #dcfce7; color: #166534; }
.onboarding-next-action-v537 {
  margin: .9rem 0;
  border: 1px solid #dbeafe;
  background: #eff6ff;
  color: #1e3a8a;
  border-radius: 16px;
  padding: .75rem .85rem;
  line-height: 1.5;
}
.onboarding-meta-v537 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
  margin: .95rem 0;
}
.onboarding-meta-v537 span {
  border: 1px solid var(--border, #e5e7eb);
  background: #f8fafc;
  border-radius: 14px;
  padding: .62rem;
}
.onboarding-meta-v537 small { display: block; color: var(--muted, #64748b); font-size: .72rem; letter-spacing: .05em; text-transform: uppercase; font-weight: 800; }
.onboarding-meta-v537 strong { display: block; color: var(--text, #0f172a); margin-top: .12rem; text-transform: capitalize; font-size: .88rem; }
.onboarding-card-actions-v537 { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; }
.onboarding-card-actions-v537 form { margin: 0; }

.onboarding-empty-v537 {
  text-align: center;
  border: 1px dashed var(--border, #cbd5e1);
  border-radius: 22px;
  padding: 2rem 1rem;
  background: #f8fafc;
}
.onboarding-empty-icon-v537 {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: #dbeafe;
  color: #1d4ed8;
  font-weight: 900;
  margin-bottom: .75rem;
}
.onboarding-empty-v537 p { max-width: 620px; margin: .5rem auto 1rem; color: var(--muted, #64748b); }
.onboarding-guide-v537 ol,
.onboarding-editor-side-v537 ul { margin: .75rem 0 0; padding-left: 1.2rem; color: var(--muted, #64748b); line-height: 1.7; }
.onboarding-side-actions-v537 { display: grid; gap: .5rem; margin-top: .8rem; }

.onboarding-editor-v537 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.onboarding-form-section-v537 { grid-column: 1 / -1; }
.onboarding-form-section-v537 h2 { margin: .25rem 0 0; }
.onboarding-field-v537 { display: grid; gap: .4rem; }
.onboarding-field-v537 span { font-weight: 800; color: var(--text, #0f172a); }
.onboarding-field-v537 small { color: var(--muted, #64748b); font-weight: 700; }
.onboarding-field-v537 input,
.onboarding-field-v537 select,
.onboarding-field-v537 textarea {
  width: 100%;
  border: 1px solid var(--border, #dbe3ef);
  border-radius: 14px;
  padding: .78rem .88rem;
  background: #fff;
  color: var(--text, #0f172a);
}
.onboarding-field-v537 textarea { resize: vertical; }
.onboarding-field-v537.span-2,
.onboarding-save-bar-v537.span-2 { grid-column: 1 / -1; }
.onboarding-save-bar-v537 { display: flex; justify-content: flex-end; gap: .65rem; border-top: 1px solid var(--border, #e5e7eb); padding-top: 1rem; }
.onboarding-delete-v537 { border-color: #fecaca; }
.onboarding-delete-v537 h2 { color: #991b1b; }

@media (max-width: 1100px) {
  .onboarding-pillars-v537 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .onboarding-layout-v537,
  .onboarding-editor-layout-v537 { grid-template-columns: 1fr; }
  .onboarding-stats-v537 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .onboarding-hero-v537,
  .onboarding-task-hero-v537,
  .onboarding-next-v537,
  .onboarding-section-heading-v537 { display: block; }
  .onboarding-hero-actions-v537 { justify-content: flex-start; margin-top: 1rem; }
  .onboarding-stats-v537,
  .onboarding-pillars-v537,
  .onboarding-meta-v537,
  .onboarding-editor-v537 { grid-template-columns: 1fr; }
  .onboarding-field-v537.span-2,
  .onboarding-save-bar-v537.span-2 { grid-column: auto; }
  .onboarding-card-main-v537 { display: block; }
  .onboarding-status-v537 { margin-top: .7rem; }
  .onboarding-save-bar-v537 { justify-content: stretch; flex-direction: column; }
  .onboarding-save-bar-v537 .button { width: 100%; text-align: center; justify-content: center; }
}

/* RankPJ 5.4.4 Follow-Ups, Onboarding, and Dropdown Navigation Fix */
.rp-followups-clean-page .rp-clean-hero,
.onboarding-page-v537 .onboarding-hero-v537 {
  overflow: visible;
}
.project-workspace-nav-v544 + .panel,
.project-workspace-nav-v544 + section {
  clear: both;
}
.rp-followup-card-list,
.onboarding-list-v537 {
  position: relative;
  z-index: 1;
}

/* RankPJ 5.4.5 Follow-Ups Professional UI Redesign */
.rp-followup-pro-page,
.rp-followup-composer-page {
  --rp-fu-ink: #111827;
  --rp-fu-muted: #64748b;
  --rp-fu-line: rgba(15, 23, 42, .10);
  --rp-fu-soft: #f8fafc;
  --rp-fu-blue: #315cf6;
  --rp-fu-blue-soft: #eef2ff;
  --rp-fu-purple: #7c3aed;
  --rp-fu-green: #0f9f6e;
  --rp-fu-amber: #b7791f;
  --rp-fu-red: #dc2626;
  --rp-fu-shadow: 0 18px 48px rgba(15, 23, 42, .10);
}

.rp-fu-hero,
.rp-fu-composer-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  gap: 24px;
  align-items: stretch;
  padding: 28px;
  border: 1px solid var(--rp-fu-line);
  background:
    radial-gradient(circle at top right, rgba(124, 58, 237, .14), transparent 36%),
    linear-gradient(135deg, #ffffff 0%, #f8fbff 58%, #f3f0ff 100%);
  box-shadow: var(--rp-fu-shadow);
}

.rp-fu-hero h1,
.rp-fu-composer-hero h1 {
  margin: 6px 0 10px;
  letter-spacing: -.04em;
  color: var(--rp-fu-ink);
  font-size: clamp(2rem, 4vw, 3.45rem);
  line-height: .98;
}

.rp-fu-hero p,
.rp-fu-composer-hero p {
  max-width: 760px;
  font-size: 1.02rem;
  color: #475569;
}

.rp-fu-hero-actions,
.rp-fu-composer-actions,
.rp-fu-empty-actions,
.rp-fu-form-actions,
.rp-fu-card-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 18px;
}

.rp-fu-hero-actions form,
.rp-fu-empty-actions form,
.rp-fu-card-actions form {
  margin: 0;
}

.rp-fu-health-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 24px;
  border-radius: 28px;
  color: white;
  background: linear-gradient(135deg, #0f172a, #1e1b4b);
  min-height: 180px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15);
}

.rp-fu-health-card span {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .75rem;
  opacity: .78;
  font-weight: 800;
}

.rp-fu-health-card strong {
  font-size: clamp(2rem, 4vw, 3.15rem);
  line-height: 1;
  letter-spacing: -.05em;
}

.rp-fu-health-card small {
  color: rgba(255,255,255,.82);
  font-weight: 650;
  line-height: 1.45;
}

.rp-fu-health-card.danger { background: linear-gradient(135deg, #991b1b, #4c0519); }
.rp-fu-health-card.warning { background: linear-gradient(135deg, #92400e, #451a03); }
.rp-fu-health-card.success { background: linear-gradient(135deg, #047857, #064e3b); }
.rp-fu-health-card.calm { background: linear-gradient(135deg, #1e293b, #312e81); }

.rp-fu-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}

.rp-fu-metrics article {
  padding: 18px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid var(--rp-fu-line);
  box-shadow: 0 10px 30px rgba(15, 23, 42, .05);
}

.rp-fu-metrics span,
.rp-fu-meta strong {
  display: block;
  color: var(--rp-fu-muted);
  font-size: .76rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.rp-fu-metrics strong {
  display: block;
  margin: 4px 0;
  font-size: 2rem;
  letter-spacing: -.04em;
  color: var(--rp-fu-ink);
}

.rp-fu-metrics small {
  color: var(--rp-fu-muted);
  font-weight: 650;
}

.rp-fu-action-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 340px);
  gap: 18px;
  align-items: center;
  border: 1px solid rgba(49, 92, 246, .12);
  background: linear-gradient(135deg, #ffffff, #f8fbff);
}

.rp-fu-action-panel h2 {
  margin: 0 0 8px;
  font-size: 1.55rem;
  letter-spacing: -.03em;
}

.rp-fu-quicklinks {
  display: grid;
  gap: 10px;
}

.rp-fu-quicklinks a,
.rp-fu-shortcut-card a,
.rp-fu-closed-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--rp-fu-line);
  color: #1e293b;
  font-weight: 800;
  text-decoration: none;
}

.rp-fu-quicklinks a::after,
.rp-fu-shortcut-card a::after { content: '›'; color: var(--rp-fu-blue); font-size: 1.2rem; }

.rp-fu-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.rp-fu-lane {
  min-width: 0;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid var(--rp-fu-line);
  background: rgba(248, 250, 252, .86);
  box-shadow: 0 18px 40px rgba(15, 23, 42, .06);
}

.rp-fu-lane > header {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.rp-fu-lane > header > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 14px;
  background: #111827;
  color: #fff;
  font-weight: 900;
}

.rp-fu-lane h2 {
  margin: 0;
  font-size: 1.05rem;
  letter-spacing: -.02em;
}

.rp-fu-lane p {
  margin: 3px 0 0;
  color: var(--rp-fu-muted);
  font-size: .9rem;
}

.lane-danger > header > span { background: linear-gradient(135deg, #dc2626, #991b1b); }
.lane-success > header > span { background: linear-gradient(135deg, #059669, #047857); }
.lane-work > header > span { background: linear-gradient(135deg, #315cf6, #4338ca); }

.rp-fu-lane-list {
  display: grid;
  gap: 14px;
}

.rp-fu-lane-empty {
  padding: 18px;
  border: 1px dashed rgba(100, 116, 139, .35);
  border-radius: 20px;
  color: var(--rp-fu-muted);
  background: rgba(255,255,255,.65);
  font-weight: 700;
}

.rp-fu-card {
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(15, 23, 42, .09);
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.rp-fu-card.priority-high,
.rp-fu-card.priority-urgent,
.rp-fu-card.status-overdue {
  border-color: rgba(220, 38, 38, .22);
  box-shadow: 0 18px 38px rgba(220, 38, 38, .10);
}

.rp-fu-card-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 10px;
}

.rp-fu-badge,
.rp-fu-status {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.rp-fu-badge { color: #334155; background: #f1f5f9; }
.rp-fu-status { color: #1d4ed8; background: #eff6ff; }
.status-overdue .rp-fu-status { color: #b91c1c; background: #fef2f2; }
.status-drafted .rp-fu-status { color: #047857; background: #ecfdf5; }
.status-done .rp-fu-status,
.status-sent .rp-fu-status { color: #475569; background: #f8fafc; }

.rp-fu-card h3 {
  margin: 0 0 8px;
  color: var(--rp-fu-ink);
  font-size: 1.08rem;
  letter-spacing: -.02em;
}

.rp-fu-card p {
  margin: 0;
  color: #475569;
  line-height: 1.55;
}

.rp-fu-message-preview {
  margin-top: 12px;
  padding: 14px;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, .07);
}

.rp-fu-message-preview strong {
  display: block;
  margin-bottom: 6px;
  color: #334155;
  font-size: .78rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.rp-fu-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

.rp-fu-meta span {
  padding: 10px;
  border-radius: 14px;
  background: #f8fafc;
  color: #1f2937;
  font-weight: 800;
  font-size: .84rem;
}

.rp-fu-card-actions .button.tiny {
  min-height: 34px;
}

.rp-fu-empty-state {
  margin-top: 18px;
  text-align: center;
  padding: 48px 24px;
  border: 1px solid rgba(49, 92, 246, .16);
  background: linear-gradient(135deg, #fff, #f8fbff);
}

.rp-fu-empty-icon {
  width: 70px;
  height: 70px;
  display: grid;
  place-items: center;
  margin: 0 auto 16px;
  border-radius: 26px;
  background: var(--rp-fu-blue-soft);
  color: var(--rp-fu-blue);
  font-size: 2rem;
  font-weight: 900;
}

.rp-fu-closed-panel {
  margin-top: 18px;
}

.rp-fu-closed-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.rp-fu-closed-list a span {
  color: var(--rp-fu-muted);
  font-size: .86rem;
}

.rp-fu-composer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 20px;
  align-items: start;
  margin-top: 18px;
}

.rp-fu-composer-form {
  display: grid;
  gap: 18px;
  border: 1px solid var(--rp-fu-line);
  box-shadow: var(--rp-fu-shadow);
}

.rp-fu-form-section {
  padding: 18px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, .08);
}

.rp-fu-form-section h2,
.rp-fu-quality-card h2,
.rp-fu-preview-card h2 {
  margin: 0 0 8px;
  letter-spacing: -.03em;
}

.rp-fu-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.rp-fu-form-grid .span-2 { grid-column: 1 / -1; }

.rp-fu-composer-form label {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  font-weight: 800;
  color: #334155;
}

.rp-fu-composer-form label span {
  font-size: .88rem;
}

.rp-fu-composer-form input,
.rp-fu-composer-form select,
.rp-fu-composer-form textarea {
  width: 100%;
  border: 1px solid rgba(15, 23, 42, .14);
  border-radius: 16px;
  padding: 12px 14px;
  font: inherit;
  background: #fff;
  color: var(--rp-fu-ink);
}

.rp-fu-composer-form input:focus,
.rp-fu-composer-form select:focus,
.rp-fu-composer-form textarea:focus {
  outline: 3px solid rgba(49, 92, 246, .16);
  border-color: rgba(49, 92, 246, .45);
}

.rp-fu-message-textarea {
  min-height: 240px;
  line-height: 1.55;
}

.rp-fu-composer-side {
  display: grid;
  gap: 16px;
  position: sticky;
  top: 16px;
}

.rp-fu-quality-card,
.rp-fu-preview-card,
.rp-fu-shortcut-card {
  border: 1px solid var(--rp-fu-line);
  box-shadow: 0 14px 36px rgba(15, 23, 42, .06);
}

.rp-fu-checklist {
  display: grid;
  gap: 9px;
  margin-top: 14px;
}

.rp-fu-checklist span {
  padding: 11px 12px 11px 36px;
  border-radius: 14px;
  background: #f8fafc;
  position: relative;
  color: #334155;
  font-weight: 800;
}

.rp-fu-checklist span::before {
  content: '✓';
  position: absolute;
  left: 12px;
  color: var(--rp-fu-green);
  font-weight: 900;
}

.rp-fu-preview-box,
.rp-fu-preview-empty {
  white-space: pre-wrap;
  padding: 16px;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, .08);
  color: #334155;
  line-height: 1.58;
}

.rp-fu-preview-empty {
  color: var(--rp-fu-muted);
  font-weight: 700;
}

.rp-fu-shortcut-card {
  display: grid;
  gap: 9px;
}

.rp-fu-delete-panel {
  margin-top: 18px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  border-color: rgba(220, 38, 38, .20);
  background: #fffafa;
}

@media (max-width: 1100px) {
  .rp-fu-board,
  .rp-fu-metrics,
  .rp-fu-composer-layout,
  .rp-fu-hero,
  .rp-fu-composer-hero,
  .rp-fu-action-panel {
    grid-template-columns: 1fr;
  }
  .rp-fu-composer-side { position: static; }
}

@media (max-width: 720px) {
  .rp-fu-hero,
  .rp-fu-composer-hero,
  .rp-fu-action-panel,
  .rp-fu-composer-form,
  .rp-fu-form-section {
    padding: 16px;
  }
  .rp-fu-form-grid,
  .rp-fu-closed-list,
  .rp-fu-meta {
    grid-template-columns: 1fr;
  }
  .rp-fu-hero-actions,
  .rp-fu-composer-actions,
  .rp-fu-card-actions,
  .rp-fu-empty-actions,
  .rp-fu-form-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .rp-fu-hero-actions .button,
  .rp-fu-hero-actions button,
  .rp-fu-composer-actions .button,
  .rp-fu-empty-actions .button,
  .rp-fu-empty-actions button,
  .rp-fu-form-actions .button,
  .rp-fu-form-actions button {
    width: 100%;
    justify-content: center;
  }
}

/* RankPJ 5.4.6 Business route, overview cleanup, dropdown, and data UI repair */
.project-workspace-nav-v546 {
  margin: 1rem 0 1.35rem;
  padding: .75rem;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 18px;
  background: rgba(255,255,255,.97);
  box-shadow: 0 14px 40px rgba(15,23,42,.06);
  position: relative;
  z-index: 30;
}
.project-workspace-nav-v546__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem;
}
.project-workspace-nav-v546 a,
.project-workspace-nav-v546 summary {
  color: #1f2937;
  text-decoration: none;
  font-weight: 750;
  font-size: .92rem;
}
.project-workspace-nav-v546__overview,
.project-workspace-nav-v546 summary {
  min-height: 2.45rem;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .62rem .86rem;
  border: 1px solid rgba(15,23,42,.09);
  border-radius: 999px;
  background: #f8fafc;
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.project-workspace-nav-v546__overview:hover,
.project-workspace-nav-v546 summary:hover {
  transform: translateY(-1px);
  border-color: rgba(37,99,235,.28);
  background: #fff;
}
.project-workspace-nav-v546__overview.active,
.project-workspace-nav-v546-group[open] > summary,
.project-workspace-nav-v546-group.is-active > summary {
  color: #0f172a;
  border-color: rgba(124,58,237,.38);
  background: linear-gradient(180deg,#f5f3ff,#fff);
  box-shadow: inset 0 0 0 1px rgba(124,58,237,.08);
}
.project-workspace-nav-v546 summary::-webkit-details-marker { display: none; }
.project-workspace-nav-v546 summary small {
  display: inline-grid;
  place-items: center;
  min-width: 1.35rem;
  height: 1.35rem;
  padding: 0 .25rem;
  border-radius: 999px;
  color: #64748b;
  background: #e2e8f0;
  font-size: .72rem;
  font-weight: 800;
}
.project-workspace-nav-v546-group { position: relative; }
.project-workspace-nav-v546-menu {
  position: absolute;
  z-index: 80;
  top: calc(100% + .5rem);
  left: 0;
  width: min(22rem, calc(100vw - 2rem));
  padding: .65rem;
  border: 1px solid rgba(15,23,42,.1);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 60px rgba(15,23,42,.16);
}
.project-workspace-nav-v546-menu__note {
  display: block;
  padding: .25rem .45rem .55rem;
  color: #64748b;
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.project-workspace-nav-v546-menu a {
  display: flex;
  justify-content: space-between;
  gap: .8rem;
  padding: .68rem .75rem;
  border-radius: 12px;
  color: #334155;
  font-weight: 750;
}
.project-workspace-nav-v546-menu a:hover,
.project-workspace-nav-v546-menu a.active {
  color: #0f172a;
  background: #f1f5f9;
}
.project-workspace-nav-v546-menu a.active::after {
  content: 'Current';
  color: #7c3aed;
  font-size: .73rem;
  font-weight: 800;
}

/* Hide old loose project cards accidentally appended by earlier update layers. */
.project-detail-legacy-cards-hidden-v546,
.project-detail-old-dashboard-card-v546,
.project-overview-orphan-card-v546,
.project-detail-orphan-card-v546,
body .dashboard-card.project-overview-orphan-card-v546,
body .dashboard-card.project-detail-orphan-card-v546 {
  display: none !important;
}

.ops-page-v546 {
  max-width: 1240px;
  margin: 0 auto 3rem;
  padding: 0 1rem 2rem;
}
.ops-hero-v546 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
  gap: 1.25rem;
  align-items: stretch;
  margin: 1rem 0 1rem;
  padding: 1.5rem;
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 28px;
  background:
    radial-gradient(circle at top left, rgba(124,58,237,.17), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #f8fafc 58%, #eef2ff 100%);
  box-shadow: 0 24px 70px rgba(15,23,42,.08);
}
.ops-hero-v546.analytics {
  background: radial-gradient(circle at top left, rgba(14,165,233,.18), transparent 34%), linear-gradient(135deg, #fff, #f8fafc 60%, #ecfeff);
}
.ops-hero-v546.security {
  background: radial-gradient(circle at top left, rgba(239,68,68,.14), transparent 34%), linear-gradient(135deg, #fff, #f8fafc 60%, #fff7ed);
}
.ops-hero-v546.data {
  background: radial-gradient(circle at top left, rgba(16,185,129,.16), transparent 34%), linear-gradient(135deg, #fff, #f8fafc 60%, #ecfdf5);
}
.ops-eyebrow-v546 {
  display: inline-flex;
  color: #7c3aed;
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ops-hero-v546 h1 {
  margin: .35rem 0 .5rem;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: .95;
  color: #070b1d;
}
.ops-hero-v546 p {
  max-width: 68ch;
  margin: 0;
  color: #475569;
  font-size: 1.02rem;
  line-height: 1.65;
}
.ops-hero-panel-v546 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .35rem;
  padding: 1.15rem;
  border-radius: 24px;
  color: white;
  background: linear-gradient(135deg, #0f172a, #111827);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.ops-hero-panel-v546 span,
.ops-hero-panel-v546 small {
  color: rgba(255,255,255,.72);
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.ops-hero-panel-v546 strong {
  color: #fff;
  font-size: clamp(1.35rem, 2.5vw, 2rem);
  line-height: 1;
}
.ops-metrics-v546 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
  margin: 1rem 0;
}
.ops-metrics-v546 article,
.ops-card-v546 {
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 22px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 16px 50px rgba(15,23,42,.06);
}
.ops-metrics-v546 article {
  padding: 1rem;
}
.ops-metrics-v546 span {
  display: block;
  color: #64748b;
  font-size: .78rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.ops-metrics-v546 strong {
  display: block;
  margin: .35rem 0 .2rem;
  color: #0f172a;
  font-size: 1.55rem;
  line-height: 1;
}
.ops-metrics-v546 small { color: #64748b; }
.ops-grid-v546 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}
.ops-card-v546 {
  padding: 1.15rem;
}
.ops-card-v546 h2 {
  margin: .35rem 0 .45rem;
  color: #0f172a;
  font-size: 1.25rem;
}
.ops-card-v546 p {
  color: #475569;
  line-height: 1.6;
}
.ops-list-v546 {
  margin: .65rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .55rem;
}
.ops-list-v546 li {
  padding: .72rem .8rem;
  border-radius: 14px;
  background: #f8fafc;
  color: #334155;
  font-weight: 650;
}
.ops-list-v546 li::before {
  content: '✓';
  margin-right: .5rem;
  color: #16a34a;
  font-weight: 900;
}
.ops-actions-v546 {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: .9rem;
}
.ops-code-v546 {
  padding: .85rem 1rem;
  border-radius: 16px;
  background: #0f172a;
  color: #dbeafe;
  overflow-x: auto;
}
.danger-soft {
  border-color: rgba(239,68,68,.16);
  background: linear-gradient(180deg, #fff, #fff7ed);
}
@media (max-width: 900px) {
  .ops-hero-v546,
  .ops-grid-v546 { grid-template-columns: 1fr; }
  .ops-metrics-v546 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .project-workspace-nav-v546 { border-radius: 16px; }
  .project-workspace-nav-v546__inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-workspace-nav-v546__overview,
  .project-workspace-nav-v546 summary { width: 100%; justify-content: space-between; }
  .project-workspace-nav-v546-menu { position: static; width: 100%; margin-top: .5rem; box-shadow: none; }
  .project-workspace-nav-v546-group { grid-column: span 2; }
  .ops-page-v546 { padding: 0 .75rem 2rem; }
  .ops-hero-v546 { padding: 1.1rem; border-radius: 22px; }
  .ops-metrics-v546 { grid-template-columns: 1fr; }
}

/* RANKPJ 5.5.0 DATA CENTER UI CLEANUP */
.data-hero { align-items: center; }
.data-health-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 1.25rem 0; }
.data-health-card { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: 1rem; box-shadow: 0 10px 30px rgba(15,23,42,.05); }
.data-health-card.strong { border-color: rgba(79,70,229,.28); background: linear-gradient(135deg, rgba(79,70,229,.08), #fff); }
.data-health-card span { display: block; font-size: .78rem; color: #64748b; text-transform: uppercase; letter-spacing: .06em; font-weight: 800; }
.data-health-card strong { display: block; font-size: 1.45rem; margin-top: .35rem; color: #0f172a; }
.data-health-card small { display: block; color: #64748b; margin-top: .25rem; line-height: 1.4; }
.data-command-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 1.25rem; align-items: start; margin-top: 1.25rem; }
.data-main-panel, .data-side-panel { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 22px; padding: 1.25rem; box-shadow: 0 16px 40px rgba(15,23,42,.06); }
.data-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.data-work-card { border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: 1rem; background: #f8fafc; }
.data-work-card h3 { margin: .5rem 0 .35rem; color: #0f172a; }
.data-work-card p { color: #475569; line-height: 1.55; }
.card-topline { display: flex; justify-content: space-between; align-items: center; }
.pill { display: inline-flex; align-items: center; border-radius: 999px; padding: .28rem .65rem; background: rgba(79,70,229,.1); color: #3730a3; font-size: .75rem; font-weight: 800; }
.clean-checklist { margin: .75rem 0 0; padding-left: 1.15rem; color: #475569; line-height: 1.65; }
.stack-actions { display: grid; gap: .65rem; margin-top: .9rem; }
.button.block { display: flex; justify-content: center; width: 100%; }
.space-top { margin-top: 1rem; }
.section-heading.compact h2 { margin: .15rem 0 0; }
@media (max-width: 920px) { .data-health-grid, .data-command-layout, .data-card-grid { grid-template-columns: 1fr; } }


/* RankPJ 5.5.6 professional top menu cleanup */
.app-topbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  display: grid;
  grid-template-columns: minmax(190px, 240px) 1fr auto;
  align-items: center;
  gap: 18px;
  padding: 16px 28px;
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 12px 32px rgba(15,23,42,.06);
  backdrop-filter: blur(14px);
}
.topbar-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: #0f172a;
}
.brand-mark {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display: inline-grid;
  place-items: center;
  color: #fff;
  font-weight: 800;
  background: linear-gradient(135deg,#7c3aed,#06b6d4);
  box-shadow: 0 14px 30px rgba(124,58,237,.24);
}
.brand-copy {
  display: grid;
  line-height: 1.1;
}
.brand-copy strong {
  font-size: 1rem;
  letter-spacing: -.02em;
}
.brand-copy small {
  margin-top: 3px;
  color: #64748b;
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.topbar-primary-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}
.topbar-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 9px 14px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #475569;
  background: transparent;
  font: inherit;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.topbar-link:hover,
.topbar-link.active,
.topbar-menu.open .topbar-menu-button {
  color: #2f1b80;
  background: #f4f0ff;
  border-color: #ddd2fe;
  box-shadow: 0 8px 22px rgba(124,58,237,.10);
}
.topbar-menu {
  position: relative;
}
.topbar-menu-panel {
  position: absolute;
  right: 0;
  top: calc(100% + 12px);
  width: min(620px, calc(100vw - 32px));
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
  padding: 16px;
  background: #fff;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 24px;
  box-shadow: 0 28px 80px rgba(15,23,42,.18);
}
.topbar-menu-panel[hidden] {
  display: none !important;
}
.topbar-menu-panel section {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.topbar-menu-panel p {
  margin: 0 0 6px;
  color: #64748b;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.topbar-menu-panel a {
  display: block;
  padding: 10px 11px;
  border-radius: 13px;
  color: #26324a;
  text-decoration: none;
  font-weight: 800;
}
.topbar-menu-panel a:hover {
  background: #f8fafc;
  color: #5b21b6;
}
.topbar-account {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.account-chip {
  max-width: 160px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 9px 12px;
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  border: 1px solid rgba(15,23,42,.08);
  font-weight: 800;
}
.logout-link {
  color: #64748b;
  text-decoration: none;
  font-weight: 800;
}
.logout-link:hover {
  color: #dc2626;
}
@media (max-width: 980px) {
  .app-topbar {
    grid-template-columns: 1fr;
    align-items: stretch;
    padding: 14px 18px;
  }
  .topbar-primary-nav {
    justify-content: flex-start;
  }
  .topbar-account {
    justify-content: flex-start;
  }
  .topbar-menu-panel {
    left: 0;
    right: auto;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .brand-copy small,
  .account-chip {
    display: none;
  }
  .topbar-link {
    padding: 8px 11px;
  }
}

/* RankPJ 5.5.7 professional top menu safe native details cleanup */
.app-topbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  display: grid;
  grid-template-columns: minmax(190px, 240px) 1fr auto;
  align-items: center;
  gap: 18px;
  padding: 16px 28px;
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 12px 32px rgba(15,23,42,.06);
  backdrop-filter: blur(14px);
}
.topbar-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; color: #0f172a; }
.brand-mark { width: 40px; height: 40px; border-radius: 14px; display: inline-grid; place-items: center; color: #fff; font-weight: 900; background: linear-gradient(135deg,#7c3aed,#06b6d4); box-shadow: 0 14px 30px rgba(124,58,237,.24); }
.brand-copy { display: grid; line-height: 1.1; }
.brand-copy strong { font-size: 1rem; letter-spacing: -.02em; }
.brand-copy small { margin-top: 3px; color: #64748b; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.topbar-primary-nav { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }
.topbar-link { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 9px 14px; border: 1px solid transparent; border-radius: 999px; color: #475569; background: transparent; font: inherit; font-weight: 800; text-decoration: none; cursor: pointer; transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease; }
.topbar-link:hover, .topbar-link.active, .topbar-menu[open] .topbar-menu-summary { color: #2f1b80; background: #f4f0ff; border-color: #ddd2fe; box-shadow: 0 8px 22px rgba(124,58,237,.10); }
.topbar-menu { position: relative; }
.topbar-menu-summary { list-style: none; user-select: none; }
.topbar-menu-summary::-webkit-details-marker { display: none; }
.topbar-menu-panel { position: absolute; right: 0; top: calc(100% + 12px); width: min(620px, calc(100vw - 32px)); display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; padding: 16px; background: #fff; border: 1px solid rgba(15,23,42,.10); border-radius: 24px; box-shadow: 0 28px 80px rgba(15,23,42,.18); }
.topbar-menu-panel section { display: grid; gap: 4px; min-width: 0; }
.topbar-menu-panel p { margin: 0 0 6px; color: #64748b; font-size: .72rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.topbar-menu-panel a { display: block; padding: 10px 11px; border-radius: 13px; color: #26324a; text-decoration: none; font-weight: 800; }
.topbar-menu-panel a:hover { background: #f8fafc; color: #5b21b6; }
.topbar-account { display: flex; justify-content: flex-end; align-items: center; gap: 10px; min-width: 0; }
.account-chip { max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 9px 12px; border-radius: 999px; background: #f8fafc; color: #334155; border: 1px solid rgba(15,23,42,.08); font-weight: 800; }
.logout-link { color: #64748b; text-decoration: none; font-weight: 800; }
.logout-link:hover { color: #dc2626; }
@media (max-width: 980px) { .app-topbar { grid-template-columns: 1fr; align-items: stretch; padding: 14px 18px; } .topbar-primary-nav { justify-content: flex-start; } .topbar-account { justify-content: flex-start; } .topbar-menu-panel { left: 0; right: auto; grid-template-columns: 1fr; } }
@media (max-width: 640px) { .brand-copy small, .account-chip { display: none; } .topbar-link { padding: 8px 11px; } }

/* RANKPJ 5.5.9 REPORTS HUB PROFESSIONAL UI */
.rankpj-page-shell { max-width: 1240px; margin: 0 auto; padding: 1.5rem; }
.reports-hero.pro-hero { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 1.25rem; align-items: stretch; margin: 1rem 0 1.25rem; }
.reports-hero-copy, .reports-readiness-card, .reports-main-panel, .reports-side-panel, .reports-process-panel, .reports-recent-panel { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 24px; box-shadow: 0 18px 50px rgba(15,23,42,.07); }
.reports-hero-copy { padding: 1.6rem; background: radial-gradient(circle at top right, rgba(124,58,237,.12), transparent 38%), linear-gradient(135deg, #fff, #f8fafc); }
.reports-hero-copy h1 { margin: .25rem 0 .55rem; font-size: clamp(2rem, 4vw, 3.1rem); letter-spacing: -.04em; color: #0f172a; }
.reports-hero-copy .lede { max-width: 760px; color: #475569; line-height: 1.65; font-size: 1.04rem; }
.reports-readiness-card { padding: 1.35rem; display: flex; flex-direction: column; justify-content: center; background: linear-gradient(135deg, #27135f, #4c1d95); color: #fff; }
.reports-readiness-card span { color: #d8b4fe; font-size: .74rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.reports-readiness-card strong { display: block; margin: .4rem 0 .65rem; font-size: 1.45rem; line-height: 1.15; }
.reports-readiness-card p { margin: 0; color: rgba(255,255,255,.82); line-height: 1.55; }
.reports-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 1.25rem 0; }
.reports-metric-card { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 20px; padding: 1rem; box-shadow: 0 12px 34px rgba(15,23,42,.05); }
.reports-metric-card.strong { border-color: rgba(124,58,237,.28); background: linear-gradient(135deg, rgba(124,58,237,.08), #fff); }
.reports-metric-card span { display: block; color: #64748b; text-transform: uppercase; letter-spacing: .075em; font-size: .74rem; font-weight: 900; }
.reports-metric-card strong { display: block; color: #0f172a; font-size: 1.7rem; margin-top: .35rem; letter-spacing: -.03em; }
.reports-metric-card small { display: block; color: #64748b; line-height: 1.45; margin-top: .25rem; }
.reports-command-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 1.25rem; align-items: start; }
.reports-main-panel, .reports-side-panel, .reports-process-panel, .reports-recent-panel { padding: 1.25rem; }
.reports-client-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.reports-client-card { background: #f8fafc; border: 1px solid rgba(15,23,42,.08); border-radius: 20px; padding: 1rem; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.reports-client-card:hover { transform: translateY(-2px); border-color: rgba(124,58,237,.25); box-shadow: 0 16px 38px rgba(15,23,42,.09); }
.reports-card-topline { display: flex; justify-content: space-between; align-items: center; gap: .75rem; margin-bottom: .7rem; }
.reports-card-topline small { color: #64748b; font-weight: 800; }
.reports-client-card h3 { margin: 0 0 .45rem; color: #0f172a; font-size: 1.1rem; letter-spacing: -.02em; }
.reports-client-card p { margin: 0; color: #475569; line-height: 1.55; }
.reports-card-actions { display: flex; gap: .6rem; flex-wrap: wrap; margin-top: .9rem; }
.pill { display: inline-flex; align-items: center; border-radius: 999px; padding: .28rem .65rem; background: rgba(124,58,237,.10); color: #5b21b6; font-size: .74rem; font-weight: 900; }
.report-checklist { margin: .8rem 0 0; padding-left: 1.15rem; color: #475569; line-height: 1.7; }
.reports-side-actions { display: grid; gap: .65rem; margin-top: 1rem; }
.button.block { display: flex; justify-content: center; width: 100%; }
.reports-empty-state, .reports-mini-empty { border: 1px dashed rgba(100,116,139,.35); background: #f8fafc; border-radius: 20px; padding: 1.2rem; margin-top: 1rem; }
.reports-empty-state h3, .reports-mini-empty strong { margin: 0 0 .35rem; color: #0f172a; }
.reports-lower-grid { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 1.25rem; margin-top: 1.25rem; }
.reports-step-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; margin-top: 1rem; }
.reports-step-row div { background: #f8fafc; border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: 1rem; }
.reports-step-row span { width: 32px; height: 32px; display: inline-grid; place-items: center; border-radius: 12px; background: #ede9fe; color: #5b21b6; font-weight: 900; }
.reports-step-row strong { display: block; margin-top: .7rem; color: #0f172a; }
.reports-step-row p { color: #64748b; line-height: 1.5; margin: .3rem 0 0; }
.reports-record-list { display: grid; gap: .65rem; margin-top: 1rem; }
.reports-record-item { display: grid; gap: .25rem; padding: .9rem; border-radius: 16px; border: 1px solid rgba(15,23,42,.08); background: #f8fafc; color: inherit; text-decoration: none; }
.reports-record-item:hover { border-color: rgba(124,58,237,.25); background: #fff; }
.reports-record-item span { color: #5b21b6; font-size: .72rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.reports-record-item strong { color: #0f172a; }
.reports-record-item small { color: #64748b; }
@media (max-width: 980px) { .reports-hero.pro-hero, .reports-command-layout, .reports-lower-grid { grid-template-columns: 1fr; } .reports-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .reports-client-grid, .reports-step-row { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .rankpj-page-shell { padding: 1rem; } .reports-metric-grid { grid-template-columns: 1fr; } .reports-card-actions, .hero-actions { flex-direction: column; align-items: stretch; } }

/* RANKPJ 5.6.2 ACCOUNT CREATION ONLY UI */
.signup-page{max-width:1180px;margin:0 auto;padding:1.5rem}.account-create-page .signup-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.25rem;align-items:stretch;margin:1rem 0 1.25rem}.account-create-page .signup-hero>div,.account-create-page .signup-status-card,.account-create-page .signup-plan-panel,.account-create-page .signup-form-card,.account-create-page .signup-success-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;box-shadow:0 18px 50px rgba(15,23,42,.07)}.account-create-page .signup-hero>div{padding:1.6rem;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 38%),linear-gradient(135deg,#fff,#f8fafc)}.account-create-page .signup-hero h1,.account-create-page .signup-success-card h1{margin:.25rem 0 .6rem;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;color:#0f172a}.account-create-page .signup-hero .lede,.account-create-page .signup-success-card .lede{color:#475569;line-height:1.65;font-size:1.05rem;max-width:760px}.signup-trust-row{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1rem}.signup-trust-row span{border-radius:999px;background:rgba(15,23,42,.06);padding:.45rem .75rem;font-weight:800;font-size:.82rem;color:#334155}.account-create-page .signup-status-card{padding:1.25rem;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff}.account-create-page .signup-status-card span{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;opacity:.8;font-weight:900}.account-create-page .signup-status-card strong{display:block;font-size:1.3rem;margin:.35rem 0}.account-create-page .signup-status-card p{color:rgba(255,255,255,.82);line-height:1.55}.account-layout{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:1.25rem;align-items:start}.account-info-panel,.account-create-page .signup-form-card{padding:1.3rem}.account-info-list{display:grid;gap:.85rem;margin-top:1rem}.account-info-list article{border:1px solid rgba(100,116,139,.18);border-radius:18px;padding:1rem;background:#f8fafc}.account-info-list strong{display:block;color:#0f172a;margin-bottom:.25rem}.account-info-list small{color:#64748b;line-height:1.5}.signup-form-card label{display:grid;gap:.4rem;color:#334155;font-weight:800;margin-bottom:.9rem}.signup-form-card input{border:1px solid rgba(100,116,139,.28);border-radius:14px;padding:.8rem .9rem;font:inherit}.signup-form-card input:focus{outline:3px solid rgba(37,99,235,.16);border-color:#2563eb}.form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.button.wide{width:100%;justify-content:center}.signup-note{margin:.85rem 0 0;color:#64748b;text-align:center}.form-error{background:#fff1f2;color:#be123c;border:1px solid rgba(225,29,72,.18);padding:.75rem .9rem;border-radius:14px;margin-bottom:1rem;font-weight:800}.signup-success-card{padding:2rem;margin:3rem auto;max-width:900px}.signup-success-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin:1.25rem 0}.signup-success-grid article{border:1px solid rgba(100,116,139,.18);border-radius:18px;padding:1rem;background:#f8fafc}.signup-success-grid span{display:block;color:#64748b;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.signup-success-grid strong{display:block;color:#0f172a;font-size:1.25rem;margin:.25rem 0}.signup-success-grid small{color:#64748b;line-height:1.45}.login-signup-panel{margin-top:1rem;border:1px solid rgba(37,99,235,.20);background:rgba(37,99,235,.06);padding:.9rem;border-radius:16px;text-align:center}.login-signup-panel strong{display:block;color:#0f172a;margin-bottom:.25rem}.login-signup-panel p{margin:0 0 .65rem;color:#475569}@media(max-width:900px){.account-create-page .signup-hero,.account-layout{grid-template-columns:1fr}.form-grid.two,.signup-success-grid{grid-template-columns:1fr}}


/* RankPJ password recovery */
.auth-secondary-actions {
  margin-top: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  color: #64748b;
  font-size: .95rem;
}
.auth-secondary-actions a { color: #4f46e5; font-weight: 700; text-decoration: none; }
.auth-secondary-actions a:hover { text-decoration: underline; }
.recovery-shell { min-height: 100vh; display: grid; place-items: center; padding: 2rem; }
.recovery-card { max-width: 520px; width: 100%; }
.notice { border-radius: 14px; padding: 1rem; margin: 1rem 0; border: 1px solid #e2e8f0; background: #f8fafc; color: #334155; overflow-wrap: anywhere; }
.notice.success { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }
.notice.error { border-color: #fecaca; background: #fef2f2; color: #991b1b; }
.notice.info { border-color: #bfdbfe; background: #eff6ff; color: #1e40af; }
.stacked-form { display: grid; gap: 1rem; }
.stacked-form label { display: grid; gap: .45rem; font-weight: 700; color: #334155; }
.stacked-form input { width: 100%; border: 1px solid #cbd5e1; border-radius: 12px; padding: .85rem 1rem; font: inherit; }
