/*! Devices.css v0.2.0 | MIT License | github.com/picturepan2/devices.css */
.device,
.device *,
.device ::after,
.device ::before,
.device::after,
.device::before {
  box-sizing: border-box;
  display: block;
}

.device {
  position: relative;
  transform: scale(1);
  z-index: 1;
  margin: 0 auto;
}

.device .device-frame {
  z-index: 1;
}

.device .device-screen {
  background-color: #000;
  background-position: center center;
  background-size: cover;
  object-fit: cover;
  position: relative;
  overflow: hidden;
}

/* ==========================================================================
   iPhone 14/15/16 Pro
   ========================================================================== */
.device-iphone-14-pro {
  height: 868px;
  width: 428px;
}

.device-iphone-14-pro .device-frame {
  background: #010101;
  border: 1px solid #1b1721;
  border-radius: 68px;
  box-shadow: inset 0 0 4px 2px #c0b7cd, inset 0 0 0 6px #342c3f, 0 16px 48px rgba(0,0,0,0.18);
  height: 868px;
  padding: 19px;
  width: 428px;
}

.device-iphone-14-pro .device-screen {
  border-radius: 49px;
  height: 830px;
  width: 390px;
}

.device-iphone-14-pro .device-stripe::after,
.device-iphone-14-pro .device-stripe::before {
  border: solid rgba(1, 1, 1, 0.25);
  border-width: 0 7px;
  content: "";
  height: 7px;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 9;
}

.device-iphone-14-pro .device-stripe::after {
  top: 85px;
}

.device-iphone-14-pro .device-stripe::before {
  bottom: 85px;
}

.device-iphone-14-pro .device-header {
  background: #010101;
  border-radius: 20px;
  height: 35px;
  left: 50%;
  margin-left: -60px;
  position: absolute;
  top: 29px;
  width: 120px;
  z-index: 10;
}

.device-iphone-14-pro .device-sensors::after,
.device-iphone-14-pro .device-sensors::before {
  content: "";
  position: absolute;
  z-index: 11;
}

.device-iphone-14-pro .device-sensors::after {
  background: #010101;
  border-radius: 17px;
  height: 33px;
  left: 50%;
  margin-left: -60px;
  top: 30px;
  width: 74px;
}

