/* MASTER PICK MOBILE - CLEAN FINAL LAYOUT
   One file controls: header, panels, spacing, bottom nav and keyboard state. */

html,
body{
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
  min-height:100% !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  background:linear-gradient(180deg,#ffd900 0%,#fff08a 28%,#fffdf0 62%,#f5f5ee 100%) !important;
}

body{
  font-family:Arial,sans-serif !important;
  color:#111 !important;
  padding-bottom:0 !important;
}

#app{
  min-height:100vh !important;
  padding-bottom:104px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

.wrap{
  max-width:760px !important;
  margin:0 auto !important;
  padding:10px 12px 0 !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

/* keep old title compact */
.top{
  background:linear-gradient(180deg,#ffe96a 0%,#ffd900 100%) !important;
  padding:8px 10px 4px !important;
  border-bottom:0 !important;
  border-radius:0 0 28px 28px !important;
  box-shadow:0 8px 22px rgba(140,120,0,.12) !important;
}

.top .title1{
  font-size:clamp(30px,9vw,58px) !important;
  line-height:.95 !important;
}

/* PREMIUM HEADER - force override old black premium style */
.mp-native-header{
  position:relative !important;
  overflow:visible !important;
  margin:0 !important;
  padding:10px 14px 12px !important;
  border-radius:0 !important;
  background:linear-gradient(180deg,#ffd900 0%,#fff08a 100%) !important;
  box-shadow:none !important;
  color:#111 !important;
}

.mp-native-header::after{
  display:none !important;
  content:none !important;
}

.mp-native-top{
  position:relative !important;
  z-index:1 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  max-width:920px !important;
  min-height:96px !important;
  margin:0 auto !important;
  padding:14px 16px !important;
  border-radius:30px !important;
  background:linear-gradient(135deg,#fff 0%,#fffef8 60%,#ffe979 100%) !important;
  border:1px solid rgba(242,214,75,.50) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.16) !important;
  color:#111 !important;
  box-sizing:border-box !important;
}

.mp-native-top::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:radial-gradient(circle at 18% 25%,rgba(242,214,75,.11) 0 2px,transparent 3px) !important;
  background-size:22px 22px !important;
  opacity:.55 !important;
  pointer-events:none !important;
}

.mp-native-top::after{
  content:"" !important;
  position:absolute !important;
  left:-8% !important;
  right:-8% !important;
  bottom:-52px !important;
  height:80px !important;
  background:linear-gradient(90deg,#ffd000 0%,#fff176 50%,#ffd000 100%) !important;
  border-radius:55% 55% 0 0 !important;
  z-index:1 !important;
}

.mp-native-user{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-width:0 !important;
  width:100% !important;
  padding-right:58px !important;
  box-sizing:border-box !important;
}

.mp-native-avatar{
  position:relative !important;
  display:block !important;
  width:68px !important;
  height:68px !important;
  min-width:68px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:transparent !important;
  overflow:hidden !important;
  border:3px solid #efd33e !important;
  box-shadow:0 0 0 6px rgba(255,255,255,.86),0 8px 18px rgba(0,0,0,.12) !important;
  font-size:0 !important;
}

.mp-native-avatar::before{
  content:"" !important;
  position:absolute !important;
  inset:6px !important;
  border-radius:50% !important;
  background:url('/mobile_before_v6_restore_2026-04-28_19-46-35/mp-logo.png') center/contain no-repeat !important;
}

.mp-native-hello{
  margin:0 0 2px !important;
  font-size:12px !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  color:#777 !important;
  opacity:1 !important;
}

.mp-native-name{
  display:block !important;
  max-width:100% !important;
  font-size:16px !important;
  line-height:1.08 !important;
  font-weight:1000 !important;
  letter-spacing:-.2px !important;
  color:#000 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}

.mp-native-id{
  margin-top:3px !important;
  font-size:11px !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  color:#666 !important;
  opacity:1 !important;
}

.mp-native-bell{
  position:absolute !important;
  z-index:5 !important;
  right:14px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:44px !important;
  height:44px !important;
  border-radius:50% !important;
  background:#fffdf3 !important;
  border:1px solid rgba(242,214,75,.48) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.10) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#111 !important;
  font-size:20px !important;
}

.mp-notif-badge{
  z-index:6 !important;
}

/* PANELS */
.panel,
#stepLogin,
#stepForm,
#stepConfirm{
  position:relative !important;
  z-index:2 !important;
  width:auto !important;
  max-width:760px !important;
  margin:14px auto 18px !important;
  padding:18px !important;
  border-radius:32px !important;
  background:rgba(255,255,250,.97) !important;
  border:0 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}

#stepForm,
#stepConfirm{
  padding-bottom:24px !important;
}

#stepForm::before{
  content:"" !important;
  display:block !important;
  width:58px !important;
  height:7px !important;
  margin:0 auto 14px !important;
  border-radius:999px !important;
  background:#cfd3db !important;
}

#stepLogin h2,
#stepForm h2,
#stepConfirm h2{
  margin:8px 0 18px !important;
  font-size:26px !important;
  line-height:1.12 !important;
  font-weight:1000 !important;
  text-align:center !important;
}

#stepForm h2{
  font-size:32px !important;
}

label{
  margin:13px 0 6px !important;
  font-size:16px !important;
  font-weight:900 !important;
  color:#30384a !important;
}

input,
select,
textarea{
  width:100% !important;
  min-height:56px !important;
  border-radius:18px !important;
  border:2px solid rgba(205,190,90,.85) !important;
  background:#fff !important;
  box-sizing:border-box !important;
}

.actions{
  margin-top:16px !important;
}

/* remove accumulated fake spacing */
.container,
section{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}

  display:none !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media(max-width:700px){
  #app{
    padding-bottom:96px !important;
  }

  .mp-native-header{
    padding:8px 12px 10px !important;
  }

  .mp-native-top{
    min-height:92px !important;
    border-radius:28px !important;
    padding:12px 14px !important;
  }

  .mp-native-avatar{
    width:62px !important;
    height:62px !important;
    min-width:62px !important;
  }

  .mp-native-user{
    gap:12px !important;
    padding-right:52px !important;
  }

  .mp-native-name{
    font-size:14px !important;
  }

  .mp-native-bell{
    width:42px !important;
    height:42px !important;
    right:12px !important;
  }

  .wrap{
    padding:8px 12px 0 !important;
  }

  .panel,
  #stepLogin,
  #stepForm,
  #stepConfirm{
    margin:12px auto 16px !important;
    padding:16px !important;
    border-radius:30px !important;
  }

  #stepForm h2{
    font-size:30px !important;
  }
}

/* CUSTOM KEYPAD SCROLL - DO NOT TOUCH BOTTOM NAV SHEET */
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  max-height:calc(100vh - 20px) !important;
  padding-bottom:390px !important;
}