:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}a{color:#646cff;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:#535bf2}body{place-items:center;min-width:320px;min-height:100vh;margin:0;display:flex}h1{font-size:3.2em;line-height:1.1}button{cursor:pointer;background-color:#1a1a1a;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.audit-log{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.audit-log-header{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;display:flex}.audit-log-header h3{color:#111827;margin:0;font-size:20px}.audit-log-actions{gap:10px;display:flex}.btn-export,.btn-clear{cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;transition:all .2s}.btn-export{color:#fff;background:#32ad10}.btn-export:hover:not(:disabled){background:#2a9209}.btn-clear{color:#fff;background:#f97316}.btn-clear:hover:not(:disabled){background:#ea580c}.btn-export:disabled,.btn-clear:disabled{opacity:.5;cursor:not-allowed}.audit-log-filters{background:#f9fafb;border-radius:6px;gap:20px;margin-bottom:20px;padding:15px;display:flex}.filter-group{align-items:center;gap:10px;display:flex}.filter-group label{color:#374151;white-space:nowrap;font-weight:500}.filter-group select,.filter-group input{border:1px solid #d1d5db;border-radius:6px;padding:8px 12px;font-size:14px}.filter-group input{width:300px}.audit-log-empty{text-align:center;color:#6b7280;background:#f9fafb;border-radius:6px;padding:60px 20px}.audit-log-table-container{border:1px solid #e5e7eb;border-radius:6px;margin-bottom:15px;overflow-x:auto}.audit-log-table{border-collapse:collapse;width:100%}.audit-log-table thead{background:#f9fafb}.audit-log-table th{text-align:left;color:#374151;white-space:nowrap;border-bottom:2px solid #e5e7eb;padding:12px 16px;font-weight:600}.audit-log-table tbody tr{border-bottom:1px solid #e5e7eb}.audit-log-table tbody tr:hover{background:#f9fafb}.audit-log-table td{color:#111827;vertical-align:top;padding:12px 16px}.audit-log-table .timestamp{white-space:nowrap;color:#6b7280;font-family:Courier New,monospace;font-size:13px}.audit-log-table .user{white-space:nowrap;font-weight:500}.audit-log-table .action{white-space:nowrap}.action-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.action-update-upgrade-paths{color:#1e40af;background:#dbeafe}.action-upload-file{color:#065f46;background:#d1fae5}.action-remove-version{color:#991b1b;background:#fee2e2}.action-add-version{color:#3730a3;background:#e0e7ff}.action-update-studies{color:#92400e;background:#fef3c7}.action-update-patch-files{color:#6b21a8;background:#f3e8ff}.audit-log-table .details{word-wrap:break-word;color:#4b5563;max-width:500px;font-size:14px}.audit-log-footer{text-align:right;color:#6b7280;padding-top:10px;font-size:14px}.audit-log-footer p{margin:0}.upgrade-paths-manager{position:relative}.section-header{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.section-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.header-actions{align-items:center;gap:8px;display:flex}.btn-add-app{color:#fff;cursor:pointer;background-color:#32ad10;border:none;border-radius:6px;padding:8px 12px;font-size:13px;font-weight:600;transition:opacity .2s}.btn-add-app:hover{opacity:.92}.btn-rename-app{color:#fff;cursor:pointer;background-color:#32ad10;border:none;border-radius:5px;padding:6px 10px;font-size:12px;font-weight:600;transition:opacity .2s}.btn-rename-app:hover{opacity:.92}.btn-delete-app{color:#fff;cursor:pointer;background-color:#ff671d;border:none;border-radius:5px;padding:6px 10px;font-size:12px;font-weight:600;transition:opacity .2s}.btn-delete-app:hover{opacity:.92}.source-section{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;overflow:hidden;box-shadow:0 2px 4px #0000000d}.source-header{cursor:pointer;background-color:#f8f9fa;justify-content:space-between;align-items:center;padding:15px 20px;transition:background-color .2s;display:flex}.source-title{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.source-actions-inline{flex-shrink:0;align-items:center;gap:8px;margin-left:10px;display:flex}.source-header:hover{background-color:#e9ecef}.source-header h4{color:#32ad10;align-items:center;gap:10px;margin:0;font-size:18px;display:flex}.expand-icon{color:#7f8c8d;font-size:14px;transition:transform .2s}.path-count{color:#fff;background-color:#3498db;border-radius:12px;padding:4px 12px;font-size:13px;font-weight:500}.source-content{padding:20px;animation:.3s slideDown}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.upgrade-path-card{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px;padding:15px}.path-header{margin-bottom:15px}.version-badge{border-radius:5px;padding:6px 12px;font-size:14px;font-weight:500;display:inline-block}.version-badge.current{color:#1976d2;background-color:#e3f2fd}.target-versions{margin-bottom:15px}.target-versions label{color:#555;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.version-chips{flex-wrap:wrap;gap:8px;display:flex}.version-chip{color:#2e7d32;background-color:#e8f5e9;border-radius:16px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.chip-remove{color:#c62828;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:18px;transition:background-color .2s;display:flex}.chip-remove:hover{background-color:#c628281a}.add-version-form{gap:10px;margin-top:10px;display:flex}.add-version-form input{border:1px solid #ccc;border-radius:5px;flex:1;padding:8px 12px;font-size:14px}.btn-save,.btn-cancel{cursor:pointer;border:none;border-radius:5px;padding:8px 16px;font-size:14px;font-weight:500;transition:background-color .2s}.btn-save{color:#fff;background-color:#27ae60}.btn-save:hover{background-color:#229954}.btn-cancel{color:#fff;background-color:#95a5a6}.btn-cancel:hover{background-color:#7f8c8d}.btn-add-version{color:#fff;cursor:pointer;background-color:#3498db;border:none;border-radius:5px;padding:8px 16px;font-size:13px;font-weight:500;transition:background-color .2s}.btn-add-version:hover{background-color:#2980b9}.new-path-form{background-color:#fff;border:2px dashed #3498db;border-radius:8px;margin-top:15px;padding:20px}.new-path-form h5{color:#2c3e50;margin:0 0 15px;font-size:16px}.form-group{margin-bottom:15px}.form-group label{color:#555;margin-bottom:5px;font-size:14px;font-weight:500;display:block}.form-group input{box-sizing:border-box;border:1px solid #ccc;border-radius:5px;width:100%;padding:10px 12px;font-size:14px}.form-actions{gap:10px;margin-top:20px;display:flex}.btn-add-path{color:#3498db;cursor:pointer;background-color:#fff;border:2px dashed #3498db;border-radius:8px;width:100%;margin-top:15px;padding:12px;font-size:14px;font-weight:500;transition:all .2s}.btn-add-path:hover{background-color:#e3f2fd}.btn-upload{color:#fff;cursor:pointer;background-color:#32ad10;border:none;border-radius:5px;margin-right:4px;padding:4px 8px;font-size:12px;font-weight:500;transition:opacity .2s}.btn-upload:hover{opacity:.92}.btn-edit{color:#fff;cursor:pointer;background-color:#32ad10;border:none;border-radius:5px;margin-right:4px;padding:4px 8px;font-size:12px;font-weight:500;transition:opacity .2s}.btn-edit:hover{opacity:.92}.btn-remove{color:#fff;cursor:pointer;background-color:#ff671d;border:none;border-radius:5px;margin-right:4px;padding:4px 8px;font-size:12px;font-weight:500;transition:opacity .2s}.btn-remove:hover{opacity:.92}.combined-table{table-layout:fixed;border-collapse:collapse;width:100%}.combined-table th,.combined-table td{text-align:left;vertical-align:middle;box-sizing:border-box;padding:12px 16px}.combined-table thead th{border-bottom:1px solid #e0e0e0}.combined-table tbody tr:nth-child(odd){background-color:#f6fbf6}.combined-table tbody tr:nth-child(2n){background-color:#f3f3f3}.combined-table th:first-child,.combined-table td:first-child,.combined-table th:nth-child(2),.combined-table td:nth-child(2){width:120px}.combined-table th:nth-child(3),.combined-table td:nth-child(3){width:320px}.combined-table th:nth-child(4),.combined-table td:nth-child(4){width:150px}.combined-table th:nth-child(5),.combined-table td:nth-child(5){width:200px}.combined-table th:nth-child(6),.combined-table td:nth-child(6){width:180px}.modal{z-index:2000;opacity:0;pointer-events:none;background:#0c121e7a;justify-content:center;align-items:center;transition:opacity .16s ease-in-out;display:flex;position:fixed;inset:0}.modal.open{opacity:1;pointer-events:auto}.modal-content{background:#fff;border-radius:12px;width:720px;max-width:calc(100% - 40px);padding:18px;box-shadow:0 24px 60px #0a14282e}.modal-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.modal-header h4{color:#136232;margin:0;font-size:16px;font-weight:700}.modal-body label{color:#136232;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.modal-body input{box-sizing:border-box;background:#fff;border:1px solid #e6e6e6;border-radius:8px;width:100%;margin-bottom:10px;padding:10px 12px;font-size:14px}.modal-body input:disabled,.input-disabled{color:#999;cursor:not-allowed;background-color:#f0f0f0}.modal-body input:disabled::placeholder,.input-disabled::placeholder{color:#ccc}.modal-body select{box-sizing:border-box;background:#fff;border:1px solid #e6e6e6;border-radius:8px;width:100%;margin-bottom:10px;padding:10px 12px;font-size:14px}.upload-filename{color:#4a4a4a;margin-top:-2px;margin-bottom:10px;font-size:12px}.modal-footer{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.btn-add-row{color:#fff;cursor:pointer;background-color:#32ad10;border:none;border-radius:5px;padding:6px 10px;font-size:12px;font-weight:600;transition:opacity .2s}.btn-add-row:hover{opacity:.92}.admin-panel{color:#222;padding:16px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial}.admin-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.admin-header h2{color:#32ad10;margin:0;font-size:20px}.btn-refresh{color:#fff;cursor:pointer;background:#32ad10;border:none;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600}.btn-refresh:hover{opacity:.95}.tabs{border-bottom:2px solid #e5e7eb;gap:8px;margin-bottom:16px;padding-bottom:0;display:flex}.tab{cursor:pointer;color:#6b7280;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.tab:hover{color:#32ad10;background:#f9fafb}.tab.active{color:#32ad10;border-bottom-color:#32ad10;font-weight:600}.tab-navigation{gap:8px;margin-bottom:12px;display:flex}.tab-button{cursor:pointer;color:#222;background:#fff;border:1px solid #e6e6e6;border-radius:8px;padding:8px 12px}.tab-button.active{color:#136232;background:#bcedaf;border-color:#32ad10}.tab-content{margin-top:8px}.loading-spinner,.error-message{text-align:center;color:#136232;padding:24px}.error-message button{color:#fff;cursor:pointer;background:#32ad10;border:none;border-radius:6px;padding:8px 12px}#root{width:100%;min-height:100vh;margin:0;padding:0}.app-container{background-color:#f5f7fa;min-height:100vh}.app-header{background:#32ad10;justify-content:center;align-items:center;margin:0;padding:12px 20px;display:flex;position:relative;box-shadow:0 2px 8px #0000001a}.app-title{align-items:center;gap:15px;display:flex}.dexcom-text{color:#fff;letter-spacing:.5px;font-size:24px;font-weight:700;position:absolute;left:20px}.app-header h1{color:#fff;text-align:center;flex:1;margin:0;font-size:28px}.app-logo{max-width:200px;height:auto;margin:0 auto;display:block}.card{text-align:center;background:#fff;border-radius:8px;max-width:500px;margin:50px auto;padding:2em;box-shadow:0 2px 8px #0000001a}.card h2{color:#2c3e50;margin-top:0}.card button{color:#fff;cursor:pointer;background:#32ad10;border:none;border-radius:5px;padding:12px 30px;font-size:16px;transition:transform .2s,box-shadow .2s}.card button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #32ad1059}.dashboard-container{background-color:#f5f7fa;min-height:calc(100vh - 72px);padding:20px}.dashboard-header{background:#fff;border-radius:8px;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto 20px;padding:20px;display:flex;box-shadow:0 2px 4px #0000000d}.user-info h2{color:#2c3e50;margin:0 0 5px}.user-info p{color:#7f8c8d;margin:0}.logout-btn{color:#fff;cursor:pointer;background-color:#ff671d;border:none;border-radius:5px;padding:10px 24px;font-size:14px;font-weight:500;transition:background-color .2s}.logout-btn:hover{background-color:#e55a0a}
