/* Site admin > Moderation: search, accounts list and the Change plan dialog (admin.js). */
.adm-search{margin:0 0 22px}
.adm-search input{width:100%;max-width:560px}
.adm-plans{display:flex;flex-wrap:wrap;gap:6px}
.adm-ver{display:inline-block;margin-top:4px;font-family:inherit;font-size:12px;color:var(--muted,#888)}
.adm-ver.ok{color:#2f9e5b}
.adm-plan{border:1px solid var(--line,rgba(127,127,127,.25));border-radius:12px;padding:14px;margin-top:10px}
.adm-give{margin-top:10px;gap:8px;flex-wrap:wrap}
.adm-give select{width:auto;min-width:140px}
.adm-search input{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font:inherit;color:inherit}
.adm-plan .chip{white-space:normal;text-align:right}
.adm-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.adm-acts .adm-del,.admbar .adm-del{color:var(--danger)}
.adm-delopts{display:flex;flex-direction:column;gap:8px}
.adm-delopt{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:12px 14px;cursor:pointer}
.adm-delopt input{margin-top:3px;accent-color:var(--danger)}
.adm-delopt div{display:flex;flex-direction:column;gap:2px}
.adm-delopt span{font-size:13px;color:var(--muted);line-height:1.45}
.adm-delopt:has(input:checked){border-color:var(--danger);background:color-mix(in srgb,var(--danger) 6%,transparent)}
.adm-delopt.off{opacity:.55;cursor:default}
.adm-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;font-size:13px;flex-wrap:wrap}
.adm-pager:empty{display:none}
.em-pager{gap:8px;margin-top:14px}
.em-pager span{text-align:center;padding:0 4px}
@media (max-width:560px){.em-pager span{order:-1;flex-basis:100%}.em-pager .btn{flex:1}}

/* Site admin sections: a pill nav inside the Site admin tab (app.js dashAdmin). */
.adm-nav{display:flex;gap:6px;margin:-8px 0 24px;overflow-x:auto;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--surface);width:max-content;max-width:100%}
.adm-nav button{border:0;background:none;padding:8px 16px;border-radius:999px;font:inherit;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.adm-nav button:hover{color:var(--ink)}
.adm-nav button[aria-selected=true]{background:var(--ink);color:var(--bg)}

/* Site admin > Email marketing (email-admin.js). */
.em-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.em-filters input,.em-filters select{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit;font-size:14px;color:inherit}
.em-filters input{flex:1;min-width:220px;max-width:420px}
.em-filters select{width:auto}
.em-st{display:inline-block;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--sunk,rgba(127,127,127,.12));color:var(--muted);white-space:nowrap}
.em-st.ok{color:#2a78d6;background:rgba(42,120,214,.12)}
.em-st.good{color:#1a8f63;background:rgba(27,175,122,.14)}
.em-st.warn{color:#a86f00;background:rgba(237,161,0,.16)}
.em-st.bad{color:#c2412d;background:rgba(235,104,52,.14)}
.em-help{margin:0;padding-left:18px;font-size:13px;line-height:1.6;color:var(--muted);display:flex;flex-direction:column;gap:6px}
.em-help b{color:var(--ink)}
.em-table td{vertical-align:top}
@media (max-width:640px){
  .em-table thead{display:none}
  .em-table,.em-table tbody,.em-table tr,.em-table td{display:block;width:100%}
  .em-table tr{padding:12px 14px;border-bottom:1px solid var(--line)}
  .em-table td{padding:2px 0;border:0}
  .em-table td:first-child{display:flex;gap:8px;align-items:baseline;font-weight:600}
  .em-filters input{min-width:0;max-width:none;flex-basis:100%}
  .em-filters select{flex:1}
}

/* Email marketing > Campaigns */
.em-camphead{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.em-camps tbody tr{cursor:pointer}
.em-camps tbody tr:hover{background:var(--sunk,rgba(127,127,127,.06))}
.em-camps td.num b{display:block;font-variant-numeric:tabular-nums}
.em-camps td.num span{font-size:12px}
.em-camps .num{text-align:right}
@media (max-width:640px){
  .em-camps thead{display:none}
  .em-camps,.em-camps tbody,.em-camps tr{display:block;width:100%}
  .em-camps tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 10px;padding:12px 14px;border-bottom:1px solid var(--line)}
  .em-camps td{display:block;padding:0;border:0}
  .em-camps td:first-child{grid-column:1/-1}
  .em-camps td.num{text-align:left}
  .em-camps td:nth-child(2)::before{content:'Sent'}.em-camps td:nth-child(3)::before{content:'Delivered'}.em-camps td:nth-child(4)::before{content:'Opened'}
  .em-camps td:nth-child(5)::before{content:'Clicked'}.em-camps td:nth-child(6)::before{content:'Problems'}.em-camps td:nth-child(7)::before{content:'Last sent'}
  .em-camps td::before{display:block;font-size:11px;color:var(--muted)}
}

/* Site admin > Email marketing > a campaign's draft email (email-drafts.js). */
.ed-wrap{margin-top:8px}
.ed-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;align-items:start}
@media (max-width:900px){.ed-grid{grid-template-columns:1fr}}
.ed-form{display:flex;flex-direction:column;gap:12px;padding:18px}
.ed-form .field{margin:0}
.ed-form textarea{min-height:200px;line-height:1.5}
.ed-hint{display:block;font-style:normal;font-size:12px;line-height:1.5;color:var(--muted);margin-top:4px}
.ed-prev{padding:14px;position:sticky;top:76px}
.ed-prevbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.ed-prevbar input{flex:1;min-width:160px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;color:inherit}
.ed-inbox{font-size:14px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--bg)}
.ed-frame{display:block;width:100%;height:680px;border:1px solid var(--line);border-radius:12px;background:#FAFAFA;margin:0 auto}
.ed-frame.phone{width:375px;max-width:100%}
.ed-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}
.ed-miss{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px;background:rgba(235,104,52,.12);color:#c2412d;margin:1px 0;white-space:nowrap}
.ed-miss.opt{background:var(--sunk,rgba(127,127,127,.12));color:var(--muted)}
.ed-send{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px;padding:18px}
.ed-send>div{flex:1;min-width:240px}

/* Site admin > Claimable forms (outreach.js) */
.or-read{display:flex;gap:8px;margin-bottom:16px}
.or-read input{flex:1;min-width:0}
.or-draft,.or-made{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.or-made h3{font-size:17px}
.or-who{display:flex;gap:14px;align-items:flex-start}
.or-who .mark,.or-cell .mark{width:52px;height:52px;border-radius:14px;flex:none;object-fit:cover}
.or-cell{display:flex;gap:10px;align-items:center}
.or-cell .mark{width:36px;height:36px;border-radius:10px;font-size:14px}
.or-bio{font-size:14px;margin-top:4px}
.or-post{margin:0;padding:12px 14px;border-left:3px solid var(--line);background:var(--sunk);border-radius:0 10px 10px 0;white-space:pre-line;font-size:14px}
.or-slug{display:flex;align-items:center;gap:4px}
.or-slug input{flex:1;min-width:0}
.or-roles{display:flex;flex-wrap:wrap;gap:8px 18px}
.or-roles .chk{display:inline-flex;gap:6px;align-items:center;font-size:14px}
.or-dm{padding:12px 14px;border-radius:10px;background:var(--sunk);font-size:14px;line-height:1.5}
@media (max-width:560px){.or-read{flex-direction:column}}
.or-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.or-many{margin:-6px 0 16px;font-size:14px}
.or-many summary{cursor:pointer;color:var(--muted);font-weight:600}
.or-batch{display:grid;gap:10px}
.or-brow{display:flex;gap:10px;align-items:center;min-width:0}
.or-brow>div{min-width:0;overflow-wrap:anywhere}
.or-brow .mark{width:36px;height:36px;border-radius:10px;font-size:14px;flex:none;object-fit:cover}
.or-outtools{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-start;margin-bottom:12px}
.or-outtools .or-many{margin:6px 0 0;flex:1;min-width:240px}
.or-out{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}

/* Site admin > User lookup (admin-view.js): search, newest activity, one user's page, read-only chat popup. */
.uv-sub{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 8px;font-size:14px}
.uv-sub .muted{font-size:13px}
.uv-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}
.uv-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;border-top:1px solid var(--line);background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;min-width:0}
.uv-row:first-child{border-top:0}
button.uv-row:hover{background:var(--sunk)}
.uv-row.uv-static{cursor:default}
.uv-row .sk{flex:1}
.uv-empty{padding:16px 14px;font-size:14px}
.uv-av{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--sunk);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);font-size:13px;font-weight:600}
.uv-av.lg{width:56px;height:56px;font-size:19px}
.uv-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.uv-main>b{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis}
.uv-main>span{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.uv-main .muted{font-weight:400}
.uv-last{color:var(--ink)}
.uv-last em{font-style:normal;color:var(--muted)}
.uv-meta{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;white-space:nowrap}
.uv-meta .chip+.chip{margin-top:0}
.uv-link{border:0;background:none;padding:0;font:inherit;font-weight:600;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;cursor:pointer}
.uv-link:hover{text-decoration-color:currentColor}
.uv-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:26px 0 22px}
.uv-stats div{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.uv-stats span{font-size:12px;color:var(--muted)}
.uv-stats b{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}
.uv-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.uv-cols h4,.uv-grid h4{font-size:15px;margin:0 0 10px}
.uv-back{margin-bottom:12px}
.uv-head{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;padding:20px}
.uv-head h3{font-size:20px;margin:0 0 4px}
.uv-head h3 .muted{font-weight:500;font-size:16px}
.uv-email{display:flex;gap:10px;align-items:center;font-size:13px;margin-bottom:10px;overflow-wrap:anywhere}
.uv-email .uv-link{font-size:12px;font-weight:500}
.uv-headkv{flex-basis:100%;display:flex;flex-wrap:wrap;gap:10px 28px;align-items:center;border-top:1px solid var(--line);padding-top:14px}
.uv-headkv>div{display:flex;flex-direction:column;gap:2px;font-size:13px}
.uv-headkv span{color:var(--muted);font-size:12px}
.uv-headkv .uv-headlinks{flex-direction:row;gap:6px;margin-left:auto}
.uv-tabs{display:flex;gap:4px;margin:18px 0 14px;overflow-x:auto;border-bottom:1px solid var(--line)}
.uv-tabs button{border:0;background:none;padding:10px 12px;font:inherit;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.uv-tabs button span{display:inline-block;min-width:20px;padding:1px 7px;margin-left:4px;border-radius:999px;background:var(--sunk);font-size:12px;color:var(--muted)}
.uv-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}
.uv-note{font-size:13px;margin:0 0 10px}
.uv-table td{vertical-align:top}
.uv-job{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:14px;margin-bottom:14px}
.uv-jobhead{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px}
.uv-jobhead>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.uv-jobhead>div:first-child span{font-size:13px}
.uv-job .tablewrap{margin:0}
.uv-none{font-size:13px;margin:0}
.uv-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px;align-items:start}
.uv-about{margin-top:12px;font-size:14px;white-space:pre-wrap}
.uv-plain{margin:0;padding-left:18px;font-size:14px;display:flex;flex-direction:column;gap:4px}
.uv-chathead h2{font-size:18px;margin:0}
.uv-chathead h2 .muted{font-weight:400}
.uv-chathead p{font-size:13px;margin-top:4px}
.uv-ro{margin:12px 0;padding:8px 12px;border-radius:10px;background:var(--sunk);font-size:12px;color:var(--muted)}
.uv-msgs{display:flex;flex-direction:column;gap:8px;max-height:min(60vh,560px);overflow-y:auto;padding:4px 2px}
.uv-day{align-self:center;font-size:11px;color:var(--muted);background:var(--sunk);border-radius:999px;padding:2px 10px;margin:6px 0}
.uv-msg{display:flex;flex-direction:column;gap:3px;max-width:78%;align-self:flex-start}
.uv-msg.own{align-self:flex-end;align-items:flex-end}
.uv-from{font-size:11px;color:var(--muted)}
.uv-bub{padding:9px 13px;border-radius:16px;font-size:14px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--sunk);color:var(--ink);border-bottom-left-radius:6px}
.uv-msg.own .uv-bub{background:var(--ink);color:var(--bg);border-bottom-left-radius:16px;border-bottom-right-radius:6px}
.uv-reads{font-size:12px;margin-top:10px}
.uv-qa{display:flex;flex-direction:column;gap:14px}
.uv-qa>div{display:flex;flex-direction:column;gap:4px}
.uv-qa b{font-size:13px}
.uv-qa .prose{font-size:14px;overflow-wrap:anywhere}
@media (max-width:900px){.uv-cols,.uv-grid{grid-template-columns:1fr}}
@media (max-width:640px){
  .uv-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .uv-row{gap:10px;padding:11px 12px}
  .uv-meta{display:none}
  .uv-row.uv-static .uv-meta,.uv-chat .uv-meta{display:flex}
  .uv-headkv .uv-headlinks{margin-left:0}
  .uv-msg{max-width:90%}
  .uv-table thead{display:none}
  .uv-table,.uv-table tbody,.uv-table tr,.uv-table td{display:block;width:100%}
  .uv-table tr{padding:12px 4px;border-bottom:1px solid var(--line)}
  .uv-table td{padding:3px 0;border:0}
}
