.ivs-toolbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;
  background:var(--ivs-surface);border:1px solid var(--ivs-line);
  border-radius:12px;padding:8px;
}
.tbtn{
  border:1px solid var(--ivs-line);background:#fff;border-radius:8px;
  padding:8px 10px;font-size:13px;color:var(--ivs-ink);cursor:pointer;
  display:inline-flex;align-items:center;gap:6px;
}
.tbtn:hover{background:var(--ivs-bg);}
.device-chip{
  border:1px solid var(--ivs-line);background:#fff;border-radius:20px;
  padding:8px 14px;font-size:13px;color:var(--ivs-ink-soft);cursor:pointer;
}
.device-chip.active{background:var(--ivs-ink);color:#fff;border-color:var(--ivs-ink);}

.ivs-stage{display:flex;justify-content:center;padding:32px 0;}
.device-frame{
  position:relative;overflow:hidden;background:#000;
  border:12px solid var(--ivs-frame);border-radius:44px;
  transition:width .38s cubic-bezier(.2,.8,.2,1),height .38s cubic-bezier(.2,.8,.2,1);
}
.device-frame.folding{transform-origin:left center;animation:ivsFoldPulse .42s ease;}
@keyframes ivsFoldPulse{
  0%{transform:perspective(900px) rotateY(0deg);}
  45%{transform:perspective(900px) rotateY(-6deg);}
  100%{transform:perspective(900px) rotateY(0deg);}
}
.device-frame.is-foldable.is-open{border-radius:36px;}
.crease{position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgba(255,255,255,.22);z-index:2;}
.notch{
  position:absolute;top:10px;left:50%;transform:translateX(-50%);
  width:90px;height:26px;background:#000;border-radius:16px;z-index:2;
}
.side-btn{position:absolute;right:-13px;top:96px;width:4px;height:64px;background:#000;border-radius:2px;opacity:.5;z-index:3;}
.home-indicator{
  position:absolute;bottom:10px;left:50%;transform:translateX(-50%);
  width:88px;height:4px;border-radius:2px;background:rgba(255,255,255,.5);z-index:2;
}
#preview{position:absolute;top:0;left:0;border:0;background:#fff;transform-origin:top left;}
.empty-state{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  text-align:center;padding:0 28px;font-size:12px;color:#8A8C90;background:var(--ivs-surface);
}
.ivs-toast{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(12px);
  background:var(--ivs-ink);color:#fff;padding:10px 16px;border-radius:10px;
  font-size:13px;opacity:0;transition:opacity .25s ease, transform .25s ease;z-index:2000;
  max-width:min(420px,90vw);text-align:center;
}
.ivs-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}
