:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#12344d;background:#f1f8fa}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.panel{background:#fff;width:min(100%,440px);padding:36px;border:1px solid #dce6ea;border-radius:20px;box-shadow:0 16px 40px #12344d12}.mark{width:54px;height:54px;display:grid;place-items:center;background:#eaf4f7;color:#176b87;border-radius:16px;font-size:30px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.08em;color:#c54b31}.panel h1{font-size:25px;margin:8px 0}.muted{color:#415b6b;line-height:1.6}.panel label{display:block;font-weight:650;margin:18px 0 7px}.panel input:not([type=hidden]){width:100%;padding:13px;border:1px solid #b7cdd5;border-radius:10px}.panel button{width:100%;margin-top:22px}.panel button,.top button{background:#176b87;color:white;border:0;border-radius:10px;padding:12px 18px;font-weight:700;cursor:pointer}.panel button:hover{background:#10556e}input:focus-visible,button:focus-visible{outline:3px solid #e76f51;outline-offset:2px}.small{font-size:12px;color:#52636e;text-align:center;margin-top:24px}.error{padding:12px;border-radius:8px;color:#8b2416;background:#fff0ec}.top{background:white;padding:16px max(24px,calc((100vw - 1100px)/2));display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce6ea}.top span{color:#c54b31}.top .outline{background:#c54b31;border:1px solid #c54b31;color:#fff;padding:9px 14px;border-radius:9px;font-size:14px;font-weight:650}.top .outline:hover{background:#a53c26;border-color:#a53c26}.dash{max-width:1100px;margin:50px auto;padding:0 24px}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}.tiles article{background:#fff;padding:22px;border-radius:16px;border:1px solid #dce6ea}.tiles h2{font-size:18px}.tiles p{color:#52636e}@media(max-width:700px){.tiles{grid-template-columns:1fr}.panel{padding:24px}}

/* DCM v0.2 — Patient Management */
a{color:#176b87}a:hover{color:#10556e}.brand-link{font-weight:800;font-size:20px;text-decoration:none;color:#12344d}.brand-link span{color:#c54b31}.nav-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.nav-actions a{text-decoration:none;font-size:14px;font-weight:650;padding:9px 14px;border-radius:9px;background:#eaf1f4;color:#2f4a57;border:1px solid #cddde4;line-height:1.2;white-space:nowrap}.nav-actions a:hover{background:#d9e6ec;color:#12344d}.nav-actions a[aria-current=page]{background:#176b87;border-color:#176b87;color:#fff}.nav-actions form{margin:0}.module{margin-top:30px;margin-bottom:40px}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}.heading-row h1{margin:6px 0 3px;font-size:28px}.heading-row .muted{margin:0}.module-card{background:white;border:1px solid #dce6ea;border-radius:16px;padding:22px;margin:18px 0}.module-card h2{font-size:19px;margin-top:0}.btn{display:inline-block;text-decoration:none;background:#176b87;border:1px solid #176b87;color:#fff;font-size:14px;font-weight:700;padding:11px 17px;border-radius:10px;cursor:pointer;white-space:nowrap}.btn:hover{background:#10556e;color:white}.btn-muted{background:#c54b31;border-color:#c54b31;color:#fff}.btn-muted:hover{background:#a53c26;border-color:#a53c26;color:#fff}.btn-finish{background:#2f6f3e;border-color:#2f6f3e;color:#fff}.btn-finish:hover{background:#245730;border-color:#245730;color:#fff}.btn-warn{background:#5b3a8c;border-color:#5b3a8c;color:#fff}.btn-warn:hover{background:#482d71;border-color:#482d71;color:#fff}.btn-danger{background:#5c1410;border-color:#5c1410;color:#fff}.btn-danger:hover{background:#430e0b;border-color:#430e0b;color:#fff}.search-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.search-form .field{flex:1;min-width:240px}.field label{display:block;font-weight:650;font-size:14px;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid #b7cdd5;padding:11px 12px;border-radius:9px;background:#fff;color:#12344d;font:inherit}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid #e76f51;outline-offset:3px}.overflow-auto{overflow-x:auto}.patient-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;min-width:700px}.patient-table th,.patient-table td{border-bottom:1px solid #e5eef2;padding:13px 10px}.patient-table th{background:#f1f8fa;color:#12344d;font-weight:750}.patient-table tr:last-child td{border-bottom:0}.patient-table td a{font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.full{grid-column:1/-1}.form-actions,.inline-actions,.pager{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:22px}.pager{justify-content:center}.pager form{margin:0}.field-error{color:#a32c20;display:block;margin-top:5px;font-weight:600}.field [aria-invalid=true]{border-color:#c54b31}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-grid dt{font-size:13px;color:#52636e;margin-bottom:5px}.detail-grid dd{margin:0;font-size:15px;white-space:normal;overflow-wrap:anywhere}.dcm-footer{text-align:center;color:#52636e;font-size:12px;padding:20px}@media(max-width:700px){.top{padding:14px 18px;align-items:flex-start;flex-direction:column}.nav-actions{gap:12px}.form-grid,.detail-grid{grid-template-columns:1fr}.module-card{padding:16px}.heading-row h1{font-size:24px}.search-form{align-items:stretch}.search-form .field{min-width:100%}}

/* DCM v0.6-d1 — Responsive patient list/profile (scoped, preserves other tables). */
#patient-live-results, #patient-live-results .module-card { min-width:0; }
#patient-live-results .patient-table td { overflow-wrap:anywhere; }
#patient-live-results .patient-table td a { white-space:normal; }
/* Preserve HTML table semantics and the Live Search replacement target. */
@media (max-width: 860px) {
  #patient-live-results .overflow-auto { overflow-x:visible; }
  #patient-live-results .patient-table { min-width:0; width:100%; display:block; border-collapse:separate; }
  #patient-live-results .patient-table thead {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
  }
  #patient-live-results .patient-table tbody { display:grid; grid-template-columns:1fr; gap:12px; min-width:0; }
  #patient-live-results .patient-table tbody tr {
    display:block; background:#fff; border:1px solid #dce6ea;
    border-radius:12px; padding:8px 12px; min-width:0;
  }
  #patient-live-results .patient-table tbody td {
    display:grid; grid-template-columns:minmax(88px,36%) minmax(0,1fr);
    align-items:start; column-gap:10px; padding:9px 0;
    border-bottom:1px solid #edf2f5; min-width:0; white-space:normal;
  }
  #patient-live-results .patient-table tbody td:last-child { border-bottom:0; }
  #patient-live-results .patient-table tbody td::before {
    content:attr(data-label); color:#52636e; font-weight:650;
    font-size:12px; line-height:1.45; overflow-wrap:anywhere;
  }
  #patient-live-results .patient-table tbody td > *,
  #patient-live-results .patient-table tbody td { overflow-wrap:anywhere; }
  .heading-row > div { min-width:0; }
  .heading-row h1 { overflow-wrap:anywhere; }
  .dcm-patient-visit-actions .btn { white-space:normal; }
}
@media (max-width: 380px) {
  #patient-live-results .patient-table tbody td { grid-template-columns:minmax(76px,38%) minmax(0,1fr); column-gap:7px; }
}
