/* 6 · Naming — nomenclature formula + new-brand test flow */
.cba-name__formula{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap;margin-bottom:var(--bdh-gap);padding:16px 20px;border-top:var(--cba-ink-hair);border-bottom:var(--cba-hair)}
.cba-name__formula ol{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;list-style:none;margin:0;padding:0}
.cba-name__formula li{position:relative;display:flex;flex-direction:column;gap:4px;padding:8px 14px;border:1px solid var(--line-3);background:var(--paper)}
.cba-name__formula li+li{margin-left:18px}
.cba-name__formula li+li::before{content:"+";position:absolute;left:-17px;top:50%;transform:translateY(-50%);font-family:var(--f);font-size:var(--t-sm);color:var(--blue)}
.cba-name__formula li:first-child{border-color:var(--ink)}
.cba-name__formula b{font-family:var(--f-h);font-size:1rem;font-weight:500;letter-spacing:-.012em;color:var(--ink);line-height:1.1}
.cba-name__formula small{font-family:var(--f);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}

.cba-name__app{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--bdh-gap-l);align-items:start}
.cba-name__ask{position:sticky;top:var(--bdh-sticky);padding:clamp(22px,2.6vw,32px);box-shadow:var(--sh-1)}
.cba-name__prog{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:18px;border-bottom:var(--cba-hair)}
.cba-name__prog b{font-weight:500;color:var(--blue)}
.cba-name__q{font-family:var(--f-h);font-size:clamp(1.25rem,1.9vw,1.6rem);font-weight:500;letter-spacing:-.018em;line-height:1.22;color:var(--ink);min-height:3.7em}
.cba-name__help{margin-top:10px;font-size:var(--t-sm);line-height:1.6;color:var(--muted)}
.cba-name__btns{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px}
.cba-name__btns .cba-ctl{min-width:88px}
.cba-name__reset{margin-left:auto;padding:8px 0;border:0;background:none;font-family:var(--f-b);font-size:var(--t-sm);font-weight:500;color:var(--muted);cursor:pointer;border-bottom:1px solid var(--line-3)}
.cba-name__reset:hover{color:var(--ink);border-color:var(--blue)}
.cba-name__app.is-done .cba-name__btns .cba-ctl{display:none}
.cba-name__app.is-done .cba-name__reset{margin-left:0;color:var(--ink)}
.cba-name__result{margin-top:22px;padding:18px;background:var(--blue-wash);border-left:2px solid var(--blue)}
.cba-name__rh{margin:8px 0 4px;font-family:var(--f-h);font-size:1.6rem;font-weight:500;letter-spacing:-.02em;color:var(--ink);line-height:1.1}
.cba-name__rf{margin-bottom:10px}
.cba-name__rr{font-size:var(--t-sm);line-height:1.6;color:var(--txt)}
.cba-name__who{margin-top:14px;padding-top:12px;border-top:1px solid var(--blue-line);font-size:var(--t-sm);line-height:1.6;color:var(--muted)}
.cba-name__who .cba-mono{margin-right:4px}

/* flow: spine of diamonds, exits to the right */
.cba-name__flow{list-style:none;margin:0;padding:0}
.cba-name__row{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 90px 128px;align-items:center;column-gap:14px;min-height:118px}
.cba-name__spine{position:absolute;left:27px;top:0;bottom:0;width:2px;background:var(--line-3)}
.cba-name__row:first-child .cba-name__spine{top:50%}
.cba-name__row--end .cba-name__spine{bottom:50%}
.cba-name__spine::after{content:"";position:absolute;inset:0;background:var(--blue);clip-path:inset(0 0 100% 0);transition:clip-path .5s var(--e-io)}
.cba-name__row.is-pass .cba-name__spine::after{clip-path:inset(0 0 0 0)}
.cba-name__dia{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;margin-left:6px;transform:rotate(45deg);border:1.5px solid var(--ink);background:var(--paper);transition:background .3s var(--e),border-color .3s var(--e)}
.cba-name__dia b{transform:rotate(-45deg);font-family:var(--f);font-size:var(--t-xs);font-weight:500;color:var(--ink)}
.cba-name__row.is-now .cba-name__dia{border-color:var(--blue);box-shadow:0 0 0 6px var(--blue-wash-2)}
.cba-name__row.is-pass .cba-name__dia,.cba-name__row.is-exit .cba-name__dia{background:var(--blue);border-color:var(--blue)}
.cba-name__row.is-pass .cba-name__dia b,.cba-name__row.is-exit .cba-name__dia b{color:#fff}
.cba-name__qt{font-size:var(--t-sm);line-height:1.5;color:var(--txt);transition:color .3s var(--e)}
.cba-name__row.is-now .cba-name__qt{color:var(--ink);font-weight:500}
.cba-name__exit{position:relative;height:100%}
.cba-name__exit i{position:absolute;left:0;right:0;top:50%;height:2px;background:var(--line-3)}
.cba-name__exit i::before{content:"";position:absolute;inset:0;background:var(--blue);clip-path:inset(0 100% 0 0);transition:clip-path .5s var(--e-io)}
.cba-name__exit i::after{content:"";position:absolute;right:-1px;top:-4px;border-left:7px solid var(--line-3);border-top:5px solid transparent;border-bottom:5px solid transparent}
.cba-name__exit em{position:absolute;left:50%;top:calc(50% - 22px);transform:translateX(-50%);font-family:var(--f);font-style:normal;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.cba-name__row.is-exit .cba-name__exit i::before{clip-path:inset(0 0 0 0)}
.cba-name__row.is-exit .cba-name__exit i::after{border-left-color:var(--blue)}
.cba-name__row.is-exit .cba-name__exit em{color:var(--blue-d)}
.cba-name__out,.cba-name__term{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px dashed var(--line-3);background:var(--paper);font-family:var(--f-h);font-size:.95rem;font-weight:500;letter-spacing:-.012em;color:var(--muted);text-align:center;line-height:1.15;transition:background .3s var(--e),color .3s var(--e),border-color .3s var(--e)}
.cba-name__row--end{grid-template-columns:56px minmax(0,1fr);min-height:96px}
.cba-name__term{position:relative;grid-column:2;justify-self:start;gap:10px;padding:10px 18px;border-style:solid}
.cba-name__term::before{content:"";position:absolute;right:calc(100% + 1px);top:50%;width:42px;height:2px;background:var(--line-3);transition:background .3s var(--e)}
.cba-name__row--end.is-end-hit .cba-name__term::before{background:var(--blue)}
.cba-name__term em{font-family:var(--f);font-style:normal;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.cba-name__out.is-hit,.cba-name__term.is-hit{border:1px solid var(--blue);background:var(--blue);color:#fff}
.cba-name__term.is-hit em{color:rgba(255,255,255,.8)}
.cba-name__app.is-done .cba-name__row:not(.is-pass):not(.is-exit):not(.is-end-hit) .cba-name__qt{color:var(--faint)}

@media (max-width:1024px){.cba-name__app{grid-template-columns:minmax(0,1fr)}.cba-name__ask{position:static}}
@media (max-width:600px){
  .cba-name__row{grid-template-columns:48px minmax(0,1fr) 92px;row-gap:8px;padding:12px 0}
  .cba-name__spine{left:23px}.cba-name__dia{width:36px;height:36px;margin-left:5px}
  .cba-name__exit{display:none}
  .cba-name__out{font-size:.8rem;min-height:36px}
  .cba-name__formula li+li{margin-left:16px}
  .cba-name__q{min-height:0}
}
@media (prefers-reduced-motion:reduce){.cba-name__spine::after,.cba-name__exit i::before{transition:none}}
