/* eDocYouSign — shared styles for the sender app and the signing page.
   Layout: app shell. Top bar; left control panel; the document on a desk surface. */
:root{
  --desk:#E9ECF1; --surface:#FFFFFF; --surface-2:#F4F6F9; --ink:#151C28; --muted:#5A6577; --line:#D3D9E2;
  --accent:#2340C4; --accent-ink:#FFFFFF; --accent-soft:#E3E8FB;
  --ok:#137A4B; --warn:#A45B00; --danger:#B42335;
  --page:#FFFFFF; --page-ink:#1A2130;
  --f-display:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
  --f-body:"IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --f-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --r:8px; --shadow:0 1px 2px rgba(20,28,40,.08), 0 8px 24px rgba(20,28,40,.08);
  color-scheme:light;
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  --desk:#0F131A; --surface:#171D27; --surface-2:#1D2430; --ink:#E5E9F0; --muted:#97A2B3; --line:#2B3443;
  --accent:#8198FF; --accent-ink:#0D1224; --accent-soft:#232C4A;
  --ok:#46C08A; --warn:#E3A24A; --danger:#F07083;
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px rgba(0,0,0,.35); color-scheme:dark } }
:root[data-theme="dark"]{
  --desk:#0F131A; --surface:#171D27; --surface-2:#1D2430; --ink:#E5E9F0; --muted:#97A2B3; --line:#2B3443;
  --accent:#8198FF; --accent-ink:#0D1224; --accent-soft:#232C4A;
  --ok:#46C08A; --warn:#E3A24A; --danger:#F07083;
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px rgba(0,0,0,.35); color-scheme:dark }

*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{height:100%}
body{margin:0;background:var(--desk);color:var(--ink);font:14px/1.5 var(--f-body);display:flex;flex-direction:column;min-height:0}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}

/* Top bar */
.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:19px;letter-spacing:-.01em;color:var(--ink);text-decoration:none}
.brand svg{flex:none}
.nav{display:flex;gap:4px}
.nav button{border:0;background:transparent;padding:6px 12px;border-radius:6px;color:var(--muted);font-weight:500}
.nav button.on{background:var(--accent-soft);color:var(--ink)}
.spacer{flex:1}
.docname{flex:1 1 220px;min-width:0;display:flex;flex-direction:column}
.docname label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.docname input{border:1px solid transparent;background:transparent;border-radius:6px;padding:2px 6px;margin-left:-6px;font-weight:600;font-size:15px;min-width:0;width:100%}
.docname input:hover{border-color:var(--line)}
.docname input:focus{border-color:var(--accent);outline:none;background:var(--surface-2)}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:6px;padding:7px 14px;border:1px solid var(--line);background:var(--surface);font-weight:500;white-space:nowrap;text-decoration:none;color:var(--ink)}
.btn:hover{background:var(--surface-2)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}
.btn.primary:hover{filter:brightness(1.08)}
.btn.ghost{border-color:transparent;background:transparent}
.btn.ghost:hover{background:var(--surface-2)}
.btn.danger{color:var(--danger)}
.btn.primary.danger{background:var(--danger);border-color:var(--danger);color:#fff}
.btn.sm{padding:4px 10px;font-size:13px}
.btn[disabled]{opacity:.5;cursor:not-allowed}

.banner{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 16px;background:var(--accent-soft);color:var(--ink);font-size:13px;border-bottom:1px solid var(--line)}
.banner.warn{background:color-mix(in srgb,var(--warn) 16%,var(--surface))}

/* Workspace */
.workspace{flex:1;display:grid;grid-template-columns:320px minmax(0,1fr);min-height:0}
.panel{background:var(--surface);border-right:1px solid var(--line);overflow:auto;padding:16px;display:flex;flex-direction:column;gap:22px}
.viewer{overflow:auto;padding:24px 16px 80px;position:relative}
.viewer.dragging{outline:2px dashed var(--accent);outline-offset:-10px}
.pages{display:flex;flex-direction:column;align-items:center;gap:22px;max-width:860px;margin:0 auto}
.page{position:relative;width:100%;background:var(--page);box-shadow:var(--shadow);container-type:inline-size}
.page canvas{display:block;width:100%;height:100%}
.page .pno{position:absolute;right:0;top:-18px;font-size:11px;color:var(--muted);font-family:var(--f-mono)}
.overlay{position:absolute;inset:0}
.overlay.armed{cursor:crosshair}
.loading{padding:60px 0;color:var(--muted);text-align:center}

.sec h2{font-family:var(--f-display);font-weight:700;font-size:15px;margin:0 0 4px;letter-spacing:-.005em}
.sec .hint{color:var(--muted);font-size:12.5px;margin:0 0 10px}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:500}

