.setup { max-width:860px; margin:0 auto; }
.setup-head { display:flex; align-items:center; gap:1rem; margin-bottom:1.2rem; }
.setup-logo { width:3.2rem; height:3.2rem; border-radius:.9rem; }
.setup-steps { display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 1rem; padding:0; list-style:none; }
.setup-steps li { display:flex; align-items:center; gap:.45rem; padding:.35rem .8rem .35rem .4rem; border-radius:999px; background:var(--white); border:1px solid var(--border); color:var(--ink-soft); font-size:.85rem; font-weight:700; }
.setup-steps li span { display:grid; place-items:center; width:1.6rem; height:1.6rem; border-radius:50%; background:var(--cream); }
.setup-steps li.is-current { border-color:var(--ink); color:var(--ink); } .setup-steps li.is-current span { background:var(--ink); color:#fff; }
.setup-steps li.is-done span { background:#d9f2e4; color:#1d6b43; }
.setup-card { padding:clamp(1.3rem, 3vw, 2.2rem); }
.setup-form { display:grid; gap:.6rem; }
.setup-form .form-label { margin:.4rem 0 0; font-weight:700; }
.setup-actions { display:flex; justify-content:flex-end; align-items:center; gap:.6rem; margin-top:1.4rem; }
.setup-note { margin:1.4rem 0 0; padding:.7rem .9rem; border-radius:.7rem; background:var(--cream); color:var(--ink); font-size:.9rem; }
.setup-help { margin-bottom:1rem; padding:.8rem 1rem; border-radius:.8rem; background:#eef6f8; font-size:.92rem; }
.setup-help summary { cursor:pointer; font-weight:700; color:var(--ink); }
.setup-help ol { margin:.6rem 0 0; padding-left:1.2rem; } .setup-help li { margin-bottom:.4rem; }
.setup-copy { display:flex; align-items:center; gap:.5rem; margin-top:.35rem; } .setup-copy code { padding:.3rem .5rem; border-radius:.4rem; background:var(--white); }
.setup-models { display:grid; gap:.7rem; }
.setup-model { padding:.9rem 1rem; border:1px solid var(--border); border-radius:.9rem; background:#fffdf8; }
.setup-model-check { display:flex; align-items:center; gap:.5rem; margin-bottom:.4rem; font-weight:800; color:var(--ink); }
.setup-badge { padding:.05rem .45rem; border-radius:999px; background:#d9f2e4; color:#1d6b43; font-size:.68rem; }
.setup-model-foot { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; margin-top:.6rem; }
.setup-registered { display:flex; flex-wrap:wrap; align-items:center; gap:.4rem; margin-bottom:.8rem; font-size:.9rem; }
.setup-chip { padding:.2rem .6rem; border-radius:999px; background:#e5f6ec; color:#1d7a4a; font-size:.82rem; }
.setup-drop { display:flex; flex-direction:column; align-items:center; gap:.3rem; padding:2rem 1rem; border:2px dashed var(--border); border-radius:1rem; background:#fffdf8; color:var(--ink-soft); text-align:center; cursor:pointer; }
.setup-drop .bi { font-size:2rem; color:var(--coral); } .setup-drop strong { color:var(--ink); }
.setup-drop.is-over { border-color:var(--coral); background:var(--cream); }
.setup-files { display:grid; gap:.35rem; margin:.9rem 0 0; padding:0; list-style:none; }
.setup-files li { padding:.45rem .7rem; border-radius:.6rem; background:var(--white); border:1px solid var(--border); font-size:.9rem; }
.setup-files li.is-ok .bi { color:#1d7a4a; } .setup-files li.is-error { color:#b3372a; }
.setup-summary { display:grid; gap:.55rem; margin:1rem 0 0; padding:0; list-style:none; }
.setup-summary li { display:flex; align-items:center; gap:.9rem; padding:.75rem 1rem; border-radius:.8rem; border:1px solid var(--border); background:var(--white); }
.setup-summary li > .bi { font-size:1.3rem; } .setup-summary li.is-ok > .bi { color:#1d7a4a; } .setup-summary li.is-warn > .bi { color:#c38a00; }
.setup-summary strong { display:block; color:var(--ink); } .setup-summary span { color:var(--ink-soft); font-size:.88rem; }
