/* Mail page — two panes on wide screens, one column on a phone. Base .mtools/.msearch/.mstar/
   .march/.mbody/.mframe/.thread come from app.css. */

.mail-top{display:grid;gap:14px;margin-bottom:14px}

/* Needs you */
.needs{border-left:4px solid var(--blue)}
.needs .list li.task{cursor:pointer;gap:10px}
.needs .list li.task:hover .title{color:var(--blue-deep)}
.needs .meta.act{color:var(--ink);font-size:12.5px}
.ml-more{margin-top:6px}
.ml-more>summary{cursor:pointer;font:600 12px var(--font-h);color:var(--blue-deep);min-height:32px;display:flex;align-items:center}

/* Live signals: a slim row that opens */
.sig>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;min-height:44px;border-radius:var(--r)}
.sig>summary::-webkit-details-marker{display:none}
.sig>summary::before{content:'›';font:700 16px var(--font-h);color:var(--blue-deep);width:12px;transition:transform .15s}
.sig[open]>summary::before{transform:rotate(90deg)}
.sig[open]>summary{border-bottom:1px solid var(--mist);border-radius:var(--r) var(--r) 0 0}
.sig>summary:hover{background:var(--cloud)}
.sig-l{font:700 13px var(--font-h);color:var(--ink)}
.sig .chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid var(--mist);border-radius:999px;background:#fff;font:600 11.5px var(--font-h);color:var(--slate-2)}
.sig .chip b{color:var(--ink)}
.sig-r{margin-left:auto}
.sig-list{padding:4px 14px 6px}
.sig-list li.task[data-thread]{cursor:pointer}
@media(max-width:700px){.sig-r{display:none}}

/* split */
.mail-split{display:grid;grid-template-columns:minmax(320px,440px) minmax(0,1fr);gap:14px;align-items:start}
.mail-list{min-width:0}
.mail-pane{min-width:0;position:sticky;top:64px}
.mail-empty{border:1px dashed var(--mist);border-radius:var(--r);min-height:240px;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;font-size:13px}
@media(max-width:1100px){
  .mail-split{grid-template-columns:1fr}
  .mail-pane{position:static}
  .mail-page.has-thread .mail-list,.mail-page.has-thread .mail-top{display:none}
  .mail-page:not(.has-thread) .mail-pane{display:none}
}

/* list rows */
.mtools .seg{flex-wrap:wrap}
.ml-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-bottom:1px solid var(--mist);cursor:pointer;min-height:56px}
.ml-row:hover{background:rgba(0,150,255,.04)}
.ml-row.sel{background:var(--ice);box-shadow:inset 3px 0 0 var(--blue)}
.ml-row.unread{background:rgba(0,150,255,.05)}
.ml-row.unread .ml-from,.ml-row.unread .ml-sub{font-weight:700;color:var(--ink)}
.ml-row.unread .av::after{content:'';position:absolute;right:-2px;top:-2px;width:9px;height:9px;border-radius:50%;background:var(--blue);border:2px solid #fff}
.ml-main{flex:1;min-width:0}
.ml-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.ml-from{font:600 13px var(--font-b);color:var(--slate-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.ml-date{font:600 11px var(--font-b);color:var(--slate);white-space:nowrap;flex:none}
.ml-sub{font:400 13px var(--font-b);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}
.ml-snip{font-size:12px;color:var(--slate);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ml-acts{display:flex;flex-direction:column;align-items:center;gap:2px;flex:none}
.ml-acts .march{padding:2px 6px;min-height:0}
.ml-row:hover .march{opacity:1}
.ml-pager{padding:10px 12px;justify-content:space-between}
@media(hover:none){.march{opacity:1}}

/* avatar */
.av{position:relative;flex:none;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:700 12px var(--font-h);color:#fff;background:var(--navy);letter-spacing:.02em}
.av0{background:var(--navy)}.av1{background:var(--blue-deep)}.av2{background:var(--purple)}.av3{background:#0f766e}.av4{background:#b45309}.av5{background:#4c5563}
.thread .who .av{width:24px;height:24px;font-size:9.5px;vertical-align:middle;margin-right:2px}
.thread .who .who-n{color:var(--ink)}

/* thread pane */
.thread-card{padding-top:12px}
.th-head{display:grid;gap:6px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--mist)}
.th-back{justify-self:start}
.th-subj{font-size:17px;font-weight:800;margin:0;display:block;line-height:1.3;word-break:break-word}
.th-acts{margin-top:4px}
.thread-card .thread .c{margin:8px 0}
.reply{margin-top:14px;padding-top:12px;border-top:1px solid var(--mist)}
.reply h3{font-size:13px;margin-bottom:8px}
@media(min-width:1101px){.th-back{display:none}}
