@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@layer churnrisk-app{.app-shell{--a-max:1180px;--a-gutter:clamp(1rem, 4vw, 2.5rem);--a-rule:1px solid var(--cr-border);--a-ease:.16s ease-out;background:var(--cr-surface-deep);min-height:100vh;color:var(--cr-text-secondary);font-family:var(--cr-font-body);flex-direction:column;display:flex}.app-shell .app-main{flex-direction:column;flex:1;display:flex}.app-shell .app-main:focus{outline:none}.app-shell main{width:100%;max-width:var(--a-max);padding:clamp(2rem, 5vw, 3.5rem) var(--a-gutter) 4rem;flex:1;margin-inline:auto}.app-shell h1,.app-shell h2,.app-shell h3{color:var(--cr-text-primary);font-family:var(--cr-font-display);letter-spacing:-.01em;font-weight:400;line-height:1.15}.app-shell h1{font-size:clamp(1.875rem, 5vw, var(--cr-text-2xl));margin:0 0 var(--cr-space-4)}.app-shell h2{font-size:var(--cr-text-xl);margin:0 0 var(--cr-space-3)}.app-shell h3{margin:0 0 var(--cr-space-2);font-size:1.125rem}.app-shell p{margin:0 0 var(--cr-space-3)}.app-shell p:last-child{margin-bottom:0}.app-shell a{color:var(--cr-accent);transition:color var(--a-ease)}}.app-shell .sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.app-shell .skip-link{left:var(--cr-space-4);z-index:20;padding:var(--cr-space-3) var(--cr-space-4);background:var(--cr-surface-raised);border:1px solid var(--cr-border-interactive);border-radius:var(--cr-radius-sm);transition:top var(--a-ease);text-decoration:none;position:absolute;top:-6rem;color:var(--cr-text-primary)!important}.app-shell .skip-link:focus-visible{top:var(--cr-space-4)}.app-eyebrow{margin:0 0 var(--cr-space-2);color:var(--cr-text-muted);font:600 var(--cr-text-xs) / 1 var(--cr-font-body);letter-spacing:.12em;text-transform:uppercase}.app-header{border-bottom:var(--a-rule);background:var(--cr-surface-base)}.app-header-inner{max-width:var(--a-max);padding:var(--cr-space-3) var(--a-gutter);align-items:center;gap:var(--cr-space-6);flex-wrap:wrap;margin-inline:auto;display:flex}.app-header .brand-mark{flex:none;align-items:center;display:inline-flex}.app-header .brand-mark img{width:28px;height:28px;display:block}.app-header .brand-full{flex:none;align-items:center;display:none}.app-header .brand-full img{aspect-ratio:316.34/44;width:148px;height:auto;display:block}@media (min-width:640px){.app-header .brand-mark{display:none}.app-header .brand-full{display:inline-flex}}.app-nav{flex-wrap:wrap;align-items:center;gap:clamp(.5rem,2vw,1.25rem);display:flex}.app-nav a{color:var(--cr-text-secondary);font-size:var(--cr-text-sm);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.app-nav a:hover{color:var(--cr-text-primary)}.panel{padding:var(--cr-space-6);background:var(--cr-surface-base);border:var(--a-rule);border-radius:var(--cr-radius)}.panel+.panel{margin-top:var(--cr-space-4)}.panel-grid{gap:var(--cr-space-4);grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));display:grid}.app-num,.app-shell .cr-num{font-family:var(--cr-font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.journey-rail{margin:0 0 var(--cr-space-8);gap:var(--cr-space-1);counter-reset:journey;padding:0;list-style:none;display:grid}.journey-rail li{counter-increment:journey;gap:var(--cr-space-3);padding:var(--cr-space-3) 0;border-bottom:var(--a-rule);color:var(--cr-text-muted);font-size:var(--cr-text-sm);grid-template-columns:1.75rem minmax(0,1fr);align-items:baseline;display:grid}.journey-rail li:before{content:counter(journey);font-family:var(--cr-font-mono);font-variant-numeric:tabular-nums}.journey-rail li[data-state=current]{color:var(--cr-text-primary);font-weight:500}.journey-rail li[data-state=done]{color:var(--cr-text-secondary)}.journey-rail li[data-state=done]:before{content:"✓";color:var(--cr-text-secondary)}.journey-step-note{color:var(--cr-text-muted);font-weight:400;display:block}@media (min-width:900px){.journey-rail{gap:var(--cr-space-3);grid-template-columns:repeat(6,minmax(0,1fr))}.journey-rail li{border-bottom:0;border-top:2px solid var(--cr-border);padding-top:var(--cr-space-3);grid-template-columns:minmax(0,1fr)}.journey-rail li[data-state=current]{border-top-color:var(--cr-accent)}.journey-rail li[data-state=done]{border-top-color:var(--cr-border-interactive)}}.state-chip{align-items:center;gap:var(--cr-space-2);padding:var(--cr-space-1) var(--cr-space-3);border-radius:var(--cr-radius-pill);font:600 var(--cr-text-xs) / 1.4 var(--cr-font-body);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid;display:inline-flex}.state-chip:before{content:attr(data-glyph)}.state-chip[data-tone=healthy]{color:var(--cr-state-healthy)}.state-chip[data-tone=watch]{color:var(--cr-state-watch)}.state-chip[data-tone=risk]{color:var(--cr-state-risk)}.state-chip[data-tone=unknown]{color:var(--cr-state-unknown)}.state-chip[data-tone=neutral]{color:var(--cr-text-muted)}.connection{gap:var(--cr-space-3);padding:var(--cr-space-6);background:var(--cr-surface-base);border:var(--a-rule);border-radius:var(--cr-radius);display:grid}.connection-head{justify-content:space-between;align-items:flex-start;gap:var(--cr-space-3);flex-wrap:wrap;display:flex}.connection-head h2{margin:0}.connection dl{gap:var(--cr-space-2);padding:var(--cr-space-3) 0;border-top:var(--a-rule);border-bottom:var(--a-rule);font-size:var(--cr-text-sm);margin:0;display:grid}.connection dl>div{justify-content:space-between;align-items:baseline;gap:var(--cr-space-1) var(--cr-space-3);flex-wrap:wrap;display:flex}@media (max-width:26rem){.connection dl>div{display:block}.connection dd{text-align:left}}.connection dt{color:var(--cr-text-muted)}.connection dd{text-align:right;color:var(--cr-text-primary);margin:0}.connection-consequence{color:var(--cr-text-secondary);font-size:var(--cr-text-sm);margin:0}.connection-actions{gap:var(--cr-space-2);flex-wrap:wrap;display:flex}.progress-track{border-radius:var(--cr-radius-pill);background:var(--cr-surface-raised);height:6px;overflow:hidden}.progress-fill{background:var(--cr-border-interactive);height:100%;transition:width .2s ease-out}.progress-fill[data-paused=true]{background:var(--cr-state-watch)}.progress-meta{justify-content:space-between;gap:var(--cr-space-2);color:var(--cr-text-muted);font-size:var(--cr-text-sm);flex-wrap:wrap;margin:0;display:flex}.app-form{gap:var(--cr-space-4);max-width:30rem;display:grid}.app-form label{gap:var(--cr-space-2);color:var(--cr-text-primary);font-size:var(--cr-text-sm);font-weight:500;display:grid}.app-form input,.app-form select,.app-form textarea{width:100%;font:inherit;padding:var(--cr-space-3);background:var(--cr-surface-raised);color:var(--cr-text-primary);border:1px solid var(--cr-border-interactive);border-radius:var(--cr-radius-sm);font-weight:400}.app-form .field-help{color:var(--cr-text-muted);font-size:var(--cr-text-xs);font-weight:400}.app-button{justify-content:center;align-items:center;gap:var(--cr-space-2);padding:var(--cr-space-3) var(--cr-space-6);border-radius:var(--cr-radius-sm);border:1px solid var(--cr-accent);background:var(--cr-accent);font:600 var(--cr-text-sm) / 1.2 var(--cr-font-body);cursor:pointer;transition:background var(--a-ease), border-color var(--a-ease), color var(--a-ease);text-decoration:none;display:inline-flex;color:var(--cr-surface-deep)!important}.app-button:hover{background:var(--cr-accent-deep);border-color:var(--cr-accent-deep);color:var(--cr-surface-deep)!important}.app-button.secondary{border-color:var(--cr-border-interactive);background:0 0;color:var(--cr-text-primary)!important}.app-button.secondary:hover{background:var(--cr-surface-raised)}.consent{padding:var(--cr-space-6);background:var(--cr-surface-base);border:var(--a-rule);border-left:3px solid var(--cr-border-interactive);border-radius:var(--cr-radius)}.consent ul{gap:var(--cr-space-3);margin:0;padding:0;list-style:none;display:grid}.consent li{gap:var(--cr-space-3);font-size:var(--cr-text-sm);grid-template-columns:1.25rem minmax(0,1fr);display:grid}.consent li:before{content:attr(data-glyph);font-family:var(--cr-font-mono)}.consent li[data-kind=does]:before{color:var(--cr-text-secondary)}.consent li[data-kind=never]:before{color:var(--cr-text-muted)}.consent strong{color:var(--cr-text-primary);font-weight:600}.exclusion-list{gap:var(--cr-space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.exclusion-list li{padding:var(--cr-space-1) var(--cr-space-3);background:var(--cr-surface-raised);border:1px solid var(--cr-border);border-radius:var(--cr-radius-pill);font-family:var(--cr-font-mono);font-size:var(--cr-text-xs);color:var(--cr-text-secondary)}.app-field{gap:var(--cr-space-2);display:grid}.app-field label{color:var(--cr-text-primary);font-size:var(--cr-text-sm);font-weight:500}.app-form .app-field input{width:100%;font:inherit;padding:var(--cr-space-3);background:var(--cr-surface-raised);color:var(--cr-text-primary);border:1px solid var(--cr-border-interactive);border-radius:var(--cr-radius-sm);min-width:0;font-weight:400}.app-form .app-button{justify-self:start}.auth-status{font-size:var(--cr-text-sm);color:var(--cr-text-secondary);overflow-wrap:anywhere;margin:0}.auth-status:empty{display:none}.auth-status[data-state=failed]{color:var(--cr-state-risk)}
