/* The two devices drawn in the landing page's hero and beside the app's sign-in (drawings: their
   corner radii are the devices', not the app's). Every rule sits under .devices, since the app has
   its own .chip, .cell and .side; the colors it needs come with it, since the app names them differently. */
.devices { --rank-s: #f2c14e; --rank-a: #4ec291; --rank-b: #7aa7ff; --rank-c: #e0a44a; --rank-f: #f0675a;
  --r-chip: 4px; --r-surface: 8px; position: relative; min-height: 330px; line-height: 1.5; }
.devices, .devices * { box-sizing: border-box; margin: 0; padding: 0; }
.devices ul { list-style: none; }
.devices .browser { border: 1px solid var(--line-strong); border-radius: 12px; background: var(--panel); overflow: hidden; margin-right: 70px; }
.devices .browser .bar { height: 22px; background: var(--surface); border-bottom: 1px solid var(--line); }
.devices .browser .body { padding: 14px; display: grid; grid-template-columns: 72px 1fr; gap: 12px; }
.devices .side { display: flex; flex-direction: column; gap: 6px; color: var(--muted); font-size: 11px; }
.devices .side b { color: var(--text); font-weight: 600; }
.devices .wmain { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.devices .runrow { display: flex; gap: 3px; flex-wrap: wrap; }
.devices .runrow b { width: 16px; height: 16px; border-radius: var(--r-chip); font-size: 10px; display: grid; place-items: center; color: var(--bg); }
.devices .phone { width: 208px; border: 1px solid var(--line-strong); border-radius: 26px; background: var(--bg); padding: 16px 12px;
  display: flex; flex-direction: column; gap: 10px; position: absolute; right: 0; bottom: 0; }
.devices .stamp { display: flex; align-items: center; gap: 10px; }
.devices .stamp strong { font-weight: 600; display: block; }
.devices .stamp small { color: var(--muted); font-size: var(--t-sm); }
.devices .rank { width: 44px; height: 44px; border-radius: var(--r-surface); display: grid; place-items: center; font-size: 24px; font-weight: 700;
  color: var(--bg); background: var(--rank-a); flex: none; }
.devices .cells { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6px; }
.devices .cell { background: var(--surface); border-radius: var(--r-surface); padding: 7px 6px 7px 8px; display: flex; justify-content: space-between; align-items: center; gap: 6px; }
.devices .cell span { color: var(--label); font-size: 11px; }
.devices .chip { min-width: 20px; height: 20px; border-radius: var(--r-chip); display: inline-grid; place-items: center; font-weight: 700; font-size: 11px; color: var(--bg); }
.devices .cs { background: var(--rank-s); } .devices .ca { background: var(--rank-a); } .devices .cb { background: var(--rank-b); }
.devices .cc { background: var(--rank-c); } .devices .cf { background: var(--rank-f); }
.devices .todo { display: flex; flex-direction: column; gap: 6px; font-size: 11px; }
.devices .todo li { background: var(--surface); border-radius: var(--r-surface); padding: 8px; }
@media (max-width: 480px) { .devices .browser { margin-right: 40px; } .devices { min-height: 300px; } }
