.advisor-wip { max-width: 680px; margin: 32px auto; padding: 36px; border-radius: 24px; box-shadow: 0 2px 8px #00000008, 0 18px 48px #0000000d; text-align: center; }
.advisor-wip h2 { text-wrap: balance; margin: 14px 0; }
body.advisor-unavailable #advisorView > :not(.advisor-wip) { display: none !important; }
.advisor-wip p { line-height: 1.6; }
.resource-provider { margin: 16px 0; border-bottom: 1px solid #8883; }
.resource-provider summary { padding: 16px 0; min-height: 44px; cursor: pointer; font-weight: 650; }
.resource-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,280px),1fr)); gap: 16px; padding-bottom: 20px; }
.resource-card { padding: 18px; border: 1px solid #8883; border-radius: 18px; box-shadow: 0 2px 6px #00000005; }
.resource-card-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.resource-card h4 { font-size: 15px; margin: 0; }
.resource-card-head > span { font-size: 11px; white-space: nowrap; }
.resource-card[data-state=warning] { border-color: #b17b18; }
.resource-card[data-state=critical] { border-color: #c04444; }
.resource-value { font-size: 22px; font-variant-numeric: tabular-nums; margin: 16px 0 10px; overflow-wrap: anywhere; }
.resource-value small { font-size: 13px; }
.resource-card progress { display: block; width: 100%; height: 10px; accent-color: #399066; }
.resource-card[data-state=warning] progress { accent-color: #b17b18; }
.resource-card[data-state=critical] progress { accent-color: #c04444; }
.resource-meta,.resource-meter-empty,.resource-notes { font-size: 12px; line-height: 1.6; opacity: .8; }
.resource-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: 12px; }
.resource-actions a,.resource-actions button { min-height: 40px; display: inline-flex; align-items: center; }
.resource-budget { padding: 14px; background: #3a936611; border-radius: 12px; font-variant-numeric: tabular-nums; line-height: 1.5; }
#resourceReadingDialog { width: min(480px,calc(100vw - 32px)); padding: 24px; border: 1px solid #8883; border-radius: 24px; color: inherit; background: var(--panel,#fff); }
#resourceReadingDialog::backdrop { background: #0006; }
#resourceReadingDialog label { display: grid; gap: 8px; margin: 16px 0; }
#resourceReadingDialog input { min-height: 44px; width: 100%; padding: 10px; }

#providerResources > .panel-head { flex-wrap: wrap; gap: 12px; }
.launch-pro-banner {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin: 0 0 24px;
  padding: 20px 24px;
  border-radius: 20px;
  background: linear-gradient(115deg, var(--blue-soft), var(--panel));
  color: var(--ink);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--blue) 22%, transparent), 0 8px 24px #0000000d;
}
.launch-pro-banner[hidden] { display: none; }
.launch-pro-banner__badge {
  flex: 0 0 auto;
  padding: 6px 10px;
  border-radius: 8px;
  background: var(--blue-soft);
  color: color-mix(in srgb, var(--blue) 75%, var(--ink));
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.launch-pro-banner h2 { margin: 0 0 6px; font-size: 18px; line-height: 1.3; text-wrap: balance; }
.launch-pro-banner p { margin: 0; max-width: 80ch; font-size: 14px; line-height: 1.6; text-wrap: pretty; }
@media (max-width: 600px) {
  .launch-pro-banner { flex-direction: column; gap: 12px; padding: 20px; }
}