.device-iphone-14-pro .device-sensors::before {
  background: radial-gradient(farthest-corner at 20% 20%, #6074bf 0, transparent 40%),
              radial-gradient(farthest-corner at 80% 80%, #513785 0, #24555e 20%, transparent 50%);
  border-radius: 50%;
  box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.05);
  height: 9px;
  left: 50%;
  margin-left: 36px;
  top: 42px;
  width: 9px;
}

.device-iphone-14-pro .device-btns {
  background: #1b1721;
  border-radius: 2px;
  height: 32px;
  left: -2px;
  position: absolute;
  top: 115px;
  width: 3px;
}

.device-iphone-14-pro .device-btns::after,
.device-iphone-14-pro .device-btns::before {
  background: #1b1721;
  border-radius: 2px;
  content: "";
  height: 62px;
  left: 0;
  position: absolute;
  width: 3px;
}

.device-iphone-14-pro .device-btns::after {
  top: 60px;
}

.device-iphone-14-pro .device-btns::before {
  top: 140px;
}

.device-iphone-14-pro .device-power {
  background: #1b1721;
  border-radius: 2px;
  height: 100px;
  position: absolute;
  right: -2px;
  top: 200px;
  width: 3px;
}

.device-iphone-14-pro.device-black .device-frame {
  border-color: #5c5956;
  box-shadow: inset 0 0 4px 2px #fff, inset 0 0 0 6px #76726f, 0 16px 48px rgba(0,0,0,0.25);
}

.device-iphone-14-pro.device-black .device-btns,
.device-iphone-14-pro.device-black .device-btns::after,
.device-iphone-14-pro.device-black .device-btns::before,
.device-iphone-14-pro.device-black .device-power {
  background: #5c5956;
}

/* ==========================================================================
   iPad Pro (Landscape & Portrait)
   ========================================================================== */
.device-ipad-pro {
  height: 778px;
  width: 560px;
}

.device-ipad-pro .device-frame {
  background: #0d0d0d;
  border-radius: 36px;
  box-shadow: inset 0 0 0 1px #babdbf, inset 0 0 1px 3px #e2e3e4, 0 14px 42px rgba(0,0,0,0.16);
  height: 778px;
  padding: 27px;
  width: 560px;
}

.device-ipad-pro .device-screen {
  border: 2px solid #121212;
  border-radius: 11px;
  height: 724px;
  width: 506px;
}

.device-ipad-pro .device-btns::after,
.device-ipad-pro .device-btns::before {
  background: #babdbf;
  content: "";
  position: absolute;
}

.device-ipad-pro .device-btns::after {
  height: 2px;
  right: 40px;
  top: -2px;
  width: 36px;
}

.device-ipad-pro .device-btns::before {
  box-shadow: 0 37px #babdbf;
  height: 32px;
  right: -2px;
  top: 63px;
  width: 2px;
}

.device-ipad-pro .device-sensors::after,
.device-ipad-pro .device-sensors::before {
  content: "";
  position: absolute;
}

.device-ipad-pro .device-sensors::after {
  background: #1a1a1a;
  border-radius: 17px;
  box-shadow: -20px 0 #1a1a1a, 70px 0 #1a1a1a;
  height: 10px;
  left: 50%;
  margin-left: -30px;
  top: 12px;
  width: 10px;
}

.device-ipad-pro .device-sensors::before {
  background: radial-gradient(farthest-corner at 20% 20%, #6074bf 0, transparent 40%),
              radial-gradient(farthest-corner at 80% 80%, #513785 0, #24555e 20%, transparent 50%);
  border-radius: 50%;
  box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.05);
  height: 6px;
  left: 50%;
  margin-left: -3px;
  top: 14px;
  width: 6px;
}

.device-ipad-pro.device-spacegray .device-frame {
  box-shadow: inset 0 0 0 1px #6a6d70, inset 0 0 1px 3px #83878a, 0 14px 42px rgba(0,0,0,0.22);
}

.device-ipad-pro.device-spacegray .device-btns::after,
.device-ipad-pro.device-spacegray .device-btns::before {
  background: #6a6d70;
}

/* Landscape iPad Pro (matches ~1.524 aspect ratio screenshots) */
.device-ipad-pro.device-landscape {
  width: 772px;
  height: 523px;
}

.device-ipad-pro.device-landscape .device-frame {
  width: 772px;
  height: 523px;
  border-radius: 32px;
  padding: 24px;
}

.device-ipad-pro.device-landscape .device-screen {
  width: 724px;
  height: 475px;
  border-radius: 12px;
}

.device-ipad-pro.device-landscape .device-sensors::after {
  left: 50%;
  margin-left: -25px;
  top: 8px;
  width: 8px;
  height: 8px;
  box-shadow: 50px 0 #1a1a1a;
}

.device-ipad-pro.device-landscape .device-sensors::before {
  left: 50%;
  margin-left: -2px;
  top: 9px;
  width: 5px;
  height: 5px;
}

.device-ipad-pro.device-landscape .device-btns::after {
  top: 40px;
  left: -2px;
  right: auto;
  width: 2px;
  height: 36px;
}

.device-ipad-pro.device-landscape .device-btns::before {
  top: -2px;
  right: 60px;
  width: 32px;
  height: 2px;
  box-shadow: 40px 0 #6a6d70;
}

/* ==========================================================================
   MacBook Pro / Browser Window
   ========================================================================= */
.device-browser-window {
  width: 100%;
  background: #FFFFFF;
  border-radius: 10px;
  border: 1px solid #D3CEC4;
  box-shadow: 0 10px 36px rgba(0,0,0,0.08), 0 1px 3px rgba(0,0,0,0.04);
  overflow: hidden;
}

.device-browser-chrome {
  height: 34px;
  background: #F6F5F2;
  border-bottom: 1px solid #E8E6E1;
  display: flex;
  align-items: center;
  padding: 0 12px;
  gap: 8px;
}

.device-browser-traffic {
  display: flex;
  gap: 6px;
}

.device-traffic-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}
.device-traffic-dot.close { background: #FF5F56; border: 1px solid #E0443E; }
.device-traffic-dot.min { background: #FFBD2E; border: 1px solid #DEA123; }
.device-traffic-dot.max { background: #27C93F; border: 1px solid #1AAB29; }

.device-browser-url {
  flex: 1;
  max-width: 320px;
  height: 22px;
  margin: 0 auto;
  background: #FFFFFF;
  border: 1px solid #E0DDD5;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  font-size: 10.5px;
  color: #625D52;
  font-family: -apple-system, BlinkMacSystemFont, monospace;
}
