/* ============================================================
   Device frame + rotation (Quer <-> Hoch) — website-relaunch look
   Bezel = clean surface panel, hairline border, rounded (r-lg),
   3px gradient top-edge. Bezel px dims set by site.js (sizeDevice);
   the live app inside reflows via the bundled orientation enforcer.
   ============================================================ */

.device{display:flex;flex-direction:column;align-items:center}

.device-stage{width:100%;display:flex;align-items:center;justify-content:center}

/* the monitor: clean surface, hairline, rounded, gradient top-edge */
.bezel{
  position:relative;padding:10px;background:var(--surface);
  border:1px solid var(--hair);border-radius:var(--r-lg);overflow:hidden;
  transition:width .45s cubic-bezier(.5,.02,.2,1),height .45s cubic-bezier(.5,.02,.2,1),border-color .18s;
}
.bezel::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--grad);z-index:3}

.screen{position:relative;width:100%;height:100%;overflow:hidden;background:var(--deep);border-radius:var(--r-md)}
.screen iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;display:block;background:var(--deep);pointer-events:none}

/* subtle edge feedback during rotation */
.screen::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:var(--r-md);
  box-shadow:inset 0 0 0 0 rgba(0,229,210,0);transition:box-shadow .25s ease}
.device.rotating .screen::after{box-shadow:inset 0 0 40px 1px rgba(0,229,210,.30)}

/* placeholder while the iframe loads */
.screen-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;
  font-family:var(--mono);color:var(--muted);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:1rem;background:var(--surface)}
.screen-ph .sh{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--hair);position:relative;overflow:hidden}
.screen-ph .sh::before{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(0,229,210,.30),transparent);animation:scan 1.8s linear infinite}
@keyframes scan{to{left:120%}}
.screen.loaded .screen-ph{display:none}

/* privacy facade — preview (and external data fetches) start on click only */
.pv-facade{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;
  background:linear-gradient(160deg,rgba(2,12,24,.55),rgba(2,12,24,.85)),var(--surface);border-radius:var(--r-md);padding:1rem;text-align:center}
.pv-start{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--mono);font-size:.8rem;letter-spacing:.08em;
  padding:.85rem 1.4rem;border-radius:999px;border:1px solid var(--teal);background:rgba(0,229,210,.10);color:var(--teal);cursor:pointer;
  transition:background .18s,transform .18s;min-height:44px}
.pv-start:hover{background:rgba(0,229,210,.22);transform:translateY(-1px)}
.pv-play{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent currentColor}
.pv-note{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;color:var(--muted);max-width:34ch;line-height:1.6}

/* control bar under the frame (LIVE indicator) */
.device-bar{display:flex;align-items:center;justify-content:center;margin-top:var(--s-2)}
.live{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.live .d{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--teal);
  box-shadow:0 0 8px var(--teal);margin-right:.45rem;vertical-align:middle;animation:livepulse 2s ease-in-out infinite}
@keyframes livepulse{0%,100%{opacity:1}50%{opacity:.4}}

/* segmented Quer/Hoch switcher — pill, hairline, teal-active */
.seg{display:inline-flex;border:1px solid var(--hair);border-radius:100px;overflow:hidden;flex:none}
.seg button{display:inline-flex;align-items:center;gap:.42rem;background:transparent;border:0;cursor:pointer;
  font-family:var(--mono);font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  padding:.5rem .9rem;transition:color .15s,background .15s}
.seg button:hover{color:var(--text)}
.seg button.on{background:var(--teal);color:#021014}
.seg .ic{width:12px;height:12px;border:1.6px solid currentColor;border-radius:2px;display:inline-block}
.seg .ic.v{width:9px;height:13px}
