/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ink-950:#0d1117;--color-ink-900:#131820;--color-ink-850:#161b22;--color-ink-700:#232a34;--color-ink-600:#2f3742;--color-ink-500:#4a5462;--color-ink-400:#6b7684;--color-ink-300:#98a1ad;--color-ink-200:#c5ccd4;--color-ink-100:#e4e8ec;--color-ink-50:#f7f9fa;--color-signal-600:#0c8a8a;--color-signal-500:#0e9f9f;--color-mind-500:#6d5ae6;--color-mind-300:#b0a5f5;--color-healthy-500:#3fa96a;--color-warm-500:#e0913a;--color-risk-500:#e0566b;--color-cold-500:#5b7a99;--font-display:"Archivo", ui-sans-serif, system-ui, sans-serif;--radius-card:10px;--ease-out-soft:cubic-bezier(.22, 1, .36, 1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--line)}html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable}body{background-color:var(--bg-base);color:var(--fg-primary);font-family:var(--font-sans);font-feature-settings:"cv05" 1, "ss01" 1;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.018em;font-weight:600}:focus-visible{outline:2px solid var(--color-signal-500);outline-offset:2px;border-radius:4px}::selection{background:#0e9f9f47}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--color-signal-500) 28%, transparent)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}}@layer components{.spine{padding-left:.875rem;position:relative}.spine:before{content:"";background:var(--line-strong);border-radius:999px;width:3px;position:absolute;top:.125rem;bottom:.125rem;left:0}.spine-hot:before{background:var(--color-risk-500)}.spine-warm:before{background:var(--color-warm-500)}.spine-healthy:before{background:var(--color-healthy-500)}.spine-cold:before{background:var(--color-cold-500)}.spine-ai:before{background:var(--color-mind-500)}.card{background:var(--bg-surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.eyebrow{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--fg-subtle);font-size:.6875rem}.figure{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.ai-mark{font-family:var(--font-mono);color:var(--color-mind-500);background:#6d5ae61a;align-items:center;gap:.375rem;font-size:.6875rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ai-mark{background:color-mix(in srgb, var(--color-mind-500) 10%, transparent)}}.ai-mark{border:1px solid #6d5ae63d}@supports (color:color-mix(in lab, red, red)){.ai-mark{border:1px solid color-mix(in srgb, var(--color-mind-500) 24%, transparent)}}.ai-mark{border-radius:999px;padding:.125rem .5rem}.dark .ai-mark{color:var(--color-mind-300)}.btn{height:2.5rem;transition:background-color .14s var(--ease-out-soft), opacity .14s;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding-inline:1rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn-primary{background:var(--color-signal-500);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-signal-600)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{color:var(--fg-muted);border:1px solid var(--line);background:0 0}.btn-ghost:hover{background:var(--bg-sunken);color:var(--fg-primary)}.field{background:var(--bg-base);border:1px solid var(--line-strong);width:100%;height:2.625rem;color:var(--fg-primary);border-radius:8px;padding-inline:.75rem;font-size:.9375rem;transition:border-color .14s,box-shadow .14s}.field:focus{border-color:var(--color-signal-500);outline:none;box-shadow:0 0 0 3px #0e9f9f2e}@supports (color:color-mix(in lab, red, red)){.field:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-signal-500) 18%, transparent)}}.field::placeholder{color:var(--fg-subtle)}.kbd{font-family:var(--font-mono);border:1px solid var(--line-strong);color:var(--fg-subtle);background:var(--bg-base);border-bottom-width:2px;border-radius:5px;padding:.125rem .375rem;font-size:.6875rem}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-0\.5{top:calc(var(--spacing) * .5)}.bottom-0\.5{bottom:calc(var(--spacing) * .5)}.left-0{left:0}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-14{height:calc(var(--spacing) * 14)}.h-\[2\.625rem\]{height:2.625rem}.h-\[calc\(100dvh-3\.5rem\)\]{height:calc(100dvh - 3.5rem)}.h-auto{height:auto}.h-full{height:100%}.max-h-80{max-height:calc(var(--spacing) * 80)}.min-h-dvh{min-height:100dvh}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-60{width:calc(var(--spacing) * 60)}.w-72{width:calc(var(--spacing) * 72)}.w-\[3px\]{width:3px}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-48{min-width:calc(var(--spacing) * 48)}.min-w-52{min-width:calc(var(--spacing) * 52)}.min-w-56{min-width:calc(var(--spacing) * 56)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[3px\]{gap:3px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2\.5{column-gap:calc(var(--spacing) * 2.5)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab, var(--color-black) 40%, transparent)}}.bg-transparent{background-color:#0000}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-10{padding:calc(var(--spacing) * 10)}.p-12{padding:calc(var(--spacing) * 12)}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-\[12vh\]{padding-top:12vh}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-1{padding-bottom:var(--spacing)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-3\.5{padding-left:calc(var(--spacing) * 3.5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-display{font-family:var(--font-display)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.625rem\]{font-size:.625rem}.text-\[0\.6875rem\]{font-size:.6875rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[0\.9375rem\]{font-size:.9375rem}.text-\[2\.4rem\]{font-size:2.4rem}.leading-\[1\.12\]{--tw-leading:1.12;line-height:1.12}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.4em\]{--tw-tracking:.4em;letter-spacing:.4em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[height\]{transition-property:height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.outline-none{--tw-outline-style:none;outline-style:none}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media (hover:hover){.hover\:border-\[var\(--color-signal-500\)\]:hover{border-color:var(--color-signal-500)}.hover\:bg-\[var\(--bg-sunken\)\]:hover{background-color:var(--bg-sunken)}.hover\:underline:hover{text-decoration-line:underline}}.disabled\:opacity-40:disabled{opacity:.4}@media (width>=40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:-mx-6{margin-inline:calc(var(--spacing) * -6)}.sm\:block{display:block}.sm\:inline-flex{display:inline-flex}.sm\:table-cell{display:table-cell}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (width>=48rem){.md\:table-cell{display:table-cell}}@media (width>=64rem){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:table-cell{display:table-cell}.lg\:translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1\.4fr_1fr\]{grid-template-columns:1.4fr 1fr}.lg\:grid-cols-\[1\.05fr_1fr\]{grid-template-columns:1.05fr 1fr}.lg\:grid-cols-\[1\.5fr_1fr\]{grid-template-columns:1.5fr 1fr}.lg\:pl-60{padding-left:calc(var(--spacing) * 60)}}.surface{background:var(--bg-surface)}.raised{background:var(--bg-raised)}.sunken{background:var(--bg-sunken)}.fg-muted{color:var(--fg-muted)}.fg-subtle{color:var(--fg-subtle)}.rule{border-color:var(--line)}}:root{--bg-base:var(--color-ink-50);--bg-surface:#fff;--bg-raised:#fff;--bg-sunken:var(--color-ink-100);--fg-primary:var(--color-ink-950);--fg-muted:var(--color-ink-500);--fg-subtle:var(--color-ink-400);--line:var(--color-ink-100);--line-strong:var(--color-ink-200);--shadow-card:0 1px 2px #0d11170f, 0 4px 12px #0d11170a}.dark{--bg-base:var(--color-ink-950);--bg-surface:var(--color-ink-900);--bg-raised:var(--color-ink-850);--bg-sunken:#0a0e13;--fg-primary:var(--color-ink-50);--fg-muted:var(--color-ink-300);--fg-subtle:var(--color-ink-400);--line:var(--color-ink-700);--line-strong:var(--color-ink-600);--shadow-card:0 1px 2px #0006, 0 8px 24px #0000003d}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}