/* Recipients */
.recips{display:flex;flex-direction:column;gap:8px}
.recip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r);cursor:pointer;background:var(--surface)}
.recip.active{border-color:var(--sc);box-shadow:inset 3px 0 0 var(--sc)}
.dot{width:24px;height:24px;border-radius:50%;background:var(--sc);color:#fff;font-size:10px;font-weight:600;display:grid;place-items:center;flex:none}
.recip .dot{grid-row:span 3}
.recip input{border:0;background:transparent;padding:1px 2px;min-width:0;width:100%;border-radius:4px}
.recip input.nm{font-weight:600}
.recip input.em{font-size:12.5px;color:var(--muted)}
.recip input:focus{outline:none;background:var(--surface-2)}
.recip input.bad{box-shadow:inset 0 -1.5px 0 var(--danger)}
.recip .x{grid-row:span 3;border:0;background:transparent;color:var(--muted);font-size:18px;line-height:1;padding:4px 6px;border-radius:4px}
.recip .x:hover{color:var(--danger);background:var(--surface-2)}
.recip .order{font-size:11px;color:var(--muted);font-family:var(--f-mono)}

/* Palette */
.palette{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tool{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);text-align:left;font-weight:500;font-size:13px;user-select:none}
.tool:hover{border-color:var(--sc);background:var(--surface-2)}
.tool.armed{border-color:var(--sc);background:color-mix(in srgb,var(--sc) 14%,var(--surface));box-shadow:0 0 0 1px var(--sc)}
.tool svg{flex:none;color:var(--sc)}
.tool:last-child:nth-child(odd){grid-column:span 2}

.inspector{border:1px solid var(--line);border-radius:var(--r);padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--surface-2)}
.inspector .row{display:flex;align-items:center;justify-content:space-between;gap:10px}
select{border:1px solid var(--line);border-radius:6px;padding:4px 8px;background:var(--surface);min-width:0}
.check{display:flex;align-items:flex-start;gap:8px;font-size:13px}
.check input{margin-top:3px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.stat{border:1px solid var(--line);border-radius:var(--r);padding:8px 10px}
.stat b{display:block;font-family:var(--f-display);font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}
.stat span{font-size:11.5px;color:var(--muted)}

.meter{height:6px;border-radius:3px;background:var(--line);overflow:hidden;margin-top:6px}
.meter i{display:block;height:100%;background:var(--sc,var(--accent));border-radius:3px;transition:width .25s}

.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;font-size:13px;margin:0}
.kv dt{color:var(--muted)}
.kv dd{margin:0;overflow-wrap:anywhere}

/* Status chips */
.chip{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--muted)}
.chip::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.chip.sent,.chip.viewed{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
.chip.signed,.chip.completed{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}
.chip.declined,.chip.voided{background:color-mix(in srgb,var(--danger) 13%,transparent);color:var(--danger)}
.chip.waiting{background:var(--surface-2);color:var(--muted)}
.chip.sealing{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}

.audit{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:12.5px}
.audit li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px}
.audit time{color:var(--muted);font-family:var(--f-mono);font-size:11.5px;white-space:nowrap}
.audit span{overflow-wrap:anywhere}

