.bl-grid { display: grid; gap: 12px; }
.bl-grid-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.bl-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.bl-grid-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }
.bl-stack { display: grid; gap: 12px; }
.bl-card { min-width: 0; padding: 18px; background: var(--bl-surface); border: 1px solid var(--bl-line); border-radius: var(--bl-radius); box-shadow: var(--bl-shadow-xs); }
.bl-card:hover.bl-card-interactive { border-color: var(--bl-line-strong); box-shadow: var(--bl-shadow); }
.bl-card h2 { margin: 7px 0 7px; font-size: 16px; letter-spacing: -.025em; }
.bl-card h3 { margin: 0; font-size: 12px; letter-spacing: -.015em; }
.bl-card p { margin-bottom: 0; color: var(--bl-muted); font-size: 11px; line-height: 1.58; }
.bl-card-wide { margin-top: 12px; padding: 21px; }
.bl-card-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.bl-card-row > div:first-child { min-width: 0; }
.bl-card-icon { width: 38px; height: 38px; margin-bottom: 16px; border-radius: 11px; background: var(--bl-soft-2); color: var(--bl-brand); display: grid; place-items: center; }
.bl-card-icon .bl-icon { width: 18px; height: 18px; }
.bl-list { margin-top: 12px; display: grid; }
.bl-list-row { min-height: 57px; padding: 10px 0; border-bottom: 1px solid var(--bl-line); display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.bl-list-row:last-child { border-bottom: 0; }
.bl-list-row > div { min-width: 0; display: grid; gap: 2px; }
.bl-list-row strong { font-size: 11px; }
.bl-list-row small { color: var(--bl-muted); font-size: 9.5px; overflow: hidden; text-overflow: ellipsis; }
.bl-site-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.bl-site-card { position: relative; padding: 19px; }
.bl-site-card.is-active { border-color: #c9d4cb; box-shadow: 0 0 0 1px rgba(49,95,67,.035),var(--bl-shadow-xs); }
.bl-site-domain { display: flex; align-items: center; gap: 10px; }
.bl-site-favicon { width: 36px; height: 36px; border: 1px solid var(--bl-line); border-radius: 10px; background: var(--bl-soft-2); color: var(--bl-muted); display: grid; place-items: center; }
.bl-site-domain h2 { margin: 0; font-size: 14px; }
.bl-site-domain p { margin-top: 3px; max-width: 420px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bl-site-meta { margin-top: 17px; padding-top: 14px; border-top: 1px solid var(--bl-line); display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.bl-site-meta small { color: var(--bl-muted); font-size: 9px; }
.bl-onboarding-layout { display: grid; grid-template-columns: minmax(220px,270px) minmax(0,1fr); gap: 12px; align-items: start; }
.bl-onboarding-panel { margin-top: 0; }
.bl-onboarding-panel > h2 { margin: 7px 0; font-size: 22px; }
.bl-onboarding-panel > p { color: var(--bl-muted); font-size: 11px; line-height: 1.6; }
.bl-steps { margin: 0; padding: 0; list-style: none; display: grid; }
.bl-steps li { min-height: 54px; padding: 11px 0; border-bottom: 1px solid var(--bl-line); display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.bl-steps li:last-child { border-bottom: 0; }
.bl-steps span { color: var(--bl-muted); font-size: 10px; }
.bl-onboarding-steps .bl-steps li { justify-content: flex-start; gap: 9px; }
.bl-step-number { width: 27px; height: 27px; border: 1px solid var(--bl-line-strong); border-radius: 50%; display: inline-grid; place-items: center; color: var(--bl-muted); font-size: 9.5px; font-weight: 850; }
.bl-steps li.is-done .bl-step-number { border-color: #c8d7cb; background: var(--bl-brand-soft); color: var(--bl-success); }
.bl-steps li.is-active strong { color: var(--bl-brand); }
