.rw {
  --rw-primary: var(--brand, #6D28D9);
  --rw-primary-hover: var(--brand-active, #5B21B6);
  --rw-light: var(--color-violet-50, #FAF5FF);
  --rw-bg: var(--bg, #FFFBFE);
  --rw-card: var(--bg-card, #FFFFFF);
  --rw-heading: var(--fg, #111827);
  --rw-body: var(--fg-body, #334155);
  --rw-muted: var(--fg-muted, #64748B);
  --rw-border: var(--border-strong, #E2E8F0);
  --rw-line: var(--color-violet-200, #E9D5FF);
  --rw-ai: var(--color-violet-800, #4C1D95);
  --rw-ai-soft: var(--color-violet-100, #F3E8FF);
  --rw-teal: var(--color-teal-700, #0F766E);
  --rw-teal-soft: var(--color-teal-50, #ECFEFF);
  --rw-ok: #047857; --rw-ok-soft: #ECFDF5;
  --rw-warn: #B45309; --rw-warn-soft: #FFFBEB;
  --rw-over: #C2410C; --rw-over-soft: #FFF7ED;
  --rw-r: 18px;
  --rw-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 24px rgba(15, 23, 42, .06);
  --rw-fast: 180ms; --rw-mid: 300ms; --rw-slow: 700ms; --rw-ease: cubic-bezier(.2, .7, .2, 1);
  font-family: var(--font-sans, "Inter", system-ui, sans-serif);
  color: var(--rw-body);
  background: var(--rw-bg);
}
.rw [hidden] { display: none !important; }
.rw [id] { scroll-margin-top: 96px; }
.rw-vh { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.rw h1, .rw h2, .rw h3, .rw h4, .rw h5 { color: var(--rw-heading); font-family: inherit; letter-spacing: -0.02em; }
.rw a:not(.btn) { color: var(--rw-primary); }
.rw :focus-visible { outline: 3px solid rgba(109, 40, 217, .45); outline-offset: 2px; border-radius: 8px; }
.rw [tabindex="-1"]:focus { outline: none; }
.rw svg { flex: none; }
.rw-muted { color: var(--rw-muted); }
.rw-small { font-size: 13px; }
.rw-center { text-align: center; }
.rw-mt { margin-top: 24px !important; }
.rw-mt-sm { margin-top: 14px !important; }
.rw-inline-ic { width: 14px; height: 14px; vertical-align: -2px; margin-right: 4px; }
.rw-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.rw-row > svg { width: 15px; height: 15px; }
.rw-between { justify-content: space-between; }
.rw-h2 { font-size: clamp(24px, 2.8vw, 32px); line-height: 1.15; margin: 10px 0 14px; text-wrap: balance; }
.rw-h3 { font-size: 20px; margin: 0 0 6px; font-weight: 700; color: var(--rw-heading); }
.rw-h4 { font-size: 16px; margin: 0 0 12px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-weight: 700; color: var(--rw-heading); }
.rw-h4 svg { width: 17px; height: 17px; color: var(--rw-primary); }
.rw-h5 { font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--rw-muted) !important; margin: 16px 0 8px; display: flex; align-items: center; gap: 6px; }
.rw-h5 svg { width: 15px; height: 15px; }
.rw-k { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--rw-muted); margin: 0 0 8px; }
.rw-k svg { width: 14px; height: 14px; color: var(--rw-primary); }
.rw-pad { padding: 20px; }
.rw-pad-sm { padding: 16px; }
.rw-pad-bottom-0 { padding-bottom: 0; }
.rw-card { background: var(--rw-card); border: 1px solid var(--rw-border); border-radius: var(--rw-r); box-shadow: var(--rw-shadow); }
.rw-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; max-width: 1120px; margin: 16px auto 0; }
.rw-grid-flat { margin: 0 auto; align-items: center; }
.rw-subhead { text-align: center; font-size: 20px; margin: 40px 0 16px; }

.rw-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 18px; border-radius: 12px; border: 1px solid transparent; font: inherit; font-size: 15px; font-weight: 600; text-decoration: none; cursor: pointer; transition: background var(--rw-fast) var(--rw-ease), border-color var(--rw-fast), transform var(--rw-fast); }
.rw-btn svg { width: 17px; height: 17px; }
.rw-btn:active { transform: translateY(1px); }
.rw-btn:disabled { opacity: .55; cursor: default; }
.rw-btn-primary { background: var(--rw-primary); color: #fff !important; box-shadow: 0 6px 16px rgba(109, 40, 217, .22); }
.rw-btn-primary:hover { background: var(--rw-primary-hover); }
.rw-btn-secondary { background: var(--rw-card); color: var(--rw-primary) !important; border-color: var(--rw-line); }
.rw-btn-secondary:hover { background: var(--rw-light); }
.rw-btn-ghost { background: transparent; color: var(--rw-body) !important; border-color: var(--rw-border); }
.rw-btn-ghost:hover { background: #F8FAFC; }
.rw-btn-ai { background: var(--rw-ai-soft); color: var(--rw-ai) !important; border-color: var(--rw-line); }
.rw-btn-ai:hover { background: var(--color-violet-200, #E9D5FF); }
.rw-btn-lg { min-height: 52px; padding: 0 22px; font-size: 16px; }
.rw-btn-sm { min-height: 38px; padding: 0 12px; font-size: 13.5px; }
.rw-btn-block { width: 100%; }
.rw-linkbtn { border: 0; background: none; padding: 6px 0; font: inherit; font-size: 13.5px; font-weight: 600; color: var(--rw-primary); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.rw-back { display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; border: 0; background: none; font: inherit; font-size: 14px; font-weight: 600; color: var(--rw-muted); cursor: pointer; }
.rw-back:hover { color: var(--rw-primary); }
.rw-back svg { width: 16px; height: 16px; }
.rw-reset { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 10px; border: 0; background: none; color: var(--rw-muted); font: inherit; font-size: 13px; cursor: pointer; border-radius: 8px; }
.rw-reset:hover { color: var(--rw-primary); }
.rw-reset svg { width: 15px; height: 15px; }

.rw-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: var(--rw-light); color: var(--rw-primary-hover); font-size: 12.5px; font-weight: 600; margin: 0; width: max-content; max-width: 100%; }
.rw-chip svg { width: 14px; height: 14px; }
.rw-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.rw-chip-btn { display: inline-flex; gap: 6px; align-items: center; min-height: 36px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--rw-border); background: var(--rw-card); font: inherit; font-size: 13px; font-weight: 600; color: var(--rw-body); cursor: pointer; transition: all var(--rw-fast) var(--rw-ease); }
.rw-chip-btn span { color: var(--rw-muted); font-variant-numeric: tabular-nums; }
.rw-chip-btn[aria-pressed="true"] { background: var(--rw-primary); border-color: var(--rw-primary); color: #fff; }
.rw-chip-btn[aria-pressed="true"] span { color: inherit; }
.rw-chip-btn:disabled { opacity: .6; cursor: default; }
.rw-chips-static { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.rw-chips-static li { padding: 4px 10px; border-radius: 999px; background: #F1F5F9; color: #475569; font-size: 13px; font-weight: 600; }
.rw-chips-no li { text-decoration: line-through; }
.rw-badge { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; vertical-align: middle; white-space: nowrap; }
.rw-badge svg { width: 12px; height: 12px; }
.rw-badge-demo { background: #F1F5F9; color: #475569; border: 1px dashed #94A3B8; }
.rw-badge-concept { background: var(--rw-ai-soft); color: var(--rw-ai); border: 1px dashed #A78BFA; }
.rw-badge-interactive { background: var(--rw-teal-soft); color: var(--rw-teal); border: 1px dashed var(--color-teal-500, #14B8A6); }
.rw-badge-production { background: var(--rw-ok-soft); color: var(--rw-ok); border: 1px solid #A7F3D0; }
.rw-class { display: inline-flex; padding: 2px 10px; border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.rw-class-production { background: var(--rw-ok-soft); color: var(--rw-ok); }
.rw-class-demo { background: #F1F5F9; color: #475569; }
.rw-class-interactive { background: var(--rw-teal-soft); color: var(--rw-teal); }
.rw-class-concept { background: var(--rw-ai-soft); color: var(--rw-ai); }

.rw-status { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; border: 1px solid transparent; margin: 0; width: max-content; transition: background var(--rw-mid), color var(--rw-mid), border-color var(--rw-mid); }
.rw-status svg { width: 14px; height: 14px; }
.rw-status-ok { background: var(--rw-ok-soft); color: var(--rw-ok); border-color: #A7F3D0; }
.rw-status-info { background: var(--rw-teal-soft); color: var(--rw-teal); border-color: #99F6E4; }
.rw-status-attention { background: var(--rw-warn-soft); color: var(--rw-warn); border-color: #FDE68A; }
.rw-status-overdue { background: var(--rw-over-soft); color: var(--rw-over); border-color: #FDBA74; }
.rw-status-idle { background: #F1F5F9; color: #475569; border-color: var(--rw-border); }

.rw-bar { position: relative; display: inline-block; flex: 1; min-width: 60px; height: 8px; border-radius: 999px; background: #EEF2F7; overflow: hidden; vertical-align: middle; }
.rw-bar > span { position: absolute; inset: 0 auto 0 0; width: var(--v, 0%); border-radius: inherit; background: linear-gradient(90deg, var(--rw-primary), var(--color-teal-500, #14B8A6)); transition: width var(--rw-slow) var(--rw-ease), background var(--rw-mid); }
.rw-bar-muted > span { background: #94A3B8; }
.rw-bar-warn > span { background: #F59E0B; }
.rw-bar-target > span { background: repeating-linear-gradient(90deg, #CBD5E1 0 6px, #E2E8F0 6px 12px); }
.rw-bar-plain > span { background: var(--rw-primary); }
.rw-bar-ok > span { background: linear-gradient(90deg, var(--rw-primary), var(--color-teal-500, #14B8A6)); }
.rw-pace { display: grid; gap: 10px; margin: 12px 0; }
.rw-pace > div { display: grid; grid-template-columns: 110px minmax(0, 1fr) 44px; align-items: center; gap: 10px; font-size: 14px; }
.rw-pace strong { text-align: right; color: var(--rw-heading); }
.rw-pace-lg .rw-bar { height: 12px; }
.rw-avatar { display: inline-grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--rw-ai-soft); color: var(--rw-ai); font-size: 13px; font-weight: 700; }
.rw-avatar-sm { width: 28px; height: 28px; font-size: 11px; }
.rw-person { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0; }

.rw-input { width: 100%; box-sizing: border-box; min-height: 44px; padding: 10px 14px; border: 1px solid #CBD5E1; border-radius: 12px; background: #fff; font: inherit; font-size: 15px; line-height: 1.5; color: var(--rw-heading); resize: vertical; margin-bottom: 10px; }
.rw-input:focus { outline: none; border-color: var(--rw-primary); box-shadow: 0 0 0 3px rgba(109, 40, 217, .18); }
.rw-input[readonly] { background: #FCFBFF; }
.rw-label { display: block; font-size: 14px; font-weight: 600; color: var(--rw-heading); margin: 0 0 6px; }
.rw-hint, .rw-note { display: flex; gap: 8px; align-items: flex-start; font-size: 13.5px; color: var(--rw-muted); margin: 10px 0 0; }
.rw-hint svg, .rw-note svg { width: 15px; height: 15px; margin-top: 2px; }
.rw-hint:empty { display: none; }
.rw-empty { display: flex; align-items: center; gap: 10px; padding: 14px 16px; margin: 0 0 10px; border-radius: 14px; background: var(--rw-card); border: 1px dashed var(--rw-border); color: var(--rw-body); font-size: 14px; }
.rw-empty svg { width: 18px; height: 18px; color: var(--rw-primary); }
.rw-review-req { display: flex; align-items: flex-start; gap: 8px; margin: 12px 0; padding: 10px 12px; border-radius: 12px; background: var(--rw-teal-soft); color: var(--rw-teal); font-size: 13.5px; font-weight: 600; }
.rw-review-req svg { width: 16px; height: 16px; margin-top: 1px; }
.rw-ai-card { margin-top: 14px; padding: 16px; border-radius: 16px; border: 1px solid var(--rw-line); background: linear-gradient(135deg, var(--rw-card), var(--rw-ai-soft)); }
.rw-ai-card p { line-height: 1.55; }
.rw-ai-line { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 12px; border-radius: 12px; background: var(--rw-ai-soft); color: var(--rw-heading); font-size: 14.5px; line-height: 1.55; margin: 14px 0 0; }
.rw-ai-line > svg { width: 16px; height: 16px; color: var(--rw-ai); }
.rw-ai-out { margin-top: 12px; padding: 14px; border-radius: 14px; background: var(--rw-card); border: 1px solid var(--rw-line); line-height: 1.6; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-ai-out > p { margin: 0 0 8px; }
.rw-ai-off-only { display: none !important; }
.rw.is-ai-off .rw-ai-only { display: none !important; }
.rw.is-ai-off .rw-ai-off-only { display: flex !important; }
.rw.is-ai-off button.rw-ai-off-only { display: inline-flex !important; }

@keyframes rw-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes rw-pulse { 0% { box-shadow: 0 0 0 0 rgba(109, 40, 217, .35); } 100% { box-shadow: 0 0 0 12px rgba(109, 40, 217, 0); } }
.rw-in { animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-flash { animation: rw-pulse 900ms var(--rw-ease) 1; }

.rw-section { padding: clamp(56px, 7vw, 96px) 0; }
.rw-tint { background: linear-gradient(180deg, var(--rw-bg), #F6F0FF); }
.rw-head { max-width: 780px; margin: 0 auto clamp(28px, 4vw, 44px); text-align: center; }
.rw-head h2 { font-size: clamp(28px, 3.6vw, 42px); line-height: 1.12; margin: 12px 0; text-wrap: balance; }
.rw-head p { font-size: 17px; line-height: 1.6; margin: 0 0 8px; }
.rw-legend { display: block; margin-top: 10px !important; font-size: 13.5px !important; color: var(--rw-muted); }
.rw-eyebrow { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: center; font-size: 12.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--rw-primary); }

.rw-hero { padding: clamp(48px, 7vw, 96px) 0 clamp(40px, 6vw, 72px); background: radial-gradient(60% 80% at 10% 0%, rgba(109, 40, 217, .10), transparent 70%), radial-gradient(40% 60% at 95% 20%, rgba(20, 184, 166, .08), transparent 70%), var(--rw-bg); }
.rw-hero-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(32px, 5vw, 64px); align-items: center; }
.rw-hero h1 { font-size: clamp(38px, 5.4vw, 62px); line-height: 1.04; margin: 16px 0 18px; text-wrap: balance; }
.rw-lede { font-size: clamp(17px, 1.6vw, 19px); line-height: 1.6; max-width: 580px; margin: 0 0 28px; }
.rw-lede-sm { font-size: 17px; line-height: 1.55; margin: 0 0 16px; }
.rw-ctas { display: flex; flex-wrap: wrap; gap: 12px; }
.rw-note-line { display: flex; align-items: center; gap: 8px; margin: 18px 0 0; font-size: 13.5px; color: var(--rw-muted); }
.rw-note-line svg { width: 16px; height: 16px; }
.rw-hero-card > .rw-pad { display: grid; gap: 14px; }
.rw-hero-card > .rw-pad > * { margin: 0; }
.rw-hero-card .rw-pace { margin: 0; }
.rw-crumb { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; font-size: 12.5px; font-weight: 600; color: var(--rw-muted); }
.rw-crumb svg { width: 13px; height: 13px; }
.rw-crumb span { display: inline-flex; align-items: center; gap: 4px; }
.rw-crumb [data-rw-hero-crumb] { color: var(--rw-primary-hover); }
.rw-focus { padding: 14px; border-radius: 14px; background: var(--rw-light); border: 1px solid var(--rw-line); }
.rw-focus p { margin: 0 0 10px; }
.rw-focus-row { margin-bottom: 14px; }
.rw-signals { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.rw-signals li { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px; background: #F8FAFC; border: 1px solid var(--rw-border); font-size: 13.5px; font-weight: 600; color: var(--rw-heading); }
.rw-signals svg { width: 15px; height: 15px; color: var(--rw-muted); }

.rw-loop-band { padding: 26px 0; border-block: 1px solid var(--rw-border); background: var(--rw-card); }
.rw-loop { list-style: none; margin: 0 0 12px; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.rw-loop li { padding: 6px 12px; border-radius: 999px; background: var(--rw-light); color: var(--rw-primary-hover); font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.rw-loop li:not(:last-child)::after { content: " →"; color: #A78BFA; }
.rw-loop-band strong { color: var(--rw-heading); margin-left: 4px; }

.rw-app { max-width: 1120px; margin: 0 auto; background: var(--rw-card); border: 1px solid var(--rw-border); border-radius: 20px; box-shadow: 0 24px 60px rgba(15, 23, 42, .10); overflow: hidden; }
.rw-app-bar { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-bottom: 1px solid var(--rw-border); background: #F8FAFC; }
.rw-dots { display: flex; gap: 6px; }
.rw-dots span { width: 10px; height: 10px; border-radius: 50%; background: #CBD5E1; }
.rw-context { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; font-size: 13.5px; color: var(--rw-muted); }
.rw-context strong { color: var(--rw-heading); }
.rw-context-bar { padding: 10px 18px; border-bottom: 1px solid var(--rw-border); background: var(--rw-light); }
.rw-context-bar span:not(:empty):not(.rw-badge)::before { content: "›"; margin-right: 10px; color: #A78BFA; }
.rw-context-bar [data-rw-att-crumb] { color: var(--rw-primary-hover); font-weight: 600; }

.rw-journey { list-style: none; margin: 0 auto 16px; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.rw-jstep { display: grid; gap: 6px; align-content: start; padding: 16px; border-radius: 16px; border: 1px solid var(--rw-border); background: var(--rw-card); }
.rw-jstep-ic { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--rw-light); color: var(--rw-primary); }
.rw-jstep-ic svg { width: 18px; height: 18px; }
.rw-jstep-verb { font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--rw-primary-hover); }
.rw-jstep-title { font-size: 15px; font-weight: 600; color: var(--rw-heading); line-height: 1.35; }
.rw-jstep-state { font-size: 13px; font-weight: 600; color: var(--rw-muted); }
.rw-jstep-attention { border-color: #FDE68A; background: linear-gradient(135deg, var(--rw-card), var(--rw-warn-soft)); }
.rw-jstep-attention .rw-jstep-ic { background: var(--rw-warn-soft); color: var(--rw-warn); }
.rw-jstep-attention .rw-jstep-state { color: var(--rw-warn); }
.rw-jstep-upcoming .rw-jstep-ic { background: var(--rw-teal-soft); color: var(--rw-teal); }

.rw-timeline { list-style: none; margin: 0; padding: 0 0 0 14px; border-left: 2px solid var(--rw-border); display: grid; gap: 10px; }
.rw-timeline li { position: relative; font-size: 14px; transition: opacity var(--rw-mid); }
.rw-timeline li::before { content: ""; position: absolute; left: -21px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: var(--rw-card); border: 2px solid #CBD5E1; }
.rw-timeline li.is-activity::before { border-color: var(--rw-primary); background: var(--rw-primary); }
.rw-timeline li.is-gap { color: var(--rw-muted); font-style: italic; }
.rw-timeline li.is-now::before { border-color: #F59E0B; background: #F59E0B; }
.rw-timeline li.is-now { font-weight: 600; color: var(--rw-warn); }
.rw-timeline li.is-pending { color: var(--rw-muted); }
.rw-timeline li.is-new::before { border-color: var(--rw-ok); background: var(--rw-ok); }
.rw-timeline li.is-new { color: var(--rw-ok); font-weight: 600; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-timeline li.is-dim { opacity: .2; }
.rw-timeline span { display: inline-block; min-width: 150px; font-weight: 700; color: var(--rw-heading); font-style: normal; }
.rw-timeline-light span { min-width: 70px; }
.rw-timeline + p { margin-top: 14px; }
.rw-why-list { list-style: none; margin: 0 0 6px; padding: 0; display: grid; gap: 8px; }
.rw-why-list li { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px; background: #F8FAFC; border: 1px solid var(--rw-border); font-weight: 600; color: var(--rw-heading); font-size: 14.5px; }
.rw-why-list svg { width: 16px; height: 16px; color: var(--rw-warn); }
#rw-signal-explain { margin: 6px 0 0; line-height: 1.6; }

.rw-trust { max-width: 1120px; margin: 16px auto 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.rw-trust-item { padding: 16px; border-radius: 16px; border: 1px solid var(--rw-border); background: var(--rw-card); }
.rw-trust-item p { margin: 0 0 6px; line-height: 1.5; }
.rw-trust-observation { border-top: 3px solid #94A3B8; }
.rw-trust-interpretation { border-top: 3px solid var(--color-teal-500, #14B8A6); }
.rw-trust-recommendation { border-top: 3px solid var(--rw-primary); }

.rw-weeks { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 8px; }
.rw-weeks li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--rw-border); font-size: 14.5px; }
.rw-weeks svg { width: 18px; height: 18px; }
.rw-weeks em { font-style: normal; font-size: 13px; font-weight: 700; }
.rw-weeks .is-done svg, .rw-weeks .is-done em { color: var(--rw-ok); }
.rw-weeks .is-now { border-color: #FDE68A; background: var(--rw-warn-soft); }
.rw-weeks .is-now svg, .rw-weeks .is-now em { color: var(--rw-warn); }
.rw-callout { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 10px 12px; border-radius: 12px; background: var(--rw-light); color: var(--rw-heading); font-weight: 600; }
.rw-callout svg { width: 16px; height: 16px; color: var(--rw-primary); margin-top: 3px; }

.rw-roles { display: flex; gap: 4px; margin: 0 auto; padding: 4px; border-radius: 12px; background: #EEF2F7; }
.rw-role { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 9px; background: transparent; font: inherit; font-size: 14px; font-weight: 600; color: var(--rw-muted); cursor: pointer; transition: all var(--rw-fast) var(--rw-ease); }
.rw-role svg { width: 16px; height: 16px; }
.rw-role[aria-selected="true"] { background: var(--rw-card); color: var(--rw-primary-hover); box-shadow: 0 1px 3px rgba(15, 23, 42, .12); }
.rw-panel { padding: clamp(18px, 3vw, 32px); }
.rw-panel-flush { padding: 0; }
.rw-panel:focus { outline: none; }
.rw-panel.is-entering { animation: rw-in 320ms var(--rw-ease) both; }
.rw-panel > p { line-height: 1.6; }
.rw-question { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 6px 12px; border-radius: 999px; background: var(--rw-teal-soft); color: var(--rw-teal); font-size: 13.5px; font-weight: 700; }
.rw-question svg { width: 15px; height: 15px; }
.rw-edge-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding: 12px 20px; border-bottom: 1px solid var(--rw-border); }
.rw-empty-state { display: flex; gap: 14px; align-items: flex-start; margin: 20px; padding: 18px; border-radius: 16px; border: 1px dashed var(--rw-line); background: var(--rw-light); animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-empty-state > svg { width: 24px; height: 24px; color: var(--rw-primary); }
.rw-empty-state p { margin: 4px 0 10px; }
.rw-tabs { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px; margin: 0 0 14px; border-radius: 14px; background: #EEF2F7; width: max-content; max-width: 100%; box-sizing: border-box; }
.rw-tabs [role="tab"] { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; font: inherit; font-size: 13.5px; font-weight: 600; color: var(--rw-muted); cursor: pointer; }
.rw-tabs [role="tab"] svg { width: 15px; height: 15px; }
.rw-tabs [role="tab"][aria-selected="true"] { background: var(--rw-card); color: var(--rw-primary-hover); box-shadow: 0 1px 3px rgba(15, 23, 42, .12); }
.rw-tabs-wide { width: 100%; }
.rw-attention-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); }
.rw-attention-grid > .rw-pad { border-right: 1px solid var(--rw-border); }
.rw-queue { list-style: none; margin: 0 0 10px; padding: 0; display: grid; gap: 8px; }
.rw-queue-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--rw-border); border-radius: 14px; transition: background var(--rw-mid), border-color var(--rw-mid); }
.rw-queue-row.is-selected { border-color: #D8B4FE; background: var(--rw-light); }
.rw-queue-body { display: grid; gap: 2px; min-width: 0; }
.rw-queue-body strong { color: var(--rw-heading); }
.rw-detail-col { min-width: 0; padding: 20px; min-height: 420px; }
.rw-detail-empty { display: grid; place-content: center; justify-items: center; gap: 8px; height: 100%; min-height: 380px; text-align: center; color: var(--rw-muted); }
.rw-detail-empty svg { width: 28px; height: 28px; color: var(--rw-primary); }
.rw-detail { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-why { padding: 12px 14px; border-radius: 12px; background: #F8FAFC; border: 1px solid var(--rw-border); margin-bottom: 12px; }
.rw-why p:last-child { margin: 0; line-height: 1.55; }
.rw-dl { margin: 0 0 12px; display: grid; gap: 8px; }
.rw-dl > div { display: grid; grid-template-columns: 170px 1fr; gap: 10px; font-size: 14.5px; }
.rw-dl dt { font-weight: 700; color: var(--rw-muted); font-size: 13px; }
.rw-dl dd { margin: 0; color: var(--rw-heading); }
.rw-dl-tight > div { grid-template-columns: 80px 1fr; }
.rw-dl-wide > div { padding-bottom: 8px; border-bottom: 1px solid var(--rw-border); }
.rw-history { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.rw-history li { display: grid; grid-template-columns: 70px 1fr; gap: 10px; padding: 8px 10px; border-radius: 10px; background: var(--rw-ok-soft); font-size: 13.5px; }
.rw-history li span { font-weight: 700; color: var(--rw-ok); }
.rw-history li.is-now { background: var(--rw-warn-soft); }
.rw-history li.is-now span { color: var(--rw-warn); }
#rw-summary > p { margin: 10px 0; }
.rw-suggest { margin-top: 10px; padding: 12px; border-radius: 12px; background: var(--rw-card); border: 1px solid var(--rw-line); animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-suggest p { margin: 0 0 10px; }
.rw-control { margin-top: 12px; padding: 10px 14px; border-radius: 12px; border: 1px solid var(--rw-border); font-size: 14px; }
.rw-control summary { display: flex; align-items: center; gap: 8px; min-height: 30px; font-weight: 700; color: var(--rw-heading); cursor: pointer; }
.rw-control summary svg { width: 16px; height: 16px; color: var(--rw-teal); }
.rw-control ul { list-style: none; margin: 8px 0; padding: 0; display: grid; gap: 4px; }
.rw-control li { display: flex; gap: 8px; align-items: center; }
.rw-control li svg { width: 14px; height: 14px; color: var(--rw-ok); }
.rw-followup, .rw-done { margin-top: 14px; padding: 16px; border-radius: 16px; border: 1px solid #D8B4FE; background: #FCFBFF; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-done { border-color: #A7F3D0; background: var(--rw-ok-soft); }
.rw-done p { margin: 0 0 8px; }
.rw-done-title { display: flex; align-items: center; gap: 8px; font-size: 17px; font-weight: 800; color: var(--rw-ok) !important; margin: 0 0 8px; }
.rw-done-title svg { width: 20px; height: 20px; }
.rw-done-line { display: flex; align-items: center; gap: 8px; margin: 12px 0 0; padding: 10px 12px; border-radius: 12px; background: var(--rw-ok-soft); color: var(--rw-ok); font-weight: 600; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-done-line svg { width: 17px; height: 17px; }

.rw-stats { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 10px; }
.rw-stats li { display: grid; justify-items: center; gap: 4px; padding: 14px; text-align: center; box-shadow: none; border-radius: 14px; }
.rw-stats strong { font-size: 26px; font-weight: 800; color: var(--rw-heading); line-height: 1.1; }
.rw-stats span { font-size: 13px; color: var(--rw-muted); }
.rw-stats-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rw-stats-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rw-stat-attention { background: var(--rw-warn-soft); }
.rw-stat-attention strong { color: var(--rw-warn); }
.rw-stat-info { background: var(--rw-teal-soft); }
.rw-stat-info strong { color: var(--rw-teal); }
.rw-stat-ok { background: var(--rw-ok-soft); }
.rw-stat-ok strong { color: var(--rw-ok); }

.rw-return-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; max-width: 1120px; margin: 0 auto; align-items: start; }
.rw-welcome-card { display: grid; gap: 4px; }
.rw-welcome-card > p { margin: 0 0 8px; }
.rw-welcome-card .rw-h2 { margin: 0 0 6px; }
.rw-msg { display: flex; gap: 10px; align-items: flex-start; padding: 12px; border-radius: 12px; background: var(--rw-light); border: 1px solid var(--rw-line); font-size: 14px; line-height: 1.5; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-msg svg { width: 18px; height: 18px; color: var(--rw-primary); margin-top: 2px; }
.rw-resume { padding: 16px; margin: 8px 0 12px; border-radius: 16px; border: 1px solid var(--rw-border); background: #FCFBFF; }
.rw-resume > p { margin: 0 0 6px; }
.rw-plan { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 8px; }
.rw-plan li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--rw-border); background: var(--rw-card); transition: background var(--rw-mid), border-color var(--rw-mid); }
.rw-plan li > span:nth-child(2) { display: grid; gap: 2px; }
.rw-plan li strong { color: var(--rw-heading); font-size: 14.5px; }
.rw-plan em { font-style: normal; font-size: 13px; font-weight: 700; color: var(--rw-muted); }
.rw-plan li.is-done { background: var(--rw-ok-soft); border-color: #A7F3D0; }
.rw-plan li.is-done .rw-plan-n { background: var(--rw-ok); color: #fff; }
.rw-plan li.is-now { border-color: var(--rw-primary); box-shadow: 0 0 0 3px rgba(109, 40, 217, .10); }
.rw-plan-compact li { padding: 8px 12px; }
.rw-plan-n { display: inline-grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 50%; background: var(--rw-light); color: var(--rw-primary-hover); font-size: 13px; font-weight: 800; transition: background var(--rw-mid), color var(--rw-mid); }
.rw-total { padding: 10px 2px; border-top: 1px solid var(--rw-border); margin: 0 0 12px; }
.rw-total strong { color: var(--rw-heading); }

.rw-journey-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; }
.rw-journey-grid > .rw-pad { border-right: 1px solid var(--rw-border); min-width: 0; }
.rw-steps-nav { list-style: none; margin: 0 0 18px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.rw-steps-nav li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: #F1F5F9; color: var(--rw-muted); font-size: 13px; font-weight: 700; }
.rw-steps-nav li svg { width: 15px; height: 15px; }
.rw-steps-nav li.is-now { background: var(--rw-light); color: var(--rw-primary-hover); }
.rw-steps-nav li.is-done { background: var(--rw-ok-soft); color: var(--rw-ok); }
[data-rw-step] { animation: rw-in var(--rw-mid) var(--rw-ease) both; }
[data-rw-step] > .rw-btn, [data-rw-step] > .rw-row { margin-top: 12px; }
.rw-player { border-radius: 16px; overflow: hidden; background: #0F172A; color: #E2E8F0; }
.rw-player-title { margin: 0; padding: 10px 14px; font-size: 14px; font-weight: 600; background: #1E293B; }
.rw-player-screen { display: grid; place-content: center; justify-items: center; gap: 8px; aspect-ratio: 16 / 7; background: radial-gradient(60% 80% at 30% 20%, rgba(109, 40, 217, .45), transparent 70%), #0F172A; font-size: 14px; }
.rw-player-screen svg { width: 36px; height: 36px; }
.rw-player-bar { display: flex; align-items: center; gap: 12px; padding: 10px 14px; }
.rw-player-bar .rw-bar { background: #334155; }
.rw-player-time { font-size: 13px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.rw-chapters-list { list-style: none; margin: 12px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; font-size: 13.5px; }
.rw-chapters-list li { padding: 8px 10px; border-radius: 10px; background: #F8FAFC; }
.rw-chapters-list li span { font-weight: 700; margin-right: 8px; font-variant-numeric: tabular-nums; color: var(--rw-muted); }
.rw-chapters-list li.is-current { background: var(--rw-light); color: var(--rw-primary-hover); font-weight: 600; }
.rw-chain { list-style: none; margin: 10px 0 12px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.rw-chain li { padding: 5px 11px; border-radius: 999px; background: #F1F5F9; color: var(--rw-muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; transition: background var(--rw-mid), color var(--rw-mid); }
.rw-chain li:not(:last-child)::after { content: " →"; color: #A78BFA; }
.rw-chain li.is-on { background: var(--rw-light); color: var(--rw-primary-hover); }
.rw-chain li.is-done { background: var(--rw-ok-soft); color: var(--rw-ok); }
.rw-result { margin-top: 12px; padding: 16px; border-radius: 16px; border: 1px solid #FDE68A; background: var(--rw-warn-soft); animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-result p { margin: 0 0 8px; }
.rw-score { display: flex; align-items: baseline; gap: 10px; }
.rw-score strong { font-size: 28px; color: var(--rw-heading); }
.rw-score span { font-weight: 700; color: var(--rw-warn); }
[data-rw-asg-drafting] { margin-top: 12px; animation: rw-in var(--rw-mid) var(--rw-ease) both; }

.rw-meter { padding: 20px; display: grid; gap: 12px; align-content: start; justify-items: center; background: #FCFBFF; }
.rw-meter .rw-k { justify-self: stretch; justify-content: center; }
.rw-ring { position: relative; width: 150px; height: 150px; }
.rw-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.rw-ring circle { fill: none; stroke-width: 10; stroke-linecap: round; }
.rw-ring-bg { stroke: #EEF2F7; }
.rw-ring-cohort { stroke: #CBD5E1; stroke-width: 3 !important; stroke-dasharray: 326.7; stroke-dashoffset: calc(326.7 - 326.7 * .68); }
.rw-ring-fg { stroke: #F59E0B; stroke-dasharray: 326.7; stroke-dashoffset: calc(326.7 - 326.7 * var(--v) / 100); transition: stroke-dashoffset var(--rw-slow) var(--rw-ease), stroke var(--rw-mid); }
.rw-ring.is-info .rw-ring-fg { stroke: var(--color-teal-500, #14B8A6); }
.rw-ring.is-ok .rw-ring-fg { stroke: var(--rw-primary); }
.rw-ring > div { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; }
.rw-ring strong { font-size: 32px; font-weight: 800; color: var(--rw-heading); font-variant-numeric: tabular-nums; }
.rw-ring span { font-size: 12px; color: var(--rw-muted); }
.rw-meter-status { margin: 0; }
.rw-check { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; width: 100%; font-size: 14px; }
.rw-check li { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-check li svg { width: 16px; height: 16px; color: var(--rw-muted); }
.rw-check li.is-done { background: var(--rw-ok-soft); color: var(--rw-ok); border-color: #A7F3D0; font-weight: 600; }
.rw-check li.is-done svg { color: var(--rw-ok); }
.rw-check li.is-now { border-color: var(--rw-primary); color: var(--rw-primary-hover); font-weight: 600; }
.rw-status-path { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; }
.rw-status-path li { padding: 3px 8px; border-radius: 999px; font-size: 11.5px; font-weight: 700; color: var(--rw-muted); background: #F1F5F9; opacity: .6; transition: all var(--rw-mid); }
.rw-status-path li.is-on { opacity: 1; }
.rw-status-path li.is-on.rw-path-attention { background: var(--rw-warn-soft); color: var(--rw-warn); }
.rw-status-path li.is-on.rw-path-info { background: var(--rw-teal-soft); color: var(--rw-teal); }
.rw-status-path li.is-on.rw-path-ok { background: var(--rw-ok-soft); color: var(--rw-ok); }

.rw-back-card { max-width: 1120px; margin: 16px auto 0; border-color: #A7F3D0; background: linear-gradient(135deg, var(--rw-card), var(--rw-ok-soft)); animation: rw-in 600ms var(--rw-ease) both; }
.rw-back-card > p { margin: 8px 0; }
.rw-back-list { list-style: none; margin: 10px 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.rw-back-list li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: var(--rw-card); border: 1px solid var(--rw-border); font-size: 13.5px; font-weight: 600; color: var(--rw-heading); }
.rw-back-list li svg { width: 15px; height: 15px; color: var(--rw-ok); }

.rw-activity { list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 6px; font-size: 14px; }
.rw-activity li { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px; background: #F8FAFC; }
.rw-activity li svg { width: 15px; height: 15px; color: var(--rw-ok); }
.rw-activity li.is-new { animation: rw-in var(--rw-mid) var(--rw-ease) both; background: var(--rw-ok-soft); color: var(--rw-ok); font-weight: 600; }
.rw-rtimeline { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.rw-rtimeline li { display: grid; grid-template-columns: 140px 1fr; gap: 10px; padding: 8px 10px; border-radius: 10px; background: #F8FAFC; font-size: 13.5px; opacity: .45; transition: opacity var(--rw-mid), background var(--rw-mid); }
.rw-rtimeline li span { font-weight: 700; color: var(--rw-muted); }
.rw-rtimeline li.is-on { opacity: 1; background: var(--rw-light); }
.rw-rtimeline li.is-on span { color: var(--rw-primary-hover); }
.rw-words { list-style: none; margin: 0 0 8px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }

.rw-scenario { animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-sc-steps { list-style: none; margin: 16px 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.rw-sc-steps li { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 14px; border: 1px solid var(--rw-border); font-size: 14px; font-weight: 600; color: var(--rw-muted); transition: all var(--rw-mid); }
.rw-sc-steps li.is-now { border-color: var(--rw-primary); color: var(--rw-heading); box-shadow: 0 0 0 3px rgba(109, 40, 217, .10); }
.rw-sc-steps li.is-done { background: var(--rw-ok-soft); border-color: #A7F3D0; color: var(--rw-ok); }
.rw-sc-steps li.is-done .rw-plan-n { background: var(--rw-ok); color: #fff; }
.rw-by-stage { list-style: none; margin: 0 auto; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.rw-by-stage li { display: grid; gap: 4px; box-shadow: none; }
.rw-by-stage svg { width: 20px; height: 20px; color: var(--rw-primary); }
.rw-by-stage strong { color: var(--rw-heading); text-transform: uppercase; letter-spacing: .06em; font-size: 13px; }
.rw-by-stage span { font-size: 14px; color: var(--rw-muted); }

.rw-avoid, .rw-prefer { display: flex; gap: 10px; align-items: flex-start; margin: 10px 0 0; padding: 10px 12px; border-radius: 12px; font-size: 14.5px; line-height: 1.5; }
.rw-avoid { background: #F8FAFC; color: var(--rw-muted); }
.rw-avoid span { text-decoration: line-through; text-decoration-color: rgba(100, 116, 139, .5); }
.rw-avoid strong { text-decoration: none; }
.rw-prefer { background: var(--rw-ok-soft); color: var(--rw-heading); }
.rw-avoid svg, .rw-prefer svg { width: 16px; height: 16px; margin-top: 3px; }
.rw-prefer svg { color: var(--rw-ok); }
.rw-reasons-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 20px; margin-top: 18px; }
.rw-reasons { list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 8px; }
.rw-reasons li { display: grid; grid-template-columns: 160px minmax(0, 1fr) 30px; align-items: center; gap: 10px; font-size: 14px; }
.rw-reasons strong { text-align: right; color: var(--rw-heading); }
.rw-group { padding: 16px; border-radius: 16px; background: var(--rw-light); border: 1px solid var(--rw-line); }
.rw-group > p { margin: 0 0 10px; }
.rw-group > .rw-small { display: block; margin-top: 6px; }
.rw-hierarchy { list-style: none; margin: 0 auto; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; counter-reset: h; }
.rw-hierarchy li { display: grid; gap: 4px; padding: 16px; border-radius: 16px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-hierarchy svg { width: 20px; height: 20px; color: var(--rw-primary); }
.rw-hierarchy strong { color: var(--rw-heading); }
.rw-hierarchy span { font-size: 14px; color: var(--rw-muted); }

.rw-program-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.rw-program-grid .rw-stats li { background: var(--rw-bg); border: 1px solid var(--rw-border); }
.rw-program-grid .rw-stats strong { font-size: 22px; }
.rw-funnel { list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 8px; }
.rw-funnel li { display: grid; grid-template-columns: 150px minmax(0, 1fr) 30px; align-items: center; gap: 10px; font-size: 14px; }
.rw-funnel strong { text-align: right; color: var(--rw-heading); }
.rw-funnel li.is-gap span:first-child { font-weight: 700; color: var(--rw-warn); }
.rw-gap-line { display: flex; gap: 8px; align-items: flex-start; margin: 12px 0 6px; padding: 10px 12px; border-radius: 12px; background: var(--rw-warn-soft); color: var(--rw-heading); font-size: 14.5px; }
.rw-gap-line svg { width: 16px; height: 16px; color: var(--rw-warn); margin-top: 3px; }

.rw-ticks, .rw-escalation { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.rw-ticks li { display: flex; align-items: center; gap: 8px; font-weight: 600; color: var(--rw-heading); }
.rw-ticks svg { width: 16px; height: 16px; color: var(--rw-ok); }
.rw-escalation li { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 12px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-escalation li > span:last-child { display: grid; }
.rw-escalation strong { color: var(--rw-heading); font-size: 14.5px; }
#rw-self article > p { margin: 0 0 10px; }

.rw-assistant { max-width: 960px; }
.rw-prompts { display: flex; flex-wrap: wrap; gap: 8px; }
.rw-rules { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; border-top: 1px solid var(--rw-border); background: #FCFBFF; }

.rw-int-grid { list-style: none; margin: 0 auto 16px; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.rw-int-grid li { display: grid; gap: 8px; justify-items: start; box-shadow: none; }
.rw-int-grid svg { width: 20px; height: 20px; color: var(--rw-primary); }
.rw-int-grid strong { color: var(--rw-heading); }
.rw-manager { max-width: 1120px; margin: 0 auto; box-shadow: none; }
.rw-manager p { line-height: 1.6; }

.rw-phones { display: flex; flex-wrap: wrap; justify-content: center; gap: 40px; }
.rw-phone { width: 300px; padding: 12px; border-radius: 40px; background: #0F172A; box-shadow: 0 30px 60px rgba(15, 23, 42, .25); box-sizing: border-box; }
.rw-phone-screen { display: grid; gap: 10px; align-content: start; padding: 22px 14px; border-radius: 30px; background: var(--rw-bg); min-height: 460px; }
.rw-phone-screen > div { display: grid; gap: 10px; animation: rw-in var(--rw-mid) var(--rw-ease) both; }
.rw-phone-screen p { margin: 0; }
.rw-phone-screen .rw-h4 { margin: 0; }
.rw-phone-screen .rw-pace { margin: 0; }
.rw-phone-screen .rw-pace > div { grid-template-columns: 52px minmax(0, 1fr) 36px; }
.rw-phone-card { padding: 12px; border-radius: 14px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-phone-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: 13.5px; }
.rw-phone-list li { display: flex; align-items: center; gap: 8px; padding: 10px; border-radius: 12px; background: var(--rw-card); border: 1px solid var(--rw-border); font-weight: 600; color: var(--rw-heading); }
.rw-phone-list svg { width: 16px; height: 16px; color: var(--rw-primary); }

.rw-browser { max-width: 1000px; margin: 0 auto; border-radius: 18px; overflow: hidden; border: 1px solid var(--rw-border); background: #0F172A; box-shadow: 0 30px 70px rgba(15, 23, 42, .22); }
.rw-browser-bar { display: flex; align-items: center; gap: 6px; padding: 10px 14px; background: #1E293B; }
.rw-browser-bar span { width: 10px; height: 10px; border-radius: 50%; background: #475569; }
.rw-browser-bar em { margin: 0 auto; padding: 3px 14px; border-radius: 8px; background: #0F172A; color: #94A3B8; font-size: 12px; font-style: normal; }
.rw-video-frame { position: relative; aspect-ratio: 16 / 9; background: #0F172A; }
.rw-video { display: block; width: 100%; height: 100%; }
.rw-video-play { position: absolute; inset: 0; margin: auto; width: max-content; height: max-content; display: inline-flex; align-items: center; gap: 10px; padding: 14px 20px; border: 0; border-radius: 999px; background: #fff; color: var(--rw-heading); font: inherit; font-weight: 700; font-size: 16px; cursor: pointer; box-shadow: 0 12px 30px rgba(0, 0, 0, .35); }
.rw-video-play svg { width: 20px; height: 20px; color: var(--rw-primary); }
.rw-video-soon { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 10px; padding: 24px; color: #CBD5E1; text-align: center; }
.rw-video-soon svg { width: 36px; height: 36px; }
.rw-chapters { list-style: none; margin: 16px auto 0; padding: 0; max-width: 1000px; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.rw-transcript { max-width: 760px; margin: 18px auto 0; padding: 14px 18px; border-radius: 16px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-transcript summary { font-weight: 700; color: var(--rw-heading); cursor: pointer; min-height: 32px; display: flex; align-items: center; }
.rw-transcript ol { margin: 10px 0 0; padding: 0; list-style: none; display: grid; gap: 6px; font-size: 14.5px; line-height: 1.6; }
.rw-links { list-style: none; max-width: 1000px; margin: 32px auto 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 28px; font-size: 14px; }
.rw-links li { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--rw-border); }
.rw-links span { color: var(--rw-muted); }
.rw-links a { font-weight: 600; text-decoration: none; white-space: nowrap; }

.rw-uses { list-style: none; margin: 0 auto 24px; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.rw-uses a { display: flex; align-items: center; gap: 10px; height: 100%; box-sizing: border-box; font-weight: 600; color: var(--rw-heading) !important; text-decoration: none; box-shadow: none; transition: border-color var(--rw-fast); }
.rw-uses a:hover { border-color: var(--rw-primary); }
.rw-uses svg { width: 20px; height: 20px; color: var(--rw-primary); }
.rw-princ { list-style: none; margin: 0 auto; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.rw-princ li { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "i k" "i v"; gap: 0 10px; padding: 12px 14px; border-radius: 14px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-princ svg { grid-area: i; width: 20px; height: 20px; color: var(--rw-primary); margin-top: 2px; }
.rw-princ strong { grid-area: k; color: var(--rw-heading); }
.rw-princ span { grid-area: v; font-size: 13.5px; color: var(--rw-muted); }
.rw-integrity { max-width: 1120px; margin: 16px auto 0; padding: 12px 16px; border-radius: 16px; background: var(--rw-card); border: 1px solid var(--rw-border); }
.rw-integrity summary { display: flex; align-items: center; gap: 8px; min-height: 32px; font-weight: 700; color: var(--rw-heading); cursor: pointer; }
.rw-integrity summary svg { width: 17px; height: 17px; color: var(--rw-primary); }
.rw-table { width: 100%; border-collapse: collapse; font-size: 14px; margin-top: 10px; }
.rw-table th, .rw-table td { padding: 10px 12px; border-bottom: 1px solid var(--rw-border); text-align: left; vertical-align: middle; }
.rw-table thead th { font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--rw-muted); }

.rw-final-inner { text-align: center; max-width: 780px; }
.rw-final h2 { color: #fff !important; font-size: clamp(30px, 4vw, 46px); line-height: 1.1; margin: 0 0 14px; text-wrap: balance; }
.rw-final .rw-ctas { justify-content: center; margin-top: 24px; }
.rw-final-talk { margin: 20px 0 0; }
.rw-final-talk a { display: inline-flex; align-items: center; gap: 6px; color: #E9D5FF !important; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.rw-final-talk a svg { width: 16px; height: 16px; }
.rw-final a:focus-visible, .rw-final button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

@media (max-width: 1024px) {
  .rw-hero-grid, .rw-journey-grid { grid-template-columns: minmax(0, 1fr); }
  .rw-journey-grid > .rw-pad { border-right: 0; border-bottom: 1px solid var(--rw-border); }
  .rw-meter { grid-template-columns: auto minmax(0, 1fr); justify-items: start; align-items: center; }
  .rw-meter .rw-k, .rw-meter .rw-status-path { grid-column: 1 / -1; }
  .rw-by-stage { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rw-int-grid, .rw-uses { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rw-app-bar .rw-dots { display: none; }
}
@media (max-width: 900px) {
  .rw-grid-2, .rw-attention-grid, .rw-return-grid, .rw-program-grid, .rw-reasons-grid, .rw-trust, .rw-rules { grid-template-columns: minmax(0, 1fr); }
  .rw-attention-grid > .rw-pad { border-right: 0; border-bottom: 1px solid var(--rw-border); }
  .rw-detail-col { min-height: 0; }
  .rw-detail-empty { min-height: 120px; }
  .rw-journey, .rw-hierarchy { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rw-princ { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rw-return-grid > :first-child { order: 0; }
}
@media (max-width: 640px) {
  .rw-ctas .rw-btn, .rw-final .rw-ctas .btn { width: 100%; }
  .rw-app-bar { flex-wrap: wrap; }
  .rw-roles { order: 3; width: 100%; margin: 0; }
  .rw-role { flex: 1; justify-content: center; padding: 0 6px; font-size: 13px; white-space: nowrap; }
  .rw-reset { margin-left: auto; }
  .rw-reset span { display: none; }
  .rw-signals, .rw-chapters-list, .rw-links, .rw-princ, .rw-journey, .rw-hierarchy { grid-template-columns: minmax(0, 1fr); }
  .rw-by-stage, .rw-int-grid, .rw-uses, .rw-stats-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rw-stats-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rw-stats-3 strong { font-size: 22px; }
  .rw-tabs { width: 100%; }
  .rw-queue-row { grid-template-columns: auto minmax(0, 1fr); }
  .rw-queue-row > .rw-status { grid-column: 2; justify-self: start; }
  .rw-queue-row > .rw-btn { grid-column: 1 / -1; }
  .rw-pace > div { grid-template-columns: 90px minmax(0, 1fr) 40px; }
  .rw-dl > div, .rw-dl-tight > div, .rw-rtimeline li, .rw-history li { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .rw-reasons li, .rw-funnel li { grid-template-columns: minmax(0, 1fr) 30px; }
  .rw-reasons li .rw-bar, .rw-funnel li .rw-bar { grid-column: 1 / -1; grid-row: 2; }
  .rw-timeline span { display: block; min-width: 0; }
  .rw-meter { grid-template-columns: minmax(0, 1fr); justify-items: center; }
  .rw-plan li { grid-template-columns: auto minmax(0, 1fr); }
  .rw-plan em { grid-column: 2; }
  .rw-edge-bar { padding: 12px 14px; }
  .rw-table thead { display: none; }
  .rw-table, .rw-table tbody { display: block; }
  .rw-table tr { display: grid; gap: 4px; padding: 10px 0; border-bottom: 1px solid var(--rw-border); }
  .rw-table th, .rw-table td { padding: 0; border: 0; }
  .rw-phone { width: 100%; max-width: 300px; }
}
@media (max-width: 400px) {
  .rw .container { padding-left: 16px; padding-right: 16px; }
  .rw-pad, .rw-detail-col { padding: 14px; }
  .rw-pad-sm { padding: 12px; }
  .rw-role svg { display: none; }
  .rw-by-stage, .rw-int-grid, .rw-uses { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .rw *, .rw *::before, .rw *::after { animation-duration: 1ms !important; transition-duration: 1ms !important; }
}
