/* DEV-3.06 | 04-B16-A Patient Basic Edit */
.patient-edit-basic, .patient-edit-basic * { box-sizing: border-box; }
.patient-edit-basic {
    width: 100%; min-height: 100%; padding: 14px 18px 20px;
    background: var(--v2-page-bg, #f5f8fa); color: #12324a;
}
.patient-edit-basic[hidden] { display: none !important; }
.patient-edit-basic__header { display:flex; align-items:center; gap:18px; margin-bottom:12px; }
.patient-edit-basic__back { min-width:112px; height:42px; border:0; border-radius:9px; background:#07586a; color:#fff; font-weight:800; font-size:14px; cursor:pointer; }
.patient-edit-basic__identity { flex:1; min-width:0; }
.patient-edit-basic__identity h1 { margin:0; font-size:24px; line-height:1.2; }
.patient-edit-basic__identity p { margin:4px 0 0; color:#6a8191; font-size:12px; }
.patient-edit-basic__deceased { min-width:68px; height:42px; border:1px solid #e1b8b4; border-radius:9px; background:#fff; color:#b4322d; font-weight:900; cursor:pointer; }
.patient-edit-basic__tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #ccd9e3; border-radius:10px; overflow:hidden; background:#fff; margin-bottom:14px; }
.patient-edit-basic__tab { height:54px; min-height:54px; padding:0 16px; border:0; border-right:1px solid #ccd9e3; background:#fff; color:#17364c; font-size:16px; font-weight:800; cursor:pointer; }
.patient-edit-basic__tab:last-child { border-right:0; }
.patient-edit-basic__tab.is-active { color:#087946; background:#eef9f5; box-shadow:inset 0 -3px #6fb99c; }
.patient-edit-basic__form { display:grid; gap:9px; }
.patient-edit-card { background:#fff; border:1px solid #d7e1e8; border-radius:11px; padding:12px 14px; box-shadow:0 2px 9px rgba(24,61,83,.035); }
.patient-edit-grid { display:grid; gap:12px 16px; align-items:start; }
.patient-edit-grid--device { grid-template-columns:.9fr 1fr 1.2fr 1.05fr 1.05fr; }
.patient-edit-grid--core { grid-template-columns:1.15fr 1.05fr .95fr .85fr; }
.patient-edit-grid--identity { grid-template-columns:1.25fr 1.15fr 1fr 1fr; }
.patient-edit-grid--address { grid-template-columns:.9fr 1fr .7fr; }
.patient-edit-field { min-width:0; position:relative; border-radius:9px; transition:background .15s ease, box-shadow .15s ease; }
.patient-edit-field label { display:block; margin:0 0 5px; font-size:12px; font-weight:800; color:#234860; }
.patient-edit-field label .required { color:#d2463c; margin-left:2px; }
.patient-edit-field input,.patient-edit-field select,.patient-edit-field textarea { width:100%; min-height:39px; border:1px solid #cbd9e3; border-radius:8px; background:#fff; color:#13354d; font:inherit; font-size:13px; padding:8px 10px; outline:none; transition:border-color .15s ease,box-shadow .15s ease,background .15s ease; }
.patient-edit-field textarea { min-height:68px; resize:vertical; }
.patient-edit-field input:focus,.patient-edit-field select:focus,.patient-edit-field textarea:focus { border-color:#2a8c8d; box-shadow:0 0 0 3px rgba(42,140,141,.12); }
.patient-edit-field input:disabled,.patient-edit-field select:disabled { background:#f2f5f7; color:#91a0aa; cursor:not-allowed; }
.patient-edit-field.is-changed { background:#fff8e9; box-shadow:0 0 0 3px #fff8e9; }
.patient-edit-field.is-changed input,.patient-edit-field.is-changed select,.patient-edit-field.is-changed textarea { border-color:#d7a44b; background:#fffdf7; }
.patient-edit-field.is-error input,.patient-edit-field.is-error select,.patient-edit-field.is-error textarea { border-color:#d9554e !important; background:#fff8f8 !important; box-shadow:0 0 0 2px rgba(217,85,78,.08); }
.patient-edit-field__hint,.patient-edit-status { display:block; min-height:15px; margin-top:4px; font-size:10.5px; color:#718492; }
.patient-edit-status[data-level="ok"]{color:#137258}.patient-edit-status[data-level="warning"]{color:#9a5b12}.patient-edit-status[data-level="error"]{color:#b23a35}.patient-edit-status[data-level="checking"]{color:#617886}
.patient-edit-date-wrap { position:relative; }.patient-edit-date-wrap input{padding-right:42px}.patient-edit-date-button{position:absolute;right:5px;top:5px;width:30px;height:29px;border:0;border-radius:6px;background:transparent;color:#365d73;cursor:pointer;font-size:15px}.patient-edit-date-button:hover{background:#edf5f5}
.patient-edit-candidate-box { position:absolute; z-index:52000; top:calc(100% + 5px); left:0; width:100%; }
.patient-edit-identity-wrap { display:flex; align-items:center; gap:7px; }.patient-edit-identity-wrap input{flex:1}.patient-edit-identity-badge{flex:0 0 auto;border-radius:999px;padding:5px 8px;background:#eef4f7;color:#5f7180;font-size:10px;font-weight:800}.patient-edit-identity-badge.is-passport{background:#e8f5f3;color:#0e7462}
.patient-edit-phone-list{display:grid;gap:8px}.patient-edit-phone-row{display:grid;grid-template-columns:1.25fr .9fr auto;gap:12px;align-items:end}.patient-edit-phone-row[hidden]{display:none!important}.patient-edit-phone-actions{display:flex;justify-content:flex-end;margin-top:9px}.patient-edit-add-button,.patient-edit-remove-button{min-height:34px;border-radius:7px;border:1px solid #7ab99e;background:#fff;color:#167256;font-weight:800;cursor:pointer;padding:0 12px}.patient-edit-remove-button{border-color:#d9b5b1;color:#a94c45}.patient-edit-add-button:disabled{opacity:.45;cursor:not-allowed}
.patient-edit-error-summary{border:1px solid #e7aaa5;border-radius:9px;background:#fff4f3;color:#8d302b;padding:9px 12px;font-size:12px}.patient-edit-error-summary[hidden]{display:none!important}.patient-edit-error-summary ul{margin:5px 0 0 18px;padding:0}
.patient-edit-basic__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:3px 2px 0}.patient-edit-save-status{font-size:11px;color:#72838e}.patient-edit-save-status.is-dirty{color:#a26720;font-weight:800}.patient-edit-basic__actions{display:flex;gap:9px}.patient-edit-action{min-width:96px;min-height:40px;border:1px solid #c6d4dd;border-radius:8px;background:#fff;color:#173f55;font-weight:800;cursor:pointer;padding:0 14px}.patient-edit-action--save{background:#087867;border-color:#087867;color:#fff}.patient-edit-action:disabled{opacity:.45;cursor:not-allowed}
.patient-edit-remark-wrap{position:relative}.patient-edit-remark-count{position:absolute;right:10px;bottom:8px;font-size:10px;color:#7a8d9a}
/* 04-B16 archived/deceased presentation */
.patient-workspace.is-deceased .patient-workspace__layout,.patient-workspace.is-deceased .patient-workspace__footnote{filter:saturate(.28);opacity:.78}.patient-workspace.is-deceased #patient-workspace-header-status{filter:none;opacity:1}.patient-workspace.is-deceased #patient-workspace-add-followup{display:none!important}.patient-workspace.is-deceased #patient-workspace-title::after{content:"  · 已停止更新";font-size:12px;color:#b4322d;font-weight:800}
@media(max-width:1180px){.patient-edit-grid--device{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-edit-grid--core,.patient-edit-grid--identity{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.patient-edit-basic{padding:10px}.patient-edit-grid--device,.patient-edit-grid--core,.patient-edit-grid--identity,.patient-edit-grid--address,.patient-edit-phone-row{grid-template-columns:1fr}.patient-edit-basic__footer{align-items:stretch;flex-direction:column}.patient-edit-basic__actions{width:100%}.patient-edit-action{flex:1}}
@media(max-width:700px){.patient-edit-basic__tabs{grid-template-columns:1fr}.patient-edit-basic__tab{border-right:0;border-bottom:1px solid #ccd9e3}.patient-edit-basic__tab:last-child{border-bottom:0}}