/* Interfaz nueva */
:root {
  /* Paleta del mockup: azul de marca, tinta azul marino, superficies frías. */
  --rv-bg: #f5f8fd;
  --rv-side: #f3f7fd;
  --rv-card: #ffffff;
  --rv-soft: #f4f7fc;
  --rv-hover: #e9f0fb;
  --rv-line: #e2eaf5;
  --rv-line-soft: #edf2f9;
  --rv-line-strong: #d8e3f2;
  --rv-fg: #0b2447;
  --rv-fg-2: #33476a;
  --rv-muted: #5f6f8a;
  --rv-subtle: #9aa7bd;
  --rv-check: #7486a3;
  --rv-blue: #0b6cff;
  --rv-blue-2: #3b8eff;
  --rv-blue-hover: #005be0;
  --rv-blue-soft: #e7f0ff;
  --rv-green: #12a26a;
  --rv-green-ink: #0f8a60;
  --rv-green-soft: #dcf5eb;
  --rv-red: #e5383b;
  --rv-red-soft: #fde6e8;
  --rv-amber: #b76f00;
  --rv-amber-soft: #fdf0d5;
  --rv-banner-a: #e2eeff;
  --rv-banner-b: #f2f7ff;
  --rv-banner-line: #d6e5fb;
  --rv-cta-bg: #edf3fe;
  --rv-shadow: 0 1px 2px rgb(14 43 92 / 0.03), 0 6px 18px -6px rgb(14 43 92 / 0.06);

  /* Sistema existente, re-tematizado: todas las pantallas toman el azul. */
  --color-signal-700: #0047b8;
  --color-signal-600: #005be0;
  --color-signal-500: #0b6cff;
  --color-signal-400: #3b8eff;
  --color-signal-300: #86b6ff;
  --font-display: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  --font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  --radius-card: 12px;
  --bg-base: var(--rv-bg);
  --bg-surface: var(--rv-card);
  --bg-raised: var(--rv-card);
  --bg-sunken: var(--rv-soft);
  --fg-primary: var(--rv-fg);
  --fg-muted: var(--rv-muted);
  --fg-subtle: #8593ab;
  --line: var(--rv-line);
  --line-strong: var(--rv-line-strong);
  --shadow-card: var(--rv-shadow);
}

.dark {
  --rv-bg: #0a1120;
  --rv-side: #0c1527;
  --rv-card: #111b2f;
  --rv-soft: #15213a;
  --rv-hover: #172542;
  --rv-line: #1f2c47;
  --rv-line-soft: #1a2741;
  --rv-line-strong: #2a3a5c;
  --rv-fg: #eaf1fd;
  --rv-fg-2: #c3cfe6;
  --rv-muted: #93a4c2;
  --rv-subtle: #6c7f9f;
  --rv-check: #7f92b3;
  --rv-blue: #2f84ff;
  --rv-blue-2: #5a9dff;
  --rv-blue-hover: #1a73ff;
  --rv-blue-soft: rgb(47 132 255 / 0.16);
  --rv-green: #2cc488;
  --rv-green-ink: #3fd197;
  --rv-green-soft: rgb(44 196 136 / 0.15);
  --rv-red: #ff5c63;
  --rv-red-soft: rgb(255 92 99 / 0.15);
  --rv-amber: #f0b44a;
  --rv-amber-soft: rgb(240 180 74 / 0.15);
  --rv-banner-a: #13264a;
  --rv-banner-b: #0f1d38;
  --rv-banner-line: #22375f;
  --rv-cta-bg: #0f1d38;
  --rv-shadow: 0 1px 2px rgb(0 0 0 / 0.3), 0 8px 24px -10px rgb(0 0 0 / 0.4);

  --color-signal-600: #1a73ff;
  --color-signal-500: #2f84ff;
  --color-signal-400: #5a9dff;
  --bg-base: var(--rv-bg);
  --bg-surface: var(--rv-card);
  --bg-raised: #14203a;
  --bg-sunken: #0d1628;
  --fg-primary: var(--rv-fg);
  --fg-muted: var(--rv-muted);
  --fg-subtle: var(--rv-subtle);
  --line: var(--rv-line);
  --line-strong: var(--rv-line-strong);
  --shadow-card: var(--rv-shadow);
}

