.cs-panel{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.cs-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;justify-content:space-between}
.cs-title{font-family:var(--font-display,inherit);font-size:1rem;margin:0}
.cs-state{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;color:var(--muted);overflow-wrap:anywhere}
.cs-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:none}
.cs-state[data-kind="ok"] .cs-dot{background:var(--ok)}
.cs-state[data-kind="err"]{color:var(--bad)}
.cs-state[data-kind="err"] .cs-dot{background:var(--bad)}
.cs-state[data-kind="busy"] .cs-dot{background:var(--warn);animation:cs-pulse 1s ease-in-out infinite}
.cs-actions{display:flex;flex-wrap:wrap;gap:8px}
.cs-box{border:1px solid var(--rule);border-radius:var(--radius,8px);padding:10px 12px;font-size:.88rem;background:var(--surface-2);overflow-wrap:anywhere}
.cs-box p{margin:0 0 8px}
.cs-msg{font-size:.86rem;overflow-wrap:anywhere}
.cs-msg:empty{display:none}
.cs-panel .btn[disabled]{opacity:.55;cursor:not-allowed}
.cs-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes cs-pulse{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.cs-state .cs-dot{animation:none!important}}
@media (max-width:640px){.cs-actions{width:100%}.cs-actions .btn{flex:1 1 auto}}
