/* Alerts: requires action, to do, job tracking.
   Loaded by index.html. Styles for other pages are in their own
   file, so a session working on one page never opens the others. */

/* ===== the badge ask ===== */
.badge-ask{display:block;width:100%;margin:0 0 14px;font:inherit;font-size:14px;
  font-weight:600;cursor:pointer;color:var(--on-ink);background:var(--ink);
  border:1px solid var(--ink);border-radius:999px;padding:10px 16px}
.badge-ask[hidden]{display:none}

/* ===== free-plan headroom ===== */
.usage{margin:0 0 12px;font-size:12px;color:var(--ink-3)}
.usage[hidden]{display:none}

/* ===== job tracking ===== */
/* Three running totals, all-time. Counts rather than a list: the threads are
   in Gmail already, and what the page adds is the tally. */
.jobs{display:flex;flex-direction:column}
.job-row{display:flex;justify-content:space-between;align-items:baseline;
  gap:12px;padding:11px 0}
.job-row:first-child{padding-top:0}
.job-row:last-child{padding-bottom:0}
.job-row+.job-row{border-top:1px solid var(--line-2)}
.job-name{font-size:15px;font-weight:600;color:var(--ink-2)}
.job-n{font-family:var(--body);font-size:20px;
  font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;
  color:var(--ink)}

/* ===== requires action ===== */
/* Items share the to-do rows below; a problem has a red tag and no box. */
ul.act{list-style:none;margin:0;padding:0}
ul.act>li{border-top:1px solid var(--line-2)}
ul.act>li:first-child{border-top:0}
ul.act>li:first-child>.todo-item,ul.act>li.act-problem:first-child{padding-top:0}
ul.act .todo-item{border-top:0}
.act-problem{display:flex;gap:10px;align-items:flex-start;padding:11px 0;
  font-size:15px;line-height:1.45}
.act-problem .tag{background:var(--out-soft);color:var(--out)}
.act-main{flex:1;min-width:0;display:flex;gap:10px;align-items:flex-start}
.act-body{min-width:0;display:flex;flex-direction:column}
.todo-item.done .tag{opacity:.5}
.file-pick{display:flex;align-items:center;gap:8px;padding:0 0 12px 31px}
.file-lab{font-size:12px;color:var(--ink-3)}
.file-opt{font:inherit;font-size:12px;font-weight:600;cursor:pointer;
  padding:4px 12px;border-radius:999px;border:1px solid var(--line);
  background:none;color:var(--ink-2)}
.file-opt[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);
  color:var(--on-ink)}
.file-pick.teach{padding-top:0}
.teach-note{display:flex;gap:8px;padding:0 0 12px 31px}
.teach-note input{flex:1;min-width:0;box-sizing:border-box;font:inherit;font-size:16px;
  color:var(--ink);background:var(--card);border:1px solid var(--line);
  border-radius:8px;padding:6px 10px}
.file-pick[hidden],.teach-note[hidden]{display:none}
/* a charge with no category: its line, then a chip per category */
.act-uncat{padding:11px 0 0;font-size:15px;line-height:1.45}
ul.act>li.act-uncat:first-child{padding-top:0}
.act-uncat .tag{background:var(--out-soft);color:var(--out)}
/* 16px in the field, or iOS zooms the page when it is focused */
.uncat-name{display:block;width:100%;box-sizing:border-box;margin-top:10px;
  font:inherit;font-size:16px;color:var(--ink);background:var(--card);
  border:1px solid var(--line);border-radius:10px;padding:8px 12px}
.cat-pick{flex-wrap:wrap;padding:10px 0 12px}
.cat-pick[aria-busy="true"],.act-uncat[aria-busy="true"]{opacity:.5;pointer-events:none}
.tag-pick{padding-top:0}
.uncat-acts{display:flex;align-items:center;gap:10px;padding:0 0 12px}
.uncat-save{font:inherit;font-size:13px;font-weight:600;cursor:pointer;
  padding:8px 18px;border-radius:9px;border:1px solid var(--ink);
  background:var(--ink);color:var(--on-ink)}
.uncat-save:disabled{opacity:.4;cursor:default}
.all-clear{margin:0;color:var(--ink-3);font-size:14px}
.tag{font-family:var(--body);font-size:10px;
  text-transform:uppercase;letter-spacing:.07em;padding:3px 7px;border-radius:5px;
  flex:none;margin-top:3px;background:var(--warn-soft);color:var(--warn)}

