/* ===================== PASS 7: forms ===================== */
/* inputs: carved, inset field */
input[type=text],input[type=password],input[type=email],input[type=number],input[type=search],textarea,select,.inputbox{
  background:linear-gradient(#ecdfbd,#f8f0da);color:#2a1a0e;border:1px solid #5a3b24;border-radius:0;
  box-shadow:inset 0 2px 4px rgba(60,35,10,.35),0 1px 0 rgba(255,255,255,.55);padding:10px 12px;min-height:40px;font:14px Verdana,Geneva,sans-serif;
  transition:border-color .15s,box-shadow .15s,background .15s}
input[type=text]:hover,input[type=password]:hover,input[type=email]:hover,textarea:hover,select:hover{border-color:#8a5a28}
input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=number]:focus,textarea:focus,select:focus,.inputbox:focus{
  outline:0;background:#fffaea;border-color:#c79a3a;box-shadow:inset 0 2px 4px rgba(60,35,10,.25),0 0 0 3px rgba(224,180,76,.4)}
.inputbox.ok,input.ok{border-color:#2f7d32!important;box-shadow:inset 0 2px 4px rgba(60,35,10,.3),0 0 0 2px rgba(47,125,50,.25)!important}
.inputbox.bad,input.bad{border-color:#a1281f!important;box-shadow:inset 0 2px 4px rgba(60,35,10,.3),0 0 0 2px rgba(161,40,31,.25)!important}
input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}

/* form tables become clean label / field rows */
#content fieldset{margin:16px 0;padding:14px 18px 8px;border:1px solid rgba(110,75,45,.75);background:linear-gradient(rgba(255,250,232,.38),rgba(235,215,170,.2));box-shadow:inset 0 0 0 2px rgba(224,180,76,.18),0 2px 8px rgba(60,35,10,.18)}
#content fieldset legend{margin-left:6px;padding:4px 18px;font:bold 12px Georgia,serif!important;letter-spacing:2px;text-transform:uppercase;background:linear-gradient(#a6271f,#6a120d);border:1px solid #000;box-shadow:inset 0 1px 0 rgba(255,190,140,.4),0 2px 4px rgba(0,0,0,.35)}
#content fieldset table[border],#content fieldset table{width:100%!important;border:0!important;border-collapse:separate;border-spacing:0 12px;background:none!important;margin:0}
#content fieldset table[border] td,#content fieldset table td{border:0!important;background:none!important;padding:0 6px!important;vertical-align:middle;line-height:1.4}
#content fieldset table[border] tr:hover td{background:none!important}
#content fieldset table[border] td:first-child{width:36%;text-align:left;font:bold 11px Georgia,serif;letter-spacing:1.5px;text-transform:uppercase;color:#6a1c10}
#content fieldset table td .inputbox,#content fieldset table td input[type=text],#content fieldset table td select,#content fieldset table td textarea{width:100%}
#content fieldset table td:nth-child(2){position:relative}
#content fieldset center{text-align:left}
#content fieldset table td img{border:1px solid #5a3b24;box-shadow:0 2px 4px rgba(0,0,0,.3)}

/* helper text + password tools */
.hint{display:block;margin:5px 2px 0;font:11px/1.4 Verdana,sans-serif;color:#7a5a38}
.hint.bad{color:#a1281f}.hint.ok{color:#1f6a2a}
.pwwrap{position:relative;display:block}
.pwwrap input{padding-right:64px!important}
.pwtoggle,button.pwtoggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:28px!important;min-height:0!important;padding:0 10px!important;background:rgba(90,59,36,.12)!important;border:1px solid rgba(90,59,36,.45)!important;border-radius:0;box-shadow:none!important;color:#6a1c10!important;font:bold 10px Georgia,serif!important;letter-spacing:1px;text-transform:uppercase;text-shadow:none!important;cursor:pointer}
.pwtoggle:hover{background:rgba(224,180,76,.35)!important}
.pwmeter{display:flex;align-items:center;gap:4px;margin-top:7px}
.pwmeter i{flex:1;height:5px;background:rgba(90,59,36,.25);transition:background .2s}
.pwmeter.s1 i:nth-child(-n+1){background:#c0392b}
.pwmeter.s2 i:nth-child(-n+2){background:#d9822b}
.pwmeter.s3 i:nth-child(-n+3){background:#c9a227}
.pwmeter.s4 i:nth-child(-n+4){background:#2f7d32}
.pwmeter span{min-width:52px;text-align:right;font:bold 10px Georgia,serif;letter-spacing:1px;text-transform:uppercase;color:#6a1c10}

/* radios as pills */
#content fieldset td label.pill,#content label.pill{display:inline-flex;align-items:center;gap:6px;margin:0 8px 4px 0;padding:7px 14px;border:1px solid #5a3b24;background:linear-gradient(#ecdfbd,#f8f0da);cursor:pointer;font:bold 12px Georgia,serif;color:#4a2a12;transition:all .15s}
label.pill:hover{border-color:#c79a3a}
label.pill:has(input:checked){background:linear-gradient(#a6271f,#6a120d);color:#ffe29a;border-color:#000}
label.pill input{position:absolute;opacity:0;pointer-events:none}

/* forum / long forms */
#content form textarea{min-height:160px;line-height:1.6}
#content form .mybutton{margin-top:6px}
.termsfield{padding:12px 16px!important}
@media(max-width:560px){#content fieldset table[border] td:first-child{display:block;width:100%;padding-bottom:4px!important}#content fieldset table td{display:block;width:100%}}

/* registration form (clean rows) */
#content .regform{max-width:640px;margin:0 auto}
#content .regform fieldset{margin:0 0 18px;padding:18px 22px 6px}
#content .formrow{display:grid;grid-template-columns:190px minmax(0,1fr);gap:4px 18px;align-items:start;margin:0 0 16px}
#content .formrow>label{float:none;width:auto;padding-top:11px;font:bold 11px Georgia,serif;letter-spacing:1.5px;text-transform:uppercase;color:#6a1c10}
#content .formfield .inputbox,#content .formfield select{width:100%}
#content .formfield .hint{margin-top:6px}
#content .pills{display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}
#content .pills label.pill{margin:0}
#content .chip{display:inline-block;padding:8px 14px;background:rgba(90,59,36,.1);border:1px dashed rgba(90,59,36,.55);font:bold 13px Georgia,serif;color:#4a2a12}
#content .captchaRow{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
#content .captchaRow .inputbox{flex:1;min-width:150px;width:auto}
#content .captchaRow img{border:1px solid #5a3b24;box-shadow:0 2px 4px rgba(0,0,0,.3)}
#content .formactions{display:flex;justify-content:center;align-items:center;gap:12px;margin:6px 0 4px}
#content .formactions .mybutton{min-width:200px;width:auto;margin:0}
#content .regform .bar{margin:14px 0 4px;padding-top:10px;border-top:1px dotted var(--edge);text-align:center;font-size:12px;font-weight:normal}
#content .regform .termsfield{padding:14px 18px 12px!important}
@media(max-width:560px){#content .formrow{grid-template-columns:1fr}#content .formrow>label{padding-top:0}}

/* select arrow + checked pills (override shorthand backgrounds) */
select,.card select,#content select{padding-right:36px!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath fill='%238c1d18' d='M0 0h10L5 6z'/%3E%3C/svg%3E") right 13px center/11px no-repeat,linear-gradient(#ecdfbd,#f8f0da)!important;appearance:none;-webkit-appearance:none;cursor:pointer}
#content label.pill:has(input:checked){background:linear-gradient(#a6271f,#6a120d)!important;color:#ffe29a!important;border-color:#000!important;box-shadow:inset 0 0 0 1px rgba(224,180,76,.45)}

#content .regform.narrow{max-width:520px}
#content .formrow.wide{grid-template-columns:1fr}
#content .formrow.wide>label{padding-top:0}
#content .formfield textarea{width:100%;min-height:170px}
#content .message .inputbox{margin-bottom:0}
#content .message:has(form[action*="login"]) .mybutton{margin-top:10px}

/* small screens: compact rankings */
@media(max-width:560px){
  #content .ranktable th.pv,#content .ranktable td.pv{display:none}
  #content .ranktable td,#content .ranktable th{padding:8px 6px}
  #content .ranktable td.rk{width:46px}
  #content .ranktable td.pl{width:auto}
  #content .filterbar{flex-direction:column;align-items:stretch}
  #content .filterbar select,#content .filterbar .mybutton{width:100%}
  #content .searchrow{flex-direction:column;align-items:stretch}
  #content .searchrow .mybutton{width:100%}
}

/* donate slideshow (right column) */
.card.donate{padding-bottom:6px}
.slideshow{position:relative;display:block;aspect-ratio:1/1;margin:0 2px 6px;overflow:hidden;border:1px solid #000;box-shadow:inset 0 0 0 1px var(--edge),0 4px 10px rgba(0,0,0,.5);background:#120b07;text-decoration:none!important}
.slideshow img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .9s ease,transform 5s ease}
.slideshow img.on{opacity:1;transform:scale(1.12)}
.slideshow::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(10,5,3,.88));pointer-events:none}
.slideshow .cap{position:absolute;left:0;right:0;bottom:12px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}
.slideshow .cap b{font:bold 20px Georgia,serif;letter-spacing:3px;text-transform:uppercase;color:var(--gold2);text-shadow:2px 2px 0 #000,0 0 14px rgba(255,150,40,.7)}
.slideshow .cap small{font:11px Georgia,serif;letter-spacing:1px;color:#e8d4a6;text-shadow:1px 1px 0 #000}
.slideshow .dots{position:absolute;top:8px;left:0;right:0;z-index:2;display:flex;justify-content:center;gap:5px}
.slideshow .dots i{width:7px;height:7px;background:rgba(255,226,154,.35);transform:rotate(45deg);transition:background .3s}
.slideshow .dots i.on{background:var(--gold2);box-shadow:0 0 6px rgba(255,200,80,.9)}
.slideshow:hover img.on{transform:scale(1.2)}
.slideshow:hover .cap b{color:#fff}
.slideshow:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.slideshow img,.slideshow img.on,.slideshow:hover img.on{transition:none;transform:none}}
