/* ==========================================================
   Birchwood Archery — register.css
   Loads after base.css. Styles the registration form page.
   ========================================================== */

.reg-hero{
  background:var(--pine);color:var(--bark-white);padding:64px 28px 56px;text-align:center;
}
.reg-hero h1{font-size:clamp(30px,4vw,44px);}
.reg-hero p{margin-top:14px;color:rgba(251,248,241,0.75);font-size:15.5px;max-width:520px;margin-left:auto;margin-right:auto;}

.reg-wrap{max-width:760px;margin:0 auto;padding:56px 28px 90px;}

.reg-card{background:var(--bark-white);border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.reg-card-head{padding:22px 28px;border-bottom:1px solid var(--line);background:var(--bark);}
.reg-card-head h2{font-size:19px;}
.reg-card-body{padding:28px;}

.reg-field{margin-bottom:20px;}
.reg-field label{
  display:block;font-family:'IBM Plex Mono',monospace;font-size:11px;text-transform:uppercase;
  letter-spacing:0.06em;color:var(--pine-soft);margin-bottom:7px;
}
.reg-field .hint{font-size:12.5px;color:var(--pine-soft);opacity:0.75;margin-top:6px;line-height:1.5;}
.reg-input, .reg-select, .reg-textarea{
  width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:4px;
  background:var(--bark-white);font-family:'Inter',sans-serif;font-size:14.5px;color:var(--pine);
}
.reg-input:focus, .reg-select:focus, .reg-textarea:focus{outline:none;border-color:var(--olive-dark);}
.reg-textarea{resize:vertical;min-height:90px;}

.reg-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media (max-width:600px){.reg-row{grid-template-columns:1fr;}}

.reg-radio-group{display:flex;flex-direction:column;gap:10px;}
.reg-radio-option{
  display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);
  border-radius:5px;cursor:pointer;
}
.reg-radio-option:has(input:checked){border-color:var(--olive-dark);background:rgba(143,191,63,0.06);}
.reg-radio-option input{accent-color:var(--olive-dark);}

.reg-check{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px;}
.reg-check input{margin-top:3px;accent-color:var(--olive-dark);}
.reg-check label{font-size:13.5px;line-height:1.55;color:var(--pine-soft);}

.reg-block-status{
  display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;
  font-size:11px;padding:3px 9px;border-radius:999px;margin-left:8px;
}
.reg-block-status.open{background:rgba(143,191,63,0.14);color:var(--olive-dark);}
.reg-block-status.low{background:rgba(217,166,43,0.16);color:#a5791e;}
.reg-block-status.full{background:rgba(192,57,43,0.12);color:#a5301f;}

.reg-submit{
  width:100%;background:var(--amber);color:var(--bark-white);border:none;border-radius:4px;
  padding:15px;font-family:'Inter',sans-serif;font-size:15px;font-weight:700;cursor:pointer;margin-top:8px;
}
.reg-submit:hover{background:var(--amber-dark);}
.reg-submit:disabled{background:var(--pine-soft);opacity:0.5;cursor:not-allowed;}

.reg-error-box{
  background:rgba(192,57,43,0.08);border:1px solid rgba(192,57,43,0.3);color:#7a2b20;
  padding:14px 18px;border-radius:5px;margin-bottom:20px;font-size:13.5px;line-height:1.6;
}
.reg-error-box ul{margin:6px 0 0;padding-left:18px;}

.reg-success-box{
  background:var(--bark-white);border:1px solid var(--line);border-radius:6px;padding:44px 32px;
  text-align:center;max-width:560px;margin:56px auto;
}
.reg-success-box .icon{
  width:56px;height:56px;border-radius:50%;background:rgba(143,191,63,0.14);color:var(--olive-dark);
  display:flex;align-items:center;justify-content:center;margin:0 auto 18px;
}
.reg-success-box h2{font-size:22px;margin-bottom:10px;}
.reg-success-box p{color:var(--pine-soft);font-size:14.5px;line-height:1.6;}
