/* 健康管理、资料检索与来源预览。 */
.document-filter-panel{padding:22px;margin-bottom:24px}.filter-top{display:flex;align-items:end;gap:12px;margin-bottom:18px}.filter-keyword{flex:1}.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.filter-grid label,.filter-keyword{font-size:13px;font-weight:600;color:#52636d;display:grid;gap:7px}.filter-grid select,.filter-grid input,.filter-keyword input{width:100%;min-width:0}.filter-foot{font-size:12px;color:#71818a;margin:17px 0 0}.pagination,.pagination>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.pagination{margin:20px 0;color:#687b85;font-size:13px}.date-caution{color:#9a6924!important}.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0}.quick-actions>a{padding:22px;display:flex;flex-direction:column;gap:10px;transition:transform .15s ease}.quick-actions>a:hover{transform:translateY(-3px)}.quick-actions>a>span{font-size:26px;color:#13818a}.quick-actions strong{font-size:15px}.quick-actions small{font-size:12px;color:#78878f}.due-panel{padding:22px}.due-panel h2{margin:0 0 10px}.member-pills,.status-pills{display:flex;gap:8px;flex-wrap:wrap}.member-pills{margin:4px 0 22px}.member-pills a,.status-pills a{padding:8px 14px;border:1px solid #dce6e9;background:#fff;border-radius:9px;color:#596f79;font-size:13px}.member-pills [aria-current=page],.status-pills [aria-current=page]{color:#056e77;background:#e4f3f1;border-color:#a6d4d0}.care-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.care-stats>.panel{padding:22px;display:grid;gap:8px}.care-stats strong{font-size:34px;color:#164b59;line-height:1.2}.care-stats small{font-weight:600;color:#526b76}.care-stats span{font-size:12px;color:#798a92}.care-task-list,.health-log-grid,.knowledge-grid,.provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.care-task,.health-log,.knowledge-card,.provider-card{padding:24px;min-width:0}.care-task.overdue{border-left:3px solid #c89140}.task-top,.task-actions,.log-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.task-top>span:last-child,.task-top small{font-size:12px;color:#788b92}.care-task h3{margin:18px 0 9px;font-size:17px}.care-task p,.health-log p,.knowledge-card p{font-size:14px;color:#536b75;line-height:1.8;overflow-wrap:anywhere}.task-actions{margin-top:20px;font-size:13px}.task-actions form{display:flex;align-items:center;gap:10px}.text-button{border:none;background:transparent;color:#778790;cursor:pointer;font:inherit}.log-foot{margin-top:20px;font-size:12px;color:#809198}.measurement{font-size:30px!important;font-weight:700;color:#166b74!important;margin:15px 0!important}.measurement small{font-size:13px;margin-left:8px;font-weight:400}.knowledge-intro{padding:25px 28px;margin:22px 0}.knowledge-intro h2{font-size:18px;margin:0 0 12px}.knowledge-intro p{font-size:14px;color:#617883;line-height:1.9;max-width:960px}.knowledge-card h2{font-size:18px;margin:18px 0 9px}.knowledge-card dl{display:grid;grid-template-columns:80px 1fr;font-size:13px;gap:8px}.knowledge-card dt{color:#84939b}.knowledge-card dd{margin:0;color:#4a6570}.knowledge-card details{font-size:13px;margin-top:15px}.knowledge-card summary{cursor:pointer;color:#137d86}.provider-card h2{margin:16px 0 9px}.provider-card small{color:#788990;overflow-wrap:anywhere}.assistant-form{padding:28px}.assistant-form .field>div[id]{max-height:300px;overflow:auto;border:1px solid #e2e9eb;border-radius:10px;padding:12px}.assistant-form .field>div[id] label{font-weight:400;display:flex;gap:10px;align-items:baseline;padding:7px 2px}.assistant-form input[type=checkbox],.consent-line input{width:17px;height:17px;flex-shrink:0}.advice-preview,.model-answer,.source-index{padding:28px;margin-bottom:24px}.advice-preview textarea{width:100%;font-family:inherit;font-size:14px;line-height:1.85;resize:vertical}.advice-preview p{font-size:13px;color:#607681;line-height:1.8;overflow-wrap:anywhere}.consent-line{display:flex;gap:9px;align-items:flex-start;font-size:14px;line-height:1.8;margin:20px 0}.answer-text{font-size:15px;line-height:1.95;overflow-wrap:anywhere;margin-top:20px}.source-index p{font-size:14px;overflow-wrap:anywhere}.assistant-form ul.errorlist,.filter-grid ul.errorlist{color:#a33b31;font-size:12px;padding-left:16px}.main-nav{overflow-y:auto;min-height:0}.sidebar{height:100vh}.sidebar-foot{flex-shrink:0}.page-head h1{overflow-wrap:anywhere}.form-grid textarea{width:100%}
@media(max-width:1100px){.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-top{flex-wrap:wrap}.filter-keyword{flex-basis:100%}.care-task-list,.health-log-grid,.knowledge-grid,.provider-grid{grid-template-columns:1fr}.care-stats{gap:9px}.care-stats>.panel{padding:15px}.care-stats span{display:none}.care-stats strong{font-size:28px}.section-head{gap:12px;flex-wrap:wrap}.care-task,.health-log,.knowledge-card,.provider-card,.advice-preview,.model-answer,.source-index{padding:19px}.assistant-form{padding:20px}.member-pills{gap:6px}.member-pills a{padding:7px 10px}.document-filter-panel{padding:18px}.quick-actions>a{padding:17px}.quick-actions strong{font-size:14px}.knowledge-intro{padding:20px}.task-actions form{flex-wrap:wrap}}
@media(max-width:420px){.filter-grid{grid-template-columns:1fr}.pagination{flex-wrap:wrap}}

/* Workflow and service setup */
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px;align-items:start}.setting-card{padding:26px;min-width:0}.setting-card h2{font-size:19px;margin:12px 0}.setting-card p{font-size:14px;color:#607681;line-height:1.85;overflow-wrap:anywhere}.setting-card .button{margin-top:10px}.setting-card small{font-size:12px;color:#71818a;line-height:1.7}.setting-card hr{border:0;border-top:1px solid #e1eaeb;margin:25px 0}.setting-card .form-grid{margin-top:22px}.setting-card ul.errorlist{color:#a33b31;font-size:13px;padding-left:18px}.settings-heading{font-size:21px;margin:32px 0 18px}.workflow-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 30px}.workflow-overview>a:hover{border-color:#89beba}.workflow-overview p{margin-bottom:0}.workflow-steps{display:flex;gap:16px;flex-wrap:wrap;padding:16px 22px;background:#eaf5f3;border-radius:12px;color:#286965;font-size:14px;margin:20px 0}.unavailable-panel{max-width:820px;margin:40px auto;padding:38px}.unavailable-panel p{color:#607681;line-height:1.8;margin:20px 0 26px}.advanced-filters summary,.review-panel>summary{cursor:pointer;color:#227c7e;font-size:14px;padding:12px 0}.advanced-filters{margin-top:12px}.advanced-filters[open] summary{margin-bottom:12px}.text-preview{padding:22px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;font:14px/1.85 inherit;max-height:680px;overflow:auto}.button:disabled{opacity:.6;cursor:wait}.message.success{border-left:3px solid #218477}.message.error{border-left:3px solid #b65b48}
@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.workflow-overview{gap:12px}.workflow-overview .setting-card{padding:18px}}
@media(max-width:600px){.workflow-overview{grid-template-columns:1fr}.setting-card{padding:20px}.unavailable-panel{padding:24px;margin:18px auto}.workflow-steps{font-size:12px;gap:10px}}

