:root { --td-ink:#191F28; --td-sub:#4E5968; --td-line:#E5E8EB; --td-blue:#0B5BD3; --td-bg:#F2F4F6; }
* { box-sizing:border-box; }
body.tracker-detail-page { margin:0; background:var(--td-bg); color:var(--td-ink); font-family:'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, sans-serif; word-break:keep-all; }
.tracker-detail-main { width:min(100% - 32px, 760px); margin:0 auto; padding:32px 0 88px; }
.tracker-detail-heading { margin:0 0 18px; }
.tracker-detail-heading h1 { margin:0; font-size:clamp(27px, 6vw, 38px); font-weight:900; line-height:1.28; letter-spacing:-.04em; }
.tracker-detail-heading p { margin:9px 0 0; color:var(--td-sub); font-size:16px; font-weight:650; line-height:1.65; }
.tracker-detail-status, .tracker-detail-card { padding:20px; border:1px solid var(--td-line); border-radius:16px; background:#fff; }
.tracker-detail-status { color:var(--td-sub); font-size:15px; font-weight:700; line-height:1.65; }
.tracker-detail-list { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.tracker-detail-card h2 { margin:0 0 10px; font-size:17px; line-height:1.45; }
.tracker-detail-card p, .tracker-detail-card dd { margin:0; color:var(--td-sub); font-size:15px; line-height:1.7; overflow-wrap:anywhere; }
.tracker-detail-card dl { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 16px; margin:0; }
.tracker-detail-card dt { color:var(--td-sub); font-size:14px; font-weight:700; }
.tracker-detail-card dd { color:var(--td-ink); font-weight:800; text-align:right; }
.tracker-detail-link { display:inline-flex; align-items:center; min-height:46px; margin-top:14px; padding:10px 15px; border:1px solid var(--td-blue); border-radius:12px; background:#fff; color:#0A4FB8; font-size:15px; font-weight:850; line-height:1.45; text-decoration:none; }
.tracker-detail-link:focus-visible { outline:3px solid rgba(11,91,211,.3); outline-offset:3px; }
.tracker-detail-stack, .tracker-detail-list, .tracker-detail-badges, .tracker-detail-season, .tracker-detail-rival, .tracker-detail-records, .tracker-detail-hall { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.tracker-detail-card-head, .tracker-detail-section-head { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:7px 16px; }
.tracker-detail-card-head h2, .tracker-detail-section-head h2 { margin:0; }
.tracker-detail-card-head strong { color:#073B7A; font-size:18px; font-weight:900; }
.tracker-detail-section-head p { margin:0; color:var(--td-sub); font-size:14px; font-weight:700; line-height:1.55; }
.tracker-detail-card time { display:block; margin-bottom:5px; color:var(--td-sub); font-size:13px; font-weight:750; }
.tracker-detail-fold { margin-top:15px; border-top:1px solid var(--td-line); }
.tracker-detail-fold summary { min-height:44px; display:flex; align-items:center; cursor:pointer; color:#073B7A; font-size:15px; font-weight:850; line-height:1.5; }
.tracker-detail-fold summary::marker { color:#073B7A; }
.tracker-detail-history { display:grid; gap:7px; margin:0; padding:0; list-style:none; }
.tracker-detail-history li { display:flex; justify-content:space-between; gap:12px; color:var(--td-sub); font-size:14px; line-height:1.5; }
.tracker-detail-history b { color:var(--td-ink); }
.tracker-detail-hall { padding:20px; border:1px solid var(--td-line); border-radius:16px; background:#fff; }
.tracker-detail-hall-list { display:grid; gap:7px; margin:0; padding:0; list-style:none; }
.tracker-detail-hall-list li { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:10px; align-items:center; padding:11px 0; border-top:1px solid var(--td-line); font-size:14px; line-height:1.45; }
.tracker-detail-hall-list li.is-me { color:#073B7A; font-weight:850; }
.tracker-detail-hall-list em { color:var(--td-sub); font-size:13px; font-style:normal; white-space:normal; text-align:right; }
.tracker-detail-badges { grid-template-columns:repeat(auto-fit, minmax(190px, 1fr)); }
.tracker-detail-badges .is-earned { border-color:#8ABDE8; background:#F5FAFF; }
.tracker-detail-setting { display:grid; gap:12px; margin-top:18px; }
.tracker-detail-setting h3 { margin:8px 0 0; font-size:15px; line-height:1.45; }
.tracker-detail-setting label { display:grid; gap:6px; color:var(--td-sub); font-size:14px; font-weight:750; line-height:1.45; }
.tracker-detail-setting :is(select,input) { width:100%; min-height:46px; padding:10px 12px; border:1px solid #AEB8C3; border-radius:10px; background:#fff; color:var(--td-ink); font:inherit; }
.tracker-detail-season-options { display:flex; flex-wrap:wrap; gap:8px; }
.tracker-detail-season-options button, .tracker-detail-custom button { min-height:44px; padding:9px 12px; border:1px solid #8ABDE8; border-radius:10px; background:#fff; color:#073B7A; font:inherit; font-size:14px; font-weight:800; line-height:1.45; cursor:pointer; }
.tracker-detail-season-options button[aria-pressed="false"] { border-color:var(--td-line); color:var(--td-sub); }
/* 켜짐/꺼짐 알약 (2026-08-19 클로드디자인 최종검수) — 정본 상태쌍 #E7F5EE/#065F46 */
.tracker-detail-season-options .td-season-pill { display:inline-block; margin-left:6px; border-radius:999px; padding:2px 8px; font-size:12px; font-weight:800; white-space:nowrap; }
.tracker-detail-season-options .td-season-pill.on { background:#E7F5EE; color:#065F46; }
.tracker-detail-season-options .td-season-pill.off { background:#F2F4F6; color:#4E5968; }
.tracker-detail-custom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.tracker-detail-custom p { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin:0; padding-bottom:8px; border-bottom:1px solid var(--td-line); color:var(--td-sub); font-size:14px; line-height:1.5; }
.tracker-detail-custom button { width:fit-content; }
.tracker-detail-primary { min-height:48px; padding:11px 15px; border:1px solid #073B7A; border-radius:11px; background:#073B7A; color:#fff; font:inherit; font-size:15px; font-weight:850; line-height:1.45; cursor:pointer; }
.tracker-detail-primary:focus-visible, .tracker-detail-setting button:focus-visible, .tracker-detail-secondary:focus-visible, .tracker-detail-text-button:focus-visible { outline:3px solid rgba(11,91,211,.3); outline-offset:3px; }
.tracker-detail-rival-register { display:grid; gap:12px; }
.tracker-detail-rival-register h2, .tracker-detail-recommendation h2 { margin:0; }
.tracker-detail-rival-register label { display:grid; gap:6px; color:var(--td-sub); font-size:14px; font-weight:750; line-height:1.45; }
.tracker-detail-rival-register input { width:100%; min-height:48px; padding:10px 12px; border:1px solid #AEB8C3; border-radius:10px; background:#fff; color:var(--td-ink); font:inherit; line-height:1.45; }
.tracker-detail-recommendation { display:grid; gap:8px; margin-top:12px; padding:18px; border:1px solid #8ABDE8; border-radius:16px; background:#F5FAFF; }
.tracker-detail-recommendation p, .tracker-detail-recommendation span { margin:0; color:var(--td-sub); font-size:14px; font-weight:700; line-height:1.55; }
.tracker-detail-recommendation > p:first-child { color:#073B7A; font-weight:850; }
.tracker-detail-secondary, .tracker-detail-text-button { width:fit-content; min-height:44px; padding:9px 13px; border:1px solid #8ABDE8; border-radius:10px; background:#fff; color:#073B7A; font:inherit; font-size:14px; font-weight:850; line-height:1.45; cursor:pointer; }
.tracker-detail-secondary { margin:2px 0 2px auto; }
.tracker-detail-text-button { margin-top:13px; border-color:transparent; padding-inline:0; text-decoration:underline; text-underline-offset:3px; }
.tracker-detail-text-button:disabled { color:var(--td-sub); cursor:wait; }
.sc-finish-dot { display:inline-block; width:18px; height:18px; vertical-align:middle; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.tracker-self-check-card { display:grid; gap:14px; padding:22px; border:1px solid var(--td-line); border-radius:16px; background:#fff; }
.tracker-self-check-card h2, .tracker-self-check-card p { margin:0; }
.tracker-self-check-card h2 { font-size:20px; line-height:1.45; }
.tracker-self-check-card > p:not(.tracker-self-check-count), .tracker-self-check-card label { color:var(--td-sub); font-size:15px; font-weight:650; line-height:1.65; }
.tracker-self-check-count { color:#073B7A; font-size:14px; font-weight:850; line-height:1.45; }
.tracker-self-check-card label { display:grid; gap:6px; font-weight:750; }
.tracker-self-check-card input { width:100%; min-height:48px; padding:10px 12px; border:1px solid #AEB8C3; border-radius:10px; background:#fff; color:var(--td-ink); font:inherit; line-height:1.45; }
.tracker-self-check-options { display:flex; flex-direction:column; gap:8px; } /* 시안 Self Check(2026-08-18): 보기는 세로 목록 */
.tracker-self-check-progress { height:6px; border-radius:999px; background:#F2F4F6; overflow:hidden; }
.tracker-self-check-progress i { display:block; height:100%; border-radius:999px; background:#0B5BD3; }
.tracker-self-check-card [data-self-check-status].is-saving::before { content:''; display:inline-block; width:14px; height:14px; margin-right:8px; vertical-align:-2px; border-radius:50%; border:2px solid #E5E8EB; border-top-color:#0B5BD3; animation:euncoach-spin .8s linear infinite; }
@keyframes euncoach-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .tracker-self-check-card [data-self-check-status].is-saving::before { animation:none; } }
.tracker-self-check-card [data-self-check-status].is-fail { padding:12px 14px; border-radius:12px; background:#FDECEC; color:#9B1C22; font-weight:700; }
.tracker-self-check-gate { text-align:left; }
.tracker-self-check-kakao { display:flex; align-items:center; justify-content:center; min-height:52px; border-radius:14px; background:#FEE500; color:#191F28; font-size:16px; font-weight:800; text-decoration:none; }
.tracker-self-check-options button { min-height:44px; padding:9px 12px; border:1px solid #8ABDE8; border-radius:10px; background:#fff; color:#073B7A; font:inherit; font-size:14px; font-weight:800; line-height:1.45; cursor:pointer; }
.tracker-self-check-options button[aria-pressed="true"] { border-color:#073B7A; background:#EAF2FE; }
/* 상시 카드 (audit-satellites ⓒ) — 접기 토글 폐기, 카드 셸만 */
#season-fold { overflow:hidden; border:1px solid var(--td-line); border-radius:16px; background:#fff; }
#summary-season { padding:18px; }
/* audit-tracker-body 1 (2026-08-16) — 시즌 카드 시안 v3 문법(알약·진행바 n/m·회색 박스·전체 보기 접기)으로 교체 */
#summary-season .season-card { display:grid; gap:12px; }
#summary-season .sc-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
#summary-season .sc-title { margin:0; font-size:16px; font-weight:800; }
#summary-season .sc-pill { background:#EAF2FE; color:#1D4F9C; font-size:12.5px; font-weight:800; border-radius:999px; padding:3px 10px; white-space:nowrap; }
#summary-season .sc-line { margin:0; color:var(--td-sub); font-size:14px; font-weight:650; line-height:1.6; word-break:keep-all; }
#summary-season .sc-progress-row { display:flex; align-items:center; gap:10px; }
#summary-season .sc-progress { flex:1; height:8px; overflow:hidden; border-radius:999px; background:#F2F4F6; }
#summary-season .sc-progress span { display:block; height:100%; background:#0B5BD3; transition:width 180ms ease-out; }
#summary-season .sc-progress-num { font-size:12.5px; font-weight:800; color:#0B5BD3; white-space:nowrap; }
#summary-season .sc-todo, #summary-season .sc-alldone { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; border-radius:12px; padding:14px 16px; }
#summary-season .sc-todo { background:#F2F4F6; }
#summary-season .sc-alldone { background:#E7F5EE; }
#summary-season .sc-todo-name { min-width:0; font-size:14.5px; font-weight:700; word-break:keep-all; }
#summary-season .sc-alldone > span { min-width:0; font-size:14.5px; font-weight:800; color:#065F46; word-break:keep-all; }
#summary-season .sc-do { min-height:44px; padding:8px 14px; border:1.5px solid #0B5BD3; border-radius:10px; background:#fff; color:#0B5BD3; font:inherit; font-size:13.5px; font-weight:800; line-height:1.2; cursor:pointer; white-space:nowrap; flex-shrink:0; }
#summary-season .sc-do.sm { min-height:44px; padding:7px 12px; font-size:13px; }
#summary-season .sc-do:disabled { border-color:#E5E8EB; background:#F2F4F6; color:#6B7684; cursor:not-allowed; }
#summary-season .sc-undo-text { border:0; background:none; cursor:pointer; font:inherit; font-size:12.5px; font-weight:700; color:#6B7684; padding:4px; white-space:nowrap; flex-shrink:0; }
#summary-season .sc-list-toggle { width:100%; min-height:46px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:0; border-top:1px solid var(--td-line); background:none; padding:13px 0 2px; font:inherit; text-align:left; cursor:pointer; }
#summary-season .sc-list-toggle .lt { font-size:14px; font-weight:700; color:var(--td-sub); }
#summary-season .sc-list-toggle .lv { font-size:13.5px; font-weight:800; color:#0B5BD3; flex-shrink:0; }
#summary-season .sc-list { display:flex; flex-direction:column; gap:6px; }
#summary-season .sc-list[hidden] { display:none; }
#summary-season .sc-row { display:flex; align-items:center; justify-content:space-between; gap:10px; background:#F9FAFB; border-radius:12px; padding:12px 14px; }
#summary-season .sc-row-main { min-width:0; display:flex; align-items:flex-start; gap:8px; }
#summary-season .sc-mark { width:14px; flex-shrink:0; font-size:13px; font-weight:900; color:#6B7684; }
#summary-season .sc-row.checked .sc-mark { color:#065F46; }
#summary-season .sc-row.current .sc-mark { color:#0B5BD3; }
#summary-season .sc-row-text { min-width:0; }
#summary-season .sc-row-title { display:block; font-size:14px; font-weight:700; word-break:keep-all; overflow-wrap:anywhere; }
#summary-season .sc-row.checked .sc-row-title { color:#6B7684; }
#summary-season .sc-row-when { display:block; font-size:12.5px; color:#6B7684; }
#summary-season .sc-next { font-size:12.5px; color:#6B7684; line-height:1.55; word-break:keep-all; }
#summary-season .sc-next b { color:#191F28; font-weight:800; }
#summary-season .sc-save-message { min-height:18px; color:var(--td-sub); font-size:13px; font-weight:650; line-height:1.6; }
@media (prefers-reduced-motion:reduce) { #summary-season .sc-progress span, #season-fold-toggle { transition:none !important; } }
@media (max-width:520px) { .tracker-detail-main { width:min(100% - 24px, 760px); padding-top:22px; } .tracker-detail-card, .tracker-detail-status { padding:17px; } }

/* ── 배지 4블록 (audit-satellites ⓑ · 시안 Badges) ── */
/* 요약 3칸 = 한 줄 고정 (클로드디자인 deliver-0819 Badges 수정 — auto-fit은 칸 수가 뜻을 가지는 요약에 쓰지 않는다: 390px에서 1열로 쌓이던 시안 결함) */
.td-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.td-cell { border-radius:14px; padding:14px 12px; min-width:0; }
.td-cell p { margin:0; font-size:12.5px; font-weight:800; color:#6B7684; }
.td-cell b { display:block; margin-top:4px; font-size:24px; font-weight:900; letter-spacing:-0.03em; }
.td-cell b small { font-size:14px; color:#6B7684; font-weight:800; }
.td-cell span { display:block; margin-top:2px; font-size:12px; font-weight:800; }
.td-cell-pos { background:#E7F5EE; } .td-cell-pos p, .td-cell-pos b { color:#065F46; }
.td-cell-act { background:#EAF2FE; } .td-cell-act p, .td-cell-act b, .td-cell-act span { color:#1D4F9C; }
.td-cell-neutral { background:#F2F4F6; }
.td-stage-note { margin:12px 0 0; font-size:13px; color:#4E5968; }
/* 배지함 빈 상태 (Badges.dc boxEmpty · deliver-0819) */
.td-empty-box { background:#F2F4F6; border-radius:12px; padding:16px; margin-bottom:14px; display:flex; flex-direction:column; gap:6px; }
.td-empty-title { margin:0; font-size:15px; font-weight:800; word-break:keep-all; }
.td-empty-desc { margin:0; font-size:13.5px; color:#4E5968; line-height:1.6; word-break:keep-all; }
.td-empty-cta { align-self:flex-start; display:flex; align-items:center; min-height:44px; font-size:14.5px; font-weight:800; color:#0B5BD3; text-decoration:none; }
/* 화살표(›·→) 붙은 글자 링크 = 버튼을 링크로 쓴 것 → 세로만 44px, 가로는 글자 폭 그대로 (deliver-0819 2 판정) */
.td-arrow-link, .link-arrow { display:inline-flex; align-items:center; min-height:44px; align-self:flex-start; }
.td-box-cap { margin:14px 0 8px; font-size:12.5px; font-weight:800; color:#6B7684; }
.td-box-cap:first-of-type { margin-top:4px; }
.td-chip-row { display:flex; gap:8px; flex-wrap:wrap; }
.td-chip { background:#F2F4F6; color:#6B7684; font-size:13px; font-weight:800; border-radius:999px; padding:8px 14px; white-space:nowrap; }
.td-chip-earned { background:#E7F5EE; color:#065F46; }
.td-soon-list { display:flex; flex-direction:column; gap:8px; }
.td-soon-row { display:flex; justify-content:space-between; align-items:center; gap:10px; background:#F2F4F6; border-radius:12px; padding:12px 14px; min-height:44px; }
.td-soon-row span { font-size:14px; font-weight:700; min-width:0; }
.td-soon-row b { font-size:13px; font-weight:800; color:#0B5BD3; white-space:nowrap; }
.td-badge-all { margin-top:14px; }
.td-hall-head h2 { margin:0; font-size:16px; font-weight:800; }
.td-hall-head p { margin:4px 0 12px; font-size:12.5px; color:#6B7684; }
.td-hall-counting { background:#F2F4F6; border-radius:14px; padding:24px; text-align:center; }
.td-hall-counting p { margin:0; font-size:14.5px; font-weight:700; color:#4E5968; }
.td-hall-counting span { display:block; margin-top:6px; font-size:13px; color:#6B7684; }
.td-hall-rows { display:flex; flex-direction:column; gap:4px; }
.td-hall-row { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:11px 12px; border-radius:10px; background:#F9FAFB; }
.td-hall-row.is-me { background:#EAF2FE; }
.td-hall-name { min-width:0; display:flex; align-items:center; gap:10px; }
.td-hall-name b { font-size:14px; flex-shrink:0; color:#0B5BD3; }
.td-hall-name span { font-size:14.5px; font-weight:700; min-width:0; word-break:keep-all; }
.td-hall-row em { font-size:13.5px; font-weight:800; color:#4E5968; font-style:normal; white-space:nowrap; }
.td-hall-me { background:#EAF2FE; border-radius:14px; padding:14px 16px; margin-top:10px; }
.td-hall-me p { margin:0; font-size:14px; font-weight:800; color:#1D4F9C; }
.td-hall-reward { margin:12px 0 0; font-size:12.5px; color:#6B7684; }

/* ── 키워드 줄 목록 (audit-satellites ⓓ · 시안 Keywords) ── */
.td-kw-card { padding:10px 24px 20px; }
.td-kw-summary { margin:10px 0 0; font-size:12.5px; font-weight:800; color:#6B7684; }
.td-kw-row { border-top:1px solid var(--td-line); margin-top:12px; padding-top:3px; }
.td-kw-row:first-of-type { border-top:0; margin-top:0; }
.td-kw-line { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px 0; flex-wrap:wrap; }
.td-kw-name { min-width:0; }
.td-kw-name b { display:block; font-size:15.5px; font-weight:700; word-break:keep-all; }
.td-kw-name span { display:block; font-size:12.5px; color:#6B7684; }
.td-kw-side { display:flex; align-items:center; gap:8px; flex-shrink:0; flex-wrap:wrap; }
.td-kw-side > b { font-size:16px; font-weight:800; white-space:nowrap; }
.td-kw-chip { font-size:12.5px; font-weight:800; border-radius:999px; padding:2px 0; width:52px; text-align:center; white-space:nowrap; }
.td-kw-chip-up { background:#E7F5EE; color:#065F46; }
.td-kw-chip-down { background:#FDECEC; color:#9B1C22; }
.td-kw-chip-flat { background:#F2F4F6; color:#6B7684; }
.td-kw-detail-btn, .td-kw-pick { border:0; background:none; cursor:pointer; font-family:inherit; font-size:13px; font-weight:800; color:#0B5BD3; padding:6px; min-height:44px; }
.td-kw-pick { color:#4E5968; }
.td-kw-primary { background:#EAF2FE; color:#1D4F9C; font-size:11.5px; font-weight:800; border-radius:999px; padding:2px 9px; white-space:nowrap; }
.td-kw-detail { background:#F2F4F6; border-radius:14px; padding:18px; margin:0 0 14px; }
.td-kw-detail[hidden] { display:none; }
.td-kw-graph { width:100%; height:92px; display:block; }
.td-kw-labels { display:flex; justify-content:space-between; font-size:12.5px; color:#6B7684; font-weight:700; margin-top:2px; }
.td-kw-wait { background:#fff; border:1.5px dashed #E5E8EB; border-radius:12px; padding:18px; display:flex; align-items:center; gap:14px; }
.td-kw-wait-icon { width:52px; height:52px; border-radius:14px; background:#EAF2FE; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.td-kw-wait b { display:block; font-size:15.5px; font-weight:800; word-break:keep-all; }
.td-kw-wait span span { display:block; font-size:13.5px; color:#4E5968; margin-top:3px; word-break:keep-all; }
.td-kw-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:14px; }
.td-kw-stats div { background:#fff; border-radius:12px; padding:12px; }
.td-kw-stats p { margin:0; font-size:12px; font-weight:800; color:#6B7684; }
.td-kw-stats b { display:block; margin-top:4px; font-size:17px; font-weight:900; }
.td-kw-message { margin:0 0 10px; font-size:12.5px; font-weight:700; color:#4E5968; min-height:0; }
.td-kw-message:empty { display:none; }

/* ── 기록 4블록 (audit-rival-mission · 시안 Mission) ── */
.td-ms-stat-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr)); gap:10px; }
.td-ms-stat { background:#F2F4F6; border-radius:14px; padding:14px; }
.td-ms-stat p { margin:0; font-size:12.5px; font-weight:800; color:#6B7684; }
.td-ms-stat b { display:block; margin-top:4px; font-size:22px; font-weight:900; letter-spacing:-0.03em; }
.td-ms-records { padding:10px 24px 14px; }
.td-ms-records-head { display:flex; justify-content:space-between; align-items:baseline; gap:10px; padding:10px 0 4px; flex-wrap:wrap; }
.td-ms-records-head h2 { margin:0; font-size:16px; font-weight:800; }
.td-ms-records-head span { font-size:12.5px; font-weight:800; color:#6B7684; white-space:nowrap; }
.td-ms-row { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:13px 0; border-top:1px solid #E5E8EB; }
.td-ms-row p { margin:0; font-size:15px; font-weight:700; min-width:0; word-break:keep-all; }
.td-ms-row span { font-size:12.5px; color:#6B7684; white-space:nowrap; }
.td-ms-more { display:block; margin:6px auto 0; border:0; background:none; cursor:pointer; font-family:inherit; font-size:14px; font-weight:800; color:#0B5BD3; padding:10px; min-height:44px; }
.td-ms-nudge { background:#EAF2FE; border-radius:16px; padding:18px 20px; display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; }
.td-ms-nudge b { display:block; font-size:15px; font-weight:800; color:#1D4F9C; }
.td-ms-nudge span { display:block; font-size:13.5px; color:#1D4F9C; margin-top:2px; word-break:keep-all; }
.td-ms-cta { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 20px; border-radius:12px; background:#0B5BD3; color:#fff; font-size:15px; font-weight:800; text-decoration:none; white-space:nowrap; flex-shrink:0; }
.td-ms-cta:hover { background:#1D4F9C; }
.td-ms-empty { display:flex; flex-direction:column; align-items:center; gap:12px; padding:32px 24px; text-align:center; }
.td-ms-empty h2 { margin:0; font-size:19px; font-weight:900; letter-spacing:-0.02em; }
.td-ms-empty p { margin:0; font-size:14.5px; color:#4E5968; }
.td-ms-empty-icon { width:56px; height:56px; border-radius:16px; background:#EAF2FE; display:flex; align-items:center; justify-content:center; }
.td-ms-empty-box { background:#F2F4F6; border-radius:14px; padding:14px 16px; font-size:13.5px; color:#4E5968; word-break:keep-all; }
.td-ms-empty .td-ms-cta { min-height:52px; width:100%; }

/* ── 라이벌 5블록 (audit-rival-mission · 시안 Rival) ── */
.td-rv-hero { padding:28px 24px 24px; }
.td-rv-eyebrow { margin:0 0 10px; font-size:13px; font-weight:800; color:#0B5BD3; letter-spacing:0.06em; }
.td-rv-hero h1 { margin:0 0 12px; font-size:24px; font-weight:900; letter-spacing:-0.025em; line-height:1.4; }
.td-rv-lede { margin:0 0 20px; font-size:16px; color:#4E5968; line-height:1.75; }
.td-rv-preview { border-top:1px solid #F2F4F6; padding-top:16px; margin-bottom:16px; }
.td-rv-preview > p { margin:0 0 10px; font-size:12.5px; font-weight:800; color:#6B7684; }
.td-rv-preview-row { display:flex; align-items:flex-start; gap:10px; margin-bottom:8px; }
.td-rv-no { width:20px; height:20px; border-radius:7px; background:#EAF2FE; color:#0B5BD3; font-size:11.5px; font-weight:900; display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:3px; }
.td-rv-preview-row > span:last-child { font-size:15px; line-height:1.6; min-width:0; }
.td-rv-meta { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:16px; }
.td-rv-meta > span:first-child { font-size:13px; font-weight:800; color:#6B7684; }
.td-rv-win { background:#E7F5EE; color:#065F46; font-size:13px; font-weight:800; border-radius:999px; padding:4px 12px; white-space:nowrap; }
.td-rv-vs { display:flex; align-items:stretch; gap:10px; margin-bottom:14px; }
.td-rv-vs-me, .td-rv-vs-them { flex:1; min-width:0; border-radius:16px; padding:16px 14px; text-align:center; }
.td-rv-vs-me { background:#EAF2FE; }
.td-rv-vs-them { background:#F2F4F6; }
.td-rv-vs-me p { margin:0; font-size:12px; font-weight:800; color:#1D4F9C; }
.td-rv-vs-them p { margin:0; font-size:12px; font-weight:800; color:#6B7684; }
.td-rv-vs b { display:block; margin-top:6px; font-size:17px; font-weight:900; line-height:1.4; word-break:keep-all; }
.td-rv-vs-mark { display:flex; align-items:center; justify-content:center; width:34px; flex-shrink:0; font-size:14px; font-weight:900; color:#6B7684; }
.td-rv-none h1 { margin:0 0 8px; font-size:24px; font-weight:900; letter-spacing:-0.025em; line-height:1.4; }
.td-rv-none p { margin:0; font-size:15px; color:#4E5968; line-height:1.7; }
.td-rv-section { margin-top:12px; }
.td-rv-sec-head { display:flex; align-items:center; gap:10px; margin-bottom:4px; }
.td-rv-secno { width:26px; height:26px; border-radius:9px; background:#EAF2FE; color:#0B5BD3; font-size:13px; font-weight:900; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.td-rv-sec-head h2 { margin:0; font-size:17.5px; font-weight:800; }
.td-rv-sec-sub { margin:0 0 6px; font-size:14px; color:#6B7684; padding-left:36px; }
.td-rv-cols { display:flex; justify-content:flex-end; gap:12px; padding:6px 0 2px; }
.td-rv-col-me { width:52px; text-align:center; font-size:11.5px; font-weight:800; color:#1D4F9C; }
.td-rv-col-them { width:52px; text-align:center; font-size:11.5px; font-weight:800; color:#6B7684; }
.td-rv-col-pad { width:76px; }
.td-rv-row { padding:14px 0; border-top:1px solid #F2F4F6; display:flex; justify-content:space-between; align-items:center; gap:12px; }
.td-rv-kw { min-width:0; flex:1; }
.td-rv-kw b { display:block; font-size:15.5px; font-weight:800; line-height:1.45; word-break:keep-all; }
.td-rv-anchor { background:#EAF2FE; color:#1D4F9C; font-size:11.5px; font-weight:800; border-radius:999px; padding:2px 8px; margin-left:7px; white-space:nowrap; }
.td-rv-cells { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.td-rv-mine { width:52px; text-align:center; font-size:16px; font-weight:900; white-space:nowrap; }
.td-rv-theirs { width:52px; text-align:center; font-size:15px; font-weight:700; color:#6B7684; white-space:nowrap; }
.td-rv-chip { width:76px; text-align:center; font-size:12.5px; font-weight:800; border-radius:999px; padding:4px 0; white-space:nowrap; }
.td-rv-chip-win { background:#E7F5EE; color:#065F46; }
.td-rv-chip-lose { background:#FDECEC; color:#9B1C22; }
.td-rv-chip-flat { background:#F2F4F6; color:#4E5968; }
.td-rv-stat-row { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:15px 0 8px; border-top:1px solid #F2F4F6; }
.td-rv-stat-row b { font-size:15.5px; font-weight:800; min-width:0; }
.td-rv-stat-nums { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.td-rv-bars { display:flex; gap:4px; height:7px; }
.td-rv-bars i { border-radius:999px; background:#E5E8EB; }
.td-rv-bars i.mine { background:#0B5BD3; }
.td-rv-bar-note { margin:6px 0 0; font-size:12px; color:#6B7684; }

/* listOpen — 답한 내용 목록 (시안 Self Check 2026-08-18) */
.tracker-self-check-actions { display:grid; gap:10px; }
.tracker-self-check-list-link { justify-self:start; background:none; border:0; padding:0; font:inherit; cursor:pointer; }
.tracker-self-check-answers { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.tracker-self-check-answer { display:grid; grid-template-columns:1fr auto; gap:4px 12px; align-items:center; padding:12px 14px; border:1px solid var(--td-line); border-radius:12px; }
.tracker-self-check-answer-q { grid-column:1; font-size:13.5px; color:var(--td-sub); font-weight:700; }
.tracker-self-check-answer-v { grid-column:1; font-size:15px; font-weight:800; word-break:keep-all; }
.tracker-self-check-answer-v.is-empty { color:#6B7684; font-weight:600; }
.tracker-self-check-edit { grid-column:2; grid-row:1 / span 2; min-height:44px; padding:0 14px; border:1.5px solid #E5E8EB; border-radius:12px; background:#fff; color:#0B5BD3; font:inherit; font-size:14px; font-weight:800; cursor:pointer; }

/* fromCalendar 초록 띠 (2026-08-18) — 실패 아님, 좋은 새 */
.tracker-detail-good { margin:0 0 12px; padding:12px 14px; border-radius:12px; background:#E7F5EE; color:#065F46; font-size:14px; font-weight:700; line-height:1.55; word-break:keep-all; }
