/* member.css — Sac De Secrète 會員登入／註冊
   Black × Blush Pink Design System */

:root{
  --sds-black:#1F1C19;
  --sds-ivory:#F7F3EE;
  --sds-white:#FFFFFF;
  --sds-blush:#D9B7C1;
  --sds-blush-hover:#C99BA9;
  --sds-mauve:#8E7A82;
  --sds-line:rgba(217,183,193,.38);
  --sds-text:#302A27;
  --sds-muted:#746A65;
}

body{
  background:
    radial-gradient(circle at 15% 15%, rgba(217,183,193,.13), transparent 32%),
    linear-gradient(180deg,#fff 0%,var(--sds-ivory) 100%);
  color:var(--sds-text);
}

.member-wrap{
  width:100%;
  min-height:calc(100vh - 170px);
  display:grid;
  place-items:center;
  padding:clamp(2rem,7vw,5rem) 1.25rem;
}

.auth-box{
  width:min(100%,560px);
  background:rgba(255,255,255,.94);
  border:1px solid var(--sds-line);
  border-radius:22px;
  padding:clamp(1.6rem,5vw,3rem);
  box-shadow:0 22px 70px rgba(31,28,25,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.auth-head{
  text-align:center;
  margin-bottom:2rem;
}

.auth-head .eyebrow{
  margin:0 0 .7rem;
  font-family:"Jost",sans-serif;
  font-size:.72rem;
  letter-spacing:.24em;
  color:var(--sds-mauve);
}

.auth-head h1{
  margin:0;
  font-family:"Cormorant Garamond","Noto Serif TC",serif;
  font-size:clamp(2.2rem,7vw,3.4rem);
  line-height:1.15;
  font-weight:600;
  color:var(--sds-black);
}

.auth-sub{
  margin:.85rem auto 0;
  color:var(--sds-muted);
  line-height:1.7;
  font-size:.9rem;
}

.auth-err{
  margin:0 0 1.25rem;
  padding:.85rem 1rem;
  background:#FFF1F3;
  border:1px solid rgba(190,91,111,.18);
  border-radius:10px;
  color:#A14F60;
  font-size:.86rem;
  line-height:1.5;
}

.auth-form{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.auth-form > label{
  display:block;
  color:var(--sds-muted);
  font-size:.82rem;
  line-height:1.5;
}

.auth-form input{
  display:block;
  width:100%;
  min-height:52px;
  margin-top:.42rem;
  padding:.8rem .95rem;
  border:1px solid var(--sds-line);
  border-radius:10px;
  background:#fff;
  color:var(--sds-black);
  font:inherit;
  outline:none;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}

.auth-form input::placeholder{
  color:#B4AAA5;
}

.auth-form input:focus{
  border-color:var(--sds-blush);
  box-shadow:0 0 0 4px rgba(217,183,193,.16);
  background:#FFFCFD;
}

.auth-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  margin:.15rem 0 .25rem;
  font-size:.82rem;
}

.auth-row a,
.auth-terms a{
  color:var(--sds-mauve);
  text-decoration:underline;
  text-underline-offset:3px;
}

.auth-row a:hover,
.auth-terms a:hover{
  color:var(--sds-blush-hover);
}

.chk{
  display:flex!important;
  align-items:center;
  gap:.5rem;
  cursor:pointer;
}

.chk input{
  width:18px!important;
  height:18px!important;
  min-height:0!important;
  margin:0!important;
  accent-color:var(--sds-blush-hover);
}

.auth-btn{
  width:100%;
  min-height:54px;
  margin-top:.25rem;
  border:0;
  border-radius:10px;
  background:var(--sds-blush);
  color:#fff;
  font-family:"Jost","Noto Serif TC",sans-serif;
  font-size:.92rem;
  letter-spacing:.08em;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(201,155,169,.2);
  transition:background .22s ease,transform .22s ease,box-shadow .22s ease;
}

.auth-btn:hover{
  background:var(--sds-blush-hover);
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(201,155,169,.26);
}

.auth-btn:active{
  transform:scale(.985);
}

.auth-divider{
  display:flex;
  align-items:center;
  gap:1rem;
  margin:1.6rem 0 1rem;
  color:#A09590;
  font-size:.8rem;
}

.auth-divider::before,
.auth-divider::after{
  content:"";
  flex:1;
  height:1px;
  background:var(--sds-line);
}

.auth-alt{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:52px;
  border:1px solid var(--sds-blush);
  border-radius:10px;
  color:var(--sds-mauve);
  background:#fff;
  font-size:.9rem;
  transition:background .22s ease,color .22s ease,transform .22s ease;
}

.auth-alt:hover{
  background:var(--sds-blush);
  color:#fff;
  transform:translateY(-2px);
}

.auth-terms{
  margin:1.1rem 0 0;
  color:var(--sds-muted);
  font-size:.74rem;
  line-height:1.7;
  text-align:center;
}

/* Header 小標題不再使用金色 */
.site-header .brand-sub,
.announce-item{
  color:var(--sds-mauve)!important;
}

@media(max-width:600px){
  .member-wrap{
    display:block;
    min-height:auto;
    padding:1.5rem .9rem 2.5rem;
  }
  .auth-box{
    border-radius:16px;
    padding:1.5rem 1.15rem 1.7rem;
  }
  .auth-row{
    align-items:flex-start;
    flex-wrap:wrap;
  }
}

@media(prefers-reduced-motion:reduce){
  .auth-btn,.auth-alt,.auth-form input{transition:none}
}
