.zsa-wrap{ font-family:var(--z-font, 'Urbanist', -apple-system, sans-serif); max-width:1300px; }
.zsa-header{ margin:20px 0; }
.zsa-header h1{ font-size:24px; font-weight:800; margin:0 0 4px; }
.zsa-header p{ color:#666; margin:0; }
.zsa-section-label{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#999; margin:24px 0 10px; }
.zsa-subhead{ font-size:16px; font-weight:700; margin:28px 0 12px; }
.zsa-stat-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin-bottom:16px; }
.zsa-stat-link{ text-decoration:none !important; color:inherit !important; display:block; }
.zsa-stat{ background:#fff; border:1px solid #e2e4e2; border-radius:10px; padding:16px; display:flex; flex-direction:column; gap:4px; }
.zsa-stat__val{ font-size:24px; font-weight:800; color:#16281F; }
.zsa-stat__label{ font-size:12px; color:#777; }
.zsa-tone-orange .zsa-stat__val{ color:#9a6700; }
.zsa-tone-red .zsa-stat__val{ color:#c0392b; }
.zsa-table{ width:100%; border-collapse:collapse; background:#fff; border:1px solid #e2e4e2; border-radius:10px; overflow:hidden; margin-bottom:16px; }
.zsa-table th{ text-align:left; padding:10px 14px; font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:#888; background:#F5F6F4; border-bottom:1px solid #e2e4e2; }
.zsa-table td{ padding:12px 14px; border-bottom:1px solid #eee; font-size:13px; vertical-align:top; }
.zsa-table tr:last-child td{ border-bottom:none; }
.zsa-badge{ display:inline-block; font-size:11px; font-weight:700; padding:3px 9px; border-radius:6px; text-transform:capitalize; }
.zsa-badge--green{ background:#E7F1EA; color:#207943; }
.zsa-badge--orange{ background:#FDEFDB; color:#9a6700; }
.zsa-badge--red{ background:#FBE7E7; color:#c0392b; }
.zsa-badge--blue{ background:#E8EFFB; color:#3B6FD1; }
.zsa-badge--gray{ background:#f0f0f0; color:#666; }
.zsa-muted{ color:#888; font-size:11px; text-transform:uppercase; letter-spacing:.03em; }
.zsa-empty{ text-align:center; color:#999; padding:24px !important; }
.zsa-filter-row{ display:flex; gap:8px; margin-bottom:16px; }
.zsa-search{ margin-bottom:16px; display:flex; gap:8px; }
.zsa-search input{ min-width:260px; }
.zsa-back{ display:inline-block; margin-bottom:10px; text-decoration:none; font-size:13px; color:#207943; font-weight:700; }
.zsa-detail-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; background:#fff; border:1px solid #e2e4e2; border-radius:10px; padding:18px; margin-bottom:16px; }
.zsa-actions-row{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px; }
.zsa-thread{ display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.zsa-thread-msg{ background:#fff; border:1px solid #e2e4e2; border-left:3px solid #ccc; border-radius:8px; padding:12px 16px; }
.zsa-thread-msg--agent{ border-left-color:#207943; background:#F5FAF7; }
.zsa-thread-msg p{ margin:6px 0 0; font-size:13px; }
.zsa-thread-attachments{ display:flex; gap:8px; margin-top:8px; flex-wrap:wrap; }
.zsa-thread-attachments img{ width:60px; height:60px; object-fit:cover; border-radius:6px; }
.zsa-reply-form{ background:#fff; border:1px solid #e2e4e2; border-radius:10px; padding:16px; margin-bottom:20px; }
.zsa-reply-form textarea{ width:100%; margin-bottom:10px; }
.zsa-notice{ background:#E8EFFB; border:1px solid #b3d4f0; border-radius:8px; padding:14px 16px; font-size:13px; margin-bottom:16px; }
.zsa-footnote{ font-size:12px; color:#888; }
/* WP-admin core classes reused inside zsa-wrap, restyled for the
   front-end Super Admin page (wp-admin's own admin CSS isn't loaded here) */
.zsa-wrap .button, .zsa-modal-frontend .button{ display:inline-block; padding:8px 16px; border-radius:6px; border:1px solid #ccd0d4; background:#f6f7f7; color:#2c3338; font-size:13px; font-weight:600; text-decoration:none; cursor:pointer; line-height:1.4; }
.zsa-wrap .button:hover{ background:#f0f0f1; }
.zsa-wrap .button-primary{ background:#207943; border-color:#207943; color:#fff; }
.zsa-wrap .button-primary:hover{ background:#1a6537; }
.zsa-wrap .button-secondary{ background:#fff; border-color:#207943; color:#207943; }
.zsa-wrap .notice{ border-left:4px solid #ccc; background:#fff; padding:10px 14px; margin:14px 0; border-radius:4px; }
.zsa-wrap .notice-success{ border-left-color:#207943; background:#E7F1EA; }
.zsa-wrap input[type="text"], .zsa-wrap textarea{ border:1px solid #dcdcde; border-radius:6px; padding:8px 12px; font-family:inherit; font-size:13px; }
.zsa-wrap h1{ font-size:24px; }
/* ============================================================
   SUPER ADMIN — front-end page shell
   ============================================================ */
.zsa-topbar{ background:#16281F; padding:14px 0; }
.zsa-topbar__inner{ max-width:1400px; margin:0 auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; }
.zsa-topbar__logo{ display:flex; align-items:center; gap:10px; text-decoration:none; }
.zsa-topbar__logo-text{ color:#fff !important; font-weight:800; font-size:17px; }
.zsa-topbar__logo-accent{ color:#7fd9a5 !important; }
.zsa-topbar__logo-tag{ font-size:11px; font-weight:700; color:rgba(255,255,255,.55) !important; border-left:1px solid rgba(255,255,255,.25); padding-left:10px; text-transform:uppercase; letter-spacing:.04em; }
.zsa-topbar__actions{ display:flex; align-items:center; gap:16px; }
.zsa-topbar__lock{ color:rgba(255,255,255,.75) !important; font-size:13px; text-decoration:none !important; padding:6px 12px; border:1px solid rgba(255,255,255,.25); border-radius:6px; }
.zsa-topbar__lock:hover{ color:#fff !important; border-color:rgba(255,255,255,.5); }
.zsa-topbar__logout{ color:rgba(255,255,255,.6) !important; font-size:13px; text-decoration:none !important; }
.zsa-topbar__logout:hover{ color:#fff !important; }

.zsa-page-shell{ display:flex; min-height:calc(100vh - 54px); background:#F5F6F4; }
.zsa-sidenav{ width:220px; flex-shrink:0; background:#fff; border-right:1px solid #e2e4e2; padding:20px 0; display:flex; flex-direction:column; }
.zsa-sidenav__item--logout{ margin-top:auto; border-top:1px solid #e2e4e2; padding-top:16px !important; margin-top:20px; color:#D64545 !important; font-weight:600; }
.zsa-sidenav__item--logout:hover{ background:#FBE7E7 !important; }
.zsa-sidenav__item{ display:block; padding:11px 22px; font-size:13.5px; color:#444 !important; text-decoration:none !important; border-left:3px solid transparent; }
.zsa-sidenav__item:hover{ background:#F5F6F4; }
.zsa-sidenav__item.is-active{ background:#E7F1EA; color:#207943 !important; font-weight:700; border-left-color:#207943; }
.zsa-main{ flex:1; padding:28px 32px; max-width:1300px; }

.zsa-gate-card{ max-width:380px; margin:80px auto; background:#fff; border:1px solid #e2e4e2; border-radius:12px; padding:32px; text-align:center; }
.zsa-gate-card h1{ font-size:20px; font-weight:800; margin:0 0 10px; }
.zsa-gate-card p{ font-size:13.5px; color:#666; margin:0 0 18px; }
.zsa-gate-card__error{ color:#D64545 !important; }
.zsa-gate-page{ background:#F5F6F4; min-height:100vh; padding:20px; box-sizing:border-box; }
.zsa-gate-card__field{ display:flex; align-items:stretch; border:1px solid #dcdcde; border-radius:8px; margin-bottom:14px; overflow:hidden; background:#fff; }
.zsa-gate-card__field input{ flex:1; min-width:0; border:none; outline:none; padding:12px 14px; font-size:14px; font-family:inherit; }
.zsa-gate-card__field button{ flex-shrink:0; display:flex; align-items:center; padding:0 16px; background:#fafafa; border:none; border-left:1px solid #eee; color:#207943; font-size:12px; font-weight:700; cursor:pointer; }

@media(max-width:800px){
	.zsa-page-shell{ flex-direction:column; }
	.zsa-sidenav{ width:100%; display:flex; overflow-x:auto; padding:8px; }
	.zsa-sidenav__item{ white-space:nowrap; border-left:none; border-bottom:3px solid transparent; }
	.zsa-sidenav__item.is-active{ border-left:none; border-bottom-color:#207943; }
	.zsa-main{ padding:20px; }
}
/* ============================================================
   RESPONSIVE FIXES
   ============================================================ */
@media(max-width:900px){
	.zsa-table{ display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; white-space:nowrap; }
	.zsa-table thead, .zsa-table tbody, .zsa-table tr{ display:table; width:100%; table-layout:auto; }
}

@media(max-width:600px){
	.zsa-topbar__inner{ padding:0 16px; }
	.zsa-topbar__logo-tag{ display:none; }
	.zsa-stat-grid{ grid-template-columns:1fr 1fr; }
	.zsa-main{ padding:16px; }
	.zsa-filter-row{ flex-wrap:wrap; }
	.zsa-actions-row{ flex-direction:column; align-items:stretch; }
	.zsa-actions-row form, .zsa-actions-row .button{ width:100%; text-align:center; }
	.zsa-detail-grid{ grid-template-columns:1fr; }
	.zsa-search{ flex-direction:column; }
	.zsa-search input{ min-width:0; width:100%; }
}

.zsa-msg-thread{border:1px solid #eee;border-radius:8px;max-height:420px;overflow-y:auto;}
.zsa-msg-row{padding:12px 16px;border-bottom:1px solid #f2f2f2;}
.zsa-msg-row:last-child{border-bottom:none;}
.zsa-msg-row__meta{font-size:12.5px;display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.zsa-msg-row__body{font-size:13.5px;color:#333;line-height:1.5;}