/* Fields on the page */
.field{position:absolute;border:1.5px dashed var(--sc);background:color-mix(in srgb,var(--sc) 14%,transparent);border-radius:3px;color:var(--page-ink);display:flex;align-items:center;justify-content:center;line-height:1;touch-action:none;user-select:none}
.mode-prepare .field{cursor:move}
.field .lbl{font-family:var(--f-body);font-weight:600;color:color-mix(in srgb,var(--sc) 70%,#000);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 .3em;font-size:max(9px,1em)}
.field .who{position:absolute;left:-1px;top:-15px;height:14px;padding:0 5px;border-radius:3px 3px 0 0;background:var(--sc);color:#fff;font:600 9.5px/14px var(--f-body);white-space:nowrap}
.field .del{position:absolute;right:-9px;top:-9px;width:18px;height:18px;border-radius:50%;border:0;background:var(--page-ink);color:#fff;font-size:12px;line-height:18px;padding:0;display:none}
.field .rs{position:absolute;right:-5px;bottom:-5px;width:10px;height:10px;background:var(--page);border:1.5px solid var(--sc);border-radius:2px;cursor:nwse-resize;display:none}
.field.sel{border-style:solid;box-shadow:0 0 0 2px color-mix(in srgb,var(--sc) 35%,transparent);z-index:3}
.field.sel .del,.field.sel .rs{display:block}
.field.t-checkbox .lbl,.field.t-checkbox .who{display:none}
.field.t-checkbox.sel .who{display:block}

.mode-sign .field.other{border-color:transparent;background:transparent}
.mode-sign .field.other:not(.filled){border:1px dashed color-mix(in srgb,var(--sc) 45%,transparent);opacity:.55}
.mode-sign .field.mine{cursor:pointer}
.mode-sign .field.mine.todo{border-style:solid;background:color-mix(in srgb,var(--sc) 22%,transparent);animation:pulse 2.4s ease-in-out infinite}
.mode-sign .field.filled{border-color:transparent;background:transparent}
.mode-sign .field.mine.filled:hover{border:1px dashed var(--sc)}
.mode-sign.locked .field.mine{cursor:default;animation:none}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--sc) 0%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--sc) 30%,transparent)}}
@media (prefers-reduced-motion:reduce){.mode-sign .field.mine.todo{animation:none}}
.field .flag{position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:6px;background:var(--sc);color:#fff;font:700 10px/1 var(--f-body);text-transform:uppercase;letter-spacing:.06em;padding:5px 12px 5px 8px;clip-path:polygon(0 0,82% 0,100% 50%,82% 100%,0 100%);white-space:nowrap}
.field img{max-width:100%;max-height:100%;object-fit:contain;pointer-events:none}
.field .val{font-family:Helvetica,Arial,sans-serif;white-space:nowrap;overflow:hidden;padding:0 .15em;width:100%;text-align:left}
.field input.tx{width:100%;height:100%;border:0;background:transparent;font-family:Helvetica,Arial,sans-serif;font-size:1em;padding:0 .15em;color:var(--page-ink)}
.field input.tx:focus{outline:none;background:rgba(255,255,255,.7)}
.field input.tx::placeholder{color:color-mix(in srgb,var(--sc) 60%,#000);opacity:.7;font-family:var(--f-body);font-weight:600}
.field .clr{position:absolute;right:-8px;top:-8px;width:16px;height:16px;border-radius:50%;border:0;background:var(--page-ink);color:#fff;font-size:11px;line-height:16px;padding:0;display:none}
.mode-sign .field.mine.filled:hover .clr{display:block}
.mode-sign.locked .field .clr{display:none!important}
.field .tick{width:80%;height:80%;color:var(--page-ink)}

/* Modal */
.scrim{position:fixed;inset:0;background:rgba(10,14,22,.5);display:grid;place-items:center;padding:16px;z-index:50}
.modal{background:var(--surface);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);width:min(640px,100%);max-height:calc(100% - 32px);overflow:auto;display:flex;flex-direction:column}
.modal.narrow{width:min(480px,100%)}
.modal header{padding:18px 20px 0}
.modal h3{margin:0;font-family:var(--f-display);font-size:20px;font-weight:700}
.modal header p{margin:4px 0 0;color:var(--muted);font-size:13px}
.mtabs{display:flex;gap:4px;padding:14px 20px 0;border-bottom:1px solid var(--line)}
.mtabs button{border:0;background:transparent;padding:8px 12px;border-bottom:2px solid transparent;color:var(--muted);font-weight:500;margin-bottom:-1px}
.mtabs button.on{color:var(--ink);border-bottom-color:var(--accent)}
.mbody{padding:16px 20px;display:flex;flex-direction:column;gap:12px}
.pad{position:relative;border:1px solid var(--line);border-radius:8px;background:var(--page);height:190px;touch-action:none}
.pad canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}
.pad .baseline{position:absolute;left:24px;right:24px;bottom:48px;border-bottom:1px solid #C9CFD9;pointer-events:none}
.pad .xmark{position:absolute;left:14px;bottom:52px;color:#9AA3B2;font-size:18px;pointer-events:none}
.pad .ph{position:absolute;inset:0;display:grid;place-items:center;color:#9AA3B2;pointer-events:none;font-size:13px;text-align:center;padding:0 16px}
.padbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.inks{display:flex;gap:6px;align-items:center}
.inks button{width:22px;height:22px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line);padding:0}
.inks button.on{box-shadow:0 0 0 2px var(--accent)}
.fld{display:flex;flex-direction:column;gap:4px}
.fld label{font-size:12.5px;color:var(--muted);font-weight:500}
.fld input[type=text],.fld input[type=email],.fld input[type=password],.fld textarea{border:1px solid var(--line);border-radius:6px;padding:8px 10px;background:var(--surface);width:100%}
.fld textarea{min-height:90px;resize:vertical}
.styles{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.styles button{height:70px;border:1px solid var(--line);border-radius:8px;background:var(--page);color:#14171F;overflow:hidden;white-space:nowrap;padding:0 10px;font-size:28px}
.styles button.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.drop{display:block;border:1.5px dashed var(--line);border-radius:8px;padding:28px 16px;text-align:center;color:var(--muted);background:var(--surface-2);cursor:pointer}
.drop img{max-height:120px;max-width:100%;display:block;margin:10px auto 0;background:var(--page)}
.consent{font-size:12px;color:var(--muted);margin:0}
.modal footer{display:flex;justify-content:flex-end;gap:8px;padding:0 20px 18px;flex-wrap:wrap}
.form-error{color:var(--danger);font-size:13px;margin:0}

.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--surface);padding:10px 16px;border-radius:8px;font-size:13.5px;box-shadow:var(--shadow);z-index:60;max-width:calc(100% - 32px)}

/* Centered cards (login, signer states) */
.center{flex:1;display:grid;place-items:center;padding:32px 16px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:28px;width:min(460px,100%);display:flex;flex-direction:column;gap:14px}
.card h1{font-family:var(--f-display);font-size:24px;line-height:1.2;margin:0;letter-spacing:-.01em;text-wrap:balance}
.card p{margin:0}
.card .note{background:var(--surface-2);border-radius:8px;padding:12px 14px;white-space:pre-wrap;font-size:13.5px}

/* Dashboard */
.dash{flex:1;overflow:auto;padding:24px 16px 60px}
.dash-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:20px;align-items:start}
.dash-inner.solo{grid-template-columns:minmax(0,1fr)}
.dash h1{font-family:var(--f-display);font-size:26px;margin:0;letter-spacing:-.015em}
.dash-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.filters button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 12px;font-size:13px;color:var(--muted)}
.filters button.on{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}
.elist{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.erow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:14px 16px;border-top:1px solid var(--line);cursor:pointer;align-items:center}
.erow:first-child{border-top:0}
.erow:hover{background:var(--surface-2)}
.erow.on{background:var(--accent-soft)}
.erow .t{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.erow .sub{font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.erow .dots{display:flex;gap:3px}
.erow .dots .dot{width:20px;height:20px;font-size:9px}
.erow .dots .dot.pending{background:transparent;border:1.5px solid var(--sc);color:var(--sc)}
.empty{padding:48px 20px;text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:12px;align-items:center}
.detail{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:18px;position:sticky;top:0}
.detail h2{font-family:var(--f-display);font-size:19px;margin:0;letter-spacing:-.01em;overflow-wrap:anywhere}
.drec{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;padding:10px 0;border-top:1px solid var(--line)}
.drec:first-child{border-top:0}
.drec .nm{font-weight:600}
.drec .em{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.drec .times{grid-column:2;font-size:12px;color:var(--muted)}
.drec .acts{grid-column:2;display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.btnrow{display:flex;gap:8px;flex-wrap:wrap}

/* Signer bar */
.signbar{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--line)}
.signbar .prog{flex:1 1 220px;min-width:0}
.signbar .prog b{font-weight:600}

@media (max-width: 900px){
  .dash-inner{grid-template-columns:minmax(0,1fr)}
  .detail{position:static}
}
@media (max-width: 860px){
  html,body{height:auto}
  .workspace{display:block}
  .panel{border-right:0;border-bottom:1px solid var(--line)}
  .viewer{overflow:visible}
  .dash{overflow:visible}
}

/* Auth screens */
.authwrap{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%}
.authbrand{font-size:22px}
.lblrow{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.small{font-size:12.5px}
#accountBtn{gap:8px}
@media (max-width:560px){ #whoami{display:none} }

/* Users page */
.users-inner{max-width:1100px;margin:0 auto}
.users-tools{display:flex;gap:10px 14px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.users-tools input[type=search]{flex:1 1 260px;min-width:0;border:1px solid var(--line);border-radius:6px;padding:7px 10px;background:var(--surface)}
.utable-wrap{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow-x:auto}
.utable{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px}
.utable th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:500;padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap}
.utable td{padding:12px 14px;border-top:1px solid var(--line);vertical-align:middle}
.utable tbody tr:first-child td{border-top:0}
.utable tr.off td{color:var(--muted)}
.utable .num{text-align:right;font-variant-numeric:tabular-nums}
.utable .who{display:flex;gap:10px;align-items:center;min-width:0}
.utable .who b{display:block;font-weight:600}
.utable .who .sub{display:block;font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.utable .acts{display:flex;gap:4px;justify-content:flex-end;flex-wrap:nowrap}
.chip.role-owner{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}
.chip.role-admin{background:color-mix(in srgb,var(--warn) 15%,transparent);color:var(--warn)}
.chip.role-member,.chip.active{background:var(--surface-2);color:var(--muted)}
.chip.active{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}
.chip.invited,.chip.unconfirmed{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}
.chip.disabled{background:color-mix(in srgb,var(--danger) 13%,transparent);color:var(--danger)}
.chip.role-owner::before,.chip.role-admin::before,.chip.role-member::before{display:none}
.radios{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.radios legend{margin-bottom:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.menu{position:relative}
.menu-pop{position:fixed;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:200px;padding:4px;z-index:20}
.menu-pop button{border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:6px;font-size:13px;color:var(--ink)}
.menu-pop button:hover{background:var(--surface-2)}
.menu-pop button.danger{color:var(--danger)}
@media (max-width:700px){
  .utable{min-width:0}
  .utable thead{display:none}
  .utable,.utable tbody,.utable tr,.utable td{display:block}
  .utable tr{padding:12px 14px;border-top:1px solid var(--line);display:grid;grid-template-columns:auto auto 1fr;gap:6px 8px;align-items:center}
  .utable tbody tr:first-child{border-top:0}
  .utable td{padding:0;border:0}
  .utable td:first-child{grid-column:1 / -1}
  .utable td.num,.utable td.seen{grid-column:1 / -1;text-align:left;font-size:12.5px}
  .utable td.num::before{content:"Envelopes: ";color:var(--muted)}
  .utable td.seen::before{content:"Last sign-in: "}
  .utable .acts{justify-content:flex-end}
}

/* Images and attachments */
.field.t-image.has-img{background:transparent;border-color:transparent}
.field.t-image.has-img:hover,.field.t-image.sel{border:1.5px dashed var(--sc)}
.field.t-attachment{flex-direction:column;gap:2px;text-align:center}
.field.t-attachment .clip{width:1.8em;height:1.8em;color:color-mix(in srgb,var(--sc) 70%,#000)}
.field.t-attachment .lbl{white-space:normal;line-height:1.15}
.field.t-attachment img{max-width:100%;max-height:100%;object-fit:contain}
.field.t-attachment.filled{background:var(--page)!important;border:1px solid #C9CFD9!important}
.field .done{font:600 max(9px,1em)/1.2 var(--f-body);color:var(--ok)}

/* Email log */
.mltable{min-width:640px}
.mltable td{font-size:13px;vertical-align:top}
.mltable .res-ok{color:var(--ok);font-weight:600}
.mltable .res-bad{color:var(--danger);font-weight:600}
.mltable .res-skip{color:var(--warn);font-weight:600}
.mltable .why{display:block;color:var(--muted);font-weight:400;overflow-wrap:anywhere}
.warnbox{border-radius:8px;padding:10px 12px;background:color-mix(in srgb,var(--warn) 14%,var(--surface));font-size:13px;display:flex;flex-direction:column;gap:6px}
@media (max-width:700px){ .mltable{min-width:0} .mltable td:first-child{font-size:12px;color:var(--muted)} }