@layer components{
  /* Ajustes del sistema existente al lenguaje del mockup */
  .eyebrow { font-family: var(--font-sans); font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.04em; color: var(--fg-subtle); }
  .figure { font-family: var(--font-sans); letter-spacing: -0.01em; }
  .card { border-radius: var(--radius-card); }
  .btn { border-radius: 9px; font-weight: 600; }
  .field { border-radius: 9px; background: var(--bg-surface); }
  .kbd { font-family: var(--font-sans); }
  /* =====================================================================
     AI Revenue CRM — interfaz (Panel, menú lateral, encabezado, móvil)
     Todo con prefijo rv- para no chocar con las utilidades de Tailwind.
     ===================================================================== */

  .rv-shell {
    --rv-side-w: 216px;
    line-height: 1.35;
    min-height: 100dvh;
    background: var(--rv-bg);
    color: var(--rv-fg);
    font-family: var(--font-sans);
  }

  .rv-sr {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
  }

  /* ---------------------------------------------------------- Marca */
  .rv-brand { display: inline-flex; align-items: center; gap: 10px; color: var(--rv-fg); }
  .rv-brand-name { font-size: 16.5px; font-weight: 700; letter-spacing: -0.01em; white-space: nowrap; }
  .rv-brand-name b { color: var(--rv-blue); font-weight: 700; }

  /* --------------------------------------------------- Barra lateral */
  .rv-side {
    position: fixed; inset: 0 auto 0 0; z-index: 50;
    width: var(--rv-side-w);
    display: flex; flex-direction: column;
    background: var(--rv-side);
    border-right: 1px solid var(--rv-line);
  }
  .rv-side-head { display: flex; align-items: center; justify-content: space-between; height: 60px; padding: 0 12px 0 20px; flex: none; }
  .rv-side-brand { display: inline-flex; }
  .rv-nav { flex: 1; overflow-y: auto; padding: 6px 12px 12px; scrollbar-width: thin; }
  .rv-nav-group + .rv-nav-group { margin-top: 13px; }
  .rv-nav-label {
    margin: 0 0 5px; padding: 0 8px;
    font-size: 10.5px; font-weight: 600; letter-spacing: 0.035em; text-transform: uppercase;
    color: var(--rv-muted);
  }
  .rv-nav-item {
    position: relative;
    display: flex; align-items: center; gap: 12px;
    height: 28px; padding: 0 10px; margin-bottom: 1px;
    border-radius: 8px;
    font-size: 13px; font-weight: 500; color: var(--rv-fg-2);
    transition: background-color 120ms, color 120ms;
  }
  .rv-nav-item svg { flex: none; color: var(--rv-fg-2); }
  .rv-nav-item:hover { background: var(--rv-hover); color: var(--rv-fg); }
  .rv-nav-item.is-active {
    background: linear-gradient(90deg, var(--rv-blue) 0%, var(--rv-blue-2) 100%);
    color: #fff; font-weight: 600;
    box-shadow: 0 4px 12px -4px color-mix(in srgb, var(--rv-blue) 55%, transparent);
  }
  .rv-nav-item.is-active svg { color: #fff; }
  .rv-nav-text { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .rv-nav-badge {
    display: inline-grid; place-items: center; min-width: 17px; height: 17px; padding: 0 5px;
    border-radius: 999px; font-size: 10px; font-weight: 700; color: #fff; background: var(--rv-blue);
  }
  .rv-nav-badge.is-red { background: var(--rv-red); }
  .rv-nav-item.is-active .rv-nav-badge { background: #fff; color: var(--rv-blue); }

  .rv-side-foot { flex: none; padding: 0 12px 14px; }
  .rv-theme-row {
    display: flex; align-items: center; gap: 12px;
    padding: 16px 10px 4px; border-top: 1px solid var(--rv-line);
    font-size: 11.5px; color: var(--rv-fg-2);
  }
  .rv-theme-row > span { flex: 1; }
  .rv-switch {
    position: relative; width: 32px; height: 18px; flex: none;
    border-radius: 999px; background: var(--rv-line-strong); cursor: pointer;
    transition: background-color 160ms;
  }
  .rv-switch span {
    position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%;
    background: #fff; box-shadow: 0 1px 2px rgb(0 0 0 / 0.2); transition: transform 160ms;
  }
  .rv-switch.is-on { background: var(--rv-blue); }
  .rv-switch.is-on span { transform: translateX(14px); }

  .rv-user-card {
    display: flex; align-items: center; gap: 12px;
    margin-top: 14px; padding: 14px 10px 4px; border-top: 1px solid var(--rv-line);
  }
  .rv-user-card .rv-user-meta { flex: 1; }

  .rv-scrim { position: fixed; inset: 0; z-index: 45; background: rgb(15 30 60 / 0.38); backdrop-filter: blur(1px); }

  /* ------------------------------------------------------ Encabezado */
  .rv-body { padding-left: var(--rv-side-w); min-width: 0; }
  .rv-top {
    position: sticky; top: 0; z-index: 30;
    display: flex; align-items: center; gap: 12px;
    height: 56px; padding: 0 22px 0 16px;
    background: color-mix(in srgb, var(--rv-bg) 88%, transparent);
    backdrop-filter: saturate(1.4) blur(10px);
    border-bottom: 1px solid var(--rv-line);
  }
  .rv-top-spacer { flex: 1; }
  .rv-search {
    display: flex; align-items: center; gap: 10px;
    width: min(438px, 42vw); height: 32px; margin-left: clamp(0px, calc(50% - 420px), 238px);
    padding: 0 6px 0 12px;
    background: var(--rv-card); border: 1px solid var(--rv-line-strong); border-radius: 9px;
    color: var(--rv-muted); font-size: 12.5px; text-align: left; cursor: text;
    transition: border-color 120ms, box-shadow 120ms;
  }
  .rv-search:hover { border-color: color-mix(in srgb, var(--rv-blue) 40%, var(--rv-line-strong)); }
  .rv-search span { flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .rv-search kbd {
    font-family: var(--font-sans); font-size: 10.5px; color: var(--rv-muted);
    padding: 2px 6px; border: 1px solid var(--rv-line-strong); border-radius: 5px; background: var(--rv-card);
  }
  .rv-icon-btn {
    display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 10px;
    color: var(--rv-fg-2); cursor: pointer;
  }
  .rv-icon-btn:hover { background: var(--rv-hover); color: var(--rv-fg); }
  .rv-bell {
    position: relative; display: inline-grid; place-items: center; width: 38px; height: 38px;
    border-radius: 10px; color: var(--rv-fg);
  }
  .rv-bell:hover { background: var(--rv-hover); }
  .rv-bell-dot {
    position: absolute; top: 3px; right: 3px; min-width: 16px; height: 16px; padding: 0 4px;
    display: grid; place-items: center; border-radius: 999px;
    background: var(--rv-red); color: #fff; font-size: 9.5px; font-weight: 700;
    box-shadow: 0 0 0 2px var(--rv-bg);
  }
  .rv-user { position: relative; padding-left: 16px; margin-left: 4px; border-left: 1px solid var(--rv-line); }
  .rv-user-btn { display: flex; align-items: center; gap: 12px; padding: 4px; border-radius: 12px; cursor: pointer; color: var(--rv-fg-2); }
  .rv-user-btn:hover { background: var(--rv-hover); }
  .rv-user-meta { display: flex; flex-direction: column; min-width: 0; text-align: left; line-height: 1.25; }
  .rv-user-meta strong { font-size: 13px; font-weight: 600; color: var(--rv-fg); white-space: nowrap; }
  .rv-user-meta span { font-size: 11.5px; color: var(--rv-muted); white-space: nowrap; }
  .rv-user-btn > svg { margin-left: 10px; }
  .rv-avatar { flex: none; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px var(--rv-card), 0 1px 4px rgb(10 40 90 / 0.14); }
  .rv-avatar-initials {
    display: inline-grid; place-items: center; font-weight: 700; color: #fff;
    background: linear-gradient(135deg, #35a6ff 0%, var(--rv-blue) 60%, #0a4fd8 100%);
  }
  .rv-menu {
    position: absolute; right: 0; top: calc(100% + 8px); z-index: 60; width: 250px; padding: 6px;
    background: var(--rv-card); border: 1px solid var(--rv-line); border-radius: 12px;
    box-shadow: 0 16px 40px -12px rgb(10 35 80 / 0.25);
  }
  .rv-menu-head { display: flex; flex-direction: column; gap: 1px; padding: 8px 10px 10px; margin-bottom: 4px; border-bottom: 1px solid var(--rv-line); }
  .rv-menu-head strong { font-size: 13px; color: var(--rv-fg); }
  .rv-menu-head span { font-size: 11.5px; color: var(--rv-muted); overflow: hidden; text-overflow: ellipsis; }
  .rv-menu > a, .rv-menu > button {
    display: flex; align-items: center; gap: 10px; width: 100%; height: 36px; padding: 0 10px;
    border-radius: 8px; font-size: 13px; color: var(--rv-fg-2); cursor: pointer; text-align: left;
  }
  .rv-menu > a:hover, .rv-menu > button:hover { background: var(--rv-hover); color: var(--rv-fg); }

  .rv-main { padding: 10px 16px 24px 17px; }
  .rv-page-title { margin: 6px 0 16px; font-size: 20px; font-weight: 700; letter-spacing: -0.015em; color: var(--rv-fg); }

  .rv-toast {
    position: fixed; left: 50%; bottom: 24px; z-index: 80; transform: translateX(-50%);
    max-width: min(520px, calc(100vw - 32px)); padding: 11px 16px; border-radius: 12px;
    background: #0b2447; color: #fff; font-size: 13px; font-weight: 500;
    box-shadow: 0 16px 36px -12px rgb(10 35 80 / 0.45);
  }
  .rv-toast.is-error { background: var(--rv-red); }

  .rv-only-mobile { display: none !important; }
  .rv-only-narrow { display: none; }

  /* ---------------------------------------------------------- Básicos */
  .rv-card {
    background: var(--rv-card);
    border: 1px solid var(--rv-line);
    border-radius: 12px;
    box-shadow: var(--rv-shadow);
  }
  .rv-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
  .rv-section-head h2 { margin: 0; font-size: 15px; font-weight: 700; letter-spacing: -0.01em; color: var(--rv-fg); }
  .rv-section-sub { margin: 3px 0 0; font-size: 11.5px; color: var(--rv-muted); }
  .rv-link { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 500; color: var(--rv-blue); white-space: nowrap; }
  .rv-link:hover { text-decoration: underline; text-underline-offset: 3px; }

  .rv-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    height: 32px; padding: 0 16px; border-radius: 8px;
    font-size: 12px; font-weight: 600; white-space: nowrap; cursor: pointer;
    transition: background-color 120ms, border-color 120ms, box-shadow 120ms;
  }
  .rv-btn.is-primary {
    background: var(--rv-blue); color: #fff;
    box-shadow: 0 6px 14px -6px color-mix(in srgb, var(--rv-blue) 70%, transparent);
  }
  .rv-btn.is-primary:hover { background: var(--rv-blue-hover); }
  .rv-btn.is-outline { background: var(--rv-card); color: var(--rv-fg); border: 1px solid var(--rv-line-strong); }
  .rv-btn.is-outline:hover { border-color: color-mix(in srgb, var(--rv-blue) 45%, var(--rv-line-strong)); }
  .rv-btn.is-pill { border-radius: 999px; height: 28px; font-size: 11.5px; padding: 0 16px; }
  .rv-btn.is-sm { height: 30px; font-size: 11.5px; }

  .rv-chip {
    display: inline-flex; align-items: center; gap: 4px; height: 17px; padding: 0 8px;
    border-radius: 999px; font-size: 10px; font-weight: 500; white-space: nowrap;
    color: var(--t); background: var(--t-soft);
  }
  .tone-hot  { --t: var(--rv-red);   --t-soft: var(--rv-red-soft); }
  .tone-warm { --t: var(--rv-amber); --t-soft: var(--rv-amber-soft); }
  .tone-cold { --t: var(--rv-blue);  --t-soft: var(--rv-blue-soft); }

  .rv-empty { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 22px 12px 14px; }
  .rv-empty-icon {
    display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
    background: var(--rv-blue-soft); color: var(--rv-blue); margin-bottom: 10px;
  }
  .rv-empty-title { margin: 0; font-size: 13px; font-weight: 600; color: var(--rv-fg); }
  .rv-empty-text { margin: 4px 0 12px; max-width: 280px; font-size: 11.5px; line-height: 1.5; color: var(--rv-muted); }

  /* ============================================================ Panel */
  .rv-dash { display: flex; flex-direction: column; gap: 12px; }
  .rv-dash-top { display: grid; grid-template-columns: minmax(0, 1fr) 402px; gap: 18px; }
  .rv-dash-grid { display: grid; grid-template-columns: minmax(0, 1fr) 358px; gap: 16px; align-items: start; }
  .rv-dash-main, .rv-dash-side { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
  .rv-dash-side { gap: 10px; }

  /* Saludo */
  .rv-hello { display: flex; align-items: center; gap: 20px; padding: 14px 12px 14px 22px; min-height: 102px; }
  .rv-hello-copy { flex: 1; min-width: 0; }
  .rv-hello h1 { margin: 0; font-family: var(--font-sans); font-size: 30px; font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; color: var(--rv-fg); }
  .rv-wave-hand { font-size: 24px; vertical-align: 3px; }
  .rv-hello-copy p { margin: 6px 0 0; max-width: 430px; font-size: 13.5px; line-height: 1.5; color: var(--rv-fg-2); }
  .rv-hello-date {
    flex: none; align-self: stretch; display: flex; flex-direction: column; justify-content: center; gap: 10px;
    min-width: 232px; padding: 12px 18px 12px 12px;
    border: 1px solid var(--rv-line-soft); border-radius: 10px; background: var(--rv-card);
    box-shadow: 0 4px 14px -8px rgb(14 43 92 / 0.12);
  }
  .rv-hello-date p { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 12px; font-weight: 500; color: var(--rv-fg); }
  .rv-hello-date svg { color: var(--rv-fg-2); }
  .rv-hello-date .rv-hello-org { padding-left: 25px; font-size: 11px; font-weight: 400; color: var(--rv-fg-2); gap: 8px; }
  .rv-hello-org i, .rv-deal-meta i, .rv-task-meta i { font-style: normal; color: var(--rv-subtle); }

  /* Banner de IA */
  .rv-ai-banner {
    position: relative; overflow: hidden;
    display: flex; align-items: center; gap: 26px; padding: 14px 20px 14px 28px;
    background: linear-gradient(115deg, var(--rv-banner-a) 0%, var(--rv-banner-b) 55%, var(--rv-banner-a) 100%);
    border-color: var(--rv-banner-line);
  }
  .rv-ai-banner::after {
    content: ""; position: absolute; inset: -40% -10% auto auto; width: 60%; height: 180%;
    background: linear-gradient(120deg, transparent 30%, rgb(255 255 255 / 0.45) 50%, transparent 70%);
    pointer-events: none; opacity: 0.6;
  }
  .rv-ai-banner-icon {
    flex: none; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%;
    background: color-mix(in srgb, var(--rv-card) 70%, transparent); color: var(--rv-blue);
    box-shadow: 0 0 0 8px color-mix(in srgb, var(--rv-card) 30%, transparent);
  }
  .rv-ai-banner p { margin: 0 0 10px; max-width: 250px; font-size: 13px; font-weight: 700; line-height: 1.45; color: var(--rv-fg); }
  .rv-ai-banner > * { position: relative; z-index: 1; }

  /* KPIs */
  .rv-kpis { display: grid; grid-template-columns: 1fr 1fr 1fr 0.78fr; gap: 11px; }
  .rv-kpi { position: relative; display: flex; gap: 14px; min-height: 104px; padding: 16px 12px 12px 14px; overflow: hidden; }
  .rv-kpi-icon {
    flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%;
    color: var(--t); background: var(--t-soft);
  }
  .rv-kpi.tone-blue   { --t: var(--rv-blue); --t-soft: var(--rv-blue-soft); }
  .rv-kpi.tone-indigo { --t: #3a5bdc; --t-soft: color-mix(in srgb, #3a5bdc 12%, var(--rv-card)); }
  .rv-kpi.tone-red    { --t: var(--rv-red); --t-soft: var(--rv-red-soft); }
  .rv-kpi-body { min-width: 0; }
  .rv-kpi-label { margin: 1px 0 0; font-size: 12px; font-weight: 500; color: var(--rv-fg-2); white-space: nowrap; }
  .rv-kpi-detail { font-weight: 400; color: var(--rv-muted); }
  .rv-kpi-value { display: flex; align-items: center; gap: 12px; margin: 6px 0 0; }
  .rv-kpi-value > span:first-child { font-size: 22.5px; font-weight: 600; letter-spacing: -0.02em; color: var(--rv-fg); font-variant-numeric: tabular-nums; }
  .rv-kpi-foot { margin: 6px 0 0; font-size: 10.5px; color: var(--rv-muted); }
  .rv-kpi-spark { position: absolute; right: 12px; bottom: 12px; color: var(--rv-blue); }
  .rv-delta { display: inline-flex; align-items: center; gap: 2px; font-size: 11.5px; font-weight: 500; }
  .rv-delta.is-good { color: var(--rv-green); }
  .rv-delta.is-bad { color: var(--rv-red); }

  /* Pipeline */
  .rv-pipeline { padding: 16px 16px 14px 18px; }
  .rv-select { position: relative; display: inline-flex; align-items: center; color: var(--rv-fg-2); }
  .rv-select select {
    appearance: none; height: 32px; padding: 0 34px 0 12px; border-radius: 9px;
    border: 1px solid var(--rv-line-strong); background: var(--rv-card); color: var(--rv-fg);
    font: inherit; font-size: 11.5px; cursor: pointer;
  }
  .rv-select svg { position: absolute; right: 11px; pointer-events: none; }
  .rv-stages {
    display: grid; grid-template-columns: repeat(var(--rv-cols, 4), minmax(172px, 1fr)); gap: 10px;
    overflow-x: auto; padding-bottom: 2px; scrollbar-width: thin;
  }
  .rv-stage.tone-blue   { --t: #1a6dff; }
  .rv-stage.tone-violet { --t: #8a45e6; }
  .rv-stage.tone-green  { --t: #0f9a82; }
  .rv-stage.tone-orange { --t: #e07a1f; }
  .rv-stage.tone-teal   { --t: #0e8fb3; }
  .rv-stage.tone-pink   { --t: #d6408f; }
  .rv-stage {
    display: flex; flex-direction: column; min-width: 0;
    border: 1px solid color-mix(in srgb, var(--t) 16%, var(--rv-line));
    border-radius: 10px;
    background: color-mix(in srgb, var(--t) 5%, var(--rv-card));
  }
  .rv-stage-head {
    position: relative; overflow: hidden;
    display: grid; grid-template-columns: auto 1fr; column-gap: 10px;
    padding: 8px 10px 6px; border-radius: 10px 10px 0 0;
    background: linear-gradient(180deg, color-mix(in srgb, var(--t) 11%, var(--rv-card)) 0%, color-mix(in srgb, var(--t) 7%, var(--rv-card)) 100%);
  }
  .rv-stage-icon {
    display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%;
    background: color-mix(in srgb, var(--t) 14%, var(--rv-card)); color: var(--t);
  }
  .rv-stage-name { margin: 1px 0 0; font-size: 12.5px; font-weight: 600; color: var(--t); }
  .rv-stage-count { margin: 2px 0 0; font-size: 10.5px; color: var(--rv-muted); }
  .rv-stage-total { grid-column: 2; margin: 3px 0 0; font-size: 15px; font-weight: 600; letter-spacing: -0.01em; color: var(--rv-fg); position: relative; z-index: 1; }
  .rv-stage-wave { position: absolute; right: 0; bottom: 0; width: 55%; height: 30px; color: var(--t); opacity: 0.35; }
  .rv-stage-cards { display: flex; flex-direction: column; gap: 5px; padding: 5px 6px 6px; flex: 1; }
  .rv-stage-empty { margin: 8px 6px; font-size: 11px; color: var(--rv-subtle); }
  .rv-deal {
    display: block; padding: 6px 11px 7px; border-radius: 8px;
    background: var(--rv-card); border: 1px solid var(--rv-line-soft);
    box-shadow: 0 1px 2px rgb(14 43 92 / 0.03);
    transition: border-color 120ms, box-shadow 120ms;
  }
  .rv-deal:hover { border-color: color-mix(in srgb, var(--t) 35%, var(--rv-line)); box-shadow: 0 4px 12px -6px rgb(14 43 92 / 0.18); }
  .rv-deal-name { margin: 0; font-size: 12px; font-weight: 500; color: var(--rv-fg); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .rv-deal-meta { display: flex; gap: 6px; margin: 2px 0 5px; font-size: 11px; color: var(--rv-muted); font-variant-numeric: tabular-nums; }
  .rv-more { padding: 4px 6px 2px; font-size: 11px; font-weight: 500; color: var(--rv-blue); }

  .rv-sum {
    display: grid; grid-template-columns: 1.15fr 1fr 1fr; align-items: center;
    margin-top: 10px; padding: 8px 14px; border: 1px solid var(--rv-line); border-radius: 10px; background: var(--rv-card);
  }
  .rv-sum p { margin: 0; font-size: 10.5px; color: var(--rv-muted); }
  .rv-sum strong { display: block; margin-top: 2px; font-size: 18px; font-weight: 600; letter-spacing: -0.015em; color: var(--rv-fg); font-variant-numeric: tabular-nums; }
  .rv-sum > div:nth-child(2) strong { font-size: 16px; }
  .rv-sum-prob { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-left: 20px; border-left: 1px solid var(--rv-line); }
  .rv-sum-prob strong { font-size: 16px; }
  .rv-ring-track { stroke: var(--rv-blue-soft); }
  .rv-ring-value { stroke: var(--rv-blue); transition: stroke-dasharray 600ms var(--ease-out-soft); }

  /* Fila inferior */
  .rv-dash-pair { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); gap: 12px; }
  .rv-prospects, .rv-activity { padding: 16px 16px 10px 18px; }
  .rv-table-wrap { overflow-x: auto; margin: 0 -2px; }
  .rv-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 11.5px; }
  .rv-table th {
    padding: 7px 8px; text-align: left; font-size: 10.5px; font-weight: 500; color: var(--rv-muted);
    background: var(--rv-soft); white-space: nowrap;
  }
  .rv-table th:first-child { border-radius: 8px 0 0 8px; padding-left: 10px; }
  .rv-table th:last-child { border-radius: 0 8px 8px 0; }
  .rv-table td { padding: 5px 8px; border-bottom: 1px solid var(--rv-line-soft); color: var(--rv-fg); vertical-align: middle; }
  .rv-table tr:last-child td { border-bottom: 0; }
  .rv-td-muted { color: var(--rv-fg-2) !important; white-space: nowrap; }
  .rv-company { display: flex; align-items: center; gap: 12px; min-width: 0; }
  .rv-logo {
    flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 6px;
    color: #fff; font-size: 9.5px; font-weight: 800; letter-spacing: -0.02em;
  }
  .rv-company-text { display: flex; flex-direction: column; min-width: 0; }
  .rv-company-name { font-size: 11.5px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 160px; }
  .rv-company-sub { display: none; font-size: 10.5px; color: var(--rv-muted); }
  .rv-score {
    display: inline-grid; place-items: center; min-width: 28px; height: 20px; padding: 0 6px;
    border-radius: 999px; font-size: 10.5px; font-weight: 600; font-variant-numeric: tabular-nums;
  }
  .rv-score.is-high { background: var(--rv-green-soft); color: var(--rv-green-ink); }
  .rv-score.is-good { background: color-mix(in srgb, var(--rv-green-soft) 70%, var(--rv-card)); color: var(--rv-green-ink); }
  .rv-score.is-mid  { background: var(--rv-amber-soft); color: var(--rv-amber); }
  .rv-score.is-low  { background: var(--rv-red-soft); color: var(--rv-red); }
  .rv-score.is-none { background: var(--rv-soft); color: var(--rv-muted); }
  .rv-kebab { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 6px; color: var(--rv-fg-2); }
  .rv-kebab:hover { background: var(--rv-hover); }

  .rv-activity-top { display: grid; grid-template-columns: auto 1fr minmax(150px, 0.95fr); align-items: center; gap: 14px; }
  .rv-donut { position: relative; display: grid; place-items: center; }
  .rv-donut span { position: absolute; font-size: 19px; font-weight: 700; letter-spacing: -0.02em; color: var(--rv-fg); }
  .rv-activity-title { margin: 0; font-size: 13px; font-weight: 600; color: var(--rv-fg); }
  .rv-activity-sub { margin: 5px 0 0; font-size: 11px; color: var(--rv-muted); }
  .rv-legend {
    list-style: none; margin: 0; padding: 8px 12px; border: 1px solid var(--rv-line); border-radius: 10px;
    display: flex; flex-direction: column; gap: 6px;
  }
  .rv-legend li { display: flex; align-items: center; gap: 10px; font-size: 11px; color: var(--rv-fg-2); }
  .rv-legend li span { flex: 1; }
  .rv-legend b { font-weight: 500; color: var(--rv-fg); font-variant-numeric: tabular-nums; }
  .rv-legend .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--t); }
  .rv-legend .tone-blue { --t: #3b82f6; }
  .rv-legend .tone-blue-2 { --t: var(--rv-blue); }
  .rv-legend .tone-amber { --t: #f2a51a; }
  .rv-legend .tone-red { --t: var(--rv-red); }
  .rv-activity-stats {
    position: relative; overflow: hidden;
    display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 10px; padding: 8px 12px 30px;
    border: 1px solid var(--rv-line); border-radius: 10px;
  }
  .rv-activity-stats > div { position: relative; z-index: 1; display: flex; flex-direction: column; }
  .rv-activity-stats strong { font-size: 15px; font-weight: 600; color: var(--rv-fg); font-variant-numeric: tabular-nums; }
  .rv-activity-stats span { font-size: 10.5px; color: var(--rv-muted); }
  .rv-activity-stats span.is-blue { color: var(--rv-blue); }
  .rv-activity-wave { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 34px; color: var(--rv-blue); }

  /* Llamado a prospectar */
  .rv-cta {
    display: flex; align-items: center; gap: 18px; padding: 10px 16px 10px 22px; border-radius: 12px;
    background: var(--rv-cta-bg); border: 1px solid var(--rv-banner-line);
  }
  .rv-cta-icon { color: var(--rv-blue); display: grid; }
  .rv-cta > div { flex: 1; min-width: 0; }
  .rv-cta-title { margin: 0; font-size: 13px; font-weight: 700; color: var(--rv-blue); }
  .rv-cta-text { margin: 2px 0 0; font-size: 10.5px; color: var(--rv-muted); }

  /* Tareas */
  .rv-tasks { padding: 16px 14px 8px 14px; }
  .rv-task-list { list-style: none; margin: 0; padding: 0; }
  .rv-task { display: flex; align-items: flex-start; gap: 16px; padding: 10px 0 11px; border-bottom: 1px solid var(--rv-line-soft); transition: opacity 200ms; }
  .rv-task:last-child { border-bottom: 0; }
  .rv-task.is-done { opacity: 0.45; }
  .rv-task.is-done .rv-task-title { text-decoration: line-through; }
  .rv-check {
    flex: none; display: grid; place-items: center; width: 16px; height: 16px; margin: 2px 0 0 1px;
    border: 1.6px solid var(--rv-check); border-radius: 4px; color: #fff; cursor: pointer;
    transition: background-color 120ms, border-color 120ms;
  }
  .rv-check:hover { border-color: var(--rv-blue); }
  .rv-task.is-done .rv-check { background: var(--rv-blue); border-color: var(--rv-blue); }
  .rv-task-body { flex: 1; min-width: 0; }
  .rv-task-title { margin: 0; font-size: 12px; font-weight: 500; line-height: 1.4; color: var(--rv-fg); }
  .rv-task-meta { display: flex; gap: 8px; margin: 5px 0 0; font-size: 10.5px; color: var(--rv-muted); }
  .rv-task-meta .is-high { color: var(--rv-red); }
  .rv-task-time { flex: none; margin-top: 1px; font-size: 11px; color: var(--rv-fg-2); font-variant-numeric: tabular-nums; }
  .rv-task-time.is-late { color: var(--rv-red); font-weight: 500; }

  /* Recomendaciones */
  .rv-recs { padding: 16px 12px 12px; }
  .rv-rec-list { display: flex; flex-direction: column; gap: 10px; }
  .rv-rec { padding: 12px 12px 12px 12px; border: 1px solid var(--rv-line); border-radius: 10px; background: var(--rv-card); }
  .rv-rec-head { display: flex; align-items: center; gap: 6px; }
  .rv-rec-icon { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; color: #fff; background: var(--t); }
  .rv-rec-icon.tone-amber { --t: #f2b33d; color: #6b4300; }
  .rv-rec-icon.tone-red { --t: #e9505e; }
  .rv-rec-icon.tone-green { --t: #1aa58a; }
  .rv-rec-icon.tone-blue { --t: var(--rv-blue); }
  .rv-rec-icon.tone-violet { --t: #8a45e6; }
  .rv-rec-type { height: 18px; padding: 0 8px; display: inline-flex; align-items: center; border-radius: 999px; font-size: 10px; font-weight: 500; }
  .rv-rec-type.tone-amber, .rv-rec-type.tone-blue { background: var(--rv-blue-soft); color: var(--rv-blue); }
  .rv-rec-type.tone-red { background: var(--rv-red-soft); color: var(--rv-red); }
  .rv-rec-type.tone-green { background: var(--rv-green-soft); color: var(--rv-green-ink); }
  .rv-rec-type.tone-violet { background: color-mix(in srgb, #8a45e6 12%, var(--rv-card)); color: #7a36d6; }
  .rv-rec-conf { margin-left: auto; font-size: 10.5px; font-weight: 500; color: var(--rv-green-ink); white-space: nowrap; }
  .rv-rec-title { margin: 9px 0 0; font-family: var(--font-sans); font-size: 12px; font-weight: 700; letter-spacing: 0; line-height: 1.4; color: var(--rv-fg); }
  .rv-rec-text { margin: 5px 0 0; font-size: 11px; line-height: 1.5; color: var(--rv-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .rv-rec-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
  .rv-tag { display: inline-flex; align-items: center; gap: 4px; height: 20px; padding: 0 9px; border-radius: 999px; font-size: 10.5px; font-weight: 500; }
  .rv-tag.is-blue { background: color-mix(in srgb, var(--rv-blue) 14%, var(--rv-card)); color: var(--rv-fg-2); }
  .rv-tag.is-soft { background: var(--rv-red-soft); color: var(--rv-red); }
  .rv-tag.is-outline { background: var(--rv-soft); color: var(--rv-fg-2); border: 1px solid var(--rv-line); }
  .rv-tag.is-green { background: var(--rv-green-soft); color: var(--rv-green-ink); }
  .rv-rec-actions { display: flex; align-items: center; gap: 10px; margin-top: 12px; }
  .rv-rec-actions .rv-btn { min-width: 82px; }
  .rv-rec-actions .rv-btn.is-outline { min-width: 74px; }
  .rv-rec-more { margin-left: auto; font-size: 11px; }

  /* ================================================== Adaptación */
  @media (max-width: 1279px) {
    .rv-dash-top { grid-template-columns: minmax(0, 1fr); }
    .rv-dash-grid { display: flex; flex-direction: column; align-items: stretch; }
    .rv-dash-main, .rv-dash-side { display: contents; }
    .rv-kpis { order: 1; }
    .rv-tasks { order: 2; }
    .rv-recs { order: 3; }
    .rv-pipeline { order: 4; }
    .rv-dash-pair { order: 5; }
    .rv-cta { order: 6; }
    .rv-dash-grid { gap: 12px; }
  }

  @media (max-width: 1023px) {
    .rv-shell { --rv-side-w: min(84vw, 320px); }
    .rv-side { transform: translateX(-102%); visibility: hidden; transition: transform 220ms var(--ease-out-soft), visibility 0s linear 220ms; box-shadow: 0 20px 60px -20px rgb(10 30 70 / 0.45); border-radius: 0 18px 18px 0; }
    .rv-side.is-open { transform: none; visibility: visible; transition: transform 220ms var(--ease-out-soft); }
    .rv-side-head { height: 72px; padding: 0 14px 0 22px; }
    .rv-nav { padding: 4px 14px 12px; }
    .rv-nav-label { font-size: 11px; margin-bottom: 6px; }
    .rv-nav-item { height: 33px; font-size: 14px; gap: 16px; }
    .rv-nav-item.is-active {
      background: var(--rv-blue-soft); color: var(--rv-fg); box-shadow: none;
    }
    .rv-nav-item.is-active svg { color: var(--rv-blue); }
    .rv-nav-item.is-active::before {
      content: ""; position: absolute; left: -14px; top: 3px; bottom: 3px; width: 3px; border-radius: 0 3px 3px 0; background: var(--rv-blue);
    }
    .rv-nav-item.is-active .rv-nav-badge { background: var(--rv-blue); color: #fff; }
    .rv-nav-item.is-active .rv-nav-badge.is-red { background: var(--rv-red); }
    .rv-theme-row { font-size: 13px; }
    .rv-body { padding-left: 0; }
    .rv-top { height: 62px; padding: 0 12px 0 8px; gap: 8px; background: var(--rv-bg); border-bottom-color: transparent; }
    .rv-top .rv-brand-name { font-size: 17px; }
    .rv-top .rv-brand { gap: 8px; }
    .rv-burger { color: var(--rv-fg); }
    .rv-user { border-left: 0; padding-left: 0; margin-left: 0; }
    .rv-only-desktop { display: none !important; }
    .rv-only-mobile { display: inline-flex !important; }
    .rv-user-card.rv-only-mobile, .rv-theme-row.rv-only-mobile { display: flex !important; }
    .rv-main { padding: 6px 16px calc(28px + env(safe-area-inset-bottom, 0px)); }
    .rv-ai-banner { display: none; }
    .rv-kpis { grid-template-columns: 1fr 1fr; }
  }

  @media (max-width: 639px) {
    .rv-only-wide { display: none; }
    .rv-only-narrow { display: inline; }
    .rv-hello { flex-direction: column; align-items: stretch; gap: 16px; padding: 4px 0 2px; border: 0; background: none; box-shadow: none; min-height: 0; }
    .rv-hello h1 { font-size: 26px; }
    .rv-hello-copy p { font-size: 14px; color: var(--rv-fg-2); }
    .rv-hello-date { min-width: 0; padding: 0; border: 0; box-shadow: none; background: none; }
    .rv-hello-date p { font-size: 12.5px; }
    .rv-hello-org { display: none !important; }
    .rv-kpis { gap: 10px; }
    .rv-kpi { flex-direction: column; gap: 0; min-height: 0; padding: 12px 12px 14px; }
    .rv-kpi-icon { position: absolute; top: 12px; left: 12px; width: 22px; height: 22px; border-radius: 7px; }
    .rv-kpi-icon svg { width: 13px; height: 13px; }
    .rv-kpi-label { padding-left: 30px; margin-top: 3px; font-size: 11.5px; color: var(--rv-fg-2); }
    .rv-kpi-value { margin-top: 12px; gap: 8px; }
    .rv-kpi-value > span:first-child { font-size: 19px; }
    .rv-kpi-foot, .rv-kpi-spark { display: none; }
    .rv-tasks .rv-section-head h2, .rv-recs .rv-section-head h2 { font-size: 16px; }
    .rv-task-title { font-size: 13px; }
    .rv-task-meta { font-size: 11px; }
    .rv-stages { grid-template-columns: repeat(var(--rv-cols, 4), minmax(210px, 76%)); scroll-snap-type: x mandatory; }
    .rv-stage { scroll-snap-align: start; }
    .rv-sum { grid-template-columns: 1fr 1fr; row-gap: 10px; }
    .rv-sum-prob { grid-column: 1 / -1; padding: 10px 0 0; border-left: 0; border-top: 1px solid var(--rv-line); }
    .rv-dash-pair { grid-template-columns: minmax(0, 1fr); }
    .rv-table thead, .rv-table td:nth-child(3) { display: none; }
    .rv-company-sub { display: block; }
    .rv-table td { padding: 8px 6px; }
    .rv-activity-top { grid-template-columns: auto 1fr; }
    .rv-legend { grid-column: 1 / -1; }
    .rv-cta { flex-wrap: wrap; padding: 14px 16px; }
    .rv-cta .rv-btn { width: 100%; }
    .rv-rec-actions { flex-wrap: wrap; }
  }

  @media (min-width: 640px) and (max-width: 1023px) {
    .rv-dash-pair { grid-template-columns: minmax(0, 1fr); }
  }

}
