/* Each complete device has intrinsic dimensions. The stage scales the whole model,
   including its stand, into the available space. Screens retain the source ratio. */
#iserveme-toast .pv-device-stage[data-device-type]{position:relative;overflow:hidden;padding:28px 28px 30px;min-width:0;--fit-scale:.01;--device-center-y:50%}
#iserveme-toast .pv-device-stage[data-device-type]:before{display:none}
#iserveme-toast .pv-device-model{position:absolute;left:50%;top:var(--device-center-y);width:900px;min-width:0;transform-origin:center;transform:translate(-50%,-50%) scale(var(--fit-scale)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .2s ease;will-change:transform}
#iserveme-toast [data-device-type=phone]>.pv-device-model{width:300px}
#iserveme-toast [data-device-type=monitor]>.pv-device-model{width:960px}
#iserveme-toast [data-device-type=laptop]>.pv-device-model{width:940px;padding-inline:30px}
#iserveme-toast .pv-device-model>.pv-device{position:relative;width:100%!important;margin:0!important;padding:16px!important;border:1px solid #aaa8af;border-radius:24px!important;transform:none!important;box-shadow:0 28px 36px -16px #241b465c,4px 5px 0 #29232f,0 0 0 1px #4f4b56;flex:none}
#iserveme-toast .pv-device-model>.pv-phone{padding:18px 10px 14px!important;border-radius:34px!important}
#iserveme-toast .pv-device-model>.pv-monitor{padding:15px 15px 23px!important;border-radius:21px!important}
#iserveme-toast .pv-device-model>.pv-laptop{padding:13px 13px 15px!important;border-radius:19px 19px 5px 5px!important}
#iserveme-toast .pv-device-model .pv-device-screen{position:relative;aspect-ratio:var(--screen-ratio)!important;width:100%;height:auto!important;border:0!important;border-radius:10px!important;overflow:hidden;box-shadow:0 0 0 4px #101017;background:transparent}
#iserveme-toast .pv-device-model>.pv-phone .pv-device-screen{border-radius:20px!important;box-shadow:0 0 0 3px #101017}
#iserveme-toast .pv-device-model .pv-device-screen img{display:block!important;position:relative!important;width:100%!important;height:auto!important;max-width:100%!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;border:0!important;border-radius:0!important;transform:none!important;filter:none!important}
#iserveme-toast .pv-device-model .pv-camera{width:4px!important;height:4px!important;top:5px!important;left:calc(50% - 2px)!important;border:1px solid #525967;background:#111923;border-radius:50%}
#iserveme-toast .pv-device-model>.pv-phone .pv-camera{width:25px!important;height:4px!important;top:7px!important;left:calc(50% - 12.5px)!important;border:0;border-radius:6px;background:#08080d}
#iserveme-toast .pv-device-model>.pv-monitor:before,#iserveme-toast .pv-device-model>.pv-monitor:after,#iserveme-toast .pv-device-model>.pv-laptop:after{display:none!important}
#iserveme-toast .pv-device-support{position:relative;width:100%;height:100px}
#iserveme-toast [data-device-type=monitor] .pv-device-support:before{content:'';position:absolute;top:0;left:40%;width:20%;height:86px;background:linear-gradient(90deg,#777480,#d9d6dd,#b5b1be,#75717c);clip-path:polygon(32% 0,68% 0,96% 100%,4% 100%)}
#iserveme-toast [data-device-type=monitor] .pv-device-support:after{content:'';position:absolute;top:83px;left:31%;width:38%;height:17px;border-radius:50% 50% 5px 5px;background:linear-gradient(#e2dfe7,#b6b1bf 45%,#716c7c);box-shadow:0 15px 16px #241a3933}
#iserveme-toast [data-device-type=laptop] .pv-device-support{width:calc(100% + 60px);height:26px;margin-left:-30px;background:linear-gradient(#e3dfe8,#b9b4c2 40%,#746e7f 55%,#bdb7c7);clip-path:polygon(3.2% 0,96.8% 0,100% 70%,98% 100%,2% 100%,0 70%);border-radius:0 0 28px 28px;filter:drop-shadow(0 14px 12px #241a3940)}
#iserveme-toast [data-device-type=laptop] .pv-device-support:after{content:'';position:absolute;width:15%;left:42.5%;height:7px;top:0;background:linear-gradient(#77717f,#bcb7c6);border-radius:0 0 8px 8px}
#iserveme-toast #it-feature-device .pv-device-stage[data-device-type]{padding:20px;overflow:visible}
#iserveme-toast .pv-related .pv-device-stage[data-device-type]{padding:24px 24px 30px}
#iserveme-toast .pv-solution-grid .pv-device-stage[data-device-type]{padding:32px}
@media(max-width:760px){
  #iserveme-toast .pv-device-stage[data-device-type]{padding:24px 23px 30px}
  #iserveme-toast .pv-related .pv-device-stage[data-device-type],#iserveme-toast .pv-solution-grid .pv-device-stage[data-device-type]{padding:25px}
  #iserveme-toast #it-feature-device .pv-device-stage[data-device-type]{padding:15px 16px}
}
@media(prefers-reduced-motion:reduce){#iserveme-toast .pv-device-model{transition:none}}

/* Native app captures: hide only the captured Safari toolbar, never the app UI. */
#iserveme-toast .pv-device-model .pv-device-screen img{margin-top:var(--screen-offset,0)!important}

/* Keep complete lifestyle compositions visible in their cards. */
#iserveme-toast .pv-device-stage[data-device-type=scene]{padding:16px;background:linear-gradient(135deg,#f1eae3,#e9e2f0)}
#iserveme-toast .pv-scene-image{display:block;width:100%;height:auto;border-radius:24px;box-shadow:0 18px 35px -18px #241b4666}
#iserveme-toast .pv-view-tabs{display:flex;gap:6px;padding:6px;background:#eee8f4;border-radius:40px;margin-bottom:16px;width:fit-content;max-width:100%}
#iserveme-toast .pv-view-tabs button{border:0;border-radius:30px;padding:12px 20px;background:transparent;color:var(--it-ink);font:inherit;font-size:13px;cursor:pointer}
#iserveme-toast .pv-view-tabs button[aria-selected=true]{background:var(--it-indigo);color:white;box-shadow:0 4px 12px #5142df22}
#iserveme-toast .pv-view-tabs button:focus-visible{outline:2px solid var(--it-indigo);outline-offset:3px}
#iserveme-toast .pv-kds-views [hidden]{display:none!important}
#iserveme-toast .pv-story-text{max-width:1020px}
#iserveme-toast .pv-story-text .pv-check-list{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:760px){
  #iserveme-toast .pv-view-tabs button{padding:11px 15px;font-size:12px}
  #iserveme-toast .pv-device-stage[data-device-type=scene]{--stage-height:300px;padding:12px}
  #iserveme-toast .pv-story-text .pv-check-list{grid-template-columns:1fr}
}

