:root{
  --bg:#f3f4f6; --surface:#fff; --border:#e4e6ea; --line:#eef0f3;
  --text:#15181d; --muted:#6b7280; --faint:#9aa0a8;
  --accent:#2f6feb; --accent-soft:#eaf1fe; --warn:#c2410c; --warn-soft:#fff3ea;
  --sun:#dc2626; --sat:#2563eb;
  --r:14px; --shadow:0 1px 2px rgba(16,24,40,.05), 0 10px 30px rgba(16,24,40,.07);
  --safe-b:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#101215; --surface:#181b20; --border:#262a31; --line:#22262c;
    --text:#e9ebef; --muted:#9aa1ac; --faint:#6d757f;
    --accent:#5b91f5; --accent-soft:#1b2740; --warn:#f08b52; --warn-soft:#2c1d13;
    --sun:#f87171; --sat:#7fa9fb;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px rgba(0,0,0,.45);
  }
}
*{box-sizing:border-box}
[hidden]{display:none !important}
html,body{margin:0;padding:0}
body{
  background:var(--bg); color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  font-size:15px; line-height:1.5; -webkit-font-smoothing:antialiased;
  padding-bottom:calc(96px + var(--safe-b));
  overscroll-behavior-y:contain;
}
.sun{color:var(--sun)} .sat{color:var(--sat)}

/* ---- 상단 ---- */
.top{
  position:sticky; top:0; z-index:20;
  display:flex; align-items:center; gap:12px;
  padding:12px 16px; padding-top:calc(12px + env(safe-area-inset-top,0px));
  background:var(--surface); border-bottom:1px solid var(--border);
}
.brand{display:flex; align-items:center; gap:10px; min-width:0; margin-right:auto}
.mark{width:32px;height:32px;flex:0 0 auto;border-radius:9px;background:var(--accent);color:#fff;
      display:grid;place-items:center;font-weight:700;font-size:13px}
