.detect-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.7rem;margin-top:.9rem}.detect-card{display:flex;align-items:center;gap:.6rem;padding:.7rem .8rem;border:1px solid var(--ema-border);border-radius:var(--ema-radius-md);background:var(--ema-surface)}.detect-card--up{border-color:color-mix(in srgb,var(--ema-success) 45%,var(--ema-border))}.detect-card__ic{width:34px;height:34px;flex:none;border-radius:var(--ema-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--ema-primary-soft);color:var(--ema-primary)}.detect-card__ic svg{width:17px;height:17px}.detect-card__name{font-weight:700;font-size:var(--ema-text-sm)}.detect-card__srv{font-size:var(--ema-text-xs);color:var(--ema-text-3)}.detect-card__state{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--ema-text-xs);color:var(--ema-text-3)}.detect-card__state i{width:8px;height:8px;border-radius:50%;background:var(--ema-text-3)}.detect-card__state.up{color:var(--ema-success)}.detect-card__state.up i{background:var(--ema-success)}.conn-step{border:1px solid var(--ema-border);border-radius:var(--ema-radius-md);padding:.8rem;background:var(--ema-surface-2)}.conn-pick{display:flex;align-items:center;gap:.55rem;width:100%;margin-top:.5rem;padding:.5rem .6rem;border:1px solid var(--ema-border);border-radius:var(--ema-radius-sm);background:var(--ema-surface);cursor:pointer;font:inherit;color:var(--ema-text)}.conn-pick:hover{border-color:var(--ema-primary)}.conn-pick--sel{border-color:var(--ema-primary);box-shadow:var(--ema-focus-ring)}.conn-pick--down{opacity:.6}.conn-pick__ic{width:28px;height:28px;flex:none;border-radius:var(--ema-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--ema-primary-soft);color:var(--ema-primary)}.conn-pick__ic svg{width:15px;height:15px}.conn-pick__name{font-weight:600;font-size:var(--ema-text-sm)}.conn-pick__srv{font-size:var(--ema-text-xs);color:var(--ema-text-3);margin-left:.4rem;font-family:var(--ema-font-mono)}.conn-pick__state{font-size:var(--ema-text-xs);color:var(--ema-text-3)}.conn-pick__state.up{color:var(--ema-success)}.app-launcher-btn svg{width:16px;height:16px}.app-launcher{padding:.6rem;min-width:280px}.app-launcher__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-top:.35rem}.app-launcher__tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;padding:.85rem .4rem;text-align:center;text-decoration:none;border:1px solid transparent;border-radius:var(--ema-radius-md);background:none;cursor:pointer;font:inherit;color:var(--ema-text);transition:all .13s var(--ema-ease)}.app-launcher__tile:hover{background:var(--ema-primary-soft);border-color:var(--ema-primary)}.app-launcher__tile.is-active{background:var(--ema-surface-2);border-color:var(--ema-border-strong);cursor:default}.app-launcher__ic{width:38px;height:38px;flex:none;border-radius:var(--ema-radius-md);display:inline-flex;align-items:center;justify-content:center;background:var(--ema-primary-soft);color:var(--ema-primary)}.app-launcher__ic svg{width:19px;height:19px}.app-launcher__name{font-size:var(--ema-text-xs);font-weight:600;line-height:1.2}.app-launcher__tile--portal .app-launcher__ic{background:var(--ema-surface-2);color:var(--ema-text-2)}.setup-card{max-width:560px}.setup-steps{display:flex;align-items:center;gap:.6rem;margin:.2rem 0 1.1rem}.setup-step{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--ema-text-sm);font-weight:600;color:var(--ema-text-3)}.setup-step i{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:var(--ema-text-xs);background:var(--ema-surface-2);color:var(--ema-text-3);border:1px solid var(--ema-border-strong)}.setup-step.active{color:var(--ema-text)}.setup-step.active i{background:var(--ema-primary);color:#fff;border-color:var(--ema-primary)}.setup-step.done i{background:var(--ema-success);color:#fff;border-color:var(--ema-success)}.setup-step__line{flex:1;height:1px;background:var(--ema-border)}.setup-demo{margin-top:1rem;text-align:center;font-size:var(--ema-text-sm)}.setup-demo a{color:var(--ema-text-2);text-decoration:none}.setup-demo a:hover{color:var(--ema-primary)}
