/* artifact primitives, carried over from v1 so every case artifact renders unchanged */
/* the phone — mirrors the reel's app screen */
.stage{position:relative;display:grid;place-items:center;min-height:min(72vh,620px)}
.phone{
  position:relative;z-index:2;width:min(88%,292px);aspect-ratio:9/19;
  border-radius:42px;padding:9px;
  background:linear-gradient(160deg,#FFFFFF 0%,#EEF0F3 100%);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:var(--shadow-float), 0 0 0 1px rgba(11,12,14,.06);
  will-change:transform;
}
.screen{
  height:100%;border-radius:34px;overflow:hidden;background:#F7F8FA;
  display:flex;flex-direction:column;gap:9px;padding:14px 13px;
}
.status{display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:700;color:var(--ink);padding:2px 6px 4px}
.status i{display:flex;gap:3px;align-items:flex-end;opacity:.8;height:8px}
.status i b{display:block;width:3px;border-radius:1px;background:var(--ink)}

.appcard{
  border-radius:14px;padding:12px;color:#fff;position:relative;overflow:hidden;
  background:radial-gradient(130% 120% at 18% 12%,#2C333A 0%,#14181C 62%,#0B0C0E 100%);
  box-shadow:0 12px 24px -14px rgba(11,12,14,.7);
}
.appcard__top{display:flex;align-items:center;justify-content:space-between}
.appcard__top b{font-size:12px;font-weight:800;letter-spacing:-.05em}
.appcard__top span{font-size:8px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}
.appcard__chip{
  width:22px;height:16px;border-radius:3px;margin-top:22px;
  background:linear-gradient(135deg,#8E97A2,#D7DDE4 45%,#7E8894);
  box-shadow:inset 0 0 0 .5px rgba(255,255,255,.4);
}
.balance{padding:2px 4px}
.balance b{font-size:22px;font-weight:700;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.balance b em{font-style:normal;font-weight:300;color:var(--mist)}
.balance small{display:block;font-size:9px;color:var(--mist);margin-top:2px}

.meter{padding:0 4px}
.meter__row{display:flex;align-items:baseline;justify-content:space-between;font-size:9px;color:var(--mist)}
.meter__row em{font-style:normal;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.meter__bar{height:5px;border-radius:3px;background:#E6E9ED;margin-top:6px;overflow:hidden}
.meter__bar i{display:block;height:100%;border-radius:3px;background:var(--signal);width:0;transition:width 1.4s var(--ease)}

.rowline{display:flex;align-items:baseline;justify-content:space-between;padding:0 4px;font-size:9px;color:var(--mist)}
.rowline em{font-style:normal;font-size:13px;font-weight:700;color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.rowline em i{font-style:normal;font-weight:300;color:var(--mist)}
.rowline div{text-align:right}

.appbtn{
  margin:2px 0;padding:11px;border-radius:var(--r-pill);background:var(--ink);color:#fff;
  font-size:10px;font-weight:700;letter-spacing:.06em;text-align:center;
}
.approw{
  margin-top:auto;display:flex;align-items:center;gap:9px;
  background:#fff;border-radius:12px;padding:10px;box-shadow:var(--shadow-tile);
}
.approw__ic{width:24px;height:24px;border-radius:7px;background:#F0F2F5;display:grid;place-items:center;color:var(--ink-60);flex:none}
.approw b{display:block;font-size:10px;font-weight:700}
.approw small{display:block;font-size:8px;color:var(--mist)}
.toggle{margin-left:auto;width:26px;height:15px;border-radius:999px;background:#E2E5E9;position:relative;flex:none}
.toggle::after{content:"";position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2)}


/* the browser frame, lifted straight from the reel's own chrome */
.browser{
  position:relative;z-index:2;width:100%;max-width:560px;border-radius:var(--r-lg);
  background:var(--glass);border:1px solid rgba(255,255,255,.85);
  box-shadow:var(--shadow-float);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  padding:12px;will-change:transform;
}
.browser__bar{display:flex;align-items:center;gap:7px;padding:2px 4px 12px}
.browser__bar i{width:7px;height:7px;border-radius:50%;background:var(--hairline-2);display:block}
.browser__url{
  margin-inline:auto;font-size:9px;font-weight:600;letter-spacing:.06em;color:var(--mist);
  background:rgba(255,255,255,.72);border:1px solid var(--hairline);
  padding:5px 22px;border-radius:var(--r-pill);
}
.browser__body{
  border-radius:var(--r-md);overflow:hidden;background:linear-gradient(160deg,#FCFCFD,#EFF1F4);
  aspect-ratio:16/10.4;display:grid;grid-template-columns:52px 1fr;
}

/* a quiet product UI inside the frame */
.ui__rail{border-right:1px solid var(--hairline);padding:14px 0;display:grid;gap:9px;justify-items:center;align-content:start}
.ui__rail span{width:18px;height:18px;border-radius:6px;background:#E5E8EC}
.ui__rail span:first-child{background:var(--ink)}
.ui__main{padding:14px;display:flex;flex-direction:column;gap:11px}
.ui__head{display:flex;align-items:center;gap:8px}
.ui__head b{font-size:11px;font-weight:700;letter-spacing:-.02em}
.ui__head em{margin-left:auto;font-style:normal;font-size:8px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;background:var(--ink);color:#fff;padding:5px 11px;border-radius:var(--r-pill)}
.ui__stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.ui__stat{background:#fff;border-radius:10px;padding:9px 10px;box-shadow:var(--shadow-tile)}
.ui__stat small{display:block;font-size:7px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mist)}
.ui__stat b{font-size:13px;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ui__chart{
  background:#fff;border-radius:10px;padding:12px;box-shadow:var(--shadow-tile);
  display:flex;align-items:flex-end;gap:5px;height:82px;
}
.ui__chart i{flex:1;border-radius:3px 3px 0 0;background:#E3E7EB;height:22%;transition:height 1.1s var(--ease)}
.ui__chart i.is-on{background:var(--signal)}
.ui__rows{display:grid;gap:6px}
.ui__row{
  display:flex;align-items:center;gap:8px;background:#fff;border-radius:9px;
  padding:8px 10px;box-shadow:var(--shadow-tile);font-size:8px;color:var(--mist);
}
.ui__row b{font-size:9px;font-weight:700;color:var(--ink)}
.ui__row span:last-child{margin-left:auto;font-variant-numeric:tabular-nums}
.ui__dot{width:5px;height:5px;border-radius:50%;background:var(--signal);flex:none}


/* two phones, angled apart */
.phones{display:flex;gap:clamp(16px,3vw,44px);align-items:center;justify-content:center;perspective:1200px}
.phones .phone{position:relative;width:min(40vw,218px);aspect-ratio:9/18.8;border-radius:32px}
.phones .phone:first-child{transform:rotate(-4deg) translateY(10px)}
.phones .phone:last-child{transform:rotate(4deg) translateY(-10px)}
.phones .screen{border-radius:26px;padding:11px 10px;gap:7px}


@media (max-width:620px){.phones{flex-direction:column;gap:22px}.phones .phone{width:min(70vw,230px)}}
