/* ---------- The support desk ---------------------------------------------
   One copy, both shells. The member support pages and the admin support
   pages share the same ticket list, the same thread and the same reply
   form; they used to be styled by the member stylesheet, which the admin
   shell had to load in full because of them.

   The tokens used here exist in BOTH palettes: --bubble-bg, --bubble-text
   and --bubble-border are in the member palette (the dark skin) and in the
   admin palette (the light skin), so each scope gets its own values
   without a remap. */
.support-new{display:block;width:100%;max-width:none;box-sizing:border-box;padding:var(--spacing-lg);margin:0 auto;background:var(--bubble-bg,#fdf2f8);border:2px solid var(--bubble-border,#f9a8d4)}.support-new h2{margin:0;text-align:left;color:var(--bubble-text,#4a044e)}.support-new>p{margin-top:.35rem}.support-new .support-form{display:block;width:100%;max-width:none;margin:0}.support-new .support-form p{display:block;width:100%;margin:0 0 var(--spacing-md)}.support-new .support-form input[type="text"],.support-new .support-form textarea{display:block;width:100%;max-width:none;box-sizing:border-box}
 .support-form{display:grid;gap:var(--spacing-sm);max-width:none}.support-form p{width:100%;margin:0}.support-form label{display:block;margin-bottom:.35rem;font-weight:700;color:var(--bubble-text,#4a044e)}.support-form input,.support-form textarea{display:block;width:100%;box-sizing:border-box}.support-form textarea{resize:vertical}.support-form-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin:0}
.support-thread{max-width:900px}.support-thread-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--spacing-md);align-items:start;margin-bottom:var(--spacing-lg)}.support-thread-header h1{margin:.45rem 0 0;text-align:left;overflow-wrap:anywhere}.support-back{font-size:var(--font-size-sm);text-decoration:none}.support-back:hover{text-decoration:underline}.support-thread-status{padding-top:.25rem}
.support-status-banner{display:flex;align-items:center;gap:.65rem;padding:.75rem 1rem;margin-bottom:var(--spacing-md);border:1px solid var(--bubble-border,#f9a8d4);border-left:4px solid var(--purple-500);border-radius:var(--border-radius);background:var(--bubble-bg,#fdf2f8);color:var(--bubble-text,#4a044e)}
.support-status-banner.closed{border-left-color:var(--btn-danger-border);background:var(--pink-200)}
.support-conversation{display:grid;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-conversation h2{margin:0;text-align:left;color:var(--heading-color,#581c87)}
.support-message{margin:0;padding:var(--spacing-md);border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--shadow)}.support-message.original{border-top:4px solid var(--purple-500)}.support-message.admin{border-left:4px solid var(--purple-600)}.support-message.user-reply{border-left:4px solid var(--pink-500)}
.support-message-meta{display:flex;justify-content:space-between;gap:var(--spacing-sm);align-items:baseline;margin-bottom:.65rem;color:var(--card-text-color);font-size:var(--font-size-sm)}.support-message-meta strong{color:var(--card-title-color);font-size:var(--font-size-base)}.support-message-body{color:var(--card-text-color);line-height:1.65;overflow-wrap:anywhere}.support-message-body p{margin:0}
.support-composer{padding:var(--spacing-lg);margin:0;border:2px solid var(--purple-400);background:var(--bubble-bg,#fdf2f8)}.support-composer h2{margin:0;text-align:left;color:var(--bubble-text,#4a044e)}.support-composer .support-form{margin-top:var(--spacing-sm)}.support-closed{margin:0;padding:var(--spacing-md);border-left:4px solid var(--btn-danger-border);background:var(--bubble-bg,#fdf2f8);color:var(--bubble-text,#4a044e)}
.admin-support-page,.admin-support-thread{width:100%;max-width:none;margin:0 0 var(--spacing-lg)}.admin-support-header{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.admin-support-header h1{margin:0 0 .35rem;text-align:left}.admin-support-header p{margin:0}.admin-support-summary{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.admin-support-count{padding:.45rem .7rem;border:1px solid var(--bubble-border,#f9a8d4);border-radius:var(--chip-radius);background:var(--bubble-bg,#fdf2f8);color:var(--bubble-text,#4a044e);font-size:var(--font-size-sm)}.admin-support-count strong{font-size:1.1rem;margin-right:.2rem}
.admin-ticket-list{display:grid;gap:var(--spacing-sm)}.admin-ticket{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--spacing-md);align-items:center;padding:var(--card-padding);border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--shadow);text-decoration:none;color:inherit}.admin-ticket:hover{border-color:var(--purple-400);box-shadow:0 8px 20px rgba(40,10,50,.14)}.admin-ticket h2{margin:0 0 .4rem;text-align:left;font-size:var(--font-size-lg);color:var(--card-title-color);overflow-wrap:anywhere}.admin-ticket-details{display:flex;gap:.75rem;flex-wrap:wrap;color:var(--card-text-color);font-size:var(--font-size-sm)}.admin-ticket-side{text-align:right}.admin-ticket-side .status-badge{display:inline-block;margin-bottom:.45rem}.admin-ticket-side small{display:block;color:var(--card-text-color)}.admin-ticket-open{margin-top:.5rem}.admin-empty{text-align:center;padding:var(--spacing-lg)}
.admin-thread-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--pink-300);margin-bottom:var(--spacing-md)}.admin-thread-header h1{margin:0 0 .5rem;text-align:left;overflow-wrap:anywhere}.admin-ticket-meta{display:flex;gap:.75rem;flex-wrap:wrap;margin:0;color:var(--card-text-color);font-size:var(--font-size-sm)}.admin-thread-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;padding:var(--spacing-md);margin-top:var(--spacing-lg);background:var(--pink-100);border:1px solid var(--pink-300);border-radius:var(--card-radius)}.admin-thread-actions strong{margin-right:.25rem;color:var(--purple-800)}
@media(max-width:640px){.support-hero,.admin-support-header,.support-thread-header,.admin-thread-header{display:block}.support-hero .btn{display:block;margin-top:var(--spacing-md);text-align:center}.support-ticket,.admin-ticket{grid-template-columns:1fr}.support-ticket-side,.admin-ticket-side{justify-content:flex-start;text-align:left}.support-ticket-side small{width:100%}.support-message-meta{display:block}.support-message-meta small{display:block;margin-top:.2rem}.admin-thread-actions form{flex:1 1 8rem}.admin-thread-actions .btn{width:100%}}
