:root{--gray-100:#fff;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#6b7280;--gray-500:#111;--hue-blue:#003da5;--hue-blue-pale:#dce8ff;--hue-cyan:#3498db;--hue-cyan-pale:#d8ecfb;--hue-green:#2ecc71;--hue-green-pale:#d8f7e6;--hue-yellow:#f1c40f;--hue-yellow-pale:#fcf4cc;--hue-red:#d63031;--hue-red-pale:#f9d7d7;--hue-purple:#9b59b6;--hue-purple-pale:#ecdef3;--patient-card-min-width:320px}body{margin:0;font-family:"Red Hat Text",system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{-webkit-animation:App-logo-spin 20s linear infinite;animation:App-logo-spin 20s linear infinite}}.App-header{background-color:var(--gray-500);min-height:100vh;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;font-size:calc(10px + 2vmin);color:var(--gray-100)}.App-link{color:var(--hue-cyan)}.app-container{min-height:100vh;background-color:var(--hue-blue-pale);color:var(--gray-500);font-family:"Red Hat Text",system-ui,sans-serif}.patient-grid-wrapper{width:100%;margin-top:20px;padding:0 24px;box-sizing:border-box}.patient-grid{display:grid;grid-gap:24px;gap:24px;width:100%;max-width:2000px;margin:0 auto;grid-template-columns:repeat(auto-fit,minmax(var(--patient-card-min-width),1fr))}.user-panel{position:absolute;top:20px;right:30px;grid-gap:12px;gap:12px}.top-bar,.user-panel{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center}.top-bar{position:fixed;top:0;left:0;width:100%;min-height:70px;background-color:var(--gray-100);border-bottom:1px solid var(--gray-200);box-shadow:0 2px 8px rgba(0,0,0,.04);-webkit-justify-content:space-between;justify-content:space-between;padding:12px 32px;box-sizing:border-box;z-index:50}.nav-left{display:-webkit-flex;display:flex;grid-gap:30px;gap:30px;-webkit-flex-wrap:wrap;flex-wrap:wrap}.nav-link{position:relative;text-decoration:none;font-weight:500;color:var(--gray-500);transition:color .2s ease}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background-color:var(--hue-blue);-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:center;transform-origin:center;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease}.nav-link.active,.nav-link:hover{color:var(--hue-blue)}.nav-link.active:after{-webkit-transform:scaleX(1);transform:scaleX(1)}.nav-right{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;grid-gap:12px;gap:12px;-webkit-flex-shrink:0;flex-shrink:0}.role-badge{display:-webkit-flex;display:flex;padding:0 14px;text-transform:capitalize;letter-spacing:.3px}.logout-button,.role-badge{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;height:34px;font-weight:600}.logout-button,.role-badge{display:-webkit-inline-flex;display:inline-flex;padding:0 16px;font-size:.85rem;line-height:1;border-radius:10px}.role-badge{padding:0 12px;font-size:.8rem;font-weight:700;background:var(--gray-500);color:var(--gray-100)}.role-volunteer{background-color:var(--gray-300);color:var(--gray-500)}.role-officestaff,.role-receptionist{background-color:var(--hue-green);color:var(--gray-100)}.role-medicalpersonnel,.role-nurse{background-color:var(--hue-cyan);color:var(--gray-100)}.role-doctor,.role-physician{background-color:var(--hue-purple);color:var(--gray-100)}.role-admin{background-color:var(--hue-yellow);color:var(--gray-500)}.logout-button:hover{background-color:var(--hue-red)}.patient-pagination-controls{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:space-between;justify-content:space-between;grid-gap:12px;gap:12px;padding:0 24px;margin:8px auto 16px;max-width:2000px;box-sizing:border-box}.patient-pagination-summary{font-size:.9rem;color:var(--gray-400)}.patient-pagination-actions{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;grid-gap:10px;gap:10px}.pagination-button{border:none;border-radius:4px;padding:8px 12px;background-color:var(--hue-blue);color:var(--gray-100);cursor:pointer}.pagination-button:disabled{background-color:var(--gray-300);color:var(--gray-400);cursor:not-allowed}.pagination-page-indicator{font-size:.9rem;color:var(--gray-500);min-width:100px;text-align:center}.info-message{margin:12px 0;padding:10px 12px;border-radius:6px;border:1px solid var(--hue-yellow)}.info-message,.info-message.error{background-color:var(--hue-yellow-pale);color:var(--gray-500)}.info-message.error{border-color:var(--hue-yellow)}.error-message{margin:12px 0;padding:10px 12px;border-radius:6px;background-color:var(--hue-red-pale);border:1px solid var(--hue-red);color:var(--gray-500)}.page-content{padding:110px 40px 40px}@media (max-width:1024px){.top-bar{padding:12px 20px}.page-content{padding-left:24px;padding-right:24px}}@media (max-width:768px){:root{--patient-card-min-width:260px}.top-bar{-webkit-align-items:flex-start;align-items:flex-start;-webkit-flex-direction:column;flex-direction:column;grid-gap:10px;gap:10px;min-height:0}.nav-left{grid-gap:14px;gap:14px}.nav-right{width:100%;-webkit-justify-content:flex-start;justify-content:flex-start}.page-content{padding:130px 12px 20px}.patient-pagination-controls{-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;align-items:flex-start;padding:0 8px}.patient-pagination-actions{width:100%;-webkit-flex-wrap:wrap;flex-wrap:wrap}.patient-grid-wrapper{padding:0 8px}}@-webkit-keyframes App-logo-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes App-logo-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.admin-console{background-color:var(--gray-500);color:var(--gray-200);font-family:Consolas,"Courier New",monospace;padding:20px;border-radius:6px}.admin-console h3{margin-bottom:20px;color:var(--hue-cyan)}.admin-tabs,.tab-buttons{display:-webkit-flex;display:flex;grid-gap:10px;gap:10px;margin-bottom:15px;-webkit-flex-wrap:wrap;flex-wrap:wrap}.admin-tabs button,.tab-buttons button{position:relative;margin-right:0;padding:6px 12px;border:none;border-radius:4px;background-color:hsla(0,0%,100%,.06);color:var(--gray-200);cursor:pointer}.admin-tabs button:after,.tab-buttons button:after{content:"";position:absolute;left:8px;right:8px;bottom:3px;height:2px;background-color:var(--hue-cyan);-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:center;transform-origin:center;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease}.admin-tabs button.active,.tab-buttons button.active{background-color:var(--hue-blue);color:var(--gray-100)}.admin-tabs button.active:after,.tab-buttons button.active:after{-webkit-transform:scaleX(1);transform:scaleX(1)}.edit-patient-section,.patient-form{margin-top:15px}.admin-console input,.admin-console select,.admin-console textarea{display:block;margin-top:4px;margin-bottom:10px;padding:6px;width:100%;max-width:400px;border:1px solid var(--hue-blue);border-radius:4px;background-color:hsla(0,0%,100%,.06);color:var(--gray-200)}.admin-console button{padding:8px 16px;margin-right:8px;border:none;border-radius:4px;background-color:var(--hue-blue);cursor:pointer;font-family:Consolas,"Courier New",monospace;color:var(--gray-100)}.admin-console button:hover{background-color:var(--hue-cyan)}.admin-console .error-message{background-color:var(--hue-red);padding:8px;margin-bottom:10px;border-radius:4px;color:var(--gray-100)}.admin-console .info-message{background-color:var(--hue-yellow-pale);border:1px solid var(--hue-yellow);padding:8px;margin-bottom:10px;border-radius:4px;color:var(--gray-500)}.policy-label{display:inline-block;margin-left:10px;font-weight:700;color:var(--hue-cyan)}.admin-console table{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:auto}.admin-console td,.admin-console th{padding:4px 14px 4px 8px;vertical-align:top;border-bottom:1px solid hsla(0,0%,100%,.08)}.admin-console th{text-align:left;color:var(--hue-blue)}.admin-console tbody tr{transition:background-color .15s ease}.admin-console tbody tr:hover{background-color:hsla(0,0%,100%,.06)}.action-error,.action-fail{color:var(--hue-red);font-weight:700}.audit-container{padding:24px;background-color:var(--gray-500);color:var(--gray-200);font-family:Consolas,"Courier New",monospace;border-radius:10px;box-shadow:0 0 20px rgba(0,0,0,.6);border:1px solid var(--gray-400)}.search-btn,.verify-btn{background-color:var(--hue-blue);color:var(--gray-100);border:none;padding:6px 14px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.85rem;transition:background-color .2s ease}.search-btn:hover,.verify-btn:hover{background-color:var(--hue-cyan)}.search-btn:active,.verify-btn:active{background-color:var(--hue-blue)}.audit-header{display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;align-items:center;margin-bottom:16px}.audit-header h2{color:var(--hue-blue);font-weight:400;letter-spacing:1px}.verify-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:flex-end;align-items:flex-end;min-width:280px}.verify-fail,.verify-ok{margin-top:6px;text-align:right;font-size:.8rem}.verify-ok{color:var(--hue-green);font-weight:700}.verify-fail{color:var(--hue-red);font-weight:700}.audit-filters{-webkit-flex-direction:column;flex-direction:column;margin-bottom:20px}.audit-filters,.filter-row{display:-webkit-flex;display:flex;grid-gap:12px;gap:12px}.date-row label,.filter-row{-webkit-align-items:center;align-items:center}.date-row label{display:-webkit-flex;display:flex;grid-gap:8px;gap:8px;color:var(--gray-400);font-size:.8rem}.audit-filters input{background:hsla(0,0%,100%,.06);border:1px solid var(--gray-400);color:var(--gray-200);padding:6px 8px;border-radius:4px}.audit-table{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:auto}.audit-table th{text-align:left;padding-bottom:8px;color:var(--hue-cyan);border-bottom:1px solid var(--gray-400)}.audit-table td{padding:4px 8px;vertical-align:top;border-bottom:1px solid hsla(0,0%,100%,.08)}.audit-table tbody tr{transition:background-color .15s ease}.audit-table tbody tr:hover{background-color:var(--gray-500)}.audit-table td:first-child,.audit-table td:nth-child(2),.audit-table td:nth-child(3),.audit-table td:nth-child(4),.audit-table th:first-child,.audit-table th:nth-child(2),.audit-table th:nth-child(3),.audit-table th:nth-child(4){white-space:nowrap}.audit-table td:nth-child(5),.audit-table th:nth-child(5){width:100%}.audit-table td:nth-child(3),.audit-table th:nth-child(3){padding-right:14px}.details pre{margin:0;white-space:pre-wrap;color:var(--hue-yellow-pale)}.action-success{color:var(--hue-green)}.action-attempt{color:var(--hue-yellow)}.action-error,.action-fail{color:var(--hue-red);font-weight:700}.action-auth{color:var(--hue-purple)}.action-audit{color:var(--hue-cyan)}.login-container{width:100%;min-width:0;max-width:380px;background:var(--gray-100);border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.08);overflow:hidden;font-family:"Red Hat Text",system-ui,sans-serif}.login-accent{height:6px;background:var(--hue-blue)}.login-content{padding:24px}.login-container .form-group{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;margin-bottom:14px}.login-container label{font-size:.8rem;color:var(--gray-400);margin-bottom:4px}.login-container input{padding:8px 10px;border-radius:6px;border:1px solid var(--gray-300);font-size:.9rem}.login-container input:focus{outline:none;border-color:var(--hue-blue);box-shadow:0 0 0 1px var(--hue-blue)}.login-container button{margin-top:12px;padding:10px;background:var(--hue-blue);color:var(--gray-100);border:none;border-radius:8px;font-size:.9rem;cursor:pointer}.login-container button:hover{background:var(--hue-cyan)}.login-error{margin-top:12px;color:var(--hue-red);font-size:.85rem}.patient-card{width:100%;min-width:0;background-color:var(--gray-100);border-radius:6px;box-shadow:0 4px 14px rgba(0,0,0,.05);font-family:"Red Hat Text",system-ui,sans-serif;transition:box-shadow .2s ease;box-sizing:border-box}.patient-card:hover{box-shadow:0 8px 20px rgba(0,0,0,.08)}.patient-accent{height:4px;background:var(--hue-blue)}.patient-body{padding:18px 22px 22px}.patient-header{display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;align-items:center;grid-gap:10px;gap:10px}.patient-name{font-size:1.1rem;font-weight:700;color:var(--gray-500)}.patient-id{font-size:.75rem;font-weight:600;color:var(--hue-blue);background:var(--hue-blue-pale);padding:4px 10px;border-radius:4px}.patient-subheader{display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;margin-top:8px;font-size:.85rem;color:var(--gray-400);grid-gap:8px;gap:8px}.patient-divider{height:1px;background:var(--gray-200);margin:14px 0}.patient-card-inner-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px 18px;gap:14px 18px}.chart-item{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.chart-item.full-width{grid-column:span 2}.chart-label{font-size:.7rem;font-weight:600;color:var(--gray-400);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.chart-value{font-size:.9rem;font-weight:500;color:var(--gray-500);word-break:break-word}@media (max-width:768px){.patient-body{padding:14px}.patient-header,.patient-subheader{-webkit-align-items:flex-start;align-items:flex-start;-webkit-flex-direction:column;flex-direction:column}.patient-card-inner-grid{grid-template-columns:1fr;grid-gap:12px;gap:12px}.chart-item.full-width{grid-column:auto}}.search-card{width:100%;max-width:900px;margin:0 auto 32px;background:var(--gray-100);border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.06);padding:24px;box-sizing:border-box}.search-header{font-size:1rem;font-weight:700;margin-bottom:20px;color:var(--gray-500)}.label-with-tooltip{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;grid-gap:6px;gap:6px}.tooltip-wrapper{position:relative;cursor:pointer;font-size:.85rem;color:var(--gray-400)}.tooltip-content{visibility:hidden;opacity:0;position:absolute;top:125%;left:0;width:220px;background-color:var(--gray-500);color:var(--gray-100);text-align:left;padding:8px;border-radius:6px;font-size:.8rem;line-height:1.4;transition:opacity .2s ease;z-index:10}.tooltip-wrapper:hover .tooltip-content{visibility:visible;opacity:1}.search-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:20px;gap:20px}.field{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.field label{font-size:.75rem;font-weight:600;color:var(--gray-400);margin-bottom:6px;text-transform:uppercase}.field input,.field select{padding:8px 10px;border-radius:4px;border:1px solid var(--gray-300);font-size:.85rem}.field input:focus,.field select:focus{outline:none;border-color:var(--hue-blue);box-shadow:0 0 0 1px var(--hue-blue)}.apply-button{margin-top:24px;padding:10px 18px;background:var(--hue-blue);color:var(--gray-100);border:none;border-radius:4px;font-weight:600;cursor:pointer}.apply-button:hover{background:var(--hue-cyan)}@media (max-width:768px){.search-card{padding:16px;margin-bottom:20px}.search-grid{grid-template-columns:1fr;grid-gap:14px;gap:14px}.apply-button{width:100%}.tooltip-content{left:auto;right:0;width:min(220px,calc(100vw - 48px))}}.patient-overlay-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;align-items:center;z-index:1000;padding:16px;box-sizing:border-box}.patient-overlay-card{width:min(900px,calc(100vw - 32px));max-height:90vh;overflow-y:auto;background:var(--gray-100);padding:40px;border-radius:4px;font-family:"Times New Roman",serif;box-shadow:0 10px 30px rgba(0,0,0,.3);box-sizing:border-box}.patient-overlay-header{display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;align-items:center;margin-bottom:20px;grid-gap:12px;gap:12px}.patient-section{margin-bottom:30px}.patient-field-row{display:grid;grid-template-columns:250px 1fr;margin-bottom:10px;grid-gap:8px;gap:8px}.patient-field-label-group{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;grid-gap:6px;gap:6px}.patient-field-row label{font-weight:700}.permission-indicator-list{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;grid-gap:6px;gap:6px;-webkit-flex-wrap:wrap;flex-wrap:wrap}.permission-indicator{width:11px;height:11px;border-radius:3px;-webkit-flex-shrink:0;flex-shrink:0;border:1px solid rgba(0,0,0,.2)}.permission-volunteer{background-color:var(--gray-300)}.permission-officestaff{background-color:var(--hue-green)}.permission-medicalpersonnel{background-color:var(--hue-cyan)}.permission-physician{background-color:var(--hue-purple)}.permission-admin{background-color:var(--hue-yellow)}.patient-field-value{border-bottom:1px solid var(--gray-300);padding:4px 0}@media (max-width:768px){.patient-overlay-card{padding:20px}.patient-field-row{grid-template-columns:1fr}.patient-overlay-header{-webkit-align-items:flex-start;align-items:flex-start;-webkit-flex-direction:column;flex-direction:column}}@media print{.patient-overlay-backdrop{position:static;background:none;padding:0}.patient-overlay-card{box-shadow:none;width:100%;max-height:none}}.patient-append-existing{margin-bottom:8px;min-height:24px}.append-note-button{margin-top:8px}
/*# sourceMappingURL=main.1c09be9e.chunk.css.map */