/* 리포트(S-50 목록·만들기 · S-51 보기 · S-52 공유) 페이지 CSS. pwa-budget 때문에 규칙은 한 줄로 쓰고 주석은 이유만 남긴다 */
/* 화면 셋은 body[data-rp-view]로 고르고, 맞지 않는 [data-rp] 덩어리는 숨긴다 */
.rp[data-rp-view="list"] [data-rp]:not([data-rp~="list"]),.rp[data-rp-view="new"] [data-rp]:not([data-rp~="new"]),.rp[data-rp-view="view"] [data-rp]:not([data-rp~="view"]){display:none}
/* 상태 줄은 오프라인일 때만 내려온다 */
.rp:not([data-state="offline"]){padding-top:var(--lm-appbar-height)}
.rp:not([data-state="offline"])>.lm-statusline{display:none}
/* 만들기 화면 버튼 바에는 윗줄이 없다. 보기 화면의 공유 줄은 숨어 있어도 app.css :has가 세므로 여기서 되돌린다 */
.lm-app.rp[data-rp-view="new"][data-shell="immersive"]{padding-bottom:calc(var(--lm-space-12) * 2 + 45px + var(--lm-safe-bottom))}
.lm-app.rp[data-state="forbidden"][data-shell="immersive"]{padding-bottom:var(--lm-space-32)}
.rp[data-state="forbidden"]>.lm-action-bar{display:none}
.rp-forbidden .lm-empty__title{margin:0}
.rp .lm-alert{margin-bottom:24px}
.rp .lm-note{align-items:flex-start}
.rp .lm-note>.lm-icon{height:1.5em}
.rp-lead{display:grid;gap:4px;margin-bottom:16px;color:var(--lm-text-muted);font-size:14px;line-height:1.5}
.rp-head{display:grid;gap:8px;margin-bottom:24px}
.rp-head>.rp-lead{margin-bottom:0}
.rp-create{display:grid;gap:8px;margin-bottom:24px}
.rp-create>.btn.primary{width:100%}
.rp-row{grid-template-columns:auto minmax(0,1fr) auto auto}
/* 들어갈 기록: 들어가는 종류는 체크·진한 글자, 빠지는 종류는 X·흐린 글자로 색·문구·아이콘을 함께 바꾼다 */
.rp-scope-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;min-height:56px;padding:8px 16px}
.rp-scope-row>.lm-icon,.rp-scope-row__state{color:var(--lm-text-strong)}
.rp-scope-row__state{font-size:14px;line-height:20px;white-space:nowrap}
.rp-scope-row[data-in="no"]>.lm-icon,.rp-scope-row[data-in="no"] .rp-scope-row__state,.rp-scope-row[data-in="no"] .lm-row__title{color:var(--lm-text-muted)}
.rp-scope-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:8px;margin-top:8px}
.rp-scope-foot>.rp-link{margin-right:-12px}
.rp-link>.lm-icon{margin-left:-4px}
.rp-notes{display:grid;gap:8px;margin-top:24px}
.rp-progress,.rp-noinputs{margin-bottom:24px}
.rp-progress{display:grid;gap:12px}
.rp-progress__text{display:flex;align-items:center;gap:8px;color:var(--lm-text-strong)}
.rp-progress__text>.lm-icon{color:var(--lm-text-muted)}
.rp-noinputs{display:grid;gap:4px}
.rp-flash{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;color:var(--lm-text-strong);font-size:14px;line-height:1.5}
.rp-flash:empty{display:none}
.rp-flash>.lm-icon{height:1.5em;color:var(--lm-success-text)}
.rp-sec-title{margin-bottom:12px}
.rp-sec-lead{margin-top:4px;color:var(--lm-text-muted);font-size:14px;line-height:1.5}
.rp-notice{padding-bottom:0}
.rp-notice__text{color:var(--lm-text);font-size:14px;line-height:1.5}
/* 이름·값 표: 카드 윤곽은 border, 행 사이는 hairline */
.rp .rp-kv{display:grid;margin:0;padding:0 16px}
.rp-kv>div{display:grid;grid-template-columns:minmax(88px,30%) minmax(0,1fr);column-gap:12px;padding:12px 0}
.rp-kv>div+div{border-top:1px solid var(--lm-hairline)}
.rp-kv dt{color:var(--lm-text-muted);font-size:14px;line-height:1.6}
.rp-kv dd{margin:0;color:var(--lm-text)}
.rp-kv ul{display:grid;gap:4px}
.rp .rp-kv--flat{padding:0}
.rp-kv--flat>div:first-child{padding-top:0}
.rp-validation{margin-bottom:12px}
.rp-quotes{display:grid;gap:4px}
.rp-quotes:empty{display:none}
/* 리포트 인용은 원래 기록으로 옮겨 가지 않아 코발트 링크색을 쓰지 않는다 */
.rp .lm-quote__src{color:var(--lm-text-muted)}
.lm-fst__item .rp-quote>span:first-child{color:var(--lm-text)}
/* 추정 항목도 라벨 chip 줄을 두고 그 아래에 주의 블록을 붙인다(라벨 이름의 가운뎃점과 섞이지 않게) */
.rp-guess-item>.lm-guess{margin-top:0}
.lm-guess .rp-quote>span:first-child,.lm-guess .rp-quote .lm-quote__src{color:var(--lm-warning-text)}
.rp-muted-statement{color:var(--lm-text-muted)}
.rp-plan{display:grid;gap:8px;padding:16px}
.rp-plan__goal,.rp-share__line,.rp-plan__note{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;color:var(--lm-text)}
.rp-key{flex:none;color:var(--lm-text-muted);font-size:14px}
.rp-counts{display:flex;flex-wrap:wrap;row-gap:4px;margin:0}
.rp-counts>div{display:flex;align-items:baseline;gap:8px;padding:0 12px}
.rp-counts>div:first-child{padding-left:0}
.rp-counts>div+div{border-left:1px solid var(--lm-hairline)}
.rp-counts dt{color:var(--lm-text-muted);font-size:14px;line-height:1.5}
.rp-counts dd{margin:0;color:var(--lm-text-strong)}
.rp-plan__note{padding:8px 12px;border-radius:var(--lm-radius-inner);background:var(--lm-bg-subtle);font-size:14px;line-height:1.5}
.rp-prose{text-wrap:pretty}
.rp-quiet{color:var(--lm-text-muted);font-size:14px;line-height:1.5}
.rp-next{display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:8px;padding:12px 16px}
.rp-next__no{color:var(--lm-text-muted)}
.rp .rp-details{margin-top:12px}
.rp-share{display:grid;gap:4px;padding:12px 16px}
.rp-share__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rp-share__head>.lm-row__title{min-width:0}
.rp-share__line{font-size:14px;line-height:1.5}
.rp-share__note{display:flex;align-items:flex-start;gap:8px;color:var(--lm-text);font-size:14px;line-height:1.5}
.rp-share__note>.lm-icon{height:1.5em;color:var(--lm-text-muted)}
.rp-share>.btn.quiet{justify-self:start;margin-top:4px;margin-bottom:-8px;border-left-width:0}
.rp-share.is-revoked .lm-row__title,.rp-share.is-revoked .rp-share__line{color:var(--lm-text-muted)}
/* 되돌리기 어려운 행동(공유 철회)은 채움 없이 레드 글자로만. 채운 레드 버튼은 확인 dialog 안에만 둔다 */
.lm-app .btn.quiet.rp-danger{color:var(--lm-danger)}
@media (hover:hover) {
.lm-app .btn.quiet.rp-danger:hover{background:var(--lm-danger-surface);color:var(--lm-danger)}
}
.rp-noshare{display:grid;gap:4px}
.rp-pdf-line{margin-top:12px}
.rp-sheet .lm-sheet__body{display:grid;align-content:start;gap:16px}
.rp-sheet .lm-details{margin-top:0}
.rp .rp-sheet .lm-consent-points>li{padding:8px 0;font-size:14px;line-height:1.5}
.rp-target{display:grid;gap:4px;padding:12px 16px;border-radius:var(--lm-radius);background:var(--lm-bg-subtle)}
.rp-target__meta{color:var(--lm-text);font-size:14px;line-height:1.5}
.rp-target>.btn{justify-self:start;margin-top:8px}
.rp-field{display:grid;gap:16px}
.rp-field>legend{margin-bottom:8px;padding:0}
.rp-check__body{display:grid;gap:4px;min-width:0}
.rp-check__meta{color:var(--lm-text-muted);font-size:14px;line-height:1.5}
/* 미리 보기는 상자를 겹치지 않고 hairline 두 줄로 나눈다 */
.rp-preview{display:grid;border-top:1px solid var(--lm-hairline);border-bottom:1px solid var(--lm-hairline)}
.rp-preview__row{display:grid;gap:4px;padding:12px 0}
.rp-preview__row+.rp-preview__row{border-top:1px solid var(--lm-hairline)}
.rp-preview__label{display:flex;align-items:center;gap:8px;color:var(--lm-text-muted);font-size:14px;line-height:1.5}
.rp-preview__value,.rp-preview__list{color:var(--lm-text)}
.rp-preview__list{display:grid;gap:4px}
.rp-preview__list span{color:var(--lm-text-muted);font-size:14px}
.rp-consent-line{display:grid;gap:4px;color:var(--lm-text);font-size:14px;line-height:1.5}
.rp-consent-line__meta{color:var(--lm-text-muted)}
/* 동의가 새로 저장되는 공유에서만 동의 요점을 버튼 바로 위 고정 줄에 둔다 */
.rp-sheet .lm-sheet__actions>.rp-consent-sum{grid-column:1/-1;color:var(--lm-text);font-size:14px;line-height:1.5}
.rp-doc section{display:grid;gap:4px}
.rp-doc h4{margin:0;color:var(--lm-text-strong);font-size:16px;line-height:1.5}
.rp-confirm{display:grid;gap:8px;color:var(--lm-text)}
