/* App-only styles; the header, footer, colours and font come from style.css. */
.brand-sub{font-weight:500;color:var(--muted);font-size:13px;letter-spacing:0;padding-left:10px;margin-left:2px;border-left:1px solid var(--line)}
.header-inner nav{gap:18px}.user-name{font-size:13px;color:var(--ink);font-weight:650;overflow-wrap:anywhere}.signout-form{margin:0}.signout-button{min-height:44px;padding:0 4px;border:0;background:none;font-size:13px;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.signout-button:hover{color:#5e2840}
main.container{padding-block:36px 45px}main.container h1{margin-bottom:12px}.app-message p{line-height:1.9;color:var(--muted);font-size:14px}.app-message .support-link{margin-top:16px}
.field{margin-top:22px}.field label,.field legend{display:block;font-size:14px;font-weight:650;color:var(--ink);margin-bottom:6px;padding:0}fieldset.field{border:0;margin-inline:0;padding:0;min-width:0}
input[type=text],input[type=url],input[type=number],input[type=email],input[type=date],textarea,select{display:block;width:100%;max-width:640px;font:inherit;font-size:15px;color:var(--ink);background:#fffdfa;border:1px solid #cfc8cc;border-radius:5px;padding:11px 12px;min-height:44px}
textarea{min-height:8em;line-height:1.7;resize:vertical}select{appearance:auto}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.field-help{font-size:12px;line-height:1.7;color:var(--muted);margin-top:6px}.field-error{font-size:13px;line-height:1.7;color:var(--accent);font-weight:650;margin-top:6px}
[aria-invalid=true]{border-color:var(--accent);border-width:2px}
.error-summary{margin-top:18px;padding:12px 14px;border-left:3px solid var(--accent);background:#fbf6f8;border-radius:0 5px 5px 0;color:var(--accent);font-weight:650;font-size:14px}
button.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:22px;min-height:44px;padding:0 16px;border:1px solid #ddd2d8;background:#f7eef2;border-radius:5px;font-size:13px;font-weight:700;color:var(--accent);text-decoration:none}
button.primary-button:hover{background:#efe0e7;color:#5e2840}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.6;background:#ece9e6;color:var(--muted)}
.badge-pending{background:#ece9e6;color:var(--muted)}.badge-accepted{background:#e6ede1;color:#4d6440}.badge-rejected{background:#f3e4ea;color:var(--accent)}
.answer{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:14px;color:var(--ink)}
.review-table{width:100%;border-collapse:collapse;margin-top:18px;font-size:14px}.review-table th,.review-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}.review-table th{font-size:12px;color:var(--muted);font-weight:700}
@media(max-width:640px){
  .review-table,.review-table tbody,.review-table tr,.review-table td{display:block;width:100%}
  .review-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .review-table tr{margin-bottom:14px;padding:12px 14px;background:#fffdfa;border:1px solid var(--line);border-radius:8px}
  .review-table td{border:0;padding:4px 0}
  .review-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;color:var(--muted)}
  .header-inner nav{flex-wrap:wrap;justify-content:flex-start;gap:12px}
  input[type=text],input[type=url],input[type=number],input[type=email],input[type=date],textarea,select{max-width:none}
}
.choice{display:flex;align-items:center;gap:10px;min-height:44px}.choice input{flex:none;width:20px;height:20px;margin:0}.choice label{margin:0;font-weight:500;flex:1;display:flex;align-items:center;min-height:44px}
.answer-list{list-style:none;padding:0;margin:0}
.answer-long{white-space:pre-wrap}
.review-filters{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:18px}.review-filters a{display:inline-block;padding:6px 0;border-bottom:2px solid transparent}
.review-filters a[aria-current=page]{color:var(--ink);font-weight:700;text-decoration:none;border-bottom-color:var(--accent)}
main.container h2{margin-top:32px;margin-bottom:8px}
