/* provet-pet-jsp-slim-phase1-r1-20261010 css */
* { box-sizing: border-box; }
        html, body { margin: 0; min-height: 100%; background: #d6d6d6; color: #183449;
            font-family: "Microsoft JhengHei", "Microsoft YaHei", Arial, sans-serif; font-size: 12px; }
        button, input, select { font: inherit; color: inherit; }
        .pet-window { position: relative; width: 1880px; min-width: 1880px; height: 900px; min-height: 900px;
            max-height: 900px; margin: 5px auto; padding: 8px; overflow: hidden; background: rgb(221,255,221);
            border: 1px solid #8fa7b9; }
        .top-area { position: relative; height: 226px; }
        .toolbar { position: absolute; left: 0; top: 0; right: 0; height: 30px; display: flex; align-items: center;
            gap: 6px; white-space: nowrap; }
        .btn, button, select, input[type=date] { height: 24px; border: 1px solid #8ca1af;
            background: linear-gradient(#fff,#dce6ee); padding: 2px 12px; text-decoration: none; }
        .btn { display: inline-block; line-height: 18px; text-align: center; }
        .staff-select { width: 90px; padding: 1px 4px; }
        .pet-number { width: 58px; height: 22px; border: 1px solid #a8b2b8; background: #f8f8ff; text-align: center; }
        .staff-error { color: #a00020; margin-left: 5px; }
        .pet-summary { position: absolute; left: 0; top: 34px; width: 310px; height: 154px; padding: 8px;
            border: 5px solid #c5c5c5; background: #e8e8e8; color: #004080; font-size: 14px; line-height: 23px; }
        .pet-summary .section-help { top: 1px; right: 3px; }
        .pet-summary-message { color: #a00020; }
        .weight-input { width: 58px; height: 20px; padding: 1px 4px; border: 1px solid #8ca1af; background: #fff;
            color: #004080; text-align: right; }
        .weight-input:focus { outline: 2px solid #d59a22; outline-offset: 1px; background: #fffbea; }
        .weight-input[readonly] { border-color: transparent; background: transparent; }
        .weight-line { height: 23px; margin: 0; display: flex; align-items: center; white-space: nowrap; }
        .weight-submit { position: absolute; width: 1px; height: 1px; padding: 0; border: 0; overflow: hidden;
            clip: rect(0 0 0 0); white-space: nowrap; }
        .weight-warning { position: absolute; left: 0; top: 192px; width: 310px; height: 29px; border: 2px solid #808000;
            background: transparent; color: #800040; text-align: center; line-height: 25px; font-size: 13px; cursor: text; }
        .daily-panel{position:absolute;top: -3px;width:245px;height:221px}
        .medical-panel { left: 320px; }
        .temporary-panel { left: 575px; }
        .daily-title { height: 20px; padding-left: 2px; color: #284d3b; line-height: 20px; }
        .date-form { height: 28px; display: flex; gap: 6px; align-items: center; }
        .date-form input { width: 130px; padding: 1px 4px; background: #fff; }
        .date-form button { width: 66px; padding: 1px 6px; }
        .daily-table-wrap { height: 173px; overflow: auto; border: 1px solid #8c9ca7; background: #f2f2f2; }
        table { width: 100%; border-collapse: collapse; table-layout: fixed; }
        th { height: 23px; padding: 2px 4px; border: 1px solid #d6e1e8; background: #d97600; color: #fff;
            white-space: nowrap; }
        td { height: 24px; padding: 2px 4px; border: 1px solid #b2bcc3; background: #fff; white-space: nowrap;
            overflow: hidden; text-overflow: ellipsis; }
        .daily-table col:nth-child(1) { width: 48%; } .daily-table col:nth-child(2) { width: 25%; }
        .daily-table col:nth-child(3) { width: 27%; }
        .daily-table a { color: #183449; text-decoration: none; }
        .daily-table tr:hover td { background: #e4f2ff; }
        .selectable-pet-row { cursor: pointer; }
        .selectable-pet-row:focus td { outline: 2px solid #d59a22; outline-offset: -2px; }
        .empty-cell { color: #777; text-align: center; }
        .error-cell { color: #a00020; background: #fff0f0; }
        .tabs-area { position: absolute; left: 8px; right: 8px; top: 230px; bottom: 8px; }
        .tab-strip { display: flex; height: 31px; align-items: flex-end; overflow-x: auto; }
        .tab { flex-shrink: 0; min-width: 110px; height: 30px; padding: 0 14px; border: 1px solid #7f9db2; border-bottom: 0;
            border-radius: 7px 7px 0 0; background: #eef1f3; color: #183449; line-height: 29px; text-align: center;
            text-decoration: none; white-space: nowrap; }
        .tab.active { position: relative; z-index: 2; background: #f6f6f6; font-weight: bold;
            box-shadow: inset 0 3px 0 #49687d; }
        .tab-content { position: absolute; left: 0; right: 0; top: 30px; bottom: 0; border: 2px solid #7ca6c4;
            background: #f3f3f3; }
        .tab-content .section-help { top: 5px; right: 7px; }
        .controlled-drug-panel { position: absolute; inset: 7px; overflow: auto;
            padding: 16px; color: #183449; background: #fffaf4; }
        .controlled-drug-panel h2 { margin: 0 0 9px; font-size: 19px; }
        .controlled-drug-panel p { margin: 4px 0 14px; line-height: 1.5; }
        .controlled-drug-table { width: 100%; min-width: 780px; table-layout: auto; background: white; }
        .controlled-drug-table th, .controlled-drug-table td {
            border: 1px solid #d5c6b6; padding: 8px; text-align: left; }
        .controlled-drug-table th { background: #f9e9da; }
        .controlled-drug-table a { color: #064d85; }
        .controlled-drug-panel .controlled-note { margin-top: 14px; max-width: 900px; }
        .history-work { position: absolute; inset: 0; overflow: hidden; color: #183449; }
        .history-left { position: absolute; left: 10px; top: 8px; width: 500px; height: 590px; }
        .history-actions { height: 28px; display: flex; align-items: center; gap: 3px; white-space: nowrap; }
        .history-actions form { margin: 0; }
        .history-actions button { min-width: 95px; height: 24px; padding: 1px 8px; }
        .history-current { position: absolute; left: 0; right: 0; top: 34px; height: 168px; }
        .history-current-head, .history-all-head, .history-pane-title { height: 24px; padding: 2px 7px;
            border: 1px solid #8ca1af; background: #e7edf1; line-height: 19px; white-space: nowrap; }
        .history-number { width: 58px; height: 20px; padding: 1px 4px; border: 1px solid #a8b2b8;
            background: #f8f8ff; text-align: center; }
        .history-message { margin-left: 10px; color: #28744b; }
        .history-message.error { color: #a00020; }
        .history-field-name { color: #004080; font-weight: bold; }
        .history-text { display: block; width: 100%; height: calc(100% - 24px); resize: none; padding: 7px;
            border: 1px solid #8ca1af; border-top: 0; background: #fff; color: #183449; font: inherit; line-height: 19px; }
        .history-all { position: absolute; left: 0; right: 0; top: 210px; bottom: 0; }
        .history-all-head { color: #007f7f; text-align: center; }
        .history-right { position: absolute; left: 522px; top: 4px; width: 440px; height: 590px; }
        .history-med-pane { position: absolute; left: 0; right: 0; top: 0; height: 168px; }
        .history-drug-pane { position: absolute; left: 0; right: 0; top: 177px; height: 150px; }
        .history-table-wrap { height: calc(100% - 24px); overflow: auto; border: 1px solid #8ca1af; border-top: 0;
            background: #fff; }
        .history-table th { background: #d97600; }
        .history-table td { height: 25px; }
        .history-table tbody tr:not(.error-row) { cursor: pointer; }
        .history-table tbody tr:hover td { background: #e4f2ff; }
        .history-table .selected td { background: #fff1be; }
        .history-table a { display: block; color: #183449; text-decoration: none; }
        .history-med-table col:nth-child(1) { width: 32%; }
        .history-med-table col:nth-child(2) { width: 23%; }
        .history-med-table col:nth-child(3) { width: 33%; }
        .history-med-table col:nth-child(4) { width: 12%; }
        .history-drug-table col:nth-child(1) { width: 29%; }
        .history-drug-table col:nth-child(2) { width: 59%; }
        .history-drug-table col:nth-child(3) { width: 12%; }
        .history-drug-table td { height: 40px; white-space: normal; line-height: 17px; vertical-align: top; }
        .history-delete { min-width: 0; width: 42px; height: 22px; padding: 0 3px; color: #9f001f; }
        .history-remaining { position: absolute; left: 982px; right: 10px; top: 4px; bottom: 276px;
            border-left: 1px dashed #bdc7ce; color: #183449; }
        .treat-stage { overflow: hidden; }
        .treat-panel { position: absolute; border: 1px solid #aab6bd; background: #eeeeee; }
        .treat-panel-title { position: absolute; left: 8px; top: -1px; height: 20px; padding: 0 5px;
            background: #eeeeee; color: #004080; line-height: 20px; font-weight: bold; }
        .treat-panel-3 { left: 8px; top: 0; width: 500px; height: 142px; padding: 22px 9px 3px; }
        .treat-panel-3-grid { position: relative; display: grid;
            grid-template-columns: 62px 48px 18px 70px 43px 16px;
            grid-template-rows: 24px 24px 24px 1fr; width: 100%; height: 100%;
            align-items: center; column-gap: 3px; }
        .treat-panel-3-grid label { white-space: nowrap; }
        .treat-panel-3-grid input, .treat-panel-3-grid select { width: 100%; height: 21px; padding: 1px 4px;
            border: 1px solid #9eabb4; background: #fff; }
        .treat-drug-label { grid-column: 1; grid-row: 1; }
        .treat-drug-name { grid-column: 2 / 7; grid-row: 1; }
        .treat-route-types { position: absolute; left: 288px; right: 0; top: 0; height: 24px;
            display: flex; align-items: center; gap: 8px; white-space: nowrap; }
        .treat-route-types label { display: flex; gap: 2px; align-items: center; }
        .treat-route-types input { width: auto; height: auto; }
        .treat-days-label { grid-column: 1; grid-row: 2; }
        #treatDays { grid-column: 2; grid-row: 2; }
        .treat-days-unit { grid-column: 3; grid-row: 2; }
        .treat-total-value-label { grid-column: 4; grid-row: 2; }
        #treatTotalValue { grid-column: 5; grid-row: 2; }
        .treat-package-unit { grid-column: 6; grid-row: 2; margin-left: -1px; }
        .treat-often-label { grid-column: 1; grid-row: 3; }
        #treatOften { grid-column: 2 / 4; grid-row: 3; }
        .treat-route-label { grid-column: 4; grid-row: 3; }
        #treatRoute { grid-column: 5 / 7; grid-row: 3; }
        .treat-note-label { grid-column: 1; grid-row: 4; align-self: start; padding-top: 5px; }
        .treat-note { grid-column: 2 / 7; grid-row: 4; align-self: stretch; width: 100%; min-height: 31px;
            resize: none; border: 1px solid #9eabb4; background: #fff; }
        .treat-direction { position: absolute; left: 288px; right: 0; top: 28px; bottom: 0;
            width: auto; height: auto; resize: none; padding: 5px; overflow: auto;
            border: 1px solid #7798ad; background: #fff; color: #183449; font: inherit; line-height: 17px; }
        .treat-direction:focus { outline: 2px solid #d59a22; outline-offset: -2px; background: #fffbea; }
        .treat-panel-4 { left: 8px; top: 150px; width: 500px; height: 84px; padding: 22px 7px 6px; }
        .treat-panel-4 textarea { width: 100%; height: 54px; resize: none; border: 1px solid #9eabb4; background: #fff; }
        .treat-note-actions { position: absolute; top: -1px; right: 7px; display: flex; align-items: center; gap: 5px; }
        .treat-note-actions button { min-width: 72px; height: 19px; padding: 0 4px; font-size: 11px; }
        .treat-note-status { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
        .treat-add { position: absolute; left: 7px; top: 7px; width: 132px; height: 27px; border: 2px groove #c8d8c8;
            background: #e6ffe6; color: #804000; font-weight: bold; }
        .treat-add:focus, .treat-search-side input:focus { outline: 2px solid #d59a22; outline-offset: 1px; }
        .treat-panel-2 { left: 522px; right: 10px; top: 342px; bottom: 10px; padding: 7px; }
        .treat-search-side { position: absolute; left: 7px; top: 40px; width: 207px; bottom: 37px; }
        .treat-search-side input { width: 100%; height: 23px; padding: 2px 5px; border: 1px solid #9eabb4; background: #fff; }
        .treat-mini-wrap { position: absolute; left: 0; right: 0; top: 27px; bottom: 0; overflow: auto;
            border: 1px solid #8ca1af; background: #fff; }
        .treat-mini-table { width: 100%; border: 0; background: #fff; }
        .treat-mini-table th { background: #4f8fc2; }
        .treat-mini-table td { height: 24px; }
        .treat-mini-table .drug-merch { color: #4b6671; font-size: 11px; }
        .drug-search-row { cursor: pointer; }
        .drug-search-row:hover td, .drug-search-row.is-current td { background: #fff1be; }
        .drug-search-row[hidden] { display: none; }
        .drug-search-error td { height: auto; white-space: normal; color: #a00020; background: #fff0f0; }
        .treat-selected-wrap { position: absolute; left: 222px; right: 7px; top: 7px; bottom: 37px;
            overflow: auto; border: 1px solid #8ca1af; background: #fff; }
        .treat-selected-table th { background: #d97600; }
        .treat-selected-table td { height: 31px; padding: 2px; font-size: 10px; }
        .treat-selected-table .selected-drug-row { cursor: pointer; }
        .treat-selected-table .selected-drug-row.is-current td { background: #fff1be; }
        .treat-selected-table input { width: 100%; height: 22px; padding: 1px 3px; border: 1px solid #b7c1c8;
            background: #fff; font: inherit; text-align: right; }
        .treat-selected-table input[readonly] { border-color: transparent; background: transparent; color: #59656d; }
        .treat-selected-table .drug-name-input { text-align: left; color: #183449; }
        .treat-selected-table .controlled-register-choice { display:block; width:100%;
            max-width:100%; margin-top:3px; font-size:11px; border:1px solid #8aabbd; }
        .treat-selected-table .controlled-register-hint { display:block; color:#765019;
            font-size:10px; line-height:1.2; }
        .treat-selected-table .selected-drug-delete { width: 42px; height: 22px; padding: 0 3px; color: #9f001f; }
        .treat-selected-table col:nth-child(1) { width: 18%; }
        .treat-selected-table col:nth-child(2) { width: 8%; }
        .treat-selected-table col:nth-child(3) { width: 10%; }
        .treat-selected-table col:nth-child(4) { width: 10%; }
        .treat-selected-table col:nth-child(5) { width: 11%; }
        .treat-selected-table col:nth-child(6) { width: 9%; }
        .treat-selected-table col:nth-child(7) { width: 9%; }
        .treat-selected-table col:nth-child(8) { width: 8%; }
        .treat-selected-table col:nth-child(9) { width: 10%; }
        .treat-selected-table col:nth-child(10) { width: 7%; }
        .treat-send { position: absolute; left: 8px; bottom: 7px; width: 140px; height: 23px; }
        .treat-total-label { position: absolute; right: 88px; bottom: 11px; white-space: nowrap; }
        .treat-total { position: absolute; right: 7px; bottom: 7px; width: 76px; height: 23px; padding: 2px 5px;
            border: 1px solid #9eabb4; background: #fff; text-align: right; }
        .treat-scroll-3 { position: absolute; left: 516px; right: 0; top: 0; bottom: 0; border: 1px solid #8ca1af;
            background: #fff; overflow: auto; }
        .treat-scroll-3-title { position: sticky; top: 0; z-index: 2; height: 25px; padding: 4px 7px;
            background: #e7edf1; border-bottom: 1px solid #8ca1af; color: #004080; font-weight: bold; }
        .treat-history-table th { position: sticky; top: 25px; z-index: 1; background: #d97600; }
        .treat-history-table col:nth-child(1) { width: 31%; }
        .treat-history-table col:nth-child(2) { width: 45%; }
        .treat-history-table col:nth-child(3), .treat-history-table col:nth-child(4) { width: 12%; }
        .treat-history-table td { height: 42px; white-space: normal; vertical-align: top; }
        .treat-history-table button { width: 43px; height: 22px; padding: 0 3px; }
        .treat-history-table .treat-delete-drug { color: #9f001f; }
        .treat-stage [disabled], .treat-panel-2 [disabled] { color: #6f777c; cursor: default; }
        .empty-function-panel { position: absolute; inset: 8px; border: 1px solid #aab6bd;
            background: #f3f3f3; overflow: hidden; }
        .empty-function-title { height: 27px; padding: 4px 9px; border-bottom: 1px solid #aab6bd;
            background: #e7edf1; color: #004080; font-size: 14px; font-weight: bold; line-height: 18px; }
        .drug-management { position: absolute; left: 0; top: 0; width: 70%; height: 80%;
            display: grid; grid-template-columns: 455px minmax(0,1fr); gap: 8px; padding: 6px 7px 8px;
            overflow: hidden; color: #183449; }
        .drug-editor { position: relative; min-width: 0; min-height: 0;
            border: 1px solid #c3a181; background: rgb(255,232,208); }
        .drug-editor-title { height: 23px; padding: 2px 6px; line-height: 18px; border-bottom: 1px solid #c3a181;
            background: rgb(255,232,208); color: #604329; font-size: 12px; font-weight: bold; }
        .drug-editor-actions { position: absolute; right: 6px; top: 2px; display: flex; gap: 4px; }
        .drug-editor-actions button { width: 58px; height: 19px; padding: 0 3px; line-height: 17px;
            white-space: nowrap; border-color: #bc9e82; background: #fff8f0; }
        .drug-editor-actions button:hover { background: #ffdbb7; }
        .drug-management button:focus-visible, .drug-management input:focus-visible,
        .drug-management select:focus-visible, .drug-management textarea:focus-visible {
            outline: 2px solid #9f602b; outline-offset: 1px; }
        .drug-editor-message { height: 20px; padding: 2px 6px; line-height: 16px; color: #28744b; white-space: nowrap;
            overflow: hidden; text-overflow: ellipsis; }
        .drug-editor-message.error { color: #a00020; background: #fff0f0; }
        .drug-fields { display: grid; grid-template-columns: 76px minmax(0,1fr) 76px minmax(0,1fr);
            grid-auto-rows: 22px; align-items: center; column-gap: 4px; row-gap: 1px; padding: 4px 6px;
            max-height: calc(100% - 129px); overflow: auto; }
        .drug-fields label { text-align: right; white-space: nowrap; }
        .drug-fields input, .drug-fields textarea, .drug-fields select { width: 100%; min-width: 0; border: 1px solid #bc9e82;
            background: #fff; color: #183449; font: inherit; }
        .drug-fields input, .drug-fields select { height: 19px; padding: 0 3px; }
        .drug-fields textarea { height: 48px; padding: 3px 4px; resize: none; line-height: 17px; }
        .drug-fields input[readonly], .drug-fields textarea[readonly], .drug-fields select:disabled {
            border-color: #dac4ad; background: #fff8f0; color: #59656d; }
        .drug-fields .drug-span-3 { grid-column: span 3; }
        .drug-fields .drug-short { width: 56px; }
        .drug-select-field { display: flex; gap: 4px; align-items: center; min-width: 0; }
        .drug-select-field .drug-editable { min-width: 0; flex: 1 1 auto; }
        .drug-select-field .drug-choice { width: 78px; flex: 0 0 78px; padding: 0 2px; }
        .drug-dose-field { display: flex; flex-wrap: wrap; align-items: center; width: 100%; min-width: 0;
            row-gap: 2px; white-space: nowrap; }
        .drug-fields > label[for=drugDosageDog], .drug-fields > #drugDosageDog,
        .drug-fields > label[for=drugDosDog], .drug-fields > label[for=drugDosageCat],
        .drug-fields > #drugDosageCat, .drug-fields > label[for=drugDosCat],
        .drug-fields > .drug-dose-field { grid-row: span 2; }
        .drug-dose-field .drug-short { width: 56px; flex: 0 0 56px; }
        .drug-dose-unit { margin-left: 4px; color: #586a75; }
        .drug-inline-warning { flex-basis: 100%; margin-left: 0; color: #a00040; font-size: 10px;
            line-height: 13px; white-space: normal; }
        .drug-unit-warning { grid-column: 1 / 5; grid-row: span 2; min-height: 22px; color: #a00040; font-size: 11px;
            line-height: 14px; text-align: center; white-space: normal; }
        .drug-long-field { grid-column: 1 / 5; grid-row: span 2; display: grid;
            grid-template-columns: 76px minmax(0,1fr); column-gap: 4px; align-items: start; height: 45px; }
        .drug-long-field label { padding-top: 3px; }
        .drug-long-field textarea { height: 45px; }
        .drug-editor-note { position: absolute; left: 6px; right: 6px; bottom: 6px; height: 74px;
            padding: 4px 6px; border: 1px solid #c3a181; background: #fff8f0; color: #a00040;
            font-size: 11px; line-height: 16px; overflow: auto; }
        .drug-list-panel { position: relative; min-width: 0; min-height: 0;
            border: 1px solid #c3a181; background: rgb(255,232,208); }
        .drug-list-toolbar { height: 30px; display: flex; align-items: center; gap: 5px; padding: 3px 6px;
            border-bottom: 1px solid #c3a181; background: rgb(255,232,208); white-space: nowrap; }
        .drug-list-count { min-width: 110px; color: #604329; font-weight: bold; }
        .drug-list-toolbar label { margin-left: auto; }
        .drug-list-search { width: 161px; min-width: 0; height: 20px; padding: 0 4px; border: 1px solid #bc9e82; background: #fff; }
        .drug-list-wrap { position: absolute; left: 0; right: 0; top: 30px; bottom: 0; overflow: auto; background: #fff; }
        .drug-management-table th { position: sticky; top: 0; z-index: 1;
            height: 20px; padding: 1px 3px; background: #a56836; }
        .drug-management-table td { height: 23px; padding: 1px 3px; }
        .drug-management-table col:nth-child(1) { width: 7%; }
        .drug-management-table col:nth-child(2) { width: 24%; }
        .drug-management-table col:nth-child(3) { width: 22%; }
        .drug-management-table col:nth-child(4) { width: 13%; }
        .drug-management-table col:nth-child(5), .drug-management-table col:nth-child(6) { width: 12%; }
        .drug-management-table col:nth-child(7) { width: 10%; }
        .drug-management-row { cursor: pointer; }
        .drug-management-row:hover td, .drug-management-row.current td { background: #fff1be; }
        .drug-management-row[hidden] { display: none; }
        .drug-delete-disabled { width: 34px; height: 18px; padding: 0 2px; line-height: 16px;
            color: #777; border-color: #bc9e82; background: #fff8f0; }
        .vaccine-management { right: auto; bottom: auto; width: 70%; height: 80%;
            display: grid; grid-template-columns: 455px minmax(0,1fr); gap: 8px;
            padding: 6px 7px 8px; }
        .vaccine-management .vaccine-editor, .vaccine-management .drug-list-panel {
            position: relative; inset: auto; width: auto; min-width: 0; min-height: 0;
            border: 1px solid #c3a181; background: rgb(255,232,208); }
        .vaccine-management .drug-editor-title { height: 23px; padding: 2px 6px; line-height: 18px;
            border-color: #c3a181; background: rgb(255,232,208); color: #604329; font-size: 12px; }
        .vaccine-editor .drug-editor-actions { left: auto; right: 6px; top: 2px; gap: 4px; }
        .vaccine-editor .drug-editor-actions button { width: 58px; height: 19px; padding: 0 3px;
            line-height: 17px; white-space: nowrap; border-color: #bc9e82; background: #fff8f0; }
        .vaccine-editor .drug-editor-actions button:hover { background: #ffdbb7; }
        .vaccine-management button:focus-visible, .vaccine-management input:focus-visible,
        .vaccine-management textarea:focus-visible { outline: 2px solid #9f602b; outline-offset: 1px; }
        .vaccine-management .drug-editor-message { height: 20px; padding: 2px 6px; line-height: 16px; }
        .vaccine-fields { grid-template-columns: 68px minmax(0,1fr) 64px minmax(0,1fr);
            grid-auto-rows: 23px; column-gap: 4px; row-gap: 2px; padding: 4px 6px;
            max-height: calc(100% - 43px); overflow: auto; }
        .vaccine-fields input { height: 19px; min-width: 0; padding: 0 3px; border-color: #bc9e82; }
        .vaccine-fields textarea { min-width: 0; border-color: #bc9e82; }
        .vaccine-fields input[readonly], .vaccine-fields textarea[readonly] {
            border-color: #dac4ad; background: #fff8f0; }
        .vaccine-fields .drug-short { width: 56px; }
        .vaccine-fields .vaccine-full { grid-column: span 3; }
        .vaccine-fields .vaccine-long-field { grid-column: 1 / 5; grid-row: span 2; display: grid;
            grid-template-columns: 68px minmax(0,1fr); column-gap: 4px; align-items: start; height: 48px; }
        .vaccine-fields .vaccine-long-field label { padding-top: 3px; }
        .vaccine-fields .vaccine-long-field textarea { height: 48px; padding: 3px 4px; }
        .vaccine-management .drug-list-toolbar { height: 30px; gap: 5px; padding: 3px 6px;
            border-color: #c3a181; background: rgb(255,232,208); }
        .vaccine-management .drug-list-count { min-width: 110px; color: #604329; }
        .vaccine-management .drug-list-search { width: 161px; min-width: 0; height: 20px;
            padding: 0 4px; border-color: #bc9e82; }
        .vaccine-management .drug-list-wrap { top: 30px; background: #fff; }
        .vaccine-management-table th { position: sticky; top: 0; z-index: 1;
            height: 20px; padding: 1px 3px; background: #a56836; }
        .vaccine-management-table td { height: 23px; padding: 1px 3px; }
        .vaccine-management .drug-delete-disabled { width: 34px; height: 18px; padding: 0 2px;
            line-height: 16px; border-color: #bc9e82; background: #fff8f0; }
        .vaccine-management-table col:nth-child(1) { width: 6%; }
        .vaccine-management-table col:nth-child(2) { width: 6%; }
        .vaccine-management-table col:nth-child(3) { width: 19%; }
        .vaccine-management-table col:nth-child(4) { width: 19%; }
        .vaccine-management-table col:nth-child(5) { width: 14%; }
        .vaccine-management-table col:nth-child(6) { width: 12%; }
        .vaccine-management-table col:nth-child(7) { width: 7%; }
        .vaccine-management-table col:nth-child(8) { width: 6%; }
        .vaccine-management-table col:nth-child(9) { width: 5%; }
        .vaccine-management-table col:nth-child(10) { width: 6%; }
        .vaccine-management-row { cursor: pointer; }
        .vaccine-management-row:hover td, .vaccine-management-row.current td { background: #fff1be; }
        .vaccine-management-row[hidden] { display: none; }
        .tab-strip .tab.vaccination-tab, .tab-strip .tab.vaccine-management-tab,
        .tab-strip .tab.drug-management-tab,
        .tab-content.vaccination-tab, .tab-content.vaccine-management-tab,
        .tab-content.drug-management-tab { background: rgb(255,232,208); }
        .vaccination-work { position: absolute; left: 0; top: 0; width: 70%; height: 80%;
            display: grid; grid-template-columns: 595px minmax(0,1fr);
            grid-template-rows: 22px 226px minmax(0,1fr); gap: 8px; padding: 6px 7px 8px;
            color: #183449; }
        .vaccination-toolbar { grid-column: 1 / -1; min-width: 0;
            display: flex; align-items: center; gap: 8px; padding: 0 6px;
            border: 1px solid #c3a181; background: rgb(255,232,208); white-space: nowrap; }
        .vaccination-toolbar strong { color: #604329; }
        .vaccination-work button, .vaccination-work .btn { height: 20px; padding: 0 5px;
            border-color: #bc9e82; background: #fff8f0; line-height: 18px; white-space: nowrap; }
        .vaccination-work button:hover, .vaccination-work .btn:hover { background: #ffdbb7; }
        .vaccination-work button:focus-visible, .vaccination-work select:focus-visible,
        .vaccination-work input:focus-visible { outline: 2px solid #9f602b; outline-offset: 1px; }
        .vaccination-work button:disabled { color: #888; cursor: default; }
        .vaccination-work select { background: #fff; }
        .vaccination-toolbar .btn { width: 68px; height: 18px; padding: 0 4px; line-height: 16px; }
        .vaccination-status { color: #28744b; overflow: hidden; text-overflow: ellipsis; }
        .vaccination-status.error { color: #a00020; }
        .vaccination-card { position: relative; min-width: 0; min-height: 0;
            border: 1px solid #c3a181; background: rgb(255,232,208); overflow: hidden; }
        .vaccination-injection { grid-column: 1; grid-row: 2; }
        .vaccination-history { grid-column: 2; grid-row: 2; }
        .vaccination-schedule { grid-column: 1; grid-row: 3; }
        .vaccination-schedule-history { grid-column: 2; grid-row: 3; }
        .vaccination-card-title { height: 22px; padding: 2px 6px; line-height: 17px;
            border-bottom: 1px solid #c3a181; background: rgb(255,232,208);
            color: #604329; font-size: 12px; font-weight: bold; }
        .vaccination-editor-row { height: 29px; display: flex; align-items: center; gap: 5px; padding: 3px 6px; }
        .vaccination-editor-row select { width: 364px; height: 20px; padding: 0 4px; }
        .vaccination-editor-row button { width: 62px; }
        .vaccination-pending-wrap { position: absolute; left: 6px; right: 6px; top: 52px; bottom: 31px;
            overflow: auto; border: 1px solid #c3a181; background: #fff; }
        .vaccination-pending-table col:nth-child(1) { width: 38%; }
        .vaccination-pending-table col:nth-child(2) { width: 12%; }
        .vaccination-pending-table col:nth-child(3), .vaccination-pending-table col:nth-child(4),
        .vaccination-pending-table col:nth-child(5) { width: 13%; }
        .vaccination-pending-table col:nth-child(6) { width: 11%; }
        .vaccination-work th { height: 20px; padding: 1px 3px; background: #a56836; }
        .vaccination-pending-table td { height: 25px; padding: 1px 3px; }
        .vaccination-pending-table input { width: 100%; height: 18px; padding: 0 3px;
            border: 1px solid #aab6bd; background: #fff; text-align: right; }
        .vaccination-pending-table input[readonly] { border-color: transparent; background: transparent; }
        .vaccination-pending-table button { width: 34px; height: 18px; padding: 0 2px; line-height: 16px; color: #9f001f; }
        .vaccination-confirm { position: absolute; left: 6px; bottom: 5px; width: 64px; }
        .vaccination-total-label { position: absolute; right: 68px; bottom: 7px; white-space: nowrap; }
        .vaccination-total { position: absolute; right: 6px; bottom: 5px; width: 56px; height: 20px;
            padding: 0 3px; border: 1px solid #bc9e82; background: #fff; text-align: right; }
        .vaccination-table-wrap { position: absolute; left: 0; right: 0; top: 22px; bottom: 0;
            overflow: auto; background: #fff; }
        .vaccination-data-table th { position: sticky; top: 0; z-index: 1; }
        .vaccination-data-table td { height: 24px; padding: 1px 3px; }
        .vaccination-data-table .detail-cell { white-space: normal; height: auto; min-height: 24px; line-height: 18px; }
        .vaccination-data-table button { width: 34px; height: 18px; padding: 0 2px; line-height: 16px; color: #9f001f; }
        .vaccination-history-table col:nth-child(1) { width: 22%; }
        .vaccination-history-table col:nth-child(2) { width: 57%; }
        .vaccination-history-table col:nth-child(3) { width: 12%; }
        .vaccination-history-table col:nth-child(4) { width: 9%; }
        .vaccination-schedule-form { position: absolute; inset: 22px 0 0; padding: 6px; }
        .vaccination-schedule-controls { display: flex; flex-wrap: wrap; align-content: flex-start;
            align-items: center; gap: 5px; height: 48px; white-space: nowrap; }
        .vaccination-schedule-date-controls { display: flex; flex-basis: 100%; align-items: center; gap: 5px; }
        .vaccination-schedule-controls input[type=date] { width: 112px; height: 20px; padding: 0 2px; }
        .vaccination-schedule-controls label { display: inline-flex; align-items: center; gap: 2px; }
        .vaccination-schedule-controls input[type=radio] { margin: 0 2px; }
        .vaccination-schedule-controls select { width: 179px; height: 20px; padding: 0 3px; }
        .vaccination-schedule-controls button { width: 46px; }
        .vaccination-schedule-text { position: absolute; left: 6px; right: 6px; top: 58px; bottom: 31px;
            width: auto; height: auto; padding: 5px; resize: none; border: 1px solid #c3a181;
            background: #fff; color: #183449; font: inherit; line-height: 18px; }
        .vaccination-schedule-actions { position: absolute; left: 6px; bottom: 5px; display: flex; gap: 5px; }
        .vaccination-schedule-actions button { width: 64px; }
        .vaccination-schedule-table col:nth-child(1) { width: 18%; }
        .vaccination-schedule-table col:nth-child(2) { width: 62%; }
        .vaccination-schedule-table col:nth-child(3) { width: 10%; }
        .vaccination-schedule-table col:nth-child(4) { width: 10%; }
