/* Chẩn đoán Đông y: CSS tối thiểu. Font, nút, màu chính kế thừa hệ thống. */
.dongy-app,
.dongy-app *{box-sizing:border-box}
.dongy-app{width:100%;margin:0;padding:0 0 16px;color:inherit;font:inherit}
.dongy-titlebar{margin:0 0 10px}
.dongy-page-title{margin:0;font-size:22px;line-height:1.2;font-weight:700;color:inherit}
.dongy-page-question{margin:6px 0 0;font-size:15px;line-height:1.35;color:inherit;opacity:.82}
.dongy-card-empty{border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;padding:10px;background:inherit}

.dongy-create-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px}
.dongy-method-card{position:relative;display:flex;flex-direction:column;gap:6px;min-height:104px;padding:14px 15px;border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;background:inherit;color:inherit;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.dongy-method-card input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}
.dongy-method-card:hover{border-color:var(--tm-btn-tinh-border,#94A3B8)}
.dongy-method-card.is-selected{border-color:var(--tm-btn-dong-border,#16A34A);box-shadow:0 0 0 2px rgba(22,163,74,.14);background:color-mix(in srgb,var(--tm-btn-dong-bg,#DCFCE7) 34%,transparent)}
.dongy-method-card.is-selected:after{content:"Đang chọn";position:absolute;right:12px;top:10px;font-size:11.5px;font-weight:700;color:var(--tm-btn-dong-text,#166534)}
.dongy-method-title{display:block;max-width:calc(100% - 84px);font-size:15px;line-height:1.25;font-weight:700;color:inherit}
.dongy-method-desc{display:block;font-size:13px;line-height:1.4;color:inherit;opacity:.78}

.dongy-yhoc-panel{border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;padding:10px;margin:0 0 10px;background:inherit;color:inherit}
.dongy-yhoc-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;padding-bottom:7px;border-bottom:1px solid var(--tm-border,#E2E8F0)}
.dongy-yhoc-head h3{margin:0;font-size:14px;line-height:1.25;font-weight:600;color:inherit}
.dongy-yhoc-head p{margin:4px 0 0;font-size:13px;line-height:1.35;color:inherit;opacity:.78}
.dongy-yhoc-panel label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:500;color:inherit}
.dongy-yhoc-panel select{width:100%;min-width:0;font:inherit;font-size:13px;line-height:1.35;min-height:36px;padding:7px 9px;border-radius:6px}

.dongy-workspace{display:grid;grid-template-columns:190px minmax(0,1fr);gap:10px;align-items:start}
.dongy-side{border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;padding:8px;background:inherit}
.dongy-side-title{font-size:12px;font-weight:600;margin:0 0 6px;color:inherit}
.dongy-tab{width:100%;border:0;background:transparent;text-align:left;border-radius:8px;padding:6px 8px;font:inherit;font-size:12.5px;font-weight:500;line-height:1.25;cursor:pointer;margin:1px 0;color:inherit}
.dongy-tab:hover{background:var(--tm-btn-tinh-bg)}
.dongy-tab.is-active{background:var(--tm-btn-dong-bg);color:var(--tm-btn-dong-text)}
.dongy-progress-mini{display:none}
.dongy-main-panel{min-width:0}
.dongy-form{margin:0}

.dongy-pane{display:none;border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;padding:10px 12px;background:inherit}
.dongy-pane.is-active{display:block}
.dongy-pane-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--tm-border,#E2E8F0)}
.dongy-pane-head h3{margin:0;font-size:15px;line-height:1.25;font-weight:600;color:inherit}
.dongy-pane-head p{margin:3px 0 0;font-size:13px;line-height:1.35;color:inherit;opacity:.75}

.dongy-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:500;color:inherit}
.dongy-form input,
.dongy-form select,
.dongy-form textarea{width:100%;min-width:0;font:inherit;font-size:13px;line-height:1.35;min-height:36px;padding:7px 9px;border-radius:6px}
.dongy-form textarea{min-height:70px;resize:vertical}
.dongy-form-row{display:grid;gap:9px;margin-bottom:9px}
.dongy-form-row-2{grid-template-columns:1fr 1fr}
.dongy-form-row-3{grid-template-columns:1fr 1fr 1fr}
.dongy-form-row-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.dongy-form-row-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.dongy-info-line{font-size:12.5px;line-height:1.35;margin:4px 0 0;opacity:.75}

.dongy-chip-group{display:flex;align-items:center;flex-wrap:wrap;gap:6px 7px;margin:8px 0;padding:0}
.dongy-chip-group span{flex:0 0 128px;font-weight:500;font-size:12px;color:inherit;line-height:1.25}
.dongy-chip-group button{display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;border:1px solid var(--tm-border,#E2E8F0);background:inherit;color:inherit;border-radius:8px;padding:5px 9px;font:inherit;font-size:12px;font-weight:400;line-height:1.2;margin:0;cursor:pointer;white-space:nowrap}
.dongy-chip-group button.on{background:var(--tm-btn-dong-bg);color:var(--tm-btn-dong-text);border-color:var(--tm-btn-dong-border)}

.dongy-gender-panel{border:1px dashed var(--tm-border,#CBD5E1);border-radius:8px;padding:10px;margin-top:10px;background:inherit}
.dongy-panel-label{font-weight:500;margin-bottom:5px;color:inherit}
.dongy-assess-box,
.dongy-profile-check,
.dongy-yhoc-summary{border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.4;margin:7px 0 10px;background:inherit;color:inherit}
.dongy-profile-check.warn{border-color:var(--tm-btn-tinh-border)}
.dongy-profile-check.danger{border-color:#B91C1C}
.dongy-profile-check ul{margin:6px 0 0 18px;padding:0}
.dongy-step-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--tm-border,#E2E8F0)}
.dongy-btn{vertical-align:middle}
.dongy-actions{display:flex;gap:8px;flex-wrap:wrap}

.dongy-list{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.dongy-list-empty{border:1px dashed var(--tm-border,#CBD5E1);border-radius:8px;padding:10px;background:inherit;color:inherit;opacity:.85}
.dongy-list-item{border:1px solid var(--tm-border,#E2E8F0);border-radius:8px;padding:10px;background:inherit}
.dongy-list-item strong{display:block;font-size:14px;color:inherit}
.dongy-list-item small{display:block;margin-top:3px;line-height:1.35;color:inherit;opacity:.75}
.dongy-list-item .dongy-item-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.dongy-case-card{display:grid;grid-template-columns:1.25fr 1fr .95fr .95fr auto;gap:10px;align-items:center}
.dongy-case-card strong,.dongy-case-card small{margin:0}
.dongy-case-card-field{min-width:0}
.dongy-case-card-label{display:block;font-size:11.5px;font-weight:650;line-height:1.25;opacity:.68}
.dongy-case-card-value{display:block;margin-top:2px;font-size:13px;line-height:1.35;color:inherit;word-break:break-word}
.dongy-case-code,.dongy-list-item strong.dongy-case-code,.dongy-case-view-summary strong.dongy-case-code{color:#4285F4}
.dongy-case-code-yhoc,.dongy-list-item strong.dongy-case-code-yhoc,.dongy-case-view-summary strong.dongy-case-code-yhoc{color:#F9AB00}
.dongy-case-code-dongy,.dongy-list-item strong.dongy-case-code-dongy,.dongy-case-view-summary strong.dongy-case-code-dongy{color:#4285F4}
.dongy-status-pill{display:inline-flex;align-items:center;max-width:100%;border:1px solid var(--tm-border,#E2E8F0);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:650;line-height:1.2;background:inherit;color:inherit;white-space:normal}
.dongy-case-card-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.dongy-badge{display:inline-flex;border-radius:999px;border:1px solid var(--tm-border,#E2E8F0);padding:3px 7px;font-size:11.5px;font-weight:500;color:inherit;background:inherit}
.dongy-list-item button{margin-top:8px}
.dongy-msg{position:fixed;right:88px;bottom:92px;z-index:9990;max-width:min(520px,calc(100vw - 140px));border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4;background:rgba(15,23,42,.94);color:#fff}
.dongy-msg.err{background:rgba(153,27,27,.94)}

@media(max-width:1000px){
  .dongy-workspace{grid-template-columns:1fr}
  .dongy-side{position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
  .dongy-side-title,.dongy-progress-mini{grid-column:1/-1}
  .dongy-tab{text-align:center;padding:7px 5px}
  .dongy-form-row-5,.dongy-form-row-4,.dongy-form-row-3,.dongy-form-row-2{grid-template-columns:1fr 1fr}
  .dongy-chip-group span{flex-basis:100%}
  .dongy-pane-head{display:block}
  .dongy-case-card{grid-template-columns:1fr 1fr}
  .dongy-case-card-actions{justify-content:flex-start;grid-column:1/-1}
}
@media(max-width:640px){
  .dongy-app{padding:0 0 12px}
  .dongy-page-title{font-size:20px}
  .dongy-create-methods{grid-template-columns:1fr}
  .dongy-side{grid-template-columns:1fr 1fr}
  .dongy-progress-mini{display:none}
  .dongy-pane{padding:10px}
  .dongy-form-row-5,.dongy-form-row-4,.dongy-form-row-3,.dongy-form-row-2{grid-template-columns:1fr}
  .dongy-step-actions{display:grid;grid-template-columns:1fr}
  .dongy-step-actions .tm-btn{width:100%}
  .dongy-msg{left:12px;right:12px;bottom:86px;max-width:none}
  .dongy-case-card{grid-template-columns:1fr}
}

/* Phase 4.7: giữ form dài nhưng chia cụm rõ, không tạo màu/font/nút mới. */
.dongy-form-section-title{margin:12px 0 6px;padding-top:8px;border-top:1px solid var(--tm-border,#E2E8F0);font-size:12.5px;font-weight:600;line-height:1.25;color:inherit;opacity:.92}
.dongy-pane-head + .dongy-form-section-title{margin-top:0;padding-top:0;border-top:0}
.dongy-chip-group + .dongy-form-section-title,
.dongy-form-row + .dongy-form-section-title{margin-top:14px}
.dongy-chip-group{row-gap:6px}
.dongy-chip-group span{min-width:128px}
@media(max-width:1000px){
  .dongy-form-section-title{margin-top:10px}
  .dongy-chip-group span{min-width:0}
}


/* Phase 5.3: 3 chỉ số thể trạng ngắn luôn nằm inline để tiết kiệm diện tích. */
.dongy-metric-row{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:640px){
  .dongy-form-row.dongy-metric-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .dongy-metric-row label{font-size:11.5px;gap:3px}
  .dongy-metric-row input{font-size:12px;min-height:34px;padding:6px 7px}
}
@media(max-width:380px){
  .dongy-form-row.dongy-metric-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .dongy-metric-row label{font-size:11px}
  .dongy-metric-row input{font-size:11.5px;padding:5px 6px}
}


.dongy-draft-panel{margin:8px 0 12px;padding:10px;border:1px solid var(--tm-border,#ddd);border-radius:10px;background:var(--tm-bg,#fff)}
.dongy-draft-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.dongy-draft-head h3{margin:0;font-size:14px;font-weight:600}
@media(max-width:640px){.dongy-draft-head{align-items:flex-start;flex-direction:column}.dongy-draft-head .tm-btn{width:auto}}

/* Phase 6.5: Ghi chú hành chính gọn hơn, không chen cao lệch trong cụm hành chính. */
.dongy-admin-note-row{align-items:end}
.dongy-admin-note-label{grid-column:span 3}
.dongy-admin-note-label textarea{min-height:42px}
@media(max-width:1000px){
  .dongy-admin-note-label{grid-column:span 1}
}

/* Phase 7.2: Bước triệu chứng động theo triệu chứng chính. */
.dongy-dynamic-chip-group button[hidden]{display:none!important}
.dongy-info-line[hidden]{display:none!important}


/* V18: Tứ chẩn gọn hơn, bỏ lặp nhãn, canh hàng rõ cho các nhóm Răng/Nướu/Lưỡi... */
.dongy-pane[data-dongy-pane="symptom"] .dongy-form-section-title{font-size:15px;font-weight:600;}
.dongy-chip-group[data-v1-rendered="1"]{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:10px 0 14px;}
.dongy-chip-group[data-v1-rendered="1"] > span,
.dongy-chip-group[data-v1-rendered="1"] .dongy-chip-subtitle{display:none!important;}
.dongy-v1-field-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;align-items:start;width:100%;}
.dongy-v1-field-label{font-size:13.5px;font-weight:600;line-height:1.35;padding-top:7px;color:inherit;}
.dongy-v1-field-chips{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:flex-start;}
.dongy-v1-field-chips button{justify-content:flex-start;text-align:left;white-space:normal;line-height:1.3;max-width:100%;}
.dongy-v1-field-row.is-ungrouped{grid-template-columns:1fr;}
.dongy-v1-field-row.is-ungrouped .dongy-v1-field-label{display:none;}
.dongy-pane[data-dongy-pane="symptom"] .dongy-form label{font-weight:600;}
@media(max-width:1000px){
  .dongy-v1-field-row{grid-template-columns:140px minmax(0,1fr);gap:10px;}
}
@media(max-width:700px){
  .dongy-v1-field-row{grid-template-columns:1fr;gap:6px;}
  .dongy-v1-field-label{padding-top:0;}
}


/* V19: gọn luồng bổ sung Hồ sơ Y khoa và nhắc hỏi bổ sung theo Tứ chẩn. */
.dongy-yhoc-panel .dongy-tlyk-target-row{grid-template-columns:1fr auto;align-items:end;}
.dongy-yhoc-summary strong{font-weight:600;}
.dongy-review-notes{margin-top:8px;padding-top:8px;border-top:1px dashed var(--tm-border,#CBD5E1);}
.dongy-review-notes ul{margin:6px 0 0 18px;padding:0;}
@media(max-width:800px){.dongy-yhoc-panel .dongy-tlyk-target-row{grid-template-columns:1fr;}}

/* V24: Hồ sơ Đông y của tôi + xem/share hồ sơ. */
.dongy-case-viewer{border:1px solid var(--tm-border,#E2E8F0);border-radius:12px;padding:12px;margin-top:12px;background:inherit}
.dongy-case-view-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--tm-border,#E2E8F0);padding-bottom:8px;margin-bottom:8px}
.dongy-case-view-head h3{margin:0;font-size:16px;line-height:1.25}
.dongy-case-view-head p{margin:3px 0 0;color:var(--tm-muted,#64748B);font-size:13px}
.dongy-case-view-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0;padding:10px;border:1px solid var(--tm-border,#E2E8F0);border-radius:10px;background:color-mix(in srgb,var(--tm-bg,#fff) 86%,var(--tm-btn-tinh-bg,#EFF6FF))}
.dongy-case-view-summary span{display:block;color:var(--tm-muted,#64748B);font-size:12px;margin-bottom:3px}
.dongy-case-view-summary strong{font-size:13px;word-break:break-word}
.dongy-case-content-title{font-size:14px;font-weight:650;margin:12px 0 4px}
.dongy-case-section{margin:12px 0 0}
.dongy-case-section h4{font-size:14px;margin:0 0 6px;font-weight:650}
.dongy-case-row{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:8px;align-items:start;border-top:1px solid var(--tm-border,#E2E8F0);padding:7px 0;font-size:13px;line-height:1.35}
.dongy-case-row:first-of-type{border-top:0}
.dongy-case-row b{font-weight:650}
.dongy-case-row span{word-break:break-word}
.dongy-my-case-item .dongy-item-meta{margin-top:8px}
@media(max-width:720px){.dongy-case-row,.dongy-case-view-summary{grid-template-columns:1fr;gap:6px}.dongy-case-view-head{align-items:flex-start;flex-direction:column}}
