/* Dedicated medical workspace; receipt and cash screens keep their own rules. */
#dr-print-document { display: none; }
@media screen {
 .ng-three-user-roles { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .dr-patients { border-color: #c9dced; }
 .dr-patients .filter-row { background: #edf5ff; border-radius: 12px 12px 0 0; }
 .dr-patient-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 20px; }
 .dr-patient-item { display: flex; align-items: center; gap: 14px; padding: 18px; text-align: left; background: #fff; border: 1px solid #d6e2ec; border-radius: 10px; color: #193844; cursor: pointer; min-width: 0; }
 .dr-patient-item:hover { border-color: #286698; background: #f4f8ff; }
 .dr-patient-item>span:nth-child(2) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
 .dr-patient-item strong { display: block; font-size: 17px; line-height: 1.5; }
 .dr-patient-item .secondary { font-size: 14px; line-height: 1.6; margin-top: 3px; }
 .dr-patient-icon { display: grid; place-items: center; width: 42px; height: 42px; flex-shrink: 0; border-radius: 50%; background: #edf5ff; color: #286698; }
 .dr-patient-icon svg { width: 22px; height: 22px; }
 .dr-open-label { font-size: 14px; color: #125c77; white-space: nowrap; }
 .dr-empty { padding: 36px 24px; text-align: center; color: #526873; }
 .dr-empty h2,.dr-empty h3 { color: #193844; margin-bottom: 6px; }
 .dr-empty-small { padding: 22px 10px; }
 .dr-patient-meta { display: flex; gap: 16px 38px; flex-wrap: wrap; margin: 0 0 22px; padding: 18px 22px; border: 1px solid #c9dced; border-radius: 12px; background: #edf5ff; }
 .dr-patient-meta>span { font-size: 16px; }
 .dr-patient-meta b { display: block; color: #526873; font-size: 14px; font-weight: 500; margin-bottom: 2px; }
 .dr-tabs { display: flex; gap: 8px; margin-bottom: 18px; padding: 5px; border-radius: 12px; background: #e6edf0; width: fit-content; max-width: 100%; }
 .dr-tabs button { display: inline-flex; align-items: center; gap: 8px; border: 0; background: transparent; color: #39515d; padding: 11px 18px; font-size: 16px; line-height: 1.5; border-radius: 8px; cursor: pointer; }
 .dr-tabs svg { width: 19px; height: 19px; }
 .dr-tabs [aria-selected=true] { color: #fff; background: #116e75; }
 .dr-history { border-color: #c9dced; }
 .dr-history>.card-head { background: #edf5ff; border-radius: 12px 12px 0 0; }
 .dr-history-content { padding: 22px; }
 .dr-history-content p { font-size: 16px; line-height: 1.6; }
 .dr-visit { border: 1px solid #d4e0e7; border-radius: 10px; margin-bottom: 14px; overflow: hidden; }
 .dr-visit>summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 18px; cursor: pointer; background: #f4f8fc; list-style: none; }
 .dr-visit>summary::-webkit-details-marker { display: none; }
 .dr-visit>summary>span:first-child { display: flex; flex-wrap: wrap; gap: 3px 18px; align-items: baseline; }
 .dr-visit>summary strong { font-size: 17px; }
 .dr-visit>summary span span,.dr-summary-label { color: #526873; font-size: 14px; }
 .dr-summary-label { white-space: nowrap; }
 .dr-visit-body { padding: 18px; }
 .dr-clinical-section { margin: 0 0 16px; }
 .dr-clinical-section h4 { font-size: 15px; color: #365763; margin: 0 0 5px; }
 .dr-clinical-section p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
 .dr-clinical-section ul { padding-left: 20px; margin: 8px 0 0; }
 .dr-clinical-section li { margin: 0 0 10px; font-size: 16px; line-height: 1.6; }
 .dr-clinical-section li span { display: block; white-space: pre-wrap; overflow-wrap: anywhere; }
 .dr-visit-actions { display: flex; flex-wrap: wrap; gap: 12px 24px; padding-top: 8px; border-top: 1px solid #e2e9ed; }
 .dr-visit-actions button { display: inline-flex; align-items: center; gap: 7px; padding: 6px 0; font-size: 15px; }
 .dr-visit-actions svg { width: 18px; height: 18px; }
 .dr-correction-note { background: #fff5e6; color: #744911; padding: 10px 12px; border-radius: 6px; }
 .dr-billing-status { display: inline-block; border: 1px solid #bcded2; border-radius: 6px; padding: 5px 10px; color: #0c5a53; background: #eaf7f1; font-size: 14px !important; margin: 0 0 16px; }
 .dr-history-legacy { margin-top: 24px; }
 .dr-history-legacy>h3 { font-size: 18px; margin-bottom: 12px; }
 .dr-note-text { white-space: pre-wrap; overflow-wrap: anywhere; }
 .dr-document { display: flex; align-items: center; gap: 14px; border-bottom: 1px solid #e2e9ed; padding: 13px 0; }
 .dr-document>svg { width: 24px; height: 24px; color: #286698; flex-shrink: 0; }
 .dr-document>div { flex: 1; min-width: 0; overflow-wrap: anywhere; }
 .dr-document .secondary { font-size: 14px; }
 .dr-prior-services { margin-top: 24px; border-top: 1px solid #e2e9ed; padding-top: 15px; }
 .dr-prior-services>summary { cursor: pointer; font-size: 16px; color: #194e79; }
 .dr-prior-sale { display: grid; grid-template-columns: 120px 1fr; gap: 7px 14px; padding: 12px 0; font-size: 15px; border-bottom: 1px solid #edf1f4; }
 .dr-prior-sale strong { font-weight: 500; }
 .dr-prior-sale small { color: #9b391f; }
 .dr-consultation { display: grid; gap: 18px; }
 .dr-consultation .card { margin: 0; }
 .dr-consultation-main { border-color: #c9dced; }
 .dr-consultation-main>.card-head { background: #edf5ff; border-radius: 12px 12px 0 0; }
 .dr-services { border-color: #dacfec; }
 .dr-services>.card-head { background: #f3eefb; border-radius: 12px 12px 0 0; }
 .dr-medications { border-color: #bcded2; }
 .dr-medications>.card-head { background: #eaf7f1; border-radius: 12px 12px 0 0; }
 .dr-consultation .card-head h2 { font-size: 21px; }
 .dr-consultation .card-head p { margin-top: 3px; font-size: 15px; }
 .dr-consultation .card-head { flex-wrap: wrap; gap: 12px; }
 .dr-print-draft { flex-shrink: 0; }
 .dr-medication-choice { min-width: 0; }
 .dr-medication-other { margin-top: 10px; }
 .dr-medication-other[hidden] { display: none; }
 .dr-form-fields { display: grid; gap: 16px; border: 0; margin: 0; min-width: 0; padding: 22px; }
 .dr-two-col,.dr-three-col { display: grid; gap: 16px; grid-template-columns: repeat(2,minmax(0,1fr)); }
 .dr-three-col { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .dr-field { display: grid; gap: 7px; font-size: 15px; color: #193844; min-width: 0; }
 .dr-field>span { font-weight: 600; }
 .dr-field input,.dr-field select,.dr-field textarea,#dr-service-search,#dr-patient-search { font-size: 16px; min-width: 0; width: 100%; }
 .dr-field textarea { resize: vertical; min-height: 72px; line-height: 1.55; }
 .dr-optional { padding-top: 2px; }
 .dr-optional>summary { color: #286698; cursor: pointer; font-size: 15px; margin-bottom: 14px; }
 .dr-optional .dr-two-col { margin-bottom: 16px; }
 .dr-service-results { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
 .dr-service-option { display: flex; align-items: center; justify-content: space-between; gap: 10px; text-align: left; border: 1px solid #dacfec; color: #193844; background: #fff; padding: 12px; border-radius: 8px; cursor: pointer; min-width: 0; }
 .dr-service-option:hover { background: #f3eefb; border-color: #7050a1; }
 .dr-service-option strong { display: block; font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; }
 .dr-service-option small { display: block; color: #526873; font-size: 14px; margin-top: 3px; }
 .dr-service-option>span:last-child { color: #7050a1; font-size: 22px; }
 .dr-search-hint { color: #526873; font-size: 14px; line-height: 1.6; margin: 4px 0; grid-column: 1/-1; }
 .dr-manual-service { display: flex; gap: 12px; align-items: flex-end; padding-top: 7px; }
 .dr-manual-service .dr-field { flex: 1; }
 .dr-manual-service button { min-height: 45px; }
 .dr-selected-title { display: flex; gap: 8px; align-items: center; font-weight: 600; font-size: 16px; border-top: 1px solid #dce5e9; padding-top: 15px; }
 .dr-selected-title span { background: #eaf0f4; border-radius: 20px; padding: 2px 9px; font-size: 14px; }
 .dr-selected-item { border-bottom: 1px solid #e2e9ed; padding: 12px 0; }
 .dr-selected-heading { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 8px; }
 .dr-selected-heading strong { font-size: 16px; overflow-wrap: anywhere; }
 .dr-selected-heading button { color: #b13f2f; font-size: 14px; flex-shrink: 0; min-height: 30px; }
 .dr-selected-item .dr-field>span { font-weight: 400; font-size: 14px; color: #526873; }
 .dr-selected-item p { margin: 4px 0; color: #526873; font-size: 15px; white-space: pre-wrap; }
 .dr-save-bar { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px 24px; padding: 20px 22px; background: #eaf7f1; border: 1px solid #bcded2; border-radius: 12px; }
 .dr-save-bar>p { margin: 0; font-size: 15px; color: #365d54; }
 .dr-save-bar>.form-error { grid-column: 1/-1; grid-row: 2; }
 .dr-save-bar>.btn { grid-column: 2; grid-row: 1; }
 .dr-load-error { color: #953c2b; background: #fff0ea; padding: 12px; border-radius: 8px; }
 .dr-consultation fieldset:disabled { opacity: .75; }
 .dr-patient-meta-simple { padding: 0; margin: -4px 0 18px; border: 0; background: transparent; gap: 10px 28px; }
 .dr-patient-meta-simple>span { display: flex; align-items: baseline; gap: 8px; font-size: 15px; }
 .dr-patient-meta-simple b { margin: 0; font-size: 15px; }
 .dr-simple-consultation { gap: 14px; }
 .dr-simple-consultation .dr-consultation-main>.card-head { justify-content: flex-start; align-items: center; padding: 16px 22px; gap: 12px; }
 .dr-simple-consultation .dr-consultation-main>.card-head h2 { font-size: 20px; }
 .dr-simple-consultation .dr-consultation-main>.card-head p { font-size: 14px; }
 .dr-step-number { display: grid; place-items: center; background: #286698; color: #fff; border-radius: 8px; width: 34px; height: 34px; flex-shrink: 0; font-size: 17px; font-weight: 600; }
 .dr-entry-section { overflow: hidden; }
 .dr-entry-summary { display: flex; align-items: center; gap: 12px; padding: 18px 22px; list-style: none; cursor: pointer; }
 .dr-entry-summary::-webkit-details-marker { display: none; }
 .dr-entry-title { flex: 1; min-width: 0; }
 .dr-entry-title strong { display: block; font-size: 19px; line-height: 1.5; }
 .dr-entry-title small { display: block; font-size: 14px; color: #526873; }
 .dr-entry-count { font-size: 15px; font-weight: 600; white-space: nowrap; }
 .dr-entry-chevron { display: flex; color: #526873; }
 .dr-entry-chevron svg { width: 19px; height: 19px; transition: transform .15s; }
 .dr-entry-section[open]>.dr-entry-summary .dr-entry-chevron svg { transform: rotate(90deg); }
 .dr-services>.dr-entry-summary { background: #f3eefb; color: #583b81; }
 .dr-services>.dr-entry-summary .dr-step-number { background: #7050a1; }
 .dr-medications>.dr-entry-summary { background: #eaf7f1; color: #0c5a53; }
 .dr-medications>.dr-entry-summary .dr-step-number { background: #13756b; }
 .dr-simple-optional { border-top: 1px solid #e1e8ed; padding-top: 10px; }
 .dr-simple-optional>summary { margin: 0; padding: 5px 0; font-size: 15px; }
 .dr-simple-optional[open]>summary { margin-bottom: 12px; }
 .dr-simple-optional .dr-two-col { margin-bottom: 0; }
 .dr-entry-print { padding: 0 22px 20px; }
 .dr-add-medication { justify-self: start; }
 .dr-simple-consultation .dr-form-fields { gap: 12px; }
 .dr-simple-consultation .dr-save-bar { padding: 16px 22px; }
 @media(max-width:640px) { .dr-entry-summary { padding: 16px 14px; gap: 9px; flex-wrap: wrap; } .dr-entry-title strong { font-size: 17px; } .dr-entry-count { font-size: 14px; } .dr-entry-print { padding: 0 14px 16px; } .dr-entry-print>.btn { width: 100%; } .dr-simple-consultation .dr-consultation-main>.card-head { padding: 14px; } .dr-patient-meta-simple { margin-bottom: 14px; } .dr-patient-meta-simple>span { font-size: 14px; } }
 @media(max-width:1050px) { .ng-three-user-roles { grid-template-columns: 1fr; } .dr-patient-grid { grid-template-columns: 1fr; } .dr-service-results { grid-template-columns: repeat(2,minmax(0,1fr)); } }
 @media(max-width:640px) { .dr-patient-grid,.dr-history-content,.dr-form-fields { padding: 14px; } .dr-patient-item { gap: 10px; padding: 14px; flex-wrap: wrap; } .dr-patient-icon { width: 34px; height: 34px; } .dr-open-label { margin-left: 44px; } .dr-two-col,.dr-three-col,.dr-service-results { grid-template-columns: 1fr; } .dr-tabs { width: 100%; } .dr-tabs button { flex: 1; justify-content: center; padding: 10px 8px; font-size: 15px; } .dr-tabs svg { display: none; } .dr-patient-meta { padding: 14px; gap: 12px 24px; } .dr-visit>summary { padding: 12px; } .dr-visit-body { padding: 14px; } .dr-visit>summary>span:first-child { display: grid; } .dr-summary-label { display: none; } .dr-manual-service { align-items: stretch; flex-direction: column; } .dr-prior-sale { grid-template-columns: 1fr; } .dr-save-bar { display: flex; flex-direction: column; align-items: stretch; padding: 16px; } .dr-document { flex-wrap: wrap; } .dr-document>a { margin-left: 38px; } }
}
@page dr-indications { size: A4 portrait; margin: 16mm; }
@media print {
 body.dr-printing>* { display: none !important; }
 body.dr-printing>#dr-print-document { display: block !important; page: dr-indications; font: 11pt/1.5 Arial,sans-serif; color: #000; }
 #dr-print-document .dr-print-header { display: flex; justify-content: space-between; border-bottom: 1px solid #333; padding-bottom: 9mm; margin-bottom: 7mm; }
 #dr-print-document .dr-print-header strong { font-size: 14pt; }
 #dr-print-document h1 { font-size: 16pt; margin: 0 0 2mm; }
 #dr-print-document .dr-print-patient { margin-bottom: 7mm; }
 #dr-print-document p { margin: 2mm 0; white-space: pre-wrap; overflow-wrap: anywhere; }
 #dr-print-document .dr-clinical-section { margin: 0 0 6mm; }
 #dr-print-document h4 { margin: 0 0 2mm; font-size: 11pt; }
 #dr-print-document ul { margin: 2mm 0; padding-left: 6mm; }
 #dr-print-document li { break-inside: avoid; margin-bottom: 4mm; }
 #dr-print-document li span { display: block; white-space: pre-wrap; }
 #dr-print-document .dr-print-footer { border-top: 1px solid #555; margin-top: 14mm; padding-top: 4mm; }
}
