html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
.inline-form{
  margin:18px 0 4px;
  background:#fff;
  border:1.5px solid var(--line,#e4d9c4);
  border-radius:16px;
  padding:14px 14px 6px;
  box-shadow:0 3px 8px rgba(43,38,32,.12);
  scroll-margin-top:calc(12px + env(safe-area-inset-top));
}
.inline-form[hidden]{display:none}
.inline-form h2{
  font-size:1.05rem;margin-bottom:12px;
  display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;
}
.form-flag{
  font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--secondary,#e07a5f);
}

.field{margin-bottom:14px}
.field label{
  display:block;font-size:.8rem;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;
  color:#5c554b;margin-bottom:6px;
}
.field .req{
  font-weight:600;text-transform:none;letter-spacing:0;
  color:var(--secondary,#e07a5f);font-size:.72rem;margin-left:4px;
}
.field input,
.field select{
  width:100%;min-height:50px;
  border:1.5px solid var(--line,#e4d9c4);
  border-radius:12px;background:#fff;
  padding:12px 14px;font-size:max(16px,1rem);color:var(--ink,#2b2620);
  font-family:inherit;
  caret-color:var(--primary,#2d6a6a);
  appearance:none;-webkit-appearance:none;
}
.field select{
  background-image:
    linear-gradient(45deg,transparent 49%,#5c554b 50%),
    linear-gradient(-45deg,transparent 49%,#5c554b 50%);
  background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;
  background-size:6px 6px;background-repeat:no-repeat;
  padding-right:40px;
}
.field select option{
  font-size:1rem;color:var(--ink,#2b2620);
}
.field input::placeholder{
  color:#b0a795;opacity:1;
}
.field input:focus,
.field select:focus{
  outline:none;border-color:var(--primary,#2d6a6a);
  box-shadow:0 0 0 3px rgba(45,106,106,.18);
}
.field input.invalid,
.field select.invalid{
  border-color:#c0392b;
  box-shadow:0 0 0 3px rgba(192,57,43,.14);
}
.field-error{
  color:#c0392b;font-size:.8rem;font-weight:600;margin-top:5px;line-height:1.3;
}

.form-actions{
  display:flex;gap:10px;margin:16px 0 12px;flex-wrap:wrap;
}
.btn{
  flex:1;min-width:0;min-height:50px;border-radius:12px;
  font-weight:700;font-size:.95rem;
  display:flex;align-items:center;justify-content:center;
  transition:transform .1s ease;
}
.btn:active{transform:scale(.97)}
.btn.solid{
  background:var(--primary,#2d6a6a);color:#fff;
  box-shadow:0 3px 0 #1f4e4e;
}
.btn.ghost{
  background:transparent;border:1.5px solid var(--line,#e4d9c4);color:#5c554b;
}
.btn.danger{
  background:#fff;border:1.5px solid #c0392b;color:#c0392b;
}
.danger-btn{
  width:100%;min-height:50px;margin-top:6px;
  border:1.5px solid #c0392b;color:#c0392b;
  border-radius:12px;font-weight:700;font-size:.95rem;
  background:#fff;
  transition:transform .1s ease;
}
.danger-btn:active{transform:scale(.98)}

.verify-box{
  margin-top:10px;
  scroll-margin-top:calc(12px + env(safe-area-inset-top));
  border:1.5px solid #c0392b;
  border-radius:12px;
  background:#fdf1ef;
  padding:12px 12px 6px;
}
.verify-box[hidden]{display:none}
.verify-box p{
  font-size:.9rem;color:#7c2a20;font-weight:600;margin-bottom:4px;
}

:focus-visible{
  outline:2px solid var(--primary,#2d6a6a);
  outline-offset:2px;
}

@media (prefers-reduced-motion: reduce){
  .tab-panel{animation:none}
  .clip{transition:none}
  .btn{transition:none}
}