/* Use the exact official artwork as a small, editable mark on the POS screen.
   Coordinates refer to the unchanged 1536×1024 photo; the whole model scales it. */
#iserveme-toast .pv-device-model>.pv-photo-logo{position:absolute;left:54.8%;top:43.65%;width:1.5%;height:auto;max-width:none;aspect-ratio:850/788;object-fit:contain;transform:matrix(1,-.054,.24,1,0,0);transform-origin:top left;box-shadow:none;border-radius:0;filter:none;pointer-events:none}
#iserveme-toast .pv-day-end-figure{margin:0;min-width:0}
#iserveme-toast .pv-day-end-figure figcaption{font-size:12px;line-height:1.6;color:var(--it-muted);padding:14px 4px 0}

/* Exact printed artwork shares the photo's coordinate system at every size. */
#iserveme-toast .pv-device-model>.pv-qr-print{position:absolute;inset:0;width:100%;height:100%;max-width:none;pointer-events:none;mix-blend-mode:multiply}
#iserveme-toast .pv-qr-figure{margin:0;min-width:0}
#iserveme-toast .pv-qr-figure figcaption{font-size:12px;line-height:1.6;color:var(--it-muted);padding:14px 4px 0}
#iserveme-toast .pv-qr-story{grid-template-columns:1.15fr 1fr}
@media(max-width:760px){#iserveme-toast .pv-qr-story{grid-template-columns:1fr}}

/* iPhone Pro Max: dark metal edge, thin bezels and a separate safe area.
   The menu stays at its captured width; the viewport excludes the demo banner. */
#iserveme-toast [data-device-type=iphone-pro-max]>.pv-device-model{width:400px}
#iserveme-toast .pv-device-model>.pv-iphone-pro-max{padding:9px!important;border:1px solid #bbb6b0;border-radius:61px!important;background:linear-gradient(120deg,#c1bcb4 0,#5c5853 8%,#aaa49c 21%,#484541 43%,#c3bdb4 70%,#6a655e 88%,#b3ada4);box-shadow:0 30px 45px -15px #241b465c,inset 0 0 0 2px #343331,0 0 0 1px #46443f,3px 2px 0 #514d47;isolation:isolate}
#iserveme-toast .pv-device-model>.pv-iphone-pro-max .pv-device-screen{aspect-ratio:auto!important;border-radius:51px!important;box-shadow:0 0 0 4px #111110;background:#f8f5f0}
#iserveme-toast .pv-iphone-status{position:relative;height:56px;background:#f8f5f0;color:#151515}
#iserveme-toast .pv-iphone-time{position:absolute;left:28px;top:17px;font:600 15px/20px Arial,sans-serif;letter-spacing:-.5px}
#iserveme-toast .pv-dynamic-island{position:absolute;top:9px;left:calc(50% - 51px);width:102px;height:29px;border-radius:24px;background:#080808;box-shadow:inset 0 0 0 1px #151515}
#iserveme-toast .pv-dynamic-island i{position:absolute;right:10px;top:9px;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 42% 35%,#202d48,#0a1120 45%,#050507 70%);box-shadow:0 0 0 2px #111112}
#iserveme-toast .pv-iphone-indicators{position:absolute;right:23px;top:20px;width:57px;height:15px}
#iserveme-toast .pv-iphone-app{position:relative;aspect-ratio:var(--screen-ratio);overflow:hidden;background:#f1eeea}
#iserveme-toast .pv-iphone-home{height:24px;display:flex;align-items:center;justify-content:center;background:#f1eeea}
#iserveme-toast .pv-iphone-home span{display:block;width:122px;height:5px;border-radius:8px;background:#151515}
#iserveme-toast .pv-iphone-action,#iserveme-toast .pv-iphone-volume,#iserveme-toast .pv-iphone-power{position:absolute;width:3px;border-radius:3px;background:linear-gradient(90deg,#413f3b,#a39c92,#5c5750);box-shadow:0 0 0 1px #45413d55}
#iserveme-toast .pv-iphone-action{left:-3px;top:118px;height:25px}
#iserveme-toast .pv-iphone-volume{left:-3px;top:172px;height:52px}
#iserveme-toast .pv-iphone-volume:after{content:'';position:absolute;left:0;top:66px;width:3px;height:52px;border-radius:3px;background:inherit}
#iserveme-toast .pv-iphone-power{right:-3px;top:201px;height:80px}
#iserveme-toast .pv-hero [data-device-type=iphone-pro-max]{--stage-height:600px}
@media(max-width:760px){#iserveme-toast .pv-hero [data-device-type=iphone-pro-max]{--stage-height:500px}}

/* Room service shares the product hero and story grids; only its caption is specific. */
#iserveme-toast .pv-room-figure{margin:0;min-width:0}
#iserveme-toast .pv-room-figure figcaption{font-size:12px;line-height:1.6;color:var(--it-muted);padding:16px 4px 0}
