/* Scoped additions for the existing GrantDesk portal design. */
#workspace.owner-workspace { display:block; }
.owner-tabs { display:flex; gap:8px; flex-wrap:wrap; border-bottom:1px solid var(--line); padding:0 0 12px; margin:0 0 24px; }
.owner-tabs button { background:transparent; }
.owner-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:18px; }
.owner-toolbar h2 { margin:0; }
.onboarding-panel { margin:20px 0; }
.onboarding-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.onboarding-heading h2 { margin:0; }
.onboarding-heading button { flex-shrink:0; }
.onboarding-description { margin:10px 0 24px; }
.onboarding-steps { list-style:none; display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:8px; padding:0; margin:0 0 28px; }
.onboarding-steps li { min-width:0; }
.onboarding-steps button { width:100%; height:100%; display:grid; grid-template-columns:28px minmax(0,1fr); text-align:left; align-content:start; gap:2px 9px; padding:12px; background:transparent; border-color:var(--line); }
.onboarding-steps button small { grid-column:2; font-weight:400; }
.onboarding-step-number { grid-row:span 2; width:26px; height:26px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; font-size:12px; }
.onboarding-steps .is-current { background:var(--soft); border-color:var(--accent); box-shadow:inset 0 -2px var(--accent); }
.onboarding-steps .is-current .onboarding-step-number { color:#fff; background:var(--accent); border-color:var(--accent); }
.onboarding-steps .is-complete:not(.is-current) { border-color:#b8cfbd; background:#eef3ec; }
.onboarding-steps button:disabled { opacity:1; color:var(--muted); cursor:default; }
.onboarding-body { max-width:940px; }
.onboarding-body>h3 { font-size:23px; margin:0 0 16px; }
.onboarding-body form { margin:0; }
.onboarding-body form>small { display:block; margin:10px 0; }
.onboarding-body form>button { margin:6px 0 10px; }
.onboarding-body input { scroll-margin-top:30px; }
.onboarding-footer { border-top:1px solid var(--line); margin-top:28px; padding-top:20px; display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:10px; }
.onboarding-footer .onboarding-back { margin-right:auto; }
.onboarding-notice { background:var(--soft); border:1px solid #b9cbd8; border-radius:10px; padding:14px 16px; margin:14px 0; color:var(--text); }
.onboarding-notice.is-warning { background:#f7efd9; border-color:#e3d4ac; }
.onboarding-notice.is-error { background:#fff5f2; border-color:#d8a5a0; color:var(--bad); }
.onboarding-notice.is-success { background:#e7f0e8; border-color:#c6dacb; }
.onboarding-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px 24px; padding:20px; border:1px solid var(--line); border-radius:10px; background:var(--field); }
.onboarding-facts dt { color:var(--muted); font-size:12px; }
.onboarding-facts dd { margin:4px 0 0; font-weight:600; overflow-wrap:anywhere; }
.onboarding-status-list { list-style:none; padding:0; margin:18px 0; }
.onboarding-status-list li { padding:14px 0; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.onboarding-status-list small { display:block; font-weight:400; margin-top:3px; }
.onboarding-invitation { border:1px solid var(--line); border-radius:10px; padding:18px; margin-top:16px; }
.onboarding-invitation h4 { margin:0 0 8px; font-size:17px; }
.onboarding-invitation .toolbar { margin-bottom:0; }
.onboarding-secret { font-family:Consolas,monospace; overflow-wrap:anywhere; user-select:all; }
.onboarding-subdomain { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.onboarding-subdomain input { flex:1 1 160px; min-width:0; }
.onboarding-subdomain span { color:var(--muted); }
.onboarding-help { display:block; margin:7px 0 0; color:var(--muted); font-size:12px; }
.activation-page { max-width:780px; margin:auto; }
.activation-page .panel { margin:24px 0; }
.activation-page h1 { font-size:30px; }
.activation-page .onboarding-footer { justify-content:flex-start; }
@media(max-width:700px) {
  #workspace[data-onboarding=true]>nav { display:none; }
  .onboarding-heading { display:block; }
  .onboarding-heading button { margin-top:12px; }
  .onboarding-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  .onboarding-steps button { padding:9px; font-size:12px; }
  .onboarding-facts { grid-template-columns:1fr; }
  .onboarding-footer button { flex:1 1 150px; }
  .onboarding-heading h2 { font-size:22px; }
}
@media(forced-colors:active) { .onboarding-steps .is-current { outline:2px solid Highlight; } }