/* ===== settlements ===== */
ul.sets{list-style:none;margin:0;padding:0}
ul.sets:empty{display:none}
.set{padding:12px 0;border-top:1px solid var(--line-2)}
.set:first-child{border-top:0;padding-top:0}
.set-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.set-head .tag{margin-top:0}
.set-title{font-size:15px;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.set-meta{margin:3px 0 0}
.set-meta .soon{color:var(--warn)}
.set-ask{margin:8px 0 0;font-size:14px;font-weight:600;color:var(--ink)}
.set-why{margin:6px 0 0;font-size:13px;line-height:1.45;color:var(--ink-2)}
.set-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.set-go{font-size:14px;font-weight:600;color:var(--accent);margin-right:4px}

/* ===== highlights ===== */
ul.hls{list-style:none;margin:0;padding:0}
ul.hls:empty{display:none}
.hl{display:flex;align-items:baseline;gap:10px;padding:10px 0;border-top:1px solid var(--line-2)}
.hl:first-child{border-top:0;padding-top:0}
.hl-note{flex:1;min-width:0;font-size:15px;line-height:1.45;color:var(--ink);
  text-decoration:none;overflow-wrap:anywhere}
.hl-when{flex:none;font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.hl-x{flex:none;font:inherit;font-size:18px;line-height:1;cursor:pointer;
  padding:2px 6px;border:0;background:none;color:var(--ink-3)}

/* ===== to do ===== */
/* 16px in the field, or iOS zooms the page when it is focused */
.todo-add{display:flex;gap:8px}
.todo-add input{flex:1;min-width:0;font:inherit;font-size:16px;color:var(--ink);
  background:var(--card);border:1px solid var(--line);border-radius:10px;
  padding:10px 12px}
.todo-add button{flex:none;font:inherit;font-size:14px;font-weight:600;
  cursor:pointer;color:var(--on-ink);background:var(--ink);
  border:1px solid var(--ink);border-radius:999px;padding:0 18px}
.todo-add button[disabled]{opacity:.5;cursor:default}
ul.todos{list-style:none;margin:12px 0 0;padding:0}
ul.todos:empty{display:none}
.todo-item{display:flex;align-items:flex-start;gap:11px;width:100%;
  padding:11px 0;border:0;border-top:1px solid var(--line-2);background:none;
  font:inherit;font-size:15px;line-height:1.45;color:var(--ink);
  text-align:left;cursor:pointer}
ul.todos li:first-child .todo-item{border-top:0}
.todo-box{flex:none;width:20px;height:20px;margin-top:1px;border-radius:6px;
  border:1.5px solid var(--ink-3);display:flex;align-items:center;
  justify-content:center;font-size:13px;line-height:1;color:transparent}
.todo-text{min-width:0;overflow-wrap:anywhere}
.todo-item.done .todo-box{background:var(--in);border-color:var(--in);
  color:var(--on-ink)}
.todo-item.done .todo-text{text-decoration:line-through;color:var(--ink-3)}
/* To Do | Backlog */
.todo-tabs{display:flex;gap:8px;margin-bottom:12px}


/* ===== a deadline on a Requires Action item ===== */
.act-due{display:block;margin-top:2px;font-size:12px;color:var(--ink-2)}
.act-due.soon{color:var(--warn);font-weight:700}

/* ===== the two sheets on app open (alerts.js) ===== */
/* Credits Ending from the top, Categorize from the bottom. Each has an x. */
.sheet-back{position:fixed;inset:0;z-index:34;background:rgba(54,48,42,.35)}
.sheet{position:fixed;left:0;right:0;z-index:35;max-width:680px;margin:0 auto;
  max-height:80vh;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);
  padding:0 16px;transition:transform .2s ease}
.sheet-top{top:0;padding-top:env(safe-area-inset-top);border-radius:0 0 16px 16px;
  box-shadow:0 10px 30px -12px rgba(54,48,42,.45)}
.sheet-top.away{transform:translateY(-105%)}
.sheet-bot{bottom:0;padding-bottom:calc(16px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;
  box-shadow:0 -10px 30px -12px rgba(54,48,42,.45)}
.sheet-bot.away{transform:translateY(105%)}
.sheet-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:8px;
  padding:14px 0 10px;background:var(--paper)}
.sheet-title{flex:1;min-width:0;display:flex;align-items:baseline;gap:10px}
.sheet-title h2{flex:none;font-size:18px}
.sheet-sub{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.sheet-x{flex:none;width:36px;height:36px;font:inherit;font-size:24px;line-height:1;
  cursor:pointer;color:var(--ink-2);background:var(--sunk);border:0;border-radius:10px}
.sheet-body{padding:0 0 12px}
.sheet-credit{display:block;width:100%;text-align:left;font:inherit;cursor:pointer;
  color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:12px;
  padding:12px 14px;margin-top:8px}
.sheet-credit .todo-text{font-weight:600}
.sheet-bot .act-uncat{list-style:none;background:var(--card);border:1px solid var(--line);border-radius:12px;
  padding:14px 14px 0}
.sheet-bot .cat-pick,.sheet-bot .uncat-acts{padding-left:0}
/* a Spam check email: Spam, Not spam, open it, all of them */
.spam-acts{flex-wrap:wrap;padding-top:12px}
.spam-open{font-size:14px;font-weight:600;color:var(--accent);text-decoration:none;padding:0 4px}
.sheet-pill{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));
  transform:translateX(-50%);z-index:19;font:inherit;font-size:14px;font-weight:600;cursor:pointer;
  color:var(--on-ink);background:var(--ink);border:1px solid var(--ink);border-radius:999px;
  padding:9px 18px;box-shadow:0 8px 20px -8px rgba(54,48,42,.7)}
body.editing .sheet,body.editing .sheet-back,body.editing .sheet-pill{display:none!important}
@media (prefers-reduced-motion:reduce){.sheet{transition:none}}
