.support-form fieldset { border:0; padding:0; margin:24px 0 0; min-width:0; }
.support-form legend { margin-bottom:22px; }
.support-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.support-field { display:grid; gap:8px; min-width:0; align-content:start; }
.support-field.wide { grid-column:1 / -1; }
.support-field label { font-size:13px; font-weight:600; color:var(--paper); }
.support-field input, .support-field select, .support-field textarea, .inbox-tools input, .inbox-tools select, .message-status {
  width:100%; padding:13px 14px; border:1px solid #d5b48255; border-radius:6px; background:#101714; color:var(--paper); font:inherit; min-height:48px;
}
.support-field textarea { min-height:190px; resize:vertical; line-height:1.75; }
.support-field small, .form-note { color:#b9c3b5; font-size:12px; line-height:1.7; }
.message-helper { display:flex; justify-content:space-between; gap:16px; }
#message-count { white-space:nowrap; }
.support-consent { display:flex; gap:12px; align-items:start; margin:24px 0; color:#c5c9bc; font-size:13px; line-height:1.7; }
.support-consent input { width:20px; height:20px; flex:0 0 20px; margin:3px 0; accent-color:var(--gold); }
.support-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:24px; }
.support-form button, .admin-page button { font:inherit; font-weight:600; cursor:pointer; }
[aria-invalid="true"] { border-color:#ffafa5!important; }
button:disabled, fieldset:disabled { cursor:wait; opacity:.7; }
.form-status { overflow-wrap:anywhere; padding:12px 0; }
.form-status:empty { display:none; }
.form-status[data-kind="error"] { color:#ffb7a8; }
.form-status[data-kind="success"] { color:#abd9b4; }
#support-reference { display:block; color:var(--gold); overflow-wrap:anywhere; }
.support-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
[hidden] { display:none!important; }
.admin-page { width:min(1440px,calc(100% - 48px)); margin:auto; padding:40px 0; }
.admin-heading { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:24px; padding:24px 0; border-bottom:1px solid #d5b48233; }
.admin-heading h1 { font:normal clamp(28px,4vw,46px) Georgia,serif; margin:8px 0; }
.admin-layout { display:grid; grid-template-columns:200px minmax(0,1fr); gap:24px; margin-top:24px; }
.admin-nav { display:flex; flex-direction:column; gap:10px; align-items:stretch; }
.admin-nav button { text-align:left; border:1px solid #d5b48233; padding:16px; border-radius:6px; background:#18231c; color:var(--paper); }
.admin-nav button[aria-pressed="true"] { color:#101714; background:var(--gold); }
.admin-layout .section { margin-top:0; }
.admin-auth { max-width:540px; }
.admin-session { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.admin-session span { overflow-wrap:anywhere; }
.inbox-tools { display:grid; grid-template-columns:minmax(0,1fr) 160px; gap:12px; margin:20px 0; }
.inbox-summary { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.inbox-table { width:100%; border-collapse:collapse; font-size:13px; table-layout:fixed; }
.inbox-table th { text-align:left; color:#b9c3b5; font-size:10px; text-transform:uppercase; letter-spacing:.06em; padding:12px 8px; border-bottom:1px solid #d5b48233; }
.inbox-table td { vertical-align:top; padding:20px 8px; border-bottom:1px solid #d5b48233; overflow-wrap:anywhere; }
.inbox-table th:nth-child(1) { width:24%; }
.inbox-table th:nth-child(2) { width:17%; }
.inbox-table th:nth-child(3) { width:40%; }
.inbox-table th:nth-child(4) { width:19%; }
.inbox-table strong, .inbox-table time, .inbox-table small, .inbox-table td > a { display:block; margin-bottom:8px; }
.inbox-table time, .inbox-table small { color:#b9c3b5; }
.message-body { white-space:pre-wrap; line-height:1.7; margin:0 0 12px; color:var(--paper); max-height:220px; overflow:auto; }
.message-status { padding:8px; font-size:12px; }
.message-new { background:#d5b4820b; }
.admin-frame { width:100%; height:80vh; min-height:550px; border:1px solid #d5b48233; border-radius:8px; margin-top:16px; background:white; }
@media(max-width:950px) { .admin-layout { grid-template-columns:1fr; } .admin-nav { flex-direction:row; flex-wrap:wrap; } }
@media(max-width:720px) {
  .support-fields, .inbox-tools { grid-template-columns:1fr; }
  .inbox-table, .inbox-table tbody, .inbox-table tr, .inbox-table td { display:block; width:100%; }
  .inbox-table thead { display:none; }
  .inbox-table tr { border:1px solid #d5b48233; border-radius:8px; padding:14px; margin:16px 0; }
  .inbox-table td { border:0; padding:6px 0; }
  .inbox-table td::before { content:attr(data-label); display:block; font-size:10px; font-weight:700; color:#b9c3b5; margin-bottom:6px; }
}
