/* Keluvi auth — phone shell (same 430px frame as other H5 pages) */
:root{
  font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  color:#2c2622;
  background:#e8e4de;
  font-synthesis:none
}
*{box-sizing:border-box}
html,body{
  margin:0;
  min-height:100%;
  max-width:100%;
  overflow-x:hidden;
  background:#e8e4de
}
body{min-height:100vh}
button,input{font:inherit}
.auth-shell{
  position:relative;
  width:min(100%,430px);
  min-height:100vh;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  padding:calc(18px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 15% 5%,#fff 0,transparent 38%),
    linear-gradient(145deg,#f7eee3,#f6f8f0);
  box-shadow:0 0 24px rgba(54,44,28,.08);
  overflow-x:hidden
}
.auth-back{
  position:absolute;
  left:12px;
  top:calc(12px + env(safe-area-inset-top));
  z-index:2;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#3c332d;
  text-decoration:none;
  font-size:32px;
  box-shadow:0 8px 24px #7d675126
}
.auth-card{
  width:100%;
  max-width:100%;
  min-width:0;
  margin:auto 0;
  background:#ffffffed;
  border:1px solid #fff;
  border-radius:24px;
  padding:28px 18px 20px;
  box-shadow:0 18px 40px #7f69572b;
  backdrop-filter:blur(18px);
  overflow-x:clip
}
.auth-card header{text-align:center;margin-bottom:22px}
.auth-card header img{
  width:62px;height:62px;border-radius:18px;
  box-shadow:0 10px 30px #c16f3b30
}
.auth-card header p{
  margin:11px 0 14px;color:#b26842;font-weight:800;letter-spacing:.08em;font-size:13px
}
.auth-card h1{font-size:24px;line-height:1.25;margin:0 0 8px;overflow-wrap:anywhere}
.auth-card header span{font-size:13px;color:#776c65;line-height:1.55;overflow-wrap:anywhere}
.auth-card form{display:grid;gap:14px}
.auth-card form>label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#665b54}
.auth-card input[type=text],
.auth-card input[type=email],
.auth-card input[type=password]{
  width:100%;max-width:100%;height:48px;
  border:1px solid #dfd8d0;border-radius:14px;
  background:#fcfaf7;padding:0 14px;color:#2c2622;outline:none
}
.auth-card input:focus{border-color:#c77c50;box-shadow:0 0 0 4px #c77c5018}
.auth-options{
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  font-size:12px;color:#766b64
}
.auth-options label{display:flex;gap:7px;align-items:center}
.auth-options a,.auth-card footer a{color:#a95830;font-weight:700}
.auth-status{
  display:none;margin:0;padding:11px 13px;border-radius:12px;
  font-size:12px;line-height:1.45;background:#fff0eb;color:#a33e25;
  overflow-wrap:anywhere;word-break:break-word
}
.auth-status.show{display:block}
.auth-status.success{background:#edf8ef;color:#327247}
.auth-submit{
  width:100%;height:50px;border:0;border-radius:15px;
  background:linear-gradient(135deg,#cb7a4d,#a85331);color:#fff;
  font-weight:800;box-shadow:0 12px 26px #aa5b3435;cursor:pointer
}
.auth-submit:disabled{opacity:.65;cursor:wait}
.auth-card footer{text-align:center;margin-top:18px;color:#796f68;font-size:13px;overflow-wrap:anywhere}
@media(max-width:374px){
  .auth-shell{padding-left:12px;padding-right:12px}
  .auth-card{padding:24px 14px 18px;border-radius:20px}
  .auth-card h1{font-size:22px}
}
@media(min-width:700px){
  .auth-shell{
    min-height:calc(100vh - 40px);
    margin:20px auto;
    border-radius:8px;
    overflow:hidden
  }
}

/* v0.6.16 mobile-floor */
.auth-card input[type=text],
.auth-card input[type=email],
.auth-card input[type=password],
.auth-card input[type=search],
.auth-card textarea,
.auth-card select{font-size:16px}
@media(max-width:374px){
  .auth-shell{padding-left:max(16px,12px);padding-right:max(16px,12px)}
}