.fact-category{margin:26px 0}.fact-category>h3{font-size:18px;margin:0 0 14px}.fact-provenance{display:block;margin-top:8px;color:#85662c;line-height:1.8}.summary-details{margin:30px 0}.summary-details>summary{cursor:pointer;color:#227c7e;padding:16px 0;font-weight:600}.fact-card p{white-space:normal;overflow-wrap:anywhere}

/* Shared member shell: tab changes keep identical identity and actions. */
html{scrollbar-gutter:stable}.person-shell .person-head{min-height:96px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;margin-bottom:22px}.person-shell .person-heading{min-width:0}.person-shell .person-profile{flex-shrink:0}.person-shell .person-heading p{font-size:14px;margin-top:8px}.person-shell .head-actions{flex-wrap:wrap;justify-content:flex-end}.person-shell .person-tabs{min-height:51px;margin:0 0 26px}.person-shell+.tab-section-head{margin-top:0;min-height:52px}.tab-section-head h2{font-size:22px;margin:0 0 6px}.tab-section-head span{font-size:13px;color:#71818a}.basics-panel{padding:22px 26px}.basics-panel .section-head{margin:0 0 18px;align-items:center}.basics-panel h3{margin:0}.basics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0}.basics-grid dt{font-size:12px;color:#748c91;margin-bottom:6px}.basics-grid dd{margin:0;overflow-wrap:anywhere;line-height:1.7}.summary-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:26px 0 18px;flex-wrap:wrap}.summary-toolbar>span{font-size:12px;color:#71818a}.summary-anchors{display:flex;flex-wrap:wrap;gap:8px}.summary-anchors a{padding:6px 10px;border:1px solid #dce6e9;border-radius:7px;font-size:12px;color:#526b76;background:#fff}.fact-category{scroll-margin-top:25px}.fact-category>.section-head{margin:26px 0 14px;align-items:center}.fact-category h3{margin:0;font-size:18px}.fact-category .section-head>a{font-size:13px}.fact-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fact-date{font-size:14px;font-weight:700;color:#286965}.fact-edit{margin-left:auto;font-size:13px}.fact-date-note{display:block;margin-top:8px}.summary-empty{grid-column:1/-1;padding:22px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:15px}.summary-empty p{margin:0}.summary-empty a{font-size:13px}.timeline-year{font-size:21px;color:#315e68;margin:26px 0 17px}.summary-timeline{border-left:2px solid #d5e7e2;padding-left:22px}.summary-timeline .fact-card{margin-bottom:15px;position:relative}.summary-timeline .fact-card:before{content:"";position:absolute;left:-29px;top:27px;width:10px;height:10px;border-radius:50%;background:#268884;border:2px solid #fff}.assistant-service-strip{padding:18px 22px;display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap}.assistant-service-strip p{margin:0;color:#637b83;font-size:13px}.person-shell+.section-head{margin-top:0}.entry-note{font-size:13px;color:#637b83}
@media(max-width:1120px){.person-shell .person-head{grid-template-columns:1fr}.person-shell .head-actions{justify-content:flex-start}.basics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.person-shell .person-head{gap:18px}.person-shell .head-actions{width:100%}.person-shell .button{font-size:12px;padding:9px 11px}.basics-panel{padding:20px}.basics-grid{gap:16px}.summary-empty{align-items:flex-start}.summary-timeline{padding-left:15px}.summary-timeline .fact-card:before{left:-22px}.mobile-nav{flex-wrap:wrap;gap:8px 14px}}
/* Summary generation uses the same panels and spacing as the member archive. */
.summary-generation { margin-bottom: 24px; }
.summary-generation .section-head { margin-top: 0; }
.summary-generation details { margin-top: 16px; }
.summary-source-list > div { display: grid; gap: 6px; padding: 12px 0; border-bottom: 1px solid #e3eaee; }
.summary-source-list small { color: #637681; }
.fact-provenance-status { display: block; margin: 8px 0; color: #637681; }

/* A document-like summary: one reading column, no individual cards. */
.health-summary-document .summary-generation { padding: 0 0 20px; border-bottom: 1px solid #dce6e9; }
.health-summary-document .basics-panel { padding: 8px 0 22px; border-bottom: 1px solid #dce6e9; }
.health-summary-document .basics-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.health-summary-document .summary-rows { display: block; }
.health-summary-document .fact-category { margin: 30px 0; }
.health-summary-document .fact-category > .section-head { border-bottom: 2px solid #cbdedb; padding-bottom: 12px; margin-bottom: 0; }
.summary-row { display: grid; grid-template-columns: 140px minmax(0,1fr) 85px; gap: 20px; padding: 20px 0; border-bottom: 1px solid #e2e9eb; }
.summary-row-date { color: #315e68; font-size: 14px; }
.summary-row-date time { font-weight: 600; }
.summary-row-date small { display: block; font-size: 12px; color: #7b8b91; line-height: 1.6; margin-top: 7px; }
.summary-row-body { min-width: 0; }
.summary-row-body > p { margin: 0 0 9px; line-height: 1.85; font-size: 14px; overflow-wrap: anywhere; }
.summary-row-source { font-size: 12px; color: #73858d; }
.summary-row-source > summary { cursor: pointer; }
.summary-row-source > div { padding-top: 10px; overflow-wrap: anywhere; line-height: 1.7; }
.summary-row-source p { margin: 5px 0 0; }
.summary-row-source a,.summary-row-edit { color: #087c80; }
.summary-row-edit { font-size: 13px; text-align: right; align-self: start; white-space: nowrap; }
.health-summary-document .summary-empty { padding: 15px 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.health-summary-document .summary-timeline { border: 0; padding: 0; }
.health-summary-document .summary-section { padding: 15px 0; border-bottom: 1px solid #dce6e9; }
.timeline-filter { display: grid; grid-template-columns: minmax(0,1fr) minmax(150px,210px) auto; }
.timeline-filter input[type=search] { min-width: 0; }
input[type=hidden] { display: none !important; }
.encounter-summary { flex-basis: 100%; margin: 5px 0; }
.encounter-card .encounter-summary p,.encounter-summary-detail p { font-size: 14px; color: #315663; line-height: 1.8; margin: 0 0 4px; overflow-wrap: anywhere; }
.encounter-summary small { font-size: 11px; color: #7b8b91; }
.encounter-summary-detail { padding: 16px 0; border-top: 1px solid #dce6e9; border-bottom: 1px solid #dce6e9; margin-bottom: 22px; }
.preview-head { gap: 14px; flex-wrap: wrap; align-items: center; margin-bottom: 16px; }
.preview-head h2 { margin-bottom: 4px; }
.preview-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.preview-body { overflow: auto; min-width: 0; }
.preview-panel.preview-expanded,.preview-panel:fullscreen { position: fixed; inset: 0; z-index: 3000; width: 100%; height: 100dvh; margin: 0; padding: 18px 24px; border: 0; border-radius: 0; background: #f5f8f8; display: flex; flex-direction: column; box-sizing: border-box; }
.preview-expanded .preview-head { flex-shrink: 0; }
.preview-expanded .preview-body { flex: 1; min-height: 0; background: #e7edee; }
.preview-expanded .preview-body iframe { display: block; height: 100%; border: 0; border-radius: 0; }
.preview-expanded .preview-body img { width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 0; }
.preview-expanded .text-preview { max-height: none; margin: 0; }
.preview-panel.preview-actual-size img { width: auto; height: auto; max-width: none; max-height: none; }
.preview-fullscreen-hint { flex-shrink: 0; font-size: 12px; color: #617883; margin: 10px 0 0; }
@media(max-width:700px) {
  .timeline-filter { grid-template-columns: minmax(0,1fr) auto; }
  .timeline-filter input[type=search] { grid-column: 1/-1; }
  .summary-row { grid-template-columns: minmax(0,1fr) auto; gap: 8px 15px; }
  .summary-row-date { grid-column: 1; }
  .summary-row-date small { display: inline; margin-left: 8px; }
  .summary-row-body { grid-row: 2; grid-column: 1/-1; }
  .summary-row-edit { grid-row: 1; grid-column: 2; }
  .health-summary-document .basics-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .preview-panel.preview-expanded { padding: 12px; }
}

/* Use the desktop content area; encounter excerpts may span several paragraphs. */
.page { width: 100%; max-width: none; padding-left: clamp(22px,2.5vw,44px); padding-right: clamp(22px,2.5vw,44px); }
.timeline,.timeline-content,.encounter-card { width: 100%; min-width: 0; }
.encounter-summary-paragraph { margin: 9px 0 14px; }
.encounter-summary-paragraph:last-child { margin-bottom: 0; }
.encounter-summary p { white-space: normal; }
.encounter-excerpts { margin: 26px 0 34px; }
.encounter-excerpts .section-head p { font-size: 13px; color: #71818a; }
.summary-detail-link { display: inline-block; font-size: 12px; margin-top: 10px; color: #087c80; }
.document-status-tabs { margin: 8px 0 22px; }
.row-side .review-action { display: block; margin-top: 8px; font-size: 12px; color: #087c80; }
.detail-grid { align-items: stretch; grid-template-columns: minmax(290px,.85fr) minmax(0,1.5fr); }
.detail-grid > .detail-panel,.detail-grid > .preview-panel:not(.preview-expanded) { height: clamp(520px,78vh,900px); min-height: 0; overflow: auto; box-sizing: border-box; }
.detail-grid > .preview-panel { display: flex; flex-direction: column; }
.preview-panel .preview-head { flex-shrink: 0; }
.preview-panel .preview-body { flex: 1; min-height: 0; }
.preview-panel .preview-body iframe { height: 100%; display: block; }
.preview-panel:not(.preview-actual-size) .preview-body img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; }
@media(max-width:1000px) { .detail-grid { grid-template-columns: 1fr; } }
@media(max-width:600px) { .page { padding-left: 16px; padding-right: 16px; } }

/* Give every timeline record the available page width. */
.timeline { max-width: none; width: 100%; }
.timeline-content { min-width: 0; }
.encounter-card { width: 100%; min-width: 0; }

.encounter-originals { display: grid; gap: 16px; }
.encounter-original { overflow: hidden; }
.encounter-original > summary { display: flex; align-items: center; gap: 14px; padding: 16px 20px; cursor: pointer; list-style: none; }
.encounter-original > summary::-webkit-details-marker { display: none; }
.encounter-original > summary::after { content: '⌄'; color: #4f747a; font-size: 20px; margin-left: 4px; }
.encounter-original:not([open]) > summary::after { transform: rotate(-90deg); }
.encounter-original .row-main { flex: 1; }
.original-status { font-size: 12px; color: #6f878c; white-space: nowrap; }
.encounter-original-body { border-top: 1px solid #e4edeb; padding: 18px 20px 20px; }
.encounter-original-body iframe { display: block; width: 100%; height: min(78vh,900px); border: 1px solid #dfeae7; border-radius: 8px; }
.encounter-original-body img { display: block; max-width: 100%; max-height: 900px; margin: 0 auto; }
.encounter-original-body .text-preview { margin: 0; }
.original-actions { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 14px; font-size: 13px; }
.original-actions a { color: #087c80; text-decoration: underline; }
.encounter-ocr { border-bottom: 1px solid #e2e9eb; padding: 12px 0; }
.encounter-ocr > summary { cursor: pointer; color: #687f86; font-size: 13px; }
.encounter-ocr .summary-row { border-bottom: 0; }
.original-heading { display: flex; align-items: center; gap: 14px; padding: 16px 20px; }
.encounter-summary-paragraph h4 { margin: 12px 0 6px; font-size: 14px; color: #245968; }
.encounter-summary-paragraph ol { margin: 0 0 8px; padding-left: 24px; color: #315663; font-size: 14px; line-height: 1.9; }
.encounter-summary-paragraph li { padding-left: 3px; overflow-wrap: anywhere; }
.metric-candidate { padding: 20px 24px; margin-bottom: 14px; }
.metric-candidate h3 { margin: 0; font-size: 16px; }
.metric-candidate h3 span { margin-left: 16px; color: #087c80; }
.metric-candidate p,.metric-candidates .section-head p { font-size: 13px; color: #71818a; }
.metric-candidate blockquote { margin: 12px 0; padding: 12px 16px; background: #f3f7f6; border-left: 3px solid #b5d3cf; font-size: 13px; line-height: 1.8; }
.original-actions { align-items: center; overflow-wrap: anywhere; }
.package-row strong { overflow-wrap: anywhere; }