.ttl{min-width:0}
.ttl h1{margin:0;font-size:16px;font-weight:650;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ttl p{margin:0;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.icon{flex:0 0 auto;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);
      background:var(--surface);color:var(--muted);display:grid;place-items:center;cursor:pointer;
      -webkit-tap-highlight-color:transparent}
.icon:active{background:var(--bg)}
.icon.spin svg{animation:sp .8s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}

/* ---- 달력 / 목록 ---- */
.views{display:flex;gap:2px;margin:12px 16px 0;padding:3px;background:var(--surface);
       border:1px solid var(--border);border-radius:11px}
.views button{flex:1;font:inherit;font-size:14px;padding:8px 0;border:0;border-radius:8px;
              background:transparent;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent}
.views button[aria-pressed="true"]{background:var(--accent);color:#fff;font-weight:600}

/* ---- 기간 막대 ---- */
.bar{display:flex;align-items:center;gap:4px;padding:12px 16px 6px}
.barmid{flex:1;text-align:center;min-width:0}
.barmid strong{display:block;font-size:16px;font-weight:650;letter-spacing:-.01em;
               white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barmid span{font-size:11.5px;color:var(--faint)}
.step{width:36px;height:36px;flex:0 0 auto;border-radius:10px;border:1px solid var(--border);
      background:var(--surface);color:var(--muted);font-size:20px;line-height:1;cursor:pointer;
      -webkit-tap-highlight-color:transparent}
.step:active{background:var(--bg)}
.today{flex:0 0 auto;margin-left:6px;font:inherit;font-size:13px;padding:8px 12px;border-radius:9px;
       border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer}
/* 지금 보고 있는 기간에 오늘이 없으면 돌아올 길을 눈에 띄게 */
.today.away{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}

.ranges{display:flex;gap:6px;padding:2px 16px 4px}
.ranges button{flex:1;font:inherit;font-size:13.5px;padding:8px 0;border-radius:9px;cursor:pointer;
               border:1px solid var(--border);background:var(--surface);color:var(--muted);
               -webkit-tap-highlight-color:transparent}
.ranges button[aria-pressed="true"]{background:var(--accent-soft);border-color:var(--accent);
                                    color:var(--accent);font-weight:600}

/* ---- 사람 ---- */
.people{display:flex;flex-wrap:wrap;gap:6px;padding:6px 16px 0}
.person-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);
             background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:4px 11px 4px 8px}
.dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:var(--c,#9aa0a8)}

/* ---- 달력 격자 ---- */
.calwrap{padding:8px 16px 0}
.dow{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:5px}
.dow span{text-align:center;font-size:12px;color:var(--muted);padding:2px 0}
.grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cell{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;
  min-height:52px;padding:5px 2px 6px;border-radius:10px;cursor:pointer;
  border:1px solid transparent;background:var(--surface);font:inherit;color:inherit;
  -webkit-tap-highlight-color:transparent;overflow:hidden;
}
.cell.out{background:transparent}
.cell.out .n{color:var(--faint);opacity:.55}
.cell .n{font-size:13.5px;font-variant-numeric:tabular-nums;line-height:1.3}
.cell.today .n{background:var(--accent);color:#fff;border-radius:999px;min-width:22px;padding:0 5px;font-weight:650}
.cell.sel{border-color:var(--accent);background:var(--accent-soft)}
.cell:active{background:var(--bg)}

.dots{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;min-height:8px}
.dots i{width:6px;height:6px;border-radius:50%;background:var(--c,#9aa0a8);display:block}
.dots u{font-size:9.5px;color:var(--faint);text-decoration:none;line-height:1}
.chips{display:none}

/* ---- 고른 날짜 ---- */
.dayview{margin-top:16px}
.dayhead{display:flex;align-items:baseline;gap:8px;margin:0 2px 8px;font-size:13px;color:var(--muted)}
.dayhead .num{font-size:15px;font-weight:650;color:var(--text)}
.dayhead .today{font-size:11px;font-weight:700;color:#fff;background:var(--accent);border:0;
                border-radius:999px;padding:2px 8px;letter-spacing:.02em}

/* ---- 일정 카드 ---- */
main{padding:12px 16px 0}
.daygroup{margin-bottom:18px}
.card{display:flex;width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);
      border-radius:var(--r);margin-bottom:8px;overflow:hidden;cursor:pointer;font:inherit;color:inherit;
      -webkit-tap-highlight-color:transparent;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.card:active{transform:scale(.995)}
.bar-c{width:4px;flex:0 0 auto;background:var(--c,#9aa0a8)}
.body{flex:1;min-width:0;padding:11px 13px}
.row1{display:flex;align-items:baseline;gap:8px;margin-bottom:3px}
.time{font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.time.allday{color:var(--accent)}
.place{font-size:12px;color:var(--muted);background:var(--bg);border-radius:6px;padding:1px 7px;
       white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}
.who{margin-left:auto;font-size:12.5px;color:var(--muted);white-space:nowrap;flex:0 0 auto}
.who.none{color:var(--warn);background:var(--warn-soft);border-radius:6px;padding:1px 7px;font-weight:600}
.content{font-size:14.5px;line-height:1.4;overflow-wrap:anywhere}
.loc{margin-top:3px;font-size:12px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---- 안내 / 빈 상태 ---- */
#notices:not(:empty){padding:10px 16px 0}
.notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;
        background:var(--warn-soft);border:1px solid color-mix(in srgb, var(--warn) 28%, transparent);
        font-size:13.5px;color:var(--warn)}
.notice b{display:block;margin-bottom:2px}
.notice .hint{margin-top:6px;font-size:12.5px;opacity:.85;white-space:pre-line;line-height:1.5}
.notice code{display:inline-block;background:var(--surface);border:1px solid var(--border);border-radius:5px;
             padding:0 5px;font-size:12.5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.empty{text-align:center;color:var(--faint);font-size:14px;padding:40px 0}
.empty.small{padding:22px 0;font-size:13.5px}

/* ---- 상세 ---- */
.sheet-bg{position:fixed;inset:0;background:rgba(9,12,18,.42);z-index:40;animation:fade .15s ease}
@keyframes fade{from{opacity:0}}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;background:var(--surface);
       border-radius:20px 20px 0 0;box-shadow:var(--shadow);
       padding:8px 20px calc(22px + var(--safe-b));max-height:86vh;overflow-y:auto;
       animation:up .22s cubic-bezier(.2,.8,.3,1)}
@keyframes up{from{transform:translateY(100%)}}
.grip{width:38px;height:4px;border-radius:2px;background:var(--border);margin:6px auto 10px}
.sheet .close{position:absolute;top:12px;right:14px;width:32px;height:32px;border-radius:9px;
              border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:14px;cursor:pointer}
.d-who{display:flex;align-items:center;gap:7px;margin:0 0 4px;font-size:13px;color:var(--muted)}
.sheet h2{margin:0 0 16px;font-size:19px;line-height:1.35;letter-spacing:-.01em;overflow-wrap:anywhere}
.d-rows{margin:0 0 20px;display:grid;grid-template-columns:auto 1fr;gap:9px 14px;font-size:14px}
.d-rows dt{color:var(--muted);font-size:13px;white-space:nowrap}
.d-rows dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
.shoot{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:15px;
       font-weight:600;padding:14px;border-radius:12px;border:1px solid var(--accent);
       background:var(--accent);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent}
.shoot:active{opacity:.85}
.soon{margin:8px 0 0;font-size:12.5px;color:var(--faint);text-align:center;line-height:1.45}

/* ---- 넓은 화면: 달력 칸에 제목까지 ---- */
@media (min-width:660px){
  body{max-width:900px;margin:0 auto}
  .cell{min-height:92px;align-items:stretch;padding:6px 6px 7px;gap:4px}
  .cell .n{align-self:flex-start;padding:0 4px}
  .cell.today .n{align-self:flex-start}
  .dots{display:none}
  .chips{display:flex;flex-direction:column;gap:3px;overflow:hidden}
  .minichip{display:flex;align-items:center;gap:4px;font-size:11.5px;line-height:1.35;
            color:var(--text);background:var(--bg);border-radius:5px;padding:1px 5px;
            white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .minichip i{width:6px;height:6px;border-radius:50%;background:var(--c,#9aa0a8);flex:0 0 auto}
  .minichip span{overflow:hidden;text-overflow:ellipsis}
  .more{font-size:10.5px;color:var(--faint);padding-left:5px}
  .sheet{left:50%;transform:translateX(-50%);max-width:560px;border-radius:20px;bottom:24px}
  @keyframes up{from{transform:translate(-50%,100%)}to{transform:translate(-50%,0)}}
}

/* ================= 비용 ================= */
.expwrap{padding:12px 16px 0}
.exptop{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin-bottom:14px}
.sum{font-size:13.5px;color:var(--muted)}
.btn-file{text-align:center}
@media (min-width:520px){
  .exptop{flex-direction:row;align-items:center;gap:12px}
  .sum{flex:1;min-width:0}
  .btn-file{flex:0 0 auto}
}
.sum strong{color:var(--text);font-weight:650;font-size:14.5px}
.sum .need{color:var(--warn);font-weight:600}
.btn-file{
  flex:0 0 auto;font-size:13.5px;font-weight:600;padding:9px 15px;border-radius:10px;cursor:pointer;
  background:var(--accent);color:#fff;border:1px solid var(--accent);-webkit-tap-highlight-color:transparent;
}
.btn-file:active{opacity:.85}
.daysum{margin-left:auto;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}

.card.tx .row1{gap:8px}
.card.tx .amt{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}
.card.tx .cardno{margin-left:auto;font-size:11.5px;color:var(--faint)}
.card.tx .content{font-size:14px;color:var(--muted);margin-top:1px}
.card.tx.done{opacity:.72}
.link{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:12.5px;line-height:1.35}
.link .ic{width:16px;height:16px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;
          font-size:10px;font-weight:700}
.link.ok{color:#15803d}       .link.ok .ic{background:#dcfce7;color:#15803d}
.link.guess{color:var(--accent)} .link.guess .ic{background:var(--accent-soft)}
.link.none{color:var(--faint)}   .link.none .ic{background:var(--bg)}
.link.skip{color:var(--muted)}   .link.skip .ic{background:var(--bg);color:var(--muted)}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .link.ok{color:#5ed08a}
  :root:not([data-theme="light"]) .link.ok .ic{background:#12331f;color:#5ed08a}
}
.empty .sub{margin-top:6px;font-size:12.5px}

/* 열 지정 */
.sheet.wide{max-width:640px}
.maplead{margin:0 0 16px;font-size:13.5px;color:var(--muted)}
.maprow{margin-bottom:9px}
.maprow label{display:flex;align-items:center;gap:10px}
.mapname{flex:0 0 84px;font-size:13px;color:var(--muted)}
.maprow select{
  flex:1;min-width:0;font:inherit;font-size:13.5px;padding:7px 9px;border-radius:8px;
  border:1px solid var(--border);background:var(--surface);color:var(--text);
}
.maphint{display:block;margin:2px 0 0 94px;font-size:11.5px;color:var(--faint)}
.mappreview{margin:16px 0 18px;padding:11px 13px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}
.pvhead{font-size:12px;color:var(--muted);margin-bottom:7px}
.pvrow{display:flex;gap:10px;font-size:12.5px;padding:3px 0;border-top:1px solid var(--line)}
.pvrow:first-of-type{border-top:0}
.pvd{flex:0 0 108px;color:var(--muted);font-variant-numeric:tabular-nums}
.pvm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pva{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:600}
.pvbad{margin-top:6px;font-size:12px;color:var(--warn)}
.primary{
  width:100%;font:inherit;font-size:15px;font-weight:600;padding:13px;border-radius:12px;cursor:pointer;
  background:var(--accent);color:#fff;border:1px solid var(--accent);
}
.primary:disabled{opacity:.5;cursor:default}

/* 일정 고르기 */
.hintline{margin:0 0 12px;font-size:13px;color:var(--muted)}
.opt{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;margin-bottom:7px;border-radius:11px;
     border:1px solid var(--border);background:var(--surface);cursor:pointer}
.opt.on{border-color:var(--accent);background:var(--accent-soft)}
.opt input{margin-top:3px;flex:0 0 auto;accent-color:var(--accent)}
.optbody{display:flex;flex-direction:column;gap:2px;min-width:0}
.optt{font-size:14.5px;overflow-wrap:anywhere}
.optp{font-size:12px;color:var(--muted)}
.optw{font-size:11.5px;color:var(--faint)}
.notelabel{display:block;margin:14px 0 16px;font-size:12.5px;color:var(--muted)}
.notelabel input{
  display:block;width:100%;margin-top:5px;font:inherit;font-size:14px;padding:9px 11px;border-radius:9px;
  border:1px solid var(--border);background:var(--surface);color:var(--text);
}

/* ================= 영수증 ================= */
.btn-file.ghost{background:var(--surface);color:var(--accent);border-color:var(--border)}

/* 어느 화면에서나 보이는 [영수증] 버튼 */
.fab{
  position:fixed;z-index:30;right:16px;bottom:calc(18px + var(--safe-b));
  display:flex;align-items:center;gap:7px;font:inherit;font-size:15px;font-weight:650;
  padding:13px 19px 13px 16px;border-radius:999px;border:0;cursor:pointer;
  background:var(--accent);color:#fff;box-shadow:0 6px 20px rgba(47,111,235,.35), 0 1px 3px rgba(16,24,40,.2);
  -webkit-tap-highlight-color:transparent;
}
.fab:active{transform:scale(.97)}
.fab:disabled{opacity:.6}
@media (min-width:932px){ .fab{right:calc((100vw - 900px) / 2 + 16px)} }

/* 진행·결과 알림 */
.toast{
  position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:calc(86px + var(--safe-b));
  display:flex;align-items:center;gap:10px;max-width:min(92vw,460px);
  padding:11px 16px;border-radius:12px;font-size:14px;line-height:1.4;
  background:#1f2937;color:#fff;box-shadow:var(--shadow);animation:fade .15s ease;
}
.toast .spin-dot{display:none;width:15px;height:15px;flex:0 0 auto;border-radius:50%;
                 border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:sp .8s linear infinite}
.toast.busy .spin-dot{display:block}
.toast.good{background:#166534}
.toast.bad{background:#9a3412}

/* 일정 카드 · 상세의 비용 */
.spentline{display:inline-flex;align-items:center;gap:5px;margin-top:6px;font-size:12px;color:#15803d;
           background:#ecfdf3;border-radius:6px;padding:2px 8px 2px 4px;font-variant-numeric:tabular-nums}
.spentline .sic{width:15px;height:15px;border-radius:50%;background:#15803d;color:#fff;font-size:9.5px;
                font-weight:700;display:grid;place-items:center}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .spentline{background:#12331f;color:#5ed08a}
  :root:not([data-theme="light"]) .spentline .sic{background:#5ed08a;color:#12331f}
}
.spent{margin:-4px 0 16px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--bg)}
.sphead{display:flex;align-items:baseline;gap:8px;font-size:13px;color:var(--muted);margin-bottom:6px}
.sphead b{margin-left:auto;color:var(--text);font-variant-numeric:tabular-nums}
.sprow{display:flex;align-items:center;gap:10px;width:100%;padding:6px 0;border:0;border-top:1px solid var(--line);
       background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}
.sprow:first-of-type{border-top:0}
.sprow img,.spnoimg{width:34px;height:34px;flex:0 0 auto;border-radius:7px;object-fit:cover;background:var(--surface);
                    border:1px solid var(--border)}
.spnoimg{display:grid;place-items:center;font-size:10.5px;color:var(--faint)}
.spm{flex:1;min-width:0;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.spa{flex:0 0 auto;font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums}

/* 비용 목록의 결제 카드 */
.card.tx{align-items:stretch}
.card.tx .amt.need{color:var(--warn);font-size:13.5px}
.srcchip{font-size:11px;color:var(--muted);background:var(--bg);border-radius:5px;padding:1px 6px;white-space:nowrap}
.autotag{flex:0 0 auto;font-size:10.5px;font-weight:700;color:var(--accent);background:var(--accent-soft);
         border-radius:5px;padding:0 5px;margin-left:2px}
.txthumb{position:relative;flex:0 0 auto;width:58px;margin:9px 9px 9px 0;border-radius:8px;overflow:hidden;
         background:var(--bg);border:1px solid var(--border)}
.txthumb img{display:block;width:100%;height:100%;object-fit:cover}
.txthumb b{position:absolute;right:3px;bottom:3px;font-size:10px;color:#fff;background:rgba(0,0,0,.6);
           border-radius:5px;padding:0 4px}

/* 확인 시트의 영수증 영역 */
#pickReceipt:not(:empty){margin:-6px 0 14px}
.rcmsg{margin:0 0 10px;padding:9px 11px;border-radius:10px;font-size:13px;line-height:1.5}
.rcmsg.ok{background:var(--accent-soft);color:var(--accent)}
.rcmsg.warn{background:var(--warn-soft);color:var(--warn)}
.rcphotos{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;margin-bottom:10px}
.rcph{position:relative;flex:0 0 auto}
.rcph img{display:block;height:132px;max-width:200px;border-radius:9px;border:1px solid var(--border);object-fit:cover;background:var(--bg)}
.rcdel{position:absolute;top:5px;right:5px;min-width:26px;height:26px;padding:0 7px;border-radius:13px;border:0;
       background:rgba(0,0,0,.6);color:#fff;font:inherit;font-size:12px;cursor:pointer}
.rcdel.arm{background:#b91c1c}
.rcfields{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin-bottom:6px}
.rcf{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);min-width:0}
.rcf.wide{grid-column:1 / -1}
.rcf input{font:inherit;font-size:15px;padding:8px 10px;border-radius:9px;border:1px solid var(--border);
           background:var(--surface);color:var(--text);min-width:0;width:100%}
.rcf.need span{color:var(--warn);font-weight:600}
.rcf.need input{border-color:var(--warn);background:var(--warn-soft)}
.rcitems{margin:6px 0 0;font-size:12px;color:var(--faint);line-height:1.5}
.picklabel{margin:4px 0 8px;font-size:12.5px;color:var(--muted)}
.pickerr{margin:0 0 10px;font-size:13px;color:var(--warn);font-weight:600}

/* 뒤에서 읽는 중 */
.card.tx .amt.pend{color:var(--muted);font-size:13.5px;font-weight:500}
.rcmsg.pend{background:var(--bg);color:var(--muted);border:1px dashed var(--border)}
.rcmsg.pend::before{content:"";display:inline-block;width:9px;height:9px;margin:0 7px 0 1px;border-radius:50%;
  border:2px solid var(--muted);border-top-color:transparent;vertical-align:-1px;animation:rcspin .9s linear infinite}
@keyframes rcspin{to{transform:rotate(360deg)}}

/* 올린 파일 관리 */
.srcbtn{font-size:13px}
.srcrow{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}
.srcinfo{flex:1;min-width:0}
.srcname{font-weight:600;font-size:14.5px;word-break:break-all}
.srcsub{font-size:12.5px;color:var(--muted);margin-top:2px}
.srcdel{flex:0 0 auto;font:inherit;font-size:13px;padding:7px 11px;border-radius:9px;border:1px solid var(--border);background:var(--surface);color:var(--warn)}
.srcdel.arm{background:#b91c1c;color:#fff;border-color:#b91c1c}
.srcdel:disabled{opacity:.5}
